
* Added ReadingList age rating from all series and started on some unit tests for the new flows. * Wrote more unit tests for Reading Lists * Added ability to restrict user accounts to a given age rating via admin edit user modal and invite user. This commit contains all basic code, but no query modifications. * When updating a reading list's title via UI, explicitly check if there is an existing RL with the same title. * Refactored Reading List calculation to work properly in the flows it's invoked from. * Cleaned up an unused method * Promoted Collections no longer show tags where a Series exists within them that is above the user's age rating. * Collection search now respects age restrictions * Series Detail page now checks if the user has explicit access (as a user might bypass with direct url access) * Hooked up age restriction for dashboard activity streams. * Refactored some methods from Series Controller and Library Controller to a new Search Controller to keep things organized * Updated Search to respect age restrictions * Refactored all the Age Restriction queries to extensions * Related Series no longer show up if they are out of the age restriction * Fixed a bad mapping for the update age restriction api * Fixed a UI state change after updating age restriction * Fixed unit test * Added a migration for reading lists * Code cleanup
58 lines
2.1 KiB
TypeScript
58 lines
2.1 KiB
TypeScript
import { NgModule } from '@angular/core';
|
|
import { CommonModule } from '@angular/common';
|
|
import { UserPreferencesComponent } from './user-preferences/user-preferences.component';
|
|
import { NgbAccordionModule, NgbCollapseModule, NgbNavModule, NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap';
|
|
import { ReactiveFormsModule } from '@angular/forms';
|
|
import { UserSettingsRoutingModule } from './user-settings-routing.module';
|
|
import { ApiKeyComponent } from './api-key/api-key.component';
|
|
import { PipeModule } from '../pipe/pipe.module';
|
|
import { SiteThemeProviderPipe } from './_pipes/site-theme-provider.pipe';
|
|
import { ThemeManagerComponent } from './theme-manager/theme-manager.component';
|
|
import { ColorPickerModule } from 'ngx-color-picker';
|
|
import { SidenavModule } from '../sidenav/sidenav.module';
|
|
import { ManageDevicesComponent } from './manage-devices/manage-devices.component';
|
|
import { DevicePlatformPipe } from './_pipes/device-platform.pipe';
|
|
import { EditDeviceComponent } from './edit-device/edit-device.component';
|
|
import { ChangePasswordComponent } from './change-password/change-password.component';
|
|
import { ChangeEmailComponent } from './change-email/change-email.component';
|
|
import { ChangeAgeRestrictionComponent } from './change-age-restriction/change-age-restriction.component';
|
|
import { RestrictionSelectorComponent } from './restriction-selector/restriction-selector.component';
|
|
|
|
|
|
@NgModule({
|
|
declarations: [
|
|
UserPreferencesComponent,
|
|
ApiKeyComponent,
|
|
ThemeManagerComponent,
|
|
SiteThemeProviderPipe,
|
|
ManageDevicesComponent,
|
|
DevicePlatformPipe,
|
|
EditDeviceComponent,
|
|
ChangePasswordComponent,
|
|
ChangeEmailComponent,
|
|
RestrictionSelectorComponent,
|
|
ChangeAgeRestrictionComponent,
|
|
],
|
|
imports: [
|
|
CommonModule,
|
|
ReactiveFormsModule,
|
|
|
|
NgbAccordionModule,
|
|
NgbNavModule,
|
|
NgbTooltipModule,
|
|
NgbCollapseModule,
|
|
|
|
ColorPickerModule, // User prefernces background color
|
|
|
|
PipeModule,
|
|
SidenavModule,
|
|
|
|
UserSettingsRoutingModule,
|
|
],
|
|
exports: [
|
|
SiteThemeProviderPipe,
|
|
ApiKeyComponent,
|
|
RestrictionSelectorComponent
|
|
]
|
|
})
|
|
export class UserSettingsModule { }
|