@solidxai/core 0.1.10-beta.25 → 0.1.10-beta.27
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/ai-interaction-cleanup.sql +53 -0
- package/dist/controllers/action-metadata.controller.d.ts +1 -20
- package/dist/controllers/action-metadata.controller.d.ts.map +1 -1
- package/dist/controllers/agent-event.controller.d.ts +1 -20
- package/dist/controllers/agent-event.controller.d.ts.map +1 -1
- package/dist/controllers/agent-session.controller.d.ts +1 -20
- package/dist/controllers/agent-session.controller.d.ts.map +1 -1
- package/dist/controllers/chatter-message-details.controller.d.ts +1 -20
- package/dist/controllers/chatter-message-details.controller.d.ts.map +1 -1
- package/dist/controllers/chatter-message.controller.d.ts +1 -20
- package/dist/controllers/chatter-message.controller.d.ts.map +1 -1
- package/dist/controllers/dashboard-user-layout.controller.d.ts +1 -20
- package/dist/controllers/dashboard-user-layout.controller.d.ts.map +1 -1
- package/dist/controllers/email-template.controller.d.ts +1 -20
- package/dist/controllers/email-template.controller.d.ts.map +1 -1
- package/dist/controllers/export-template.controller.d.ts +1 -20
- package/dist/controllers/export-template.controller.d.ts.map +1 -1
- package/dist/controllers/export-transaction.controller.d.ts +1 -20
- package/dist/controllers/export-transaction.controller.d.ts.map +1 -1
- package/dist/controllers/import-transaction-error-log.controller.d.ts +1 -20
- package/dist/controllers/import-transaction-error-log.controller.d.ts.map +1 -1
- package/dist/controllers/import-transaction.controller.d.ts +1 -20
- package/dist/controllers/import-transaction.controller.d.ts.map +1 -1
- package/dist/controllers/list-of-values.controller.d.ts +1 -20
- package/dist/controllers/list-of-values.controller.d.ts.map +1 -1
- package/dist/controllers/locale.controller.d.ts +1 -20
- package/dist/controllers/locale.controller.d.ts.map +1 -1
- package/dist/controllers/mcp-audit-log.controller.d.ts +1 -20
- package/dist/controllers/mcp-audit-log.controller.d.ts.map +1 -1
- package/dist/controllers/media.controller.d.ts +1 -20
- package/dist/controllers/media.controller.d.ts.map +1 -1
- package/dist/controllers/menu-item-metadata.controller.d.ts +1 -20
- package/dist/controllers/menu-item-metadata.controller.d.ts.map +1 -1
- package/dist/controllers/model-metadata.controller.d.ts +10 -30
- package/dist/controllers/model-metadata.controller.d.ts.map +1 -1
- package/dist/controllers/model-metadata.controller.js +2 -2
- package/dist/controllers/model-sequence.controller.d.ts +1 -20
- package/dist/controllers/model-sequence.controller.d.ts.map +1 -1
- package/dist/controllers/module-metadata-explorer.controller.d.ts +171 -0
- package/dist/controllers/module-metadata-explorer.controller.d.ts.map +1 -0
- package/dist/controllers/module-metadata-explorer.controller.js +143 -0
- package/dist/controllers/module-metadata-explorer.controller.js.map +1 -0
- package/dist/controllers/module-metadata.controller.d.ts +5 -0
- package/dist/controllers/module-metadata.controller.d.ts.map +1 -1
- package/dist/controllers/module-metadata.controller.js +12 -0
- package/dist/controllers/module-metadata.controller.js.map +1 -1
- package/dist/controllers/module-package.controller.d.ts +622 -0
- package/dist/controllers/module-package.controller.d.ts.map +1 -0
- package/dist/controllers/module-package.controller.js +150 -0
- package/dist/controllers/module-package.controller.js.map +1 -0
- package/dist/controllers/mq-message-queue.controller.d.ts +1 -20
- package/dist/controllers/mq-message-queue.controller.d.ts.map +1 -1
- package/dist/controllers/mq-message.controller.d.ts +1 -20
- package/dist/controllers/mq-message.controller.d.ts.map +1 -1
- package/dist/controllers/permission-metadata.controller.d.ts +1 -20
- package/dist/controllers/permission-metadata.controller.d.ts.map +1 -1
- package/dist/controllers/role-metadata.controller.d.ts +1 -20
- package/dist/controllers/role-metadata.controller.d.ts.map +1 -1
- package/dist/controllers/saved-filters.controller.d.ts +1 -20
- package/dist/controllers/saved-filters.controller.d.ts.map +1 -1
- package/dist/controllers/scheduled-job.controller.d.ts +1 -20
- package/dist/controllers/scheduled-job.controller.d.ts.map +1 -1
- package/dist/controllers/security-rule.controller.d.ts +1 -20
- package/dist/controllers/security-rule.controller.d.ts.map +1 -1
- package/dist/controllers/service.controller.d.ts +1 -5
- package/dist/controllers/service.controller.d.ts.map +1 -1
- package/dist/controllers/service.controller.js +6 -11
- package/dist/controllers/service.controller.js.map +1 -1
- package/dist/controllers/sms-template.controller.d.ts +1 -20
- package/dist/controllers/sms-template.controller.d.ts.map +1 -1
- package/dist/controllers/test.controller.d.ts +1 -6
- package/dist/controllers/test.controller.d.ts.map +1 -1
- package/dist/controllers/test.controller.js +2 -20
- package/dist/controllers/test.controller.js.map +1 -1
- package/dist/controllers/user-activity-history.controller.d.ts +1 -20
- package/dist/controllers/user-activity-history.controller.d.ts.map +1 -1
- package/dist/controllers/user-view-metadata.controller.d.ts +1 -20
- package/dist/controllers/user-view-metadata.controller.d.ts.map +1 -1
- package/dist/controllers/user.controller.d.ts +1 -20
- package/dist/controllers/user.controller.d.ts.map +1 -1
- package/dist/controllers/view-metadata.controller.d.ts +1 -20
- package/dist/controllers/view-metadata.controller.d.ts.map +1 -1
- package/dist/dtos/confirm-module-package-import.dto.d.ts +4 -0
- package/dist/dtos/confirm-module-package-import.dto.d.ts.map +1 -0
- package/dist/dtos/confirm-module-package-import.dto.js +34 -0
- package/dist/dtos/confirm-module-package-import.dto.js.map +1 -0
- package/dist/dtos/create-permission-metadata.dto.d.ts.map +1 -1
- package/dist/dtos/create-permission-metadata.dto.js +2 -0
- package/dist/dtos/create-permission-metadata.dto.js.map +1 -1
- package/dist/dtos/create-role-metadata.dto.d.ts +2 -0
- package/dist/dtos/create-role-metadata.dto.d.ts.map +1 -1
- package/dist/dtos/create-role-metadata.dto.js +13 -1
- package/dist/dtos/create-role-metadata.dto.js.map +1 -1
- package/dist/dtos/import-instructions.dto.d.ts +2 -0
- package/dist/dtos/import-instructions.dto.d.ts.map +1 -1
- package/dist/dtos/import-instructions.dto.js +15 -1
- package/dist/dtos/import-instructions.dto.js.map +1 -1
- package/dist/dtos/metadata-explorer-references-query.dto.d.ts +10 -0
- package/dist/dtos/metadata-explorer-references-query.dto.d.ts.map +1 -0
- package/dist/dtos/metadata-explorer-references-query.dto.js +69 -0
- package/dist/dtos/metadata-explorer-references-query.dto.js.map +1 -0
- package/dist/dtos/metadata-explorer-search-query.dto.d.ts +8 -0
- package/dist/dtos/metadata-explorer-search-query.dto.d.ts.map +1 -0
- package/dist/dtos/metadata-explorer-search-query.dto.js +55 -0
- package/dist/dtos/metadata-explorer-search-query.dto.js.map +1 -0
- package/dist/dtos/metadata-explorer-write.dto.d.ts +4 -0
- package/dist/dtos/metadata-explorer-write.dto.d.ts.map +1 -0
- package/dist/dtos/{invoke-ai-prompt.dto.js → metadata-explorer-write.dto.js} +12 -12
- package/dist/dtos/metadata-explorer-write.dto.js.map +1 -0
- package/dist/dtos/run-module-package-build.dto.d.ts +5 -0
- package/dist/dtos/run-module-package-build.dto.d.ts.map +1 -0
- package/dist/dtos/run-module-package-build.dto.js +38 -0
- package/dist/dtos/run-module-package-build.dto.js.map +1 -0
- package/dist/dtos/run-module-package-seed.dto.d.ts +4 -0
- package/dist/dtos/run-module-package-seed.dto.d.ts.map +1 -0
- package/dist/dtos/run-module-package-seed.dto.js +34 -0
- package/dist/dtos/run-module-package-seed.dto.js.map +1 -0
- package/dist/dtos/update-permission-metadata.dto.d.ts.map +1 -1
- package/dist/dtos/update-permission-metadata.dto.js +3 -1
- package/dist/dtos/update-permission-metadata.dto.js.map +1 -1
- package/dist/dtos/update-role-metadata.dto.d.ts +2 -0
- package/dist/dtos/update-role-metadata.dto.d.ts.map +1 -1
- package/dist/dtos/update-role-metadata.dto.js +13 -1
- package/dist/dtos/update-role-metadata.dto.js.map +1 -1
- package/dist/entities/action-metadata.entity.d.ts.map +1 -1
- package/dist/entities/action-metadata.entity.js +1 -0
- package/dist/entities/action-metadata.entity.js.map +1 -1
- package/dist/entities/agent-event.entity.d.ts.map +1 -1
- package/dist/entities/agent-event.entity.js +1 -0
- package/dist/entities/agent-event.entity.js.map +1 -1
- package/dist/entities/agent-session.entity.d.ts.map +1 -1
- package/dist/entities/agent-session.entity.js +1 -0
- package/dist/entities/agent-session.entity.js.map +1 -1
- package/dist/entities/chatter-message.entity.d.ts.map +1 -1
- package/dist/entities/chatter-message.entity.js +2 -0
- package/dist/entities/chatter-message.entity.js.map +1 -1
- package/dist/entities/email-template.entity.d.ts.map +1 -1
- package/dist/entities/email-template.entity.js +1 -0
- package/dist/entities/email-template.entity.js.map +1 -1
- package/dist/entities/field-metadata.entity.d.ts.map +1 -1
- package/dist/entities/field-metadata.entity.js +4 -0
- package/dist/entities/field-metadata.entity.js.map +1 -1
- package/dist/entities/list-of-values.entity.d.ts.map +1 -1
- package/dist/entities/list-of-values.entity.js +4 -0
- package/dist/entities/list-of-values.entity.js.map +1 -1
- package/dist/entities/locale.entity.d.ts.map +1 -1
- package/dist/entities/locale.entity.js +1 -0
- package/dist/entities/locale.entity.js.map +1 -1
- package/dist/entities/media.entity.d.ts.map +1 -1
- package/dist/entities/media.entity.js +1 -0
- package/dist/entities/media.entity.js.map +1 -1
- package/dist/entities/menu-item-metadata.entity.d.ts.map +1 -1
- package/dist/entities/menu-item-metadata.entity.js +2 -0
- package/dist/entities/menu-item-metadata.entity.js.map +1 -1
- package/dist/entities/model-metadata.entity.d.ts.map +1 -1
- package/dist/entities/model-metadata.entity.js +3 -0
- package/dist/entities/model-metadata.entity.js.map +1 -1
- package/dist/entities/module-metadata.entity.d.ts.map +1 -1
- package/dist/entities/module-metadata.entity.js +2 -0
- package/dist/entities/module-metadata.entity.js.map +1 -1
- package/dist/entities/permission-metadata.entity.d.ts.map +1 -1
- package/dist/entities/permission-metadata.entity.js.map +1 -1
- package/dist/entities/role-metadata.entity.d.ts +2 -0
- package/dist/entities/role-metadata.entity.d.ts.map +1 -1
- package/dist/entities/role-metadata.entity.js +10 -2
- package/dist/entities/role-metadata.entity.js.map +1 -1
- package/dist/entities/saved-filters.entity.d.ts.map +1 -1
- package/dist/entities/saved-filters.entity.js +3 -0
- package/dist/entities/saved-filters.entity.js.map +1 -1
- package/dist/entities/scheduled-job.entity.d.ts.map +1 -1
- package/dist/entities/scheduled-job.entity.js +2 -0
- package/dist/entities/scheduled-job.entity.js.map +1 -1
- package/dist/entities/security-rule.entity.d.ts.map +1 -1
- package/dist/entities/security-rule.entity.js +1 -0
- package/dist/entities/security-rule.entity.js.map +1 -1
- package/dist/entities/sms-template.entity.d.ts.map +1 -1
- package/dist/entities/sms-template.entity.js +2 -0
- package/dist/entities/sms-template.entity.js.map +1 -1
- package/dist/entities/user-activity-history.entity.d.ts.map +1 -1
- package/dist/entities/user-activity-history.entity.js +1 -0
- package/dist/entities/user-activity-history.entity.js.map +1 -1
- package/dist/entities/user.entity.d.ts.map +1 -1
- package/dist/entities/user.entity.js +2 -0
- package/dist/entities/user.entity.js.map +1 -1
- package/dist/entities/view-metadata.entity.d.ts.map +1 -1
- package/dist/entities/view-metadata.entity.js +2 -0
- package/dist/entities/view-metadata.entity.js.map +1 -1
- package/dist/helpers/command.service.js +1 -1
- package/dist/helpers/command.service.js.map +1 -1
- package/dist/helpers/module-metadata-helper.service.d.ts +2 -0
- package/dist/helpers/module-metadata-helper.service.d.ts.map +1 -1
- package/dist/helpers/module-metadata-helper.service.js +14 -12
- package/dist/helpers/module-metadata-helper.service.js.map +1 -1
- package/dist/helpers/module.helper.d.ts.map +1 -1
- package/dist/helpers/module.helper.js +6 -6
- package/dist/helpers/module.helper.js.map +1 -1
- package/dist/helpers/typeorm-migration-helpers.d.ts +12 -0
- package/dist/helpers/typeorm-migration-helpers.d.ts.map +1 -0
- package/dist/helpers/typeorm-migration-helpers.js +119 -0
- package/dist/helpers/typeorm-migration-helpers.js.map +1 -0
- package/dist/index.d.ts +8 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -5
- package/dist/index.js.map +1 -1
- package/dist/interfaces.d.ts +0 -8
- package/dist/interfaces.d.ts.map +1 -1
- package/dist/interfaces.js.map +1 -1
- package/dist/seeders/module-metadata-seeder.service.d.ts +1 -0
- package/dist/seeders/module-metadata-seeder.service.d.ts.map +1 -1
- package/dist/seeders/module-metadata-seeder.service.js +57 -38
- package/dist/seeders/module-metadata-seeder.service.js.map +1 -1
- package/dist/seeders/module-test-data.service.js +1 -1
- package/dist/seeders/module-test-data.service.js.map +1 -1
- package/dist/seeders/seed-data/solid-core-metadata.json +2674 -1913
- package/dist/services/crud-helper.service.d.ts +18 -0
- package/dist/services/crud-helper.service.d.ts.map +1 -1
- package/dist/services/crud-helper.service.js +70 -3
- package/dist/services/crud-helper.service.js.map +1 -1
- package/dist/services/crud.service.d.ts +1 -21
- package/dist/services/crud.service.d.ts.map +1 -1
- package/dist/services/crud.service.js +9 -75
- package/dist/services/crud.service.js.map +1 -1
- package/dist/services/import-transaction.service.d.ts.map +1 -1
- package/dist/services/import-transaction.service.js +6 -0
- package/dist/services/import-transaction.service.js.map +1 -1
- package/dist/services/media.service.d.ts +1 -20
- package/dist/services/media.service.d.ts.map +1 -1
- package/dist/services/mediaStorageProviders/file-s3-storage-provider.d.ts.map +1 -1
- package/dist/services/mediaStorageProviders/file-s3-storage-provider.js +31 -2
- package/dist/services/mediaStorageProviders/file-s3-storage-provider.js.map +1 -1
- package/dist/services/mediaStorageProviders/file-storage-provider.d.ts.map +1 -1
- package/dist/services/mediaStorageProviders/file-storage-provider.js +5 -1
- package/dist/services/mediaStorageProviders/file-storage-provider.js.map +1 -1
- package/dist/services/model-metadata.service.d.ts +15 -30
- package/dist/services/model-metadata.service.d.ts.map +1 -1
- package/dist/services/model-metadata.service.js +249 -29
- package/dist/services/model-metadata.service.js.map +1 -1
- package/dist/services/module-metadata-explorer.service.d.ts +161 -0
- package/dist/services/module-metadata-explorer.service.d.ts.map +1 -0
- package/dist/services/module-metadata-explorer.service.js +485 -0
- package/dist/services/module-metadata-explorer.service.js.map +1 -0
- package/dist/services/module-metadata.service.d.ts +7 -0
- package/dist/services/module-metadata.service.d.ts.map +1 -1
- package/dist/services/module-metadata.service.js +121 -2
- package/dist/services/module-metadata.service.js.map +1 -1
- package/dist/services/module-package.service.d.ts +266 -0
- package/dist/services/module-package.service.d.ts.map +1 -0
- package/dist/services/module-package.service.js +980 -0
- package/dist/services/module-package.service.js.map +1 -0
- package/dist/solid-core.module.d.ts.map +1 -1
- package/dist/solid-core.module.js +10 -31
- package/dist/solid-core.module.js.map +1 -1
- package/dist/subscribers/scheduled-job.subscriber.js +1 -1
- package/dist/subscribers/scheduled-job.subscriber.js.map +1 -1
- package/dist/subscribers/security-rule.subscriber.js +1 -1
- package/dist/subscribers/security-rule.subscriber.js.map +1 -1
- package/package.json +5 -4
- package/src/controllers/module-metadata-explorer.controller.ts +83 -0
- package/src/controllers/module-metadata.controller.ts +6 -0
- package/src/controllers/module-package.controller.ts +102 -0
- package/src/controllers/service.controller.ts +4 -7
- package/src/controllers/test.controller.ts +0 -9
- package/src/dtos/confirm-module-package-import.dto.ts +12 -0
- package/src/dtos/create-permission-metadata.dto.ts +3 -0
- package/src/dtos/create-role-metadata.dto.ts +11 -1
- package/src/dtos/import-instructions.dto.ts +11 -1
- package/src/dtos/metadata-explorer-references-query.dto.ts +39 -0
- package/src/dtos/metadata-explorer-search-query.dto.ts +28 -0
- package/src/dtos/metadata-explorer-write.dto.ts +11 -0
- package/src/dtos/run-module-package-build.dto.ts +14 -0
- package/src/dtos/run-module-package-seed.dto.ts +12 -0
- package/src/dtos/update-permission-metadata.dto.ts +4 -1
- package/src/dtos/update-role-metadata.dto.ts +21 -1
- package/src/entities/action-metadata.entity.ts +1 -0
- package/src/entities/agent-event.entity.ts +1 -0
- package/src/entities/agent-session.entity.ts +1 -0
- package/src/entities/chatter-message.entity.ts +2 -0
- package/src/entities/email-template.entity.ts +1 -0
- package/src/entities/field-metadata.entity.ts +4 -1
- package/src/entities/list-of-values.entity.ts +5 -1
- package/src/entities/locale.entity.ts +1 -0
- package/src/entities/media.entity.ts +1 -0
- package/src/entities/menu-item-metadata.entity.ts +2 -0
- package/src/entities/model-metadata.entity.ts +3 -0
- package/src/entities/module-metadata.entity.ts +2 -0
- package/src/entities/permission-metadata.entity.ts +2 -2
- package/src/entities/role-metadata.entity.ts +11 -3
- package/src/entities/saved-filters.entity.ts +3 -0
- package/src/entities/scheduled-job.entity.ts +2 -0
- package/src/entities/security-rule.entity.ts +1 -0
- package/src/entities/sms-template.entity.ts +2 -0
- package/src/entities/user-activity-history.entity.ts +1 -0
- package/src/entities/user.entity.ts +2 -0
- package/src/entities/view-metadata.entity.ts +2 -0
- package/src/helpers/command.service.ts +1 -1
- package/src/helpers/module-metadata-helper.service.ts +19 -21
- package/src/helpers/module.helper.ts +12 -9
- package/src/helpers/typeorm-migration-helpers.ts +163 -0
- package/src/index.ts +8 -5
- package/src/interfaces.ts +0 -8
- package/src/seeders/module-metadata-seeder.service.ts +63 -38
- package/src/seeders/module-test-data.service.ts +1 -1
- package/src/seeders/seed-data/solid-core-metadata.json +2675 -1914
- package/src/services/crud-helper.service.ts +81 -3
- package/src/services/crud.service.ts +11 -104
- package/src/services/dashboard-providers/README.md +1 -1
- package/src/services/import-transaction.service.ts +11 -1
- package/src/services/mediaStorageProviders/file-s3-storage-provider.ts +37 -2
- package/src/services/mediaStorageProviders/file-storage-provider.ts +5 -1
- package/src/services/model-metadata.service.ts +302 -98
- package/src/services/module-metadata-explorer.service.ts +670 -0
- package/src/services/module-metadata.service.ts +136 -10
- package/src/services/module-package.service.ts +1171 -0
- package/src/solid-core.module.ts +10 -33
- package/src/subscribers/scheduled-job.subscriber.ts +1 -1
- package/src/subscribers/security-rule.subscriber.ts +1 -1
- package/dist/commands/ingest.command.d.ts +0 -16
- package/dist/commands/ingest.command.d.ts.map +0 -1
- package/dist/commands/ingest.command.js +0 -50
- package/dist/commands/ingest.command.js.map +0 -1
- package/dist/controllers/ai-interaction.controller.d.ts +0 -48
- package/dist/controllers/ai-interaction.controller.d.ts.map +0 -1
- package/dist/controllers/ai-interaction.controller.js +0 -218
- package/dist/controllers/ai-interaction.controller.js.map +0 -1
- package/dist/dtos/create-ai-interaction.dto.d.ts +0 -23
- package/dist/dtos/create-ai-interaction.dto.d.ts.map +0 -1
- package/dist/dtos/create-ai-interaction.dto.js +0 -149
- package/dist/dtos/create-ai-interaction.dto.js.map +0 -1
- package/dist/dtos/invoke-ai-prompt.dto.d.ts +0 -5
- package/dist/dtos/invoke-ai-prompt.dto.d.ts.map +0 -1
- package/dist/dtos/invoke-ai-prompt.dto.js.map +0 -1
- package/dist/dtos/update-ai-interaction.dto.d.ts +0 -24
- package/dist/dtos/update-ai-interaction.dto.d.ts.map +0 -1
- package/dist/dtos/update-ai-interaction.dto.js +0 -150
- package/dist/dtos/update-ai-interaction.dto.js.map +0 -1
- package/dist/entities/ai-interaction.entity.d.ts +0 -24
- package/dist/entities/ai-interaction.entity.d.ts.map +0 -1
- package/dist/entities/ai-interaction.entity.js +0 -116
- package/dist/entities/ai-interaction.entity.js.map +0 -1
- package/dist/jobs/database/trigger-mcp-client-publisher-database.service.d.ts +0 -11
- package/dist/jobs/database/trigger-mcp-client-publisher-database.service.d.ts.map +0 -1
- package/dist/jobs/database/trigger-mcp-client-publisher-database.service.js +0 -39
- package/dist/jobs/database/trigger-mcp-client-publisher-database.service.js.map +0 -1
- package/dist/jobs/database/trigger-mcp-client-queue-options.d.ts +0 -8
- package/dist/jobs/database/trigger-mcp-client-queue-options.d.ts.map +0 -1
- package/dist/jobs/database/trigger-mcp-client-queue-options.js +0 -10
- package/dist/jobs/database/trigger-mcp-client-queue-options.js.map +0 -1
- package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.d.ts +0 -25
- package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.d.ts.map +0 -1
- package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.js +0 -222
- package/dist/jobs/database/trigger-mcp-client-subscriber-database.service.js.map +0 -1
- package/dist/jobs/rabbitmq/trigger-mcp-client-publisher.service.d.ts +0 -11
- package/dist/jobs/rabbitmq/trigger-mcp-client-publisher.service.d.ts.map +0 -1
- package/dist/jobs/rabbitmq/trigger-mcp-client-publisher.service.js +0 -39
- package/dist/jobs/rabbitmq/trigger-mcp-client-publisher.service.js.map +0 -1
- package/dist/jobs/rabbitmq/trigger-mcp-client-queue-options.d.ts +0 -8
- package/dist/jobs/rabbitmq/trigger-mcp-client-queue-options.d.ts.map +0 -1
- package/dist/jobs/rabbitmq/trigger-mcp-client-queue-options.js +0 -10
- package/dist/jobs/rabbitmq/trigger-mcp-client-queue-options.js.map +0 -1
- package/dist/jobs/rabbitmq/trigger-mcp-client-subscriber.service.d.ts +0 -18
- package/dist/jobs/rabbitmq/trigger-mcp-client-subscriber.service.d.ts.map +0 -1
- package/dist/jobs/rabbitmq/trigger-mcp-client-subscriber.service.js +0 -103
- package/dist/jobs/rabbitmq/trigger-mcp-client-subscriber.service.js.map +0 -1
- package/dist/jobs/redis/trigger-mcp-client-publisher-redis.service.d.ts +0 -11
- package/dist/jobs/redis/trigger-mcp-client-publisher-redis.service.d.ts.map +0 -1
- package/dist/jobs/redis/trigger-mcp-client-publisher-redis.service.js +0 -39
- package/dist/jobs/redis/trigger-mcp-client-publisher-redis.service.js.map +0 -1
- package/dist/jobs/redis/trigger-mcp-client-queue-options-redis.d.ts +0 -8
- package/dist/jobs/redis/trigger-mcp-client-queue-options-redis.d.ts.map +0 -1
- package/dist/jobs/redis/trigger-mcp-client-queue-options-redis.js +0 -10
- package/dist/jobs/redis/trigger-mcp-client-queue-options-redis.js.map +0 -1
- package/dist/jobs/redis/trigger-mcp-client-subscriber-redis.service.d.ts +0 -18
- package/dist/jobs/redis/trigger-mcp-client-subscriber-redis.service.d.ts.map +0 -1
- package/dist/jobs/redis/trigger-mcp-client-subscriber-redis.service.js +0 -103
- package/dist/jobs/redis/trigger-mcp-client-subscriber-redis.service.js.map +0 -1
- package/dist/repository/ai-interaction.repository.d.ts +0 -12
- package/dist/repository/ai-interaction.repository.d.ts.map +0 -1
- package/dist/repository/ai-interaction.repository.js +0 -34
- package/dist/repository/ai-interaction.repository.js.map +0 -1
- package/dist/services/ai-interaction.service.d.ts +0 -23
- package/dist/services/ai-interaction.service.d.ts.map +0 -1
- package/dist/services/ai-interaction.service.js +0 -217
- package/dist/services/ai-interaction.service.js.map +0 -1
- package/dist/services/database/database-bootstrap.service.d.ts +0 -12
- package/dist/services/database/database-bootstrap.service.d.ts.map +0 -1
- package/dist/services/database/database-bootstrap.service.js +0 -115
- package/dist/services/database/database-bootstrap.service.js.map +0 -1
- package/dist/services/genai/ingest-metadata.service.d.ts +0 -38
- package/dist/services/genai/ingest-metadata.service.d.ts.map +0 -1
- package/dist/services/genai/ingest-metadata.service.js +0 -542
- package/dist/services/genai/ingest-metadata.service.js.map +0 -1
- package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.d.ts +0 -9
- package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.d.ts.map +0 -1
- package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.js +0 -39
- package/dist/services/genai/mcp-handlers/mcp-handler-factory.service.js.map +0 -1
- package/dist/services/genai/r2r-helper.service.d.ts +0 -9
- package/dist/services/genai/r2r-helper.service.d.ts.map +0 -1
- package/dist/services/genai/r2r-helper.service.js +0 -40
- package/dist/services/genai/r2r-helper.service.js.map +0 -1
- package/sql/default/mariadb/proc_CleanupModelMetadata.sql +0 -153
- package/sql/default/mariadb/proc_CleanupModuleMetadata.sql +0 -56
- package/sql/default/mssql/proc_CleanupModuleMetadata.sql +0 -78
- package/sql/default/mysql/proc_CleanupModelMetadata.sql +0 -153
- package/sql/default/mysql/proc_CleanupModuleMetadata.sql +0 -56
- package/sql/default/postgres/proc_CleanupModelMetadata.sql +0 -148
- package/sql/default/postgres/proc_CleanupModuleMetadata.sql +0 -50
- package/sql/default/postgres/scratchpad.sql.txt +0 -12
- package/src/commands/ingest.command.ts +0 -36
- package/src/controllers/ai-interaction.controller.ts +0 -112
- package/src/dtos/create-ai-interaction.dto.ts +0 -89
- package/src/dtos/invoke-ai-prompt.dto.ts +0 -10
- package/src/dtos/update-ai-interaction.dto.ts +0 -93
- package/src/entities/ai-interaction.entity.ts +0 -71
- package/src/jobs/database/trigger-mcp-client-publisher-database.service.ts +0 -22
- package/src/jobs/database/trigger-mcp-client-queue-options.ts +0 -9
- package/src/jobs/database/trigger-mcp-client-subscriber-database.service.ts +0 -278
- package/src/jobs/rabbitmq/trigger-mcp-client-publisher.service.ts +0 -22
- package/src/jobs/rabbitmq/trigger-mcp-client-queue-options.ts +0 -9
- package/src/jobs/rabbitmq/trigger-mcp-client-subscriber.service.ts +0 -104
- package/src/jobs/redis/trigger-mcp-client-publisher-redis.service.ts +0 -23
- package/src/jobs/redis/trigger-mcp-client-queue-options-redis.ts +0 -9
- package/src/jobs/redis/trigger-mcp-client-subscriber-redis.service.ts +0 -98
- package/src/repository/ai-interaction.repository.ts +0 -17
- package/src/services/ai-interaction.service.ts +0 -239
- package/src/services/database/database-bootstrap.service.ts +0 -91
- package/src/services/genai/ingest-metadata.service.ts +0 -798
- package/src/services/genai/mcp-handlers/mcp-handler-factory.service.ts +0 -33
- package/src/services/genai/r2r-helper.service.ts +0 -37
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module-package.service.js","sourceRoot":"","sources":["../../src/services/module-package.service.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n BadRequestException,\n Injectable,\n Logger,\n NotFoundException,\n} from '@nestjs/common';\nimport { createHash } from 'crypto';\nimport archiver from 'archiver';\nimport { createWriteStream } from 'fs';\nimport { DisallowInProduction } from 'src/decorators/disallow-in-production.decorator';\nimport { ConfirmModulePackageImportDto } from 'src/dtos/confirm-module-package-import.dto';\nimport { RunModulePackageBuildDto } from 'src/dtos/run-module-package-build.dto';\nimport { RunModulePackageSeedDto } from 'src/dtos/run-module-package-seed.dto';\nimport { CommandService } from 'src/helpers/command.service';\nimport { ModuleMetadataHelperService } from 'src/helpers/module-metadata-helper.service';\nimport * as fs from 'fs/promises';\nimport * as path from 'path';\nimport { v4 as uuidv4 } from 'uuid';\n\ntype ModulePackageManifest = {\n schemaVersion: string;\n packageType: string;\n exportedAt?: string;\n generatedBy?: {\n name: string;\n version?: string;\n };\n module: {\n name: string;\n displayName?: string;\n description?: string;\n };\n contents: {\n metadataPath: string;\n apiModulePath: string;\n uiModulePath: string;\n };\n compatibility?: Record<string, unknown>;\n postImport?: Record<string, unknown>;\n checksums?: Record<string, string>;\n};\n\ntype ValidationPayload = {\n valid: boolean;\n errors: string[];\n warnings: string[];\n};\n\ntype PreviewPayload = {\n module: {\n name: string;\n displayName?: string;\n description?: string;\n };\n manifest: ModulePackageManifest;\n contentsSummary: {\n totalEntries: number;\n solidApiEntries: number;\n solidUiEntries: number;\n };\n requiredPaths: {\n metadataPath: string;\n apiModulePath: string;\n uiModulePath: string;\n };\n conflicts: string[];\n fileTree: string[];\n nextActions: string[];\n};\n\ntype ParsedArchive = {\n entries: string[];\n archiveRootPrefix: string | null;\n manifest: ModulePackageManifest;\n metadataDocument: any;\n validation: ValidationPayload;\n preview: PreviewPayload;\n};\n\ntype ModulePackageStatusFile = {\n transactionKey: string;\n status: string;\n currentStep: string;\n moduleName: string | null;\n moduleDisplayName: string | null;\n archiveFileName: string | null;\n archiveFilePath: string | null;\n extractDirPath: string | null;\n archiveRootPrefix: string | null;\n manifest: ModulePackageManifest | null;\n metadataDocument: any;\n preview: PreviewPayload | null;\n validation: ValidationPayload | null;\n conflicts: string[];\n outputs: {\n import: string | null;\n build: string | null;\n seed: string | null;\n };\n errorMessage: string | null;\n createdAt: string;\n updatedAt: string;\n};\n\ntype ModulePackageExportFile = {\n fileName: string;\n filePath: string;\n mimeType: string;\n};\n\ntype ModulePackageRuntimeCleanupResult = {\n runtimeRoot: string;\n removedImportTransactions: number;\n removedExportTransactions: number;\n removedImportLooseEntries: number;\n removedExportLooseEntries: number;\n clearedActiveTransactionPointer: boolean;\n clearedAt: string;\n};\n\ntype ModulePackageActiveTransactionFile = {\n transactionKey: string;\n updatedAt: string;\n};\n\nenum ModulePackageStatus {\n uploaded = 'uploaded',\n validated = 'validated',\n awaiting_confirmation = 'awaiting_confirmation',\n import_running = 'import_running',\n awaiting_restart = 'awaiting_restart',\n build_running = 'build_running',\n build_failed = 'build_failed',\n build_succeeded = 'build_succeeded',\n seed_running = 'seed_running',\n seed_failed = 'seed_failed',\n completed = 'completed',\n failed = 'failed',\n}\n\n@Injectable()\nexport class ModulePackageService {\n private readonly logger = new Logger(ModulePackageService.name);\n private static readonly SUPPORTED_SCHEMA_VERSION = '1.0';\n private static readonly SUPPORTED_PACKAGE_TYPE = 'solidx-module';\n\n constructor(\n private readonly commandService: CommandService,\n private readonly moduleMetadataHelperService: ModuleMetadataHelperService,\n ) { }\n\n @DisallowInProduction()\n async validateUpload(file: Express.Multer.File) {\n if (!file) {\n throw new BadRequestException('A .sldx archive file is required.');\n }\n\n await this.cleanupModulePackageTransactions();\n\n const transactionKey = uuidv4();\n const workingDir = await this.createWorkingDir(transactionKey);\n const archiveFileName = file.originalname || path.basename(file.path);\n const archiveFilePath = path.join(workingDir, archiveFileName);\n const extractDirPath = path.join(workingDir, 'extract');\n\n await fs.mkdir(extractDirPath, { recursive: true });\n await fs.rename(file.path, archiveFilePath);\n\n const parsed = await this.parseArchive(archiveFilePath);\n await this.extractArchive(archiveFilePath, extractDirPath);\n\n const transaction: ModulePackageStatusFile = {\n transactionKey,\n status: parsed.validation.valid ? ModulePackageStatus.awaiting_confirmation : ModulePackageStatus.failed,\n currentStep: 'preview',\n moduleName: parsed.manifest.module.name,\n moduleDisplayName: parsed.manifest.module.displayName ?? null,\n archiveFileName,\n archiveFilePath,\n extractDirPath,\n archiveRootPrefix: parsed.archiveRootPrefix,\n manifest: parsed.manifest,\n metadataDocument: parsed.metadataDocument,\n preview: parsed.preview,\n validation: parsed.validation,\n conflicts: parsed.preview.conflicts,\n outputs: {\n import: null,\n build: null,\n seed: null,\n },\n errorMessage: parsed.validation.valid ? null : parsed.validation.errors.join('\\n'),\n createdAt: new Date().toISOString(),\n updatedAt: new Date().toISOString(),\n };\n\n await this.writeStatusFile(transactionKey, transaction);\n return this.toStatusResponse(transaction);\n }\n\n async getStatus(transactionKey: string) {\n const transaction = await this.loadTransaction(transactionKey);\n return this.toStatusResponse(transaction);\n }\n\n @DisallowInProduction()\n async getLatestResumableImport() {\n await this.cleanupModulePackageTransactions();\n const transaction = await this.resolveLatestResumableTransaction();\n return transaction ? this.toStatusResponse(transaction) : null;\n }\n\n @DisallowInProduction()\n async dismissImport(transactionKey: string) {\n const transaction = await this.loadTransaction(transactionKey);\n await this.clearActiveTransactionIfMatches(transaction.transactionKey);\n return this.toStatusResponse(transaction);\n }\n\n @DisallowInProduction()\n async clearPackageRuntime(): Promise<ModulePackageRuntimeCleanupResult> {\n const runtimeRoot = this.getModulePackageRuntimeRoot();\n const importsRoot = this.getModulePackageImportsRoot();\n const exportsRoot = this.getModulePackageExportsRoot();\n const snapshot = await this.collectRuntimeCleanupSnapshot();\n\n await fs.rm(runtimeRoot, { recursive: true, force: true });\n await fs.mkdir(importsRoot, { recursive: true });\n await fs.mkdir(exportsRoot, { recursive: true });\n\n return {\n runtimeRoot,\n ...snapshot,\n clearedAt: new Date().toISOString(),\n };\n }\n\n @DisallowInProduction()\n async exportModulePackage(moduleNameInput: string): Promise<ModulePackageExportFile> {\n const moduleName = (moduleNameInput ?? '').trim();\n if (!moduleName) {\n throw new BadRequestException('A module name is required to export a module package.');\n }\n\n const solidApiModulePath = this.getSolidApiModuleTargetPath(moduleName);\n const solidUiModulePath = this.getSolidUiModuleTargetPath(moduleName);\n const metadataFilePath = await this.moduleMetadataHelperService.getModuleMetadataFilePath(moduleName);\n\n await this.assertPathExists(solidApiModulePath, 'solid-api module path');\n await this.assertPathExists(solidUiModulePath, 'solid-ui module path');\n await this.assertPathExists(metadataFilePath, 'module metadata file');\n\n const metadataDocument = this.parseMetadataDocument(\n await fs.readFile(metadataFilePath, 'utf-8'),\n [],\n );\n\n const transactionKey = uuidv4();\n const exportRoot = path.join(this.getModulePackageExportsRoot(), transactionKey);\n const stagingDir = path.join(exportRoot, 'staging');\n const archiveFileName = `${moduleName}.sldx`;\n const archiveFilePath = path.join(exportRoot, archiveFileName);\n\n await fs.mkdir(path.join(stagingDir, 'solid-api', 'src'), { recursive: true });\n await fs.mkdir(path.join(stagingDir, 'solid-ui', 'src'), { recursive: true });\n\n await fs.cp(solidApiModulePath, path.join(stagingDir, 'solid-api', 'src', moduleName), { recursive: true });\n await fs.cp(solidUiModulePath, path.join(stagingDir, 'solid-ui', 'src', moduleName), { recursive: true });\n\n const manifest = await this.buildExportManifest(moduleName, metadataDocument, stagingDir);\n await fs.writeFile(\n path.join(stagingDir, 'manifest.json'),\n JSON.stringify(manifest, null, 2),\n 'utf-8',\n );\n\n await this.createArchiveFromDirectory(stagingDir, archiveFilePath);\n\n return {\n fileName: archiveFileName,\n filePath: archiveFilePath,\n mimeType: 'application/zip',\n };\n }\n\n @DisallowInProduction()\n async confirmImport(transactionKey: string, dto: ConfirmModulePackageImportDto = {}) {\n const transaction = await this.loadTransaction(transactionKey);\n const preview = transaction.preview;\n const validation = transaction.validation;\n\n if (!preview || !validation) {\n throw new BadRequestException('The module package transaction is missing preview or validation data.');\n }\n\n if (!validation.valid) {\n throw new BadRequestException({\n message: 'The uploaded module package is invalid and cannot be imported.',\n validation,\n });\n }\n\n const overwriteExisting = dto.overwriteExisting ?? false;\n if (preview.conflicts.length > 0 && !overwriteExisting) {\n throw new BadRequestException({\n message: 'Conflicts were detected. Re-submit with overwriteExisting=true to continue.',\n conflicts: preview.conflicts,\n });\n }\n\n transaction.status = ModulePackageStatus.import_running;\n transaction.currentStep = 'import';\n transaction.errorMessage = null;\n await this.writeStatusFile(transactionKey, transaction);\n\n try {\n const moduleName = preview.module.name;\n const solidApiTarget = this.getSolidApiModuleTargetPath(moduleName);\n const solidUiTarget = this.getSolidUiModuleTargetPath(moduleName);\n const extractRoot = transaction.archiveRootPrefix\n ? path.join(transaction.extractDirPath as string, transaction.archiveRootPrefix.replace(/\\/$/, ''))\n : transaction.extractDirPath as string;\n const solidApiSource = path.join(extractRoot, 'solid-api', 'src', moduleName);\n const solidUiSource = path.join(extractRoot, 'solid-ui', 'src', moduleName);\n\n await this.assertPathExists(solidApiSource, 'solid-api module source');\n await this.assertPathExists(solidUiSource, 'solid-ui module source');\n\n if (overwriteExisting) {\n await fs.rm(solidApiTarget, { recursive: true, force: true });\n await fs.rm(solidUiTarget, { recursive: true, force: true });\n }\n\n await fs.mkdir(path.dirname(solidApiTarget), { recursive: true });\n await fs.mkdir(path.dirname(solidUiTarget), { recursive: true });\n\n await fs.cp(solidApiSource, solidApiTarget, { recursive: true, force: overwriteExisting });\n await fs.cp(solidUiSource, solidUiTarget, { recursive: true, force: overwriteExisting });\n\n if (transaction.extractDirPath) {\n await fs.rm(transaction.extractDirPath, { recursive: true, force: true });\n transaction.extractDirPath = null;\n }\n\n transaction.status = ModulePackageStatus.awaiting_restart;\n transaction.currentStep = 'restart';\n transaction.outputs.import = [\n `Placed solid-api module at ${solidApiTarget}`,\n `Placed solid-ui module at ${solidUiTarget}`,\n `Metadata file placed at ${preview.requiredPaths.metadataPath}`,\n ].join('\\n');\n await this.writeStatusFile(transactionKey, transaction);\n await this.syncActiveTransactionPointer(transaction);\n\n return this.toStatusResponse(transaction);\n } catch (error: any) {\n transaction.status = ModulePackageStatus.failed;\n transaction.currentStep = 'import';\n transaction.errorMessage = error.message ?? 'Failed to import the module package.';\n await this.writeStatusFile(transactionKey, transaction);\n await this.syncActiveTransactionPointer(transaction);\n throw error;\n }\n }\n\n @DisallowInProduction()\n async runBuild(transactionKey: string, dto: RunModulePackageBuildDto = {}) {\n const transaction = await this.loadTransaction(transactionKey);\n transaction.status = ModulePackageStatus.build_running;\n transaction.currentStep = 'build';\n transaction.errorMessage = null;\n await this.writeStatusFile(transactionKey, transaction);\n\n try {\n const buildSolidApi = dto.buildSolidApi ?? true;\n const buildSolidUi = dto.buildSolidUi ?? true;\n const outputs: string[] = [];\n const failedTargets: string[] = [];\n const projectRoot = this.getProjectRoot();\n\n if (buildSolidApi) {\n try {\n const output = await this.commandService.executeCommandWithArgs({\n command: 'npx',\n args: ['-y', '@solidxai/solidctl@latest', 'build'],\n cwd: projectRoot,\n });\n outputs.push(`solidctl build [success]\\n${output}`.trim());\n } catch (error: any) {\n failedTargets.push('solidctl build');\n outputs.push(`solidctl build [failed]\\n${error?.message ?? 'Build failed.'}`.trim());\n }\n }\n\n if (buildSolidUi) {\n try {\n const output = await this.commandService.executeCommandWithArgs({\n command: 'npx',\n args: ['-y', '@solidxai/solidctl@latest', 'build', '--ui-only'],\n cwd: projectRoot,\n });\n outputs.push(`solidctl build --ui-only [success]\\n${output}`.trim());\n } catch (error: any) {\n failedTargets.push('solidctl build --ui-only');\n outputs.push(`solidctl build --ui-only [failed]\\n${error?.message ?? 'Build failed.'}`.trim());\n }\n }\n\n transaction.status = failedTargets.length > 0\n ? ModulePackageStatus.build_failed\n : ModulePackageStatus.build_succeeded;\n transaction.currentStep = 'build';\n transaction.outputs.build = outputs.join('\\n\\n');\n transaction.errorMessage = failedTargets.length > 0\n ? `Build completed with errors in: ${failedTargets.join(', ')}`\n : null;\n await this.writeStatusFile(transactionKey, transaction);\n await this.syncActiveTransactionPointer(transaction);\n\n return this.toStatusResponse(transaction);\n } catch (error: any) {\n transaction.status = ModulePackageStatus.build_failed;\n transaction.currentStep = 'build';\n transaction.errorMessage = error.message ?? 'Build failed.';\n transaction.outputs.build = error.message ?? '';\n await this.writeStatusFile(transactionKey, transaction);\n await this.syncActiveTransactionPointer(transaction);\n throw error;\n }\n }\n\n @DisallowInProduction()\n async runSeed(transactionKey: string, dto: RunModulePackageSeedDto = {}) {\n const transaction = await this.loadTransaction(transactionKey);\n const moduleName = transaction.moduleName;\n\n if (!moduleName) {\n throw new BadRequestException('Unable to seed because the transaction is missing moduleName.');\n }\n\n transaction.status = ModulePackageStatus.seed_running;\n transaction.currentStep = 'seed';\n transaction.errorMessage = null;\n await this.writeStatusFile(transactionKey, transaction);\n\n try {\n const output = await this.commandService.executeCommandWithArgs({\n command: 'npx',\n args: ['-y', '@solidxai/solidctl@latest', 'seed', '--modules-to-seed', moduleName],\n cwd: this.getProjectRoot(),\n });\n transaction.status = ModulePackageStatus.completed;\n transaction.currentStep = 'done';\n transaction.outputs.seed = [\n `solidctl seed --modules-to-seed ${moduleName} [success]`,\n output,\n ].filter(Boolean).join('\\n');\n await this.writeStatusFile(transactionKey, transaction);\n await this.syncActiveTransactionPointer(transaction);\n\n return this.toStatusResponse(transaction);\n } catch (error: any) {\n transaction.status = ModulePackageStatus.seed_failed;\n transaction.currentStep = 'seed';\n transaction.errorMessage = error.message ?? 'Seed failed.';\n transaction.outputs.seed = error.message ?? '';\n await this.writeStatusFile(transactionKey, transaction);\n await this.syncActiveTransactionPointer(transaction);\n return this.toStatusResponse(transaction);\n }\n }\n\n private async parseArchive(archiveFilePath: string): Promise<ParsedArchive> {\n const entries = await this.listArchiveEntries(archiveFilePath);\n const archiveRootPrefix = this.detectArchiveRootPrefix(entries);\n const normalizedEntries = this.normalizeArchiveEntries(entries, archiveRootPrefix);\n const validationErrors: string[] = [];\n const validationWarnings: string[] = [];\n\n if (path.extname(archiveFilePath).toLowerCase() !== '.sldx') {\n validationErrors.push('Only .sldx archives are supported.');\n }\n\n const unsafeEntries = normalizedEntries.filter((entry) => this.isUnsafeArchivePath(entry));\n if (unsafeEntries.length > 0) {\n validationErrors.push(`Archive contains unsafe paths: ${unsafeEntries.join(', ')}`);\n }\n\n if (!normalizedEntries.includes('manifest.json')) {\n validationErrors.push('Archive is missing manifest.json at the root.');\n }\n\n const manifestArchivePath = this.toArchiveEntryPath(archiveRootPrefix, 'manifest.json');\n const manifestText = normalizedEntries.includes('manifest.json')\n ? await this.readArchiveEntry(archiveFilePath, manifestArchivePath)\n : '';\n const manifest = this.parseManifest(manifestText, validationErrors);\n\n if (!manifest) {\n return {\n entries: normalizedEntries,\n archiveRootPrefix,\n manifest: this.getFallbackManifest(),\n metadataDocument: null,\n validation: {\n valid: false,\n errors: validationErrors,\n warnings: validationWarnings,\n },\n preview: {\n module: { name: '', displayName: '' },\n manifest: this.getFallbackManifest(),\n contentsSummary: {\n totalEntries: normalizedEntries.length,\n solidApiEntries: normalizedEntries.filter((entry) => entry.startsWith('solid-api/')).length,\n solidUiEntries: normalizedEntries.filter((entry) => entry.startsWith('solid-ui/')).length,\n },\n requiredPaths: {\n metadataPath: '',\n apiModulePath: '',\n uiModulePath: '',\n },\n conflicts: [],\n fileTree: normalizedEntries,\n nextActions: ['Fix archive structure and upload again.'],\n },\n };\n }\n\n if (manifest.packageType !== ModulePackageService.SUPPORTED_PACKAGE_TYPE) {\n validationErrors.push(`manifest.json packageType must be \"${ModulePackageService.SUPPORTED_PACKAGE_TYPE}\".`);\n }\n if (manifest.schemaVersion !== ModulePackageService.SUPPORTED_SCHEMA_VERSION) {\n validationErrors.push(`manifest.json schemaVersion must be \"${ModulePackageService.SUPPORTED_SCHEMA_VERSION}\".`);\n }\n if (!manifest.module?.name) {\n validationErrors.push('manifest.json module.name is required.');\n }\n\n const moduleName = manifest.module?.name ?? '';\n const expectedPaths = this.buildExpectedPaths(moduleName);\n\n if (manifest.contents?.metadataPath !== expectedPaths.metadataPath) {\n validationErrors.push(`manifest.json contents.metadataPath must be \"${expectedPaths.metadataPath}\".`);\n }\n if (manifest.contents?.apiModulePath !== expectedPaths.apiModulePath) {\n validationErrors.push(`manifest.json contents.apiModulePath must be \"${expectedPaths.apiModulePath}\".`);\n }\n if (manifest.contents?.uiModulePath !== expectedPaths.uiModulePath) {\n validationErrors.push(`manifest.json contents.uiModulePath must be \"${expectedPaths.uiModulePath}\".`);\n }\n\n if (!normalizedEntries.includes(expectedPaths.metadataPath)) {\n validationErrors.push(`Archive is missing ${expectedPaths.metadataPath}.`);\n }\n if (!normalizedEntries.includes(expectedPaths.apiModulePath)) {\n validationErrors.push(`Archive is missing ${expectedPaths.apiModulePath}.`);\n }\n if (!normalizedEntries.includes(expectedPaths.uiModulePath)) {\n validationErrors.push(`Archive is missing ${expectedPaths.uiModulePath}.`);\n }\n\n const metadataDocument = normalizedEntries.includes(expectedPaths.metadataPath)\n ? this.parseMetadataDocument(\n await this.readArchiveEntry(archiveFilePath, this.toArchiveEntryPath(archiveRootPrefix, expectedPaths.metadataPath)),\n validationErrors,\n )\n : null;\n\n const metadataModuleName = metadataDocument?.moduleMetadata?.name;\n if (metadataModuleName && metadataModuleName !== moduleName) {\n validationErrors.push(`Metadata module name \"${metadataModuleName}\" does not match manifest module name \"${moduleName}\".`);\n }\n\n if (!manifest.checksums || Object.keys(manifest.checksums).length === 0) {\n validationWarnings.push('manifest.json does not include checksums. Checksums are recommended.');\n }\n\n const conflicts = await this.detectConflicts(moduleName);\n if (conflicts.length > 0) {\n validationWarnings.push('The target module already exists locally and will require overwrite confirmation.');\n }\n\n const validation: ValidationPayload = {\n valid: validationErrors.length === 0,\n errors: validationErrors,\n warnings: validationWarnings,\n };\n\n const preview: PreviewPayload = {\n module: manifest.module,\n manifest,\n contentsSummary: {\n totalEntries: normalizedEntries.length,\n solidApiEntries: normalizedEntries.filter((entry) => entry.startsWith('solid-api/')).length,\n solidUiEntries: normalizedEntries.filter((entry) => entry.startsWith('solid-ui/')).length,\n },\n requiredPaths: expectedPaths,\n conflicts,\n fileTree: normalizedEntries,\n nextActions: [\n 'Review archive preview.',\n 'Confirm import to place files locally.',\n 'Wait for service restart, then run build and seed.',\n ],\n };\n\n return {\n entries: normalizedEntries,\n archiveRootPrefix,\n manifest,\n metadataDocument,\n validation,\n preview,\n };\n }\n\n private parseManifest(manifestText: string, validationErrors: string[]): ModulePackageManifest | null {\n if (!manifestText) {\n return null;\n }\n\n try {\n return JSON.parse(manifestText) as ModulePackageManifest;\n } catch (error) {\n validationErrors.push('manifest.json is not valid JSON.');\n return null;\n }\n }\n\n private parseMetadataDocument(documentText: string, validationErrors: string[]) {\n try {\n return JSON.parse(documentText);\n } catch (error) {\n validationErrors.push('Module metadata JSON is not valid JSON.');\n return null;\n }\n }\n\n private async listArchiveEntries(archiveFilePath: string): Promise<string[]> {\n const output = await this.commandService.executeCommandWithArgs({\n command: 'unzip',\n args: ['-Z1', archiveFilePath],\n });\n\n return output\n .split(/\\r?\\n/)\n .map((entry) => entry.trim())\n .filter(Boolean);\n }\n\n private async readArchiveEntry(archiveFilePath: string, entryPath: string): Promise<string> {\n return this.commandService.executeCommandWithArgs({\n command: 'unzip',\n args: ['-p', archiveFilePath, entryPath],\n });\n }\n\n private async extractArchive(archiveFilePath: string, extractDirPath: string) {\n await this.commandService.executeCommandWithArgs({\n command: 'unzip',\n args: ['-o', archiveFilePath, '-d', extractDirPath],\n });\n }\n\n private async detectConflicts(moduleName: string): Promise<string[]> {\n const conflicts: string[] = [];\n const solidApiTarget = this.getSolidApiModuleTargetPath(moduleName);\n const solidUiTarget = this.getSolidUiModuleTargetPath(moduleName);\n const metadataFilePath = await this.moduleMetadataHelperService.getModuleMetadataFilePath(moduleName);\n\n if (await this.pathExists(solidApiTarget)) {\n conflicts.push(`solid-api module already exists at ${solidApiTarget}`);\n }\n if (await this.pathExists(solidUiTarget)) {\n conflicts.push(`solid-ui module already exists at ${solidUiTarget}`);\n }\n if (await this.pathExists(metadataFilePath)) {\n conflicts.push(`module metadata already exists at ${metadataFilePath}`);\n }\n\n return conflicts;\n }\n\n private buildExpectedPaths(moduleName: string) {\n return {\n metadataPath: `solid-api/src/${moduleName}/metadata/${moduleName}-metadata.json`,\n apiModulePath: `solid-api/src/${moduleName}/${moduleName}.module.ts`,\n uiModulePath: `solid-ui/src/${moduleName}/${moduleName}.ui-module.ts`,\n };\n }\n\n private detectArchiveRootPrefix(entries: string[]): string | null {\n const normalized = entries\n .map((entry) => entry.trim())\n .filter(Boolean)\n .filter((entry) => !this.isMacOsMetadataEntry(entry));\n\n if (normalized.length === 0) {\n return null;\n }\n\n const topLevelSegments = normalized\n .map((entry) => entry.split('/')[0])\n .filter(Boolean);\n\n const uniqueTopLevelSegments = Array.from(new Set(topLevelSegments));\n if (uniqueTopLevelSegments.length !== 1) {\n return null;\n }\n\n const onlySegment = uniqueTopLevelSegments[0];\n const hasNestedEntries = normalized.some((entry) => entry.startsWith(`${onlySegment}/`));\n return hasNestedEntries ? `${onlySegment}/` : null;\n }\n\n private normalizeArchiveEntries(entries: string[], archiveRootPrefix: string | null) {\n const filteredEntries = entries.filter((entry) => !this.isMacOsMetadataEntry(entry));\n\n if (!archiveRootPrefix) {\n return filteredEntries;\n }\n\n return filteredEntries\n .map((entry) => entry.startsWith(archiveRootPrefix) ? entry.slice(archiveRootPrefix.length) : entry)\n .filter(Boolean);\n }\n\n private toArchiveEntryPath(archiveRootPrefix: string | null, normalizedEntryPath: string) {\n return archiveRootPrefix ? `${archiveRootPrefix}${normalizedEntryPath}` : normalizedEntryPath;\n }\n\n private isUnsafeArchivePath(entry: string) {\n return entry.startsWith('/') || entry.includes('..') || /^[A-Za-z]:/.test(entry);\n }\n\n private isMacOsMetadataEntry(entry: string) {\n const normalizedEntry = entry.trim();\n if (!normalizedEntry) {\n return false;\n }\n\n const segments = normalizedEntry.split('/').filter(Boolean);\n return segments.some((segment) => segment === '__MACOSX' || segment.startsWith('._'));\n }\n\n private getFallbackManifest(): ModulePackageManifest {\n return {\n schemaVersion: ModulePackageService.SUPPORTED_SCHEMA_VERSION,\n packageType: ModulePackageService.SUPPORTED_PACKAGE_TYPE,\n module: { name: '', displayName: '' },\n contents: {\n metadataPath: '',\n apiModulePath: '',\n uiModulePath: '',\n },\n };\n }\n\n private async loadTransaction(transactionKey: string) {\n this.assertSafeTransactionKey(transactionKey);\n const statusFilePath = this.getStatusFilePath(transactionKey);\n\n if (!(await this.pathExists(statusFilePath))) {\n throw new NotFoundException(`Module package transaction ${transactionKey} was not found.`);\n }\n\n return JSON.parse(await fs.readFile(statusFilePath, 'utf-8')) as ModulePackageStatusFile;\n }\n\n private isResumableStatus(status: string | null | undefined) {\n return [\n ModulePackageStatus.import_running,\n ModulePackageStatus.awaiting_restart,\n ModulePackageStatus.build_running,\n ModulePackageStatus.build_failed,\n ModulePackageStatus.build_succeeded,\n ModulePackageStatus.seed_running,\n ModulePackageStatus.seed_failed,\n ].includes(status as ModulePackageStatus);\n }\n\n private async createWorkingDir(transactionKey: string) {\n const baseDir = path.join(\n this.getModulePackageImportsRoot(),\n transactionKey,\n );\n\n await fs.mkdir(baseDir, { recursive: true });\n return baseDir;\n }\n\n private getSolidApiRoot() {\n return process.cwd();\n }\n\n private getProjectRoot() {\n return path.resolve(this.getSolidApiRoot(), '..');\n }\n\n private getSolidUiRoot() {\n return path.join(this.getProjectRoot(), 'solid-ui');\n }\n\n private getModulePackageImportsRoot() {\n return path.join(\n this.getModulePackageRuntimeRoot(),\n 'module-package-imports',\n );\n }\n\n private getModulePackageExportsRoot() {\n return path.join(\n this.getModulePackageRuntimeRoot(),\n 'module-package-exports',\n );\n }\n\n private getModulePackageRuntimeRoot() {\n const configuredRuntimeRoot = process.env.SOLIDX_MODULE_PACKAGE_RUNTIME_DIR?.trim();\n\n if (configuredRuntimeRoot) {\n return path.resolve(configuredRuntimeRoot);\n }\n\n return path.join(\n this.getProjectRoot(),\n '.solidx-runtime',\n );\n }\n\n private getSolidApiModuleTargetPath(moduleName: string) {\n return path.join(this.getSolidApiRoot(), 'src', moduleName);\n }\n\n private getSolidUiModuleTargetPath(moduleName: string) {\n return path.join(this.getSolidUiRoot(), 'src', moduleName);\n }\n\n private async pathExists(targetPath: string) {\n try {\n await fs.access(targetPath);\n return true;\n } catch (error) {\n return false;\n }\n }\n\n private async assertPathExists(targetPath: string, label: string) {\n if (!(await this.pathExists(targetPath))) {\n throw new BadRequestException(`Expected ${label} at ${targetPath}, but it was not found in the extracted archive.`);\n }\n }\n\n private async readDirSafe(targetPath: string) {\n try {\n return await fs.readdir(targetPath, { withFileTypes: true });\n } catch (error) {\n return [];\n }\n }\n\n private assertSafeTransactionKey(transactionKey: string) {\n if (!/^[a-zA-Z0-9-]+$/.test(transactionKey)) {\n throw new BadRequestException('Invalid module package transaction key.');\n }\n }\n\n private getStatusFilePath(transactionKey: string) {\n this.assertSafeTransactionKey(transactionKey);\n return path.join(this.getModulePackageImportsRoot(), transactionKey, 'status.json');\n }\n\n private getActiveTransactionFilePath() {\n return path.join(this.getModulePackageImportsRoot(), 'active-transaction.json');\n }\n\n private async writeStatusFile(transactionKey: string, payload: ModulePackageStatusFile) {\n payload.updatedAt = new Date().toISOString();\n const statusFilePath = this.getStatusFilePath(transactionKey);\n await fs.mkdir(path.dirname(statusFilePath), { recursive: true });\n await fs.writeFile(statusFilePath, JSON.stringify(payload, null, 2));\n }\n\n private async markActiveTransaction(transactionKey: string) {\n const activeTransactionFilePath = this.getActiveTransactionFilePath();\n await fs.mkdir(path.dirname(activeTransactionFilePath), { recursive: true });\n const payload: ModulePackageActiveTransactionFile = {\n transactionKey,\n updatedAt: new Date().toISOString(),\n };\n await fs.writeFile(activeTransactionFilePath, JSON.stringify(payload, null, 2));\n }\n\n private async clearActiveTransactionIfMatches(transactionKey: string) {\n const activeTransaction = await this.loadActiveTransactionPointer();\n if (!activeTransaction || activeTransaction.transactionKey !== transactionKey) {\n return;\n }\n\n await fs.rm(this.getActiveTransactionFilePath(), { force: true });\n }\n\n private async loadActiveTransactionPointer(): Promise<ModulePackageActiveTransactionFile | null> {\n try {\n return JSON.parse(await fs.readFile(this.getActiveTransactionFilePath(), 'utf-8')) as ModulePackageActiveTransactionFile;\n } catch (error) {\n return null;\n }\n }\n\n private async syncActiveTransactionPointer(transaction: ModulePackageStatusFile) {\n if (this.isResumableStatus(transaction.status)) {\n await this.markActiveTransaction(transaction.transactionKey);\n return;\n }\n\n await this.clearActiveTransactionIfMatches(transaction.transactionKey);\n }\n\n private async collectRuntimeCleanupSnapshot() {\n const importEntries = await this.readDirSafe(this.getModulePackageImportsRoot());\n const exportEntries = await this.readDirSafe(this.getModulePackageExportsRoot());\n\n const importTransactionEntries = importEntries.filter(\n (entry) => entry.isDirectory() && /^[a-zA-Z0-9-]+$/.test(entry.name),\n );\n const exportTransactionEntries = exportEntries.filter(\n (entry) => entry.isDirectory() && /^[a-zA-Z0-9-]+$/.test(entry.name),\n );\n\n const importLooseEntries = importEntries.filter(\n (entry) => !(entry.isDirectory() && /^[a-zA-Z0-9-]+$/.test(entry.name)),\n );\n const exportLooseEntries = exportEntries.filter(\n (entry) => !(entry.isDirectory() && /^[a-zA-Z0-9-]+$/.test(entry.name)),\n );\n\n return {\n removedImportTransactions: importTransactionEntries.length,\n removedExportTransactions: exportTransactionEntries.length,\n removedImportLooseEntries: importLooseEntries.length,\n removedExportLooseEntries: exportLooseEntries.length,\n clearedActiveTransactionPointer: importEntries.some((entry) => entry.name === 'active-transaction.json'),\n };\n }\n\n private getCompletedTransactionRetentionMs() {\n const retentionDays = Number(process.env.SOLIDX_MODULE_PACKAGE_RETENTION_DAYS ?? 7);\n const safeDays = Number.isFinite(retentionDays) && retentionDays > 0 ? retentionDays : 7;\n return safeDays * 24 * 60 * 60 * 1000;\n }\n\n private getPendingTransactionRetentionMs() {\n const retentionHours = Number(process.env.SOLIDX_MODULE_PACKAGE_PENDING_RETENTION_HOURS ?? 24);\n const safeHours = Number.isFinite(retentionHours) && retentionHours > 0 ? retentionHours : 24;\n return safeHours * 60 * 60 * 1000;\n }\n\n private async cleanupModulePackageTransactions() {\n const importsRoot = this.getModulePackageImportsRoot();\n const activePointer = await this.loadActiveTransactionPointer();\n const now = Date.now();\n\n try {\n await fs.mkdir(importsRoot, { recursive: true });\n const entries = await fs.readdir(importsRoot, { withFileTypes: true });\n\n for (const entry of entries) {\n if (!entry.isDirectory()) {\n continue;\n }\n\n const transactionKey = entry.name;\n if (!/^[a-zA-Z0-9-]+$/.test(transactionKey)) {\n continue;\n }\n\n const statusFilePath = this.getStatusFilePath(transactionKey);\n let transaction: ModulePackageStatusFile | null = null;\n\n try {\n transaction = JSON.parse(await fs.readFile(statusFilePath, 'utf-8')) as ModulePackageStatusFile;\n } catch (error) {\n continue;\n }\n\n const updatedAtMs = transaction.updatedAt ? new Date(transaction.updatedAt).getTime() : 0;\n const ageMs = updatedAtMs > 0 ? now - updatedAtMs : Number.MAX_SAFE_INTEGER;\n const isResumable = this.isResumableStatus(transaction.status);\n const maxAgeMs = isResumable\n ? this.getPendingTransactionRetentionMs()\n : this.getCompletedTransactionRetentionMs();\n const shouldDelete = ageMs > maxAgeMs;\n\n if (!shouldDelete) {\n continue;\n }\n\n await fs.rm(path.join(importsRoot, transactionKey), { recursive: true, force: true });\n\n if (activePointer?.transactionKey === transactionKey) {\n await fs.rm(this.getActiveTransactionFilePath(), { force: true });\n }\n }\n } catch (error) {\n this.logger.warn(`Failed to clean up module package transactions: ${String(error)}`);\n }\n }\n\n private async resolveLatestResumableTransaction(): Promise<ModulePackageStatusFile | null> {\n const activePointer = await this.loadActiveTransactionPointer();\n if (activePointer?.transactionKey) {\n try {\n const activeTransaction = await this.loadTransaction(activePointer.transactionKey);\n if (this.isResumableStatus(activeTransaction.status)) {\n return activeTransaction;\n }\n\n await this.clearActiveTransactionIfMatches(activePointer.transactionKey);\n } catch (error) {\n await this.clearActiveTransactionIfMatches(activePointer.transactionKey);\n }\n }\n\n const importsRoot = this.getModulePackageImportsRoot();\n const candidates: ModulePackageStatusFile[] = [];\n\n try {\n const entries = await fs.readdir(importsRoot, { withFileTypes: true });\n\n for (const entry of entries) {\n if (!entry.isDirectory()) {\n continue;\n }\n\n const transactionKey = entry.name;\n if (!/^[a-zA-Z0-9-]+$/.test(transactionKey)) {\n continue;\n }\n\n try {\n const transaction = await this.loadTransaction(transactionKey);\n if (this.isResumableStatus(transaction.status)) {\n candidates.push(transaction);\n }\n } catch (error) {\n continue;\n }\n }\n } catch (error) {\n return null;\n }\n\n candidates.sort((left, right) => {\n const leftUpdatedAt = new Date(left.updatedAt ?? left.createdAt ?? 0).getTime();\n const rightUpdatedAt = new Date(right.updatedAt ?? right.createdAt ?? 0).getTime();\n return rightUpdatedAt - leftUpdatedAt;\n });\n\n const latest = candidates[0] ?? null;\n if (latest) {\n await this.markActiveTransaction(latest.transactionKey);\n }\n return latest;\n }\n\n private toStatusResponse(transaction: ModulePackageStatusFile) {\n return {\n transactionKey: transaction.transactionKey,\n status: transaction.status,\n currentStep: transaction.currentStep,\n moduleName: transaction.moduleName,\n moduleDisplayName: transaction.moduleDisplayName,\n archiveFileName: transaction.archiveFileName,\n manifest: transaction.manifest,\n preview: transaction.preview,\n validation: transaction.validation,\n conflicts: transaction.conflicts,\n outputs: transaction.outputs,\n errorMessage: transaction.errorMessage,\n createdAt: transaction.createdAt,\n updatedAt: transaction.updatedAt,\n };\n }\n\n private async buildExportManifest(moduleName: string, metadataDocument: any, stagingDir: string): Promise<ModulePackageManifest> {\n const expectedPaths = this.buildExpectedPaths(moduleName);\n const checksums = await this.computeDirectoryChecksums(stagingDir, ['manifest.json']);\n\n return {\n schemaVersion: ModulePackageService.SUPPORTED_SCHEMA_VERSION,\n packageType: ModulePackageService.SUPPORTED_PACKAGE_TYPE,\n exportedAt: new Date().toISOString(),\n generatedBy: {\n name: '@solidxai/core',\n },\n module: {\n name: moduleName,\n displayName: metadataDocument?.moduleMetadata?.displayName,\n description: metadataDocument?.moduleMetadata?.description,\n },\n contents: expectedPaths,\n postImport: {\n recommendedSteps: ['restart', 'build', 'seed'],\n },\n checksums,\n };\n }\n\n private async computeDirectoryChecksums(rootDir: string, excludedRelativePaths: string[] = []): Promise<Record<string, string>> {\n const excludedPaths = new Set(excludedRelativePaths.map((entry) => entry.replace(/\\\\/g, '/')));\n const filePaths = await this.collectFilePathsRecursively(rootDir);\n const checksums: Record<string, string> = {};\n\n for (const filePath of filePaths) {\n const relativePath = path.relative(rootDir, filePath).replace(/\\\\/g, '/');\n if (excludedPaths.has(relativePath)) {\n continue;\n }\n\n checksums[relativePath] = await this.computeSha256(filePath);\n }\n\n return checksums;\n }\n\n private async collectFilePathsRecursively(rootDir: string): Promise<string[]> {\n const entries = await fs.readdir(rootDir, { withFileTypes: true });\n const nestedPaths = await Promise.all(entries.map(async (entry) => {\n const entryPath = path.join(rootDir, entry.name);\n if (entry.isDirectory()) {\n return this.collectFilePathsRecursively(entryPath);\n }\n\n return [entryPath];\n }));\n\n return nestedPaths.flat();\n }\n\n private async createArchiveFromDirectory(sourceDir: string, archiveFilePath: string): Promise<void> {\n await fs.mkdir(path.dirname(archiveFilePath), { recursive: true });\n\n await new Promise<void>((resolve, reject) => {\n const output = createWriteStream(archiveFilePath);\n const archive = archiver('zip', {\n zlib: { level: 9 },\n });\n\n const rejectOnce = (error: Error) => {\n output.destroy();\n reject(error);\n };\n\n output.on('close', () => resolve());\n output.on('error', rejectOnce);\n archive.on('warning', rejectOnce);\n archive.on('error', rejectOnce);\n\n archive.pipe(output);\n archive.directory(sourceDir, false);\n void archive.finalize();\n });\n }\n\n private async computeSha256(filePath: string): Promise<string> {\n const fileBuffer = await fs.readFile(filePath);\n return createHash('sha256').update(fileBuffer).digest('hex');\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solid-core.module.d.ts","sourceRoot":"","sources":["../src/solid-core.module.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,CAAC;AAChB,OAAO,EAAU,kBAAkB,EAAU,UAAU,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"solid-core.module.d.ts","sourceRoot":"","sources":["../src/solid-core.module.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,CAAC;AAChB,OAAO,EAAU,kBAAkB,EAAU,UAAU,EAAE,MAAM,gBAAgB,CAAC;AA2XhF,qBAwda,eAAgB,YAAW,UAAU;IAChD,SAAS,CAAC,QAAQ,EAAE,kBAAkB;CAQvC"}
|
|
@@ -52,7 +52,9 @@ const field_metadata_controller_1 = require("./controllers/field-metadata.contro
|
|
|
52
52
|
const dashboard_controller_1 = require("./controllers/dashboard.controller");
|
|
53
53
|
const media_storage_provider_metadata_controller_1 = require("./controllers/media-storage-provider-metadata.controller");
|
|
54
54
|
const model_metadata_controller_1 = require("./controllers/model-metadata.controller");
|
|
55
|
+
const module_metadata_explorer_controller_1 = require("./controllers/module-metadata-explorer.controller");
|
|
55
56
|
const module_metadata_controller_1 = require("./controllers/module-metadata.controller");
|
|
57
|
+
const module_package_controller_1 = require("./controllers/module-package.controller");
|
|
56
58
|
const test_controller_1 = require("./controllers/test.controller");
|
|
57
59
|
const field_metadata_entity_1 = require("./entities/field-metadata.entity");
|
|
58
60
|
const list_of_values_entity_1 = require("./entities/list-of-values.entity");
|
|
@@ -75,7 +77,9 @@ const list_of_values_service_1 = require("./services/list-of-values.service");
|
|
|
75
77
|
const media_storage_provider_metadata_service_1 = require("./services/media-storage-provider-metadata.service");
|
|
76
78
|
const media_service_1 = require("./services/media.service");
|
|
77
79
|
const model_metadata_service_1 = require("./services/model-metadata.service");
|
|
80
|
+
const module_metadata_explorer_service_1 = require("./services/module-metadata-explorer.service");
|
|
78
81
|
const module_metadata_service_1 = require("./services/module-metadata.service");
|
|
82
|
+
const module_package_service_1 = require("./services/module-package.service");
|
|
79
83
|
const solid_introspect_service_1 = require("./services/solid-introspect.service");
|
|
80
84
|
const serve_static_1 = require("@nestjs/serve-static");
|
|
81
85
|
const path_1 = require("path");
|
|
@@ -163,8 +167,6 @@ const smtp_email_publisher_redis_service_1 = require("./jobs/redis/smtp-email-pu
|
|
|
163
167
|
const smtp_email_subscriber_redis_service_1 = require("./jobs/redis/smtp-email-subscriber-redis.service");
|
|
164
168
|
const three60_whatsapp_publisher_redis_service_1 = require("./jobs/redis/three60-whatsapp-publisher-redis.service");
|
|
165
169
|
const three60_whatsapp_subscriber_redis_service_1 = require("./jobs/redis/three60-whatsapp-subscriber-redis.service");
|
|
166
|
-
const trigger_mcp_client_publisher_redis_service_1 = require("./jobs/redis/trigger-mcp-client-publisher-redis.service");
|
|
167
|
-
const trigger_mcp_client_subscriber_redis_service_1 = require("./jobs/redis/trigger-mcp-client-subscriber-redis.service");
|
|
168
170
|
const twilio_sms_publisher_redis_service_1 = require("./jobs/redis/twilio-sms-publisher-redis.service");
|
|
169
171
|
const twilio_sms_subscriber_redis_service_1 = require("./jobs/redis/twilio-sms-subscriber-redis.service");
|
|
170
172
|
const user_registration_listener_1 = require("./listeners/user-registration.listener");
|
|
@@ -197,7 +199,6 @@ const permission_metadata_entity_1 = require("./entities/permission-metadata.ent
|
|
|
197
199
|
const permission_metadata_service_1 = require("./services/permission-metadata.service");
|
|
198
200
|
const schedule_1 = require("@nestjs/schedule");
|
|
199
201
|
const nestjs_cls_1 = require("nestjs-cls");
|
|
200
|
-
const ai_interaction_controller_1 = require("./controllers/ai-interaction.controller");
|
|
201
202
|
const chatter_message_details_controller_1 = require("./controllers/chatter-message-details.controller");
|
|
202
203
|
const chatter_message_controller_1 = require("./controllers/chatter-message.controller");
|
|
203
204
|
const export_template_controller_1 = require("./controllers/export-template.controller");
|
|
@@ -219,7 +220,6 @@ const info_service_1 = require("./services/info.service");
|
|
|
219
220
|
const user_activity_history_controller_1 = require("./controllers/user-activity-history.controller");
|
|
220
221
|
const user_view_metadata_controller_1 = require("./controllers/user-view-metadata.controller");
|
|
221
222
|
const user_controller_1 = require("./controllers/user.controller");
|
|
222
|
-
const ai_interaction_entity_1 = require("./entities/ai-interaction.entity");
|
|
223
223
|
const chatter_message_details_entity_1 = require("./entities/chatter-message-details.entity");
|
|
224
224
|
const chatter_message_entity_1 = require("./entities/chatter-message.entity");
|
|
225
225
|
const export_template_entity_1 = require("./entities/export-template.entity");
|
|
@@ -256,7 +256,6 @@ const smtp_email_publisher_database_service_1 = require("./jobs/database/smtp-em
|
|
|
256
256
|
const smtp_email_subscriber_database_service_1 = require("./jobs/database/smtp-email-subscriber-database.service");
|
|
257
257
|
const twilio_sms_publisher_database_service_1 = require("./jobs/database/twilio-sms-publisher-database.service");
|
|
258
258
|
const twilio_sms_subscriber_database_service_1 = require("./jobs/database/twilio-sms-subscriber-database.service");
|
|
259
|
-
const ingest_command_1 = require("./commands/ingest.command");
|
|
260
259
|
const mail_factory_1 = require("./factories/mail.factory");
|
|
261
260
|
const error_mapper_service_1 = require("./helpers/error-mapper.service");
|
|
262
261
|
const solid_core_error_codes_provider_service_1 = require("./helpers/solid-core-error-codes-provider.service");
|
|
@@ -266,19 +265,14 @@ const msg91_whatsapp_publisher_database_service_1 = require("./jobs/database/msg
|
|
|
266
265
|
const msg91_whatsapp_subscriber_database_service_1 = require("./jobs/database/msg91-whatsapp-subscriber-database.service");
|
|
267
266
|
const three60_whatsapp_publisher_database_service_1 = require("./jobs/database/three60-whatsapp-publisher-database.service");
|
|
268
267
|
const three60_whatsapp_subscriber_database_service_1 = require("./jobs/database/three60-whatsapp-subscriber-database.service");
|
|
269
|
-
const trigger_mcp_client_publisher_database_service_1 = require("./jobs/database/trigger-mcp-client-publisher-database.service");
|
|
270
|
-
const trigger_mcp_client_subscriber_database_service_1 = require("./jobs/database/trigger-mcp-client-subscriber-database.service");
|
|
271
268
|
const generate_code_publisher_service_1 = require("./jobs/rabbitmq/generate-code-publisher.service");
|
|
272
269
|
const generate_code_subscriber_service_1 = require("./jobs/rabbitmq/generate-code-subscriber.service");
|
|
273
270
|
const three60_whatsapp_publisher_service_1 = require("./jobs/rabbitmq/three60-whatsapp-publisher.service");
|
|
274
271
|
const three60_whatsapp_subscriber_service_1 = require("./jobs/rabbitmq/three60-whatsapp-subscriber.service");
|
|
275
|
-
const trigger_mcp_client_publisher_service_1 = require("./jobs/rabbitmq/trigger-mcp-client-publisher.service");
|
|
276
|
-
const trigger_mcp_client_subscriber_service_1 = require("./jobs/rabbitmq/trigger-mcp-client-subscriber.service");
|
|
277
272
|
const twilio_sms_publisher_service_1 = require("./jobs/rabbitmq/twilio-sms-publisher.service");
|
|
278
273
|
const twilio_sms_subscriber_service_1 = require("./jobs/rabbitmq/twilio-sms-subscriber.service");
|
|
279
274
|
const list_of_values_mapper_1 = require("./mappers/list-of-values-mapper");
|
|
280
275
|
const action_metadata_repository_1 = require("./repository/action-metadata.repository");
|
|
281
|
-
const ai_interaction_repository_1 = require("./repository/ai-interaction.repository");
|
|
282
276
|
const chatter_message_details_repository_1 = require("./repository/chatter-message-details.repository");
|
|
283
277
|
const chatter_message_repository_1 = require("./repository/chatter-message.repository");
|
|
284
278
|
const email_template_repository_1 = require("./repository/email-template.repository");
|
|
@@ -312,7 +306,6 @@ const user_repository_1 = require("./repository/user.repository");
|
|
|
312
306
|
const view_metadata_repository_1 = require("./repository/view-metadata.repository");
|
|
313
307
|
const permission_metadata_seeder_service_1 = require("./seeders/permission-metadata-seeder.service");
|
|
314
308
|
const system_fields_seeder_service_1 = require("./seeders/system-fields-seeder.service");
|
|
315
|
-
const ai_interaction_service_1 = require("./services/ai-interaction.service");
|
|
316
309
|
const chatter_message_details_service_1 = require("./services/chatter-message-details.service");
|
|
317
310
|
const chatter_message_service_1 = require("./services/chatter-message.service");
|
|
318
311
|
const concat_computed_field_provider_service_1 = require("./services/computed-fields/concat-computed-field-provider.service");
|
|
@@ -337,9 +330,6 @@ const csv_service_1 = require("./services/csv.service");
|
|
|
337
330
|
const excel_service_1 = require("./services/excel.service");
|
|
338
331
|
const export_template_service_1 = require("./services/export-template.service");
|
|
339
332
|
const export_transaction_service_1 = require("./services/export-transaction.service");
|
|
340
|
-
const ingest_metadata_service_1 = require("./services/genai/ingest-metadata.service");
|
|
341
|
-
const mcp_handler_factory_service_1 = require("./services/genai/mcp-handlers/mcp-handler-factory.service");
|
|
342
|
-
const r2r_helper_service_1 = require("./services/genai/r2r-helper.service");
|
|
343
333
|
const import_transaction_error_log_service_1 = require("./services/import-transaction-error-log.service");
|
|
344
334
|
const import_transaction_service_1 = require("./services/import-transaction.service");
|
|
345
335
|
const locale_service_1 = require("./services/locale.service");
|
|
@@ -378,7 +368,6 @@ const mcp_command_1 = require("./commands/mcp.command");
|
|
|
378
368
|
const fixtures_service_1 = require("./services/fixtures.service");
|
|
379
369
|
const fixtures_setup_command_1 = require("./commands/fixtures/fixtures-setup.command");
|
|
380
370
|
const fixtures_tear_down_command_1 = require("./commands/fixtures/fixtures-tear-down.command");
|
|
381
|
-
const database_bootstrap_service_1 = require("./services/database/database-bootstrap.service");
|
|
382
371
|
const sequence_num_computed_field_provider_1 = require("./services/computed-fields/entity/sequence-num-computed-field-provider");
|
|
383
372
|
const model_sequence_entity_1 = require("./entities/model-sequence.entity");
|
|
384
373
|
const model_sequence_service_1 = require("./services/model-sequence.service");
|
|
@@ -411,7 +400,6 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
411
400
|
imports: [
|
|
412
401
|
typeorm_1.TypeOrmModule.forFeature([
|
|
413
402
|
action_metadata_entity_1.ActionMetadata,
|
|
414
|
-
ai_interaction_entity_1.AiInteraction,
|
|
415
403
|
chatter_message_entity_1.ChatterMessage,
|
|
416
404
|
chatter_message_details_entity_1.ChatterMessageDetails,
|
|
417
405
|
email_attachment_entity_1.EmailAttachment,
|
|
@@ -475,7 +463,6 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
475
463
|
],
|
|
476
464
|
controllers: [
|
|
477
465
|
action_metadata_controller_1.ActionMetadataController,
|
|
478
|
-
ai_interaction_controller_1.AiInteractionController,
|
|
479
466
|
authentication_controller_1.AuthenticationController,
|
|
480
467
|
chatter_message_controller_1.ChatterMessageController,
|
|
481
468
|
chatter_message_details_controller_1.ChatterMessageDetailsController,
|
|
@@ -495,7 +482,9 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
495
482
|
media_storage_provider_metadata_controller_1.MediaStorageProviderMetadataController,
|
|
496
483
|
menu_item_metadata_controller_1.MenuItemMetadataController,
|
|
497
484
|
model_metadata_controller_1.ModelMetadataController,
|
|
485
|
+
module_metadata_explorer_controller_1.ModuleMetadataExplorerController,
|
|
498
486
|
module_metadata_controller_1.ModuleMetadataController,
|
|
487
|
+
module_package_controller_1.ModulePackageController,
|
|
499
488
|
mq_message_controller_1.MqMessageController,
|
|
500
489
|
mq_message_queue_controller_1.MqMessageQueueController,
|
|
501
490
|
gupshup_webhook_controller_1.GupshupWebhookController,
|
|
@@ -544,7 +533,9 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
544
533
|
useClass: http_exception_filter_1.HttpExceptionFilter,
|
|
545
534
|
},
|
|
546
535
|
module_metadata_service_1.ModuleMetadataService,
|
|
536
|
+
module_metadata_explorer_service_1.ModuleMetadataExplorerService,
|
|
547
537
|
module_metadata_helper_service_1.ModuleMetadataHelperService,
|
|
538
|
+
module_package_service_1.ModulePackageService,
|
|
548
539
|
model_metadata_service_1.ModelMetadataService,
|
|
549
540
|
model_metadata_helper_service_1.ModelMetadataHelperService,
|
|
550
541
|
field_metadata_service_1.FieldMetadataService,
|
|
@@ -556,7 +547,6 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
556
547
|
info_service_1.InfoService,
|
|
557
548
|
solid_introspect_service_1.SolidIntrospectService,
|
|
558
549
|
core_1.DiscoveryService,
|
|
559
|
-
r2r_helper_service_1.R2RHelperService,
|
|
560
550
|
crud_helper_service_1.CrudHelperService,
|
|
561
551
|
crud_service_1.CRUDService,
|
|
562
552
|
core_1.Reflector,
|
|
@@ -592,8 +582,6 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
592
582
|
test_data_command_1.TestDataCommand,
|
|
593
583
|
run_tests_command_1.TestRunCommand,
|
|
594
584
|
mcp_command_1.McpCommand,
|
|
595
|
-
ingest_command_1.IngestCommand,
|
|
596
|
-
ingest_metadata_service_1.IngestMetadataService,
|
|
597
585
|
smtp_email_service_1.SMTPEMailService,
|
|
598
586
|
elastic_email_service_1.ElasticEmailService,
|
|
599
587
|
Msg91SMSService_1.Msg91SMSService,
|
|
@@ -608,10 +596,6 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
608
596
|
poller_service_1.PollerService,
|
|
609
597
|
error_mapper_service_1.ErrorMapperService,
|
|
610
598
|
solid_core_error_codes_provider_service_1.SolidCoreErrorCodesProvider,
|
|
611
|
-
trigger_mcp_client_publisher_database_service_1.TriggerMcpClientPublisherDatabase,
|
|
612
|
-
trigger_mcp_client_subscriber_database_service_1.TriggerMcpClientSubscriberDatabase,
|
|
613
|
-
trigger_mcp_client_publisher_service_1.TriggerMcpClientPublisherRabbitmq,
|
|
614
|
-
trigger_mcp_client_subscriber_service_1.TriggerMcpClientSubscriberRabbitmq,
|
|
615
599
|
smtp_email_publisher_service_1.SmtpEmailQueuePublisherRabbitmq,
|
|
616
600
|
smtp_email_subscriber_service_1.SmtpEmailQueueSubscriberRabbitmq,
|
|
617
601
|
smtp_email_publisher_database_service_1.SmtpEmailQueuePublisherDatabase,
|
|
@@ -690,8 +674,6 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
690
674
|
smtp_email_subscriber_redis_service_1.SmtpEmailQueueSubscriberRedis,
|
|
691
675
|
three60_whatsapp_publisher_redis_service_1.Three60WhatsappQueuePublisherRedis,
|
|
692
676
|
three60_whatsapp_subscriber_redis_service_1.Three60WhatsappQueueSubscriberRedis,
|
|
693
|
-
trigger_mcp_client_publisher_redis_service_1.TriggerMcpClientPublisherRedis,
|
|
694
|
-
trigger_mcp_client_subscriber_redis_service_1.TriggerMcpClientSubscriberRedis,
|
|
695
677
|
twilio_sms_publisher_redis_service_1.TwilioSmsQueuePublisherRedis,
|
|
696
678
|
twilio_sms_subscriber_redis_service_1.TwilioSmsQueueSubscriberRedis,
|
|
697
679
|
generate_code_publisher_database_service_1.GenerateCodePublisherDatabase,
|
|
@@ -756,9 +738,7 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
756
738
|
computed_field_evaluation_subscriber_service_1.ComputedFieldEvaluationSubscriberRabbitmq,
|
|
757
739
|
concat_entity_computed_field_provider_service_1.ConcatEntityComputedFieldProvider,
|
|
758
740
|
user_activity_history_service_1.UserActivityHistoryService,
|
|
759
|
-
ai_interaction_service_1.AiInteractionService,
|
|
760
741
|
noops_entity_computed_field_provider_service_1.NoopsEntityComputedFieldProviderService,
|
|
761
|
-
mcp_handler_factory_service_1.McpHandlerFactory,
|
|
762
742
|
solid_ts_morph_service_1.SolidTsMorphService,
|
|
763
743
|
view_metadata_repository_1.ViewMetadataRepository,
|
|
764
744
|
scheduled_job_repository_1.ScheduledJobRepository,
|
|
@@ -777,7 +757,6 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
777
757
|
sms_factory_1.SmsFactory,
|
|
778
758
|
chatter_message_repository_1.ChatterMessageRepository,
|
|
779
759
|
chatter_message_details_repository_1.ChatterMessageDetailsRepository,
|
|
780
|
-
ai_interaction_repository_1.AiInteractionRepository,
|
|
781
760
|
email_template_repository_1.EmailTemplateRepository,
|
|
782
761
|
export_template_repository_1.ExportTemplateRepository,
|
|
783
762
|
export_transaction_repository_1.ExportTransactionRepository,
|
|
@@ -802,7 +781,6 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
802
781
|
fixtures_service_1.FixturesService,
|
|
803
782
|
fixtures_setup_command_1.FixturesSetupCommand,
|
|
804
783
|
fixtures_tear_down_command_1.FixturesTearDownCommand,
|
|
805
|
-
database_bootstrap_service_1.DatabaseBootstrapService,
|
|
806
784
|
sequence_num_computed_field_provider_1.SequenceNumComputedFieldProvider,
|
|
807
785
|
model_sequence_service_1.ModelSequenceService,
|
|
808
786
|
model_sequence_repository_1.ModelSequenceRepository,
|
|
@@ -814,7 +792,6 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
814
792
|
dashboard_user_layout_repository_1.DashboardUserLayoutRepository,
|
|
815
793
|
],
|
|
816
794
|
exports: [
|
|
817
|
-
ai_interaction_service_1.AiInteractionService,
|
|
818
795
|
authentication_service_1.AuthenticationService,
|
|
819
796
|
chatter_message_details_repository_1.ChatterMessageDetailsRepository,
|
|
820
797
|
chatter_message_details_service_1.ChatterMessageDetailsService,
|
|
@@ -846,6 +823,8 @@ exports.SolidCoreModule = SolidCoreModule = __decorate([
|
|
|
846
823
|
model_metadata_helper_service_1.ModelMetadataHelperService,
|
|
847
824
|
model_metadata_service_1.ModelMetadataService,
|
|
848
825
|
module_metadata_service_1.ModuleMetadataService,
|
|
826
|
+
module_metadata_explorer_service_1.ModuleMetadataExplorerService,
|
|
827
|
+
module_package_service_1.ModulePackageService,
|
|
849
828
|
mq_message_queue_service_1.MqMessageQueueService,
|
|
850
829
|
mq_message_service_1.MqMessageService,
|
|
851
830
|
Msg91OTPService_1.Msg91OTPService,
|