@solidstarters/solid-core 1.2.201 → 1.2.203
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/cache.options.d.ts +1 -1
- package/dist/config/cache.options.d.ts.map +1 -1
- package/dist/config/cache.options.js +2 -2
- package/dist/config/cache.options.js.map +1 -1
- package/dist/config/iam.config.d.ts +4 -0
- package/dist/config/iam.config.d.ts.map +1 -1
- package/dist/config/iam.config.js +2 -0
- package/dist/config/iam.config.js.map +1 -1
- package/dist/controllers/model-metadata.controller.d.ts +25 -0
- package/dist/controllers/model-metadata.controller.d.ts.map +1 -1
- package/dist/controllers/model-metadata.controller.js +23 -0
- package/dist/controllers/model-metadata.controller.js.map +1 -1
- package/dist/controllers/setting.controller.d.ts +1 -2
- package/dist/controllers/setting.controller.d.ts.map +1 -1
- package/dist/controllers/setting.controller.js +21 -42
- package/dist/controllers/setting.controller.js.map +1 -1
- package/dist/decorators/sms-provider.decorator.d.ts +3 -0
- package/dist/decorators/sms-provider.decorator.d.ts.map +1 -0
- package/dist/decorators/sms-provider.decorator.js +11 -0
- package/dist/decorators/sms-provider.decorator.js.map +1 -0
- package/dist/dtos/create-role-metadata.dto.d.ts.map +1 -1
- package/dist/dtos/create-role-metadata.dto.js +1 -0
- package/dist/dtos/create-role-metadata.dto.js.map +1 -1
- package/dist/dtos/navigation.dto.d.ts +6 -0
- package/dist/dtos/navigation.dto.d.ts.map +1 -0
- package/dist/dtos/navigation.dto.js +33 -0
- package/dist/dtos/navigation.dto.js.map +1 -0
- package/dist/dtos/sign-in.dto.js +3 -3
- package/dist/dtos/sign-in.dto.js.map +1 -1
- package/dist/entities/common.entity.js +5 -4
- package/dist/entities/common.entity.js.map +1 -1
- package/dist/entities/field-metadata.entity.d.ts.map +1 -1
- package/dist/entities/field-metadata.entity.js +2 -1
- package/dist/entities/field-metadata.entity.js.map +1 -1
- package/dist/entities/legacy-common.entity.d.ts.map +1 -1
- package/dist/entities/legacy-common.entity.js +5 -4
- package/dist/entities/legacy-common.entity.js.map +1 -1
- package/dist/entities/model-metadata.entity.d.ts.map +1 -1
- package/dist/entities/model-metadata.entity.js +5 -1
- package/dist/entities/model-metadata.entity.js.map +1 -1
- package/dist/factories/mail.factory.d.ts.map +1 -1
- package/dist/factories/mail.factory.js.map +1 -1
- package/dist/factories/sms.factory.d.ts +14 -0
- package/dist/factories/sms.factory.d.ts.map +1 -0
- package/dist/factories/sms.factory.js +53 -0
- package/dist/factories/sms.factory.js.map +1 -0
- package/dist/helpers/date.helper.d.ts.map +1 -1
- package/dist/helpers/date.helper.js +13 -4
- package/dist/helpers/date.helper.js.map +1 -1
- package/dist/helpers/field-crud-managers/MediaFieldCrudManager.d.ts +3 -0
- package/dist/helpers/field-crud-managers/MediaFieldCrudManager.d.ts.map +1 -1
- package/dist/helpers/field-crud-managers/MediaFieldCrudManager.js +99 -0
- package/dist/helpers/field-crud-managers/MediaFieldCrudManager.js.map +1 -1
- package/dist/helpers/image-encoding.helper.d.ts +10 -0
- package/dist/helpers/image-encoding.helper.d.ts.map +1 -0
- package/dist/helpers/image-encoding.helper.js +44 -0
- package/dist/helpers/image-encoding.helper.js.map +1 -0
- package/dist/helpers/module.helper.d.ts.map +1 -1
- package/dist/helpers/module.helper.js +2 -0
- package/dist/helpers/module.helper.js.map +1 -1
- package/dist/helpers/solid-microservice-adapter.service.d.ts +31 -0
- package/dist/helpers/solid-microservice-adapter.service.d.ts.map +1 -0
- package/dist/helpers/solid-microservice-adapter.service.js +53 -0
- package/dist/helpers/solid-microservice-adapter.service.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 +11 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -6
- package/dist/index.js.map +1 -1
- package/dist/jobs/database/{sms-publisher-database.service.d.ts → msg91-sms-publisher-database.service.d.ts} +2 -2
- package/dist/jobs/database/msg91-sms-publisher-database.service.d.ts.map +1 -0
- package/dist/jobs/database/{sms-publisher-database.service.js → msg91-sms-publisher-database.service.js} +8 -8
- package/dist/jobs/database/msg91-sms-publisher-database.service.js.map +1 -0
- package/dist/jobs/database/{sms-queue-database-options.d.ts → msg91-sms-queue-database-options.d.ts} +1 -1
- package/dist/jobs/database/msg91-sms-queue-database-options.d.ts.map +1 -0
- package/dist/jobs/database/{sms-queue-database-options.js → msg91-sms-queue-database-options.js} +1 -1
- package/dist/jobs/database/msg91-sms-queue-database-options.js.map +1 -0
- package/dist/jobs/database/{sms-subscriber-database.service.d.ts → msg91-sms-subscriber-database.service.d.ts} +5 -5
- package/dist/jobs/database/msg91-sms-subscriber-database.service.d.ts.map +1 -0
- package/dist/jobs/database/{sms-subscriber-database.service.js → msg91-sms-subscriber-database.service.js} +14 -12
- package/dist/jobs/database/msg91-sms-subscriber-database.service.js.map +1 -0
- package/dist/jobs/database/otp-subscriber-database.service.d.ts +4 -4
- package/dist/jobs/database/otp-subscriber-database.service.d.ts.map +1 -1
- package/dist/jobs/database/otp-subscriber-database.service.js +6 -4
- package/dist/jobs/database/otp-subscriber-database.service.js.map +1 -1
- package/dist/jobs/database/twilio-sms-subscriber-database.service.d.ts +3 -3
- package/dist/jobs/database/twilio-sms-subscriber-database.service.d.ts.map +1 -1
- package/dist/jobs/database/twilio-sms-subscriber-database.service.js +6 -4
- package/dist/jobs/database/twilio-sms-subscriber-database.service.js.map +1 -1
- package/dist/jobs/{sms-publisher.service.d.ts → msg91-otp-publisher.service.d.ts} +2 -2
- package/dist/jobs/msg91-otp-publisher.service.d.ts.map +1 -0
- package/dist/jobs/{sms-publisher.service.js → msg91-otp-publisher.service.js} +8 -8
- package/dist/jobs/msg91-otp-publisher.service.js.map +1 -0
- package/dist/jobs/{sms-queue-options.d.ts → msg91-otp-queue-options.d.ts} +1 -1
- package/dist/jobs/msg91-otp-queue-options.d.ts.map +1 -0
- package/dist/jobs/{otp-queue-options.js → msg91-otp-queue-options.js} +1 -1
- package/dist/jobs/msg91-otp-queue-options.js.map +1 -0
- package/dist/jobs/{sms-subscriber.service.d.ts → msg91-otp-subscriber.service.d.ts} +6 -6
- package/dist/jobs/msg91-otp-subscriber.service.d.ts.map +1 -0
- package/dist/jobs/{otp-subscriber.service.js → msg91-otp-subscriber.service.js} +14 -12
- package/dist/jobs/msg91-otp-subscriber.service.js.map +1 -0
- package/dist/jobs/{otp-publisher.service.d.ts → msg91-sms-publisher.service.d.ts} +2 -2
- package/dist/jobs/msg91-sms-publisher.service.d.ts.map +1 -0
- package/dist/jobs/{otp-publisher.service.js → msg91-sms-publisher.service.js} +8 -8
- package/dist/jobs/msg91-sms-publisher.service.js.map +1 -0
- package/dist/jobs/{otp-queue-options.d.ts → msg91-sms-queue-options.d.ts} +1 -1
- package/dist/jobs/msg91-sms-queue-options.d.ts.map +1 -0
- package/dist/jobs/{sms-queue-options.js → msg91-sms-queue-options.js} +1 -1
- package/dist/jobs/msg91-sms-queue-options.js.map +1 -0
- package/dist/jobs/{otp-subscriber.service.d.ts → msg91-sms-subscriber.service.d.ts} +7 -7
- package/dist/jobs/msg91-sms-subscriber.service.d.ts.map +1 -0
- package/dist/jobs/{sms-subscriber.service.js → msg91-sms-subscriber.service.js} +14 -12
- package/dist/jobs/msg91-sms-subscriber.service.js.map +1 -0
- package/dist/jobs/twilio-sms-subscriber.service.d.ts +3 -3
- package/dist/jobs/twilio-sms-subscriber.service.d.ts.map +1 -1
- package/dist/jobs/twilio-sms-subscriber.service.js +6 -4
- package/dist/jobs/twilio-sms-subscriber.service.js.map +1 -1
- package/dist/mappers/list-of-values-mapper.d.ts.map +1 -1
- package/dist/mappers/list-of-values-mapper.js +1 -1
- package/dist/mappers/list-of-values-mapper.js.map +1 -1
- package/dist/repository/security-rule.repository.d.ts.map +1 -1
- package/dist/repository/security-rule.repository.js +7 -2
- package/dist/repository/security-rule.repository.js.map +1 -1
- package/dist/seeders/module-metadata-seeder.service.d.ts.map +1 -1
- package/dist/seeders/module-metadata-seeder.service.js +24 -2
- package/dist/seeders/module-metadata-seeder.service.js.map +1 -1
- package/dist/seeders/seed-data/solid-core-metadata.json +71 -25
- package/dist/seeders/user-seeder.service.d.ts.map +1 -1
- package/dist/seeders/user-seeder.service.js +5 -4
- package/dist/seeders/user-seeder.service.js.map +1 -1
- package/dist/services/authentication.service.d.ts +6 -3
- package/dist/services/authentication.service.d.ts.map +1 -1
- package/dist/services/authentication.service.js +53 -18
- package/dist/services/authentication.service.js.map +1 -1
- package/dist/services/computed-fields/entity/alpha-num-external-id-computed-field-provider.d.ts.map +1 -1
- package/dist/services/computed-fields/entity/alpha-num-external-id-computed-field-provider.js.map +1 -1
- package/dist/services/crud.service.d.ts +1 -2
- package/dist/services/crud.service.d.ts.map +1 -1
- package/dist/services/crud.service.js +6 -1
- package/dist/services/crud.service.js.map +1 -1
- package/dist/services/excel.service.d.ts +1 -0
- package/dist/services/excel.service.d.ts.map +1 -1
- package/dist/services/excel.service.js +4 -0
- package/dist/services/excel.service.js.map +1 -1
- package/dist/services/model-metadata.service.d.ts +28 -1
- package/dist/services/model-metadata.service.d.ts.map +1 -1
- package/dist/services/model-metadata.service.js +109 -2
- package/dist/services/model-metadata.service.js.map +1 -1
- package/dist/services/setting.service.d.ts.map +1 -1
- package/dist/services/setting.service.js +3 -45
- package/dist/services/setting.service.js.map +1 -1
- package/dist/services/sms/Msg91BaseSMSService.js +6 -6
- package/dist/services/sms/Msg91BaseSMSService.js.map +1 -1
- package/dist/services/sms/Msg91OTPService.d.ts.map +1 -1
- package/dist/services/sms/Msg91OTPService.js +3 -1
- package/dist/services/sms/Msg91OTPService.js.map +1 -1
- package/dist/services/sms/Msg91SMSService.d.ts.map +1 -1
- package/dist/services/sms/Msg91SMSService.js +3 -1
- package/dist/services/sms/Msg91SMSService.js.map +1 -1
- package/dist/services/sms/TwilioSMSService.d.ts.map +1 -1
- package/dist/services/sms/TwilioSMSService.js +2 -0
- package/dist/services/sms/TwilioSMSService.js.map +1 -1
- 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/services/user.service.d.ts +8 -1
- package/dist/services/user.service.d.ts.map +1 -1
- package/dist/services/user.service.js +15 -4
- package/dist/services/user.service.js.map +1 -1
- package/dist/solid-core-cli.module.js +1 -1
- package/dist/solid-core-cli.module.js.map +1 -1
- package/dist/solid-core.module.d.ts.map +1 -1
- package/dist/solid-core.module.js +29 -13
- package/dist/solid-core.module.js.map +1 -1
- package/dist/subscribers/scheduled-job.subscriber.d.ts.map +1 -1
- package/dist/subscribers/scheduled-job.subscriber.js +1 -1
- package/dist/subscribers/scheduled-job.subscriber.js.map +1 -1
- package/dist/transformers/typeorm/local-date-time-transformer.d.ts +2 -2
- package/dist/transformers/typeorm/local-date-time-transformer.d.ts.map +1 -1
- package/dist/transformers/typeorm/local-date-time-transformer.js +28 -6
- package/dist/transformers/typeorm/local-date-time-transformer.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/config/cache.options.ts +6 -3
- package/src/config/iam.config.ts +2 -1
- package/src/controllers/model-metadata.controller.ts +21 -1
- package/src/controllers/setting.controller.ts +32 -36
- package/src/decorators/sms-provider.decorator.ts +7 -0
- package/src/dtos/create-role-metadata.dto.ts +3 -0
- package/src/dtos/navigation.dto.ts +14 -0
- package/src/dtos/sign-in.dto.ts +3 -3
- package/src/entities/common.entity.ts +7 -7
- package/src/entities/field-metadata.entity.ts +1 -1
- package/src/entities/legacy-common.entity.ts +6 -5
- package/src/entities/model-metadata.entity.ts +1 -1
- package/src/factories/mail.factory.ts +0 -1
- package/src/factories/sms.factory.ts +43 -0
- package/src/helpers/date.helper.ts +38 -9
- package/src/helpers/field-crud-managers/MediaFieldCrudManager.ts +138 -4
- package/src/helpers/image-encoding.helper.ts +71 -0
- package/src/helpers/module.helper.ts +3 -0
- package/src/helpers/solid-microservice-adapter.service.ts +68 -0
- package/src/helpers/solid-registry.ts +9 -0
- package/src/index.ts +11 -6
- package/src/jobs/database/{sms-publisher-database.service.ts → msg91-sms-publisher-database.service.ts} +2 -2
- package/src/jobs/database/{sms-subscriber-database.service.ts → msg91-sms-subscriber-database.service.ts} +9 -4
- package/src/jobs/database/otp-subscriber-database.service.ts +8 -2
- package/src/jobs/database/twilio-sms-subscriber-database.service.ts +5 -2
- package/src/jobs/{otp-publisher.service.ts → msg91-otp-publisher.service.ts} +2 -2
- package/src/jobs/{otp-subscriber.service.ts → msg91-otp-subscriber.service.ts} +10 -4
- package/src/jobs/{sms-publisher.service.ts → msg91-sms-publisher.service.ts} +2 -2
- package/src/jobs/{sms-subscriber.service.ts → msg91-sms-subscriber.service.ts} +9 -4
- package/src/jobs/twilio-sms-subscriber.service.ts +6 -2
- package/src/mappers/list-of-values-mapper.ts +2 -1
- package/src/repository/security-rule.repository.ts +7 -2
- package/src/seeders/module-metadata-seeder.service.ts +33 -6
- package/src/seeders/seed-data/email-templates/email-on-signup.handlebars.html +155 -0
- package/src/seeders/seed-data/sms-templates/text-on-signup.handlebars.txt +10 -0
- package/src/seeders/seed-data/solid-core-metadata.json +72 -26
- package/src/seeders/user-seeder.service.ts +5 -4
- package/src/services/1.js +6 -0
- package/src/services/authentication.service.ts +80 -15
- package/src/services/computed-fields/entity/alpha-num-external-id-computed-field-provider.ts +1 -2
- package/src/services/crud.service.ts +23 -19
- package/src/services/excel.service.ts +6 -0
- package/src/services/model-metadata.service.ts +151 -0
- package/src/services/setting.service.ts +12 -52
- package/src/services/sms/Msg91BaseSMSService.ts +6 -6
- package/src/services/sms/Msg91OTPService.ts +3 -2
- package/src/services/sms/Msg91SMSService.ts +3 -1
- package/src/services/sms/TwilioSMSService.ts +3 -3
- package/src/services/solid-introspect.service.ts +22 -0
- package/src/services/user.service.ts +19 -0
- package/src/solid-core-cli.module.ts +2 -2
- package/src/solid-core.module.ts +33 -13
- package/src/subscribers/scheduled-job.subscriber.ts +9 -2
- package/src/transformers/typeorm/local-date-time-transformer.ts +38 -13
- package/dist/jobs/database/sms-publisher-database.service.d.ts.map +0 -1
- package/dist/jobs/database/sms-publisher-database.service.js.map +0 -1
- package/dist/jobs/database/sms-queue-database-options.d.ts.map +0 -1
- package/dist/jobs/database/sms-queue-database-options.js.map +0 -1
- package/dist/jobs/database/sms-subscriber-database.service.d.ts.map +0 -1
- package/dist/jobs/database/sms-subscriber-database.service.js.map +0 -1
- package/dist/jobs/otp-publisher.service.d.ts.map +0 -1
- package/dist/jobs/otp-publisher.service.js.map +0 -1
- package/dist/jobs/otp-queue-options.d.ts.map +0 -1
- package/dist/jobs/otp-queue-options.js.map +0 -1
- package/dist/jobs/otp-subscriber.service.d.ts.map +0 -1
- package/dist/jobs/otp-subscriber.service.js.map +0 -1
- package/dist/jobs/sms-publisher.service.d.ts.map +0 -1
- package/dist/jobs/sms-publisher.service.js.map +0 -1
- package/dist/jobs/sms-queue-options.d.ts.map +0 -1
- package/dist/jobs/sms-queue-options.js.map +0 -1
- package/dist/jobs/sms-subscriber.service.d.ts.map +0 -1
- package/dist/jobs/sms-subscriber.service.js.map +0 -1
- /package/src/jobs/database/{sms-queue-database-options.ts → msg91-sms-queue-database-options.ts} +0 -0
- /package/src/jobs/{otp-queue-options.ts → msg91-otp-queue-options.ts} +0 -0
- /package/src/jobs/{sms-queue-options.ts → msg91-sms-queue-options.ts} +0 -0
|
@@ -12,34 +12,36 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.
|
|
15
|
+
exports.Msg91OTPQueueSubscriber = void 0;
|
|
16
16
|
const common_1 = require("@nestjs/common");
|
|
17
17
|
const rabbitmq_subscriber_service_1 = require("../services/queues/rabbitmq-subscriber.service");
|
|
18
18
|
const Msg91OTPService_1 = require("../services/sms/Msg91OTPService");
|
|
19
|
-
const
|
|
19
|
+
const msg91_otp_queue_options_1 = __importDefault(require("./msg91-otp-queue-options"));
|
|
20
20
|
const mq_message_service_1 = require("../services/mq-message.service");
|
|
21
21
|
const mq_message_queue_service_1 = require("../services/mq-message-queue.service");
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
const sms_factory_1 = require("../factories/sms.factory");
|
|
23
|
+
let Msg91OTPQueueSubscriber = class Msg91OTPQueueSubscriber extends rabbitmq_subscriber_service_1.RabbitMqSubscriber {
|
|
24
|
+
constructor(smsFactory, mqMessageService, mqMessageQueueService) {
|
|
24
25
|
super(mqMessageService, mqMessageQueueService);
|
|
25
|
-
this.
|
|
26
|
+
this.smsFactory = smsFactory;
|
|
26
27
|
this.mqMessageService = mqMessageService;
|
|
27
28
|
this.mqMessageQueueService = mqMessageQueueService;
|
|
28
29
|
}
|
|
29
30
|
options() {
|
|
30
31
|
return {
|
|
31
|
-
...
|
|
32
|
+
...msg91_otp_queue_options_1.default
|
|
32
33
|
};
|
|
33
34
|
}
|
|
34
35
|
subscribe(message) {
|
|
35
|
-
this.
|
|
36
|
+
const otpService = this.smsFactory.getSmsService(Msg91OTPService_1.Msg91OTPService.name);
|
|
37
|
+
return otpService.sendSMSSynchronously(message);
|
|
36
38
|
}
|
|
37
39
|
};
|
|
38
|
-
exports.
|
|
39
|
-
exports.
|
|
40
|
+
exports.Msg91OTPQueueSubscriber = Msg91OTPQueueSubscriber;
|
|
41
|
+
exports.Msg91OTPQueueSubscriber = Msg91OTPQueueSubscriber = __decorate([
|
|
40
42
|
(0, common_1.Injectable)(),
|
|
41
|
-
__metadata("design:paramtypes", [
|
|
43
|
+
__metadata("design:paramtypes", [sms_factory_1.SmsFactory,
|
|
42
44
|
mq_message_service_1.MqMessageService,
|
|
43
45
|
mq_message_queue_service_1.MqMessageQueueService])
|
|
44
|
-
],
|
|
45
|
-
//# sourceMappingURL=otp-subscriber.service.js.map
|
|
46
|
+
], Msg91OTPQueueSubscriber);
|
|
47
|
+
//# sourceMappingURL=msg91-otp-subscriber.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"msg91-otp-subscriber.service.js","sourceRoot":"","sources":["../../src/jobs/msg91-otp-subscriber.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAG5C,gGAAqF;AACrF,qEAAkE;AAClE,wFAAwD;AACxD,uEAAmE;AACnE,mFAA8E;AAE9E,0DAAuD;AAGhD,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,gDAAuB;IAChE,YAEqB,UAAsB,EAE9B,gBAAkC,EAClC,qBAA4C;QAErD,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC;QAL9B,eAAU,GAAV,UAAU,CAAY;QAE9B,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,0BAAqB,GAArB,qBAAqB,CAAuB;IAGzD,CAAC;IAED,OAAO;QACH,OAAO;YACH,GAAG,iCAAe;SACrB,CAAA;IACL,CAAC;IAED,SAAS,CAAC,OAA0B;QAChC,MAAM,UAAU,GAAoB,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,iCAAe,CAAC,IAAI,CAAoB,CAAC;QAC3G,OAAO,UAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAGpD,CAAC;CACJ,CAAA;AAvBY,0DAAuB;kCAAvB,uBAAuB;IADnC,IAAA,mBAAU,GAAE;qCAIwB,wBAAU;QAEZ,qCAAgB;QACX,gDAAqB;GANhD,uBAAuB,CAuBnC","sourcesContent":["import { Injectable } from '@nestjs/common';\n\nimport { QueueMessage } from 'src/interfaces/mq';\nimport { RabbitMqSubscriber } from 'src/services/queues/rabbitmq-subscriber.service';\nimport { Msg91OTPService } from '../services/sms/Msg91OTPService';\nimport otpQueueOptions from './msg91-otp-queue-options';\nimport { MqMessageService } from 'src/services/mq-message.service';\nimport { MqMessageQueueService } from 'src/services/mq-message-queue.service';\nimport { QueuesModuleOptions } from \"../interfaces\";\nimport { SmsFactory } from 'src/factories/sms.factory';\n\n@Injectable()\nexport class Msg91OTPQueueSubscriber extends RabbitMqSubscriber<any> {\n constructor(\n // private readonly otpService: Msg91OTPService,\n private readonly smsFactory: SmsFactory,\n\n readonly mqMessageService: MqMessageService,\n readonly mqMessageQueueService: MqMessageQueueService,\n ) {\n super(mqMessageService, mqMessageQueueService);\n }\n\n options(): QueuesModuleOptions {\n return {\n ...otpQueueOptions\n }\n }\n\n subscribe(message: QueueMessage<any>) {\n const otpService: Msg91OTPService = this.smsFactory.getSmsService(Msg91OTPService.name) as Msg91OTPService;\n return otpService.sendSMSSynchronously(message);\n\n // this.otpService.sendSMSSynchronously(message);\n }\n}\n"]}
|
|
@@ -2,10 +2,10 @@ import { RabbitMqPublisher } from 'src/services/queues/rabbitmq-publisher.servic
|
|
|
2
2
|
import { MqMessageQueueService } from 'src/services/mq-message-queue.service';
|
|
3
3
|
import { MqMessageService } from 'src/services/mq-message.service';
|
|
4
4
|
import { QueuesModuleOptions } from "../interfaces";
|
|
5
|
-
export declare class
|
|
5
|
+
export declare class Msg91SmsQueuePublisher extends RabbitMqPublisher<any> {
|
|
6
6
|
protected readonly mqMessageService: MqMessageService;
|
|
7
7
|
protected readonly mqMessageQueueService: MqMessageQueueService;
|
|
8
8
|
constructor(mqMessageService: MqMessageService, mqMessageQueueService: MqMessageQueueService);
|
|
9
9
|
options(): QueuesModuleOptions;
|
|
10
10
|
}
|
|
11
|
-
//# sourceMappingURL=
|
|
11
|
+
//# sourceMappingURL=msg91-sms-publisher.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"msg91-sms-publisher.service.d.ts","sourceRoot":"","sources":["../../src/jobs/msg91-sms-publisher.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gDAAgD,CAAC;AAEnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,qBACa,sBAAuB,SAAQ,iBAAiB,CAAC,GAAG,CAAC;IAE1D,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IACrD,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;gBAD5C,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB;IAKnE,OAAO,IAAI,mBAAmB;CAKjC"}
|
|
@@ -12,13 +12,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.
|
|
15
|
+
exports.Msg91SmsQueuePublisher = void 0;
|
|
16
16
|
const common_1 = require("@nestjs/common");
|
|
17
17
|
const rabbitmq_publisher_service_1 = require("../services/queues/rabbitmq-publisher.service");
|
|
18
|
-
const
|
|
18
|
+
const msg91_sms_queue_options_1 = __importDefault(require("./msg91-sms-queue-options"));
|
|
19
19
|
const mq_message_queue_service_1 = require("../services/mq-message-queue.service");
|
|
20
20
|
const mq_message_service_1 = require("../services/mq-message.service");
|
|
21
|
-
let
|
|
21
|
+
let Msg91SmsQueuePublisher = class Msg91SmsQueuePublisher extends rabbitmq_publisher_service_1.RabbitMqPublisher {
|
|
22
22
|
constructor(mqMessageService, mqMessageQueueService) {
|
|
23
23
|
super(mqMessageService, mqMessageQueueService);
|
|
24
24
|
this.mqMessageService = mqMessageService;
|
|
@@ -26,14 +26,14 @@ let OTPQueuePublisher = class OTPQueuePublisher extends rabbitmq_publisher_servi
|
|
|
26
26
|
}
|
|
27
27
|
options() {
|
|
28
28
|
return {
|
|
29
|
-
...
|
|
29
|
+
...msg91_sms_queue_options_1.default
|
|
30
30
|
};
|
|
31
31
|
}
|
|
32
32
|
};
|
|
33
|
-
exports.
|
|
34
|
-
exports.
|
|
33
|
+
exports.Msg91SmsQueuePublisher = Msg91SmsQueuePublisher;
|
|
34
|
+
exports.Msg91SmsQueuePublisher = Msg91SmsQueuePublisher = __decorate([
|
|
35
35
|
(0, common_1.Injectable)(),
|
|
36
36
|
__metadata("design:paramtypes", [mq_message_service_1.MqMessageService,
|
|
37
37
|
mq_message_queue_service_1.MqMessageQueueService])
|
|
38
|
-
],
|
|
39
|
-
//# sourceMappingURL=
|
|
38
|
+
], Msg91SmsQueuePublisher);
|
|
39
|
+
//# sourceMappingURL=msg91-sms-publisher.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"msg91-sms-publisher.service.js","sourceRoot":"","sources":["../../src/jobs/msg91-sms-publisher.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAE5C,8FAAmF;AACnF,wFAAwD;AACxD,mFAA8E;AAC9E,uEAAmE;AAI5D,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,8CAAsB;IAC9D,YACuB,gBAAkC,EAClC,qBAA4C;QAE/D,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC;QAH5B,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,0BAAqB,GAArB,qBAAqB,CAAuB;IAGnE,CAAC;IAED,OAAO;QACH,OAAO;YACH,GAAG,iCAAe;SACrB,CAAA;IACL,CAAC;CACJ,CAAA;AAbY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,mBAAU,GAAE;qCAGgC,qCAAgB;QACX,gDAAqB;GAH1D,sBAAsB,CAalC","sourcesContent":["import { Injectable } from '@nestjs/common';\n\nimport { RabbitMqPublisher } from 'src/services/queues/rabbitmq-publisher.service';\nimport smsQueueOptions from './msg91-sms-queue-options';\nimport { MqMessageQueueService } from 'src/services/mq-message-queue.service';\nimport { MqMessageService } from 'src/services/mq-message.service';\nimport { QueuesModuleOptions } from \"../interfaces\";\n\n@Injectable()\nexport class Msg91SmsQueuePublisher extends RabbitMqPublisher<any> {\n constructor(\n protected readonly mqMessageService: MqMessageService,\n protected readonly mqMessageQueueService: MqMessageQueueService,\n ) {\n super(mqMessageService, mqMessageQueueService);\n }\n\n options(): QueuesModuleOptions {\n return {\n ...smsQueueOptions\n }\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"msg91-sms-queue-options.d.ts","sourceRoot":"","sources":["../../src/jobs/msg91-sms-queue-options.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;;;;;;AAG3C,wBAQE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"msg91-sms-queue-options.js","sourceRoot":"","sources":["../../src/jobs/msg91-sms-queue-options.ts"],"names":[],"mappings":";;AAEA,8CAA2C;AAE3C,MAAM,cAAc,GAAG,WAAW,CAAC;AACnC,kBAAe;IACX,IAAI,EAAE,aAAa;IACnB,IAAI,EAAE,uBAAU,CAAC,QAAQ;IACzB,SAAS,EAAE,cAAc;CAK5B,CAAC","sourcesContent":["import { QueueMessage } from 'src/interfaces/mq';\n\nimport { BrokerType } from \"../interfaces\";\n\nconst SMS_QUEUE_NAME = 'sms_queue';\nexport default {\n name: 'smsInstance',\n type: BrokerType.RabbitMQ,\n queueName: SMS_QUEUE_NAME,\n // receive: async (message: QueueMessage<any>) => { // Default receive handler\n // console.log(`Received message: ${JSON.stringify(message)} from queue ${SMS_QUEUE_NAME}`);\n // return 'Received';\n // },\n};"]}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { QueueMessage } from 'src/interfaces/mq';
|
|
2
1
|
import { RabbitMqSubscriber } from 'src/services/queues/rabbitmq-subscriber.service';
|
|
3
|
-
import {
|
|
2
|
+
import { QueueMessage } from 'src/interfaces/mq';
|
|
4
3
|
import { MqMessageService } from 'src/services/mq-message.service';
|
|
5
4
|
import { MqMessageQueueService } from 'src/services/mq-message-queue.service';
|
|
6
5
|
import { QueuesModuleOptions } from "../interfaces";
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
import { SmsFactory } from 'src/factories/sms.factory';
|
|
7
|
+
export declare class Msg91SmsQueueSubscriber extends RabbitMqSubscriber<any> {
|
|
8
|
+
private readonly smsFactory;
|
|
9
9
|
readonly mqMessageService: MqMessageService;
|
|
10
10
|
readonly mqMessageQueueService: MqMessageQueueService;
|
|
11
|
-
constructor(
|
|
11
|
+
constructor(smsFactory: SmsFactory, mqMessageService: MqMessageService, mqMessageQueueService: MqMessageQueueService);
|
|
12
12
|
options(): QueuesModuleOptions;
|
|
13
|
-
subscribe(message: QueueMessage<any>):
|
|
13
|
+
subscribe(message: QueueMessage<any>): Promise<any>;
|
|
14
14
|
}
|
|
15
|
-
//# sourceMappingURL=
|
|
15
|
+
//# sourceMappingURL=msg91-sms-subscriber.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"msg91-sms-subscriber.service.d.ts","sourceRoot":"","sources":["../../src/jobs/msg91-sms-subscriber.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,qBACa,uBAAwB,SAAQ,kBAAkB,CAAC,GAAG,CAAC;IAG5D,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IAC3C,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;gBAFpC,UAAU,EAAE,UAAU,EAC9B,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB;IAKzD,OAAO,IAAI,mBAAmB;IAM9B,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC;CAMvC"}
|
|
@@ -12,34 +12,36 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.
|
|
15
|
+
exports.Msg91SmsQueueSubscriber = void 0;
|
|
16
16
|
const common_1 = require("@nestjs/common");
|
|
17
17
|
const rabbitmq_subscriber_service_1 = require("../services/queues/rabbitmq-subscriber.service");
|
|
18
|
-
const
|
|
18
|
+
const msg91_sms_queue_options_1 = __importDefault(require("./msg91-sms-queue-options"));
|
|
19
19
|
const Msg91SMSService_1 = require("../services/sms/Msg91SMSService");
|
|
20
20
|
const mq_message_service_1 = require("../services/mq-message.service");
|
|
21
21
|
const mq_message_queue_service_1 = require("../services/mq-message-queue.service");
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
const sms_factory_1 = require("../factories/sms.factory");
|
|
23
|
+
let Msg91SmsQueueSubscriber = class Msg91SmsQueueSubscriber extends rabbitmq_subscriber_service_1.RabbitMqSubscriber {
|
|
24
|
+
constructor(smsFactory, mqMessageService, mqMessageQueueService) {
|
|
24
25
|
super(mqMessageService, mqMessageQueueService);
|
|
25
|
-
this.
|
|
26
|
+
this.smsFactory = smsFactory;
|
|
26
27
|
this.mqMessageService = mqMessageService;
|
|
27
28
|
this.mqMessageQueueService = mqMessageQueueService;
|
|
28
29
|
}
|
|
29
30
|
options() {
|
|
30
31
|
return {
|
|
31
|
-
...
|
|
32
|
+
...msg91_sms_queue_options_1.default
|
|
32
33
|
};
|
|
33
34
|
}
|
|
34
35
|
subscribe(message) {
|
|
35
|
-
|
|
36
|
+
const smsService = this.smsFactory.getSmsService(Msg91SMSService_1.Msg91SMSService.name);
|
|
37
|
+
return smsService.sendSMSSynchronously(message);
|
|
36
38
|
}
|
|
37
39
|
};
|
|
38
|
-
exports.
|
|
39
|
-
exports.
|
|
40
|
+
exports.Msg91SmsQueueSubscriber = Msg91SmsQueueSubscriber;
|
|
41
|
+
exports.Msg91SmsQueueSubscriber = Msg91SmsQueueSubscriber = __decorate([
|
|
40
42
|
(0, common_1.Injectable)(),
|
|
41
|
-
__metadata("design:paramtypes", [
|
|
43
|
+
__metadata("design:paramtypes", [sms_factory_1.SmsFactory,
|
|
42
44
|
mq_message_service_1.MqMessageService,
|
|
43
45
|
mq_message_queue_service_1.MqMessageQueueService])
|
|
44
|
-
],
|
|
45
|
-
//# sourceMappingURL=sms-subscriber.service.js.map
|
|
46
|
+
], Msg91SmsQueueSubscriber);
|
|
47
|
+
//# sourceMappingURL=msg91-sms-subscriber.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"msg91-sms-subscriber.service.js","sourceRoot":"","sources":["../../src/jobs/msg91-sms-subscriber.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAE5C,gGAAqF;AAErF,wFAAwD;AACxD,qEAAkE;AAClE,uEAAmE;AACnE,mFAA8E;AAE9E,0DAAuD;AAGhD,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,gDAAuB;IAChE,YAEqB,UAAsB,EAC9B,gBAAkC,EAClC,qBAA4C;QAErD,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC;QAJ9B,eAAU,GAAV,UAAU,CAAY;QAC9B,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,0BAAqB,GAArB,qBAAqB,CAAuB;IAGzD,CAAC;IAED,OAAO;QACH,OAAO;YACH,GAAG,iCAAe;SACrB,CAAA;IACL,CAAC;IAED,SAAS,CAAC,OAA0B;QAChC,MAAM,UAAU,GAAoB,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,iCAAe,CAAC,IAAI,CAAoB,CAAC;QAC3G,OAAO,UAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAGpD,CAAC;CACJ,CAAA;AAtBY,0DAAuB;kCAAvB,uBAAuB;IADnC,IAAA,mBAAU,GAAE;qCAIwB,wBAAU;QACZ,qCAAgB;QACX,gDAAqB;GALhD,uBAAuB,CAsBnC","sourcesContent":["import { Injectable } from '@nestjs/common';\n\nimport { RabbitMqSubscriber } from 'src/services/queues/rabbitmq-subscriber.service';\nimport { QueueMessage } from 'src/interfaces/mq';\nimport smsQueueOptions from './msg91-sms-queue-options';\nimport { Msg91SMSService } from '../services/sms/Msg91SMSService';\nimport { MqMessageService } from 'src/services/mq-message.service';\nimport { MqMessageQueueService } from 'src/services/mq-message-queue.service';\nimport { QueuesModuleOptions } from \"../interfaces\";\nimport { SmsFactory } from 'src/factories/sms.factory';\n\n@Injectable()\nexport class Msg91SmsQueueSubscriber extends RabbitMqSubscriber<any> {\n constructor(\n // private readonly smsService: Msg91SMSService,\n private readonly smsFactory: SmsFactory,\n readonly mqMessageService: MqMessageService,\n readonly mqMessageQueueService: MqMessageQueueService,\n ) {\n super(mqMessageService, mqMessageQueueService);\n }\n\n options(): QueuesModuleOptions {\n return {\n ...smsQueueOptions\n }\n }\n\n subscribe(message: QueueMessage<any>) {\n const smsService: Msg91SMSService = this.smsFactory.getSmsService(Msg91SMSService.name) as Msg91SMSService;\n return smsService.sendSMSSynchronously(message);\n\n // return this.smsService.sendSMSSynchronously(message);\n }\n}\n"]}
|
|
@@ -3,14 +3,14 @@ import { QueueMessage } from 'src/interfaces/mq';
|
|
|
3
3
|
import { MqMessageQueueService } from 'src/services/mq-message-queue.service';
|
|
4
4
|
import { MqMessageService } from 'src/services/mq-message.service';
|
|
5
5
|
import { PollerService } from 'src/services/poller.service';
|
|
6
|
-
import { TwilioSMSService } from 'src/services/sms/TwilioSMSService';
|
|
7
6
|
import { RabbitMqSubscriber } from 'src/services/queues/rabbitmq-subscriber.service';
|
|
7
|
+
import { SmsFactory } from 'src/factories/sms.factory';
|
|
8
8
|
export declare class TwilioSmsQueueSubscriberRabbitmq extends RabbitMqSubscriber<any> {
|
|
9
|
-
private readonly
|
|
9
|
+
private readonly smsFactory;
|
|
10
10
|
readonly mqMessageService: MqMessageService;
|
|
11
11
|
readonly mqMessageQueueService: MqMessageQueueService;
|
|
12
12
|
readonly poller: PollerService;
|
|
13
|
-
constructor(
|
|
13
|
+
constructor(smsFactory: SmsFactory, mqMessageService: MqMessageService, mqMessageQueueService: MqMessageQueueService, poller: PollerService);
|
|
14
14
|
options(): QueuesModuleOptions;
|
|
15
15
|
subscribe(message: QueueMessage<any>): Promise<any>;
|
|
16
16
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"twilio-sms-subscriber.service.d.ts","sourceRoot":"","sources":["../../src/jobs/twilio-sms-subscriber.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"twilio-sms-subscriber.service.d.ts","sourceRoot":"","sources":["../../src/jobs/twilio-sms-subscriber.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAG5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iDAAiD,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,qBACa,gCAAiC,SAAQ,kBAAkB,CAAC,GAAG,CAAC;IAGrE,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB;IAC3C,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;IACrD,QAAQ,CAAC,MAAM,EAAE,aAAa;gBAHb,UAAU,EAAE,UAAU,EAC9B,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB,EAC5C,MAAM,EAAE,aAAa;IAKlC,OAAO,IAAI,mBAAmB;IAM9B,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC;CAKvC"}
|
|
@@ -20,10 +20,11 @@ const poller_service_1 = require("../services/poller.service");
|
|
|
20
20
|
const TwilioSMSService_1 = require("../services/sms/TwilioSMSService");
|
|
21
21
|
const twilio_sms_queue_options_1 = __importDefault(require("./twilio-sms-queue-options"));
|
|
22
22
|
const rabbitmq_subscriber_service_1 = require("../services/queues/rabbitmq-subscriber.service");
|
|
23
|
+
const sms_factory_1 = require("../factories/sms.factory");
|
|
23
24
|
let TwilioSmsQueueSubscriberRabbitmq = class TwilioSmsQueueSubscriberRabbitmq extends rabbitmq_subscriber_service_1.RabbitMqSubscriber {
|
|
24
|
-
constructor(
|
|
25
|
+
constructor(smsFactory, mqMessageService, mqMessageQueueService, poller) {
|
|
25
26
|
super(mqMessageService, mqMessageQueueService);
|
|
26
|
-
this.
|
|
27
|
+
this.smsFactory = smsFactory;
|
|
27
28
|
this.mqMessageService = mqMessageService;
|
|
28
29
|
this.mqMessageQueueService = mqMessageQueueService;
|
|
29
30
|
this.poller = poller;
|
|
@@ -34,13 +35,14 @@ let TwilioSmsQueueSubscriberRabbitmq = class TwilioSmsQueueSubscriberRabbitmq ex
|
|
|
34
35
|
};
|
|
35
36
|
}
|
|
36
37
|
subscribe(message) {
|
|
37
|
-
|
|
38
|
+
const smsService = this.smsFactory.getSmsService(TwilioSMSService_1.TwilioSMSService.name);
|
|
39
|
+
return smsService.sendSMSSynchronously(message);
|
|
38
40
|
}
|
|
39
41
|
};
|
|
40
42
|
exports.TwilioSmsQueueSubscriberRabbitmq = TwilioSmsQueueSubscriberRabbitmq;
|
|
41
43
|
exports.TwilioSmsQueueSubscriberRabbitmq = TwilioSmsQueueSubscriberRabbitmq = __decorate([
|
|
42
44
|
(0, common_1.Injectable)(),
|
|
43
|
-
__metadata("design:paramtypes", [
|
|
45
|
+
__metadata("design:paramtypes", [sms_factory_1.SmsFactory,
|
|
44
46
|
mq_message_service_1.MqMessageService,
|
|
45
47
|
mq_message_queue_service_1.MqMessageQueueService,
|
|
46
48
|
poller_service_1.PollerService])
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"twilio-sms-subscriber.service.js","sourceRoot":"","sources":["../../src/jobs/twilio-sms-subscriber.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAI5C,mFAA8E;AAC9E,uEAAmE;AACnE,+DAA4D;AAC5D,uEAAqE;AACrE,0FAAyD;AACzD,gGAAqF;
|
|
1
|
+
{"version":3,"file":"twilio-sms-subscriber.service.js","sourceRoot":"","sources":["../../src/jobs/twilio-sms-subscriber.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAI5C,mFAA8E;AAC9E,uEAAmE;AACnE,+DAA4D;AAC5D,uEAAqE;AACrE,0FAAyD;AACzD,gGAAqF;AACrF,0DAAuD;AAGhD,IAAM,gCAAgC,GAAtC,MAAM,gCAAiC,SAAQ,gDAAuB;IACzE,YAEqB,UAAsB,EAC9B,gBAAkC,EAClC,qBAA4C,EAC5C,MAAqB;QAE9B,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC;QAL9B,eAAU,GAAV,UAAU,CAAY;QAC9B,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,WAAM,GAAN,MAAM,CAAe;IAGlC,CAAC;IAED,OAAO;QACH,OAAO;YACH,GAAG,kCAAe;SACrB,CAAA;IACL,CAAC;IAED,SAAS,CAAC,OAA0B;QAChC,MAAM,UAAU,GAAqB,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,mCAAgB,CAAC,IAAI,CAAqB,CAAC;QAC9G,OAAO,UAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAEpD,CAAC;CACJ,CAAA;AAtBY,4EAAgC;2CAAhC,gCAAgC;IAD5C,IAAA,mBAAU,GAAE;qCAIwB,wBAAU;QACZ,qCAAgB;QACX,gDAAqB;QACpC,8BAAa;GANzB,gCAAgC,CAsB5C","sourcesContent":["import { Injectable } from '@nestjs/common';\n\nimport { QueuesModuleOptions } from 'src/interfaces';\nimport { QueueMessage } from 'src/interfaces/mq';\nimport { MqMessageQueueService } from 'src/services/mq-message-queue.service';\nimport { MqMessageService } from 'src/services/mq-message.service';\nimport { PollerService } from 'src/services/poller.service';\nimport { TwilioSMSService } from 'src/services/sms/TwilioSMSService';\nimport smsQueueOptions from './twilio-sms-queue-options';\nimport { RabbitMqSubscriber } from 'src/services/queues/rabbitmq-subscriber.service';\nimport { SmsFactory } from 'src/factories/sms.factory';\n\n@Injectable()\nexport class TwilioSmsQueueSubscriberRabbitmq extends RabbitMqSubscriber<any> {\n constructor(\n // private readonly smsService: TwilioSMSService,\n private readonly smsFactory: SmsFactory,\n readonly mqMessageService: MqMessageService,\n readonly mqMessageQueueService: MqMessageQueueService,\n readonly poller: PollerService,\n ) {\n super(mqMessageService, mqMessageQueueService);\n }\n\n options(): QueuesModuleOptions {\n return {\n ...smsQueueOptions\n }\n }\n\n subscribe(message: QueueMessage<any>) {\n const smsService: TwilioSMSService = this.smsFactory.getSmsService(TwilioSMSService.name) as TwilioSMSService;\n return smsService.sendSMSSynchronously(message);\n // return this.smsService.sendSMSSynchronously(message);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-of-values-mapper.d.ts","sourceRoot":"","sources":["../../src/mappers/list-of-values-mapper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAElE,qBACa,kBAAkB;IAC3B,KAAK,CAAC,WAAW,EAAE,YAAY,GAAG,GAAG;
|
|
1
|
+
{"version":3,"file":"list-of-values-mapper.d.ts","sourceRoot":"","sources":["../../src/mappers/list-of-values-mapper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAElE,qBACa,kBAAkB;IAC3B,KAAK,CAAC,WAAW,EAAE,YAAY,GAAG,GAAG;CAYxC"}
|
|
@@ -17,7 +17,7 @@ let ListOfValuesMapper = class ListOfValuesMapper {
|
|
|
17
17
|
description: listOfValue.description,
|
|
18
18
|
default: listOfValue.default,
|
|
19
19
|
sequence: listOfValue.sequence,
|
|
20
|
-
|
|
20
|
+
moduleUserKey: listOfValue.module ? listOfValue.module.name : null
|
|
21
21
|
};
|
|
22
22
|
}
|
|
23
23
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-of-values-mapper.js","sourceRoot":"","sources":["../../src/mappers/list-of-values-mapper.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA4C;AAIrC,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAC3B,KAAK,CAAC,WAAyB;QAC3B,OAAO;YACH,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,KAAK,EAAE,WAAW,CAAC,KAAK;YACxB,OAAO,EAAE,WAAW,CAAC,OAAO;YAC5B,WAAW,EAAE,WAAW,CAAC,WAAW;YACpC,OAAO,EAAE,WAAW,CAAC,OAAO;YAC5B,QAAQ,EAAE,WAAW,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"list-of-values-mapper.js","sourceRoot":"","sources":["../../src/mappers/list-of-values-mapper.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA4C;AAIrC,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAC3B,KAAK,CAAC,WAAyB;QAC3B,OAAO;YACH,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,KAAK,EAAE,WAAW,CAAC,KAAK;YACxB,OAAO,EAAE,WAAW,CAAC,OAAO;YAC5B,WAAW,EAAE,WAAW,CAAC,WAAW;YACpC,OAAO,EAAE,WAAW,CAAC,OAAO;YAC5B,QAAQ,EAAE,WAAW,CAAC,QAAQ;YAE9B,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;SACrE,CAAC;IACN,CAAC;CACJ,CAAA;AAbY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,mBAAU,GAAE;GACA,kBAAkB,CAa9B","sourcesContent":["import { Injectable } from \"@nestjs/common\";\nimport { ListOfValues } from \"src/entities/list-of-values.entity\";\n\n@Injectable()\nexport class ListOfValuesMapper {\n toDto(listOfValue: ListOfValues): any {\n return {\n type: listOfValue.type,\n value: listOfValue.value,\n display: listOfValue.display,\n description: listOfValue.description,\n default: listOfValue.default,\n sequence: listOfValue.sequence,\n // module: listOfValue.module ? listOfValue.module.id : null\n moduleUserKey: listOfValue.module ? listOfValue.module.name : null\n };\n }\n}"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"security-rule.repository.d.ts","sourceRoot":"","sources":["../../src/repository/security-rule.repository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAE1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAG1D,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAY,UAAU,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,qBACa,sBAAuB,SAAQ,mBAAmB,CAAC,YAAY,CAAC;IAErE,QAAQ,CAAC,UAAU,EAAE,UAAU;IAE/B,QAAQ,CAAC,aAAa,EAAE,aAAa;IACrC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB;gBAHpC,UAAU,EAAE,UAAU,EAEtB,aAAa,EAAE,aAAa,EAC5B,iBAAiB,EAAE,iBAAiB;IAK3C,kBAAkB,CAAC,CAAC,SAAS,YAAY,EAAE,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,GAAE,MAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"security-rule.repository.d.ts","sourceRoot":"","sources":["../../src/repository/security-rule.repository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAE1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAG1D,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAY,UAAU,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,qBACa,sBAAuB,SAAQ,mBAAmB,CAAC,YAAY,CAAC;IAErE,QAAQ,CAAC,UAAU,EAAE,UAAU;IAE/B,QAAQ,CAAC,aAAa,EAAE,aAAa;IACrC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB;gBAHpC,UAAU,EAAE,UAAU,EAEtB,aAAa,EAAE,aAAa,EAC5B,iBAAiB,EAAE,iBAAiB;IAK3C,kBAAkB,CAAC,CAAC,SAAS,YAAY,EAAE,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,iBAAiB,GAAE,MAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAyDxM,OAAO,CAAC,yBAAyB;IAI3B,KAAK,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA6BjE,aAAa,CAAC,SAAS,EAAE,qBAAqB;CAyDvD"}
|
|
@@ -36,6 +36,9 @@ let SecurityRuleRepository = class SecurityRuleRepository extends solid_base_rep
|
|
|
36
36
|
try {
|
|
37
37
|
if (rule.securityRuleConfigProvider) {
|
|
38
38
|
const securityRuleConfigProviderInstance = this.solidRegistry.getSecurityRuleConfigProviderInstance(rule.securityRuleConfigProvider);
|
|
39
|
+
if (!securityRuleConfigProviderInstance) {
|
|
40
|
+
throw new Error(`Unable to resolve instance for security rule config provider: ${rule.securityRuleConfigProvider}`);
|
|
41
|
+
}
|
|
39
42
|
evaluatedRule = await securityRuleConfigProviderInstance.securityRuleConfig(activeUser, rule);
|
|
40
43
|
}
|
|
41
44
|
else {
|
|
@@ -44,7 +47,9 @@ let SecurityRuleRepository = class SecurityRuleRepository extends solid_base_rep
|
|
|
44
47
|
evaluatedRules.push(evaluatedRule);
|
|
45
48
|
}
|
|
46
49
|
catch (error) {
|
|
47
|
-
this.logger.
|
|
50
|
+
this.logger.error(`Error parsing security rule: ${rule.securityRuleConfig}`, error);
|
|
51
|
+
this.logger.error(error.stack);
|
|
52
|
+
throw error;
|
|
48
53
|
}
|
|
49
54
|
}
|
|
50
55
|
qb.andWhere(new typeorm_1.Brackets(async (outerQb) => {
|
|
@@ -83,7 +88,7 @@ let SecurityRuleRepository = class SecurityRuleRepository extends solid_base_rep
|
|
|
83
88
|
modelMetadataId: populatedSecurityRule.modelMetadata.id,
|
|
84
89
|
modelMetadataUserKey: populatedSecurityRule.modelMetadata.singularName,
|
|
85
90
|
securityRuleConfig: populatedSecurityRule.securityRuleConfig,
|
|
86
|
-
securityRuleConfigProvider:
|
|
91
|
+
securityRuleConfigProvider: populatedSecurityRule.securityRuleConfigProvider,
|
|
87
92
|
};
|
|
88
93
|
}
|
|
89
94
|
async upsertWithDto(createDto) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"security-rule.repository.js","sourceRoot":"","sources":["../../src/repository/security-rule.repository.ts"],"names":[],"mappings":"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","sourcesContent":["import { Injectable } from '@nestjs/common';\nimport { CreateSecurityRuleDto } from 'src/dtos/create-security-rule.dto';\nimport { SecurityRuleConfig } from 'src/dtos/security-rule-config.dto';\nimport { UpdateSecurityRuleDto } from 'src/dtos/update-security-rule.dto';\nimport { CommonEntity } from 'src/entities/common.entity';\nimport { ModelMetadata } from 'src/entities/model-metadata.entity';\nimport { RoleMetadata } from 'src/entities/role-metadata.entity';\nimport { SecurityRule } from 'src/entities/security-rule.entity';\nimport { SolidRegistry } from 'src/helpers/solid-registry';\nimport { ActiveUserData } from 'src/interfaces/active-user-data.interface';\nimport { CrudHelperService } from 'src/services/crud-helper.service';\nimport { Brackets, DataSource, SelectQueryBuilder } from 'typeorm';\nimport { SolidBaseRepository } from './solid-base.repository';\n\n@Injectable()\nexport class SecurityRuleRepository extends SolidBaseRepository<SecurityRule> {\n constructor(\n readonly dataSource: DataSource,\n // readonly requestContextService: RequestContextService,\n readonly solidRegistry: SolidRegistry,\n readonly crudHelperService: CrudHelperService,\n ) {\n super(SecurityRule, dataSource, null, null);\n }\n\n async applySecurityRules<T extends CommonEntity>(qb: SelectQueryBuilder<T>, modelSingularName: string, activeUser: ActiveUserData, securityRuleAlias: string = qb.alias): Promise<SelectQueryBuilder<T>> {\n // Fetch the security rules for the model and roles\n const securityRules = this.solidRegistry.getSecurityRules(modelSingularName, activeUser.roles);\n\n // If no security rules, return the original query builder\n if (!securityRules.length) {\n return qb;\n }\n\n const evaluatedRules = [];\n\n for (const rule of securityRules) {\n\n let evaluatedRule = null;\n\n try {\n // First check if the rule has a \"dynamic\" security rule config provider. \n if (rule.securityRuleConfigProvider) {\n // TODO: Evaluation of the securityRuleConfig Provider should happen outside first...\n const securityRuleConfigProviderInstance = this.solidRegistry.getSecurityRuleConfigProviderInstance(rule.securityRuleConfigProvider);\n evaluatedRule = await securityRuleConfigProviderInstance.securityRuleConfig(activeUser, rule);\n }\n else {\n evaluatedRule = JSON.parse(\n this.resolveSecurityRuleConfig(rule.securityRuleConfig, activeUser)\n ) as SecurityRuleConfig;\n }\n\n evaluatedRules.push(evaluatedRule);\n\n } catch (error) {\n this.logger.warn(`Error parsing security rule: ${rule.securityRuleConfig}`, error);\n }\n }\n\n\n // Apply each security rule to the query builder. The rules are combined with OR logic at the top level.\n qb.andWhere(new Brackets(async (outerQb) => {\n for (const evaluatedRule of evaluatedRules) {\n if (evaluatedRule && evaluatedRule.filters) {\n outerQb.orWhere( // combine each rule-group with OR at the outer level\n new Brackets((innerQb) => {\n this.crudHelperService.applyFilters(innerQb, evaluatedRule.filters, securityRuleAlias, qb); // AND within a rule\n })\n );\n }\n }\n }));\n\n return qb;\n }\n\n private resolveSecurityRuleConfig(configString: string, activeUser: ActiveUserData) {\n return configString.replace('$activeUserId', activeUser.sub.toString());\n }\n\n async toDto(securityRule: SecurityRule): Promise<UpdateSecurityRuleDto> {\n // load the role and model relations for the security rule\n let populatedSecurityRule: SecurityRule = securityRule;\n // If the security rule does not have the role and model relations loaded, load them\n if (!securityRule.role || !securityRule.modelMetadata) {\n populatedSecurityRule = await this.findOne({\n where: {\n id: securityRule.id,\n },\n relations: {\n role: true,\n modelMetadata: true,\n },\n });\n }\n\n return {\n id: populatedSecurityRule.id,\n name: populatedSecurityRule.name,\n description: populatedSecurityRule.description,\n roleId: populatedSecurityRule.role.id,\n roleUserKey: populatedSecurityRule.role.name,\n modelMetadataId: populatedSecurityRule.modelMetadata.id,\n modelMetadataUserKey: populatedSecurityRule.modelMetadata.singularName,\n securityRuleConfig: populatedSecurityRule.securityRuleConfig,\n securityRuleConfigProvider: \"\"\n };\n }\n\n async upsertWithDto(createDto: CreateSecurityRuleDto) {\n // Populate the role from roleId or roleUserKey\n const roleRepository = this.dataSource.getRepository(RoleMetadata);\n if (createDto.roleId) {\n const role = await roleRepository.findOne({\n where: {\n id: createDto.roleId,\n },\n });\n createDto['role'] = role;\n }\n\n if (createDto.roleUserKey) {\n const role = await roleRepository.findOne({\n where: {\n name: createDto.roleUserKey,\n },\n });\n createDto['role'] = role;\n }\n\n // Populate the model from modelMetadataId or modelMetadataUserKey\n const modelMetadataRepository = this.dataSource.getRepository(ModelMetadata);\n if (createDto.modelMetadataId) {\n const modelMetadata = await modelMetadataRepository.findOne({\n where: {\n id: createDto.modelMetadataId,\n },\n });\n createDto['modelMetadata'] = modelMetadata;\n }\n if (createDto.modelMetadataUserKey) {\n const modelMetadata = await modelMetadataRepository.findOne({\n where: {\n singularName: createDto.modelMetadataUserKey,\n },\n });\n createDto['modelMetadata'] = modelMetadata;\n }\n\n // First check if module already exists using name\n const existingSecurityRule = await this.findOne({\n where: {\n name: createDto.name,\n },\n });\n\n if (existingSecurityRule) {\n const updatedSecurityRule = this.merge(existingSecurityRule, createDto);\n return this.save(updatedSecurityRule);\n }\n else {\n const securityRule = this.create(createDto);\n return this.save(securityRule);\n }\n }\n\n}"]}
|
|
1
|
+
{"version":3,"file":"security-rule.repository.js","sourceRoot":"","sources":["../../src/repository/security-rule.repository.ts"],"names":[],"mappings":"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","sourcesContent":["import { Injectable } from '@nestjs/common';\nimport { CreateSecurityRuleDto } from 'src/dtos/create-security-rule.dto';\nimport { SecurityRuleConfig } from 'src/dtos/security-rule-config.dto';\nimport { UpdateSecurityRuleDto } from 'src/dtos/update-security-rule.dto';\nimport { CommonEntity } from 'src/entities/common.entity';\nimport { ModelMetadata } from 'src/entities/model-metadata.entity';\nimport { RoleMetadata } from 'src/entities/role-metadata.entity';\nimport { SecurityRule } from 'src/entities/security-rule.entity';\nimport { SolidRegistry } from 'src/helpers/solid-registry';\nimport { ActiveUserData } from 'src/interfaces/active-user-data.interface';\nimport { CrudHelperService } from 'src/services/crud-helper.service';\nimport { Brackets, DataSource, SelectQueryBuilder } from 'typeorm';\nimport { SolidBaseRepository } from './solid-base.repository';\n\n@Injectable()\nexport class SecurityRuleRepository extends SolidBaseRepository<SecurityRule> {\n constructor(\n readonly dataSource: DataSource,\n // readonly requestContextService: RequestContextService,\n readonly solidRegistry: SolidRegistry,\n readonly crudHelperService: CrudHelperService,\n ) {\n super(SecurityRule, dataSource, null, null);\n }\n\n async applySecurityRules<T extends CommonEntity>(qb: SelectQueryBuilder<T>, modelSingularName: string, activeUser: ActiveUserData, securityRuleAlias: string = qb.alias): Promise<SelectQueryBuilder<T>> {\n // Fetch the security rules for the model and roles\n const securityRules = this.solidRegistry.getSecurityRules(modelSingularName, activeUser.roles);\n\n // If no security rules, return the original query builder\n if (!securityRules.length) {\n return qb;\n }\n\n const evaluatedRules = [];\n\n for (const rule of securityRules) {\n\n let evaluatedRule = null;\n\n try {\n // First check if the rule has a \"dynamic\" security rule config provider. \n if (rule.securityRuleConfigProvider) {\n // TODO: Evaluation of the securityRuleConfig Provider should happen outside first...\n const securityRuleConfigProviderInstance = this.solidRegistry.getSecurityRuleConfigProviderInstance(rule.securityRuleConfigProvider);\n if (!securityRuleConfigProviderInstance) {\n throw new Error(`Unable to resolve instance for security rule config provider: ${rule.securityRuleConfigProvider}`);\n }\n evaluatedRule = await securityRuleConfigProviderInstance.securityRuleConfig(activeUser, rule);\n }\n else {\n evaluatedRule = JSON.parse(\n this.resolveSecurityRuleConfig(rule.securityRuleConfig, activeUser)\n ) as SecurityRuleConfig;\n }\n\n evaluatedRules.push(evaluatedRule);\n\n } catch (error) {\n this.logger.error(`Error parsing security rule: ${rule.securityRuleConfig}`, error);\n this.logger.error(error.stack);\n throw error;\n }\n }\n\n\n // Apply each security rule to the query builder. The rules are combined with OR logic at the top level.\n qb.andWhere(new Brackets(async (outerQb) => {\n for (const evaluatedRule of evaluatedRules) {\n if (evaluatedRule && evaluatedRule.filters) {\n outerQb.orWhere( // combine each rule-group with OR at the outer level\n new Brackets((innerQb) => {\n this.crudHelperService.applyFilters(innerQb, evaluatedRule.filters, securityRuleAlias, qb); // AND within a rule\n })\n );\n }\n }\n }));\n\n return qb;\n }\n\n private resolveSecurityRuleConfig(configString: string, activeUser: ActiveUserData) {\n return configString.replace('$activeUserId', activeUser.sub.toString());\n }\n\n async toDto(securityRule: SecurityRule): Promise<UpdateSecurityRuleDto> {\n // load the role and model relations for the security rule\n let populatedSecurityRule: SecurityRule = securityRule;\n // If the security rule does not have the role and model relations loaded, load them\n if (!securityRule.role || !securityRule.modelMetadata) {\n populatedSecurityRule = await this.findOne({\n where: {\n id: securityRule.id,\n },\n relations: {\n role: true,\n modelMetadata: true,\n },\n });\n }\n\n return {\n id: populatedSecurityRule.id,\n name: populatedSecurityRule.name,\n description: populatedSecurityRule.description,\n roleId: populatedSecurityRule.role.id,\n roleUserKey: populatedSecurityRule.role.name,\n modelMetadataId: populatedSecurityRule.modelMetadata.id,\n modelMetadataUserKey: populatedSecurityRule.modelMetadata.singularName,\n securityRuleConfig: populatedSecurityRule.securityRuleConfig,\n securityRuleConfigProvider: populatedSecurityRule.securityRuleConfigProvider,\n };\n }\n\n async upsertWithDto(createDto: CreateSecurityRuleDto) {\n // Populate the role from roleId or roleUserKey\n const roleRepository = this.dataSource.getRepository(RoleMetadata);\n if (createDto.roleId) {\n const role = await roleRepository.findOne({\n where: {\n id: createDto.roleId,\n },\n });\n createDto['role'] = role;\n }\n\n if (createDto.roleUserKey) {\n const role = await roleRepository.findOne({\n where: {\n name: createDto.roleUserKey,\n },\n });\n createDto['role'] = role;\n }\n\n // Populate the model from modelMetadataId or modelMetadataUserKey\n const modelMetadataRepository = this.dataSource.getRepository(ModelMetadata);\n if (createDto.modelMetadataId) {\n const modelMetadata = await modelMetadataRepository.findOne({\n where: {\n id: createDto.modelMetadataId,\n },\n });\n createDto['modelMetadata'] = modelMetadata;\n }\n if (createDto.modelMetadataUserKey) {\n const modelMetadata = await modelMetadataRepository.findOne({\n where: {\n singularName: createDto.modelMetadataUserKey,\n },\n });\n createDto['modelMetadata'] = modelMetadata;\n }\n\n // First check if module already exists using name\n const existingSecurityRule = await this.findOne({\n where: {\n name: createDto.name,\n },\n });\n\n if (existingSecurityRule) {\n const updatedSecurityRule = this.merge(existingSecurityRule, createDto);\n return this.save(updatedSecurityRule);\n }\n else {\n const securityRule = this.create(createDto);\n return this.save(securityRule);\n }\n }\n\n}"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module-metadata-seeder.service.d.ts","sourceRoot":"","sources":["../../src/seeders/module-metadata-seeder.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"module-metadata-seeder.service.d.ts","sourceRoot":"","sources":["../../src/seeders/module-metadata-seeder.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -53,6 +53,7 @@ exports.ModuleMetadataSeederService = void 0;
|
|
|
53
53
|
const common_1 = require("@nestjs/common");
|
|
54
54
|
const fs = __importStar(require("fs"));
|
|
55
55
|
const path = __importStar(require("path"));
|
|
56
|
+
const uuid_1 = require("uuid");
|
|
56
57
|
const dashboard_repository_1 = require("../repository/dashboard.repository");
|
|
57
58
|
const security_rule_repository_1 = require("../repository/security-rule.repository");
|
|
58
59
|
const authentication_service_1 = require("../services/authentication.service");
|
|
@@ -167,7 +168,7 @@ let ModuleMetadataSeederService = ModuleMetadataSeederService_1 = class ModuleMe
|
|
|
167
168
|
this.logger.debug(`[End] module seed data: ${overallMetadata}`);
|
|
168
169
|
}
|
|
169
170
|
await this.setupDefaultRolesWithPermissions();
|
|
170
|
-
|
|
171
|
+
console.log(`Seeding completed.`);
|
|
171
172
|
}
|
|
172
173
|
async seedScheduledJobs(moduleMetadata, overallMetadata) {
|
|
173
174
|
this.logger.debug(`[Start] Processing scheduled jobs for ${moduleMetadata.name}`);
|
|
@@ -531,8 +532,29 @@ let ModuleMetadataSeederService = ModuleMetadataSeederService_1 = class ModuleMe
|
|
|
531
532
|
const user = users[l];
|
|
532
533
|
let exisitingUser = await this.userService.findOneByUsername(user.username);
|
|
533
534
|
if (!exisitingUser) {
|
|
535
|
+
let generatedAdminPassword = null;
|
|
536
|
+
if (user.username === 'sa') {
|
|
537
|
+
generatedAdminPassword = (0, uuid_1.v4)();
|
|
538
|
+
user.password = generatedAdminPassword;
|
|
539
|
+
}
|
|
534
540
|
exisitingUser = await this.authenticationService.signUp(user);
|
|
535
|
-
this.logger.log(`Newly created user
|
|
541
|
+
this.logger.log(`Newly created user ${user.username}`);
|
|
542
|
+
if (generatedAdminPassword) {
|
|
543
|
+
const banner = [
|
|
544
|
+
'',
|
|
545
|
+
'============================================================',
|
|
546
|
+
' SYSTEM ADMIN USER CREATED',
|
|
547
|
+
'------------------------------------------------------------',
|
|
548
|
+
' Username : sa',
|
|
549
|
+
` Password : ${generatedAdminPassword}`,
|
|
550
|
+
'',
|
|
551
|
+
' Copy and store this password securely now.',
|
|
552
|
+
' It is shown only once during seeding.',
|
|
553
|
+
'============================================================',
|
|
554
|
+
''
|
|
555
|
+
].join('\n');
|
|
556
|
+
console.log(banner);
|
|
557
|
+
}
|
|
536
558
|
}
|
|
537
559
|
}
|
|
538
560
|
}
|