@solidxai/core 0.1.9-beta.5 → 0.1.9-beta.7

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.
Files changed (159) hide show
  1. package/dist/helpers/bootstrap.helper.d.ts.map +1 -1
  2. package/dist/helpers/bootstrap.helper.js +4 -1
  3. package/dist/helpers/bootstrap.helper.js.map +1 -1
  4. package/dist/helpers/field-crud-managers/ManyToManyRelationFieldCrudManager.js +5 -5
  5. package/dist/helpers/field-crud-managers/ManyToManyRelationFieldCrudManager.js.map +1 -1
  6. package/dist/helpers/field-crud-managers/ManyToOneRelationFieldCrudManager.d.ts.map +1 -1
  7. package/dist/helpers/field-crud-managers/ManyToOneRelationFieldCrudManager.js +2 -2
  8. package/dist/helpers/field-crud-managers/ManyToOneRelationFieldCrudManager.js.map +1 -1
  9. package/dist/helpers/field-crud-managers/OneToManyRelationFieldCrudManager.js +5 -5
  10. package/dist/helpers/field-crud-managers/OneToManyRelationFieldCrudManager.js.map +1 -1
  11. package/dist/helpers/module-metadata-helper.service.js +3 -3
  12. package/dist/helpers/module-metadata-helper.service.js.map +1 -1
  13. package/dist/helpers/string.helper.d.ts +1 -0
  14. package/dist/helpers/string.helper.d.ts.map +1 -1
  15. package/dist/helpers/string.helper.js +4 -1
  16. package/dist/helpers/string.helper.js.map +1 -1
  17. package/dist/interfaces/mq.d.ts +1 -1
  18. package/dist/interfaces/mq.d.ts.map +1 -1
  19. package/dist/interfaces/mq.js.map +1 -1
  20. package/dist/jobs/database/api-email-subscriber-database.service.d.ts +1 -1
  21. package/dist/jobs/database/api-email-subscriber-database.service.js +1 -1
  22. package/dist/jobs/database/api-email-subscriber-database.service.js.map +1 -1
  23. package/dist/jobs/database/msg91-whatsapp-subscriber-database.service.d.ts +1 -1
  24. package/dist/jobs/database/msg91-whatsapp-subscriber-database.service.js +1 -1
  25. package/dist/jobs/database/msg91-whatsapp-subscriber-database.service.js.map +1 -1
  26. package/dist/jobs/database/three60-whatsapp-subscriber-database.service.d.ts +1 -1
  27. package/dist/jobs/database/three60-whatsapp-subscriber-database.service.js +1 -1
  28. package/dist/jobs/database/three60-whatsapp-subscriber-database.service.js.map +1 -1
  29. package/dist/jobs/rabbitmq/api-email-subscriber.service.d.ts +1 -1
  30. package/dist/jobs/rabbitmq/api-email-subscriber.service.js +1 -1
  31. package/dist/jobs/rabbitmq/api-email-subscriber.service.js.map +1 -1
  32. package/dist/jobs/rabbitmq/msg91-whatsapp-subscriber.service.d.ts +1 -1
  33. package/dist/jobs/rabbitmq/msg91-whatsapp-subscriber.service.js +1 -1
  34. package/dist/jobs/rabbitmq/msg91-whatsapp-subscriber.service.js.map +1 -1
  35. package/dist/jobs/rabbitmq/test-queue-subscriber.service.d.ts +1 -1
  36. package/dist/jobs/rabbitmq/test-queue-subscriber.service.d.ts.map +1 -1
  37. package/dist/jobs/rabbitmq/test-queue-subscriber.service.js +6 -3
  38. package/dist/jobs/rabbitmq/test-queue-subscriber.service.js.map +1 -1
  39. package/dist/jobs/rabbitmq/three60-whatsapp-subscriber.service.d.ts +1 -1
  40. package/dist/jobs/rabbitmq/three60-whatsapp-subscriber.service.js +1 -1
  41. package/dist/jobs/rabbitmq/three60-whatsapp-subscriber.service.js.map +1 -1
  42. package/dist/jobs/redis/api-email-subscriber-redis.service.d.ts +1 -1
  43. package/dist/jobs/redis/api-email-subscriber-redis.service.js +1 -1
  44. package/dist/jobs/redis/api-email-subscriber-redis.service.js.map +1 -1
  45. package/dist/jobs/redis/msg91-whatsapp-subscriber-redis.service.d.ts +1 -1
  46. package/dist/jobs/redis/msg91-whatsapp-subscriber-redis.service.js +1 -1
  47. package/dist/jobs/redis/msg91-whatsapp-subscriber-redis.service.js.map +1 -1
  48. package/dist/jobs/redis/three60-whatsapp-subscriber-redis.service.d.ts +1 -1
  49. package/dist/jobs/redis/three60-whatsapp-subscriber-redis.service.js +1 -1
  50. package/dist/jobs/redis/three60-whatsapp-subscriber-redis.service.js.map +1 -1
  51. package/dist/repository/chatter-message-details.repository.d.ts.map +1 -1
  52. package/dist/repository/chatter-message-details.repository.js +7 -6
  53. package/dist/repository/chatter-message-details.repository.js.map +1 -1
  54. package/dist/repository/chatter-message.repository.d.ts.map +1 -1
  55. package/dist/repository/chatter-message.repository.js +4 -4
  56. package/dist/repository/chatter-message.repository.js.map +1 -1
  57. package/dist/repository/solid-base.repository.js +2 -2
  58. package/dist/repository/solid-base.repository.js.map +1 -1
  59. package/dist/seeders/module-test-data.service.js +4 -4
  60. package/dist/seeders/module-test-data.service.js.map +1 -1
  61. package/dist/seeders/seed-data/solid-core-metadata.json +7 -3
  62. package/dist/services/chatter-message.service.d.ts.map +1 -1
  63. package/dist/services/chatter-message.service.js +7 -7
  64. package/dist/services/chatter-message.service.js.map +1 -1
  65. package/dist/services/computed-fields/entity/sequence-num-computed-field-provider.d.ts.map +1 -1
  66. package/dist/services/computed-fields/entity/sequence-num-computed-field-provider.js +2 -2
  67. package/dist/services/computed-fields/entity/sequence-num-computed-field-provider.js.map +1 -1
  68. package/dist/services/crud-helper.service.d.ts.map +1 -1
  69. package/dist/services/crud-helper.service.js +9 -9
  70. package/dist/services/crud-helper.service.js.map +1 -1
  71. package/dist/services/export-transaction.service.d.ts.map +1 -1
  72. package/dist/services/export-transaction.service.js +4 -3
  73. package/dist/services/export-transaction.service.js.map +1 -1
  74. package/dist/services/field-metadata.service.d.ts.map +1 -1
  75. package/dist/services/field-metadata.service.js +7 -7
  76. package/dist/services/field-metadata.service.js.map +1 -1
  77. package/dist/services/fixtures.service.js +2 -2
  78. package/dist/services/fixtures.service.js.map +1 -1
  79. package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.d.ts.map +1 -1
  80. package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.js +2 -2
  81. package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.js.map +1 -1
  82. package/dist/services/import-transaction.service.d.ts.map +1 -1
  83. package/dist/services/import-transaction.service.js +2 -2
  84. package/dist/services/import-transaction.service.js.map +1 -1
  85. package/dist/services/menu-item-metadata.service.js +2 -2
  86. package/dist/services/menu-item-metadata.service.js.map +1 -1
  87. package/dist/services/model-metadata.service.d.ts.map +1 -1
  88. package/dist/services/model-metadata.service.js +11 -10
  89. package/dist/services/model-metadata.service.js.map +1 -1
  90. package/dist/services/module-metadata.service.d.ts.map +1 -1
  91. package/dist/services/module-metadata.service.js +2 -2
  92. package/dist/services/module-metadata.service.js.map +1 -1
  93. package/dist/services/queues/database-subscriber.service.d.ts +1 -1
  94. package/dist/services/queues/database-subscriber.service.d.ts.map +1 -1
  95. package/dist/services/queues/database-subscriber.service.js.map +1 -1
  96. package/dist/services/queues/publisher-factory.service.d.ts.map +1 -1
  97. package/dist/services/queues/publisher-factory.service.js +2 -2
  98. package/dist/services/queues/publisher-factory.service.js.map +1 -1
  99. package/dist/services/queues/rabbitmq-subscriber.service.d.ts +1 -1
  100. package/dist/services/queues/rabbitmq-subscriber.service.d.ts.map +1 -1
  101. package/dist/services/queues/rabbitmq-subscriber.service.js +3 -1
  102. package/dist/services/queues/rabbitmq-subscriber.service.js.map +1 -1
  103. package/dist/services/queues/redis-subscriber.service.d.ts +1 -1
  104. package/dist/services/queues/redis-subscriber.service.d.ts.map +1 -1
  105. package/dist/services/queues/redis-subscriber.service.js.map +1 -1
  106. package/dist/services/selection-providers/pseudo-foreign-key-selection-provider.service.js +3 -3
  107. package/dist/services/selection-providers/pseudo-foreign-key-selection-provider.service.js.map +1 -1
  108. package/dist/services/solid-introspect.service.js +2 -2
  109. package/dist/services/solid-introspect.service.js.map +1 -1
  110. package/dist/services/view-metadata.service.d.ts.map +1 -1
  111. package/dist/services/view-metadata.service.js +2 -2
  112. package/dist/services/view-metadata.service.js.map +1 -1
  113. package/dist/subscribers/computed-entity-field.subscriber.js +6 -6
  114. package/dist/subscribers/computed-entity-field.subscriber.js.map +1 -1
  115. package/dist/winston.logger.js +1 -1
  116. package/dist/winston.logger.js.map +1 -1
  117. package/package.json +1 -2
  118. package/src/helpers/bootstrap.helper.ts +5 -2
  119. package/src/helpers/field-crud-managers/ManyToManyRelationFieldCrudManager.ts +1 -1
  120. package/src/helpers/field-crud-managers/ManyToOneRelationFieldCrudManager.ts +1 -2
  121. package/src/helpers/field-crud-managers/OneToManyRelationFieldCrudManager.ts +1 -1
  122. package/src/helpers/module-metadata-helper.service.ts +3 -3
  123. package/src/helpers/string.helper.ts +3 -0
  124. package/src/interfaces/mq.ts +2 -2
  125. package/src/jobs/database/api-email-subscriber-database.service.ts +1 -1
  126. package/src/jobs/database/msg91-whatsapp-subscriber-database.service.ts +1 -1
  127. package/src/jobs/database/three60-whatsapp-subscriber-database.service.ts +1 -1
  128. package/src/jobs/rabbitmq/api-email-subscriber.service.ts +1 -1
  129. package/src/jobs/rabbitmq/msg91-whatsapp-subscriber.service.ts +1 -1
  130. package/src/jobs/rabbitmq/test-queue-subscriber.service.ts +6 -7
  131. package/src/jobs/rabbitmq/three60-whatsapp-subscriber.service.ts +1 -1
  132. package/src/jobs/redis/api-email-subscriber-redis.service.ts +1 -1
  133. package/src/jobs/redis/msg91-whatsapp-subscriber-redis.service.ts +1 -1
  134. package/src/jobs/redis/three60-whatsapp-subscriber-redis.service.ts +1 -1
  135. package/src/repository/chatter-message-details.repository.ts +4 -3
  136. package/src/repository/chatter-message.repository.ts +4 -4
  137. package/src/repository/solid-base.repository.ts +2 -2
  138. package/src/seeders/module-test-data.service.ts +1 -1
  139. package/src/seeders/seed-data/solid-core-metadata.json +7 -3
  140. package/src/services/chatter-message.service.ts +1 -3
  141. package/src/services/computed-fields/entity/sequence-num-computed-field-provider.ts +1 -2
  142. package/src/services/crud-helper.service.ts +1 -4
  143. package/src/services/export-transaction.service.ts +3 -4
  144. package/src/services/field-metadata.service.ts +1 -4
  145. package/src/services/fixtures.service.ts +1 -1
  146. package/src/services/genai/mcp-handlers/mcp-handler-factory.service.ts +1 -2
  147. package/src/services/import-transaction.service.ts +1 -1
  148. package/src/services/menu-item-metadata.service.ts +2 -2
  149. package/src/services/model-metadata.service.ts +10 -12
  150. package/src/services/module-metadata.service.ts +1 -2
  151. package/src/services/queues/database-subscriber.service.ts +1 -1
  152. package/src/services/queues/publisher-factory.service.ts +1 -2
  153. package/src/services/queues/rabbitmq-subscriber.service.ts +13 -11
  154. package/src/services/queues/redis-subscriber.service.ts +2 -2
  155. package/src/services/selection-providers/pseudo-foreign-key-selection-provider.service.ts +1 -1
  156. package/src/services/solid-introspect.service.ts +1 -1
  157. package/src/services/view-metadata.service.ts +1 -5
  158. package/src/subscribers/computed-entity-field.subscriber.ts +6 -6
  159. package/src/winston.logger.ts +1 -1
@@ -9,7 +9,7 @@ import { MenuItemMetadata } from '../entities/menu-item-metadata.entity';
9
9
  import { UpdateMenuItemMetadataDto } from '../dtos/update-menu-item-metadata.dto';
10
10
  import { ActiveUserData } from 'src/interfaces/active-user-data.interface';
11
11
  import { ModuleMetadata } from '../entities/module-metadata.entity';
12
- import { dasherize } from '@angular-devkit/core/src/utils/strings';
12
+ import { kebabCase } from 'lodash';
13
13
  import { MenuItemMetadataRepository } from 'src/repository/menu-item-metadata.repository';
14
14
  import { SavedFiltersRepository } from 'src/repository/saved-filters.repository';
15
15
 
@@ -191,7 +191,7 @@ export class MenuItemMetadataService extends CRUDService<MenuItemMetadata> {
191
191
  // TODO: Here we are assuming that we will always take the user to collection view of a model.
192
192
  // We can make provision to take them other views also in the future.
193
193
  // path = `/admin/core/${rootItem.module.name}/${rootItem.action.model.singularName}/${rootItem.action.view.name}`;
194
- path = `/admin/core/${rootItem.module.name}/${dasherize(rootItem.action?.model?.singularName ?? 'unknown')}/${rootItem.action?.view?.type ?? 'list'}?menuItemId=${menuItemId}&menuItemName=${menuItemName}&actionId=${actionId}&actionName=${actionName}${savedFilterId ? `&savedQuery=${savedFilterId}` : ''}`;
194
+ path = `/admin/core/${rootItem.module.name}/${kebabCase(rootItem.action?.model?.singularName ?? 'unknown')}/${rootItem.action?.view?.type ?? 'list'}?menuItemId=${menuItemId}&menuItemName=${menuItemName}&actionId=${actionId}&actionName=${actionName}${savedFilterId ? `&savedQuery=${savedFilterId}` : ''}`;
195
195
 
196
196
  }
197
197
  }
@@ -7,7 +7,8 @@ import { CreateModelMetadataDto } from '../dtos/create-model-metadata.dto';
7
7
  import { ModelMetadata } from '../entities/model-metadata.entity';
8
8
  import { ModuleMetadata } from '../entities/module-metadata.entity';
9
9
 
10
- import { classify, dasherize } from '@angular-devkit/core/src/utils/strings';
10
+ import { kebabCase } from 'lodash';
11
+ import { classify } from '../helpers/string.helper';
11
12
  import { ERROR_MESSAGES } from 'src/constants/error-messages';
12
13
  import { DisallowInProduction } from 'src/decorators/disallow-in-production.decorator';
13
14
  import { SolidFieldType } from 'src/dtos/create-field-metadata.dto';
@@ -586,32 +587,32 @@ export class ModelMetadataService {
586
587
 
587
588
  const filesToDelete = [];
588
589
  // <singularName>.entity.ts | The TypeORM model that needs to be deleted. | Automatic
589
- const entityFilePath = `${modulePath}/entities/${dasherize(modelEntity.singularName)}.entity.ts`;
590
+ const entityFilePath = `${modulePath}/entities/${kebabCase(modelEntity.singularName)}.entity.ts`;
590
591
  filesToDelete.push(entityFilePath);
591
592
  this.logger.log(`About to delete entity file path: ${entityFilePath}`);
592
593
 
593
594
  // <singularName>.create.dto.ts | The TypeORM model that needs to be deleted. | Automatic
594
- const createDtoFilePath = `${modulePath}/dtos/create-${dasherize(modelEntity.singularName)}.dto.ts`;
595
+ const createDtoFilePath = `${modulePath}/dtos/create-${kebabCase(modelEntity.singularName)}.dto.ts`;
595
596
  filesToDelete.push(createDtoFilePath);
596
597
  this.logger.log(`About to delete create DTO file path: ${createDtoFilePath}`);
597
598
 
598
599
  // <singularName>.update.dto.ts | The TypeORM model that needs to be deleted. | Automatic
599
- const updateDtoFilePath = `${modulePath}/dtos/update-${dasherize(modelEntity.singularName)}.dto.ts`;
600
+ const updateDtoFilePath = `${modulePath}/dtos/update-${kebabCase(modelEntity.singularName)}.dto.ts`;
600
601
  filesToDelete.push(updateDtoFilePath);
601
602
  this.logger.log(`About to delete update DTO file path: ${updateDtoFilePath}`);
602
603
 
603
604
  // <singularName>.repository.ts | The TypeORM model that needs to be deleted. | Automatic
604
- const repositoryFilePath = `${modulePath}/repositories/${dasherize(modelEntity.singularName)}.repository.ts`;
605
+ const repositoryFilePath = `${modulePath}/repositories/${kebabCase(modelEntity.singularName)}.repository.ts`;
605
606
  filesToDelete.push(repositoryFilePath);
606
607
  this.logger.log(`About to delete repository file path: ${repositoryFilePath}`);
607
608
 
608
609
  // <singularName>.service.ts | The TypeORM model that needs to be deleted. | Automatic
609
- const serviceFilePath = `${modulePath}/services/${dasherize(modelEntity.singularName)}.service.ts`;
610
+ const serviceFilePath = `${modulePath}/services/${kebabCase(modelEntity.singularName)}.service.ts`;
610
611
  filesToDelete.push(serviceFilePath);
611
612
  this.logger.log(`About to delete service file path: ${serviceFilePath}`);
612
613
 
613
614
  // <singularName>.controller.ts | The TypeORM model that needs to be deleted. | Automatic
614
- const controllerFilePath = `${modulePath}/controllers/${dasherize(modelEntity.singularName)}.controller.ts`;
615
+ const controllerFilePath = `${modulePath}/controllers/${kebabCase(modelEntity.singularName)}.controller.ts`;
615
616
  filesToDelete.push(controllerFilePath);
616
617
  this.logger.log(`About to delete controller file path: ${controllerFilePath}`);
617
618
 
@@ -713,11 +714,11 @@ export class ModelMetadataService {
713
714
 
714
715
  // <moduleName>.module.ts | Remove all references and imports of the deleted model files. | Automatic
715
716
  if (modulePath) {
716
- const moduleFilePath = path.resolve(modulePath, `${dasherize(modelEntity.module?.name)}.module.ts`);
717
+ const moduleFilePath = path.resolve(modulePath, `${kebabCase(modelEntity.module?.name)}.module.ts`);
717
718
  this.logger.log(`Removing model '${modelEntity.singularName}' references from module file: ${moduleFilePath}`);
718
719
  try {
719
720
  this.solidTsMorphService.begin();
720
- const modelPathSegment = `/${dasherize(modelEntity.singularName)}.`;
721
+ const modelPathSegment = `/${kebabCase(modelEntity.singularName)}.`;
721
722
  const { removedIdentifiers } = this.solidTsMorphService.removeImports(
722
723
  moduleFilePath,
723
724
  spec => spec.includes(modelPathSegment)
@@ -930,7 +931,6 @@ export class ModelMetadataService {
930
931
  }
931
932
  };
932
933
 
933
-
934
934
  const modelFormView = {
935
935
  name: formViewName,
936
936
  displayName: `${model.displayName}`,
@@ -1415,7 +1415,6 @@ export class ModelMetadataService {
1415
1415
  const currentOffset = (meta.currentPage - 1) * meta.perPage;
1416
1416
  const currentIndexGlobal = currentOffset + index + 1;
1417
1417
 
1418
-
1419
1418
  let prev: { record: any; offset: number; limit: number } | null = null;
1420
1419
  let next: { record: any; offset: number; limit: number } | null = null;
1421
1420
 
@@ -1517,5 +1516,4 @@ export class ModelMetadataService {
1517
1516
  };
1518
1517
  }
1519
1518
 
1520
-
1521
1519
  }
@@ -6,7 +6,7 @@ import { DataSource, EntityManager, SelectQueryBuilder } from 'typeorm';
6
6
  import { CreateModuleMetadataDto } from '../dtos/create-module-metadata.dto';
7
7
  import { ModuleMetadata } from '../entities/module-metadata.entity';
8
8
 
9
- import { classify } from '@angular-devkit/core/src/utils/strings';
9
+ import { classify } from '../helpers/string.helper';
10
10
  import { ConfigService } from '@nestjs/config';
11
11
  import * as fs from 'fs/promises'; // Use the Promise-based version of fs for async/await
12
12
  import * as path from 'path'; // To handle file paths
@@ -278,7 +278,6 @@ export class ModuleMetadataService {
278
278
  };
279
279
  }
280
280
 
281
-
282
281
  metaData.moduleMetadata.name = module?.name;
283
282
  metaData.moduleMetadata.displayName = module?.displayName;
284
283
  metaData.moduleMetadata.description = module?.description;
@@ -34,7 +34,7 @@ export abstract class DatabaseSubscriber<T> implements OnModuleInit, QueueSubscr
34
34
  return this._loggerInstance;
35
35
  }
36
36
 
37
- abstract subscribe(message: QueueMessage<T>);
37
+ abstract subscribe(message: QueueMessage<T>): Promise<any>;
38
38
 
39
39
  abstract options(): QueuesModuleOptions;
40
40
 
@@ -2,10 +2,9 @@ import { forwardRef, Inject, Logger } from '@nestjs/common';
2
2
  import { Injectable } from '@nestjs/common';
3
3
 
4
4
  import { QueueMessage, QueuePublisher } from 'src/interfaces/mq';
5
- import { classify } from '@angular-devkit/core/src/utils/strings';
5
+ import { classify } from '../../helpers/string.helper';
6
6
  import { SolidIntrospectService } from '../solid-introspect.service';
7
7
 
8
-
9
8
  @Injectable()
10
9
  export class PublisherFactory<T> {
11
10
  private readonly logger = new Logger(PublisherFactory.name);
@@ -52,7 +52,7 @@ export abstract class RabbitMqSubscriber<T> implements OnModuleInit, QueueSubscr
52
52
  return this._loggerInstance;
53
53
  }
54
54
 
55
- abstract subscribe(message: QueueMessage<T>);
55
+ abstract subscribe(message: QueueMessage<T>): Promise<any>;
56
56
 
57
57
  abstract options(): QueuesModuleOptions;
58
58
 
@@ -458,16 +458,18 @@ export abstract class RabbitMqSubscriber<T> implements OnModuleInit, QueueSubscr
458
458
  // Main subscriber work promise.
459
459
  // If timeout has already fired, suppress rethrow to avoid unhandled rejection noise
460
460
  // (the timeout error is already the authoritative failure we track).
461
- const subscribePromise = this.subscribe(message).catch((error) => {
462
- if (timedOut) {
463
- this.logger.error(
464
- `Subscriber promise rejected after timeout for queue ${queueName} and messageId ${messageId}: ${(error as Error)?.message || String(error)}`,
465
- (error as Error)?.stack,
466
- );
467
- return undefined;
468
- }
469
- throw error;
470
- });
461
+ const subscribePromise = Promise.resolve()
462
+ .then(() => this.subscribe(message))
463
+ .catch((error) => {
464
+ if (timedOut) {
465
+ this.logger.error(
466
+ `Subscriber promise rejected after timeout for queue ${queueName} and messageId ${messageId}: ${(error as Error)?.message || String(error)}`,
467
+ (error as Error)?.stack,
468
+ );
469
+ return undefined;
470
+ }
471
+ throw error;
472
+ });
471
473
 
472
474
  // Timeout promise rejects after timeoutMs with an explicit domain-specific error.
473
475
  const timeoutPromise = new Promise<never>((_, reject) => {
@@ -23,7 +23,7 @@ export abstract class RedisSubscriber<T> implements OnModuleInit, OnModuleDestro
23
23
  }
24
24
  }
25
25
 
26
- abstract subscribe(message: QueueMessage<T>): void;
26
+ abstract subscribe(message: QueueMessage<T>): Promise<any>;
27
27
 
28
28
  abstract options(): QueuesModuleOptions;
29
29
 
@@ -205,4 +205,4 @@ export abstract class RedisSubscriber<T> implements OnModuleInit, OnModuleDestro
205
205
  this.logger.error(err.message, err.stack);
206
206
  }
207
207
  }
208
- }
208
+ }
@@ -4,7 +4,7 @@ import { BadRequestException, Injectable } from "@nestjs/common";
4
4
  import { ISelectionProvider, ISelectionProviderContext, ISelectionProviderValues } from "../../interfaces";
5
5
  import { BasicFilterDto } from "src/dtos/basic-filters.dto";
6
6
  import { SolidIntrospectService } from "../solid-introspect.service";
7
- import { classify } from "@angular-devkit/core/src/utils/strings";
7
+ import { classify } from '../../helpers/string.helper';
8
8
  import { CRUDService } from "../crud.service";
9
9
 
10
10
  interface PseudoForeignKeySelectionProviderContext extends ISelectionProviderContext {
@@ -1,4 +1,4 @@
1
- import { classify } from '@angular-devkit/core/src/utils/strings';
1
+ import { classify } from '../helpers/string.helper';
2
2
  import { Injectable, Logger, OnApplicationBootstrap } from '@nestjs/common';
3
3
  import { DiscoveryService, MetadataScanner, ModuleRef, Reflector } from '@nestjs/core';
4
4
  import { ModelMetadataHelperService } from 'src/helpers/model-metadata-helper.service';
@@ -4,8 +4,7 @@ import { InjectEntityManager } from '@nestjs/typeorm';
4
4
  import { CRUDService } from 'src/services/crud.service';
5
5
  import { EntityManager } from 'typeorm';
6
6
 
7
-
8
- import { classify } from '@angular-devkit/core/src/utils/strings';
7
+ import { classify } from '../helpers/string.helper';
9
8
  import { Locale } from 'src/entities/locale.entity';
10
9
  import { ModelMetadataHelperService } from 'src/helpers/model-metadata-helper.service';
11
10
  import { SolidRegistry } from 'src/helpers/solid-registry';
@@ -111,7 +110,6 @@ export class ViewMetadataService extends CRUDService<ViewMetadata> {
111
110
  async getLayout(query, activeUser) {
112
111
  let { modelName, moduleName, viewType, id, populate, menuItemId, menuItemName, actionId, actionName } = query;
113
112
 
114
-
115
113
  // 1. Fetch the action based on actionId.
116
114
  const solidRequestContext = {
117
115
  activeUser: activeUser
@@ -156,7 +154,6 @@ export class ViewMetadataService extends CRUDService<ViewMetadata> {
156
154
  }));
157
155
  }
158
156
 
159
-
160
157
  const viewId = action?.view?.id
161
158
  // 3. Fetch the view based on module, model & view name.
162
159
  const entity = await this.repo.findOne({
@@ -203,7 +200,6 @@ export class ViewMetadataService extends CRUDService<ViewMetadata> {
203
200
  entity.layout = JSON.parse(entity.layout);
204
201
  }
205
202
 
206
-
207
203
  // 6. We are resolving the create & edit actions if specified in the layout.
208
204
  if (entity?.layout?.attrs?.createAction) {
209
205
  const actionName: string = entity.layout.attrs.createAction;
@@ -1,4 +1,4 @@
1
- import { camelize } from "@angular-devkit/core/src/utils/strings";
1
+ import { camelCase } from 'lodash';
2
2
  import { Delete } from "@aws-sdk/client-s3";
3
3
  import { forwardRef, Inject, Injectable, InternalServerErrorException, Logger, Scope } from "@nestjs/common";
4
4
  import { model } from "mongoose";
@@ -35,33 +35,33 @@ export class ComputedEntityFieldSubscriber implements EntitySubscriberInterface
35
35
  }
36
36
 
37
37
  async beforeInsert(event: InsertEvent<any>): Promise<any> {
38
- const modelName = camelize(event.metadata?.name ?? event.entity?.constructor?.name ?? '');
38
+ const modelName = camelCase(event.metadata?.name ?? event.entity?.constructor?.name ?? '');
39
39
  const eventContext = this.sanitizeEventContext(event, 'beforeInsert');
40
40
  await this.handleComputedFieldEvaluation(event.entity, ComputedFieldTriggerOperation.beforeInsert, modelName, eventContext);
41
41
  }
42
42
 
43
43
  async beforeUpdate(event: UpdateEvent<any>): Promise<any> {
44
- const modelName = camelize(event.metadata?.name ?? event.entity?.constructor?.name ?? '');
44
+ const modelName = camelCase(event.metadata?.name ?? event.entity?.constructor?.name ?? '');
45
45
  const eventContext = this.sanitizeEventContext(event, 'beforeUpdate');
46
46
  // await this.handleComputedFieldEvaluation(event.databaseEntity, ComputedFieldTriggerOperation.beforeUpdate, modelName, eventContext);
47
47
  await this.handleComputedFieldEvaluation(event.entity, ComputedFieldTriggerOperation.beforeUpdate, modelName, eventContext);
48
48
  }
49
49
 
50
50
  afterInsert(event: InsertEvent<any>) {
51
- const modelName = camelize(event.metadata?.name ?? event.entity?.constructor?.name ?? '');
51
+ const modelName = camelCase(event.metadata?.name ?? event.entity?.constructor?.name ?? '');
52
52
  const eventContext = this.sanitizeEventContext(event, 'afterInsert');
53
53
  this.handleComputedFieldEvaluationJob(event.entity, ComputedFieldTriggerOperation.afterInsert, modelName, eventContext);
54
54
  }
55
55
 
56
56
  afterUpdate(event: UpdateEvent<any>) {
57
- const modelName = camelize(event.metadata?.name ?? event.entity?.constructor?.name ?? event.databaseEntity?.constructor?.name ?? '');
57
+ const modelName = camelCase(event.metadata?.name ?? event.entity?.constructor?.name ?? event.databaseEntity?.constructor?.name ?? '');
58
58
  const eventContext = this.sanitizeEventContext(event, 'afterUpdate');
59
59
  // this.handleComputedFieldEvaluationJob(event.databaseEntity, ComputedFieldTriggerOperation.afterUpdate, modelName, eventContext);
60
60
  this.handleComputedFieldEvaluationJob(event.entity, ComputedFieldTriggerOperation.afterUpdate, modelName, eventContext);
61
61
  }
62
62
 
63
63
  afterRemove(event: RemoveEvent<any>) {
64
- const modelName = camelize(event.metadata?.name ?? event.entity?.constructor?.name ?? event.databaseEntity?.constructor?.name ?? '');
64
+ const modelName = camelCase(event.metadata?.name ?? event.entity?.constructor?.name ?? event.databaseEntity?.constructor?.name ?? '');
65
65
  const eventContext = this.sanitizeEventContext(event, 'afterRemove');
66
66
  this.handleComputedFieldEvaluationJob(event.databaseEntity, ComputedFieldTriggerOperation.afterRemove, modelName, eventContext);
67
67
  }
@@ -7,7 +7,7 @@ import * as winston from 'winston';
7
7
  import { Environment } from './decorators/disallow-in-production.decorator';
8
8
 
9
9
  export const WinstonLoggerConfig = {
10
- level: process.env.LOG_LEVEL || (process.env.ENV === Environment.Production ? 'warn' : 'debug'),
10
+ level: process.env.LOG_LEVEL || (process.env.ENV === Environment.Production ? 'info' : 'debug'),
11
11
  format: winston.format.combine(
12
12
  winston.format.timestamp(),
13
13
  winston.format.errors({ stack: true }),