diff --git a/src/@seed/api/analysis/analysis.service.ts b/src/@seed/api/analysis/analysis.service.ts index 4abb3502..c2fcb6bc 100644 --- a/src/@seed/api/analysis/analysis.service.ts +++ b/src/@seed/api/analysis/analysis.service.ts @@ -3,7 +3,7 @@ import { HttpClient } from '@angular/common/http' import { inject, Injectable } from '@angular/core' import type { Observable, Subscription } from 'rxjs' import { BehaviorSubject, catchError, interval, map, Subject, takeUntil, takeWhile, tap, withLatestFrom } from 'rxjs' -import { OrganizationService } from '@seed/api/organization' +import { OrganizationService } from '@seed/api' import { ErrorService } from '@seed/services' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' import { UserService } from '../user' diff --git a/src/@seed/api/column_mapping_profile/column_mapping_profile.service.ts b/src/@seed/api/column-mapping-profile/column-mapping-profile.service.ts similarity index 99% rename from src/@seed/api/column_mapping_profile/column_mapping_profile.service.ts rename to src/@seed/api/column-mapping-profile/column-mapping-profile.service.ts index 7d2f2ae1..d9f34c38 100644 --- a/src/@seed/api/column_mapping_profile/column_mapping_profile.service.ts +++ b/src/@seed/api/column-mapping-profile/column-mapping-profile.service.ts @@ -14,7 +14,7 @@ import type { ColumnMappingProfileType, ColumnMappingProfileUpdateResponse, ColumnMappingSuggestionResponse, -} from './column_mapping_profile.types' +} from './column-mapping-profile.types' @Injectable({ providedIn: 'root' }) export class ColumnMappingProfileService { diff --git a/src/@seed/api/column_mapping_profile/column_mapping_profile.types.ts b/src/@seed/api/column-mapping-profile/column-mapping-profile.types.ts similarity index 100% rename from src/@seed/api/column_mapping_profile/column_mapping_profile.types.ts rename to src/@seed/api/column-mapping-profile/column-mapping-profile.types.ts diff --git a/src/@seed/api/column-mapping-profile/index.ts b/src/@seed/api/column-mapping-profile/index.ts new file mode 100644 index 00000000..cd7d1349 --- /dev/null +++ b/src/@seed/api/column-mapping-profile/index.ts @@ -0,0 +1,2 @@ +export * from './column-mapping-profile.service' +export * from './column-mapping-profile.types' diff --git a/src/@seed/api/column/column.service.ts b/src/@seed/api/column/column.service.ts index 71286898..a647a424 100644 --- a/src/@seed/api/column/column.service.ts +++ b/src/@seed/api/column/column.service.ts @@ -3,7 +3,7 @@ import { HttpClient } from '@angular/common/http' import { inject, Injectable } from '@angular/core' import type { Observable } from 'rxjs' import { catchError, map, ReplaySubject } from 'rxjs' -import type { ProgressResponse } from '@seed/api/progress' +import type { ProgressResponse } from '@seed/api' import { ErrorService } from '@seed/services/error/error.service' import { UserService } from '../user' import type { Column, ColumnsResponse } from './column.types' diff --git a/src/@seed/api/column_mapping_profile/index.ts b/src/@seed/api/column_mapping_profile/index.ts deleted file mode 100644 index f6d6c876..00000000 --- a/src/@seed/api/column_mapping_profile/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from './column_mapping_profile.service' -export * from './column_mapping_profile.types' diff --git a/src/@seed/api/data-quality/data-quality.service.ts b/src/@seed/api/data-quality/data-quality.service.ts index f26f5ac4..57c58dd0 100644 --- a/src/@seed/api/data-quality/data-quality.service.ts +++ b/src/@seed/api/data-quality/data-quality.service.ts @@ -1,7 +1,7 @@ import { HttpClient, type HttpErrorResponse } from '@angular/common/http' import { inject, Injectable } from '@angular/core' import { catchError, map, type Observable, ReplaySubject, switchMap, tap } from 'rxjs' -import { OrganizationService } from '@seed/api/organization' +import { OrganizationService } from '@seed/api' import { ErrorService } from '@seed/services' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' import type { DQCProgressResponse } from '../progress' diff --git a/src/@seed/api/index.ts b/src/@seed/api/index.ts new file mode 100644 index 00000000..bfa115f2 --- /dev/null +++ b/src/@seed/api/index.ts @@ -0,0 +1,26 @@ +export * from './analysis' +export * from './audit-template' +export * from './column' +export * from './column-mapping-profile' +export * from './config' +export * from './cycle' +export * from './data-quality' +export * from './dataset' +export * from './derived-column' +export * from './groups' +export * from './inventory' +export * from './label' +export * from './mapping' +export * from './meters' +export * from './notes' +export * from './organization' +export * from './pairing' +export * from './postoffice' +export * from './progress' +export * from './salesforce' +export * from './scenario' +export * from './sensor' +export * from './swagger' +export * from './ubid' +export * from './user' +export * from './version' diff --git a/src/@seed/api/notes/index.ts b/src/@seed/api/notes/index.ts index 546f5441..fdac852a 100644 --- a/src/@seed/api/notes/index.ts +++ b/src/@seed/api/notes/index.ts @@ -1 +1,2 @@ export * from './notes.service' +export * from './notes.types' diff --git a/src/@seed/api/notes/notes.service.ts b/src/@seed/api/notes/notes.service.ts index 27d62677..7fec0ac4 100644 --- a/src/@seed/api/notes/notes.service.ts +++ b/src/@seed/api/notes/notes.service.ts @@ -5,7 +5,6 @@ import { BehaviorSubject, catchError, type Observable, take, tap } from 'rxjs' import { ErrorService } from '@seed/services' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' import type { InventoryType } from 'app/modules/inventory' -import { OrganizationService } from '../organization' import type { Note, NoteData } from './notes.types' @Injectable({ providedIn: 'root' }) @@ -13,7 +12,6 @@ export class NoteService { private _errorService = inject(ErrorService) private _notes = new BehaviorSubject([]) private _httpClient = inject(HttpClient) - private _organizationService = inject(OrganizationService) private _snackBar = inject(SnackBarService) notes$ = this._notes.asObservable() diff --git a/src/@seed/api/organization/organization.types.ts b/src/@seed/api/organization/organization.types.ts index 160f792d..beb125d4 100644 --- a/src/@seed/api/organization/organization.types.ts +++ b/src/@seed/api/organization/organization.types.ts @@ -1,6 +1,4 @@ -import type { UserRole } from '@seed/api/user' -import type { Column } from '../column' -import type { LabelOperator } from '../label' +import type { Column, LabelOperator, UserRole } from '@seed/api' export type OrgCycle = { name: string; diff --git a/src/@seed/api/postoffice/postoffice.service.ts b/src/@seed/api/postoffice/postoffice.service.ts index 76cc84ea..7587fea0 100644 --- a/src/@seed/api/postoffice/postoffice.service.ts +++ b/src/@seed/api/postoffice/postoffice.service.ts @@ -1,7 +1,7 @@ import { HttpClient, type HttpErrorResponse } from '@angular/common/http' import { inject, Injectable } from '@angular/core' import { catchError, map, type Observable, ReplaySubject, Subject, takeUntil, tap } from 'rxjs' -import { UserService } from '@seed/api/user' +import { UserService } from '@seed/api' import { ErrorService } from '@seed/services' import type { CreateEmailTemplateResponse, EmailTemplate, ListEmailTemplatesResponse } from './postoffice.types' diff --git a/src/@seed/api/user/user.service.ts b/src/@seed/api/user/user.service.ts index 8f9d1f2b..38314b6a 100644 --- a/src/@seed/api/user/user.service.ts +++ b/src/@seed/api/user/user.service.ts @@ -14,7 +14,7 @@ import type { UserAuth, UserAuthResponse, UserUpdateRequest, -} from '@seed/api/user' +} from '@seed/api' import { ErrorService } from '@seed/services' import { type OrganizationUserSettings } from '../organization' diff --git a/src/@seed/components/ag-grid/autocomplete.component.ts b/src/@seed/components/ag-grid/autocomplete.component.ts index 1c31c081..9b8b73d8 100644 --- a/src/@seed/components/ag-grid/autocomplete.component.ts +++ b/src/@seed/components/ag-grid/autocomplete.component.ts @@ -1,20 +1,16 @@ import type { AfterViewInit, ElementRef } from '@angular/core' import { Component, ViewChild } from '@angular/core' import { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms' -import { MatAutocompleteModule } from '@angular/material/autocomplete' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatInputModule } from '@angular/material/input' import type { ICellEditorAngularComp } from 'ag-grid-angular' import type { ICellEditorParams } from 'ag-grid-community' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-ag-grid-auto-complete-cell', templateUrl: './autocomplete.component.html', imports: [ FormsModule, - MatAutocompleteModule, - MatFormFieldModule, - MatInputModule, + MaterialImports, ReactiveFormsModule, ], }) diff --git a/src/@seed/components/alert/alert.component.ts b/src/@seed/components/alert/alert.component.ts index a3d520c3..40d11e2d 100644 --- a/src/@seed/components/alert/alert.component.ts +++ b/src/@seed/components/alert/alert.component.ts @@ -11,10 +11,9 @@ import { output, ViewEncapsulation, } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatIconModule } from '@angular/material/icon' import { filter, Subject, takeUntil } from 'rxjs' import { Animations } from '@seed/animations' +import { MaterialImports } from '@seed/materials' import { randomId } from '@seed/utils' import { AlertService } from './alert.service' import type { AlertAppearance, AlertType } from './alert.types' @@ -27,7 +26,7 @@ import type { AlertAppearance, AlertType } from './alert.types' changeDetection: ChangeDetectionStrategy.OnPush, animations: Animations, exportAs: 'seedAlert', - imports: [MatButtonModule, MatIconModule], + imports: [MaterialImports], }) export class AlertComponent implements OnInit, OnDestroy { private _alertService = inject(AlertService) diff --git a/src/@seed/components/analyses/analyses-grid.component.ts b/src/@seed/components/analyses/analyses-grid.component.ts index 2f85ad96..0be6a17c 100644 --- a/src/@seed/components/analyses/analyses-grid.component.ts +++ b/src/@seed/components/analyses/analyses-grid.component.ts @@ -2,21 +2,20 @@ import { CommonModule } from '@angular/common' import type { AfterViewInit, OnChanges, SimpleChanges } from '@angular/core' import { Component, inject, Input } from '@angular/core' import { MatDialog } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' import { Router } from '@angular/router' import { AgGridAngular } from 'ag-grid-angular' import type { CellClickedEvent, ColDef, GridApi, GridReadyEvent } from 'ag-grid-community' import { filter, switchMap, take } from 'rxjs' -import type { Analysis, Highlight } from '@seed/api/analysis' -import { AnalysisService } from '@seed/api/analysis' -import type { Cycle } from '@seed/api/cycle' +import type { Analysis, Cycle, Highlight } from '@seed/api' +import { AnalysisService } from '@seed/api' import { DeleteModalComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' @Component({ selector: 'seed-analyses-grid', templateUrl: './analyses-grid.component.html', - imports: [AgGridAngular, CommonModule, MatIconModule], + imports: [AgGridAngular, CommonModule, MaterialImports], }) export class AnalysesGridComponent implements AfterViewInit, OnChanges { @Input() orgId: number diff --git a/src/@seed/components/clipboard/clipboard.component.ts b/src/@seed/components/clipboard/clipboard.component.ts index a360e319..24bb26ca 100644 --- a/src/@seed/components/clipboard/clipboard.component.ts +++ b/src/@seed/components/clipboard/clipboard.component.ts @@ -1,13 +1,12 @@ import { Clipboard } from '@angular/cdk/clipboard' import { Component, inject, input } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatIconModule } from '@angular/material/icon' +import { MaterialImports } from '@seed/materials' import { SnackBarService } from '../../../app/core/snack-bar/snack-bar.service' @Component({ selector: 'seed-clipboard', templateUrl: './clipboard.component.html', - imports: [MatButtonModule, MatIconModule], + imports: [MaterialImports], }) export class ClipboardComponent { private _clipboard = inject(Clipboard) diff --git a/src/@seed/components/column-profiles/column-profiles.component.ts b/src/@seed/components/column-profiles/column-profiles.component.ts index 51407c40..491ea31a 100644 --- a/src/@seed/components/column-profiles/column-profiles.component.ts +++ b/src/@seed/components/column-profiles/column-profiles.component.ts @@ -1,23 +1,15 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject, Input } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' import { MatDialog } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' import type { MatSelectChange } from '@angular/material/select' -import { MatSelectModule } from '@angular/material/select' -import { MatSidenavModule } from '@angular/material/sidenav' -import { MatTooltipModule } from '@angular/material/tooltip' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { ColDef, GridApi, GridOptions, GridReadyEvent, RowSelectedEvent } from 'ag-grid-community' import { combineLatest, filter, Subject, switchMap, takeUntil, tap } from 'rxjs' -import type { Column } from '@seed/api/column' -import { ColumnService } from '@seed/api/column' -import { InventoryService } from '@seed/api/inventory' -import { OrganizationService } from '@seed/api/organization' -import type { CurrentUser } from '@seed/api/user' -import { UserService } from '@seed/api/user' +import type { Column, CurrentUser } from '@seed/api' +import { ColumnService, InventoryService, OrganizationService, UserService } from '@seed/api' import { DeleteModalComponent, PageComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import { naturalSort } from '@seed/utils' import { ModalComponent } from 'app/modules/column-list-profile/modal/modal.component' @@ -29,14 +21,9 @@ type CellRendererParams = { value: string; data: { derived_column: number; is_ex templateUrl: './column-profiles.component.html', imports: [ AgGridAngular, - AgGridModule, CommonModule, PageComponent, - MatButtonModule, - MatIconModule, - MatSelectModule, - MatSidenavModule, - MatTooltipModule, + MaterialImports, ModalComponent, ], }) diff --git a/src/@seed/components/delete-modal/delete-modal.component.ts b/src/@seed/components/delete-modal/delete-modal.component.ts index 38bf043b..8fc16e61 100644 --- a/src/@seed/components/delete-modal/delete-modal.component.ts +++ b/src/@seed/components/delete-modal/delete-modal.component.ts @@ -1,15 +1,13 @@ import { Component, inject } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' +import { MaterialImports } from '@seed/materials' import { ModalHeaderComponent } from '../modal' @Component({ standalone: true, selector: 'seed-delete-modal', templateUrl: './delete-modal.component.html', - imports: [MatButtonModule, MatDialogModule, MatDividerModule, MatIconModule, ModalHeaderComponent], + imports: [MaterialImports, ModalHeaderComponent], }) export class DeleteModalComponent { private _dialogRef = inject(MatDialogRef) diff --git a/src/@seed/components/label/label.component.ts b/src/@seed/components/label/label.component.ts index 7f0cc99c..f245a24e 100644 --- a/src/@seed/components/label/label.component.ts +++ b/src/@seed/components/label/label.component.ts @@ -1,5 +1,5 @@ import { Component, Input } from '@angular/core' -import { type Label } from '@seed/api/label' +import { type Label } from '@seed/api' import { SharedImports } from '@seed/directives' @Component({ diff --git a/src/@seed/components/modal/modal-header.component.ts b/src/@seed/components/modal/modal-header.component.ts index 07de1dd8..c20ec878 100644 --- a/src/@seed/components/modal/modal-header.component.ts +++ b/src/@seed/components/modal/modal-header.component.ts @@ -1,17 +1,13 @@ import { CommonModule } from '@angular/common' import { Component, Input } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-modal-header', templateUrl: './modal-header.component.html', imports: [ CommonModule, - MatIconModule, - MatButtonModule, - MatDividerModule, + MaterialImports, ], }) export class ModalHeaderComponent { diff --git a/src/@seed/components/navigation/horizontal/components/basic/basic.component.ts b/src/@seed/components/navigation/horizontal/components/basic/basic.component.ts index 3b40416c..1294e1f5 100644 --- a/src/@seed/components/navigation/horizontal/components/basic/basic.component.ts +++ b/src/@seed/components/navigation/horizontal/components/basic/basic.component.ts @@ -1,22 +1,20 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { ChangeDetectionStrategy, ChangeDetectorRef, Component, inject, input } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' -import { MatMenuModule } from '@angular/material/menu' -import { MatTooltipModule } from '@angular/material/tooltip' import type { IsActiveMatchOptions } from '@angular/router' import { RouterLink, RouterLinkActive } from '@angular/router' import { Subject, takeUntil } from 'rxjs' import type { HorizontalNavigationComponent } from '@seed/components/navigation/horizontal/horizontal.component' import { SeedNavigationService } from '@seed/components/navigation/navigation.service' import type { NavigationItem } from '@seed/components/navigation/navigation.types' +import { MaterialImports } from '@seed/materials' import { exactMatchOptions, subsetMatchOptions } from '@seed/utils' @Component({ selector: 'seed-horizontal-navigation-basic-item', templateUrl: './basic.component.html', changeDetection: ChangeDetectionStrategy.OnPush, - imports: [CommonModule, MatIconModule, MatMenuModule, MatTooltipModule, RouterLink, RouterLinkActive], + imports: [CommonModule, MaterialImports, RouterLink, RouterLinkActive], }) export class HorizontalNavigationBasicItemComponent implements OnInit, OnDestroy { private _changeDetectorRef = inject(ChangeDetectorRef) diff --git a/src/@seed/components/navigation/horizontal/components/branch/branch.component.ts b/src/@seed/components/navigation/horizontal/components/branch/branch.component.ts index 28580d89..44f51c0b 100644 --- a/src/@seed/components/navigation/horizontal/components/branch/branch.component.ts +++ b/src/@seed/components/navigation/horizontal/components/branch/branch.component.ts @@ -10,16 +10,14 @@ import { input, viewChild, } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' import type { MatMenu } from '@angular/material/menu' -import { MatMenuModule } from '@angular/material/menu' -import { MatTooltipModule } from '@angular/material/tooltip' import { Subject, takeUntil } from 'rxjs' import { HorizontalNavigationBasicItemComponent } from '@seed/components/navigation/horizontal/components/basic/basic.component' import { HorizontalNavigationDividerItemComponent } from '@seed/components/navigation/horizontal/components/divider/divider.component' import type { HorizontalNavigationComponent } from '@seed/components/navigation/horizontal/horizontal.component' import { SeedNavigationService } from '@seed/components/navigation/navigation.service' import type { NavigationItem } from '@seed/components/navigation/navigation.types' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-horizontal-navigation-branch-item', @@ -30,9 +28,7 @@ import type { NavigationItem } from '@seed/components/navigation/navigation.type HorizontalNavigationBasicItemComponent, forwardRef(() => HorizontalNavigationBranchItemComponent), HorizontalNavigationDividerItemComponent, - MatIconModule, - MatMenuModule, - MatTooltipModule, + MaterialImports, ], }) export class HorizontalNavigationBranchItemComponent implements OnInit, OnDestroy { diff --git a/src/@seed/components/navigation/vertical/components/aside/aside.component.ts b/src/@seed/components/navigation/vertical/components/aside/aside.component.ts index a2638375..c43d182e 100644 --- a/src/@seed/components/navigation/vertical/components/aside/aside.component.ts +++ b/src/@seed/components/navigation/vertical/components/aside/aside.component.ts @@ -1,8 +1,6 @@ import { CommonModule } from '@angular/common' import type { OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core' import { ChangeDetectionStrategy, ChangeDetectorRef, Component, inject, input } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' -import { MatTooltipModule } from '@angular/material/tooltip' import { NavigationEnd, Router } from '@angular/router' import { filter, Subject, takeUntil } from 'rxjs' import type { NavigationItem, VerticalNavigationComponent } from '@seed/components' @@ -14,6 +12,7 @@ import { VerticalNavigationGroupItemComponent, VerticalNavigationSpacerItemComponent, } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { exactMatchOptions, subsetMatchOptions } from '@seed/utils' @Component({ @@ -22,8 +21,7 @@ import { exactMatchOptions, subsetMatchOptions } from '@seed/utils' changeDetection: ChangeDetectionStrategy.OnPush, imports: [ CommonModule, - MatIconModule, - MatTooltipModule, + MaterialImports, VerticalNavigationBasicItemComponent, VerticalNavigationCollapsibleItemComponent, VerticalNavigationDividerItemComponent, diff --git a/src/@seed/components/navigation/vertical/components/basic/basic.component.ts b/src/@seed/components/navigation/vertical/components/basic/basic.component.ts index c0ff256a..54492788 100644 --- a/src/@seed/components/navigation/vertical/components/basic/basic.component.ts +++ b/src/@seed/components/navigation/vertical/components/basic/basic.component.ts @@ -1,20 +1,19 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { ChangeDetectionStrategy, ChangeDetectorRef, Component, inject, input } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' -import { MatTooltipModule } from '@angular/material/tooltip' import { NavigationEnd, Router, RouterLink, RouterLinkActive } from '@angular/router' import { Subject, takeUntil } from 'rxjs' import type { NavigationItem, VerticalNavigationComponent } from '@seed/components' import { SeedNavigationService } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { exactMatchOptions, subsetMatchOptions } from '@seed/utils' @Component({ selector: 'seed-vertical-navigation-basic-item', templateUrl: './basic.component.html', changeDetection: ChangeDetectionStrategy.OnPush, - imports: [CommonModule, MatIconModule, MatTooltipModule, RouterLink, RouterLinkActive, SharedImports], + imports: [CommonModule, MaterialImports, RouterLink, RouterLinkActive, SharedImports], }) export class VerticalNavigationBasicItemComponent implements OnInit, OnDestroy { private _changeDetectorRef = inject(ChangeDetectorRef) diff --git a/src/@seed/components/navigation/vertical/components/collapsible/collapsible.component.ts b/src/@seed/components/navigation/vertical/components/collapsible/collapsible.component.ts index b73ca823..c89b75d0 100644 --- a/src/@seed/components/navigation/vertical/components/collapsible/collapsible.component.ts +++ b/src/@seed/components/navigation/vertical/components/collapsible/collapsible.component.ts @@ -2,8 +2,6 @@ import type { BooleanInput } from '@angular/cdk/coercion' import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { ChangeDetectionStrategy, ChangeDetectorRef, Component, forwardRef, HostBinding, inject, input } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' -import { MatTooltipModule } from '@angular/material/tooltip' import { NavigationEnd, Router } from '@angular/router' import { filter, Subject, takeUntil } from 'rxjs' import { Animations } from '@seed/animations' @@ -15,6 +13,7 @@ import { VerticalNavigationGroupItemComponent, VerticalNavigationSpacerItemComponent, } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { exactMatchOptions, subsetMatchOptions } from '@seed/utils' @Component({ @@ -24,8 +23,7 @@ import { exactMatchOptions, subsetMatchOptions } from '@seed/utils' changeDetection: ChangeDetectionStrategy.OnPush, imports: [ CommonModule, - MatTooltipModule, - MatIconModule, + MaterialImports, VerticalNavigationBasicItemComponent, forwardRef(() => VerticalNavigationCollapsibleItemComponent), VerticalNavigationDividerItemComponent, diff --git a/src/@seed/components/navigation/vertical/components/group/group.component.ts b/src/@seed/components/navigation/vertical/components/group/group.component.ts index ad5a6c3f..6e3739b1 100644 --- a/src/@seed/components/navigation/vertical/components/group/group.component.ts +++ b/src/@seed/components/navigation/vertical/components/group/group.component.ts @@ -1,7 +1,6 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { ChangeDetectionStrategy, ChangeDetectorRef, Component, forwardRef, inject, input } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' import { Subject, takeUntil } from 'rxjs' import type { NavigationItem, VerticalNavigationComponent } from '@seed/components' import { @@ -11,6 +10,7 @@ import { VerticalNavigationDividerItemComponent, VerticalNavigationSpacerItemComponent, } from '@seed/components' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-vertical-navigation-group-item', @@ -18,7 +18,7 @@ import { changeDetection: ChangeDetectionStrategy.OnPush, imports: [ CommonModule, - MatIconModule, + MaterialImports, VerticalNavigationBasicItemComponent, VerticalNavigationCollapsibleItemComponent, VerticalNavigationDividerItemComponent, diff --git a/src/@seed/components/not-found/not-found.component.ts b/src/@seed/components/not-found/not-found.component.ts index 32017bd1..463b22e0 100644 --- a/src/@seed/components/not-found/not-found.component.ts +++ b/src/@seed/components/not-found/not-found.component.ts @@ -1,10 +1,10 @@ import { Component, Input } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-not-found', templateUrl: './not-found.component.html', - imports: [MatIconModule], + imports: [MaterialImports], }) export class NotFoundComponent { @Input() message: string diff --git a/src/@seed/components/page/page.component.ts b/src/@seed/components/page/page.component.ts index 63d8b649..70480945 100644 --- a/src/@seed/components/page/page.component.ts +++ b/src/@seed/components/page/page.component.ts @@ -1,12 +1,10 @@ import { CommonModule } from '@angular/common' import type { OnDestroy } from '@angular/core' import { Component, inject, Input, ViewEncapsulation } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatIconModule } from '@angular/material/icon' -import { MatTooltipModule } from '@angular/material/tooltip' import { ActivatedRoute, Router } from '@angular/router' import { Subject, takeUntil } from 'rxjs' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { LoadingService } from '@seed/services' import type { InventoryType } from 'app/modules/inventory' import { DrawerService } from '../drawer' @@ -16,7 +14,7 @@ import type { Config } from './page.types' @Component({ selector: 'seed-page', templateUrl: './page.component.html', - imports: [CommonModule, MatButtonModule, MatIconModule, MatTooltipModule, InventoryTabComponent, SharedImports], + imports: [CommonModule, MaterialImports, InventoryTabComponent, SharedImports], encapsulation: ViewEncapsulation.None, styles: ':host { @apply flex; @apply flex-auto }', }) diff --git a/src/@seed/components/progress/progress-bar.component.ts b/src/@seed/components/progress/progress-bar.component.ts index 2cf0b5af..b91b8537 100644 --- a/src/@seed/components/progress/progress-bar.component.ts +++ b/src/@seed/components/progress/progress-bar.component.ts @@ -1,14 +1,11 @@ import { CommonModule } from '@angular/common' import { Component, Input } from '@angular/core' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatProgressBarModule } from '@angular/material/progress-bar' -import { MatProgressSpinnerModule } from '@angular/material/progress-spinner' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-progress-bar', templateUrl: './progress-bar.component.html', - imports: [CommonModule, MatDividerModule, MatProgressBarModule, MatIconModule, MatProgressSpinnerModule], + imports: [CommonModule, MaterialImports], }) export class ProgressBarComponent { @Input() total: number diff --git a/src/@seed/directives/image-overlay/dialog/image-overlay.component.ts b/src/@seed/directives/image-overlay/dialog/image-overlay.component.ts index 56dad59f..f7f9bb8e 100644 --- a/src/@seed/directives/image-overlay/dialog/image-overlay.component.ts +++ b/src/@seed/directives/image-overlay/dialog/image-overlay.component.ts @@ -1,12 +1,12 @@ import { Component, inject } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog' +import { MAT_DIALOG_DATA } from '@angular/material/dialog' +import { MaterialImports } from '@seed/materials' import type { ImageOverlayData } from '../image-overlay.types' @Component({ selector: 'seed-image-overlay', templateUrl: './image-overlay.component.html', - imports: [MatButtonModule, MatDialogModule], + imports: [MaterialImports], styles: ':host { @apply flex }', }) export class OverlayImageComponent { diff --git a/src/@seed/materials/index.ts b/src/@seed/materials/index.ts new file mode 100644 index 00000000..8e65b0f5 --- /dev/null +++ b/src/@seed/materials/index.ts @@ -0,0 +1 @@ +export * from './material.module' diff --git a/src/@seed/materials/material.module.ts b/src/@seed/materials/material.module.ts new file mode 100644 index 00000000..789cb785 --- /dev/null +++ b/src/@seed/materials/material.module.ts @@ -0,0 +1,56 @@ +import { MatAutocompleteModule } from '@angular/material/autocomplete' +import { MatButtonModule } from '@angular/material/button' +import { MatButtonToggleModule } from '@angular/material/button-toggle' +import { MatCardModule } from '@angular/material/card' +import { MatCheckboxModule } from '@angular/material/checkbox' +import { MatChipsModule } from '@angular/material/chips' +import { MatNativeDateModule, MatOptionModule } from '@angular/material/core' +import { MatDatepickerModule } from '@angular/material/datepicker' +import { MatDialogModule } from '@angular/material/dialog' +import { MatDividerModule } from '@angular/material/divider' +import { MatExpansionModule } from '@angular/material/expansion' +import { MatFormFieldModule } from '@angular/material/form-field' +import { MatIconModule } from '@angular/material/icon' +import { MatInputModule } from '@angular/material/input' +import { MatMenuModule } from '@angular/material/menu' +import { MatPaginatorModule } from '@angular/material/paginator' +import { MatProgressBarModule } from '@angular/material/progress-bar' +import { MatProgressSpinnerModule } from '@angular/material/progress-spinner' +import { MatSelectModule } from '@angular/material/select' +import { MatSidenavModule } from '@angular/material/sidenav' +import { MatSlideToggleModule } from '@angular/material/slide-toggle' +import { MatSortModule } from '@angular/material/sort' +import { MatStepperModule } from '@angular/material/stepper' +import { MatTableModule } from '@angular/material/table' +import { MatTabsModule } from '@angular/material/tabs' +import { MatTooltipModule } from '@angular/material/tooltip' + +export const MaterialImports = [ + MatAutocompleteModule, + MatButtonModule, + MatButtonToggleModule, + MatCardModule, + MatCheckboxModule, + MatChipsModule, + MatDatepickerModule, + MatDialogModule, + MatDividerModule, + MatExpansionModule, + MatFormFieldModule, + MatIconModule, + MatInputModule, + MatMenuModule, + MatNativeDateModule, + MatPaginatorModule, + MatProgressBarModule, + MatProgressSpinnerModule, + MatOptionModule, + MatSelectModule, + MatStepperModule, + MatSidenavModule, + MatSlideToggleModule, + MatSortModule, + MatTabsModule, + MatTableModule, + MatTooltipModule, +] diff --git a/src/@seed/services/better/index.ts b/src/@seed/services/better/index.ts new file mode 100644 index 00000000..cb2e6587 --- /dev/null +++ b/src/@seed/services/better/index.ts @@ -0,0 +1,2 @@ +export * from './better.service' +export * from './better.types' diff --git a/src/@seed/services/confirmation/dialog/dialog.component.ts b/src/@seed/services/confirmation/dialog/dialog.component.ts index fc55ce62..49a8925c 100644 --- a/src/@seed/services/confirmation/dialog/dialog.component.ts +++ b/src/@seed/services/confirmation/dialog/dialog.component.ts @@ -1,8 +1,7 @@ import { CommonModule } from '@angular/common' import { Component, inject, ViewEncapsulation } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' +import { MAT_DIALOG_DATA } from '@angular/material/dialog' +import { MaterialImports } from '@seed/materials' import type { ConfirmationConfig } from '..' @Component({ @@ -10,7 +9,7 @@ import type { ConfirmationConfig } from '..' templateUrl: './dialog.component.html', styleUrl: './dialog.component.scss', encapsulation: ViewEncapsulation.None, - imports: [CommonModule, MatButtonModule, MatDialogModule, MatIconModule], + imports: [CommonModule, MaterialImports], }) export class ConfirmationDialogComponent { data = inject(MAT_DIALOG_DATA) as ConfirmationConfig diff --git a/src/@seed/services/index.ts b/src/@seed/services/index.ts index dec5d90c..6e46d01c 100644 --- a/src/@seed/services/index.ts +++ b/src/@seed/services/index.ts @@ -1,3 +1,4 @@ +export * from './better' export * from './config' export * from './confirmation' export * from './error' @@ -6,3 +7,4 @@ export * from './media-watcher' export * from './platform' export * from './splash-screen' export * from './terms' +export * from './uploader' diff --git a/src/@seed/services/uploader/uploader.service.ts b/src/@seed/services/uploader/uploader.service.ts index d82e091f..49f3dd21 100644 --- a/src/@seed/services/uploader/uploader.service.ts +++ b/src/@seed/services/uploader/uploader.service.ts @@ -3,7 +3,7 @@ import { HttpClient } from '@angular/common/http' import { inject, Injectable } from '@angular/core' import type { Observable } from 'rxjs' import { catchError, combineLatest, finalize, interval, of, Subject, switchMap, takeUntil, takeWhile, tap, throwError } from 'rxjs' -import type { ProgressResponse } from '@seed/api/progress' +import type { ProgressResponse } from '@seed/api' import { ErrorService } from '../error' import type { CheckProgressLoopParams, diff --git a/src/@seed/services/uploader/uploader.types.ts b/src/@seed/services/uploader/uploader.types.ts index f9d9f446..ab406b8c 100644 --- a/src/@seed/services/uploader/uploader.types.ts +++ b/src/@seed/services/uploader/uploader.types.ts @@ -1,5 +1,4 @@ -import type { ProgressResponse } from '@seed/api/progress' -import type { Sensor } from '@seed/api/sensor' +import type { ProgressResponse, Sensor } from '@seed/api' export type ProgressBarObj = { message: unknown; diff --git a/src/app/app.resolvers.ts b/src/app/app.resolvers.ts index c80dbef6..e717c9e9 100644 --- a/src/app/app.resolvers.ts +++ b/src/app/app.resolvers.ts @@ -1,9 +1,6 @@ import { inject } from '@angular/core' import { forkJoin } from 'rxjs' -import { ConfigService } from '@seed/api/config' -import { OrganizationService } from '@seed/api/organization/organization.service' -import { UserService } from '@seed/api/user' -import { VersionService } from '@seed/api/version' +import { ConfigService, OrganizationService, UserService, VersionService } from '@seed/api' export const configResolver = () => { const configService = inject(ConfigService) diff --git a/src/app/core/auth/guards/signUp.guard.ts b/src/app/core/auth/guards/signUp.guard.ts index 3eadbe52..e22f35ae 100644 --- a/src/app/core/auth/guards/signUp.guard.ts +++ b/src/app/core/auth/guards/signUp.guard.ts @@ -2,7 +2,7 @@ import { inject } from '@angular/core' import type { CanActivateFn } from '@angular/router' import { Router } from '@angular/router' import { map } from 'rxjs' -import { ConfigService } from '@seed/api/config' +import { ConfigService } from '@seed/api' export const SignUpGuard: CanActivateFn = () => { const configService = inject(ConfigService) diff --git a/src/app/core/navigation/navigation.service.ts b/src/app/core/navigation/navigation.service.ts index 32b6d0b2..af286576 100644 --- a/src/app/core/navigation/navigation.service.ts +++ b/src/app/core/navigation/navigation.service.ts @@ -1,6 +1,6 @@ import { inject, Injectable } from '@angular/core' import { ActivatedRoute, Router } from '@angular/router' -import { DatasetService } from '@seed/api/dataset' +import { DatasetService } from '@seed/api' import type { NavigationItem, VerticalNavigationComponent } from '@seed/components' import { SeedNavigationService } from '@seed/components' diff --git a/src/app/layout/common/dev-settings/dev-settings.component.ts b/src/app/layout/common/dev-settings/dev-settings.component.ts index 8b513547..2f5c95ea 100644 --- a/src/app/layout/common/dev-settings/dev-settings.component.ts +++ b/src/app/layout/common/dev-settings/dev-settings.component.ts @@ -1,11 +1,9 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject, ViewEncapsulation } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatIconModule } from '@angular/material/icon' -import { MatTooltipModule } from '@angular/material/tooltip' import { TranslocoService } from '@jsverse/transloco' import { Subject, takeUntil } from 'rxjs' import { DrawerComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import type { Scheme, SEEDConfig } from '@seed/services' import { ConfigService } from '@seed/services' @@ -14,7 +12,7 @@ import { ConfigService } from '@seed/services' templateUrl: './dev-settings.component.html', styleUrl: './dev-settings.component.scss', encapsulation: ViewEncapsulation.None, - imports: [DrawerComponent, MatButtonModule, MatIconModule, MatTooltipModule], + imports: [DrawerComponent, MaterialImports], }) export class DevSettingsComponent implements OnInit, OnDestroy { private _configService = inject(ConfigService) diff --git a/src/app/layout/common/languages/languages.component.ts b/src/app/layout/common/languages/languages.component.ts index 26a923fe..4cbfc95f 100644 --- a/src/app/layout/common/languages/languages.component.ts +++ b/src/app/layout/common/languages/languages.component.ts @@ -1,11 +1,10 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { ChangeDetectionStrategy, Component, inject, ViewEncapsulation } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatMenuModule } from '@angular/material/menu' import type { LangDefinition } from '@jsverse/transloco' import { TranslocoService } from '@jsverse/transloco' import { Subject, takeUntil } from 'rxjs' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-languages', @@ -13,7 +12,7 @@ import { Subject, takeUntil } from 'rxjs' encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: 'languages', - imports: [CommonModule, MatButtonModule, MatMenuModule], + imports: [CommonModule, MaterialImports], }) export class LanguagesComponent implements OnInit, OnDestroy { private _translocoService = inject(TranslocoService) diff --git a/src/app/layout/common/organization-selector/organization-selector.component.ts b/src/app/layout/common/organization-selector/organization-selector.component.ts index 5057a610..918711fa 100644 --- a/src/app/layout/common/organization-selector/organization-selector.component.ts +++ b/src/app/layout/common/organization-selector/organization-selector.component.ts @@ -1,20 +1,16 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject, ViewEncapsulation } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatIconModule } from '@angular/material/icon' -import { MatMenuModule } from '@angular/material/menu' import { Subject, takeUntil } from 'rxjs' -import { OrganizationService } from '@seed/api/organization/organization.service' -import type { BriefOrganization } from '@seed/api/organization/organization.types' -import type { CurrentUser } from '@seed/api/user' -import { UserService } from '@seed/api/user' +import type { BriefOrganization, CurrentUser } from '@seed/api' +import { OrganizationService, UserService } from '@seed/api' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-organization-selector', templateUrl: './organization-selector.component.html', encapsulation: ViewEncapsulation.None, exportAs: 'organization-selector', - imports: [MatButtonModule, MatIconModule, MatMenuModule], + imports: [MaterialImports], }) export class OrganizationSelectorComponent implements OnInit, OnDestroy { private _organizationService = inject(OrganizationService) diff --git a/src/app/layout/common/user/user.component.ts b/src/app/layout/common/user/user.component.ts index bd598205..c05e6862 100644 --- a/src/app/layout/common/user/user.component.ts +++ b/src/app/layout/common/user/user.component.ts @@ -1,13 +1,10 @@ import type { OnDestroy, OnInit } from '@angular/core' import { booleanAttribute, ChangeDetectionStrategy, ChangeDetectorRef, Component, inject, input, ViewEncapsulation } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatMenuModule } from '@angular/material/menu' import { Router } from '@angular/router' import { Subject, takeUntil } from 'rxjs' -import type { CurrentUser } from '@seed/api/user' -import { UserService } from '@seed/api/user' +import type { CurrentUser } from '@seed/api' +import { UserService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { sha256 } from '@seed/utils' import { AuthService } from 'app/core/auth/auth.service' @@ -17,7 +14,7 @@ import { AuthService } from 'app/core/auth/auth.service' encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: 'user', - imports: [MatButtonModule, MatDividerModule, MatIconModule, MatMenuModule], + imports: [MaterialImports], }) export class UserComponent implements OnInit, OnDestroy { private _authService = inject(AuthService) diff --git a/src/app/layout/layout.component.ts b/src/app/layout/layout.component.ts index 256537a2..dffa1764 100644 --- a/src/app/layout/layout.component.ts +++ b/src/app/layout/layout.component.ts @@ -2,7 +2,7 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, DOCUMENT, inject, isDevMode, Renderer2, ViewEncapsulation } from '@angular/core' import { ActivatedRoute, NavigationEnd, Router } from '@angular/router' import { combineLatest, filter, map, Subject, takeUntil } from 'rxjs' -import { VersionService } from '@seed/api/version' +import { VersionService } from '@seed/api' import type { Scheme, SEEDConfig } from '@seed/services' import { ConfigService, MediaWatcherService, PlatformService } from '@seed/services' import { DevSettingsComponent } from './common/dev-settings/dev-settings.component' diff --git a/src/app/layout/layouts/main/main.component.ts b/src/app/layout/layouts/main/main.component.ts index 3c2bfe2e..125c0181 100644 --- a/src/app/layout/layouts/main/main.component.ts +++ b/src/app/layout/layouts/main/main.component.ts @@ -1,13 +1,12 @@ import { CdkScrollable } from '@angular/cdk/scrolling' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject, ViewEncapsulation } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatIconModule } from '@angular/material/icon' import { ActivatedRoute, NavigationEnd, Router, RouterLink, RouterOutlet } from '@angular/router' import { filter, Subject, takeUntil, tap } from 'rxjs' -import { VersionService } from '@seed/api/version' +import { VersionService } from '@seed/api' import type { NavigationItem } from '@seed/components' import { SEEDLoadingBarComponent, SeedNavigationService, VerticalNavigationComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { MediaWatcherService } from '@seed/services' import { NavigationService } from 'app/core/navigation/navigation.service' import { OrganizationSelectorComponent } from 'app/layout/common/organization-selector/organization-selector.component' @@ -20,8 +19,7 @@ import { type InventoryType } from 'app/modules/inventory/inventory.types' encapsulation: ViewEncapsulation.None, imports: [ CdkScrollable, - MatButtonModule, - MatIconModule, + MaterialImports, OrganizationSelectorComponent, RouterLink, RouterOutlet, diff --git a/src/app/mock-api/common/auth/api.ts b/src/app/mock-api/common/auth/api.ts index d4e35840..e2f2236c 100644 --- a/src/app/mock-api/common/auth/api.ts +++ b/src/app/mock-api/common/auth/api.ts @@ -3,7 +3,7 @@ import type { WordArray } from 'crypto-es/lib/core' import { Utf8 } from 'crypto-es/lib/core' import { Base64 } from 'crypto-es/lib/enc-base64' import { HmacSHA256 } from 'crypto-es/lib/sha256' -import type { CurrentUser } from '@seed/api/user' +import type { CurrentUser } from '@seed/api' import { MockApiService } from '@seed/mock-api' import { user as userData } from 'app/mock-api/common/user/data' diff --git a/src/app/mock-api/common/user/api.ts b/src/app/mock-api/common/user/api.ts index 7631560d..95f5b420 100644 --- a/src/app/mock-api/common/user/api.ts +++ b/src/app/mock-api/common/user/api.ts @@ -1,5 +1,5 @@ import { inject, Injectable } from '@angular/core' -import type { CurrentUser } from '@seed/api/user' +import type { CurrentUser } from '@seed/api' import { MockApiService } from '@seed/mock-api' import { user as userData } from './data' diff --git a/src/app/mock-api/common/user/data.ts b/src/app/mock-api/common/user/data.ts index 47585842..0ef3a365 100644 --- a/src/app/mock-api/common/user/data.ts +++ b/src/app/mock-api/common/user/data.ts @@ -1,4 +1,4 @@ -import type { CurrentUser } from '@seed/api/user' +import type { CurrentUser } from '@seed/api' export const user: CurrentUser = { first_name: 'Alex', diff --git a/src/app/modules/analyses/analyses.component.ts b/src/app/modules/analyses/analyses.component.ts index e8a6208b..d692d52a 100644 --- a/src/app/modules/analyses/analyses.component.ts +++ b/src/app/modules/analyses/analyses.component.ts @@ -1,21 +1,14 @@ import { CommonModule } from '@angular/common' import type { AfterViewInit, OnDestroy } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatCardModule } from '@angular/material/card' -import { MatDialogModule } from '@angular/material/dialog' -import { MatGridListModule } from '@angular/material/grid-list' -import { MatIconModule } from '@angular/material/icon' -import { MatListModule } from '@angular/material/list' -import { MatTabsModule } from '@angular/material/tabs' import { RouterLink } from '@angular/router' import { AgGridAngular } from 'ag-grid-angular' import { filter, Subject, tap } from 'rxjs' -import type { Analysis } from '@seed/api/analysis' -import { AnalysisService } from '@seed/api/analysis' -import { type Cycle, CycleService } from '@seed/api/cycle' -import { UserService } from '@seed/api/user' +import type { Analysis, Cycle } from '@seed/api' +import { AnalysisService, CycleService, UserService } from '@seed/api' import { AnalysesGridComponent, NotFoundComponent, PageComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-analyses', @@ -24,12 +17,7 @@ import { SharedImports } from '@seed/directives' AnalysesGridComponent, AgGridAngular, CommonModule, - MatCardModule, - MatDialogModule, - MatGridListModule, - MatIconModule, - MatListModule, - MatTabsModule, + MaterialImports, NotFoundComponent, PageComponent, RouterLink, diff --git a/src/app/modules/analyses/analysis/analysis.component.ts b/src/app/modules/analyses/analysis/analysis.component.ts index 2c28426b..e630cde9 100644 --- a/src/app/modules/analyses/analysis/analysis.component.ts +++ b/src/app/modules/analyses/analysis/analysis.component.ts @@ -2,29 +2,23 @@ import type { KeyValue } from '@angular/common' import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' import { MatDialog } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' import { ActivatedRoute, Router, RouterLink } from '@angular/router' import { AgGridAngular } from 'ag-grid-angular' import type { CellClickedEvent, ColDef, GridApi, GridReadyEvent } from 'ag-grid-community' import { combineLatest, filter, Subject, switchMap, takeUntil, tap } from 'rxjs' -import type { AnalysesMessage, Analysis, AnalysisOutputFile, View } from '@seed/api/analysis' -import { AnalysisService } from '@seed/api/analysis' -import { type Cycle, CycleService } from '@seed/api/cycle' -import { OrganizationService } from '@seed/api/organization' -import type { CurrentUser } from '@seed/api/user' -import { UserService } from '@seed/api/user' +import type { AnalysesMessage, Analysis, AnalysisOutputFile, CurrentUser, Cycle, View } from '@seed/api' +import { AnalysisService, CycleService, OrganizationService, UserService } from '@seed/api' import { PageComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials/material.module' import { ConfigService } from '@seed/services' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' @Component({ selector: 'seed-analyses-analysis', templateUrl: './analysis.component.html', - imports: [AgGridAngular, CommonModule, MatButtonModule, MatDividerModule, MatIconModule, PageComponent, RouterLink, SharedImports], + imports: [AgGridAngular, CommonModule, MaterialImports, PageComponent, RouterLink, SharedImports], }) export class AnalysisComponent implements OnDestroy, OnInit { private _route = inject(ActivatedRoute) diff --git a/src/app/modules/analyses/analysis_view/analysis-view.component.ts b/src/app/modules/analyses/analysis_view/analysis-view.component.ts index bf758b97..7054c5d3 100644 --- a/src/app/modules/analyses/analysis_view/analysis-view.component.ts +++ b/src/app/modules/analyses/analysis_view/analysis-view.component.ts @@ -1,20 +1,15 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' import { ActivatedRoute, RouterModule } from '@angular/router' import { AgGridAngular } from 'ag-grid-angular' import type { ColDef, GridApi, GridReadyEvent } from 'ag-grid-community' import type { Observable } from 'rxjs' import { combineLatest, filter, Subject, switchMap, takeUntil, tap } from 'rxjs' -import type { AnalysesMessage, Analysis, View } from '@seed/api/analysis' -import { AnalysisService } from '@seed/api/analysis' -import type { Cycle } from '@seed/api/cycle' -import { CycleService } from '@seed/api/cycle' -import { OrganizationService } from '@seed/api/organization' -import { UserService } from '@seed/api/user' +import type { AnalysesMessage, Analysis, Cycle, View } from '@seed/api' +import { AnalysisService, CycleService, OrganizationService, UserService } from '@seed/api' import { NotFoundComponent, PageComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { SafeUrlPipe } from '@seed/pipes/safe-url/safe-url.pipe' import { ConfigService } from '@seed/services' import type { InventoryType } from 'app/modules/inventory' @@ -22,7 +17,7 @@ import type { InventoryType } from 'app/modules/inventory' @Component({ selector: 'seed-analysis-view', templateUrl: './analysis-view.component.html', - imports: [AgGridAngular, CommonModule, MatIconModule, MatDividerModule, NotFoundComponent, PageComponent, RouterModule, SafeUrlPipe], + imports: [AgGridAngular, CommonModule, MaterialImports, NotFoundComponent, PageComponent, RouterModule, SafeUrlPipe], }) export class AnalysisViewComponent implements OnDestroy, OnInit { private _route = inject(ActivatedRoute) diff --git a/src/app/modules/api/api.routes.ts b/src/app/modules/api/api.routes.ts index 0cf7586c..b1a681e6 100644 --- a/src/app/modules/api/api.routes.ts +++ b/src/app/modules/api/api.routes.ts @@ -1,6 +1,6 @@ import { inject } from '@angular/core' import type { Routes } from '@angular/router' -import { SwaggerService } from '@seed/api/swagger' +import { SwaggerService } from '@seed/api' import { ApiComponent } from './api.component' export default [ diff --git a/src/app/modules/auth/forgot-password/forgot-password.component.ts b/src/app/modules/auth/forgot-password/forgot-password.component.ts index 3b2dfe52..612a2329 100644 --- a/src/app/modules/auth/forgot-password/forgot-password.component.ts +++ b/src/app/modules/auth/forgot-password/forgot-password.component.ts @@ -2,15 +2,12 @@ import type { OnInit } from '@angular/core' import { Component, inject, ViewEncapsulation } from '@angular/core' import type { FormControl, FormGroup } from '@angular/forms' import { FormBuilder, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatInputModule } from '@angular/material/input' -import { MatProgressSpinnerModule } from '@angular/material/progress-spinner' import { RouterLink } from '@angular/router' import { finalize } from 'rxjs' import { Animations } from '@seed/animations' import type { Alert } from '@seed/components' import { AlertComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { AuthService } from 'app/core/auth/auth.service' @Component({ @@ -21,10 +18,7 @@ import { AuthService } from 'app/core/auth/auth.service' imports: [ AlertComponent, FormsModule, - MatButtonModule, - MatFormFieldModule, - MatInputModule, - MatProgressSpinnerModule, + MaterialImports, ReactiveFormsModule, RouterLink, ], diff --git a/src/app/modules/auth/reset-password/reset-password.component.ts b/src/app/modules/auth/reset-password/reset-password.component.ts index 5fe8e80f..cb56eec7 100644 --- a/src/app/modules/auth/reset-password/reset-password.component.ts +++ b/src/app/modules/auth/reset-password/reset-password.component.ts @@ -2,16 +2,12 @@ import type { OnInit } from '@angular/core' import { Component, inject, ViewEncapsulation } from '@angular/core' import type { FormControl, FormGroup } from '@angular/forms' import { FormBuilder, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatProgressSpinnerModule } from '@angular/material/progress-spinner' import { RouterLink } from '@angular/router' import { finalize, take } from 'rxjs' import { Animations } from '@seed/animations' import type { Alert } from '@seed/components' import { AlertComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import type { SEEDConfig } from '@seed/services' import { ConfigService } from '@seed/services' import { SEEDValidators } from '@seed/validators' @@ -25,11 +21,7 @@ import { AuthService } from 'app/core/auth/auth.service' imports: [ AlertComponent, FormsModule, - MatButtonModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatProgressSpinnerModule, + MaterialImports, ReactiveFormsModule, RouterLink, ], diff --git a/src/app/modules/auth/sign-in/sign-in.component.ts b/src/app/modules/auth/sign-in/sign-in.component.ts index 832c69e3..682b8ba1 100644 --- a/src/app/modules/auth/sign-in/sign-in.component.ts +++ b/src/app/modules/auth/sign-in/sign-in.component.ts @@ -2,18 +2,13 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject, ViewEncapsulation } from '@angular/core' import type { FormControl, FormGroup } from '@angular/forms' import { FormBuilder, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatCheckboxModule } from '@angular/material/checkbox' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatProgressSpinnerModule } from '@angular/material/progress-spinner' import { ActivatedRoute, Router, RouterLink } from '@angular/router' import { Subject, takeUntil } from 'rxjs' import { Animations } from '@seed/animations' -import { ConfigService } from '@seed/api/config' +import { ConfigService } from '@seed/api' import type { Alert } from '@seed/components' import { AlertComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { TermsService } from '@seed/services' import { AuthService } from 'app/core/auth/auth.service' @@ -25,12 +20,7 @@ import { AuthService } from 'app/core/auth/auth.service' imports: [ AlertComponent, FormsModule, - MatButtonModule, - MatCheckboxModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatProgressSpinnerModule, + MaterialImports, ReactiveFormsModule, RouterLink, ], diff --git a/src/app/modules/auth/sign-up/sign-up.component.ts b/src/app/modules/auth/sign-up/sign-up.component.ts index 5761137a..4aab6efb 100644 --- a/src/app/modules/auth/sign-up/sign-up.component.ts +++ b/src/app/modules/auth/sign-up/sign-up.component.ts @@ -2,17 +2,12 @@ import type { OnInit } from '@angular/core' import { Component, inject, ViewEncapsulation } from '@angular/core' import type { FormControl, FormGroup } from '@angular/forms' import { FormBuilder, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatCheckboxModule } from '@angular/material/checkbox' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatProgressSpinnerModule } from '@angular/material/progress-spinner' import { Router, RouterLink } from '@angular/router' import { take } from 'rxjs' import { Animations } from '@seed/animations' import type { Alert } from '@seed/components' import { AlertComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { type SEEDConfig, TermsService } from '@seed/services' import { ConfigService } from '@seed/services/config' import { AuthService } from 'app/core/auth/auth.service' @@ -25,12 +20,7 @@ import { AuthService } from 'app/core/auth/auth.service' imports: [ AlertComponent, FormsModule, - MatButtonModule, - MatCheckboxModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatProgressSpinnerModule, + MaterialImports, ReactiveFormsModule, RouterLink, ], diff --git a/src/app/modules/column-list-profile/modal/modal.component.ts b/src/app/modules/column-list-profile/modal/modal.component.ts index ba1f2e77..4062cf5a 100644 --- a/src/app/modules/column-list-profile/modal/modal.component.ts +++ b/src/app/modules/column-list-profile/modal/modal.component.ts @@ -1,15 +1,10 @@ import { Component, inject } from '@angular/core' import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatProgressBar } from '@angular/material/progress-bar' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { EMPTY, finalize, switchMap, tap } from 'rxjs' -import type { Column } from '@seed/api/column' -import { InventoryService } from '@seed/api/inventory' +import type { Column } from '@seed/api' +import { InventoryService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { SEEDValidators } from '@seed/validators' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' import type { InventoryDisplayType, InventoryType, Profile, ProfileLocation, ProfileModalMode } from 'app/modules/inventory/inventory.types' @@ -19,13 +14,7 @@ import type { InventoryDisplayType, InventoryType, Profile, ProfileLocation, Pro templateUrl: './modal.component.html', imports: [ FormsModule, - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatProgressBar, + MaterialImports, ReactiveFormsModule, ], }) diff --git a/src/app/modules/data-quality/results-modal.component.ts b/src/app/modules/data-quality/results-modal.component.ts index d2387903..20e7f623 100644 --- a/src/app/modules/data-quality/results-modal.component.ts +++ b/src/app/modules/data-quality/results-modal.component.ts @@ -1,15 +1,13 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' import { AgGridAngular } from 'ag-grid-angular' import type { ColDef } from 'ag-grid-community' import { Subject, takeUntil, tap } from 'rxjs' -import type { DataQualityResults } from '@seed/api/data-quality' -import { DataQualityService } from '@seed/api/data-quality' +import type { DataQualityResults } from '@seed/api' +import { DataQualityService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' @Component({ @@ -18,9 +16,7 @@ import { ConfigService } from '@seed/services' imports: [ AgGridAngular, CommonModule, - MatIconModule, - MatButtonModule, - MatDividerModule, + MaterialImports, ], }) export class ResultsModalComponent implements OnDestroy, OnInit { diff --git a/src/app/modules/data/data.component.ts b/src/app/modules/data/data.component.ts index 7b3a7dc6..f475482c 100644 --- a/src/app/modules/data/data.component.ts +++ b/src/app/modules/data/data.component.ts @@ -1,22 +1,21 @@ import { CommonModule } from '@angular/common' import type { AfterViewInit, OnInit } from '@angular/core' import { Component, inject, viewChild, ViewEncapsulation } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatIconModule } from '@angular/material/icon' -import { MatSort, MatSortModule } from '@angular/material/sort' -import { MatTableDataSource, MatTableModule } from '@angular/material/table' +import { MatSort } from '@angular/material/sort' +import { MatTableDataSource } from '@angular/material/table' import { ActivatedRoute, Router } from '@angular/router' import { from, skip } from 'rxjs' -import type { Dataset } from '@seed/api/dataset' -import { UserService } from '@seed/api/user' +import type { Dataset } from '@seed/api' +import { UserService } from '@seed/api' import { PageComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-data', templateUrl: './data.component.html', encapsulation: ViewEncapsulation.None, // changeDetection: ChangeDetectionStrategy.OnPush, - imports: [CommonModule, MatButtonModule, MatIconModule, MatSortModule, MatTableModule, PageComponent], + imports: [CommonModule, MaterialImports, PageComponent], }) export class DataComponent implements OnInit, AfterViewInit { private _route = inject(ActivatedRoute) diff --git a/src/app/modules/datasets/data-mappings/data-mapping.component.ts b/src/app/modules/datasets/data-mappings/data-mapping.component.ts index 2dfb8d6c..c128771b 100644 --- a/src/app/modules/datasets/data-mappings/data-mapping.component.ts +++ b/src/app/modules/datasets/data-mappings/data-mapping.component.ts @@ -2,31 +2,14 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject, ViewChild } from '@angular/core' import { FormsModule, ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatButtonToggleModule } from '@angular/material/button-toggle' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatSelectModule } from '@angular/material/select' -import { MatSidenavModule } from '@angular/material/sidenav' import type { MatStepper } from '@angular/material/stepper' -import { MatStepperModule } from '@angular/material/stepper' import { ActivatedRoute } from '@angular/router' import { AgGridAngular } from 'ag-grid-angular' import { catchError, filter, forkJoin, of, Subject, switchMap, take, takeUntil, tap } from 'rxjs' -import { type Column, ColumnService } from '@seed/api/column' -import type { ColumnMappingProfile, ColumnMappingProfileType } from '@seed/api/column_mapping_profile' -import { ColumnMappingProfileService } from '@seed/api/column_mapping_profile' -import type { Cycle } from '@seed/api/cycle' -import { CycleService } from '@seed/api/cycle/cycle.service' -import type { ImportFile, MappingResultsResponse } from '@seed/api/dataset' -import { DatasetService } from '@seed/api/dataset' -import type { MappingSuggestionsResponse } from '@seed/api/mapping' -import { MappingService } from '@seed/api/mapping' -import type { Organization } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' -import type { ProgressResponse } from '@seed/api/progress' -import { UserService } from '@seed/api/user' +import type { Column, ColumnMappingProfile, ColumnMappingProfileType, Cycle, ImportFile, MappingResultsResponse, MappingSuggestionsResponse, Organization, ProgressResponse } from '@seed/api' +import { ColumnMappingProfileService, ColumnService, CycleService, DatasetService, MappingService, OrganizationService, UserService } from '@seed/api' import { PageComponent, ProgressBarComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { UploaderService } from '@seed/services/uploader' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' import type { InventoryDisplayType, InventoryType, Profile } from 'app/modules/inventory' @@ -45,13 +28,7 @@ import { MatchMergeComponent } from './step4/match-merge.component' HelpComponent, MapDataComponent, MatchMergeComponent, - MatButtonModule, - MatButtonToggleModule, - MatDividerModule, - MatIconModule, - MatSidenavModule, - MatSelectModule, - MatStepperModule, + MaterialImports, PageComponent, ProgressBarComponent, ReactiveFormsModule, diff --git a/src/app/modules/datasets/data-mappings/index.ts b/src/app/modules/datasets/data-mappings/index.ts index b86d0eb2..1d34e7b9 100644 --- a/src/app/modules/datasets/data-mappings/index.ts +++ b/src/app/modules/datasets/data-mappings/index.ts @@ -1 +1,4 @@ export * from './data-mapping.component' +export * from './step1/map-data.component' +export * from './step3/save-mappings.component' +export * from './step4/match-merge.component' diff --git a/src/app/modules/datasets/data-mappings/step1/map-data.component.ts b/src/app/modules/datasets/data-mappings/step1/map-data.component.ts index da0316e6..44f6bb41 100644 --- a/src/app/modules/datasets/data-mappings/step1/map-data.component.ts +++ b/src/app/modules/datasets/data-mappings/step1/map-data.component.ts @@ -3,27 +3,15 @@ import { CommonModule } from '@angular/common' import type { OnChanges, OnDestroy, SimpleChanges } from '@angular/core' import { Component, EventEmitter, inject, Input, Output } from '@angular/core' import { FormsModule, ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatButtonToggleModule } from '@angular/material/button-toggle' -import { MatOptionModule } from '@angular/material/core' import { MatDialog } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatSelectModule } from '@angular/material/select' -import { MatSidenavModule } from '@angular/material/sidenav' -import { MatStepperModule } from '@angular/material/stepper' -import { MatTooltipModule } from '@angular/material/tooltip' import { ActivatedRoute } from '@angular/router' import { AgGridAngular } from 'ag-grid-angular' import type { CellValueChangedEvent, ColDef, GridApi, GridReadyEvent, RowNode } from 'ag-grid-community' import { Subject, switchMap, take } from 'rxjs' -import { type Column } from '@seed/api/column' -import type { ColumnMapping, ColumnMappingProfile, ColumnMappingProfileType } from '@seed/api/column_mapping_profile' -import { ColumnMappingProfileService } from '@seed/api/column_mapping_profile' -import type { Cycle } from '@seed/api/cycle' -import type { DataMappingRow, ImportFile } from '@seed/api/dataset' -import type { MappingSuggestionsResponse } from '@seed/api/mapping' +import type { Column, ColumnMapping, ColumnMappingProfile, ColumnMappingProfileType, Cycle, DataMappingRow, ImportFile, MappingSuggestionsResponse } from '@seed/api' +import { ColumnMappingProfileService } from '@seed/api' import { AlertComponent, PageComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import type { ProgressBarObj } from '@seed/services/uploader' import type { InventoryDisplayType } from 'app/modules/inventory' @@ -40,15 +28,7 @@ import { CreateProfileComponent } from './modal/create-profile.component' AlertComponent, CommonModule, HelpComponent, - MatButtonModule, - MatButtonToggleModule, - MatDividerModule, - MatIconModule, - MatOptionModule, - MatSidenavModule, - MatSelectModule, - MatStepperModule, - MatTooltipModule, + MaterialImports, PageComponent, ReactiveFormsModule, FormsModule, diff --git a/src/app/modules/datasets/data-mappings/step1/modal/create-profile.component.ts b/src/app/modules/datasets/data-mappings/step1/modal/create-profile.component.ts index 7060627c..f76dd16a 100644 --- a/src/app/modules/datasets/data-mappings/step1/modal/create-profile.component.ts +++ b/src/app/modules/datasets/data-mappings/step1/modal/create-profile.component.ts @@ -1,13 +1,9 @@ import { Component, inject } from '@angular/core' import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import type { ColumnMapping, ColumnMappingProfile, ColumnMappingProfileType } from '@seed/api/column_mapping_profile' -import { ColumnMappingProfileService } from '@seed/api/column_mapping_profile' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' +import type { ColumnMapping, ColumnMappingProfile, ColumnMappingProfileType } from '@seed/api' +import { ColumnMappingProfileService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { SEEDValidators } from '@seed/validators' @Component({ @@ -15,12 +11,7 @@ import { SEEDValidators } from '@seed/validators' templateUrl: './create-profile.component.html', imports: [ FormsModule, - MatIconModule, - MatButtonModule, - MatDividerModule, - MatFormFieldModule, - MatInputModule, - MatDialogModule, + MaterialImports, ReactiveFormsModule, ], }) diff --git a/src/app/modules/datasets/data-mappings/step3/save-mappings.component.ts b/src/app/modules/datasets/data-mappings/step3/save-mappings.component.ts index 84daea27..b9a99a47 100644 --- a/src/app/modules/datasets/data-mappings/step3/save-mappings.component.ts +++ b/src/app/modules/datasets/data-mappings/step3/save-mappings.component.ts @@ -1,19 +1,13 @@ import { CommonModule } from '@angular/common' import type { OnChanges, OnDestroy, SimpleChanges } from '@angular/core' import { Component, EventEmitter, inject, Input, Output } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' import { MatDialog } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatProgressBarModule } from '@angular/material/progress-bar' import { AgGridAngular } from 'ag-grid-angular' import type { ColDef } from 'ag-grid-community' import { Subject, switchMap, take, tap } from 'rxjs' -import type { Column } from '@seed/api/column' -import type { Cycle } from '@seed/api/cycle' -import { DataQualityService } from '@seed/api/data-quality' -import type { ImportFile, MappingResultsResponse } from '@seed/api/dataset' -import type { Organization } from '@seed/api/organization' +import type { Column, Cycle, ImportFile, MappingResultsResponse, Organization } from '@seed/api' +import { DataQualityService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import { UploaderService } from '@seed/services/uploader' import { ResultsModalComponent } from 'app/modules/data-quality' @@ -25,10 +19,7 @@ import type { InventoryType } from 'app/modules/inventory' imports: [ AgGridAngular, CommonModule, - MatButtonModule, - MatDividerModule, - MatIconModule, - MatProgressBarModule, + MaterialImports, ], }) export class SaveMappingsComponent implements OnChanges, OnDestroy { diff --git a/src/app/modules/datasets/data-mappings/step4/match-merge.component.ts b/src/app/modules/datasets/data-mappings/step4/match-merge.component.ts index 6f7c3fdc..6e15b20b 100644 --- a/src/app/modules/datasets/data-mappings/step4/match-merge.component.ts +++ b/src/app/modules/datasets/data-mappings/step4/match-merge.component.ts @@ -1,12 +1,12 @@ import { CommonModule } from '@angular/common' import type { OnDestroy } from '@angular/core' import { Component, EventEmitter, inject, Input, Output } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' import { RouterModule } from '@angular/router' import { of, Subject, switchMap, takeUntil } from 'rxjs' -import { MappingService } from '@seed/api/mapping' -import type { ProgressResponse, SubProgressResponse } from '@seed/api/progress' +import type { ProgressResponse, SubProgressResponse } from '@seed/api' +import { MappingService } from '@seed/api' import { ProgressBarComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import type { CheckProgressLoopParams } from '@seed/services/uploader' import { UploaderService } from '@seed/services/uploader' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' @@ -18,7 +18,7 @@ import { ResultsComponent } from './results.component' templateUrl: './match-merge.component.html', imports: [ CommonModule, - MatButtonModule, + MaterialImports, ProgressBarComponent, RouterModule, ResultsComponent, diff --git a/src/app/modules/datasets/data-mappings/step4/results.component.ts b/src/app/modules/datasets/data-mappings/step4/results.component.ts index 2b723f88..baf57d9b 100644 --- a/src/app/modules/datasets/data-mappings/step4/results.component.ts +++ b/src/app/modules/datasets/data-mappings/step4/results.component.ts @@ -1,18 +1,14 @@ import { CommonModule } from '@angular/common' import type { OnChanges, OnDestroy, SimpleChanges } from '@angular/core' import { Component, inject, Input } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' import { MatDialog } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatProgressBarModule } from '@angular/material/progress-bar' import { RouterModule } from '@angular/router' import { AgGridAngular } from 'ag-grid-angular' import type { ColDef } from 'ag-grid-community' import { Subject, take, takeUntil, tap } from 'rxjs' -import { DatasetService } from '@seed/api/dataset' -import type { MatchingResultsResponse } from '@seed/api/mapping' -import { MappingService } from '@seed/api/mapping' +import type { MatchingResultsResponse } from '@seed/api' +import { DatasetService, MappingService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import { UploaderService } from '@seed/services/uploader' import type { InventoryType } from 'app/modules/inventory' @@ -24,10 +20,7 @@ import { MeterDataUploadModalComponent } from '../../data-upload/meter-upload-mo imports: [ AgGridAngular, CommonModule, - MatButtonModule, - MatIconModule, - MatDividerModule, - MatProgressBarModule, + MaterialImports, RouterModule, ], }) diff --git a/src/app/modules/datasets/data-upload/data-upload-modal.component.ts b/src/app/modules/datasets/data-upload/data-upload-modal.component.ts index f174a23e..643e8255 100644 --- a/src/app/modules/datasets/data-upload/data-upload-modal.component.ts +++ b/src/app/modules/datasets/data-upload/data-upload-modal.component.ts @@ -3,24 +3,14 @@ import type { HttpErrorResponse } from '@angular/common/http' import type { AfterViewInit, ElementRef, OnDestroy } from '@angular/core' import { Component, inject, ViewChild } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatCheckboxModule } from '@angular/material/checkbox' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatProgressBarModule } from '@angular/material/progress-bar' -import { MatSelectModule } from '@angular/material/select' -import { type MatStepper, MatStepperModule } from '@angular/material/stepper' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' +import { type MatStepper } from '@angular/material/stepper' import { Router, RouterModule } from '@angular/router' import { catchError, Subject, switchMap, takeUntil, tap } from 'rxjs' -import type { Cycle } from '@seed/api/cycle' -import type { Dataset } from '@seed/api/dataset' -import type { OrganizationUserSettings } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' -import { UserService } from '@seed/api/user' +import type { Cycle, Dataset, OrganizationUserSettings } from '@seed/api' +import { OrganizationService, UserService } from '@seed/api' import { ModalHeaderComponent, ProgressBarComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ErrorService } from '@seed/services' import type { ProgressBarObj } from '@seed/services/uploader' import { UploaderService } from '@seed/services/uploader' @@ -31,16 +21,7 @@ import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' templateUrl: './data-upload-modal.component.html', imports: [ CommonModule, - MatButtonModule, - MatCheckboxModule, - MatDialogModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatProgressBarModule, - MatSelectModule, - MatStepperModule, + MaterialImports, ModalHeaderComponent, ProgressBarComponent, ReactiveFormsModule, diff --git a/src/app/modules/datasets/data-upload/meter-upload-modal.component.ts b/src/app/modules/datasets/data-upload/meter-upload-modal.component.ts index 6788c46d..e1dabc8e 100644 --- a/src/app/modules/datasets/data-upload/meter-upload-modal.component.ts +++ b/src/app/modules/datasets/data-upload/meter-upload-modal.component.ts @@ -1,18 +1,14 @@ import { CommonModule } from '@angular/common' import type { AfterViewInit, OnDestroy } from '@angular/core' import { Component, inject, ViewChild } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatProgressBarModule } from '@angular/material/progress-bar' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import type { MatStepper } from '@angular/material/stepper' -import { MatStepperModule } from '@angular/material/stepper' import { AgGridAngular } from 'ag-grid-angular' import type { ColDef } from 'ag-grid-community' import { catchError, EMPTY, Subject, switchMap, take, takeUntil, tap } from 'rxjs' -import { DatasetService } from '@seed/api/dataset' +import { DatasetService } from '@seed/api' import { ModalHeaderComponent, ProgressBarComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import { UploaderService } from '@seed/services/uploader/uploader.service' import type { MeterImport, ProgressBarObj, ValidatedTypeUnit } from '@seed/services/uploader/uploader.types' @@ -25,13 +21,8 @@ import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' imports: [ AgGridAngular, CommonModule, - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatIconModule, - MatProgressBarModule, + MaterialImports, ModalHeaderComponent, - MatStepperModule, ProgressBarComponent, ], }) diff --git a/src/app/modules/datasets/dataset/dataset.component.ts b/src/app/modules/datasets/dataset/dataset.component.ts index 2f2373ef..711cc667 100644 --- a/src/app/modules/datasets/dataset/dataset.component.ts +++ b/src/app/modules/datasets/dataset/dataset.component.ts @@ -7,11 +7,8 @@ import { AgGridAngular } from 'ag-grid-angular' import type { CellClickedEvent, ColDef, GridApi, GridReadyEvent } from 'ag-grid-community' import type { Observable } from 'rxjs' import { filter, of, Subject, switchMap, tap } from 'rxjs' -import type { Cycle } from '@seed/api/cycle' -import { CycleService } from '@seed/api/cycle/cycle.service' -import type { Dataset, ImportFile } from '@seed/api/dataset' -import { DatasetService } from '@seed/api/dataset' -import { UserService } from '@seed/api/user' +import type { Cycle, Dataset, ImportFile } from '@seed/api' +import { CycleService, DatasetService, UserService } from '@seed/api' import { DeleteModalComponent, PageComponent } from '@seed/components' import { ConfigService } from '@seed/services' import { naturalSort } from '@seed/utils' diff --git a/src/app/modules/datasets/datasets.component.ts b/src/app/modules/datasets/datasets.component.ts index 292eebeb..01beafa5 100644 --- a/src/app/modules/datasets/datasets.component.ts +++ b/src/app/modules/datasets/datasets.component.ts @@ -1,18 +1,15 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject, ViewEncapsulation } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' import { MatDialog } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' import { ActivatedRoute, Router } from '@angular/router' import { AgGridAngular } from 'ag-grid-angular' import type { CellClickedEvent, ColDef, GridApi, GridReadyEvent } from 'ag-grid-community' import { combineLatest, filter, Subject, switchMap, takeUntil, tap } from 'rxjs' -import type { Cycle } from '@seed/api/cycle' -import { CycleService } from '@seed/api/cycle/cycle.service' -import { type Dataset, DatasetService } from '@seed/api/dataset' -import { UserService } from '@seed/api/user' +import type { Cycle, Dataset } from '@seed/api' +import { CycleService, DatasetService, UserService } from '@seed/api' import { DeleteModalComponent, PageComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import { naturalSort } from '@seed/utils' import { DataUploadModalComponent } from './data-upload/data-upload-modal.component' @@ -26,8 +23,7 @@ import { FormModalComponent } from './modal/form-modal.component' imports: [ AgGridAngular, CommonModule, - MatButtonModule, - MatIconModule, + MaterialImports, PageComponent, ], }) diff --git a/src/app/modules/datasets/datasets.routes.ts b/src/app/modules/datasets/datasets.routes.ts index 408068e7..d47e35c7 100644 --- a/src/app/modules/datasets/datasets.routes.ts +++ b/src/app/modules/datasets/datasets.routes.ts @@ -1,8 +1,7 @@ import { inject } from '@angular/core' import type { Routes } from '@angular/router' import { switchMap, take, tap } from 'rxjs' -import { DatasetService } from '@seed/api/dataset' -import { UserService } from '@seed/api/user' +import { DatasetService, UserService } from '@seed/api' import { DataMappingComponent } from './data-mappings' import { DatasetComponent } from './dataset/dataset.component' import { DatasetsComponent } from './datasets.component' diff --git a/src/app/modules/datasets/modal/form-modal.component.ts b/src/app/modules/datasets/modal/form-modal.component.ts index ec4be62f..5da5a452 100644 --- a/src/app/modules/datasets/modal/form-modal.component.ts +++ b/src/app/modules/datasets/modal/form-modal.component.ts @@ -2,15 +2,11 @@ import { CommonModule } from '@angular/common' import type { OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import type { Dataset } from '@seed/api/dataset' -import { DatasetService } from '@seed/api/dataset' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' +import type { Dataset } from '@seed/api' +import { DatasetService } from '@seed/api' import { ModalHeaderComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { SEEDValidators } from '@seed/validators' @Component({ @@ -18,12 +14,7 @@ import { SEEDValidators } from '@seed/validators' templateUrl: './form-modal.component.html', imports: [ CommonModule, - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, + MaterialImports, ModalHeaderComponent, ReactiveFormsModule, ], diff --git a/src/app/modules/inventory-detail/analyses/analyses.component.ts b/src/app/modules/inventory-detail/analyses/analyses.component.ts index f3a666eb..2f8c9547 100644 --- a/src/app/modules/inventory-detail/analyses/analyses.component.ts +++ b/src/app/modules/inventory-detail/analyses/analyses.component.ts @@ -1,21 +1,15 @@ import { CommonModule } from '@angular/common' import type { OnInit } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatIconModule } from '@angular/material/icon' import { ActivatedRoute } from '@angular/router' import { AgGridAngular } from 'ag-grid-angular' import type { Observable } from 'rxjs' import { Subject, switchMap, takeUntil, tap } from 'rxjs' -import type { Analysis } from '@seed/api/analysis' -import { AnalysisService } from '@seed/api/analysis' -import type { Cycle } from '@seed/api/cycle' -import { CycleService } from '@seed/api/cycle/cycle.service' -import { InventoryService } from '@seed/api/inventory' -import { OrganizationService } from '@seed/api/organization' -import { UserService } from '@seed/api/user' +import type { Analysis, Cycle } from '@seed/api' +import { AnalysisService, CycleService, InventoryService, OrganizationService, UserService } from '@seed/api' import { AnalysesGridComponent, NotFoundComponent, PageComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import type { InventoryType, ViewResponse } from 'app/modules/inventory/inventory.types' @Component({ @@ -25,8 +19,7 @@ import type { InventoryType, ViewResponse } from 'app/modules/inventory/inventor AnalysesGridComponent, AgGridAngular, CommonModule, - MatButtonModule, - MatIconModule, + MaterialImports, NotFoundComponent, PageComponent, SharedImports, diff --git a/src/app/modules/inventory-detail/column-detail-profiles/column-detail-profiles.component.ts b/src/app/modules/inventory-detail/column-detail-profiles/column-detail-profiles.component.ts index 3f261904..bae26fa9 100644 --- a/src/app/modules/inventory-detail/column-detail-profiles/column-detail-profiles.component.ts +++ b/src/app/modules/inventory-detail/column-detail-profiles/column-detail-profiles.component.ts @@ -3,7 +3,7 @@ import type { OnInit } from '@angular/core' import { Component, inject, ViewChild } from '@angular/core' import { ActivatedRoute } from '@angular/router' import { type Observable, tap } from 'rxjs' -import { OrganizationService } from '@seed/api/organization' +import { OrganizationService } from '@seed/api' import { PageComponent } from '@seed/components' import { ColumnProfilesComponent } from '@seed/components/column-profiles/column-profiles.component' import type { InventoryDisplayType, InventoryType } from 'app/modules/inventory/inventory.types' diff --git a/src/app/modules/inventory-detail/cross-cycles/cross-cycles.component.ts b/src/app/modules/inventory-detail/cross-cycles/cross-cycles.component.ts index 11d5b173..c076bf6a 100644 --- a/src/app/modules/inventory-detail/cross-cycles/cross-cycles.component.ts +++ b/src/app/modules/inventory-detail/cross-cycles/cross-cycles.component.ts @@ -1,19 +1,19 @@ import { CommonModule } from '@angular/common' import type { OnInit } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' import { ActivatedRoute } from '@angular/router' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { ColDef, GridApi } from 'ag-grid-community' import type { Observable } from 'rxjs' import { tap } from 'rxjs' -import { OrganizationService } from '@seed/api/organization' +import { OrganizationService } from '@seed/api' import { NotFoundComponent, PageComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-inventory-detail-cross-cycles', templateUrl: './cross-cycles.component.html', - imports: [AgGridAngular, AgGridModule, CommonModule, MatIconModule, NotFoundComponent, PageComponent], + imports: [AgGridAngular, CommonModule, MaterialImports, NotFoundComponent, PageComponent], }) export class CrossCyclesComponent implements OnInit { private _organizationService = inject(OrganizationService) diff --git a/src/app/modules/inventory-detail/detail-layout.component.ts b/src/app/modules/inventory-detail/detail-layout.component.ts index c52fba37..008cac06 100644 --- a/src/app/modules/inventory-detail/detail-layout.component.ts +++ b/src/app/modules/inventory-detail/detail-layout.component.ts @@ -1,22 +1,19 @@ import type { AfterViewInit, OnInit } from '@angular/core' import { Component, inject, ViewChild } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' import type { MatDrawer } from '@angular/material/sidenav' -import { MatSidenavModule } from '@angular/material/sidenav' import { ActivatedRoute, RouterOutlet } from '@angular/router' import { filter, forkJoin, switchMap, tap } from 'rxjs' -import { InventoryService } from '@seed/api/inventory' -import { UbidService } from '@seed/api/ubid/ubid.service' -import { UserService } from '@seed/api/user' +import { InventoryService, UbidService, UserService } from '@seed/api' import type { NavigationItem } from '@seed/components' import { DrawerService, VerticalNavigationComponent } from '@seed/components' import { ScrollResetDirective } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import type { InventoryType } from '../inventory/inventory.types' @Component({ selector: 'seed-inventory-detail-layout', templateUrl: './detail-layout.component.html', - imports: [MatIconModule, MatSidenavModule, RouterOutlet, ScrollResetDirective, VerticalNavigationComponent], + imports: [MaterialImports, RouterOutlet, ScrollResetDirective, VerticalNavigationComponent], }) export class DetailLayoutComponent implements AfterViewInit, OnInit { @ViewChild('drawer') drawer!: MatDrawer diff --git a/src/app/modules/inventory-detail/detail/detail.component.ts b/src/app/modules/inventory-detail/detail/detail.component.ts index 16a98422..bd98ec5f 100644 --- a/src/app/modules/inventory-detail/detail/detail.component.ts +++ b/src/app/modules/inventory-detail/detail/detail.component.ts @@ -1,23 +1,14 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' import { ActivatedRoute, Router } from '@angular/router' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' import type { Observable } from 'rxjs' import { forkJoin, Subject, switchMap, take, takeUntil, tap } from 'rxjs' -import type { Column } from '@seed/api/column' -import { ColumnService } from '@seed/api/column' -import { InventoryService } from '@seed/api/inventory' -import type { Label } from '@seed/api/label' -import { LabelService } from '@seed/api/label' -import type { Organization, OrganizationUserSettings } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' -import type { CurrentUser } from '@seed/api/user' -import { UserService } from '@seed/api/user' +import type { Column, CurrentUser, Label, Organization, OrganizationUserSettings } from '@seed/api' +import { ColumnService, InventoryService, LabelService, OrganizationService, UserService } from '@seed/api' import { PageComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import type { GenericView, InventoryType, Profile, ViewResponse } from 'app/modules/inventory/inventory.types' import { @@ -33,15 +24,12 @@ import { selector: 'seed-inventory-detail', templateUrl: './detail.component.html', imports: [ - AgGridAngular, - AgGridModule, BuildingFilesGridComponent, CommonModule, DocumentsGridComponent, HeaderComponent, HistoryGridComponent, - MatDividerModule, - MatIconModule, + MaterialImports, PageComponent, PairedGridComponent, ScenariosGridComponent, diff --git a/src/app/modules/inventory-detail/detail/grid/building-files-grid.component.ts b/src/app/modules/inventory-detail/detail/grid/building-files-grid.component.ts index 642e1575..8ace9052 100644 --- a/src/app/modules/inventory-detail/detail/grid/building-files-grid.component.ts +++ b/src/app/modules/inventory-detail/detail/grid/building-files-grid.component.ts @@ -1,16 +1,16 @@ import { CommonModule } from '@angular/common' import type { OnInit } from '@angular/core' import { Component, inject, Input } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { CellClickedEvent, ColDef, GridApi, GridReadyEvent } from 'ag-grid-community' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import type { InventoryType, ViewResponse } from 'app/modules/inventory/inventory.types' @Component({ selector: 'seed-inventory-detail-building-files-grid', templateUrl: './building-files-grid.component.html', - imports: [AgGridAngular, AgGridModule, CommonModule, MatIconModule], + imports: [AgGridAngular, CommonModule, MaterialImports], }) export class BuildingFilesGridComponent implements OnInit { @Input() view: ViewResponse diff --git a/src/app/modules/inventory-detail/detail/grid/documents-grid.component.ts b/src/app/modules/inventory-detail/detail/grid/documents-grid.component.ts index a5eb6699..72078d21 100644 --- a/src/app/modules/inventory-detail/detail/grid/documents-grid.component.ts +++ b/src/app/modules/inventory-detail/detail/grid/documents-grid.component.ts @@ -1,14 +1,13 @@ import { CommonModule } from '@angular/common' import type { OnChanges, OnDestroy, SimpleChanges } from '@angular/core' import { Component, EventEmitter, inject, Input, Output } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' import { MatDialog } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { CellClickedEvent, ColDef, GridApi, GridReadyEvent } from 'ag-grid-community' import { Subject, takeUntil, tap } from 'rxjs' -import { InventoryService } from '@seed/api/inventory' -import type { Organization } from '@seed/api/organization' +import type { Organization } from '@seed/api' +import { InventoryService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import type { InventoryDocument, InventoryType, ViewResponse } from 'app/modules/inventory/inventory.types' import { DocumentUploadModalComponent } from '../modal/document-upload.component' @@ -16,7 +15,7 @@ import { DocumentUploadModalComponent } from '../modal/document-upload.component @Component({ selector: 'seed-inventory-detail-documents-grid', templateUrl: './documents-grid.component.html', - imports: [AgGridAngular, AgGridModule, CommonModule, DocumentUploadModalComponent, MatButtonModule, MatIconModule], + imports: [AgGridAngular, CommonModule, DocumentUploadModalComponent, MaterialImports], }) export class DocumentsGridComponent implements OnChanges, OnDestroy { @Input() org: Organization diff --git a/src/app/modules/inventory-detail/detail/grid/history-grid.component.ts b/src/app/modules/inventory-detail/detail/grid/history-grid.component.ts index bc48fd32..c0f786f8 100644 --- a/src/app/modules/inventory-detail/detail/grid/history-grid.component.ts +++ b/src/app/modules/inventory-detail/detail/grid/history-grid.component.ts @@ -1,20 +1,15 @@ import { CommonModule } from '@angular/common' import type { OnChanges, OnDestroy, SimpleChanges } from '@angular/core' import { Component, EventEmitter, inject, Input, Output } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatDialog, MatDialogModule } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatProgressBar } from '@angular/material/progress-bar' +import { MatDialog } from '@angular/material/dialog' import { Router } from '@angular/router' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { ColDef, FirstDataRenderedEvent, GridApi, GridReadyEvent } from 'ag-grid-community' import { AllCommunityModule, ModuleRegistry } from 'ag-grid-community' import { finalize, Subject, tap } from 'rxjs' -import type { Column, GenericColumn } from '@seed/api/column' -import { InventoryService } from '@seed/api/inventory' -import type { OrganizationUserSettings } from '@seed/api/organization' -import type { CurrentUser } from '@seed/api/user' +import type { Column, CurrentUser, GenericColumn, OrganizationUserSettings } from '@seed/api' +import { InventoryService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import { naturalSort } from '@seed/utils' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' @@ -27,7 +22,7 @@ type CellRendererParams = { value: string; data: { derived_column: number; is_ex @Component({ selector: 'seed-inventory-detail-history', templateUrl: './history-grid.component.html', - imports: [AgGridAngular, AgGridModule, CommonModule, MatButtonModule, MatDialogModule, MatIconModule, MatDividerModule, MatProgressBar], + imports: [AgGridAngular, CommonModule, MaterialImports], }) export class HistoryGridComponent implements OnChanges, OnDestroy { @Input() columns: Column[] diff --git a/src/app/modules/inventory-detail/detail/grid/paired-grid.component.ts b/src/app/modules/inventory-detail/detail/grid/paired-grid.component.ts index 1f8a7bd8..bbfa64ed 100644 --- a/src/app/modules/inventory-detail/detail/grid/paired-grid.component.ts +++ b/src/app/modules/inventory-detail/detail/grid/paired-grid.component.ts @@ -1,22 +1,20 @@ import { CommonModule } from '@angular/common' import type { OnChanges, OnDestroy, SimpleChanges } from '@angular/core' import { Component, EventEmitter, inject, Input, Output } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { CellClickedEvent, ColDef, FirstDataRenderedEvent, GridApi, GridReadyEvent } from 'ag-grid-community' import type { Observable } from 'rxjs' import { of, Subject, takeUntil, tap } from 'rxjs' -import type { Column } from '@seed/api/column' -import { ColumnService } from '@seed/api/column' -import type { Organization } from '@seed/api/organization' -import { PairingService } from '@seed/api/pairing' +import type { Column, Organization } from '@seed/api' +import { ColumnService, PairingService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import type { GenericRelatedInventory, InventoryType, ViewResponse } from 'app/modules/inventory/inventory.types' @Component({ selector: 'seed-inventory-detail-paired-grid', templateUrl: './paired-grid.component.html', - imports: [AgGridAngular, AgGridModule, CommonModule, MatIconModule], + imports: [AgGridAngular, CommonModule, MaterialImports], }) export class PairedGridComponent implements OnChanges, OnDestroy { @Input() org: Organization diff --git a/src/app/modules/inventory-detail/detail/grid/scenarios-grid.component.ts b/src/app/modules/inventory-detail/detail/grid/scenarios-grid.component.ts index 9e2b939a..73516470 100644 --- a/src/app/modules/inventory-detail/detail/grid/scenarios-grid.component.ts +++ b/src/app/modules/inventory-detail/detail/grid/scenarios-grid.component.ts @@ -1,11 +1,11 @@ import { CommonModule } from '@angular/common' import type { OnChanges, SimpleChanges } from '@angular/core' import { Component, EventEmitter, inject, Input, Output } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { CellClickedEvent, ColDef, GridApi, GridReadyEvent } from 'ag-grid-community' -import type { Scenario } from '@seed/api/scenario' -import { ScenarioService } from '@seed/api/scenario/scenario.service' +import type { Scenario } from '@seed/api' +import { ScenarioService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import type { ViewResponse } from 'app/modules/inventory/inventory.types' @@ -14,7 +14,7 @@ type FieldType = 'annual_electricity_savings' | 'annual_peak_electricity_reducti @Component({ selector: 'seed-inventory-detail-scenarios-grid', templateUrl: './scenarios-grid.component.html', - imports: [CommonModule, AgGridAngular, AgGridModule, MatIconModule], + imports: [CommonModule, AgGridAngular, MaterialImports], }) export class ScenariosGridComponent implements OnChanges { @Input() orgId: number diff --git a/src/app/modules/inventory-detail/detail/header.component.ts b/src/app/modules/inventory-detail/detail/header.component.ts index 54ca06e6..ff0205ad 100644 --- a/src/app/modules/inventory-detail/detail/header.component.ts +++ b/src/app/modules/inventory-detail/detail/header.component.ts @@ -1,17 +1,13 @@ import { CommonModule } from '@angular/common' import type { OnInit } from '@angular/core' import { Component, EventEmitter, inject, Input, Output } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' import { MatDialog } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { type MatSelect, MatSelectModule } from '@angular/material/select' -import { MatTableModule } from '@angular/material/table' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { type MatSelect } from '@angular/material/select' +import { AgGridAngular } from 'ag-grid-angular' import type { ColDef, GridApi, GridReadyEvent } from 'ag-grid-community' -import type { Label } from '@seed/api/label' -import type { AccessLevelInstance, Organization } from '@seed/api/organization' +import type { AccessLevelInstance, Label, Organization } from '@seed/api' import { LabelComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import type { GenericView, GroupMapping, Profile, ViewResponse } from 'app/modules/inventory/inventory.types' import { ModalComponent } from '../../column-list-profile/modal/modal.component' @@ -22,15 +18,10 @@ import { MapComponent } from './map.component' templateUrl: './header.component.html', imports: [ AgGridAngular, - AgGridModule, CommonModule, LabelComponent, MapComponent, - MatButtonModule, - MatDividerModule, - MatIconModule, - MatTableModule, - MatSelectModule, + MaterialImports, ModalComponent, ], }) diff --git a/src/app/modules/inventory-detail/detail/map.component.ts b/src/app/modules/inventory-detail/detail/map.component.ts index f31e7a18..b757ac72 100644 --- a/src/app/modules/inventory-detail/detail/map.component.ts +++ b/src/app/modules/inventory-detail/detail/map.component.ts @@ -1,9 +1,6 @@ import { CommonModule } from '@angular/common' import type { AfterViewInit } from '@angular/core' import { Component, Input } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatIconModule } from '@angular/material/icon' -import { MatTooltipModule } from '@angular/material/tooltip' import { defaults as defaultControls } from 'ol/control' import WKT from 'ol/format/WKT' import TileLayer from 'ol/layer/Tile' @@ -16,12 +13,13 @@ import VectorSource from 'ol/source/Vector' import Stroke from 'ol/style/Stroke' import Style from 'ol/style/Style' import View from 'ol/View' +import { MaterialImports } from '@seed/materials' import type { InventoryType, State } from 'app/modules/inventory/inventory.types' @Component({ selector: 'seed-inventory-detail-map', templateUrl: './map.component.html', - imports: [CommonModule, MatButtonModule, MatIconModule, MatTooltipModule], + imports: [CommonModule, MaterialImports], }) export class MapComponent implements AfterViewInit { @Input() state: State diff --git a/src/app/modules/inventory-detail/detail/modal/document-upload.component.ts b/src/app/modules/inventory-detail/detail/modal/document-upload.component.ts index 4c400cd8..e1ccd826 100644 --- a/src/app/modules/inventory-detail/detail/modal/document-upload.component.ts +++ b/src/app/modules/inventory-detail/detail/modal/document-upload.component.ts @@ -1,15 +1,13 @@ import { Component, inject } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { InventoryService } from '@seed/api/inventory' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' +import { InventoryService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import type { PropertyDocumentExtension, PropertyDocumentType } from 'app/modules/inventory/inventory.types' @Component({ selector: 'seed-detail-document-upload', templateUrl: './document-upload.component.html', - imports: [MatButtonModule, MatDialogModule, MatDividerModule, MatIconModule], + imports: [MaterialImports], }) export class DocumentUploadModalComponent { private _dialogRef = inject(MatDialogRef) diff --git a/src/app/modules/inventory-detail/detail/modal/edit-state.component.ts b/src/app/modules/inventory-detail/detail/modal/edit-state.component.ts index 0494db72..08e7c76a 100644 --- a/src/app/modules/inventory-detail/detail/modal/edit-state.component.ts +++ b/src/app/modules/inventory-detail/detail/modal/edit-state.component.ts @@ -3,14 +3,9 @@ import type { OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import type { FormGroup } from '@angular/forms' import { FormBuilder, FormControl, ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatTableModule } from '@angular/material/table' -import type { Column } from '@seed/api/column' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' +import type { Column } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { naturalSort } from '@seed/utils' import type { InventoryType, ViewResponse } from 'app/modules/inventory/inventory.types' @@ -19,13 +14,7 @@ import type { InventoryType, ViewResponse } from 'app/modules/inventory/inventor templateUrl: './edit-state.component.html', imports: [ CommonModule, - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatTableModule, + MaterialImports, ReactiveFormsModule, ], }) diff --git a/src/app/modules/inventory-detail/meters/meters.component.ts b/src/app/modules/inventory-detail/meters/meters.component.ts index 7cf30c0d..7ca96cb5 100644 --- a/src/app/modules/inventory-detail/meters/meters.component.ts +++ b/src/app/modules/inventory-detail/meters/meters.component.ts @@ -1,26 +1,15 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' import { MatDialog } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatSelectModule } from '@angular/material/select' import { ActivatedRoute } from '@angular/router' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { CellClickedEvent, ColDef, GridApi, GridOptions, GridReadyEvent } from 'ag-grid-community' import { filter, type Observable, Subject, switchMap, takeUntil, tap } from 'rxjs' -import type { Cycle } from '@seed/api/cycle' -import { CycleService } from '@seed/api/cycle/cycle.service' -import type { Dataset } from '@seed/api/dataset' -import { DatasetService } from '@seed/api/dataset' -import type { GroupService } from '@seed/api/groups' -import { GroupsService } from '@seed/api/groups' -import type { Meter, MeterUsage } from '@seed/api/meters' -import { MeterService } from '@seed/api/meters' -import { OrganizationService } from '@seed/api/organization' -import { UserService } from '@seed/api/user' +import type { Cycle, Dataset, GroupService, Meter, MeterUsage } from '@seed/api' +import { CycleService, DatasetService, GroupsService, MeterService, OrganizationService, UserService } from '@seed/api' import { DeleteModalComponent, NotFoundComponent, PageComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import type { ViewResponse } from 'app/modules/inventory/inventory.types' import { FormModalComponent } from './modal/form-modal.component' @@ -31,12 +20,8 @@ import { GreenButtonUploadModalComponent } from './modal/green-button-upload-mod templateUrl: './meters.component.html', imports: [ AgGridAngular, - AgGridModule, CommonModule, - MatButtonModule, - MatIconModule, - MatSelectModule, - MatDividerModule, + MaterialImports, NotFoundComponent, PageComponent, ], diff --git a/src/app/modules/inventory-detail/meters/modal/form-modal.component.ts b/src/app/modules/inventory-detail/meters/modal/form-modal.component.ts index b50ab56b..25b9aac6 100644 --- a/src/app/modules/inventory-detail/meters/modal/form-modal.component.ts +++ b/src/app/modules/inventory-detail/meters/modal/form-modal.component.ts @@ -1,21 +1,11 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatOptionModule } from '@angular/material/core' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatSelectModule } from '@angular/material/select' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { Subject, takeUntil, tap } from 'rxjs' -import type { GroupService, GroupSystem, InventoryGroup } from '@seed/api/groups' -import { GroupsService } from '@seed/api/groups' -import type { Meter, MeterConfig } from '@seed/api/meters' -import { MeterService } from '@seed/api/meters' -import { OrganizationService } from '@seed/api/organization' -import { UserService } from '@seed/api/user' +import type { GroupService, GroupSystem, InventoryGroup, Meter, MeterConfig } from '@seed/api' +import { GroupsService, MeterService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' @Component({ @@ -23,23 +13,14 @@ import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' templateUrl: './form-modal.component.html', imports: [ FormsModule, - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatFormFieldModule, - MatInputModule, - MatIconModule, - MatOptionModule, - MatSelectModule, + MaterialImports, ReactiveFormsModule, ], }) export class FormModalComponent implements OnDestroy, OnInit { private _dialogRef = inject(MatDialogRef) - private _organizationService = inject(OrganizationService) private _groupsService = inject(GroupsService) private _meterService = inject(MeterService) - private _userService = inject(UserService) private _snackBar = inject(SnackBarService) private readonly _unsubscribeAll$ = new Subject() data = inject(MAT_DIALOG_DATA) as { meter: Meter; orgId: number; groupId: number | null; viewId: number | null } diff --git a/src/app/modules/inventory-detail/meters/modal/green-button-upload-modal.component.ts b/src/app/modules/inventory-detail/meters/modal/green-button-upload-modal.component.ts index 0f70b744..886d8336 100644 --- a/src/app/modules/inventory-detail/meters/modal/green-button-upload-modal.component.ts +++ b/src/app/modules/inventory-detail/meters/modal/green-button-upload-modal.component.ts @@ -2,22 +2,15 @@ import { CommonModule } from '@angular/common' import type { OnDestroy } from '@angular/core' import { Component, inject, ViewChild } from '@angular/core' import { FormsModule, ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatProgressBarModule } from '@angular/material/progress-bar' -import { MatSelectModule } from '@angular/material/select' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import type { MatStepper } from '@angular/material/stepper' -import { MatStepperModule } from '@angular/material/stepper' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { ColDef } from 'ag-grid-community' import { Subject, switchMap, takeUntil, tap } from 'rxjs' -import { InventoryService } from '@seed/api/inventory' -import { MeterService } from '@seed/api/meters' -import type { ProgressResponse } from '@seed/api/progress' +import type { ProgressResponse } from '@seed/api' +import { MeterService } from '@seed/api' import { ProgressBarComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import type { MeterImport, ProgressBarObj, ValidatedTypeUnit } from '@seed/services/uploader' import { UploaderService } from '@seed/services/uploader' @@ -28,17 +21,9 @@ import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' templateUrl: './green-button-upload-modal.component.html', imports: [ AgGridAngular, - AgGridModule, CommonModule, FormsModule, - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatIconModule, - MatInputModule, - MatProgressBarModule, - MatSelectModule, - MatStepperModule, + MaterialImports, ProgressBarComponent, ReactiveFormsModule, ], @@ -47,7 +32,6 @@ export class GreenButtonUploadModalComponent implements OnDestroy { @ViewChild('stepper') stepper!: MatStepper private _dialogRef = inject(MatDialogRef) private _configService = inject(ConfigService) - private _inventoryService = inject(InventoryService) private _meterService = inject(MeterService) private _snackBar = inject(SnackBarService) private _uploaderService = inject(UploaderService) diff --git a/src/app/modules/inventory-detail/notes/modal/form-modal.component.ts b/src/app/modules/inventory-detail/notes/modal/form-modal.component.ts index 9b5b686d..434934da 100644 --- a/src/app/modules/inventory-detail/notes/modal/form-modal.component.ts +++ b/src/app/modules/inventory-detail/notes/modal/form-modal.component.ts @@ -1,20 +1,17 @@ import type { OnDestroy } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { Subject, takeUntil, tap } from 'rxjs' -import { NoteService } from '@seed/api/notes' -import type { Note, NoteData } from '@seed/api/notes/notes.types' +import type { Note, NoteData } from '@seed/api' +import { NoteService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import type { InventoryType } from 'app/modules/inventory/inventory.types' @Component({ selector: 'seed-inventory-notes-form-modal', templateUrl: './form-modal.component.html', - imports: [FormsModule, MatButtonModule, MatDialogModule, MatDividerModule, MatIconModule, MatInputModule, ReactiveFormsModule], + imports: [FormsModule, MaterialImports, ReactiveFormsModule], }) export class FormModalComponent implements OnDestroy { private _noteService = inject(NoteService) diff --git a/src/app/modules/inventory-detail/notes/notes.component.ts b/src/app/modules/inventory-detail/notes/notes.component.ts index 649e47ee..569d75c6 100644 --- a/src/app/modules/inventory-detail/notes/notes.component.ts +++ b/src/app/modules/inventory-detail/notes/notes.component.ts @@ -2,18 +2,15 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { MatDialog } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' import { ActivatedRoute } from '@angular/router' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { CellClickedEvent, ColDef, GridApi, GridReadyEvent } from 'ag-grid-community' import type { Observable } from 'rxjs' import { combineLatest, filter, Subject, switchMap, tap } from 'rxjs' -import { ColumnService } from '@seed/api/column' -import { NoteService } from '@seed/api/notes' -import type { Note } from '@seed/api/notes/notes.types' -import { OrganizationService } from '@seed/api/organization' -import { UserService } from '@seed/api/user' +import type { Note } from '@seed/api' +import { ColumnService, NoteService, OrganizationService, UserService } from '@seed/api' import { DeleteModalComponent, NotFoundComponent, PageComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import type { InventoryStateType, InventoryType } from 'app/modules/inventory/inventory.types' import { FormModalComponent } from './modal/form-modal.component' @@ -21,7 +18,7 @@ import { FormModalComponent } from './modal/form-modal.component' @Component({ selector: 'seed-inventory-detail-notes', templateUrl: './notes.component.html', - imports: [AgGridAngular, AgGridModule, CommonModule, MatIconModule, NotFoundComponent, PageComponent], + imports: [AgGridAngular, CommonModule, MaterialImports, NotFoundComponent, PageComponent], }) export class NotesComponent implements OnDestroy, OnInit { private _columnService = inject(ColumnService) diff --git a/src/app/modules/inventory-detail/sensors/data-loggers/data-loggers-grid.component.ts b/src/app/modules/inventory-detail/sensors/data-loggers/data-loggers-grid.component.ts index 678c8779..86238a57 100644 --- a/src/app/modules/inventory-detail/sensors/data-loggers/data-loggers-grid.component.ts +++ b/src/app/modules/inventory-detail/sensors/data-loggers/data-loggers-grid.component.ts @@ -2,13 +2,12 @@ import { CommonModule } from '@angular/common' import type { OnChanges, SimpleChanges } from '@angular/core' import { Component, EventEmitter, inject, Input, Output } from '@angular/core' import { MatDialog } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { CellClickedEvent, ColDef, GridApi, GridOptions, GridReadyEvent, Theme } from 'ag-grid-community' import { filter, type Observable, switchMap } from 'rxjs' -import { type DataLogger, SensorService } from '@seed/api/sensor' +import { type DataLogger, SensorService } from '@seed/api' import { DeleteModalComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { FormModalComponent } from './modal/form-modal.component' import { SensorReadingsUploadModalComponent } from './modal/sensor-readings-upload.component' import { SensorsUploadModalComponent } from './modal/sensors-upload.component' @@ -16,7 +15,7 @@ import { SensorsUploadModalComponent } from './modal/sensors-upload.component' @Component({ selector: 'seed-inventory-detail-sensors-data-loggers-grid', templateUrl: './data-loggers-grid.component.html', - imports: [AgGridAngular, AgGridModule, CommonModule, MatDividerModule, MatIconModule], + imports: [AgGridAngular, CommonModule, MaterialImports], }) export class DataLoggersGridComponent implements OnChanges { @Input() cycleId: number diff --git a/src/app/modules/inventory-detail/sensors/data-loggers/modal/form-modal.component.ts b/src/app/modules/inventory-detail/sensors/data-loggers/modal/form-modal.component.ts index 6bec1f04..12d43794 100644 --- a/src/app/modules/inventory-detail/sensors/data-loggers/modal/form-modal.component.ts +++ b/src/app/modules/inventory-detail/sensors/data-loggers/modal/form-modal.component.ts @@ -2,15 +2,11 @@ import { CommonModule } from '@angular/common' import type { OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { tap } from 'rxjs' -import type { DataLogger } from '@seed/api/sensor' -import { SensorService } from '@seed/api/sensor' +import type { DataLogger } from '@seed/api' +import { SensorService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { SEEDValidators } from '@seed/validators' @Component({ @@ -18,12 +14,7 @@ import { SEEDValidators } from '@seed/validators' templateUrl: './form-modal.component.html', imports: [ CommonModule, - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, + MaterialImports, ReactiveFormsModule, ], }) diff --git a/src/app/modules/inventory-detail/sensors/data-loggers/modal/sensor-readings-upload.component.ts b/src/app/modules/inventory-detail/sensors/data-loggers/modal/sensor-readings-upload.component.ts index b123ab4e..e128c201 100644 --- a/src/app/modules/inventory-detail/sensors/data-loggers/modal/sensor-readings-upload.component.ts +++ b/src/app/modules/inventory-detail/sensors/data-loggers/modal/sensor-readings-upload.component.ts @@ -1,19 +1,15 @@ import { CommonModule } from '@angular/common' import type { OnDestroy } from '@angular/core' import { Component, inject, ViewChild } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatProgressBarModule } from '@angular/material/progress-bar' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import type { MatStepper } from '@angular/material/stepper' -import { MatStepperModule } from '@angular/material/stepper' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { ColDef } from 'ag-grid-community' import { catchError, Subject, switchMap, takeUntil, tap } from 'rxjs' -import type { ProgressResponse } from '@seed/api/progress' -import { SensorService } from '@seed/api/sensor' +import type { ProgressResponse } from '@seed/api' +import { SensorService } from '@seed/api' import { ProgressBarComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import type { ProgressBarObj, SensorReadingPreview } from '@seed/services/uploader' import { UploaderService } from '@seed/services/uploader' @@ -24,14 +20,8 @@ import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' templateUrl: './sensor-readings-upload.component.html', imports: [ AgGridAngular, - AgGridModule, CommonModule, - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatIconModule, - MatStepperModule, - MatProgressBarModule, + MaterialImports, ProgressBarComponent, ], }) diff --git a/src/app/modules/inventory-detail/sensors/data-loggers/modal/sensors-upload.component.ts b/src/app/modules/inventory-detail/sensors/data-loggers/modal/sensors-upload.component.ts index 5ef3841f..be7a1347 100644 --- a/src/app/modules/inventory-detail/sensors/data-loggers/modal/sensors-upload.component.ts +++ b/src/app/modules/inventory-detail/sensors/data-loggers/modal/sensors-upload.component.ts @@ -1,20 +1,15 @@ import { CommonModule } from '@angular/common' import type { OnDestroy } from '@angular/core' import { Component, inject, ViewChild } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatProgressBarModule } from '@angular/material/progress-bar' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import type { MatStepper } from '@angular/material/stepper' -import { MatStepperModule } from '@angular/material/stepper' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { ColDef } from 'ag-grid-community' import { Subject, switchMap, takeUntil, tap } from 'rxjs' -import type { ProgressResponse } from '@seed/api/progress' -import type { Sensor } from '@seed/api/sensor' -import { SensorService } from '@seed/api/sensor' +import type { ProgressResponse, Sensor } from '@seed/api' +import { SensorService } from '@seed/api' import { ProgressBarComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import type { ProgressBarObj } from '@seed/services/uploader' import { UploaderService } from '@seed/services/uploader' @@ -25,14 +20,8 @@ import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' templateUrl: './sensors-upload.component.html', imports: [ AgGridAngular, - AgGridModule, CommonModule, - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatIconModule, - MatStepperModule, - MatProgressBarModule, + MaterialImports, ProgressBarComponent, ], }) diff --git a/src/app/modules/inventory-detail/sensors/sensor-readings/sensor-readings-grid.component.ts b/src/app/modules/inventory-detail/sensors/sensor-readings/sensor-readings-grid.component.ts index d2d50601..beedaccf 100644 --- a/src/app/modules/inventory-detail/sensors/sensor-readings/sensor-readings-grid.component.ts +++ b/src/app/modules/inventory-detail/sensors/sensor-readings/sensor-readings-grid.component.ts @@ -2,15 +2,12 @@ import { CommonModule } from '@angular/common' import type { OnChanges, SimpleChanges } from '@angular/core' import { Component, EventEmitter, inject, Input, Output } from '@angular/core' import { FormsModule } from '@angular/forms' -import { MatCheckboxModule } from '@angular/material/checkbox' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatSelectModule } from '@angular/material/select' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { CellClickedEvent, ColDef, GridApi, GridReadyEvent, Theme } from 'ag-grid-community' import type { Observable } from 'rxjs' -import type { ReadingInterval, SensorReading, SensorUsage } from '@seed/api/sensor' -import { SensorService } from '@seed/api/sensor' +import type { ReadingInterval, SensorReading, SensorUsage } from '@seed/api' +import { SensorService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import type { Pagination } from 'app/modules/inventory/inventory.types' import { InventoryGridControlsComponent } from 'app/modules/inventory-list' @@ -19,12 +16,8 @@ import { InventoryGridControlsComponent } from 'app/modules/inventory-list' templateUrl: './sensor-readings-grid.component.html', imports: [ AgGridAngular, - AgGridModule, CommonModule, - MatCheckboxModule, - MatDividerModule, - MatIconModule, - MatSelectModule, + MaterialImports, InventoryGridControlsComponent, FormsModule, ], diff --git a/src/app/modules/inventory-detail/sensors/sensors.component.ts b/src/app/modules/inventory-detail/sensors/sensors.component.ts index dc95c0d2..fab06bac 100644 --- a/src/app/modules/inventory-detail/sensors/sensors.component.ts +++ b/src/app/modules/inventory-detail/sensors/sensors.component.ts @@ -2,18 +2,14 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { MatDialog } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' import { ActivatedRoute } from '@angular/router' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { Observable } from 'rxjs' import { Subject, switchMap, takeUntil, tap } from 'rxjs' -import { CycleService } from '@seed/api/cycle/cycle.service' -import { DatasetService } from '@seed/api/dataset' -import { OrganizationService } from '@seed/api/organization' -import type { DataLogger, ReadingInterval, Sensor, SensorUsage, SensorUsageRequestConfig } from '@seed/api/sensor' -import { SensorService } from '@seed/api/sensor' -import { UserService } from '@seed/api/user' +import type { DataLogger, ReadingInterval, Sensor, SensorUsage, SensorUsageRequestConfig } from '@seed/api' +import { CycleService, DatasetService, OrganizationService, SensorService, UserService } from '@seed/api' import { NotFoundComponent, PageComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import { DataLoggersGridComponent } from './data-loggers/data-loggers-grid.component' import { FormModalComponent } from './data-loggers/modal/form-modal.component' @@ -25,10 +21,9 @@ import { SensorsGridComponent } from './sensors/sensors-grid.component' templateUrl: './sensors.component.html', imports: [ AgGridAngular, - AgGridModule, CommonModule, DataLoggersGridComponent, - MatIconModule, + MaterialImports, NotFoundComponent, PageComponent, SensorsGridComponent, diff --git a/src/app/modules/inventory-detail/sensors/sensors/modal/form-modal.component.ts b/src/app/modules/inventory-detail/sensors/sensors/modal/form-modal.component.ts index 2d0f36b6..7af218c6 100644 --- a/src/app/modules/inventory-detail/sensors/sensors/modal/form-modal.component.ts +++ b/src/app/modules/inventory-detail/sensors/sensors/modal/form-modal.component.ts @@ -2,14 +2,10 @@ import { CommonModule } from '@angular/common' import type { OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { tap } from 'rxjs' -import { type Sensor, SensorService } from '@seed/api/sensor' +import { type Sensor, SensorService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { SEEDValidators } from '@seed/validators' @Component({ @@ -17,12 +13,7 @@ import { SEEDValidators } from '@seed/validators' templateUrl: './form-modal.component.html', imports: [ CommonModule, - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, + MaterialImports, ReactiveFormsModule, ], }) diff --git a/src/app/modules/inventory-detail/sensors/sensors/sensors-grid.component.ts b/src/app/modules/inventory-detail/sensors/sensors/sensors-grid.component.ts index 62b5f6cc..87af4859 100644 --- a/src/app/modules/inventory-detail/sensors/sensors/sensors-grid.component.ts +++ b/src/app/modules/inventory-detail/sensors/sensors/sensors-grid.component.ts @@ -2,19 +2,18 @@ import { CommonModule } from '@angular/common' import type { OnChanges, SimpleChanges } from '@angular/core' import { Component, EventEmitter, inject, Input, Output } from '@angular/core' import { MatDialog } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { CellClickedEvent, ColDef, GridApi, GridOptions, GridReadyEvent, RowNode, Theme } from 'ag-grid-community' import { filter, type Observable, switchMap } from 'rxjs' -import { type Sensor, SensorService } from '@seed/api/sensor' +import { type Sensor, SensorService } from '@seed/api' import { DeleteModalComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { FormModalComponent } from './modal/form-modal.component' @Component({ selector: 'seed-inventory-detail-sensors-grid', templateUrl: './sensors-grid.component.html', - imports: [AgGridAngular, AgGridModule, CommonModule, MatDividerModule, MatIconModule], + imports: [AgGridAngular, CommonModule, MaterialImports], }) export class SensorsGridComponent implements OnChanges { @Input() sensors: Sensor[] diff --git a/src/app/modules/inventory-detail/timeline/timeline.component.ts b/src/app/modules/inventory-detail/timeline/timeline.component.ts index 0991cfbd..74717107 100644 --- a/src/app/modules/inventory-detail/timeline/timeline.component.ts +++ b/src/app/modules/inventory-detail/timeline/timeline.component.ts @@ -1,19 +1,19 @@ import { CommonModule } from '@angular/common' import type { OnInit } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' import { ActivatedRoute } from '@angular/router' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { ColDef, GridApi } from 'ag-grid-community' import type { Observable } from 'rxjs' import { tap } from 'rxjs' -import { OrganizationService } from '@seed/api/organization' +import { OrganizationService } from '@seed/api' import { NotFoundComponent, PageComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-inventory-detail-timeline', templateUrl: './timeline.component.html', - imports: [AgGridAngular, AgGridModule, CommonModule, MatIconModule, NotFoundComponent, PageComponent], + imports: [AgGridAngular, CommonModule, MaterialImports, NotFoundComponent, PageComponent], }) export class TimelineComponent implements OnInit { private _organizationService = inject(OrganizationService) diff --git a/src/app/modules/inventory-detail/ubids/modal/form-modal.component.ts b/src/app/modules/inventory-detail/ubids/modal/form-modal.component.ts index 8a6ecc48..9461b6ff 100644 --- a/src/app/modules/inventory-detail/ubids/modal/form-modal.component.ts +++ b/src/app/modules/inventory-detail/ubids/modal/form-modal.component.ts @@ -2,16 +2,12 @@ import type { OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import type { AbstractControl, AsyncValidatorFn, ValidationErrors } from '@angular/forms' import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatCheckboxModule } from '@angular/material/checkbox' -import { MAT_DIALOG_DATA, MatDialogActions, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import type { Observable } from 'rxjs' import { catchError, map, of, tap } from 'rxjs' -import type { Ubid, UbidDetails } from '@seed/api/ubid' -import { UbidService } from '@seed/api/ubid' +import type { Ubid, UbidDetails } from '@seed/api' +import { UbidService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { SEEDValidators } from '@seed/validators' import type { InventoryType } from 'app/modules/inventory/inventory.types' @@ -20,12 +16,7 @@ import type { InventoryType } from 'app/modules/inventory/inventory.types' templateUrl: './form-modal.component.html', imports: [ FormsModule, - MatButtonModule, - MatCheckboxModule, - MatDividerModule, - MatDialogActions, - MatIconModule, - MatInputModule, + MaterialImports, ReactiveFormsModule, ], }) diff --git a/src/app/modules/inventory-detail/ubids/ubids.component.ts b/src/app/modules/inventory-detail/ubids/ubids.component.ts index 17509760..fe8417e0 100644 --- a/src/app/modules/inventory-detail/ubids/ubids.component.ts +++ b/src/app/modules/inventory-detail/ubids/ubids.component.ts @@ -2,18 +2,15 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject, ViewChild } from '@angular/core' import { MatDialog } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' import { ActivatedRoute } from '@angular/router' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { CellClickedEvent, ColDef, GridApi, GridReadyEvent } from 'ag-grid-community' import type { Observable } from 'rxjs' import { filter, Subject, switchMap, takeUntil, tap } from 'rxjs' -import { InventoryService } from '@seed/api/inventory' -import { OrganizationService } from '@seed/api/organization' -import type { Ubid } from '@seed/api/ubid' -import { UbidService } from '@seed/api/ubid/ubid.service' -import { UserService } from '@seed/api/user' +import type { Ubid } from '@seed/api' +import { InventoryService, OrganizationService, UbidService, UserService } from '@seed/api' import { DeleteModalComponent, NotFoundComponent, PageComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import type { InventoryType, ViewResponse } from 'app/modules/inventory/inventory.types' import { MapComponent } from '../detail' @@ -22,7 +19,7 @@ import { FormModalComponent } from './modal/form-modal.component' @Component({ selector: 'seed-inventory-detail-ubids', templateUrl: './ubids.component.html', - imports: [AgGridAngular, AgGridModule, CommonModule, MapComponent, MatIconModule, NotFoundComponent, PageComponent], + imports: [AgGridAngular, CommonModule, MapComponent, MaterialImports, NotFoundComponent, PageComponent], }) export class UbidsComponent implements OnDestroy, OnInit { @ViewChild(MapComponent) mapComponent!: MapComponent diff --git a/src/app/modules/inventory-list/cross-cycles/cross-cycles.component.ts b/src/app/modules/inventory-list/cross-cycles/cross-cycles.component.ts index 261484c1..ff470828 100644 --- a/src/app/modules/inventory-list/cross-cycles/cross-cycles.component.ts +++ b/src/app/modules/inventory-list/cross-cycles/cross-cycles.component.ts @@ -1,28 +1,22 @@ import { CommonModule } from '@angular/common' import type { OnInit } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' -import { MatSelectModule } from '@angular/material/select' import { ActivatedRoute } from '@angular/router' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { ColDef, GridApi, GridReadyEvent } from 'ag-grid-community' import type { Observable } from 'rxjs' import { combineLatest, EMPTY, switchMap, tap } from 'rxjs' -import type { Column } from '@seed/api/column' -import { ColumnService } from '@seed/api/column' -import { InventoryService } from '@seed/api/inventory' -import type { Organization, OrgCycle } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' -import type { CurrentUser } from '@seed/api/user' -import { UserService } from '@seed/api/user' +import type { Column, CurrentUser, Organization, OrgCycle } from '@seed/api' +import { ColumnService, InventoryService, OrganizationService, UserService } from '@seed/api' import { PageComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import type { InventoryDisplayType, InventoryType, Profile } from 'app/modules/inventory/inventory.types' @Component({ selector: 'seed-inventory-list-cross-cycles', templateUrl: './cross-cycles.component.html', - imports: [AgGridAngular, AgGridModule, CommonModule, MatIconModule, MatSelectModule, PageComponent], + imports: [AgGridAngular, CommonModule, MaterialImports, PageComponent], }) export class CrossCyclesComponent implements OnInit { private _route = inject(ActivatedRoute) diff --git a/src/app/modules/inventory-list/groups/groups.component.ts b/src/app/modules/inventory-list/groups/groups.component.ts index 7280f596..e1789dbc 100644 --- a/src/app/modules/inventory-list/groups/groups.component.ts +++ b/src/app/modules/inventory-list/groups/groups.component.ts @@ -3,16 +3,15 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import type { MatDialogRef } from '@angular/material/dialog' import { MatDialog } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' import { ActivatedRoute } from '@angular/router' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { CellClickedEvent, ColDef, GridApi, GridReadyEvent } from 'ag-grid-community' import type { Observable } from 'rxjs' import { filter, Subject, switchMap, takeUntil, tap } from 'rxjs' -import { GroupsService } from '@seed/api/groups/groups.service' -import type { InventoryGroup } from '@seed/api/groups/groups.types' -import { OrganizationService } from '@seed/api/organization' +import type { InventoryGroup } from '@seed/api' +import { GroupsService, OrganizationService } from '@seed/api' import { DeleteModalComponent, NotFoundComponent, PageComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import type { InventoryType } from 'app/modules/inventory/inventory.types' import { FormModalComponent } from './modal/form-modal.component' @@ -20,7 +19,7 @@ import { FormModalComponent } from './modal/form-modal.component' @Component({ selector: 'seed-inventory-list-groups', templateUrl: './groups.component.html', - imports: [AgGridAngular, AgGridModule, CommonModule, FormModalComponent, MatIconModule, NotFoundComponent, PageComponent], + imports: [AgGridAngular, CommonModule, FormModalComponent, MaterialImports, NotFoundComponent, PageComponent], }) export class GroupsComponent implements OnDestroy, OnInit { private _configService = inject(ConfigService) diff --git a/src/app/modules/inventory-list/groups/modal/form-modal.component.ts b/src/app/modules/inventory-list/groups/modal/form-modal.component.ts index bd100689..0d4526aa 100644 --- a/src/app/modules/inventory-list/groups/modal/form-modal.component.ts +++ b/src/app/modules/inventory-list/groups/modal/form-modal.component.ts @@ -2,17 +2,11 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDivider } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatSelectModule } from '@angular/material/select' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { Subject, switchMap, takeUntil, tap } from 'rxjs' -import { GroupsService } from '@seed/api/groups/groups.service' -import type { InventoryGroup } from '@seed/api/groups/groups.types' -import { type AccessLevelInstancesByDepth, type AccessLevelsByDepth, OrganizationService } from '@seed/api/organization' +import type { AccessLevelInstancesByDepth, AccessLevelsByDepth, InventoryGroup } from '@seed/api' +import { GroupsService, OrganizationService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { SEEDValidators } from '@seed/validators' @Component({ @@ -21,13 +15,7 @@ import { SEEDValidators } from '@seed/validators' imports: [ CommonModule, FormsModule, - MatButtonModule, - MatDialogModule, - MatDivider, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatSelectModule, + MaterialImports, ReactiveFormsModule, ], }) diff --git a/src/app/modules/inventory-list/list/grid/actions.component.ts b/src/app/modules/inventory-list/list/grid/actions.component.ts index cd4bbbf8..3faaa376 100644 --- a/src/app/modules/inventory-list/list/grid/actions.component.ts +++ b/src/app/modules/inventory-list/list/grid/actions.component.ts @@ -1,12 +1,12 @@ import type { OnDestroy } from '@angular/core' import { Component, EventEmitter, inject, Input, Output } from '@angular/core' import { MatDialog } from '@angular/material/dialog' -import { MatFormFieldModule } from '@angular/material/form-field' -import { type MatSelect, MatSelectModule } from '@angular/material/select' +import { type MatSelect } from '@angular/material/select' import type { GridApi } from 'ag-grid-community' import { filter, Subject, switchMap, takeUntil, tap } from 'rxjs' -import { InventoryService } from '@seed/api/inventory' +import { InventoryService } from '@seed/api' import { DeleteModalComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ModalComponent } from 'app/modules/column-list-profile/modal/modal.component' import type { InventoryType, Profile } from '../../../inventory/inventory.types' import { MoreActionsModalComponent } from '../modal' @@ -14,7 +14,7 @@ import { MoreActionsModalComponent } from '../modal' @Component({ selector: 'seed-inventory-grid-actions', templateUrl: './actions.component.html', - imports: [DeleteModalComponent, MatFormFieldModule, MatSelectModule], + imports: [DeleteModalComponent, MaterialImports], }) export class ActionsComponent implements OnDestroy { @Input() cycleId: number diff --git a/src/app/modules/inventory-list/list/grid/cell-header-menu.component.ts b/src/app/modules/inventory-list/list/grid/cell-header-menu.component.ts index 8a60e43f..f949b18c 100644 --- a/src/app/modules/inventory-list/list/grid/cell-header-menu.component.ts +++ b/src/app/modules/inventory-list/list/grid/cell-header-menu.component.ts @@ -1,12 +1,12 @@ import { Component } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' import type { IHeaderAngularComp } from 'ag-grid-angular' import type { IHeaderParams } from 'ag-grid-community' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-inventory-grid-cell-header-menu', templateUrl: './cell-header-menu.component.html', - imports: [MatIconModule], + imports: [MaterialImports], }) export class CellHeaderMenuComponent implements IHeaderAngularComp { // THIS COMPONENT IS STILL IN DEVELOPMENT diff --git a/src/app/modules/inventory-list/list/grid/config-selector.component.ts b/src/app/modules/inventory-list/list/grid/config-selector.component.ts index d46b711e..760d1497 100644 --- a/src/app/modules/inventory-list/list/grid/config-selector.component.ts +++ b/src/app/modules/inventory-list/list/grid/config-selector.component.ts @@ -1,12 +1,12 @@ import { Component, EventEmitter, Input, Output } from '@angular/core' -import { MatSelectModule } from '@angular/material/select' -import type { Cycle } from '@seed/api/cycle' +import type { Cycle } from '@seed/api' +import { MaterialImports } from '@seed/materials' import type { Profile } from '../../../inventory/inventory.types' @Component({ selector: 'seed-inventory-grid-config-selector', templateUrl: './config-selector.component.html', - imports: [MatSelectModule], + imports: [MaterialImports], }) export class ConfigSelectorComponent { @Input() label = '' diff --git a/src/app/modules/inventory-list/list/grid/filter-sort-chips.component.ts b/src/app/modules/inventory-list/list/grid/filter-sort-chips.component.ts index 1312552b..24639b5d 100644 --- a/src/app/modules/inventory-list/list/grid/filter-sort-chips.component.ts +++ b/src/app/modules/inventory-list/list/grid/filter-sort-chips.component.ts @@ -1,16 +1,15 @@ import { CommonModule } from '@angular/common' import type { OnChanges, SimpleChanges } from '@angular/core' import { Component, Input } from '@angular/core' -import { MatChipsModule } from '@angular/material/chips' -import { MatIconModule } from '@angular/material/icon' import type { ColDef, GridApi } from 'ag-grid-community' -import type { OrganizationUserSettings } from '@seed/api/organization' +import type { OrganizationUserSettings } from '@seed/api' +import { MaterialImports } from '@seed/materials' import type { AgFilter, FilterSortChip, FilterType, InventoryType } from '../../../inventory/inventory.types' @Component({ selector: 'seed-inventory-filter-sort-chips', templateUrl: './filter-sort-chips.component.html', - imports: [CommonModule, MatChipsModule, MatIconModule], + imports: [CommonModule, MaterialImports], }) export class FilterSortChipsComponent implements OnChanges { @Input() gridApi: GridApi diff --git a/src/app/modules/inventory-list/list/grid/grid-controls.component.ts b/src/app/modules/inventory-list/list/grid/grid-controls.component.ts index 3ccac723..dbf98659 100644 --- a/src/app/modules/inventory-list/list/grid/grid-controls.component.ts +++ b/src/app/modules/inventory-list/list/grid/grid-controls.component.ts @@ -1,12 +1,11 @@ import { Component, EventEmitter, Input, Output } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' -import { MatTooltipModule } from '@angular/material/tooltip' -import type { Pagination } from '../../../inventory/inventory.types' +import { MaterialImports } from '@seed/materials' +import type { Pagination } from 'app/modules/inventory' @Component({ selector: 'seed-inventory-grid-controls', templateUrl: './grid-controls.component.html', - imports: [MatIconModule, MatTooltipModule], + imports: [MaterialImports], }) export class InventoryGridControlsComponent { @Input() pagination!: Pagination diff --git a/src/app/modules/inventory-list/list/grid/grid.component.ts b/src/app/modules/inventory-list/list/grid/grid.component.ts index efe1129b..c4675347 100644 --- a/src/app/modules/inventory-list/list/grid/grid.component.ts +++ b/src/app/modules/inventory-list/list/grid/grid.component.ts @@ -2,23 +2,18 @@ import { CommonModule } from '@angular/common' import type { OnChanges, SimpleChanges } from '@angular/core' import { Component, EventEmitter, inject, Input, Output } from '@angular/core' import { Router } from '@angular/router' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { CellClickedEvent, ColDef, ColGroupDef, GridApi, GridOptions, GridReadyEvent } from 'ag-grid-community' -import { AllCommunityModule, ModuleRegistry } from 'ag-grid-community' -import type { Label } from '@seed/api/label' +import type { Label } from '@seed/api' import { ConfigService } from '@seed/services' -import type { FiltersSorts, InventoryType, Pagination } from '../../../inventory/inventory.types' -// import { CellHeaderMenuComponent } from './cell-header-menu.component' +import type { FiltersSorts, InventoryType, Pagination } from 'app/modules/inventory' import { InventoryGridControlsComponent } from './grid-controls.component' -ModuleRegistry.registerModules([AllCommunityModule]) - @Component({ selector: 'seed-inventory-grid', templateUrl: './grid.component.html', imports: [ AgGridAngular, - AgGridModule, // CellHeaderMenuComponent, CommonModule, InventoryGridControlsComponent, diff --git a/src/app/modules/inventory-list/list/inventory.component.ts b/src/app/modules/inventory-list/list/inventory.component.ts index f9fea980..72380b6c 100644 --- a/src/app/modules/inventory-list/list/inventory.component.ts +++ b/src/app/modules/inventory-list/list/inventory.component.ts @@ -1,29 +1,15 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject, ViewEncapsulation } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatDialogModule } from '@angular/material/dialog' -import { MatExpansionModule } from '@angular/material/expansion' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatSelectModule } from '@angular/material/select' -import { MatTabsModule } from '@angular/material/tabs' -import { MatTooltipModule } from '@angular/material/tooltip' import { ActivatedRoute } from '@angular/router' import type { ColDef, GridApi } from 'ag-grid-community' import type { Observable } from 'rxjs' import { BehaviorSubject, catchError, combineLatest, filter, map, of, Subject, switchMap, takeUntil, tap } from 'rxjs' -import type { Cycle } from '@seed/api/cycle' -import { CycleService } from '@seed/api/cycle/cycle.service' -import { InventoryService } from '@seed/api/inventory' -import type { Label } from '@seed/api/label' -import { LabelService } from '@seed/api/label' -import type { OrganizationUserResponse, OrganizationUserSettings } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' -import type { CurrentUser } from '@seed/api/user' -import { UserService } from '@seed/api/user' +import type { CurrentUser, Cycle, Label, OrganizationUserResponse, OrganizationUserSettings } from '@seed/api' +import { CycleService, InventoryService, LabelService, OrganizationService, UserService } from '@seed/api' import { InventoryTabComponent, PageComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { naturalSort } from '@seed/utils' import type { AgFilterResponse, @@ -32,7 +18,7 @@ import type { InventoryType, Pagination, Profile, -} from '../../inventory/inventory.types' +} from 'app/modules/inventory' import { ActionsComponent, ConfigSelectorComponent, FilterSortChipsComponent, InventoryGridComponent } from './grid' // import { CellHeaderMenuComponent } from './grid/cell-header-menu.component' @@ -45,14 +31,7 @@ import { ActionsComponent, ConfigSelectorComponent, FilterSortChipsComponent, In CommonModule, ConfigSelectorComponent, FilterSortChipsComponent, - MatButtonModule, - MatDialogModule, - MatIconModule, - MatExpansionModule, - MatFormFieldModule, - MatSelectModule, - MatTabsModule, - MatTooltipModule, + MaterialImports, PageComponent, SharedImports, InventoryTabComponent, diff --git a/src/app/modules/inventory-list/list/modal/more-actions-modal.component.ts b/src/app/modules/inventory-list/list/modal/more-actions-modal.component.ts index 60a8e275..a3caa050 100644 --- a/src/app/modules/inventory-list/list/modal/more-actions-modal.component.ts +++ b/src/app/modules/inventory-list/list/modal/more-actions-modal.component.ts @@ -1,13 +1,10 @@ import type { OnDestroy } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialog, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatProgressSpinnerModule } from '@angular/material/progress-spinner' +import { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material/dialog' import { finalize, Subject, switchMap, take, tap } from 'rxjs' -import { DataQualityService } from '@seed/api/data-quality' +import { DataQualityService } from '@seed/api' import { ProgressBarComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { UploaderService } from '@seed/services/uploader' import { ResultsModalComponent } from 'app/modules/data-quality' import type { InventoryType } from 'app/modules/inventory/inventory.types' @@ -16,11 +13,7 @@ import type { InventoryType } from 'app/modules/inventory/inventory.types' selector: 'seed-inventory-more-actions-modal', templateUrl: './more-actions-modal.component.html', imports: [ - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatIconModule, - MatProgressSpinnerModule, + MaterialImports, ProgressBarComponent, ResultsModalComponent, ], diff --git a/src/app/modules/inventory-list/map/labels.component.ts b/src/app/modules/inventory-list/map/labels.component.ts index 6c0219c9..a8c9679e 100644 --- a/src/app/modules/inventory-list/map/labels.component.ts +++ b/src/app/modules/inventory-list/map/labels.component.ts @@ -1,29 +1,16 @@ import type { OnChanges, SimpleChanges } from '@angular/core' import { Component, EventEmitter, inject, Input, Output } from '@angular/core' import { FormsModule } from '@angular/forms' -import { MatAutocompleteModule } from '@angular/material/autocomplete' -import { MatButtonModule } from '@angular/material/button' -import { MatChipsModule } from '@angular/material/chips' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatSelectModule } from '@angular/material/select' -import type { Label, LabelOperator } from '@seed/api/label' -import { OrganizationService } from '@seed/api/organization' -import type { CurrentUser } from '@seed/api/user' +import type { CurrentUser, Label, LabelOperator } from '@seed/api' +import { OrganizationService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { isOrderedSubset } from '@seed/utils/string-matching.util' @Component({ selector: 'seed-inventory-list-map-labels', templateUrl: './labels.component.html', imports: [ - MatAutocompleteModule, - MatButtonModule, - MatChipsModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatSelectModule, + MaterialImports, FormsModule, ], }) diff --git a/src/app/modules/inventory-list/map/map.component.ts b/src/app/modules/inventory-list/map/map.component.ts index 154f3077..aec0dc71 100644 --- a/src/app/modules/inventory-list/map/map.component.ts +++ b/src/app/modules/inventory-list/map/map.component.ts @@ -1,11 +1,6 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatCheckboxModule } from '@angular/material/checkbox' -import { MatIconModule } from '@angular/material/icon' import type { ProgressBarMode } from '@angular/material/progress-bar' -import { MatProgressBarModule } from '@angular/material/progress-bar' -import { MatSelectModule } from '@angular/material/select' -import { MatTooltipModule } from '@angular/material/tooltip' import { ActivatedRoute } from '@angular/router' import { type Feature, Overlay } from 'ol' import { defaults as defaultControls } from 'ol/control' @@ -28,14 +23,10 @@ import Text from 'ol/style/Text' import View from 'ol/View' import HexBin from 'ol-ext/source/HexBin' import { filter, finalize, last, map, mergeMap, range, scan, Subject, switchMap, takeUntil, tap } from 'rxjs' -import { InventoryService } from '@seed/api/inventory' -import type { Label, LabelOperator } from '@seed/api/label' -import { LabelService } from '@seed/api/label' -import type { OrgCycle } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' -import type { CurrentUser } from '@seed/api/user' -import { UserService } from '@seed/api/user' +import type { CurrentUser, Label, LabelOperator, OrgCycle } from '@seed/api' +import { InventoryService, LabelService, OrganizationService, UserService } from '@seed/api' import { NotFoundComponent, PageComponent, ProgressBarComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { MapService } from '@seed/services/map' import type { FilterResponse, InventoryType, InventoryTypeGoal, State } from 'app/modules/inventory/inventory.types' import { LabelsComponent } from './labels.component' @@ -47,11 +38,7 @@ type Layer = VectorLayer | TileLayer templateUrl: './map.component.html', imports: [ LabelsComponent, - MatCheckboxModule, - MatIconModule, - MatProgressBarModule, - MatSelectModule, - MatTooltipModule, + MaterialImports, NotFoundComponent, PageComponent, ProgressBarComponent, diff --git a/src/app/modules/inventory-list/summary/summary.component.ts b/src/app/modules/inventory-list/summary/summary.component.ts index de3ffe88..0866a31a 100644 --- a/src/app/modules/inventory-list/summary/summary.component.ts +++ b/src/app/modules/inventory-list/summary/summary.component.ts @@ -1,19 +1,14 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatSelectModule } from '@angular/material/select' import { ActivatedRoute } from '@angular/router' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import type { ColDef, GridApi, GridReadyEvent } from 'ag-grid-community' import { catchError, EMPTY, Subject, switchMap, takeUntil, tap } from 'rxjs' -import { AnalysisService } from '@seed/api/analysis/analysis.service' -import type { AnalysisSummary, AnalysisSummaryStats } from '@seed/api/analysis/analysis.types' -import type { OrgCycle } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' -import { type CurrentUser, UserService } from '@seed/api/user' +import type { AnalysisSummary, AnalysisSummaryStats, CurrentUser, OrgCycle } from '@seed/api' +import { AnalysisService, OrganizationService, UserService } from '@seed/api' import { NotFoundComponent, PageComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import type { InventoryType } from 'app/modules/inventory/inventory.types' @@ -22,7 +17,7 @@ type CellRendererParams = { value: string; data: { is_extra_data: boolean } } @Component({ selector: 'seed-inventory-list-summary', templateUrl: './summary.component.html', - imports: [AgGridAngular, AgGridModule, CommonModule, MatDividerModule, MatIconModule, MatSelectModule, NotFoundComponent, PageComponent], + imports: [AgGridAngular, CommonModule, MaterialImports, NotFoundComponent, PageComponent], }) export class SummaryComponent implements OnDestroy, OnInit { private _analysisService = inject(AnalysisService) diff --git a/src/app/modules/inventory/inventory.types.ts b/src/app/modules/inventory/inventory.types.ts index e9a88917..7c08ce37 100644 --- a/src/app/modules/inventory/inventory.types.ts +++ b/src/app/modules/inventory/inventory.types.ts @@ -1,9 +1,5 @@ import type { ColDef, ValueGetterParams } from 'ag-grid-community' -import type { Column } from '@seed/api/column' -import type { Cycle } from '@seed/api/cycle' -import type { Label } from '@seed/api/label' -import type { Scenario } from '@seed/api/scenario' -import type { CurrentUser } from '@seed/api/user' +import type { Column, CurrentUser, Cycle, Label, Scenario } from '@seed/api' export type InventoryDisplayType = 'Property' | 'Tax Lot' export type InventoryStateType = 'PropertyState' | 'TaxLotState' diff --git a/src/app/modules/main/about/about.component.ts b/src/app/modules/main/about/about.component.ts index 2a5682bd..661424a1 100644 --- a/src/app/modules/main/about/about.component.ts +++ b/src/app/modules/main/about/about.component.ts @@ -1,7 +1,7 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject, ViewEncapsulation } from '@angular/core' import { Subject, takeUntil } from 'rxjs' -import { VersionService } from '@seed/api/version' +import { VersionService } from '@seed/api' import { PageComponent } from '@seed/components' import { SharedImports } from '@seed/directives' import { TermsService } from '@seed/services' diff --git a/src/app/modules/main/documentation/documentation.component.ts b/src/app/modules/main/documentation/documentation.component.ts index d6732305..078c71fb 100644 --- a/src/app/modules/main/documentation/documentation.component.ts +++ b/src/app/modules/main/documentation/documentation.component.ts @@ -1,8 +1,6 @@ import { Component, ViewEncapsulation } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatExpansionModule } from '@angular/material/expansion' -import { MatIconModule } from '@angular/material/icon' import { InnerHTMLExternalLinksDirective, InnerHTMLImageOverlayDirective, SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-documentation', @@ -11,9 +9,7 @@ import { InnerHTMLExternalLinksDirective, InnerHTMLImageOverlayDirective, Shared imports: [ InnerHTMLExternalLinksDirective, InnerHTMLImageOverlayDirective, - MatButtonModule, - MatIconModule, - MatExpansionModule, + MaterialImports, SharedImports, ], }) diff --git a/src/app/modules/organizations/access-level-tree/access-level-tree.component.ts b/src/app/modules/organizations/access-level-tree/access-level-tree.component.ts index ac7fc192..96070ec4 100644 --- a/src/app/modules/organizations/access-level-tree/access-level-tree.component.ts +++ b/src/app/modules/organizations/access-level-tree/access-level-tree.component.ts @@ -1,23 +1,14 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject, ViewEncapsulation } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' import { MatDialog } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatMenuModule } from '@angular/material/menu' -import { MatSidenavModule } from '@angular/material/sidenav' -import { MatTooltipModule } from '@angular/material/tooltip' import { debounceTime, distinctUntilChanged, Subject, takeUntil } from 'rxjs' -import type { AccessLevelInstance, AccessLevelTree } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' -import type { CurrentUser } from '@seed/api/user' -import { UserService } from '@seed/api/user' +import type { AccessLevelInstance, AccessLevelTree, CurrentUser } from '@seed/api' +import { OrganizationService, UserService } from '@seed/api' import type { DrawerMode } from '@seed/components' import { PageComponent } from '@seed/components' import { ImageOverlayDirective, SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { MediaWatcherService } from '@seed/services' import type { CreateInstanceData, @@ -38,14 +29,7 @@ import { UploadInstancesDialogComponent } from './upload-instances-dialog' imports: [ CommonModule, ImageOverlayDirective, - MatButtonModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatMenuModule, - MatSidenavModule, - MatTooltipModule, + MaterialImports, PageComponent, SharedImports, ], diff --git a/src/app/modules/organizations/access-level-tree/access-level-tree.types.ts b/src/app/modules/organizations/access-level-tree/access-level-tree.types.ts index 4e9ad96e..be0607ff 100644 --- a/src/app/modules/organizations/access-level-tree/access-level-tree.types.ts +++ b/src/app/modules/organizations/access-level-tree/access-level-tree.types.ts @@ -1,4 +1,4 @@ -import type { AccessLevelInstance } from '@seed/api/organization' +import type { AccessLevelInstance } from '@seed/api' export type EditAccessLevelsData = { accessLevelNames: string[]; diff --git a/src/app/modules/organizations/access-level-tree/create-instance-dialog/create-instance-dialog.component.ts b/src/app/modules/organizations/access-level-tree/create-instance-dialog/create-instance-dialog.component.ts index 333e13cd..ba03e2b5 100644 --- a/src/app/modules/organizations/access-level-tree/create-instance-dialog/create-instance-dialog.component.ts +++ b/src/app/modules/organizations/access-level-tree/create-instance-dialog/create-instance-dialog.component.ts @@ -2,15 +2,11 @@ import { A11yModule } from '@angular/cdk/a11y' import { Component, inject, ViewEncapsulation } from '@angular/core' import type { ValidationErrors, ValidatorFn } from '@angular/forms' import { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatProgressSpinnerModule } from '@angular/material/progress-spinner' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { finalize } from 'rxjs' -import { OrganizationService } from '@seed/api/organization' +import { OrganizationService } from '@seed/api' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import type { CreateInstanceData } from '..' @Component({ @@ -20,12 +16,7 @@ import type { CreateInstanceData } from '..' imports: [ A11yModule, FormsModule, - MatButtonModule, - MatDialogModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatProgressSpinnerModule, + MaterialImports, ReactiveFormsModule, SharedImports, ], diff --git a/src/app/modules/organizations/access-level-tree/delete-instance-dialog/delete-instance-dialog.component.ts b/src/app/modules/organizations/access-level-tree/delete-instance-dialog/delete-instance-dialog.component.ts index a1a600c1..8b451765 100644 --- a/src/app/modules/organizations/access-level-tree/delete-instance-dialog/delete-instance-dialog.component.ts +++ b/src/app/modules/organizations/access-level-tree/delete-instance-dialog/delete-instance-dialog.component.ts @@ -1,19 +1,17 @@ import { CommonModule } from '@angular/common' import { Component, inject, ViewEncapsulation } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' -import { MatProgressSpinnerModule } from '@angular/material/progress-spinner' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { finalize } from 'rxjs' -import { OrganizationService } from '@seed/api/organization' +import { OrganizationService } from '@seed/api' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import type { DeleteInstanceData } from '..' @Component({ selector: 'seed-delete-instance-dialog', templateUrl: './delete-instance-dialog.component.html', encapsulation: ViewEncapsulation.None, - imports: [CommonModule, MatButtonModule, MatDialogModule, MatIconModule, MatProgressSpinnerModule, SharedImports], + imports: [CommonModule, MaterialImports, SharedImports], }) export class DeleteInstanceDialogComponent { private _data = inject(MAT_DIALOG_DATA) as DeleteInstanceData diff --git a/src/app/modules/organizations/access-level-tree/edit-access-levels-dialog/edit-access-levels-dialog.component.ts b/src/app/modules/organizations/access-level-tree/edit-access-levels-dialog/edit-access-levels-dialog.component.ts index 80f78640..13de673d 100644 --- a/src/app/modules/organizations/access-level-tree/edit-access-levels-dialog/edit-access-levels-dialog.component.ts +++ b/src/app/modules/organizations/access-level-tree/edit-access-levels-dialog/edit-access-levels-dialog.component.ts @@ -2,16 +2,12 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject, ViewEncapsulation } from '@angular/core' import { FormArray, FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatProgressSpinnerModule } from '@angular/material/progress-spinner' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { finalize, Subject, takeUntil } from 'rxjs' -import type { AccessLevelsByDepth } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' +import type { AccessLevelsByDepth } from '@seed/api' +import { OrganizationService } from '@seed/api' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { arraysEqual } from '@seed/utils' import type { EditAccessLevelsData } from '..' @@ -22,12 +18,7 @@ import type { EditAccessLevelsData } from '..' imports: [ CommonModule, FormsModule, - MatButtonModule, - MatDialogModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatProgressSpinnerModule, + MaterialImports, ReactiveFormsModule, SharedImports, ], diff --git a/src/app/modules/organizations/access-level-tree/rename-instance-dialog/rename-instance-dialog.component.ts b/src/app/modules/organizations/access-level-tree/rename-instance-dialog/rename-instance-dialog.component.ts index 9d0c97bc..89f780a4 100644 --- a/src/app/modules/organizations/access-level-tree/rename-instance-dialog/rename-instance-dialog.component.ts +++ b/src/app/modules/organizations/access-level-tree/rename-instance-dialog/rename-instance-dialog.component.ts @@ -2,15 +2,11 @@ import { A11yModule } from '@angular/cdk/a11y' import { Component, inject, ViewEncapsulation } from '@angular/core' import type { ValidationErrors, ValidatorFn } from '@angular/forms' import { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatProgressSpinnerModule } from '@angular/material/progress-spinner' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { finalize } from 'rxjs' -import { OrganizationService } from '@seed/api/organization' +import { OrganizationService } from '@seed/api' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import type { RenameInstanceData } from '..' @Component({ @@ -20,12 +16,7 @@ import type { RenameInstanceData } from '..' imports: [ A11yModule, FormsModule, - MatButtonModule, - MatDialogModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatProgressSpinnerModule, + MaterialImports, ReactiveFormsModule, SharedImports, ], diff --git a/src/app/modules/organizations/access-level-tree/upload-instances-dialog/upload-instances-dialog.component.ts b/src/app/modules/organizations/access-level-tree/upload-instances-dialog/upload-instances-dialog.component.ts index a429b35e..81e109f0 100644 --- a/src/app/modules/organizations/access-level-tree/upload-instances-dialog/upload-instances-dialog.component.ts +++ b/src/app/modules/organizations/access-level-tree/upload-instances-dialog/upload-instances-dialog.component.ts @@ -2,16 +2,12 @@ import { CommonModule } from '@angular/common' import { HttpEventType } from '@angular/common/http' import type { OnDestroy } from '@angular/core' import { Component, inject, ViewEncapsulation } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' -import { MatProgressBarModule } from '@angular/material/progress-bar' -import { MatProgressSpinnerModule } from '@angular/material/progress-spinner' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { TranslocoDirective } from '@jsverse/transloco' import { filter, last, Subject, switchMap, takeUntil, tap } from 'rxjs' -import { OrganizationService } from '@seed/api/organization' -import { ProgressService } from '@seed/api/progress' +import { OrganizationService, ProgressService } from '@seed/api' import { AlertComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import type { UploadInstancesData } from '../access-level-tree.types' @Component({ @@ -22,11 +18,7 @@ import type { UploadInstancesData } from '../access-level-tree.types' imports: [ AlertComponent, CommonModule, - MatButtonModule, - MatDialogModule, - MatIconModule, - MatProgressBarModule, - MatProgressSpinnerModule, + MaterialImports, TranslocoDirective, ], }) diff --git a/src/app/modules/organizations/columns/columns.component.ts b/src/app/modules/organizations/columns/columns.component.ts index 363d18fe..b7a39129 100644 --- a/src/app/modules/organizations/columns/columns.component.ts +++ b/src/app/modules/organizations/columns/columns.component.ts @@ -1,16 +1,13 @@ import { CommonModule, Location } from '@angular/common' import type { AfterViewInit, OnInit, Type } from '@angular/core' import { Component, inject, ViewChild } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatIconModule } from '@angular/material/icon' import type { MatDrawer } from '@angular/material/sidenav' -import { MatSidenavModule } from '@angular/material/sidenav' -import { MatTabsModule } from '@angular/material/tabs' import { Title } from '@angular/platform-browser' import { Router, RouterOutlet } from '@angular/router' import { DrawerService, InventoryTabComponent, type NavigationItem, VerticalNavigationComponent } from '@seed/components' import { PageComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import type { InventoryType } from 'app/modules/inventory' import { ColumnDataTypesHelpComponent } from './data-types/help.component' import { ColumnGeocodingHelpComponent } from './geocoding/help.component' @@ -27,10 +24,7 @@ type ColumnNavigationItem = NavigationItem & { useTabs: boolean; helpComponent: CommonModule, SharedImports, InventoryTabComponent, - MatButtonModule, - MatIconModule, - MatSidenavModule, - MatTabsModule, + MaterialImports, PageComponent, VerticalNavigationComponent, RouterOutlet, diff --git a/src/app/modules/organizations/columns/data-types/data-types-properties.component.ts b/src/app/modules/organizations/columns/data-types/data-types-properties.component.ts index 5ca5c97f..03f37981 100644 --- a/src/app/modules/organizations/columns/data-types/data-types-properties.component.ts +++ b/src/app/modules/organizations/columns/data-types/data-types-properties.component.ts @@ -1,15 +1,11 @@ import { CommonModule } from '@angular/common' import { type AfterViewInit, Component, type OnInit, ViewChild, ViewEncapsulation } from '@angular/core' import { ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatInputModule } from '@angular/material/input' import { MatPaginator } from '@angular/material/paginator' -import { MatSelectModule } from '@angular/material/select' -import { MatTableModule } from '@angular/material/table' import { map, takeUntil } from 'rxjs' import { TableContainerComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { naturalSort } from '@seed/utils' import { DataTypesComponent } from './data-types.component' @@ -21,12 +17,8 @@ import { DataTypesComponent } from './data-types.component' CommonModule, SharedImports, TableContainerComponent, - MatButtonModule, - MatFormFieldModule, - MatInputModule, + MaterialImports, MatPaginator, - MatSelectModule, - MatTableModule, ReactiveFormsModule, ], }) diff --git a/src/app/modules/organizations/columns/data-types/data-types-taxlots.component.ts b/src/app/modules/organizations/columns/data-types/data-types-taxlots.component.ts index 1531650e..365a8600 100644 --- a/src/app/modules/organizations/columns/data-types/data-types-taxlots.component.ts +++ b/src/app/modules/organizations/columns/data-types/data-types-taxlots.component.ts @@ -1,15 +1,11 @@ import { CommonModule } from '@angular/common' import { type AfterViewInit, Component, type OnInit, ViewChild, ViewEncapsulation } from '@angular/core' import { ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatInputModule } from '@angular/material/input' import { MatPaginator } from '@angular/material/paginator' -import { MatSelectModule } from '@angular/material/select' -import { MatTableModule } from '@angular/material/table' import { map, takeUntil } from 'rxjs' import { TableContainerComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { naturalSort } from '@seed/utils' import { DataTypesComponent } from './data-types.component' @@ -21,12 +17,8 @@ import { DataTypesComponent } from './data-types.component' CommonModule, SharedImports, TableContainerComponent, - MatButtonModule, - MatFormFieldModule, - MatInputModule, + MaterialImports, MatPaginator, - MatSelectModule, - MatTableModule, ReactiveFormsModule, ], }) diff --git a/src/app/modules/organizations/columns/data-types/data-types.component.ts b/src/app/modules/organizations/columns/data-types/data-types.component.ts index 86baea15..b2de749f 100644 --- a/src/app/modules/organizations/columns/data-types/data-types.component.ts +++ b/src/app/modules/organizations/columns/data-types/data-types.component.ts @@ -3,8 +3,8 @@ import { FormControl, FormGroup, Validators } from '@angular/forms' import { MatDialog } from '@angular/material/dialog' import { MatTableDataSource } from '@angular/material/table' import { Subject, takeUntil } from 'rxjs' -import { type Column, ColumnService } from '@seed/api/column' -import type { ProgressResponse } from '@seed/api/progress' +import type { Column, ProgressResponse } from '@seed/api' +import { ColumnService } from '@seed/api' import { SharedImports } from '@seed/directives' import { UpdateModalComponent } from '../modal/update-modal.component' import { DataTypes } from './data-types.constants' diff --git a/src/app/modules/organizations/columns/data-types/help.component.ts b/src/app/modules/organizations/columns/data-types/help.component.ts index 4fa9d86b..5cad82bc 100644 --- a/src/app/modules/organizations/columns/data-types/help.component.ts +++ b/src/app/modules/organizations/columns/data-types/help.component.ts @@ -1,11 +1,11 @@ import { Component, ViewEncapsulation } from '@angular/core' -import { MatIcon } from '@angular/material/icon' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-organizations-column-data-types-help', templateUrl: './help.component.html', encapsulation: ViewEncapsulation.None, - imports: [SharedImports, MatIcon], + imports: [SharedImports, MaterialImports], }) export class ColumnDataTypesHelpComponent {} diff --git a/src/app/modules/organizations/columns/geocoding/geocoding-properties.component.ts b/src/app/modules/organizations/columns/geocoding/geocoding-properties.component.ts index 8329a6d9..ab3e1e30 100644 --- a/src/app/modules/organizations/columns/geocoding/geocoding-properties.component.ts +++ b/src/app/modules/organizations/columns/geocoding/geocoding-properties.component.ts @@ -1,12 +1,9 @@ import { CdkDrag, CdkDropList } from '@angular/cdk/drag-drop' import { Component, type OnInit, ViewEncapsulation } from '@angular/core' import { ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatIcon } from '@angular/material/icon' -import { MatSelectModule } from '@angular/material/select' -import { MatTooltip } from '@angular/material/tooltip' import { takeUntil } from 'rxjs' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { naturalSort } from '@seed/utils' import { GeocodingComponent } from './geocoding.component' @@ -14,7 +11,7 @@ import { GeocodingComponent } from './geocoding.component' selector: 'seed-organizations-column-geocoding-properties', templateUrl: './geocoding.component.html', encapsulation: ViewEncapsulation.None, - imports: [SharedImports, CdkDropList, CdkDrag, MatButtonModule, MatIcon, MatSelectModule, MatTooltip, ReactiveFormsModule], + imports: [SharedImports, CdkDropList, CdkDrag, MaterialImports, ReactiveFormsModule], }) export class GeocodingPropertiesComponent extends GeocodingComponent implements OnInit { type = 'PropertyState' diff --git a/src/app/modules/organizations/columns/geocoding/geocoding-taxlots.component.ts b/src/app/modules/organizations/columns/geocoding/geocoding-taxlots.component.ts index e1c2991e..10c0ec60 100644 --- a/src/app/modules/organizations/columns/geocoding/geocoding-taxlots.component.ts +++ b/src/app/modules/organizations/columns/geocoding/geocoding-taxlots.component.ts @@ -1,12 +1,9 @@ import { CdkDrag, CdkDropList } from '@angular/cdk/drag-drop' import { Component, type OnInit, ViewEncapsulation } from '@angular/core' import { ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatIcon } from '@angular/material/icon' -import { MatSelectModule } from '@angular/material/select' -import { MatTooltip } from '@angular/material/tooltip' import { takeUntil } from 'rxjs' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { naturalSort } from '@seed/utils' import { GeocodingComponent } from './geocoding.component' @@ -14,7 +11,7 @@ import { GeocodingComponent } from './geocoding.component' selector: 'seed-organizations-column-geocoding-taxlots', templateUrl: './geocoding.component.html', encapsulation: ViewEncapsulation.None, - imports: [SharedImports, CdkDropList, CdkDrag, MatButtonModule, MatIcon, MatSelectModule, MatTooltip, ReactiveFormsModule], + imports: [SharedImports, CdkDropList, CdkDrag, MaterialImports, ReactiveFormsModule], }) export class GeocodingTaxlotsComponent extends GeocodingComponent implements OnInit { type = 'TaxLotState' diff --git a/src/app/modules/organizations/columns/geocoding/geocoding.component.ts b/src/app/modules/organizations/columns/geocoding/geocoding.component.ts index bf8c3c41..3a4d2e4c 100644 --- a/src/app/modules/organizations/columns/geocoding/geocoding.component.ts +++ b/src/app/modules/organizations/columns/geocoding/geocoding.component.ts @@ -1,15 +1,12 @@ import { CdkDrag, type CdkDragDrop, CdkDropList, moveItemInArray } from '@angular/cdk/drag-drop' import { Component, inject, type OnDestroy, ViewEncapsulation } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' import { MatDialog } from '@angular/material/dialog' -import { MatIcon } from '@angular/material/icon' -import { MatSelectModule } from '@angular/material/select' -import { MatTooltip } from '@angular/material/tooltip' import { Subject, takeUntil } from 'rxjs' -import { type Column, ColumnService } from '@seed/api/column' -import type { ProgressResponse } from '@seed/api/progress' +import type { Column, ProgressResponse } from '@seed/api' +import { ColumnService } from '@seed/api' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { naturalSort } from '@seed/utils' import { UpdateModalComponent } from '../modal/update-modal.component' @@ -17,7 +14,7 @@ import { UpdateModalComponent } from '../modal/update-modal.component' selector: 'seed-organizations-column-geocoding-properties', templateUrl: './geocoding.component.html', encapsulation: ViewEncapsulation.None, - imports: [SharedImports, CdkDropList, CdkDrag, MatButtonModule, MatIcon, MatSelectModule, MatTooltip, ReactiveFormsModule], + imports: [SharedImports, CdkDropList, CdkDrag, MaterialImports, ReactiveFormsModule], }) export class GeocodingComponent implements OnDestroy { protected _columnService = inject(ColumnService) diff --git a/src/app/modules/organizations/columns/geocoding/help.component.ts b/src/app/modules/organizations/columns/geocoding/help.component.ts index 77b73018..ce5afe40 100644 --- a/src/app/modules/organizations/columns/geocoding/help.component.ts +++ b/src/app/modules/organizations/columns/geocoding/help.component.ts @@ -1,11 +1,11 @@ import { Component, ViewEncapsulation } from '@angular/core' -import { MatIcon } from '@angular/material/icon' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-organizations-column-geocoding-help', templateUrl: './help.component.html', encapsulation: ViewEncapsulation.None, - imports: [SharedImports, MatIcon], + imports: [SharedImports, MaterialImports], }) export class ColumnGeocodingHelpComponent {} diff --git a/src/app/modules/organizations/columns/import-settings/help.component.ts b/src/app/modules/organizations/columns/import-settings/help.component.ts index 8dfa7e5b..982b00ed 100644 --- a/src/app/modules/organizations/columns/import-settings/help.component.ts +++ b/src/app/modules/organizations/columns/import-settings/help.component.ts @@ -1,11 +1,11 @@ import { Component, ViewEncapsulation } from '@angular/core' -import { MatIcon } from '@angular/material/icon' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-organizations-column-import-settings-help', templateUrl: './help.component.html', encapsulation: ViewEncapsulation.None, - imports: [SharedImports, MatIcon], + imports: [SharedImports, MaterialImports], }) export class ColumnImportSettingsHelpComponent {} diff --git a/src/app/modules/organizations/columns/import-settings/import-settings-properties.component.ts b/src/app/modules/organizations/columns/import-settings/import-settings-properties.component.ts index c72148d9..ba618a6f 100644 --- a/src/app/modules/organizations/columns/import-settings/import-settings-properties.component.ts +++ b/src/app/modules/organizations/columns/import-settings/import-settings-properties.component.ts @@ -1,17 +1,15 @@ import { Component, type OnInit, ViewEncapsulation } from '@angular/core' import { ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatIconModule } from '@angular/material/icon' -import { MatSelectModule } from '@angular/material/select' import { map, takeUntil } from 'rxjs' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { ImportSettingsComponent } from './import-settings.component' @Component({ selector: 'seed-organizations-column-import-settings-properties', templateUrl: './import-settings.component.html', encapsulation: ViewEncapsulation.None, - imports: [SharedImports, MatButtonModule, MatIconModule, MatSelectModule, ReactiveFormsModule], + imports: [SharedImports, MaterialImports, ReactiveFormsModule], }) export class ImportSettingsPropertiesComponent extends ImportSettingsComponent implements OnInit { type = 'PropertyState' diff --git a/src/app/modules/organizations/columns/import-settings/import-settings-taxlots.component.ts b/src/app/modules/organizations/columns/import-settings/import-settings-taxlots.component.ts index b24e72b8..18dd2666 100644 --- a/src/app/modules/organizations/columns/import-settings/import-settings-taxlots.component.ts +++ b/src/app/modules/organizations/columns/import-settings/import-settings-taxlots.component.ts @@ -1,17 +1,15 @@ import { Component, type OnInit, ViewEncapsulation } from '@angular/core' import { ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatIconModule } from '@angular/material/icon' -import { MatSelectModule } from '@angular/material/select' import { map, takeUntil } from 'rxjs' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { ImportSettingsComponent } from './import-settings.component' @Component({ selector: 'seed-organizations-column-import-settings-taxlots', templateUrl: './import-settings.component.html', encapsulation: ViewEncapsulation.None, - imports: [SharedImports, MatButtonModule, MatIconModule, MatSelectModule, ReactiveFormsModule], + imports: [SharedImports, MaterialImports, ReactiveFormsModule], }) export class ImportSettingsTaxLotsComponent extends ImportSettingsComponent implements OnInit { type = 'TaxLotState' diff --git a/src/app/modules/organizations/columns/import-settings/import-settings.component.ts b/src/app/modules/organizations/columns/import-settings/import-settings.component.ts index 36e72687..5e18a3c3 100644 --- a/src/app/modules/organizations/columns/import-settings/import-settings.component.ts +++ b/src/app/modules/organizations/columns/import-settings/import-settings.component.ts @@ -3,8 +3,8 @@ import { FormControl, FormGroup, Validators } from '@angular/forms' import { MatDialog } from '@angular/material/dialog' import { Router } from '@angular/router' import { Subject, takeUntil } from 'rxjs' -import { type Column, ColumnService } from '@seed/api/column' -import type { ProgressResponse } from '@seed/api/progress' +import type { Column, ProgressResponse } from '@seed/api' +import { ColumnService } from '@seed/api' import { SharedImports } from '@seed/directives' import { naturalSort } from '@seed/utils' import { UpdateModalComponent } from '../modal/update-modal.component' diff --git a/src/app/modules/organizations/columns/list/help.component.ts b/src/app/modules/organizations/columns/list/help.component.ts index 28033fec..d0d38663 100644 --- a/src/app/modules/organizations/columns/list/help.component.ts +++ b/src/app/modules/organizations/columns/list/help.component.ts @@ -1,11 +1,11 @@ import { Component, ViewEncapsulation } from '@angular/core' -import { MatIcon } from '@angular/material/icon' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-organizations-column-list-help', templateUrl: './help.component.html', encapsulation: ViewEncapsulation.None, - imports: [SharedImports, MatIcon], + imports: [SharedImports, MaterialImports], }) export class ColumnListHelpComponent {} diff --git a/src/app/modules/organizations/columns/list/list-properties.component.ts b/src/app/modules/organizations/columns/list/list-properties.component.ts index 3e4faf00..dd52e570 100644 --- a/src/app/modules/organizations/columns/list/list-properties.component.ts +++ b/src/app/modules/organizations/columns/list/list-properties.component.ts @@ -1,13 +1,9 @@ import { type AfterViewInit, Component, type OnDestroy, type OnInit, ViewChild, ViewEncapsulation } from '@angular/core' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIcon } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' import { MatPaginator } from '@angular/material/paginator' -import { MatTableModule } from '@angular/material/table' -import { MatTooltip } from '@angular/material/tooltip' import { combineLatest, takeUntil } from 'rxjs' import { TableContainerComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { naturalSort } from '@seed/utils' import { ListComponent } from './list.component' @@ -15,7 +11,7 @@ import { ListComponent } from './list.component' selector: 'seed-organizations-columns-list-properties', templateUrl: './list.component.html', encapsulation: ViewEncapsulation.None, - imports: [SharedImports, MatFormFieldModule, MatIcon, MatInputModule, MatPaginator, MatTableModule, MatTooltip, TableContainerComponent], + imports: [SharedImports, MaterialImports, TableContainerComponent], }) export class ListPropertiesComponent extends ListComponent implements AfterViewInit, OnDestroy, OnInit { type = 'properties' diff --git a/src/app/modules/organizations/columns/list/list-taxlots.component.ts b/src/app/modules/organizations/columns/list/list-taxlots.component.ts index c3e57dfe..7e70de55 100644 --- a/src/app/modules/organizations/columns/list/list-taxlots.component.ts +++ b/src/app/modules/organizations/columns/list/list-taxlots.component.ts @@ -1,13 +1,9 @@ import { type AfterViewInit, Component, type OnDestroy, type OnInit, ViewChild, ViewEncapsulation } from '@angular/core' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIcon } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' import { MatPaginator } from '@angular/material/paginator' -import { MatTableModule } from '@angular/material/table' -import { MatTooltip } from '@angular/material/tooltip' import { combineLatest, takeUntil } from 'rxjs' import { TableContainerComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { naturalSort } from '@seed/utils' import { ListComponent } from './list.component' @@ -15,7 +11,7 @@ import { ListComponent } from './list.component' selector: 'seed-organizations-columns-list-taxlots', templateUrl: './list.component.html', encapsulation: ViewEncapsulation.None, - imports: [SharedImports, MatFormFieldModule, MatIcon, MatInputModule, MatPaginator, MatTableModule, MatTooltip, TableContainerComponent], + imports: [SharedImports, MaterialImports, TableContainerComponent], }) export class ListTaxLotComponent extends ListComponent implements AfterViewInit, OnDestroy, OnInit { type = 'taxlots' diff --git a/src/app/modules/organizations/columns/list/list.component.ts b/src/app/modules/organizations/columns/list/list.component.ts index 034977c3..e3bd84cd 100644 --- a/src/app/modules/organizations/columns/list/list.component.ts +++ b/src/app/modules/organizations/columns/list/list.component.ts @@ -2,8 +2,8 @@ import { Component, inject, type OnDestroy, ViewEncapsulation } from '@angular/c import { MatDialog } from '@angular/material/dialog' import { MatTableDataSource } from '@angular/material/table' import { Subject, takeUntil, tap } from 'rxjs' -import { type Column, ColumnService } from '@seed/api/column' -import { type Organization, OrganizationService } from '@seed/api/organization' +import type { Column, Organization } from '@seed/api' +import { ColumnService, OrganizationService } from '@seed/api' import { SharedImports } from '@seed/directives' import { DeleteModalComponent } from './modal/delete-modal.component' import { FormModalComponent } from './modal/form-modal.component' diff --git a/src/app/modules/organizations/columns/list/modal/delete-modal.component.ts b/src/app/modules/organizations/columns/list/modal/delete-modal.component.ts index fdfd415c..57844b80 100644 --- a/src/app/modules/organizations/columns/list/modal/delete-modal.component.ts +++ b/src/app/modules/organizations/columns/list/modal/delete-modal.component.ts @@ -1,23 +1,20 @@ import { CommonModule } from '@angular/common' import type { OnDestroy } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatProgressBarModule } from '@angular/material/progress-bar' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { Subject, switchMap, takeUntil, tap } from 'rxjs' -import { type Column, ColumnService } from '@seed/api/column' -import type { ProgressResponse } from '@seed/api/progress' +import type { Column, ProgressResponse } from '@seed/api' +import { ColumnService } from '@seed/api' import { AlertComponent } from '@seed/components' -import { UploaderService } from '@seed/services/uploader/uploader.service' -import type { ProgressBarObj } from '@seed/services/uploader/uploader.types' +import { MaterialImports } from '@seed/materials' +import type { ProgressBarObj } from '@seed/services' +import { UploaderService } from '@seed/services' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' @Component({ selector: 'seed-cycles-delete-modal', templateUrl: './delete-modal.component.html', - imports: [AlertComponent, CommonModule, MatButtonModule, MatDialogModule, MatDividerModule, MatIconModule, MatProgressBarModule], + imports: [AlertComponent, CommonModule, MaterialImports], }) export class DeleteModalComponent implements OnDestroy { private _columnService = inject(ColumnService) diff --git a/src/app/modules/organizations/columns/list/modal/form-modal.component.ts b/src/app/modules/organizations/columns/list/modal/form-modal.component.ts index 8fd0668e..02714708 100644 --- a/src/app/modules/organizations/columns/list/modal/form-modal.component.ts +++ b/src/app/modules/organizations/columns/list/modal/form-modal.component.ts @@ -2,21 +2,14 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatProgressBarModule } from '@angular/material/progress-bar' -import { MatSelectModule } from '@angular/material/select' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { type Observable, Subject, switchMap, takeUntil, tap } from 'rxjs' -import { type Column, ColumnService } from '@seed/api/column' -import { type Organization } from '@seed/api/organization' -import type { ProgressResponse } from '@seed/api/progress' +import type { Column, Organization, ProgressResponse } from '@seed/api' +import { ColumnService } from '@seed/api' import { SharedImports } from '@seed/directives' -import { UploaderService } from '@seed/services/uploader/uploader.service' -import type { ProgressBarObj } from '@seed/services/uploader/uploader.types' +import { MaterialImports } from '@seed/materials' +import type { ProgressBarObj } from '@seed/services' +import { UploaderService } from '@seed/services' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' @Component({ @@ -24,15 +17,8 @@ import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' templateUrl: './form-modal.component.html', imports: [ CommonModule, - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatFormFieldModule, FormsModule, - MatInputModule, - MatIconModule, - MatProgressBarModule, - MatSelectModule, + MaterialImports, ReactiveFormsModule, SharedImports, ], diff --git a/src/app/modules/organizations/columns/mappings/action-buttons.component.ts b/src/app/modules/organizations/columns/mappings/action-buttons.component.ts index e0411d0d..31002ad2 100644 --- a/src/app/modules/organizations/columns/mappings/action-buttons.component.ts +++ b/src/app/modules/organizations/columns/mappings/action-buttons.component.ts @@ -1,15 +1,14 @@ import { ChangeDetectionStrategy, Component } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatIconModule } from '@angular/material/icon' import type { ICellRenderer, ICellRendererParams, IRowNode } from 'ag-grid-community' -import type { ColumnMapping } from '@seed/api/column_mapping_profile' +import type { ColumnMapping } from '@seed/api' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-organizations-column-mappings-delete-action', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, templateUrl: './action-buttons.component.html', - imports: [MatButtonModule, MatIconModule], + imports: [MaterialImports], }) export class ActionButtonsComponent implements ICellRenderer { data: ColumnMapping diff --git a/src/app/modules/organizations/columns/mappings/help.component.ts b/src/app/modules/organizations/columns/mappings/help.component.ts index 9e3bc3f4..5ae2543e 100644 --- a/src/app/modules/organizations/columns/mappings/help.component.ts +++ b/src/app/modules/organizations/columns/mappings/help.component.ts @@ -1,11 +1,11 @@ import { Component, ViewEncapsulation } from '@angular/core' -import { MatIcon } from '@angular/material/icon' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-organizations-column-mappings-help', templateUrl: './help.component.html', encapsulation: ViewEncapsulation.None, - imports: [SharedImports, MatIcon], + imports: [SharedImports, MaterialImports], }) export class ColumnMappingHelpComponent {} diff --git a/src/app/modules/organizations/columns/mappings/mappings.component.ts b/src/app/modules/organizations/columns/mappings/mappings.component.ts index dd50c59a..fe2168bc 100644 --- a/src/app/modules/organizations/columns/mappings/mappings.component.ts +++ b/src/app/modules/organizations/columns/mappings/mappings.component.ts @@ -1,12 +1,7 @@ import { CommonModule } from '@angular/common' import { Component, HostListener, inject, type OnDestroy, type OnInit, ViewEncapsulation } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' import { MatDialog } from '@angular/material/dialog' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIcon } from '@angular/material/icon' -import { MatSelectModule } from '@angular/material/select' -import { MatTooltipModule } from '@angular/material/tooltip' import { AgGridAngular } from 'ag-grid-angular' import type { CellClassParams, @@ -19,14 +14,14 @@ import type { IRowNode, ValueFormatterParams, } from 'ag-grid-community' -import { AllCommunityModule, ModuleRegistry } from 'ag-grid-community' import { saveAs } from 'file-saver' import { combineLatest, filter, type Observable, Subject, switchMap, takeUntil, tap } from 'rxjs' -import { type Column, MappableColumnService } from '@seed/api/column' -import { type ColumnMapping, type ColumnMappingProfile, ColumnMappingProfileService } from '@seed/api/column_mapping_profile/' +import type { Column, ColumnMapping, ColumnMappingProfile } from '@seed/api' +import { ColumnMappingProfileService, MappableColumnService } from '@seed/api' import { DeleteModalComponent } from '@seed/components' import { SharedImports } from '@seed/directives' import { type ComponentCanDeactivate } from '@seed/guards/pending-changes.guard' +import { MaterialImports } from '@seed/materials' import { ConfigService } from '@seed/services' import { naturalSort } from '@seed/utils' import { ActionButtonsComponent } from './action-buttons.component' @@ -35,8 +30,6 @@ import { CreateModalComponent } from './modal/create-modal.component' import { EditModalComponent } from './modal/edit-modal.component' import { RenameModalComponent } from './modal/rename-modal.component' -ModuleRegistry.registerModules([AllCommunityModule]) - type DataType = { id: string; value: string; @@ -55,12 +48,8 @@ type RenderMapping = ColumnMapping & { AgGridAngular, CommonModule, SharedImports, - MatButtonModule, - MatIcon, - MatFormFieldModule, + MaterialImports, ReactiveFormsModule, - MatSelectModule, - MatTooltipModule, ], }) export class MappingsComponent implements ComponentCanDeactivate, OnDestroy, OnInit { diff --git a/src/app/modules/organizations/columns/mappings/modal/copy-modal.component.ts b/src/app/modules/organizations/columns/mappings/modal/copy-modal.component.ts index 59b66724..2d923936 100644 --- a/src/app/modules/organizations/columns/mappings/modal/copy-modal.component.ts +++ b/src/app/modules/organizations/columns/mappings/modal/copy-modal.component.ts @@ -1,19 +1,15 @@ import type { OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { map } from 'rxjs' -import { type ColumnMapping, type ColumnMappingProfile, ColumnMappingProfileService } from '@seed/api/column_mapping_profile' +import { type ColumnMapping, type ColumnMappingProfile, ColumnMappingProfileService } from '@seed/api' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-column-mappings-copy-modal', templateUrl: './copy-modal.component.html', - imports: [MatButtonModule, MatDialogModule, MatDividerModule, MatFormFieldModule, MatIconModule, MatInputModule, ReactiveFormsModule], + imports: [MaterialImports, ReactiveFormsModule], }) export class CopyModalComponent implements OnInit { private _columnMappingProfileService = inject(ColumnMappingProfileService) diff --git a/src/app/modules/organizations/columns/mappings/modal/create-modal.component.ts b/src/app/modules/organizations/columns/mappings/modal/create-modal.component.ts index 9f5da071..27438770 100644 --- a/src/app/modules/organizations/columns/mappings/modal/create-modal.component.ts +++ b/src/app/modules/organizations/columns/mappings/modal/create-modal.component.ts @@ -1,30 +1,19 @@ import type { OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormArray, FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatSelectModule } from '@angular/material/select' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { map } from 'rxjs' -import { type Column } from '@seed/api/column' -import { type ColumnMapping, type ColumnMappingProfile, ColumnMappingProfileService } from '@seed/api/column_mapping_profile' +import type { Column, ColumnMapping, ColumnMappingProfile } from '@seed/api' +import { ColumnMappingProfileService } from '@seed/api' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { SeedHeaderAutocompleteComponent } from './seed-header-autocomplete.component' @Component({ selector: 'seed-column-mappings-create-modal', templateUrl: './create-modal.component.html', imports: [ - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatSelectModule, + MaterialImports, ReactiveFormsModule, SharedImports, SeedHeaderAutocompleteComponent, diff --git a/src/app/modules/organizations/columns/mappings/modal/edit-modal.component.ts b/src/app/modules/organizations/columns/mappings/modal/edit-modal.component.ts index 072db17e..e9d78aca 100644 --- a/src/app/modules/organizations/columns/mappings/modal/edit-modal.component.ts +++ b/src/app/modules/organizations/columns/mappings/modal/edit-modal.component.ts @@ -1,16 +1,9 @@ import type { OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatSelectModule } from '@angular/material/select' -import { MatSlideToggleModule } from '@angular/material/slide-toggle' -import { type Column } from '@seed/api/column' -import { type ColumnMapping, type ColumnMappingProfile } from '@seed/api/column_mapping_profile' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' +import type { Column, ColumnMapping, ColumnMappingProfile } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { SEEDValidators } from '@seed/validators' import { SeedHeaderAutocompleteComponent } from './seed-header-autocomplete.component' @@ -18,14 +11,7 @@ import { SeedHeaderAutocompleteComponent } from './seed-header-autocomplete.comp selector: 'seed-column-mappings-edit-modal', templateUrl: './edit-modal.component.html', imports: [ - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatSelectModule, - MatSlideToggleModule, + MaterialImports, ReactiveFormsModule, SeedHeaderAutocompleteComponent, ], diff --git a/src/app/modules/organizations/columns/mappings/modal/rename-modal.component.ts b/src/app/modules/organizations/columns/mappings/modal/rename-modal.component.ts index 95f72bfb..e005f74a 100644 --- a/src/app/modules/organizations/columns/mappings/modal/rename-modal.component.ts +++ b/src/app/modules/organizations/columns/mappings/modal/rename-modal.component.ts @@ -1,18 +1,14 @@ import type { OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { type ColumnMappingProfile, ColumnMappingProfileService } from '@seed/api/column_mapping_profile' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' +import { type ColumnMappingProfile, ColumnMappingProfileService } from '@seed/api' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-column-mappings-rename-modal', templateUrl: './rename-modal.component.html', - imports: [MatButtonModule, MatDialogModule, MatDividerModule, MatFormFieldModule, MatIconModule, MatInputModule, ReactiveFormsModule], + imports: [MaterialImports, ReactiveFormsModule], }) export class RenameModalComponent implements OnInit { private _columnMappingProfileService = inject(ColumnMappingProfileService) diff --git a/src/app/modules/organizations/columns/mappings/modal/seed-header-autocomplete.component.ts b/src/app/modules/organizations/columns/mappings/modal/seed-header-autocomplete.component.ts index d60a4e04..95c223bb 100644 --- a/src/app/modules/organizations/columns/mappings/modal/seed-header-autocomplete.component.ts +++ b/src/app/modules/organizations/columns/mappings/modal/seed-header-autocomplete.component.ts @@ -2,16 +2,15 @@ import { CommonModule } from '@angular/common' import { Component, Input, type OnChanges, type OnInit, type SimpleChanges } from '@angular/core' import { forwardRef } from '@angular/core' import { type FormControl, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms' -import { MatAutocompleteModule } from '@angular/material/autocomplete' -import { MatInputModule } from '@angular/material/input' import { map, type Observable, startWith } from 'rxjs' -import { type Column } from '@seed/api/column' +import { type Column } from '@seed/api' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-header-autocomplete', templateUrl: './seed-header-autocomplete.component.html', - imports: [CommonModule, SharedImports, MatAutocompleteModule, MatInputModule, ReactiveFormsModule], + imports: [CommonModule, SharedImports, MaterialImports, ReactiveFormsModule], providers: [ { provide: NG_VALUE_ACCESSOR, diff --git a/src/app/modules/organizations/columns/matching-criteria/criteria-list.component.ts b/src/app/modules/organizations/columns/matching-criteria/criteria-list.component.ts index fdd52ee7..4311693a 100644 --- a/src/app/modules/organizations/columns/matching-criteria/criteria-list.component.ts +++ b/src/app/modules/organizations/columns/matching-criteria/criteria-list.component.ts @@ -1,14 +1,13 @@ import { Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatIcon } from '@angular/material/icon' -import { type Column } from '@seed/api/column' +import { type Column } from '@seed/api' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-matching-criteria-list', templateUrl: './criteria-list.component.html', encapsulation: ViewEncapsulation.None, - imports: [SharedImports, MatButtonModule, MatIcon], + imports: [SharedImports, MaterialImports], }) export class CriteriaListComponent { @Input() columns: Column[] diff --git a/src/app/modules/organizations/columns/matching-criteria/help.component.ts b/src/app/modules/organizations/columns/matching-criteria/help.component.ts index 5bd30ca4..25b67f85 100644 --- a/src/app/modules/organizations/columns/matching-criteria/help.component.ts +++ b/src/app/modules/organizations/columns/matching-criteria/help.component.ts @@ -1,11 +1,11 @@ import { Component, ViewEncapsulation } from '@angular/core' -import { MatIcon } from '@angular/material/icon' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-organizations-column-matching-criteria-help', templateUrl: './help.component.html', encapsulation: ViewEncapsulation.None, - imports: [SharedImports, MatIcon], + imports: [SharedImports, MaterialImports], }) export class ColumnMatchingCriteriaHelpComponent {} diff --git a/src/app/modules/organizations/columns/matching-criteria/matching-criteria-properties.component.ts b/src/app/modules/organizations/columns/matching-criteria/matching-criteria-properties.component.ts index 63c33268..cca737d5 100644 --- a/src/app/modules/organizations/columns/matching-criteria/matching-criteria-properties.component.ts +++ b/src/app/modules/organizations/columns/matching-criteria/matching-criteria-properties.component.ts @@ -1,16 +1,10 @@ import { CommonModule } from '@angular/common' import { Component, type OnInit, ViewEncapsulation } from '@angular/core' import { FormsModule, ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatSelectModule } from '@angular/material/select' -import { MatTooltipModule } from '@angular/material/tooltip' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import { combineLatest, takeUntil } from 'rxjs' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { CriteriaListComponent } from './criteria-list.component' import { MatchingCriteriaComponent } from './matching-criteria.component' @@ -20,18 +14,11 @@ import { MatchingCriteriaComponent } from './matching-criteria.component' encapsulation: ViewEncapsulation.None, imports: [ AgGridAngular, - AgGridModule, CommonModule, CriteriaListComponent, FormsModule, - MatButtonModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, + MaterialImports, SharedImports, - MatSelectModule, - MatTooltipModule, ReactiveFormsModule, ], }) diff --git a/src/app/modules/organizations/columns/matching-criteria/matching-criteria-taxlots.component.ts b/src/app/modules/organizations/columns/matching-criteria/matching-criteria-taxlots.component.ts index bb8d67b0..a12d488b 100644 --- a/src/app/modules/organizations/columns/matching-criteria/matching-criteria-taxlots.component.ts +++ b/src/app/modules/organizations/columns/matching-criteria/matching-criteria-taxlots.component.ts @@ -1,16 +1,10 @@ import { CommonModule } from '@angular/common' import { Component, type OnInit, ViewEncapsulation } from '@angular/core' import { FormsModule, ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatSelectModule } from '@angular/material/select' -import { MatTooltipModule } from '@angular/material/tooltip' -import { AgGridAngular, AgGridModule } from 'ag-grid-angular' +import { AgGridAngular } from 'ag-grid-angular' import { combineLatest, takeUntil } from 'rxjs' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { CriteriaListComponent } from './criteria-list.component' import { MatchingCriteriaComponent } from './matching-criteria.component' @@ -20,19 +14,12 @@ import { MatchingCriteriaComponent } from './matching-criteria.component' encapsulation: ViewEncapsulation.None, imports: [ AgGridAngular, - AgGridModule, CommonModule, CriteriaListComponent, FormsModule, - MatButtonModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, + MaterialImports, SharedImports, ReactiveFormsModule, - MatSelectModule, - MatTooltipModule, ], }) export class MatchingCriteriaTaxlotsComponent extends MatchingCriteriaComponent implements OnInit { diff --git a/src/app/modules/organizations/columns/matching-criteria/matching-criteria.component.ts b/src/app/modules/organizations/columns/matching-criteria/matching-criteria.component.ts index f08495d5..af00b0e4 100644 --- a/src/app/modules/organizations/columns/matching-criteria/matching-criteria.component.ts +++ b/src/app/modules/organizations/columns/matching-criteria/matching-criteria.component.ts @@ -4,8 +4,7 @@ import { FormControl, FormGroup } from '@angular/forms' import { MatDialog } from '@angular/material/dialog' import type { CellClickedEvent, ColDef, GridApi, GridReadyEvent } from 'ag-grid-community' import { filter, Subject, takeUntil, tap } from 'rxjs' -import { type Column, ColumnService } from '@seed/api/column' -import { type Organization, OrganizationService } from '@seed/api/organization' +import { type Column, ColumnService, type Organization, OrganizationService } from '@seed/api' import { SharedImports } from '@seed/directives' import { ConfigService } from '@seed/services' import { naturalSort } from '@seed/utils' diff --git a/src/app/modules/organizations/columns/matching-criteria/modal/confirm-modal.component.ts b/src/app/modules/organizations/columns/matching-criteria/modal/confirm-modal.component.ts index 41351e95..1690fffc 100644 --- a/src/app/modules/organizations/columns/matching-criteria/modal/confirm-modal.component.ts +++ b/src/app/modules/organizations/columns/matching-criteria/modal/confirm-modal.component.ts @@ -1,22 +1,19 @@ import { CommonModule } from '@angular/common' import type { OnDestroy } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatProgressBarModule } from '@angular/material/progress-bar' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { catchError, EMPTY, Subject, switchMap, takeUntil, tap } from 'rxjs' -import { type Column, ColumnService } from '@seed/api/column' -import { type ProgressResponse } from '@seed/api/progress' +import type { Column, ProgressResponse } from '@seed/api' +import { ColumnService } from '@seed/api' import { AlertComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { type ProgressBarObj, UploaderService } from '@seed/services/uploader' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' @Component({ selector: 'seed-columns-matching-criteria-confirm-modal', templateUrl: './confirm-modal.component.html', - imports: [AlertComponent, CommonModule, MatButtonModule, MatDialogModule, MatDividerModule, MatIconModule, MatProgressBarModule], + imports: [AlertComponent, CommonModule, MaterialImports], }) export class ConfirmModalComponent implements OnDestroy { private _columnService = inject(ColumnService) diff --git a/src/app/modules/organizations/columns/modal/update-modal.component.ts b/src/app/modules/organizations/columns/modal/update-modal.component.ts index 80aea911..98a2dec4 100644 --- a/src/app/modules/organizations/columns/modal/update-modal.component.ts +++ b/src/app/modules/organizations/columns/modal/update-modal.component.ts @@ -1,12 +1,11 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatProgressBarModule } from '@angular/material/progress-bar' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { Subject, takeUntil } from 'rxjs' -import type { ProgressResponse } from '@seed/api/progress' +import type { ProgressResponse } from '@seed/api' import { AlertComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { UploaderService } from '@seed/services/uploader/uploader.service' import type { ProgressBarObj } from '@seed/services/uploader/uploader.types' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' @@ -14,7 +13,7 @@ import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' @Component({ selector: 'seed-columns-update-modal', templateUrl: './update-modal.component.html', - imports: [AlertComponent, CommonModule, MatButtonModule, MatDialogModule, MatProgressBarModule], + imports: [AlertComponent, CommonModule, MaterialImports], }) export class UpdateModalComponent implements OnDestroy, OnInit { private _uploaderService = inject(UploaderService) diff --git a/src/app/modules/organizations/cycles/cycles.component.ts b/src/app/modules/organizations/cycles/cycles.component.ts index 9ce36022..4b235e81 100644 --- a/src/app/modules/organizations/cycles/cycles.component.ts +++ b/src/app/modules/organizations/cycles/cycles.component.ts @@ -1,20 +1,19 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatDialog, MatDialogModule } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' -import { MatTableDataSource, MatTableModule } from '@angular/material/table' +import { MatDialog } from '@angular/material/dialog' +import { MatTableDataSource } from '@angular/material/table' import { Subject, takeUntil } from 'rxjs' -import type { Cycle } from '@seed/api/cycle' -import { CycleService } from '@seed/api/cycle/cycle.service' +import type { Cycle } from '@seed/api' +import { CycleService } from '@seed/api' import { PageComponent, TableContainerComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { DeleteModalComponent } from './modal/delete-modal.component' import { FormModalComponent } from './modal/form-modal.component' @Component({ selector: 'seed-organizations-cycles', templateUrl: './cycles.component.html', - imports: [MatButtonModule, MatDialogModule, MatIconModule, MatTableModule, PageComponent, TableContainerComponent], + imports: [MaterialImports, PageComponent, TableContainerComponent], }) export class CyclesComponent implements OnDestroy, OnInit { private _cycleService = inject(CycleService) diff --git a/src/app/modules/organizations/cycles/modal/delete-modal.component.ts b/src/app/modules/organizations/cycles/modal/delete-modal.component.ts index 3e691d1f..2f6ec5d7 100644 --- a/src/app/modules/organizations/cycles/modal/delete-modal.component.ts +++ b/src/app/modules/organizations/cycles/modal/delete-modal.component.ts @@ -1,22 +1,19 @@ import type { OnDestroy } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' -import { MatProgressBarModule } from '@angular/material/progress-bar' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { Subject, switchMap, takeUntil, tap } from 'rxjs' -import type { Cycle } from '@seed/api/cycle' -import { CycleService } from '@seed/api/cycle/cycle.service' +import type { Cycle } from '@seed/api' +import { CycleService } from '@seed/api' import { AlertComponent } from '@seed/components' -import { UploaderService } from '@seed/services/uploader/uploader.service' -import type { ProgressBarObj } from '@seed/services/uploader/uploader.types' +import { MaterialImports } from '@seed/materials' +import type { ProgressBarObj } from '@seed/services' +import { UploaderService } from '@seed/services' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' @Component({ selector: 'seed-cycles-delete-modal', templateUrl: './delete-modal.component.html', - imports: [AlertComponent, MatButtonModule, MatDialogModule, MatDividerModule, MatIconModule, MatProgressBarModule], + imports: [AlertComponent, MaterialImports], }) export class DeleteModalComponent implements OnDestroy { private _cycleService = inject(CycleService) diff --git a/src/app/modules/organizations/cycles/modal/form-modal.component.ts b/src/app/modules/organizations/cycles/modal/form-modal.component.ts index 91f844ed..82fc5095 100644 --- a/src/app/modules/organizations/cycles/modal/form-modal.component.ts +++ b/src/app/modules/organizations/cycles/modal/form-modal.component.ts @@ -2,17 +2,12 @@ import { DatePipe } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DATE_FORMATS, MatNativeDateModule } from '@angular/material/core' -import { MatDatepickerModule } from '@angular/material/datepicker' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' +import { MAT_DATE_FORMATS } from '@angular/material/core' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { Subject, takeUntil, tap } from 'rxjs' -import type { Cycle } from '@seed/api/cycle' -import { CycleService } from '@seed/api/cycle/cycle.service' +import type { Cycle } from '@seed/api' +import { CycleService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { SEEDValidators } from '@seed/validators' // configure the datepicker to display 01/01/2000 instead of January 1, 2000 @@ -34,14 +29,7 @@ export const MY_DATE_FORMATS = { providers: [DatePipe, { provide: MAT_DATE_FORMATS, useValue: MY_DATE_FORMATS }], imports: [ FormsModule, - MatButtonModule, - MatDatepickerModule, - MatDialogModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatNativeDateModule, + MaterialImports, ReactiveFormsModule, ], }) diff --git a/src/app/modules/organizations/data-quality/data-quality.component.ts b/src/app/modules/organizations/data-quality/data-quality.component.ts index 84c7586c..e4a8cd55 100644 --- a/src/app/modules/organizations/data-quality/data-quality.component.ts +++ b/src/app/modules/organizations/data-quality/data-quality.component.ts @@ -1,19 +1,14 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatDialog, MatDialogModule } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' -import { MatSlideToggleModule } from '@angular/material/slide-toggle' -import { MatTableModule } from '@angular/material/table' +import { MatDialog } from '@angular/material/dialog' import { ActivatedRoute, Router } from '@angular/router' import { combineLatest, map, Subject, takeUntil, tap } from 'rxjs' -import { ColumnService } from '@seed/api/column' -import type { Rule } from '@seed/api/data-quality' -import { DataQualityService } from '@seed/api/data-quality' -import { OrganizationService } from '@seed/api/organization' +import type { Rule } from '@seed/api' +import { ColumnService, DataQualityService, OrganizationService } from '@seed/api' import { InventoryTabComponent, PageComponent, TableContainerComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { naturalSort } from '@seed/utils' import type { InventoryTypeGoal } from 'app/modules/inventory/inventory.types' import { DataQualityGoalTableComponent } from './goal/goal-table.component' @@ -28,11 +23,7 @@ import { FormModalComponent } from './inventory/modal/form-modal.component' DataQualityInventoryTableComponent, FormsModule, InventoryTabComponent, - MatButtonModule, - MatDialogModule, - MatIconModule, - MatSlideToggleModule, - MatTableModule, + MaterialImports, PageComponent, SharedImports, TableContainerComponent, diff --git a/src/app/modules/organizations/data-quality/data-quality.utils.ts b/src/app/modules/organizations/data-quality/data-quality.utils.ts index f4bc5467..23e1cbbd 100644 --- a/src/app/modules/organizations/data-quality/data-quality.utils.ts +++ b/src/app/modules/organizations/data-quality/data-quality.utils.ts @@ -1,4 +1,4 @@ -import type { Rule, UnitSymbols } from '@seed/api/data-quality' +import type { Rule, UnitSymbols } from '@seed/api' export class DataQualityUtils { private static _unitLookup = { diff --git a/src/app/modules/organizations/data-quality/data-quality.validator.ts b/src/app/modules/organizations/data-quality/data-quality.validator.ts index ee25a18b..55aa55b7 100644 --- a/src/app/modules/organizations/data-quality/data-quality.validator.ts +++ b/src/app/modules/organizations/data-quality/data-quality.validator.ts @@ -1,7 +1,6 @@ import { Injectable } from '@angular/core' import { type ValidationErrors, type ValidatorFn } from '@angular/forms' -import type { DataQualityFormGroup } from '@seed/api/data-quality' -import type { Rule } from '@seed/api/data-quality/data-quality.types' +import type { DataQualityFormGroup, Rule } from '@seed/api' import { DATATYPE_LOOKUP } from './constants' @Injectable({ providedIn: 'root' }) diff --git a/src/app/modules/organizations/data-quality/goal/goal-table.component.ts b/src/app/modules/organizations/data-quality/goal/goal-table.component.ts index d2abb24e..aeb8f7e6 100644 --- a/src/app/modules/organizations/data-quality/goal/goal-table.component.ts +++ b/src/app/modules/organizations/data-quality/goal/goal-table.component.ts @@ -2,17 +2,14 @@ import { CommonModule } from '@angular/common' import type { OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core' import { Component, EventEmitter, inject, Input, Output } from '@angular/core' import { FormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' import type { MatDialogRef } from '@angular/material/dialog' -import { MatDialog, MatDialogModule } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' -import { MatSlideToggleModule } from '@angular/material/slide-toggle' -import { MatTableDataSource, MatTableModule } from '@angular/material/table' +import { MatDialog } from '@angular/material/dialog' +import { MatTableDataSource } from '@angular/material/table' import { combineLatest, filter, Subject, switchMap, takeUntil, tap } from 'rxjs' -import { DataQualityService, type Rule } from '@seed/api/data-quality' -import { LabelService } from '@seed/api/label' -import { OrganizationService } from '@seed/api/organization' +import type { Rule } from '@seed/api' +import { DataQualityService, LabelService, OrganizationService } from '@seed/api' import { DeleteModalComponent, LabelComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { DataQualityUtils } from '../data-quality.utils' import { FormModalComponent } from './modal/form-modal.component' @@ -23,11 +20,7 @@ import { FormModalComponent } from './modal/form-modal.component' CommonModule, FormsModule, LabelComponent, - MatButtonModule, - MatDialogModule, - MatIconModule, - MatSlideToggleModule, - MatTableModule, + MaterialImports, ], }) export class DataQualityGoalTableComponent implements OnChanges, OnDestroy, OnInit { diff --git a/src/app/modules/organizations/data-quality/goal/modal/form-modal.component.ts b/src/app/modules/organizations/data-quality/goal/modal/form-modal.component.ts index 8674e514..f60de713 100644 --- a/src/app/modules/organizations/data-quality/goal/modal/form-modal.component.ts +++ b/src/app/modules/organizations/data-quality/goal/modal/form-modal.component.ts @@ -2,21 +2,12 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatOptionModule } from '@angular/material/core' -import { MatDatepickerModule } from '@angular/material/datepicker' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatSelectModule } from '@angular/material/select' -import { MatSlideToggleModule } from '@angular/material/slide-toggle' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { type Observable, Subject } from 'rxjs' -import type { Column } from '@seed/api/column' -import { type DataQualityFormGroup, DataQualityService, type Rule } from '@seed/api/data-quality' -import { type Label, LabelService } from '@seed/api/label' +import type { Column, DataQualityFormGroup, Label, Rule } from '@seed/api' +import { DataQualityService, LabelService } from '@seed/api' import { LabelComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { DATATYPE_LOOKUP, SEVERITIES } from '../../constants' import { DataQualityValidator } from '../../data-quality.validator' @@ -26,16 +17,7 @@ import { DataQualityValidator } from '../../data-quality.validator' imports: [ CommonModule, FormsModule, - MatButtonModule, - MatDatepickerModule, - MatDialogModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatOptionModule, - MatSelectModule, - MatSlideToggleModule, + MaterialImports, LabelComponent, ReactiveFormsModule, ], diff --git a/src/app/modules/organizations/data-quality/inventory/inventory-table.component.ts b/src/app/modules/organizations/data-quality/inventory/inventory-table.component.ts index fe2e7f2f..904db4cd 100644 --- a/src/app/modules/organizations/data-quality/inventory/inventory-table.component.ts +++ b/src/app/modules/organizations/data-quality/inventory/inventory-table.component.ts @@ -2,21 +2,16 @@ import { CommonModule } from '@angular/common' import type { AfterViewInit, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core' import { Component, EventEmitter, inject, Input, Output, ViewChild } from '@angular/core' import { FormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' import type { MatDialogRef } from '@angular/material/dialog' -import { MatDialog, MatDialogModule } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' -import { MatPaginator, MatPaginatorModule } from '@angular/material/paginator' -import { MatSlideToggleModule } from '@angular/material/slide-toggle' -import { MatTableDataSource, MatTableModule } from '@angular/material/table' -import { MatTooltipModule } from '@angular/material/tooltip' +import { MatDialog } from '@angular/material/dialog' +import { MatPaginator } from '@angular/material/paginator' +import { MatTableDataSource } from '@angular/material/table' import { ActivatedRoute } from '@angular/router' import { combineLatest, filter, Subject, switchMap, takeUntil, tap } from 'rxjs' -import { ColumnService } from '@seed/api/column' -import { DataQualityService, type Rule } from '@seed/api/data-quality' -import { LabelService } from '@seed/api/label' -import { OrganizationService } from '@seed/api/organization' +import type { Rule } from '@seed/api' +import { ColumnService, DataQualityService, LabelService, OrganizationService } from '@seed/api' import { DeleteModalComponent, LabelComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import type { InventoryTypeGoal } from 'app/modules/inventory/inventory.types' import { DataQualityUtils } from '../data-quality.utils' import { FormModalComponent } from './modal/form-modal.component' @@ -28,13 +23,7 @@ import { FormModalComponent } from './modal/form-modal.component' CommonModule, FormsModule, LabelComponent, - MatButtonModule, - MatDialogModule, - MatIconModule, - MatPaginatorModule, - MatSlideToggleModule, - MatTableModule, - MatTooltipModule, + MaterialImports, ], }) export class DataQualityInventoryTableComponent implements AfterViewInit, OnChanges, OnDestroy, OnInit { diff --git a/src/app/modules/organizations/data-quality/inventory/modal/form-modal.component.ts b/src/app/modules/organizations/data-quality/inventory/modal/form-modal.component.ts index 8aba5b50..3fb6ba59 100644 --- a/src/app/modules/organizations/data-quality/inventory/modal/form-modal.component.ts +++ b/src/app/modules/organizations/data-quality/inventory/modal/form-modal.component.ts @@ -1,21 +1,12 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatOptionModule } from '@angular/material/core' -import { MatDatepickerModule } from '@angular/material/datepicker' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatSelectModule } from '@angular/material/select' -import { MatSlideToggleModule } from '@angular/material/slide-toggle' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { combineLatest, distinctUntilChanged, type Observable, Subject, takeUntil } from 'rxjs' -import type { Column } from '@seed/api/column' -import { type DataQualityFormGroup, DataQualityService, type Rule } from '@seed/api/data-quality' -import { type Label, LabelService } from '@seed/api/label' +import type { Column, DataQualityFormGroup, Label, Rule } from '@seed/api' +import { DataQualityService, LabelService } from '@seed/api' import { LabelComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { CONDITIONS, DATATYPES_BY_CONDITION, SEVERITIES, UNITS } from '../../constants' import { DataQualityValidator } from '../../data-quality.validator' @@ -24,16 +15,7 @@ import { DataQualityValidator } from '../../data-quality.validator' templateUrl: './form-modal.component.html', imports: [ FormsModule, - MatButtonModule, - MatDatepickerModule, - MatDialogModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatOptionModule, - MatSelectModule, - MatSlideToggleModule, + MaterialImports, LabelComponent, ReactiveFormsModule, ], diff --git a/src/app/modules/organizations/derived-columns/derived-columns.component.ts b/src/app/modules/organizations/derived-columns/derived-columns.component.ts index fb7eaa49..0eb9c301 100644 --- a/src/app/modules/organizations/derived-columns/derived-columns.component.ts +++ b/src/app/modules/organizations/derived-columns/derived-columns.component.ts @@ -1,18 +1,16 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject, ViewEncapsulation } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatDialog, MatDialogModule } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' -import { MatTableDataSource, MatTableModule } from '@angular/material/table' +import { MatDialog } from '@angular/material/dialog' +import { MatTableDataSource } from '@angular/material/table' import { ActivatedRoute, Router } from '@angular/router' import { filter, map, Subject, switchMap, takeUntil, tap } from 'rxjs' -import type { DerivedColumn } from '@seed/api/derived-column' -import { DerivedColumnService } from '@seed/api/derived-column' -import { UserService } from '@seed/api/user' +import type { DerivedColumn } from '@seed/api' +import { DerivedColumnService, UserService } from '@seed/api' import { DeleteModalComponent, InventoryTabComponent, PageComponent, TableContainerComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { naturalSort } from '@seed/utils' -import type { InventoryDisplayType, InventoryType } from '../../inventory/inventory.types' +import type { InventoryDisplayType, InventoryType } from 'app/modules/inventory' import { FormModalComponent } from './modal/form-modal.component' @Component({ @@ -21,10 +19,7 @@ import { FormModalComponent } from './modal/form-modal.component' encapsulation: ViewEncapsulation.None, imports: [ InventoryTabComponent, - MatButtonModule, - MatDialogModule, - MatIconModule, - MatTableModule, + MaterialImports, PageComponent, SharedImports, TableContainerComponent, diff --git a/src/app/modules/organizations/derived-columns/modal/form-modal.component.ts b/src/app/modules/organizations/derived-columns/modal/form-modal.component.ts index 991f9d19..5c807474 100644 --- a/src/app/modules/organizations/derived-columns/modal/form-modal.component.ts +++ b/src/app/modules/organizations/derived-columns/modal/form-modal.component.ts @@ -1,19 +1,11 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormArray, FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatOptionModule } from '@angular/material/core' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatSelectModule } from '@angular/material/select' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { Subject, takeUntil, tap } from 'rxjs' -import type { Column } from '@seed/api/column' -import { ColumnService } from '@seed/api/column' -import type { DerivedColumn } from '@seed/api/derived-column' -import { DerivedColumnService } from '@seed/api/derived-column' +import type { Column, DerivedColumn } from '@seed/api' +import { ColumnService, DerivedColumnService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { naturalSort } from '@seed/utils' import { SEEDValidators } from '@seed/validators' import type { InventoryDisplayType } from 'app/modules/inventory/inventory.types' @@ -24,14 +16,7 @@ import { DerivedColumnsValidator } from '../derived-columns.validator' templateUrl: './form-modal.component.html', imports: [ FormsModule, - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatOptionModule, - MatSelectModule, + MaterialImports, ReactiveFormsModule, ], }) diff --git a/src/app/modules/organizations/email-templates/email-templates.component.ts b/src/app/modules/organizations/email-templates/email-templates.component.ts index 10e739a1..f841ff95 100644 --- a/src/app/modules/organizations/email-templates/email-templates.component.ts +++ b/src/app/modules/organizations/email-templates/email-templates.component.ts @@ -2,18 +2,12 @@ import { CommonModule } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' import { MatDialog } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatSelectModule } from '@angular/material/select' -import { MatSidenavModule } from '@angular/material/sidenav' -import { MatTooltipModule } from '@angular/material/tooltip' import { NgxWigModule } from 'ngx-wig' import { filter, map, Subject, switchMap, takeUntil, tap } from 'rxjs' -import { type EmailTemplate, PostOfficeService } from '@seed/api/postoffice' -import { UserService } from '@seed/api/user' +import { type EmailTemplate, PostOfficeService, UserService } from '@seed/api' import { DeleteModalComponent, PageComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { naturalSort } from '@seed/utils' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' import { FormModalComponent } from './modal/form-modal.component' @@ -23,12 +17,7 @@ import { FormModalComponent } from './modal/form-modal.component' templateUrl: './email-templates.component.html', imports: [ CommonModule, - MatButtonModule, - MatIconModule, - MatInputModule, - MatSidenavModule, - MatSelectModule, - MatTooltipModule, + MaterialImports, NgxWigModule, PageComponent, ReactiveFormsModule, diff --git a/src/app/modules/organizations/email-templates/modal/form-modal.component.ts b/src/app/modules/organizations/email-templates/modal/form-modal.component.ts index b406680c..c2e9a504 100644 --- a/src/app/modules/organizations/email-templates/modal/form-modal.component.ts +++ b/src/app/modules/organizations/email-templates/modal/form-modal.component.ts @@ -1,26 +1,17 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { Subject } from 'rxjs' -import { type EmailTemplate, PostOfficeService } from '@seed/api/postoffice' +import { type EmailTemplate, PostOfficeService } from '@seed/api' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-email-templates-form-modal', templateUrl: './form-modal.component.html', imports: [ FormsModule, - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, + MaterialImports, ReactiveFormsModule, ], }) diff --git a/src/app/modules/organizations/labels/labels.component.ts b/src/app/modules/organizations/labels/labels.component.ts index e90b7459..48c66b27 100644 --- a/src/app/modules/organizations/labels/labels.component.ts +++ b/src/app/modules/organizations/labels/labels.component.ts @@ -1,17 +1,12 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatCheckboxModule } from '@angular/material/checkbox' import { MatDialog } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' -import { MatSlideToggleModule } from '@angular/material/slide-toggle' -import { MatTableDataSource, MatTableModule } from '@angular/material/table' +import { MatTableDataSource } from '@angular/material/table' import { filter, Subject, switchMap, takeUntil, tap } from 'rxjs' -import type { Label } from '@seed/api/label' -import { LabelService } from '@seed/api/label' -import type { Organization } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' +import type { Label, Organization } from '@seed/api' +import { LabelService, OrganizationService } from '@seed/api' import { DeleteModalComponent, LabelComponent, PageComponent, TableContainerComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' import { FormModalComponent } from './modal' @Component({ @@ -21,11 +16,7 @@ import { FormModalComponent } from './modal' LabelComponent, PageComponent, TableContainerComponent, - MatButtonModule, - MatCheckboxModule, - MatIconModule, - MatSlideToggleModule, - MatTableModule, + MaterialImports, ], }) export class LabelsComponent implements OnInit, OnDestroy { diff --git a/src/app/modules/organizations/labels/modal/form-modal.component.ts b/src/app/modules/organizations/labels/modal/form-modal.component.ts index 13ce454f..39611c47 100644 --- a/src/app/modules/organizations/labels/modal/form-modal.component.ts +++ b/src/app/modules/organizations/labels/modal/form-modal.component.ts @@ -1,31 +1,18 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatSelectModule } from '@angular/material/select' -import { MatSlideToggleModule } from '@angular/material/slide-toggle' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { Subject } from 'rxjs' -import type { Label } from '@seed/api/label' -import { LabelService } from '@seed/api/label' +import type { Label } from '@seed/api' +import { LabelService } from '@seed/api' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-labels-form-modal', templateUrl: './form-modal.component.html', imports: [ FormsModule, - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatSelectModule, - MatSlideToggleModule, + MaterialImports, ReactiveFormsModule, ], }) diff --git a/src/app/modules/organizations/members/members.component.ts b/src/app/modules/organizations/members/members.component.ts index d31c9704..1b4a217e 100644 --- a/src/app/modules/organizations/members/members.component.ts +++ b/src/app/modules/organizations/members/members.component.ts @@ -1,18 +1,15 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' import type { MatDialogRef } from '@angular/material/dialog' -import { MatDialog, MatDialogModule } from '@angular/material/dialog' -import { MatIconModule } from '@angular/material/icon' -import { MatTableDataSource, MatTableModule } from '@angular/material/table' +import { MatDialog } from '@angular/material/dialog' +import { MatTableDataSource } from '@angular/material/table' import { combineLatest, filter, Subject, switchMap, takeUntil, tap } from 'rxjs' -import type { BriefOrganization, OrganizationUser } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' -import type { UserAuth } from '@seed/api/user' -import { UserService } from '@seed/api/user' +import type { BriefOrganization, OrganizationUser, UserAuth } from '@seed/api' +import { OrganizationService, UserService } from '@seed/api' import { DeleteModalComponent, PageComponent, TableContainerComponent } from '@seed/components' import type { Config } from '@seed/components/page/page.types' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { naturalSort } from '@seed/utils' import { FormModalComponent } from './modal/form-modal.component' import { ResetPasswordsModalComponent } from './modal/reset-passwords-modal.component' @@ -20,7 +17,7 @@ import { ResetPasswordsModalComponent } from './modal/reset-passwords-modal.comp @Component({ selector: 'seed-organizations-members', templateUrl: './members.component.html', - imports: [MatButtonModule, MatDialogModule, MatIconModule, MatTableModule, PageComponent, SharedImports, TableContainerComponent], + imports: [MaterialImports, PageComponent, SharedImports, TableContainerComponent], }) export class MembersComponent implements OnDestroy, OnInit { private _organizationService = inject(OrganizationService) diff --git a/src/app/modules/organizations/members/modal/form-modal.component.ts b/src/app/modules/organizations/members/modal/form-modal.component.ts index 3ca58d16..9a394517 100644 --- a/src/app/modules/organizations/members/modal/form-modal.component.ts +++ b/src/app/modules/organizations/members/modal/form-modal.component.ts @@ -1,20 +1,12 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatOptionModule } from '@angular/material/core' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatSelectModule } from '@angular/material/select' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import type { Observable } from 'rxjs' import { forkJoin, Subject, takeUntil, tap } from 'rxjs' -import type { AccessLevelInstancesByDepth, AccessLevelsByDepth, OrganizationUser } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' -import type { CreateUserRequest, UserRole } from '@seed/api/user' -import { UserService } from '@seed/api/user' +import type { AccessLevelInstancesByDepth, AccessLevelsByDepth, CreateUserRequest, OrganizationUser, UserRole } from '@seed/api' +import { OrganizationService, UserService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' @Component({ @@ -22,14 +14,7 @@ import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' templateUrl: './form-modal.component.html', imports: [ FormsModule, - MatButtonModule, - MatDialogModule, - MatDividerModule, - MatFormFieldModule, - MatInputModule, - MatIconModule, - MatOptionModule, - MatSelectModule, + MaterialImports, ReactiveFormsModule, ], }) diff --git a/src/app/modules/organizations/members/modal/reset-passwords-modal.component.ts b/src/app/modules/organizations/members/modal/reset-passwords-modal.component.ts index 68efe0a2..b586d651 100644 --- a/src/app/modules/organizations/members/modal/reset-passwords-modal.component.ts +++ b/src/app/modules/organizations/members/modal/reset-passwords-modal.component.ts @@ -1,18 +1,16 @@ import type { OnDestroy } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatIconModule } from '@angular/material/icon' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { Subject, takeUntil, tap } from 'rxjs' -import { OrganizationService } from '@seed/api/organization' +import { OrganizationService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { AuthService } from 'app/core/auth' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' @Component({ selector: 'seed-member-reset-passwords-modal', templateUrl: './reset-passwords-modal.component.html', - imports: [MatButtonModule, MatDialogModule, MatDividerModule, MatIconModule], + imports: [MaterialImports], }) export class ResetPasswordsModalComponent implements OnDestroy { private _organizationService = inject(OrganizationService) diff --git a/src/app/modules/organizations/organizations.routes.ts b/src/app/modules/organizations/organizations.routes.ts index 1c41329b..e1ad8144 100644 --- a/src/app/modules/organizations/organizations.routes.ts +++ b/src/app/modules/organizations/organizations.routes.ts @@ -1,8 +1,7 @@ import { inject } from '@angular/core' import type { Routes, UrlSegment } from '@angular/router' import { switchMap, take } from 'rxjs' -import { OrganizationService } from '@seed/api/organization' -import { UserService } from '@seed/api/user' +import { OrganizationService, UserService } from '@seed/api' import type { OrganizationGenericTypeMatcher } from './organizations.types' import { AccessLevelTreeComponent, diff --git a/src/app/modules/organizations/settings/api-keys/api-keys.component.ts b/src/app/modules/organizations/settings/api-keys/api-keys.component.ts index 5ea43234..7554fa9f 100644 --- a/src/app/modules/organizations/settings/api-keys/api-keys.component.ts +++ b/src/app/modules/organizations/settings/api-keys/api-keys.component.ts @@ -1,21 +1,18 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' import { Subject, takeUntil } from 'rxjs' -import type { Organization } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' +import type { Organization } from '@seed/api' +import { OrganizationService } from '@seed/api' import { PageComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { BetterApiKeyValidator } from './better-api-key.validator' @Component({ selector: 'seed-organizations-settings-api-keys', templateUrl: './api-keys.component.html', - imports: [MatButtonModule, MatFormFieldModule, MatIconModule, MatInputModule, PageComponent, ReactiveFormsModule, SharedImports], + imports: [MaterialImports, PageComponent, ReactiveFormsModule, SharedImports], }) export class ApiKeysComponent implements OnDestroy, OnInit { private _organizationService = inject(OrganizationService) diff --git a/src/app/modules/organizations/settings/audit-template/audit-template.component.ts b/src/app/modules/organizations/settings/audit-template/audit-template.component.ts index 8a093054..81cf777c 100644 --- a/src/app/modules/organizations/settings/audit-template/audit-template.component.ts +++ b/src/app/modules/organizations/settings/audit-template/audit-template.component.ts @@ -2,35 +2,19 @@ import { formatDate } from '@angular/common' import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatCheckboxModule } from '@angular/material/checkbox' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatSelectModule } from '@angular/material/select' -import { MatSlideToggleModule } from '@angular/material/slide-toggle' import { Subject, takeUntil } from 'rxjs' -import type { AuditTemplateConfig, AuditTemplateReportType } from '@seed/api/audit-template' -import { AuditTemplateService } from '@seed/api/audit-template' -import type { Organization } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' +import type { AuditTemplateConfig, AuditTemplateReportType, Organization } from '@seed/api' +import { AuditTemplateService, OrganizationService } from '@seed/api' import { PageComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' @Component({ selector: 'seed-organizations-settings-audit-template', templateUrl: './audit-template.component.html', imports: [ - MatButtonModule, - MatCheckboxModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatSelectModule, - MatSlideToggleModule, + MaterialImports, PageComponent, ReactiveFormsModule, SharedImports, diff --git a/src/app/modules/organizations/settings/display-fields/display-fields.component.ts b/src/app/modules/organizations/settings/display-fields/display-fields.component.ts index 12391d09..43861ed9 100644 --- a/src/app/modules/organizations/settings/display-fields/display-fields.component.ts +++ b/src/app/modules/organizations/settings/display-fields/display-fields.component.ts @@ -1,31 +1,19 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatSelectModule } from '@angular/material/select' import { Subject, takeUntil } from 'rxjs' -import type { Column } from '@seed/api/column' -import { ColumnService } from '@seed/api/column' -import type { Organization } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' +import type { Column, Organization } from '@seed/api' +import { ColumnService, OrganizationService } from '@seed/api' import { PageComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { naturalSort } from '@seed/utils' @Component({ selector: 'seed-organizations-settings-display-fields', templateUrl: './display-fields.component.html', imports: [ - MatButtonModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatSelectModule, + MaterialImports, PageComponent, ReactiveFormsModule, SharedImports, diff --git a/src/app/modules/organizations/settings/display-units/display-units.component.ts b/src/app/modules/organizations/settings/display-units/display-units.component.ts index e4791cfb..51a7a9de 100644 --- a/src/app/modules/organizations/settings/display-units/display-units.component.ts +++ b/src/app/modules/organizations/settings/display-units/display-units.component.ts @@ -1,31 +1,19 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatSelectModule } from '@angular/material/select' -import { MatTabsModule } from '@angular/material/tabs' import { Subject, takeUntil } from 'rxjs' -import type { MeterWithUnits } from '@seed/api/meters' -import { MeterTypesService } from '@seed/api/meters' -import type { Organization } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' +import type { MeterWithUnits, Organization } from '@seed/api' +import { MeterTypesService, OrganizationService } from '@seed/api' import { PageComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import * as UnitOptions from './units.types' @Component({ selector: 'seed-organizations-settings-display-units', templateUrl: './display-units.component.html', imports: [ - MatButtonModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatSelectModule, - MatTabsModule, + MaterialImports, PageComponent, ReactiveFormsModule, SharedImports, diff --git a/src/app/modules/organizations/settings/email/email.component.ts b/src/app/modules/organizations/settings/email/email.component.ts index 5b50b8f6..833a884c 100644 --- a/src/app/modules/organizations/settings/email/email.component.ts +++ b/src/app/modules/organizations/settings/email/email.component.ts @@ -1,26 +1,18 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' import { Subject, takeUntil } from 'rxjs' -import type { Organization } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' +import type { Organization } from '@seed/api' +import { OrganizationService } from '@seed/api' import { PageComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-organizations-settings-email', templateUrl: './email.component.html', imports: [ - MatButtonModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, + MaterialImports, PageComponent, ReactiveFormsModule, SharedImports, diff --git a/src/app/modules/organizations/settings/maintenance/maintenance.component.ts b/src/app/modules/organizations/settings/maintenance/maintenance.component.ts index 79837219..2d27c2ea 100644 --- a/src/app/modules/organizations/settings/maintenance/maintenance.component.ts +++ b/src/app/modules/organizations/settings/maintenance/maintenance.component.ts @@ -1,13 +1,13 @@ import { CommonModule } from '@angular/common' import { Component, inject } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' -import { OrganizationService } from '@seed/api/organization' +import { OrganizationService } from '@seed/api' import { PageComponent } from '@seed/components' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-organizations-settings-maintenance', templateUrl: './maintenance.component.html', - imports: [CommonModule, MatIconModule, PageComponent], + imports: [CommonModule, MaterialImports, PageComponent], }) export class MaintenanceComponent { private _organizationService = inject(OrganizationService) diff --git a/src/app/modules/organizations/settings/options/options.component.ts b/src/app/modules/organizations/settings/options/options.component.ts index 38860216..a75af5a4 100644 --- a/src/app/modules/organizations/settings/options/options.component.ts +++ b/src/app/modules/organizations/settings/options/options.component.ts @@ -1,26 +1,18 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatSlideToggleModule } from '@angular/material/slide-toggle' import { Subject, takeUntil } from 'rxjs' -import type { Organization } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' +import type { Organization } from '@seed/api' +import { OrganizationService } from '@seed/api' import { PageComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-organizations-settings-options', templateUrl: './options.component.html', imports: [ - MatButtonModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatSlideToggleModule, + MaterialImports, PageComponent, ReactiveFormsModule, SharedImports, diff --git a/src/app/modules/organizations/settings/salesforce/modal/delete-modal.component.ts b/src/app/modules/organizations/settings/salesforce/modal/delete-modal.component.ts index bcdeca9c..f7d9a967 100644 --- a/src/app/modules/organizations/settings/salesforce/modal/delete-modal.component.ts +++ b/src/app/modules/organizations/settings/salesforce/modal/delete-modal.component.ts @@ -1,14 +1,14 @@ import type { OnInit } from '@angular/core' import { Component, inject } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import type { SalesforceMapping } from '@seed/api/salesforce' -import { SalesforceService } from '@seed/api/salesforce' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' +import type { SalesforceMapping } from '@seed/api' +import { SalesforceService } from '@seed/api' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-salesforce-delete-modal', templateUrl: './delete-modal.component.html', - imports: [MatButtonModule, MatDialogModule], + imports: [MaterialImports], }) export class DeleteModalComponent implements OnInit { private _salesforceService = inject(SalesforceService) diff --git a/src/app/modules/organizations/settings/salesforce/modal/form-modal.component.ts b/src/app/modules/organizations/settings/salesforce/modal/form-modal.component.ts index 07d94827..9b48bdc2 100644 --- a/src/app/modules/organizations/settings/salesforce/modal/form-modal.component.ts +++ b/src/app/modules/organizations/settings/salesforce/modal/form-modal.component.ts @@ -1,22 +1,17 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MAT_DIALOG_DATA, MatDialogModule, MatDialogRef } from '@angular/material/dialog' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatInputModule } from '@angular/material/input' -import { MatSelectModule } from '@angular/material/select' +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog' import { Subject, takeUntil } from 'rxjs' -import type { Column } from '@seed/api/column' -import { ColumnService } from '@seed/api/column' -import type { SalesforceMapping } from '@seed/api/salesforce' -import { SalesforceService } from '@seed/api/salesforce' +import type { Column, SalesforceMapping } from '@seed/api' +import { ColumnService, SalesforceService } from '@seed/api' +import { MaterialImports } from '@seed/materials' import { naturalSort } from '@seed/utils' @Component({ selector: 'seed-salesforce-form-modal', templateUrl: './form-modal.component.html', - imports: [FormsModule, MatButtonModule, MatDialogModule, MatFormFieldModule, MatInputModule, MatSelectModule, ReactiveFormsModule], + imports: [FormsModule, MaterialImports, ReactiveFormsModule], }) export class FormModalComponent implements OnDestroy, OnInit { private _columnService = inject(ColumnService) diff --git a/src/app/modules/organizations/settings/salesforce/salesforce.component.ts b/src/app/modules/organizations/settings/salesforce/salesforce.component.ts index f00de1f9..3dfcbb46 100644 --- a/src/app/modules/organizations/settings/salesforce/salesforce.component.ts +++ b/src/app/modules/organizations/settings/salesforce/salesforce.component.ts @@ -1,27 +1,14 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' import { MatDialog } from '@angular/material/dialog' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' -import { MatSelectModule } from '@angular/material/select' -import { MatSlideToggleModule } from '@angular/material/slide-toggle' -import { MatTableDataSource, MatTableModule } from '@angular/material/table' -import { MatTabsModule } from '@angular/material/tabs' +import { MatTableDataSource } from '@angular/material/table' import { Subject, takeUntil, tap } from 'rxjs' -import type { Column } from '@seed/api/column' -import { ColumnService } from '@seed/api/column' -import type { Label } from '@seed/api/label' -import { LabelService } from '@seed/api/label' -import type { Organization } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' -import type { SalesforceConfig, SalesforceMapping } from '@seed/api/salesforce' -import { SalesforceService } from '@seed/api/salesforce' +import type { Column, Label, Organization, SalesforceConfig, SalesforceMapping } from '@seed/api' +import { ColumnService, LabelService, OrganizationService, SalesforceService } from '@seed/api' import { PageComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import { naturalSort } from '@seed/utils' import { DeleteModalComponent, FormModalComponent } from './modal' @@ -29,15 +16,7 @@ import { DeleteModalComponent, FormModalComponent } from './modal' selector: 'seed-organizations-settings-salesforce', templateUrl: './salesforce.component.html', imports: [ - MatButtonModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, - MatSelectModule, - MatSlideToggleModule, - MatTableModule, - MatTabsModule, + MaterialImports, PageComponent, ReactiveFormsModule, SharedImports, diff --git a/src/app/modules/organizations/settings/settings.component.ts b/src/app/modules/organizations/settings/settings.component.ts index 417b8da1..c9bf309f 100644 --- a/src/app/modules/organizations/settings/settings.component.ts +++ b/src/app/modules/organizations/settings/settings.component.ts @@ -1,19 +1,18 @@ import type { AfterViewInit } from '@angular/core' import { Component, inject, ViewChild, ViewEncapsulation } from '@angular/core' -import { MatIconModule } from '@angular/material/icon' import type { MatDrawer } from '@angular/material/sidenav' -import { MatSidenavModule } from '@angular/material/sidenav' import { RouterOutlet } from '@angular/router' import type { NavigationItem } from '@seed/components' import { DrawerService, VerticalNavigationComponent } from '@seed/components' import { ScrollResetDirective } from '@seed/directives' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-organizations', templateUrl: './settings.component.html', styleUrls: ['./settings.component.scss'], encapsulation: ViewEncapsulation.None, - imports: [MatIconModule, MatSidenavModule, RouterOutlet, ScrollResetDirective, VerticalNavigationComponent], + imports: [MaterialImports, RouterOutlet, ScrollResetDirective, VerticalNavigationComponent], }) export class SettingsComponent implements AfterViewInit { @ViewChild('drawer') drawer!: MatDrawer diff --git a/src/app/modules/organizations/settings/two-factor/two-factor.component.ts b/src/app/modules/organizations/settings/two-factor/two-factor.component.ts index 3394c572..b4c14b0f 100644 --- a/src/app/modules/organizations/settings/two-factor/two-factor.component.ts +++ b/src/app/modules/organizations/settings/two-factor/two-factor.component.ts @@ -1,20 +1,17 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatSlideToggleModule } from '@angular/material/slide-toggle' import { Subject, takeUntil } from 'rxjs' -import type { Organization } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' +import type { Organization } from '@seed/api' +import { OrganizationService } from '@seed/api' import { PageComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-organizations-settings-two-factor', templateUrl: './two-factor.component.html', - imports: [MatButtonModule, MatFormFieldModule, MatIconModule, MatSlideToggleModule, PageComponent, ReactiveFormsModule, SharedImports], + imports: [MaterialImports, PageComponent, ReactiveFormsModule, SharedImports], }) export class TwoFactorComponent implements OnDestroy, OnInit { private _organizationService = inject(OrganizationService) diff --git a/src/app/modules/organizations/settings/ubid/ubid.component.ts b/src/app/modules/organizations/settings/ubid/ubid.component.ts index 4104435c..8bdc4e04 100644 --- a/src/app/modules/organizations/settings/ubid/ubid.component.ts +++ b/src/app/modules/organizations/settings/ubid/ubid.component.ts @@ -1,20 +1,17 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject } from '@angular/core' import { FormControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' import { Subject, takeUntil } from 'rxjs' -import type { Organization } from '@seed/api/organization' -import { OrganizationService } from '@seed/api/organization' +import type { Organization } from '@seed/api' +import { OrganizationService } from '@seed/api' import { PageComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-organizations-settings-ubid', templateUrl: './ubid.component.html', - imports: [MatButtonModule, MatFormFieldModule, MatIconModule, MatInputModule, PageComponent, ReactiveFormsModule, SharedImports], + imports: [MaterialImports, PageComponent, ReactiveFormsModule, SharedImports], }) export class UBIDComponent implements OnDestroy, OnInit { private _organizationService = inject(OrganizationService) diff --git a/src/app/modules/profile/admin/admin.component.ts b/src/app/modules/profile/admin/admin.component.ts index 1fc0254a..af853ac6 100644 --- a/src/app/modules/profile/admin/admin.component.ts +++ b/src/app/modules/profile/admin/admin.component.ts @@ -1,11 +1,10 @@ import { Component } from '@angular/core' -import { MatButtonModule } from '@angular/material/button' -import { MatIconModule } from '@angular/material/icon' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-admin', templateUrl: './admin.component.html', - imports: [MatButtonModule, MatIconModule, SharedImports], + imports: [MaterialImports, SharedImports], }) export class AdminComponent {} diff --git a/src/app/modules/profile/developer/developer.component.ts b/src/app/modules/profile/developer/developer.component.ts index bffc15c5..2b82464c 100644 --- a/src/app/modules/profile/developer/developer.component.ts +++ b/src/app/modules/profile/developer/developer.component.ts @@ -1,16 +1,13 @@ import type { OnDestroy, OnInit } from '@angular/core' import { ChangeDetectionStrategy, ChangeDetectorRef, Component, DOCUMENT, inject } from '@angular/core' import { FormsModule, ReactiveFormsModule } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatDividerModule } from '@angular/material/divider' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' import { Subject, takeUntil } from 'rxjs' -import type { CurrentUser } from '@seed/api/user' -import { UserService } from '@seed/api/user' +import type { CurrentUser } from '@seed/api' +import { UserService } from '@seed/api' import { ClipboardComponent } from '@seed/components' import { SharedImports } from '@seed/directives' -import { SnackBarService } from '../../../core/snack-bar/snack-bar.service' +import { MaterialImports } from '@seed/materials' +import { SnackBarService } from 'app/core/snack-bar/snack-bar.service' @Component({ selector: 'seed-profile-developer', @@ -19,10 +16,7 @@ import { SnackBarService } from '../../../core/snack-bar/snack-bar.service' imports: [ ClipboardComponent, FormsModule, - MatButtonModule, - MatDividerModule, - MatFormFieldModule, - MatIconModule, + MaterialImports, ReactiveFormsModule, SharedImports, ], diff --git a/src/app/modules/profile/info/info.component.ts b/src/app/modules/profile/info/info.component.ts index e6cba3be..f2134cac 100644 --- a/src/app/modules/profile/info/info.component.ts +++ b/src/app/modules/profile/info/info.component.ts @@ -1,27 +1,21 @@ import type { OnDestroy, OnInit } from '@angular/core' import { ChangeDetectorRef, Component, inject } from '@angular/core' import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' import { Subject, takeUntil } from 'rxjs' -import type { CurrentUser, UserUpdateRequest } from '@seed/api/user' -import { UserService } from '@seed/api/user' +import type { CurrentUser, UserUpdateRequest } from '@seed/api' +import { UserService } from '@seed/api' import type { Alert } from '@seed/components' import { AlertComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' @Component({ selector: 'seed-profile-info', templateUrl: './info.component.html', imports: [ AlertComponent, - MatIconModule, FormsModule, - MatFormFieldModule, - MatInputModule, + MaterialImports, ReactiveFormsModule, - MatButtonModule, SharedImports, ], }) diff --git a/src/app/modules/profile/security/security.component.ts b/src/app/modules/profile/security/security.component.ts index a2703f25..f2d3293d 100644 --- a/src/app/modules/profile/security/security.component.ts +++ b/src/app/modules/profile/security/security.component.ts @@ -2,29 +2,24 @@ import type { OnDestroy, OnInit } from '@angular/core' import { Component, inject, signal } from '@angular/core' import type { FormGroup } from '@angular/forms' import { FormBuilder, FormControl, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' -import { MatButtonModule } from '@angular/material/button' -import { MatFormFieldModule } from '@angular/material/form-field' -import { MatIconModule } from '@angular/material/icon' -import { MatInputModule } from '@angular/material/input' import { Subject, take, takeUntil } from 'rxjs' -import type { CurrentUser, PasswordUpdateRequest } from '@seed/api/user' -import { UserService } from '@seed/api/user' +import type { CurrentUser, PasswordUpdateRequest } from '@seed/api' +import { UserService } from '@seed/api' import type { Alert } from '@seed/components' import { AlertComponent } from '@seed/components' import { SharedImports } from '@seed/directives' +import { MaterialImports } from '@seed/materials' import type { SEEDConfig } from '@seed/services' import { ConfigService } from '@seed/services' import { SEEDValidators } from '@seed/validators' + @Component({ selector: 'seed-profile-security', templateUrl: './security.component.html', imports: [ AlertComponent, FormsModule, - MatButtonModule, - MatFormFieldModule, - MatIconModule, - MatInputModule, + MaterialImports, ReactiveFormsModule, SharedImports, ],