RED-9321: made some components standalone, removed upload-file module.
This commit is contained in:
parent
748cce4032
commit
960b434ef6
@ -10,7 +10,12 @@ import { Filter } from '../models/filter';
|
||||
import { map } from 'rxjs/operators';
|
||||
import { shareDistinctLast, shareLast } from '../../utils';
|
||||
import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
|
||||
import { MAT_CHECKBOX_DEFAULT_OPTIONS } from '@angular/material/checkbox';
|
||||
import { MAT_CHECKBOX_DEFAULT_OPTIONS, MatCheckbox } from '@angular/material/checkbox';
|
||||
import { AsyncPipe, NgForOf, NgIf, NgTemplateOutlet } from '@angular/common';
|
||||
import { InputWithActionComponent } from '../../inputs';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
import { MatIcon } from '@angular/material/icon';
|
||||
import { StopPropagationDirective } from '../../directives';
|
||||
|
||||
const areExpandable = (nestedFilter: INestedFilter) => !!nestedFilter?.children?.length;
|
||||
const atLeastOneIsExpandable = pipe(
|
||||
@ -44,6 +49,18 @@ export interface LocalStorageFilters {
|
||||
},
|
||||
},
|
||||
],
|
||||
standalone: true,
|
||||
imports: [
|
||||
AsyncPipe,
|
||||
InputWithActionComponent,
|
||||
NgTemplateOutlet,
|
||||
TranslateModule,
|
||||
MatIcon,
|
||||
MatCheckbox,
|
||||
StopPropagationDirective,
|
||||
NgIf,
|
||||
NgForOf,
|
||||
],
|
||||
})
|
||||
export class FilterCardComponent implements OnInit {
|
||||
@Input() primaryFiltersSlug!: string;
|
||||
|
||||
@ -4,16 +4,14 @@ import { MatCheckboxModule } from '@angular/material/checkbox';
|
||||
import { MatMenuModule } from '@angular/material/menu';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
import { ChevronButtonComponent, IconButtonComponent } from '../buttons';
|
||||
import { PopupFilterComponent } from './popup-filter/popup-filter.component';
|
||||
import { QuickFiltersComponent } from './quick-filters/quick-filters.component';
|
||||
import { IqserHelpModeModule } from '../help-mode';
|
||||
import { SingleFilterComponent } from './single-filter/single-filter.component';
|
||||
import { FilterCardComponent } from './filter-card/filter-card.component';
|
||||
import { MatIconModule } from '@angular/material/icon';
|
||||
import { PreventDefaultDirective, StopPropagationDirective } from '../directives';
|
||||
import { InputWithActionComponent } from '../inputs';
|
||||
|
||||
const components = [QuickFiltersComponent, PopupFilterComponent, SingleFilterComponent, FilterCardComponent];
|
||||
const components = [QuickFiltersComponent, SingleFilterComponent];
|
||||
|
||||
@NgModule({
|
||||
declarations: [...components],
|
||||
|
||||
@ -5,12 +5,31 @@ import { shareDistinctLast, shareLast, some } from '../../utils';
|
||||
import { FilterService } from '../filter.service';
|
||||
import { IFilterGroup } from '../models/filter-group.model';
|
||||
import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
|
||||
import { ChevronButtonComponent, IconButtonComponent } from '../../buttons';
|
||||
import { AsyncPipe, NgIf } from '@angular/common';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
import { MatMenu, MatMenuContent, MatMenuTrigger } from '@angular/material/menu';
|
||||
import { FilterCardComponent } from '../filter-card/filter-card.component';
|
||||
import { StopPropagationDirective } from '../../directives';
|
||||
|
||||
@Component({
|
||||
selector: 'iqser-popup-filter [primaryFiltersSlug]',
|
||||
templateUrl: './popup-filter.component.html',
|
||||
styleUrls: ['./popup-filter.component.scss'],
|
||||
changeDetection: ChangeDetectionStrategy.OnPush,
|
||||
imports: [
|
||||
IconButtonComponent,
|
||||
AsyncPipe,
|
||||
TranslateModule,
|
||||
MatMenuTrigger,
|
||||
ChevronButtonComponent,
|
||||
MatMenu,
|
||||
FilterCardComponent,
|
||||
StopPropagationDirective,
|
||||
MatMenuContent,
|
||||
NgIf,
|
||||
],
|
||||
standalone: true,
|
||||
})
|
||||
export class PopupFilterComponent implements OnInit {
|
||||
@Input() primaryFiltersSlug!: string;
|
||||
|
||||
@ -12,6 +12,7 @@ import { HelpModeDialogComponent } from './help-mode-dialog/help-mode-dialog.com
|
||||
|
||||
const components = [HelpModeComponent, HelpButtonComponent, HelpModeDialogComponent];
|
||||
|
||||
// TODO: Get rid of this, make everything standalone.
|
||||
@NgModule({
|
||||
declarations: [...components],
|
||||
imports: [CommonModule, TranslateModule, CircleButtonComponent, MatCheckbox, MatIcon],
|
||||
|
||||
@ -2,7 +2,7 @@ import { NgModule } from '@angular/core';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
import { TableHeaderComponent } from './table-header/table-header.component';
|
||||
import { IqserFiltersModule } from '../filtering';
|
||||
import { IqserFiltersModule, PopupFilterComponent } from '../filtering';
|
||||
import { MatTooltipModule } from '@angular/material/tooltip';
|
||||
import { TableColumnNameComponent } from './table-column-name/table-column-name.component';
|
||||
import { ScrollButtonComponent } from './scroll-button/scroll-button.component';
|
||||
@ -52,6 +52,7 @@ const modules = [DragDropModule, TranslateModule, IqserFiltersModule, ScrollingM
|
||||
InputWithActionComponent,
|
||||
SyncWidthDirective,
|
||||
SnakeCasePipe,
|
||||
PopupFilterComponent,
|
||||
],
|
||||
})
|
||||
export class IqserListingModule {}
|
||||
|
||||
@ -2,6 +2,7 @@ import { Directive, EventEmitter, HostBinding, HostListener, Output } from '@ang
|
||||
|
||||
@Directive({
|
||||
selector: '[iqserDragDropFileUpload]',
|
||||
standalone: true,
|
||||
})
|
||||
export class DragDropFileUploadDirective {
|
||||
@Output() readonly fileDropped = new EventEmitter();
|
||||
|
||||
@ -1,3 +1,2 @@
|
||||
export * from './drag-drop-file-upload.directive';
|
||||
export * from './upload-file.component';
|
||||
export * from './upload-file.module';
|
||||
|
||||
@ -1,4 +1,8 @@
|
||||
import { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
||||
import { DragDropFileUploadDirective } from './drag-drop-file-upload.directive';
|
||||
import { MatIcon } from '@angular/material/icon';
|
||||
import { NgIf } from '@angular/common';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
@Component({
|
||||
selector: 'iqser-upload-file',
|
||||
@ -6,6 +10,8 @@ import { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, Input, Ou
|
||||
// eslint-disable-next-line @angular-eslint/no-host-metadata-property
|
||||
host: { '[class.iqser-upload-file]': 'true' },
|
||||
changeDetection: ChangeDetectionStrategy.OnPush,
|
||||
standalone: true,
|
||||
imports: [DragDropFileUploadDirective, MatIcon, NgIf, TranslateModule],
|
||||
})
|
||||
export class UploadFileComponent {
|
||||
@ViewChild('attachFileInput', { static: true }) attachFileInput!: ElementRef;
|
||||
|
||||
@ -1,15 +0,0 @@
|
||||
import { NgModule } from '@angular/core';
|
||||
import { UploadFileComponent } from './upload-file.component';
|
||||
import { DragDropFileUploadDirective } from './drag-drop-file-upload.directive';
|
||||
import { MatIconModule } from '@angular/material/icon';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
const components = [UploadFileComponent, DragDropFileUploadDirective];
|
||||
|
||||
@NgModule({
|
||||
declarations: [...components],
|
||||
exports: [...components],
|
||||
imports: [MatIconModule, CommonModule, TranslateModule],
|
||||
})
|
||||
export class IqserUploadFileModule {}
|
||||
@ -4,12 +4,17 @@ import { IqserUser } from '../../iqser-user.model';
|
||||
import { IqserUserService } from '../../services/iqser-user.service';
|
||||
import { NamePipeOptions } from '../../types/name-pipe-options';
|
||||
import { IIqserUser } from '../../types/user.response';
|
||||
import { NgIf } from '@angular/common';
|
||||
import { NamePipe } from '../../name.pipe';
|
||||
import { MatTooltip } from '@angular/material/tooltip';
|
||||
|
||||
@Component({
|
||||
selector: 'iqser-initials-avatar',
|
||||
templateUrl: './initials-avatar.component.html',
|
||||
styleUrls: ['./initials-avatar.component.scss'],
|
||||
changeDetection: ChangeDetectionStrategy.OnPush,
|
||||
standalone: true,
|
||||
imports: [NgIf, NamePipe, MatTooltip],
|
||||
})
|
||||
export class InitialsAvatarComponent<Interface extends IIqserUser = IIqserUser, Class extends IqserUser & Interface = IqserUser & Interface>
|
||||
implements OnInit, OnChanges
|
||||
|
||||
@ -18,10 +18,19 @@ import { MatIconModule } from '@angular/material/icon';
|
||||
import { MatButtonModule } from '@angular/material/button';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
const components = [NamePipe, InitialsAvatarComponent, UserButtonComponent];
|
||||
const components = [UserButtonComponent];
|
||||
|
||||
@NgModule({
|
||||
imports: [KeycloakAngularModule, MatTooltipModule, CommonModule, MatIconModule, MatButtonModule, TranslateModule],
|
||||
imports: [
|
||||
KeycloakAngularModule,
|
||||
MatTooltipModule,
|
||||
CommonModule,
|
||||
MatIconModule,
|
||||
MatButtonModule,
|
||||
TranslateModule,
|
||||
InitialsAvatarComponent,
|
||||
NamePipe,
|
||||
],
|
||||
declarations: [...components],
|
||||
exports: [...components],
|
||||
})
|
||||
|
||||
@ -19,6 +19,7 @@ function getInitials(name: string) {
|
||||
|
||||
@Pipe({
|
||||
name: 'name',
|
||||
standalone: true,
|
||||
})
|
||||
export class NamePipe implements PipeTransform {
|
||||
readonly #translateService = inject(TranslateService);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user