@solidxai/core 0.1.10-beta.9 → 0.1.11-beta.0
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/CHANGELOG.md +415 -0
- package/MICROSOFT_ACTIVE_DIRECTORY_OAUTH_FLOW.md +616 -0
- package/ai-interaction-cleanup.sql +53 -0
- package/dist/commands/info.command.d.ts.map +1 -1
- package/dist/commands/info.command.js +0 -2
- package/dist/commands/info.command.js.map +1 -1
- package/dist/commands/refresh-model.command.d.ts +1 -7
- package/dist/commands/refresh-model.command.d.ts.map +1 -1
- package/dist/commands/refresh-model.command.js +4 -49
- package/dist/commands/refresh-model.command.js.map +1 -1
- package/dist/commands/refresh-module.command.d.ts +0 -2
- package/dist/commands/refresh-module.command.d.ts.map +1 -1
- package/dist/commands/refresh-module.command.js +3 -16
- package/dist/commands/refresh-module.command.js.map +1 -1
- package/dist/commands/test-data.command.d.ts +2 -0
- package/dist/commands/test-data.command.d.ts.map +1 -1
- package/dist/commands/test-data.command.js +32 -6
- package/dist/commands/test-data.command.js.map +1 -1
- package/dist/constants/error-messages.d.ts +1 -0
- package/dist/constants/error-messages.d.ts.map +1 -1
- package/dist/constants/error-messages.js +1 -0
- package/dist/constants/error-messages.js.map +1 -1
- 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 +3 -20
- package/dist/controllers/chatter-message.controller.d.ts.map +1 -1
- package/dist/controllers/chatter-message.controller.js +17 -0
- package/dist/controllers/chatter-message.controller.js.map +1 -1
- package/dist/controllers/dashboard-user-layout.controller.d.ts +24 -0
- package/dist/controllers/dashboard-user-layout.controller.d.ts.map +1 -0
- package/dist/controllers/{dashboard-variable.controller.js → dashboard-user-layout.controller.js} +30 -30
- package/dist/controllers/dashboard-user-layout.controller.js.map +1 -0
- package/dist/controllers/dashboard.controller.d.ts +12 -42
- package/dist/controllers/dashboard.controller.d.ts.map +1 -1
- package/dist/controllers/dashboard.controller.js +71 -141
- package/dist/controllers/dashboard.controller.js.map +1 -1
- package/dist/controllers/datasource-introspection.controller.d.ts +234 -0
- package/dist/controllers/datasource-introspection.controller.d.ts.map +1 -0
- package/dist/controllers/datasource-introspection.controller.js +98 -0
- package/dist/controllers/datasource-introspection.controller.js.map +1 -0
- package/dist/controllers/datasource-management.controller.d.ts +18 -0
- package/dist/controllers/datasource-management.controller.d.ts.map +1 -0
- package/dist/controllers/datasource-management.controller.js +55 -0
- package/dist/controllers/datasource-management.controller.js.map +1 -0
- 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/gupshup-webhook.controller.d.ts +11 -0
- package/dist/controllers/gupshup-webhook.controller.d.ts.map +1 -0
- package/dist/controllers/gupshup-webhook.controller.js +87 -0
- package/dist/controllers/gupshup-webhook.controller.js.map +1 -0
- 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 +16 -0
- package/dist/controllers/mcp-audit-log.controller.d.ts.map +1 -0
- package/dist/controllers/{dashboard-question.controller.js → mcp-audit-log.controller.js} +44 -91
- package/dist/controllers/mcp-audit-log.controller.js.map +1 -0
- 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/meta-cloud-whatsapp-webhook.controller.d.ts +16 -0
- package/dist/controllers/meta-cloud-whatsapp-webhook.controller.d.ts.map +1 -0
- package/dist/controllers/meta-cloud-whatsapp-webhook.controller.js +133 -0
- package/dist/controllers/meta-cloud-whatsapp-webhook.controller.js.map +1 -0
- package/dist/controllers/microsoft-active-directory-authentication.controller.d.ts +28 -0
- package/dist/controllers/microsoft-active-directory-authentication.controller.d.ts.map +1 -0
- package/dist/controllers/microsoft-active-directory-authentication.controller.js +122 -0
- package/dist/controllers/microsoft-active-directory-authentication.controller.js.map +1 -0
- package/dist/controllers/model-metadata.controller.d.ts +11 -31
- package/dist/controllers/model-metadata.controller.d.ts.map +1 -1
- package/dist/controllers/model-metadata.controller.js +4 -4
- package/dist/controllers/model-metadata.controller.js.map +1 -1
- 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 +13 -1
- 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/decorators/dashboard-widget-data-provider.decorator.d.ts +3 -0
- package/dist/decorators/dashboard-widget-data-provider.decorator.d.ts.map +1 -0
- package/dist/decorators/dashboard-widget-data-provider.decorator.js +8 -0
- package/dist/decorators/dashboard-widget-data-provider.decorator.js.map +1 -0
- 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-dashboard-user-layout.dto.d.ts +10 -0
- package/dist/dtos/create-dashboard-user-layout.dto.d.ts.map +1 -0
- package/dist/dtos/create-dashboard-user-layout.dto.js +66 -0
- package/dist/dtos/create-dashboard-user-layout.dto.js.map +1 -0
- package/dist/dtos/create-datasource-management.dto.d.ts +25 -0
- package/dist/dtos/create-datasource-management.dto.d.ts.map +1 -0
- package/dist/dtos/create-datasource-management.dto.js +169 -0
- package/dist/dtos/create-datasource-management.dto.js.map +1 -0
- package/dist/dtos/create-mcp-audit-log.dto.d.ts +19 -0
- package/dist/dtos/create-mcp-audit-log.dto.d.ts.map +1 -0
- package/dist/dtos/create-mcp-audit-log.dto.js +118 -0
- package/dist/dtos/create-mcp-audit-log.dto.js.map +1 -0
- package/dist/dtos/create-model-metadata.dto.d.ts +2 -2
- package/dist/dtos/create-model-metadata.dto.d.ts.map +1 -1
- package/dist/dtos/create-model-metadata.dto.js +6 -11
- package/dist/dtos/create-model-metadata.dto.js.map +1 -1
- 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/dashboard-variable-options-query.dto.d.ts +7 -0
- package/dist/dtos/dashboard-variable-options-query.dto.d.ts.map +1 -0
- package/dist/dtos/dashboard-variable-options-query.dto.js +40 -0
- package/dist/dtos/dashboard-variable-options-query.dto.js.map +1 -0
- package/dist/dtos/dashboard-widget-data-request.dto.d.ts +12 -0
- package/dist/dtos/dashboard-widget-data-request.dto.d.ts.map +1 -0
- package/dist/dtos/dashboard-widget-data-request.dto.js +65 -0
- package/dist/dtos/dashboard-widget-data-request.dto.js.map +1 -0
- package/dist/dtos/datasource-introspection-mapping.dto.d.ts +45 -0
- package/dist/dtos/datasource-introspection-mapping.dto.d.ts.map +1 -0
- package/dist/dtos/datasource-introspection-mapping.dto.js +233 -0
- package/dist/dtos/datasource-introspection-mapping.dto.js.map +1 -0
- 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-chatter-note-message.dto.d.ts +5 -0
- package/dist/dtos/update-chatter-note-message.dto.d.ts.map +1 -0
- package/dist/dtos/update-chatter-note-message.dto.js +34 -0
- package/dist/dtos/update-chatter-note-message.dto.js.map +1 -0
- package/dist/dtos/update-dashboard-user-layout.dto.d.ts +11 -0
- package/dist/dtos/update-dashboard-user-layout.dto.d.ts.map +1 -0
- package/dist/dtos/{update-dashboard-layout.dto.js → update-dashboard-user-layout.dto.js} +34 -16
- package/dist/dtos/update-dashboard-user-layout.dto.js.map +1 -0
- package/dist/dtos/update-mcp-audit-log.dto.d.ts +19 -0
- package/dist/dtos/update-mcp-audit-log.dto.d.ts.map +1 -0
- package/dist/dtos/update-mcp-audit-log.dto.js +117 -0
- package/dist/dtos/update-mcp-audit-log.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/dashboard-user-layout.entity.d.ts +11 -0
- package/dist/entities/dashboard-user-layout.entity.d.ts.map +1 -0
- package/dist/entities/dashboard-user-layout.entity.js +52 -0
- package/dist/entities/dashboard-user-layout.entity.js.map +1 -0
- 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/legacy-common-with-id.entity.d.ts +2 -2
- package/dist/entities/legacy-common-with-id.entity.d.ts.map +1 -1
- package/dist/entities/legacy-common-with-id.entity.js +6 -6
- package/dist/entities/legacy-common-with-id.entity.js.map +1 -1
- package/dist/entities/legacy-common.entity.d.ts +1 -1
- package/dist/entities/legacy-common.entity.d.ts.map +1 -1
- package/dist/entities/legacy-common.entity.js +14 -14
- package/dist/entities/legacy-common.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/mcp-audit-log.entity.d.ts +19 -0
- package/dist/entities/mcp-audit-log.entity.d.ts.map +1 -0
- package/dist/entities/mcp-audit-log.entity.js +90 -0
- package/dist/entities/mcp-audit-log.entity.js.map +1 -0
- 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 +2 -2
- package/dist/entities/model-metadata.entity.d.ts.map +1 -1
- package/dist/entities/model-metadata.entity.js +8 -8
- 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 +3 -0
- package/dist/entities/user.entity.d.ts.map +1 -1
- package/dist/entities/user.entity.js +15 -1
- 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/enums/legacy-table-type.enum.d.ts +6 -0
- package/dist/enums/legacy-table-type.enum.d.ts.map +1 -0
- package/dist/enums/legacy-table-type.enum.js +10 -0
- package/dist/enums/legacy-table-type.enum.js.map +1 -0
- package/dist/factories/whatsapp.factory.d.ts.map +1 -1
- package/dist/factories/whatsapp.factory.js +13 -11
- package/dist/factories/whatsapp.factory.js.map +1 -1
- package/dist/helpers/bootstrap.helper.d.ts +1 -0
- package/dist/helpers/bootstrap.helper.d.ts.map +1 -1
- package/dist/helpers/bootstrap.helper.js +6 -3
- package/dist/helpers/bootstrap.helper.js.map +1 -1
- package/dist/helpers/command.service.d.ts +1 -0
- package/dist/helpers/command.service.d.ts.map +1 -1
- package/dist/helpers/command.service.js +2 -1
- package/dist/helpers/command.service.js.map +1 -1
- package/dist/helpers/microsoft-active-directory-oauth.helper.d.ts +34 -0
- package/dist/helpers/microsoft-active-directory-oauth.helper.d.ts.map +1 -0
- package/dist/helpers/microsoft-active-directory-oauth.helper.js +43 -0
- package/dist/helpers/microsoft-active-directory-oauth.helper.js.map +1 -0
- package/dist/helpers/model-metadata-helper.service.d.ts +2 -1
- package/dist/helpers/model-metadata-helper.service.d.ts.map +1 -1
- package/dist/helpers/model-metadata-helper.service.js +4 -3
- package/dist/helpers/model-metadata-helper.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 +23 -10
- 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/solid-registry.d.ts +5 -9
- package/dist/helpers/solid-registry.d.ts.map +1 -1
- package/dist/helpers/solid-registry.js +13 -28
- package/dist/helpers/solid-registry.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/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 +42 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +42 -10
- package/dist/index.js.map +1 -1
- package/dist/interfaces/datasource-introspection-provider.interface.d.ts +26 -0
- package/dist/interfaces/datasource-introspection-provider.interface.d.ts.map +1 -0
- package/dist/interfaces/datasource-introspection-provider.interface.js +3 -0
- package/dist/interfaces/datasource-introspection-provider.interface.js.map +1 -0
- package/dist/interfaces.d.ts +23 -21
- package/dist/interfaces.d.ts.map +1 -1
- package/dist/interfaces.js.map +1 -1
- package/dist/listeners/user-registration.listener.d.ts +5 -2
- package/dist/listeners/user-registration.listener.d.ts.map +1 -1
- package/dist/listeners/user-registration.listener.js +37 -4
- package/dist/listeners/user-registration.listener.js.map +1 -1
- package/dist/passport-strategies/microsoft-active-directory-oauth.strategy.d.ts +14 -0
- package/dist/passport-strategies/microsoft-active-directory-oauth.strategy.d.ts.map +1 -0
- package/dist/passport-strategies/microsoft-active-directory-oauth.strategy.js +67 -0
- package/dist/passport-strategies/microsoft-active-directory-oauth.strategy.js.map +1 -0
- package/dist/{repository/dashboard-layout.repository.d.ts → repositories/dashboard-user-layout.repository.d.ts} +5 -5
- package/dist/repositories/dashboard-user-layout.repository.d.ts.map +1 -0
- package/dist/{repository/dashboard-question-sql-dataset-config.repository.js → repositories/dashboard-user-layout.repository.js} +15 -10
- package/dist/repositories/dashboard-user-layout.repository.js.map +1 -0
- package/dist/repository/{ai-interaction.repository.d.ts → mcp-audit-log.repository.d.ts} +3 -3
- package/dist/repository/mcp-audit-log.repository.d.ts.map +1 -0
- package/dist/repository/{ai-interaction.repository.js → mcp-audit-log.repository.js} +8 -8
- package/dist/repository/mcp-audit-log.repository.js.map +1 -0
- package/dist/seeders/module-metadata-seeder.service.d.ts +2 -6
- package/dist/seeders/module-metadata-seeder.service.d.ts.map +1 -1
- package/dist/seeders/module-metadata-seeder.service.js +58 -98
- package/dist/seeders/module-metadata-seeder.service.js.map +1 -1
- package/dist/seeders/module-test-data.service.d.ts +2 -0
- package/dist/seeders/module-test-data.service.d.ts.map +1 -1
- package/dist/seeders/module-test-data.service.js +62 -1
- package/dist/seeders/module-test-data.service.js.map +1 -1
- package/dist/seeders/seed-data/solid-core-metadata.json +5010 -4284
- package/dist/seeders/system-fields-seeder.service.js +1 -1
- package/dist/seeders/system-fields-seeder.service.js.map +1 -1
- package/dist/services/authentication.service.d.ts +18 -1
- package/dist/services/authentication.service.d.ts.map +1 -1
- package/dist/services/authentication.service.js +209 -15
- package/dist/services/authentication.service.js.map +1 -1
- package/dist/services/chatter-message.service.d.ts +7 -1
- package/dist/services/chatter-message.service.d.ts.map +1 -1
- package/dist/services/chatter-message.service.js +94 -2
- package/dist/services/chatter-message.service.js.map +1 -1
- 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 +76 -2
- 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 +23 -87
- package/dist/services/crud.service.js.map +1 -1
- package/dist/services/dashboard-providers/mq-dashboard-avg-elapsed-kpi-provider.service.d.ts +13 -0
- package/dist/services/dashboard-providers/mq-dashboard-avg-elapsed-kpi-provider.service.d.ts.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-avg-elapsed-kpi-provider.service.js +55 -0
- package/dist/services/dashboard-providers/mq-dashboard-avg-elapsed-kpi-provider.service.js.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-failed-messages-kpi-provider.service.d.ts +13 -0
- package/dist/services/dashboard-providers/mq-dashboard-failed-messages-kpi-provider.service.d.ts.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-failed-messages-kpi-provider.service.js +52 -0
- package/dist/services/dashboard-providers/mq-dashboard-failed-messages-kpi-provider.service.js.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-inflight-messages-kpi-provider.service.d.ts +13 -0
- package/dist/services/dashboard-providers/mq-dashboard-inflight-messages-kpi-provider.service.d.ts.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-inflight-messages-kpi-provider.service.js +52 -0
- package/dist/services/dashboard-providers/mq-dashboard-inflight-messages-kpi-provider.service.js.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-latency-trend-provider.service.d.ts +10 -0
- package/dist/services/dashboard-providers/mq-dashboard-latency-trend-provider.service.d.ts.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-latency-trend-provider.service.js +62 -0
- package/dist/services/dashboard-providers/mq-dashboard-latency-trend-provider.service.js.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-messages-over-time-provider.service.d.ts +10 -0
- package/dist/services/dashboard-providers/mq-dashboard-messages-over-time-provider.service.d.ts.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-messages-over-time-provider.service.js +82 -0
- package/dist/services/dashboard-providers/mq-dashboard-messages-over-time-provider.service.js.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-provider-utils.d.ts +20 -0
- package/dist/services/dashboard-providers/mq-dashboard-provider-utils.d.ts.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-provider-utils.js +201 -0
- package/dist/services/dashboard-providers/mq-dashboard-provider-utils.js.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-queue-sla-heatmap-provider.service.d.ts +37 -0
- package/dist/services/dashboard-providers/mq-dashboard-queue-sla-heatmap-provider.service.d.ts.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-queue-sla-heatmap-provider.service.js +112 -0
- package/dist/services/dashboard-providers/mq-dashboard-queue-sla-heatmap-provider.service.js.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-queue-wise-avg-elapsed-provider.service.d.ts +10 -0
- package/dist/services/dashboard-providers/mq-dashboard-queue-wise-avg-elapsed-provider.service.d.ts.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-queue-wise-avg-elapsed-provider.service.js +57 -0
- package/dist/services/dashboard-providers/mq-dashboard-queue-wise-avg-elapsed-provider.service.js.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-queue-wise-failures-provider.service.d.ts +10 -0
- package/dist/services/dashboard-providers/mq-dashboard-queue-wise-failures-provider.service.d.ts.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-queue-wise-failures-provider.service.js +57 -0
- package/dist/services/dashboard-providers/mq-dashboard-queue-wise-failures-provider.service.js.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-recent-failures-provider.service.d.ts +10 -0
- package/dist/services/dashboard-providers/mq-dashboard-recent-failures-provider.service.d.ts.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-recent-failures-provider.service.js +100 -0
- package/dist/services/dashboard-providers/mq-dashboard-recent-failures-provider.service.js.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-stage-distribution-provider.service.d.ts +10 -0
- package/dist/services/dashboard-providers/mq-dashboard-stage-distribution-provider.service.d.ts.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-stage-distribution-provider.service.js +55 -0
- package/dist/services/dashboard-providers/mq-dashboard-stage-distribution-provider.service.js.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-succeeded-messages-kpi-provider.service.d.ts +13 -0
- package/dist/services/dashboard-providers/mq-dashboard-succeeded-messages-kpi-provider.service.d.ts.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-succeeded-messages-kpi-provider.service.js +52 -0
- package/dist/services/dashboard-providers/mq-dashboard-succeeded-messages-kpi-provider.service.js.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-success-rate-kpi-provider.service.d.ts +15 -0
- package/dist/services/dashboard-providers/mq-dashboard-success-rate-kpi-provider.service.d.ts.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-success-rate-kpi-provider.service.js +60 -0
- package/dist/services/dashboard-providers/mq-dashboard-success-rate-kpi-provider.service.js.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-total-messages-kpi-provider.service.d.ts +13 -0
- package/dist/services/dashboard-providers/mq-dashboard-total-messages-kpi-provider.service.d.ts.map +1 -0
- package/dist/services/dashboard-providers/mq-dashboard-total-messages-kpi-provider.service.js +51 -0
- package/dist/services/dashboard-providers/mq-dashboard-total-messages-kpi-provider.service.js.map +1 -0
- package/dist/services/dashboard-runtime.service.d.ts +31 -0
- package/dist/services/dashboard-runtime.service.d.ts.map +1 -0
- package/dist/services/dashboard-runtime.service.js +408 -0
- package/dist/services/dashboard-runtime.service.js.map +1 -0
- package/dist/services/dashboard-user-layout.service.d.ts +12 -0
- package/dist/services/dashboard-user-layout.service.d.ts.map +1 -0
- package/dist/services/{dashboard-question-sql-dataset-config.service.js → dashboard-user-layout.service.js} +10 -10
- package/dist/services/dashboard-user-layout.service.js.map +1 -0
- package/dist/services/datasource-introspection/mssql-datasource-introspection-provider.service.d.ts +11 -0
- package/dist/services/datasource-introspection/mssql-datasource-introspection-provider.service.d.ts.map +1 -0
- package/dist/services/datasource-introspection/mssql-datasource-introspection-provider.service.js +181 -0
- package/dist/services/datasource-introspection/mssql-datasource-introspection-provider.service.js.map +1 -0
- package/dist/services/datasource-introspection/mysql-datasource-introspection-provider.service.d.ts +11 -0
- package/dist/services/datasource-introspection/mysql-datasource-introspection-provider.service.d.ts.map +1 -0
- package/dist/services/datasource-introspection/mysql-datasource-introspection-provider.service.js +90 -0
- package/dist/services/datasource-introspection/mysql-datasource-introspection-provider.service.js.map +1 -0
- package/dist/services/datasource-introspection/postgres-datasource-introspection-provider.service.d.ts +11 -0
- package/dist/services/datasource-introspection/postgres-datasource-introspection-provider.service.d.ts.map +1 -0
- package/dist/services/datasource-introspection/postgres-datasource-introspection-provider.service.js +156 -0
- package/dist/services/datasource-introspection/postgres-datasource-introspection-provider.service.js.map +1 -0
- package/dist/services/datasource-introspection.service.d.ts +288 -0
- package/dist/services/datasource-introspection.service.d.ts.map +1 -0
- package/dist/services/datasource-introspection.service.js +1278 -0
- package/dist/services/datasource-introspection.service.js.map +1 -0
- package/dist/services/datasource-management.service.d.ts +60 -0
- package/dist/services/datasource-management.service.d.ts.map +1 -0
- package/dist/services/datasource-management.service.js +461 -0
- package/dist/services/datasource-management.service.js.map +1 -0
- package/dist/services/field-metadata.service.d.ts.map +1 -1
- package/dist/services/field-metadata.service.js +19 -0
- package/dist/services/field-metadata.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/mcp-audit-log.service.d.ts +12 -0
- package/dist/services/mcp-audit-log.service.d.ts.map +1 -0
- package/dist/services/{dashboard-variable.service.js → mcp-audit-log.service.js} +9 -10
- package/dist/services/mcp-audit-log.service.js.map +1 -0
- 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 +1 -0
- package/dist/services/mediaStorageProviders/file-s3-storage-provider.d.ts.map +1 -1
- package/dist/services/mediaStorageProviders/file-s3-storage-provider.js +51 -11
- package/dist/services/mediaStorageProviders/file-s3-storage-provider.js.map +1 -1
- package/dist/services/mediaStorageProviders/file-storage-provider.d.ts +1 -0
- package/dist/services/mediaStorageProviders/file-storage-provider.d.ts.map +1 -1
- package/dist/services/mediaStorageProviders/file-storage-provider.js +11 -1
- package/dist/services/mediaStorageProviders/file-storage-provider.js.map +1 -1
- package/dist/services/model-metadata.service.d.ts +20 -34
- package/dist/services/model-metadata.service.d.ts.map +1 -1
- package/dist/services/model-metadata.service.js +311 -50
- 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 +11 -1
- package/dist/services/module-metadata.service.d.ts.map +1 -1
- package/dist/services/module-metadata.service.js +140 -4
- 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/services/role-metadata.service.d.ts +1 -0
- package/dist/services/role-metadata.service.d.ts.map +1 -1
- package/dist/services/role-metadata.service.js +13 -0
- package/dist/services/role-metadata.service.js.map +1 -1
- package/dist/services/selection-providers/mq-dashboard-message-broker-variable-options-provider.service.d.ts +11 -0
- package/dist/services/selection-providers/mq-dashboard-message-broker-variable-options-provider.service.d.ts.map +1 -0
- package/dist/services/selection-providers/mq-dashboard-message-broker-variable-options-provider.service.js +58 -0
- package/dist/services/selection-providers/mq-dashboard-message-broker-variable-options-provider.service.js.map +1 -0
- package/dist/services/selection-providers/mq-dashboard-queue-name-variable-options-provider.service.d.ts +11 -0
- package/dist/services/selection-providers/mq-dashboard-queue-name-variable-options-provider.service.d.ts.map +1 -0
- package/dist/services/selection-providers/mq-dashboard-queue-name-variable-options-provider.service.js +59 -0
- package/dist/services/selection-providers/mq-dashboard-queue-name-variable-options-provider.service.js.map +1 -0
- package/dist/services/setting.service.d.ts +1 -0
- package/dist/services/setting.service.d.ts.map +1 -1
- package/dist/services/setting.service.js +32 -8
- package/dist/services/setting.service.js.map +1 -1
- package/dist/services/settings/default-settings-provider.service.d.ts +292 -0
- package/dist/services/settings/default-settings-provider.service.d.ts.map +1 -1
- package/dist/services/settings/default-settings-provider.service.js +164 -0
- package/dist/services/settings/default-settings-provider.service.js.map +1 -1
- package/dist/services/solid-introspect.service.d.ts +1 -2
- package/dist/services/solid-introspect.service.d.ts.map +1 -1
- package/dist/services/solid-introspect.service.js +12 -24
- package/dist/services/solid-introspect.service.js.map +1 -1
- package/dist/services/solid-ts-morph.service.d.ts +1 -1
- package/dist/services/solid-ts-morph.service.d.ts.map +1 -1
- package/dist/services/solid-ts-morph.service.js.map +1 -1
- package/dist/services/user.service.d.ts +2 -0
- package/dist/services/user.service.d.ts.map +1 -1
- package/dist/services/user.service.js +47 -1
- package/dist/services/user.service.js.map +1 -1
- package/dist/services/whatsapp/GupshupOtpWhatsappService.d.ts +11 -0
- package/dist/services/whatsapp/GupshupOtpWhatsappService.d.ts.map +1 -0
- package/dist/services/whatsapp/GupshupOtpWhatsappService.js +127 -0
- package/dist/services/whatsapp/GupshupOtpWhatsappService.js.map +1 -0
- package/dist/services/whatsapp/MetaCloudWhatsappService.d.ts +17 -0
- package/dist/services/whatsapp/MetaCloudWhatsappService.d.ts.map +1 -0
- package/dist/services/whatsapp/MetaCloudWhatsappService.js +209 -0
- package/dist/services/whatsapp/MetaCloudWhatsappService.js.map +1 -0
- package/dist/solid-core.module.d.ts +2 -2
- package/dist/solid-core.module.d.ts.map +1 -1
- package/dist/solid-core.module.js +95 -103
- package/dist/solid-core.module.js.map +1 -1
- package/dist/subscribers/model-metadata.subscriber.d.ts.map +1 -1
- package/dist/subscribers/model-metadata.subscriber.js +1 -3
- package/dist/subscribers/model-metadata.subscriber.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/dist/testing/adapters/ui/playwright-adapter.d.ts +1 -0
- package/dist/testing/adapters/ui/playwright-adapter.d.ts.map +1 -1
- package/dist/testing/adapters/ui/playwright-adapter.js +3 -0
- package/dist/testing/adapters/ui/playwright-adapter.js.map +1 -1
- package/dist/testing/steps/ui/index.d.ts.map +1 -1
- package/dist/testing/steps/ui/index.js +2 -0
- package/dist/testing/steps/ui/index.js.map +1 -1
- package/dist/testing/steps/ui/manual.step.d.ts +3 -0
- package/dist/testing/steps/ui/manual.step.d.ts.map +1 -0
- package/dist/testing/steps/ui/manual.step.js +56 -0
- package/dist/testing/steps/ui/manual.step.js.map +1 -0
- package/dist/winston.logger.d.ts +5 -0
- package/dist/winston.logger.d.ts.map +1 -1
- package/dist/winston.logger.js +6 -4
- package/dist/winston.logger.js.map +1 -1
- package/package.json +5 -8
- package/src/commands/info.command.ts +0 -2
- package/src/commands/refresh-model.command.ts +6 -51
- package/src/commands/refresh-module.command.ts +3 -16
- package/src/commands/test-data.command.ts +29 -6
- package/src/constants/error-messages.ts +2 -1
- package/src/controllers/chatter-message.controller.ts +12 -0
- package/src/controllers/{dashboard-variable.controller.ts → dashboard-user-layout.controller.ts} +10 -10
- package/src/controllers/dashboard.controller.ts +70 -89
- package/src/controllers/datasource-introspection.controller.ts +58 -0
- package/src/controllers/datasource-management.controller.ts +24 -0
- package/src/controllers/gupshup-webhook.controller.ts +91 -0
- package/src/controllers/mcp-audit-log.controller.ts +70 -0
- package/src/controllers/meta-cloud-whatsapp-webhook.controller.ts +155 -0
- package/src/controllers/microsoft-active-directory-authentication.controller.ts +104 -0
- package/src/controllers/model-metadata.controller.ts +1 -1
- package/src/controllers/module-metadata-explorer.controller.ts +83 -0
- package/src/controllers/module-metadata.controller.ts +7 -1
- 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/decorators/dashboard-widget-data-provider.decorator.ts +6 -0
- package/src/dtos/confirm-module-package-import.dto.ts +12 -0
- package/src/dtos/create-dashboard-user-layout.dto.ts +41 -0
- package/src/dtos/create-datasource-management.dto.ts +139 -0
- package/src/dtos/create-mcp-audit-log.dto.ts +84 -0
- package/src/dtos/create-model-metadata.dto.ts +5 -9
- package/src/dtos/create-permission-metadata.dto.ts +3 -0
- package/src/dtos/create-role-metadata.dto.ts +11 -1
- package/src/dtos/dashboard-variable-options-query.dto.ts +20 -0
- package/src/dtos/dashboard-widget-data-request.dto.ts +34 -0
- package/src/dtos/datasource-introspection-mapping.dto.ts +182 -0
- 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-chatter-note-message.dto.ts +14 -0
- package/src/dtos/update-dashboard-user-layout.dto.ts +45 -0
- package/src/dtos/update-mcp-audit-log.dto.ts +83 -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/dashboard-user-layout.entity.ts +27 -0
- package/src/entities/email-template.entity.ts +1 -0
- package/src/entities/field-metadata.entity.ts +4 -1
- package/src/entities/legacy-common-with-id.entity.ts +2 -2
- package/src/entities/legacy-common.entity.ts +1 -1
- package/src/entities/list-of-values.entity.ts +5 -1
- package/src/entities/locale.entity.ts +1 -0
- package/src/entities/mcp-audit-log.entity.ts +55 -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 +6 -5
- 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 +15 -1
- package/src/entities/view-metadata.entity.ts +2 -0
- package/src/enums/legacy-table-type.enum.ts +5 -0
- package/src/factories/whatsapp.factory.ts +33 -32
- package/src/helpers/bootstrap.helper.ts +13 -6
- package/src/helpers/command.service.ts +3 -1
- package/src/helpers/field-crud-managers/field-quality-check-fixes.md +208 -0
- package/src/helpers/microsoft-active-directory-oauth.helper.ts +83 -0
- package/src/helpers/model-metadata-helper.service.ts +4 -3
- package/src/helpers/module-metadata-helper.service.ts +33 -20
- package/src/helpers/module.helper.ts +12 -9
- package/src/helpers/solid-registry.ts +15 -36
- package/src/helpers/typeorm-migration-helpers.ts +163 -0
- package/src/helpers/user-helper.ts +5 -1
- package/src/index.ts +42 -10
- package/src/interfaces/datasource-introspection-provider.interface.ts +28 -0
- package/src/interfaces.ts +32 -29
- package/src/listeners/user-registration.listener.ts +49 -6
- package/src/passport-strategies/microsoft-active-directory-oauth.strategy.ts +63 -0
- package/src/repositories/dashboard-user-layout.repository.ts +19 -0
- package/src/repository/mcp-audit-log.repository.ts +17 -0
- package/src/seeders/module-metadata-seeder.service.ts +63 -105
- package/src/seeders/module-test-data.service.ts +80 -3
- package/src/seeders/seed-data/solid-core-metadata.json +5011 -4285
- package/src/seeders/system-fields-seeder.service.ts +1 -1
- package/src/services/authentication.service.ts +360 -47
- package/src/services/chatter-message.service.ts +112 -2
- package/src/services/crud-helper.service.ts +86 -2
- package/src/services/crud.service.ts +26 -119
- package/src/services/dashboard-providers/README.md +603 -0
- package/src/services/dashboard-providers/mq-dashboard-avg-elapsed-kpi-provider.service.ts +49 -0
- package/src/services/dashboard-providers/mq-dashboard-failed-messages-kpi-provider.service.ts +45 -0
- package/src/services/dashboard-providers/mq-dashboard-inflight-messages-kpi-provider.service.ts +45 -0
- package/src/services/dashboard-providers/mq-dashboard-latency-trend-provider.service.ts +63 -0
- package/src/services/dashboard-providers/mq-dashboard-messages-over-time-provider.service.ts +84 -0
- package/src/services/dashboard-providers/mq-dashboard-provider-utils.ts +247 -0
- package/src/services/dashboard-providers/mq-dashboard-queue-sla-heatmap-provider.service.ts +161 -0
- package/src/services/dashboard-providers/mq-dashboard-queue-wise-avg-elapsed-provider.service.ts +51 -0
- package/src/services/dashboard-providers/mq-dashboard-queue-wise-failures-provider.service.ts +51 -0
- package/src/services/dashboard-providers/mq-dashboard-recent-failures-provider.service.ts +95 -0
- package/src/services/dashboard-providers/mq-dashboard-stage-distribution-provider.service.ts +49 -0
- package/src/services/dashboard-providers/mq-dashboard-succeeded-messages-kpi-provider.service.ts +45 -0
- package/src/services/dashboard-providers/mq-dashboard-success-rate-kpi-provider.service.ts +55 -0
- package/src/services/dashboard-providers/mq-dashboard-total-messages-kpi-provider.service.ts +44 -0
- package/src/services/dashboard-runtime.service.ts +488 -0
- package/src/services/dashboard-user-layout.service.ts +20 -0
- package/src/services/datasource-introspection/mssql-datasource-introspection-provider.service.ts +185 -0
- package/src/services/datasource-introspection/mysql-datasource-introspection-provider.service.ts +95 -0
- package/src/services/datasource-introspection/postgres-datasource-introspection-provider.service.ts +160 -0
- package/src/services/datasource-introspection.service.ts +1536 -0
- package/src/services/datasource-management.service.ts +566 -0
- package/src/services/field-metadata.service.ts +21 -1
- package/src/services/import-transaction.service.ts +11 -1
- package/src/services/mcp-audit-log.service.ts +19 -0
- package/src/services/mediaStorageProviders/file-s3-storage-provider.ts +60 -13
- package/src/services/mediaStorageProviders/file-storage-provider.ts +13 -2
- package/src/services/model-metadata.service.ts +362 -122
- package/src/services/module-metadata-explorer.service.ts +670 -0
- package/src/services/module-metadata.service.ts +148 -10
- package/src/services/module-package.service.ts +1171 -0
- package/src/services/role-metadata.service.ts +14 -0
- package/src/services/selection-providers/mq-dashboard-message-broker-variable-options-provider.service.ts +50 -0
- package/src/services/selection-providers/mq-dashboard-queue-name-variable-options-provider.service.ts +49 -0
- package/src/services/setting.service.ts +43 -12
- package/src/services/settings/default-settings-provider.service.ts +167 -0
- package/src/services/solid-introspect.service.ts +19 -34
- package/src/services/solid-ts-morph.service.ts +2 -2
- package/src/services/user.service.ts +62 -1
- package/src/services/whatsapp/GupshupOtpWhatsappService.ts +174 -0
- package/src/services/whatsapp/MetaCloudWhatsappService.ts +253 -0
- package/src/solid-core.module.ts +267 -282
- package/src/subscribers/model-metadata.subscriber.ts +1 -3
- package/src/subscribers/scheduled-job.subscriber.ts +1 -1
- package/src/subscribers/security-rule.subscriber.ts +1 -1
- package/src/testing/README.md +55 -2
- package/src/testing/adapters/ui/playwright-adapter.ts +4 -0
- package/src/testing/steps/ui/index.ts +2 -0
- package/src/testing/steps/ui/manual.step.ts +80 -0
- package/src/winston.logger.ts +5 -7
- 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/controllers/dashboard-layout.controller.d.ts +0 -47
- package/dist/controllers/dashboard-layout.controller.d.ts.map +0 -1
- package/dist/controllers/dashboard-layout.controller.js +0 -204
- package/dist/controllers/dashboard-layout.controller.js.map +0 -1
- package/dist/controllers/dashboard-question-sql-dataset-config.controller.d.ts +0 -43
- package/dist/controllers/dashboard-question-sql-dataset-config.controller.d.ts.map +0 -1
- package/dist/controllers/dashboard-question-sql-dataset-config.controller.js +0 -179
- package/dist/controllers/dashboard-question-sql-dataset-config.controller.js.map +0 -1
- package/dist/controllers/dashboard-question.controller.d.ts +0 -45
- package/dist/controllers/dashboard-question.controller.d.ts.map +0 -1
- package/dist/controllers/dashboard-question.controller.js.map +0 -1
- package/dist/controllers/dashboard-variable.controller.d.ts +0 -43
- package/dist/controllers/dashboard-variable.controller.d.ts.map +0 -1
- package/dist/controllers/dashboard-variable.controller.js.map +0 -1
- package/dist/decorators/dashboard-question-data-provider.decorator.d.ts +0 -3
- package/dist/decorators/dashboard-question-data-provider.decorator.d.ts.map +0 -1
- package/dist/decorators/dashboard-question-data-provider.decorator.js +0 -11
- package/dist/decorators/dashboard-question-data-provider.decorator.js.map +0 -1
- package/dist/decorators/dashboard-selection-provider.decorator.d.ts +0 -3
- package/dist/decorators/dashboard-selection-provider.decorator.d.ts.map +0 -1
- package/dist/decorators/dashboard-selection-provider.decorator.js +0 -11
- package/dist/decorators/dashboard-selection-provider.decorator.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/create-dashboard-layout.dto.d.ts +0 -8
- package/dist/dtos/create-dashboard-layout.dto.d.ts.map +0 -1
- package/dist/dtos/create-dashboard-layout.dto.js +0 -53
- package/dist/dtos/create-dashboard-layout.dto.js.map +0 -1
- package/dist/dtos/create-dashboard-question-sql-dataset-config.dto.d.ts +0 -12
- package/dist/dtos/create-dashboard-question-sql-dataset-config.dto.d.ts.map +0 -1
- package/dist/dtos/create-dashboard-question-sql-dataset-config.dto.js +0 -77
- package/dist/dtos/create-dashboard-question-sql-dataset-config.dto.js.map +0 -1
- package/dist/dtos/create-dashboard-question.dto.d.ts +0 -17
- package/dist/dtos/create-dashboard-question.dto.d.ts.map +0 -1
- package/dist/dtos/create-dashboard-question.dto.js +0 -105
- package/dist/dtos/create-dashboard-question.dto.js.map +0 -1
- package/dist/dtos/create-dashboard-variable.dto.d.ts +0 -19
- package/dist/dtos/create-dashboard-variable.dto.d.ts.map +0 -1
- package/dist/dtos/create-dashboard-variable.dto.js +0 -103
- package/dist/dtos/create-dashboard-variable.dto.js.map +0 -1
- package/dist/dtos/create-dashboard.dto.d.ts +0 -17
- package/dist/dtos/create-dashboard.dto.d.ts.map +0 -1
- package/dist/dtos/create-dashboard.dto.js +0 -102
- package/dist/dtos/create-dashboard.dto.js.map +0 -1
- package/dist/dtos/dashboard-variable-selection-dynamic-query.dto.d.ts +0 -8
- package/dist/dtos/dashboard-variable-selection-dynamic-query.dto.d.ts.map +0 -1
- package/dist/dtos/dashboard-variable-selection-dynamic-query.dto.js +0 -52
- package/dist/dtos/dashboard-variable-selection-dynamic-query.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/dtos/update-dashboard-layout.dto.d.ts +0 -8
- package/dist/dtos/update-dashboard-layout.dto.d.ts.map +0 -1
- package/dist/dtos/update-dashboard-layout.dto.js.map +0 -1
- package/dist/dtos/update-dashboard-question-sql-dataset-config.dto.d.ts +0 -13
- package/dist/dtos/update-dashboard-question-sql-dataset-config.dto.d.ts.map +0 -1
- package/dist/dtos/update-dashboard-question-sql-dataset-config.dto.js +0 -86
- package/dist/dtos/update-dashboard-question-sql-dataset-config.dto.js.map +0 -1
- package/dist/dtos/update-dashboard-question.dto.d.ts +0 -18
- package/dist/dtos/update-dashboard-question.dto.d.ts.map +0 -1
- package/dist/dtos/update-dashboard-question.dto.js +0 -112
- package/dist/dtos/update-dashboard-question.dto.js.map +0 -1
- package/dist/dtos/update-dashboard-variable.dto.d.ts +0 -16
- package/dist/dtos/update-dashboard-variable.dto.d.ts.map +0 -1
- package/dist/dtos/update-dashboard-variable.dto.js +0 -101
- package/dist/dtos/update-dashboard-variable.dto.js.map +0 -1
- package/dist/dtos/update-dashboard.dto.d.ts +0 -18
- package/dist/dtos/update-dashboard.dto.d.ts.map +0 -1
- package/dist/dtos/update-dashboard.dto.js +0 -108
- package/dist/dtos/update-dashboard.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/entities/dashboard-layout.entity.d.ts +0 -9
- package/dist/entities/dashboard-layout.entity.d.ts.map +0 -1
- package/dist/entities/dashboard-layout.entity.js +0 -41
- package/dist/entities/dashboard-layout.entity.js.map +0 -1
- package/dist/entities/dashboard-question-sql-dataset-config.entity.d.ts +0 -14
- package/dist/entities/dashboard-question-sql-dataset-config.entity.d.ts.map +0 -1
- package/dist/entities/dashboard-question-sql-dataset-config.entity.js +0 -66
- package/dist/entities/dashboard-question-sql-dataset-config.entity.js.map +0 -1
- package/dist/entities/dashboard-question.entity.d.ts +0 -17
- package/dist/entities/dashboard-question.entity.d.ts.map +0 -1
- package/dist/entities/dashboard-question.entity.js +0 -77
- package/dist/entities/dashboard-question.entity.js.map +0 -1
- package/dist/entities/dashboard-variable.entity.d.ts +0 -16
- package/dist/entities/dashboard-variable.entity.d.ts.map +0 -1
- package/dist/entities/dashboard-variable.entity.js +0 -79
- package/dist/entities/dashboard-variable.entity.js.map +0 -1
- package/dist/entities/dashboard.entity.d.ts +0 -16
- package/dist/entities/dashboard.entity.d.ts.map +0 -1
- package/dist/entities/dashboard.entity.js +0 -64
- package/dist/entities/dashboard.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 -27
- 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 -245
- 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/mappers/dashboard-mapper.d.ts +0 -6
- package/dist/mappers/dashboard-mapper.d.ts.map +0 -1
- package/dist/mappers/dashboard-mapper.js +0 -62
- package/dist/mappers/dashboard-mapper.js.map +0 -1
- package/dist/repository/ai-interaction.repository.d.ts.map +0 -1
- package/dist/repository/ai-interaction.repository.js.map +0 -1
- package/dist/repository/dashboard-layout.repository.d.ts.map +0 -1
- package/dist/repository/dashboard-layout.repository.js +0 -34
- package/dist/repository/dashboard-layout.repository.js.map +0 -1
- package/dist/repository/dashboard-question-sql-dataset-config.repository.d.ts +0 -12
- package/dist/repository/dashboard-question-sql-dataset-config.repository.d.ts.map +0 -1
- package/dist/repository/dashboard-question-sql-dataset-config.repository.js.map +0 -1
- package/dist/repository/dashboard-question.repository.d.ts +0 -12
- package/dist/repository/dashboard-question.repository.d.ts.map +0 -1
- package/dist/repository/dashboard-question.repository.js +0 -34
- package/dist/repository/dashboard-question.repository.js.map +0 -1
- package/dist/repository/dashboard-variable.repository.d.ts +0 -12
- package/dist/repository/dashboard-variable.repository.d.ts.map +0 -1
- package/dist/repository/dashboard-variable.repository.js +0 -34
- package/dist/repository/dashboard-variable.repository.js.map +0 -1
- package/dist/repository/dashboard.repository.d.ts +0 -13
- package/dist/repository/dashboard.repository.d.ts.map +0 -1
- package/dist/repository/dashboard.repository.js +0 -104
- package/dist/repository/dashboard.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/dashboard-layout.service.d.ts +0 -20
- package/dist/services/dashboard-layout.service.d.ts.map +0 -1
- package/dist/services/dashboard-layout.service.js +0 -120
- package/dist/services/dashboard-layout.service.js.map +0 -1
- package/dist/services/dashboard-question-sql-dataset-config.service.d.ts +0 -12
- package/dist/services/dashboard-question-sql-dataset-config.service.d.ts.map +0 -1
- package/dist/services/dashboard-question-sql-dataset-config.service.js.map +0 -1
- package/dist/services/dashboard-question.service.d.ts +0 -23
- package/dist/services/dashboard-question.service.d.ts.map +0 -1
- package/dist/services/dashboard-question.service.js +0 -135
- package/dist/services/dashboard-question.service.js.map +0 -1
- package/dist/services/dashboard-selection-providers/dashboard-variable-sql-dynamic-provider.service.d.ts +0 -12
- package/dist/services/dashboard-selection-providers/dashboard-variable-sql-dynamic-provider.service.d.ts.map +0 -1
- package/dist/services/dashboard-selection-providers/dashboard-variable-sql-dynamic-provider.service.js +0 -55
- package/dist/services/dashboard-selection-providers/dashboard-variable-sql-dynamic-provider.service.js.map +0 -1
- package/dist/services/dashboard-selection-providers/dashboard-variable-test-dynamic-provider.service.d.ts +0 -11
- package/dist/services/dashboard-selection-providers/dashboard-variable-test-dynamic-provider.service.d.ts.map +0 -1
- package/dist/services/dashboard-selection-providers/dashboard-variable-test-dynamic-provider.service.js +0 -45
- package/dist/services/dashboard-selection-providers/dashboard-variable-test-dynamic-provider.service.js.map +0 -1
- package/dist/services/dashboard-variable.service.d.ts +0 -13
- package/dist/services/dashboard-variable.service.d.ts.map +0 -1
- package/dist/services/dashboard-variable.service.js.map +0 -1
- package/dist/services/dashboard.service.d.ts +0 -29
- package/dist/services/dashboard.service.d.ts.map +0 -1
- package/dist/services/dashboard.service.js +0 -171
- package/dist/services/dashboard.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/mcp-handlers/solid-add-question-to-dashboard-mcp-handler.service.d.ts +0 -12
- package/dist/services/genai/mcp-handlers/solid-add-question-to-dashboard-mcp-handler.service.d.ts.map +0 -1
- package/dist/services/genai/mcp-handlers/solid-add-question-to-dashboard-mcp-handler.service.js +0 -41
- package/dist/services/genai/mcp-handlers/solid-add-question-to-dashboard-mcp-handler.service.js.map +0 -1
- package/dist/services/genai/mcp-handlers/solid-add-variable-to-dashboard-mcp-handler.service.d.ts +0 -12
- package/dist/services/genai/mcp-handlers/solid-add-variable-to-dashboard-mcp-handler.service.d.ts.map +0 -1
- package/dist/services/genai/mcp-handlers/solid-add-variable-to-dashboard-mcp-handler.service.js +0 -42
- package/dist/services/genai/mcp-handlers/solid-add-variable-to-dashboard-mcp-handler.service.js.map +0 -1
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-mcp-handler.service.d.ts +0 -25
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-mcp-handler.service.d.ts.map +0 -1
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-mcp-handler.service.js +0 -116
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-mcp-handler.service.js.map +0 -1
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-question-mcp-handler.service.d.ts +0 -12
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-question-mcp-handler.service.d.ts.map +0 -1
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-question-mcp-handler.service.js +0 -37
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-question-mcp-handler.service.js.map +0 -1
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-question-sql-dataset-config-mcp-handler.service.d.ts +0 -12
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-question-sql-dataset-config-mcp-handler.service.d.ts.map +0 -1
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-question-sql-dataset-config-mcp-handler.service.js +0 -38
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-question-sql-dataset-config-mcp-handler.service.js.map +0 -1
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-widget-mcp-handler.service.d.ts +0 -12
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-widget-mcp-handler.service.d.ts.map +0 -1
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-widget-mcp-handler.service.js +0 -38
- package/dist/services/genai/mcp-handlers/solid-create-dashboard-widget-mcp-handler.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/dist/services/question-data-providers/chartjs-sql-data-provider.service.d.ts +0 -34
- package/dist/services/question-data-providers/chartjs-sql-data-provider.service.d.ts.map +0 -1
- package/dist/services/question-data-providers/chartjs-sql-data-provider.service.js +0 -90
- package/dist/services/question-data-providers/chartjs-sql-data-provider.service.js.map +0 -1
- package/dist/services/question-data-providers/helpers.d.ts +0 -7
- package/dist/services/question-data-providers/helpers.d.ts.map +0 -1
- package/dist/services/question-data-providers/helpers.js +0 -25
- package/dist/services/question-data-providers/helpers.js.map +0 -1
- package/dist/services/question-data-providers/prime-react-datatable-sql-data-provider.service.d.ts +0 -14
- package/dist/services/question-data-providers/prime-react-datatable-sql-data-provider.service.d.ts.map +0 -1
- package/dist/services/question-data-providers/prime-react-datatable-sql-data-provider.service.js +0 -71
- package/dist/services/question-data-providers/prime-react-datatable-sql-data-provider.service.js.map +0 -1
- package/dist/services/question-data-providers/prime-react-meter-group-sql-data-provider.service.d.ts +0 -16
- package/dist/services/question-data-providers/prime-react-meter-group-sql-data-provider.service.d.ts.map +0 -1
- package/dist/services/question-data-providers/prime-react-meter-group-sql-data-provider.service.js +0 -93
- package/dist/services/question-data-providers/prime-react-meter-group-sql-data-provider.service.js.map +0 -1
- package/dist/services/selection-providers/list-of-dashboard-question-providers-selection-provider.service.d.ts +0 -11
- package/dist/services/selection-providers/list-of-dashboard-question-providers-selection-provider.service.d.ts.map +0 -1
- package/dist/services/selection-providers/list-of-dashboard-question-providers-selection-provider.service.js +0 -49
- package/dist/services/selection-providers/list-of-dashboard-question-providers-selection-provider.service.js.map +0 -1
- package/dist/services/selection-providers/list-of-dashboard-variable-providers-selection-provider.service.d.ts +0 -11
- package/dist/services/selection-providers/list-of-dashboard-variable-providers-selection-provider.service.d.ts.map +0 -1
- package/dist/services/selection-providers/list-of-dashboard-variable-providers-selection-provider.service.js +0 -47
- package/dist/services/selection-providers/list-of-dashboard-variable-providers-selection-provider.service.js.map +0 -1
- package/dist/services/sql-expression-resolver.service.d.ts +0 -12
- package/dist/services/sql-expression-resolver.service.d.ts.map +0 -1
- package/dist/services/sql-expression-resolver.service.js +0 -121
- package/dist/services/sql-expression-resolver.service.js.map +0 -1
- package/dist/subscribers/dashboard-question-sql-dataset-config.subscriber.d.ts +0 -16
- package/dist/subscribers/dashboard-question-sql-dataset-config.subscriber.d.ts.map +0 -1
- package/dist/subscribers/dashboard-question-sql-dataset-config.subscriber.js +0 -72
- package/dist/subscribers/dashboard-question-sql-dataset-config.subscriber.js.map +0 -1
- package/dist/subscribers/dashboard-question.subscriber.d.ts +0 -16
- package/dist/subscribers/dashboard-question.subscriber.d.ts.map +0 -1
- package/dist/subscribers/dashboard-question.subscriber.js +0 -72
- package/dist/subscribers/dashboard-question.subscriber.js.map +0 -1
- package/dist/subscribers/dashboard-variable.subscriber.d.ts +0 -16
- package/dist/subscribers/dashboard-variable.subscriber.d.ts.map +0 -1
- package/dist/subscribers/dashboard-variable.subscriber.js +0 -72
- package/dist/subscribers/dashboard-variable.subscriber.js.map +0 -1
- package/dist/subscribers/dashboard.subscriber.d.ts +0 -16
- package/dist/subscribers/dashboard.subscriber.d.ts.map +0 -1
- package/dist/subscribers/dashboard.subscriber.js +0 -71
- package/dist/subscribers/dashboard.subscriber.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/controllers/dashboard-layout.controller.ts +0 -106
- package/src/controllers/dashboard-question-sql-dataset-config.controller.ts +0 -93
- package/src/controllers/dashboard-question.controller.ts +0 -104
- package/src/decorators/dashboard-question-data-provider.decorator.ts +0 -7
- package/src/decorators/dashboard-selection-provider.decorator.ts +0 -7
- package/src/dtos/create-ai-interaction.dto.ts +0 -89
- package/src/dtos/create-dashboard-layout.dto.ts +0 -31
- package/src/dtos/create-dashboard-question-sql-dataset-config.dto.ts +0 -42
- package/src/dtos/create-dashboard-question.dto.ts +0 -62
- package/src/dtos/create-dashboard-variable.dto.ts +0 -60
- package/src/dtos/create-dashboard.dto.ts +0 -61
- package/src/dtos/dashboard-variable-selection-dynamic-query.dto.ts +0 -29
- package/src/dtos/invoke-ai-prompt.dto.ts +0 -10
- package/src/dtos/update-ai-interaction.dto.ts +0 -93
- package/src/dtos/update-dashboard-layout.dto.ts +0 -30
- package/src/dtos/update-dashboard-question-sql-dataset-config.dto.ts +0 -49
- package/src/dtos/update-dashboard-question.dto.ts +0 -67
- package/src/dtos/update-dashboard-variable.dto.ts +0 -58
- package/src/dtos/update-dashboard.dto.ts +0 -65
- package/src/entities/ai-interaction.entity.ts +0 -71
- package/src/entities/dashboard-layout.entity.ts +0 -18
- package/src/entities/dashboard-question-sql-dataset-config.entity.ts +0 -37
- package/src/entities/dashboard-question.entity.ts +0 -46
- package/src/entities/dashboard-variable.entity.ts +0 -44
- package/src/entities/dashboard.entity.ts +0 -36
- 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 -311
- 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/mappers/dashboard-mapper.ts +0 -53
- package/src/repository/ai-interaction.repository.ts +0 -17
- package/src/repository/dashboard-layout.repository.ts +0 -17
- package/src/repository/dashboard-question-sql-dataset-config.repository.ts +0 -17
- package/src/repository/dashboard-question.repository.ts +0 -17
- package/src/repository/dashboard-variable.repository.ts +0 -17
- package/src/repository/dashboard.repository.ts +0 -101
- package/src/services/ai-interaction.service.ts +0 -239
- package/src/services/dashboard-layout.service.ts +0 -111
- package/src/services/dashboard-question-sql-dataset-config.service.ts +0 -25
- package/src/services/dashboard-question.service.ts +0 -150
- package/src/services/dashboard-selection-providers/dashboard-variable-sql-dynamic-provider.service.ts +0 -56
- package/src/services/dashboard-selection-providers/dashboard-variable-test-dynamic-provider.service.ts +0 -37
- package/src/services/dashboard-variable.service.ts +0 -27
- package/src/services/dashboard.service.ts +0 -148
- 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/mcp-handlers/solid-add-question-to-dashboard-mcp-handler.service.ts +0 -43
- package/src/services/genai/mcp-handlers/solid-add-variable-to-dashboard-mcp-handler.service.ts +0 -44
- package/src/services/genai/mcp-handlers/solid-create-dashboard-mcp-handler.service.ts +0 -114
- package/src/services/genai/mcp-handlers/solid-create-dashboard-question-mcp-handler.service.ts +0 -38
- package/src/services/genai/mcp-handlers/solid-create-dashboard-question-sql-dataset-config-mcp-handler.service.ts +0 -40
- package/src/services/genai/mcp-handlers/solid-create-dashboard-widget-mcp-handler.service.ts +0 -39
- package/src/services/genai/r2r-helper.service.ts +0 -37
- package/src/services/question-data-providers/chartjs-sql-data-provider.service.ts +0 -121
- package/src/services/question-data-providers/helpers.ts +0 -30
- package/src/services/question-data-providers/prime-react-datatable-sql-data-provider.service.ts +0 -74
- package/src/services/question-data-providers/prime-react-meter-group-sql-data-provider.service.ts +0 -115
- package/src/services/selection-providers/list-of-dashboard-question-providers-selection-provider.service.ts +0 -44
- package/src/services/selection-providers/list-of-dashboard-variable-providers-selection-provider.service.ts +0 -41
- package/src/services/sql-expression-resolver.service.ts +0 -140
- package/src/subscribers/dashboard-question-sql-dataset-config.subscriber.ts +0 -61
- package/src/subscribers/dashboard-question.subscriber.ts +0 -62
- package/src/subscribers/dashboard-variable.subscriber.ts +0 -63
- package/src/subscribers/dashboard.subscriber.ts +0 -62
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setting.service.js","sourceRoot":"","sources":["../../src/services/setting.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA6F;AAC7F,6CAAmD;AACnD,qCAAqC;AACrC,wDAA0C;AAC1C,gEAA8D;AAG9D,yDAAgD;AAChD,yEAAqE;AACrE,iCAAoG;AACpG,+DAAqD;AACrD,uEAAkE;AAClE,8DAA2D;AAC3D,8CAA+J;AAC/J,yFAAqF;AAErF,2CAAwC;AACxC,6DAAyD;AAIlD,IAAM,cAAc,sBAApB,MAAM,cAAc;IAazB,YACwB,WAAkC,EACrB,WAAyC,EACnE,aAA4B,EAC5B,IAAuB,EACvB,kBAA4C,EACpC,qBAA4C,EACrC,cAAiD;QAN1C,gBAAW,GAAX,WAAW,CAAc;QACZ,gBAAW,GAAX,WAAW,CAAqB;QACnE,kBAAa,GAAb,aAAa,CAAe;QAC5B,SAAI,GAAJ,IAAI,CAAmB;QACvB,uBAAkB,GAAlB,kBAAkB,CAA0B;QACpC,0BAAqB,GAArB,qBAAqB,CAAuB;QACpB,mBAAc,GAAd,cAAc,CAAkB;QAnB1D,YAAO,GAAG,IAAI,eAAM,CAAC,gBAAc,CAAC,IAAI,CAAC,CAAC;QAEnD,aAAQ,GAAwB,EAAE,CAAC;QACnC,kBAAa,GAAG,IAAI,GAAG,EAA6B,CAAC;QAG5C,oBAAe,GAAG,IAAI,GAAG,CAAC;YACzC,6BAA6B;YAC7B,yCAAyC;YACzC,6CAA6C;SAC9C,CAAC,CAAC;QAWD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;QAC9C,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,sCAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACvE,IAAI,CAAC,MAAM;YAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,0EAA0E,CAAC,CAAC;IAC7G,CAAC;IAEO,KAAK,CAAC,iBAAiB;QAC7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/D,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,iBAAiB,CAAC,KAAa,EAAE,GAAW;QAClD,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;gBAC1C,OAAO,KAAK,KAAK,MAAM,CAAC;YAC1B,CAAC;YACD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBACjD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1D,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACnD,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAEO,iBAAiB,CAAC,GAAW;QACnC,OAAO,GAAG;aACP,OAAO,CAAC,oBAAoB,EAAE,OAAO,CAAC;aACtC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;aACtB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;aACpB,IAAI,EAAE;aACN,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IACtD,CAAC;IAEO,gBAAgB,CAAC,OAA0B;QACjD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACxB,OAAO,OAAO,CAAC,WAAW,CAAC;QAC7B,CAAC;QAED,IAAI,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;YAC5B,OAAO,iBAAiB,CAAC;QAC3B,CAAC;QAED,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YACvC,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACtC,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,wBAAwB,CAAC,OAA0B;QACzD,OAAO;YACL,GAAG,OAAO;YACV,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC;YAC3D,WAAW,EAAE,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;YAC3C,QAAQ,EAAE,OAAO,CAAC,KAAK,KAAK,yBAAY,CAAC,mBAAmB;SAC7D,CAAC;IACJ,CAAC;IAOO,2BAA2B;QAEjC,MAAM,oBAAoB,GAAG,IAAI,CAAC,aAAa,CAAC,oBAAoB,EAAE,CAAC;QACvE,MAAM,QAAQ,GAAwB,EAAE,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAiE,CAAC;QAC1F,KAAK,MAAM,OAAO,IAAI,oBAAoB,EAAE,CAAC;YAC3C,MAAM,QAAQ,GAAG,OAAO,CAAC,QAA6B,CAAC;YAEvD,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;gBAC7C,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC3C,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,IAAI,KAAK,CACb,mCAAmC,OAAO,CAAC,GAAG,IAAI;wBAClD,UAAU,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,mBAAmB,QAAQ,CAAC,YAAY,IAAI,SAAS,IAAI;wBACnG,WAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,mBAAmB,OAAO,CAAC,IAAI,IAAI,SAAS,GAAG,CAClF,CAAC;gBACJ,CAAC;gBACD,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;gBACnE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAA;IACjB,CAAC;IAQD,cAAc;QACZ,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,mBAAmB;QACvB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACjD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACtD,MAAM,qBAAqB,GAAG,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACjE,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAE3F,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YAClD,MAAM,aAAa,GAAG,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC3D,MAAM,WAAW,GAAG,aAAa,EAAE,KAAK,CAAC;YACzC,IAAI,aAAa,EAAE,GAAG,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;gBAC5E,IAAI,QAAQ,GAAG,WAAW,CAAC;gBAC3B,IAAI,aAAa,CAAC,SAAS,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACtD,IAAI,CAAC;wBACH,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;oBACtD,CAAC;oBAAC,MAAM,CAAC;wBACP,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B,OAAO,CAAC,GAAG,qBAAqB,CAAC,CAAC;oBACpF,CAAC;gBACH,CAAC;gBACD,MAAM,WAAW,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;gBAClH,OAAO,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;YAC5C,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CAAC;QAGH,IAAI,CAAC,aAAa,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACrF,CAAC;IAEO,sBAAsB,CAAC,GAAW,EAAE,uBAAuC;QACjF,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE5C,OAAO,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC3E,CAAC;IAOD,KAAK,CAAC,uCAAuC;QAG3C,MAAM,kBAAkB,GAAG,IAAI,CAAC,2BAA2B,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,yBAAY,CAAC,mBAAmB,EAAE,yBAAY,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAG3J,MAAM,sBAAsB,GAAc,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAGzE,MAAM,2BAA2B,GAAG,IAAI,GAAG,CAAC,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3G,MAAM,gBAAgB,GAAc,EAAE,CAAC;QAGvC,KAAK,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,kBAAkB,EAAE,CAAC;YAC9E,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;YACrF,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1C,MAAM,OAAO,GAAG,IAAI,wBAAO,EAAE,CAAC;gBAC9B,OAAO,CAAC,GAAG,GAAG,GAAG,CAAC;gBAClB,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;gBACtB,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;gBAChC,IAAI,cAAc;oBAChB,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC;gBAE1C,IAAI,QAAuB,CAAC;gBAC5B,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;oBAC/B,QAAQ,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAC9B,CAAC;qBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBAChC,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC7B,CAAC;qBAAM,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBACjD,QAAQ,GAAG,IAAI,CAAC;gBAClB,CAAC;qBAAM,CAAC;oBACN,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC3B,CAAC;gBAED,IAAI,SAAS,IAAI,IAAI,CAAC,iBAAiB,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;oBAC7D,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACtD,CAAC;gBACD,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC;gBAEzB,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACjC,CAAC;iBACI,CAAC;gBACJ,MAAM,OAAO,GAAG,2BAA2B,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACrD,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;gBACtB,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;gBAChC,IAAI,cAAc;oBAChB,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC;gBAC1C,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;QAED,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACzC,CAAC;IAIH,CAAC;IASD,KAAK,CAAC,kDAAkD;QACtD,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,CAAC;QAC9D,MAAM,0BAA0B,GAAG,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,QAAQ,CAAC,yBAAyB,CAAC,CAAC;QAElG,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ;aACvB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,YAAY,CAAC;aACrC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,0BAA0B,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;aACvD,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,yBAAY,CAAC,mBAAmB,EAAE,yBAAY,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;aACjH,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;aACxD,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YACpB,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;YACzE,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;gBACvB,OAAO,YAAY,CAAC;YACtB,CAAC;YAED,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,gBAAgB,CAAC;YAC3D,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,MAAM,CAAC,gBAAgB,CAAC;YAC7D,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,OAAO,QAAQ,GAAG,SAAS,CAAC;YAC9B,CAAC;YAED,OAAO,IAAI,CAAC,KAAM,CAAC,aAAa,CAAC,KAAK,CAAC,KAAM,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEL,OAAO,EAAE,IAAI,EAAE,CAAC;IAClB,CAAC;IAWD,KAAK,CAAC,cAAc,CAAC,WAA+B,EAAE,EAAE,gBAA4C,EAAE;QACpG,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,CAAC;QAC9D,MAAM,MAAM,GAAG,UAAU,EAAE,GAAG,CAAC;QAE/B,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;QAEzC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YACzB,IAAI,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,yBAAY,CAAC,SAAS,EAAE,yBAAY,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC;gBACzG,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAClC,CAAC;QACH,CAAC,CAAC,CAAC;QACH,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC3B,IAAI,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,yBAAY,CAAC,SAAS,EAAE,yBAAY,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC;gBAC5G,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACrC,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,cAAc,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,IAAI,4BAAmB,CAAC,GAAG,+BAAc,CAAC,SAAS,cAAc,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACtI,CAAC;QAGD,MAAM,gBAAgB,GAAc,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEnE,MAAM,gBAAgB,GAAc,EAAE,CAAC;QACvC,MAAM,gBAAgB,GAAc,EAAE,CAAC;QAEvC,IAAI,IAAI,GAAgB,IAAI,CAAC;QAC7B,MAAM,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QAClE,IAAI,eAAe,IAAI,MAAM,EAAE,CAAC;YAC9B,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QACtE,CAAC;QAGD,IAAI,aAAa,EAAE,MAAM,EAAE,CAAC;YAC1B,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;gBACjC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;gBAClC,MAAM,gBAAgB,GAAG,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBAIjE,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACzD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;gBAC7D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAEvG,MAAM,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAEnC,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,UAAU,CAAC,CAAC;gBAChE,MAAM,WAAW,GAAG,UAAU,EAAE,IAAI,IAAI,QAAQ,CAAC;gBAEjD,MAAM,eAAe,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,UAAU,CAAC,CAAC;gBACzE,IAAI,eAAe,EAAE,CAAC;oBACpB,eAAe,CAAC,KAAK,GAAG,OAAO,CAAC;oBAChC,eAAe,CAAC,IAAI,GAAG,WAAW,CAAC;oBACnC,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gBACzC,CAAC;qBAAM,CAAC;oBACN,MAAM,UAAU,GAAG,IAAI,wBAAO,EAAE,CAAC;oBACjC,UAAU,CAAC,GAAG,GAAG,UAAU,CAAC;oBAC5B,UAAU,CAAC,KAAK,GAAG,OAAO,CAAC;oBAC3B,UAAU,CAAC,IAAI,GAAG,WAAW,CAAC;oBAE9B,IAAI,WAAW,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC;wBACnC,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC;oBACzB,CAAC;oBAED,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACpC,CAAC;YACH,CAAC;QACH,CAAC;QAGD,KAAK,MAAM,UAAU,IAAI,QAAQ,EAAE,CAAC;YAClC,IAAI,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACnE,SAAS;YACX,CAAC;YAED,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;YAC3B,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC;YAClC,IAAI,KAAK,GAAG,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAElF,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,IAAI,QAAQ,CAAC;YAChD,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC/C,MAAM,aAAa,GAAG,CAAC,CAAC,UAAU,EAAE,SAAS,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI,IAAI,KAAK,KAAK,IAAI,CAAC;YAEnG,IAAI,aAAa,EAAE,CAAC;gBAClB,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAChD,CAAC;YAED,MAAM,eAAe,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;YAClE,IAAI,eAAe,EAAE,CAAC;gBACpB,eAAe,CAAC,KAAK,GAAG,KAAK,CAAC;gBAC9B,eAAe,CAAC,IAAI,GAAG,WAAW,CAAC;gBACnC,eAAe,CAAC,SAAS,GAAG,aAAa,CAAC;gBAC1C,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,MAAM,UAAU,GAAG,IAAI,wBAAO,EAAE,CAAC;gBACjC,UAAU,CAAC,GAAG,GAAG,GAAG,CAAC;gBACrB,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC;gBACzB,UAAU,CAAC,IAAI,GAAG,WAAW,CAAC;gBAC9B,UAAU,CAAC,SAAS,GAAG,aAAa,CAAC;gBAErC,IAAI,WAAW,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC;oBACnC,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC;gBACzB,CAAC;gBAED,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QAED,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACzC,CAAC;QAED,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACzC,CAAC;QACD,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAEjC,OAAO,CAAC,GAAG,gBAAgB,EAAE,GAAG,gBAAgB,CAAC,CAAC;IACpD,CAAC;IAOD,cAAc,CAAY,UAAsB;QAC9C,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAoB,CAAC,CAAC;QACnE,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,aAAa,CAAC,KAAK,CAAC;QAC7B,CAAC;QAED,OAAO,IAAI,CAAC;IAYd,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,YAA0B,EAAE,sBAA2B,EAAE;QAEvE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,YAAY,CAAC;QAEhD,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAmB,YAAY,CAAC,CAAC;QACvE,IAAI,UAAU,KAAK,OAAO,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;YACnD,MAAM,IAAI,2BAAkB,CAAC,+BAAc,CAAC,SAAS,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,mBAAmB,CAAC,UAAU,EAAE,CAAC;YACnC,MAAM,eAAe,GAAG,CAAC,6BAA6B,CAAC,CAAC;YACxD,MAAM,kBAAkB,GAAG,mBAAmB,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACtH,MAAM,aAAa,GAAG,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC;YACpD,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,MAAM,IAAI,4BAAmB,CAAC,+BAAc,CAAC,SAAS,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAmB,WAAW,CAAC,CAAC;QAClE,MAAM,MAAM,GAAG,mBAAmB,CAAC,UAAU,CAAC,GAAG,CAAC;QAClD,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAmB,cAAc,CAAC,CAAC;QAC3E,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,4CAA4C,MAAM,mBAAmB,MAAM,uBAAuB,UAAU,wBAAwB,UAAU,EAAE,EAAE,CAAC;IACrL,CAAC;CAEF,CAAA;AAxbY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,mBAAU,GAAE;IAeR,WAAA,IAAA,eAAM,EAAC,mBAAY,CAAC,CAAA;IACpB,WAAA,IAAA,eAAM,EAAC,gCAAyB,CAAC,CAAA;IAKjC,WAAA,IAAA,0BAAgB,EAAC,kBAAI,CAAC,CAAA;qDAJC,8BAAa;QACtB,sCAAiB;QACH,qDAAwB;QACb,+CAAqB;QACJ,oBAAU;GApB1D,cAAc,CAwb1B","sourcesContent":["import { BadRequestException, ForbiddenException, Inject, Injectable } from '@nestjs/common';\nimport { InjectRepository } from '@nestjs/typeorm';\nimport { Repository } from 'typeorm';\nimport * as fsPromises from 'fs/promises';\nimport { ERROR_MESSAGES } from 'src/constants/error-messages';\nimport { CreateSettingDto } from 'src/dtos/create-setting.dto';\nimport { GetMcpUrlDto } from 'src/dtos/get-mcp-url.dto';\nimport { User } from 'src/entities/user.entity';\nimport { SettingRepository } from '../repository/setting.repository';\nimport { FILE_SERVICE, IFileService, FILE_STORAGE_PATH_BUILDER, IStoragePathBuilder } from './file';\nimport { Setting } from '../entities/setting.entity';\nimport { RequestContextService } from './request-context.service';\nimport { SolidRegistry } from 'src/helpers/solid-registry';\nimport { AdminSettingDefinition, AdminSettingsResponse, ISettingsProvider, NoInfer, SettingControlType, SettingDefinition, SettingLevel } from '../interfaces';\nimport { ModuleMetadataRepository } from 'src/repository/module-metadata.repository';\nimport type { SolidCoreSetting } from './settings/default-settings-provider.service';\nimport { Logger } from '@nestjs/common';\nimport { EncryptionService } from './encryption.service';\n\n\n@Injectable()\nexport class SettingService {\n private readonly _logger = new Logger(SettingService.name);\n\n private settings: SettingDefinition[] = [];\n private settingsByKey = new Map<string, SettingDefinition>();\n private readonly encryptionService: EncryptionService | null;\n\n private readonly arrayKeysToSkip = new Set([\n 'authenticationPasswordRegex',\n 'authenticationPasswordRegexErrorMessage',\n 'authenticationPasswordComplexityDescription',\n ]);\n\n constructor(\n @Inject(FILE_SERVICE) readonly fileService: IFileService,\n @Inject(FILE_STORAGE_PATH_BUILDER) readonly pathBuilder: IStoragePathBuilder,\n readonly solidRegistry: SolidRegistry,\n readonly repo: SettingRepository,\n readonly moduleMetadataRepo: ModuleMetadataRepository,\n private readonly requestContextService: RequestContextService,\n @InjectRepository(User) private readonly userRepository: Repository<User>,\n ) {\n const encKey = process.env.APP_ENCRYPTION_KEY;\n this.encryptionService = encKey ? new EncryptionService(encKey) : null;\n if (!encKey) this._logger.warn('APP_ENCRYPTION_KEY is not set — encrypted settings will not be decrypted');\n }\n\n private async getSettingsFromDb(): Promise<Setting[]> {\n const settings = await this.repo.find({ relations: ['user'] });\n return settings;\n }\n\n private parseSettingValue(value: string, key: string): any {\n try {\n return JSON.parse(value);\n } catch {\n if (value === 'true' || value === 'false') {\n return value === 'true';\n }\n if (!isNaN(Number(value)) && value.trim() !== '') {\n return Number(value);\n }\n if (!this.arrayKeysToSkip.has(key) && value.includes(',')) {\n return value.split(',').map(item => item.trim());\n }\n return value;\n }\n }\n\n private buildSettingLabel(key: string): string {\n return key\n .replace(/([a-z0-9])([A-Z])/g, '$1 $2')\n .replace(/[-_]+/g, ' ')\n .replace(/\\s+/g, ' ')\n .trim()\n .replace(/\\b\\w/g, (match) => match.toUpperCase());\n }\n\n private inferControlType(setting: SettingDefinition): SettingControlType {\n if (setting.controlType) {\n return setting.controlType;\n }\n\n if (setting.options?.length) {\n return 'selectionStatic';\n }\n\n if (typeof setting.value === 'boolean') {\n return 'boolean';\n }\n\n if (typeof setting.value === 'number') {\n return 'numeric';\n }\n\n return 'shortText';\n }\n\n private toAdminSettingDefinition(setting: SettingDefinition): AdminSettingDefinition {\n return {\n ...setting,\n label: setting.label ?? this.buildSettingLabel(setting.key),\n controlType: this.inferControlType(setting),\n editable: setting.level === SettingLevel.SystemAdminEditable,\n };\n }\n\n /**\n * Reads all registered providers and gathers settings from across the running platform.\n * This is the superset of all possible settings. \n * @returns \n */\n private getAllSettingsFromProviders(): SettingDefinition[] {\n // get all settings from registry \n const allSettingsProviders = this.solidRegistry.getSettingsProviders();\n const settings: SettingDefinition[] = [];\n const seenKeys = new Map<string, { setting: SettingDefinition; providerName?: string }>();\n for (const wrapper of allSettingsProviders) {\n const instance = wrapper.instance as ISettingsProvider;\n // if (!instance?.getSettings) continue;\n for (const setting of instance.getSettings()) {\n const existing = seenKeys.get(setting.key);\n if (existing) {\n throw new Error(\n `Duplicate setting key detected: ${setting.key}. ` +\n `First: ${JSON.stringify(existing.setting)} from provider: ${existing.providerName ?? \"unknown\"}. ` +\n `Second: ${JSON.stringify(setting)} from provider: ${wrapper.name ?? \"unknown\"}.`\n );\n }\n seenKeys.set(setting.key, { setting, providerName: wrapper.name });\n settings.push(setting);\n }\n }\n\n return settings\n }\n\n /**\n * public method that gets all settings in the system, this includes settings from solid-core and any consuming projects.\n * this means that the settings returned are the ones provided by ISettingsProvider, merged with values if any from the database. \n * \n * @returns \n */\n getAllSettings(): SettingDefinition[] {\n return this.settings;\n }\n\n async updateSettingsCache(): Promise<void> {\n this._logger.debug(`updating settings cache...`);\n const settingsFromDb = await this.getSettingsFromDb();\n const settingsFromProviders = this.getAllSettingsFromProviders();\n const settingsFromDbByKey = new Map(settingsFromDb.map(setting => [setting.key, setting]));\n\n this.settings = settingsFromProviders.map(setting => {\n const settingFromDb = settingsFromDbByKey.get(setting.key);\n const valueFromDb = settingFromDb?.value;\n if (settingFromDb?.key && valueFromDb !== undefined && valueFromDb !== null) {\n let rawValue = valueFromDb;\n if (settingFromDb.encrypted && this.encryptionService) {\n try {\n rawValue = this.encryptionService.decrypt(rawValue);\n } catch {\n this._logger.warn(`Failed to decrypt setting \"${setting.key}\" — using raw value`);\n }\n }\n const parsedValue = typeof rawValue === 'string' ? this.parseSettingValue(rawValue, settingFromDb.key) : rawValue;\n return { ...setting, value: parsedValue };\n }\n return setting;\n });\n\n // Also keep a key vs SettingDefinition map...\n this.settingsByKey = new Map(this.settings.map(setting => [setting.key, setting]));\n }\n\n private isDisallowedSettingKey(key: string, settingLevelsToDisallow: SettingLevel[]): boolean {\n if (!key) {\n return false;\n }\n const setting = this.settingsByKey.get(key);\n // return setting ? [SettingLevel.SystemEnv, SettingLevel.SystemAdminReadonly].includes(setting.level) : false;\n return setting ? settingLevelsToDisallow.includes(setting.level) : false;\n }\n\n /**\n * 1. \n * This method will seed (insert only) settings that are introduced in code but do not already exist in the database. \n * Also this method only deals with settings with level system-admin-editable & internal-user.\n */\n async seedSystemAdminEditableAndAboveSettings(): Promise<void> {\n // Seed only settings with level system-admin-editable & internal-user, \n // so basically settings which are either system-admin-editable and above.\n const saEditableAndAbove = this.getAllSettingsFromProviders().filter(i => [SettingLevel.SystemAdminEditable, SettingLevel.InternalUser].includes(i.level));\n\n // Get hold of the current values from the database.\n const existingSettingsFromDb: Setting[] = await this.getSettingsFromDb();\n\n // const existingKeysFromDb = new Set(existingSettingsFromDb.map(s => s.key));\n const existingSettingsFromDbByKey = new Map(existingSettingsFromDb.map(setting => [setting.key, setting]));\n const settingsToMutate: Setting[] = [];\n // const settingsToUpdate: Setting[] = [];\n\n for (const { key, value, level, moduleName, encrypted } of saEditableAndAbove) {\n const moduleMetadata = await this.moduleMetadataRepo.findOneBy({ name: moduleName });\n if (!existingSettingsFromDbByKey.has(key)) {\n const setting = new Setting();\n setting.key = key;\n setting.level = level;\n setting.encrypted = !!encrypted;\n if (moduleMetadata)\n setting.moduleMetadata = moduleMetadata;\n\n let rawValue: string | null;\n if (typeof value === 'boolean') {\n rawValue = value.toString();\n } else if (Array.isArray(value)) {\n rawValue = value.join(',');\n } else if (value === null || value === undefined) {\n rawValue = null;\n } else {\n rawValue = String(value);\n }\n\n if (encrypted && this.encryptionService && rawValue !== null) {\n rawValue = this.encryptionService.encrypt(rawValue);\n }\n setting.value = rawValue;\n\n settingsToMutate.push(setting);\n }\n else {\n const setting = existingSettingsFromDbByKey.get(key);\n setting.level = level;\n setting.encrypted = !!encrypted;\n if (moduleMetadata)\n setting.moduleMetadata = moduleMetadata;\n settingsToMutate.push(setting);\n }\n }\n\n if (settingsToMutate.length > 0) {\n await this.repo.save(settingsToMutate);\n }\n // if (settingsToUpdate.length > 0) {\n // await this.repo.save(settingsToUpdate);\n // }\n }\n\n /**\n * 2. \n * Method used from the solid-core-ui to fetch available settings. \n * Here we are returning settings other than system-env.\n * \n * @returns \n */\n async getNonEncryptedSystemAdminReadonlyAndAboveSettings(): Promise<AdminSettingsResponse> {\n const activeUser = this.requestContextService.getActiveUser();\n const hasViewEncryptedPermission = !!activeUser?.permissions?.includes('settings:view_encrypted');\n\n const data = this.settings\n .filter(i => i.level !== \"system-env\")\n .filter(i => hasViewEncryptedPermission || !i.encrypted)\n .filter((setting) => [SettingLevel.SystemAdminReadonly, SettingLevel.SystemAdminEditable].includes(setting.level))\n .map((setting) => this.toAdminSettingDefinition(setting))\n .sort((left, right) => {\n const groupCompare = (left.group ?? '').localeCompare(right.group ?? '');\n if (groupCompare !== 0) {\n return groupCompare;\n }\n\n const leftSort = left.sortOrder ?? Number.MAX_SAFE_INTEGER;\n const rightSort = right.sortOrder ?? Number.MAX_SAFE_INTEGER;\n if (leftSort !== rightSort) {\n return leftSort - rightSort;\n }\n\n return left.label!.localeCompare(right.label!);\n });\n\n return { data };\n }\n\n /**\n * 3. \n * This method updates settings from the admin user interface. \n * Most likely settings with level system-admin-editable & internal-user are the ones that will get modified here. \n * \n * @param settings \n * @param uploadedFiles \n * @returns \n */\n async updateSettings(settings: CreateSettingDto[] = [], uploadedFiles: Array<Express.Multer.File> = []): Promise<Setting[]> {\n const activeUser = this.requestContextService.getActiveUser();\n const userId = activeUser?.sub;\n\n const restrictedKeys = new Set<string>();\n\n settings.forEach(setting => {\n if (this.isDisallowedSettingKey(setting.key, [SettingLevel.SystemEnv, SettingLevel.SystemAdminReadonly])) {\n restrictedKeys.add(setting.key);\n }\n });\n uploadedFiles.forEach(file => {\n if (this.isDisallowedSettingKey(file.fieldname, [SettingLevel.SystemEnv, SettingLevel.SystemAdminReadonly])) {\n restrictedKeys.add(file.fieldname);\n }\n });\n\n if (restrictedKeys.size > 0) {\n throw new BadRequestException(`${ERROR_MESSAGES.FORBIDDEN}: Settings ${Array.from(restrictedKeys).join(', ')} cannot be modified.`);\n }\n\n // const existingSettings = await this.repo.find();\n const existingSettings: Setting[] = await this.getSettingsFromDb();\n\n const settingsToUpdate: Setting[] = [];\n const settingsToCreate: Setting[] = [];\n\n let user: User | null = null;\n const hasUserSettings = settings.some(dto => dto.type === 'user');\n if (hasUserSettings && userId) {\n user = await this.userRepository.findOne({ where: { id: userId } });\n }\n\n // Handle uploaded files\n if (uploadedFiles?.length) {\n for (const file of uploadedFiles) {\n const settingKey = file.fieldname;\n const relativeFileName = `${file.filename}-${file.originalname}`;\n\n // Read file from local disk (where Multer stores uploads) and write to storage\n // The path builder constructs the provider-appropriate storage path\n const fileContent = await fsPromises.readFile(file.path);\n const storagePath = this.pathBuilder.build(relativeFileName);\n const fileUrl = await this.fileService.write(storagePath, fileContent, { contentType: file.mimetype });\n // Delete the temp file from local disk\n await fsPromises.unlink(file.path);\n\n const matchedDto = settings.find(dto => dto.key === settingKey);\n const settingType = matchedDto?.type ?? 'system';\n\n const existingSetting = existingSettings.find(s => s.key === settingKey);\n if (existingSetting) {\n existingSetting.value = fileUrl;\n existingSetting.type = settingType;\n settingsToUpdate.push(existingSetting);\n } else {\n const newSetting = new Setting();\n newSetting.key = settingKey;\n newSetting.value = fileUrl;\n newSetting.type = settingType;\n\n if (settingType === 'user' && user) {\n newSetting.user = user;\n }\n\n settingsToCreate.push(newSetting);\n }\n }\n }\n\n // Handle non-file settings\n for (const settingDto of settings) {\n if (uploadedFiles?.some(file => file.fieldname === settingDto.key)) {\n continue; // skip if already handled via file\n }\n\n const key = settingDto.key;\n const rawValue = settingDto.value;\n let value = rawValue === null || rawValue === undefined ? null : String(rawValue);\n\n const settingType = settingDto.type ?? 'system';\n const definition = this.settingsByKey.get(key);\n const shouldEncrypt = !!definition?.encrypted && this.encryptionService !== null && value !== null;\n\n if (shouldEncrypt) {\n value = this.encryptionService.encrypt(value);\n }\n\n const existingSetting = existingSettings.find(s => s.key === key);\n if (existingSetting) {\n existingSetting.value = value;\n existingSetting.type = settingType;\n existingSetting.encrypted = shouldEncrypt;\n settingsToUpdate.push(existingSetting);\n } else {\n const newSetting = new Setting();\n newSetting.key = key;\n newSetting.value = value;\n newSetting.type = settingType;\n newSetting.encrypted = shouldEncrypt;\n\n if (settingType === 'user' && user) {\n newSetting.user = user;\n }\n\n settingsToCreate.push(newSetting);\n }\n }\n\n if (settingsToUpdate.length > 0) {\n await this.repo.save(settingsToUpdate);\n }\n\n if (settingsToCreate.length > 0) {\n await this.repo.save(settingsToCreate);\n }\n await this.updateSettingsCache();\n\n return [...settingsToUpdate, ...settingsToCreate];\n }\n\n /**\n * 4. \n * @param settingKey \n * @returns \n */\n getConfigValue<T = never>(settingKey: NoInfer<T>) {\n const cachedSetting = this.settingsByKey.get(settingKey as string);\n if (cachedSetting) {\n return cachedSetting.value;\n }\n\n return null;\n\n // const cachedSetting = this.settings.find(setting => setting.key === settingKey);\n // if (cachedSetting) {\n // return cachedSetting.value;\n // }\n\n // // This is probably not needed at all, but leaving it here as a backup for scenarios like \n // // if getConfigValue<SolidCoreSetting>() is called before onApplicationBootstrap() runs or if the cache refresh fails. \n // const getAllSettings = this.getAllSettingsFromProviders();\n // const settingValue = getAllSettings.find(i => (i.key == settingKey))\n // return settingValue?.value;\n }\n\n async getMcpUrl(getMcpUrlDto: GetMcpUrlDto, solidRequestContext: any = {}): Promise<any> {\n\n const { showHeader, inListView } = getMcpUrlDto;\n\n const mcpEnabled = this.getConfigValue<SolidCoreSetting>('mcpEnabled');\n if (mcpEnabled === 'false' || mcpEnabled === false) {\n throw new ForbiddenException(ERROR_MESSAGES.FORBIDDEN);\n }\n\n if (solidRequestContext.activeUser) {\n const permissionNames = [\"SettingController.getMcpUrl\"];\n const matchingPermssions = solidRequestContext.activeUser.permissions.filter((p: any) => permissionNames.includes(p));\n const hasPermission = matchingPermssions.length > 0;\n if (!hasPermission) {\n throw new BadRequestException(ERROR_MESSAGES.FORBIDDEN);\n }\n }\n const apiKey = this.getConfigValue<SolidCoreSetting>('mcpApiKey');\n const userId = solidRequestContext.activeUser.sub;\n const mcpServerUrl = this.getConfigValue<SolidCoreSetting>('mcpServerUrl');\n return { mcpUrl: `${mcpServerUrl}/static/frontend.html?solidx-mcp-api-key=${apiKey}&solidx-user-id=${userId}&solidx-show-header=${showHeader}&solidx-in-list-view=${inListView}` };\n }\n\n}\n"]}
|
|
1
|
+
{"version":3,"file":"setting.service.js","sourceRoot":"","sources":["../../src/services/setting.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { BadRequestException, ForbiddenException, Inject, Injectable } from '@nestjs/common';\nimport { InjectRepository } from '@nestjs/typeorm';\nimport { Repository } from 'typeorm';\nimport * as fsPromises from 'fs/promises';\nimport { ERROR_MESSAGES } from 'src/constants/error-messages';\nimport { CreateSettingDto } from 'src/dtos/create-setting.dto';\nimport { GetMcpUrlDto } from 'src/dtos/get-mcp-url.dto';\nimport { User } from 'src/entities/user.entity';\nimport { SettingRepository } from '../repository/setting.repository';\nimport { FILE_SERVICE, IFileService, FILE_STORAGE_PATH_BUILDER, IStoragePathBuilder } from './file';\nimport { Setting } from '../entities/setting.entity';\nimport { RequestContextService } from './request-context.service';\nimport { SolidRegistry } from 'src/helpers/solid-registry';\nimport { AdminSettingDefinition, AdminSettingsResponse, ISettingsProvider, NoInfer, SettingControlType, SettingDefinition, SettingLevel } from '../interfaces';\nimport { ModuleMetadataRepository } from 'src/repository/module-metadata.repository';\nimport type { SolidCoreSetting } from './settings/default-settings-provider.service';\nimport { Logger } from '@nestjs/common';\nimport { EncryptionService } from './encryption.service';\n\n\n@Injectable()\nexport class SettingService {\n private readonly _logger = new Logger(SettingService.name);\n\n private settings: SettingDefinition[] = [];\n private settingsByKey = new Map<string, SettingDefinition>();\n private readonly encryptionService: EncryptionService | null;\n\n private readonly arrayKeysToSkip = new Set([\n 'authenticationPasswordRegex',\n 'authenticationPasswordRegexErrorMessage',\n 'authenticationPasswordComplexityDescription',\n ]);\n\n constructor(\n @Inject(FILE_SERVICE) readonly fileService: IFileService,\n @Inject(FILE_STORAGE_PATH_BUILDER) readonly pathBuilder: IStoragePathBuilder,\n readonly solidRegistry: SolidRegistry,\n readonly repo: SettingRepository,\n readonly moduleMetadataRepo: ModuleMetadataRepository,\n private readonly requestContextService: RequestContextService,\n @InjectRepository(User) private readonly userRepository: Repository<User>,\n ) {\n const encKey = process.env.APP_ENCRYPTION_KEY;\n this.encryptionService = encKey ? new EncryptionService(encKey) : null;\n if (!encKey) this._logger.warn('APP_ENCRYPTION_KEY is not set — encrypted settings will not be decrypted');\n }\n\n private async getSettingsFromDb(): Promise<Setting[]> {\n const settings = await this.repo.find({ relations: ['user'] });\n return settings;\n }\n\n private async getSettingsFromDbForSeeding(): Promise<Setting[]> {\n return this.repo.find({ relations: ['moduleMetadata'] });\n }\n\n private parseSettingValue(value: string, key: string): any {\n try {\n return JSON.parse(value);\n } catch {\n if (value === 'true' || value === 'false') {\n return value === 'true';\n }\n if (!isNaN(Number(value)) && value.trim() !== '') {\n return Number(value);\n }\n if (!this.arrayKeysToSkip.has(key) && value.includes(',')) {\n return value.split(',').map(item => item.trim());\n }\n return value;\n }\n }\n\n private buildSettingLabel(key: string): string {\n return key\n .replace(/([a-z0-9])([A-Z])/g, '$1 $2')\n .replace(/[-_]+/g, ' ')\n .replace(/\\s+/g, ' ')\n .trim()\n .replace(/\\b\\w/g, (match) => match.toUpperCase());\n }\n\n private inferControlType(setting: SettingDefinition): SettingControlType {\n if (setting.controlType) {\n return setting.controlType;\n }\n\n if (setting.options?.length) {\n return 'selectionStatic';\n }\n\n if (typeof setting.value === 'boolean') {\n return 'boolean';\n }\n\n if (typeof setting.value === 'number') {\n return 'numeric';\n }\n\n return 'shortText';\n }\n\n private toAdminSettingDefinition(setting: SettingDefinition): AdminSettingDefinition {\n return {\n ...setting,\n label: setting.label ?? this.buildSettingLabel(setting.key),\n controlType: this.inferControlType(setting),\n editable: setting.level === SettingLevel.SystemAdminEditable,\n };\n }\n\n /**\n * Reads all registered providers and gathers settings from across the running platform.\n * This is the superset of all possible settings. \n * @returns \n */\n private getAllSettingsFromProviders(): SettingDefinition[] {\n // get all settings from registry \n const allSettingsProviders = this.solidRegistry.getSettingsProviders();\n const settings: SettingDefinition[] = [];\n const seenKeys = new Map<string, { setting: SettingDefinition; providerName?: string }>();\n for (const wrapper of allSettingsProviders) {\n const instance = wrapper.instance as ISettingsProvider;\n // if (!instance?.getSettings) continue;\n for (const setting of instance.getSettings()) {\n const existing = seenKeys.get(setting.key);\n if (existing) {\n throw new Error(\n `Duplicate setting key detected: ${setting.key}. ` +\n `First: ${JSON.stringify(existing.setting)} from provider: ${existing.providerName ?? \"unknown\"}. ` +\n `Second: ${JSON.stringify(setting)} from provider: ${wrapper.name ?? \"unknown\"}.`\n );\n }\n seenKeys.set(setting.key, { setting, providerName: wrapper.name });\n settings.push(setting);\n }\n }\n\n return settings\n }\n\n /**\n * public method that gets all settings in the system, this includes settings from solid-core and any consuming projects.\n * this means that the settings returned are the ones provided by ISettingsProvider, merged with values if any from the database. \n * \n * @returns \n */\n getAllSettings(): SettingDefinition[] {\n return this.settings;\n }\n\n async updateSettingsCache(): Promise<void> {\n this._logger.debug(`updating settings cache...`);\n const settingsFromDb = await this.getSettingsFromDb();\n const settingsFromProviders = this.getAllSettingsFromProviders();\n const settingsFromDbByKey = new Map(settingsFromDb.map(setting => [setting.key, setting]));\n\n this.settings = settingsFromProviders.map(setting => {\n const settingFromDb = settingsFromDbByKey.get(setting.key);\n const valueFromDb = settingFromDb?.value;\n if (settingFromDb?.key && valueFromDb !== undefined && valueFromDb !== null) {\n let rawValue = valueFromDb;\n if (settingFromDb.encrypted && this.encryptionService) {\n try {\n rawValue = this.encryptionService.decrypt(rawValue);\n } catch {\n this._logger.warn(`Failed to decrypt setting \"${setting.key}\" — using raw value`);\n }\n }\n const parsedValue = typeof rawValue === 'string' ? this.parseSettingValue(rawValue, settingFromDb.key) : rawValue;\n return { ...setting, value: parsedValue };\n }\n return setting;\n });\n\n // Also keep a key vs SettingDefinition map...\n this.settingsByKey = new Map(this.settings.map(setting => [setting.key, setting]));\n }\n\n private isDisallowedSettingKey(key: string, settingLevelsToDisallow: SettingLevel[]): boolean {\n if (!key) {\n return false;\n }\n const setting = this.settingsByKey.get(key);\n // return setting ? [SettingLevel.SystemEnv, SettingLevel.SystemAdminReadonly].includes(setting.level) : false;\n return setting ? settingLevelsToDisallow.includes(setting.level) : false;\n }\n\n /**\n * 1. \n * This method will seed (insert only) settings that are introduced in code but do not already exist in the database. \n * Also this method only deals with settings with level system-admin-editable & internal-user.\n */\n async seedSystemAdminEditableAndAboveSettings(): Promise<void> {\n // Seed only settings with level system-admin-editable & internal-user, \n // so basically settings which are either system-admin-editable and above.\n const saEditableAndAbove = this.getAllSettingsFromProviders().filter(i => [SettingLevel.SystemAdminEditable, SettingLevel.InternalUser].includes(i.level));\n\n // Get hold of the current values from the database.\n const existingSettingsFromDb: Setting[] = await this.getSettingsFromDbForSeeding();\n\n // const existingKeysFromDb = new Set(existingSettingsFromDb.map(s => s.key));\n const existingSettingsFromDbByKey = new Map(existingSettingsFromDb.map(setting => [setting.key, setting]));\n const settingsToCreate: Setting[] = [];\n const settingsToUpdate: Setting[] = [];\n const moduleNames = Array.from(\n new Set(\n saEditableAndAbove\n .map(setting => setting.moduleName)\n .filter((moduleName): moduleName is string => !!moduleName)\n )\n );\n const moduleMetadataByName = new Map<string, Awaited<ReturnType<ModuleMetadataRepository['findOneBy']>>>();\n\n await Promise.all(\n moduleNames.map(async (moduleName) => {\n const moduleMetadata = await this.moduleMetadataRepo.findOneBy({ name: moduleName });\n moduleMetadataByName.set(moduleName, moduleMetadata);\n })\n );\n\n for (const { key, value, level, moduleName, encrypted } of saEditableAndAbove) {\n const moduleMetadata = moduleName ? moduleMetadataByName.get(moduleName) : null;\n if (!existingSettingsFromDbByKey.has(key)) {\n const setting = new Setting();\n setting.key = key;\n setting.level = level;\n setting.encrypted = !!encrypted;\n if (moduleMetadata)\n setting.moduleMetadata = moduleMetadata;\n\n let rawValue: string | null;\n if (typeof value === 'boolean') {\n rawValue = value.toString();\n } else if (Array.isArray(value)) {\n rawValue = value.join(',');\n } else if (value === null || value === undefined) {\n rawValue = null;\n } else {\n rawValue = String(value);\n }\n\n if (encrypted && this.encryptionService && rawValue !== null) {\n rawValue = this.encryptionService.encrypt(rawValue);\n }\n setting.value = rawValue;\n\n settingsToCreate.push(setting);\n }\n else {\n const setting = existingSettingsFromDbByKey.get(key);\n const existingModuleMetadataId = setting.moduleMetadata?.id ?? null;\n const nextModuleMetadataId = moduleMetadata?.id ?? null;\n const levelChanged = setting.level !== level;\n const encryptedChanged = setting.encrypted !== !!encrypted;\n const moduleChanged = !!moduleMetadata && existingModuleMetadataId !== nextModuleMetadataId;\n\n if (!levelChanged && !encryptedChanged && !moduleChanged) {\n continue;\n }\n\n setting.level = level;\n setting.encrypted = !!encrypted;\n if (moduleMetadata) {\n setting.moduleMetadata = moduleMetadata;\n }\n settingsToUpdate.push(setting);\n }\n }\n\n if (settingsToCreate.length > 0) {\n await this.repo.save(settingsToCreate);\n }\n\n if (settingsToUpdate.length > 0) {\n await this.repo.save(settingsToUpdate);\n }\n }\n\n /**\n * 2. \n * Method used from the solid-core-ui to fetch available settings. \n * Here we are returning settings other than system-env.\n * \n * @returns \n */\n async getNonEncryptedSystemAdminReadonlyAndAboveSettings(): Promise<AdminSettingsResponse> {\n const activeUser = this.requestContextService.getActiveUser();\n const hasViewEncryptedPermission = !!activeUser?.permissions?.includes('settings:view_encrypted');\n\n const data = this.settings\n .filter(i => i.level !== \"system-env\")\n .filter(i => hasViewEncryptedPermission || !i.encrypted)\n .filter((setting) => [SettingLevel.SystemAdminReadonly, SettingLevel.SystemAdminEditable].includes(setting.level))\n .map((setting) => this.toAdminSettingDefinition(setting))\n .sort((left, right) => {\n const groupCompare = (left.group ?? '').localeCompare(right.group ?? '');\n if (groupCompare !== 0) {\n return groupCompare;\n }\n\n const leftSort = left.sortOrder ?? Number.MAX_SAFE_INTEGER;\n const rightSort = right.sortOrder ?? Number.MAX_SAFE_INTEGER;\n if (leftSort !== rightSort) {\n return leftSort - rightSort;\n }\n\n return left.label!.localeCompare(right.label!);\n });\n\n return { data };\n }\n\n /**\n * 3. \n * This method updates settings from the admin user interface. \n * Most likely settings with level system-admin-editable & internal-user are the ones that will get modified here. \n * \n * @param settings \n * @param uploadedFiles \n * @returns \n */\n async updateSettings(settings: CreateSettingDto[] = [], uploadedFiles: Array<Express.Multer.File> = []): Promise<Setting[]> {\n const activeUser = this.requestContextService.getActiveUser();\n const userId = activeUser?.sub;\n\n const restrictedKeys = new Set<string>();\n\n settings.forEach(setting => {\n if (this.isDisallowedSettingKey(setting.key, [SettingLevel.SystemEnv, SettingLevel.SystemAdminReadonly])) {\n restrictedKeys.add(setting.key);\n }\n });\n uploadedFiles.forEach(file => {\n if (this.isDisallowedSettingKey(file.fieldname, [SettingLevel.SystemEnv, SettingLevel.SystemAdminReadonly])) {\n restrictedKeys.add(file.fieldname);\n }\n });\n\n if (restrictedKeys.size > 0) {\n throw new BadRequestException(`${ERROR_MESSAGES.FORBIDDEN}: Settings ${Array.from(restrictedKeys).join(', ')} cannot be modified.`);\n }\n\n // const existingSettings = await this.repo.find();\n const existingSettings: Setting[] = await this.getSettingsFromDb();\n\n const settingsToUpdate: Setting[] = [];\n const settingsToCreate: Setting[] = [];\n\n let user: User | null = null;\n const hasUserSettings = settings.some(dto => dto.type === 'user');\n if (hasUserSettings && userId) {\n user = await this.userRepository.findOne({ where: { id: userId } });\n }\n\n // Handle uploaded files\n if (uploadedFiles?.length) {\n for (const file of uploadedFiles) {\n const settingKey = file.fieldname;\n const relativeFileName = `${file.filename}-${file.originalname}`;\n\n // Read file from local disk (where Multer stores uploads) and write to storage\n // The path builder constructs the provider-appropriate storage path\n const fileContent = await fsPromises.readFile(file.path);\n const storagePath = this.pathBuilder.build(relativeFileName);\n const fileUrl = await this.fileService.write(storagePath, fileContent, { contentType: file.mimetype });\n // Delete the temp file from local disk\n await fsPromises.unlink(file.path);\n\n const matchedDto = settings.find(dto => dto.key === settingKey);\n const settingType = matchedDto?.type ?? 'system';\n\n const existingSetting = existingSettings.find(s => s.key === settingKey);\n if (existingSetting) {\n existingSetting.value = fileUrl;\n existingSetting.type = settingType;\n settingsToUpdate.push(existingSetting);\n } else {\n const newSetting = new Setting();\n newSetting.key = settingKey;\n newSetting.value = fileUrl;\n newSetting.type = settingType;\n\n if (settingType === 'user' && user) {\n newSetting.user = user;\n }\n\n settingsToCreate.push(newSetting);\n }\n }\n }\n\n // Handle non-file settings\n for (const settingDto of settings) {\n if (uploadedFiles?.some(file => file.fieldname === settingDto.key)) {\n continue; // skip if already handled via file\n }\n\n const key = settingDto.key;\n const rawValue = settingDto.value;\n let value = rawValue === null || rawValue === undefined ? null : String(rawValue);\n\n const settingType = settingDto.type ?? 'system';\n const definition = this.settingsByKey.get(key);\n const shouldEncrypt = !!definition?.encrypted && this.encryptionService !== null && value !== null;\n\n if (shouldEncrypt) {\n value = this.encryptionService.encrypt(value);\n }\n\n const existingSetting = existingSettings.find(s => s.key === key);\n if (existingSetting) {\n existingSetting.value = value;\n existingSetting.type = settingType;\n existingSetting.encrypted = shouldEncrypt;\n settingsToUpdate.push(existingSetting);\n } else {\n const newSetting = new Setting();\n newSetting.key = key;\n newSetting.value = value;\n newSetting.type = settingType;\n newSetting.encrypted = shouldEncrypt;\n\n if (settingType === 'user' && user) {\n newSetting.user = user;\n }\n\n settingsToCreate.push(newSetting);\n }\n }\n\n if (settingsToUpdate.length > 0) {\n await this.repo.save(settingsToUpdate);\n }\n\n if (settingsToCreate.length > 0) {\n await this.repo.save(settingsToCreate);\n }\n await this.updateSettingsCache();\n\n return [...settingsToUpdate, ...settingsToCreate];\n }\n\n /**\n * 4. \n * @param settingKey \n * @returns \n */\n getConfigValue<T = never>(settingKey: NoInfer<T>) {\n const cachedSetting = this.settingsByKey.get(settingKey as string);\n if (cachedSetting) {\n return cachedSetting.value;\n }\n\n return null;\n\n // const cachedSetting = this.settings.find(setting => setting.key === settingKey);\n // if (cachedSetting) {\n // return cachedSetting.value;\n // }\n\n // // This is probably not needed at all, but leaving it here as a backup for scenarios like \n // // if getConfigValue<SolidCoreSetting>() is called before onApplicationBootstrap() runs or if the cache refresh fails. \n // const getAllSettings = this.getAllSettingsFromProviders();\n // const settingValue = getAllSettings.find(i => (i.key == settingKey))\n // return settingValue?.value;\n }\n\n async getMcpUrl(getMcpUrlDto: GetMcpUrlDto, solidRequestContext: any = {}): Promise<any> {\n\n const { showHeader, inListView } = getMcpUrlDto;\n\n const mcpEnabled = this.getConfigValue<SolidCoreSetting>('mcpEnabled');\n if (mcpEnabled === 'false' || mcpEnabled === false) {\n throw new ForbiddenException(ERROR_MESSAGES.FORBIDDEN);\n }\n\n if (solidRequestContext.activeUser) {\n const permissionNames = [\"SettingController.getMcpUrl\"];\n const matchingPermssions = solidRequestContext.activeUser.permissions.filter((p: any) => permissionNames.includes(p));\n const hasPermission = matchingPermssions.length > 0;\n if (!hasPermission) {\n throw new BadRequestException(ERROR_MESSAGES.FORBIDDEN);\n }\n }\n const apiKey = this.getConfigValue<SolidCoreSetting>('mcpApiKey');\n const userId = solidRequestContext.activeUser.sub;\n const mcpServerUrl = this.getConfigValue<SolidCoreSetting>('mcpServerUrl');\n return { mcpUrl: `${mcpServerUrl}/static/frontend.html?solidx-mcp-api-key=${apiKey}&solidx-user-id=${userId}&solidx-show-header=${showHeader}&solidx-in-list-view=${inListView}` };\n }\n\n}\n"]}
|
|
@@ -28,6 +28,15 @@ declare const getSolidCoreSettings: (isProd: boolean) => [{
|
|
|
28
28
|
readonly group: "authentication-settings";
|
|
29
29
|
readonly sortOrder: 50;
|
|
30
30
|
readonly controlType: "boolean";
|
|
31
|
+
}, {
|
|
32
|
+
readonly moduleName: "solid-core";
|
|
33
|
+
readonly key: "iamMicrosoftActiveDirectoryOAuthEnabled";
|
|
34
|
+
readonly value: false;
|
|
35
|
+
readonly level: SettingLevel.SystemAdminEditable;
|
|
36
|
+
readonly label: "Allow Login / Signup With Microsoft Active Directory";
|
|
37
|
+
readonly group: "authentication-settings";
|
|
38
|
+
readonly sortOrder: 50;
|
|
39
|
+
readonly controlType: "boolean";
|
|
31
40
|
}, {
|
|
32
41
|
readonly moduleName: "solid-core";
|
|
33
42
|
readonly key: "authPagesLayout";
|
|
@@ -310,6 +319,15 @@ declare const getSolidCoreSettings: (isProd: boolean) => [{
|
|
|
310
319
|
readonly group: "system-settings";
|
|
311
320
|
readonly sortOrder: 30;
|
|
312
321
|
readonly controlType: "shortText";
|
|
322
|
+
}, {
|
|
323
|
+
readonly moduleName: "solid-core";
|
|
324
|
+
readonly key: "frontendAdminBaseUrl";
|
|
325
|
+
readonly value: string;
|
|
326
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
327
|
+
readonly label: "Frontend Admin Base URL";
|
|
328
|
+
readonly group: "system-settings";
|
|
329
|
+
readonly sortOrder: 35;
|
|
330
|
+
readonly controlType: "shortText";
|
|
313
331
|
}, {
|
|
314
332
|
readonly moduleName: "solid-core";
|
|
315
333
|
readonly key: "solidAppWebsiteUrl";
|
|
@@ -590,6 +608,47 @@ declare const getSolidCoreSettings: (isProd: boolean) => [{
|
|
|
590
608
|
readonly key: "MICROSOFT_REDIRECT_URL";
|
|
591
609
|
readonly value: string;
|
|
592
610
|
readonly level: SettingLevel.SystemAdminReadonly;
|
|
611
|
+
}, {
|
|
612
|
+
readonly moduleName: "solid-core";
|
|
613
|
+
readonly key: "MICROSOFT_ACTIVE_DIRECTORY_CLIENT_ID";
|
|
614
|
+
readonly value: string;
|
|
615
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
616
|
+
readonly label: "Microsoft Active Directory OAuth Client ID";
|
|
617
|
+
readonly group: "oauth-settings";
|
|
618
|
+
readonly sortOrder: 70;
|
|
619
|
+
readonly controlType: "shortText";
|
|
620
|
+
}, {
|
|
621
|
+
readonly moduleName: "solid-core";
|
|
622
|
+
readonly key: "MICROSOFT_ACTIVE_DIRECTORY_CLIENT_SECRET";
|
|
623
|
+
readonly value: string;
|
|
624
|
+
readonly level: SettingLevel.SystemEnv;
|
|
625
|
+
}, {
|
|
626
|
+
readonly moduleName: "solid-core";
|
|
627
|
+
readonly key: "MICROSOFT_ACTIVE_DIRECTORY_TENANT_ID";
|
|
628
|
+
readonly value: string;
|
|
629
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
630
|
+
readonly label: "Microsoft Active Directory OAuth Tenant ID";
|
|
631
|
+
readonly group: "oauth-settings";
|
|
632
|
+
readonly sortOrder: 80;
|
|
633
|
+
readonly controlType: "shortText";
|
|
634
|
+
}, {
|
|
635
|
+
readonly moduleName: "solid-core";
|
|
636
|
+
readonly key: "MICROSOFT_ACTIVE_DIRECTORY_CALLBACK_URL";
|
|
637
|
+
readonly value: string;
|
|
638
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
639
|
+
readonly label: "Microsoft Active Directory OAuth Callback URL";
|
|
640
|
+
readonly group: "oauth-settings";
|
|
641
|
+
readonly sortOrder: 90;
|
|
642
|
+
readonly controlType: "shortText";
|
|
643
|
+
}, {
|
|
644
|
+
readonly moduleName: "solid-core";
|
|
645
|
+
readonly key: "MICROSOFT_ACTIVE_DIRECTORY_REDIRECT_URL";
|
|
646
|
+
readonly value: string;
|
|
647
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
648
|
+
readonly label: "Microsoft Active Directory OAuth Redirect URL";
|
|
649
|
+
readonly group: "oauth-settings";
|
|
650
|
+
readonly sortOrder: 100;
|
|
651
|
+
readonly controlType: "shortText";
|
|
593
652
|
}, {
|
|
594
653
|
readonly moduleName: "solid-core";
|
|
595
654
|
readonly key: "passwordLessAuth";
|
|
@@ -671,6 +730,42 @@ declare const getSolidCoreSettings: (isProd: boolean) => [{
|
|
|
671
730
|
readonly key: "otpExpiry";
|
|
672
731
|
readonly value: number;
|
|
673
732
|
readonly level: SettingLevel.SystemEnv;
|
|
733
|
+
}, {
|
|
734
|
+
readonly moduleName: "solid-core";
|
|
735
|
+
readonly key: "otpWhatsappFallbackEnabled";
|
|
736
|
+
readonly value: boolean;
|
|
737
|
+
readonly level: SettingLevel.SystemAdminEditable;
|
|
738
|
+
readonly label: "OTP WhatsApp Fallback Enabled";
|
|
739
|
+
readonly group: "authentication-settings";
|
|
740
|
+
readonly sortOrder: 85;
|
|
741
|
+
readonly controlType: "boolean";
|
|
742
|
+
}, {
|
|
743
|
+
readonly moduleName: "solid-core";
|
|
744
|
+
readonly key: "otpWhatsappTemplateId";
|
|
745
|
+
readonly value: string;
|
|
746
|
+
readonly level: SettingLevel.SystemAdminEditable;
|
|
747
|
+
readonly label: "OTP WhatsApp Template ID";
|
|
748
|
+
readonly group: "authentication-settings";
|
|
749
|
+
readonly sortOrder: 86;
|
|
750
|
+
readonly controlType: "shortText";
|
|
751
|
+
}, {
|
|
752
|
+
readonly moduleName: "solid-core";
|
|
753
|
+
readonly key: "otpWhatsappIndependentEnabled";
|
|
754
|
+
readonly value: boolean;
|
|
755
|
+
readonly level: SettingLevel.SystemAdminEditable;
|
|
756
|
+
readonly label: "OTP WhatsApp Independent Enabled";
|
|
757
|
+
readonly group: "authentication-settings";
|
|
758
|
+
readonly sortOrder: 87;
|
|
759
|
+
readonly controlType: "boolean";
|
|
760
|
+
}, {
|
|
761
|
+
readonly moduleName: "solid-core";
|
|
762
|
+
readonly key: "otpDefaultCountryDialCode";
|
|
763
|
+
readonly value: string;
|
|
764
|
+
readonly level: SettingLevel.SystemAdminEditable;
|
|
765
|
+
readonly label: "OTP Default Country Dial Code";
|
|
766
|
+
readonly group: "authentication-settings";
|
|
767
|
+
readonly sortOrder: 88;
|
|
768
|
+
readonly controlType: "shortText";
|
|
674
769
|
}, {
|
|
675
770
|
readonly moduleName: "solid-core";
|
|
676
771
|
readonly key: "forgotPasswordVerificationTokenExpiry";
|
|
@@ -1000,6 +1095,57 @@ declare const getSolidCoreSettings: (isProd: boolean) => [{
|
|
|
1000
1095
|
readonly group: "whatsapp-settings";
|
|
1001
1096
|
readonly sortOrder: 30;
|
|
1002
1097
|
readonly controlType: "shortText";
|
|
1098
|
+
}, {
|
|
1099
|
+
readonly moduleName: "solid-core";
|
|
1100
|
+
readonly key: "metaWhatsappApiUrl";
|
|
1101
|
+
readonly value: string;
|
|
1102
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
1103
|
+
readonly label: "Meta WhatsApp API URL";
|
|
1104
|
+
readonly group: "whatsapp-settings";
|
|
1105
|
+
readonly sortOrder: 40;
|
|
1106
|
+
readonly controlType: "shortText";
|
|
1107
|
+
}, {
|
|
1108
|
+
readonly moduleName: "solid-core";
|
|
1109
|
+
readonly key: "metaWhatsappApiVersion";
|
|
1110
|
+
readonly value: string;
|
|
1111
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
1112
|
+
readonly label: "Meta WhatsApp API Version";
|
|
1113
|
+
readonly group: "whatsapp-settings";
|
|
1114
|
+
readonly sortOrder: 50;
|
|
1115
|
+
readonly controlType: "shortText";
|
|
1116
|
+
}, {
|
|
1117
|
+
readonly moduleName: "solid-core";
|
|
1118
|
+
readonly key: "metaWhatsappPhoneNumberId";
|
|
1119
|
+
readonly value: string;
|
|
1120
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
1121
|
+
readonly label: "Meta WhatsApp Phone Number ID";
|
|
1122
|
+
readonly group: "whatsapp-settings";
|
|
1123
|
+
readonly sortOrder: 60;
|
|
1124
|
+
readonly controlType: "shortText";
|
|
1125
|
+
}, {
|
|
1126
|
+
readonly moduleName: "solid-core";
|
|
1127
|
+
readonly key: "metaWhatsappBusinessAccountId";
|
|
1128
|
+
readonly value: string;
|
|
1129
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
1130
|
+
readonly label: "Meta WhatsApp Business Account ID";
|
|
1131
|
+
readonly group: "whatsapp-settings";
|
|
1132
|
+
readonly sortOrder: 70;
|
|
1133
|
+
readonly controlType: "shortText";
|
|
1134
|
+
}, {
|
|
1135
|
+
readonly moduleName: "solid-core";
|
|
1136
|
+
readonly key: "metaWhatsappAccessToken";
|
|
1137
|
+
readonly value: string;
|
|
1138
|
+
readonly level: SettingLevel.SystemEnv;
|
|
1139
|
+
}, {
|
|
1140
|
+
readonly moduleName: "solid-core";
|
|
1141
|
+
readonly key: "metaWhatsappWebhookVerifyToken";
|
|
1142
|
+
readonly value: string;
|
|
1143
|
+
readonly level: SettingLevel.SystemEnv;
|
|
1144
|
+
}, {
|
|
1145
|
+
readonly moduleName: "solid-core";
|
|
1146
|
+
readonly key: "metaWhatsappAppSecret";
|
|
1147
|
+
readonly value: string;
|
|
1148
|
+
readonly level: SettingLevel.SystemEnv;
|
|
1003
1149
|
}];
|
|
1004
1150
|
export type SolidCoreSetting = ReturnType<typeof getSolidCoreSettings>[number]["key"];
|
|
1005
1151
|
export declare class SolidCoreDefaultSettingsProvider implements ISettingsProvider {
|
|
@@ -1030,6 +1176,15 @@ export declare class SolidCoreDefaultSettingsProvider implements ISettingsProvid
|
|
|
1030
1176
|
readonly group: "authentication-settings";
|
|
1031
1177
|
readonly sortOrder: 50;
|
|
1032
1178
|
readonly controlType: "boolean";
|
|
1179
|
+
}, {
|
|
1180
|
+
readonly moduleName: "solid-core";
|
|
1181
|
+
readonly key: "iamMicrosoftActiveDirectoryOAuthEnabled";
|
|
1182
|
+
readonly value: false;
|
|
1183
|
+
readonly level: SettingLevel.SystemAdminEditable;
|
|
1184
|
+
readonly label: "Allow Login / Signup With Microsoft Active Directory";
|
|
1185
|
+
readonly group: "authentication-settings";
|
|
1186
|
+
readonly sortOrder: 50;
|
|
1187
|
+
readonly controlType: "boolean";
|
|
1033
1188
|
}, {
|
|
1034
1189
|
readonly moduleName: "solid-core";
|
|
1035
1190
|
readonly key: "authPagesLayout";
|
|
@@ -1312,6 +1467,15 @@ export declare class SolidCoreDefaultSettingsProvider implements ISettingsProvid
|
|
|
1312
1467
|
readonly group: "system-settings";
|
|
1313
1468
|
readonly sortOrder: 30;
|
|
1314
1469
|
readonly controlType: "shortText";
|
|
1470
|
+
}, {
|
|
1471
|
+
readonly moduleName: "solid-core";
|
|
1472
|
+
readonly key: "frontendAdminBaseUrl";
|
|
1473
|
+
readonly value: string;
|
|
1474
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
1475
|
+
readonly label: "Frontend Admin Base URL";
|
|
1476
|
+
readonly group: "system-settings";
|
|
1477
|
+
readonly sortOrder: 35;
|
|
1478
|
+
readonly controlType: "shortText";
|
|
1315
1479
|
}, {
|
|
1316
1480
|
readonly moduleName: "solid-core";
|
|
1317
1481
|
readonly key: "solidAppWebsiteUrl";
|
|
@@ -1592,6 +1756,47 @@ export declare class SolidCoreDefaultSettingsProvider implements ISettingsProvid
|
|
|
1592
1756
|
readonly key: "MICROSOFT_REDIRECT_URL";
|
|
1593
1757
|
readonly value: string;
|
|
1594
1758
|
readonly level: SettingLevel.SystemAdminReadonly;
|
|
1759
|
+
}, {
|
|
1760
|
+
readonly moduleName: "solid-core";
|
|
1761
|
+
readonly key: "MICROSOFT_ACTIVE_DIRECTORY_CLIENT_ID";
|
|
1762
|
+
readonly value: string;
|
|
1763
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
1764
|
+
readonly label: "Microsoft Active Directory OAuth Client ID";
|
|
1765
|
+
readonly group: "oauth-settings";
|
|
1766
|
+
readonly sortOrder: 70;
|
|
1767
|
+
readonly controlType: "shortText";
|
|
1768
|
+
}, {
|
|
1769
|
+
readonly moduleName: "solid-core";
|
|
1770
|
+
readonly key: "MICROSOFT_ACTIVE_DIRECTORY_CLIENT_SECRET";
|
|
1771
|
+
readonly value: string;
|
|
1772
|
+
readonly level: SettingLevel.SystemEnv;
|
|
1773
|
+
}, {
|
|
1774
|
+
readonly moduleName: "solid-core";
|
|
1775
|
+
readonly key: "MICROSOFT_ACTIVE_DIRECTORY_TENANT_ID";
|
|
1776
|
+
readonly value: string;
|
|
1777
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
1778
|
+
readonly label: "Microsoft Active Directory OAuth Tenant ID";
|
|
1779
|
+
readonly group: "oauth-settings";
|
|
1780
|
+
readonly sortOrder: 80;
|
|
1781
|
+
readonly controlType: "shortText";
|
|
1782
|
+
}, {
|
|
1783
|
+
readonly moduleName: "solid-core";
|
|
1784
|
+
readonly key: "MICROSOFT_ACTIVE_DIRECTORY_CALLBACK_URL";
|
|
1785
|
+
readonly value: string;
|
|
1786
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
1787
|
+
readonly label: "Microsoft Active Directory OAuth Callback URL";
|
|
1788
|
+
readonly group: "oauth-settings";
|
|
1789
|
+
readonly sortOrder: 90;
|
|
1790
|
+
readonly controlType: "shortText";
|
|
1791
|
+
}, {
|
|
1792
|
+
readonly moduleName: "solid-core";
|
|
1793
|
+
readonly key: "MICROSOFT_ACTIVE_DIRECTORY_REDIRECT_URL";
|
|
1794
|
+
readonly value: string;
|
|
1795
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
1796
|
+
readonly label: "Microsoft Active Directory OAuth Redirect URL";
|
|
1797
|
+
readonly group: "oauth-settings";
|
|
1798
|
+
readonly sortOrder: 100;
|
|
1799
|
+
readonly controlType: "shortText";
|
|
1595
1800
|
}, {
|
|
1596
1801
|
readonly moduleName: "solid-core";
|
|
1597
1802
|
readonly key: "passwordLessAuth";
|
|
@@ -1673,6 +1878,42 @@ export declare class SolidCoreDefaultSettingsProvider implements ISettingsProvid
|
|
|
1673
1878
|
readonly key: "otpExpiry";
|
|
1674
1879
|
readonly value: number;
|
|
1675
1880
|
readonly level: SettingLevel.SystemEnv;
|
|
1881
|
+
}, {
|
|
1882
|
+
readonly moduleName: "solid-core";
|
|
1883
|
+
readonly key: "otpWhatsappFallbackEnabled";
|
|
1884
|
+
readonly value: boolean;
|
|
1885
|
+
readonly level: SettingLevel.SystemAdminEditable;
|
|
1886
|
+
readonly label: "OTP WhatsApp Fallback Enabled";
|
|
1887
|
+
readonly group: "authentication-settings";
|
|
1888
|
+
readonly sortOrder: 85;
|
|
1889
|
+
readonly controlType: "boolean";
|
|
1890
|
+
}, {
|
|
1891
|
+
readonly moduleName: "solid-core";
|
|
1892
|
+
readonly key: "otpWhatsappTemplateId";
|
|
1893
|
+
readonly value: string;
|
|
1894
|
+
readonly level: SettingLevel.SystemAdminEditable;
|
|
1895
|
+
readonly label: "OTP WhatsApp Template ID";
|
|
1896
|
+
readonly group: "authentication-settings";
|
|
1897
|
+
readonly sortOrder: 86;
|
|
1898
|
+
readonly controlType: "shortText";
|
|
1899
|
+
}, {
|
|
1900
|
+
readonly moduleName: "solid-core";
|
|
1901
|
+
readonly key: "otpWhatsappIndependentEnabled";
|
|
1902
|
+
readonly value: boolean;
|
|
1903
|
+
readonly level: SettingLevel.SystemAdminEditable;
|
|
1904
|
+
readonly label: "OTP WhatsApp Independent Enabled";
|
|
1905
|
+
readonly group: "authentication-settings";
|
|
1906
|
+
readonly sortOrder: 87;
|
|
1907
|
+
readonly controlType: "boolean";
|
|
1908
|
+
}, {
|
|
1909
|
+
readonly moduleName: "solid-core";
|
|
1910
|
+
readonly key: "otpDefaultCountryDialCode";
|
|
1911
|
+
readonly value: string;
|
|
1912
|
+
readonly level: SettingLevel.SystemAdminEditable;
|
|
1913
|
+
readonly label: "OTP Default Country Dial Code";
|
|
1914
|
+
readonly group: "authentication-settings";
|
|
1915
|
+
readonly sortOrder: 88;
|
|
1916
|
+
readonly controlType: "shortText";
|
|
1676
1917
|
}, {
|
|
1677
1918
|
readonly moduleName: "solid-core";
|
|
1678
1919
|
readonly key: "forgotPasswordVerificationTokenExpiry";
|
|
@@ -2002,6 +2243,57 @@ export declare class SolidCoreDefaultSettingsProvider implements ISettingsProvid
|
|
|
2002
2243
|
readonly group: "whatsapp-settings";
|
|
2003
2244
|
readonly sortOrder: 30;
|
|
2004
2245
|
readonly controlType: "shortText";
|
|
2246
|
+
}, {
|
|
2247
|
+
readonly moduleName: "solid-core";
|
|
2248
|
+
readonly key: "metaWhatsappApiUrl";
|
|
2249
|
+
readonly value: string;
|
|
2250
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
2251
|
+
readonly label: "Meta WhatsApp API URL";
|
|
2252
|
+
readonly group: "whatsapp-settings";
|
|
2253
|
+
readonly sortOrder: 40;
|
|
2254
|
+
readonly controlType: "shortText";
|
|
2255
|
+
}, {
|
|
2256
|
+
readonly moduleName: "solid-core";
|
|
2257
|
+
readonly key: "metaWhatsappApiVersion";
|
|
2258
|
+
readonly value: string;
|
|
2259
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
2260
|
+
readonly label: "Meta WhatsApp API Version";
|
|
2261
|
+
readonly group: "whatsapp-settings";
|
|
2262
|
+
readonly sortOrder: 50;
|
|
2263
|
+
readonly controlType: "shortText";
|
|
2264
|
+
}, {
|
|
2265
|
+
readonly moduleName: "solid-core";
|
|
2266
|
+
readonly key: "metaWhatsappPhoneNumberId";
|
|
2267
|
+
readonly value: string;
|
|
2268
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
2269
|
+
readonly label: "Meta WhatsApp Phone Number ID";
|
|
2270
|
+
readonly group: "whatsapp-settings";
|
|
2271
|
+
readonly sortOrder: 60;
|
|
2272
|
+
readonly controlType: "shortText";
|
|
2273
|
+
}, {
|
|
2274
|
+
readonly moduleName: "solid-core";
|
|
2275
|
+
readonly key: "metaWhatsappBusinessAccountId";
|
|
2276
|
+
readonly value: string;
|
|
2277
|
+
readonly level: SettingLevel.SystemAdminReadonly;
|
|
2278
|
+
readonly label: "Meta WhatsApp Business Account ID";
|
|
2279
|
+
readonly group: "whatsapp-settings";
|
|
2280
|
+
readonly sortOrder: 70;
|
|
2281
|
+
readonly controlType: "shortText";
|
|
2282
|
+
}, {
|
|
2283
|
+
readonly moduleName: "solid-core";
|
|
2284
|
+
readonly key: "metaWhatsappAccessToken";
|
|
2285
|
+
readonly value: string;
|
|
2286
|
+
readonly level: SettingLevel.SystemEnv;
|
|
2287
|
+
}, {
|
|
2288
|
+
readonly moduleName: "solid-core";
|
|
2289
|
+
readonly key: "metaWhatsappWebhookVerifyToken";
|
|
2290
|
+
readonly value: string;
|
|
2291
|
+
readonly level: SettingLevel.SystemEnv;
|
|
2292
|
+
}, {
|
|
2293
|
+
readonly moduleName: "solid-core";
|
|
2294
|
+
readonly key: "metaWhatsappAppSecret";
|
|
2295
|
+
readonly value: string;
|
|
2296
|
+
readonly level: SettingLevel.SystemEnv;
|
|
2005
2297
|
}];
|
|
2006
2298
|
}
|
|
2007
2299
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-settings-provider.service.d.ts","sourceRoot":"","sources":["../../../src/services/settings/default-settings-provider.service.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,iBAAiB,EAEjB,YAAY,EACb,MAAM,gBAAgB,CAAC;AAExB,eAAO,MAAM,wBAAwB,kBAAkB,CAAC;AACxD,eAAO,MAAM,8BAA8B,wBAAwB,CAAC;AAGpE,QAAA,MAAM,oBAAoB,GAAI,QAAQ,OAAO
|
|
1
|
+
{"version":3,"file":"default-settings-provider.service.d.ts","sourceRoot":"","sources":["../../../src/services/settings/default-settings-provider.service.ts"],"names":[],"mappings":"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"}
|