mirror of
https://github.com/johannesjo/super-productivity.git
synced 2026-01-23 02:36:05 +00:00
build: update angular core
This commit is contained in:
parent
5694117f09
commit
3895c130b8
23 changed files with 28816 additions and 3812 deletions
|
|
@ -219,10 +219,9 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"defaultProject": "sp2",
|
||||
"cli": {
|
||||
"defaultCollection": "@ngrx/schematics",
|
||||
"analytics": false
|
||||
"analytics": false,
|
||||
"schematicCollections": ["@ngrx/schematics"]
|
||||
},
|
||||
"schematics": {
|
||||
"@schematics/angular:component": {
|
||||
|
|
|
|||
32498
package-lock.json
generated
32498
package-lock.json
generated
File diff suppressed because it is too large
Load diff
30
package.json
30
package.json
|
|
@ -113,28 +113,28 @@
|
|||
"node-fetch": "^2.6.7"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@angular-devkit/build-angular": "^13.3.3",
|
||||
"@angular-devkit/build-angular": "^14.1.1",
|
||||
"@angular-eslint/builder": "^14.0.0",
|
||||
"@angular-eslint/eslint-plugin": "^13.2.1",
|
||||
"@angular-eslint/eslint-plugin-template": "^13.2.1",
|
||||
"@angular-eslint/schematics": "^13.2.1",
|
||||
"@angular-eslint/template-parser": "^13.2.1",
|
||||
"@angular/animations": "^13.3.3",
|
||||
"@angular/animations": "^14.1.1",
|
||||
"@angular/cdk": "^13.3.3",
|
||||
"@angular/cli": "^13.3.4",
|
||||
"@angular/common": "^13.3.3",
|
||||
"@angular/compiler": "^13.3.3",
|
||||
"@angular/compiler-cli": "^13.3.3",
|
||||
"@angular/core": "^13.3.3",
|
||||
"@angular/forms": "^13.3.3",
|
||||
"@angular/language-service": "^13.3.3",
|
||||
"@angular/cli": "^14.1.1",
|
||||
"@angular/common": "^14.1.1",
|
||||
"@angular/compiler": "^14.1.1",
|
||||
"@angular/compiler-cli": "^14.1.1",
|
||||
"@angular/core": "^14.1.1",
|
||||
"@angular/forms": "^14.1.1",
|
||||
"@angular/language-service": "^14.1.1",
|
||||
"@angular/material": "^13.3.3",
|
||||
"@angular/material-moment-adapter": "^13.3.3",
|
||||
"@angular/platform-browser": "^13.3.3",
|
||||
"@angular/platform-browser-dynamic": "^13.3.3",
|
||||
"@angular/platform-server": "^13.3.3",
|
||||
"@angular/router": "^13.3.3",
|
||||
"@angular/service-worker": "^13.3.3",
|
||||
"@angular/platform-browser": "^14.1.1",
|
||||
"@angular/platform-browser-dynamic": "^14.1.1",
|
||||
"@angular/platform-server": "^14.1.1",
|
||||
"@angular/router": "^14.1.1",
|
||||
"@angular/service-worker": "^14.1.1",
|
||||
"@biesbjerg/ngx-translate-extract": "^7.0.4",
|
||||
"@fontsource/roboto": "^4.5.7",
|
||||
"@nextcloud/cdav-library": "^1.1.0",
|
||||
|
|
@ -222,7 +222,7 @@
|
|||
"start-server-and-test": "^1.14.0",
|
||||
"ts-node": "~10.7.0",
|
||||
"tslib": "^2.3.1",
|
||||
"typescript": "~4.4.4",
|
||||
"typescript": "~4.7.4",
|
||||
"utils-decorators": "^2.0.3",
|
||||
"webdav": "~4.3.0",
|
||||
"zone.js": "~0.11.5"
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
import { AppBaseData, AppDataForProjects } from '../../imex/sync/sync.model';
|
||||
import { Action } from '@ngrx/store';
|
||||
import { ActionReducer } from '@ngrx/store/src/models';
|
||||
|
||||
export interface PersistenceBaseModel<T> {
|
||||
appDataKey: keyof AppBaseData;
|
||||
|
|
@ -57,7 +58,7 @@ export interface PersistenceEntityModelCfg<S, M> {
|
|||
legacyKey: string;
|
||||
appDataKey: keyof AppBaseData;
|
||||
modelVersion: number;
|
||||
reducerFn: (state: S, action: { type: string; payload?: any }) => S;
|
||||
reducerFn: ActionReducer<S, { type: string; payload?: any }>;
|
||||
migrateFn: (state: S) => S;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -492,16 +492,16 @@ export class PersistenceService {
|
|||
|
||||
// NOTE: side effects are not executed!!!
|
||||
execAction: async (action: Action): Promise<S> => {
|
||||
const state = await model.loadState();
|
||||
const newState = reducerFn(state, action);
|
||||
const state: S = await model.loadState();
|
||||
const newState: S = reducerFn(state, action);
|
||||
await model.saveState(newState, { isDataImport: false });
|
||||
return newState;
|
||||
},
|
||||
|
||||
// NOTE: side effects are not executed!!!
|
||||
execActions: async (actions: Action[]): Promise<S> => {
|
||||
const state = await model.loadState();
|
||||
const newState = actions.reduce((acc, act) => reducerFn(acc, act), state);
|
||||
const state: S = await model.loadState();
|
||||
const newState: S = actions.reduce((acc, act) => reducerFn(acc, act), state);
|
||||
await model.saveState(newState, { isDataImport: false });
|
||||
return newState;
|
||||
},
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
|
|||
import { IS_ELECTRON } from '../../../app.constants';
|
||||
import { MATERIAL_ICONS } from '../../../ui/material-icons.const';
|
||||
import { Bookmark, BookmarkCopy, BookmarkType } from '../bookmark.model';
|
||||
import { FormControl } from '@angular/forms';
|
||||
import { UntypedFormControl } from '@angular/forms';
|
||||
import { Observable } from 'rxjs';
|
||||
import { map, startWith } from 'rxjs/operators';
|
||||
import { T } from '../../../t.const';
|
||||
|
|
@ -24,7 +24,7 @@ export class DialogEditBookmarkComponent implements OnInit {
|
|||
types?: BookmarkSelectType[];
|
||||
bookmarkCopy?: BookmarkCopy;
|
||||
customIcons: string[] = MATERIAL_ICONS;
|
||||
iconControl: FormControl = new FormControl();
|
||||
iconControl: UntypedFormControl = new UntypedFormControl();
|
||||
filteredIcons$: Observable<string[]> = this.iconControl.valueChanges.pipe(
|
||||
startWith(''),
|
||||
map((searchTerm) => {
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ import {
|
|||
Output,
|
||||
} from '@angular/core';
|
||||
import { FormlyFieldConfig, FormlyFormOptions } from '@ngx-formly/core';
|
||||
import { FormGroup } from '@angular/forms';
|
||||
import { UntypedFormGroup } from '@angular/forms';
|
||||
import { GlobalConfigSectionKey } from '../global-config.model';
|
||||
import { ProjectCfgFormKey } from '../../project/project.model';
|
||||
import { T } from '../../../t.const';
|
||||
|
|
@ -27,7 +27,7 @@ export class ConfigFormComponent {
|
|||
config: unknown;
|
||||
}> = new EventEmitter();
|
||||
fields?: FormlyFieldConfig[];
|
||||
form: FormGroup = new FormGroup({});
|
||||
form: UntypedFormGroup = new UntypedFormGroup({});
|
||||
options: FormlyFormOptions = {};
|
||||
|
||||
constructor() {}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';
|
||||
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
|
||||
import { FormGroup } from '@angular/forms';
|
||||
import { UntypedFormGroup } from '@angular/forms';
|
||||
import { FormlyFieldConfig } from '@ngx-formly/core';
|
||||
import { T } from 'src/app/t.const';
|
||||
import { CALDAV_CONFIG_FORM, DEFAULT_CALDAV_CFG } from '../caldav.const';
|
||||
|
|
@ -15,7 +15,7 @@ import { CaldavCfg } from '../caldav.model';
|
|||
export class DialogCaldavInitialSetupComponent {
|
||||
T: typeof T = T;
|
||||
caldavCfg: CaldavCfg;
|
||||
formGroup: FormGroup = new FormGroup({});
|
||||
formGroup: UntypedFormGroup = new UntypedFormGroup({});
|
||||
formConfig: FormlyFieldConfig[] = CALDAV_CONFIG_FORM;
|
||||
|
||||
constructor(
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import { Component, ChangeDetectionStrategy, Inject } from '@angular/core';
|
||||
import { FormGroup } from '@angular/forms';
|
||||
import { UntypedFormGroup } from '@angular/forms';
|
||||
import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
|
||||
import { FormlyFieldConfig } from '@ngx-formly/core';
|
||||
import { T } from 'src/app/t.const';
|
||||
|
|
@ -15,7 +15,7 @@ import { GiteaCfg } from '../../gitea.model';
|
|||
export class DialogGiteaInitialSetupComponent {
|
||||
T: typeof T = T;
|
||||
giteaCfg: GiteaCfg;
|
||||
formGroup: FormGroup = new FormGroup({});
|
||||
formGroup: UntypedFormGroup = new UntypedFormGroup({});
|
||||
formConfig: FormlyFieldConfig[] = GITEA_CONFIG_FORM;
|
||||
|
||||
constructor(
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';
|
||||
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
|
||||
import { GithubCfg } from '../../github.model';
|
||||
import { FormGroup } from '@angular/forms';
|
||||
import { UntypedFormGroup } from '@angular/forms';
|
||||
import { FormlyFieldConfig } from '@ngx-formly/core';
|
||||
import { DEFAULT_GITHUB_CFG, GITHUB_CONFIG_FORM } from '../../github.const';
|
||||
import { T } from '../../../../../../t.const';
|
||||
|
|
@ -15,7 +15,7 @@ import { T } from '../../../../../../t.const';
|
|||
export class DialogGithubInitialSetupComponent {
|
||||
T: typeof T = T;
|
||||
githubCfg: GithubCfg;
|
||||
formGroup: FormGroup = new FormGroup({});
|
||||
formGroup: UntypedFormGroup = new UntypedFormGroup({});
|
||||
formConfig: FormlyFieldConfig[] = GITHUB_CONFIG_FORM;
|
||||
|
||||
constructor(
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';
|
||||
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
|
||||
import { FormGroup } from '@angular/forms';
|
||||
import { UntypedFormGroup } from '@angular/forms';
|
||||
import { FormlyFieldConfig } from '@ngx-formly/core';
|
||||
import { T } from 'src/app/t.const';
|
||||
import { GitlabCfg } from '../gitlab';
|
||||
|
|
@ -15,7 +15,7 @@ import { DEFAULT_GITLAB_CFG, GITLAB_CONFIG_FORM } from '../gitlab.const';
|
|||
export class DialogGitlabInitialSetupComponent {
|
||||
T: typeof T = T;
|
||||
gitlabCfg: GitlabCfg;
|
||||
formGroup: FormGroup = new FormGroup({});
|
||||
formGroup: UntypedFormGroup = new UntypedFormGroup({});
|
||||
formConfig: FormlyFieldConfig[] = GITLAB_CONFIG_FORM;
|
||||
|
||||
constructor(
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ import {
|
|||
OnDestroy,
|
||||
Output,
|
||||
} from '@angular/core';
|
||||
import { FormGroup } from '@angular/forms';
|
||||
import { UntypedFormGroup } from '@angular/forms';
|
||||
import { JiraCfg } from '../../jira.model';
|
||||
import {
|
||||
DEFAULT_JIRA_CFG,
|
||||
|
|
@ -33,10 +33,10 @@ import { HANDLED_ERROR_PROP_STR, HelperClasses } from '../../../../../../app.con
|
|||
export class JiraCfgStepperComponent implements OnDestroy {
|
||||
T: typeof T = T;
|
||||
HelperClasses: typeof HelperClasses = HelperClasses;
|
||||
credentialsFormGroup: FormGroup = new FormGroup({});
|
||||
credentialsFormGroup: UntypedFormGroup = new UntypedFormGroup({});
|
||||
credentialsFormConfig: FormlyFieldConfig[] = [];
|
||||
|
||||
advancedSettingsFormGroup: FormGroup = new FormGroup({});
|
||||
advancedSettingsFormGroup: UntypedFormGroup = new UntypedFormGroup({});
|
||||
advancedSettingsFormConfig: FormlyFieldConfig[] = [];
|
||||
|
||||
isTestCredentialsSuccess: boolean = false;
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ import {
|
|||
} from '../../../../../config/global-config.model';
|
||||
import { ProjectCfgFormKey } from '../../../../../project/project.model';
|
||||
import { FormlyFieldConfig, FormlyFormOptions } from '@ngx-formly/core';
|
||||
import { FormControl, FormGroup } from '@angular/forms';
|
||||
import { UntypedFormControl, UntypedFormGroup } from '@angular/forms';
|
||||
import { JiraCfg, JiraTransitionConfig, JiraTransitionOption } from '../../jira.model';
|
||||
import { expandAnimation } from '../../../../../../ui/animations/expand.ani';
|
||||
import { BehaviorSubject, Observable, Subscription } from 'rxjs';
|
||||
|
|
@ -53,13 +53,13 @@ export class JiraCfgComponent implements OnInit, OnDestroy {
|
|||
}> = new EventEmitter();
|
||||
T: typeof T = T;
|
||||
HelperClasses: typeof HelperClasses = HelperClasses;
|
||||
issueSuggestionsCtrl: FormControl = new FormControl();
|
||||
customFieldSuggestionsCtrl: FormControl = new FormControl();
|
||||
issueSuggestionsCtrl: UntypedFormControl = new UntypedFormControl();
|
||||
customFieldSuggestionsCtrl: UntypedFormControl = new UntypedFormControl();
|
||||
customFields: any[] = [];
|
||||
customFieldsPromise?: Promise<any>;
|
||||
isLoading$: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);
|
||||
fields?: FormlyFieldConfig[];
|
||||
form: FormGroup = new FormGroup({});
|
||||
form: UntypedFormGroup = new UntypedFormGroup({});
|
||||
options: FormlyFormOptions = {};
|
||||
filteredIssueSuggestions$: Observable<SearchResultItem[]> =
|
||||
this.issueSuggestionsCtrl.valueChanges.pipe(
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import { ChangeDetectionStrategy, Component, Inject } from '@angular/core';
|
||||
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
|
||||
import { OpenProjectCfg } from '../../open-project.model';
|
||||
import { FormGroup } from '@angular/forms';
|
||||
import { UntypedFormGroup } from '@angular/forms';
|
||||
import { FormlyFieldConfig } from '@ngx-formly/core';
|
||||
import {
|
||||
DEFAULT_OPEN_PROJECT_CFG,
|
||||
|
|
@ -18,7 +18,7 @@ import { T } from '../../../../../../t.const';
|
|||
export class DialogOpenProjectInitialSetupComponent {
|
||||
T: typeof T = T;
|
||||
openProjectCfg: OpenProjectCfg;
|
||||
formGroup: FormGroup = new FormGroup({});
|
||||
formGroup: UntypedFormGroup = new UntypedFormGroup({});
|
||||
formConfig: FormlyFieldConfig[] = OPEN_PROJECT_CONFIG_FORM;
|
||||
|
||||
constructor(
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ import {
|
|||
EventEmitter,
|
||||
OnDestroy,
|
||||
} from '@angular/core';
|
||||
import { FormControl, FormGroup } from '@angular/forms';
|
||||
import { UntypedFormControl, UntypedFormGroup } from '@angular/forms';
|
||||
import { FormlyFieldConfig, FormlyFormOptions } from '@ngx-formly/core';
|
||||
import { BehaviorSubject, Observable, Subscription } from 'rxjs';
|
||||
import { catchError, debounceTime, first, switchMap, tap } from 'rxjs/operators';
|
||||
|
|
@ -52,8 +52,8 @@ export class OpenprojectCfgComponent implements OnInit, OnDestroy {
|
|||
}> = new EventEmitter();
|
||||
T: typeof T = T;
|
||||
HelperClasses: typeof HelperClasses = HelperClasses;
|
||||
issueSuggestionsCtrl: FormControl = new FormControl();
|
||||
form: FormGroup = new FormGroup({});
|
||||
issueSuggestionsCtrl: UntypedFormControl = new UntypedFormControl();
|
||||
form: UntypedFormGroup = new UntypedFormGroup({});
|
||||
isLoading$: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);
|
||||
fields?: FormlyFieldConfig[];
|
||||
options: FormlyFormOptions = {};
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ import {
|
|||
} from '@angular/core';
|
||||
import { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material/dialog';
|
||||
import { Project, ProjectCopy } from '../../project.model';
|
||||
import { FormGroup } from '@angular/forms';
|
||||
import { UntypedFormGroup } from '@angular/forms';
|
||||
import { FormlyFieldConfig, FormlyFormOptions } from '@ngx-formly/core';
|
||||
import { ProjectService } from '../../project.service';
|
||||
import { DEFAULT_PROJECT } from '../../project.const';
|
||||
|
|
@ -68,8 +68,8 @@ export class DialogCreateProjectComponent implements OnInit, OnDestroy {
|
|||
openProjectCfg?: OpenProjectCfg;
|
||||
giteaCfg?: GiteaCfg;
|
||||
|
||||
formBasic: FormGroup = new FormGroup({});
|
||||
formTheme: FormGroup = new FormGroup({});
|
||||
formBasic: UntypedFormGroup = new UntypedFormGroup({});
|
||||
formTheme: UntypedFormGroup = new UntypedFormGroup({});
|
||||
formOptionsBasic: FormlyFormOptions = {
|
||||
formState: {
|
||||
awesomeIsForced: false,
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ import {
|
|||
ViewChild,
|
||||
} from '@angular/core';
|
||||
import { T } from '../../t.const';
|
||||
import { FormControl } from '@angular/forms';
|
||||
import { UntypedFormControl } from '@angular/forms';
|
||||
import { BehaviorSubject, combineLatest, Observable, Subscription } from 'rxjs';
|
||||
import {
|
||||
debounceTime,
|
||||
|
|
@ -53,7 +53,7 @@ export class SearchBarComponent implements AfterViewInit, OnDestroy {
|
|||
|
||||
T: typeof T = T;
|
||||
isLoading$: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(true);
|
||||
taskSuggestionsCtrl: FormControl = new FormControl();
|
||||
taskSuggestionsCtrl: UntypedFormControl = new UntypedFormControl();
|
||||
filteredIssueSuggestions$: Observable<SearchItem[]> = new Observable();
|
||||
tooManyResults: boolean = false;
|
||||
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ import {
|
|||
import { ProjectCfgFormKey } from '../../project/project.model';
|
||||
import { SimpleCounterConfig } from '../simple-counter.model';
|
||||
import { FormlyFormOptions } from '@ngx-formly/core';
|
||||
import { FormGroup } from '@angular/forms';
|
||||
import { UntypedFormGroup } from '@angular/forms';
|
||||
import { T } from 'src/app/t.const';
|
||||
import { SimpleCounterService } from '../simple-counter.service';
|
||||
import { map } from 'rxjs/operators';
|
||||
|
|
@ -36,7 +36,7 @@ export class SimpleCounterCfgComponent implements OnDestroy {
|
|||
}> = new EventEmitter();
|
||||
|
||||
T: typeof T = T;
|
||||
form: FormGroup = new FormGroup({});
|
||||
form: UntypedFormGroup = new UntypedFormGroup({});
|
||||
options: FormlyFormOptions = {};
|
||||
|
||||
simpleCounterCfg$: Observable<SimpleCounterConfig> =
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ import {
|
|||
} from '../task-repeat-cfg.model';
|
||||
import { Observable, Subscription } from 'rxjs';
|
||||
import { FormlyFieldConfig } from '@ngx-formly/core';
|
||||
import { FormGroup } from '@angular/forms';
|
||||
import { UntypedFormGroup } from '@angular/forms';
|
||||
import {
|
||||
TASK_REPEAT_CFG_ADVANCED_FORM_CFG,
|
||||
TASK_REPEAT_CFG_FORM_CFG_BEFORE_TAGS,
|
||||
|
|
@ -50,8 +50,8 @@ export class DialogEditTaskRepeatCfgComponent implements OnInit, OnDestroy {
|
|||
TASK_REPEAT_CFG_FORM_CFG_BEFORE_TAGS: FormlyFieldConfig[];
|
||||
TASK_REPEAT_CFG_ADVANCED_FORM_CFG: FormlyFieldConfig[];
|
||||
|
||||
formGroup1: FormGroup = new FormGroup({});
|
||||
formGroup2: FormGroup = new FormGroup({});
|
||||
formGroup1: UntypedFormGroup = new UntypedFormGroup({});
|
||||
formGroup2: UntypedFormGroup = new UntypedFormGroup({});
|
||||
tagSuggestions$: Observable<Tag[]> = this._tagService.tags$;
|
||||
|
||||
private _subs: Subscription = new Subscription();
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ import {
|
|||
Output,
|
||||
ViewChild,
|
||||
} from '@angular/core';
|
||||
import { FormControl } from '@angular/forms';
|
||||
import { UntypedFormControl } from '@angular/forms';
|
||||
import { TaskService } from '../task.service';
|
||||
import {
|
||||
debounceTime,
|
||||
|
|
@ -68,7 +68,7 @@ export class AddTaskBarComponent implements AfterViewInit, OnDestroy {
|
|||
isLoading$: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);
|
||||
doubleEnterCount: number = 0;
|
||||
|
||||
taskSuggestionsCtrl: FormControl = new FormControl();
|
||||
taskSuggestionsCtrl: UntypedFormControl = new UntypedFormControl();
|
||||
|
||||
filteredIssueSuggestions$: Observable<AddTaskSuggestion[]> =
|
||||
this.taskSuggestionsCtrl.valueChanges.pipe(
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ import {
|
|||
OnInit,
|
||||
Output,
|
||||
} from '@angular/core';
|
||||
import { FormControl } from '@angular/forms';
|
||||
import { UntypedFormControl } from '@angular/forms';
|
||||
import { Task } from '../task.model';
|
||||
import { map, startWith, takeUntil, withLatestFrom } from 'rxjs/operators';
|
||||
import { Observable, Subject } from 'rxjs';
|
||||
|
|
@ -27,7 +27,7 @@ import { selectAllProjects } from '../../project/store/project.selectors';
|
|||
})
|
||||
export class SelectTaskComponent implements OnInit, OnDestroy {
|
||||
T: typeof T = T;
|
||||
taskSelectCtrl: FormControl = new FormControl();
|
||||
taskSelectCtrl: UntypedFormControl = new UntypedFormControl();
|
||||
filteredTasks: Task[] = [];
|
||||
projectMap: { [key: string]: Project } = {};
|
||||
isCreate: boolean = false;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import { ChangeDetectionStrategy, Component, OnDestroy } from '@angular/core';
|
||||
import { MatDialogRef } from '@angular/material/dialog';
|
||||
import { FormGroup } from '@angular/forms';
|
||||
import { UntypedFormGroup } from '@angular/forms';
|
||||
import { FormlyFieldConfig } from '@ngx-formly/core';
|
||||
import { TIMELINE_FORM_CFG } from '../../config/form-cfgs/timeline-form.const';
|
||||
import { DEFAULT_GLOBAL_CONFIG } from '../../config/default-global-config.const';
|
||||
|
|
@ -19,7 +19,7 @@ import { LS } from '../../../core/persistence/storage-keys.const';
|
|||
export class DialogTimelineInitialSetupComponent implements OnDestroy {
|
||||
T: typeof T = T;
|
||||
timelineCfg: TimelineConfig;
|
||||
formGroup: FormGroup = new FormGroup({});
|
||||
formGroup: UntypedFormGroup = new UntypedFormGroup({});
|
||||
formConfig: FormlyFieldConfig[] = TIMELINE_FORM_CFG.items as FormlyFieldConfig[];
|
||||
private _subs = new Subscription();
|
||||
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ import {
|
|||
Output,
|
||||
ViewChild,
|
||||
} from '@angular/core';
|
||||
import { FormControl } from '@angular/forms';
|
||||
import { UntypedFormControl } from '@angular/forms';
|
||||
import { Observable } from 'rxjs';
|
||||
import {
|
||||
MatAutocomplete,
|
||||
|
|
@ -50,7 +50,7 @@ export class ChipListInputComponent implements OnDestroy {
|
|||
|
||||
suggestionsIn: Suggestion[] = [];
|
||||
modelItems: Suggestion[] = [];
|
||||
inputCtrl: FormControl = new FormControl();
|
||||
inputCtrl: UntypedFormControl = new UntypedFormControl();
|
||||
separatorKeysCodes: number[] = [ENTER, COMMA];
|
||||
isAutoFocus = false;
|
||||
@ViewChild('inputElRef', { static: true }) inputEl?: ElementRef<HTMLInputElement>;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue