@flusys/nestjs-task-manager 7.0.0 → 7.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -17,6 +17,9 @@ _export(exports, {
17
17
  },
18
18
  get TASK_MANAGER_EVENT_ENTITIES () {
19
19
  return TASK_MANAGER_EVENT_ENTITIES;
20
+ },
21
+ get TASK_MANAGER_EVENT_MODULE () {
22
+ return TASK_MANAGER_EVENT_MODULE;
20
23
  }
21
24
  });
22
25
  const TASK_MANAGER_EVENT_ACTIONS = {
@@ -31,3 +34,4 @@ const TASK_MANAGER_EVENT_ENTITIES = {
31
34
  TASK_LABEL: 'task_label',
32
35
  TASK_COMMENT: 'task_comment'
33
36
  };
37
+ const TASK_MANAGER_EVENT_MODULE = 'task-manager';
@@ -45,9 +45,6 @@ function _ts_param(paramIndex, decorator) {
45
45
  };
46
46
  }
47
47
  let TaskBoardService = class TaskBoardService extends _classes.ApiService {
48
- resolveEntity() {
49
- return this.config.isCompanyFeatureEnabled() ? _entities.TaskBoardWithCompany : _entities.TaskBoard;
50
- }
51
48
  async convertSingleDtoToEntity(dto, user) {
52
49
  await this.ensureDataSourceRepository();
53
50
  let entity = {};
@@ -229,7 +226,7 @@ let TaskBoardService = class TaskBoardService extends _classes.ApiService {
229
226
  return this.memberRepository;
230
227
  }
231
228
  constructor(cacheManager, utilsService, config, dataSourceProvider){
232
- super('task_board', cacheManager, utilsService, TaskBoardService.name, true, 'task-manager', undefined, dataSourceProvider), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "config", void 0), _define_property(this, "dataSourceProvider", void 0), _define_property(this, "memberRepository", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.config = config, this.dataSourceProvider = dataSourceProvider, this.memberRepository = null;
229
+ super(_config.TASK_MANAGER_EVENT_ENTITIES.TASK_BOARD, cacheManager, utilsService, TaskBoardService.name, true, _config.TASK_MANAGER_EVENT_MODULE, dataSourceProvider, config.isCompanyFeatureEnabled() ? _entities.TaskBoardWithCompany : _entities.TaskBoard), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "config", void 0), _define_property(this, "dataSourceProvider", void 0), _define_property(this, "memberRepository", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.config = config, this.dataSourceProvider = dataSourceProvider, this.memberRepository = null;
233
230
  }
234
231
  };
235
232
  TaskBoardService = _ts_decorate([
@@ -67,6 +67,7 @@ describe('TaskBoardService', ()=>{
67
67
  mockUtilsService.clearCache.mockClear();
68
68
  });
69
69
  let service;
70
+ let module;
70
71
  let mockRepo;
71
72
  let mockMemberRepo;
72
73
  let mockConfig;
@@ -84,7 +85,7 @@ describe('TaskBoardService', ()=>{
84
85
  }),
85
86
  getDataSource: jest.fn()
86
87
  };
87
- const module = await _testing.Test.createTestingModule({
88
+ module = await _testing.Test.createTestingModule({
88
89
  providers: [
89
90
  _taskboardservice.TaskBoardService,
90
91
  {
@@ -107,14 +108,16 @@ describe('TaskBoardService', ()=>{
107
108
  }).compile();
108
109
  service = await module.resolve(_taskboardservice.TaskBoardService);
109
110
  });
110
- describe('resolveEntity', ()=>{
111
- it('resolves to plain TaskBoard when company feature is disabled', ()=>{
111
+ describe('entity selection', ()=>{
112
+ it('uses TaskBoard when the company feature is disabled', async ()=>{
112
113
  mockConfig.isCompanyFeatureEnabled.mockReturnValue(false);
113
- expect(service.resolveEntity()).toBe(_entities.TaskBoard);
114
+ const built = await module.resolve(_taskboardservice.TaskBoardService);
115
+ expect(built['_entity']).toBe(_entities.TaskBoard);
114
116
  });
115
- it('resolves to TaskBoardWithCompany when company feature is enabled', ()=>{
117
+ it('uses TaskBoardWithCompany when the company feature is enabled', async ()=>{
116
118
  mockConfig.isCompanyFeatureEnabled.mockReturnValue(true);
117
- expect(service.resolveEntity()).toBe(_entities.TaskBoardWithCompany);
119
+ const built = await module.resolve(_taskboardservice.TaskBoardService);
120
+ expect(built['_entity']).toBe(_entities.TaskBoardWithCompany);
118
121
  });
119
122
  });
120
123
  describe('convertSingleDtoToEntity (via insert/update)', ()=>{
@@ -84,7 +84,7 @@ let TaskCommentService = class TaskCommentService extends _classes.ApiService {
84
84
  };
85
85
  }
86
86
  constructor(cacheManager, utilsService, dataSourceProvider){
87
- super('task_comment', cacheManager, utilsService, TaskCommentService.name, false, 'task-manager', _entities.TaskComment, dataSourceProvider), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "dataSourceProvider", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.dataSourceProvider = dataSourceProvider;
87
+ super(_config.TASK_MANAGER_EVENT_ENTITIES.TASK_COMMENT, cacheManager, utilsService, TaskCommentService.name, false, _config.TASK_MANAGER_EVENT_MODULE, dataSourceProvider, _entities.TaskComment), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "dataSourceProvider", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.dataSourceProvider = dataSourceProvider;
88
88
  }
89
89
  };
90
90
  TaskCommentService = _ts_decorate([
@@ -78,7 +78,7 @@ let TaskLabelService = class TaskLabelService extends _classes.ApiService {
78
78
  };
79
79
  }
80
80
  constructor(cacheManager, utilsService, dataSourceProvider){
81
- super('task_label', cacheManager, utilsService, TaskLabelService.name, true, 'task-manager', _entities.TaskLabel, dataSourceProvider), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "dataSourceProvider", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.dataSourceProvider = dataSourceProvider;
81
+ super(_config.TASK_MANAGER_EVENT_ENTITIES.TASK_LABEL, cacheManager, utilsService, TaskLabelService.name, true, _config.TASK_MANAGER_EVENT_MODULE, dataSourceProvider, _entities.TaskLabel), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "dataSourceProvider", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.dataSourceProvider = dataSourceProvider;
82
82
  }
83
83
  };
84
84
  TaskLabelService = _ts_decorate([
@@ -44,7 +44,7 @@ function _ts_param(paramIndex, decorator) {
44
44
  let TaskListService = class TaskListService extends _classes.ApiService {
45
45
  /** Boards cache denormalized `total_tasks` / `total_lists`, so board caches go stale on any write here. */ async clearCacheForAll() {
46
46
  await super.clearCacheForAll();
47
- await this.utilsService.clearCache('task_board', this.cacheManager);
47
+ await this.utilsService.clearCache(_config.TASK_MANAGER_EVENT_ENTITIES.TASK_BOARD, this.cacheManager);
48
48
  }
49
49
  async convertSingleDtoToEntity(dto, _user) {
50
50
  await this.ensureDataSourceRepository();
@@ -111,7 +111,7 @@ let TaskListService = class TaskListService extends _classes.ApiService {
111
111
  });
112
112
  }
113
113
  constructor(cacheManager, utilsService, dataSourceProvider){
114
- super('task_list', cacheManager, utilsService, TaskListService.name, true, 'task-manager', _entities.TaskList, dataSourceProvider), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "dataSourceProvider", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.dataSourceProvider = dataSourceProvider;
114
+ super(_config.TASK_MANAGER_EVENT_ENTITIES.TASK_LIST, cacheManager, utilsService, TaskListService.name, true, _config.TASK_MANAGER_EVENT_MODULE, dataSourceProvider, _entities.TaskList), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "dataSourceProvider", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.dataSourceProvider = dataSourceProvider;
115
115
  }
116
116
  };
117
117
  TaskListService = _ts_decorate([
@@ -47,7 +47,7 @@ function _ts_param(paramIndex, decorator) {
47
47
  let TaskService = class TaskService extends _classes.ApiService {
48
48
  /** Boards cache denormalized `total_tasks` / `total_lists`, so board caches go stale on any write here. */ async clearCacheForAll() {
49
49
  await super.clearCacheForAll();
50
- await this.utilsService.clearCache('task_board', this.cacheManager);
50
+ await this.utilsService.clearCache(_config.TASK_MANAGER_EVENT_ENTITIES.TASK_BOARD, this.cacheManager);
51
51
  }
52
52
  async convertSingleDtoToEntity(dto, user) {
53
53
  await this.ensureDataSourceRepository();
@@ -375,7 +375,7 @@ let TaskService = class TaskService extends _classes.ApiService {
375
375
  return this.taskAssigneeRepository;
376
376
  }
377
377
  constructor(cacheManager, utilsService, dataSourceProvider, boardService, activityService){
378
- super('task', cacheManager, utilsService, TaskService.name, true, 'task-manager', _entities.Task, dataSourceProvider), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "dataSourceProvider", void 0), _define_property(this, "boardService", void 0), _define_property(this, "activityService", void 0), _define_property(this, "taskLabelRepository", void 0), _define_property(this, "fullLabelRepository", void 0), _define_property(this, "taskAssigneeRepository", void 0), _define_property(this, "pendingLabelIds", void 0), _define_property(this, "pendingAssigneeIds", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.dataSourceProvider = dataSourceProvider, this.boardService = boardService, this.activityService = activityService, this.taskLabelRepository = null, this.fullLabelRepository = null, this.taskAssigneeRepository = null, this.pendingLabelIds = [], this.pendingAssigneeIds = [];
378
+ super(_config.TASK_MANAGER_EVENT_ENTITIES.TASK, cacheManager, utilsService, TaskService.name, true, _config.TASK_MANAGER_EVENT_MODULE, dataSourceProvider, _entities.Task), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "dataSourceProvider", void 0), _define_property(this, "boardService", void 0), _define_property(this, "activityService", void 0), _define_property(this, "taskLabelRepository", void 0), _define_property(this, "fullLabelRepository", void 0), _define_property(this, "taskAssigneeRepository", void 0), _define_property(this, "pendingLabelIds", void 0), _define_property(this, "pendingAssigneeIds", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.dataSourceProvider = dataSourceProvider, this.boardService = boardService, this.activityService = activityService, this.taskLabelRepository = null, this.fullLabelRepository = null, this.taskAssigneeRepository = null, this.pendingLabelIds = [], this.pendingAssigneeIds = [];
379
379
  }
380
380
  };
381
381
  TaskService = _ts_decorate([
@@ -10,3 +10,4 @@ export declare const TASK_MANAGER_EVENT_ENTITIES: {
10
10
  readonly TASK_LABEL: "task_label";
11
11
  readonly TASK_COMMENT: "task_comment";
12
12
  };
13
+ export declare const TASK_MANAGER_EVENT_MODULE = "task-manager";
@@ -13,3 +13,4 @@
13
13
  TASK_LABEL: 'task_label',
14
14
  TASK_COMMENT: 'task_comment'
15
15
  };
16
+ export const TASK_MANAGER_EVENT_MODULE = 'task-manager';
@@ -30,14 +30,11 @@ import { UtilsService } from '@flusys/nestjs-shared/modules';
30
30
  import { applyCompanyFilter } from '@flusys/nestjs-shared/utils';
31
31
  import { BadRequestException, Inject, Injectable, NotFoundException, Scope } from '@nestjs/common';
32
32
  import { IsNull } from 'typeorm';
33
- import { TASK_BOARD_MESSAGES } from '../config';
33
+ import { TASK_BOARD_MESSAGES, TASK_MANAGER_EVENT_ENTITIES, TASK_MANAGER_EVENT_MODULE } from '../config';
34
34
  import { BoardMemberRole, TaskBoard, TaskBoardMember, TaskBoardWithCompany } from '../entities';
35
35
  import { TaskManagerConfigService } from './task-manager-config.service';
36
36
  import { TaskManagerDataSourceProvider } from './task-manager-datasource.provider';
37
37
  export class TaskBoardService extends ApiService {
38
- resolveEntity() {
39
- return this.config.isCompanyFeatureEnabled() ? TaskBoardWithCompany : TaskBoard;
40
- }
41
38
  async convertSingleDtoToEntity(dto, user) {
42
39
  await this.ensureDataSourceRepository();
43
40
  let entity = {};
@@ -219,7 +216,7 @@ export class TaskBoardService extends ApiService {
219
216
  return this.memberRepository;
220
217
  }
221
218
  constructor(cacheManager, utilsService, config, dataSourceProvider){
222
- super('task_board', cacheManager, utilsService, TaskBoardService.name, true, 'task-manager', undefined, dataSourceProvider), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "config", void 0), _define_property(this, "dataSourceProvider", void 0), _define_property(this, "memberRepository", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.config = config, this.dataSourceProvider = dataSourceProvider, this.memberRepository = null;
219
+ super(TASK_MANAGER_EVENT_ENTITIES.TASK_BOARD, cacheManager, utilsService, TaskBoardService.name, true, TASK_MANAGER_EVENT_MODULE, dataSourceProvider, config.isCompanyFeatureEnabled() ? TaskBoardWithCompany : TaskBoard), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "config", void 0), _define_property(this, "dataSourceProvider", void 0), _define_property(this, "memberRepository", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.config = config, this.dataSourceProvider = dataSourceProvider, this.memberRepository = null;
223
220
  }
224
221
  }
225
222
  TaskBoardService = _ts_decorate([
@@ -63,6 +63,7 @@ describe('TaskBoardService', ()=>{
63
63
  mockUtilsService.clearCache.mockClear();
64
64
  });
65
65
  let service;
66
+ let module;
66
67
  let mockRepo;
67
68
  let mockMemberRepo;
68
69
  let mockConfig;
@@ -80,7 +81,7 @@ describe('TaskBoardService', ()=>{
80
81
  }),
81
82
  getDataSource: jest.fn()
82
83
  };
83
- const module = await Test.createTestingModule({
84
+ module = await Test.createTestingModule({
84
85
  providers: [
85
86
  TaskBoardService,
86
87
  {
@@ -103,14 +104,16 @@ describe('TaskBoardService', ()=>{
103
104
  }).compile();
104
105
  service = await module.resolve(TaskBoardService);
105
106
  });
106
- describe('resolveEntity', ()=>{
107
- it('resolves to plain TaskBoard when company feature is disabled', ()=>{
107
+ describe('entity selection', ()=>{
108
+ it('uses TaskBoard when the company feature is disabled', async ()=>{
108
109
  mockConfig.isCompanyFeatureEnabled.mockReturnValue(false);
109
- expect(service.resolveEntity()).toBe(TaskBoard);
110
+ const built = await module.resolve(TaskBoardService);
111
+ expect(built['_entity']).toBe(TaskBoard);
110
112
  });
111
- it('resolves to TaskBoardWithCompany when company feature is enabled', ()=>{
113
+ it('uses TaskBoardWithCompany when the company feature is enabled', async ()=>{
112
114
  mockConfig.isCompanyFeatureEnabled.mockReturnValue(true);
113
- expect(service.resolveEntity()).toBe(TaskBoardWithCompany);
115
+ const built = await module.resolve(TaskBoardService);
116
+ expect(built['_entity']).toBe(TaskBoardWithCompany);
114
117
  });
115
118
  });
116
119
  describe('convertSingleDtoToEntity (via insert/update)', ()=>{
@@ -28,7 +28,7 @@ function _ts_param(paramIndex, decorator) {
28
28
  import { HybridCache, ApiService } from '@flusys/nestjs-shared/classes';
29
29
  import { UtilsService } from '@flusys/nestjs-shared/modules';
30
30
  import { ForbiddenException, Inject, Injectable, NotFoundException, Scope } from '@nestjs/common';
31
- import { TASK_COMMENT_MESSAGES } from '../config';
31
+ import { TASK_COMMENT_MESSAGES, TASK_MANAGER_EVENT_ENTITIES, TASK_MANAGER_EVENT_MODULE } from '../config';
32
32
  import { TaskComment } from '../entities';
33
33
  import { TaskManagerDataSourceProvider } from './task-manager-datasource.provider';
34
34
  export class TaskCommentService extends ApiService {
@@ -74,7 +74,7 @@ export class TaskCommentService extends ApiService {
74
74
  };
75
75
  }
76
76
  constructor(cacheManager, utilsService, dataSourceProvider){
77
- super('task_comment', cacheManager, utilsService, TaskCommentService.name, false, 'task-manager', TaskComment, dataSourceProvider), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "dataSourceProvider", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.dataSourceProvider = dataSourceProvider;
77
+ super(TASK_MANAGER_EVENT_ENTITIES.TASK_COMMENT, cacheManager, utilsService, TaskCommentService.name, false, TASK_MANAGER_EVENT_MODULE, dataSourceProvider, TaskComment), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "dataSourceProvider", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.dataSourceProvider = dataSourceProvider;
78
78
  }
79
79
  }
80
80
  TaskCommentService = _ts_decorate([
@@ -28,7 +28,7 @@ function _ts_param(paramIndex, decorator) {
28
28
  import { ApiService, HybridCache } from '@flusys/nestjs-shared/classes';
29
29
  import { UtilsService } from '@flusys/nestjs-shared/modules';
30
30
  import { Inject, Injectable, NotFoundException, Scope } from '@nestjs/common';
31
- import { TASK_LABEL_MESSAGES } from '../config';
31
+ import { TASK_LABEL_MESSAGES, TASK_MANAGER_EVENT_ENTITIES, TASK_MANAGER_EVENT_MODULE } from '../config';
32
32
  import { TaskLabel } from '../entities';
33
33
  import { TaskManagerDataSourceProvider } from './task-manager-datasource.provider';
34
34
  export class TaskLabelService extends ApiService {
@@ -68,7 +68,7 @@ export class TaskLabelService extends ApiService {
68
68
  };
69
69
  }
70
70
  constructor(cacheManager, utilsService, dataSourceProvider){
71
- super('task_label', cacheManager, utilsService, TaskLabelService.name, true, 'task-manager', TaskLabel, dataSourceProvider), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "dataSourceProvider", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.dataSourceProvider = dataSourceProvider;
71
+ super(TASK_MANAGER_EVENT_ENTITIES.TASK_LABEL, cacheManager, utilsService, TaskLabelService.name, true, TASK_MANAGER_EVENT_MODULE, dataSourceProvider, TaskLabel), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "dataSourceProvider", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.dataSourceProvider = dataSourceProvider;
72
72
  }
73
73
  }
74
74
  TaskLabelService = _ts_decorate([
@@ -28,13 +28,13 @@ function _ts_param(paramIndex, decorator) {
28
28
  import { ApiService, HybridCache } from '@flusys/nestjs-shared/classes';
29
29
  import { UtilsService } from '@flusys/nestjs-shared/modules';
30
30
  import { Inject, Injectable, NotFoundException, Scope } from '@nestjs/common';
31
- import { TASK_LIST_MESSAGES, TASK_MANAGER_EVENT_ACTIONS } from '../config';
31
+ import { TASK_LIST_MESSAGES, TASK_MANAGER_EVENT_ACTIONS, TASK_MANAGER_EVENT_ENTITIES, TASK_MANAGER_EVENT_MODULE } from '../config';
32
32
  import { TaskList } from '../entities';
33
33
  import { TaskManagerDataSourceProvider } from './task-manager-datasource.provider';
34
34
  export class TaskListService extends ApiService {
35
35
  /** Boards cache denormalized `total_tasks` / `total_lists`, so board caches go stale on any write here. */ async clearCacheForAll() {
36
36
  await super.clearCacheForAll();
37
- await this.utilsService.clearCache('task_board', this.cacheManager);
37
+ await this.utilsService.clearCache(TASK_MANAGER_EVENT_ENTITIES.TASK_BOARD, this.cacheManager);
38
38
  }
39
39
  async convertSingleDtoToEntity(dto, _user) {
40
40
  await this.ensureDataSourceRepository();
@@ -101,7 +101,7 @@ export class TaskListService extends ApiService {
101
101
  });
102
102
  }
103
103
  constructor(cacheManager, utilsService, dataSourceProvider){
104
- super('task_list', cacheManager, utilsService, TaskListService.name, true, 'task-manager', TaskList, dataSourceProvider), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "dataSourceProvider", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.dataSourceProvider = dataSourceProvider;
104
+ super(TASK_MANAGER_EVENT_ENTITIES.TASK_LIST, cacheManager, utilsService, TaskListService.name, true, TASK_MANAGER_EVENT_MODULE, dataSourceProvider, TaskList), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "dataSourceProvider", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.dataSourceProvider = dataSourceProvider;
105
105
  }
106
106
  }
107
107
  TaskListService = _ts_decorate([
@@ -29,7 +29,7 @@ import { ApiService, HybridCache } from '@flusys/nestjs-shared/classes';
29
29
  import { UtilsService } from '@flusys/nestjs-shared/modules';
30
30
  import { BadRequestException, Inject, Injectable, NotFoundException, Scope } from '@nestjs/common';
31
31
  import { In, IsNull } from 'typeorm';
32
- import { TASK_MANAGER_EVENT_ACTIONS, TASK_MESSAGES } from '../config';
32
+ import { TASK_MANAGER_EVENT_ACTIONS, TASK_MANAGER_EVENT_ENTITIES, TASK_MANAGER_EVENT_MODULE, TASK_MESSAGES } from '../config';
33
33
  import { Task, TaskAssignee, TaskLabel, TaskTaskLabel } from '../entities';
34
34
  import { TaskActivityService } from './task-activity.service';
35
35
  import { TaskBoardService } from './task-board.service';
@@ -37,7 +37,7 @@ import { TaskManagerDataSourceProvider } from './task-manager-datasource.provide
37
37
  export class TaskService extends ApiService {
38
38
  /** Boards cache denormalized `total_tasks` / `total_lists`, so board caches go stale on any write here. */ async clearCacheForAll() {
39
39
  await super.clearCacheForAll();
40
- await this.utilsService.clearCache('task_board', this.cacheManager);
40
+ await this.utilsService.clearCache(TASK_MANAGER_EVENT_ENTITIES.TASK_BOARD, this.cacheManager);
41
41
  }
42
42
  async convertSingleDtoToEntity(dto, user) {
43
43
  await this.ensureDataSourceRepository();
@@ -365,7 +365,7 @@ export class TaskService extends ApiService {
365
365
  return this.taskAssigneeRepository;
366
366
  }
367
367
  constructor(cacheManager, utilsService, dataSourceProvider, boardService, activityService){
368
- super('task', cacheManager, utilsService, TaskService.name, true, 'task-manager', Task, dataSourceProvider), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "dataSourceProvider", void 0), _define_property(this, "boardService", void 0), _define_property(this, "activityService", void 0), _define_property(this, "taskLabelRepository", void 0), _define_property(this, "fullLabelRepository", void 0), _define_property(this, "taskAssigneeRepository", void 0), _define_property(this, "pendingLabelIds", void 0), _define_property(this, "pendingAssigneeIds", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.dataSourceProvider = dataSourceProvider, this.boardService = boardService, this.activityService = activityService, this.taskLabelRepository = null, this.fullLabelRepository = null, this.taskAssigneeRepository = null, this.pendingLabelIds = [], this.pendingAssigneeIds = [];
368
+ super(TASK_MANAGER_EVENT_ENTITIES.TASK, cacheManager, utilsService, TaskService.name, true, TASK_MANAGER_EVENT_MODULE, dataSourceProvider, Task), _define_property(this, "cacheManager", void 0), _define_property(this, "utilsService", void 0), _define_property(this, "dataSourceProvider", void 0), _define_property(this, "boardService", void 0), _define_property(this, "activityService", void 0), _define_property(this, "taskLabelRepository", void 0), _define_property(this, "fullLabelRepository", void 0), _define_property(this, "taskAssigneeRepository", void 0), _define_property(this, "pendingLabelIds", void 0), _define_property(this, "pendingAssigneeIds", void 0), this.cacheManager = cacheManager, this.utilsService = utilsService, this.dataSourceProvider = dataSourceProvider, this.boardService = boardService, this.activityService = activityService, this.taskLabelRepository = null, this.fullLabelRepository = null, this.taskAssigneeRepository = null, this.pendingLabelIds = [], this.pendingAssigneeIds = [];
369
369
  }
370
370
  }
371
371
  TaskService = _ts_decorate([
@@ -1,4 +1,4 @@
1
- import { IBootstrapAppConfig, IDataSourceServiceOptions, IDynamicModuleConfig, IModuleOptionsFactory } from '@flusys/nestjs-core';
1
+ import { IBootstrapAppConfig, IDataSourceServiceOptions, IDynamicModuleConfig } from '@flusys/nestjs-core';
2
2
  import { IModuleEventsConfig } from '@flusys/nestjs-shared/interfaces';
3
3
  import { ModuleMetadata, Type } from '@nestjs/common';
4
4
  export interface ITaskManagerModuleConfig extends IDataSourceServiceOptions {
@@ -9,7 +9,7 @@ export interface TaskManagerModuleOptions extends IDynamicModuleConfig {
9
9
  bootstrapAppConfig?: IBootstrapAppConfig;
10
10
  config?: ITaskManagerModuleConfig;
11
11
  }
12
- export interface TaskManagerOptionsFactory extends IModuleOptionsFactory<ITaskManagerModuleConfig> {
12
+ export interface TaskManagerOptionsFactory {
13
13
  createTaskManagerOptions(): Promise<ITaskManagerModuleConfig> | ITaskManagerModuleConfig;
14
14
  }
15
15
  export interface TaskManagerModuleAsyncOptions extends Pick<ModuleMetadata, 'imports'>, IDynamicModuleConfig {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flusys/nestjs-task-manager",
3
- "version": "7.0.0",
3
+ "version": "7.0.1",
4
4
  "description": "Task management module with dynamic boards and real-time collaboration",
5
5
  "main": "cjs/index.js",
6
6
  "module": "fesm/index.js",
@@ -85,7 +85,7 @@
85
85
  "socket.io": "^4.8.0"
86
86
  },
87
87
  "dependencies": {
88
- "@flusys/nestjs-core": "7.0.0",
89
- "@flusys/nestjs-shared": "7.0.0"
88
+ "@flusys/nestjs-core": "7.0.1",
89
+ "@flusys/nestjs-shared": "7.0.1"
90
90
  }
91
91
  }
@@ -1,7 +1,7 @@
1
1
  import { ApiService, HybridCache } from '@flusys/nestjs-shared/classes';
2
2
  import { ILoggedUserInfo } from '@flusys/nestjs-shared/interfaces';
3
3
  import { UtilsService } from '@flusys/nestjs-shared/modules';
4
- import { EntityTarget, SelectQueryBuilder } from 'typeorm';
4
+ import { SelectQueryBuilder } from 'typeorm';
5
5
  import { AddBoardMemberDto, CreateTaskBoardDto, RemoveBoardMemberDto, UpdateTaskBoardDto } from '../dtos';
6
6
  import { TaskBoardBase, TaskBoardMember } from '../entities';
7
7
  import { TaskManagerConfigService } from './task-manager-config.service';
@@ -13,7 +13,6 @@ export declare class TaskBoardService extends ApiService<CreateTaskBoardDto, Upd
13
13
  private readonly dataSourceProvider;
14
14
  private memberRepository;
15
15
  constructor(cacheManager: HybridCache, utilsService: UtilsService, config: TaskManagerConfigService, dataSourceProvider: TaskManagerDataSourceProvider);
16
- protected resolveEntity(): EntityTarget<TaskBoardBase>;
17
16
  convertSingleDtoToEntity(dto: CreateTaskBoardDto | UpdateTaskBoardDto, user: ILoggedUserInfo | null): Promise<TaskBoardBase>;
18
17
  protected getExtraManipulateQuery(query: SelectQueryBuilder<TaskBoardBase>, filterDto: Record<string, unknown>, user: ILoggedUserInfo | null): Promise<{
19
18
  query: SelectQueryBuilder<TaskBoardBase>;