@solidxai/core 0.1.8-beta.10 → 0.1.8-beta.11
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/README.md +197 -0
- package/dist/entities/setting.entity.d.ts +1 -0
- package/dist/entities/setting.entity.d.ts.map +1 -1
- package/dist/entities/setting.entity.js +5 -1
- package/dist/entities/setting.entity.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/interfaces.d.ts +12 -0
- package/dist/interfaces.d.ts.map +1 -1
- package/dist/interfaces.js.map +1 -1
- package/dist/jobs/database/chatter-queue-publisher-database.service.d.ts +1 -1
- package/dist/jobs/database/chatter-queue-publisher-database.service.d.ts.map +1 -1
- package/dist/jobs/database/chatter-queue-publisher-database.service.js.map +1 -1
- package/dist/jobs/database/chatter-queue-subscriber-database.service.d.ts +1 -1
- package/dist/jobs/database/chatter-queue-subscriber-database.service.d.ts.map +1 -1
- package/dist/jobs/database/chatter-queue-subscriber-database.service.js.map +1 -1
- package/dist/jobs/rabbitmq/chatter-queue-publisher.service.d.ts +1 -12
- package/dist/jobs/rabbitmq/chatter-queue-publisher.service.d.ts.map +1 -1
- package/dist/jobs/rabbitmq/chatter-queue-publisher.service.js.map +1 -1
- package/dist/jobs/rabbitmq/chatter-queue-subscriber.service.d.ts +1 -1
- package/dist/jobs/rabbitmq/chatter-queue-subscriber.service.d.ts.map +1 -1
- package/dist/jobs/rabbitmq/chatter-queue-subscriber.service.js.map +1 -1
- package/dist/jobs/redis/chatter-queue-subscriber-redis.service.d.ts +1 -1
- package/dist/jobs/redis/chatter-queue-subscriber-redis.service.d.ts.map +1 -1
- package/dist/jobs/redis/chatter-queue-subscriber-redis.service.js.map +1 -1
- package/dist/services/encryption.service.d.ts +8 -0
- package/dist/services/encryption.service.d.ts.map +1 -0
- package/dist/services/encryption.service.js +75 -0
- package/dist/services/encryption.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 +35 -7
- package/dist/services/setting.service.js.map +1 -1
- package/dist/services/settings/default-settings-provider.service.d.ts +12 -0
- package/dist/services/settings/default-settings-provider.service.d.ts.map +1 -1
- package/dist/services/settings/default-settings-provider.service.js +4 -3
- package/dist/services/settings/default-settings-provider.service.js.map +1 -1
- package/dist/subscribers/audit.subscriber.d.ts +1 -1
- package/dist/subscribers/audit.subscriber.d.ts.map +1 -1
- package/dist/subscribers/audit.subscriber.js.map +1 -1
- package/package.json +1 -1
- package/src/entities/setting.entity.ts +3 -0
- package/src/index.ts +1 -0
- package/src/interfaces.ts +16 -0
- package/src/jobs/database/chatter-queue-publisher-database.service.ts +1 -1
- package/src/jobs/database/chatter-queue-subscriber-database.service.ts +1 -1
- package/src/jobs/rabbitmq/chatter-queue-publisher.service.ts +1 -15
- package/src/jobs/rabbitmq/chatter-queue-subscriber.service.ts +1 -1
- package/src/jobs/redis/chatter-queue-subscriber-redis.service.ts +1 -1
- package/src/services/encryption.service.ts +43 -0
- package/src/services/setting.service.ts +38 -9
- package/src/services/settings/default-settings-provider.service.ts +4 -3
- package/src/subscribers/audit.subscriber.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-settings-provider.service.js","sourceRoot":"","sources":["../../../src/services/settings/default-settings-provider.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { Injectable } from \"@nestjs/common\";\nimport { Environment } from \"src/decorators/disallow-in-production.decorator\";\nimport { SettingsProvider } from \"src/decorators/settings-provider.decorator\";\nimport { ISettingsProvider, SettingDefinition, SettingLevel } from \"src/interfaces\";\n\nexport const DEFAULT_MEDIA_UPLOAD_DIR = 'media-uploads';\nexport const DEFAULT_MEDIA_FILE_STORAGE_DIR = 'media-files-storage';\n\n// 1. \nconst getSolidCoreSettings = (isProd: boolean) => ([\n { moduleName: \"solid-core\", key: \"iamGoogleOAuthEnabled\", value: false, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"authPagesLayout\", value: \"center\", level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"authPagesTheme\", value: \"light\", level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"appLogo\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"companylogo\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"favicon\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"appLogoPosition\", value: \"in_form_view\", level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"showAuthContent\", value: false, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"appTitle\", value: process.env.SOLID_APP_NAME || \"Solid App\", level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"appSubtitle\", value: process.env.SOLID_APP_SUBTITLE || \"\", level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"appDescription\", value: process.env.SOLID_APP_DESCRIPTION || \"\", level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"showLegalLinks\", value: false, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"appTnc\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"appPrivacyPolicy\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"enableDarkMode\", value: true, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"copyright\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"enableUsername\", value: true, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"enabledNotification\", value: true, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"contactSupportEmail\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"contactSupportDisplayName\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"contactSupportIcon\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"authScreenRightBackgroundImage\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"authScreenLeftBackgroundImage\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"authScreenCenterBackgroundImage\", value: null, level: SettingLevel.SystemAdminEditable },\n {\n moduleName: \"solid-core\", key: \"solidXGenAiCodeBuilderConfig\", value: JSON.stringify({\n models: {\n default: { providerKey: \"\", behavior: { streaming: false, custom: \"\" } },\n fast: { providerKey: \"\", behavior: { streaming: false, custom: \"\" } },\n },\n providers: {},\n }), level: SettingLevel.SystemAdminEditable\n },\n { moduleName: \"solid-core\", key: \"mcpEnabled\", value: process.env.MCP_ENABLED || false, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"mcpServerUrl\", value: process.env.MCP_SERVER_URL, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"mcpApiKey\", value: process.env.MCP_API_KEY, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"dateTimeFormat\", value: process.env.DATE_TIME_FORMAT || \"YYYY-MM-DD HH:mm:ss\", level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"dateFormat\", value: process.env.DATE_FORMAT || \"YYYY-MM-DD\", level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"baseUrl\", value: process.env.BASE_URL, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"solidAppWebsiteUrl\", value: process.env.SOLID_APP_WEBSITE_URL, level: SettingLevel.SystemAdminEditable },\n\n // app-builder-settings-provider.service.ts, app-builder.config.ts\n { moduleName: \"solid-core\", key: \"moduleMetadataSeederFiles\", value: process.env.AB_MODULE_METADATA_SEEDER_FILES ?? '', level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"uploadDir\", value: process.env.AB_MEDIA_UPLOAD_DIR ?? DEFAULT_MEDIA_UPLOAD_DIR, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"fileStorageDir\", value: process.env.AB_MEDIA_FILE_STORAGE_DIR ?? DEFAULT_MEDIA_FILE_STORAGE_DIR, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"defaultFileService\", value: process.env.DEFAULT_FILE_SERVICE ?? 'disk', level: SettingLevel.SystemAdminReadonly },\n\n // aws-s3-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"S3_AWS_ACCESS_KEY\", value: process.env.S3_AWS_ACCESS_KEY, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"S3_AWS_SECRET_KEY\", value: process.env.S3_AWS_SECRET_KEY, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"S3_AWS_REGION_NAME\", value: process.env.S3_AWS_REGION_NAME, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"S3_DEFAULT_BUCKET\", value: process.env.S3_DEFAULT_BUCKET, level: SettingLevel.SystemAdminReadonly },\n\n // email-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"emailProvider\", value: process.env.COMMON_EMAIL_PROVIDER ?? \"SMTPEMailService\", level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"emailTemplateSeederFiles\", value: process.env.COMMON_EMAIL_TEMPLATE_SEEDER_FILES, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"shouldQueueEmails\", value: (process.env.COMMON_EMAIL_SHOULD_QUEUE ?? 'false') === 'true', level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"smtpMailHost\", value: process.env.COMMON_SMTP_EMAIL_SMTP_HOST, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"smtpMailPort\", value: +(process.env.COMMON_SMTP_EMAIL_SMTP_PORT ?? 587), level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"smtpMailUsername\", value: process.env.COMMON_SMTP_EMAIL_USERNAME, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"smtpMailPassword\", value: process.env.COMMON_SMTP_EMAIL_PASSWORD, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"smtpMailFrom\", value: process.env.COMMON_SMTP_EMAIL_FROM ?? process.env.COMMON_EMAIL_FROM, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"apiMailKey\", value: process.env.COMMON_API_EMAIL_KEY, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"apiMailFrom\", value: process.env.COMMON_EMAIL_FROM, level: SettingLevel.SystemAdminReadonly },\n\n // genai-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"ragServerUrl\", value: process.env.GENAI_RAG_SERVER_URL, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"ragServerLogin\", value: process.env.GENAI_RAG_SERVER_LOGIN, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"ragServerPassword\", value: process.env.GENAI_RAG_SERVER_PASSWORD, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"mcpPythonExecutable\", value: process.env.MCP_PYTHON_EXECUTABLE, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"mcpClient\", value: process.env.MCP_CLIENT, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"mcpRestartTouchFile\", value: process.env.MCP_RESTART_TOUCH_FILE || \"tmp/restart.touch\", level: SettingLevel.SystemEnv },\n\n // google-oauth-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"clientID\", value: process.env.IAM_GOOGLE_OAUTH_CLIENT_ID, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"clientSecret\", value: process.env.IAM_GOOGLE_OAUTH_CLIENT_SECRET, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"callbackURL\", value: process.env.IAM_GOOGLE_OAUTH_CALLBACK_URL, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"redirectURL\", value: process.env.IAM_GOOGLE_OAUTH_REDIRECT_URL, level: SettingLevel.SystemAdminReadonly },\n\n // iam-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"passwordLessAuth\", value: (process.env.IAM_PASSWORD_LESS_AUTH?.trim() ?? 'false') === 'true', level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"passwordBasedAuth\", value: (process.env.IAM_PASSWORD_BASED_AUTH?.trim() ?? 'true') === 'true', level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"passwordlessRegistrationValidateWhat\", value: (process.env.IAM_PASSWORD_LESS_REGISTRATION_VALIDATE_WHAT ?? 'email').trim(), level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"passwordlessLoginValidateWhat\", value: process.env.IAM_PASSWORD_LESS_LOGIN_VALIDATE_WHAT ?? 'email', level: SettingLevel.SystemAdminEditable }, \n { moduleName: \"solid-core\", key: \"allowPublicRegistration\", value: (process.env.IAM_ALLOW_PUBLIC_REGISTRATION ?? 'true') === 'true', level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"activateUserOnRegistration\", value: (process.env.IAM_ACTIVATE_USER_ON_REGISTRATION ?? 'true') === 'true', level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"autoLoginUserOnRegistration\", value: (process.env.IAM_AUTO_LOGIN_USER_ON_REGISTRATION ?? 'false') === 'true', level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"otpExpiry\", value: parseInt(process.env.IAM_OTP_EXPIRY ?? '10'), level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"forgotPasswordVerificationTokenExpiry\", value: parseInt(process.env.IAM_FORGOT_PASSWORD_VERIFICATION_TOKEN_EXPIRY ?? '10'), level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"defaultRole\", value: process.env.IAM_DEFAULT_ROLE ?? 'Public', level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"dummyOtp\", value: process.env.IAM_OTP_DUMMY, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"dummyOtpUsers\", value: process.env.IAM_OTP_DUMMY_USERS, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"forgotPasswordSendVerificationTokenOn\", value: process.env.IAM_FORGOT_PASSWORD_SEND_VERIFICATION_TOKEN_ON ?? 'email', level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"maxFailedLoginAttempts\", value: parseInt(process.env.IAM_MAX_FAILED_LOGIN_ATTEMPTS ?? '0'), level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"forceChangePasswordOnFirstLogin\", value: false, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"authenticationPasswordRegex\", value: process.env.PASSWORD_REGEX || '^$|^(?=.*[a-z])(?=.*[A-Z])(?=.*\\\\d)(?=.*[^\\\\da-zA-Z]).*$', level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"authenticationPasswordRegexErrorMessage\", value: process.env.PASSWORD_REGEX_ERROR_MESSAGE || 'Password must contain at least one uppercase, one lowercase, one number, and one special character.', level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"authenticationPasswordComplexityDescription\", value: process.env.PASSWORD_COMPLEXITY_DESC || 'Password must contain at least one uppercase, one lowercase, one number, and one special character.', level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"iamAutoGeneratedPassword\", value: process.env.IAM_AUTOGENERATED_PASSWORD || true, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"passwordPepper\", value: process.env.IAM_PASSWORD_PEPPER || '', level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"showNameFieldsForRegistration\", value: process.env.IAM_SHOW_NAME_FIELDS_FOR_REGISTRATION === 'true' ? true : false, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"sendWelcomeEmailOnSignup\", value: (process.env.IAM_SEND_WELCOME_EMAIL_ON_SIGNUP ?? 'false').toLowerCase() === 'true', level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"sendWelcomeSmsOnSignup\", value: (process.env.IAM_SEND_WELCOME_SMS_ON_SIGNUP ?? 'false').toLowerCase() === 'true', level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"frontendLoginPageUrl\", value: process.env.IAM_FRONTEND_APP_LOGIN_PAGE_URL, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"frontendForgotPasswordPageUrl\", value: process.env.IAM_FRONTEND_APP_FORGOT_PASSWORD_PAGE_URL, level: SettingLevel.SystemAdminReadonly },\n\n // jwt-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"secret\", value: process.env.IAM_JWT_SECRET, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"audience\", value: process.env.IAM_JWT_TOKEN_AUDIENCE, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"issuer\", value: process.env.IAM_JWT_TOKEN_ISSUER, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"accessTokenTtl\", value: parseInt(process.env.IAM_JWT_ACCESS_TOKEN_TTL ?? (isProd ? \"1200\" : \"86400\"), 10,), level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"refreshTokenTtl\", value: parseInt(process.env.IAM_JWT_REFRESH_TOKEN_TTL ?? \"604800\", 10), level: SettingLevel.SystemEnv },\n\n // queues-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"queuesDefaultBroker\", value: process.env.QUEUES_DEFAULT_BROKER || 'database', level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"queuesServiceRole\", value: process.env.QUEUES_SERVICE_ROLE, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"queuesRabbitMqUrl\", value: process.env.QUEUES_RABBIT_MQ_URL, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"solidCliRunning\", value: process.env.SOLID_CLI_RUNNING || \"false\", level: SettingLevel.SystemEnv },\n\n // sms-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"smsProvider\", value: process.env.COMMON_SMS_PROVIDER, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"smsTemplateSeederFiles\", value: process.env.COMMON_SMS_TEMPLATE_SEEDER_FILES, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"shouldQueueSms\", value: (process.env.COMMON_SMS_SHOULD_QUEUE ?? 'false') === 'true', level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"msg91SmsUrl\", value: process.env.COMMON_MSG91_SMS_URL, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"msg91SmsApiKey\", value: process.env.COMMON_MSG91_SMS_API_KEY, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"twilioAccountSid\", value: process.env.COMMON_TWILIO_ACCOUNT_SID, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"twilioAuthToken\", value: process.env.COMMON_TWILIO_AUTH_TOKEN, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"twilioNumber\", value: process.env.COMMON_TWILIO_NUMBER, level: SettingLevel.SystemAdminReadonly },\n\n // tiny-url-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"tinyUrlApiUrl\", value: process.env.COMMON_SHORT_URL_API_URL, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"tinyUrlApiKey\", value: process.env.COMMON_SHORT_URL_API_KEY, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"tinyUrlDomain\", value: process.env.COMMON_SHORT_URL_DOMAIN, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"tinyUrlEnabled\", value: (process.env.COMMON_SHORT_URL_ENABLED ?? 'false') === 'true', level: SettingLevel.SystemAdminReadonly },\n\n // whatsapp-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"whatsappProvider\", value: process.env.COMMON_WHATSAPP_PROVIDER, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"msg91WhatsappUrl\", value: process.env.COMMON_WHATSAPP_API_URL, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"msg91WhatsappApiKey\", value: process.env.COMMON_WHATSAPP_API_KEY, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"msg91WhatsappIntegratedNumber\", value: process.env.COMMON_WHATSAPP_INTEGRATED_NUMBER, level: SettingLevel.SystemAdminReadonly },\n] as const satisfies SettingDefinition[]);\n\n// 2. \nexport type SolidCoreSetting = ReturnType<typeof getSolidCoreSettings>[number][\"key\"];\n\n// 3. \n@SettingsProvider()\n@Injectable()\nexport class SolidCoreDefaultSettingsProvider implements ISettingsProvider {\n\n getSettings() {\n const isProd = (process.env.ENV as Environment) === Environment.Production;\n return getSolidCoreSettings(isProd);\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"default-settings-provider.service.js","sourceRoot":"","sources":["../../../src/services/settings/default-settings-provider.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { Injectable } from \"@nestjs/common\";\nimport { Environment } from \"src/decorators/disallow-in-production.decorator\";\nimport { SettingsProvider } from \"src/decorators/settings-provider.decorator\";\nimport { ISettingsProvider, SettingDefinition, SettingLevel } from \"src/interfaces\";\n\nexport const DEFAULT_MEDIA_UPLOAD_DIR = 'media-uploads';\nexport const DEFAULT_MEDIA_FILE_STORAGE_DIR = 'media-files-storage';\n\n// 1. \nconst getSolidCoreSettings = (isProd: boolean) => ([\n { moduleName: \"solid-core\", key: \"iamGoogleOAuthEnabled\", value: false, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"authPagesLayout\", value: \"center\", level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"authPagesTheme\", value: \"light\", level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"appLogo\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"companylogo\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"favicon\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"appLogoPosition\", value: \"in_form_view\", level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"showAuthContent\", value: false, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"appTitle\", value: process.env.SOLID_APP_NAME || \"Solid App\", level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"appSubtitle\", value: process.env.SOLID_APP_SUBTITLE || \"\", level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"appDescription\", value: process.env.SOLID_APP_DESCRIPTION || \"\", level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"showLegalLinks\", value: false, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"appTnc\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"appPrivacyPolicy\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"enableDarkMode\", value: true, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"copyright\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"enableUsername\", value: true, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"enabledNotification\", value: true, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"contactSupportEmail\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"contactSupportDisplayName\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"contactSupportIcon\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"authScreenRightBackgroundImage\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"authScreenLeftBackgroundImage\", value: null, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"authScreenCenterBackgroundImage\", value: null, level: SettingLevel.SystemAdminEditable },\n {\n moduleName: \"solid-core\", key: \"solidXGenAiCodeBuilderConfig\", value: JSON.stringify({\n models: {\n default: { providerId: \"\", model: \"\", behavior: { streaming: false, custom: \"\" } },\n fast: { providerId: \"\", model: \"\", behavior: { streaming: false, custom: \"\" } },\n },\n providers: {},\n }), level: SettingLevel.SystemAdminEditable, encrypted: true\n },\n { moduleName: \"solid-core\", key: \"appEncryptionKey\", value: process.env.APP_ENCRYPTION_KEY, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"mcpEnabled\", value: process.env.MCP_ENABLED || false, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"mcpServerUrl\", value: process.env.MCP_SERVER_URL, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"mcpApiKey\", value: process.env.MCP_API_KEY, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"dateTimeFormat\", value: process.env.DATE_TIME_FORMAT || \"YYYY-MM-DD HH:mm:ss\", level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"dateFormat\", value: process.env.DATE_FORMAT || \"YYYY-MM-DD\", level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"baseUrl\", value: process.env.BASE_URL, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"solidAppWebsiteUrl\", value: process.env.SOLID_APP_WEBSITE_URL, level: SettingLevel.SystemAdminEditable },\n\n // app-builder-settings-provider.service.ts, app-builder.config.ts\n { moduleName: \"solid-core\", key: \"moduleMetadataSeederFiles\", value: process.env.AB_MODULE_METADATA_SEEDER_FILES ?? '', level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"uploadDir\", value: process.env.AB_MEDIA_UPLOAD_DIR ?? DEFAULT_MEDIA_UPLOAD_DIR, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"fileStorageDir\", value: process.env.AB_MEDIA_FILE_STORAGE_DIR ?? DEFAULT_MEDIA_FILE_STORAGE_DIR, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"defaultFileService\", value: process.env.DEFAULT_FILE_SERVICE ?? 'disk', level: SettingLevel.SystemAdminReadonly },\n\n // aws-s3-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"S3_AWS_ACCESS_KEY\", value: process.env.S3_AWS_ACCESS_KEY, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"S3_AWS_SECRET_KEY\", value: process.env.S3_AWS_SECRET_KEY, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"S3_AWS_REGION_NAME\", value: process.env.S3_AWS_REGION_NAME, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"S3_DEFAULT_BUCKET\", value: process.env.S3_DEFAULT_BUCKET, level: SettingLevel.SystemAdminReadonly },\n\n // email-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"emailProvider\", value: process.env.COMMON_EMAIL_PROVIDER ?? \"SMTPEMailService\", level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"emailTemplateSeederFiles\", value: process.env.COMMON_EMAIL_TEMPLATE_SEEDER_FILES, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"shouldQueueEmails\", value: (process.env.COMMON_EMAIL_SHOULD_QUEUE ?? 'false') === 'true', level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"smtpMailHost\", value: process.env.COMMON_SMTP_EMAIL_SMTP_HOST, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"smtpMailPort\", value: +(process.env.COMMON_SMTP_EMAIL_SMTP_PORT ?? 587), level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"smtpMailUsername\", value: process.env.COMMON_SMTP_EMAIL_USERNAME, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"smtpMailPassword\", value: process.env.COMMON_SMTP_EMAIL_PASSWORD, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"smtpMailFrom\", value: process.env.COMMON_SMTP_EMAIL_FROM ?? process.env.COMMON_EMAIL_FROM, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"apiMailKey\", value: process.env.COMMON_API_EMAIL_KEY, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"apiMailFrom\", value: process.env.COMMON_EMAIL_FROM, level: SettingLevel.SystemAdminReadonly },\n\n // genai-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"ragServerUrl\", value: process.env.GENAI_RAG_SERVER_URL, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"ragServerLogin\", value: process.env.GENAI_RAG_SERVER_LOGIN, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"ragServerPassword\", value: process.env.GENAI_RAG_SERVER_PASSWORD, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"mcpPythonExecutable\", value: process.env.MCP_PYTHON_EXECUTABLE, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"mcpClient\", value: process.env.MCP_CLIENT, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"mcpRestartTouchFile\", value: process.env.MCP_RESTART_TOUCH_FILE || \"tmp/restart.touch\", level: SettingLevel.SystemEnv },\n\n // google-oauth-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"clientID\", value: process.env.IAM_GOOGLE_OAUTH_CLIENT_ID, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"clientSecret\", value: process.env.IAM_GOOGLE_OAUTH_CLIENT_SECRET, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"callbackURL\", value: process.env.IAM_GOOGLE_OAUTH_CALLBACK_URL, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"redirectURL\", value: process.env.IAM_GOOGLE_OAUTH_REDIRECT_URL, level: SettingLevel.SystemAdminReadonly },\n\n // iam-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"passwordLessAuth\", value: (process.env.IAM_PASSWORD_LESS_AUTH?.trim() ?? 'false') === 'true', level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"passwordBasedAuth\", value: (process.env.IAM_PASSWORD_BASED_AUTH?.trim() ?? 'true') === 'true', level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"passwordlessRegistrationValidateWhat\", value: (process.env.IAM_PASSWORD_LESS_REGISTRATION_VALIDATE_WHAT ?? 'email').trim(), level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"passwordlessLoginValidateWhat\", value: process.env.IAM_PASSWORD_LESS_LOGIN_VALIDATE_WHAT ?? 'email', level: SettingLevel.SystemAdminEditable }, \n { moduleName: \"solid-core\", key: \"allowPublicRegistration\", value: (process.env.IAM_ALLOW_PUBLIC_REGISTRATION ?? 'true') === 'true', level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"activateUserOnRegistration\", value: (process.env.IAM_ACTIVATE_USER_ON_REGISTRATION ?? 'true') === 'true', level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"autoLoginUserOnRegistration\", value: (process.env.IAM_AUTO_LOGIN_USER_ON_REGISTRATION ?? 'false') === 'true', level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"otpExpiry\", value: parseInt(process.env.IAM_OTP_EXPIRY ?? '10'), level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"forgotPasswordVerificationTokenExpiry\", value: parseInt(process.env.IAM_FORGOT_PASSWORD_VERIFICATION_TOKEN_EXPIRY ?? '10'), level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"defaultRole\", value: process.env.IAM_DEFAULT_ROLE ?? 'Public', level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"dummyOtp\", value: process.env.IAM_OTP_DUMMY, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"dummyOtpUsers\", value: process.env.IAM_OTP_DUMMY_USERS, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"forgotPasswordSendVerificationTokenOn\", value: process.env.IAM_FORGOT_PASSWORD_SEND_VERIFICATION_TOKEN_ON ?? 'email', level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"maxFailedLoginAttempts\", value: parseInt(process.env.IAM_MAX_FAILED_LOGIN_ATTEMPTS ?? '0'), level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"forceChangePasswordOnFirstLogin\", value: false, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"authenticationPasswordRegex\", value: process.env.PASSWORD_REGEX || '^$|^(?=.*[a-z])(?=.*[A-Z])(?=.*\\\\d)(?=.*[^\\\\da-zA-Z]).*$', level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"authenticationPasswordRegexErrorMessage\", value: process.env.PASSWORD_REGEX_ERROR_MESSAGE || 'Password must contain at least one uppercase, one lowercase, one number, and one special character.', level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"authenticationPasswordComplexityDescription\", value: process.env.PASSWORD_COMPLEXITY_DESC || 'Password must contain at least one uppercase, one lowercase, one number, and one special character.', level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"iamAutoGeneratedPassword\", value: process.env.IAM_AUTOGENERATED_PASSWORD || true, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"passwordPepper\", value: process.env.IAM_PASSWORD_PEPPER || '', level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"showNameFieldsForRegistration\", value: process.env.IAM_SHOW_NAME_FIELDS_FOR_REGISTRATION === 'true' ? true : false, level: SettingLevel.SystemAdminEditable },\n { moduleName: \"solid-core\", key: \"sendWelcomeEmailOnSignup\", value: (process.env.IAM_SEND_WELCOME_EMAIL_ON_SIGNUP ?? 'false').toLowerCase() === 'true', level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"sendWelcomeSmsOnSignup\", value: (process.env.IAM_SEND_WELCOME_SMS_ON_SIGNUP ?? 'false').toLowerCase() === 'true', level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"frontendLoginPageUrl\", value: process.env.IAM_FRONTEND_APP_LOGIN_PAGE_URL, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"frontendForgotPasswordPageUrl\", value: process.env.IAM_FRONTEND_APP_FORGOT_PASSWORD_PAGE_URL, level: SettingLevel.SystemAdminReadonly },\n\n // jwt-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"secret\", value: process.env.IAM_JWT_SECRET, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"audience\", value: process.env.IAM_JWT_TOKEN_AUDIENCE, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"issuer\", value: process.env.IAM_JWT_TOKEN_ISSUER, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"accessTokenTtl\", value: parseInt(process.env.IAM_JWT_ACCESS_TOKEN_TTL ?? (isProd ? \"1200\" : \"86400\"), 10,), level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"refreshTokenTtl\", value: parseInt(process.env.IAM_JWT_REFRESH_TOKEN_TTL ?? \"604800\", 10), level: SettingLevel.SystemEnv },\n\n // queues-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"queuesDefaultBroker\", value: process.env.QUEUES_DEFAULT_BROKER || 'database', level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"queuesServiceRole\", value: process.env.QUEUES_SERVICE_ROLE, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"queuesRabbitMqUrl\", value: process.env.QUEUES_RABBIT_MQ_URL, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"solidCliRunning\", value: process.env.SOLID_CLI_RUNNING || \"false\", level: SettingLevel.SystemEnv },\n\n // sms-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"smsProvider\", value: process.env.COMMON_SMS_PROVIDER, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"smsTemplateSeederFiles\", value: process.env.COMMON_SMS_TEMPLATE_SEEDER_FILES, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"shouldQueueSms\", value: (process.env.COMMON_SMS_SHOULD_QUEUE ?? 'false') === 'true', level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"msg91SmsUrl\", value: process.env.COMMON_MSG91_SMS_URL, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"msg91SmsApiKey\", value: process.env.COMMON_MSG91_SMS_API_KEY, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"twilioAccountSid\", value: process.env.COMMON_TWILIO_ACCOUNT_SID, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"twilioAuthToken\", value: process.env.COMMON_TWILIO_AUTH_TOKEN, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"twilioNumber\", value: process.env.COMMON_TWILIO_NUMBER, level: SettingLevel.SystemAdminReadonly },\n\n // tiny-url-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"tinyUrlApiUrl\", value: process.env.COMMON_SHORT_URL_API_URL, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"tinyUrlApiKey\", value: process.env.COMMON_SHORT_URL_API_KEY, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"tinyUrlDomain\", value: process.env.COMMON_SHORT_URL_DOMAIN, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"tinyUrlEnabled\", value: (process.env.COMMON_SHORT_URL_ENABLED ?? 'false') === 'true', level: SettingLevel.SystemAdminReadonly },\n\n // whatsapp-settings-provider.service.ts\n { moduleName: \"solid-core\", key: \"whatsappProvider\", value: process.env.COMMON_WHATSAPP_PROVIDER, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"msg91WhatsappUrl\", value: process.env.COMMON_WHATSAPP_API_URL, level: SettingLevel.SystemAdminReadonly },\n { moduleName: \"solid-core\", key: \"msg91WhatsappApiKey\", value: process.env.COMMON_WHATSAPP_API_KEY, level: SettingLevel.SystemEnv },\n { moduleName: \"solid-core\", key: \"msg91WhatsappIntegratedNumber\", value: process.env.COMMON_WHATSAPP_INTEGRATED_NUMBER, level: SettingLevel.SystemAdminReadonly },\n] as const satisfies SettingDefinition[]);\n\n// 2. \nexport type SolidCoreSetting = ReturnType<typeof getSolidCoreSettings>[number][\"key\"];\n\n// 3. \n@SettingsProvider()\n@Injectable()\nexport class SolidCoreDefaultSettingsProvider implements ISettingsProvider {\n\n getSettings() {\n const isProd = (process.env.ENV as Environment) === Environment.Production;\n return getSolidCoreSettings(isProd);\n }\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SolidRegistry } from 'src/helpers/solid-registry';
|
|
2
2
|
import { DataSource, EntitySubscriberInterface, InsertEvent, RemoveEvent, UpdateEvent } from 'typeorm';
|
|
3
|
-
import { AuditQueuePayload } from 'src/
|
|
3
|
+
import { AuditQueuePayload } from 'src/interfaces';
|
|
4
4
|
import { RequestContextService } from 'src/services/request-context.service';
|
|
5
5
|
import { PublisherFactory } from 'src/services/queues/publisher-factory.service';
|
|
6
6
|
export declare class AuditSubscriber implements EntitySubscriberInterface {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit.subscriber.d.ts","sourceRoot":"","sources":["../../src/subscribers/audit.subscriber.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAkB,yBAAyB,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACvH,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"audit.subscriber.d.ts","sourceRoot":"","sources":["../../src/subscribers/audit.subscriber.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAkB,yBAAyB,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACvH,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,+CAA+C,CAAC;AAEjF,qBACa,eAAgB,YAAW,yBAAyB;IAIzD,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IAL1C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoC;IAC3D,OAAO,CAAC,UAAU,CAAa;gBAEV,gBAAgB,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,EACrD,aAAa,EAAE,aAAa,EAC5B,qBAAqB,EAAE,qBAAqB;IAGjE,gBAAgB,CAAC,UAAU,EAAE,UAAU;IAMvC,OAAO,CAAC,MAAM,CAA2C;IAEzD,OAAO,CAAC,OAAO;IAOf,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,YAAY;IAId,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC;IAYnC,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC;IAgBnC,WAAW,CAAC,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC;IAanC,sBAAsB,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,GAAG,CAAA;KAAE;IAoBxD,wBAAwB,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,GAAG,CAAA;KAAE;CAIvD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit.subscriber.js","sourceRoot":"","sources":["../../src/subscribers/audit.subscriber.ts"],"names":[],"mappings":"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","sourcesContent":["import { Injectable, Logger, Scope } from '@nestjs/common';\nimport { lowerFirst } from 'src/helpers/string.helper';\nimport { SolidRegistry } from 'src/helpers/solid-registry';\nimport { DataSource, EntityMetadata, EntitySubscriberInterface, InsertEvent, RemoveEvent, UpdateEvent } from 'typeorm';\nimport { AuditQueuePayload } from 'src/
|
|
1
|
+
{"version":3,"file":"audit.subscriber.js","sourceRoot":"","sources":["../../src/subscribers/audit.subscriber.ts"],"names":[],"mappings":"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","sourcesContent":["import { Injectable, Logger, Scope } from '@nestjs/common';\nimport { lowerFirst } from 'src/helpers/string.helper';\nimport { SolidRegistry } from 'src/helpers/solid-registry';\nimport { DataSource, EntityMetadata, EntitySubscriberInterface, InsertEvent, RemoveEvent, UpdateEvent } from 'typeorm';\nimport { AuditQueuePayload } from 'src/interfaces';\nimport { RequestContextService } from 'src/services/request-context.service';\nimport { PublisherFactory } from 'src/services/queues/publisher-factory.service';\n\n@Injectable({scope: Scope.TRANSIENT})\nexport class AuditSubscriber implements EntitySubscriberInterface {\n private readonly logger = new Logger(AuditSubscriber.name);\n private dataSource: DataSource;\n constructor(\n private readonly publisherFactory: PublisherFactory<AuditQueuePayload>,\n private readonly solidRegistry: SolidRegistry,\n private readonly requestContextService: RequestContextService,\n ) { }\n\n bindToDataSource(dataSource: DataSource) {\n this.dataSource = dataSource;\n this.dataSource.subscribers.push(this);\n }\n\n // Per-transaction buffer (auto-GC when queryRunner is gone)\n private perTxn = new WeakMap<any, AuditQueuePayload[]>();\n\n private enqueue(event: { queryRunner: any }, payload: AuditQueuePayload) {\n const qr = event.queryRunner;\n const arr = this.perTxn.get(qr) ?? [];\n arr.push(payload);\n this.perTxn.set(qr, arr);\n }\n\n private shouldTrackAudit(metadata: EntityMetadata): boolean {\n return this.solidRegistry.isAuditableModel(lowerFirst(metadata.name));\n }\n\n private activeUserId(): number | null {\n return this.requestContextService.getActiveUser()?.sub ?? null;\n }\n\n async afterInsert(event: InsertEvent<any>) {\n if (!this.shouldTrackAudit(event.metadata)) return;\n this.enqueue(event, {\n eventType: 'insert',\n modelName: event.metadata.name,\n entityId: event.entity?.id ?? null,\n occurredAt: new Date().toISOString(),\n after: event.entity ?? null,\n userId: this.activeUserId(),\n });\n }\n\n async afterUpdate(event: UpdateEvent<any>) {\n if (!this.shouldTrackAudit(event.metadata)) return;\n this.enqueue(event, {\n eventType: 'update',\n modelName: event.metadata.name,\n entityId: event.entity?.id ?? null,\n occurredAt: new Date().toISOString(),\n after: event.entity ?? null,\n // databaseEntity is only populated when the entity was fetched first (save() path).\n // QueryBuilder update() leaves this undefined; postAuditMessageOnUpdate guards for it.\n before: event.databaseEntity ?? null,\n updatedColumnNames: (event.updatedColumns ?? []).map(c => c.propertyName),\n userId: this.activeUserId(),\n });\n }\n\n async afterRemove(event: RemoveEvent<any>) {\n if (!this.shouldTrackAudit(event.metadata)) return;\n this.enqueue(event, {\n eventType: 'delete',\n modelName: event.metadata.name,\n entityId: event.databaseEntity?.id ?? null,\n occurredAt: new Date().toISOString(),\n before: event.databaseEntity,\n userId: this.activeUserId(),\n });\n }\n\n // --------- transaction lifecycle ----------\n async afterTransactionCommit(event: { queryRunner: any }) {\n const batch = this.perTxn.get(event.queryRunner) ?? [];\n this.perTxn.delete(event.queryRunner);\n\n // Now outside the DB transaction — safe to publish to the queue.\n // allSettled: publish in parallel; a single failure does not block the rest.\n const results = await Promise.allSettled(\n batch.map(payload => this.publisherFactory.publish({ payload }, 'ChatterQueuePublisher'))\n );\n\n results.forEach((result, i) => {\n if (result.status === 'rejected') {\n this.logger.error(\n `Failed to publish audit event for ${batch[i].modelName}#${batch[i].entityId}`,\n result.reason,\n );\n }\n });\n }\n\n afterTransactionRollback(event: { queryRunner: any }) {\n // Drop buffered payloads; the write never happened.\n this.perTxn.delete(event.queryRunner);\n }\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@solidxai/core",
|
|
3
|
-
"version": "0.1.8-beta.
|
|
3
|
+
"version": "0.1.8-beta.11",
|
|
4
4
|
"description": "This module is a NestJS module containing all the required core providers required by a Solid application",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -19,6 +19,9 @@ export class Setting extends CommonEntity {
|
|
|
19
19
|
@Column({ name: "level", type: "varchar", nullable: true })
|
|
20
20
|
level: string;
|
|
21
21
|
|
|
22
|
+
@Column({ name: "encrypted", type: "boolean", default: false })
|
|
23
|
+
encrypted: boolean;
|
|
24
|
+
|
|
22
25
|
@Index()
|
|
23
26
|
@ManyToOne(() => User, { nullable: true })
|
|
24
27
|
@JoinColumn()
|
package/src/index.ts
CHANGED
|
@@ -315,6 +315,7 @@ export * from './services/user.service'
|
|
|
315
315
|
export * from './services/view-metadata.service'
|
|
316
316
|
export * from './services/whatsapp/Msg91WhatsappService' //rename
|
|
317
317
|
export * from './services/setting.service'
|
|
318
|
+
export * from './services/encryption.service'
|
|
318
319
|
export * from './services/info.service'
|
|
319
320
|
export * from './controllers/info.controller'
|
|
320
321
|
export * from './services/settings/default-settings-provider.service'
|
package/src/interfaces.ts
CHANGED
|
@@ -70,6 +70,7 @@ export interface SettingDefinition<T = any> {
|
|
|
70
70
|
key: string;
|
|
71
71
|
value: T;
|
|
72
72
|
level: SettingLevel;
|
|
73
|
+
encrypted?: boolean;
|
|
73
74
|
}
|
|
74
75
|
|
|
75
76
|
// solid-core/settings/settings-provider.interface.ts
|
|
@@ -395,3 +396,18 @@ export interface AwsS3Config {
|
|
|
395
396
|
|
|
396
397
|
// Prevents inference so callers must provide explicit type arguments; reusable for other APIs.
|
|
397
398
|
export type NoInfer<T> = [T][T extends any ? 0 : never];
|
|
399
|
+
|
|
400
|
+
export type AuditEventType = 'insert' | 'update' | 'delete';
|
|
401
|
+
|
|
402
|
+
export interface AuditQueuePayload {
|
|
403
|
+
eventType: AuditEventType;
|
|
404
|
+
modelName: string;
|
|
405
|
+
entityId: string | number | null;
|
|
406
|
+
occurredAt: string;
|
|
407
|
+
after?: any;
|
|
408
|
+
before?: any;
|
|
409
|
+
updatedColumnNames?: string[];
|
|
410
|
+
userId?: number | null;
|
|
411
|
+
}
|
|
412
|
+
|
|
413
|
+
|
|
@@ -4,7 +4,7 @@ import { DatabasePublisher } from 'src/services/queues/database-publisher.servic
|
|
|
4
4
|
import { MqMessageQueueService } from '../../services/mq-message-queue.service';
|
|
5
5
|
import { MqMessageService } from '../../services/mq-message.service';
|
|
6
6
|
import { QueuesModuleOptions } from "../../interfaces";
|
|
7
|
-
import { AuditQueuePayload } from '
|
|
7
|
+
import { AuditQueuePayload } from '../../interfaces';
|
|
8
8
|
import chatterQueueOptionsDatabase from './chatter-queue-options-database';
|
|
9
9
|
|
|
10
10
|
@Injectable()
|
|
@@ -6,7 +6,7 @@ import { MqMessageService } from '../../services/mq-message.service';
|
|
|
6
6
|
import { MqMessageQueueService } from '../../services/mq-message-queue.service';
|
|
7
7
|
import { QueuesModuleOptions } from "../../interfaces";
|
|
8
8
|
import { PollerService } from 'src/services/poller.service';
|
|
9
|
-
import { AuditQueuePayload } from '
|
|
9
|
+
import { AuditQueuePayload } from '../../interfaces';
|
|
10
10
|
import { ChatterMessageService } from 'src/services/chatter-message.service';
|
|
11
11
|
import chatterQueueOptionsDatabase from './chatter-queue-options-database';
|
|
12
12
|
|
|
@@ -4,21 +4,7 @@ import { RabbitMqPublisher } from 'src/services/queues/rabbitmq-publisher.servic
|
|
|
4
4
|
import chatterQueueOptions from './chatter-queue-options';
|
|
5
5
|
import { MqMessageQueueService } from '../../services/mq-message-queue.service';
|
|
6
6
|
import { MqMessageService } from '../../services/mq-message.service';
|
|
7
|
-
import { QueuesModuleOptions } from "../../interfaces";
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
export type AuditEventType = 'insert' | 'update' | 'delete';
|
|
11
|
-
|
|
12
|
-
export interface AuditQueuePayload {
|
|
13
|
-
eventType: AuditEventType;
|
|
14
|
-
modelName: string; // TypeORM entity class name (e.g. 'Order')
|
|
15
|
-
entityId: string | number | null;
|
|
16
|
-
occurredAt: string; // ISO timestamp, captured at event time
|
|
17
|
-
after?: any; // entity state after operation (insert/update)
|
|
18
|
-
before?: any; // entity state before operation (update/delete)
|
|
19
|
-
updatedColumnNames?: string[]; // propertyNames of changed columns (update only)
|
|
20
|
-
userId?: number | null; // active user captured at event time
|
|
21
|
-
}
|
|
7
|
+
import { AuditQueuePayload, QueuesModuleOptions } from "../../interfaces";
|
|
22
8
|
|
|
23
9
|
@Injectable()
|
|
24
10
|
export class ChatterQueuePublisherRabbitmq extends RabbitMqPublisher<AuditQueuePayload> {
|
|
@@ -6,7 +6,7 @@ import { MqMessageService } from '../../services/mq-message.service';
|
|
|
6
6
|
import { MqMessageQueueService } from '../../services/mq-message-queue.service';
|
|
7
7
|
import { QueuesModuleOptions } from "../../interfaces";
|
|
8
8
|
import chatterQueueOptions from './chatter-queue-options';
|
|
9
|
-
import { AuditQueuePayload } from '
|
|
9
|
+
import { AuditQueuePayload } from '../../interfaces';
|
|
10
10
|
import { ChatterMessageService } from 'src/services/chatter-message.service';
|
|
11
11
|
|
|
12
12
|
@Injectable()
|
|
@@ -6,7 +6,7 @@ import chatterQueueConfig from './chatter-queue-options-redis';
|
|
|
6
6
|
import { MqMessageService } from '../../services/mq-message.service';
|
|
7
7
|
import { MqMessageQueueService } from '../../services/mq-message-queue.service';
|
|
8
8
|
import { QueuesModuleOptions } from "../../interfaces";
|
|
9
|
-
import { AuditQueuePayload } from '
|
|
9
|
+
import { AuditQueuePayload } from '../../interfaces';
|
|
10
10
|
import { ChatterMessageService } from '../../services/chatter-message.service';
|
|
11
11
|
|
|
12
12
|
@Injectable()
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import * as crypto from 'crypto';
|
|
2
|
+
|
|
3
|
+
const ALGORITHM = 'aes-256-gcm';
|
|
4
|
+
const IV_LENGTH = 12;
|
|
5
|
+
const AUTH_TAG_LENGTH = 16;
|
|
6
|
+
const KEY_LENGTH = 32;
|
|
7
|
+
const SCRYPT_SALT = 'solid-encryption-salt';
|
|
8
|
+
const ENC_PREFIX = 'enc:';
|
|
9
|
+
|
|
10
|
+
export class EncryptionService {
|
|
11
|
+
private readonly key: Buffer;
|
|
12
|
+
|
|
13
|
+
constructor(secret: string) {
|
|
14
|
+
if (!secret) throw new Error('EncryptionService: secret must not be empty');
|
|
15
|
+
this.key = crypto.scryptSync(secret, SCRYPT_SALT, KEY_LENGTH) as Buffer;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
encrypt(plaintext: string): string {
|
|
19
|
+
const iv = crypto.randomBytes(IV_LENGTH);
|
|
20
|
+
const cipher = crypto.createCipheriv(ALGORITHM, this.key, iv, { authTagLength: AUTH_TAG_LENGTH });
|
|
21
|
+
const encrypted = Buffer.concat([cipher.update(plaintext, 'utf8'), cipher.final()]);
|
|
22
|
+
const authTag = cipher.getAuthTag();
|
|
23
|
+
return `${ENC_PREFIX}${iv.toString('hex')}:${authTag.toString('hex')}:${encrypted.toString('hex')}`;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
decrypt(ciphertext: string): string {
|
|
27
|
+
if (!ciphertext.startsWith(ENC_PREFIX)) {
|
|
28
|
+
throw new Error('EncryptionService: value does not appear to be encrypted');
|
|
29
|
+
}
|
|
30
|
+
const payload = ciphertext.slice(ENC_PREFIX.length);
|
|
31
|
+
const [ivHex, authTagHex, encryptedHex] = payload.split(':');
|
|
32
|
+
const iv = Buffer.from(ivHex, 'hex');
|
|
33
|
+
const authTag = Buffer.from(authTagHex, 'hex');
|
|
34
|
+
const encryptedBuf = Buffer.from(encryptedHex, 'hex');
|
|
35
|
+
const decipher = crypto.createDecipheriv(ALGORITHM, this.key, iv, { authTagLength: AUTH_TAG_LENGTH });
|
|
36
|
+
decipher.setAuthTag(authTag);
|
|
37
|
+
return decipher.update(encryptedBuf).toString('utf8') + decipher.final('utf8');
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
isEncrypted(value: string): boolean {
|
|
41
|
+
return typeof value === 'string' && value.startsWith(ENC_PREFIX);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -15,6 +15,7 @@ import { ISettingsProvider, NoInfer, SettingDefinition, SettingLevel } from '../
|
|
|
15
15
|
import { ModuleMetadataRepository } from 'src/repository/module-metadata.repository';
|
|
16
16
|
import type { SolidCoreSetting } from './settings/default-settings-provider.service';
|
|
17
17
|
import { Logger } from '@nestjs/common';
|
|
18
|
+
import { EncryptionService } from './encryption.service';
|
|
18
19
|
|
|
19
20
|
|
|
20
21
|
@Injectable()
|
|
@@ -23,6 +24,7 @@ export class SettingService {
|
|
|
23
24
|
|
|
24
25
|
private settings: SettingDefinition[] = [];
|
|
25
26
|
private settingsByKey = new Map<string, SettingDefinition>();
|
|
27
|
+
private readonly encryptionService: EncryptionService | null;
|
|
26
28
|
|
|
27
29
|
private readonly arrayKeysToSkip = new Set([
|
|
28
30
|
'authenticationPasswordRegex',
|
|
@@ -38,7 +40,11 @@ export class SettingService {
|
|
|
38
40
|
readonly moduleMetadataRepo: ModuleMetadataRepository,
|
|
39
41
|
private readonly requestContextService: RequestContextService,
|
|
40
42
|
@InjectRepository(User) private readonly userRepository: Repository<User>,
|
|
41
|
-
) {
|
|
43
|
+
) {
|
|
44
|
+
const encKey = process.env.APP_ENCRYPTION_KEY;
|
|
45
|
+
this.encryptionService = encKey ? new EncryptionService(encKey) : null;
|
|
46
|
+
if (!encKey) this._logger.warn('APP_ENCRYPTION_KEY is not set — encrypted settings will not be decrypted');
|
|
47
|
+
}
|
|
42
48
|
|
|
43
49
|
private async getSettingsFromDb(): Promise<Setting[]> {
|
|
44
50
|
const settings = await this.repo.find({ relations: ['user'] });
|
|
@@ -112,7 +118,15 @@ export class SettingService {
|
|
|
112
118
|
const settingFromDb = settingsFromDbByKey.get(setting.key);
|
|
113
119
|
const valueFromDb = settingFromDb?.value;
|
|
114
120
|
if (settingFromDb?.key && valueFromDb !== undefined && valueFromDb !== null) {
|
|
115
|
-
|
|
121
|
+
let rawValue = valueFromDb;
|
|
122
|
+
if (settingFromDb.encrypted && this.encryptionService) {
|
|
123
|
+
try {
|
|
124
|
+
rawValue = this.encryptionService.decrypt(rawValue);
|
|
125
|
+
} catch {
|
|
126
|
+
this._logger.warn(`Failed to decrypt setting "${setting.key}" — using raw value`);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
const parsedValue = typeof rawValue === 'string' ? this.parseSettingValue(rawValue, settingFromDb.key) : rawValue;
|
|
116
130
|
return { ...setting, value: parsedValue };
|
|
117
131
|
}
|
|
118
132
|
return setting;
|
|
@@ -149,30 +163,38 @@ export class SettingService {
|
|
|
149
163
|
const settingsToMutate: Setting[] = [];
|
|
150
164
|
// const settingsToUpdate: Setting[] = [];
|
|
151
165
|
|
|
152
|
-
for (const { key, value, level, moduleName } of saEditableAndAbove) {
|
|
166
|
+
for (const { key, value, level, moduleName, encrypted } of saEditableAndAbove) {
|
|
153
167
|
const moduleMetadata = await this.moduleMetadataRepo.findOneBy({ name: moduleName });
|
|
154
168
|
if (!existingSettingsFromDbByKey.has(key)) {
|
|
155
169
|
const setting = new Setting();
|
|
156
170
|
setting.key = key;
|
|
157
171
|
setting.level = level;
|
|
172
|
+
setting.encrypted = !!encrypted;
|
|
158
173
|
if (moduleMetadata)
|
|
159
174
|
setting.moduleMetadata = moduleMetadata;
|
|
160
175
|
|
|
176
|
+
let rawValue: string | null;
|
|
161
177
|
if (typeof value === 'boolean') {
|
|
162
|
-
|
|
178
|
+
rawValue = value.toString();
|
|
163
179
|
} else if (Array.isArray(value)) {
|
|
164
|
-
|
|
180
|
+
rawValue = value.join(',');
|
|
165
181
|
} else if (value === null || value === undefined) {
|
|
166
|
-
|
|
182
|
+
rawValue = null;
|
|
167
183
|
} else {
|
|
168
|
-
|
|
184
|
+
rawValue = String(value);
|
|
169
185
|
}
|
|
170
186
|
|
|
187
|
+
if (encrypted && this.encryptionService && rawValue !== null) {
|
|
188
|
+
rawValue = this.encryptionService.encrypt(rawValue);
|
|
189
|
+
}
|
|
190
|
+
setting.value = rawValue;
|
|
191
|
+
|
|
171
192
|
settingsToMutate.push(setting);
|
|
172
193
|
}
|
|
173
194
|
else {
|
|
174
195
|
const setting = existingSettingsFromDbByKey.get(key);
|
|
175
196
|
setting.level = level;
|
|
197
|
+
setting.encrypted = !!encrypted;
|
|
176
198
|
if (moduleMetadata)
|
|
177
199
|
setting.moduleMetadata = moduleMetadata;
|
|
178
200
|
settingsToMutate.push(setting);
|
|
@@ -289,22 +311,29 @@ export class SettingService {
|
|
|
289
311
|
}
|
|
290
312
|
|
|
291
313
|
const key = settingDto.key;
|
|
292
|
-
// const value = settingDto.value ?? '';
|
|
293
314
|
const rawValue = settingDto.value;
|
|
294
|
-
|
|
315
|
+
let value = rawValue === null || rawValue === undefined ? null : String(rawValue);
|
|
295
316
|
|
|
296
317
|
const settingType = settingDto.type ?? 'system';
|
|
318
|
+
const definition = this.settingsByKey.get(key);
|
|
319
|
+
const shouldEncrypt = !!definition?.encrypted && this.encryptionService !== null && value !== null;
|
|
320
|
+
|
|
321
|
+
if (shouldEncrypt) {
|
|
322
|
+
value = this.encryptionService.encrypt(value);
|
|
323
|
+
}
|
|
297
324
|
|
|
298
325
|
const existingSetting = existingSettings.find(s => s.key === key);
|
|
299
326
|
if (existingSetting) {
|
|
300
327
|
existingSetting.value = value;
|
|
301
328
|
existingSetting.type = settingType;
|
|
329
|
+
existingSetting.encrypted = shouldEncrypt;
|
|
302
330
|
settingsToUpdate.push(existingSetting);
|
|
303
331
|
} else {
|
|
304
332
|
const newSetting = new Setting();
|
|
305
333
|
newSetting.key = key;
|
|
306
334
|
newSetting.value = value;
|
|
307
335
|
newSetting.type = settingType;
|
|
336
|
+
newSetting.encrypted = shouldEncrypt;
|
|
308
337
|
|
|
309
338
|
if (settingType === 'user' && user) {
|
|
310
339
|
newSetting.user = user;
|
|
@@ -35,12 +35,13 @@ const getSolidCoreSettings = (isProd: boolean) => ([
|
|
|
35
35
|
{
|
|
36
36
|
moduleName: "solid-core", key: "solidXGenAiCodeBuilderConfig", value: JSON.stringify({
|
|
37
37
|
models: {
|
|
38
|
-
default: {
|
|
39
|
-
fast: {
|
|
38
|
+
default: { providerId: "", model: "", behavior: { streaming: false, custom: "" } },
|
|
39
|
+
fast: { providerId: "", model: "", behavior: { streaming: false, custom: "" } },
|
|
40
40
|
},
|
|
41
41
|
providers: {},
|
|
42
|
-
}), level: SettingLevel.SystemAdminEditable
|
|
42
|
+
}), level: SettingLevel.SystemAdminEditable, encrypted: true
|
|
43
43
|
},
|
|
44
|
+
{ moduleName: "solid-core", key: "appEncryptionKey", value: process.env.APP_ENCRYPTION_KEY, level: SettingLevel.SystemEnv },
|
|
44
45
|
{ moduleName: "solid-core", key: "mcpEnabled", value: process.env.MCP_ENABLED || false, level: SettingLevel.SystemAdminReadonly },
|
|
45
46
|
{ moduleName: "solid-core", key: "mcpServerUrl", value: process.env.MCP_SERVER_URL, level: SettingLevel.SystemAdminReadonly },
|
|
46
47
|
{ moduleName: "solid-core", key: "mcpApiKey", value: process.env.MCP_API_KEY, level: SettingLevel.SystemEnv },
|
|
@@ -2,7 +2,7 @@ import { Injectable, Logger, Scope } from '@nestjs/common';
|
|
|
2
2
|
import { lowerFirst } from 'src/helpers/string.helper';
|
|
3
3
|
import { SolidRegistry } from 'src/helpers/solid-registry';
|
|
4
4
|
import { DataSource, EntityMetadata, EntitySubscriberInterface, InsertEvent, RemoveEvent, UpdateEvent } from 'typeorm';
|
|
5
|
-
import { AuditQueuePayload } from 'src/
|
|
5
|
+
import { AuditQueuePayload } from 'src/interfaces';
|
|
6
6
|
import { RequestContextService } from 'src/services/request-context.service';
|
|
7
7
|
import { PublisherFactory } from 'src/services/queues/publisher-factory.service';
|
|
8
8
|
|