@ductape/sdk 0.0.1
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 +58 -0
- package/dist/actions/actions.repo.d.ts +0 -0
- package/dist/actions/actions.repo.js +13 -0
- package/dist/actions/actions.repo.js.map +1 -0
- package/dist/actions/actions.service.d.ts +0 -0
- package/dist/actions/actions.service.js +24 -0
- package/dist/actions/actions.service.js.map +1 -0
- package/dist/actions/utils/actions.util.read.d.ts +0 -0
- package/dist/actions/utils/actions.util.read.js +427 -0
- package/dist/actions/utils/actions.util.read.js.map +1 -0
- package/dist/api/services/appApi.service.d.ts +30 -0
- package/dist/api/services/appApi.service.js +157 -0
- package/dist/api/services/appApi.service.js.map +1 -0
- package/dist/api/services/integrationsApi.service.d.ts +18 -0
- package/dist/api/services/integrationsApi.service.js +80 -0
- package/dist/api/services/integrationsApi.service.js.map +1 -0
- package/dist/api/services/logsApi.service.d.ts +11 -0
- package/dist/api/services/logsApi.service.js +50 -0
- package/dist/api/services/logsApi.service.js.map +1 -0
- package/dist/api/services/processorApi.service.d.ts +20 -0
- package/dist/api/services/processorApi.service.js +108 -0
- package/dist/api/services/processorApi.service.js.map +1 -0
- package/dist/api/services/productsApi.service.d.ts +19 -0
- package/dist/api/services/productsApi.service.js +92 -0
- package/dist/api/services/productsApi.service.js.map +1 -0
- package/dist/api/services/userApi.service.d.ts +9 -0
- package/dist/api/services/userApi.service.js +20 -0
- package/dist/api/services/userApi.service.js.map +1 -0
- package/dist/api/services/webhooksApi.service.d.ts +11 -0
- package/dist/api/services/webhooksApi.service.js +51 -0
- package/dist/api/services/webhooksApi.service.js.map +1 -0
- package/dist/api/services/workspaceApi.service.d.ts +9 -0
- package/dist/api/services/workspaceApi.service.js +24 -0
- package/dist/api/services/workspaceApi.service.js.map +1 -0
- package/dist/api/urls.d.ts +43 -0
- package/dist/api/urls.js +83 -0
- package/dist/api/urls.js.map +1 -0
- package/dist/api/utils/auth.utils.d.ts +12 -0
- package/dist/api/utils/auth.utils.js +24 -0
- package/dist/api/utils/auth.utils.js.map +1 -0
- package/dist/api/utils/strings.utils.d.ts +5 -0
- package/dist/api/utils/strings.utils.js +50 -0
- package/dist/api/utils/strings.utils.js.map +1 -0
- package/dist/appBuilder/services/app.service.d.ts +111 -0
- package/dist/appBuilder/services/app.service.js +737 -0
- package/dist/appBuilder/services/app.service.js.map +1 -0
- package/dist/appBuilder/services/appBuilder.service.d.ts +111 -0
- package/dist/appBuilder/services/appBuilder.service.js +662 -0
- package/dist/appBuilder/services/appBuilder.service.js.map +1 -0
- package/dist/appBuilder/utils/objects.utils.d.ts +3 -0
- package/dist/appBuilder/utils/objects.utils.js +9 -0
- package/dist/appBuilder/utils/objects.utils.js.map +1 -0
- package/dist/appBuilder/utils/string.utils.d.ts +2 -0
- package/dist/appBuilder/utils/string.utils.js +57 -0
- package/dist/appBuilder/utils/string.utils.js.map +1 -0
- package/dist/appBuilder/validators/index.d.ts +19 -0
- package/dist/appBuilder/validators/index.js +40 -0
- package/dist/appBuilder/validators/index.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/create.app.validator.d.ts +3 -0
- package/dist/appBuilder/validators/joi-validators/create.app.validator.js +10 -0
- package/dist/appBuilder/validators/joi-validators/create.app.validator.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/create.appAction.validator.d.ts +4 -0
- package/dist/appBuilder/validators/joi-validators/create.appAction.validator.js +20 -0
- package/dist/appBuilder/validators/joi-validators/create.appAction.validator.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/create.appActionResponse.validator.d.ts +7 -0
- package/dist/appBuilder/validators/joi-validators/create.appActionResponse.validator.js +44 -0
- package/dist/appBuilder/validators/joi-validators/create.appActionResponse.validator.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/create.appAuth.validator.d.ts +3 -0
- package/dist/appBuilder/validators/joi-validators/create.appAuth.validator.js +31 -0
- package/dist/appBuilder/validators/joi-validators/create.appAuth.validator.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/create.appBody.validators.d.ts +4 -0
- package/dist/appBuilder/validators/joi-validators/create.appBody.validators.js +11 -0
- package/dist/appBuilder/validators/joi-validators/create.appBody.validators.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/create.appConstants.validator.d.ts +4 -0
- package/dist/appBuilder/validators/joi-validators/create.appConstants.validator.js +12 -0
- package/dist/appBuilder/validators/joi-validators/create.appConstants.validator.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/create.appEnv.validator.d.ts +4 -0
- package/dist/appBuilder/validators/joi-validators/create.appEnv.validator.js +17 -0
- package/dist/appBuilder/validators/joi-validators/create.appEnv.validator.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/create.appEvent.validator.d.ts +5 -0
- package/dist/appBuilder/validators/joi-validators/create.appEvent.validator.js +30 -0
- package/dist/appBuilder/validators/joi-validators/create.appEvent.validator.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/create.appVariable.validator.d.ts +4 -0
- package/dist/appBuilder/validators/joi-validators/create.appVariable.validator.js +14 -0
- package/dist/appBuilder/validators/joi-validators/create.appVariable.validator.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/sample.validator.d.ts +5 -0
- package/dist/appBuilder/validators/joi-validators/sample.validator.js +26 -0
- package/dist/appBuilder/validators/joi-validators/sample.validator.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/update.app.validator.d.ts +4 -0
- package/dist/appBuilder/validators/joi-validators/update.app.validator.js +34 -0
- package/dist/appBuilder/validators/joi-validators/update.app.validator.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/update.appAction.validator.d.ts +4 -0
- package/dist/appBuilder/validators/joi-validators/update.appAction.validator.js +23 -0
- package/dist/appBuilder/validators/joi-validators/update.appAction.validator.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/update.appActionResponse.validator.d.ts +3 -0
- package/dist/appBuilder/validators/joi-validators/update.appActionResponse.validator.js +21 -0
- package/dist/appBuilder/validators/joi-validators/update.appActionResponse.validator.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/update.appAuth.validator.d.ts +4 -0
- package/dist/appBuilder/validators/joi-validators/update.appAuth.validator.js +19 -0
- package/dist/appBuilder/validators/joi-validators/update.appAuth.validator.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/update.appConstants.validator.d.ts +4 -0
- package/dist/appBuilder/validators/joi-validators/update.appConstants.validator.js +12 -0
- package/dist/appBuilder/validators/joi-validators/update.appConstants.validator.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/update.appEnv.validator.d.ts +4 -0
- package/dist/appBuilder/validators/joi-validators/update.appEnv.validator.js +17 -0
- package/dist/appBuilder/validators/joi-validators/update.appEnv.validator.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/update.appEvent.validator.d.ts +4 -0
- package/dist/appBuilder/validators/joi-validators/update.appEvent.validator.js +16 -0
- package/dist/appBuilder/validators/joi-validators/update.appEvent.validator.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/update.appVariables.validator.d.ts +4 -0
- package/dist/appBuilder/validators/joi-validators/update.appVariables.validator.js +14 -0
- package/dist/appBuilder/validators/joi-validators/update.appVariables.validator.js.map +1 -0
- package/dist/appBuilder/validators/joi-validators/update.validation.entityData.validator.d.ts +3 -0
- package/dist/appBuilder/validators/joi-validators/update.validation.entityData.validator.js +27 -0
- package/dist/appBuilder/validators/joi-validators/update.validation.entityData.validator.js.map +1 -0
- package/dist/apps/services/app.service.d.ts +116 -0
- package/dist/apps/services/app.service.js +995 -0
- package/dist/apps/services/app.service.js.map +1 -0
- package/dist/apps/utils/objects.utils.d.ts +4 -0
- package/dist/apps/utils/objects.utils.js +57 -0
- package/dist/apps/utils/objects.utils.js.map +1 -0
- package/dist/apps/utils/string.utils.d.ts +2 -0
- package/dist/apps/utils/string.utils.js +57 -0
- package/dist/apps/utils/string.utils.js.map +1 -0
- package/dist/apps/validators/index.d.ts +17 -0
- package/dist/apps/validators/index.js +39 -0
- package/dist/apps/validators/index.js.map +1 -0
- package/dist/apps/validators/joi-validators/create.app.validator.d.ts +3 -0
- package/dist/apps/validators/joi-validators/create.app.validator.js +43 -0
- package/dist/apps/validators/joi-validators/create.app.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/create.appAction.validator.d.ts +4 -0
- package/dist/apps/validators/joi-validators/create.appAction.validator.js +52 -0
- package/dist/apps/validators/joi-validators/create.appAction.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/create.appActionResponse.validator.d.ts +7 -0
- package/dist/apps/validators/joi-validators/create.appActionResponse.validator.js +79 -0
- package/dist/apps/validators/joi-validators/create.appActionResponse.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/create.appAuth.validator.d.ts +3 -0
- package/dist/apps/validators/joi-validators/create.appAuth.validator.js +64 -0
- package/dist/apps/validators/joi-validators/create.appAuth.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/create.appBody.validators.d.ts +4 -0
- package/dist/apps/validators/joi-validators/create.appBody.validators.js +44 -0
- package/dist/apps/validators/joi-validators/create.appBody.validators.js.map +1 -0
- package/dist/apps/validators/joi-validators/create.appConstants.validator.d.ts +4 -0
- package/dist/apps/validators/joi-validators/create.appConstants.validator.js +45 -0
- package/dist/apps/validators/joi-validators/create.appConstants.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/create.appEnv.validator.d.ts +4 -0
- package/dist/apps/validators/joi-validators/create.appEnv.validator.js +49 -0
- package/dist/apps/validators/joi-validators/create.appEnv.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/create.appEvent.validator.d.ts +5 -0
- package/dist/apps/validators/joi-validators/create.appEvent.validator.js +30 -0
- package/dist/apps/validators/joi-validators/create.appEvent.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/create.appVariable.validator.d.ts +4 -0
- package/dist/apps/validators/joi-validators/create.appVariable.validator.js +47 -0
- package/dist/apps/validators/joi-validators/create.appVariable.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/create.appWebhook.validator.d.ts +4 -0
- package/dist/apps/validators/joi-validators/create.appWebhook.validator.js +60 -0
- package/dist/apps/validators/joi-validators/create.appWebhook.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/create.appWebhookEvent.validator.d.ts +3 -0
- package/dist/apps/validators/joi-validators/create.appWebhookEvent.validator.js +47 -0
- package/dist/apps/validators/joi-validators/create.appWebhookEvent.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/sample.validator.d.ts +6 -0
- package/dist/apps/validators/joi-validators/sample.validator.js +65 -0
- package/dist/apps/validators/joi-validators/sample.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/update.app.validator.d.ts +4 -0
- package/dist/apps/validators/joi-validators/update.app.validator.js +64 -0
- package/dist/apps/validators/joi-validators/update.app.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/update.appAction.validator.d.ts +4 -0
- package/dist/apps/validators/joi-validators/update.appAction.validator.js +55 -0
- package/dist/apps/validators/joi-validators/update.appAction.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/update.appActionResponse.validator.d.ts +3 -0
- package/dist/apps/validators/joi-validators/update.appActionResponse.validator.js +24 -0
- package/dist/apps/validators/joi-validators/update.appActionResponse.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/update.appAuth.validator.d.ts +4 -0
- package/dist/apps/validators/joi-validators/update.appAuth.validator.js +52 -0
- package/dist/apps/validators/joi-validators/update.appAuth.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/update.appConstants.validator.d.ts +4 -0
- package/dist/apps/validators/joi-validators/update.appConstants.validator.js +45 -0
- package/dist/apps/validators/joi-validators/update.appConstants.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/update.appEnv.validator.d.ts +4 -0
- package/dist/apps/validators/joi-validators/update.appEnv.validator.js +49 -0
- package/dist/apps/validators/joi-validators/update.appEnv.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/update.appEvent.validator.d.ts +4 -0
- package/dist/apps/validators/joi-validators/update.appEvent.validator.js +16 -0
- package/dist/apps/validators/joi-validators/update.appEvent.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/update.appVariables.validator.d.ts +4 -0
- package/dist/apps/validators/joi-validators/update.appVariables.validator.js +47 -0
- package/dist/apps/validators/joi-validators/update.appVariables.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/update.appWebhook.validator.d.ts +4 -0
- package/dist/apps/validators/joi-validators/update.appWebhook.validator.js +59 -0
- package/dist/apps/validators/joi-validators/update.appWebhook.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/update.appWebhookEvent.validator.d.ts +3 -0
- package/dist/apps/validators/joi-validators/update.appWebhookEvent.validator.js +46 -0
- package/dist/apps/validators/joi-validators/update.appWebhookEvent.validator.js.map +1 -0
- package/dist/apps/validators/joi-validators/update.validation.entityData.validator.d.ts +3 -0
- package/dist/apps/validators/joi-validators/update.validation.entityData.validator.js +60 -0
- package/dist/apps/validators/joi-validators/update.validation.entityData.validator.js.map +1 -0
- package/dist/clients/apps.client.d.ts +4 -0
- package/dist/clients/apps.client.js +28 -0
- package/dist/clients/apps.client.js.map +1 -0
- package/dist/clients/email.client.d.ts +3 -0
- package/dist/clients/email.client.js +32 -0
- package/dist/clients/email.client.js.map +1 -0
- package/dist/clients/expo.client.d.ts +3 -0
- package/dist/clients/expo.client.js +28 -0
- package/dist/clients/expo.client.js.map +1 -0
- package/dist/clients/function.client.d.ts +3 -0
- package/dist/clients/function.client.js +27 -0
- package/dist/clients/function.client.js.map +1 -0
- package/dist/clients/http.client.d.ts +3 -0
- package/dist/clients/http.client.js +27 -0
- package/dist/clients/http.client.js.map +1 -0
- package/dist/clients/integrations.client.d.ts +2 -0
- package/dist/clients/integrations.client.js +26 -0
- package/dist/clients/integrations.client.js.map +1 -0
- package/dist/clients/logs.client.d.ts +3 -0
- package/dist/clients/logs.client.js +33 -0
- package/dist/clients/logs.client.js.map +1 -0
- package/dist/clients/products.client.d.ts +3 -0
- package/dist/clients/products.client.js +29 -0
- package/dist/clients/products.client.js.map +1 -0
- package/dist/clients/users.client.d.ts +3 -0
- package/dist/clients/users.client.js +33 -0
- package/dist/clients/users.client.js.map +1 -0
- package/dist/clients/webhooks.client.d.ts +2 -0
- package/dist/clients/webhooks.client.js +33 -0
- package/dist/clients/webhooks.client.js.map +1 -0
- package/dist/clients/workspace.client.d.ts +3 -0
- package/dist/clients/workspace.client.js +33 -0
- package/dist/clients/workspace.client.js.map +1 -0
- package/dist/imports/imports.repo.d.ts +0 -0
- package/dist/imports/imports.repo.js +1 -0
- package/dist/imports/imports.repo.js.map +1 -0
- package/dist/imports/imports.service.d.ts +24 -0
- package/dist/imports/imports.service.js +111 -0
- package/dist/imports/imports.service.js.map +1 -0
- package/dist/imports/imports.types.d.ts +104 -0
- package/dist/imports/imports.types.js +33 -0
- package/dist/imports/imports.types.js.map +1 -0
- package/dist/imports/openAPI3.0.types.d.ts +52 -0
- package/dist/imports/openAPI3.0.types.js +3 -0
- package/dist/imports/openAPI3.0.types.js.map +1 -0
- package/dist/imports/repos/openApi.repo.d.ts +13 -0
- package/dist/imports/repos/openApi.repo.js +33 -0
- package/dist/imports/repos/openApi.repo.js.map +1 -0
- package/dist/imports/repos/postmanV21.repo.d.ts +14 -0
- package/dist/imports/repos/postmanV21.repo.js +214 -0
- package/dist/imports/repos/postmanV21.repo.js.map +1 -0
- package/dist/imports/utils/imports.utils.d.ts +80 -0
- package/dist/imports/utils/imports.utils.js +114 -0
- package/dist/imports/utils/imports.utils.js.map +1 -0
- package/dist/imports/validators/index.d.ts +0 -0
- package/dist/imports/validators/index.js +1 -0
- package/dist/imports/validators/index.js.map +1 -0
- package/dist/imports/validators/joi-validators/postmanV21.validator.d.ts +5 -0
- package/dist/imports/validators/joi-validators/postmanV21.validator.js +96 -0
- package/dist/imports/validators/joi-validators/postmanV21.validator.js.map +1 -0
- package/dist/index.d.ts +325 -0
- package/dist/index.js +923 -0
- package/dist/index.js.map +1 -0
- package/dist/inputs/inputs.repo.d.ts +7 -0
- package/dist/inputs/inputs.repo.js +16 -0
- package/dist/inputs/inputs.repo.js.map +1 -0
- package/dist/inputs/inputs.service.d.ts +61 -0
- package/dist/inputs/inputs.service.js +468 -0
- package/dist/inputs/inputs.service.js.map +1 -0
- package/dist/inputs/utils/inputs.utils.create.d.ts +11 -0
- package/dist/inputs/utils/inputs.utils.create.js +273 -0
- package/dist/inputs/utils/inputs.utils.create.js.map +1 -0
- package/dist/inputs/validators/inputs.validator.parse.d.ts +4 -0
- package/dist/inputs/validators/inputs.validator.parse.js +52 -0
- package/dist/inputs/validators/inputs.validator.parse.js.map +1 -0
- package/dist/integrationsBuilder/services/integration.service.d.ts +138 -0
- package/dist/integrationsBuilder/services/integration.service.js +1148 -0
- package/dist/integrationsBuilder/services/integration.service.js.map +1 -0
- package/dist/integrationsBuilder/services/integrationBuilder.service.d.ts +130 -0
- package/dist/integrationsBuilder/services/integrationBuilder.service.js +1017 -0
- package/dist/integrationsBuilder/services/integrationBuilder.service.js.map +1 -0
- package/dist/integrationsBuilder/utils/objects.utils.d.ts +2 -0
- package/dist/integrationsBuilder/utils/objects.utils.js +48 -0
- package/dist/integrationsBuilder/utils/objects.utils.js.map +1 -0
- package/dist/integrationsBuilder/utils/string.utils.d.ts +1 -0
- package/dist/integrationsBuilder/utils/string.utils.js +9 -0
- package/dist/integrationsBuilder/utils/string.utils.js.map +1 -0
- package/dist/integrationsBuilder/validators/index.d.ts +18 -0
- package/dist/integrationsBuilder/validators/index.js +38 -0
- package/dist/integrationsBuilder/validators/index.js.map +1 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integration.validator.d.ts +3 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integration.validator.js +10 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integration.validator.js.map +1 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationApp.validator.d.ts +4 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationApp.validator.js +26 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationApp.validator.js.map +1 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationCache.validator.d.ts +3 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationCache.validator.js +8 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationCache.validator.js.map +1 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationDatabase.validator.d.ts +3 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationDatabase.validator.js +8 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationDatabase.validator.js.map +1 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationEnv.validator.d.ts +3 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationEnv.validator.js +10 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationEnv.validator.js.map +1 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationFeature.validator.d.ts +3 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationFeature.validator.js +60 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationFeature.validator.js.map +1 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationFunction.validator.d.ts +3 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationFunction.validator.js +8 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationFunction.validator.js.map +1 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationJob.validator.d.ts +3 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationJob.validator.js +8 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationJob.validator.js.map +1 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationNotification.validator.d.ts +3 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationNotification.validator.js +8 -0
- package/dist/integrationsBuilder/validators/joi-validators/create.integrationNotification.validator.js.map +1 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationApp.validator.d.ts +3 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationApp.validator.js +9 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationApp.validator.js.map +1 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationCache.validator.d.ts +3 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationCache.validator.js +8 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationCache.validator.js.map +1 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationDatabase.validator.d.ts +3 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationDatabase.validator.js +8 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationDatabase.validator.js.map +1 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationEnv.validator.d.ts +3 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationEnv.validator.js +8 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationEnv.validator.js.map +1 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationFeature.validator.d.ts +3 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationFeature.validator.js +8 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationFeature.validator.js.map +1 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationFunction.validator copy.d.ts +3 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationFunction.validator copy.js +8 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationFunction.validator copy.js.map +1 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationJob.validator.d.ts +3 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationJob.validator.js +8 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationJob.validator.js.map +1 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationNotification.validator.d.ts +3 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationNotification.validator.js +8 -0
- package/dist/integrationsBuilder/validators/joi-validators/update.integrationNotification.validator.js.map +1 -0
- package/dist/logs/logs.repo.d.ts +6 -0
- package/dist/logs/logs.repo.js +12 -0
- package/dist/logs/logs.repo.js.map +1 -0
- package/dist/logs/logs.service.d.ts +29 -0
- package/dist/logs/logs.service.js +70 -0
- package/dist/logs/logs.service.js.map +1 -0
- package/dist/logs/logs.types.d.ts +44 -0
- package/dist/logs/logs.types.js +31 -0
- package/dist/logs/logs.types.js.map +1 -0
- package/dist/logs/utils/logs.utils.create.d.ts +0 -0
- package/dist/logs/utils/logs.utils.create.js +1 -0
- package/dist/logs/utils/logs.utils.create.js.map +1 -0
- package/dist/logs/utils/logs.utils.errors.d.ts +2 -0
- package/dist/logs/utils/logs.utils.errors.js +8 -0
- package/dist/logs/utils/logs.utils.errors.js.map +1 -0
- package/dist/postman.d.ts +1 -0
- package/dist/postman.js +21674 -0
- package/dist/postman.js.map +1 -0
- package/dist/processor/repos/mongo.repo.d.ts +39 -0
- package/dist/processor/repos/mongo.repo.js +260 -0
- package/dist/processor/repos/mongo.repo.js.map +1 -0
- package/dist/processor/repos/postgres.repo.d.ts +31 -0
- package/dist/processor/repos/postgres.repo.js +185 -0
- package/dist/processor/repos/postgres.repo.js.map +1 -0
- package/dist/processor/repos/sms.repo.d.ts +39 -0
- package/dist/processor/repos/sms.repo.js +111 -0
- package/dist/processor/repos/sms.repo.js.map +1 -0
- package/dist/processor/services/fallback.service.d.ts +6 -0
- package/dist/processor/services/fallback.service.js +59 -0
- package/dist/processor/services/fallback.service.js.map +1 -0
- package/dist/processor/services/messagebrokers/aws-sqs.service.d.ts +15 -0
- package/dist/processor/services/messagebrokers/aws-sqs.service.js +77 -0
- package/dist/processor/services/messagebrokers/aws-sqs.service.js.map +1 -0
- package/dist/processor/services/messagebrokers/google-pubsub.service.d.ts +16 -0
- package/dist/processor/services/messagebrokers/google-pubsub.service.js +34 -0
- package/dist/processor/services/messagebrokers/google-pubsub.service.js.map +1 -0
- package/dist/processor/services/messagebrokers/index.d.ts +3 -0
- package/dist/processor/services/messagebrokers/index.js +26 -0
- package/dist/processor/services/messagebrokers/index.js.map +1 -0
- package/dist/processor/services/messagebrokers/kafka.service.d.ts +14 -0
- package/dist/processor/services/messagebrokers/kafka.service.js +45 -0
- package/dist/processor/services/messagebrokers/kafka.service.js.map +1 -0
- package/dist/processor/services/messagebrokers/messagebrokers.type.d.ts +6 -0
- package/dist/processor/services/messagebrokers/messagebrokers.type.js +3 -0
- package/dist/processor/services/messagebrokers/messagebrokers.type.js.map +1 -0
- package/dist/processor/services/messagebrokers/rabbitmq.service.d.ts +14 -0
- package/dist/processor/services/messagebrokers/rabbitmq.service.js +67 -0
- package/dist/processor/services/messagebrokers/rabbitmq.service.js.map +1 -0
- package/dist/processor/services/messagebrokers/redis.service.d.ts +16 -0
- package/dist/processor/services/messagebrokers/redis.service.js +34 -0
- package/dist/processor/services/messagebrokers/redis.service.js.map +1 -0
- package/dist/processor/services/processor.service.d.ts +189 -0
- package/dist/processor/services/processor.service.js +3078 -0
- package/dist/processor/services/processor.service.js.map +1 -0
- package/dist/processor/services/quota.service.d.ts +22 -0
- package/dist/processor/services/quota.service.js +54 -0
- package/dist/processor/services/quota.service.js.map +1 -0
- package/dist/processor/utils/mongo.util.d.ts +0 -0
- package/dist/processor/utils/mongo.util.js +152 -0
- package/dist/processor/utils/mongo.util.js.map +1 -0
- package/dist/processor/utils/postgres.util.d.ts +14 -0
- package/dist/processor/utils/postgres.util.js +83 -0
- package/dist/processor/utils/postgres.util.js.map +1 -0
- package/dist/processor/utils/processor.utils.d.ts +323 -0
- package/dist/processor/utils/processor.utils.js +906 -0
- package/dist/processor/utils/processor.utils.js.map +1 -0
- package/dist/processor/utils/storage.util.d.ts +8 -0
- package/dist/processor/utils/storage.util.js +83 -0
- package/dist/processor/utils/storage.util.js.map +1 -0
- package/dist/products/services/products.service.d.ts +225 -0
- package/dist/products/services/products.service.js +2762 -0
- package/dist/products/services/products.service.js.map +1 -0
- package/dist/products/utils/crypt.utils.d.ts +1 -0
- package/dist/products/utils/crypt.utils.js +17 -0
- package/dist/products/utils/crypt.utils.js.map +1 -0
- package/dist/products/utils/functions.utils.d.ts +12 -0
- package/dist/products/utils/functions.utils.js +283 -0
- package/dist/products/utils/functions.utils.js.map +1 -0
- package/dist/products/utils/objects.utils.d.ts +13 -0
- package/dist/products/utils/objects.utils.js +89 -0
- package/dist/products/utils/objects.utils.js.map +1 -0
- package/dist/products/utils/string.utils.d.ts +12 -0
- package/dist/products/utils/string.utils.js +155 -0
- package/dist/products/utils/string.utils.js.map +1 -0
- package/dist/products/validators/index.d.ts +25 -0
- package/dist/products/validators/index.js +56 -0
- package/dist/products/validators/index.js.map +1 -0
- package/dist/products/validators/joi-validators/create.html.validator.d.ts +2 -0
- package/dist/products/validators/joi-validators/create.html.validator.js +55 -0
- package/dist/products/validators/joi-validators/create.html.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.product.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/create.product.validator.js +10 -0
- package/dist/products/validators/joi-validators/create.product.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.productApp.validator.d.ts +4 -0
- package/dist/products/validators/joi-validators/create.productApp.validator.js +61 -0
- package/dist/products/validators/joi-validators/create.productApp.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.productCache.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/create.productCache.validator.js +46 -0
- package/dist/products/validators/joi-validators/create.productCache.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.productDatabase.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/create.productDatabase.validator.js +72 -0
- package/dist/products/validators/joi-validators/create.productDatabase.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.productDatabaseAction.validator.d.ts +7 -0
- package/dist/products/validators/joi-validators/create.productDatabaseAction.validator.js +187 -0
- package/dist/products/validators/joi-validators/create.productDatabaseAction.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.productDatabaseMigration.validator.d.ts +4 -0
- package/dist/products/validators/joi-validators/create.productDatabaseMigration.validator.js +63 -0
- package/dist/products/validators/joi-validators/create.productDatabaseMigration.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.productEnv.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/create.productEnv.validator.js +44 -0
- package/dist/products/validators/joi-validators/create.productEnv.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.productFallback.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/create.productFallback.validator.js +58 -0
- package/dist/products/validators/joi-validators/create.productFallback.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.productFeature.validator.d.ts +12 -0
- package/dist/products/validators/joi-validators/create.productFeature.validator.js +124 -0
- package/dist/products/validators/joi-validators/create.productFeature.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.productFunction.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/create.productFunction.validator.js +57 -0
- package/dist/products/validators/joi-validators/create.productFunction.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.productJob.validator.d.ts +12 -0
- package/dist/products/validators/joi-validators/create.productJob.validator.js +60 -0
- package/dist/products/validators/joi-validators/create.productJob.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.productMessageBrokerTopic.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/create.productMessageBrokerTopic.validator.js +51 -0
- package/dist/products/validators/joi-validators/create.productMessageBrokerTopic.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.productMessageBrokers.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/create.productMessageBrokers.validator.js +137 -0
- package/dist/products/validators/joi-validators/create.productMessageBrokers.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.productNotification.validator.d.ts +4 -0
- package/dist/products/validators/joi-validators/create.productNotification.validator.js +142 -0
- package/dist/products/validators/joi-validators/create.productNotification.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.productNotificationMessage.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/create.productNotificationMessage.validator.js +57 -0
- package/dist/products/validators/joi-validators/create.productNotificationMessage.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.productNotifications.validator.d.ts +0 -0
- package/dist/products/validators/joi-validators/create.productNotifications.validator.js +1 -0
- package/dist/products/validators/joi-validators/create.productNotifications.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.productQuota.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/create.productQuota.validator.js +59 -0
- package/dist/products/validators/joi-validators/create.productQuota.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.productStorage.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/create.productStorage.validator.js +99 -0
- package/dist/products/validators/joi-validators/create.productStorage.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.products.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/create.products.validator.js +43 -0
- package/dist/products/validators/joi-validators/create.products.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/create.requestAction.validator.d.ts +2 -0
- package/dist/products/validators/joi-validators/create.requestAction.validator.js +45 -0
- package/dist/products/validators/joi-validators/create.requestAction.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/register.productWebhooks.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/register.productWebhooks.validator.js +48 -0
- package/dist/products/validators/joi-validators/register.productWebhooks.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/update.dataValue.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/update.dataValue.validator.js +101 -0
- package/dist/products/validators/joi-validators/update.dataValue.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/update.productApp.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/update.productApp.validator.js +42 -0
- package/dist/products/validators/joi-validators/update.productApp.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/update.productCache.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/update.productCache.validator.js +45 -0
- package/dist/products/validators/joi-validators/update.productCache.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/update.productDatabase.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/update.productDatabase.validator.js +71 -0
- package/dist/products/validators/joi-validators/update.productDatabase.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/update.productDatabaseAction.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/update.productDatabaseAction.validator.js +79 -0
- package/dist/products/validators/joi-validators/update.productDatabaseAction.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/update.productDatabaseMigration.validator.d.ts +4 -0
- package/dist/products/validators/joi-validators/update.productDatabaseMigration.validator.js +64 -0
- package/dist/products/validators/joi-validators/update.productDatabaseMigration.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/update.productEnv.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/update.productEnv.validator.js +43 -0
- package/dist/products/validators/joi-validators/update.productEnv.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/update.productFallback.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/update.productFallback.validator.js +55 -0
- package/dist/products/validators/joi-validators/update.productFallback.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/update.productFeature.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/update.productFeature.validator.js +51 -0
- package/dist/products/validators/joi-validators/update.productFeature.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/update.productFunction.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/update.productFunction.validator.js +41 -0
- package/dist/products/validators/joi-validators/update.productFunction.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/update.productJob.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/update.productJob.validator.js +50 -0
- package/dist/products/validators/joi-validators/update.productJob.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/update.productMessageBrokerTopic.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/update.productMessageBrokerTopic.validator.js +52 -0
- package/dist/products/validators/joi-validators/update.productMessageBrokerTopic.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/update.productNotification.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/update.productNotification.validator.js +47 -0
- package/dist/products/validators/joi-validators/update.productNotification.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/update.productNotificationMessage.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/update.productNotificationMessage.validator.js +57 -0
- package/dist/products/validators/joi-validators/update.productNotificationMessage.validator.js.map +1 -0
- package/dist/products/validators/joi-validators/update.productQuota.validator.d.ts +3 -0
- package/dist/products/validators/joi-validators/update.productQuota.validator.js +59 -0
- package/dist/products/validators/joi-validators/update.productQuota.validator.js.map +1 -0
- package/dist/test/test.appBuilder.d.ts +1 -0
- package/dist/test/test.appBuilder.js +16 -0
- package/dist/test/test.appBuilder.js.map +1 -0
- package/dist/test/test.import.d.ts +1 -0
- package/dist/test/test.import.js +1460 -0
- package/dist/test/test.import.js.map +1 -0
- package/dist/test/test.imports.d.ts +1 -0
- package/dist/test/test.imports.js +62 -0
- package/dist/test/test.imports.js.map +1 -0
- package/dist/test/test.logs.d.ts +1 -0
- package/dist/test/test.logs.js +19 -0
- package/dist/test/test.logs.js.map +1 -0
- package/dist/test/test.processor.d.ts +1 -0
- package/dist/test/test.processor.js +123 -0
- package/dist/test/test.processor.js.map +1 -0
- package/dist/test/test.productBuilder.d.ts +1 -0
- package/dist/test/test.productBuilder.js +661 -0
- package/dist/test/test.productBuilder.js.map +1 -0
- package/dist/test.appBuilder.d.ts +1 -0
- package/dist/test.appBuilder.js +14 -0
- package/dist/test.appBuilder.js.map +1 -0
- package/dist/test.import.d.ts +0 -0
- package/dist/test.import.js +24 -0
- package/dist/test.import.js.map +1 -0
- package/dist/test.imports.d.ts +1 -0
- package/dist/test.imports.js +28 -0
- package/dist/test.imports.js.map +1 -0
- package/dist/test.integrationBuilder.d.ts +1 -0
- package/dist/test.integrationBuilder.js +276 -0
- package/dist/test.integrationBuilder.js.map +1 -0
- package/dist/test.processor.d.ts +1 -0
- package/dist/test.processor.js +23 -0
- package/dist/test.processor.js.map +1 -0
- package/dist/test.utils.d.ts +1 -0
- package/dist/test.utils.js +25 -0
- package/dist/test.utils.js.map +1 -0
- package/dist/types/actions.types.d.ts +0 -0
- package/dist/types/actions.types.js +1 -0
- package/dist/types/actions.types.js.map +1 -0
- package/dist/types/appBuilder.types.d.ts +293 -0
- package/dist/types/appBuilder.types.js +3 -0
- package/dist/types/appBuilder.types.js.map +1 -0
- package/dist/types/database.types.d.ts +9 -0
- package/dist/types/database.types.js +3 -0
- package/dist/types/database.types.js.map +1 -0
- package/dist/types/enums.d.ts +215 -0
- package/dist/types/enums.js +244 -0
- package/dist/types/enums.js.map +1 -0
- package/dist/types/index.d.ts +12 -0
- package/dist/types/index.js +29 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/index.types.d.ts +26 -0
- package/dist/types/index.types.js +10 -0
- package/dist/types/index.types.js.map +1 -0
- package/dist/types/inputs.types.d.ts +111 -0
- package/dist/types/inputs.types.js +43 -0
- package/dist/types/inputs.types.js.map +1 -0
- package/dist/types/integrationsBuilder.types.d.ts +276 -0
- package/dist/types/integrationsBuilder.types.js +51 -0
- package/dist/types/integrationsBuilder.types.js.map +1 -0
- package/dist/types/logs.types.d.ts +19 -0
- package/dist/types/logs.types.js +8 -0
- package/dist/types/logs.types.js.map +1 -0
- package/dist/types/processor.types.d.ts +270 -0
- package/dist/types/processor.types.js +11 -0
- package/dist/types/processor.types.js.map +1 -0
- package/dist/types/productsBuilder.types.d.ts +560 -0
- package/dist/types/productsBuilder.types.js +89 -0
- package/dist/types/productsBuilder.types.js.map +1 -0
- package/dist/types/requests.types.d.ts +6 -0
- package/dist/types/requests.types.js +3 -0
- package/dist/types/requests.types.js.map +1 -0
- package/dist/types/workspaces.types.d.ts +28 -0
- package/dist/types/workspaces.types.js +4 -0
- package/dist/types/workspaces.types.js.map +1 -0
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/index.js +79 -0
- package/dist/utils/index.js.map +1 -0
- package/package.json +63 -0
|
@@ -0,0 +1,906 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.generateMockData = exports.getMigrationsToRun = exports.validateFeatureJSONInput = exports.updateUrlsInObject = exports.extractAxiosErrorDetails = exports.validateStringsInObject = exports.generateIndexes = exports.cleanBlob = exports.structuredClone = exports.compareValues = exports.generateDatabaseQuery = exports.transformToJson = exports.mailerClient = exports.replacePlaceholderString = exports.removeWrappingQuotes = exports.isValidSqsUrl = exports.calculateExpiry = exports.extractNumberFromArrayString = exports.decrypt = exports.encrypt = exports.generateObjectId = exports.generateAxiosConfig = void 0;
|
|
40
|
+
exports.parameterizeResource = parameterizeResource;
|
|
41
|
+
exports.validateNotification = validateNotification;
|
|
42
|
+
exports.generateNotificationTemplate = generateNotificationTemplate;
|
|
43
|
+
exports.convertStringToObject = convertStringToObject;
|
|
44
|
+
exports.generateSqlQuery = generateSqlQuery;
|
|
45
|
+
exports.anonymizeObject = anonymizeObject;
|
|
46
|
+
exports.anonymizeValue = anonymizeValue;
|
|
47
|
+
//import * as crypto from 'crypto';
|
|
48
|
+
const CryptoJS = __importStar(require("crypto-js"));
|
|
49
|
+
const enums_1 = require("../../types/enums");
|
|
50
|
+
const bson_objectid_1 = __importDefault(require("bson-objectid"));
|
|
51
|
+
const enums_2 = require("../../types/enums");
|
|
52
|
+
const string_utils_1 = require("../../products/utils/string.utils");
|
|
53
|
+
const inputs_service_1 = __importDefault(require("../../inputs/inputs.service"));
|
|
54
|
+
const types_1 = require("../../types");
|
|
55
|
+
const crypto_1 = require("crypto");
|
|
56
|
+
async function loadTransport() {
|
|
57
|
+
if (typeof window === 'undefined') {
|
|
58
|
+
const { createTransport } = await Promise.resolve().then(() => __importStar(require('nodemailer')));
|
|
59
|
+
return createTransport;
|
|
60
|
+
}
|
|
61
|
+
return null;
|
|
62
|
+
}
|
|
63
|
+
const generateAxiosConfig = () => {
|
|
64
|
+
return {
|
|
65
|
+
headers: {
|
|
66
|
+
Accept: enums_2.DataFormats.JSON,
|
|
67
|
+
'Content-Type': enums_2.DataFormats.JSON,
|
|
68
|
+
},
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
exports.generateAxiosConfig = generateAxiosConfig;
|
|
72
|
+
const generateObjectId = () => {
|
|
73
|
+
return new bson_objectid_1.default().toHexString();
|
|
74
|
+
};
|
|
75
|
+
exports.generateObjectId = generateObjectId;
|
|
76
|
+
// Encrypt function using CryptoJS
|
|
77
|
+
const encrypt = (text, key) => {
|
|
78
|
+
const iv = CryptoJS.lib.WordArray.random(16); // Generate random IV
|
|
79
|
+
// Hash the key with SHA-256
|
|
80
|
+
const hashedKey = CryptoJS.SHA256(key);
|
|
81
|
+
// Encrypt the text using AES with the hashed key and IV
|
|
82
|
+
const encrypted = CryptoJS.AES.encrypt(text, hashedKey, { iv });
|
|
83
|
+
// Return IV and encrypted data as hex strings, separated by ':'
|
|
84
|
+
return iv.toString(CryptoJS.enc.Hex) + ':' + encrypted.toString();
|
|
85
|
+
};
|
|
86
|
+
exports.encrypt = encrypt;
|
|
87
|
+
// Decrypt function using CryptoJS
|
|
88
|
+
const decrypt = (text, key) => {
|
|
89
|
+
const [ivHex, encryptedText] = text.split(':'); // Separate IV and encrypted data
|
|
90
|
+
// Parse IV from hex format
|
|
91
|
+
const iv = CryptoJS.enc.Hex.parse(ivHex);
|
|
92
|
+
// Hash the key with SHA-256
|
|
93
|
+
const hashedKey = CryptoJS.SHA256(key);
|
|
94
|
+
// Decrypt the encrypted text using AES with the hashed key and IV
|
|
95
|
+
const decrypted = CryptoJS.AES.decrypt(encryptedText, hashedKey, { iv });
|
|
96
|
+
return decrypted.toString(CryptoJS.enc.Utf8); // Convert decrypted data to UTF-8 string
|
|
97
|
+
};
|
|
98
|
+
exports.decrypt = decrypt;
|
|
99
|
+
const extractNumberFromArrayString = (str) => {
|
|
100
|
+
const regex = /^\[(\d+)\]$/;
|
|
101
|
+
const match = str.match(regex);
|
|
102
|
+
if (match) {
|
|
103
|
+
return parseInt(match[1]);
|
|
104
|
+
}
|
|
105
|
+
else {
|
|
106
|
+
return null;
|
|
107
|
+
}
|
|
108
|
+
};
|
|
109
|
+
exports.extractNumberFromArrayString = extractNumberFromArrayString;
|
|
110
|
+
const calculateExpiry = (expiry, period) => {
|
|
111
|
+
const now = new Date();
|
|
112
|
+
if (expiry === null) {
|
|
113
|
+
now.setFullYear(now.getFullYear() + 100);
|
|
114
|
+
return now.getTime();
|
|
115
|
+
}
|
|
116
|
+
switch (period) {
|
|
117
|
+
case enums_1.TokenPeriods.SECONDS:
|
|
118
|
+
return now.getTime() + expiry * 1000;
|
|
119
|
+
case enums_1.TokenPeriods.MINUTES:
|
|
120
|
+
return now.getTime() + expiry * 60 * 1000;
|
|
121
|
+
case enums_1.TokenPeriods.HOURS:
|
|
122
|
+
return now.getTime() + expiry * 60 * 60 * 1000;
|
|
123
|
+
case enums_1.TokenPeriods.DAYS:
|
|
124
|
+
return now.getTime() + expiry * 24 * 60 * 60 * 1000;
|
|
125
|
+
case enums_1.TokenPeriods.WEEKS:
|
|
126
|
+
return now.getTime() + expiry * 7 * 24 * 60 * 60 * 1000;
|
|
127
|
+
case enums_1.TokenPeriods.MONTHS:
|
|
128
|
+
now.setMonth(now.getMonth() + expiry);
|
|
129
|
+
return now.getTime();
|
|
130
|
+
case enums_1.TokenPeriods.YEARS:
|
|
131
|
+
now.setFullYear(now.getFullYear() + expiry);
|
|
132
|
+
return now.getTime();
|
|
133
|
+
default:
|
|
134
|
+
throw new Error('Invalid token period');
|
|
135
|
+
}
|
|
136
|
+
};
|
|
137
|
+
exports.calculateExpiry = calculateExpiry;
|
|
138
|
+
function parameterizeResource(resource, key, datapoint) {
|
|
139
|
+
return resource.replace(`:${key}`, datapoint);
|
|
140
|
+
}
|
|
141
|
+
function validateNotification({ push_notification }, payload) {
|
|
142
|
+
const requiredFields = {
|
|
143
|
+
title: (0, string_utils_1.extractPlaceholders)(push_notification.title).map((field) => field.key),
|
|
144
|
+
body: (0, string_utils_1.extractPlaceholders)(push_notification.body).map((field) => field.key),
|
|
145
|
+
data: push_notification.data
|
|
146
|
+
? (0, string_utils_1.extractPlaceholders)(JSON.stringify(push_notification.data)).map((field) => field.key)
|
|
147
|
+
: [],
|
|
148
|
+
};
|
|
149
|
+
const payloadFields = {
|
|
150
|
+
title: payload.title || {},
|
|
151
|
+
body: payload.body || {},
|
|
152
|
+
data: payload.data || {},
|
|
153
|
+
};
|
|
154
|
+
let missingFields = [];
|
|
155
|
+
const checkMissingKeys = (inputFields, payloadFields, fieldName) => {
|
|
156
|
+
inputFields.forEach((key) => {
|
|
157
|
+
if (!(key in payloadFields)) {
|
|
158
|
+
missingFields.push(`${fieldName}.${key}`);
|
|
159
|
+
}
|
|
160
|
+
});
|
|
161
|
+
};
|
|
162
|
+
checkMissingKeys(requiredFields.title, payloadFields.title, 'title');
|
|
163
|
+
checkMissingKeys(requiredFields.body, payloadFields.body, 'body');
|
|
164
|
+
checkMissingKeys(requiredFields.data, payloadFields.data, 'data');
|
|
165
|
+
if (missingFields.length > 0) {
|
|
166
|
+
throw new Error(`The following keys are required: ${missingFields.join(', ')}`);
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
const isValidSqsUrl = (url) => {
|
|
170
|
+
const sqsUrlRegex = types_1.sqsUrlPattern;
|
|
171
|
+
return sqsUrlRegex.test(url);
|
|
172
|
+
};
|
|
173
|
+
exports.isValidSqsUrl = isValidSqsUrl;
|
|
174
|
+
const removeWrappingQuotes = (str) => {
|
|
175
|
+
return str.replace(/^[“”"‘']|[“”"‘']$/g, '');
|
|
176
|
+
};
|
|
177
|
+
exports.removeWrappingQuotes = removeWrappingQuotes;
|
|
178
|
+
const replacePlaceholderString = (template, payloadFields) => {
|
|
179
|
+
return template.replace(/\{\{(\w+)\}\}/g, (_, key) => {
|
|
180
|
+
if (key in payloadFields) {
|
|
181
|
+
return payloadFields[key];
|
|
182
|
+
}
|
|
183
|
+
return `{{${key}}}`;
|
|
184
|
+
});
|
|
185
|
+
};
|
|
186
|
+
exports.replacePlaceholderString = replacePlaceholderString;
|
|
187
|
+
function generateNotificationTemplate({ push_notification }, payload) {
|
|
188
|
+
const title = (0, exports.replacePlaceholderString)(push_notification.title, payload.title || {});
|
|
189
|
+
const body = (0, exports.replacePlaceholderString)(push_notification.body, payload.body || {});
|
|
190
|
+
const data = push_notification.data
|
|
191
|
+
? (0, exports.replacePlaceholderString)(JSON.stringify(push_notification.data), payload.data || {})
|
|
192
|
+
: '{}';
|
|
193
|
+
return { title, body, data };
|
|
194
|
+
}
|
|
195
|
+
function convertStringToObject(str) {
|
|
196
|
+
const regex = /(\w+):\s*([^}]+)/g;
|
|
197
|
+
let match;
|
|
198
|
+
const obj = {};
|
|
199
|
+
while ((match = regex.exec(str)) !== null) {
|
|
200
|
+
obj[match[1]] = match[2];
|
|
201
|
+
}
|
|
202
|
+
return obj;
|
|
203
|
+
}
|
|
204
|
+
function replacePlaceholders(template, payload) {
|
|
205
|
+
const placeholderRegex = /{{\s*(\w+)\s*}}/g;
|
|
206
|
+
// Replace each placeholder with corresponding value from payload
|
|
207
|
+
return template.replace(placeholderRegex, (match, key) => {
|
|
208
|
+
if (key in payload) {
|
|
209
|
+
return payload[key];
|
|
210
|
+
}
|
|
211
|
+
else {
|
|
212
|
+
console.error(`Missing value for placeholder: {{${key}}}`);
|
|
213
|
+
return match; // Keep the placeholder if no value is provided
|
|
214
|
+
}
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
const mailerClient = async (auth) => {
|
|
218
|
+
/*const auth = {
|
|
219
|
+
host: process.env.SMTP_HOST,
|
|
220
|
+
port: Number(process.env.SMTP_PORT),
|
|
221
|
+
auth: {
|
|
222
|
+
user: process.env.SMTP_USER,
|
|
223
|
+
pass: process.env.SMTP_PASSWORD,
|
|
224
|
+
},
|
|
225
|
+
secure: false, // true for 465, false for other ports
|
|
226
|
+
tls: {
|
|
227
|
+
rejectUnauthorized: false, // do not fail on invalid certs
|
|
228
|
+
},
|
|
229
|
+
}*/
|
|
230
|
+
const createTransport = await loadTransport();
|
|
231
|
+
if (createTransport) {
|
|
232
|
+
const transport = createTransport(auth);
|
|
233
|
+
return transport;
|
|
234
|
+
}
|
|
235
|
+
else {
|
|
236
|
+
throw new Error(`Running in browser, mailer client not loaded.`);
|
|
237
|
+
}
|
|
238
|
+
};
|
|
239
|
+
exports.mailerClient = mailerClient;
|
|
240
|
+
// function transformToJson(template: string, payload: Record<string, any>) {
|
|
241
|
+
// try {
|
|
242
|
+
// // Regular expression to match {{key}} placeholders
|
|
243
|
+
// const regex = /{{\s*([^}]+)\s*}}|(?<!")(\$?\w+)(?=\s*:)/g;
|
|
244
|
+
// // Replace placeholders with values from the payload and wrap keys and values in double quotes
|
|
245
|
+
// const jsonString = template
|
|
246
|
+
// .replace(regex, (_, key) => {
|
|
247
|
+
// if (!(key in payload)) {
|
|
248
|
+
// throw new Error(`Missing value for placeholder: {{${key}}}`);
|
|
249
|
+
// }
|
|
250
|
+
// return JSON.stringify(payload[key]); // Ensures values are properly JSON stringified
|
|
251
|
+
// })
|
|
252
|
+
// .replace(/([a-zA-Z0-9_]+)\s*:/g, '"$1:'); // Wrap keys in double quotes
|
|
253
|
+
// console.log(jsonString);
|
|
254
|
+
// // Parse the resulting string into JSON
|
|
255
|
+
// const jsonObject = JSON.parse(jsonString);
|
|
256
|
+
// return jsonObject;
|
|
257
|
+
// } catch (error) {
|
|
258
|
+
// console.error('Error transforming string to JSON:', error);
|
|
259
|
+
// return null;
|
|
260
|
+
// }
|
|
261
|
+
// }
|
|
262
|
+
const transformToJson = (template, payload) => {
|
|
263
|
+
try {
|
|
264
|
+
// Regular expression to match placeholders {{key}} and optional $ at the start of the key
|
|
265
|
+
const combinedRegex = /{{\s*([^}]+)\s*}}|(?<!")(\$?\w+)(?=\s*:)/g;
|
|
266
|
+
let jsonString = template.replace(combinedRegex, (match, placeholder, keyOrMongoOperator) => {
|
|
267
|
+
if (placeholder) {
|
|
268
|
+
// If it's a placeholder (e.g., {{key}})
|
|
269
|
+
const key = placeholder.split(':')[0];
|
|
270
|
+
if (!(key in payload)) {
|
|
271
|
+
throw new Error(`Missing key: ${key}`);
|
|
272
|
+
}
|
|
273
|
+
return JSON.stringify(payload[key]); // Replace placeholder with the corresponding value from the payload
|
|
274
|
+
}
|
|
275
|
+
else if (keyOrMongoOperator) {
|
|
276
|
+
// If it's a key or MongoDB operator (e.g., $match or status)
|
|
277
|
+
return `${keyOrMongoOperator}`; // Just wrap it in double quotes
|
|
278
|
+
}
|
|
279
|
+
return match; // Default case: return match unchanged
|
|
280
|
+
});
|
|
281
|
+
jsonString = jsonString.replace(/:""/g, ':"');
|
|
282
|
+
jsonString = jsonString.replace(/"",/g, '",');
|
|
283
|
+
jsonString = jsonString.replace(/""}/g, '"}');
|
|
284
|
+
//console.log(jsonString);
|
|
285
|
+
// Parse the resulting string into JSON
|
|
286
|
+
const jsonObject = JSON.parse(jsonString);
|
|
287
|
+
return jsonObject;
|
|
288
|
+
}
|
|
289
|
+
catch (error) {
|
|
290
|
+
console.error('Error transforming string to JSON:', error);
|
|
291
|
+
return null;
|
|
292
|
+
}
|
|
293
|
+
};
|
|
294
|
+
exports.transformToJson = transformToJson;
|
|
295
|
+
const generateDatabaseQuery = (query, payload) => {
|
|
296
|
+
const json = (0, exports.transformToJson)(query, payload);
|
|
297
|
+
if (!json) {
|
|
298
|
+
throw new Error('Could not transform query to json');
|
|
299
|
+
}
|
|
300
|
+
return json;
|
|
301
|
+
};
|
|
302
|
+
exports.generateDatabaseQuery = generateDatabaseQuery;
|
|
303
|
+
function generateSqlQuery(template, data) {
|
|
304
|
+
// Extract all field placeholders and their positions
|
|
305
|
+
const placeholders = [];
|
|
306
|
+
const pattern = /{{\s*([^{}\s]+)\s*}}/g;
|
|
307
|
+
let match;
|
|
308
|
+
while ((match = pattern.exec(template)) !== null) {
|
|
309
|
+
placeholders.push({
|
|
310
|
+
field: match[1].split(':')[0],
|
|
311
|
+
position: match.index,
|
|
312
|
+
});
|
|
313
|
+
}
|
|
314
|
+
// Handle single record case
|
|
315
|
+
if (!Array.isArray(data)) {
|
|
316
|
+
const values = [];
|
|
317
|
+
let query = template;
|
|
318
|
+
placeholders
|
|
319
|
+
.sort((a, b) => b.position - a.position)
|
|
320
|
+
.forEach(({ field }, index) => {
|
|
321
|
+
if (data[field] === undefined) {
|
|
322
|
+
throw new Error(`Missing value for field: ${field}`);
|
|
323
|
+
}
|
|
324
|
+
const paramNumber = placeholders.length - index;
|
|
325
|
+
query = query.replace(new RegExp(`{{\\s*${field}\\s*}}`, 'g'), `$${paramNumber}`);
|
|
326
|
+
values.unshift(data[field]);
|
|
327
|
+
});
|
|
328
|
+
return { parameterizedQuery: query, values };
|
|
329
|
+
}
|
|
330
|
+
// Handle multiple records case
|
|
331
|
+
if (data.length === 0) {
|
|
332
|
+
throw new Error('Data array cannot be empty');
|
|
333
|
+
}
|
|
334
|
+
// Check if this is an INSERT (has VALUES clause) or UPDATE query
|
|
335
|
+
const isInsert = /INSERT\s+INTO/i.test(template);
|
|
336
|
+
const isUpdate = /UPDATE\s+\w+\s+SET/i.test(template);
|
|
337
|
+
if (!isInsert && !isUpdate) {
|
|
338
|
+
throw new Error('Multiple record operations only supported for INSERT and UPDATE queries');
|
|
339
|
+
}
|
|
340
|
+
// Handle bulk INSERT
|
|
341
|
+
if (isInsert) {
|
|
342
|
+
const valuesMatch = template.match(/VALUES\s*\((.*?)\)/i);
|
|
343
|
+
if (!valuesMatch) {
|
|
344
|
+
throw new Error('Cannot find VALUES clause in template for bulk insert');
|
|
345
|
+
}
|
|
346
|
+
const valueFields = Array.from(valuesMatch[1].matchAll(pattern)).map((match) => match[1]);
|
|
347
|
+
const values = data.map((record) => valueFields.map((field) => {
|
|
348
|
+
if (record[field] === undefined) {
|
|
349
|
+
throw new Error(`Missing value for field: ${field} in record`);
|
|
350
|
+
}
|
|
351
|
+
return record[field];
|
|
352
|
+
}));
|
|
353
|
+
const parameterStrings = values.map((_, rowIndex) => {
|
|
354
|
+
const params = valueFields.map((_, colIndex) => `$${rowIndex * valueFields.length + colIndex + 1}`);
|
|
355
|
+
return `(${params.join(', ')})`;
|
|
356
|
+
});
|
|
357
|
+
const query = template.replace(/VALUES\s*\(.*?\)/i, `VALUES ${parameterStrings.join(', ')}`);
|
|
358
|
+
return { parameterizedQuery: query, values: values.flat() };
|
|
359
|
+
}
|
|
360
|
+
// Handle bulk UPDATE
|
|
361
|
+
if (isUpdate) {
|
|
362
|
+
// Extract the table name
|
|
363
|
+
const tableMatch = template.match(/UPDATE\s+(\w+)/i);
|
|
364
|
+
if (!tableMatch) {
|
|
365
|
+
throw new Error('Cannot parse table name from UPDATE query');
|
|
366
|
+
}
|
|
367
|
+
const tableName = tableMatch[1];
|
|
368
|
+
// Extract SET fields and WHERE condition fields
|
|
369
|
+
const setFields = [];
|
|
370
|
+
const whereFields = [];
|
|
371
|
+
let inWhereClause = false;
|
|
372
|
+
placeholders.forEach(({ field }) => {
|
|
373
|
+
if (template.indexOf(`WHERE`) < template.indexOf(`{{${field}}}`)) {
|
|
374
|
+
inWhereClause = true;
|
|
375
|
+
}
|
|
376
|
+
if (inWhereClause) {
|
|
377
|
+
whereFields.push(field);
|
|
378
|
+
}
|
|
379
|
+
else {
|
|
380
|
+
setFields.push(field);
|
|
381
|
+
}
|
|
382
|
+
});
|
|
383
|
+
if (whereFields.length === 0) {
|
|
384
|
+
throw new Error('Bulk UPDATE requires a WHERE clause with at least one field');
|
|
385
|
+
}
|
|
386
|
+
// Generate the bulk update query
|
|
387
|
+
const allFields = [...setFields, ...whereFields];
|
|
388
|
+
const values = data.flatMap((record) => allFields.map((field) => {
|
|
389
|
+
if (record[field] === undefined) {
|
|
390
|
+
throw new Error(`Missing value for field: ${field} in record`);
|
|
391
|
+
}
|
|
392
|
+
return record[field];
|
|
393
|
+
}));
|
|
394
|
+
// Create the VALUES section for the CTE
|
|
395
|
+
const parameterStrings = data.map((_, rowIndex) => {
|
|
396
|
+
const params = allFields.map((_, colIndex) => `$${rowIndex * allFields.length + colIndex + 1}`);
|
|
397
|
+
return `(${params.join(', ')})`;
|
|
398
|
+
});
|
|
399
|
+
// Construct the new query using a CTE
|
|
400
|
+
const query = `
|
|
401
|
+
UPDATE ${tableName} AS t SET
|
|
402
|
+
${setFields.map((field) => `${field} = c.${field}`).join(',\n ')}
|
|
403
|
+
FROM (VALUES
|
|
404
|
+
${parameterStrings.join(',\n ')}
|
|
405
|
+
) AS c(${allFields.join(', ')})
|
|
406
|
+
WHERE ${whereFields.map((field) => `t.${field} = c.${field}`).join(' AND ')}
|
|
407
|
+
`.trim();
|
|
408
|
+
return { parameterizedQuery: query, values };
|
|
409
|
+
}
|
|
410
|
+
throw new Error('Unsupported query type');
|
|
411
|
+
}
|
|
412
|
+
const compareValues = (initiator, operator, value) => {
|
|
413
|
+
// Convert initiator and value to numbers if they are numeric strings
|
|
414
|
+
const isInitiatorNumeric = !isNaN(Number(initiator));
|
|
415
|
+
const isValueNumeric = !isNaN(Number(value));
|
|
416
|
+
const left = isInitiatorNumeric ? Number(initiator) : initiator;
|
|
417
|
+
const right = isValueNumeric ? Number(value) : value;
|
|
418
|
+
// Check if the operator is valid
|
|
419
|
+
const validOperators = ['>', '<', '>=', '<=', '==', '!=='];
|
|
420
|
+
if (!validOperators.includes(operator)) {
|
|
421
|
+
throw new Error(`Invalid operator: ${operator}`);
|
|
422
|
+
}
|
|
423
|
+
// Compare based on the operator
|
|
424
|
+
switch (operator) {
|
|
425
|
+
case '>':
|
|
426
|
+
if (typeof left === 'number' && typeof right === 'number') {
|
|
427
|
+
return left > right;
|
|
428
|
+
}
|
|
429
|
+
throw new Error(`Operator '>' is not valid for non-numeric values.`);
|
|
430
|
+
case '<':
|
|
431
|
+
if (typeof left === 'number' && typeof right === 'number') {
|
|
432
|
+
return left < right;
|
|
433
|
+
}
|
|
434
|
+
throw new Error(`Operator '<' is not valid for non-numeric values.`);
|
|
435
|
+
case '>=':
|
|
436
|
+
if (typeof left === 'number' && typeof right === 'number') {
|
|
437
|
+
return left >= right;
|
|
438
|
+
}
|
|
439
|
+
throw new Error(`Operator '>=' is not valid for non-numeric values.`);
|
|
440
|
+
case '<=':
|
|
441
|
+
if (typeof left === 'number' && typeof right === 'number') {
|
|
442
|
+
return left <= right;
|
|
443
|
+
}
|
|
444
|
+
throw new Error(`Operator '<=' is not valid for non-numeric values.`);
|
|
445
|
+
case '==':
|
|
446
|
+
return left == right; // Equality check (loose comparison)
|
|
447
|
+
case '!==':
|
|
448
|
+
return left !== right; // Inequality check
|
|
449
|
+
default:
|
|
450
|
+
throw new Error(`Unhandled operator: ${operator}`);
|
|
451
|
+
}
|
|
452
|
+
};
|
|
453
|
+
exports.compareValues = compareValues;
|
|
454
|
+
const structuredClone = (data) => {
|
|
455
|
+
return JSON.parse(JSON.stringify(data));
|
|
456
|
+
};
|
|
457
|
+
exports.structuredClone = structuredClone;
|
|
458
|
+
const cleanBlob = (data) => {
|
|
459
|
+
var _a;
|
|
460
|
+
if ((_a = data.input) === null || _a === void 0 ? void 0 : _a.blob) {
|
|
461
|
+
data.input.blob = data.input.blob.slice(0, 100) + '...';
|
|
462
|
+
}
|
|
463
|
+
return data;
|
|
464
|
+
};
|
|
465
|
+
exports.cleanBlob = cleanBlob;
|
|
466
|
+
const generateIndexes = (operator, //">" | "<" | ">=" | "<=" | "==" | "!==",
|
|
467
|
+
iter, init, value) => {
|
|
468
|
+
const indexes = [];
|
|
469
|
+
let i = init;
|
|
470
|
+
// Define a function to dynamically evaluate the condition
|
|
471
|
+
const condition = (current) => {
|
|
472
|
+
switch (operator) {
|
|
473
|
+
case '>':
|
|
474
|
+
return current > value;
|
|
475
|
+
case '<':
|
|
476
|
+
return current < value;
|
|
477
|
+
case '>=':
|
|
478
|
+
return current >= value;
|
|
479
|
+
case '<=':
|
|
480
|
+
return current <= value;
|
|
481
|
+
case '==':
|
|
482
|
+
return current === value;
|
|
483
|
+
case '!==':
|
|
484
|
+
return current !== value;
|
|
485
|
+
default:
|
|
486
|
+
throw new Error(`Invalid operator: ${operator}`);
|
|
487
|
+
}
|
|
488
|
+
};
|
|
489
|
+
// Generate indexes
|
|
490
|
+
while (condition(i)) {
|
|
491
|
+
indexes.push(i);
|
|
492
|
+
i += iter; // Increment by the iterator value
|
|
493
|
+
}
|
|
494
|
+
return indexes;
|
|
495
|
+
};
|
|
496
|
+
exports.generateIndexes = generateIndexes;
|
|
497
|
+
const validateStringsInObject = (obj) => {
|
|
498
|
+
let isValid = true;
|
|
499
|
+
const invalidPrefixes = ['$Input{', '$Sequence{', '$Size{', '$Length{'];
|
|
500
|
+
const validate = (value) => {
|
|
501
|
+
// Check if value is a string and does not start with any invalid prefix
|
|
502
|
+
if (typeof value === 'string') {
|
|
503
|
+
for (const prefix of invalidPrefixes) {
|
|
504
|
+
if (value.startsWith(prefix)) {
|
|
505
|
+
return false;
|
|
506
|
+
}
|
|
507
|
+
}
|
|
508
|
+
}
|
|
509
|
+
return true;
|
|
510
|
+
};
|
|
511
|
+
const recurse = (item) => {
|
|
512
|
+
if (!isValid)
|
|
513
|
+
return; // Stop processing if already invalid
|
|
514
|
+
if (Array.isArray(item)) {
|
|
515
|
+
for (const element of item) {
|
|
516
|
+
recurse(element);
|
|
517
|
+
if (!isValid)
|
|
518
|
+
break;
|
|
519
|
+
}
|
|
520
|
+
}
|
|
521
|
+
else if (typeof item === 'object' && item !== null) {
|
|
522
|
+
for (const key in item) {
|
|
523
|
+
if (Object.prototype.hasOwnProperty.call(item, key)) {
|
|
524
|
+
recurse(item[key]);
|
|
525
|
+
if (!isValid)
|
|
526
|
+
break;
|
|
527
|
+
}
|
|
528
|
+
}
|
|
529
|
+
}
|
|
530
|
+
else {
|
|
531
|
+
// Validate primitive value
|
|
532
|
+
isValid = validate(item);
|
|
533
|
+
}
|
|
534
|
+
};
|
|
535
|
+
recurse(obj);
|
|
536
|
+
return isValid;
|
|
537
|
+
};
|
|
538
|
+
exports.validateStringsInObject = validateStringsInObject;
|
|
539
|
+
const extractAxiosErrorDetails = (error) => {
|
|
540
|
+
var _a;
|
|
541
|
+
if (error.isAxiosError) {
|
|
542
|
+
const { code, message, config, response, cause, errors } = error;
|
|
543
|
+
const extractedError = {
|
|
544
|
+
code: code || null,
|
|
545
|
+
message: message || null,
|
|
546
|
+
method: ((_a = config === null || config === void 0 ? void 0 : config.method) === null || _a === void 0 ? void 0 : _a.toUpperCase()) || null,
|
|
547
|
+
url: (config === null || config === void 0 ? void 0 : config.baseURL) + (config === null || config === void 0 ? void 0 : config.url) || null,
|
|
548
|
+
status: (response === null || response === void 0 ? void 0 : response.status) || null,
|
|
549
|
+
responseMessage: (response === null || response === void 0 ? void 0 : response.statusText) || null,
|
|
550
|
+
data: (response === null || response === void 0 ? void 0 : response.data) || null,
|
|
551
|
+
cause: cause || null,
|
|
552
|
+
nestedErrors: Array.isArray(errors)
|
|
553
|
+
? errors.map((err) => ({
|
|
554
|
+
message: err.message,
|
|
555
|
+
code: err.code,
|
|
556
|
+
address: err.address,
|
|
557
|
+
port: err.port,
|
|
558
|
+
syscall: err.syscall,
|
|
559
|
+
}))
|
|
560
|
+
: null,
|
|
561
|
+
};
|
|
562
|
+
//console.log('Extracted Axios Error:', extractedError);
|
|
563
|
+
return extractedError;
|
|
564
|
+
}
|
|
565
|
+
else {
|
|
566
|
+
console.error('Not an AxiosError:', error);
|
|
567
|
+
return { error: error.toString() };
|
|
568
|
+
}
|
|
569
|
+
};
|
|
570
|
+
exports.extractAxiosErrorDetails = extractAxiosErrorDetails;
|
|
571
|
+
const updateUrlsInObject = (obj, replacementValue) => {
|
|
572
|
+
let foundUrl = null;
|
|
573
|
+
// Helper function to check if a string is a valid URL
|
|
574
|
+
function isValidUrl(str) {
|
|
575
|
+
try {
|
|
576
|
+
new URL(str);
|
|
577
|
+
return true;
|
|
578
|
+
}
|
|
579
|
+
catch (_a) {
|
|
580
|
+
return false;
|
|
581
|
+
}
|
|
582
|
+
}
|
|
583
|
+
// Recursive function to traverse and update the object
|
|
584
|
+
const traverseAndUpdate = (currentObj) => {
|
|
585
|
+
if (Array.isArray(currentObj)) {
|
|
586
|
+
return currentObj.map((item) => traverseAndUpdate(item));
|
|
587
|
+
}
|
|
588
|
+
else if (typeof currentObj === 'object' && currentObj !== null) {
|
|
589
|
+
const result = {};
|
|
590
|
+
for (const [key, value] of Object.entries(currentObj)) {
|
|
591
|
+
result[key] = traverseAndUpdate(value);
|
|
592
|
+
}
|
|
593
|
+
return result;
|
|
594
|
+
}
|
|
595
|
+
else if (typeof currentObj === 'string' && isValidUrl(currentObj)) {
|
|
596
|
+
if (foundUrl !== null) {
|
|
597
|
+
throw new Error(`More than one URL found: ${foundUrl} and ${currentObj}`);
|
|
598
|
+
}
|
|
599
|
+
foundUrl = currentObj;
|
|
600
|
+
return replacementValue;
|
|
601
|
+
}
|
|
602
|
+
else {
|
|
603
|
+
return currentObj;
|
|
604
|
+
}
|
|
605
|
+
};
|
|
606
|
+
const updatedObj = traverseAndUpdate(obj);
|
|
607
|
+
if (!foundUrl) {
|
|
608
|
+
throw new Error('No URL found in the object.');
|
|
609
|
+
}
|
|
610
|
+
return { updatedObj, replacedUrl: foundUrl };
|
|
611
|
+
};
|
|
612
|
+
exports.updateUrlsInObject = updateUrlsInObject;
|
|
613
|
+
const validateFeatureJSONInput = (input, feature_input) => {
|
|
614
|
+
const input_keys = Object.keys(input);
|
|
615
|
+
const feature_keys = Object.keys(feature_input);
|
|
616
|
+
// validate input to flag keys that are not expected
|
|
617
|
+
for (let i = 0; i < input_keys.length; i++) {
|
|
618
|
+
const key = input_keys[i];
|
|
619
|
+
const value = feature_input[key];
|
|
620
|
+
if (!value) {
|
|
621
|
+
throw new Error(`{ ${key} : ${value}}, is not expected in the input `);
|
|
622
|
+
}
|
|
623
|
+
const validation_keys = ['type', 'minlength', 'maxlength'];
|
|
624
|
+
// handle nested objects
|
|
625
|
+
if (typeof value === 'object' &&
|
|
626
|
+
!Array.isArray(value) &&
|
|
627
|
+
!Object.keys(value).every((value) => validation_keys.includes(value))) {
|
|
628
|
+
// TODO: handle arrays
|
|
629
|
+
(0, exports.validateFeatureJSONInput)(input[key], value);
|
|
630
|
+
}
|
|
631
|
+
// TODO: validate arrays later on
|
|
632
|
+
if (typeof value === 'object' && Array.isArray(value)) {
|
|
633
|
+
for (let i = 0; i < value.length; i++) {
|
|
634
|
+
(0, exports.validateFeatureJSONInput)(input[key], value[i]);
|
|
635
|
+
}
|
|
636
|
+
}
|
|
637
|
+
}
|
|
638
|
+
// validate input to flag missing keys
|
|
639
|
+
for (let i = 0; i < feature_keys.length; i++) {
|
|
640
|
+
const key = feature_keys[i];
|
|
641
|
+
const value = input[key];
|
|
642
|
+
if (!value) {
|
|
643
|
+
throw new Error(`{ ${key} : ${value}}, is expected in the input `);
|
|
644
|
+
}
|
|
645
|
+
const feature_value = feature_input[key];
|
|
646
|
+
const inputService = new inputs_service_1.default();
|
|
647
|
+
inputService.validateFeatureInputData({ key, value }, feature_value);
|
|
648
|
+
}
|
|
649
|
+
};
|
|
650
|
+
exports.validateFeatureJSONInput = validateFeatureJSONInput;
|
|
651
|
+
const getMigrationsToRun = (allMigrations, type, migrationTag, env) => {
|
|
652
|
+
const migrationsToRun = [];
|
|
653
|
+
const index = allMigrations.findIndex((value) => value.tag === migrationTag);
|
|
654
|
+
if (type === 'up') {
|
|
655
|
+
const migrations = allMigrations.splice(index - 1);
|
|
656
|
+
migrationsToRun.push(...migrations);
|
|
657
|
+
}
|
|
658
|
+
else {
|
|
659
|
+
const migrations = allMigrations.splice(0, index + 1);
|
|
660
|
+
migrationsToRun.push(...migrations);
|
|
661
|
+
}
|
|
662
|
+
const results = [];
|
|
663
|
+
for (const migration of migrationsToRun) {
|
|
664
|
+
const environment = migration.envs.find((envValue) => envValue.slug === env);
|
|
665
|
+
if (!environment) {
|
|
666
|
+
continue;
|
|
667
|
+
}
|
|
668
|
+
results.push(migration);
|
|
669
|
+
}
|
|
670
|
+
return migrationsToRun;
|
|
671
|
+
};
|
|
672
|
+
exports.getMigrationsToRun = getMigrationsToRun;
|
|
673
|
+
const inAYear = () => {
|
|
674
|
+
const oneYearLater = new Date();
|
|
675
|
+
oneYearLater.setFullYear(oneYearLater.getFullYear() + 1);
|
|
676
|
+
return oneYearLater.getTime();
|
|
677
|
+
};
|
|
678
|
+
const generateMockData = (resource, env, payload) => {
|
|
679
|
+
const testAccountNumbers = [
|
|
680
|
+
'0234567890',
|
|
681
|
+
'1087654321',
|
|
682
|
+
'2156789034',
|
|
683
|
+
'3054987612',
|
|
684
|
+
'4076543219',
|
|
685
|
+
'5067892345',
|
|
686
|
+
'6789012348',
|
|
687
|
+
];
|
|
688
|
+
const prodAccountNumbers = [
|
|
689
|
+
'8543946818',
|
|
690
|
+
'8563920810',
|
|
691
|
+
'8500946878',
|
|
692
|
+
'8387746800',
|
|
693
|
+
'8233676839',
|
|
694
|
+
'8263946910',
|
|
695
|
+
'8223977899',
|
|
696
|
+
];
|
|
697
|
+
const random = Math.floor(Math.random() * 7);
|
|
698
|
+
const InAYear = inAYear();
|
|
699
|
+
if (resource === 'v3/virtual-account-numbers') {
|
|
700
|
+
let bank_name = 'Mock Bank';
|
|
701
|
+
let flw_ref = `MockFLWRef-${InAYear}`;
|
|
702
|
+
let account_number = testAccountNumbers[random];
|
|
703
|
+
if (env === 'prd') {
|
|
704
|
+
bank_name = 'Wema Bank';
|
|
705
|
+
flw_ref = `FLWRef-${InAYear}`;
|
|
706
|
+
account_number = prodAccountNumbers[random];
|
|
707
|
+
}
|
|
708
|
+
return {
|
|
709
|
+
status: 'success',
|
|
710
|
+
message: 'Virtual account created',
|
|
711
|
+
data: {
|
|
712
|
+
response_code: '02',
|
|
713
|
+
response_message: 'Transaction in progress',
|
|
714
|
+
flw_ref,
|
|
715
|
+
order_ref: payload.tx_ref,
|
|
716
|
+
account_number,
|
|
717
|
+
account_status: 'active',
|
|
718
|
+
frequency: 1,
|
|
719
|
+
bank_name,
|
|
720
|
+
created_at: Date.now(),
|
|
721
|
+
expiry_date: InAYear,
|
|
722
|
+
note: payload.narration,
|
|
723
|
+
amount: payload.amount,
|
|
724
|
+
},
|
|
725
|
+
};
|
|
726
|
+
}
|
|
727
|
+
if (resource === 'v3/virtual-cards') {
|
|
728
|
+
const cardId = (0, crypto_1.randomUUID)();
|
|
729
|
+
const pan = generateCardPan(env);
|
|
730
|
+
return {
|
|
731
|
+
status: 'success',
|
|
732
|
+
message: 'Card created successfully',
|
|
733
|
+
data: {
|
|
734
|
+
id: cardId,
|
|
735
|
+
account_id: Math.floor(10000 + Math.random() * 90000),
|
|
736
|
+
amount: String(payload.amount),
|
|
737
|
+
currency: payload.currency,
|
|
738
|
+
card_hash: (0, crypto_1.randomUUID)(),
|
|
739
|
+
card_pan: pan,
|
|
740
|
+
masked_pan: maskCardPan(pan),
|
|
741
|
+
city: payload.billing_city,
|
|
742
|
+
state: payload.billing_state,
|
|
743
|
+
address_1: payload.billing_address,
|
|
744
|
+
address_2: '',
|
|
745
|
+
zip_code: payload.billing_postal_code,
|
|
746
|
+
cvv: Math.floor(100 + Math.random() * 900),
|
|
747
|
+
expiration: '2028-03',
|
|
748
|
+
send_to: '',
|
|
749
|
+
bin_check_name: '',
|
|
750
|
+
card_type: 'mastercard',
|
|
751
|
+
name_on_card: payload.billing_name,
|
|
752
|
+
created_at: new Date().toISOString(),
|
|
753
|
+
is_active: false,
|
|
754
|
+
callback_url: '',
|
|
755
|
+
},
|
|
756
|
+
};
|
|
757
|
+
}
|
|
758
|
+
if (resource === 'customer') {
|
|
759
|
+
return {
|
|
760
|
+
status: true,
|
|
761
|
+
message: 'Customer created',
|
|
762
|
+
data: {
|
|
763
|
+
// @ts-ignore
|
|
764
|
+
transactions: [],
|
|
765
|
+
// @ts-ignore
|
|
766
|
+
subscriptions: [],
|
|
767
|
+
// @ts-ignore
|
|
768
|
+
authorizations: [],
|
|
769
|
+
email: payload.email,
|
|
770
|
+
first_name: payload.first_name,
|
|
771
|
+
last_name: payload.last_name,
|
|
772
|
+
phone: payload.phone,
|
|
773
|
+
integration: Math.floor(100000 + Math.random() * 900000),
|
|
774
|
+
domain: 'test',
|
|
775
|
+
metadata: {},
|
|
776
|
+
customer_code: `CUS_${generateRandomString()}`,
|
|
777
|
+
risk_action: 'default',
|
|
778
|
+
id: Math.floor(10000000 + Math.random() * 90000000),
|
|
779
|
+
createdAt: new Date().toISOString(),
|
|
780
|
+
updatedAt: new Date().toISOString(),
|
|
781
|
+
identified: false,
|
|
782
|
+
// @ts-ignore
|
|
783
|
+
identifications: [],
|
|
784
|
+
},
|
|
785
|
+
};
|
|
786
|
+
}
|
|
787
|
+
if (resource === 'dedicated_account') {
|
|
788
|
+
let bank_name = 'Mock Bank';
|
|
789
|
+
let bank_slug = 'mock-bank';
|
|
790
|
+
let account_number = testAccountNumbers[random];
|
|
791
|
+
if (env === 'prd') {
|
|
792
|
+
bank_name = 'Paystack-Titan Bank';
|
|
793
|
+
bank_slug = 'paystack-titan-bank';
|
|
794
|
+
account_number = prodAccountNumbers[random];
|
|
795
|
+
}
|
|
796
|
+
return {
|
|
797
|
+
status: true,
|
|
798
|
+
message: 'NUBAN successfully created',
|
|
799
|
+
data: {
|
|
800
|
+
bank: {
|
|
801
|
+
name: bank_name,
|
|
802
|
+
id: Math.floor(Math.random() * 20),
|
|
803
|
+
slug: bank_slug,
|
|
804
|
+
},
|
|
805
|
+
account_number,
|
|
806
|
+
account_name: 'Oluwafikayo Sanni',
|
|
807
|
+
assigned: true,
|
|
808
|
+
currency: 'NGN',
|
|
809
|
+
metadata: null,
|
|
810
|
+
active: true,
|
|
811
|
+
id: Math.floor(Math.random() * 999),
|
|
812
|
+
created_at: '2019-12-12T12:39:04.000Z',
|
|
813
|
+
updated_at: '2020-01-06T15:51:24.000Z',
|
|
814
|
+
assignment: {
|
|
815
|
+
integration: Math.floor(100000 + Math.random() * 900000),
|
|
816
|
+
assignee_id: Math.floor(100000 + Math.random() * 900000),
|
|
817
|
+
assignee_type: 'Customer',
|
|
818
|
+
expired: false,
|
|
819
|
+
account_type: 'PAY-WITH-TRANSFER-RECURRING',
|
|
820
|
+
assigned_at: new Date(),
|
|
821
|
+
},
|
|
822
|
+
customer: {
|
|
823
|
+
id: Math.floor(100000 + Math.random() * 900000),
|
|
824
|
+
first_name: 'Oluwafikayo',
|
|
825
|
+
last_name: 'Sanni',
|
|
826
|
+
email: 'fikayo@ductape.app',
|
|
827
|
+
customer_code: 'CUS_kpb3qj71u1m0rw8',
|
|
828
|
+
phone: 2349053267565,
|
|
829
|
+
risk_action: 'default',
|
|
830
|
+
},
|
|
831
|
+
},
|
|
832
|
+
};
|
|
833
|
+
}
|
|
834
|
+
};
|
|
835
|
+
exports.generateMockData = generateMockData;
|
|
836
|
+
function generateRandomString(length = 15) {
|
|
837
|
+
const characters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
|
|
838
|
+
return Array.from({ length }, () => characters.charAt(Math.floor(Math.random() * characters.length))).join('');
|
|
839
|
+
}
|
|
840
|
+
function generateCardPan(env) {
|
|
841
|
+
const bin = '536613'; // Wema Bank BIN (first 6 digits for MasterCard)
|
|
842
|
+
const randomDigits = Array.from({ length: 9 }, () => Math.floor(Math.random() * 10)).join('');
|
|
843
|
+
const partialPan = bin + randomDigits;
|
|
844
|
+
// Calculate Luhn check digit
|
|
845
|
+
const checkDigit = getLuhnCheckDigit(partialPan);
|
|
846
|
+
return partialPan + checkDigit;
|
|
847
|
+
}
|
|
848
|
+
function getLuhnCheckDigit(number) {
|
|
849
|
+
const digits = number.split('').map(Number).reverse();
|
|
850
|
+
const sum = digits.reduce((acc, digit, index) => {
|
|
851
|
+
if (index % 2 === 0) {
|
|
852
|
+
digit *= 2;
|
|
853
|
+
if (digit > 9)
|
|
854
|
+
digit -= 9;
|
|
855
|
+
}
|
|
856
|
+
return acc + digit;
|
|
857
|
+
}, 0);
|
|
858
|
+
return (10 - (sum % 10)) % 10;
|
|
859
|
+
}
|
|
860
|
+
function maskCardPan(cardPan) {
|
|
861
|
+
return cardPan.replace(/^(\d{6})\d{6}(\d{4})$/, '$1******$2');
|
|
862
|
+
}
|
|
863
|
+
function anonymizeObject(obj) {
|
|
864
|
+
if (typeof obj !== 'object' || obj === null)
|
|
865
|
+
return obj;
|
|
866
|
+
if (Array.isArray(obj)) {
|
|
867
|
+
return obj.map((item) => anonymizeObject(item));
|
|
868
|
+
}
|
|
869
|
+
const anonymized = {};
|
|
870
|
+
for (const key in obj) {
|
|
871
|
+
if (!Object.prototype.hasOwnProperty.call(obj, key))
|
|
872
|
+
continue;
|
|
873
|
+
const value = obj[key];
|
|
874
|
+
// Exclude fields ending with "Id" (case insensitive)
|
|
875
|
+
if (key.match(/Id$/i)) {
|
|
876
|
+
anonymized[key] = value;
|
|
877
|
+
continue;
|
|
878
|
+
}
|
|
879
|
+
if (typeof value === 'string') {
|
|
880
|
+
anonymized[key] = anonymizeValue(value);
|
|
881
|
+
}
|
|
882
|
+
else if (typeof value === 'number') {
|
|
883
|
+
anonymized[key] = Number(anonymizeValue(value.toString())); // Convert back to number
|
|
884
|
+
}
|
|
885
|
+
else if (typeof value === 'boolean') {
|
|
886
|
+
anonymized[key] = false; // Replace booleans with `false`
|
|
887
|
+
}
|
|
888
|
+
else {
|
|
889
|
+
anonymized[key] = anonymizeObject(value); // Recursively handle objects/arrays
|
|
890
|
+
}
|
|
891
|
+
}
|
|
892
|
+
return anonymized;
|
|
893
|
+
}
|
|
894
|
+
function anonymizeValue(value) {
|
|
895
|
+
if (value.length <= 3)
|
|
896
|
+
return '***'; // Short values get fully masked
|
|
897
|
+
const chars = value.split('');
|
|
898
|
+
const maskCount = Math.floor((2 / 3) * chars.length);
|
|
899
|
+
const maskIndexes = new Set();
|
|
900
|
+
// Select random indexes to mask
|
|
901
|
+
while (maskIndexes.size < maskCount) {
|
|
902
|
+
maskIndexes.add(Math.floor(Math.random() * chars.length));
|
|
903
|
+
}
|
|
904
|
+
return chars.map((char, index) => (maskIndexes.has(index) ? '*' : char)).join('');
|
|
905
|
+
}
|
|
906
|
+
//# sourceMappingURL=processor.utils.js.map
|