Skip to content
This repository was archived by the owner on Nov 21, 2024. It is now read-only.

Commit f043bec

Browse files
committed
feat(base): Add interfaces for service and model and implements all from its #83
1 parent 4bc7576 commit f043bec

11 files changed

+24
-9
lines changed

libs/core/src/index.ts

+4
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
import { RuckenCoreRuI18n } from './i18n/ru.i18n';
22
export { RuckenCoreRuI18n } from './i18n/ru.i18n';
3+
import { IBaseModel } from './shared/base/interfaces/base-model.interface';
4+
export { IBaseModel } from './shared/base/interfaces/base-model.interface';
5+
import { IBaseService } from './shared/base/interfaces/base-service.interface';
6+
export { IBaseService } from './shared/base/interfaces/base-service.interface';
37
import { BaseResourceModel } from './shared/base/models/base-resource.model';
48
export { BaseResourceModel } from './shared/base/models/base-resource.model';
59
import { BaseLocalRepositoryService } from './shared/base/services/base-local-repository.service';

libs/core/src/package-lock.json

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
export interface IBaseModel {
2+
[key: string]: any;
3+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
export interface IBaseService {
2+
[key: string]: any;
3+
}

libs/core/src/shared/base/models/base-resource.model.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@ import * as _ from 'lodash';
22
import * as moment from 'moment/moment';
33

44
import { translate } from './../../common/utils';
5+
import { IBaseModel } from './../interfaces/base-model.interface';
56

6-
export class BaseResourceModel {
7+
export class BaseResourceModel implements IBaseModel {
78
pkFieldName: string;
89
pkIsNumber: boolean;
910
dateAsStringFormat = 'DD.MM.YYYY';
1011
dateInputFormat = 'YYYY-MM-DD';
11-
[key: string]: any;
1212

1313
get pk(): string | number {
1414
const key = this.pkFieldName;

libs/core/src/shared/base/services/base-local-repository.service.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,11 @@ import * as _ from 'lodash';
33
import { Subject } from 'rxjs/Subject';
44

55
import { MetaModel } from '../../models/meta.model';
6+
import { IBaseService } from './../interfaces/base-service.interface';
67

78

89
@Injectable()
9-
export class BaseLocalRepositoryService {
10+
export class BaseLocalRepositoryService implements IBaseService {
1011

1112
items$: Subject<any[]>;
1213
items: any[];

libs/core/src/shared/services/account.service.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,10 @@ import { translate } from './../common/utils';
77
import { EndpointStatusEnum } from './../enums/endpoint-status.enum';
88
import { User } from './../models/user.model';
99
import { TokenService } from './token.service';
10+
import { IBaseService } from '../base/interfaces/base-service.interface';
1011

1112
@Injectable()
12-
export class AccountService {
13+
export class AccountService implements IBaseService {
1314
name: string;
1415
account$: Subject<any | User>;
1516
apiUrl: string;

libs/core/src/shared/services/app.service.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
import { ComponentFactoryResolver, EventEmitter, Injectable, ViewContainerRef } from '@angular/core';
2+
import { IBaseService } from '../base/interfaces/base-service.interface';
23

34
@Injectable()
4-
export class AppService {
5+
export class AppService implements IBaseService {
56
component: any;
67
viewContainerRef: ViewContainerRef;
78
translateService: any;

libs/core/src/shared/services/token.service.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
import { map } from 'rxjs/operators';
22

33
import { Injectable } from '@angular/core';
4+
import { IBaseService } from '../base/interfaces/base-service.interface';
45

56
@Injectable()
6-
export class TokenService {
7+
export class TokenService implements IBaseService {
78

89
headerName = 'Authorization';
910
headerPrefix = 'JWT';

libs/web/src/package-lock.json

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

libs/web/src/shared/services/shared.service.ts

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
import { Injectable, Injector } from '@angular/core';
22
import { TranslateService } from '@ngx-translate/core';
33
import { AppService } from '@rucken/core';
4+
import { IBaseService } from '@rucken/core';
45

56
@Injectable()
6-
export class SharedService {
7+
export class SharedService implements IBaseService {
78

89
app: AppService;
910
translateService: TranslateService;

0 commit comments

Comments
 (0)