@dynamatix/gb-schemas 2.0.67 → 2.3.4
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 +309 -0
- package/dist/applicants/applicant-additional-income.model.d.ts +192 -8
- package/dist/applicants/applicant-additional-income.model.d.ts.map +1 -1
- package/dist/applicants/applicant-additional-income.model.js +24 -3
- package/dist/applicants/applicant-additional-income.type.d.ts +40 -0
- package/dist/applicants/applicant-additional-income.type.d.ts.map +1 -0
- package/dist/applicants/applicant-commitment-creditCard.model.d.ts +90 -47
- package/dist/applicants/applicant-commitment-creditCard.model.d.ts.map +1 -1
- package/dist/applicants/applicant-commitment-creditCard.model.js +12 -6
- package/dist/applicants/applicant-commitment-loan.model.d.ts +81 -41
- package/dist/applicants/applicant-commitment-loan.model.d.ts.map +1 -1
- package/dist/applicants/applicant-commitment-loan.model.js +13 -8
- package/dist/applicants/applicant-commitment-mortgage.model.d.ts +78 -38
- package/dist/applicants/applicant-commitment-mortgage.model.d.ts.map +1 -1
- package/dist/applicants/applicant-commitment-mortgage.model.js +19 -19
- package/dist/applicants/applicant-commitment-residence.model.d.ts +768 -0
- package/dist/applicants/applicant-commitment-residence.model.d.ts.map +1 -0
- package/dist/applicants/applicant-commitment-residence.model.js +57 -0
- package/dist/applicants/applicant-commitment-secureLoan.model.d.ts +81 -47
- package/dist/applicants/applicant-commitment-secureLoan.model.d.ts.map +1 -1
- package/dist/applicants/applicant-commitment-secureLoan.model.js +14 -8
- package/dist/applicants/applicant-commitment-unsecuredLoan.model.d.ts +81 -47
- package/dist/applicants/applicant-commitment-unsecuredLoan.model.d.ts.map +1 -1
- package/dist/applicants/applicant-commitment-unsecuredLoan.model.js +14 -8
- package/dist/applicants/applicant-credit-data.model.d.ts +32 -4
- package/dist/applicants/applicant-credit-data.model.d.ts.map +1 -1
- package/dist/applicants/applicant-credit-profile.model.d.ts +29 -1
- package/dist/applicants/applicant-credit-profile.model.d.ts.map +1 -1
- package/dist/applicants/applicant-credit-report.model.d.ts +3784 -0
- package/dist/applicants/applicant-credit-report.model.d.ts.map +1 -0
- package/dist/applicants/applicant-credit-report.model.js +122 -0
- package/dist/applicants/applicant-credit-report.type.d.ts +145 -0
- package/dist/applicants/applicant-credit-report.type.d.ts.map +1 -0
- package/dist/applicants/applicant-credit-report.type.js +1 -0
- package/dist/applicants/applicant-direct-debit.model.d.ts +29 -4
- package/dist/applicants/applicant-direct-debit.model.d.ts.map +1 -1
- package/dist/applicants/applicant-direct-debit.model.js +0 -1
- package/dist/applicants/applicant-employment-income.model.d.ts +39 -8
- package/dist/applicants/applicant-employment-income.model.d.ts.map +1 -1
- package/dist/applicants/applicant-employment-income.model.js +13 -2
- package/dist/applicants/applicant-employment-income.type.d.ts +37 -0
- package/dist/applicants/applicant-employment-income.type.d.ts.map +1 -0
- package/dist/applicants/applicant-employment-income.type.js +1 -0
- package/dist/applicants/applicant-employment.model.d.ts +167 -703
- package/dist/applicants/applicant-employment.model.d.ts.map +1 -1
- package/dist/applicants/applicant-employment.model.js +25 -27
- package/dist/applicants/applicant-expenditure.model.d.ts +42 -8
- package/dist/applicants/applicant-expenditure.model.d.ts.map +1 -1
- package/dist/applicants/applicant-expenditure.model.js +86 -2
- package/dist/applicants/applicant-expenditure.type.d.ts +42 -0
- package/dist/applicants/applicant-expenditure.type.d.ts.map +1 -0
- package/dist/applicants/applicant-expenditure.type.js +1 -0
- package/dist/applicants/applicant-income-settings.model.d.ts +30 -2
- package/dist/applicants/applicant-income-settings.model.d.ts.map +1 -1
- package/dist/applicants/applicant-income-settings.model.js +11 -0
- package/dist/applicants/applicant-income-settings.type.d.ts +40 -0
- package/dist/applicants/applicant-income-settings.type.d.ts.map +1 -0
- package/dist/applicants/applicant-income-settings.type.js +1 -0
- package/dist/applicants/applicant-income-source.model.d.ts +26 -0
- package/dist/applicants/applicant-income-source.model.d.ts.map +1 -0
- package/dist/applicants/applicant-income-summary.model.d.ts +2202 -0
- package/dist/applicants/applicant-income-summary.model.d.ts.map +1 -0
- package/dist/applicants/applicant-income-summary.model.js +45 -0
- package/dist/applicants/applicant-income-summary.type.d.ts +60 -0
- package/dist/applicants/applicant-income-summary.type.d.ts.map +1 -0
- package/dist/applicants/applicant-income-summary.type.js +1 -0
- package/dist/applicants/applicant-income.model.d.ts +30 -2068
- package/dist/applicants/applicant-income.model.d.ts.map +1 -1
- package/dist/applicants/applicant-other-income.model.d.ts +85 -0
- package/dist/applicants/applicant-other-income.model.d.ts.map +1 -0
- package/dist/applicants/applicant-pension-income.model.d.ts +51 -302
- package/dist/applicants/applicant-pension-income.model.d.ts.map +1 -1
- package/dist/applicants/applicant-pension-income.model.js +14 -6
- package/dist/applicants/applicant-pension-income.type.d.ts +40 -0
- package/dist/applicants/applicant-pension-income.type.d.ts.map +1 -0
- package/dist/applicants/applicant-pension-income.type.js +1 -0
- package/dist/applicants/applicant-property-income.model.d.ts +102 -56
- package/dist/applicants/applicant-property-income.model.d.ts.map +1 -1
- package/dist/applicants/applicant-property-income.model.js +18 -7
- package/dist/applicants/applicant-risk-narrative.model.d.ts +32 -4
- package/dist/applicants/applicant-risk-narrative.model.d.ts.map +1 -1
- package/dist/applicants/applicant-self-employed-income.model.d.ts +39 -8
- package/dist/applicants/applicant-self-employed-income.model.d.ts.map +1 -1
- package/dist/applicants/applicant-self-employed-income.model.js +13 -2
- package/dist/applicants/applicant-self-employed-income.type.d.ts +37 -0
- package/dist/applicants/applicant-self-employed-income.type.d.ts.map +1 -0
- package/dist/applicants/applicant-self-employed-income.type.js +1 -0
- package/dist/applicants/applicant-self-employment.model.d.ts +269 -0
- package/dist/applicants/applicant-self-employment.model.d.ts.map +1 -0
- package/dist/applicants/applicant-self-employment.model.js +55 -0
- package/dist/applicants/applicant-sole-trader-income.model.d.ts +39 -8
- package/dist/applicants/applicant-sole-trader-income.model.d.ts.map +1 -1
- package/dist/applicants/applicant-sole-trader-income.model.js +11 -2
- package/dist/applicants/applicant-sole-trader-income.type.d.ts +37 -0
- package/dist/applicants/applicant-sole-trader-income.type.d.ts.map +1 -0
- package/dist/applicants/applicant-sole-trader-income.type.js +1 -0
- package/dist/applicants/applicant-uk-tax-credits.model.d.ts +66 -317
- package/dist/applicants/applicant-uk-tax-credits.model.d.ts.map +1 -1
- package/dist/applicants/applicant-uk-tax-credits.model.js +15 -7
- package/dist/applicants/applicant-uk-tax-credits.type.d.ts +39 -0
- package/dist/applicants/applicant-uk-tax-credits.type.d.ts.map +1 -0
- package/dist/applicants/applicant-uk-tax-credits.type.js +1 -0
- package/dist/applicants/applicant-welcome-call.model.d.ts +384 -0
- package/dist/applicants/applicant-welcome-call.model.d.ts.map +1 -0
- package/dist/applicants/applicant-welcome-call.model.js +709 -0
- package/dist/applicants/applicant-welcome-call.type.d.ts +66 -0
- package/dist/applicants/applicant-welcome-call.type.d.ts.map +1 -0
- package/dist/applicants/applicant-welcome-call.type.js +1 -0
- package/dist/applicants/applicant.model.d.ts +1522 -89
- package/dist/applicants/applicant.model.d.ts.map +1 -1
- package/dist/applicants/applicant.model.js +40 -9
- package/dist/applicants/applicant.type.d.ts +158 -0
- package/dist/applicants/applicant.type.d.ts.map +1 -0
- package/dist/applicants/applicant.type.js +1 -0
- package/dist/applicants/index.d.ts +24 -8
- package/dist/applicants/index.d.ts.map +1 -1
- package/dist/applicants/index.js +12 -8
- package/dist/applications/application-audit.model.d.ts +36 -8
- package/dist/applications/application-audit.model.d.ts.map +1 -1
- package/dist/applications/application-audit.model.js +3 -0
- package/dist/applications/application-checklist-Item.model.d.ts +36 -2
- package/dist/applications/application-checklist-Item.model.d.ts.map +1 -1
- package/dist/applications/application-checklist-Item.model.js +4 -0
- package/dist/applications/application-company-model.d.ts +123 -59
- package/dist/applications/application-company-model.d.ts.map +1 -1
- package/dist/applications/application-company-model.js +24 -10
- package/dist/applications/application-credit-profile.model.d.ts +29 -1
- package/dist/applications/application-credit-profile.model.d.ts.map +1 -1
- package/dist/applications/application-direct-debit.model.d.ts +178 -32
- package/dist/applications/application-direct-debit.model.d.ts.map +1 -1
- package/dist/applications/application-direct-debit.model.js +64 -1
- package/dist/applications/application-direct-debit.type.d.ts +63 -0
- package/dist/applications/application-direct-debit.type.d.ts.map +1 -0
- package/dist/applications/application-direct-debit.type.js +1 -0
- package/dist/applications/application-euc.model.d.ts +154 -0
- package/dist/applications/application-euc.model.d.ts.map +1 -0
- package/dist/applications/application-euc.model.js +28 -0
- package/dist/applications/application-fieldconfig.model.d.ts +30 -2
- package/dist/applications/application-fieldconfig.model.d.ts.map +1 -1
- package/dist/applications/application-fieldconfig.model.js +3 -0
- package/dist/applications/application-illustration-model.d.ts +30 -2
- package/dist/applications/application-illustration-model.d.ts.map +1 -1
- package/dist/applications/application-legal.model.d.ts +30 -2
- package/dist/applications/application-legal.model.d.ts.map +1 -1
- package/dist/applications/application-legal.model.js +3 -0
- package/dist/applications/application-mortgage.model.d.ts +201 -1097
- package/dist/applications/application-mortgage.model.d.ts.map +1 -1
- package/dist/applications/application-mortgage.model.js +24 -21
- package/dist/applications/application-mortgage.type.d.ts +76 -0
- package/dist/applications/application-mortgage.type.d.ts.map +1 -0
- package/dist/applications/application-mortgage.type.js +1 -0
- package/dist/applications/application-note.model.d.ts +66 -26
- package/dist/applications/application-note.model.d.ts.map +1 -1
- package/dist/applications/application-note.model.js +30 -3
- package/dist/applications/application-note.type.d.ts +55 -0
- package/dist/applications/application-note.type.d.ts.map +1 -0
- package/dist/applications/application-note.type.js +1 -0
- package/dist/applications/application-offer.model.d.ts +158 -10
- package/dist/applications/application-offer.model.d.ts.map +1 -1
- package/dist/applications/application-offer.model.js +49 -3
- package/dist/applications/application-offer.type.d.ts +54 -0
- package/dist/applications/application-offer.type.d.ts.map +1 -0
- package/dist/applications/application-offer.type.js +1 -0
- package/dist/applications/application-onboarding.model.d.ts +30 -2
- package/dist/applications/application-onboarding.model.d.ts.map +1 -1
- package/dist/applications/application-onboarding.model.js +3 -0
- package/dist/applications/application-product.model.d.ts +185 -15
- package/dist/applications/application-product.model.d.ts.map +1 -1
- package/dist/applications/application-product.model.js +34 -11
- package/dist/applications/application-product.type.d.ts +58 -0
- package/dist/applications/application-product.type.d.ts.map +1 -0
- package/dist/applications/application-product.type.js +1 -0
- package/dist/applications/application-productfeatures.model.d.ts +42 -8
- package/dist/applications/application-productfeatures.model.d.ts.map +1 -1
- package/dist/applications/application-productfeatures.model.js +5 -1
- package/dist/applications/application-productfeatures.type.d.ts +125 -0
- package/dist/applications/application-productfeatures.type.d.ts.map +1 -0
- package/dist/applications/application-productfeatures.type.js +1 -0
- package/dist/applications/application-rationale.model.d.ts +105 -195
- package/dist/applications/application-rationale.model.d.ts.map +1 -1
- package/dist/applications/application-rationale.model.js +17 -32
- package/dist/applications/application-rationale.type.d.ts +44 -0
- package/dist/applications/application-rationale.type.d.ts.map +1 -0
- package/dist/applications/application-rationale.type.js +1 -0
- package/dist/applications/application-risk-narrative.model.d.ts +72 -32
- package/dist/applications/application-risk-narrative.model.d.ts.map +1 -1
- package/dist/applications/application-risk-narrative.model.js +10 -5
- package/dist/applications/application-valuation-report.model.d.ts +1438 -0
- package/dist/applications/application-valuation-report.model.d.ts.map +1 -0
- package/dist/applications/application-valuation-report.model.js +799 -0
- package/dist/applications/application-valuation-report.type.d.ts +256 -0
- package/dist/applications/application-valuation-report.type.d.ts.map +1 -0
- package/dist/applications/application-valuation-report.type.js +1 -0
- package/dist/applications/application-valuation.model.d.ts +730 -19
- package/dist/applications/application-valuation.model.d.ts.map +1 -1
- package/dist/applications/application-valuation.model.js +34 -7
- package/dist/applications/application-valuation.type.d.ts +54 -0
- package/dist/applications/application-valuation.type.d.ts.map +1 -0
- package/dist/applications/application-valuation.type.js +1 -0
- package/dist/applications/application.model.d.ts +318 -116
- package/dist/applications/application.model.d.ts.map +1 -1
- package/dist/applications/application.model.js +120 -27
- package/dist/applications/applications-task.model.d.ts +300 -0
- package/dist/applications/applications-task.model.d.ts.map +1 -0
- package/dist/applications/applications-task.model.js +50 -0
- package/dist/applications/applications-task.type.d.ts +57 -0
- package/dist/applications/applications-task.type.d.ts.map +1 -0
- package/dist/applications/applications-task.type.js +1 -0
- package/dist/applications/broker.model.d.ts +54 -26
- package/dist/applications/broker.model.d.ts.map +1 -1
- package/dist/applications/broker.model.js +5 -2
- package/dist/applications/broker.type.d.ts +51 -0
- package/dist/applications/broker.type.d.ts.map +1 -0
- package/dist/applications/broker.type.js +1 -0
- package/dist/applications/index.d.ts +16 -2
- package/dist/applications/index.d.ts.map +1 -1
- package/dist/applications/index.js +5 -2
- package/dist/applications/productfeatures.model.d.ts +368 -0
- package/dist/applications/productfeatures.model.d.ts.map +1 -0
- package/dist/applications/solicitor.model.d.ts +43 -14
- package/dist/applications/solicitor.model.d.ts.map +1 -1
- package/dist/applications/solicitor.model.js +8 -1
- package/dist/applications/solicitor.type.d.ts +56 -0
- package/dist/applications/solicitor.type.d.ts.map +1 -0
- package/dist/applications/solicitor.type.js +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/product-catalogues/index.d.ts +3 -0
- package/dist/product-catalogues/index.d.ts.map +1 -1
- package/dist/product-catalogues/product-catalogue.model.d.ts +30 -2
- package/dist/product-catalogues/product-catalogue.model.d.ts.map +1 -1
- package/dist/product-catalogues/product-catalogue.model.js +4 -0
- package/dist/product-catalogues/product-catalogue.type.d.ts +15 -0
- package/dist/product-catalogues/product-catalogue.type.d.ts.map +1 -0
- package/dist/product-catalogues/product-catalogue.type.js +1 -0
- package/dist/product-catalogues/product-definitions.model.d.ts +30 -2
- package/dist/product-catalogues/product-definitions.model.d.ts.map +1 -1
- package/dist/product-catalogues/product-definitions.model.js +3 -0
- package/dist/product-catalogues/product-definitions.type.d.ts +53 -0
- package/dist/product-catalogues/product-definitions.type.d.ts.map +1 -0
- package/dist/product-catalogues/product-definitions.type.js +1 -0
- package/dist/product-catalogues/product-variant.model.d.ts +30 -2
- package/dist/product-catalogues/product-variant.model.d.ts.map +1 -1
- package/dist/product-catalogues/product-variant.model.js +4 -0
- package/dist/product-catalogues/product-variant.type.d.ts +38 -0
- package/dist/product-catalogues/product-variant.type.d.ts.map +1 -0
- package/dist/product-catalogues/product-variant.type.js +1 -0
- package/dist/properties/property.model.d.ts +102 -59
- package/dist/properties/property.model.d.ts.map +1 -1
- package/dist/properties/property.model.js +16 -8
- package/dist/properties/security.model.d.ts +48 -2
- package/dist/properties/security.model.d.ts.map +1 -1
- package/dist/properties/security.model.js +15 -3
- package/dist/shared/alert.model.d.ts +42 -14
- package/dist/shared/alert.model.d.ts.map +1 -1
- package/dist/shared/api-log.model.d.ts +124 -0
- package/dist/shared/api-log.model.d.ts.map +1 -0
- package/dist/shared/api-log.model.js +25 -0
- package/dist/shared/api-performance.model.d.ts +37 -0
- package/dist/shared/api-performance.model.d.ts.map +1 -0
- package/dist/shared/api-performance.model.js +22 -0
- package/dist/shared/api-performance.type.d.ts +178 -0
- package/dist/shared/api-performance.type.d.ts.map +1 -0
- package/dist/shared/api-performance.type.js +1 -0
- package/dist/shared/apprivo-sync-journey.model.d.ts +36 -8
- package/dist/shared/apprivo-sync-journey.model.d.ts.map +1 -1
- package/dist/shared/apprivo-sync-journey.model.js +2 -0
- package/dist/shared/checklist.model.d.ts +36 -8
- package/dist/shared/checklist.model.d.ts.map +1 -1
- package/dist/shared/checklist.model.js +5 -0
- package/dist/shared/index.d.ts +7 -1
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/index.js +5 -1
- package/dist/shared/job-run.model.d.ts +30 -2
- package/dist/shared/job-run.model.d.ts.map +1 -1
- package/dist/shared/job-setting.model.d.ts +36 -8
- package/dist/shared/job-setting.model.d.ts.map +1 -1
- package/dist/shared/lookup-group.model.d.ts +30 -2
- package/dist/shared/lookup-group.model.d.ts.map +1 -1
- package/dist/shared/lookup-group.model.js +6 -0
- package/dist/shared/lookup.model.d.ts +30 -2
- package/dist/shared/lookup.model.d.ts.map +1 -1
- package/dist/shared/lookup.model.js +7 -0
- package/dist/shared/schema-doc.model.d.ts +36 -8
- package/dist/shared/schema-doc.model.d.ts.map +1 -1
- package/dist/shared/system-parameter.model.d.ts +36 -8
- package/dist/shared/system-parameter.model.d.ts.map +1 -1
- package/dist/shared/task-document.model.d.ts +36 -8
- package/dist/shared/task-document.model.d.ts.map +1 -1
- package/dist/shared/task.model.d.ts +36 -8
- package/dist/shared/task.model.d.ts.map +1 -1
- package/dist/shared/webhook-event.model.d.ts +37 -0
- package/dist/shared/webhook-event.model.d.ts.map +1 -0
- package/dist/shared/webhook-event.model.js +57 -0
- package/dist/shared/webhook-event.type.d.ts +15 -0
- package/dist/shared/webhook-event.type.d.ts.map +1 -0
- package/dist/shared/webhook-event.type.js +1 -0
- package/dist/shared/workflow-trigger.model.d.ts +32 -0
- package/dist/shared/workflow-trigger.model.d.ts.map +1 -0
- package/dist/shared/workflow-trigger.model.js +49 -0
- package/dist/shared/workflow-trigger.type.d.ts +60 -0
- package/dist/shared/workflow-trigger.type.d.ts.map +1 -0
- package/dist/shared/workflow-trigger.type.js +1 -0
- package/dist/shared/workflow.init.d.ts +21 -0
- package/dist/shared/workflow.init.d.ts.map +1 -0
- package/dist/shared/workflow.init.js +42 -0
- package/dist/shared/workflow.logger.d.ts +18 -0
- package/dist/shared/workflow.logger.d.ts.map +1 -0
- package/dist/shared/workflow.logger.js +41 -0
- package/dist/shared/workflow.middleware.d.ts +108 -0
- package/dist/shared/workflow.middleware.d.ts.map +1 -0
- package/dist/shared/workflow.middleware.js +246 -0
- package/dist/shared/workflow.plugin.d.ts +46 -0
- package/dist/shared/workflow.plugin.d.ts.map +1 -0
- package/dist/shared/workflow.plugin.js +151 -0
- package/dist/shared/workflow.service.d.ts +42 -0
- package/dist/shared/workflow.service.d.ts.map +1 -0
- package/dist/shared/workflow.service.js +134 -0
- package/dist/types/base.types.d.ts +35 -0
- package/dist/types/base.types.d.ts.map +1 -0
- package/dist/types/base.types.js +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +1 -0
- package/dist/underwriter/underwriter.model.d.ts +30 -2
- package/dist/underwriter/underwriter.model.d.ts.map +1 -1
- package/dist/users/auth-log.model.d.ts +30 -2
- package/dist/users/auth-log.model.d.ts.map +1 -1
- package/dist/users/auth-log.model.js +3 -0
- package/dist/users/permission.model.d.ts +30 -2
- package/dist/users/permission.model.d.ts.map +1 -1
- package/dist/users/permission.model.js +2 -0
- package/dist/users/role-group.model.d.ts +30 -2
- package/dist/users/role-group.model.d.ts.map +1 -1
- package/dist/users/role-group.model.js +3 -0
- package/dist/users/role.model.d.ts +30 -2
- package/dist/users/role.model.d.ts.map +1 -1
- package/dist/users/role.model.js +3 -0
- package/dist/users/tasks.model.d.ts +30 -2
- package/dist/users/tasks.model.d.ts.map +1 -1
- package/dist/users/tasks.model.js +4 -1
- package/dist/users/user.model.d.ts +48 -14
- package/dist/users/user.model.d.ts.map +1 -1
- package/dist/users/user.model.js +13 -2
- package/dist/users/user.type.d.ts +55 -0
- package/dist/users/user.type.d.ts.map +1 -0
- package/dist/users/user.type.js +1 -0
- package/dist/value-objects/account-number.d.ts +42 -0
- package/dist/value-objects/account-number.d.ts.map +1 -0
- package/dist/value-objects/account-number.js +24 -0
- package/dist/value-objects/pound.d.ts +28 -0
- package/dist/value-objects/pound.d.ts.map +1 -1
- package/dist/value-objects/pound.js +33 -9
- package/dist/value-objects/sort-code.d.ts +27 -0
- package/dist/value-objects/sort-code.d.ts.map +1 -1
- package/dist/value-objects/sort-code.js +13 -4
- package/package.json +33 -29
- package/dist/applicants/applicant-income.model.js +0 -78
- package/dist/applications/application-document.model.js +0 -35
- package/dist/applications/document.model.js +0 -35
- package/dist/entities/applicants/applicant-credit-data.entity.d.ts +0 -19
- package/dist/entities/applicants/applicant-credit-data.entity.d.ts.map +0 -1
- package/dist/entities/applicants/applicant-credit-data.entity.js +0 -5
- package/dist/entities/applicants/applicant-credit-profile.entity.d.ts +0 -14
- package/dist/entities/applicants/applicant-credit-profile.entity.d.ts.map +0 -1
- package/dist/entities/applicants/applicant-credit-profile.entity.js +0 -5
- package/dist/entities/applicants/applicant-employment-income.entity.d.ts +0 -14
- package/dist/entities/applicants/applicant-employment-income.entity.d.ts.map +0 -1
- package/dist/entities/applicants/applicant-employment-income.entity.js +0 -5
- package/dist/entities/applicants/applicant-employment.entity.d.ts +0 -54
- package/dist/entities/applicants/applicant-employment.entity.d.ts.map +0 -1
- package/dist/entities/applicants/applicant-employment.entity.js +0 -5
- package/dist/entities/applicants/applicant-expenditure.entity.d.ts +0 -14
- package/dist/entities/applicants/applicant-expenditure.entity.d.ts.map +0 -1
- package/dist/entities/applicants/applicant-expenditure.entity.js +0 -5
- package/dist/entities/applicants/applicant-income-settings.entity.d.ts +0 -17
- package/dist/entities/applicants/applicant-income-settings.entity.d.ts.map +0 -1
- package/dist/entities/applicants/applicant-income-settings.entity.js +0 -5
- package/dist/entities/applicants/applicant-income.entity.d.ts +0 -77
- package/dist/entities/applicants/applicant-income.entity.d.ts.map +0 -1
- package/dist/entities/applicants/applicant-income.entity.js +0 -2
- package/dist/entities/applicants/applicant-share-holding.entity.d.ts +0 -18
- package/dist/entities/applicants/applicant-share-holding.entity.d.ts.map +0 -1
- package/dist/entities/applicants/applicant-share-holding.entity.js +0 -5
- package/dist/entities/applicants/applicant.entity.d.ts +0 -144
- package/dist/entities/applicants/applicant.entity.d.ts.map +0 -1
- package/dist/entities/applicants/applicant.entity.js +0 -48
- package/dist/entities/applicants/credit-card-commitment.entity.d.ts +0 -22
- package/dist/entities/applicants/credit-card-commitment.entity.d.ts.map +0 -1
- package/dist/entities/applicants/credit-card-commitment.entity.js +0 -9
- package/dist/entities/applicants/index.d.ts +0 -20
- package/dist/entities/applicants/index.d.ts.map +0 -1
- package/dist/entities/applicants/index.js +0 -18
- package/dist/entities/applicants/loan-commitment.entity.d.ts +0 -29
- package/dist/entities/applicants/loan-commitment.entity.d.ts.map +0 -1
- package/dist/entities/applicants/loan-commitment.entity.js +0 -15
- package/dist/entities/applicants/mortgage-commitment.entity.d.ts +0 -50
- package/dist/entities/applicants/mortgage-commitment.entity.d.ts.map +0 -1
- package/dist/entities/applicants/mortgage-commitment.entity.js +0 -27
- package/dist/entities/applicants/other-income.entity.d.ts +0 -41
- package/dist/entities/applicants/other-income.entity.d.ts.map +0 -1
- package/dist/entities/applicants/other-income.entity.js +0 -19
- package/dist/entities/applicants/property-income.entity.d.ts +0 -17
- package/dist/entities/applicants/property-income.entity.d.ts.map +0 -1
- package/dist/entities/applicants/property-income.entity.js +0 -5
- package/dist/entities/applicants/residence-commitment.entity.d.ts +0 -44
- package/dist/entities/applicants/residence-commitment.entity.d.ts.map +0 -1
- package/dist/entities/applicants/residence-commitment.entity.js +0 -19
- package/dist/entities/applicants/secure-loan-commitment.entity.d.ts +0 -29
- package/dist/entities/applicants/secure-loan-commitment.entity.d.ts.map +0 -1
- package/dist/entities/applicants/secure-loan-commitment.entity.js +0 -12
- package/dist/entities/applicants/unsecured-loan-commitment.entity.d.ts +0 -29
- package/dist/entities/applicants/unsecured-loan-commitment.entity.d.ts.map +0 -1
- package/dist/entities/applicants/unsecured-loan-commitment.entity.js +0 -12
- package/dist/entities/applications/application-audit.entity.d.ts +0 -18
- package/dist/entities/applications/application-audit.entity.d.ts.map +0 -1
- package/dist/entities/applications/application-audit.entity.js +0 -5
- package/dist/entities/applications/application-company.entity.d.ts +0 -60
- package/dist/entities/applications/application-company.entity.d.ts.map +0 -1
- package/dist/entities/applications/application-company.entity.js +0 -15
- package/dist/entities/applications/application-credit-profile.entity.d.ts +0 -11
- package/dist/entities/applications/application-credit-profile.entity.d.ts.map +0 -1
- package/dist/entities/applications/application-credit-profile.entity.js +0 -5
- package/dist/entities/applications/application-direct-debit.entity.d.ts +0 -24
- package/dist/entities/applications/application-direct-debit.entity.d.ts.map +0 -1
- package/dist/entities/applications/application-direct-debit.entity.js +0 -5
- package/dist/entities/applications/application-document.entity.d.ts +0 -28
- package/dist/entities/applications/application-document.entity.d.ts.map +0 -1
- package/dist/entities/applications/application-document.entity.js +0 -5
- package/dist/entities/applications/application-fieldconfig.entity.d.ts +0 -9
- package/dist/entities/applications/application-fieldconfig.entity.d.ts.map +0 -1
- package/dist/entities/applications/application-fieldconfig.entity.js +0 -5
- package/dist/entities/applications/application-illustration.entity.d.ts +0 -8
- package/dist/entities/applications/application-illustration.entity.d.ts.map +0 -1
- package/dist/entities/applications/application-illustration.entity.js +0 -5
- package/dist/entities/applications/application-legal.entity.d.ts +0 -9
- package/dist/entities/applications/application-legal.entity.d.ts.map +0 -1
- package/dist/entities/applications/application-legal.entity.js +0 -5
- package/dist/entities/applications/application-mortgage.entity.d.ts +0 -55
- package/dist/entities/applications/application-mortgage.entity.d.ts.map +0 -1
- package/dist/entities/applications/application-mortgage.entity.js +0 -27
- package/dist/entities/applications/application-note.entity.d.ts +0 -37
- package/dist/entities/applications/application-note.entity.d.ts.map +0 -1
- package/dist/entities/applications/application-note.entity.js +0 -5
- package/dist/entities/applications/application-offer.entity.d.ts +0 -8
- package/dist/entities/applications/application-offer.entity.d.ts.map +0 -1
- package/dist/entities/applications/application-offer.entity.js +0 -5
- package/dist/entities/applications/application-onboarding.entity.d.ts +0 -11
- package/dist/entities/applications/application-onboarding.entity.d.ts.map +0 -1
- package/dist/entities/applications/application-onboarding.entity.js +0 -5
- package/dist/entities/applications/application-product.entity.d.ts +0 -33
- package/dist/entities/applications/application-product.entity.d.ts.map +0 -1
- package/dist/entities/applications/application-product.entity.js +0 -5
- package/dist/entities/applications/application-rationale.entity.d.ts +0 -51
- package/dist/entities/applications/application-rationale.entity.d.ts.map +0 -1
- package/dist/entities/applications/application-rationale.entity.js +0 -5
- package/dist/entities/applications/application.entity.d.ts +0 -102
- package/dist/entities/applications/application.entity.d.ts.map +0 -1
- package/dist/entities/applications/application.entity.js +0 -66
- package/dist/entities/applications/broker.entity.d.ts +0 -23
- package/dist/entities/applications/broker.entity.d.ts.map +0 -1
- package/dist/entities/applications/broker.entity.js +0 -5
- package/dist/entities/applications/checklist-item.entity.d.ts +0 -47
- package/dist/entities/applications/checklist-item.entity.d.ts.map +0 -1
- package/dist/entities/applications/checklist-item.entity.js +0 -5
- package/dist/entities/applications/index.d.ts +0 -22
- package/dist/entities/applications/index.d.ts.map +0 -1
- package/dist/entities/applications/index.js +0 -20
- package/dist/entities/applications/product-features.entity.d.ts +0 -104
- package/dist/entities/applications/product-features.entity.d.ts.map +0 -1
- package/dist/entities/applications/product-features.entity.js +0 -20
- package/dist/entities/applications/solicitor.entity.d.ts +0 -33
- package/dist/entities/applications/solicitor.entity.d.ts.map +0 -1
- package/dist/entities/applications/solicitor.entity.js +0 -5
- package/dist/entities/index.d.ts +0 -10
- package/dist/entities/index.d.ts.map +0 -1
- package/dist/entities/index.js +0 -10
- package/dist/entities/prisma.d.ts +0 -3
- package/dist/entities/prisma.d.ts.map +0 -1
- package/dist/entities/prisma.js +0 -10
- package/dist/entities/product-catalogues/index.d.ts +0 -8
- package/dist/entities/product-catalogues/index.d.ts.map +0 -1
- package/dist/entities/product-catalogues/index.js +0 -6
- package/dist/entities/product-catalogues/product-catalogue.entity.d.ts +0 -22
- package/dist/entities/product-catalogues/product-catalogue.entity.d.ts.map +0 -1
- package/dist/entities/product-catalogues/product-catalogue.entity.js +0 -5
- package/dist/entities/product-catalogues/product-definition.entity.d.ts +0 -16
- package/dist/entities/product-catalogues/product-definition.entity.d.ts.map +0 -1
- package/dist/entities/product-catalogues/product-definition.entity.js +0 -5
- package/dist/entities/product-catalogues/product-variant.entity.d.ts +0 -14
- package/dist/entities/product-catalogues/product-variant.entity.d.ts.map +0 -1
- package/dist/entities/product-catalogues/product-variant.entity.js +0 -5
- package/dist/entities/product-catalogues/product.entity.d.ts +0 -11
- package/dist/entities/product-catalogues/product.entity.d.ts.map +0 -1
- package/dist/entities/product-catalogues/product.entity.js +0 -5
- package/dist/entities/product-catalogues/rule.entity.d.ts +0 -21
- package/dist/entities/product-catalogues/rule.entity.d.ts.map +0 -1
- package/dist/entities/product-catalogues/rule.entity.js +0 -5
- package/dist/entities/properties/data-street.entity.d.ts +0 -22
- package/dist/entities/properties/data-street.entity.d.ts.map +0 -1
- package/dist/entities/properties/data-street.entity.js +0 -5
- package/dist/entities/properties/index.d.ts +0 -6
- package/dist/entities/properties/index.d.ts.map +0 -1
- package/dist/entities/properties/index.js +0 -4
- package/dist/entities/properties/property.entity.d.ts +0 -30
- package/dist/entities/properties/property.entity.d.ts.map +0 -1
- package/dist/entities/properties/property.entity.js +0 -5
- package/dist/entities/properties/security.entity.d.ts +0 -58
- package/dist/entities/properties/security.entity.d.ts.map +0 -1
- package/dist/entities/properties/security.entity.js +0 -5
- package/dist/entities/shared/alert.entity.d.ts +0 -14
- package/dist/entities/shared/alert.entity.d.ts.map +0 -1
- package/dist/entities/shared/alert.entity.js +0 -5
- package/dist/entities/shared/apprivo-sync-journey.entity.d.ts +0 -19
- package/dist/entities/shared/apprivo-sync-journey.entity.d.ts.map +0 -1
- package/dist/entities/shared/apprivo-sync-journey.entity.js +0 -5
- package/dist/entities/shared/checklist.entity.d.ts +0 -15
- package/dist/entities/shared/checklist.entity.d.ts.map +0 -1
- package/dist/entities/shared/checklist.entity.js +0 -5
- package/dist/entities/shared/document-type.entity.d.ts +0 -9
- package/dist/entities/shared/document-type.entity.d.ts.map +0 -1
- package/dist/entities/shared/document-type.entity.js +0 -5
- package/dist/entities/shared/index.d.ts +0 -12
- package/dist/entities/shared/index.d.ts.map +0 -1
- package/dist/entities/shared/index.js +0 -10
- package/dist/entities/shared/job-run.entity.d.ts +0 -15
- package/dist/entities/shared/job-run.entity.d.ts.map +0 -1
- package/dist/entities/shared/job-run.entity.js +0 -5
- package/dist/entities/shared/job-run.model.d.ts +0 -11
- package/dist/entities/shared/job-run.model.d.ts.map +0 -1
- package/dist/entities/shared/job-setting.entity.d.ts +0 -11
- package/dist/entities/shared/job-setting.entity.d.ts.map +0 -1
- package/dist/entities/shared/job-setting.entity.js +0 -5
- package/dist/entities/shared/lookup-group.entity.d.ts +0 -11
- package/dist/entities/shared/lookup-group.entity.d.ts.map +0 -1
- package/dist/entities/shared/lookup-group.entity.js +0 -5
- package/dist/entities/shared/lookup.entity.d.ts +0 -14
- package/dist/entities/shared/lookup.entity.d.ts.map +0 -1
- package/dist/entities/shared/lookup.entity.js +0 -5
- package/dist/entities/shared/system-parameter.entity.d.ts +0 -10
- package/dist/entities/shared/system-parameter.entity.d.ts.map +0 -1
- package/dist/entities/shared/system-parameter.entity.js +0 -5
- package/dist/entities/underwriter/index.d.ts +0 -4
- package/dist/entities/underwriter/index.d.ts.map +0 -1
- package/dist/entities/underwriter/index.js +0 -2
- package/dist/entities/underwriter/underwriter.entity.d.ts +0 -19
- package/dist/entities/underwriter/underwriter.entity.d.ts.map +0 -1
- package/dist/entities/underwriter/underwriter.entity.js +0 -5
- package/dist/entities/users/auth-log.entity.d.ts +0 -11
- package/dist/entities/users/auth-log.entity.d.ts.map +0 -1
- package/dist/entities/users/auth-log.entity.js +0 -5
- package/dist/entities/users/index.d.ts +0 -8
- package/dist/entities/users/index.d.ts.map +0 -1
- package/dist/entities/users/index.js +0 -6
- package/dist/entities/users/permission.entity.d.ts +0 -12
- package/dist/entities/users/permission.entity.d.ts.map +0 -1
- package/dist/entities/users/permission.entity.js +0 -5
- package/dist/entities/users/role-group.entity.d.ts +0 -13
- package/dist/entities/users/role-group.entity.d.ts.map +0 -1
- package/dist/entities/users/role-group.entity.js +0 -5
- package/dist/entities/users/role.entity.d.ts +0 -16
- package/dist/entities/users/role.entity.d.ts.map +0 -1
- package/dist/entities/users/role.entity.js +0 -5
- package/dist/entities/users/user.entity.d.ts +0 -33
- package/dist/entities/users/user.entity.d.ts.map +0 -1
- package/dist/entities/users/user.entity.js +0 -5
- package/dist/shared/document-type-model.js +0 -10
- package/entities/applicants/applicant-credit-data.entity.ts +0 -24
- package/entities/applicants/applicant-credit-profile.entity.ts +0 -19
- package/entities/applicants/applicant-employment-income.entity.ts +0 -18
- package/entities/applicants/applicant-employment.entity.ts +0 -60
- package/entities/applicants/applicant-expenditure.entity.ts +0 -19
- package/entities/applicants/applicant-income-settings.entity.ts +0 -22
- package/entities/applicants/applicant-income.entity.ts +0 -79
- package/entities/applicants/applicant-share-holding.entity.ts +0 -23
- package/entities/applicants/applicant.entity.ts +0 -194
- package/entities/applicants/credit-card-commitment.entity.ts +0 -31
- package/entities/applicants/index.ts +0 -59
- package/entities/applicants/loan-commitment.entity.ts +0 -44
- package/entities/applicants/mortgage-commitment.entity.ts +0 -77
- package/entities/applicants/other-income.entity.ts +0 -68
- package/entities/applicants/property-income.entity.ts +0 -19
- package/entities/applicants/residence-commitment.entity.ts +0 -63
- package/entities/applicants/secure-loan-commitment.entity.ts +0 -41
- package/entities/applicants/unsecured-loan-commitment.entity.ts +0 -41
- package/entities/applications/application-audit.entity.ts +0 -23
- package/entities/applications/application-company.entity.ts +0 -76
- package/entities/applications/application-credit-profile.entity.ts +0 -13
- package/entities/applications/application-direct-debit.entity.ts +0 -29
- package/entities/applications/application-document.entity.ts +0 -33
- package/entities/applications/application-fieldconfig.entity.ts +0 -11
- package/entities/applications/application-illustration.entity.ts +0 -10
- package/entities/applications/application-legal.entity.ts +0 -11
- package/entities/applications/application-mortgage.entity.ts +0 -82
- package/entities/applications/application-note.entity.ts +0 -42
- package/entities/applications/application-offer.entity.ts +0 -10
- package/entities/applications/application-onboarding.entity.ts +0 -13
- package/entities/applications/application-product.entity.ts +0 -38
- package/entities/applications/application-rationale.entity.ts +0 -56
- package/entities/applications/application.entity.ts +0 -168
- package/entities/applications/broker.entity.ts +0 -25
- package/entities/applications/checklist-item.entity.ts +0 -49
- package/entities/applications/index.ts +0 -63
- package/entities/applications/product-features.entity.ts +0 -118
- package/entities/applications/solicitor.entity.ts +0 -38
- package/entities/index.ts +0 -14
- package/entities/prisma.ts +0 -13
- package/entities/product-catalogues/index.ts +0 -23
- package/entities/product-catalogues/product-catalogue.entity.ts +0 -27
- package/entities/product-catalogues/product-definition.entity.ts +0 -21
- package/entities/product-catalogues/product-variant.entity.ts +0 -19
- package/entities/product-catalogues/product.entity.ts +0 -16
- package/entities/product-catalogues/rule.entity.ts +0 -26
- package/entities/properties/data-street.entity.ts +0 -27
- package/entities/properties/index.ts +0 -17
- package/entities/properties/property.entity.ts +0 -35
- package/entities/properties/security.entity.ts +0 -63
- package/entities/shared/alert.entity.ts +0 -19
- package/entities/shared/apprivo-sync-journey.entity.ts +0 -25
- package/entities/shared/apprivo-sync-journey.model.ts +0 -13
- package/entities/shared/checklist.entity.ts +0 -20
- package/entities/shared/document-type.entity.ts +0 -11
- package/entities/shared/index.ts +0 -35
- package/entities/shared/job-run.entity.ts +0 -20
- package/entities/shared/job-run.model.ts +0 -10
- package/entities/shared/job-setting.entity.ts +0 -13
- package/entities/shared/lookup-group.entity.ts +0 -16
- package/entities/shared/lookup.entity.ts +0 -19
- package/entities/shared/system-parameter.entity.ts +0 -13
- package/entities/underwriter/index.ts +0 -7
- package/entities/underwriter/underwriter.entity.ts +0 -24
- package/entities/users/auth-log.entity.ts +0 -13
- package/entities/users/index.ts +0 -23
- package/entities/users/permission.entity.ts +0 -17
- package/entities/users/role-group.entity.ts +0 -18
- package/entities/users/role.entity.ts +0 -21
- package/entities/users/user.entity.ts +0 -38
- package/prisma/applicants/applicant-credit-data.prisma +0 -19
- package/prisma/applicants/applicant-credit-profile.prisma +0 -15
- package/prisma/applicants/applicant-employment-income.prisma +0 -15
- package/prisma/applicants/applicant-employment.prisma +0 -54
- package/prisma/applicants/applicant-expenditure.prisma +0 -14
- package/prisma/applicants/applicant-income-settings.prisma +0 -17
- package/prisma/applicants/applicant-income.prisma +0 -78
- package/prisma/applicants/applicant-other-income.prisma +0 -45
- package/prisma/applicants/applicant-property-income.prisma +0 -21
- package/prisma/applicants/applicant-share-holding.prisma +0 -17
- package/prisma/applicants/applicant.prisma +0 -130
- package/prisma/applicants/credit-card-commitment.prisma +0 -21
- package/prisma/applicants/loan-commitment.prisma +0 -26
- package/prisma/applicants/mortgage-commitment.prisma +0 -43
- package/prisma/applicants/residence-commitment.prisma +0 -41
- package/prisma/applicants/secured-loan-commitment.prisma +0 -27
- package/prisma/applicants/unsecured-loan-commitment.prisma +0 -27
- package/prisma/applications/application-audit.prisma +0 -19
- package/prisma/applications/application-company.prisma +0 -56
- package/prisma/applications/application-credit-profile.prisma +0 -15
- package/prisma/applications/application-direct-debit.prisma +0 -27
- package/prisma/applications/application-document.prisma +0 -28
- package/prisma/applications/application-fieldconfig.prisma +0 -9
- package/prisma/applications/application-illustration.prisma +0 -8
- package/prisma/applications/application-legal.prisma +0 -9
- package/prisma/applications/application-mortgage.prisma +0 -48
- package/prisma/applications/application-note.prisma +0 -36
- package/prisma/applications/application-offer.prisma +0 -8
- package/prisma/applications/application-onboarding.prisma +0 -11
- package/prisma/applications/application-product.prisma +0 -33
- package/prisma/applications/application-rationale.prisma +0 -51
- package/prisma/applications/application.prisma +0 -92
- package/prisma/applications/broker.prisma +0 -26
- package/prisma/applications/checklist-item.prisma +0 -47
- package/prisma/applications/checklist.prisma +0 -19
- package/prisma/applications/product-features.prisma +0 -122
- package/prisma/applications/solicitor.prisma +0 -33
- package/prisma/broker.entity.ts +0 -8
- package/prisma/migrations/20250501070203_initial_migration/migration.sql +0 -2044
- package/prisma/migrations/20250501102630_job_setting_name_change/migration.sql +0 -10
- package/prisma/migrations/20250501104920_milstone_update/migration.sql +0 -30
- package/prisma/migrations/20250501105546_apprivo_sync_journey_update/migration.sql +0 -9
- package/prisma/migrations/20250501105850_job_run_update/migration.sql +0 -13
- package/prisma/migrations/20250505115236_update_application_schema/migration.sql +0 -115
- package/prisma/migrations/20250505145328_update_broker_schema/migration.sql +0 -8
- package/prisma/migrations/20250505185034_update_direct_debit_schema/migration.sql +0 -27
- package/prisma/migrations/20250505190613_update_solicitor_schema/migration.sql +0 -29
- package/prisma/migrations/20250506054831_update_note_schema/migration.sql +0 -12
- package/prisma/migrations/20250506142218_update_broker_schema/migration.sql +0 -17
- package/prisma/migrations/20250506190258_update_application_note_schema/migration.sql +0 -32
- package/prisma/migrations/20250506204635_update_mortgage_schema/migration.sql +0 -26
- package/prisma/migrations/20250507122847_applicant_retirement_age/migration.sql +0 -9
- package/prisma/migrations/20250507184905_update_mortgage_schema/migration.sql +0 -8
- package/prisma/migrations/20250507194746_update_direct_debit_schema/migration.sql +0 -5
- package/prisma/migrations/20250508092417_update_application_schema/migration.sql +0 -3
- package/prisma/migrations/20250508094735_update_direct_debit_schema/migration.sql +0 -2
- package/prisma/migrations/20250509073536_update_applicant_schema/migration.sql +0 -4
- package/prisma/migrations/20250509111029_update_solicitor_schema/migration.sql +0 -2
- package/prisma/migrations/20250509125107_update_mortgage_schema/migration.sql +0 -19
- package/prisma/migrations/20250512071728_update_mortgage_schema/migration.sql +0 -15
- package/prisma/migrations/20250512094011_update_property_schema/migration.sql +0 -34
- package/prisma/migrations/20250512102019_update_mortgage_schema/migration.sql +0 -2
- package/prisma/migrations/20250513132704_update_credit_card_commitment_schema/migration.sql +0 -22
- package/prisma/migrations/20250513143530_update_credit_card_commitment_schema/migration.sql +0 -8
- package/prisma/migrations/20250513170654_update_mortgage_commitment_schema/migration.sql +0 -89
- package/prisma/migrations/20250513183558_update_loan_commitment_schema/migration.sql +0 -33
- package/prisma/migrations/20250513184341_update_loan_commitment_schema/migration.sql +0 -4
- package/prisma/migrations/20250513202307_update_role_schema/migration.sql +0 -12
- package/prisma/migrations/20250514062536_update_role_group_schema/migration.sql +0 -12
- package/prisma/migrations/20250514064054_update_user_schema/migration.sql +0 -12
- package/prisma/migrations/20250514071524_update_user_schema/migration.sql +0 -15
- package/prisma/migrations/20250514072729_update_user_schema/migration.sql +0 -18
- package/prisma/migrations/20250514102042_update_user_rolegroup_role_schemas/migration.sql +0 -9
- package/prisma/migrations/20250514183537_update_application_company_schema/migration.sql +0 -100
- package/prisma/migrations/20250514194139_update_applicant_share_holding_schema/migration.sql +0 -11
- package/prisma/migrations/20250515132015_update_underwriter_schema/migration.sql +0 -56
- package/prisma/migrations/20250515133236_update_underwriter_schema/migration.sql +0 -12
- package/prisma/migrations/20250515172824_update_security_schema/migration.sql +0 -43
- package/prisma/migrations/20250516053810_update_underwriter_schema/migration.sql +0 -14
- package/prisma/migrations/20250516075153_update_commitments_schemas/migration.sql +0 -134
- package/prisma/migrations/20250516094438_update_credit_card_commitment_schema/migration.sql +0 -8
- package/prisma/migrations/20250519075211_update_product_features_schema/migration.sql +0 -15
- package/prisma/migrations/20250519094725_update_product_feature_schema/migration.sql +0 -163
- package/prisma/migrations/20250519133154_update_employemnt_income_schema/migration.sql +0 -11
- package/prisma/migrations/20250519181411_update_applicant_income_schema/migration.sql +0 -65
- package/prisma/migrations/20250520030945_update_income_settings_schema/migration.sql +0 -44
- package/prisma/migrations/20250520061455_update_income_settings_schema/migration.sql +0 -11
- package/prisma/migrations/20250521173204_update_product_catalogue_schema/migration.sql +0 -28
- package/prisma/migrations/20250521180300_update_product_variant_schema/migration.sql +0 -8
- package/prisma/migrations/20250521191050_update_product_definition_schema/migration.sql +0 -23
- package/prisma/migrations/20250521192012_update_product_definition_schema/migration.sql +0 -9
- package/prisma/migrations/migration_lock.toml +0 -3
- package/prisma/product-catalogues/product-catalogue.prisma +0 -22
- package/prisma/product-catalogues/product-definition.prisma +0 -16
- package/prisma/product-catalogues/product-variant.prisma +0 -15
- package/prisma/product-catalogues/product.prisma +0 -10
- package/prisma/product-catalogues/rule.prisma +0 -22
- package/prisma/properties/property.prisma +0 -30
- package/prisma/properties/security.prisma +0 -81
- package/prisma/schema.prisma +0 -1979
- package/prisma/shared/alert.prisma +0 -15
- package/prisma/shared/apprivo-sync-journey.prisma +0 -19
- package/prisma/shared/checklist.prisma +0 -10
- package/prisma/shared/document-type.prisma +0 -9
- package/prisma/shared/job-run.prisma +0 -15
- package/prisma/shared/job-setting.prisma +0 -11
- package/prisma/shared/lookup-group.prisma +0 -12
- package/prisma/shared/lookup.prisma +0 -154
- package/prisma/shared/system-parameter.prisma +0 -16
- package/prisma/underwriter/underwriter.prisma +0 -20
- package/prisma/users/auth-log.prisma +0 -11
- package/prisma/users/permission.prisma +0 -13
- package/prisma/users/role-group.prisma +0 -15
- package/prisma/users/role.prisma +0 -15
- package/prisma/users/user.prisma +0 -30
- /package/dist/{entities/shared/job-run.model.js → applicants/applicant-additional-income.type.js} +0 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import mongoose, { Schema } from 'mongoose';
|
|
2
|
+
const WorkflowTriggerSchema = new Schema({
|
|
3
|
+
triggerKey: {
|
|
4
|
+
type: String,
|
|
5
|
+
required: true,
|
|
6
|
+
unique: true,
|
|
7
|
+
index: true
|
|
8
|
+
},
|
|
9
|
+
description: {
|
|
10
|
+
type: String,
|
|
11
|
+
required: true
|
|
12
|
+
},
|
|
13
|
+
isActive: {
|
|
14
|
+
type: Boolean,
|
|
15
|
+
default: true,
|
|
16
|
+
index: true
|
|
17
|
+
},
|
|
18
|
+
condition: {
|
|
19
|
+
type: String,
|
|
20
|
+
required: true
|
|
21
|
+
},
|
|
22
|
+
workflowKey: {
|
|
23
|
+
type: String,
|
|
24
|
+
required: true,
|
|
25
|
+
index: true
|
|
26
|
+
},
|
|
27
|
+
requiredVariables: [{
|
|
28
|
+
type: String,
|
|
29
|
+
required: true
|
|
30
|
+
}],
|
|
31
|
+
optionalVariables: [{
|
|
32
|
+
type: String
|
|
33
|
+
}],
|
|
34
|
+
parentKey: {
|
|
35
|
+
type: String,
|
|
36
|
+
required: false
|
|
37
|
+
},
|
|
38
|
+
validationRules: {
|
|
39
|
+
type: Schema.Types.Mixed
|
|
40
|
+
},
|
|
41
|
+
metadata: {
|
|
42
|
+
type: Schema.Types.Mixed
|
|
43
|
+
}
|
|
44
|
+
}, { timestamps: true });
|
|
45
|
+
// Index for efficient querying
|
|
46
|
+
WorkflowTriggerSchema.index({ triggerKey: 1, isActive: 1 });
|
|
47
|
+
WorkflowTriggerSchema.index({ workflowKey: 1, isActive: 1 });
|
|
48
|
+
// Conditional model registration to avoid "Cannot overwrite model" errors
|
|
49
|
+
export default mongoose.models.WorkflowTrigger || mongoose.model('WorkflowTrigger', WorkflowTriggerSchema);
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/// <reference path="../value-objects/pound.d.ts" />
|
|
2
|
+
/// <reference path="../value-objects/account-number.d.ts" />
|
|
3
|
+
/// <reference path="../value-objects/sort-code.d.ts" />
|
|
4
|
+
/// <reference types="mongoose/types/aggregate" />
|
|
5
|
+
/// <reference types="mongoose/types/callback" />
|
|
6
|
+
/// <reference types="mongoose/types/collection" />
|
|
7
|
+
/// <reference types="mongoose/types/connection" />
|
|
8
|
+
/// <reference types="mongoose/types/cursor" />
|
|
9
|
+
/// <reference types="mongoose/types/document" />
|
|
10
|
+
/// <reference types="mongoose/types/error" />
|
|
11
|
+
/// <reference types="mongoose/types/expressions" />
|
|
12
|
+
/// <reference types="mongoose/types/helpers" />
|
|
13
|
+
/// <reference types="mongoose/types/middlewares" />
|
|
14
|
+
/// <reference types="mongoose/types/indexes" />
|
|
15
|
+
/// <reference types="mongoose/types/models" />
|
|
16
|
+
/// <reference types="mongoose/types/mongooseoptions" />
|
|
17
|
+
/// <reference types="mongoose/types/pipelinestage" />
|
|
18
|
+
/// <reference types="mongoose/types/populate" />
|
|
19
|
+
/// <reference types="mongoose/types/query" />
|
|
20
|
+
/// <reference types="mongoose/types/schemaoptions" />
|
|
21
|
+
/// <reference types="mongoose/types/session" />
|
|
22
|
+
/// <reference types="mongoose/types/types" />
|
|
23
|
+
/// <reference types="mongoose/types/utility" />
|
|
24
|
+
/// <reference types="mongoose/types/validation" />
|
|
25
|
+
/// <reference types="mongoose/types/virtuals" />
|
|
26
|
+
/// <reference types="mongoose/types/schematypes" />
|
|
27
|
+
/// <reference types="mongoose/types/inferschematype" />
|
|
28
|
+
/// <reference types="mongoose/types/inferrawdoctype" />
|
|
29
|
+
import { Document } from 'mongoose';
|
|
30
|
+
export default interface IWorkflowTrigger extends Document {
|
|
31
|
+
triggerKey: string;
|
|
32
|
+
description: string;
|
|
33
|
+
isActive: boolean;
|
|
34
|
+
condition: string;
|
|
35
|
+
workflowKey: string;
|
|
36
|
+
requiredVariables: string[];
|
|
37
|
+
optionalVariables?: string[];
|
|
38
|
+
parentKey?: string;
|
|
39
|
+
validationRules?: any;
|
|
40
|
+
metadata?: any;
|
|
41
|
+
createdAt: Date;
|
|
42
|
+
updatedAt: Date;
|
|
43
|
+
}
|
|
44
|
+
export interface WorkflowTriggerEvent {
|
|
45
|
+
recordType: string;
|
|
46
|
+
action: string;
|
|
47
|
+
triggerKey: string;
|
|
48
|
+
}
|
|
49
|
+
export interface WorkflowApiPayload {
|
|
50
|
+
workflowKey: string;
|
|
51
|
+
version: number;
|
|
52
|
+
variables: Record<string, any>;
|
|
53
|
+
}
|
|
54
|
+
export interface WorkflowMiddlewareOptions {
|
|
55
|
+
workflowApiUrl: string;
|
|
56
|
+
timeout?: number;
|
|
57
|
+
retryAttempts?: number;
|
|
58
|
+
retryDelay?: number;
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=workflow-trigger.type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-trigger.type.d.ts","sourceRoot":"","sources":["../../shared/workflow-trigger.type.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,MAAM,CAAC,OAAO,WAAW,gBAAiB,SAAQ,QAAQ;IACtD,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,GAAG,CAAC;IACtB,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,yBAAyB;IACtC,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Initialize workflow middleware for all schemas
|
|
3
|
+
* Call this function once in your application startup to enable workflow middleware globally
|
|
4
|
+
*
|
|
5
|
+
* This will automatically apply workflow middleware to all Mongoose schemas
|
|
6
|
+
* The record type will be inferred from the model name (e.g., 'Application' -> 'applications')
|
|
7
|
+
*/
|
|
8
|
+
export declare function initializeWorkflowMiddleware(): void;
|
|
9
|
+
/**
|
|
10
|
+
* Check if workflow middleware is properly configured
|
|
11
|
+
* @returns true if all required environment variables are set
|
|
12
|
+
*/
|
|
13
|
+
export declare function isWorkflowMiddlewareConfigured(): boolean;
|
|
14
|
+
/**
|
|
15
|
+
* Initialize workflow middleware with configuration check
|
|
16
|
+
* @param options - Optional configuration options
|
|
17
|
+
*/
|
|
18
|
+
export declare function initializeWorkflowMiddlewareWithCheck(options?: {
|
|
19
|
+
skipConfigCheck?: boolean;
|
|
20
|
+
}): boolean;
|
|
21
|
+
//# sourceMappingURL=workflow.init.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow.init.d.ts","sourceRoot":"","sources":["../../shared/workflow.init.ts"],"names":[],"mappings":"AAQA;;;;;;GAMG;AACH,wBAAgB,4BAA4B,SAI3C;AAED;;;GAGG;AACH,wBAAgB,8BAA8B,IAAI,OAAO,CAUxD;AAED;;;GAGG;AACH,wBAAgB,qCAAqC,CAAC,OAAO,CAAC,EAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAA;CAAE,WAQ5F"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import dotenv from 'dotenv';
|
|
2
|
+
import { registerWorkflowPlugin } from './workflow.plugin.js';
|
|
3
|
+
import { workflowLog, workflowWarn } from './workflow.logger.js';
|
|
4
|
+
// Load environment variables from .env file
|
|
5
|
+
dotenv.config();
|
|
6
|
+
/**
|
|
7
|
+
* Initialize workflow middleware for all schemas
|
|
8
|
+
* Call this function once in your application startup to enable workflow middleware globally
|
|
9
|
+
*
|
|
10
|
+
* This will automatically apply workflow middleware to all Mongoose schemas
|
|
11
|
+
* The record type will be inferred from the model name (e.g., 'Application' -> 'applications')
|
|
12
|
+
*/
|
|
13
|
+
export function initializeWorkflowMiddleware() {
|
|
14
|
+
workflowLog('Initializing workflow middleware for all schemas...');
|
|
15
|
+
registerWorkflowPlugin();
|
|
16
|
+
workflowLog('Workflow middleware initialized successfully');
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Check if workflow middleware is properly configured
|
|
20
|
+
* @returns true if all required environment variables are set
|
|
21
|
+
*/
|
|
22
|
+
export function isWorkflowMiddlewareConfigured() {
|
|
23
|
+
const requiredEnvVars = ['WORKFLOW_API_KEY'];
|
|
24
|
+
const missingVars = requiredEnvVars.filter(varName => !process.env[varName]);
|
|
25
|
+
if (missingVars.length > 0) {
|
|
26
|
+
workflowWarn(`Missing required environment variables for workflow middleware: ${missingVars.join(', ')}`);
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
return true;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Initialize workflow middleware with configuration check
|
|
33
|
+
* @param options - Optional configuration options
|
|
34
|
+
*/
|
|
35
|
+
export function initializeWorkflowMiddlewareWithCheck(options) {
|
|
36
|
+
if (!options?.skipConfigCheck && !isWorkflowMiddlewareConfigured()) {
|
|
37
|
+
workflowWarn('Workflow middleware configuration incomplete. Middleware will be disabled.');
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
initializeWorkflowMiddleware();
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility functions for workflow engine logging
|
|
3
|
+
* Logs are controlled by the SHOW_WORKFLOW_ENGINE_LOGS environment variable
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Conditional console.log that only logs if SHOW_WORKFLOW_ENGINE_LOGS is enabled
|
|
7
|
+
*/
|
|
8
|
+
export declare function workflowLog(...args: any[]): void;
|
|
9
|
+
/**
|
|
10
|
+
* Conditional console.warn that only logs if SHOW_WORKFLOW_ENGINE_LOGS is enabled
|
|
11
|
+
*/
|
|
12
|
+
export declare function workflowWarn(...args: any[]): void;
|
|
13
|
+
/**
|
|
14
|
+
* Conditional console.error that only logs if SHOW_WORKFLOW_ENGINE_LOGS is enabled
|
|
15
|
+
* Note: Error logs might be important, but we'll respect the flag for consistency
|
|
16
|
+
*/
|
|
17
|
+
export declare function workflowError(...args: any[]): void;
|
|
18
|
+
//# sourceMappingURL=workflow.logger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow.logger.d.ts","sourceRoot":"","sources":["../../shared/workflow.logger.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAeH;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAIhD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAIjD;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAIlD"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility functions for workflow engine logging
|
|
3
|
+
* Logs are controlled by the SHOW_WORKFLOW_ENGINE_LOGS environment variable
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Checks if workflow engine logs should be displayed
|
|
7
|
+
* @returns true if SHOW_WORKFLOW_ENGINE_LOGS is set to a truthy value
|
|
8
|
+
*/
|
|
9
|
+
function shouldShowLogs() {
|
|
10
|
+
const envValue = process.env.SHOW_WORKFLOW_ENGINE_LOGS;
|
|
11
|
+
if (!envValue)
|
|
12
|
+
return false;
|
|
13
|
+
// Check for truthy string values
|
|
14
|
+
const normalizedValue = envValue.toLowerCase().trim();
|
|
15
|
+
return normalizedValue === 'true' || normalizedValue === '1' || normalizedValue === 'yes';
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Conditional console.log that only logs if SHOW_WORKFLOW_ENGINE_LOGS is enabled
|
|
19
|
+
*/
|
|
20
|
+
export function workflowLog(...args) {
|
|
21
|
+
if (shouldShowLogs()) {
|
|
22
|
+
console.log(...args);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Conditional console.warn that only logs if SHOW_WORKFLOW_ENGINE_LOGS is enabled
|
|
27
|
+
*/
|
|
28
|
+
export function workflowWarn(...args) {
|
|
29
|
+
if (shouldShowLogs()) {
|
|
30
|
+
console.warn(...args);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Conditional console.error that only logs if SHOW_WORKFLOW_ENGINE_LOGS is enabled
|
|
35
|
+
* Note: Error logs might be important, but we'll respect the flag for consistency
|
|
36
|
+
*/
|
|
37
|
+
export function workflowError(...args) {
|
|
38
|
+
if (shouldShowLogs()) {
|
|
39
|
+
console.error(...args);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
/// <reference path="../value-objects/pound.d.ts" />
|
|
2
|
+
/// <reference path="../value-objects/account-number.d.ts" />
|
|
3
|
+
/// <reference path="../value-objects/sort-code.d.ts" />
|
|
4
|
+
/// <reference types="mongoose/types/aggregate.js" />
|
|
5
|
+
/// <reference types="mongoose/types/callback.js" />
|
|
6
|
+
/// <reference types="mongoose/types/collection.js" />
|
|
7
|
+
/// <reference types="mongoose/types/connection.js" />
|
|
8
|
+
/// <reference types="mongoose/types/cursor.js" />
|
|
9
|
+
/// <reference types="mongoose/types/document.js" />
|
|
10
|
+
/// <reference types="mongoose/types/error.js" />
|
|
11
|
+
/// <reference types="mongoose/types/expressions.js" />
|
|
12
|
+
/// <reference types="mongoose/types/helpers.js" />
|
|
13
|
+
/// <reference types="mongoose/types/middlewares.js" />
|
|
14
|
+
/// <reference types="mongoose/types/indexes.js" />
|
|
15
|
+
/// <reference types="mongoose/types/models.js" />
|
|
16
|
+
/// <reference types="mongoose/types/mongooseoptions.js" />
|
|
17
|
+
/// <reference types="mongoose/types/pipelinestage.js" />
|
|
18
|
+
/// <reference types="mongoose/types/populate.js" />
|
|
19
|
+
/// <reference types="mongoose/types/query.js" />
|
|
20
|
+
/// <reference types="mongoose/types/schemaoptions.js" />
|
|
21
|
+
/// <reference types="mongoose/types/session.js" />
|
|
22
|
+
/// <reference types="mongoose/types/types.js" />
|
|
23
|
+
/// <reference types="mongoose/types/utility.js" />
|
|
24
|
+
/// <reference types="mongoose/types/validation.js" />
|
|
25
|
+
/// <reference types="mongoose/types/virtuals.js" />
|
|
26
|
+
/// <reference types="mongoose/types/schematypes.js" />
|
|
27
|
+
/// <reference types="mongoose/types/inferschematype.js" />
|
|
28
|
+
/// <reference types="mongoose/types/inferrawdoctype.js" />
|
|
29
|
+
import mongoose from 'mongoose';
|
|
30
|
+
import { WorkflowTriggerEvent, WorkflowMiddlewareOptions } from './workflow-trigger.type.js';
|
|
31
|
+
export declare class WorkflowMiddleware {
|
|
32
|
+
private workflowService;
|
|
33
|
+
private options;
|
|
34
|
+
constructor(options?: Partial<WorkflowMiddlewareOptions>);
|
|
35
|
+
/**
|
|
36
|
+
* Safely gets the WorkflowTrigger model, handling potential registration issues
|
|
37
|
+
*/
|
|
38
|
+
private getWorkflowTriggerModel;
|
|
39
|
+
/**
|
|
40
|
+
* Gets the current request context including application_id and token
|
|
41
|
+
* @returns The current context object or null if not available
|
|
42
|
+
*/
|
|
43
|
+
getContext(): {
|
|
44
|
+
contextId: any;
|
|
45
|
+
token: any;
|
|
46
|
+
} | null;
|
|
47
|
+
/**
|
|
48
|
+
* Creates a Mongoose middleware function for a specific model
|
|
49
|
+
* @param recordType - The type of record (e.g., 'applications', 'products', 'tasks')
|
|
50
|
+
* @returns Mongoose middleware function
|
|
51
|
+
*/
|
|
52
|
+
createMiddleware(recordType: string): {
|
|
53
|
+
postSave: (this: any, doc: any, next: Function) => Promise<void>;
|
|
54
|
+
postRemove: (this: any, doc: any, next: Function) => Promise<void>;
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* Handles a workflow trigger event
|
|
58
|
+
* @param event - The workflow trigger event
|
|
59
|
+
* @param document - The document that triggered the event
|
|
60
|
+
*/
|
|
61
|
+
handleEvent(event: WorkflowTriggerEvent, document: any): Promise<void>;
|
|
62
|
+
/**
|
|
63
|
+
* Processes a single workflow trigger
|
|
64
|
+
* @param trigger - The workflow trigger configuration
|
|
65
|
+
* @param document - The document that triggered the event
|
|
66
|
+
* @param event - The workflow trigger event
|
|
67
|
+
*/
|
|
68
|
+
private processTrigger;
|
|
69
|
+
/**
|
|
70
|
+
* Evaluates a condition against a document
|
|
71
|
+
* @param condition - The condition string to evaluate
|
|
72
|
+
* @param document - The document to evaluate against
|
|
73
|
+
* @returns true if condition is met
|
|
74
|
+
*/
|
|
75
|
+
private evaluateCondition;
|
|
76
|
+
/**
|
|
77
|
+
* Extracts metadata from document and event
|
|
78
|
+
* @param document - The document
|
|
79
|
+
* @param event - The event
|
|
80
|
+
* @returns Metadata object
|
|
81
|
+
*/
|
|
82
|
+
private extractMetadata;
|
|
83
|
+
/**
|
|
84
|
+
* Manually trigger a workflow for a specific document
|
|
85
|
+
* @param triggerKey - The trigger key to use
|
|
86
|
+
* @param document - The document to process
|
|
87
|
+
* @param recordType - The record type
|
|
88
|
+
*/
|
|
89
|
+
manualTrigger(triggerKey: string, document: any, recordType: string): Promise<void>;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Factory function to create workflow middleware for a model
|
|
93
|
+
* @param recordType - The type of record (e.g., 'applications', 'products', 'tasks')
|
|
94
|
+
* @param options - Optional workflow middleware options (overrides env vars)
|
|
95
|
+
* @returns Mongoose middleware functions
|
|
96
|
+
*/
|
|
97
|
+
export declare function createWorkflowMiddleware(recordType: string, options?: Partial<WorkflowMiddlewareOptions>): {
|
|
98
|
+
postSave: (this: any, doc: any, next: Function) => Promise<void>;
|
|
99
|
+
postRemove: (this: any, doc: any, next: Function) => Promise<void>;
|
|
100
|
+
};
|
|
101
|
+
/**
|
|
102
|
+
* Utility function to apply workflow middleware to a Mongoose schema
|
|
103
|
+
* @param schema - The Mongoose schema
|
|
104
|
+
* @param recordType - The type of record
|
|
105
|
+
* @param options - Optional workflow middleware options (overrides env vars)
|
|
106
|
+
*/
|
|
107
|
+
export declare function applyWorkflowMiddleware(schema: mongoose.Schema, recordType: string, options?: Partial<WorkflowMiddlewareOptions>): void;
|
|
108
|
+
//# sourceMappingURL=workflow.middleware.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow.middleware.d.ts","sourceRoot":"","sources":["../../shared/workflow.middleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAGhC,OAAO,EACH,oBAAoB,EAEpB,yBAAyB,EAC5B,MAAM,4BAA4B,CAAC;AAIpC,qBAAa,kBAAkB;IAC3B,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,OAAO,CAA4B;gBAE/B,OAAO,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC;IAYxD;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAS/B;;;OAGG;IACH,UAAU;;;;IAWV;;;;OAIG;IACH,gBAAgB,CAAC,UAAU,EAAE,MAAM;yBAGK,GAAG,OAAO,GAAG,QAAQ,QAAQ;2BAiB3B,GAAG,OAAO,GAAG,QAAQ,QAAQ;;IAkBvE;;;;OAIG;IACG,WAAW,CAAC,KAAK,EAAE,oBAAoB,EAAE,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IA0B5E;;;;;OAKG;YACW,cAAc;IA0D5B;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IAkBzB;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAavB;;;;;OAKG;IACG,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAS5F;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC;;;EAGxG;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC,QAShI"}
|
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
import WorkflowTriggerModel from './workflow-trigger.model.js';
|
|
2
|
+
import { WorkflowService } from './workflow.service.js';
|
|
3
|
+
// @ts-ignore - No type declarations available for @dynamatix/cat-shared/services
|
|
4
|
+
import { getContext as getSharedContext } from '@dynamatix/cat-shared/services';
|
|
5
|
+
import { workflowLog, workflowWarn, workflowError } from './workflow.logger.js';
|
|
6
|
+
export class WorkflowMiddleware {
|
|
7
|
+
constructor(options) {
|
|
8
|
+
// Read configuration from environment variables with fallbacks
|
|
9
|
+
this.options = {
|
|
10
|
+
workflowApiUrl: process.env.WORKFLOW_API_URL || 'https://your-workflow-api.com/api/v1/workflows/execute',
|
|
11
|
+
timeout: parseInt(process.env.WORKFLOW_TIMEOUT || '30000'),
|
|
12
|
+
retryAttempts: parseInt(process.env.WORKFLOW_RETRY_ATTEMPTS || '3'),
|
|
13
|
+
retryDelay: parseInt(process.env.WORKFLOW_RETRY_DELAY || '1000'),
|
|
14
|
+
...options // Allow override of specific options
|
|
15
|
+
};
|
|
16
|
+
this.workflowService = new WorkflowService(this.options);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Safely gets the WorkflowTrigger model, handling potential registration issues
|
|
20
|
+
*/
|
|
21
|
+
getWorkflowTriggerModel() {
|
|
22
|
+
try {
|
|
23
|
+
return WorkflowTriggerModel;
|
|
24
|
+
}
|
|
25
|
+
catch (error) {
|
|
26
|
+
workflowError('Error accessing WorkflowTrigger model:', error);
|
|
27
|
+
throw new Error('WorkflowTrigger model is not properly registered');
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Gets the current request context including application_id and token
|
|
32
|
+
* @returns The current context object or null if not available
|
|
33
|
+
*/
|
|
34
|
+
getContext() {
|
|
35
|
+
const context = getSharedContext();
|
|
36
|
+
if (context) {
|
|
37
|
+
return {
|
|
38
|
+
contextId: context.contextId,
|
|
39
|
+
token: context.token
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
return null;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Creates a Mongoose middleware function for a specific model
|
|
46
|
+
* @param recordType - The type of record (e.g., 'applications', 'products', 'tasks')
|
|
47
|
+
* @returns Mongoose middleware function
|
|
48
|
+
*/
|
|
49
|
+
createMiddleware(recordType) {
|
|
50
|
+
return {
|
|
51
|
+
// Post-save middleware for create and update operations
|
|
52
|
+
postSave: async function (doc, next) {
|
|
53
|
+
try {
|
|
54
|
+
workflowLog('Post-save middleware for create and update operations');
|
|
55
|
+
const middleware = new WorkflowMiddleware(this.options || {});
|
|
56
|
+
await middleware.handleEvent({
|
|
57
|
+
recordType,
|
|
58
|
+
action: doc.isNew ? 'created' : 'updated',
|
|
59
|
+
triggerKey: `${recordType}.${doc.isNew ? 'created' : 'updated'}`
|
|
60
|
+
}, doc);
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
workflowError('Workflow middleware error:', error);
|
|
64
|
+
// Don't throw error to avoid breaking the main operation
|
|
65
|
+
}
|
|
66
|
+
next();
|
|
67
|
+
}.bind(this),
|
|
68
|
+
// Post-remove middleware for delete operations
|
|
69
|
+
postRemove: async function (doc, next) {
|
|
70
|
+
try {
|
|
71
|
+
workflowLog('Post-remove middleware for delete operations');
|
|
72
|
+
const middleware = new WorkflowMiddleware(this.options || {});
|
|
73
|
+
await middleware.handleEvent({
|
|
74
|
+
recordType,
|
|
75
|
+
action: 'deleted',
|
|
76
|
+
triggerKey: `${recordType}.deleted`
|
|
77
|
+
}, doc);
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
80
|
+
workflowError('Workflow middleware error:', error);
|
|
81
|
+
// Don't throw error to avoid breaking the main operation
|
|
82
|
+
}
|
|
83
|
+
next();
|
|
84
|
+
}.bind(this)
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Handles a workflow trigger event
|
|
89
|
+
* @param event - The workflow trigger event
|
|
90
|
+
* @param document - The document that triggered the event
|
|
91
|
+
*/
|
|
92
|
+
async handleEvent(event, document) {
|
|
93
|
+
try {
|
|
94
|
+
// Find active triggers for this event
|
|
95
|
+
workflowLog('Finding active triggers for this event');
|
|
96
|
+
const WorkflowTrigger = this.getWorkflowTriggerModel();
|
|
97
|
+
const triggers = await WorkflowTrigger.find({
|
|
98
|
+
triggerKey: event.triggerKey,
|
|
99
|
+
isActive: true
|
|
100
|
+
});
|
|
101
|
+
if (triggers.length === 0) {
|
|
102
|
+
workflowLog(`No active triggers found for ${event.triggerKey}`);
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
// Process each trigger
|
|
106
|
+
workflowLog('Processing each trigger');
|
|
107
|
+
for (const trigger of triggers) {
|
|
108
|
+
await this.processTrigger(trigger, document, event);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
catch (error) {
|
|
112
|
+
workflowError(`Error handling workflow event ${event.triggerKey}:`, error);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Processes a single workflow trigger
|
|
117
|
+
* @param trigger - The workflow trigger configuration
|
|
118
|
+
* @param document - The document that triggered the event
|
|
119
|
+
* @param event - The workflow trigger event
|
|
120
|
+
*/
|
|
121
|
+
async processTrigger(trigger, document, event) {
|
|
122
|
+
try {
|
|
123
|
+
workflowLog('Processing trigger');
|
|
124
|
+
// Check if condition is met (if specified)
|
|
125
|
+
if (trigger.condition && !this.evaluateCondition(trigger.condition, document)) {
|
|
126
|
+
workflowLog(`Condition not met for trigger ${trigger.triggerKey}`);
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
// Extract variables from document
|
|
130
|
+
workflowLog('Extracting variables from document');
|
|
131
|
+
workflowLog(` Required variables: ${JSON.stringify(trigger.requiredVariables)}`);
|
|
132
|
+
workflowLog(` Optional variables: ${JSON.stringify(trigger.optionalVariables || [])}`);
|
|
133
|
+
const variables = this.workflowService.extractVariables(trigger.requiredVariables, trigger.optionalVariables || [], document);
|
|
134
|
+
workflowLog(` Extracted variables: ${JSON.stringify(variables, null, 2)}`);
|
|
135
|
+
// Validate required variables
|
|
136
|
+
if (!this.workflowService.validateRequiredVariables(trigger.requiredVariables, variables)) {
|
|
137
|
+
workflowWarn(`❌ Required variables missing for trigger ${trigger.triggerKey}`);
|
|
138
|
+
workflowWarn(` Required: ${JSON.stringify(trigger.requiredVariables)}`);
|
|
139
|
+
workflowWarn(` Got: ${JSON.stringify(variables)}`);
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
// Add metadata
|
|
143
|
+
const metadata = this.extractMetadata(document, event, trigger.parentKey);
|
|
144
|
+
workflowLog(` Metadata: ${JSON.stringify(metadata, null, 2)}`);
|
|
145
|
+
const enrichedVariables = {
|
|
146
|
+
...variables,
|
|
147
|
+
...metadata
|
|
148
|
+
};
|
|
149
|
+
// Create workflow payload
|
|
150
|
+
const payload = {
|
|
151
|
+
workflowKey: trigger.workflowKey,
|
|
152
|
+
version: 1, // Default version, could be made configurable
|
|
153
|
+
variables: enrichedVariables
|
|
154
|
+
};
|
|
155
|
+
workflowLog('📦 Workflow payload:', JSON.stringify(payload, null, 2));
|
|
156
|
+
// Get token from context
|
|
157
|
+
const context = this.getContext();
|
|
158
|
+
const token = context?.token;
|
|
159
|
+
// Trigger workflow in background
|
|
160
|
+
await this.workflowService.triggerWorkflow(payload, token);
|
|
161
|
+
workflowLog(`Workflow ${trigger.workflowKey} triggered for ${event.triggerKey}`);
|
|
162
|
+
}
|
|
163
|
+
catch (error) {
|
|
164
|
+
workflowError(`Error processing trigger ${trigger.triggerKey}:`, error);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Evaluates a condition against a document
|
|
169
|
+
* @param condition - The condition string to evaluate
|
|
170
|
+
* @param document - The document to evaluate against
|
|
171
|
+
* @returns true if condition is met
|
|
172
|
+
*/
|
|
173
|
+
evaluateCondition(condition, document) {
|
|
174
|
+
try {
|
|
175
|
+
// Simple condition evaluation - could be enhanced with a proper expression parser
|
|
176
|
+
// For now, supporting basic field checks like "status === 'active'"
|
|
177
|
+
if (condition.includes('===')) {
|
|
178
|
+
const [field, value] = condition.split('===').map(s => s.trim());
|
|
179
|
+
const fieldValue = this.workflowService['getNestedValue'](document, field);
|
|
180
|
+
return fieldValue === value.replace(/['"]/g, '');
|
|
181
|
+
}
|
|
182
|
+
// Default to true if condition format is not recognized
|
|
183
|
+
return true;
|
|
184
|
+
}
|
|
185
|
+
catch (error) {
|
|
186
|
+
workflowError('Error evaluating condition:', error);
|
|
187
|
+
return false;
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Extracts metadata from document and event
|
|
192
|
+
* @param document - The document
|
|
193
|
+
* @param event - The event
|
|
194
|
+
* @returns Metadata object
|
|
195
|
+
*/
|
|
196
|
+
extractMetadata(document, event, parentKey) {
|
|
197
|
+
const context = this.getContext();
|
|
198
|
+
return {
|
|
199
|
+
source: event.recordType,
|
|
200
|
+
action: event.action,
|
|
201
|
+
triggerKey: event.triggerKey,
|
|
202
|
+
sourceId: document._id?.toString(),
|
|
203
|
+
parentSourceId: parentKey ? document[parentKey] : null,
|
|
204
|
+
timestamp: new Date().toISOString(),
|
|
205
|
+
contextId: context?.contextId,
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
/**
|
|
209
|
+
* Manually trigger a workflow for a specific document
|
|
210
|
+
* @param triggerKey - The trigger key to use
|
|
211
|
+
* @param document - The document to process
|
|
212
|
+
* @param recordType - The record type
|
|
213
|
+
*/
|
|
214
|
+
async manualTrigger(triggerKey, document, recordType) {
|
|
215
|
+
const event = {
|
|
216
|
+
recordType,
|
|
217
|
+
action: 'manual',
|
|
218
|
+
triggerKey
|
|
219
|
+
};
|
|
220
|
+
await this.handleEvent(event, document);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* Factory function to create workflow middleware for a model
|
|
225
|
+
* @param recordType - The type of record (e.g., 'applications', 'products', 'tasks')
|
|
226
|
+
* @param options - Optional workflow middleware options (overrides env vars)
|
|
227
|
+
* @returns Mongoose middleware functions
|
|
228
|
+
*/
|
|
229
|
+
export function createWorkflowMiddleware(recordType, options) {
|
|
230
|
+
const middleware = new WorkflowMiddleware(options);
|
|
231
|
+
return middleware.createMiddleware(recordType);
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Utility function to apply workflow middleware to a Mongoose schema
|
|
235
|
+
* @param schema - The Mongoose schema
|
|
236
|
+
* @param recordType - The type of record
|
|
237
|
+
* @param options - Optional workflow middleware options (overrides env vars)
|
|
238
|
+
*/
|
|
239
|
+
export function applyWorkflowMiddleware(schema, recordType, options) {
|
|
240
|
+
const middleware = createWorkflowMiddleware(recordType, options);
|
|
241
|
+
// Apply post-save middleware
|
|
242
|
+
schema.post('save', middleware.postSave);
|
|
243
|
+
// Apply post-remove middleware
|
|
244
|
+
schema.post(/^delete/, middleware.postRemove);
|
|
245
|
+
schema.post('findOneAndDelete', middleware.postRemove);
|
|
246
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/// <reference path="../value-objects/pound.d.ts" />
|
|
2
|
+
/// <reference path="../value-objects/account-number.d.ts" />
|
|
3
|
+
/// <reference path="../value-objects/sort-code.d.ts" />
|
|
4
|
+
/// <reference types="mongoose/types/aggregate.js" />
|
|
5
|
+
/// <reference types="mongoose/types/callback.js" />
|
|
6
|
+
/// <reference types="mongoose/types/collection.js" />
|
|
7
|
+
/// <reference types="mongoose/types/connection.js" />
|
|
8
|
+
/// <reference types="mongoose/types/cursor.js" />
|
|
9
|
+
/// <reference types="mongoose/types/document.js" />
|
|
10
|
+
/// <reference types="mongoose/types/error.js" />
|
|
11
|
+
/// <reference types="mongoose/types/expressions.js" />
|
|
12
|
+
/// <reference types="mongoose/types/helpers.js" />
|
|
13
|
+
/// <reference types="mongoose/types/middlewares.js" />
|
|
14
|
+
/// <reference types="mongoose/types/indexes.js" />
|
|
15
|
+
/// <reference types="mongoose/types/models.js" />
|
|
16
|
+
/// <reference types="mongoose/types/mongooseoptions.js" />
|
|
17
|
+
/// <reference types="mongoose/types/pipelinestage.js" />
|
|
18
|
+
/// <reference types="mongoose/types/populate.js" />
|
|
19
|
+
/// <reference types="mongoose/types/query.js" />
|
|
20
|
+
/// <reference types="mongoose/types/schemaoptions.js" />
|
|
21
|
+
/// <reference types="mongoose/types/session.js" />
|
|
22
|
+
/// <reference types="mongoose/types/types.js" />
|
|
23
|
+
/// <reference types="mongoose/types/utility.js" />
|
|
24
|
+
/// <reference types="mongoose/types/validation.js" />
|
|
25
|
+
/// <reference types="mongoose/types/virtuals.js" />
|
|
26
|
+
/// <reference types="mongoose/types/schematypes.js" />
|
|
27
|
+
/// <reference types="mongoose/types/inferschematype.js" />
|
|
28
|
+
/// <reference types="mongoose/types/inferrawdoctype.js" />
|
|
29
|
+
import mongoose from 'mongoose';
|
|
30
|
+
/**
|
|
31
|
+
* Workflow plugin that automatically applies workflow middleware to schemas
|
|
32
|
+
* This plugin reads the record type from schema options and applies the appropriate middleware
|
|
33
|
+
*/
|
|
34
|
+
export declare function workflowPlugin(schema: mongoose.Schema, options: any): void;
|
|
35
|
+
/**
|
|
36
|
+
* Utility function to register the workflow plugin globally
|
|
37
|
+
* This will apply workflow middleware to all schemas automatically
|
|
38
|
+
*/
|
|
39
|
+
export declare function registerWorkflowPlugin(): void;
|
|
40
|
+
/**
|
|
41
|
+
* Utility function to apply workflow plugin to a specific schema with custom record type
|
|
42
|
+
* @param schema - The Mongoose schema
|
|
43
|
+
* @param recordType - The record type (e.g., 'applications', 'applicants')
|
|
44
|
+
*/
|
|
45
|
+
export declare function applyWorkflowPlugin(schema: mongoose.Schema, recordType: string): void;
|
|
46
|
+
//# sourceMappingURL=workflow.plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow.plugin.d.ts","sourceRoot":"","sources":["../../shared/workflow.plugin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAIhC;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,QAyInE;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,SAGrC;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,QAE9E"}
|