<commit_before>import { Type, NgModule } from '@angular/core';
import { CommonModule, DatePipe } from '@angular/common';
import { MHCommonModule } from '../common/common.module';
import { FlexLayoutModule } from '@angular/flex-layout';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';

import { InteractionModule } from '../interaction/interaction.module';
import { AuditModule } from '../audit/audit.module';

import { KeysPipe } from '../common/keys.pipe';

import { PersonComponent } from './person.component';
import { PersonListComponent } from './list/person-list.component';
import { PersonViewComponent } from './view/person-view.component';
import { PersonFormComponent } from './form/person-form.component';
import { PersonCreateComponent } from './create/person-create.component';
import { PeopleMapComponent } from './map/people-map.component';

import { PersonRelationsDialogComponent } from './dialogs/person-relations.dialog';
import { AvatarEditDialogComponent } from './dialogs/avatar-edit.dialog';
import { MapDialogComponent } from './dialogs/map/map.dialog';

import { PersonRoutingModule } from './person-routing.module';

import { ImageCropperModule } from 'ng2-img-cropper';

import { TitleService } from 'mh-core';
import { ShoutService } from '../common/shout.service';

const NG_MODULES: Type<any>[] = [
    CommonModule,
    FlexLayoutModule,
    FormsModule,
    ReactiveFormsModule
];

const MH_MODULES: Type<any>[] = [
    MHCommonModule,
    PersonRoutingModule,
    InteractionModule,
    AuditModule
];

const MH_COMPONENTS: Type<any>[] = [
    PersonComponent,
    PersonListComponent,
    PersonViewComponent,
    PersonFormComponent,
    PersonCreateComponent,
    PeopleMapComponent,
    PersonRelationsDialogComponent,
    AvatarEditDialogComponent,
    MapDialogComponent
];

@NgModule({
    declarations: [
        KeysPipe,
        MH_COMPONENTS
    ],
    imports: [
        NG_MODULES,
        MH_MODULES,
        ImageCropperModule
    ],
    providers: [
        ShoutService,<commit_msg>fix missing mat modules<commit_after>import { Type, NgModule } from '@angular/core';
import { CommonModule, DatePipe } from '@angular/common';
import { MHCommonModule } from '../common/common.module';
import { FlexLayoutModule } from '@angular/flex-layout';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';

import {
    MatFormFieldModule,
    MatRadioModule, MatCheckboxModule
} from '@angular/material';

import { InteractionModule } from '../interaction/interaction.module';
import { AuditModule } from '../audit/audit.module';

import { KeysPipe } from '../common/keys.pipe';

import { PersonComponent } from './person.component';
import { PersonListComponent } from './list/person-list.component';
import { PersonViewComponent } from './view/person-view.component';
import { PersonFormComponent } from './form/person-form.component';
import { PersonCreateComponent } from './create/person-create.component';
import { PeopleMapComponent } from './map/people-map.component';

import { PersonRelationsDialogComponent } from './dialogs/person-relations.dialog';
import { AvatarEditDialogComponent } from './dialogs/avatar-edit.dialog';
import { MapDialogComponent } from './dialogs/map/map.dialog';

import { PersonRoutingModule } from './person-routing.module';

import { ImageCropperModule } from 'ng2-img-cropper';

import { TitleService } from 'mh-core';
import { ShoutService } from '../common/shout.service';

const NG_MODULES: Type<any>[] = [
    CommonModule,
    FlexLayoutModule,
    FormsModule,
    ReactiveFormsModule
];

const MH_MODULES: Type<any>[] = [
    MHCommonModule,
    PersonRoutingModule,
    InteractionModule,
    AuditModule
];

const MAT_MODULES: Type<any>[] = [
    MatFormFieldModule, MatRadioModule, MatCheckboxModule
];


const MH_COMPONENTS: Type<any>[] = [
    PersonComponent,
    PersonListComponent,
    PersonViewComponent,
    PersonFormComponent,
    PersonCreateComponent,
    PeopleMapComponent,
    PersonRelationsDialogComponent,
    AvatarEditDialogComponent,
    MapDialogComponent
];

@NgModule({
    declarations: [
        KeysPipe,
        MH_COMPONENTS
    ],
    imports: [
        NG_MODULES,
        MH_MODULES,
        MAT_MODULES,
        ImageCropperModule
    ],
    providers: [
        ShoutService,
{'fraction_non_alphanumeric': 0.12168090510274764, 'fraction_numerical': 0.0004617871161394597, 'mean_word_length': 4.0607476635514015, 'pattern_counts': {'":': 0, '<': 10, '<?xml version=': 0, '>': 10, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7302593', 'n_tokens_mistral': 1273, 'n_tokens_neox': 1243, 'n_words': 261}