@solidxai/core 0.1.9-beta.1 → 0.1.9-beta.10
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/commands/fixtures/fixtures-setup.command.d.ts +1 -1
- package/dist/commands/fixtures/fixtures-tear-down.command.d.ts +1 -1
- package/dist/commands/info.command.d.ts +3 -3
- package/dist/commands/ingest.command.d.ts +2 -2
- package/dist/commands/mcp.command.d.ts +1 -1
- package/dist/commands/refresh-model.command.d.ts +1 -1
- package/dist/commands/remove-fields.command.d.ts +1 -1
- package/dist/commands/run-tests.command.d.ts +1 -1
- package/dist/commands/seed.command.d.ts +1 -1
- package/dist/commands/test-data.command.d.ts +1 -1
- package/dist/constants/chatter-message.constants.d.ts +6 -0
- package/dist/constants/chatter-message.constants.d.ts.map +1 -1
- package/dist/constants/chatter-message.constants.js +7 -1
- package/dist/constants/chatter-message.constants.js.map +1 -1
- package/dist/controllers/action-metadata.controller.d.ts +1 -1
- package/dist/controllers/agent-event.controller.d.ts +3 -3
- package/dist/controllers/agent-session.controller.d.ts +3 -3
- package/dist/controllers/ai-interaction.controller.d.ts +1 -1
- package/dist/controllers/authentication.controller.d.ts +12 -0
- package/dist/controllers/authentication.controller.d.ts.map +1 -1
- package/dist/controllers/authentication.controller.js +13 -0
- package/dist/controllers/authentication.controller.js.map +1 -1
- package/dist/controllers/chatter-message.controller.d.ts +1 -0
- package/dist/controllers/chatter-message.controller.d.ts.map +1 -1
- package/dist/controllers/chatter-message.controller.js +12 -0
- package/dist/controllers/chatter-message.controller.js.map +1 -1
- package/dist/controllers/dashboard-layout.controller.d.ts +3 -3
- package/dist/controllers/dashboard-question.controller.d.ts +1 -1
- package/dist/controllers/dashboard.controller.d.ts +1 -1
- package/dist/controllers/export-template.controller.d.ts +2 -2
- package/dist/controllers/facebook-authentication.controller.d.ts +27 -0
- package/dist/controllers/facebook-authentication.controller.d.ts.map +1 -0
- package/dist/controllers/facebook-authentication.controller.js +117 -0
- package/dist/controllers/facebook-authentication.controller.js.map +1 -0
- package/dist/controllers/field-metadata.controller.d.ts +1 -1
- package/dist/controllers/google-authentication.controller.d.ts +1 -1
- package/dist/controllers/import-transaction.controller.d.ts +1 -1
- package/dist/controllers/locale.controller.d.ts +3 -3
- package/dist/controllers/media.controller.d.ts +3 -3
- package/dist/controllers/menu-item-metadata.controller.d.ts +3 -2
- package/dist/controllers/menu-item-metadata.controller.d.ts.map +1 -1
- package/dist/controllers/menu-item-metadata.controller.js +15 -0
- package/dist/controllers/menu-item-metadata.controller.js.map +1 -1
- package/dist/controllers/microsoft-authentication.controller.d.ts +27 -0
- package/dist/controllers/microsoft-authentication.controller.d.ts.map +1 -0
- package/dist/controllers/microsoft-authentication.controller.js +118 -0
- package/dist/controllers/microsoft-authentication.controller.js.map +1 -0
- package/dist/controllers/model-metadata.controller.d.ts +1 -1
- package/dist/controllers/mq-message-queue.controller.d.ts +1 -1
- package/dist/controllers/mq-message.controller.d.ts +1 -1
- package/dist/controllers/otp-authentication.controller.js.map +1 -1
- package/dist/controllers/permission-metadata.controller.d.ts +1 -1
- package/dist/controllers/role-metadata.controller.d.ts +1 -1
- package/dist/controllers/scheduled-job.controller.d.ts +3 -3
- package/dist/controllers/service.controller.d.ts +4 -4
- package/dist/controllers/setting.controller.d.ts +3 -3
- package/dist/controllers/setting.controller.js +4 -4
- package/dist/controllers/setting.controller.js.map +1 -1
- package/dist/controllers/test-queue.controller.d.ts +1 -1
- package/dist/controllers/test.controller.d.ts +2 -2
- package/dist/controllers/user-view-metadata.controller.d.ts +2 -2
- package/dist/controllers/user.controller.d.ts +2 -2
- package/dist/controllers/view-metadata.controller.d.ts +2 -2
- package/dist/decorators/auth.decorator.d.ts.map +1 -1
- package/dist/decorators/computed-field-provider.decorator.d.ts.map +1 -1
- package/dist/decorators/dashboard-question-data-provider.decorator.d.ts.map +1 -1
- package/dist/decorators/dashboard-selection-provider.decorator.d.ts.map +1 -1
- package/dist/decorators/disallow-in-production.decorator.d.ts.map +1 -1
- package/dist/decorators/error-codes-provider.decorator.d.ts.map +1 -1
- package/dist/decorators/extension-user-creation-provider.decorator.d.ts +3 -0
- package/dist/decorators/extension-user-creation-provider.decorator.d.ts.map +1 -0
- package/dist/decorators/extension-user-creation-provider.decorator.js +7 -0
- package/dist/decorators/extension-user-creation-provider.decorator.js.map +1 -0
- package/dist/decorators/is-not-in-enum.decorator.d.ts.map +1 -1
- package/dist/decorators/mail-provider.decorator.d.ts.map +1 -1
- package/dist/decorators/roles.decorator.d.ts.map +1 -1
- package/dist/decorators/scheduled-job-provider.decorator.d.ts.map +1 -1
- package/dist/decorators/security-rule-config-provider.decorator.d.ts.map +1 -1
- package/dist/decorators/selection-provider.decorator.d.ts.map +1 -1
- package/dist/decorators/sms-provider.decorator.d.ts.map +1 -1
- package/dist/decorators/solid-database-module.decorator.d.ts.map +1 -1
- package/dist/decorators/solid-password.decorator.d.ts +1 -1
- package/dist/decorators/whatsapp-provider.decorator.d.ts.map +1 -1
- package/dist/dtos/create-chatter-message.dto.d.ts +1 -0
- package/dist/dtos/create-chatter-message.dto.d.ts.map +1 -1
- package/dist/dtos/create-chatter-message.dto.js +7 -1
- package/dist/dtos/create-chatter-message.dto.js.map +1 -1
- package/dist/dtos/create-dashboard-question.dto.d.ts +1 -1
- package/dist/dtos/create-dashboard.dto.d.ts +2 -2
- package/dist/dtos/create-field-metadata.dto.js +1 -2
- package/dist/dtos/create-field-metadata.dto.js.map +1 -1
- package/dist/dtos/create-import-transaction.dto.d.ts +1 -1
- package/dist/dtos/create-menu-item-metadata.dto.d.ts +1 -1
- package/dist/dtos/create-mq-message-queue.dto.d.ts +1 -1
- package/dist/dtos/create-permission-metadata.dto.d.ts +1 -1
- package/dist/dtos/create-role-metadata.dto.d.ts +3 -3
- package/dist/dtos/create-user.dto.d.ts +3 -2
- package/dist/dtos/create-user.dto.d.ts.map +1 -1
- package/dist/dtos/create-user.dto.js +8 -1
- package/dist/dtos/create-user.dto.js.map +1 -1
- package/dist/dtos/create-view-metadata.dto.d.ts +1 -1
- package/dist/dtos/dashboard-variable-selection-dynamic-query.dto.d.ts +1 -1
- package/dist/dtos/fetch-roles.dto.d.ts +1 -1
- package/dist/dtos/post-chatter-message.dto.d.ts +1 -0
- package/dist/dtos/post-chatter-message.dto.d.ts.map +1 -1
- package/dist/dtos/post-chatter-message.dto.js +6 -1
- package/dist/dtos/post-chatter-message.dto.js.map +1 -1
- package/dist/dtos/selection-dynamic-query.dto.d.ts +1 -1
- package/dist/dtos/solid-request-context.dto.d.ts +1 -1
- package/dist/dtos/sort-filter.dto.d.ts +1 -1
- package/dist/dtos/update-chatter-message.dto.d.ts +1 -0
- package/dist/dtos/update-chatter-message.dto.d.ts.map +1 -1
- package/dist/dtos/update-chatter-message.dto.js +7 -1
- package/dist/dtos/update-chatter-message.dto.js.map +1 -1
- package/dist/dtos/update-dashboard-question.dto.d.ts +1 -1
- package/dist/dtos/update-dashboard.dto.d.ts +2 -2
- package/dist/dtos/update-import-transaction.dto.d.ts +1 -1
- package/dist/dtos/update-menu-item-metadata.dto.d.ts +1 -1
- package/dist/dtos/update-mq-message-queue.dto.d.ts +1 -1
- package/dist/dtos/update-permission-metadata.dto.d.ts +1 -1
- package/dist/dtos/update-role-metadata.dto.d.ts +3 -3
- package/dist/dtos/update-user.dto.d.ts +3 -2
- package/dist/dtos/update-user.dto.d.ts.map +1 -1
- package/dist/dtos/update-user.dto.js +7 -1
- package/dist/dtos/update-user.dto.js.map +1 -1
- package/dist/dtos/update-view-metadata.dto.d.ts +1 -1
- package/dist/entities/action-metadata.entity.d.ts +4 -4
- package/dist/entities/agent-event.entity.d.ts +1 -1
- package/dist/entities/agent-session.entity.d.ts +1 -1
- package/dist/entities/ai-interaction.entity.d.ts +2 -2
- package/dist/entities/chatter-message-details.entity.d.ts +2 -2
- package/dist/entities/chatter-message.entity.d.ts +3 -2
- package/dist/entities/chatter-message.entity.d.ts.map +1 -1
- package/dist/entities/chatter-message.entity.js +5 -1
- package/dist/entities/chatter-message.entity.js.map +1 -1
- package/dist/entities/dashboard-layout.entity.d.ts +2 -2
- package/dist/entities/dashboard-question-sql-dataset-config.entity.d.ts +2 -2
- package/dist/entities/dashboard-question.entity.d.ts +3 -3
- package/dist/entities/dashboard-variable.entity.d.ts +2 -2
- package/dist/entities/dashboard.entity.d.ts +4 -4
- package/dist/entities/email-template.entity.d.ts +1 -1
- package/dist/entities/export-template.entity.d.ts +2 -2
- package/dist/entities/export-transaction.entity.d.ts +2 -2
- package/dist/entities/field-metadata.entity.d.ts +2 -2
- package/dist/entities/import-transaction-error-log.entity.d.ts +2 -2
- package/dist/entities/import-transaction.entity.d.ts +3 -3
- package/dist/entities/list-of-values.entity.d.ts +2 -2
- package/dist/entities/locale.entity.d.ts +1 -1
- package/dist/entities/media-storage-provider-metadata.entity.d.ts +1 -1
- package/dist/entities/media.entity.d.ts +4 -4
- package/dist/entities/menu-item-metadata.entity.d.ts +4 -4
- package/dist/entities/model-metadata.entity.d.ts +1 -1
- package/dist/entities/model-sequence.entity.d.ts +4 -4
- package/dist/entities/module-metadata.entity.d.ts +1 -1
- package/dist/entities/mq-message-queue.entity.d.ts +2 -2
- package/dist/entities/mq-message.entity.d.ts +2 -2
- package/dist/entities/permission-metadata.entity.d.ts +2 -2
- package/dist/entities/role-metadata.entity.d.ts +4 -4
- package/dist/entities/saved-filters.entity.d.ts +4 -4
- package/dist/entities/scheduled-job.entity.d.ts +1 -1
- package/dist/entities/security-rule.entity.d.ts +3 -3
- package/dist/entities/setting.entity.d.ts +2 -2
- package/dist/entities/sms-template.entity.d.ts +1 -1
- package/dist/entities/user-activity-history.entity.d.ts +2 -2
- package/dist/entities/user-api-key.entity.d.ts +1 -1
- package/dist/entities/user-view-metadata.entity.d.ts +3 -3
- package/dist/entities/user.entity.d.ts +12 -4
- package/dist/entities/user.entity.d.ts.map +1 -1
- package/dist/entities/user.entity.js +34 -1
- package/dist/entities/user.entity.js.map +1 -1
- package/dist/entities/view-metadata.entity.d.ts +4 -4
- package/dist/factories/mail.factory.d.ts +3 -3
- package/dist/factories/sms.factory.d.ts +3 -3
- package/dist/factories/whatsapp.factory.d.ts +3 -3
- package/dist/filters/http-exception.filter.d.ts +1 -1
- package/dist/guards/api-key.guard.d.ts +1 -1
- package/dist/helpers/bootstrap.helper.d.ts.map +1 -1
- package/dist/helpers/bootstrap.helper.js +4 -1
- package/dist/helpers/bootstrap.helper.js.map +1 -1
- package/dist/helpers/cors.helper.js +1 -1
- package/dist/helpers/cors.helper.js.map +1 -1
- package/dist/helpers/error-mapper.service.d.ts +2 -2
- package/dist/helpers/facebook-oauth.helper.d.ts +8 -0
- package/dist/helpers/facebook-oauth.helper.d.ts.map +1 -0
- package/dist/helpers/facebook-oauth.helper.js +11 -0
- package/dist/helpers/facebook-oauth.helper.js.map +1 -0
- package/dist/helpers/field-crud-managers/BigIntFieldCrudManager.d.ts +1 -1
- package/dist/helpers/field-crud-managers/BooleanFieldCrudManager.d.ts +1 -1
- package/dist/helpers/field-crud-managers/ComputedFieldCrudManager.d.ts +2 -2
- package/dist/helpers/field-crud-managers/DateFieldCrudManager.d.ts +1 -1
- package/dist/helpers/field-crud-managers/DecimalFieldCrudManager.d.ts +1 -1
- package/dist/helpers/field-crud-managers/EmailFieldCrudManager.d.ts +1 -1
- package/dist/helpers/field-crud-managers/IntFieldCrudManager.d.ts +1 -1
- package/dist/helpers/field-crud-managers/JsonFieldCrudManager.d.ts +1 -1
- package/dist/helpers/field-crud-managers/LongTextFieldCrudManager.d.ts +1 -1
- package/dist/helpers/field-crud-managers/ManyToManyRelationFieldCrudManager.d.ts +1 -1
- package/dist/helpers/field-crud-managers/ManyToManyRelationFieldCrudManager.js +5 -5
- package/dist/helpers/field-crud-managers/ManyToManyRelationFieldCrudManager.js.map +1 -1
- package/dist/helpers/field-crud-managers/ManyToOneRelationFieldCrudManager.d.ts +1 -1
- package/dist/helpers/field-crud-managers/ManyToOneRelationFieldCrudManager.d.ts.map +1 -1
- package/dist/helpers/field-crud-managers/ManyToOneRelationFieldCrudManager.js +2 -2
- package/dist/helpers/field-crud-managers/ManyToOneRelationFieldCrudManager.js.map +1 -1
- package/dist/helpers/field-crud-managers/MediaFieldCrudManager.d.ts +1 -1
- package/dist/helpers/field-crud-managers/NoOpsFieldCrudManager.d.ts +1 -1
- package/dist/helpers/field-crud-managers/OneToManyRelationFieldCrudManager.d.ts +1 -1
- package/dist/helpers/field-crud-managers/OneToManyRelationFieldCrudManager.js +5 -5
- package/dist/helpers/field-crud-managers/OneToManyRelationFieldCrudManager.js.map +1 -1
- package/dist/helpers/field-crud-managers/PasswordFieldCrudManager.d.ts +2 -2
- package/dist/helpers/field-crud-managers/RichTextFieldCrudManager.d.ts +1 -1
- package/dist/helpers/field-crud-managers/SelectionDynamicFieldCrudManager.d.ts +2 -2
- package/dist/helpers/field-crud-managers/SelectionStaticFieldCrudManager.d.ts +2 -2
- package/dist/helpers/field-crud-managers/ShortTextFieldCrudManager.d.ts +1 -1
- package/dist/helpers/field-crud-managers/UUIDFieldCrudManager.d.ts +1 -1
- package/dist/helpers/microsoft-oauth.helper.d.ts +9 -0
- package/dist/helpers/microsoft-oauth.helper.d.ts.map +1 -0
- package/dist/helpers/microsoft-oauth.helper.js +12 -0
- package/dist/helpers/microsoft-oauth.helper.js.map +1 -0
- package/dist/helpers/model-metadata-helper.service.d.ts +1 -1
- package/dist/helpers/module-metadata-helper.service.d.ts +1 -1
- package/dist/helpers/module-metadata-helper.service.js +3 -3
- package/dist/helpers/module-metadata-helper.service.js.map +1 -1
- package/dist/helpers/security.helper.d.ts.map +1 -1
- package/dist/helpers/solid-core-error-codes-provider.service.d.ts +1 -1
- package/dist/helpers/solid-registry.d.ts +11 -5
- package/dist/helpers/solid-registry.d.ts.map +1 -1
- package/dist/helpers/solid-registry.js +15 -2
- package/dist/helpers/solid-registry.js.map +1 -1
- package/dist/helpers/string.helper.d.ts +1 -0
- package/dist/helpers/string.helper.d.ts.map +1 -1
- package/dist/helpers/string.helper.js +4 -1
- package/dist/helpers/string.helper.js.map +1 -1
- package/dist/helpers/user-helper.d.ts.map +1 -1
- package/dist/helpers/user-helper.js +4 -0
- package/dist/helpers/user-helper.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/interfaces/mq.d.ts +1 -1
- package/dist/interfaces/mq.d.ts.map +1 -1
- package/dist/interfaces/mq.js.map +1 -1
- package/dist/interfaces.d.ts +30 -3
- package/dist/interfaces.d.ts.map +1 -1
- package/dist/interfaces.js.map +1 -1
- package/dist/jobs/database/api-email-publisher-database.service.d.ts +4 -4
- package/dist/jobs/database/api-email-queue-options-database.d.ts +1 -1
- package/dist/jobs/database/api-email-subscriber-database.service.d.ts +8 -8
- package/dist/jobs/database/api-email-subscriber-database.service.js +1 -1
- package/dist/jobs/database/api-email-subscriber-database.service.js.map +1 -1
- package/dist/jobs/database/chatter-queue-publisher-database.service.d.ts +1 -1
- package/dist/jobs/database/chatter-queue-subscriber-database.service.d.ts +4 -4
- package/dist/jobs/database/computed-field-evaluation-publisher-database.service.d.ts +5 -5
- package/dist/jobs/database/computed-field-evaluation-subscriber-database.service.d.ts +8 -8
- package/dist/jobs/database/generate-code-publisher-database.service.d.ts +1 -1
- package/dist/jobs/database/generate-code-subscriber-database.service.d.ts +4 -4
- package/dist/jobs/database/msg91-sms-publisher-database.service.d.ts +4 -4
- package/dist/jobs/database/msg91-sms-queue-database-options.d.ts +1 -1
- package/dist/jobs/database/msg91-sms-subscriber-database.service.d.ts +7 -7
- package/dist/jobs/database/msg91-whatsapp-publisher-database.service.d.ts +4 -4
- package/dist/jobs/database/msg91-whatsapp-queue-options-database.d.ts +1 -1
- package/dist/jobs/database/msg91-whatsapp-subscriber-database.service.d.ts +8 -8
- package/dist/jobs/database/msg91-whatsapp-subscriber-database.service.js +1 -1
- package/dist/jobs/database/msg91-whatsapp-subscriber-database.service.js.map +1 -1
- package/dist/jobs/database/otp-publisher-database.service.d.ts +4 -4
- package/dist/jobs/database/otp-queue-options-database.d.ts +1 -1
- package/dist/jobs/database/otp-subscriber-database.service.d.ts +7 -7
- package/dist/jobs/database/smtp-email-publisher-database.service.d.ts +4 -4
- package/dist/jobs/database/smtp-email-queue-options-database.d.ts +1 -1
- package/dist/jobs/database/smtp-email-subscriber-database.service.d.ts +7 -7
- package/dist/jobs/database/test-queue-publisher-database.service.d.ts +1 -1
- package/dist/jobs/database/test-queue-subscriber-database.service.d.ts +3 -3
- package/dist/jobs/database/three60-whatsapp-publisher-database.service.d.ts +4 -4
- package/dist/jobs/database/three60-whatsapp-queue-options-database.d.ts +1 -1
- package/dist/jobs/database/three60-whatsapp-subscriber-database.service.d.ts +8 -8
- package/dist/jobs/database/three60-whatsapp-subscriber-database.service.js +1 -1
- package/dist/jobs/database/three60-whatsapp-subscriber-database.service.js.map +1 -1
- package/dist/jobs/database/trigger-mcp-client-publisher-database.service.d.ts +4 -4
- package/dist/jobs/database/trigger-mcp-client-queue-options.d.ts +1 -1
- package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.d.ts +8 -8
- 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 +2 -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 +4 -4
- package/dist/jobs/database/twilio-sms-queue-database-options.d.ts +1 -1
- package/dist/jobs/database/twilio-sms-subscriber-database.service.d.ts +7 -7
- package/dist/jobs/rabbitmq/api-email-publisher.service.d.ts +3 -3
- package/dist/jobs/rabbitmq/api-email-subscriber.service.d.ts +5 -5
- package/dist/jobs/rabbitmq/api-email-subscriber.service.js +1 -1
- package/dist/jobs/rabbitmq/api-email-subscriber.service.js.map +1 -1
- package/dist/jobs/rabbitmq/chatter-queue-publisher.service.d.ts +1 -1
- package/dist/jobs/rabbitmq/chatter-queue-subscriber.service.d.ts +3 -3
- package/dist/jobs/rabbitmq/computed-field-evaluation-publisher.service.d.ts +5 -5
- package/dist/jobs/rabbitmq/computed-field-evaluation-subscriber.service.d.ts +8 -8
- package/dist/jobs/rabbitmq/generate-code-publisher.service.d.ts +1 -1
- package/dist/jobs/rabbitmq/generate-code-subscriber.service.d.ts +7 -7
- package/dist/jobs/rabbitmq/msg91-otp-publisher.service.d.ts +3 -3
- package/dist/jobs/rabbitmq/msg91-otp-subscriber.service.d.ts +5 -5
- package/dist/jobs/rabbitmq/msg91-sms-publisher.service.d.ts +3 -3
- package/dist/jobs/rabbitmq/msg91-sms-subscriber.service.d.ts +5 -5
- package/dist/jobs/rabbitmq/msg91-whatsapp-publisher.service.d.ts +3 -3
- package/dist/jobs/rabbitmq/msg91-whatsapp-subscriber.service.d.ts +5 -5
- package/dist/jobs/rabbitmq/msg91-whatsapp-subscriber.service.js +1 -1
- package/dist/jobs/rabbitmq/msg91-whatsapp-subscriber.service.js.map +1 -1
- package/dist/jobs/rabbitmq/smtp-email-publisher.service.d.ts +3 -3
- package/dist/jobs/rabbitmq/smtp-email-subscriber.service.d.ts +4 -4
- package/dist/jobs/rabbitmq/test-queue-publisher.service.d.ts +1 -1
- package/dist/jobs/rabbitmq/test-queue-subscriber.service.d.ts +3 -3
- package/dist/jobs/rabbitmq/test-queue-subscriber.service.d.ts.map +1 -1
- package/dist/jobs/rabbitmq/test-queue-subscriber.service.js +6 -3
- package/dist/jobs/rabbitmq/test-queue-subscriber.service.js.map +1 -1
- package/dist/jobs/rabbitmq/three60-whatsapp-publisher.service.d.ts +3 -3
- package/dist/jobs/rabbitmq/three60-whatsapp-subscriber.service.d.ts +6 -6
- package/dist/jobs/rabbitmq/three60-whatsapp-subscriber.service.js +1 -1
- package/dist/jobs/rabbitmq/three60-whatsapp-subscriber.service.js.map +1 -1
- package/dist/jobs/rabbitmq/trigger-mcp-client-publisher.service.d.ts +3 -3
- package/dist/jobs/rabbitmq/trigger-mcp-client-subscriber.service.d.ts +6 -6
- package/dist/jobs/rabbitmq/twilio-sms-publisher.service.d.ts +3 -3
- package/dist/jobs/rabbitmq/twilio-sms-subscriber.service.d.ts +6 -6
- package/dist/jobs/redis/api-email-publisher-redis.service.d.ts +1 -1
- package/dist/jobs/redis/api-email-subscriber-redis.service.d.ts +3 -3
- package/dist/jobs/redis/api-email-subscriber-redis.service.js +1 -1
- package/dist/jobs/redis/api-email-subscriber-redis.service.js.map +1 -1
- package/dist/jobs/redis/chatter-queue-publisher-redis.service.d.ts +1 -1
- package/dist/jobs/redis/chatter-queue-subscriber-redis.service.d.ts +2 -2
- package/dist/jobs/redis/computed-field-evaluation-publisher-redis.service.d.ts +2 -2
- package/dist/jobs/redis/computed-field-evaluation-subscriber-redis.service.d.ts +4 -4
- package/dist/jobs/redis/generate-code-publisher-redis.service.d.ts +1 -1
- package/dist/jobs/redis/generate-code-subscriber-redis.service.d.ts +3 -3
- package/dist/jobs/redis/msg91-otp-publisher-redis.service.d.ts +1 -1
- package/dist/jobs/redis/msg91-otp-subscriber-redis.service.d.ts +3 -3
- package/dist/jobs/redis/msg91-sms-publisher-redis.service.d.ts +1 -1
- package/dist/jobs/redis/msg91-sms-subscriber-redis.service.d.ts +3 -3
- package/dist/jobs/redis/msg91-whatsapp-publisher-redis.service.d.ts +1 -1
- package/dist/jobs/redis/msg91-whatsapp-subscriber-redis.service.d.ts +3 -3
- package/dist/jobs/redis/msg91-whatsapp-subscriber-redis.service.js +1 -1
- package/dist/jobs/redis/msg91-whatsapp-subscriber-redis.service.js.map +1 -1
- package/dist/jobs/redis/smtp-email-publisher-redis.service.d.ts +1 -1
- package/dist/jobs/redis/smtp-email-subscriber-redis.service.d.ts +2 -2
- package/dist/jobs/redis/test-queue-publisher-redis.service.d.ts +1 -1
- package/dist/jobs/redis/test-queue-subscriber-redis.service.d.ts +2 -2
- package/dist/jobs/redis/three60-whatsapp-publisher-redis.service.d.ts +1 -1
- package/dist/jobs/redis/three60-whatsapp-subscriber-redis.service.d.ts +3 -3
- package/dist/jobs/redis/three60-whatsapp-subscriber-redis.service.js +1 -1
- package/dist/jobs/redis/three60-whatsapp-subscriber-redis.service.js.map +1 -1
- package/dist/jobs/redis/trigger-mcp-client-publisher-redis.service.d.ts +1 -1
- package/dist/jobs/redis/trigger-mcp-client-subscriber-redis.service.d.ts +2 -2
- package/dist/jobs/redis/twilio-sms-publisher-redis.service.d.ts +1 -1
- package/dist/jobs/redis/twilio-sms-subscriber-redis.service.d.ts +3 -3
- package/dist/mappers/dashboard-mapper.d.ts +1 -1
- package/dist/mappers/list-of-values-mapper.d.ts +1 -1
- package/dist/passport-strategies/facebook-oauth.strategy.d.ts +14 -0
- package/dist/passport-strategies/facebook-oauth.strategy.d.ts.map +1 -0
- package/dist/passport-strategies/facebook-oauth.strategy.js +73 -0
- package/dist/passport-strategies/facebook-oauth.strategy.js.map +1 -0
- package/dist/passport-strategies/microsoft-oauth.strategy.d.ts +14 -0
- package/dist/passport-strategies/microsoft-oauth.strategy.d.ts.map +1 -0
- package/dist/passport-strategies/microsoft-oauth.strategy.js +77 -0
- package/dist/passport-strategies/microsoft-oauth.strategy.js.map +1 -0
- package/dist/repository/action-metadata.repository.d.ts +2 -2
- package/dist/repository/agent-event.repository.d.ts +2 -2
- package/dist/repository/agent-session.repository.d.ts +2 -2
- package/dist/repository/ai-interaction.repository.d.ts +2 -2
- package/dist/repository/chatter-message-details.repository.d.ts +2 -2
- package/dist/repository/chatter-message-details.repository.d.ts.map +1 -1
- package/dist/repository/chatter-message-details.repository.js +7 -6
- package/dist/repository/chatter-message-details.repository.js.map +1 -1
- package/dist/repository/chatter-message.repository.d.ts +2 -2
- package/dist/repository/chatter-message.repository.d.ts.map +1 -1
- package/dist/repository/chatter-message.repository.js +4 -4
- package/dist/repository/chatter-message.repository.js.map +1 -1
- package/dist/repository/dashboard-layout.repository.d.ts +2 -2
- package/dist/repository/dashboard-question-sql-dataset-config.repository.d.ts +2 -2
- package/dist/repository/dashboard-question-sql-dataset-config.repository.d.ts.map +1 -1
- package/dist/repository/dashboard-question-sql-dataset-config.repository.js +2 -2
- package/dist/repository/dashboard-question-sql-dataset-config.repository.js.map +1 -1
- package/dist/repository/dashboard-question.repository.d.ts +2 -2
- package/dist/repository/dashboard-question.repository.d.ts.map +1 -1
- package/dist/repository/dashboard-question.repository.js +2 -2
- package/dist/repository/dashboard-question.repository.js.map +1 -1
- package/dist/repository/dashboard-variable.repository.d.ts +2 -2
- package/dist/repository/dashboard-variable.repository.d.ts.map +1 -1
- package/dist/repository/dashboard-variable.repository.js +2 -2
- package/dist/repository/dashboard-variable.repository.js.map +1 -1
- package/dist/repository/dashboard.repository.d.ts +2 -2
- package/dist/repository/email-template.repository.d.ts +2 -2
- package/dist/repository/email-template.repository.d.ts.map +1 -1
- package/dist/repository/email-template.repository.js +2 -2
- package/dist/repository/email-template.repository.js.map +1 -1
- package/dist/repository/export-template.repository.d.ts +2 -2
- package/dist/repository/export-template.repository.d.ts.map +1 -1
- package/dist/repository/export-template.repository.js +2 -2
- package/dist/repository/export-template.repository.js.map +1 -1
- package/dist/repository/export-transaction.repository.d.ts +2 -2
- package/dist/repository/export-transaction.repository.d.ts.map +1 -1
- package/dist/repository/export-transaction.repository.js +2 -2
- package/dist/repository/export-transaction.repository.js.map +1 -1
- package/dist/repository/field-metadata.repository.d.ts +1 -1
- package/dist/repository/import-transaction-error-log.repository.d.ts +2 -2
- package/dist/repository/import-transaction-error-log.repository.d.ts.map +1 -1
- package/dist/repository/import-transaction-error-log.repository.js +2 -2
- package/dist/repository/import-transaction-error-log.repository.js.map +1 -1
- package/dist/repository/import-transaction.repository.d.ts +2 -2
- package/dist/repository/import-transaction.repository.d.ts.map +1 -1
- package/dist/repository/import-transaction.repository.js +2 -2
- package/dist/repository/import-transaction.repository.js.map +1 -1
- package/dist/repository/list-of-values.repository.d.ts +2 -2
- package/dist/repository/list-of-values.repository.d.ts.map +1 -1
- package/dist/repository/list-of-values.repository.js +2 -2
- package/dist/repository/list-of-values.repository.js.map +1 -1
- package/dist/repository/locale.repository.d.ts +2 -2
- package/dist/repository/locale.repository.d.ts.map +1 -1
- package/dist/repository/locale.repository.js +2 -2
- package/dist/repository/locale.repository.js.map +1 -1
- package/dist/repository/media-storage-provider-metadata.repository.d.ts +1 -1
- package/dist/repository/media.repository.d.ts +2 -2
- package/dist/repository/menu-item-metadata.repository.d.ts +2 -2
- package/dist/repository/menu-item-metadata.repository.d.ts.map +1 -1
- package/dist/repository/menu-item-metadata.repository.js +2 -2
- package/dist/repository/menu-item-metadata.repository.js.map +1 -1
- package/dist/repository/model-metadata.repository.d.ts +1 -1
- package/dist/repository/model-metadata.repository.d.ts.map +1 -1
- package/dist/repository/model-metadata.repository.js +2 -2
- package/dist/repository/model-metadata.repository.js.map +1 -1
- package/dist/repository/model-sequence.repository.d.ts +3 -3
- package/dist/repository/module-metadata.repository.d.ts +1 -1
- package/dist/repository/module-metadata.repository.d.ts.map +1 -1
- package/dist/repository/module-metadata.repository.js +2 -2
- package/dist/repository/module-metadata.repository.js.map +1 -1
- package/dist/repository/mq-message-queue.repository.d.ts +2 -2
- package/dist/repository/mq-message-queue.repository.d.ts.map +1 -1
- package/dist/repository/mq-message-queue.repository.js +2 -2
- package/dist/repository/mq-message-queue.repository.js.map +1 -1
- package/dist/repository/mq-message.repository.d.ts +2 -2
- package/dist/repository/mq-message.repository.d.ts.map +1 -1
- package/dist/repository/mq-message.repository.js +2 -2
- package/dist/repository/mq-message.repository.js.map +1 -1
- package/dist/repository/permission-metadata.repository.d.ts +2 -2
- package/dist/repository/permission-metadata.repository.d.ts.map +1 -1
- package/dist/repository/permission-metadata.repository.js +2 -2
- package/dist/repository/permission-metadata.repository.js.map +1 -1
- package/dist/repository/role-metadata.repository.d.ts +2 -2
- package/dist/repository/role-metadata.repository.d.ts.map +1 -1
- package/dist/repository/role-metadata.repository.js +2 -2
- package/dist/repository/role-metadata.repository.js.map +1 -1
- package/dist/repository/saved-filters.repository.d.ts +2 -2
- package/dist/repository/scheduled-job.repository.d.ts +3 -3
- package/dist/repository/security-rule.repository.d.ts +7 -7
- package/dist/repository/setting.repository.d.ts +2 -2
- package/dist/repository/setting.repository.d.ts.map +1 -1
- package/dist/repository/setting.repository.js +2 -2
- package/dist/repository/setting.repository.js.map +1 -1
- package/dist/repository/sms-template.repository.d.ts +2 -2
- package/dist/repository/sms-template.repository.d.ts.map +1 -1
- package/dist/repository/sms-template.repository.js +2 -2
- package/dist/repository/sms-template.repository.js.map +1 -1
- package/dist/repository/solid-base.repository.d.ts +2 -2
- package/dist/repository/solid-base.repository.js +2 -2
- package/dist/repository/solid-base.repository.js.map +1 -1
- package/dist/repository/user-activity-history.repository.d.ts +2 -2
- package/dist/repository/user-activity-history.repository.d.ts.map +1 -1
- package/dist/repository/user-activity-history.repository.js +2 -2
- package/dist/repository/user-activity-history.repository.js.map +1 -1
- package/dist/repository/user-api-key.repository.d.ts +2 -2
- package/dist/repository/user-view-metadata.repository.d.ts +2 -2
- package/dist/repository/user-view-metadata.repository.d.ts.map +1 -1
- package/dist/repository/user-view-metadata.repository.js +2 -2
- package/dist/repository/user-view-metadata.repository.js.map +1 -1
- package/dist/repository/user.repository.d.ts +2 -2
- package/dist/repository/view-metadata.repository.d.ts +2 -2
- package/dist/seeders/module-metadata-seeder.service.d.ts +17 -14
- package/dist/seeders/module-metadata-seeder.service.d.ts.map +1 -1
- package/dist/seeders/module-metadata-seeder.service.js +65 -38
- package/dist/seeders/module-metadata-seeder.service.js.map +1 -1
- package/dist/seeders/module-test-data.service.d.ts +1 -1
- package/dist/seeders/module-test-data.service.d.ts.map +1 -1
- package/dist/seeders/module-test-data.service.js +5 -12
- package/dist/seeders/module-test-data.service.js.map +1 -1
- package/dist/seeders/permission-metadata-seeder.service.d.ts +2 -2
- package/dist/seeders/seed-data/solid-core-metadata.json +40 -89
- package/dist/seeders/system-fields-seeder.service.d.ts +3 -3
- package/dist/services/action-metadata.service.d.ts +2 -2
- package/dist/services/agent-event.service.d.ts +2 -2
- package/dist/services/agent-session.service.d.ts +2 -2
- package/dist/services/ai-interaction.service.d.ts +4 -4
- package/dist/services/api-key.service.d.ts +23 -7
- package/dist/services/api-key.service.d.ts.map +1 -1
- package/dist/services/api-key.service.js +38 -2
- package/dist/services/api-key.service.js.map +1 -1
- package/dist/services/authentication.service.d.ts +58 -19
- package/dist/services/authentication.service.d.ts.map +1 -1
- package/dist/services/authentication.service.js +344 -171
- package/dist/services/authentication.service.js.map +1 -1
- package/dist/services/chatter-message-details.service.d.ts +2 -2
- package/dist/services/chatter-message.service.d.ts +8 -7
- package/dist/services/chatter-message.service.d.ts.map +1 -1
- package/dist/services/chatter-message.service.js +17 -0
- package/dist/services/chatter-message.service.js.map +1 -1
- package/dist/services/computed-fields/entity/alpha-num-external-id-computed-field-provider.d.ts +3 -3
- package/dist/services/computed-fields/entity/concat-entity-computed-field-provider.service.d.ts +3 -3
- package/dist/services/computed-fields/entity/noops-entity-computed-field-provider.service.d.ts +2 -2
- package/dist/services/computed-fields/entity/sequence-num-computed-field-provider.d.ts +3 -3
- package/dist/services/computed-fields/entity/sequence-num-computed-field-provider.d.ts.map +1 -1
- package/dist/services/computed-fields/entity/sequence-num-computed-field-provider.js +2 -2
- package/dist/services/computed-fields/entity/sequence-num-computed-field-provider.js.map +1 -1
- package/dist/services/computed-fields/entity/uuid-externalid-entity-computed-field-provider.service.d.ts +2 -2
- package/dist/services/crud-helper.service.d.ts +1 -1
- package/dist/services/crud-helper.service.d.ts.map +1 -1
- package/dist/services/crud-helper.service.js +9 -9
- package/dist/services/crud-helper.service.js.map +1 -1
- package/dist/services/crud.service.d.ts +4 -1
- package/dist/services/crud.service.d.ts.map +1 -1
- package/dist/services/crud.service.js +52 -3
- package/dist/services/crud.service.js.map +1 -1
- package/dist/services/dashboard-layout.service.d.ts +4 -4
- package/dist/services/dashboard-question-sql-dataset-config.service.d.ts +2 -2
- package/dist/services/dashboard-question.service.d.ts +3 -3
- package/dist/services/dashboard-question.service.js.map +1 -1
- package/dist/services/dashboard-variable.service.d.ts +2 -2
- package/dist/services/dashboard.service.d.ts +7 -7
- package/dist/services/email-template.service.d.ts +1 -1
- package/dist/services/export-template.service.d.ts +5 -5
- package/dist/services/export-transaction.service.d.ts +7 -7
- package/dist/services/export-transaction.service.d.ts.map +1 -1
- package/dist/services/export-transaction.service.js +4 -3
- package/dist/services/export-transaction.service.js.map +1 -1
- package/dist/services/field-metadata.service.d.ts +5 -5
- package/dist/services/field-metadata.service.d.ts.map +1 -1
- package/dist/services/field-metadata.service.js +7 -7
- package/dist/services/field-metadata.service.js.map +1 -1
- package/dist/services/fixtures.service.d.ts +1 -1
- package/dist/services/fixtures.service.js +2 -2
- package/dist/services/fixtures.service.js.map +1 -1
- package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.d.ts +1 -1
- package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.d.ts.map +1 -1
- package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.js +2 -2
- package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.js.map +1 -1
- package/dist/services/genai/mcp-handlers/solid-add-question-to-dashboard-mcp-handler.service.d.ts +1 -1
- package/dist/services/genai/mcp-handlers/solid-add-variable-to-dashboard-mcp-handler.service.d.ts +2 -2
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-mcp-handler.service.d.ts +1 -1
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-question-mcp-handler.service.d.ts +1 -1
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-question-sql-dataset-config-mcp-handler.service.d.ts +1 -1
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-widget-mcp-handler.service.d.ts +1 -1
- package/dist/services/import-transaction-error-log.service.d.ts +2 -2
- package/dist/services/import-transaction.service.d.ts +6 -6
- package/dist/services/import-transaction.service.d.ts.map +1 -1
- package/dist/services/import-transaction.service.js +2 -2
- package/dist/services/import-transaction.service.js.map +1 -1
- package/dist/services/list-of-values.service.d.ts +4 -4
- package/dist/services/locale.service.d.ts +4 -4
- package/dist/services/mail/elastic-email.service.d.ts +1 -1
- package/dist/services/mail/smtp-email.service.d.ts +1 -1
- package/dist/services/media-storage-provider-metadata.service.d.ts +1 -1
- package/dist/services/media.service.d.ts +8 -8
- package/dist/services/mediaStorageProviders/file-s3-storage-provider.d.ts +5 -5
- package/dist/services/mediaStorageProviders/file-storage-provider.d.ts +5 -5
- package/dist/services/menu-item-metadata.service.d.ts +4 -4
- package/dist/services/menu-item-metadata.service.js +2 -2
- package/dist/services/menu-item-metadata.service.js.map +1 -1
- package/dist/services/model-metadata.service.d.ts +4 -4
- package/dist/services/model-metadata.service.d.ts.map +1 -1
- package/dist/services/model-metadata.service.js +12 -11
- package/dist/services/model-metadata.service.js.map +1 -1
- package/dist/services/model-sequence.service.d.ts +1 -1
- package/dist/services/module-metadata.service.d.ts +4 -4
- package/dist/services/module-metadata.service.d.ts.map +1 -1
- package/dist/services/module-metadata.service.js +2 -2
- package/dist/services/module-metadata.service.js.map +1 -1
- package/dist/services/mq-message-queue.service.d.ts +2 -2
- package/dist/services/mq-message.service.d.ts +2 -2
- package/dist/services/permission-metadata.service.d.ts +2 -2
- package/dist/services/question-data-providers/chartjs-sql-data-provider.service.d.ts +2 -2
- package/dist/services/question-data-providers/helpers.d.ts +1 -1
- package/dist/services/question-data-providers/prime-react-datatable-sql-data-provider.service.d.ts +2 -2
- package/dist/services/question-data-providers/prime-react-meter-group-sql-data-provider.service.d.ts +2 -2
- package/dist/services/queues/database-subscriber.service.d.ts +1 -1
- package/dist/services/queues/database-subscriber.service.d.ts.map +1 -1
- package/dist/services/queues/database-subscriber.service.js.map +1 -1
- package/dist/services/queues/publisher-factory.service.d.ts +1 -1
- package/dist/services/queues/publisher-factory.service.d.ts.map +1 -1
- package/dist/services/queues/publisher-factory.service.js +2 -2
- package/dist/services/queues/publisher-factory.service.js.map +1 -1
- package/dist/services/queues/rabbitmq-subscriber.service.d.ts +1 -1
- package/dist/services/queues/rabbitmq-subscriber.service.d.ts.map +1 -1
- package/dist/services/queues/rabbitmq-subscriber.service.js +3 -1
- package/dist/services/queues/rabbitmq-subscriber.service.js.map +1 -1
- package/dist/services/queues/redis-subscriber.service.d.ts +1 -1
- package/dist/services/queues/redis-subscriber.service.d.ts.map +1 -1
- package/dist/services/queues/redis-subscriber.service.js.map +1 -1
- package/dist/services/request-context.service.d.ts +2 -2
- package/dist/services/role-metadata.service.d.ts +3 -3
- package/dist/services/saved-filters.service.d.ts +2 -2
- package/dist/services/scheduled-job.service.d.ts +3 -3
- package/dist/services/scheduled-jobs/scheduled-job.interface.d.ts +1 -1
- package/dist/services/scheduled-jobs/scheduler.interface.d.ts +1 -1
- package/dist/services/scheduled-jobs/scheduler.service.d.ts +3 -3
- package/dist/services/security-rule.service.d.ts +3 -3
- package/dist/services/security-rule.service.d.ts.map +1 -1
- package/dist/services/security-rule.service.js +3 -3
- package/dist/services/security-rule.service.js.map +1 -1
- package/dist/services/selection-providers/list-of-dashboard-question-providers-selection-provider.service.d.ts +1 -1
- package/dist/services/selection-providers/list-of-dashboard-variable-providers-selection-provider.service.d.ts +1 -1
- package/dist/services/selection-providers/list-of-models-selection-provider.service.d.ts +1 -1
- package/dist/services/selection-providers/list-of-scheduled-jobs-selection-provider.service.d.ts +1 -1
- package/dist/services/selection-providers/pseudo-foreign-key-selection-provider.service.js +3 -3
- package/dist/services/selection-providers/pseudo-foreign-key-selection-provider.service.js.map +1 -1
- package/dist/services/setting.service.d.ts +10 -7
- package/dist/services/setting.service.d.ts.map +1 -1
- package/dist/services/setting.service.js +52 -7
- package/dist/services/setting.service.js.map +1 -1
- package/dist/services/settings/default-settings-provider.service.d.ts +829 -9
- package/dist/services/settings/default-settings-provider.service.d.ts.map +1 -1
- package/dist/services/settings/default-settings-provider.service.js +1033 -118
- package/dist/services/settings/default-settings-provider.service.js.map +1 -1
- package/dist/services/short-url/tiny-url.service.d.ts +1 -1
- package/dist/services/sms/Msg91BaseSMSService.d.ts +1 -1
- package/dist/services/sms/Msg91OTPService.d.ts +1 -1
- package/dist/services/sms/Msg91SMSService.d.ts +1 -1
- package/dist/services/sms/TwilioSMSService.d.ts +1 -1
- package/dist/services/sms-template.service.d.ts +1 -1
- package/dist/services/solid-introspect.service.d.ts +9 -8
- package/dist/services/solid-introspect.service.d.ts.map +1 -1
- package/dist/services/solid-introspect.service.js +13 -2
- package/dist/services/solid-introspect.service.js.map +1 -1
- package/dist/services/user-activity-history.service.d.ts +3 -3
- package/dist/services/user-view-metadata.service.d.ts +4 -4
- package/dist/services/user.service.d.ts +5 -3
- package/dist/services/user.service.d.ts.map +1 -1
- package/dist/services/user.service.js +72 -0
- package/dist/services/user.service.js.map +1 -1
- package/dist/services/view-metadata.service.d.ts +4 -4
- package/dist/services/view-metadata.service.d.ts.map +1 -1
- package/dist/services/view-metadata.service.js +2 -2
- package/dist/services/view-metadata.service.js.map +1 -1
- package/dist/services/whatsapp/Msg91WhatsappService.d.ts +1 -1
- package/dist/services/whatsapp/Three60WhatsappService.d.ts +1 -1
- package/dist/solid-core.module.d.ts.map +1 -1
- package/dist/solid-core.module.js +11 -3
- package/dist/solid-core.module.js.map +1 -1
- package/dist/subscribers/audit.subscriber.d.ts +4 -4
- package/dist/subscribers/computed-entity-field.subscriber.d.ts +2 -2
- package/dist/subscribers/computed-entity-field.subscriber.js +6 -6
- package/dist/subscribers/computed-entity-field.subscriber.js.map +1 -1
- package/dist/subscribers/created-by-updated-by.subscriber.d.ts +1 -1
- package/dist/subscribers/dashboard-question-sql-dataset-config.subscriber.d.ts +3 -3
- package/dist/subscribers/dashboard-question.subscriber.d.ts +3 -3
- package/dist/subscribers/dashboard-variable.subscriber.d.ts +3 -3
- package/dist/subscribers/dashboard.subscriber.d.ts +3 -3
- package/dist/subscribers/list-of-values.subscriber.d.ts +3 -3
- package/dist/subscribers/model-metadata.subscriber.d.ts +1 -1
- package/dist/subscribers/scheduled-job.subscriber.d.ts +3 -3
- package/dist/subscribers/security-rule.subscriber.d.ts +3 -3
- package/dist/subscribers/view-metadata.subscriber.d.ts +2 -2
- package/dist/testing/contracts/testing-metadata.types.d.ts +1 -0
- package/dist/testing/contracts/testing-metadata.types.d.ts.map +1 -1
- package/dist/testing/contracts/testing-metadata.types.js.map +1 -1
- package/dist/testing/steps/ui/assertions.step.d.ts.map +1 -1
- package/dist/testing/steps/ui/assertions.step.js +8 -0
- package/dist/testing/steps/ui/assertions.step.js.map +1 -1
- package/dist/testing/steps/ui/form.step.d.ts.map +1 -1
- package/dist/testing/steps/ui/form.step.js +49 -0
- package/dist/testing/steps/ui/form.step.js.map +1 -1
- package/dist/transformers/array-transformer.d.ts.map +1 -1
- package/dist/transformers/boolean-transformer.d.ts.map +1 -1
- package/dist/transformers/datetime-transformer.d.ts.map +1 -1
- package/dist/transformers/integer-transformer.d.ts.map +1 -1
- package/dist/validators/is-parsable-int.d.ts.map +1 -1
- package/dist/winston.logger.js +1 -1
- package/dist/winston.logger.js.map +1 -1
- package/nest +0 -0
- package/package.json +13 -7
- package/src/constants/chatter-message.constants.ts +7 -0
- package/src/controllers/authentication.controller.ts +8 -1
- package/src/controllers/chatter-message.controller.ts +6 -0
- package/src/controllers/facebook-authentication.controller.ts +113 -0
- package/src/controllers/menu-item-metadata.controller.ts +21 -15
- package/src/controllers/microsoft-authentication.controller.ts +116 -0
- package/src/controllers/otp-authentication.controller.ts +2 -2
- package/src/controllers/setting.controller.ts +2 -2
- package/src/decorators/extension-user-creation-provider.decorator.ts +5 -0
- package/src/dtos/create-chatter-message.dto.ts +11 -0
- package/src/dtos/create-field-metadata.dto.ts +1 -1
- package/src/dtos/create-user.dto.ts +4 -0
- package/src/dtos/post-chatter-message.dto.ts +4 -0
- package/src/dtos/update-chatter-message.dto.ts +13 -1
- package/src/dtos/update-user.dto.ts +4 -0
- package/src/entities/chatter-message.entity.ts +4 -1
- package/src/entities/user.entity.ts +33 -0
- package/src/helpers/bootstrap.helper.ts +5 -2
- package/src/helpers/cors.helper.ts +1 -1
- package/src/helpers/facebook-oauth.helper.ts +17 -0
- package/src/helpers/field-crud-managers/ManyToManyRelationFieldCrudManager.ts +1 -1
- package/src/helpers/field-crud-managers/ManyToOneRelationFieldCrudManager.ts +1 -2
- package/src/helpers/field-crud-managers/OneToManyRelationFieldCrudManager.ts +1 -1
- package/src/helpers/microsoft-oauth.helper.ts +19 -0
- package/src/helpers/module-metadata-helper.service.ts +3 -3
- package/src/helpers/solid-registry.ts +19 -1
- package/src/helpers/string.helper.ts +3 -0
- package/src/helpers/user-helper.ts +4 -0
- package/src/index.ts +3 -0
- package/src/interfaces/mq.ts +2 -2
- package/src/interfaces.ts +41 -1
- package/src/jobs/database/api-email-subscriber-database.service.ts +1 -1
- package/src/jobs/database/msg91-whatsapp-subscriber-database.service.ts +1 -1
- package/src/jobs/database/three60-whatsapp-subscriber-database.service.ts +1 -1
- package/src/jobs/database/trigger-mcp-client-subscriber-database.service.ts +1 -1
- package/src/jobs/rabbitmq/api-email-subscriber.service.ts +1 -1
- package/src/jobs/rabbitmq/msg91-whatsapp-subscriber.service.ts +1 -1
- package/src/jobs/rabbitmq/test-queue-subscriber.service.ts +6 -7
- package/src/jobs/rabbitmq/three60-whatsapp-subscriber.service.ts +1 -1
- package/src/jobs/redis/api-email-subscriber-redis.service.ts +1 -1
- package/src/jobs/redis/msg91-whatsapp-subscriber-redis.service.ts +1 -1
- package/src/jobs/redis/three60-whatsapp-subscriber-redis.service.ts +1 -1
- package/src/passport-strategies/facebook-oauth.strategy.ts +64 -0
- package/src/passport-strategies/microsoft-oauth.strategy.ts +70 -0
- package/src/repository/chatter-message-details.repository.ts +4 -3
- package/src/repository/chatter-message.repository.ts +4 -4
- package/src/repository/dashboard-question-sql-dataset-config.repository.ts +1 -1
- package/src/repository/dashboard-question.repository.ts +1 -1
- package/src/repository/dashboard-variable.repository.ts +1 -1
- package/src/repository/email-template.repository.ts +1 -1
- package/src/repository/export-template.repository.ts +2 -1
- package/src/repository/export-transaction.repository.ts +1 -1
- package/src/repository/import-transaction-error-log.repository.ts +1 -1
- package/src/repository/import-transaction.repository.ts +1 -1
- package/src/repository/list-of-values.repository.ts +1 -1
- package/src/repository/locale.repository.ts +1 -1
- package/src/repository/menu-item-metadata.repository.ts +1 -1
- package/src/repository/model-metadata.repository.ts +1 -1
- package/src/repository/module-metadata.repository.ts +1 -1
- package/src/repository/mq-message-queue.repository.ts +2 -1
- package/src/repository/mq-message.repository.ts +1 -1
- package/src/repository/permission-metadata.repository.ts +1 -1
- package/src/repository/role-metadata.repository.ts +1 -1
- package/src/repository/setting.repository.ts +1 -1
- package/src/repository/sms-template.repository.ts +1 -1
- package/src/repository/solid-base.repository.ts +2 -2
- package/src/repository/user-activity-history.repository.ts +1 -1
- package/src/repository/user-view-metadata.repository.ts +1 -1
- package/src/seeders/module-metadata-seeder.service.ts +50 -25
- package/src/seeders/module-test-data.service.ts +2 -9
- package/src/seeders/seed-data/solid-core-metadata.json +40 -89
- package/src/services/api-key.service.ts +77 -35
- package/src/services/authentication.service.ts +1745 -1308
- package/src/services/chatter-message.service.ts +22 -4
- package/src/services/computed-fields/entity/sequence-num-computed-field-provider.ts +1 -2
- package/src/services/crud-helper.service.ts +1 -4
- package/src/services/crud.service.ts +22 -2
- package/src/services/dashboard-question.service.ts +1 -1
- package/src/services/export-transaction.service.ts +3 -4
- package/src/services/field-metadata.service.ts +1 -4
- package/src/services/fixtures.service.ts +1 -1
- package/src/services/genai/mcp-handlers/mcp-handler-factory.service.ts +1 -2
- package/src/services/import-transaction.service.ts +1 -1
- package/src/services/menu-item-metadata.service.ts +2 -2
- package/src/services/model-metadata.service.ts +11 -13
- package/src/services/module-metadata.service.ts +1 -2
- package/src/services/queues/database-subscriber.service.ts +1 -1
- package/src/services/queues/publisher-factory.service.ts +1 -2
- package/src/services/queues/rabbitmq-subscriber.service.ts +13 -11
- package/src/services/queues/redis-subscriber.service.ts +2 -2
- package/src/services/security-rule.service.ts +1 -1
- package/src/services/selection-providers/pseudo-foreign-key-selection-provider.service.ts +1 -1
- package/src/services/setting.service.ts +64 -8
- package/src/services/settings/default-settings-provider.service.ts +1104 -154
- package/src/services/solid-introspect.service.ts +14 -1
- package/src/services/user.service.ts +87 -0
- package/src/services/view-metadata.service.ts +1 -5
- package/src/solid-core.module.ts +25 -8
- package/src/subscribers/computed-entity-field.subscriber.ts +6 -6
- package/src/testing/contracts/testing-metadata.types.ts +1 -0
- package/src/testing/steps/ui/assertions.step.ts +9 -0
- package/src/testing/steps/ui/form.step.ts +19 -0
- package/src/winston.logger.ts +1 -1
- package/tsconfig.json +3 -0
- package/dev-grooming-docs/ozzy-prompts.txt +0 -70
- package/docs/grouping-enhancements.md +0 -89
- package/docs/seed-changes.md +0 -65
- package/docs/test-data-workflow.md +0 -200
- package/docs/type-declaration-import-issue.md +0 -24
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { ModuleRef } from "@nestjs/core";
|
|
2
2
|
import { EntityManager } from 'typeorm';
|
|
3
|
-
import { CRUDService } from '
|
|
4
|
-
import { CreateExportTransactionDto } from '
|
|
3
|
+
import { CRUDService } from '../services/crud.service';
|
|
4
|
+
import { CreateExportTransactionDto } from '../dtos/create-export-transaction.dto';
|
|
5
5
|
import { Readable } from 'stream';
|
|
6
6
|
import { ExportTransaction } from '../entities/export-transaction.entity';
|
|
7
7
|
import { CsvService } from './csv.service';
|
|
8
8
|
import { ExcelService } from './excel.service';
|
|
9
9
|
import { SolidIntrospectService } from './solid-introspect.service';
|
|
10
|
-
import { UpdateExportTemplateDto } from '
|
|
11
|
-
import { ModelMetadataHelperService } from '
|
|
12
|
-
import { ExportTransactionRepository } from '
|
|
13
|
-
import { FieldMetadataRepository } from '
|
|
14
|
-
import { ModelMetadataRepository } from '
|
|
10
|
+
import { UpdateExportTemplateDto } from '../dtos/update-export-template.dto';
|
|
11
|
+
import { ModelMetadataHelperService } from '../helpers/model-metadata-helper.service';
|
|
12
|
+
import { ExportTransactionRepository } from '../repository/export-transaction.repository';
|
|
13
|
+
import { FieldMetadataRepository } from '../repository/field-metadata.repository';
|
|
14
|
+
import { ModelMetadataRepository } from '../repository/model-metadata.repository';
|
|
15
15
|
export interface ExportTransactionFileInfo {
|
|
16
16
|
exportStream: Readable;
|
|
17
17
|
fileName: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export-transaction.service.d.ts","sourceRoot":"","sources":["../../src/services/export-transaction.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAOxD,OAAO,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAC;AAGpF,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAE9E,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAC;AAC3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AAcnF,MAAM,WAAW,yBAAyB;IACxC,YAAY,EAAE,QAAQ,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,iBAAiB,CAAC;CACtC;AAED,qBACa,wBAAyB,SAAQ,WAAW,CAAC,iBAAiB,CAAC;IAKxE,QAAQ,CAAC,aAAa,EAAE,aAAa;IAGrC,QAAQ,CAAC,IAAI,EAAE,2BAA2B;IAC1C,QAAQ,CAAC,iBAAiB,EAAE,sBAAsB;IAClD,QAAQ,CAAC,YAAY,EAAE,YAAY;IACnC,QAAQ,CAAC,UAAU,EAAE,UAAU;IAM/B,QAAQ,CAAC,SAAS,EAAE,uBAAuB;IAC3C,QAAQ,CAAC,iBAAiB,EAAE,uBAAuB;IACnD,QAAQ,CAAC,SAAS,EAAE,SAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,0BAA0B;IAnB7C,OAAO,CAAC,MAAM,CAA6C;gBAIhD,aAAa,EAAE,aAAa,EAG5B,IAAI,EAAE,2BAA2B,EACjC,iBAAiB,EAAE,sBAAsB,EACzC,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,UAAU,EAMtB,SAAS,EAAE,uBAAuB,EAClC,iBAAiB,EAAE,uBAAuB,EAC1C,SAAS,EAAE,SAAS,EACZ,0BAA0B,EAAE,0BAA0B;IAOnE,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,uBAAuB,EAAE,GAAG,EAAE,SAAS,EAAE,uBAAuB,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAwBjJ,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,uBAAuB,EAAE,GAAG,EAAE,SAAS,EAAE,uBAAuB,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;YAwBrH,qBAAqB;YAQrB,uBAAuB;YAIvB,sBAAsB;YAuBtB,eAAe;YAef,iBAAiB;IAuB/B,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,WAAW;YAIL,kBAAkB;
|
|
1
|
+
{"version":3,"file":"export-transaction.service.d.ts","sourceRoot":"","sources":["../../src/services/export-transaction.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAOxD,OAAO,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAC;AAGpF,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAE9E,OAAO,EAAE,0BAA0B,EAAE,MAAM,2CAA2C,CAAC;AACvF,OAAO,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAC;AAC3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AAcnF,MAAM,WAAW,yBAAyB;IACxC,YAAY,EAAE,QAAQ,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,iBAAiB,CAAC;CACtC;AAED,qBACa,wBAAyB,SAAQ,WAAW,CAAC,iBAAiB,CAAC;IAKxE,QAAQ,CAAC,aAAa,EAAE,aAAa;IAGrC,QAAQ,CAAC,IAAI,EAAE,2BAA2B;IAC1C,QAAQ,CAAC,iBAAiB,EAAE,sBAAsB;IAClD,QAAQ,CAAC,YAAY,EAAE,YAAY;IACnC,QAAQ,CAAC,UAAU,EAAE,UAAU;IAM/B,QAAQ,CAAC,SAAS,EAAE,uBAAuB;IAC3C,QAAQ,CAAC,iBAAiB,EAAE,uBAAuB;IACnD,QAAQ,CAAC,SAAS,EAAE,SAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,0BAA0B;IAnB7C,OAAO,CAAC,MAAM,CAA6C;gBAIhD,aAAa,EAAE,aAAa,EAG5B,IAAI,EAAE,2BAA2B,EACjC,iBAAiB,EAAE,sBAAsB,EACzC,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,UAAU,EAMtB,SAAS,EAAE,uBAAuB,EAClC,iBAAiB,EAAE,uBAAuB,EAC1C,SAAS,EAAE,SAAS,EACZ,0BAA0B,EAAE,0BAA0B;IAOnE,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,uBAAuB,EAAE,GAAG,EAAE,SAAS,EAAE,uBAAuB,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAwBjJ,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,uBAAuB,EAAE,GAAG,EAAE,SAAS,EAAE,uBAAuB,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;YAwBrH,qBAAqB;YAQrB,uBAAuB;YAIvB,sBAAsB;YAuBtB,eAAe;YAef,iBAAiB;IAuB/B,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,WAAW;YAIL,kBAAkB;IA0G1B,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,0BAA0B,CAAC,GAAG,OAAO,CAAC,0BAA0B,CAAC;CAS5F"}
|
|
@@ -19,7 +19,8 @@ const core_1 = require("@nestjs/core");
|
|
|
19
19
|
const typeorm_1 = require("@nestjs/typeorm");
|
|
20
20
|
const typeorm_2 = require("typeorm");
|
|
21
21
|
const crud_service_1 = require("./crud.service");
|
|
22
|
-
const
|
|
22
|
+
const lodash_1 = require("lodash");
|
|
23
|
+
const string_helper_1 = require("../helpers/string.helper");
|
|
23
24
|
const class_validator_1 = require("class-validator");
|
|
24
25
|
const create_export_transaction_dto_1 = require("../dtos/create-export-transaction.dto");
|
|
25
26
|
const csv_service_1 = require("./csv.service");
|
|
@@ -107,7 +108,7 @@ let ExportTransactionService = ExportTransactionService_1 = class ExportTransact
|
|
|
107
108
|
await this.repo.update(id, { status, error });
|
|
108
109
|
}
|
|
109
110
|
async getExportStreamDetails(modelName, templateName, fields, modelData, templateFormat, id, exportTransaction, filters) {
|
|
110
|
-
const modelService = this.introspectService.getProvider(`${(0,
|
|
111
|
+
const modelService = this.introspectService.getProvider(`${(0, string_helper_1.classify)(modelName)}Service`);
|
|
111
112
|
const uuid = String(id);
|
|
112
113
|
const dataRecordsFunc = await this.getDataRecordsFunc(fields, modelService, modelData, filters);
|
|
113
114
|
let exportStream = await this.getExportStream(templateFormat, dataRecordsFunc);
|
|
@@ -144,7 +145,7 @@ let ExportTransactionService = ExportTransactionService_1 = class ExportTransact
|
|
|
144
145
|
}
|
|
145
146
|
getFileName(templateName, exportTransactionUUID, fileFormat) {
|
|
146
147
|
const extension = (fileFormat === ExportFormat.EXCEL) ? 'xlsx' : 'csv';
|
|
147
|
-
return `${(0,
|
|
148
|
+
return `${(0, lodash_1.kebabCase)(templateName)}-${exportTransactionUUID}.${extension}`;
|
|
148
149
|
}
|
|
149
150
|
getMimeType(fileFormat) {
|
|
150
151
|
return (fileFormat === ExportFormat.EXCEL) ? 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' : 'text/csv';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export-transaction.service.js","sourceRoot":"","sources":["../../src/services/export-transaction.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAoD;AACpD,uCAAyC;AACzC,6CAAsD;AACtD,qCAAwC;AAExC,iDAAwD;AAGxD,oEAA6E;AAE7E,qDAA2C;AAE3C,yFAAoF;AAKpF,+CAA2C;AAC3C,mDAA+C;AAC/C,mEAAkE;AAClE,yEAAoE;AAEpE,gEAA8D;AAC9D,4FAAuF;AACvF,+FAA2F;AAC3F,uFAAmF;AACnF,uFAAmF;AAEnF,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAC9B,IAAK,YAIJ;AAJD,WAAK,YAAY;IACf,mCAAmB,CAAA;IACnB,uCAAuB,CAAA;IACvB,iCAAiB,CAAA;AACnB,CAAC,EAJI,YAAY,KAAZ,YAAY,QAIhB;AAED,IAAK,YAGJ;AAHD,WAAK,YAAY;IACf,2BAAW,CAAA;IACX,+BAAe,CAAA;AACjB,CAAC,EAHI,YAAY,KAAZ,YAAY,QAGhB;AAUM,IAAM,wBAAwB,gCAA9B,MAAM,wBAAyB,SAAQ,0BAA8B;IAG1E,YAEE,aAAqC,EAG5B,IAAiC,EACjC,iBAAyC,EACzC,YAA0B,EAC1B,UAAsB,EAMtB,SAAkC,EAClC,iBAA0C,EAC1C,SAAoB,EACZ,0BAAsD;QAGvE,KAAK,CAAC,aAAa,EAAE,IAAI,EAAE,mBAAmB,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;QAlBhE,kBAAa,GAAb,aAAa,CAAe;QAG5B,SAAI,GAAJ,IAAI,CAA6B;QACjC,sBAAiB,GAAjB,iBAAiB,CAAwB;QACzC,iBAAY,GAAZ,YAAY,CAAc;QAC1B,eAAU,GAAV,UAAU,CAAY;QAMtB,cAAS,GAAT,SAAS,CAAyB;QAClC,sBAAiB,GAAjB,iBAAiB,CAAyB;QAC1C,cAAS,GAAT,SAAS,CAAW;QACZ,+BAA0B,GAA1B,0BAA0B,CAA4B;QAnBjE,WAAM,GAAG,IAAI,eAAM,CAAC,0BAAwB,CAAC,IAAI,CAAC,CAAC;IAuB3D,CAAC;IAGD,KAAK,CAAC,iBAAiB,CAAC,EAAU,EAAE,uBAA4B,EAAE,SAAkC,EAAE,OAAY;QAChH,IAAI,CAAC;YAGH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC;gBACrD,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,eAAe,EAAE;gBACzC,SAAS,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;aAC5B,CAAC,CAAA;YACF,MAAM,SAAS,GAAG,SAAS,EAAE,YAAY,CAAC;YAC1C,MAAM,iBAAiB,GAAG,SAAS,CAAC;YACpC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC7C,MAAM,cAAc,GAAG,SAAS,EAAE,cAAc,CAAC;YACjD,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,EAAE,EAAE,uBAAuB,EAAE,OAAO,CAAC,CAAC;YACzM,IAAI,CAAC,uBAAuB,CAAC,EAAE,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;YACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;YACtE,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;YAClD,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC;QACjE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,uBAAuB,CAAC,EAAE,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACrE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,kBAAkB,CAAC,EAAU,EAAE,uBAA4B,EAAE,SAAkC,EAAE,OAAY;QACjH,IAAI,CAAC;YAGH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC;gBACrD,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,eAAe,EAAE;gBACzC,SAAS,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;aAC5B,CAAC,CAAA;YACF,MAAM,SAAS,GAAG,SAAS,EAAE,YAAY,CAAC;YAC1C,MAAM,iBAAiB,GAAG,SAAS,CAAC;YACpC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC7C,MAAM,cAAc,GAAG,SAAS,EAAE,cAAc,CAAC;YACjD,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,EAAE,EAAE,uBAAuB,EAAE,OAAO,CAAC,CAAC;YAGzM,MAAM,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,iBAAiB,EAAE,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC;YACpH,IAAI,CAAC,uBAAuB,CAAC,EAAE,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,uBAAuB,CAAC,EAAE,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACrE,MAAM,KAAK,CAAC;QAEd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,qBAAqB,CAAC,EAAU;QAC5C,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YAC7B,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;YACjB,SAAS,EAAE,EAAE,cAAc,EAAE,EAAE,aAAa,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;SACnE,CACA,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,uBAAuB,CAAC,EAAU,EAAE,MAAc,EAAE,KAAc;QAC9E,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IAChD,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,SAAiB,EAAE,YAAoB,EAAE,MAAW,EAAE,SAAc,EAAE,cAAsB,EAAE,EAAU,EAAE,iBAAsB,EAAE,OAAY;QAMjL,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAG,IAAA,kBAAQ,EAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAEzF,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;QAKxB,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAMhG,IAAI,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;QAC/E,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;IACjE,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,cAAsB,EAAE,eAA0E;QAC9H,IAAI,YAAY,GAAG,IAAI,CAAC;QACxB,QAAQ,cAAc,EAAE,CAAC;YACvB,KAAK,YAAY,CAAC,KAAK;gBACrB,YAAY,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;gBAC7F,MAAM;YACR,KAAK,YAAY,CAAC,GAAG;gBACnB,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC;gBACzF,MAAM;YACR;gBACE,MAAM,IAAI,KAAK,CAAC,+BAAc,CAAC,cAAc,CAAC,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC;QAC9E,CAAC;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,YAAsB,EAAE,iBAAoC,EAAE,QAAgB;QAC5G,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YAC1D,KAAK,EAAE;gBACL,IAAI,EAAE,cAAc;gBACpB,KAAK,EAAE;oBACL,YAAY,EAAE,mBAAmB;iBAClC;aACF;YACD,SAAS,EAAE,CAAC,OAAO,EAAE,sBAAsB,CAAC;SAC7C,CAAC,CAAC;QAEH,MAAM,uBAAuB,GAAG,sBAAsB,CAAC,oBAAoB,CAAC;QAG5E,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,IAAgC,CAAC;QAGrF,MAAM,eAAe,GAAG,MAAM,IAAA,+CAAuB,EAAC,IAAI,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;QAG3F,MAAM,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,EAAE,iBAAiB,EAAE,sBAAsB,CAAC,CAAA;IAC3G,CAAC;IAEO,WAAW,CAAC,YAAoB,EAAE,qBAA6B,EAAE,UAAkB;QACzF,MAAM,SAAS,GAAG,CAAC,UAAU,KAAK,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QACvE,OAAO,GAAG,IAAA,mBAAS,EAAC,YAAY,CAAC,IAAI,qBAAqB,IAAI,SAAS,EAAE,CAAC;IAC5E,CAAC;IAEO,WAAW,CAAC,UAAkB;QACpC,OAAO,CAAC,UAAU,KAAK,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,mEAAmE,CAAC,CAAC,CAAC,UAAU,CAAC;IAChI,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,MAAW,EAAE,YAAkC,EAAE,aAAkB,EAAE,OAAY;QAEhH,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,kBAAkB,CAC7E,aAAa,CAAC,YAAY,CAC3B,CAAC;QAGF,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CACnD,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CACxB,CAAC;QAGF,MAAM,uBAAuB,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC1D,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;YAChC,IAAI,KAAK,CAAC,YAAY,IAAI,KAAK,CAAC,2BAA2B,EAAE,CAAC;gBAC5D,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC;oBAChE,KAAK,EAAE,EAAE,YAAY,EAAE,KAAK,CAAC,2BAA2B,EAAE;oBAC1D,SAAS,EAAE,CAAC,cAAc,CAAC;iBAC5B,CAAC,CAAC;gBAEH,IAAI,oBAAoB,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;oBAC7C,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,oBAAoB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBAClF,CAAC;YACH,CAAC;QACH,CAAC;QAGD,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAkB,CAAC;QACzD,KAAK,MAAM,KAAK,IAAI,WAAW,IAAI,EAAE,EAAE,CAAC;YACtC,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBACf,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;QAGD,OAAO,KAAK,EAAE,UAAkB,EAAE,SAAiB,EAAE,EAAE;YACrD,MAAM,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;YACtC,MAAM,eAAe,GAAmB;gBACtC,KAAK,EAAE,SAAS;gBAChB,MAAM;gBAEN,QAAQ,EAAE,WAAW;qBAClB,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,IAAI,CAAC;qBAC3C,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aAC3B,CAAC;YACF,MAAM,cAAc,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;YAErD,IAAI,cAAc,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7D,eAAe,CAAC,OAAO,GAAG,cAAc,CAAC;YAC3C,CAAC;YAED,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;YACnC,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAA2B,EAAE,EAAE;gBACjE,MAAM,SAAS,GAAwB,EAAE,CAAC;gBAG1C,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;oBAChC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;wBAExB,MAAM,UAAU,GAAG,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC;wBACxE,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC;wBAE/D,IAAI,CAAC,SAAS,EAAE,IAAI,KAAK,UAAU,IAAI,SAAS,EAAE,IAAI,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;4BACzF,SAAS,CAAC,UAAU,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;wBACrE,CAAC;6BAAM,CAAC;4BACN,SAAS,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBAC7C,CAAC;oBACH,CAAC;gBACH,CAAC;gBAGD,KAAK,MAAM,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,IAAI,uBAAuB,CAAC,OAAO,EAAE,EAAE,CAAC;oBACrF,MAAM,WAAW,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;oBAC7C,MAAM,UAAU,GAAG,sBAAsB,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,gBAAgB,CAAC;oBAEpF,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;wBAE/B,MAAM,MAAM,GAAG,WAAW;6BACvB,GAAG,CAAC,IAAI,CAAC,EAAE;4BACV,MAAM,GAAG,GAAG,IAAI,EAAE,CAAC,gBAAgB,CAAC,CAAC;4BAErC,MAAM,gBAAgB,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,gBAAgB,CAAC,CAAC;4BAC5E,IAAI,CAAC,gBAAgB,EAAE,IAAI,KAAK,UAAU,IAAI,gBAAgB,EAAE,IAAI,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;gCACxF,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;4BACrC,CAAC;4BACD,OAAO,GAAG,CAAC;wBACb,CAAC,CAAC;6BACD,MAAM,CAAC,OAAO,CAAC,CAAC;wBACnB,SAAS,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC5C,CAAC;yBAAM,IAAI,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;wBAC1D,IAAI,GAAG,GAAG,WAAW,EAAE,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC;wBAClD,MAAM,gBAAgB,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,gBAAgB,CAAC,CAAC;wBAC5E,IAAI,CAAC,gBAAgB,EAAE,IAAI,KAAK,UAAU,IAAI,gBAAgB,EAAE,IAAI,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;4BACxF,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;wBACpC,CAAC;wBACD,SAAS,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC;oBAC9B,CAAC;yBAAM,CAAC;wBACN,SAAS,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;oBAC/B,CAAC;gBACH,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC,CAAC,CAAC;YACH,OAAO,cAAc,CAAA;QACvB,CAAC,CAAA;IACH,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,IAAyC;QACnD,MAAM,GAAG,GAAG,IAAI,0DAA0B,CAAC,IAAI,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,MAAM,IAAA,0BAAQ,EAAC,GAAG,CAAC,CAAC;QACnC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;YAC5C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;CACF,CAAA;AAjRY,4DAAwB;mCAAxB,wBAAwB;IADpC,IAAA,mBAAU,GAAE;IAKR,WAAA,IAAA,6BAAmB,GAAE,CAAA;qCACE,uBAAa;QAGtB,2DAA2B;QACd,iDAAsB;QAC3B,4BAAY;QACd,wBAAU;QAMX,mDAAuB;QACf,mDAAuB;QAC/B,gBAAS;QACgB,0DAA0B;GApB9D,wBAAwB,CAiRpC;AAED,SAAS,oBAAoB,CAAC,GAAQ;IACpC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,GAAG;aACP,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,CAAC;aACnD,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAC/B,CAAC;SAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACnD,MAAM,MAAM,GAAQ,EAAE,CAAC;QACvB,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;YACvB,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC1C,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;gBAEjD,IACE,CAAC,OAAO,YAAY,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;oBAC1E,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;oBACxD,OAAO,YAAY,KAAK,QAAQ,EAChC,CAAC;oBACD,MAAM,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC","sourcesContent":["import { Injectable, Logger } from '@nestjs/common';\nimport { ModuleRef } from \"@nestjs/core\";\nimport { InjectEntityManager } from '@nestjs/typeorm';\nimport { EntityManager } from 'typeorm';\n\nimport { CRUDService } from 'src/services/crud.service';\n\n\nimport { classify, dasherize } from '@angular-devkit/core/src/utils/strings';\nimport { InstanceWrapper } from '@nestjs/core/injector/instance-wrapper';\nimport { validate } from 'class-validator';\nimport { BasicFilterDto } from 'src/dtos/basic-filters.dto';\nimport { CreateExportTransactionDto } from 'src/dtos/create-export-transaction.dto';\nimport { MediaStorageProviderType } from 'src/dtos/create-media-storage-provider-metadata.dto';\nimport { FieldMetadata } from 'src/entities/field-metadata.entity';\nimport { Readable } from 'stream';\nimport { ExportTransaction } from '../entities/export-transaction.entity';\nimport { CsvService } from './csv.service';\nimport { ExcelService } from './excel.service';\nimport { getMediaStorageProvider } from './mediaStorageProviders';\nimport { SolidIntrospectService } from './solid-introspect.service';\nimport { UpdateExportTemplateDto } from 'src/dtos/update-export-template.dto';\nimport { ERROR_MESSAGES } from 'src/constants/error-messages';\nimport { ModelMetadataHelperService } from 'src/helpers/model-metadata-helper.service';\nimport { ExportTransactionRepository } from 'src/repository/export-transaction.repository';\nimport { FieldMetadataRepository } from 'src/repository/field-metadata.repository';\nimport { ModelMetadataRepository } from 'src/repository/model-metadata.repository';\n\nconst EXPORT_CHUNK_SIZE = 100;\nenum ExportStatus {\n STARTED = 'started',\n COMPLETED = 'completed',\n FAILED = 'failed',\n}\n\nenum ExportFormat {\n CSV = 'csv',\n EXCEL = 'excel',\n}\n\nexport interface ExportTransactionFileInfo {\n exportStream: Readable;\n fileName: string;\n mimeType: string;\n exportTransaction: ExportTransaction;\n}\n\n@Injectable()\nexport class ExportTransactionService extends CRUDService<ExportTransaction> {\n private logger = new Logger(ExportTransactionService.name);\n\n constructor(\n @InjectEntityManager()\n readonly entityManager: EntityManager,\n // @InjectRepository(ExportTransaction, 'default')\n // readonly repo: Repository<ExportTransaction>,\n readonly repo: ExportTransactionRepository,\n readonly introspectService: SolidIntrospectService,\n readonly excelService: ExcelService,\n readonly csvService: CsvService,\n // readonly fieldMetadataService: FieldMetadataService,\n // @InjectRepository(FieldMetadata, 'default')\n // readonly fieldRepo: Repository<FieldMetadata>,\n // @InjectRepository(ModelMetadata, 'default')\n // readonly modelMetadataRepo: Repository<ModelMetadata>,\n readonly fieldRepo: FieldMetadataRepository,\n readonly modelMetadataRepo: ModelMetadataRepository,\n readonly moduleRef: ModuleRef,\n private readonly modelMetadataHelperService: ModelMetadataHelperService,\n\n ) {\n super(entityManager, repo, 'exportTransaction', 'solid-core', moduleRef);\n }\n\n // Return the export stream\n async triggerExportSync(id: number, exportTransactionEntity: any, updateDto: UpdateExportTemplateDto, filters: any): Promise<ExportTransactionFileInfo> {\n try {\n // const loadedExportTransaction = await this.loadExportTransaction(id);\n // from updateDto, get modelId and get modelMetadata\n const modeldata = await this.modelMetadataRepo.findOne({\n where: { id: updateDto?.modelMetadataId },\n relations: { fields: true },\n })\n const modelName = modeldata?.singularName;\n const modelTemplateName = modelName;\n const fields = JSON.parse(updateDto?.fields);\n const templateFormat = updateDto?.templateFormat;\n const { exportStream, templateName, uuid, exportTransaction } = await this.getExportStreamDetails(modelName, modelTemplateName, fields, modeldata, templateFormat, id, exportTransactionEntity, filters);\n this.updateExportTransaction(id, ExportStatus.COMPLETED);\n const fileName = this.getFileName(templateName, uuid, templateFormat);\n const mimeType = this.getMimeType(templateFormat);\n return { exportStream, fileName, mimeType, exportTransaction };\n } catch (error) {\n this.updateExportTransaction(id, ExportStatus.FAILED, error.message);\n throw error;\n }\n }\n\n // Store the export stream using the appropriate storage provider\n async triggerExportAsync(id: number, exportTransactionEntity: any, updateDto: UpdateExportTemplateDto, filters: any): Promise<void> {\n try {\n // const loadedExportTransaction = await this.loadExportTransaction(id)\n // from updateDto, get modelId and get modelMetadata\n const modeldata = await this.modelMetadataRepo.findOne({\n where: { id: updateDto?.modelMetadataId },\n relations: { fields: true },\n })\n const modelName = modeldata?.singularName;\n const modelTemplateName = modelName;\n const fields = JSON.parse(updateDto?.fields);\n const templateFormat = updateDto?.templateFormat;\n const { exportStream, templateName, uuid, exportTransaction } = await this.getExportStreamDetails(modelName, modelTemplateName, fields, modeldata, templateFormat, id, exportTransactionEntity, filters);\n // const fileFormat = loadedExportTransaction.exportTemplate.templateFormat;\n // Store the file using the appropriate storage provider\n await this.storeExportStream(exportStream, exportTransaction, this.getFileName(templateName, uuid, templateFormat));\n this.updateExportTransaction(id, ExportStatus.COMPLETED);\n } catch (error) {\n this.updateExportTransaction(id, ExportStatus.FAILED, error.message);\n throw error;\n\n }\n }\n\n private async loadExportTransaction(id: number) {\n return await this.repo.findOne({\n where: { id: id },\n relations: { exportTemplate: { modelMetadata: { fields: true } } },\n }\n );\n }\n\n private async updateExportTransaction(id: number, status: string, error?: string) {\n await this.repo.update(id, { status, error });\n }\n\n private async getExportStreamDetails(modelName: string, templateName: string, fields: any, modelData: any, templateFormat: string, id: number, exportTransaction: any, filters: any) {\n // Get the columns which need to be exported & the model id\n // const fields = JSON.parse(exportTransaction.exportTemplate.fields);\n\n // // Get the appropriate service for the model by trying to fetch a model service matching a particular name\n // const modelName = exportTransaction.exportTemplate.modelMetadata.singularName;\n const modelService = this.introspectService.getProvider(`${classify(modelName)}Service`);\n // const templateName = exportTransaction.exportTemplate.templateName;\n const uuid = String(id); //TODO can be renamed to exportTransactionUUID\n // const modelData = exportTransaction.exportTemplate.modelMetadata;\n\n // Get the data records function\n //const dataRecordsFunc = await this.getDataRecordsFunc(fields, modelService,modelData, filters);\n const dataRecordsFunc = await this.getDataRecordsFunc(fields, modelService, modelData, filters);\n\n // Get the export passthru stream (since it is a passthru stream, nothing is stored in memory & it is streamed directly when the stream is read)\n // let exportStream = await this.getExportStream(exportTransaction.exportTemplate.templateFormat, dataRecordsFunc);\n // return { exportStream, templateName, uuid, exportTransaction };\n\n let exportStream = await this.getExportStream(templateFormat, dataRecordsFunc);\n return { exportStream, templateName, uuid, exportTransaction };\n }\n\n private async getExportStream(templateFormat: string, dataRecordsFunc: (chunkIndex: number, chunkSize: number) => Promise<any[]>) {\n let exportStream = null;\n switch (templateFormat) {\n case ExportFormat.EXCEL:\n exportStream = await this.excelService.createExcelStream(dataRecordsFunc, EXPORT_CHUNK_SIZE);\n break;\n case ExportFormat.CSV:\n exportStream = await this.csvService.createCsvStream(dataRecordsFunc, EXPORT_CHUNK_SIZE);\n break;\n default:\n throw new Error(ERROR_MESSAGES.INVALID_FORMAT('export' + templateFormat));\n }\n return exportStream;\n }\n\n private async storeExportStream(exportStream: Readable, exportTransaction: ExportTransaction, fileName: string) {\n const exportedFileMediaField = await this.fieldRepo.findOne({\n where: {\n name: 'exportedFile',\n model: {\n singularName: 'exportTransaction'\n },\n },\n relations: ['model', 'mediaStorageProvider'],\n });\n // const storageProvider = new FileStorageProvider<ExportTransaction>(this.configService, this.fileService, this.mediaService);\n const storageProviderMetadata = exportedFileMediaField.mediaStorageProvider;\n\n // // Use the storage provider metadata to get the appropriate storage provider implementation\n const storageProviderType = storageProviderMetadata.type as MediaStorageProviderType;\n\n // // Get the storage provider implementation\n const storageProvider = await getMediaStorageProvider(this.moduleRef, storageProviderType);\n\n //Commented the below code since we will be direclty images from server on call from ui \n await storageProvider.storeStreams([[exportStream, fileName]], exportTransaction, exportedFileMediaField)\n }\n\n private getFileName(templateName: string, exportTransactionUUID: string, fileFormat: string): string {\n const extension = (fileFormat === ExportFormat.EXCEL) ? 'xlsx' : 'csv';\n return `${dasherize(templateName)}-${exportTransactionUUID}.${extension}`;\n }\n\n private getMimeType(fileFormat: string): string {\n return (fileFormat === ExportFormat.EXCEL) ? 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' : 'text/csv';\n }\n\n private async getDataRecordsFunc(fields: any, modelService: InstanceWrapper<any>, modelMetadata: any, filters: any): Promise<(chunkIndex: number, chunkSize: number) => Promise<any[]>> {\n //Load all possible fields for the model\n const allModelFields = await this.modelMetadataHelperService.loadFieldHierarchy(\n modelMetadata.singularName,\n );\n\n // Filter only the fields requested in the export payload\n const modelFields = allModelFields.filter((f: any) =>\n fields.includes(f.name),\n );\n\n //Get the model metadata of relation field with userKey details\n const relatedModelsUserKeyMap = new Map<string, string>();\n for (const field of modelFields) {\n if (field.relationType && field.relationCoModelSingularName) {\n const relatedModelMetadata = await this.modelMetadataRepo.findOne({\n where: { singularName: field.relationCoModelSingularName },\n relations: ['userKeyField'],\n });\n\n if (relatedModelMetadata?.userKeyField?.name) {\n relatedModelsUserKeyMap.set(field.name, relatedModelMetadata.userKeyField.name);\n }\n }\n }\n\n // Build fieldName -> displayName map\n const fieldNameToDisplayName = new Map<string, string>();\n for (const field of modelFields || []) {\n if (field.name) {\n fieldNameToDisplayName.set(field.name, field.displayName ?? field.name);\n }\n }\n\n\n return async (chunkIndex: number, chunkSize: number) => {\n const offset = chunkIndex * chunkSize;\n const recordFilterDto: BasicFilterDto = {\n limit: chunkSize,\n offset,\n //only contains relational fields (so TypeORM includes relations in the result).\n populate: modelFields\n .filter((f: any) => f.relationType !== null)\n .map((f: any) => f.name),\n };\n const cleanedFilters = cleanNullsFromObject(filters);\n\n if (cleanedFilters && Object.keys(cleanedFilters).length > 0) {\n recordFilterDto.filters = cleanedFilters;\n }\n\n const data = await modelService.instance.find(recordFilterDto);\n const records = data.records ?? [];\n const cleanedRecords = records.map((record: Record<string, any>) => {\n const newRecord: Record<string, any> = {};\n\n // Include non-relational fields\n for (const field of modelFields) {\n if (!field.relationType) {\n // newRecord[field.name] = record[field.name];\n const displayKey = fieldNameToDisplayName.get(field.name) ?? field.name;\n const fieldMeta = modelFields.find(f => f.name === field.name);\n\n if ((fieldMeta?.type === 'datetime' || fieldMeta?.type === 'date') && record[field.name]) {\n newRecord[displayKey] = new Date(record[field.name]).toISOString();\n } else {\n newRecord[displayKey] = record[field.name];\n }\n }\n }\n\n // Include userKey from each related field (with displayName)\n for (const [relatedFieldName, userKeyFieldName] of relatedModelsUserKeyMap.entries()) {\n const relatedData = record[relatedFieldName];\n const displayKey = fieldNameToDisplayName.get(relatedFieldName) ?? relatedFieldName;\n\n if (Array.isArray(relatedData)) {\n // For many-to-many or one-to-many\n const values = relatedData\n .map(item => {\n const val = item?.[userKeyFieldName];\n // Convert datetime to ISO if needed\n const relatedFieldMeta = modelFields.find(f => f.name === relatedFieldName);\n if ((relatedFieldMeta?.type === 'datetime' || relatedFieldMeta?.type === 'date') && val) {\n return new Date(val).toISOString();\n }\n return val;\n })\n .filter(Boolean);\n newRecord[displayKey] = values.join(', ');\n } else if (relatedData && typeof relatedData === 'object') {\n let val = relatedData?.[userKeyFieldName] ?? null;\n const relatedFieldMeta = modelFields.find(f => f.name === relatedFieldName);\n if ((relatedFieldMeta?.type === 'datetime' || relatedFieldMeta?.type === 'date') && val) {\n val = new Date(val).toISOString();\n }\n newRecord[displayKey] = val;\n } else {\n newRecord[displayKey] = null;\n }\n }\n return newRecord;\n });\n return cleanedRecords\n }\n }\n\n async toDto(data: Partial<CreateExportTransactionDto>): Promise<CreateExportTransactionDto> {\n const dto = new CreateExportTransactionDto(data);\n const errors = await validate(dto);\n if (errors.length > 0) {\n console.error(\"Validation failed:\", errors);\n return null;\n }\n return dto;\n }\n}\n\nfunction cleanNullsFromObject(obj: any): any {\n if (Array.isArray(obj)) {\n return obj\n .filter(item => item !== null && item !== undefined)\n .map(cleanNullsFromObject);\n } else if (typeof obj === 'object' && obj !== null) {\n const newObj: any = {};\n for (const key in obj) {\n const value = obj[key];\n if (value !== null && value !== undefined) {\n const cleanedValue = cleanNullsFromObject(value);\n // Only assign non-empty objects/arrays or non-null primitives\n if (\n (typeof cleanedValue === 'object' && Object.keys(cleanedValue).length > 0) ||\n (Array.isArray(cleanedValue) && cleanedValue.length > 0) ||\n typeof cleanedValue !== 'object'\n ) {\n newObj[key] = cleanedValue;\n }\n }\n }\n return newObj;\n }\n return obj;\n}\n\n"]}
|
|
1
|
+
{"version":3,"file":"export-transaction.service.js","sourceRoot":"","sources":["../../src/services/export-transaction.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { Injectable, Logger } from '@nestjs/common';\nimport { ModuleRef } from \"@nestjs/core\";\nimport { InjectEntityManager } from '@nestjs/typeorm';\nimport { EntityManager } from 'typeorm';\n\nimport { CRUDService } from 'src/services/crud.service';\n\nimport { kebabCase } from 'lodash';\nimport { classify } from '../helpers/string.helper';\nimport { InstanceWrapper } from '@nestjs/core/injector/instance-wrapper';\nimport { validate } from 'class-validator';\nimport { BasicFilterDto } from 'src/dtos/basic-filters.dto';\nimport { CreateExportTransactionDto } from 'src/dtos/create-export-transaction.dto';\nimport { MediaStorageProviderType } from 'src/dtos/create-media-storage-provider-metadata.dto';\nimport { FieldMetadata } from 'src/entities/field-metadata.entity';\nimport { Readable } from 'stream';\nimport { ExportTransaction } from '../entities/export-transaction.entity';\nimport { CsvService } from './csv.service';\nimport { ExcelService } from './excel.service';\nimport { getMediaStorageProvider } from './mediaStorageProviders';\nimport { SolidIntrospectService } from './solid-introspect.service';\nimport { UpdateExportTemplateDto } from 'src/dtos/update-export-template.dto';\nimport { ERROR_MESSAGES } from 'src/constants/error-messages';\nimport { ModelMetadataHelperService } from 'src/helpers/model-metadata-helper.service';\nimport { ExportTransactionRepository } from 'src/repository/export-transaction.repository';\nimport { FieldMetadataRepository } from 'src/repository/field-metadata.repository';\nimport { ModelMetadataRepository } from 'src/repository/model-metadata.repository';\n\nconst EXPORT_CHUNK_SIZE = 100;\nenum ExportStatus {\n STARTED = 'started',\n COMPLETED = 'completed',\n FAILED = 'failed',\n}\n\nenum ExportFormat {\n CSV = 'csv',\n EXCEL = 'excel',\n}\n\nexport interface ExportTransactionFileInfo {\n exportStream: Readable;\n fileName: string;\n mimeType: string;\n exportTransaction: ExportTransaction;\n}\n\n@Injectable()\nexport class ExportTransactionService extends CRUDService<ExportTransaction> {\n private logger = new Logger(ExportTransactionService.name);\n\n constructor(\n @InjectEntityManager()\n readonly entityManager: EntityManager,\n // @InjectRepository(ExportTransaction, 'default')\n // readonly repo: Repository<ExportTransaction>,\n readonly repo: ExportTransactionRepository,\n readonly introspectService: SolidIntrospectService,\n readonly excelService: ExcelService,\n readonly csvService: CsvService,\n // readonly fieldMetadataService: FieldMetadataService,\n // @InjectRepository(FieldMetadata, 'default')\n // readonly fieldRepo: Repository<FieldMetadata>,\n // @InjectRepository(ModelMetadata, 'default')\n // readonly modelMetadataRepo: Repository<ModelMetadata>,\n readonly fieldRepo: FieldMetadataRepository,\n readonly modelMetadataRepo: ModelMetadataRepository,\n readonly moduleRef: ModuleRef,\n private readonly modelMetadataHelperService: ModelMetadataHelperService,\n\n ) {\n super(entityManager, repo, 'exportTransaction', 'solid-core', moduleRef);\n }\n\n // Return the export stream\n async triggerExportSync(id: number, exportTransactionEntity: any, updateDto: UpdateExportTemplateDto, filters: any): Promise<ExportTransactionFileInfo> {\n try {\n // const loadedExportTransaction = await this.loadExportTransaction(id);\n // from updateDto, get modelId and get modelMetadata\n const modeldata = await this.modelMetadataRepo.findOne({\n where: { id: updateDto?.modelMetadataId },\n relations: { fields: true },\n })\n const modelName = modeldata?.singularName;\n const modelTemplateName = modelName;\n const fields = JSON.parse(updateDto?.fields);\n const templateFormat = updateDto?.templateFormat;\n const { exportStream, templateName, uuid, exportTransaction } = await this.getExportStreamDetails(modelName, modelTemplateName, fields, modeldata, templateFormat, id, exportTransactionEntity, filters);\n this.updateExportTransaction(id, ExportStatus.COMPLETED);\n const fileName = this.getFileName(templateName, uuid, templateFormat);\n const mimeType = this.getMimeType(templateFormat);\n return { exportStream, fileName, mimeType, exportTransaction };\n } catch (error) {\n this.updateExportTransaction(id, ExportStatus.FAILED, error.message);\n throw error;\n }\n }\n\n // Store the export stream using the appropriate storage provider\n async triggerExportAsync(id: number, exportTransactionEntity: any, updateDto: UpdateExportTemplateDto, filters: any): Promise<void> {\n try {\n // const loadedExportTransaction = await this.loadExportTransaction(id)\n // from updateDto, get modelId and get modelMetadata\n const modeldata = await this.modelMetadataRepo.findOne({\n where: { id: updateDto?.modelMetadataId },\n relations: { fields: true },\n })\n const modelName = modeldata?.singularName;\n const modelTemplateName = modelName;\n const fields = JSON.parse(updateDto?.fields);\n const templateFormat = updateDto?.templateFormat;\n const { exportStream, templateName, uuid, exportTransaction } = await this.getExportStreamDetails(modelName, modelTemplateName, fields, modeldata, templateFormat, id, exportTransactionEntity, filters);\n // const fileFormat = loadedExportTransaction.exportTemplate.templateFormat;\n // Store the file using the appropriate storage provider\n await this.storeExportStream(exportStream, exportTransaction, this.getFileName(templateName, uuid, templateFormat));\n this.updateExportTransaction(id, ExportStatus.COMPLETED);\n } catch (error) {\n this.updateExportTransaction(id, ExportStatus.FAILED, error.message);\n throw error;\n\n }\n }\n\n private async loadExportTransaction(id: number) {\n return await this.repo.findOne({\n where: { id: id },\n relations: { exportTemplate: { modelMetadata: { fields: true } } },\n }\n );\n }\n\n private async updateExportTransaction(id: number, status: string, error?: string) {\n await this.repo.update(id, { status, error });\n }\n\n private async getExportStreamDetails(modelName: string, templateName: string, fields: any, modelData: any, templateFormat: string, id: number, exportTransaction: any, filters: any) {\n // Get the columns which need to be exported & the model id\n // const fields = JSON.parse(exportTransaction.exportTemplate.fields);\n\n // // Get the appropriate service for the model by trying to fetch a model service matching a particular name\n // const modelName = exportTransaction.exportTemplate.modelMetadata.singularName;\n const modelService = this.introspectService.getProvider(`${classify(modelName)}Service`);\n // const templateName = exportTransaction.exportTemplate.templateName;\n const uuid = String(id); //TODO can be renamed to exportTransactionUUID\n // const modelData = exportTransaction.exportTemplate.modelMetadata;\n\n // Get the data records function\n //const dataRecordsFunc = await this.getDataRecordsFunc(fields, modelService,modelData, filters);\n const dataRecordsFunc = await this.getDataRecordsFunc(fields, modelService, modelData, filters);\n\n // Get the export passthru stream (since it is a passthru stream, nothing is stored in memory & it is streamed directly when the stream is read)\n // let exportStream = await this.getExportStream(exportTransaction.exportTemplate.templateFormat, dataRecordsFunc);\n // return { exportStream, templateName, uuid, exportTransaction };\n\n let exportStream = await this.getExportStream(templateFormat, dataRecordsFunc);\n return { exportStream, templateName, uuid, exportTransaction };\n }\n\n private async getExportStream(templateFormat: string, dataRecordsFunc: (chunkIndex: number, chunkSize: number) => Promise<any[]>) {\n let exportStream = null;\n switch (templateFormat) {\n case ExportFormat.EXCEL:\n exportStream = await this.excelService.createExcelStream(dataRecordsFunc, EXPORT_CHUNK_SIZE);\n break;\n case ExportFormat.CSV:\n exportStream = await this.csvService.createCsvStream(dataRecordsFunc, EXPORT_CHUNK_SIZE);\n break;\n default:\n throw new Error(ERROR_MESSAGES.INVALID_FORMAT('export' + templateFormat));\n }\n return exportStream;\n }\n\n private async storeExportStream(exportStream: Readable, exportTransaction: ExportTransaction, fileName: string) {\n const exportedFileMediaField = await this.fieldRepo.findOne({\n where: {\n name: 'exportedFile',\n model: {\n singularName: 'exportTransaction'\n },\n },\n relations: ['model', 'mediaStorageProvider'],\n });\n // const storageProvider = new FileStorageProvider<ExportTransaction>(this.configService, this.fileService, this.mediaService);\n const storageProviderMetadata = exportedFileMediaField.mediaStorageProvider;\n\n // // Use the storage provider metadata to get the appropriate storage provider implementation\n const storageProviderType = storageProviderMetadata.type as MediaStorageProviderType;\n\n // // Get the storage provider implementation\n const storageProvider = await getMediaStorageProvider(this.moduleRef, storageProviderType);\n\n //Commented the below code since we will be direclty images from server on call from ui \n await storageProvider.storeStreams([[exportStream, fileName]], exportTransaction, exportedFileMediaField)\n }\n\n private getFileName(templateName: string, exportTransactionUUID: string, fileFormat: string): string {\n const extension = (fileFormat === ExportFormat.EXCEL) ? 'xlsx' : 'csv';\n return `${kebabCase(templateName)}-${exportTransactionUUID}.${extension}`;\n }\n\n private getMimeType(fileFormat: string): string {\n return (fileFormat === ExportFormat.EXCEL) ? 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' : 'text/csv';\n }\n\n private async getDataRecordsFunc(fields: any, modelService: InstanceWrapper<any>, modelMetadata: any, filters: any): Promise<(chunkIndex: number, chunkSize: number) => Promise<any[]>> {\n //Load all possible fields for the model\n const allModelFields = await this.modelMetadataHelperService.loadFieldHierarchy(\n modelMetadata.singularName,\n );\n\n // Filter only the fields requested in the export payload\n const modelFields = allModelFields.filter((f: any) =>\n fields.includes(f.name),\n );\n\n //Get the model metadata of relation field with userKey details\n const relatedModelsUserKeyMap = new Map<string, string>();\n for (const field of modelFields) {\n if (field.relationType && field.relationCoModelSingularName) {\n const relatedModelMetadata = await this.modelMetadataRepo.findOne({\n where: { singularName: field.relationCoModelSingularName },\n relations: ['userKeyField'],\n });\n\n if (relatedModelMetadata?.userKeyField?.name) {\n relatedModelsUserKeyMap.set(field.name, relatedModelMetadata.userKeyField.name);\n }\n }\n }\n\n // Build fieldName -> displayName map\n const fieldNameToDisplayName = new Map<string, string>();\n for (const field of modelFields || []) {\n if (field.name) {\n fieldNameToDisplayName.set(field.name, field.displayName ?? field.name);\n }\n }\n\n return async (chunkIndex: number, chunkSize: number) => {\n const offset = chunkIndex * chunkSize;\n const recordFilterDto: BasicFilterDto = {\n limit: chunkSize,\n offset,\n //only contains relational fields (so TypeORM includes relations in the result).\n populate: modelFields\n .filter((f: any) => f.relationType !== null)\n .map((f: any) => f.name),\n };\n const cleanedFilters = cleanNullsFromObject(filters);\n\n if (cleanedFilters && Object.keys(cleanedFilters).length > 0) {\n recordFilterDto.filters = cleanedFilters;\n }\n\n const data = await modelService.instance.find(recordFilterDto);\n const records = data.records ?? [];\n const cleanedRecords = records.map((record: Record<string, any>) => {\n const newRecord: Record<string, any> = {};\n\n // Include non-relational fields\n for (const field of modelFields) {\n if (!field.relationType) {\n // newRecord[field.name] = record[field.name];\n const displayKey = fieldNameToDisplayName.get(field.name) ?? field.name;\n const fieldMeta = modelFields.find(f => f.name === field.name);\n\n if ((fieldMeta?.type === 'datetime' || fieldMeta?.type === 'date') && record[field.name]) {\n newRecord[displayKey] = new Date(record[field.name]).toISOString();\n } else {\n newRecord[displayKey] = record[field.name];\n }\n }\n }\n\n // Include userKey from each related field (with displayName)\n for (const [relatedFieldName, userKeyFieldName] of relatedModelsUserKeyMap.entries()) {\n const relatedData = record[relatedFieldName];\n const displayKey = fieldNameToDisplayName.get(relatedFieldName) ?? relatedFieldName;\n\n if (Array.isArray(relatedData)) {\n // For many-to-many or one-to-many\n const values = relatedData\n .map(item => {\n const val = item?.[userKeyFieldName];\n // Convert datetime to ISO if needed\n const relatedFieldMeta = modelFields.find(f => f.name === relatedFieldName);\n if ((relatedFieldMeta?.type === 'datetime' || relatedFieldMeta?.type === 'date') && val) {\n return new Date(val).toISOString();\n }\n return val;\n })\n .filter(Boolean);\n newRecord[displayKey] = values.join(', ');\n } else if (relatedData && typeof relatedData === 'object') {\n let val = relatedData?.[userKeyFieldName] ?? null;\n const relatedFieldMeta = modelFields.find(f => f.name === relatedFieldName);\n if ((relatedFieldMeta?.type === 'datetime' || relatedFieldMeta?.type === 'date') && val) {\n val = new Date(val).toISOString();\n }\n newRecord[displayKey] = val;\n } else {\n newRecord[displayKey] = null;\n }\n }\n return newRecord;\n });\n return cleanedRecords\n }\n }\n\n async toDto(data: Partial<CreateExportTransactionDto>): Promise<CreateExportTransactionDto> {\n const dto = new CreateExportTransactionDto(data);\n const errors = await validate(dto);\n if (errors.length > 0) {\n console.error(\"Validation failed:\", errors);\n return null;\n }\n return dto;\n }\n}\n\nfunction cleanNullsFromObject(obj: any): any {\n if (Array.isArray(obj)) {\n return obj\n .filter(item => item !== null && item !== undefined)\n .map(cleanNullsFromObject);\n } else if (typeof obj === 'object' && obj !== null) {\n const newObj: any = {};\n for (const key in obj) {\n const value = obj[key];\n if (value !== null && value !== undefined) {\n const cleanedValue = cleanNullsFromObject(value);\n // Only assign non-empty objects/arrays or non-null primitives\n if (\n (typeof cleanedValue === 'object' && Object.keys(cleanedValue).length > 0) ||\n (Array.isArray(cleanedValue) && cleanedValue.length > 0) ||\n typeof cleanedValue !== 'object'\n ) {\n newObj[key] = cleanedValue;\n }\n }\n }\n return newObj;\n }\n return obj;\n}\n\n"]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { OnApplicationBootstrap } from '@nestjs/common';
|
|
2
|
-
import { ModuleMetadataHelperService } from '
|
|
3
|
-
import { SolidRegistry } from '
|
|
4
|
-
import { FieldMetadataRepository } from '
|
|
2
|
+
import { ModuleMetadataHelperService } from '../helpers/module-metadata-helper.service';
|
|
3
|
+
import { SolidRegistry } from '../helpers/solid-registry';
|
|
4
|
+
import { FieldMetadataRepository } from '../repository/field-metadata.repository';
|
|
5
5
|
import { DataSource, Repository } from 'typeorm';
|
|
6
6
|
import { BasicFilterDto } from '../dtos/basic-filters.dto';
|
|
7
7
|
import { CreateFieldMetadataDto, MSSQLType, PSQLType } from '../dtos/create-field-metadata.dto';
|
|
@@ -11,8 +11,8 @@ import { FieldMetadata } from '../entities/field-metadata.entity';
|
|
|
11
11
|
import { ModelMetadata } from '../entities/model-metadata.entity';
|
|
12
12
|
import { ISelectionProviderValues } from '../interfaces';
|
|
13
13
|
import { CrudHelperService } from './crud-helper.service';
|
|
14
|
-
import { ResolveS3UrlDto } from '
|
|
15
|
-
import { MediaStorageProviderMetadataRepository } from '
|
|
14
|
+
import { ResolveS3UrlDto } from '../dtos/resolve-s3-url.dto';
|
|
15
|
+
import { MediaStorageProviderMetadataRepository } from '../repository/media-storage-provider-metadata.repository';
|
|
16
16
|
import { S3FileService } from './file';
|
|
17
17
|
export declare class FieldMetadataService implements OnApplicationBootstrap {
|
|
18
18
|
private readonly fieldMetadataRepo;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-metadata.service.d.ts","sourceRoot":"","sources":["../../src/services/field-metadata.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAyC,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAG/F,OAAO,EAAE,2BAA2B,EAAE,MAAM,4CAA4C,CAAC;AACzF,OAAO,EAAyB,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAClF,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,UAAU,EAAsB,MAAM,SAAS,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAuC,sBAAsB,EAA8C,SAAS,EAAE,QAAQ,EAAoD,MAAM,mCAAmC,CAAC;AACnO,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAwB,MAAM,eAAe,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAG1D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,sCAAsC,EAAE,MAAM,2DAA2D,CAAC;AACnH,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"field-metadata.service.d.ts","sourceRoot":"","sources":["../../src/services/field-metadata.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -50,7 +50,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
50
50
|
var FieldMetadataService_1;
|
|
51
51
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
52
52
|
exports.FieldMetadataService = void 0;
|
|
53
|
-
const
|
|
53
|
+
const string_helper_1 = require("../helpers/string.helper");
|
|
54
54
|
const common_1 = require("@nestjs/common");
|
|
55
55
|
const typeorm_1 = require("@nestjs/typeorm");
|
|
56
56
|
const fs = __importStar(require("fs/promises"));
|
|
@@ -111,8 +111,8 @@ let FieldMetadataService = FieldMetadataService_1 = class FieldMetadataService {
|
|
|
111
111
|
const inverseField = {
|
|
112
112
|
...field,
|
|
113
113
|
name: fieldName,
|
|
114
|
-
displayName: (0,
|
|
115
|
-
description: (0,
|
|
114
|
+
displayName: (0, string_helper_1.classify)(fieldName),
|
|
115
|
+
description: (0, string_helper_1.classify)(fieldName),
|
|
116
116
|
type: create_field_metadata_dto_1.SolidFieldType.relation,
|
|
117
117
|
isSystem: field.isSystem,
|
|
118
118
|
relationType: create_field_metadata_dto_1.RelationType.oneToMany,
|
|
@@ -139,8 +139,8 @@ let FieldMetadataService = FieldMetadataService_1 = class FieldMetadataService {
|
|
|
139
139
|
const inverseField = {
|
|
140
140
|
...field,
|
|
141
141
|
name: fieldName,
|
|
142
|
-
displayName: (0,
|
|
143
|
-
description: (0,
|
|
142
|
+
displayName: (0, string_helper_1.classify)(fieldName),
|
|
143
|
+
description: (0, string_helper_1.classify)(fieldName),
|
|
144
144
|
type: create_field_metadata_dto_1.SolidFieldType.relation,
|
|
145
145
|
isSystem: field.isSystem,
|
|
146
146
|
relationType: create_field_metadata_dto_1.RelationType.manyToOne,
|
|
@@ -167,8 +167,8 @@ let FieldMetadataService = FieldMetadataService_1 = class FieldMetadataService {
|
|
|
167
167
|
const inverseFieldManyToMany = {
|
|
168
168
|
...field,
|
|
169
169
|
name: fieldName,
|
|
170
|
-
displayName: (0,
|
|
171
|
-
description: (0,
|
|
170
|
+
displayName: (0, string_helper_1.classify)(fieldName),
|
|
171
|
+
description: (0, string_helper_1.classify)(fieldName),
|
|
172
172
|
type: create_field_metadata_dto_1.SolidFieldType.relation,
|
|
173
173
|
isSystem: field.isSystem,
|
|
174
174
|
relationType: create_field_metadata_dto_1.RelationType.manyTomany,
|