@solidstarters/solid-core 1.2.145 → 1.2.148
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.
- package/dist/config/common.config.d.ts +10 -0
- package/dist/config/common.config.d.ts.map +1 -1
- package/dist/config/common.config.js +6 -1
- package/dist/config/common.config.js.map +1 -1
- package/dist/decorators/mail-provider.decorator.d.ts +3 -0
- package/dist/decorators/mail-provider.decorator.d.ts.map +1 -0
- package/dist/decorators/mail-provider.decorator.js +11 -0
- package/dist/decorators/mail-provider.decorator.js.map +1 -0
- package/dist/factories/mail.factory.d.ts +14 -0
- package/dist/factories/mail.factory.d.ts.map +1 -0
- package/dist/factories/mail.factory.js +50 -0
- package/dist/factories/mail.factory.js.map +1 -0
- package/dist/helpers/solid-registry.d.ts +3 -0
- package/dist/helpers/solid-registry.d.ts.map +1 -1
- package/dist/helpers/solid-registry.js +7 -0
- package/dist/helpers/solid-registry.js.map +1 -1
- package/dist/index.d.ts +7 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -4
- package/dist/index.js.map +1 -1
- package/dist/interfaces.d.ts +5 -5
- package/dist/interfaces.d.ts.map +1 -1
- package/dist/interfaces.js.map +1 -1
- package/dist/jobs/database/api-email-subscriber-database.service.d.ts +3 -1
- package/dist/jobs/database/api-email-subscriber-database.service.d.ts.map +1 -1
- package/dist/jobs/database/api-email-subscriber-database.service.js +6 -3
- package/dist/jobs/database/api-email-subscriber-database.service.js.map +1 -1
- package/dist/jobs/database/computed-field-evaluation-subscriber.service.d.ts +3 -1
- package/dist/jobs/database/computed-field-evaluation-subscriber.service.d.ts.map +1 -1
- package/dist/jobs/database/computed-field-evaluation-subscriber.service.js +6 -3
- package/dist/jobs/database/computed-field-evaluation-subscriber.service.js.map +1 -1
- package/dist/jobs/database/generate-code-subscriber-database.service.d.ts +3 -1
- package/dist/jobs/database/generate-code-subscriber-database.service.d.ts.map +1 -1
- package/dist/jobs/database/generate-code-subscriber-database.service.js +6 -3
- package/dist/jobs/database/generate-code-subscriber-database.service.js.map +1 -1
- package/dist/jobs/database/otp-subscriber-database.service.d.ts +3 -1
- package/dist/jobs/database/otp-subscriber-database.service.d.ts.map +1 -1
- package/dist/jobs/database/otp-subscriber-database.service.js +5 -2
- package/dist/jobs/database/otp-subscriber-database.service.js.map +1 -1
- package/dist/jobs/database/sms-subscriber-database.service.d.ts +4 -2
- package/dist/jobs/database/sms-subscriber-database.service.d.ts.map +1 -1
- package/dist/jobs/database/sms-subscriber-database.service.js +7 -4
- package/dist/jobs/database/sms-subscriber-database.service.js.map +1 -1
- package/dist/jobs/database/{email-publisher-database.service.d.ts → smtp-email-publisher-database.service.d.ts} +2 -2
- package/dist/jobs/database/smtp-email-publisher-database.service.d.ts.map +1 -0
- package/dist/jobs/database/{email-publisher-database.service.js → smtp-email-publisher-database.service.js} +8 -8
- package/dist/jobs/database/smtp-email-publisher-database.service.js.map +1 -0
- package/dist/jobs/database/{email-queue-options-database.d.ts → smtp-email-queue-options-database.d.ts} +1 -1
- package/dist/jobs/database/smtp-email-queue-options-database.d.ts.map +1 -0
- package/dist/jobs/database/{email-queue-options-database.js → smtp-email-queue-options-database.js} +1 -1
- package/dist/jobs/database/smtp-email-queue-options-database.js.map +1 -0
- package/dist/jobs/database/{email-subscriber-database.service.d.ts → smtp-email-subscriber-database.service.d.ts} +6 -4
- package/dist/jobs/database/smtp-email-subscriber-database.service.d.ts.map +1 -0
- package/dist/jobs/database/{email-subscriber-database.service.js → smtp-email-subscriber-database.service.js} +14 -11
- package/dist/jobs/database/smtp-email-subscriber-database.service.js.map +1 -0
- package/dist/jobs/database/test-queue-subscriber-database.service.d.ts +3 -1
- package/dist/jobs/database/test-queue-subscriber-database.service.d.ts.map +1 -1
- package/dist/jobs/database/test-queue-subscriber-database.service.js +6 -3
- package/dist/jobs/database/test-queue-subscriber-database.service.js.map +1 -1
- package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.d.ts +3 -1
- package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.d.ts.map +1 -1
- package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.js +5 -2
- package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.js.map +1 -1
- package/dist/jobs/database/twilio-sms-publisher-database.service.d.ts +11 -0
- package/dist/jobs/database/twilio-sms-publisher-database.service.d.ts.map +1 -0
- package/dist/jobs/database/twilio-sms-publisher-database.service.js +39 -0
- package/dist/jobs/database/twilio-sms-publisher-database.service.js.map +1 -0
- package/dist/jobs/database/twilio-sms-queue-database-options.d.ts +8 -0
- package/dist/jobs/database/twilio-sms-queue-database-options.d.ts.map +1 -0
- package/dist/jobs/database/twilio-sms-queue-database-options.js +10 -0
- package/dist/jobs/database/twilio-sms-queue-database-options.js.map +1 -0
- package/dist/jobs/database/twilio-sms-subscriber-database.service.d.ts +17 -0
- package/dist/jobs/database/twilio-sms-subscriber-database.service.d.ts.map +1 -0
- package/dist/jobs/database/twilio-sms-subscriber-database.service.js +48 -0
- package/dist/jobs/database/twilio-sms-subscriber-database.service.js.map +1 -0
- package/dist/jobs/database/whatsapp-subscriber-database.service.d.ts +3 -1
- package/dist/jobs/database/whatsapp-subscriber-database.service.d.ts.map +1 -1
- package/dist/jobs/database/whatsapp-subscriber-database.service.js +6 -3
- package/dist/jobs/database/whatsapp-subscriber-database.service.js.map +1 -1
- package/dist/jobs/sms-subscriber.service.d.ts +1 -1
- package/dist/jobs/sms-subscriber.service.js +1 -1
- package/dist/jobs/sms-subscriber.service.js.map +1 -1
- package/dist/jobs/{email-publisher.service.d.ts → smtp-email-publisher.service.d.ts} +2 -2
- package/dist/jobs/smtp-email-publisher.service.d.ts.map +1 -0
- package/dist/jobs/{email-publisher.service.js → smtp-email-publisher.service.js} +8 -8
- package/dist/jobs/smtp-email-publisher.service.js.map +1 -0
- package/dist/jobs/{email-queue-options.d.ts → smtp-email-queue-options.d.ts} +1 -1
- package/dist/jobs/smtp-email-queue-options.d.ts.map +1 -0
- package/dist/jobs/{email-queue-options.js → smtp-email-queue-options.js} +1 -1
- package/dist/jobs/smtp-email-queue-options.js.map +1 -0
- package/dist/jobs/{email-subscriber.service.d.ts → smtp-email-subscriber.service.d.ts} +3 -3
- package/dist/jobs/smtp-email-subscriber.service.d.ts.map +1 -0
- package/dist/jobs/{email-subscriber.service.js → smtp-email-subscriber.service.js} +8 -8
- package/dist/jobs/smtp-email-subscriber.service.js.map +1 -0
- package/dist/seeders/module-metadata-seeder.service.d.ts +1 -1
- package/dist/seeders/module-metadata-seeder.service.d.ts.map +1 -1
- package/dist/seeders/module-metadata-seeder.service.js +42 -31
- package/dist/seeders/module-metadata-seeder.service.js.map +1 -1
- package/dist/services/authentication.service.d.ts +3 -3
- package/dist/services/authentication.service.d.ts.map +1 -1
- package/dist/services/authentication.service.js +16 -12
- package/dist/services/authentication.service.js.map +1 -1
- package/dist/services/mail/elastic-email.service.d.ts.map +1 -1
- package/dist/services/mail/elastic-email.service.js +2 -0
- package/dist/services/mail/elastic-email.service.js.map +1 -1
- package/dist/services/mail/smtp-email.service.d.ts +6 -6
- package/dist/services/mail/smtp-email.service.d.ts.map +1 -1
- package/dist/services/mail/smtp-email.service.js +17 -11
- package/dist/services/mail/smtp-email.service.js.map +1 -1
- package/dist/services/poller.service.d.ts +24 -0
- package/dist/services/poller.service.d.ts.map +1 -0
- package/dist/services/poller.service.js +131 -0
- package/dist/services/poller.service.js.map +1 -0
- package/dist/services/queues/database-subscriber.service.d.ts +4 -1
- package/dist/services/queues/database-subscriber.service.d.ts.map +1 -1
- package/dist/services/queues/database-subscriber.service.js +13 -13
- package/dist/services/queues/database-subscriber.service.js.map +1 -1
- package/dist/services/sms/Msg91BaseSMSService.d.ts +2 -2
- package/dist/services/sms/Msg91BaseSMSService.d.ts.map +1 -1
- package/dist/services/sms/Msg91BaseSMSService.js.map +1 -1
- package/dist/services/sms/Msg91OTPService.d.ts +1 -1
- package/dist/services/sms/Msg91OTPService.d.ts.map +1 -1
- package/dist/services/sms/Msg91OTPService.js.map +1 -1
- package/dist/services/sms/Msg91SMSService.d.ts +1 -1
- package/dist/services/sms/Msg91SMSService.d.ts.map +1 -1
- package/dist/services/sms/Msg91SMSService.js.map +1 -1
- package/dist/services/sms/TwilioSMSService.d.ts +18 -0
- package/dist/services/sms/TwilioSMSService.d.ts.map +1 -0
- package/dist/services/sms/TwilioSMSService.js +115 -0
- package/dist/services/sms/TwilioSMSService.js.map +1 -0
- package/dist/services/solid-introspect.service.d.ts +1 -0
- package/dist/services/solid-introspect.service.d.ts.map +1 -1
- package/dist/services/solid-introspect.service.js +14 -0
- package/dist/services/solid-introspect.service.js.map +1 -1
- package/dist/solid-core.module.d.ts.map +1 -1
- package/dist/solid-core.module.js +21 -8
- package/dist/solid-core.module.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -3
- package/src/config/common.config.ts +6 -1
- package/src/decorators/mail-provider.decorator.ts +7 -0
- package/src/factories/mail.factory.ts +38 -0
- package/src/helpers/solid-registry.ts +9 -0
- package/src/index.ts +10 -3
- package/src/interfaces.ts +11 -5
- package/src/jobs/database/api-email-subscriber-database.service.ts +3 -1
- package/src/jobs/database/computed-field-evaluation-subscriber.service.ts +4 -2
- package/src/jobs/database/generate-code-subscriber-database.service.ts +3 -1
- package/src/jobs/database/otp-subscriber-database.service.ts +3 -1
- package/src/jobs/database/sms-subscriber-database.service.ts +4 -2
- package/src/jobs/database/{email-publisher-database.service.ts → smtp-email-publisher-database.service.ts} +2 -2
- package/src/jobs/database/{email-subscriber-database.service.ts → smtp-email-subscriber-database.service.ts} +5 -3
- package/src/jobs/database/test-queue-subscriber-database.service.ts +3 -1
- package/src/jobs/database/trigger-mcp-client-subscriber-database.service.ts +3 -1
- package/src/jobs/database/twilio-sms-publisher-database.service.ts +23 -0
- package/src/jobs/database/twilio-sms-queue-database-options.ts +9 -0
- package/src/jobs/database/twilio-sms-subscriber-database.service.ts +32 -0
- package/src/jobs/database/whatsapp-subscriber-database.service.ts +3 -1
- package/src/jobs/sms-subscriber.service.ts +1 -1
- package/src/jobs/{email-publisher.service.ts → smtp-email-publisher.service.ts} +2 -2
- package/src/jobs/{email-subscriber.service.ts → smtp-email-subscriber.service.ts} +2 -2
- package/src/seeders/module-metadata-seeder.service.ts +45 -42
- package/src/services/authentication.service.ts +24 -9
- package/src/services/mail/elastic-email.service.ts +2 -0
- package/src/services/mail/smtp-email.service.ts +48 -21
- package/src/services/poller.service.ts +163 -0
- package/src/services/queues/database-subscriber.service.ts +39 -12
- package/src/services/sms/Msg91BaseSMSService.ts +2 -2
- package/src/services/sms/Msg91OTPService.ts +1 -1
- package/src/services/sms/Msg91SMSService.ts +1 -1
- package/src/services/sms/TwilioSMSService.ts +118 -0
- package/src/services/solid-introspect.service.ts +21 -5
- package/src/solid-core.module.ts +24 -8
- package/dist/jobs/database/email-publisher-database.service.d.ts.map +0 -1
- package/dist/jobs/database/email-publisher-database.service.js.map +0 -1
- package/dist/jobs/database/email-queue-options-database.d.ts.map +0 -1
- package/dist/jobs/database/email-queue-options-database.js.map +0 -1
- package/dist/jobs/database/email-subscriber-database.service.d.ts.map +0 -1
- package/dist/jobs/database/email-subscriber-database.service.js.map +0 -1
- package/dist/jobs/email-publisher.service.d.ts.map +0 -1
- package/dist/jobs/email-publisher.service.js.map +0 -1
- package/dist/jobs/email-queue-options.d.ts.map +0 -1
- package/dist/jobs/email-queue-options.js.map +0 -1
- package/dist/jobs/email-subscriber.service.d.ts.map +0 -1
- package/dist/jobs/email-subscriber.service.js.map +0 -1
- /package/src/jobs/database/{email-queue-options-database.ts → smtp-email-queue-options-database.ts} +0 -0
- /package/src/jobs/{email-queue-options.ts → smtp-email-queue-options.ts} +0 -0
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
15
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
16
|
+
};
|
|
17
|
+
var TwilioSMSService_1;
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
exports.TwilioSMSService = void 0;
|
|
20
|
+
const handlebars_1 = __importDefault(require("handlebars"));
|
|
21
|
+
const common_1 = require("@nestjs/common");
|
|
22
|
+
const common_config_1 = __importDefault(require("../../config/common.config"));
|
|
23
|
+
const sms_template_service_1 = require("../sms-template.service");
|
|
24
|
+
const publisher_factory_service_1 = require("../queues/publisher-factory.service");
|
|
25
|
+
const twilio_1 = __importDefault(require("twilio"));
|
|
26
|
+
let TwilioSMSService = TwilioSMSService_1 = class TwilioSMSService {
|
|
27
|
+
constructor(commonConfiguration, publisherFactory, smsTemplateService) {
|
|
28
|
+
this.commonConfiguration = commonConfiguration;
|
|
29
|
+
this.publisherFactory = publisherFactory;
|
|
30
|
+
this.smsTemplateService = smsTemplateService;
|
|
31
|
+
this.logger = new common_1.Logger(TwilioSMSService_1.name);
|
|
32
|
+
}
|
|
33
|
+
async sendSMS(to, body, shouldQueueSms) {
|
|
34
|
+
const accountSid = this.commonConfiguration.twilio.accountSid;
|
|
35
|
+
const authToken = this.commonConfiguration.twilio.authToken;
|
|
36
|
+
const twilioNumber = this.commonConfiguration.twilio.number;
|
|
37
|
+
if (!accountSid || !authToken || !twilioNumber) {
|
|
38
|
+
throw new Error("Missing COMMON_TWILIO_ACCOUNT_SID or COMMON_TWILIO_AUTH_TOKEN or COMMON_TWILIO_NUMBER in env.");
|
|
39
|
+
}
|
|
40
|
+
const message = {
|
|
41
|
+
payload: {
|
|
42
|
+
body: body,
|
|
43
|
+
to: to,
|
|
44
|
+
},
|
|
45
|
+
};
|
|
46
|
+
if (shouldQueueSms === true) {
|
|
47
|
+
await this.sendSMSAsynchronously(message);
|
|
48
|
+
}
|
|
49
|
+
else if (shouldQueueSms === false && this.commonConfiguration.shouldQueueSms === true) {
|
|
50
|
+
await this.sendSMSAsynchronously(message);
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
await this.sendSMSSynchronously(message);
|
|
54
|
+
}
|
|
55
|
+
return message;
|
|
56
|
+
}
|
|
57
|
+
async sendSMSUsingTemplate(to, templateName, templateParams, shouldQueueSms) {
|
|
58
|
+
const smsTemplate = await this.smsTemplateService.findOneByName(templateName);
|
|
59
|
+
if (!smsTemplate) {
|
|
60
|
+
throw new Error(`Invalid template name ${templateName}`);
|
|
61
|
+
}
|
|
62
|
+
let body = '';
|
|
63
|
+
try {
|
|
64
|
+
const bodyTemplate = handlebars_1.default.compile(smsTemplate.body);
|
|
65
|
+
body = bodyTemplate(templateParams);
|
|
66
|
+
}
|
|
67
|
+
catch (error) {
|
|
68
|
+
throw new Error('Unable to compile sms template body');
|
|
69
|
+
}
|
|
70
|
+
return await this.sendSMS(to, body, shouldQueueSms);
|
|
71
|
+
}
|
|
72
|
+
async sendSMSAsynchronously(message) {
|
|
73
|
+
const { to } = message.payload;
|
|
74
|
+
this.publisherFactory.publish(message, 'TwilioSmsQueuePublisher');
|
|
75
|
+
this.logger.debug(`Queueing SMS to ${to} with message ${JSON.stringify(message)}`);
|
|
76
|
+
}
|
|
77
|
+
async sendSMSSynchronously(message) {
|
|
78
|
+
const accountSid = this.commonConfiguration.twilio.accountSid;
|
|
79
|
+
const authToken = this.commonConfiguration.twilio.authToken;
|
|
80
|
+
const twilioNumber = this.commonConfiguration.twilio.number;
|
|
81
|
+
if (!accountSid || !authToken || !twilioNumber) {
|
|
82
|
+
throw new Error("Missing COMMON_TWILIO_ACCOUNT_SID or COMMON_TWILIO_AUTH_TOKEN or COMMON_TWILIO_NUMBER in env.");
|
|
83
|
+
}
|
|
84
|
+
const { to, body } = message.payload;
|
|
85
|
+
const client = (0, twilio_1.default)(accountSid, authToken);
|
|
86
|
+
try {
|
|
87
|
+
const toSplit = to.split(',');
|
|
88
|
+
const r = [];
|
|
89
|
+
for (let i = 0; i < toSplit.length; i++) {
|
|
90
|
+
const actualTo = toSplit[i];
|
|
91
|
+
const twilioResponseMsg = await client.messages.create({
|
|
92
|
+
body: body,
|
|
93
|
+
from: twilioNumber,
|
|
94
|
+
to: actualTo,
|
|
95
|
+
});
|
|
96
|
+
this.logger.debug(`Sending SMS to ${actualTo} using Twilio`);
|
|
97
|
+
this.logger.debug(`Twilio response: `);
|
|
98
|
+
this.logger.debug(JSON.stringify(twilioResponseMsg));
|
|
99
|
+
r.push(twilioResponseMsg);
|
|
100
|
+
}
|
|
101
|
+
return r;
|
|
102
|
+
}
|
|
103
|
+
catch (error) {
|
|
104
|
+
throw new Error(error);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
exports.TwilioSMSService = TwilioSMSService;
|
|
109
|
+
exports.TwilioSMSService = TwilioSMSService = TwilioSMSService_1 = __decorate([
|
|
110
|
+
(0, common_1.Injectable)(),
|
|
111
|
+
__param(0, (0, common_1.Inject)(common_config_1.default.KEY)),
|
|
112
|
+
__metadata("design:paramtypes", [void 0, publisher_factory_service_1.PublisherFactory,
|
|
113
|
+
sms_template_service_1.SmsTemplateService])
|
|
114
|
+
], TwilioSMSService);
|
|
115
|
+
//# sourceMappingURL=TwilioSMSService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TwilioSMSService.js","sourceRoot":"","sources":["../../../src/services/sms/TwilioSMSService.ts"],"names":[],"mappings":"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","sourcesContent":["import Handlebars from \"handlebars\";\nimport { Inject, Injectable, Logger } from \"@nestjs/common\";\nimport { ConfigType } from \"@nestjs/config\";\nimport commonConfig from \"src/config/common.config\";\nimport { SmsTemplateService } from \"../sms-template.service\";\nimport { ISMS } from \"../../interfaces\";\nimport { PublisherFactory } from \"../queues/publisher-factory.service\";\nimport twilio from 'twilio';\nimport { QueueMessage } from \"src/interfaces/mq\";\n\n\n@Injectable()\nexport class TwilioSMSService implements ISMS {\n private readonly logger = new Logger(TwilioSMSService.name);\n\n constructor(\n @Inject(commonConfig.KEY)\n private commonConfiguration: ConfigType<typeof commonConfig>,\n private publisherFactory: PublisherFactory<any>,\n private smsTemplateService: SmsTemplateService,\n ) {\n // super(commonConfiguration, 'OTPQueuePublisher', publisherFactory, smsTemplateService);\n }\n\n async sendSMS(to: string, body: string, shouldQueueSms: boolean): Promise<any> {\n const accountSid = this.commonConfiguration.twilio.accountSid;\n const authToken = this.commonConfiguration.twilio.authToken;\n const twilioNumber = this.commonConfiguration.twilio.number;\n if (!accountSid || !authToken || !twilioNumber) {\n throw new Error(\"Missing COMMON_TWILIO_ACCOUNT_SID or COMMON_TWILIO_AUTH_TOKEN or COMMON_TWILIO_NUMBER in env.\");\n }\n\n const message = {\n payload: {\n body: body,\n to: to,\n },\n };\n\n // Send using queue if the developer has explicitly invoked with true.\n if (shouldQueueSms === true) {\n await this.sendSMSAsynchronously(message);\n }\n // If developer has not, however system config mandates that we send using queue, still we send.\n else if (shouldQueueSms === false && this.commonConfiguration.shouldQueueSms === true) {\n await this.sendSMSAsynchronously(message);\n }\n // Else we send synch\n else {\n await this.sendSMSSynchronously(message);\n }\n\n return message;\n }\n\n async sendSMSUsingTemplate(to: string, templateName: string, templateParams: any, shouldQueueSms: boolean): Promise<any> {\n // Load template and evaluate it.\n const smsTemplate = await this.smsTemplateService.findOneByName(templateName);\n if (!smsTemplate) {\n throw new Error(`Invalid template name ${templateName}`);\n }\n\n // Evaluate the body template.\n let body = '';\n try {\n const bodyTemplate = Handlebars.compile(smsTemplate.body);\n body = bodyTemplate(templateParams);\n } catch (error) {\n throw new Error('Unable to compile sms template body');\n }\n // Finally send the email.\n return await this.sendSMS(to, body, shouldQueueSms);\n\n }\n\n async sendSMSAsynchronously(message) {\n const { to } = message.payload;\n this.publisherFactory.publish(message, 'TwilioSmsQueuePublisher');\n this.logger.debug(`Queueing SMS to ${to} with message ${JSON.stringify(message)}`);\n }\n\n async sendSMSSynchronously(message: QueueMessage<any>): Promise<any> {\n const accountSid = this.commonConfiguration.twilio.accountSid;\n const authToken = this.commonConfiguration.twilio.authToken;\n const twilioNumber = this.commonConfiguration.twilio.number;\n if (!accountSid || !authToken || !twilioNumber) {\n throw new Error(\"Missing COMMON_TWILIO_ACCOUNT_SID or COMMON_TWILIO_AUTH_TOKEN or COMMON_TWILIO_NUMBER in env.\");\n }\n\n const { to, body } = message.payload;\n\n const client = twilio(accountSid, authToken);\n try {\n const toSplit = to.split(',');\n\n const r = [];\n\n for (let i = 0; i < toSplit.length; i++) {\n const actualTo = toSplit[i];\n const twilioResponseMsg = await client.messages.create({\n body: body,\n from: twilioNumber,\n to: actualTo,\n });\n\n this.logger.debug(`Sending SMS to ${actualTo} using Twilio`);\n this.logger.debug(`Twilio response: `);\n this.logger.debug(JSON.stringify(twilioResponseMsg))\n\n r.push(twilioResponseMsg);\n }\n\n return r;\n } catch (error) {\n throw new Error(error);\n }\n }\n}"]}
|
|
@@ -18,6 +18,7 @@ export declare class SolidIntrospectService implements OnApplicationBootstrap {
|
|
|
18
18
|
private isComputedFieldProvider;
|
|
19
19
|
private isScheduledJobProvider;
|
|
20
20
|
private isSolidDatabaseModule;
|
|
21
|
+
private isMailProvider;
|
|
21
22
|
private isModule;
|
|
22
23
|
getCRUDService(modelSingularName: string): CRUDService<any>;
|
|
23
24
|
getProvider(providerName: string): InstanceWrapper<any>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solid-introspect.service.d.ts","sourceRoot":"","sources":["../../src/services/solid-introspect.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AAIzE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"solid-introspect.service.d.ts","sourceRoot":"","sources":["../../src/services/solid-introspect.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AAIzE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAM7C,qBACa,sBAAuB,YAAW,sBAAsB;IAEjE,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAHb,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,EAAE,SAAS,EACpB,eAAe,EAAE,eAAe,EAChC,aAAa,EAAE,aAAa;IAG/C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2C;IAClE,sBAAsB;IAkGtB,+BAA+B,CAAC,eAAe,EAAE,eAAe,CAAC,GAAG,CAAC;IAWrE,OAAO,CAAC,QAAQ;IAWhB,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,oCAAoC;IAU5C,OAAO,CAAC,uBAAuB;IAY/B,OAAO,CAAC,sBAAsB;IAY9B,OAAO,CAAC,qBAAqB;IAY7B,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,QAAQ;IAuBhB,cAAc,CAAC,iBAAiB,EAAE,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC;IAK3D,WAAW,CAAC,YAAY,EAAE,MAAM;CAGjC"}
|
|
@@ -21,6 +21,7 @@ const solid_registry_1 = require("../helpers/solid-registry");
|
|
|
21
21
|
const scheduled_job_provider_decorator_1 = require("../decorators/scheduled-job-provider.decorator");
|
|
22
22
|
const dashboard_selection_provider_decorator_1 = require("../decorators/dashboard-selection-provider.decorator");
|
|
23
23
|
const dashboard_question_data_provider_decorator_1 = require("../decorators/dashboard-question-data-provider.decorator");
|
|
24
|
+
const mail_provider_decorator_1 = require("../decorators/mail-provider.decorator");
|
|
24
25
|
let SolidIntrospectService = SolidIntrospectService_1 = class SolidIntrospectService {
|
|
25
26
|
constructor(discoveryService, reflector, metadataScanner, solidRegistry) {
|
|
26
27
|
this.discoveryService = discoveryService;
|
|
@@ -87,6 +88,12 @@ let SolidIntrospectService = SolidIntrospectService_1 = class SolidIntrospectSer
|
|
|
87
88
|
scheduledJobProviders.forEach((scheduledJobProvider) => {
|
|
88
89
|
this.solidRegistry.registerScheduledJobProvider(scheduledJobProvider);
|
|
89
90
|
});
|
|
91
|
+
const mailProviders = this.discoveryService
|
|
92
|
+
.getProviders()
|
|
93
|
+
.filter((provider) => this.isMailProvider(provider));
|
|
94
|
+
mailProviders.forEach((mailProvider) => {
|
|
95
|
+
this.solidRegistry.registerMailProvider(mailProvider);
|
|
96
|
+
});
|
|
90
97
|
}
|
|
91
98
|
isDashboardQuestionDataProvider(providerWrapper) {
|
|
92
99
|
const { instance } = providerWrapper;
|
|
@@ -141,6 +148,13 @@ let SolidIntrospectService = SolidIntrospectService_1 = class SolidIntrospectSer
|
|
|
141
148
|
const isSolidDatabaseModule = this.reflector.get(solid_database_module_decorator_1.IS_SOLID_DATABASE_MODULE, instance.constructor);
|
|
142
149
|
return !!isSolidDatabaseModule;
|
|
143
150
|
}
|
|
151
|
+
isMailProvider(provider) {
|
|
152
|
+
const { instance } = provider;
|
|
153
|
+
if (!instance)
|
|
154
|
+
return false;
|
|
155
|
+
const isMailProvider = this.reflector.get(mail_provider_decorator_1.IS_MAIL_PROVIDER, instance.constructor);
|
|
156
|
+
return !!isMailProvider;
|
|
157
|
+
}
|
|
144
158
|
isModule(provider) {
|
|
145
159
|
const metatype = provider.metatype;
|
|
146
160
|
if (metatype && typeof metatype === 'function' && Reflect.getMetadata('imports', metatype)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solid-introspect.service.js","sourceRoot":"","sources":["../../src/services/solid-introspect.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { classify } from '@angular-devkit/core/src/utils/strings';\nimport { Injectable, Logger, OnApplicationBootstrap } from '@nestjs/common';\nimport { DiscoveryService, MetadataScanner, Reflector } from '@nestjs/core';\nimport { InstanceWrapper } from '@nestjs/core/injector/instance-wrapper';\nimport { IS_COMPUTED_FIELD_PROVIDER } from 'src/decorators/computed-field-provider.decorator';\nimport { IS_SELECTION_PROVIDER } from 'src/decorators/selection-provider.decorator';\nimport { IS_SOLID_DATABASE_MODULE } from 'src/decorators/solid-database-module.decorator';\nimport { SolidRegistry } from 'src/helpers/solid-registry';\nimport { CRUDService } from './crud.service';\nimport { IS_SCHEDULED_JOB_PROVIDER } from 'src/decorators/scheduled-job-provider.decorator';\nimport { IS_DASHBOARD_VARIABLE_SELECTION_PROVIDER } from 'src/decorators/dashboard-selection-provider.decorator';\nimport { IS_DASHBOARD_QUESTION_DATA_PROVIDER } from 'src/decorators/dashboard-question-data-provider.decorator';\n\n@Injectable()\nexport class SolidIntrospectService implements OnApplicationBootstrap {\n constructor(\n private readonly discoveryService: DiscoveryService,\n private readonly reflector: Reflector,\n private readonly metadataScanner: MetadataScanner,\n private readonly solidRegistry: SolidRegistry,\n ) { }\n\n private readonly logger = new Logger(SolidIntrospectService.name);\n onApplicationBootstrap() {\n this.logger.log('Introspecting the application for Solid metadata');\n\n // Register all seeders\n const seeders = this.discoveryService\n .getProviders()\n .filter((provider) => this.isSeeder(provider));\n seeders.forEach((seeder) => {\n this.solidRegistry.registerSeeder(seeder);\n });\n\n // TODO: Scan the filesystem and populate the solid metadata\n\n // Register all ISelectionProvider implementations\n const selectionProviders = this.discoveryService\n .getProviders()\n .filter((provider) => this.isSelectionProvider(provider));\n\n selectionProviders.forEach((selectionProvider) => {\n // @ts-ignore\n this.solidRegistry.registerSelectionProvider(selectionProvider);\n });\n\n // Register all IDashboardSelectionProvider implementations\n const dashboardVariableSelectionProviders = this.discoveryService\n .getProviders()\n .filter((provider) => this.isDashboardVariableSelectionProvider(provider));\n\n dashboardVariableSelectionProviders.forEach((dashboardSelectionProvider) => {\n // @ts-ignore\n this.solidRegistry.registerDashboardVariableSelectionProvider(dashboardSelectionProvider);\n });\n\n // Register all IDashboardSelectionProvider implementations\n const dashboardQuestionDataProviders = this.discoveryService\n .getProviders()\n .filter((provider) => this.isDashboardQuestionDataProvider(provider));\n\n dashboardQuestionDataProviders.forEach((provider) => {\n // @ts-ignore\n this.solidRegistry.registerDashboardQuestionDataProvider(provider);\n });\n\n\n // Register all IComputedProvider implementations\n const computedFieldProviders = this.discoveryService\n .getProviders()\n .filter((provider) => this.isComputedFieldProvider(provider));\n\n computedFieldProviders.forEach((computedFieldProvider) => {\n // @ts-ignore\n this.solidRegistry.registerComputedFieldProvider(computedFieldProvider);\n });\n\n // Register all ISolidDatabaseModules implementations\n const solidDatabaseModules = this.discoveryService\n .getProviders()\n .filter((provider) => this.isSolidDatabaseModule(provider));\n\n solidDatabaseModules.forEach((solidDatabaseModule) => {\n // @ts-ignore\n this.solidRegistry.registerSolidDatabaseModule(solidDatabaseModule);\n });\n\n // keep track of all the controllers & respective methods. \n const allControllers = this.discoveryService\n .getControllers()\n .map((controller) => {\n const { instance } = controller;\n return {\n name: controller.name,\n methods: this.metadataScanner.getAllMethodNames(Object.getPrototypeOf(instance))\n };\n });\n\n this.solidRegistry.registerControllers(new Set(allControllers));\n\n // Register all modules\n const allModules = this.discoveryService\n .getProviders()\n .filter((provider) => this.isModule(provider));\n this.solidRegistry.registerModules(allModules);\n\n // Register all IScheduledJob implementations\n const scheduledJobProviders = this.discoveryService\n .getProviders()\n .filter((provider) => this.isScheduledJobProvider(provider));\n\n scheduledJobProviders.forEach((scheduledJobProvider) => {\n // @ts-ignore\n this.solidRegistry.registerScheduledJobProvider(scheduledJobProvider);\n });\n\n }\n\n isDashboardQuestionDataProvider(providerWrapper: InstanceWrapper<any>) {\n const { instance } = providerWrapper;\n if (!instance) return false;\n const provider = this.reflector.get<boolean>(\n IS_DASHBOARD_QUESTION_DATA_PROVIDER,\n instance.constructor,\n );\n return !!provider;\n }\n\n // This method identifies a provider as a seeder if it has a seed method i.e duck typing\n private isSeeder(provider: InstanceWrapper) {\n const { instance } = provider;\n if (!instance) return false;\n\n const seedMethod = this.metadataScanner\n .getAllMethodNames(Object.getPrototypeOf(instance))\n .find((methodName) => methodName === 'seed');\n if (!seedMethod) return false;\n return true;\n }\n\n private isSelectionProvider(provider: InstanceWrapper) {\n const { instance } = provider;\n if (!instance) return false;\n\n const isSelectionProvider = this.reflector.get<boolean>(\n IS_SELECTION_PROVIDER,\n instance.constructor,\n );\n\n return !!isSelectionProvider;\n }\n\n private isDashboardVariableSelectionProvider(provider: InstanceWrapper) {\n const { instance } = provider;\n if (!instance) return false;\n const isDashboardSelectionProvider = this.reflector.get<boolean>(\n IS_DASHBOARD_VARIABLE_SELECTION_PROVIDER,\n instance.constructor,\n );\n return !!isDashboardSelectionProvider;\n }\n\n private isComputedFieldProvider(provider: InstanceWrapper) {\n const { instance } = provider;\n if (!instance) return false;\n\n const isComputedFieldProvider = this.reflector.get<boolean>(\n IS_COMPUTED_FIELD_PROVIDER,\n instance.constructor,\n );\n\n return !!isComputedFieldProvider;\n }\n\n private isScheduledJobProvider(provider: InstanceWrapper) {\n const { instance } = provider;\n if (!instance) return false;\n\n const isScheduledJobProvider = this.reflector.get<boolean>(\n IS_SCHEDULED_JOB_PROVIDER,\n instance.constructor,\n );\n\n return !!isScheduledJobProvider;\n }\n\n private isSolidDatabaseModule(provider: InstanceWrapper) {\n const { instance } = provider;\n if (!instance) return false;\n\n const isSolidDatabaseModule = this.reflector.get<boolean>(\n IS_SOLID_DATABASE_MODULE,\n instance.constructor,\n );\n\n return !!isSolidDatabaseModule;\n }\n\n private isModule(provider: InstanceWrapper): boolean {\n const metatype = provider.metatype;\n // Check if it's a Static Module (Class-Based)\n if (metatype && typeof metatype === 'function' && Reflect.getMetadata('imports', metatype)) {\n return true;\n }\n\n // Ensure provider.instance is an object before checking for 'module'\n if (provider.instance && typeof provider.instance === 'object') {\n // Check if it's a Dynamic Module (Object-Based)\n if ('module' in provider.instance && typeof provider.instance.module === 'function') {\n return true;\n }\n }\n\n return false;\n }\n\n /**\n * Given a model singular name this will return the crud service instance.\n * @param modelSingularName \n * @returns \n */\n getCRUDService(modelSingularName: string): CRUDService<any> {\n const provider = this.getProvider(`${classify(modelSingularName)}Service`);\n return provider?.instance as CRUDService<any>;\n }\n\n getProvider(providerName: string) {\n return this.discoveryService.getProviders().find((provider) => provider.name === providerName);\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"solid-introspect.service.js","sourceRoot":"","sources":["../../src/services/solid-introspect.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { classify } from '@angular-devkit/core/src/utils/strings';\nimport { Injectable, Logger, OnApplicationBootstrap } from '@nestjs/common';\nimport { DiscoveryService, MetadataScanner, Reflector } from '@nestjs/core';\nimport { InstanceWrapper } from '@nestjs/core/injector/instance-wrapper';\nimport { IS_COMPUTED_FIELD_PROVIDER } from 'src/decorators/computed-field-provider.decorator';\nimport { IS_SELECTION_PROVIDER } from 'src/decorators/selection-provider.decorator';\nimport { IS_SOLID_DATABASE_MODULE } from 'src/decorators/solid-database-module.decorator';\nimport { SolidRegistry } from 'src/helpers/solid-registry';\nimport { CRUDService } from './crud.service';\nimport { IS_SCHEDULED_JOB_PROVIDER } from 'src/decorators/scheduled-job-provider.decorator';\nimport { IS_DASHBOARD_VARIABLE_SELECTION_PROVIDER } from 'src/decorators/dashboard-selection-provider.decorator';\nimport { IS_DASHBOARD_QUESTION_DATA_PROVIDER } from 'src/decorators/dashboard-question-data-provider.decorator';\nimport { IS_MAIL_PROVIDER } from 'src/decorators/mail-provider.decorator';\n\n@Injectable()\nexport class SolidIntrospectService implements OnApplicationBootstrap {\n constructor(\n private readonly discoveryService: DiscoveryService,\n private readonly reflector: Reflector,\n private readonly metadataScanner: MetadataScanner,\n private readonly solidRegistry: SolidRegistry,\n ) { }\n\n private readonly logger = new Logger(SolidIntrospectService.name);\n onApplicationBootstrap() {\n this.logger.log('Introspecting the application for Solid metadata');\n\n // Register all seeders\n const seeders = this.discoveryService\n .getProviders()\n .filter((provider) => this.isSeeder(provider));\n seeders.forEach((seeder) => {\n this.solidRegistry.registerSeeder(seeder);\n });\n\n // TODO: Scan the filesystem and populate the solid metadata\n\n // Register all ISelectionProvider implementations\n const selectionProviders = this.discoveryService\n .getProviders()\n .filter((provider) => this.isSelectionProvider(provider));\n\n selectionProviders.forEach((selectionProvider) => {\n this.solidRegistry.registerSelectionProvider(selectionProvider);\n });\n\n // Register all IDashboardSelectionProvider implementations\n const dashboardVariableSelectionProviders = this.discoveryService\n .getProviders()\n .filter((provider) => this.isDashboardVariableSelectionProvider(provider));\n\n dashboardVariableSelectionProviders.forEach((dashboardSelectionProvider) => {\n this.solidRegistry.registerDashboardVariableSelectionProvider(dashboardSelectionProvider);\n });\n\n // Register all IDashboardSelectionProvider implementations\n const dashboardQuestionDataProviders = this.discoveryService\n .getProviders()\n .filter((provider) => this.isDashboardQuestionDataProvider(provider));\n\n dashboardQuestionDataProviders.forEach((provider) => {\n this.solidRegistry.registerDashboardQuestionDataProvider(provider);\n });\n\n\n // Register all IComputedProvider implementations\n const computedFieldProviders = this.discoveryService\n .getProviders()\n .filter((provider) => this.isComputedFieldProvider(provider));\n\n computedFieldProviders.forEach((computedFieldProvider) => {\n // @ts-ignore\n this.solidRegistry.registerComputedFieldProvider(computedFieldProvider);\n });\n\n // Register all ISolidDatabaseModules implementations\n const solidDatabaseModules = this.discoveryService\n .getProviders()\n .filter((provider) => this.isSolidDatabaseModule(provider));\n\n solidDatabaseModules.forEach((solidDatabaseModule) => {\n this.solidRegistry.registerSolidDatabaseModule(solidDatabaseModule);\n });\n\n // keep track of all the controllers & respective methods. \n const allControllers = this.discoveryService\n .getControllers()\n .map((controller) => {\n const { instance } = controller;\n return {\n name: controller.name,\n methods: this.metadataScanner.getAllMethodNames(Object.getPrototypeOf(instance))\n };\n });\n\n this.solidRegistry.registerControllers(new Set(allControllers));\n\n // Register all modules\n const allModules = this.discoveryService\n .getProviders()\n .filter((provider) => this.isModule(provider));\n this.solidRegistry.registerModules(allModules);\n\n // Register all IScheduledJob implementations\n const scheduledJobProviders = this.discoveryService\n .getProviders()\n .filter((provider) => this.isScheduledJobProvider(provider));\n\n scheduledJobProviders.forEach((scheduledJobProvider) => {\n this.solidRegistry.registerScheduledJobProvider(scheduledJobProvider);\n });\n\n // Register all IMail implementations\n const mailProviders = this.discoveryService\n .getProviders()\n .filter((provider) => this.isMailProvider(provider));\n\n mailProviders.forEach((mailProvider) => {\n this.solidRegistry.registerMailProvider(mailProvider);\n });\n }\n\n isDashboardQuestionDataProvider(providerWrapper: InstanceWrapper<any>) {\n const { instance } = providerWrapper;\n if (!instance) return false;\n const provider = this.reflector.get<boolean>(\n IS_DASHBOARD_QUESTION_DATA_PROVIDER,\n instance.constructor,\n );\n return !!provider;\n }\n\n // This method identifies a provider as a seeder if it has a seed method i.e duck typing\n private isSeeder(provider: InstanceWrapper) {\n const { instance } = provider;\n if (!instance) return false;\n\n const seedMethod = this.metadataScanner\n .getAllMethodNames(Object.getPrototypeOf(instance))\n .find((methodName) => methodName === 'seed');\n if (!seedMethod) return false;\n return true;\n }\n\n private isSelectionProvider(provider: InstanceWrapper) {\n const { instance } = provider;\n if (!instance) return false;\n\n const isSelectionProvider = this.reflector.get<boolean>(\n IS_SELECTION_PROVIDER,\n instance.constructor,\n );\n\n return !!isSelectionProvider;\n }\n\n private isDashboardVariableSelectionProvider(provider: InstanceWrapper) {\n const { instance } = provider;\n if (!instance) return false;\n const isDashboardSelectionProvider = this.reflector.get<boolean>(\n IS_DASHBOARD_VARIABLE_SELECTION_PROVIDER,\n instance.constructor,\n );\n return !!isDashboardSelectionProvider;\n }\n\n private isComputedFieldProvider(provider: InstanceWrapper) {\n const { instance } = provider;\n if (!instance) return false;\n\n const isComputedFieldProvider = this.reflector.get<boolean>(\n IS_COMPUTED_FIELD_PROVIDER,\n instance.constructor,\n );\n\n return !!isComputedFieldProvider;\n }\n\n private isScheduledJobProvider(provider: InstanceWrapper) {\n const { instance } = provider;\n if (!instance) return false;\n\n const isScheduledJobProvider = this.reflector.get<boolean>(\n IS_SCHEDULED_JOB_PROVIDER,\n instance.constructor,\n );\n\n return !!isScheduledJobProvider;\n }\n\n private isSolidDatabaseModule(provider: InstanceWrapper) {\n const { instance } = provider;\n if (!instance) return false;\n\n const isSolidDatabaseModule = this.reflector.get<boolean>(\n IS_SOLID_DATABASE_MODULE,\n instance.constructor,\n );\n\n return !!isSolidDatabaseModule;\n }\n\n private isMailProvider(provider: InstanceWrapper) {\n const { instance } = provider;\n if (!instance) return false;\n\n const isMailProvider = this.reflector.get<boolean>(\n IS_MAIL_PROVIDER,\n instance.constructor,\n );\n\n return !!isMailProvider;\n }\n\n private isModule(provider: InstanceWrapper): boolean {\n const metatype = provider.metatype;\n // Check if it's a Static Module (Class-Based)\n if (metatype && typeof metatype === 'function' && Reflect.getMetadata('imports', metatype)) {\n return true;\n }\n\n // Ensure provider.instance is an object before checking for 'module'\n if (provider.instance && typeof provider.instance === 'object') {\n // Check if it's a Dynamic Module (Object-Based)\n if ('module' in provider.instance && typeof provider.instance.module === 'function') {\n return true;\n }\n }\n\n return false;\n }\n\n /**\n * Given a model singular name this will return the crud service instance.\n * @param modelSingularName \n * @returns \n */\n getCRUDService(modelSingularName: string): CRUDService<any> {\n const provider = this.getProvider(`${classify(modelSingularName)}Service`);\n return provider?.instance as CRUDService<any>;\n }\n\n getProvider(providerName: string) {\n return this.discoveryService.getProviders().find((provider) => provider.name === providerName);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solid-core.module.d.ts","sourceRoot":"","sources":["../src/solid-core.module.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"solid-core.module.d.ts","sourceRoot":"","sources":["../src/solid-core.module.ts"],"names":[],"mappings":"AA+QA,qBAkVa,eAAe;CAAI"}
|
|
@@ -84,8 +84,8 @@ const api_email_publisher_service_1 = require("./jobs/api-email-publisher.servic
|
|
|
84
84
|
const api_email_subscriber_service_1 = require("./jobs/api-email-subscriber.service");
|
|
85
85
|
const test_queue_publisher_database_service_1 = require("./jobs/database/test-queue-publisher-database.service");
|
|
86
86
|
const test_queue_subscriber_database_service_1 = require("./jobs/database/test-queue-subscriber-database.service");
|
|
87
|
-
const
|
|
88
|
-
const
|
|
87
|
+
const smtp_email_publisher_service_1 = require("./jobs/smtp-email-publisher.service");
|
|
88
|
+
const smtp_email_subscriber_service_1 = require("./jobs/smtp-email-subscriber.service");
|
|
89
89
|
const otp_publisher_service_1 = require("./jobs/otp-publisher.service");
|
|
90
90
|
const otp_subscriber_service_1 = require("./jobs/otp-subscriber.service");
|
|
91
91
|
const sms_publisher_service_1 = require("./jobs/sms-publisher.service");
|
|
@@ -173,14 +173,16 @@ const api_email_publisher_database_service_1 = require("./jobs/database/api-emai
|
|
|
173
173
|
const api_email_subscriber_database_service_1 = require("./jobs/database/api-email-subscriber-database.service");
|
|
174
174
|
const computed_field_evaluation_publisher_service_1 = require("./jobs/database/computed-field-evaluation-publisher.service");
|
|
175
175
|
const computed_field_evaluation_subscriber_service_1 = require("./jobs/database/computed-field-evaluation-subscriber.service");
|
|
176
|
-
const
|
|
177
|
-
const
|
|
176
|
+
const smtp_email_publisher_database_service_1 = require("./jobs/database/smtp-email-publisher-database.service");
|
|
177
|
+
const smtp_email_subscriber_database_service_1 = require("./jobs/database/smtp-email-subscriber-database.service");
|
|
178
178
|
const generate_code_publisher_database_service_1 = require("./jobs/database/generate-code-publisher-database.service");
|
|
179
179
|
const generate_code_subscriber_database_service_1 = require("./jobs/database/generate-code-subscriber-database.service");
|
|
180
180
|
const otp_publisher_database_service_1 = require("./jobs/database/otp-publisher-database.service");
|
|
181
181
|
const otp_subscriber_database_service_1 = require("./jobs/database/otp-subscriber-database.service");
|
|
182
182
|
const sms_publisher_database_service_1 = require("./jobs/database/sms-publisher-database.service");
|
|
183
183
|
const sms_subscriber_database_service_1 = require("./jobs/database/sms-subscriber-database.service");
|
|
184
|
+
const twilio_sms_publisher_database_service_1 = require("./jobs/database/twilio-sms-publisher-database.service");
|
|
185
|
+
const twilio_sms_subscriber_database_service_1 = require("./jobs/database/twilio-sms-subscriber-database.service");
|
|
184
186
|
const trigger_mcp_client_publisher_database_service_1 = require("./jobs/database/trigger-mcp-client-publisher-database.service");
|
|
185
187
|
const trigger_mcp_client_subscriber_database_service_1 = require("./jobs/database/trigger-mcp-client-subscriber-database.service");
|
|
186
188
|
const whatsapp_publisher_database_service_1 = require("./jobs/database/whatsapp-publisher-database.service");
|
|
@@ -254,6 +256,9 @@ const view_metadata_repository_1 = require("./repository/view-metadata.repositor
|
|
|
254
256
|
const solid_save_model_layout_mcp_tool_response_handler_service_1 = require("./services/mcp-tool-response-handlers/solid-save-model-layout-mcp-tool-response-handler.service");
|
|
255
257
|
const noops_entity_computed_field_provider_service_1 = require("./services/computed-fields/entity/noops-entity-computed-field-provider.service");
|
|
256
258
|
const alpha_num_external_id_computed_field_provider_1 = require("./services/computed-fields/entity/alpha-num-external-id-computed-field-provider");
|
|
259
|
+
const mail_factory_1 = require("./factories/mail.factory");
|
|
260
|
+
const TwilioSMSService_1 = require("./services/sms/TwilioSMSService");
|
|
261
|
+
const poller_service_1 = require("./services/poller.service");
|
|
257
262
|
let SolidCoreModule = class SolidCoreModule {
|
|
258
263
|
};
|
|
259
264
|
exports.SolidCoreModule = SolidCoreModule;
|
|
@@ -423,17 +428,19 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
423
428
|
Msg91SMSService_1.Msg91SMSService,
|
|
424
429
|
Msg91OTPService_1.Msg91OTPService,
|
|
425
430
|
Msg91WhatsappService_1.Msg91WhatsappService,
|
|
431
|
+
TwilioSMSService_1.TwilioSMSService,
|
|
426
432
|
sms_template_service_1.SmsTemplateService,
|
|
427
433
|
email_template_service_1.EmailTemplateService,
|
|
428
434
|
publisher_factory_service_1.PublisherFactory,
|
|
435
|
+
poller_service_1.PollerService,
|
|
429
436
|
mcp_tool_response_handler_factory_service_1.McpToolResponseHandlerFactory,
|
|
430
437
|
solid_create_module_mcp_tool_response_handler_service_1.SolidCreateModuleMcpToolResponseHandler,
|
|
431
438
|
trigger_mcp_client_publisher_database_service_1.TriggerMcpClientPublisherDatabase,
|
|
432
439
|
trigger_mcp_client_subscriber_database_service_1.TriggerMcpClientSubscriberDatabase,
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
440
|
+
smtp_email_publisher_service_1.SmtpEmailQueuePublisherRabbitmq,
|
|
441
|
+
smtp_email_subscriber_service_1.SmtpEmailQueueSubscriberRabbitmq,
|
|
442
|
+
smtp_email_publisher_database_service_1.SmtpEmailQueuePublisherDatabase,
|
|
443
|
+
smtp_email_subscriber_database_service_1.SmtpEmailQueueSubscriberDatabase,
|
|
437
444
|
api_email_publisher_service_1.ApiEmailQueuePublisher,
|
|
438
445
|
api_email_subscriber_service_1.ApiEmailQueueSubscriber,
|
|
439
446
|
api_email_publisher_database_service_1.ApiEmailQueuePublisherDatabase,
|
|
@@ -442,6 +449,8 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
442
449
|
sms_subscriber_service_1.SmsQueueSubscriber,
|
|
443
450
|
sms_publisher_database_service_1.SmsQueuePublisherDatabase,
|
|
444
451
|
sms_subscriber_database_service_1.SmsQueueSubscriberDatabase,
|
|
452
|
+
twilio_sms_publisher_database_service_1.TwilioSmsQueuePublisherDatabase,
|
|
453
|
+
twilio_sms_subscriber_database_service_1.TwilioSmsQueueSubscriberDatabase,
|
|
445
454
|
otp_publisher_service_1.OTPQueuePublisher,
|
|
446
455
|
otp_subscriber_service_1.OTPQueueSubscriber,
|
|
447
456
|
otp_publisher_database_service_1.OTPQueuePublisherDatabase,
|
|
@@ -542,6 +551,7 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
542
551
|
view_metadata_repository_1.ViewMetadataRepository,
|
|
543
552
|
solid_save_model_layout_mcp_tool_response_handler_service_1.SolidCreateModelLayoutMcpToolResponseHandler,
|
|
544
553
|
alpha_num_external_id_computed_field_provider_1.AlphaNumExternalIdComputationProvider,
|
|
554
|
+
mail_factory_1.MailFactory,
|
|
545
555
|
],
|
|
546
556
|
exports: [
|
|
547
557
|
module_metadata_service_1.ModuleMetadataService,
|
|
@@ -559,6 +569,7 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
559
569
|
elastic_email_service_1.ElasticEmailService,
|
|
560
570
|
Msg91SMSService_1.Msg91SMSService,
|
|
561
571
|
Msg91OTPService_1.Msg91OTPService,
|
|
572
|
+
TwilioSMSService_1.TwilioSMSService,
|
|
562
573
|
Msg91WhatsappService_1.Msg91WhatsappService,
|
|
563
574
|
tiny_url_service_1.TinyUrlService,
|
|
564
575
|
pdf_service_1.PdfService,
|
|
@@ -583,6 +594,8 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
583
594
|
list_of_values_service_1.ListOfValuesService,
|
|
584
595
|
config_1.ConfigModule,
|
|
585
596
|
publisher_factory_service_1.PublisherFactory,
|
|
597
|
+
mail_factory_1.MailFactory,
|
|
598
|
+
poller_service_1.PollerService
|
|
586
599
|
],
|
|
587
600
|
})
|
|
588
601
|
], SolidCoreModule);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solid-core.module.js","sourceRoot":"","sources":["../src/solid-core.module.ts"],"names":[],"mappings":"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","sourcesContent":["import { Global, Module } from '@nestjs/common';\nimport { ConfigModule, ConfigService } from '@nestjs/config';\nimport {\n APP_FILTER,\n APP_GUARD,\n APP_INTERCEPTOR,\n DiscoveryService,\n MetadataScanner,\n Reflector,\n} from '@nestjs/core';\nimport { MulterModule } from '@nestjs/platform-express';\nimport { TypeOrmModule } from '@nestjs/typeorm';\nimport { RemoveFieldsCommand } from './commands/remove-fields.command';\nimport appBuilderConfig from './config/app-builder.config';\nimport { FieldMetadataController } from './controllers/field-metadata.controller';\nimport { MediaStorageProviderMetadataController } from './controllers/media-storage-provider-metadata.controller';\nimport { ModelMetadataController } from './controllers/model-metadata.controller';\nimport { ModuleMetadataController } from './controllers/module-metadata.controller';\nimport { TestController } from './controllers/test.controller';\nimport { FieldMetadata } from './entities/field-metadata.entity';\nimport { ListOfValues } from './entities/list-of-values.entity';\nimport { MediaStorageProviderMetadata } from './entities/media-storage-provider-metadata.entity';\nimport { Media } from './entities/media.entity';\nimport { ModelMetadata } from './entities/model-metadata.entity';\nimport { ModuleMetadata } from './entities/module-metadata.entity';\nimport { CommandService } from './helpers/command.service';\nimport { SchematicService } from './helpers/schematic.service';\nimport { ListOfValuesSelectionProvider } from './providers/list-of-values-selection-providers.service';\nimport { ModuleMetadataSeederService } from './seeders/module-metadata-seeder.service';\nimport { CrudHelperService } from './services/crud-helper.service';\nimport { FieldMetadataService } from './services/field-metadata.service';\nimport { ListOfValuesService } from './services/list-of-values.service';\nimport { MediaStorageProviderMetadataSeederService } from './services/media-storage-provider-metadata-seeder.service';\nimport { MediaStorageProviderMetadataService } from './services/media-storage-provider-metadata.service';\nimport { MediaService } from './services/media.service';\nimport { ModelMetadataService } from './services/model-metadata.service';\nimport { ModuleMetadataService } from './services/module-metadata.service';\nimport { SolidIntrospectService } from './services/solid-introspect.service';\n// import { ListOfComputedFieldProvider } from './providers/list-of-computed-field-provider.service';\nimport { ServeStaticModule } from '@nestjs/serve-static';\nimport { join } from 'path';\nimport { RefreshModelCommand } from './commands/refresh-model.command';\nimport { MediaController } from './controllers/media.controller';\n\nimport { RefreshModuleCommand } from './commands/refresh-module.command';\nimport { ModelMetadataSubscriber } from './subscribers/model-metadata.subscriber';\n\nimport { ViewMetadataController } from './controllers/view-metadata.controller';\nimport { ViewMetadata } from './entities/view-metadata.entity';\nimport { ViewMetadataService } from './services/view-metadata.service';\n\nimport { ActionMetadataController } from './controllers/action-metadata.controller';\nimport { ActionMetadata } from './entities/action-metadata.entity';\nimport { ActionMetadataService } from './services/action-metadata.service';\n\nimport { HttpModule } from '@nestjs/axios';\nimport { JwtModule } from '@nestjs/jwt';\nimport { SeedCommand } from './commands/seed.command';\nimport commonConfig from './config/common.config';\nimport { iamConfig, jwtConfig } from './config/iam.config';\nimport { AuthenticationController } from './controllers/authentication.controller';\nimport { EmailTemplateController } from './controllers/email-template.controller';\nimport { GoogleAuthenticationController } from './controllers/google-authentication.controller';\nimport { MenuItemMetadataController } from './controllers/menu-item-metadata.controller';\nimport { MqMessageQueueController } from './controllers/mq-message-queue.controller';\nimport { MqMessageController } from './controllers/mq-message.controller';\nimport { OTPAuthenticationController } from './controllers/otp-authentication.controller';\nimport { ServiceController } from './controllers/service.controller';\nimport { SmsTemplateController } from './controllers/sms-template.controller';\nimport { TestQueueController } from './controllers/test-queue.controller';\n// import { UserController } from './controllers/user.controller';\nimport { EmailAttachment } from './entities/email-attachment.entity';\nimport { EmailTemplate } from './entities/email-template.entity';\nimport { MenuItemMetadata } from './entities/menu-item-metadata.entity';\nimport { MqMessageQueue } from './entities/mq-message-queue.entity';\nimport { MqMessage } from './entities/mq-message.entity';\nimport { SmsTemplate } from './entities/sms-template.entity';\nimport { UserPasswordHistory } from './entities/user-password-history.entity';\n// import { User } from './entities/user.entity';\nimport { AccessTokenGuard } from './guards/access-token.guard';\nimport { AuthenticationGuard } from './guards/authentication.guard';\nimport { PermissionsGuard } from './guards/permissions.guard';\nimport { SolidRegistry } from './helpers/solid-registry';\nimport { LoggingInterceptor } from './interceptors/logging.interceptor';\nimport { ApiEmailQueuePublisher } from './jobs/api-email-publisher.service';\nimport { ApiEmailQueueSubscriber } from './jobs/api-email-subscriber.service';\nimport { TestQueuePublisherDatabase } from './jobs/database/test-queue-publisher-database.service';\nimport { TestQueueSubscriberDatabase } from './jobs/database/test-queue-subscriber-database.service';\nimport { EmailQueuePublisher } from './jobs/email-publisher.service';\nimport { EmailQueueSubscriber } from './jobs/email-subscriber.service';\nimport { OTPQueuePublisher } from './jobs/otp-publisher.service';\nimport { OTPQueueSubscriber } from './jobs/otp-subscriber.service';\nimport { SmsQueuePublisher } from './jobs/sms-publisher.service';\nimport { SmsQueueSubscriber } from './jobs/sms-subscriber.service';\nimport { TestQueuePublisher } from './jobs/test-queue-publisher.service';\nimport { TestQueueSubscriber } from './jobs/test-queue-subscriber.service';\nimport { WhatsappQueuePublisher } from './jobs/whatsapp-publisher.service';\nimport { WhatsappQueueSubscriber } from './jobs/whatsapp-subscriber.service';\nimport { UserRegistrationListener } from './listeners/user-registration.listener';\nimport { GoogleOauthStrategy } from './passport-strategies/google-oauth.strategy';\nimport { LocalStrategy } from './passport-strategies/local.strategy';\nimport { EmailTemplateSeederService } from './seeders/email-template-seeder.service';\nimport { SmsTemplateSeederService } from './seeders/sms-template-seeder.service';\nimport { UserSeederService } from './seeders/user-seeder.service';\nimport { AuthenticationService } from './services/authentication.service';\nimport { BcryptService } from './services/bcrypt.service';\nimport { UuidExternalIdComputedFieldProvider } from './services/computed-fields/uuid-external-id-computed-field-provider.service';\nimport { EmailTemplateService } from './services/email-template.service';\nimport { FileService } from './services/file.service';\nimport { HashingService } from './services/hashing.service';\nimport { ElasticEmailService } from './services/mail/elastic-email.service';\nimport { SMTPEMailService } from './services/mail/smtp-email.service';\nimport { MenuItemMetadataService } from './services/menu-item-metadata.service';\nimport { MqMessageQueueService } from './services/mq-message-queue.service';\nimport { MqMessageService } from './services/mq-message.service';\nimport { PdfService } from './services/pdf.service';\nimport { RefreshTokenIdsStorageService } from './services/refresh-token-ids-storage.service';\nimport { ListOfModelsSelectionProvider } from './services/selection-providers/list-of-models-selection-provider.service';\nimport { TinyUrlService } from './services/short-url/tiny-url.service';\nimport { SmsTemplateService } from './services/sms-template.service';\nimport { Msg91OTPService } from './services/sms/Msg91OTPService';\nimport { Msg91SMSService } from './services/sms/Msg91SMSService';\n// import { UserService } from './services/user.service';\nimport { Msg91WhatsappService } from './services/whatsapp/Msg91WhatsappService';\nimport { SoftDeleteAwareEventSubscriber } from './subscribers/soft-delete-aware-event.subscriber';\n\nimport { PermissionMetadataController } from './controllers/permission-metadata.controller';\nimport { PermissionMetadata } from './entities/permission-metadata.entity';\nimport { PermissionMetadataService } from './services/permission-metadata.service';\n\nimport { ScheduleModule } from '@nestjs/schedule';\nimport { ClsModule } from 'nestjs-cls';\nimport { AiInteractionController } from './controllers/ai-interaction.controller';\nimport { ChatterMessageDetailsController } from './controllers/chatter-message-details.controller';\nimport { ChatterMessageController } from './controllers/chatter-message.controller';\nimport { DashboardQuestionSqlDatasetConfigController } from './controllers/dashboard-question-sql-dataset-config.controller';\nimport { DashboardQuestionController } from './controllers/dashboard-question.controller';\nimport { DashboardVariableController } from './controllers/dashboard-variable.controller';\nimport { DashboardController } from './controllers/dashboard.controller';\nimport { ExportTemplateController } from './controllers/export-template.controller';\nimport { ExportTransactionController } from './controllers/export-transaction.controller';\nimport { ImportTransactionErrorLogController } from './controllers/import-transaction-error-log.controller';\nimport { ImportTransactionController } from './controllers/import-transaction.controller';\nimport { ListOfValuesController } from './controllers/list-of-values.controller';\nimport { LocaleController } from './controllers/locale.controller';\nimport { RoleMetadataController } from './controllers/role-metadata.controller';\nimport { SavedFiltersController } from './controllers/saved-filters.controller';\nimport { ScheduledJobController } from './controllers/scheduled-job.controller';\nimport { SecurityRuleController } from './controllers/security-rule.controller';\nimport { SettingController } from './controllers/setting.controller';\nimport { UserActivityHistoryController } from './controllers/user-activity-history.controller';\nimport { UserViewMetadataController } from './controllers/user-view-metadata.controller';\nimport { UserController } from './controllers/user.controller';\nimport { AiInteraction } from './entities/ai-interaction.entity';\nimport { ChatterMessageDetails } from './entities/chatter-message-details.entity';\nimport { ChatterMessage } from './entities/chatter-message.entity';\nimport { DashboardQuestionSqlDatasetConfig } from './entities/dashboard-question-sql-dataset-config.entity';\nimport { DashboardQuestion } from './entities/dashboard-question.entity';\nimport { DashboardVariable } from './entities/dashboard-variable.entity';\nimport { Dashboard } from './entities/dashboard.entity';\nimport { ExportTemplate } from './entities/export-template.entity';\nimport { ExportTransaction } from './entities/export-transaction.entity';\nimport { ImportTransactionErrorLog } from './entities/import-transaction-error-log.entity';\nimport { ImportTransaction } from './entities/import-transaction.entity';\nimport { Locale } from './entities/locale.entity';\nimport { RoleMetadata } from './entities/role-metadata.entity';\nimport { SavedFilters } from './entities/saved-filters.entity';\nimport { ScheduledJob } from './entities/scheduled-job.entity';\nimport { SecurityRule } from './entities/security-rule.entity';\nimport { Setting } from './entities/setting.entity';\nimport { UserActivityHistory } from './entities/user-activity-history.entity';\nimport { UserViewMetadata } from './entities/user-view-metadata.entity';\nimport { User } from './entities/user.entity';\nimport { HttpExceptionFilter } from './filters/http-exception.filter';\nimport { ModelMetadataHelperService } from './helpers/model-metadata-helper.service';\nimport { ModuleMetadataHelperService } from './helpers/module-metadata-helper.service';\nimport { ApiEmailQueuePublisherDatabase } from './jobs/database/api-email-publisher-database.service';\nimport { ApiEmailQueueSubscriberDatabase } from './jobs/database/api-email-subscriber-database.service';\nimport { ComputedFieldEvaluationPublisher } from './jobs/database/computed-field-evaluation-publisher.service';\nimport { ComputedFieldEvaluationSubscriber } from './jobs/database/computed-field-evaluation-subscriber.service';\nimport { EmailQueuePublisherDatabase } from './jobs/database/email-publisher-database.service';\nimport { EmailQueueSubscriberDatabase } from './jobs/database/email-subscriber-database.service';\nimport { GenerateCodePublisherDatabase } from './jobs/database/generate-code-publisher-database.service';\nimport { GenerateCodeSubscriberDatabase } from './jobs/database/generate-code-subscriber-database.service';\nimport { OTPQueuePublisherDatabase } from './jobs/database/otp-publisher-database.service';\nimport { OTPQueueSubscriberDatabase } from './jobs/database/otp-subscriber-database.service';\nimport { SmsQueuePublisherDatabase } from './jobs/database/sms-publisher-database.service';\nimport { SmsQueueSubscriberDatabase } from './jobs/database/sms-subscriber-database.service';\nimport { TriggerMcpClientPublisherDatabase } from './jobs/database/trigger-mcp-client-publisher-database.service';\nimport { TriggerMcpClientSubscriberDatabase } from './jobs/database/trigger-mcp-client-subscriber-database.service';\nimport { WhatsappQueuePublisherDatabase } from './jobs/database/whatsapp-publisher-database.service';\nimport { WhatsappQueueSubscriberDatabase } from './jobs/database/whatsapp-subscriber-database.service';\nimport { DashboardMapper } from './mappers/dashboard-mapper';\nimport { DashboardRepository } from './repository/dashboard.repository';\nimport { FieldMetadataRepository } from './repository/field-metadata.repository';\nimport { FieldRepository } from './repository/field.repository';\nimport { MediaRepository } from './repository/media.repository';\nimport { SecurityRuleRepository } from './repository/security-rule.repository';\nimport { PermissionMetadataSeederService } from './seeders/permission-metadata-seeder.service';\nimport { SystemFieldsSeederService } from './seeders/system-fields-seeder.service';\nimport { AiInteractionService } from './services/ai-interaction.service';\nimport { ChatterMessageDetailsService } from './services/chatter-message-details.service';\nimport { ChatterMessageService } from './services/chatter-message.service';\nimport { ConcatComputedFieldProvider } from './services/computed-fields/concat-computed-field-provider.service';\nimport { ConcatEntityComputedFieldProvider } from './services/computed-fields/entity/concat-entity-computed-field-provider.service';\nimport { CRUDService } from './services/crud.service';\nimport { CsvService } from './services/csv.service';\nimport { DashboardQuestionSqlDatasetConfigService } from './services/dashboard-question-sql-dataset-config.service';\nimport { DashboardQuestionService } from './services/dashboard-question.service';\nimport { DashboardVariableSQLDynamicProvider } from './services/dashboard-selection-providers/dashboard-variable-sql-dynamic-provider.service';\nimport { DasbhoardVariableTestDynamicProvider } from './services/dashboard-selection-providers/dashboard-variable-test-dynamic-provider.service';\nimport { DashboardVariableService } from './services/dashboard-variable.service';\nimport { DashboardService } from './services/dashboard.service';\nimport { ExcelService } from './services/excel.service';\nimport { ExportTemplateService } from './services/export-template.service';\nimport { ExportTransactionService } from './services/export-transaction.service';\nimport { ImportTransactionErrorLogService } from './services/import-transaction-error-log.service';\nimport { ImportTransactionService } from './services/import-transaction.service';\nimport { LocaleService } from './services/locale.service';\nimport { McpToolResponseHandlerFactory } from './services/mcp-tool-response-handlers/mcp-tool-response-handler-factory.service';\nimport { SolidCreateDashboardMcpToolResponseHandler } from './services/mcp-tool-response-handlers/solid-create-dashboard-mcp-tool-response-handler.service';\nimport { SolidCreateDashboardQuestionMcpToolResponseHandler } from './services/mcp-tool-response-handlers/solid-create-dashboard-question-mcp-tool-response-handler.service';\nimport { SolidCreateDashboardQuestionSqlDatasetConfigMcpToolResponseHandler } from './services/mcp-tool-response-handlers/solid-create-dashboard-question-sql-dataset-config-mcp-tool-response-handler.service';\nimport { SolidCreateModuleMcpToolResponseHandler } from './services/mcp-tool-response-handlers/solid-create-module-mcp-tool-response-handler.service';\nimport { FileS3StorageProvider } from './services/mediaStorageProviders/file-s3-storage-provider';\nimport { FileStorageProvider } from './services/mediaStorageProviders/file-storage-provider';\nimport { ChartJsSqlDataProvider } from './services/question-data-providers/chartjs-sql-data-provider.service';\nimport { PrimeReactDatatableSqlDataProvider } from './services/question-data-providers/prime-react-datatable-sql-data-provider.service';\nimport { PrimeReactMeterGroupSqlDataProvider } from './services/question-data-providers/prime-react-meter-group-sql-data-provider.service';\nimport { PublisherFactory } from './services/queues/publisher-factory.service';\nimport { RequestContextService } from './services/request-context.service';\nimport { RoleMetadataService } from './services/role-metadata.service';\nimport { SavedFiltersService } from './services/saved-filters.service';\nimport { ScheduledJobService } from './services/scheduled-job.service';\nimport { SchedulerServiceImpl } from './services/scheduled-jobs/scheduler.service';\nimport { SecurityRuleService } from './services/security-rule.service';\nimport { ListOfDashboardQuestionProvidersSelectionProvider } from './services/selection-providers/list-of-dashboard-question-providers-selection-provider.service';\nimport { ListOfDashboardVariableProvidersSelectionProvider } from './services/selection-providers/list-of-dashboard-variable-providers-selection-provider.service';\nimport { ListOfScheduledJobsSelectionProvider } from './services/selection-providers/list-of-scheduled-jobs-selection-provider.service';\nimport { LocaleListSelectionProvider } from './services/selection-providers/locale-list-selection-provider.service';\nimport { SettingService } from './services/setting.service';\nimport { SqlExpressionResolverService } from './services/sql-expression-resolver.service';\nimport { UserActivityHistoryService } from './services/user-activity-history.service';\nimport { UserViewMetadataService } from './services/user-view-metadata.service';\nimport { UserService } from './services/user.service';\nimport { AuditSubscriber } from './subscribers/audit.subscriber';\nimport { ComputedEntityFieldSubscriber } from './subscribers/computed-entity-field.subscriber';\nimport { CreatedByUpdatedBySubscriber } from './subscribers/created-by-updated-by.subscriber';\nimport { DashboardQuestionSqlDatasetConfigSubscriber } from './subscribers/dashboard-question-sql-dataset-config.subscriber';\nimport { DashboardQuestionSubscriber } from './subscribers/dashboard-question.subscriber';\nimport { DashboardVariableSubscriber } from './subscribers/dashboard-variable.subscriber';\nimport { DashboardSubscriber } from './subscribers/dashboard.subscriber';\nimport { SecurityRuleSubscriber } from './subscribers/security-rule.subscriber';\nimport { ViewMetadataSubsciber } from './subscribers/view-metadata.subscriber';\nimport { SolidCreateDashboardWidgetMcpToolResponseHandler } from './services/mcp-tool-response-handlers/solid-create-dashboard-widget-mcp-tool-response-handler.service';\nimport { SolidCreateModelWithFieldsMcpToolResponseHandler } from './services/mcp-tool-response-handlers/solid-create-model-with-fields-mcp-tool-response-handler.service';\nimport { SolidAddFieldMcpToolResponseHandler } from './services/mcp-tool-response-handlers/solid-add-field-mcp-tool-response-handler.service';\nimport { ViewMetadataRepository } from './repository/view-metadata.repository';\nimport { SolidCreateModelLayoutMcpToolResponseHandler } from './services/mcp-tool-response-handlers/solid-save-model-layout-mcp-tool-response-handler.service';\nimport { NoopsEntityComputedFieldProviderService } from './services/computed-fields/entity/noops-entity-computed-field-provider.service';\nimport { AlphaNumExternalIdComputationProvider } from './services/computed-fields/entity/alpha-num-external-id-computed-field-provider';\n\n\n@Global()\n@Module({\n imports: [\n TypeOrmModule.forFeature([\n ModelMetadata,\n FieldMetadata,\n ModuleMetadata,\n ListOfValues,\n MediaStorageProviderMetadata,\n Media,\n EmailTemplate,\n SmsTemplate,\n EmailAttachment,\n User,\n UserPasswordHistory,\n ViewMetadata,\n ActionMetadata,\n MenuItemMetadata,\n MqMessageQueue,\n MqMessage,\n ScheduledJob,\n PermissionMetadata,\n RoleMetadata,\n Setting,\n SavedFilters,\n UserViewMetadata,\n SecurityRule,\n ListOfValues,\n ChatterMessage,\n ChatterMessageDetails,\n Locale,\n ExportTemplate,\n ExportTransaction,\n ImportTransaction,\n ImportTransactionErrorLog,\n UserActivityHistory,\n AiInteraction,\n ]),\n ConfigModule.forFeature(appBuilderConfig),\n ConfigModule.forFeature(commonConfig),\n ConfigModule.forFeature(iamConfig),\n ConfigModule.forFeature(jwtConfig),\n JwtModule.registerAsync(jwtConfig.asProvider()),\n ScheduleModule.forRoot(),\n ServeStaticModule.forRoot({\n rootPath: join(process.cwd(), 'media-files-storage'),\n serveRoot: '/media-files-storage',\n }),\n MulterModule.registerAsync({\n imports: [ConfigModule],\n useFactory: async (configService: ConfigService) => ({\n dest: configService.get<string>('app-builder.uploadDir'),\n }),\n inject: [ConfigService],\n }),\n HttpModule,\n ConfigModule,\n ClsModule,\n TypeOrmModule.forFeature([Dashboard]),\n TypeOrmModule.forFeature([DashboardVariable]),\n TypeOrmModule.forFeature([DashboardQuestion]),\n TypeOrmModule.forFeature([DashboardQuestionSqlDatasetConfig]),\n TypeOrmModule.forFeature([AiInteraction]),\n ],\n controllers: [\n ModuleMetadataController,\n ModelMetadataController,\n FieldMetadataController,\n TestController,\n MediaController,\n MediaStorageProviderMetadataController,\n ViewMetadataController,\n ActionMetadataController,\n MenuItemMetadataController,\n ServiceController,\n SmsTemplateController,\n EmailTemplateController,\n AuthenticationController,\n GoogleAuthenticationController,\n OTPAuthenticationController,\n TestQueueController,\n MqMessageQueueController,\n MqMessageController,\n ScheduledJobController,\n PermissionMetadataController,\n RoleMetadataController,\n UserController,\n SettingController,\n SavedFiltersController,\n UserViewMetadataController,\n SecurityRuleController,\n SavedFiltersController,\n ListOfValuesController,\n ChatterMessageController,\n ChatterMessageDetailsController,\n LocaleController,\n ExportTemplateController,\n ExportTransactionController,\n ImportTransactionController,\n ImportTransactionErrorLogController,\n UserActivityHistoryController,\n DashboardController,\n DashboardVariableController,\n DashboardQuestionController,\n DashboardQuestionSqlDatasetConfigController,\n AiInteractionController,\n ],\n providers: [\n {\n provide: APP_INTERCEPTOR,\n useClass: LoggingInterceptor,\n },\n {\n provide: HashingService,\n useClass: BcryptService,\n },\n {\n provide: APP_GUARD,\n useClass: AuthenticationGuard,\n },\n {\n provide: APP_GUARD,\n useClass: PermissionsGuard,\n },\n {\n provide: APP_FILTER,\n useClass: HttpExceptionFilter\n },\n ModuleMetadataService,\n ModuleMetadataHelperService,\n ModelMetadataService,\n ModelMetadataHelperService,\n FieldMetadataService,\n RemoveFieldsCommand,\n RefreshModelCommand,\n RefreshModuleCommand,\n SolidIntrospectService,\n DiscoveryService,\n CrudHelperService,\n CRUDService,\n Reflector,\n MetadataScanner,\n CommandService,\n SchematicService,\n MediaStorageProviderMetadataService,\n MediaService,\n MediaStorageProviderMetadataSeederService,\n ModuleMetadataSeederService,\n ListOfValuesService,\n ListOfValuesSelectionProvider,\n ModelMetadataSubscriber,\n ViewMetadataService,\n ActionMetadataService,\n MenuItemMetadataService,\n DiscoveryService,\n Reflector,\n MetadataScanner,\n FileService,\n SolidRegistry,\n SeedCommand,\n SMTPEMailService,\n ElasticEmailService,\n Msg91SMSService,\n Msg91OTPService,\n Msg91WhatsappService,\n SmsTemplateService,\n EmailTemplateService,\n PublisherFactory,\n\n McpToolResponseHandlerFactory,\n SolidCreateModuleMcpToolResponseHandler,\n\n TriggerMcpClientPublisherDatabase,\n TriggerMcpClientSubscriberDatabase,\n\n EmailQueuePublisher,\n EmailQueueSubscriber,\n EmailQueuePublisherDatabase,\n EmailQueueSubscriberDatabase,\n ApiEmailQueuePublisher,\n ApiEmailQueueSubscriber,\n ApiEmailQueuePublisherDatabase,\n ApiEmailQueueSubscriberDatabase,\n SmsQueuePublisher,\n SmsQueueSubscriber,\n SmsQueuePublisherDatabase,\n SmsQueueSubscriberDatabase,\n OTPQueuePublisher,\n OTPQueueSubscriber,\n OTPQueuePublisherDatabase,\n OTPQueueSubscriberDatabase,\n WhatsappQueuePublisher,\n WhatsappQueueSubscriber,\n WhatsappQueuePublisherDatabase,\n WhatsappQueueSubscriberDatabase,\n EmailTemplateSeederService,\n SmsTemplateSeederService,\n TinyUrlService,\n PdfService,\n UuidExternalIdComputedFieldProvider,\n ListOfModelsSelectionProvider,\n ListOfScheduledJobsSelectionProvider,\n LocaleListSelectionProvider,\n SoftDeleteAwareEventSubscriber,\n AccessTokenGuard,\n AuthenticationService,\n GoogleAuthenticationController,\n RefreshTokenIdsStorageService,\n UserSeederService,\n LocalStrategy,\n GoogleOauthStrategy,\n UserRegistrationListener,\n TestQueuePublisher,\n TestQueueSubscriber,\n TestQueuePublisherDatabase,\n TestQueueSubscriberDatabase,\n GenerateCodePublisherDatabase,\n GenerateCodeSubscriberDatabase,\n MqMessageQueueService,\n MqMessageService,\n ScheduledJobService,\n SchedulerServiceImpl,\n PermissionMetadataService,\n RoleMetadataService,\n PermissionMetadataSeederService,\n UserService,\n SettingService,\n ConcatComputedFieldProvider,\n FileStorageProvider,\n FileS3StorageProvider,\n MediaRepository,\n ViewMetadataSubsciber,\n SavedFiltersService,\n UserViewMetadataService,\n SecurityRuleService,\n SecurityRuleRepository,\n SecurityRuleSubscriber,\n RequestContextService,\n SavedFiltersService,\n ChatterMessageService,\n ChatterMessageDetailsService,\n LocaleService,\n AuditSubscriber,\n ExportTemplateService,\n ExportTransactionService,\n ExcelService,\n CsvService,\n FieldRepository,\n ImportTransactionService,\n ImportTransactionErrorLogService,\n CreatedByUpdatedBySubscriber,\n SystemFieldsSeederService,\n FieldMetadataRepository,\n ComputedEntityFieldSubscriber,\n ComputedFieldEvaluationPublisher,\n ComputedFieldEvaluationSubscriber,\n ConcatEntityComputedFieldProvider,\n UserActivityHistoryService,\n DashboardService,\n DashboardVariableService,\n DashboardQuestionService,\n DashboardVariableSQLDynamicProvider,\n DasbhoardVariableTestDynamicProvider,\n ListOfDashboardVariableProvidersSelectionProvider,\n ListOfDashboardQuestionProvidersSelectionProvider,\n DashboardQuestionSqlDatasetConfigService,\n ChartJsSqlDataProvider,\n PrimeReactMeterGroupSqlDataProvider,\n PrimeReactDatatableSqlDataProvider,\n SqlExpressionResolverService,\n AiInteractionService,\n DashboardMapper,\n DashboardRepository,\n DashboardSubscriber,\n DashboardVariableSubscriber,\n DashboardQuestionSubscriber,\n DashboardQuestionSqlDatasetConfigSubscriber,\n NoopsEntityComputedFieldProviderService,\n SolidCreateDashboardMcpToolResponseHandler,\n SolidCreateDashboardQuestionMcpToolResponseHandler,\n SolidCreateDashboardQuestionSqlDatasetConfigMcpToolResponseHandler,\n SolidCreateDashboardWidgetMcpToolResponseHandler,\n SolidCreateModelWithFieldsMcpToolResponseHandler,\n SolidAddFieldMcpToolResponseHandler,\n ViewMetadataRepository,\n SolidCreateModelLayoutMcpToolResponseHandler,\n AlphaNumExternalIdComputationProvider,\n ],\n exports: [\n ModuleMetadataService,\n ModelMetadataService,\n FieldMetadataService,\n MediaStorageProviderMetadataService,\n MediaService,\n DiscoveryService,\n CrudHelperService,\n CRUDService,\n MulterModule,\n FileService,\n SolidRegistry,\n SMTPEMailService,\n ElasticEmailService,\n Msg91SMSService,\n Msg91OTPService,\n Msg91WhatsappService,\n TinyUrlService,\n PdfService,\n EmailTemplateService,\n SmsTemplateService,\n UserSeederService,\n AuthenticationService,\n MqMessageQueueService,\n MqMessageService,\n RefreshModelCommand,\n RefreshModuleCommand,\n RequestContextService,\n SecurityRuleRepository,\n FieldRepository,\n SchedulerServiceImpl,\n UserActivityHistoryService,\n CsvService,\n ExcelService,\n SolidIntrospectService,\n ImportTransactionService,\n HttpModule,\n ListOfValuesService,\n ConfigModule,\n PublisherFactory,\n ],\n})\nexport class SolidCoreModule { }\n"]}
|
|
1
|
+
{"version":3,"file":"solid-core.module.js","sourceRoot":"","sources":["../src/solid-core.module.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAgD;AAChD,2CAA6D;AAC7D,uCAOsB;AACtB,+DAAwD;AACxD,6CAAgD;AAChD,4EAAuE;AACvE,qFAA2D;AAC3D,uFAAkF;AAClF,yHAAkH;AAClH,uFAAkF;AAClF,yFAAoF;AACpF,mEAA+D;AAC/D,4EAAiE;AACjE,4EAAgE;AAChE,8GAAiG;AACjG,0DAAgD;AAChD,4EAAiE;AACjE,8EAAmE;AACnE,+DAA2D;AAC3D,mEAA+D;AAC/D,uHAAuG;AACvG,6FAAuF;AACvF,wEAAmE;AACnE,8EAAyE;AACzE,8EAAwE;AACxE,8HAAsH;AACtH,gHAAyG;AACzG,4DAAwD;AACxD,8EAAyE;AACzE,gFAA2E;AAC3E,kFAA6E;AAE7E,uDAAyD;AACzD,+BAA4B;AAC5B,4EAAuE;AACvE,qEAAiE;AAEjE,8EAAyE;AACzE,uFAAkF;AAElF,qFAAgF;AAChF,0EAA+D;AAC/D,4EAAuE;AAEvE,yFAAoF;AACpF,8EAAmE;AACnE,gFAA2E;AAE3E,yCAA2C;AAC3C,qCAAwC;AACxC,0DAAsD;AACtD,2EAAkD;AAClD,oDAA2D;AAC3D,uFAAmF;AACnF,uFAAkF;AAClF,qGAAgG;AAChG,+FAAyF;AACzF,2FAAqF;AACrF,+EAA0E;AAC1E,+FAA0F;AAC1F,yEAAqE;AACrE,mFAA8E;AAC9E,+EAA0E;AAE1E,gFAAqE;AACrE,4EAAiE;AACjE,oFAAwE;AACxE,gFAAoE;AACpE,oEAAyD;AACzD,wEAA6D;AAC7D,0FAA8E;AAE9E,oEAA+D;AAC/D,wEAAoE;AACpE,kEAA8D;AAC9D,6DAAyD;AACzD,4EAAwE;AACxE,oFAA4E;AAC5E,sFAA8E;AAC9E,iHAAmG;AACnG,mHAAqG;AACrG,sFAAsF;AACtF,wFAAwF;AACxF,wEAAiE;AACjE,0EAAmE;AACnE,wEAAiE;AACjE,0EAAmE;AACnE,sFAAyE;AACzE,wFAA2E;AAC3E,kFAA2E;AAC3E,oFAA6E;AAC7E,uFAAkF;AAClF,uFAAkF;AAClF,yEAAqE;AACrE,2FAAqF;AACrF,uFAAiF;AACjF,uEAAkE;AAClE,8EAA0E;AAC1E,8DAA0D;AAC1D,kJAAkI;AAClI,8EAAyE;AACzE,0DAAsD;AACtD,gEAA4D;AAC5D,iFAA4E;AAC5E,2EAAsE;AACtE,sFAAgF;AAChF,kFAA4E;AAC5E,sEAAiE;AACjE,wDAAoD;AACpD,oGAA6F;AAC7F,wIAAyH;AACzH,4EAAuE;AACvE,0EAAqE;AACrE,oEAAiE;AACjE,oEAAiE;AAEjE,mFAAgF;AAChF,yGAAkG;AAElG,iGAA4F;AAC5F,sFAA2E;AAC3E,wFAAmF;AAEnF,+CAAkD;AAClD,2CAAuC;AACvC,uFAAkF;AAClF,yGAAmG;AACnG,yFAAoF;AACpF,qIAA6H;AAC7H,+FAA0F;AAC1F,+FAA0F;AAC1F,6EAAyE;AACzE,yFAAoF;AACpF,+FAA0F;AAC1F,mHAA4G;AAC5G,+FAA0F;AAC1F,uFAAiF;AACjF,uEAAmE;AACnE,qFAAgF;AAChF,qFAAgF;AAChF,qFAAgF;AAChF,qFAAgF;AAChF,yEAAqE;AACrE,qGAA+F;AAC/F,+FAAyF;AACzF,mEAA+D;AAC/D,4EAAiE;AACjE,8FAAkF;AAClF,8EAAmE;AACnE,0HAA4G;AAC5G,oFAAyE;AACzE,oFAAyE;AACzE,kEAAwD;AACxD,8EAAmE;AACnE,oFAAyE;AACzE,wGAA2F;AAC3F,oFAAyE;AACzE,4DAAkD;AAClD,0EAA+D;AAC/D,0EAA+D;AAC/D,0EAA+D;AAC/D,0EAA+D;AAC/D,8DAAoD;AACpD,0FAA8E;AAC9E,oFAAwE;AACxE,wDAA8C;AAC9C,2EAAsE;AACtE,2FAAqF;AACrF,6FAAuF;AACvF,+GAAsG;AACtG,iHAAwG;AACxG,6HAA+G;AAC/G,+HAAiH;AACjH,iHAAwG;AACxG,mHAA0G;AAC1G,uHAAyG;AACzG,yHAA2G;AAC3G,mGAA2F;AAC3F,qGAA6F;AAC7F,mGAA2F;AAC3F,qGAA6F;AAE7F,iHAAwG;AACxG,mHAA0G;AAG1G,iIAAkH;AAClH,mIAAoH;AACpH,6GAAqG;AACrG,+GAAuG;AACvG,iEAA6D;AAC7D,4EAAwE;AACxE,sFAAiF;AACjF,oEAAgE;AAChE,oEAAgE;AAChE,oFAA+E;AAC/E,qGAA+F;AAC/F,yFAAmF;AACnF,8EAAyE;AACzE,gGAA0F;AAC1F,gFAA2E;AAC3E,8HAAgH;AAChH,mJAAoI;AACpI,0DAAsD;AACtD,wDAAoD;AACpD,4HAAoH;AACpH,sFAAiF;AACjF,8JAA+I;AAC/I,gKAAiJ;AACjJ,sFAAiF;AACjF,oEAAgE;AAChE,4DAAwD;AACxD,gFAA2E;AAC3E,sFAAiF;AACjF,0GAAmG;AACnG,sFAAiF;AACjF,8DAA0D;AAC1D,+IAAgI;AAChI,6KAA4J;AAC5J,+LAA6K;AAC7K,qOAAgN;AAChN,uKAAsJ;AACtJ,wGAAkG;AAClG,kGAA6F;AAC7F,4HAA8G;AAC9G,wJAAwI;AACxI,4JAA2I;AAC3I,2FAA+E;AAC/E,gFAA2E;AAC3E,4EAAuE;AACvE,4EAAuE;AACvE,4EAAuE;AACvE,mFAAmF;AACnF,4EAAuE;AACvE,oLAAmK;AACnK,oLAAmK;AACnK,wJAAwI;AACxI,kIAAoH;AACpH,gEAA4D;AAC5D,gGAA0F;AAC1F,4FAAsF;AACtF,sFAAgF;AAChF,0DAAsD;AACtD,qEAAiE;AACjE,qGAA+F;AAC/F,qGAA8F;AAC9F,qIAA6H;AAC7H,+FAA0F;AAC1F,+FAA0F;AAC1F,6EAAyE;AACzE,qFAAgF;AAChF,qFAA+E;AAC/E,2LAAyK;AACzK,6LAA0K;AAC1K,+JAA8I;AAC9I,oFAA+E;AAC/E,+KAA+J;AAC/J,iJAAyI;AACzI,mJAAwI;AACxI,2DAAuD;AACvD,sEAAmE;AACnE,8DAA0D;AAqVnD,IAAM,eAAe,GAArB,MAAM,eAAe;CAAI,CAAA;AAAnB,0CAAe;0BAAf,eAAe;IAlV3B,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,UAAU,CAAC;gBACvB,qCAAa;gBACb,qCAAa;gBACb,uCAAc;gBACd,oCAAY;gBACZ,qEAA4B;gBAC5B,oBAAK;gBACL,qCAAa;gBACb,iCAAW;gBACX,yCAAe;gBACf,kBAAI;gBACJ,kDAAmB;gBACnB,mCAAY;gBACZ,uCAAc;gBACd,4CAAgB;gBAChB,wCAAc;gBACd,6BAAS;gBACT,mCAAY;gBACZ,+CAAkB;gBAClB,mCAAY;gBACZ,wBAAO;gBACP,mCAAY;gBACZ,4CAAgB;gBAChB,mCAAY;gBACZ,oCAAY;gBACZ,uCAAc;gBACd,sDAAqB;gBACrB,sBAAM;gBACN,uCAAc;gBACd,6CAAiB;gBACjB,6CAAiB;gBACjB,+DAAyB;gBACzB,kDAAmB;gBACnB,qCAAa;aACd,CAAC;YACF,qBAAY,CAAC,UAAU,CAAC,4BAAgB,CAAC;YACzC,qBAAY,CAAC,UAAU,CAAC,uBAAY,CAAC;YACrC,qBAAY,CAAC,UAAU,CAAC,sBAAS,CAAC;YAClC,qBAAY,CAAC,UAAU,CAAC,sBAAS,CAAC;YAClC,eAAS,CAAC,aAAa,CAAC,sBAAS,CAAC,UAAU,EAAE,CAAC;YAC/C,yBAAc,CAAC,OAAO,EAAE;YACxB,gCAAiB,CAAC,OAAO,CAAC;gBACxB,QAAQ,EAAE,IAAA,WAAI,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,qBAAqB,CAAC;gBACpD,SAAS,EAAE,sBAAsB;aAClC,CAAC;YACF,+BAAY,CAAC,aAAa,CAAC;gBACzB,OAAO,EAAE,CAAC,qBAAY,CAAC;gBACvB,UAAU,EAAE,KAAK,EAAE,aAA4B,EAAE,EAAE,CAAC,CAAC;oBACnD,IAAI,EAAE,aAAa,CAAC,GAAG,CAAS,uBAAuB,CAAC;iBACzD,CAAC;gBACF,MAAM,EAAE,CAAC,sBAAa,CAAC;aACxB,CAAC;YACF,kBAAU;YACV,qBAAY;YACZ,sBAAS;YACT,uBAAa,CAAC,UAAU,CAAC,CAAC,4BAAS,CAAC,CAAC;YACrC,uBAAa,CAAC,UAAU,CAAC,CAAC,6CAAiB,CAAC,CAAC;YAC7C,uBAAa,CAAC,UAAU,CAAC,CAAC,6CAAiB,CAAC,CAAC;YAC7C,uBAAa,CAAC,UAAU,CAAC,CAAC,gFAAiC,CAAC,CAAC;YAC7D,uBAAa,CAAC,UAAU,CAAC,CAAC,qCAAa,CAAC,CAAC;SAC1C;QACD,WAAW,EAAE;YACX,qDAAwB;YACxB,mDAAuB;YACvB,mDAAuB;YACvB,gCAAc;YACd,kCAAe;YACf,mFAAsC;YACtC,iDAAsB;YACtB,qDAAwB;YACxB,0DAA0B;YAC1B,sCAAiB;YACjB,+CAAqB;YACrB,mDAAuB;YACvB,oDAAwB;YACxB,iEAA8B;YAC9B,2DAA2B;YAC3B,2CAAmB;YACnB,sDAAwB;YACxB,2CAAmB;YACnB,iDAAsB;YACtB,6DAA4B;YAC5B,iDAAsB;YACtB,gCAAc;YACd,sCAAiB;YACjB,iDAAsB;YACtB,0DAA0B;YAC1B,iDAAsB;YACtB,iDAAsB;YACtB,kDAAsB;YACtB,qDAAwB;YACxB,oEAA+B;YAC/B,oCAAgB;YAChB,qDAAwB;YACxB,2DAA2B;YAC3B,2DAA2B;YAC3B,6EAAmC;YACnC,gEAA6B;YAC7B,0CAAmB;YACnB,2DAA2B;YAC3B,2DAA2B;YAC3B,8FAA2C;YAC3C,mDAAuB;SACxB;QACD,SAAS,EAAE;YACT;gBACE,OAAO,EAAE,sBAAe;gBACxB,QAAQ,EAAE,wCAAkB;aAC7B;YACD;gBACE,OAAO,EAAE,gCAAc;gBACvB,QAAQ,EAAE,8BAAa;aACxB;YACD;gBACE,OAAO,EAAE,gBAAS;gBAClB,QAAQ,EAAE,0CAAmB;aAC9B;YACD;gBACE,OAAO,EAAE,gBAAS;gBAClB,QAAQ,EAAE,oCAAgB;aAC3B;YACD;gBACE,OAAO,EAAE,iBAAU;gBACnB,QAAQ,EAAE,2CAAmB;aAC9B;YACD,+CAAqB;YACrB,4DAA2B;YAC3B,6CAAoB;YACpB,0DAA0B;YAC1B,6CAAoB;YACpB,2CAAmB;YACnB,2CAAmB;YACnB,6CAAoB;YACpB,iDAAsB;YACtB,uBAAgB;YAChB,uCAAiB;YACjB,0BAAW;YACX,gBAAS;YACT,sBAAe;YACf,gCAAc;YACd,oCAAgB;YAChB,6EAAmC;YACnC,4BAAY;YACZ,0FAAyC;YACzC,4DAA2B;YAC3B,4CAAmB;YACnB,0EAA6B;YAC7B,mDAAuB;YACvB,2CAAmB;YACnB,+CAAqB;YACrB,oDAAuB;YACvB,uBAAgB;YAChB,gBAAS;YACT,sBAAe;YACf,0BAAW;YACX,8BAAa;YACb,0BAAW;YACX,qCAAgB;YAChB,2CAAmB;YACnB,iCAAe;YACf,iCAAe;YACf,2CAAoB;YACpB,mCAAgB;YAChB,yCAAkB;YAClB,6CAAoB;YACpB,4CAAgB;YAChB,8BAAa;YAEb,yEAA6B;YAC7B,+FAAuC;YAEvC,iFAAiC;YACjC,mFAAkC;YAElC,8DAA+B;YAC/B,gEAAgC;YAChC,uEAA+B;YAC/B,yEAAgC;YAChC,oDAAsB;YACtB,sDAAuB;YACvB,qEAA8B;YAC9B,uEAA+B;YAC/B,yCAAiB;YACjB,2CAAkB;YAClB,0DAAyB;YACzB,4DAA0B;YAC1B,uEAA+B;YAC/B,yEAAgC;YAChC,yCAAiB;YACjB,2CAAkB;YAClB,0DAAyB;YACzB,4DAA0B;YAC1B,mDAAsB;YACtB,qDAAuB;YACvB,oEAA8B;YAC9B,sEAA+B;YAC/B,0DAA0B;YAC1B,sDAAwB;YACxB,iCAAc;YACd,wBAAU;YACV,sFAAmC;YACnC,yEAA6B;YAC7B,wFAAoC;YACpC,oEAA2B;YAC3B,mEAA8B;YAC9B,qCAAgB;YAChB,8CAAqB;YACrB,iEAA8B;YAC9B,iEAA6B;YAC7B,uCAAiB;YACjB,8BAAa;YACb,2CAAmB;YACnB,qDAAwB;YACxB,iDAAkB;YAClB,mDAAmB;YACnB,kEAA0B;YAC1B,oEAA2B;YAC3B,wEAA6B;YAC7B,0EAA8B;YAC9B,gDAAqB;YACrB,qCAAgB;YAChB,2CAAmB;YACnB,wCAAoB;YACpB,uDAAyB;YACzB,2CAAmB;YACnB,oEAA+B;YAC/B,0BAAW;YACX,gCAAc;YACd,oEAA2B;YAC3B,2CAAmB;YACnB,gDAAqB;YACrB,kCAAe;YACf,gDAAqB;YACrB,2CAAmB;YACnB,oDAAuB;YACvB,2CAAmB;YACnB,iDAAsB;YACtB,iDAAsB;YACtB,+CAAqB;YACrB,2CAAmB;YACnB,+CAAqB;YACrB,8DAA4B;YAC5B,8BAAa;YACb,kCAAe;YACf,+CAAqB;YACrB,qDAAwB;YACxB,4BAAY;YACZ,wBAAU;YACV,kCAAe;YACf,qDAAwB;YACxB,uEAAgC;YAChC,+DAA4B;YAC5B,wDAAyB;YACzB,mDAAuB;YACvB,gEAA6B;YAC7B,8EAAgC;YAChC,gFAAiC;YACjC,iFAAiC;YACjC,0DAA0B;YAC1B,oCAAgB;YAChB,qDAAwB;YACxB,qDAAwB;YACxB,qFAAmC;YACnC,uFAAoC;YACpC,mHAAiD;YACjD,mHAAiD;YACjD,wFAAwC;YACxC,0DAAsB;YACtB,uFAAmC;YACnC,oFAAkC;YAClC,8DAA4B;YAC5B,6CAAoB;YACpB,kCAAe;YACf,0CAAmB;YACnB,0CAAmB;YACnB,2DAA2B;YAC3B,2DAA2B;YAC3B,8FAA2C;YAC3C,sFAAuC;YACvC,qGAA0C;YAC1C,sHAAkD;YAClD,yJAAkE;YAClE,kHAAgD;YAChD,mHAAgD;YAChD,uFAAmC;YACnC,iDAAsB;YACtB,wGAA4C;YAC5C,qFAAqC;YACrC,0BAAW;SACZ;QACD,OAAO,EAAE;YACP,+CAAqB;YACrB,6CAAoB;YACpB,6CAAoB;YACpB,6EAAmC;YACnC,4BAAY;YACZ,uBAAgB;YAChB,uCAAiB;YACjB,0BAAW;YACX,+BAAY;YACZ,0BAAW;YACX,8BAAa;YACb,qCAAgB;YAChB,2CAAmB;YACnB,iCAAe;YACf,iCAAe;YACf,mCAAgB;YAChB,2CAAoB;YACpB,iCAAc;YACd,wBAAU;YACV,6CAAoB;YACpB,yCAAkB;YAClB,uCAAiB;YACjB,8CAAqB;YACrB,gDAAqB;YACrB,qCAAgB;YAChB,2CAAmB;YACnB,6CAAoB;YACpB,+CAAqB;YACrB,iDAAsB;YACtB,kCAAe;YACf,wCAAoB;YACpB,0DAA0B;YAC1B,wBAAU;YACV,4BAAY;YACZ,iDAAsB;YACtB,qDAAwB;YACxB,kBAAU;YACV,4CAAmB;YACnB,qBAAY;YACZ,4CAAgB;YAChB,0BAAW;YACX,8BAAa;SACd;KACF,CAAC;GACW,eAAe,CAAI","sourcesContent":["import { Global, Module } from '@nestjs/common';\nimport { ConfigModule, ConfigService } from '@nestjs/config';\nimport {\n APP_FILTER,\n APP_GUARD,\n APP_INTERCEPTOR,\n DiscoveryService,\n MetadataScanner,\n Reflector,\n} from '@nestjs/core';\nimport { MulterModule } from '@nestjs/platform-express';\nimport { TypeOrmModule } from '@nestjs/typeorm';\nimport { RemoveFieldsCommand } from './commands/remove-fields.command';\nimport appBuilderConfig from './config/app-builder.config';\nimport { FieldMetadataController } from './controllers/field-metadata.controller';\nimport { MediaStorageProviderMetadataController } from './controllers/media-storage-provider-metadata.controller';\nimport { ModelMetadataController } from './controllers/model-metadata.controller';\nimport { ModuleMetadataController } from './controllers/module-metadata.controller';\nimport { TestController } from './controllers/test.controller';\nimport { FieldMetadata } from './entities/field-metadata.entity';\nimport { ListOfValues } from './entities/list-of-values.entity';\nimport { MediaStorageProviderMetadata } from './entities/media-storage-provider-metadata.entity';\nimport { Media } from './entities/media.entity';\nimport { ModelMetadata } from './entities/model-metadata.entity';\nimport { ModuleMetadata } from './entities/module-metadata.entity';\nimport { CommandService } from './helpers/command.service';\nimport { SchematicService } from './helpers/schematic.service';\nimport { ListOfValuesSelectionProvider } from './providers/list-of-values-selection-providers.service';\nimport { ModuleMetadataSeederService } from './seeders/module-metadata-seeder.service';\nimport { CrudHelperService } from './services/crud-helper.service';\nimport { FieldMetadataService } from './services/field-metadata.service';\nimport { ListOfValuesService } from './services/list-of-values.service';\nimport { MediaStorageProviderMetadataSeederService } from './services/media-storage-provider-metadata-seeder.service';\nimport { MediaStorageProviderMetadataService } from './services/media-storage-provider-metadata.service';\nimport { MediaService } from './services/media.service';\nimport { ModelMetadataService } from './services/model-metadata.service';\nimport { ModuleMetadataService } from './services/module-metadata.service';\nimport { SolidIntrospectService } from './services/solid-introspect.service';\n// import { ListOfComputedFieldProvider } from './providers/list-of-computed-field-provider.service';\nimport { ServeStaticModule } from '@nestjs/serve-static';\nimport { join } from 'path';\nimport { RefreshModelCommand } from './commands/refresh-model.command';\nimport { MediaController } from './controllers/media.controller';\n\nimport { RefreshModuleCommand } from './commands/refresh-module.command';\nimport { ModelMetadataSubscriber } from './subscribers/model-metadata.subscriber';\n\nimport { ViewMetadataController } from './controllers/view-metadata.controller';\nimport { ViewMetadata } from './entities/view-metadata.entity';\nimport { ViewMetadataService } from './services/view-metadata.service';\n\nimport { ActionMetadataController } from './controllers/action-metadata.controller';\nimport { ActionMetadata } from './entities/action-metadata.entity';\nimport { ActionMetadataService } from './services/action-metadata.service';\n\nimport { HttpModule } from '@nestjs/axios';\nimport { JwtModule } from '@nestjs/jwt';\nimport { SeedCommand } from './commands/seed.command';\nimport commonConfig from './config/common.config';\nimport { iamConfig, jwtConfig } from './config/iam.config';\nimport { AuthenticationController } from './controllers/authentication.controller';\nimport { EmailTemplateController } from './controllers/email-template.controller';\nimport { GoogleAuthenticationController } from './controllers/google-authentication.controller';\nimport { MenuItemMetadataController } from './controllers/menu-item-metadata.controller';\nimport { MqMessageQueueController } from './controllers/mq-message-queue.controller';\nimport { MqMessageController } from './controllers/mq-message.controller';\nimport { OTPAuthenticationController } from './controllers/otp-authentication.controller';\nimport { ServiceController } from './controllers/service.controller';\nimport { SmsTemplateController } from './controllers/sms-template.controller';\nimport { TestQueueController } from './controllers/test-queue.controller';\n// import { UserController } from './controllers/user.controller';\nimport { EmailAttachment } from './entities/email-attachment.entity';\nimport { EmailTemplate } from './entities/email-template.entity';\nimport { MenuItemMetadata } from './entities/menu-item-metadata.entity';\nimport { MqMessageQueue } from './entities/mq-message-queue.entity';\nimport { MqMessage } from './entities/mq-message.entity';\nimport { SmsTemplate } from './entities/sms-template.entity';\nimport { UserPasswordHistory } from './entities/user-password-history.entity';\n// import { User } from './entities/user.entity';\nimport { AccessTokenGuard } from './guards/access-token.guard';\nimport { AuthenticationGuard } from './guards/authentication.guard';\nimport { PermissionsGuard } from './guards/permissions.guard';\nimport { SolidRegistry } from './helpers/solid-registry';\nimport { LoggingInterceptor } from './interceptors/logging.interceptor';\nimport { ApiEmailQueuePublisher } from './jobs/api-email-publisher.service';\nimport { ApiEmailQueueSubscriber } from './jobs/api-email-subscriber.service';\nimport { TestQueuePublisherDatabase } from './jobs/database/test-queue-publisher-database.service';\nimport { TestQueueSubscriberDatabase } from './jobs/database/test-queue-subscriber-database.service';\nimport { SmtpEmailQueuePublisherRabbitmq } from './jobs/smtp-email-publisher.service';\nimport { SmtpEmailQueueSubscriberRabbitmq } from './jobs/smtp-email-subscriber.service';\nimport { OTPQueuePublisher } from './jobs/otp-publisher.service';\nimport { OTPQueueSubscriber } from './jobs/otp-subscriber.service';\nimport { SmsQueuePublisher } from './jobs/sms-publisher.service';\nimport { SmsQueueSubscriber } from './jobs/sms-subscriber.service';\nimport { TestQueuePublisher } from './jobs/test-queue-publisher.service';\nimport { TestQueueSubscriber } from './jobs/test-queue-subscriber.service';\nimport { WhatsappQueuePublisher } from './jobs/whatsapp-publisher.service';\nimport { WhatsappQueueSubscriber } from './jobs/whatsapp-subscriber.service';\nimport { UserRegistrationListener } from './listeners/user-registration.listener';\nimport { GoogleOauthStrategy } from './passport-strategies/google-oauth.strategy';\nimport { LocalStrategy } from './passport-strategies/local.strategy';\nimport { EmailTemplateSeederService } from './seeders/email-template-seeder.service';\nimport { SmsTemplateSeederService } from './seeders/sms-template-seeder.service';\nimport { UserSeederService } from './seeders/user-seeder.service';\nimport { AuthenticationService } from './services/authentication.service';\nimport { BcryptService } from './services/bcrypt.service';\nimport { UuidExternalIdComputedFieldProvider } from './services/computed-fields/uuid-external-id-computed-field-provider.service';\nimport { EmailTemplateService } from './services/email-template.service';\nimport { FileService } from './services/file.service';\nimport { HashingService } from './services/hashing.service';\nimport { ElasticEmailService } from './services/mail/elastic-email.service';\nimport { SMTPEMailService } from './services/mail/smtp-email.service';\nimport { MenuItemMetadataService } from './services/menu-item-metadata.service';\nimport { MqMessageQueueService } from './services/mq-message-queue.service';\nimport { MqMessageService } from './services/mq-message.service';\nimport { PdfService } from './services/pdf.service';\nimport { RefreshTokenIdsStorageService } from './services/refresh-token-ids-storage.service';\nimport { ListOfModelsSelectionProvider } from './services/selection-providers/list-of-models-selection-provider.service';\nimport { TinyUrlService } from './services/short-url/tiny-url.service';\nimport { SmsTemplateService } from './services/sms-template.service';\nimport { Msg91OTPService } from './services/sms/Msg91OTPService';\nimport { Msg91SMSService } from './services/sms/Msg91SMSService';\n// import { UserService } from './services/user.service';\nimport { Msg91WhatsappService } from './services/whatsapp/Msg91WhatsappService';\nimport { SoftDeleteAwareEventSubscriber } from './subscribers/soft-delete-aware-event.subscriber';\n\nimport { PermissionMetadataController } from './controllers/permission-metadata.controller';\nimport { PermissionMetadata } from './entities/permission-metadata.entity';\nimport { PermissionMetadataService } from './services/permission-metadata.service';\n\nimport { ScheduleModule } from '@nestjs/schedule';\nimport { ClsModule } from 'nestjs-cls';\nimport { AiInteractionController } from './controllers/ai-interaction.controller';\nimport { ChatterMessageDetailsController } from './controllers/chatter-message-details.controller';\nimport { ChatterMessageController } from './controllers/chatter-message.controller';\nimport { DashboardQuestionSqlDatasetConfigController } from './controllers/dashboard-question-sql-dataset-config.controller';\nimport { DashboardQuestionController } from './controllers/dashboard-question.controller';\nimport { DashboardVariableController } from './controllers/dashboard-variable.controller';\nimport { DashboardController } from './controllers/dashboard.controller';\nimport { ExportTemplateController } from './controllers/export-template.controller';\nimport { ExportTransactionController } from './controllers/export-transaction.controller';\nimport { ImportTransactionErrorLogController } from './controllers/import-transaction-error-log.controller';\nimport { ImportTransactionController } from './controllers/import-transaction.controller';\nimport { ListOfValuesController } from './controllers/list-of-values.controller';\nimport { LocaleController } from './controllers/locale.controller';\nimport { RoleMetadataController } from './controllers/role-metadata.controller';\nimport { SavedFiltersController } from './controllers/saved-filters.controller';\nimport { ScheduledJobController } from './controllers/scheduled-job.controller';\nimport { SecurityRuleController } from './controllers/security-rule.controller';\nimport { SettingController } from './controllers/setting.controller';\nimport { UserActivityHistoryController } from './controllers/user-activity-history.controller';\nimport { UserViewMetadataController } from './controllers/user-view-metadata.controller';\nimport { UserController } from './controllers/user.controller';\nimport { AiInteraction } from './entities/ai-interaction.entity';\nimport { ChatterMessageDetails } from './entities/chatter-message-details.entity';\nimport { ChatterMessage } from './entities/chatter-message.entity';\nimport { DashboardQuestionSqlDatasetConfig } from './entities/dashboard-question-sql-dataset-config.entity';\nimport { DashboardQuestion } from './entities/dashboard-question.entity';\nimport { DashboardVariable } from './entities/dashboard-variable.entity';\nimport { Dashboard } from './entities/dashboard.entity';\nimport { ExportTemplate } from './entities/export-template.entity';\nimport { ExportTransaction } from './entities/export-transaction.entity';\nimport { ImportTransactionErrorLog } from './entities/import-transaction-error-log.entity';\nimport { ImportTransaction } from './entities/import-transaction.entity';\nimport { Locale } from './entities/locale.entity';\nimport { RoleMetadata } from './entities/role-metadata.entity';\nimport { SavedFilters } from './entities/saved-filters.entity';\nimport { ScheduledJob } from './entities/scheduled-job.entity';\nimport { SecurityRule } from './entities/security-rule.entity';\nimport { Setting } from './entities/setting.entity';\nimport { UserActivityHistory } from './entities/user-activity-history.entity';\nimport { UserViewMetadata } from './entities/user-view-metadata.entity';\nimport { User } from './entities/user.entity';\nimport { HttpExceptionFilter } from './filters/http-exception.filter';\nimport { ModelMetadataHelperService } from './helpers/model-metadata-helper.service';\nimport { ModuleMetadataHelperService } from './helpers/module-metadata-helper.service';\nimport { ApiEmailQueuePublisherDatabase } from './jobs/database/api-email-publisher-database.service';\nimport { ApiEmailQueueSubscriberDatabase } from './jobs/database/api-email-subscriber-database.service';\nimport { ComputedFieldEvaluationPublisher } from './jobs/database/computed-field-evaluation-publisher.service';\nimport { ComputedFieldEvaluationSubscriber } from './jobs/database/computed-field-evaluation-subscriber.service';\nimport { SmtpEmailQueuePublisherDatabase } from './jobs/database/smtp-email-publisher-database.service';\nimport { SmtpEmailQueueSubscriberDatabase } from './jobs/database/smtp-email-subscriber-database.service';\nimport { GenerateCodePublisherDatabase } from './jobs/database/generate-code-publisher-database.service';\nimport { GenerateCodeSubscriberDatabase } from './jobs/database/generate-code-subscriber-database.service';\nimport { OTPQueuePublisherDatabase } from './jobs/database/otp-publisher-database.service';\nimport { OTPQueueSubscriberDatabase } from './jobs/database/otp-subscriber-database.service';\nimport { SmsQueuePublisherDatabase } from './jobs/database/sms-publisher-database.service';\nimport { SmsQueueSubscriberDatabase } from './jobs/database/sms-subscriber-database.service';\n\nimport { TwilioSmsQueuePublisherDatabase } from './jobs/database/twilio-sms-publisher-database.service';\nimport { TwilioSmsQueueSubscriberDatabase } from './jobs/database/twilio-sms-subscriber-database.service';\n\n\nimport { TriggerMcpClientPublisherDatabase } from './jobs/database/trigger-mcp-client-publisher-database.service';\nimport { TriggerMcpClientSubscriberDatabase } from './jobs/database/trigger-mcp-client-subscriber-database.service';\nimport { WhatsappQueuePublisherDatabase } from './jobs/database/whatsapp-publisher-database.service';\nimport { WhatsappQueueSubscriberDatabase } from './jobs/database/whatsapp-subscriber-database.service';\nimport { DashboardMapper } from './mappers/dashboard-mapper';\nimport { DashboardRepository } from './repository/dashboard.repository';\nimport { FieldMetadataRepository } from './repository/field-metadata.repository';\nimport { FieldRepository } from './repository/field.repository';\nimport { MediaRepository } from './repository/media.repository';\nimport { SecurityRuleRepository } from './repository/security-rule.repository';\nimport { PermissionMetadataSeederService } from './seeders/permission-metadata-seeder.service';\nimport { SystemFieldsSeederService } from './seeders/system-fields-seeder.service';\nimport { AiInteractionService } from './services/ai-interaction.service';\nimport { ChatterMessageDetailsService } from './services/chatter-message-details.service';\nimport { ChatterMessageService } from './services/chatter-message.service';\nimport { ConcatComputedFieldProvider } from './services/computed-fields/concat-computed-field-provider.service';\nimport { ConcatEntityComputedFieldProvider } from './services/computed-fields/entity/concat-entity-computed-field-provider.service';\nimport { CRUDService } from './services/crud.service';\nimport { CsvService } from './services/csv.service';\nimport { DashboardQuestionSqlDatasetConfigService } from './services/dashboard-question-sql-dataset-config.service';\nimport { DashboardQuestionService } from './services/dashboard-question.service';\nimport { DashboardVariableSQLDynamicProvider } from './services/dashboard-selection-providers/dashboard-variable-sql-dynamic-provider.service';\nimport { DasbhoardVariableTestDynamicProvider } from './services/dashboard-selection-providers/dashboard-variable-test-dynamic-provider.service';\nimport { DashboardVariableService } from './services/dashboard-variable.service';\nimport { DashboardService } from './services/dashboard.service';\nimport { ExcelService } from './services/excel.service';\nimport { ExportTemplateService } from './services/export-template.service';\nimport { ExportTransactionService } from './services/export-transaction.service';\nimport { ImportTransactionErrorLogService } from './services/import-transaction-error-log.service';\nimport { ImportTransactionService } from './services/import-transaction.service';\nimport { LocaleService } from './services/locale.service';\nimport { McpToolResponseHandlerFactory } from './services/mcp-tool-response-handlers/mcp-tool-response-handler-factory.service';\nimport { SolidCreateDashboardMcpToolResponseHandler } from './services/mcp-tool-response-handlers/solid-create-dashboard-mcp-tool-response-handler.service';\nimport { SolidCreateDashboardQuestionMcpToolResponseHandler } from './services/mcp-tool-response-handlers/solid-create-dashboard-question-mcp-tool-response-handler.service';\nimport { SolidCreateDashboardQuestionSqlDatasetConfigMcpToolResponseHandler } from './services/mcp-tool-response-handlers/solid-create-dashboard-question-sql-dataset-config-mcp-tool-response-handler.service';\nimport { SolidCreateModuleMcpToolResponseHandler } from './services/mcp-tool-response-handlers/solid-create-module-mcp-tool-response-handler.service';\nimport { FileS3StorageProvider } from './services/mediaStorageProviders/file-s3-storage-provider';\nimport { FileStorageProvider } from './services/mediaStorageProviders/file-storage-provider';\nimport { ChartJsSqlDataProvider } from './services/question-data-providers/chartjs-sql-data-provider.service';\nimport { PrimeReactDatatableSqlDataProvider } from './services/question-data-providers/prime-react-datatable-sql-data-provider.service';\nimport { PrimeReactMeterGroupSqlDataProvider } from './services/question-data-providers/prime-react-meter-group-sql-data-provider.service';\nimport { PublisherFactory } from './services/queues/publisher-factory.service';\nimport { RequestContextService } from './services/request-context.service';\nimport { RoleMetadataService } from './services/role-metadata.service';\nimport { SavedFiltersService } from './services/saved-filters.service';\nimport { ScheduledJobService } from './services/scheduled-job.service';\nimport { SchedulerServiceImpl } from './services/scheduled-jobs/scheduler.service';\nimport { SecurityRuleService } from './services/security-rule.service';\nimport { ListOfDashboardQuestionProvidersSelectionProvider } from './services/selection-providers/list-of-dashboard-question-providers-selection-provider.service';\nimport { ListOfDashboardVariableProvidersSelectionProvider } from './services/selection-providers/list-of-dashboard-variable-providers-selection-provider.service';\nimport { ListOfScheduledJobsSelectionProvider } from './services/selection-providers/list-of-scheduled-jobs-selection-provider.service';\nimport { LocaleListSelectionProvider } from './services/selection-providers/locale-list-selection-provider.service';\nimport { SettingService } from './services/setting.service';\nimport { SqlExpressionResolverService } from './services/sql-expression-resolver.service';\nimport { UserActivityHistoryService } from './services/user-activity-history.service';\nimport { UserViewMetadataService } from './services/user-view-metadata.service';\nimport { UserService } from './services/user.service';\nimport { AuditSubscriber } from './subscribers/audit.subscriber';\nimport { ComputedEntityFieldSubscriber } from './subscribers/computed-entity-field.subscriber';\nimport { CreatedByUpdatedBySubscriber } from './subscribers/created-by-updated-by.subscriber';\nimport { DashboardQuestionSqlDatasetConfigSubscriber } from './subscribers/dashboard-question-sql-dataset-config.subscriber';\nimport { DashboardQuestionSubscriber } from './subscribers/dashboard-question.subscriber';\nimport { DashboardVariableSubscriber } from './subscribers/dashboard-variable.subscriber';\nimport { DashboardSubscriber } from './subscribers/dashboard.subscriber';\nimport { SecurityRuleSubscriber } from './subscribers/security-rule.subscriber';\nimport { ViewMetadataSubsciber } from './subscribers/view-metadata.subscriber';\nimport { SolidCreateDashboardWidgetMcpToolResponseHandler } from './services/mcp-tool-response-handlers/solid-create-dashboard-widget-mcp-tool-response-handler.service';\nimport { SolidCreateModelWithFieldsMcpToolResponseHandler } from './services/mcp-tool-response-handlers/solid-create-model-with-fields-mcp-tool-response-handler.service';\nimport { SolidAddFieldMcpToolResponseHandler } from './services/mcp-tool-response-handlers/solid-add-field-mcp-tool-response-handler.service';\nimport { ViewMetadataRepository } from './repository/view-metadata.repository';\nimport { SolidCreateModelLayoutMcpToolResponseHandler } from './services/mcp-tool-response-handlers/solid-save-model-layout-mcp-tool-response-handler.service';\nimport { NoopsEntityComputedFieldProviderService } from './services/computed-fields/entity/noops-entity-computed-field-provider.service';\nimport { AlphaNumExternalIdComputationProvider } from './services/computed-fields/entity/alpha-num-external-id-computed-field-provider';\nimport { MailFactory } from './factories/mail.factory';\nimport { TwilioSMSService } from './services/sms/TwilioSMSService';\nimport { PollerService } from './services/poller.service';\n\n\n@Global()\n@Module({\n imports: [\n TypeOrmModule.forFeature([\n ModelMetadata,\n FieldMetadata,\n ModuleMetadata,\n ListOfValues,\n MediaStorageProviderMetadata,\n Media,\n EmailTemplate,\n SmsTemplate,\n EmailAttachment,\n User,\n UserPasswordHistory,\n ViewMetadata,\n ActionMetadata,\n MenuItemMetadata,\n MqMessageQueue,\n MqMessage,\n ScheduledJob,\n PermissionMetadata,\n RoleMetadata,\n Setting,\n SavedFilters,\n UserViewMetadata,\n SecurityRule,\n ListOfValues,\n ChatterMessage,\n ChatterMessageDetails,\n Locale,\n ExportTemplate,\n ExportTransaction,\n ImportTransaction,\n ImportTransactionErrorLog,\n UserActivityHistory,\n AiInteraction,\n ]),\n ConfigModule.forFeature(appBuilderConfig),\n ConfigModule.forFeature(commonConfig),\n ConfigModule.forFeature(iamConfig),\n ConfigModule.forFeature(jwtConfig),\n JwtModule.registerAsync(jwtConfig.asProvider()),\n ScheduleModule.forRoot(),\n ServeStaticModule.forRoot({\n rootPath: join(process.cwd(), 'media-files-storage'),\n serveRoot: '/media-files-storage',\n }),\n MulterModule.registerAsync({\n imports: [ConfigModule],\n useFactory: async (configService: ConfigService) => ({\n dest: configService.get<string>('app-builder.uploadDir'),\n }),\n inject: [ConfigService],\n }),\n HttpModule,\n ConfigModule,\n ClsModule,\n TypeOrmModule.forFeature([Dashboard]),\n TypeOrmModule.forFeature([DashboardVariable]),\n TypeOrmModule.forFeature([DashboardQuestion]),\n TypeOrmModule.forFeature([DashboardQuestionSqlDatasetConfig]),\n TypeOrmModule.forFeature([AiInteraction]),\n ],\n controllers: [\n ModuleMetadataController,\n ModelMetadataController,\n FieldMetadataController,\n TestController,\n MediaController,\n MediaStorageProviderMetadataController,\n ViewMetadataController,\n ActionMetadataController,\n MenuItemMetadataController,\n ServiceController,\n SmsTemplateController,\n EmailTemplateController,\n AuthenticationController,\n GoogleAuthenticationController,\n OTPAuthenticationController,\n TestQueueController,\n MqMessageQueueController,\n MqMessageController,\n ScheduledJobController,\n PermissionMetadataController,\n RoleMetadataController,\n UserController,\n SettingController,\n SavedFiltersController,\n UserViewMetadataController,\n SecurityRuleController,\n SavedFiltersController,\n ListOfValuesController,\n ChatterMessageController,\n ChatterMessageDetailsController,\n LocaleController,\n ExportTemplateController,\n ExportTransactionController,\n ImportTransactionController,\n ImportTransactionErrorLogController,\n UserActivityHistoryController,\n DashboardController,\n DashboardVariableController,\n DashboardQuestionController,\n DashboardQuestionSqlDatasetConfigController,\n AiInteractionController,\n ],\n providers: [\n {\n provide: APP_INTERCEPTOR,\n useClass: LoggingInterceptor,\n },\n {\n provide: HashingService,\n useClass: BcryptService,\n },\n {\n provide: APP_GUARD,\n useClass: AuthenticationGuard,\n },\n {\n provide: APP_GUARD,\n useClass: PermissionsGuard,\n },\n {\n provide: APP_FILTER,\n useClass: HttpExceptionFilter\n },\n ModuleMetadataService,\n ModuleMetadataHelperService,\n ModelMetadataService,\n ModelMetadataHelperService,\n FieldMetadataService,\n RemoveFieldsCommand,\n RefreshModelCommand,\n RefreshModuleCommand,\n SolidIntrospectService,\n DiscoveryService,\n CrudHelperService,\n CRUDService,\n Reflector,\n MetadataScanner,\n CommandService,\n SchematicService,\n MediaStorageProviderMetadataService,\n MediaService,\n MediaStorageProviderMetadataSeederService,\n ModuleMetadataSeederService,\n ListOfValuesService,\n ListOfValuesSelectionProvider,\n ModelMetadataSubscriber,\n ViewMetadataService,\n ActionMetadataService,\n MenuItemMetadataService,\n DiscoveryService,\n Reflector,\n MetadataScanner,\n FileService,\n SolidRegistry,\n SeedCommand,\n SMTPEMailService,\n ElasticEmailService,\n Msg91SMSService,\n Msg91OTPService,\n Msg91WhatsappService,\n TwilioSMSService,\n SmsTemplateService,\n EmailTemplateService,\n PublisherFactory,\n PollerService,\n\n McpToolResponseHandlerFactory,\n SolidCreateModuleMcpToolResponseHandler,\n\n TriggerMcpClientPublisherDatabase,\n TriggerMcpClientSubscriberDatabase,\n\n SmtpEmailQueuePublisherRabbitmq,\n SmtpEmailQueueSubscriberRabbitmq,\n SmtpEmailQueuePublisherDatabase,\n SmtpEmailQueueSubscriberDatabase,\n ApiEmailQueuePublisher,\n ApiEmailQueueSubscriber,\n ApiEmailQueuePublisherDatabase,\n ApiEmailQueueSubscriberDatabase,\n SmsQueuePublisher,\n SmsQueueSubscriber,\n SmsQueuePublisherDatabase,\n SmsQueueSubscriberDatabase,\n TwilioSmsQueuePublisherDatabase,\n TwilioSmsQueueSubscriberDatabase,\n OTPQueuePublisher,\n OTPQueueSubscriber,\n OTPQueuePublisherDatabase,\n OTPQueueSubscriberDatabase,\n WhatsappQueuePublisher,\n WhatsappQueueSubscriber,\n WhatsappQueuePublisherDatabase,\n WhatsappQueueSubscriberDatabase,\n EmailTemplateSeederService,\n SmsTemplateSeederService,\n TinyUrlService,\n PdfService,\n UuidExternalIdComputedFieldProvider,\n ListOfModelsSelectionProvider,\n ListOfScheduledJobsSelectionProvider,\n LocaleListSelectionProvider,\n SoftDeleteAwareEventSubscriber,\n AccessTokenGuard,\n AuthenticationService,\n GoogleAuthenticationController,\n RefreshTokenIdsStorageService,\n UserSeederService,\n LocalStrategy,\n GoogleOauthStrategy,\n UserRegistrationListener,\n TestQueuePublisher,\n TestQueueSubscriber,\n TestQueuePublisherDatabase,\n TestQueueSubscriberDatabase,\n GenerateCodePublisherDatabase,\n GenerateCodeSubscriberDatabase,\n MqMessageQueueService,\n MqMessageService,\n ScheduledJobService,\n SchedulerServiceImpl,\n PermissionMetadataService,\n RoleMetadataService,\n PermissionMetadataSeederService,\n UserService,\n SettingService,\n ConcatComputedFieldProvider,\n FileStorageProvider,\n FileS3StorageProvider,\n MediaRepository,\n ViewMetadataSubsciber,\n SavedFiltersService,\n UserViewMetadataService,\n SecurityRuleService,\n SecurityRuleRepository,\n SecurityRuleSubscriber,\n RequestContextService,\n SavedFiltersService,\n ChatterMessageService,\n ChatterMessageDetailsService,\n LocaleService,\n AuditSubscriber,\n ExportTemplateService,\n ExportTransactionService,\n ExcelService,\n CsvService,\n FieldRepository,\n ImportTransactionService,\n ImportTransactionErrorLogService,\n CreatedByUpdatedBySubscriber,\n SystemFieldsSeederService,\n FieldMetadataRepository,\n ComputedEntityFieldSubscriber,\n ComputedFieldEvaluationPublisher,\n ComputedFieldEvaluationSubscriber,\n ConcatEntityComputedFieldProvider,\n UserActivityHistoryService,\n DashboardService,\n DashboardVariableService,\n DashboardQuestionService,\n DashboardVariableSQLDynamicProvider,\n DasbhoardVariableTestDynamicProvider,\n ListOfDashboardVariableProvidersSelectionProvider,\n ListOfDashboardQuestionProvidersSelectionProvider,\n DashboardQuestionSqlDatasetConfigService,\n ChartJsSqlDataProvider,\n PrimeReactMeterGroupSqlDataProvider,\n PrimeReactDatatableSqlDataProvider,\n SqlExpressionResolverService,\n AiInteractionService,\n DashboardMapper,\n DashboardRepository,\n DashboardSubscriber,\n DashboardVariableSubscriber,\n DashboardQuestionSubscriber,\n DashboardQuestionSqlDatasetConfigSubscriber,\n NoopsEntityComputedFieldProviderService,\n SolidCreateDashboardMcpToolResponseHandler,\n SolidCreateDashboardQuestionMcpToolResponseHandler,\n SolidCreateDashboardQuestionSqlDatasetConfigMcpToolResponseHandler,\n SolidCreateDashboardWidgetMcpToolResponseHandler,\n SolidCreateModelWithFieldsMcpToolResponseHandler,\n SolidAddFieldMcpToolResponseHandler,\n ViewMetadataRepository,\n SolidCreateModelLayoutMcpToolResponseHandler,\n AlphaNumExternalIdComputationProvider,\n MailFactory,\n ],\n exports: [\n ModuleMetadataService,\n ModelMetadataService,\n FieldMetadataService,\n MediaStorageProviderMetadataService,\n MediaService,\n DiscoveryService,\n CrudHelperService,\n CRUDService,\n MulterModule,\n FileService,\n SolidRegistry,\n SMTPEMailService,\n ElasticEmailService,\n Msg91SMSService,\n Msg91OTPService,\n TwilioSMSService,\n Msg91WhatsappService,\n TinyUrlService,\n PdfService,\n EmailTemplateService,\n SmsTemplateService,\n UserSeederService,\n AuthenticationService,\n MqMessageQueueService,\n MqMessageService,\n RefreshModelCommand,\n RefreshModuleCommand,\n RequestContextService,\n SecurityRuleRepository,\n FieldRepository,\n SchedulerServiceImpl,\n UserActivityHistoryService,\n CsvService,\n ExcelService,\n SolidIntrospectService,\n ImportTransactionService,\n HttpModule,\n ListOfValuesService,\n ConfigModule,\n PublisherFactory,\n MailFactory,\n PollerService\n ],\n})\nexport class SolidCoreModule { }\n"]}
|