continue the journey
This commit is contained in:
@@ -10,13 +10,12 @@ exports.AppModule = void 0;
|
|||||||
const common_1 = require("@nestjs/common");
|
const common_1 = require("@nestjs/common");
|
||||||
const app_controller_1 = require("./app.controller");
|
const app_controller_1 = require("./app.controller");
|
||||||
const app_service_1 = require("./app.service");
|
const app_service_1 = require("./app.service");
|
||||||
const auth_module_1 = require("./auth/auth.module");
|
|
||||||
const users_module_1 = require("./users/users.module");
|
const users_module_1 = require("./users/users.module");
|
||||||
let AppModule = class AppModule {
|
let AppModule = class AppModule {
|
||||||
};
|
};
|
||||||
AppModule = __decorate([
|
AppModule = __decorate([
|
||||||
(0, common_1.Module)({
|
(0, common_1.Module)({
|
||||||
imports: [auth_module_1.AuthModule, users_module_1.UsersModule],
|
imports: [users_module_1.UsersModule],
|
||||||
controllers: [app_controller_1.AppController],
|
controllers: [app_controller_1.AppController],
|
||||||
providers: [app_service_1.AppService],
|
providers: [app_service_1.AppService],
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
{"version":3,"file":"app.module.js","sourceRoot":"","sources":["../src/app.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,qDAAiD;AACjD,+CAA2C;AAC3C,oDAAgD;AAChD,uDAAmD;AAO5C,IAAM,SAAS,GAAf,MAAM,SAAS;CAAG,CAAA;AAAZ,SAAS;IALrB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,wBAAU,EAAE,0BAAW,CAAC;QAClC,WAAW,EAAE,CAAC,8BAAa,CAAC;QAC5B,SAAS,EAAE,CAAC,wBAAU,CAAC;KACxB,CAAC;GACW,SAAS,CAAG;AAAZ,8BAAS"}
|
{"version":3,"file":"app.module.js","sourceRoot":"","sources":["../src/app.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,qDAAiD;AACjD,+CAA2C;AAE3C,uDAAmD;AAO5C,IAAM,SAAS,GAAf,MAAM,SAAS;CAAG,CAAA;AAAZ,SAAS;IALrB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,0BAAW,CAAC;QACtB,WAAW,EAAE,CAAC,8BAAa,CAAC;QAC5B,SAAS,EAAE,CAAC,wBAAU,CAAC;KACxB,CAAC;GACW,SAAS,CAAG;AAAZ,8BAAS"}
|
||||||
File diff suppressed because one or more lines are too long
@@ -1,5 +1,5 @@
|
|||||||
export declare class User {
|
export declare class User {
|
||||||
userId: number;
|
userId: string;
|
||||||
username: string;
|
username: string;
|
||||||
password: string;
|
password: string;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,9 +2,9 @@ import { UsersService } from './users.service';
|
|||||||
export declare class UsersController {
|
export declare class UsersController {
|
||||||
private readonly usersService;
|
private readonly usersService;
|
||||||
constructor(usersService: UsersService);
|
constructor(usersService: UsersService);
|
||||||
findAll(query: any): string;
|
findAll(query: any): import("./entities/user.entity").User[];
|
||||||
findOne(id: string): string;
|
findOne(id: string): import("./entities/user.entity").User;
|
||||||
create(body: any): any;
|
create(body: any): string;
|
||||||
update(id: string, body: any): string;
|
update(id: string, body: any): string;
|
||||||
remove(id: string): string;
|
remove(id: string): string;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,20 +20,19 @@ let UsersController = class UsersController {
|
|||||||
this.usersService = usersService;
|
this.usersService = usersService;
|
||||||
}
|
}
|
||||||
findAll(query) {
|
findAll(query) {
|
||||||
const { limit, offset } = query;
|
return this.usersService.findAll();
|
||||||
return `This action returns all users. The limits is ${limit} and the offset is ${offset}`;
|
|
||||||
}
|
}
|
||||||
findOne(id) {
|
findOne(id) {
|
||||||
return 'This action returns a single user whose id is ' + id;
|
return this.usersService.findOne(id);
|
||||||
}
|
}
|
||||||
create(body) {
|
create(body) {
|
||||||
return body;
|
return this.usersService.create(body);
|
||||||
}
|
}
|
||||||
update(id, body) {
|
update(id, body) {
|
||||||
return 'The user whose id is ' + id + ' has been updated';
|
return this.usersService.update(id, body);
|
||||||
}
|
}
|
||||||
remove(id) {
|
remove(id) {
|
||||||
return 'The user whose id is ' + id + ' has been deleted';
|
return this.usersService.remove(id);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
__decorate([
|
__decorate([
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
{"version":3,"file":"users.controller.js","sourceRoot":"","sources":["../../src/users/users.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAGwB;AAExB,mDAA+C;AAGxC,IAAM,eAAe,GAArB,MAAM,eAAe;IAC3B,YAA6B,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IAAG,CAAC;IAG3D,OAAO,CAAU,KAAK;QACrB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;QAChC,OAAO,gDAAgD,KAAK,sBAAsB,MAAM,EAAE,CAAC;IAC5F,CAAC;IAGD,OAAO,CAAc,EAAU;QAC9B,OAAO,iDAAiD,GAAG,EAAE,CAAC;IAC/D,CAAC;IAID,MAAM,CAAS,IAAI;QAClB,OAAO,IAAI,CAAC;IACb,CAAC;IAGD,MAAM,CAAc,EAAU,EAAU,IAAI;QAC3C,OAAO,uBAAuB,GAAG,EAAE,GAAG,mBAAmB,CAAC;IAC3D,CAAC;IAGD,MAAM,CAAc,EAAU;QAC7B,OAAO,uBAAuB,GAAG,EAAE,GAAG,mBAAmB,CAAC;IAC3D,CAAC;CACD,CAAA;AA1BA;IAAC,IAAA,YAAG,GAAE;IACG,WAAA,IAAA,cAAK,GAAE,CAAA;;;;8CAGf;AAED;IAAC,IAAA,YAAG,EAAC,KAAK,CAAC;IACF,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;8CAEnB;AAED;IAAC,IAAA,aAAI,GAAE;IACN,IAAA,iBAAQ,EAAC,mBAAU,CAAC,IAAI,CAAC;IAClB,WAAA,IAAA,aAAI,GAAE,CAAA;;;;6CAEb;AAED;IAAC,IAAA,cAAK,EAAC,KAAK,CAAC;IACL,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;IAAc,WAAA,IAAA,aAAI,GAAE,CAAA;;;;6CAEtC;AAED;IAAC,IAAA,eAAM,EAAC,KAAK,CAAC;IACN,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;6CAElB;AA5BW,eAAe;IAD3B,IAAA,mBAAU,EAAC,OAAO,CAAC;qCAEwB,4BAAY;GAD3C,eAAe,CA6B3B;AA7BY,0CAAe"}
|
{"version":3,"file":"users.controller.js","sourceRoot":"","sources":["../../src/users/users.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAGwB;AAExB,mDAA+C;AAGxC,IAAM,eAAe,GAArB,MAAM,eAAe;IAC3B,YAA6B,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IAAG,CAAC;IAG3D,OAAO,CAAU,KAAK;QAErB,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;IACpC,CAAC;IAGD,OAAO,CAAc,EAAU;QAC9B,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACtC,CAAC;IAID,MAAM,CAAS,IAAI;QAClB,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAGD,MAAM,CAAc,EAAU,EAAU,IAAI;QAC3C,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;IAGD,MAAM,CAAc,EAAU;QAC7B,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC;CACD,CAAA;AA1BA;IAAC,IAAA,YAAG,GAAE;IACG,WAAA,IAAA,cAAK,GAAE,CAAA;;;;8CAGf;AAED;IAAC,IAAA,YAAG,EAAC,KAAK,CAAC;IACF,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;8CAEnB;AAED;IAAC,IAAA,aAAI,GAAE;IACN,IAAA,iBAAQ,EAAC,mBAAU,CAAC,IAAI,CAAC;IAClB,WAAA,IAAA,aAAI,GAAE,CAAA;;;;6CAEb;AAED;IAAC,IAAA,cAAK,EAAC,KAAK,CAAC;IACL,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;IAAc,WAAA,IAAA,aAAI,GAAE,CAAA;;;;6CAEtC;AAED;IAAC,IAAA,eAAM,EAAC,KAAK,CAAC;IACN,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;6CAElB;AA5BW,eAAe;IAD3B,IAAA,mBAAU,EAAC,OAAO,CAAC;qCAEwB,4BAAY;GAD3C,eAAe,CA6B3B;AA7BY,0CAAe"}
|
||||||
@@ -1,8 +1,9 @@
|
|||||||
import { User } from './entities/user.entity';
|
import { User } from './entities/user.entity';
|
||||||
export declare class UsersService {
|
export declare class UsersService {
|
||||||
private users;
|
private users;
|
||||||
findOne(id: number): User;
|
findOne(id: string): User;
|
||||||
findAll(): User[];
|
findAll(): User[];
|
||||||
create(createUserDto: any): void;
|
create(createUserDto: any): string;
|
||||||
update(id: number, updateUserDto: any): void;
|
update(id: string, updateUserDto: any): string;
|
||||||
|
remove(id: string): string;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,29 +12,43 @@ let UsersService = class UsersService {
|
|||||||
constructor() {
|
constructor() {
|
||||||
this.users = [
|
this.users = [
|
||||||
{
|
{
|
||||||
userId: 1,
|
userId: '1',
|
||||||
username: 'john',
|
username: 'john',
|
||||||
password: 'changeme',
|
password: 'changeme',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
userId: 2,
|
userId: '2',
|
||||||
username: 'maria',
|
username: 'maria',
|
||||||
password: 'guess',
|
password: 'guess',
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
findOne(id) {
|
findOne(id) {
|
||||||
return this.users.find(user => user.userId === id);
|
const user = this.users.find(user => user.userId === id);
|
||||||
|
if (!user)
|
||||||
|
throw new common_1.NotFoundException(`The requested user not found.`);
|
||||||
|
return user;
|
||||||
}
|
}
|
||||||
findAll() {
|
findAll() {
|
||||||
|
if (!this.users.length)
|
||||||
|
throw new common_1.HttpException(`No user exists.`, common_1.HttpStatus.NOT_FOUND);
|
||||||
return this.users;
|
return this.users;
|
||||||
}
|
}
|
||||||
create(createUserDto) {
|
create(createUserDto) {
|
||||||
this.users.push(createUserDto);
|
const user = this.users.push(createUserDto);
|
||||||
|
if (!user)
|
||||||
|
throw new common_1.HttpException(`The user could not be created.`, common_1.HttpStatus.NOT_FOUND);
|
||||||
|
return 'User has been created';
|
||||||
}
|
}
|
||||||
update(id, updateUserDto) {
|
update(id, updateUserDto) {
|
||||||
const index = this.users.findIndex(user => user.userId === id);
|
const index = this.users.findIndex(user => user.userId === id);
|
||||||
this.users[index] = updateUserDto;
|
this.users[index] = updateUserDto;
|
||||||
|
return this.users[index].username + ' has been updated';
|
||||||
|
}
|
||||||
|
remove(id) {
|
||||||
|
const index = this.users.findIndex(user => user.userId === id);
|
||||||
|
this.users.splice(index, 1);
|
||||||
|
return 'User has been deleted';
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
UsersService = __decorate([
|
UsersService = __decorate([
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
{"version":3,"file":"users.service.js","sourceRoot":"","sources":["../../src/users/users.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA4C;AAIrC,IAAM,YAAY,GAAlB,MAAM,YAAY;IAAlB;QACE,UAAK,GAAU;YACtB;gBACC,MAAM,EAAE,CAAC;gBACT,QAAQ,EAAE,MAAM;gBAChB,QAAQ,EAAE,UAAU;aACpB;YACD;gBACC,MAAM,EAAE,CAAC;gBACT,QAAQ,EAAE,OAAO;gBACjB,QAAQ,EAAE,OAAO;aACjB;SACD,CAAC;IAmBH,CAAC;IAjBA,OAAO,CAAC,EAAU;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,OAAO;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,aAAkB;QACxB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,EAAU,EAAE,aAAkB;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC;QAC/D,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC;IACnC,CAAC;CAED,CAAA;AA/BY,YAAY;IADxB,IAAA,mBAAU,GAAE;GACA,YAAY,CA+BxB;AA/BY,oCAAY"}
|
{"version":3,"file":"users.service.js","sourceRoot":"","sources":["../../src/users/users.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAsG;AAK/F,IAAM,YAAY,GAAlB,MAAM,YAAY;IAAlB;QACE,UAAK,GAAU;YACtB;gBACC,MAAM,EAAE,GAAG;gBACX,QAAQ,EAAE,MAAM;gBAChB,QAAQ,EAAE,UAAU;aACpB;YACD;gBACC,MAAM,EAAE,GAAG;gBACX,QAAQ,EAAE,OAAO;gBACjB,QAAQ,EAAE,OAAO;aACjB;SACD,CAAC;IAkCH,CAAC;IAhCA,OAAO,CAAC,EAAU;QACjB,MAAM,IAAI,GAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI;YACR,MAAM,IAAI,0BAAiB,CAAC,+BAA+B,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO;QACN,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;YACrB,MAAM,IAAI,sBAAa,CAAC,iBAAiB,EAAC,mBAAU,CAAC,SAAS,CAAC,CAAC;QACjE,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IAED,MAAM,CAAC,aAAkB;QACxB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI;YACR,MAAM,IAAI,sBAAa,CAAC,gCAAgC,EAAC,mBAAU,CAAC,SAAS,CAAC,CAAC;QAChF,OAAO,uBAAuB,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,EAAU,EAAE,aAAkB;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC;QAC/D,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC;QAClC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,mBAAmB,CAAC;IACzD,CAAC;IAED,MAAM,CAAC,EAAU;QAChB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC;QAC/D,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC5B,OAAO,uBAAuB,CAAC;IAChC,CAAC;CAED,CAAA;AA9CY,YAAY;IADxB,IAAA,mBAAU,GAAE;GACA,YAAY,CA8CxB;AA9CY,oCAAY"}
|
||||||
@@ -5,7 +5,7 @@ import { AuthModule } from './auth/auth.module';
|
|||||||
import { UsersModule } from './users/users.module';
|
import { UsersModule } from './users/users.module';
|
||||||
|
|
||||||
@Module({
|
@Module({
|
||||||
imports: [AuthModule, UsersModule],
|
imports: [UsersModule],
|
||||||
controllers: [AppController],
|
controllers: [AppController],
|
||||||
providers: [AppService],
|
providers: [AppService],
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
export class User {
|
export class User {
|
||||||
userId: number;
|
userId: string;
|
||||||
username: string;
|
username: string;
|
||||||
password: string;
|
password: string;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,28 +11,28 @@ export class UsersController {
|
|||||||
// par exemple dans postamn ou insomnia http://localhost:3000/users?limit=10&offset=20
|
// par exemple dans postamn ou insomnia http://localhost:3000/users?limit=10&offset=20
|
||||||
@Get()
|
@Get()
|
||||||
findAll(@Query() query) {
|
findAll(@Query() query) {
|
||||||
const { limit, offset } = query;
|
//const { limit, offset } = query;
|
||||||
return `This action returns all users. The limits is ${limit} and the offset is ${offset}`;
|
return this.usersService.findAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Get(':id')
|
@Get(':id')
|
||||||
findOne(@Param('id') id: string) {
|
findOne(@Param('id') id: string) {
|
||||||
return 'This action returns a single user whose id is ' + id;
|
return this.usersService.findOne(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Post()
|
@Post()
|
||||||
@HttpCode(HttpStatus.GONE)
|
@HttpCode(HttpStatus.GONE)
|
||||||
create(@Body() body) {
|
create(@Body() body) {
|
||||||
return body;
|
return this.usersService.create(body);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Patch(':id')
|
@Patch(':id')
|
||||||
update(@Param('id') id: string, @Body() body) {
|
update(@Param('id') id: string, @Body() body) {
|
||||||
return 'The user whose id is ' + id + ' has been updated';
|
return this.usersService.update(id, body);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Delete(':id')
|
@Delete(':id')
|
||||||
remove(@Param('id') id: string) {
|
remove(@Param('id') id: string) {
|
||||||
return 'The user whose id is ' + id + ' has been deleted';
|
return this.usersService.remove(id);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,36 +1,52 @@
|
|||||||
import { Injectable } from '@nestjs/common';
|
import { HttpCode, HttpException, HttpStatus, Injectable, NotFoundException, } from '@nestjs/common';
|
||||||
|
import { NotFoundError } from 'rxjs';
|
||||||
import { User } from './entities/user.entity';
|
import { User } from './entities/user.entity';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class UsersService {
|
export class UsersService {
|
||||||
private users:User[] = [
|
private users:User[] = [
|
||||||
{
|
{
|
||||||
userId: 1,
|
userId: '1',
|
||||||
username: 'john',
|
username: 'john',
|
||||||
password: 'changeme',
|
password: 'changeme',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
userId: 2,
|
userId: '2',
|
||||||
username: 'maria',
|
username: 'maria',
|
||||||
password: 'guess',
|
password: 'guess',
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
findOne(id: number) {
|
findOne(id: string) {
|
||||||
return this.users.find(user => user.userId === id);
|
const user = this.users.find(user => user.userId === id);
|
||||||
|
if (!user)
|
||||||
|
throw new NotFoundException(`The requested user not found.`);
|
||||||
|
return user;
|
||||||
}
|
}
|
||||||
|
|
||||||
findAll() {
|
findAll() {
|
||||||
|
if (!this.users.length)
|
||||||
|
throw new HttpException(`No user exists.`,HttpStatus.NOT_FOUND);
|
||||||
return this.users;
|
return this.users;
|
||||||
}
|
}
|
||||||
|
|
||||||
create(createUserDto: any) {
|
create(createUserDto: any) {
|
||||||
this.users.push(createUserDto);
|
const user = this.users.push(createUserDto);
|
||||||
|
if (!user)
|
||||||
|
throw new HttpException(`The user could not be created.`,HttpStatus.NOT_FOUND);
|
||||||
|
return 'User has been created';
|
||||||
}
|
}
|
||||||
|
|
||||||
update(id: number, updateUserDto: any) {
|
update(id: string, updateUserDto: any) {
|
||||||
const index = this.users.findIndex(user => user.userId === id);
|
const index = this.users.findIndex(user => user.userId === id);
|
||||||
this.users[index] = updateUserDto;
|
this.users[index] = updateUserDto;
|
||||||
|
return this.users[index].username + ' has been updated';
|
||||||
|
}
|
||||||
|
|
||||||
|
remove(id: string) {
|
||||||
|
const index = this.users.findIndex(user => user.userId === id);
|
||||||
|
this.users.splice(index, 1);
|
||||||
|
return 'User has been deleted';
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user