sea-dev 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/tasks/README.md +89 -0
- package/.cursor/rules/commits.mdc +31 -0
- package/.cursor/rules/general.mdc +84 -0
- package/.github/workflows/ci-cd.yml +141 -0
- package/CLAUDE.md +337 -0
- package/README.md +129 -0
- package/apps/api/.prettierignore +6 -0
- package/apps/api/.prettierrc.js +3 -0
- package/apps/api/dotenvx-safe.sh +11 -0
- package/apps/api/eslint.config.mjs +3 -0
- package/apps/api/package.json +58 -0
- package/apps/api/src/clients/posthog.ts +25 -0
- package/apps/api/src/dal/submission.ts +59 -0
- package/apps/api/src/errors.ts +55 -0
- package/apps/api/src/index.ts +21 -0
- package/apps/api/src/lib/channel.ts +28 -0
- package/apps/api/src/lib/config.ts +9 -0
- package/apps/api/src/lib/fmt.test.ts +9 -0
- package/apps/api/src/lib/fmt.ts +62 -0
- package/apps/api/src/lib/invariant.ts +23 -0
- package/apps/api/src/middleware/auth.ts +66 -0
- package/apps/api/src/routes/index.ts +20 -0
- package/apps/api/src/routes/v2/chat/handlers.ts +693 -0
- package/apps/api/src/routes/v2/chat/index.ts +257 -0
- package/apps/api/src/routes/v2/chat/schemas.ts +43 -0
- package/apps/api/src/routes/v2/deals/handlers.ts +64 -0
- package/apps/api/src/routes/v2/deals/index.ts +88 -0
- package/apps/api/src/routes/v2/deals/schemas.ts +38 -0
- package/apps/api/src/routes/v2/forms/handlers.ts +415 -0
- package/apps/api/src/routes/v2/forms/index.ts +382 -0
- package/apps/api/src/routes/v2/forms/schemas.ts +243 -0
- package/apps/api/src/routes/v2/index.ts +19 -0
- package/apps/api/src/routes/v2/pipelines/handlers.ts +261 -0
- package/apps/api/src/routes/v2/pipelines/index.ts +224 -0
- package/apps/api/src/routes/v2/pipelines/schemas.ts +173 -0
- package/apps/api/src/routes/v2/submissions/handlers.ts +555 -0
- package/apps/api/src/routes/v2/submissions/index.ts +366 -0
- package/apps/api/src/routes/v2/submissions/schemas.ts +233 -0
- package/apps/api/src/routes/v2/workflows/handlers.ts +81 -0
- package/apps/api/src/routes/v2/workflows/index.ts +88 -0
- package/apps/api/src/routes/v2/workflows/schemas.ts +40 -0
- package/apps/api/src/server.ts +146 -0
- package/apps/api/src/static/favicon.ico +0 -0
- package/apps/api/src/types/api.ts +14 -0
- package/apps/api/src/types/result.ts +3 -0
- package/apps/api/tsconfig.json +22 -0
- package/apps/api/vite.config.ts +28 -0
- package/apps/api/vitest.config.ts +14 -0
- package/apps/conversion-worker/Dockerfile +59 -0
- package/apps/conversion-worker/package.json +31 -0
- package/apps/conversion-worker/src/lib/config.ts +7 -0
- package/apps/conversion-worker/src/main.ts +22 -0
- package/apps/conversion-worker/src/workflows/convert-pptx.ts +116 -0
- package/apps/conversion-worker/tsconfig.json +27 -0
- package/apps/conversion-worker/vite.config.ts +33 -0
- package/apps/main/.prettierignore +6 -0
- package/apps/main/.prettierrc.js +3 -0
- package/apps/main/CLAUDE.md +245 -0
- package/apps/main/Procfile +1 -0
- package/apps/main/README.md +193 -0
- package/apps/main/db-tests.jsonl +116 -0
- package/apps/main/dotenvx-safe.sh +11 -0
- package/apps/main/drizzle/meta/_journal.json +1 -0
- package/apps/main/drizzle.config.ts +25 -0
- package/apps/main/eslint.config.mjs +3 -0
- package/apps/main/generate-routes.mjs +5 -0
- package/apps/main/package.json +131 -0
- package/apps/main/playwright.config.ts +23 -0
- package/apps/main/postcss.config.ts +5 -0
- package/apps/main/public/bg-dark.svg +10 -0
- package/apps/main/public/bg.svg +10 -0
- package/apps/main/public/favicon.ico +0 -0
- package/apps/main/run.sh +146 -0
- package/apps/main/scripts/browser.ts +14 -0
- package/apps/main/scripts/db-test-cov.ts +277 -0
- package/apps/main/scripts/login.ts +78 -0
- package/apps/main/scripts/repl.ts +61 -0
- package/apps/main/src/_foo.ts +31 -0
- package/apps/main/src/_tests/db.test.ts +19 -0
- package/apps/main/src/_tests/mock-db.ts +60 -0
- package/apps/main/src/client.tsx +13 -0
- package/apps/main/src/clients/loops.ts +13 -0
- package/apps/main/src/clients/polar.ts +12 -0
- package/apps/main/src/clients/posthog.ts +12 -0
- package/apps/main/src/components/chat/chat-context.tsx +99 -0
- package/apps/main/src/components/chat/chat-messages.tsx +184 -0
- package/apps/main/src/components/chat/chat-status.tsx +140 -0
- package/apps/main/src/components/chat/chat.tsx +458 -0
- package/apps/main/src/components/chat/citation-modal.tsx +54 -0
- package/apps/main/src/components/cta.tsx +21 -0
- package/apps/main/src/components/data-display/derived.tsx +40 -0
- package/apps/main/src/components/data-display/group-single.tsx +57 -0
- package/apps/main/src/components/data-display/group-table.tsx +165 -0
- package/apps/main/src/components/data-display/group-wrapper.tsx +54 -0
- package/apps/main/src/components/data-display/item.tsx +678 -0
- package/apps/main/src/components/error.tsx +45 -0
- package/apps/main/src/components/forms/error.tsx +22 -0
- package/apps/main/src/components/grid.tsx +7 -0
- package/apps/main/src/components/header/container.tsx +73 -0
- package/apps/main/src/components/header/header-bar.tsx +102 -0
- package/apps/main/src/components/modals/copy-display.tsx +37 -0
- package/apps/main/src/components/modals/copy-form.tsx +152 -0
- package/apps/main/src/components/modals/duplicate-workflow.tsx +89 -0
- package/apps/main/src/components/modals/field-correction.tsx +323 -0
- package/apps/main/src/components/modals/form-viewer.tsx +126 -0
- package/apps/main/src/components/modals/modals.tsx +44 -0
- package/apps/main/src/components/modals/new-deal.tsx +78 -0
- package/apps/main/src/components/modals/new-form.tsx +133 -0
- package/apps/main/src/components/modals/new-pipeline.tsx +70 -0
- package/apps/main/src/components/modals/new-submission.tsx +321 -0
- package/apps/main/src/components/modals/new-workflow.tsx +342 -0
- package/apps/main/src/components/modals/transformation-sources-modal.tsx +157 -0
- package/apps/main/src/components/modals/view-report.tsx +193 -0
- package/apps/main/src/components/not-found.tsx +14 -0
- package/apps/main/src/components/search/search-bar.tsx +178 -0
- package/apps/main/src/components/sheet-selector.tsx +135 -0
- package/apps/main/src/components/side-panel/doc-list.tsx +480 -0
- package/apps/main/src/components/sidebar/admin-sidebar.tsx +75 -0
- package/apps/main/src/components/sidebar/app-sidebar.tsx +417 -0
- package/apps/main/src/components/sidebar/model-select.tsx +134 -0
- package/apps/main/src/components/sidebar/settings-sidebar.tsx +132 -0
- package/apps/main/src/components/sidebar/sidebar-right.tsx +22 -0
- package/apps/main/src/components/sidebar/stop-impersonate.tsx +21 -0
- package/apps/main/src/components/svg/loading.tsx +33 -0
- package/apps/main/src/components/theme-selector.tsx +43 -0
- package/apps/main/src/components/unsaved-badge.tsx +19 -0
- package/apps/main/src/components/upload/file-upload.tsx +354 -0
- package/apps/main/src/fns/submission-groups.ts +28 -0
- package/apps/main/src/fns/submission-items.ts +11 -0
- package/apps/main/src/global-middleware.ts +16 -0
- package/apps/main/src/hooks/use-update-state.ts +18 -0
- package/apps/main/src/lib/auth-client.ts +16 -0
- package/apps/main/src/lib/auth.test.ts +359 -0
- package/apps/main/src/lib/auth.ts +144 -0
- package/apps/main/src/lib/billing.ts +23 -0
- package/apps/main/src/lib/config-iso.ts +76 -0
- package/apps/main/src/lib/config.ts +61 -0
- package/apps/main/src/lib/excel.ts +16 -0
- package/apps/main/src/lib/feedback-cache.ts +70 -0
- package/apps/main/src/lib/logger.ts +44 -0
- package/apps/main/src/lib/models.ts +22 -0
- package/apps/main/src/lib/not-found.ts +17 -0
- package/apps/main/src/lib/pdf.ts +16 -0
- package/apps/main/src/lib/tabularize.ts +54 -0
- package/apps/main/src/lib/utils.ts +10 -0
- package/apps/main/src/lib/zfd.ts +217 -0
- package/apps/main/src/middleware.ts +55 -0
- package/apps/main/src/routeTree.gen.ts +1255 -0
- package/apps/main/src/router.tsx +24 -0
- package/apps/main/src/routes/__root.tsx +92 -0
- package/apps/main/src/routes/_authed/_app/(dashboard)/index.tsx +227 -0
- package/apps/main/src/routes/_authed/_app/agents/$agentId/config.tsx +224 -0
- package/apps/main/src/routes/_authed/_app/agents/$agentId/index.tsx +206 -0
- package/apps/main/src/routes/_authed/_app/agents/-components/agent-actions-menu.tsx +94 -0
- package/apps/main/src/routes/_authed/_app/agents/-components/agent-artifacts.tsx +153 -0
- package/apps/main/src/routes/_authed/_app/agents/-components/agent-chat.tsx +220 -0
- package/apps/main/src/routes/_authed/_app/agents/-components/agent-history-menu.tsx +81 -0
- package/apps/main/src/routes/_authed/_app/agents/-components/agent-model-select.tsx +84 -0
- package/apps/main/src/routes/_authed/_app/agents/-components/agent-relevant-items.tsx +226 -0
- package/apps/main/src/routes/_authed/_app/agents/-components/agent-upload-button.tsx +298 -0
- package/apps/main/src/routes/_authed/_app/agents/-components/context-modal.tsx +187 -0
- package/apps/main/src/routes/_authed/_app/agents/-fns.ts +560 -0
- package/apps/main/src/routes/_authed/_app/agents/index.tsx +65 -0
- package/apps/main/src/routes/_authed/_app/deals/$dealId/$subId/-components/citation-tree.tsx +268 -0
- package/apps/main/src/routes/_authed/_app/deals/$dealId/$subId.tsx +655 -0
- package/apps/main/src/routes/_authed/_app/deals/$dealId/-components/doc-loading.tsx +37 -0
- package/apps/main/src/routes/_authed/_app/deals/$dealId/-components/share-link.tsx +42 -0
- package/apps/main/src/routes/_authed/_app/deals/$dealId/-components/submission-card.tsx +89 -0
- package/apps/main/src/routes/_authed/_app/deals/$dealId/-components/submission-filter.tsx +193 -0
- package/apps/main/src/routes/_authed/_app/deals/$dealId/-components/submissions.tsx +36 -0
- package/apps/main/src/routes/_authed/_app/deals/$dealId/-components/summary.tsx +82 -0
- package/apps/main/src/routes/_authed/_app/deals/$dealId/-components/upload-doc.tsx +120 -0
- package/apps/main/src/routes/_authed/_app/deals/$dealId/-fns.ts +653 -0
- package/apps/main/src/routes/_authed/_app/deals/$dealId/index.tsx +259 -0
- package/apps/main/src/routes/_authed/_app/deals/$dealId/route.tsx +29 -0
- package/apps/main/src/routes/_authed/_app/deals/index.tsx +104 -0
- package/apps/main/src/routes/_authed/_app/feedback/index.tsx +639 -0
- package/apps/main/src/routes/_authed/_app/feedback/insights.tsx +250 -0
- package/apps/main/src/routes/_authed/_app/pipelines/$pipelineId/$runId/-components/blockers-panel.tsx +260 -0
- package/apps/main/src/routes/_authed/_app/pipelines/$pipelineId/$runId/-components/manual-input-panel.tsx +301 -0
- package/apps/main/src/routes/_authed/_app/pipelines/$pipelineId/$runId/-components/submission-selector-modal.tsx +143 -0
- package/apps/main/src/routes/_authed/_app/pipelines/$pipelineId/$runId/-components/upload-doc.tsx +120 -0
- package/apps/main/src/routes/_authed/_app/pipelines/$pipelineId/$runId/index.tsx +1485 -0
- package/apps/main/src/routes/_authed/_app/pipelines/$pipelineId/-components/dag-view.tsx +296 -0
- package/apps/main/src/routes/_authed/_app/pipelines/$pipelineId/-components/step-config-modal.tsx +634 -0
- package/apps/main/src/routes/_authed/_app/pipelines/$pipelineId/index.tsx +911 -0
- package/apps/main/src/routes/_authed/_app/pipelines/-fns.ts +510 -0
- package/apps/main/src/routes/_authed/_app/pipelines/index.tsx +103 -0
- package/apps/main/src/routes/_authed/_app/reports/$reportId.tsx +397 -0
- package/apps/main/src/routes/_authed/_app/reports/-fns.ts +11 -0
- package/apps/main/src/routes/_authed/_app/reports/index.tsx +22 -0
- package/apps/main/src/routes/_authed/_app/route.tsx +48 -0
- package/apps/main/src/routes/_authed/_app/submissions/-columns.tsx +161 -0
- package/apps/main/src/routes/_authed/_app/submissions/-fns.ts +128 -0
- package/apps/main/src/routes/_authed/_app/submissions/index.tsx +190 -0
- package/apps/main/src/routes/_authed/_app/workflows/$wfSlug/$formId.tsx +542 -0
- package/apps/main/src/routes/_authed/_app/workflows/$wfSlug/-components/derived.tsx +154 -0
- package/apps/main/src/routes/_authed/_app/workflows/$wfSlug/-components/field.tsx +369 -0
- package/apps/main/src/routes/_authed/_app/workflows/$wfSlug/-components/group.tsx +475 -0
- package/apps/main/src/routes/_authed/_app/workflows/$wfSlug/index.tsx +263 -0
- package/apps/main/src/routes/_authed/_app/workflows/$wfSlug/route.tsx +33 -0
- package/apps/main/src/routes/_authed/_app/workflows/-components/form-card.tsx +315 -0
- package/apps/main/src/routes/_authed/_app/workflows/index.tsx +86 -0
- package/apps/main/src/routes/_authed/admin/index.tsx +12 -0
- package/apps/main/src/routes/_authed/admin/route.tsx +42 -0
- package/apps/main/src/routes/_authed/admin/users/-columns.tsx +124 -0
- package/apps/main/src/routes/_authed/admin/users/-fns.ts +30 -0
- package/apps/main/src/routes/_authed/admin/users/index.tsx +29 -0
- package/apps/main/src/routes/_authed/catchNotFound.tsx +114 -0
- package/apps/main/src/routes/_authed/redirects/forms.$id.tsx +29 -0
- package/apps/main/src/routes/_authed/redirects/submissions.$id.tsx +27 -0
- package/apps/main/src/routes/_authed/redirects/workflows.$id.tsx +27 -0
- package/apps/main/src/routes/_authed/route.tsx +51 -0
- package/apps/main/src/routes/_authed/settings/-components/new-api-key.tsx +85 -0
- package/apps/main/src/routes/_authed/settings/-components/new-invite.tsx +100 -0
- package/apps/main/src/routes/_authed/settings/analytics.tsx +1710 -0
- package/apps/main/src/routes/_authed/settings/billing/-components/price-table.tsx +129 -0
- package/apps/main/src/routes/_authed/settings/billing/-fns.ts +76 -0
- package/apps/main/src/routes/_authed/settings/billing/index.tsx +119 -0
- package/apps/main/src/routes/_authed/settings/embed.tsx +337 -0
- package/apps/main/src/routes/_authed/settings/index.tsx +12 -0
- package/apps/main/src/routes/_authed/settings/keys.tsx +157 -0
- package/apps/main/src/routes/_authed/settings/members.tsx +276 -0
- package/apps/main/src/routes/_authed/settings/route.tsx +22 -0
- package/apps/main/src/routes/_authed/settings/user.tsx +87 -0
- package/apps/main/src/routes/_authed/settings/workspace.tsx +206 -0
- package/apps/main/src/routes/_public/-components/sign-in-up.tsx +96 -0
- package/apps/main/src/routes/_public/embedded.tsx +57 -0
- package/apps/main/src/routes/_public/invite.$inviteId.tsx +143 -0
- package/apps/main/src/routes/_public/no-access.tsx +38 -0
- package/apps/main/src/routes/_public/no-invite.tsx +39 -0
- package/apps/main/src/routes/_public/otp.tsx +103 -0
- package/apps/main/src/routes/_public/route.tsx +15 -0
- package/apps/main/src/routes/_public/sign-in.tsx +111 -0
- package/apps/main/src/routes/_public/sign-up.tsx +114 -0
- package/apps/main/src/routes/api/auth/$.ts +11 -0
- package/apps/main/src/routes/api/billing/paid.ts +42 -0
- package/apps/main/src/routes/api/billing/webhooks.ts +70 -0
- package/apps/main/src/routes/api/chat/agent.ts +40 -0
- package/apps/main/src/routes/api/chat/key.ts +42 -0
- package/apps/main/src/routes/api/chat/member.ts +35 -0
- package/apps/main/src/routes/api/test/index.ts +19 -0
- package/apps/main/src/server.tsx +6 -0
- package/apps/main/src/styles/app.css +23 -0
- package/apps/main/src/vite-env.d.ts +7 -0
- package/apps/main/test.http +6 -0
- package/apps/main/tsconfig.json +17 -0
- package/apps/main/vite.config.ts +24 -0
- package/apps/main/vitest.config.js +17 -0
- package/apps/mcp/README.md +171 -0
- package/apps/mcp/eslint.config.mjs +3 -0
- package/apps/mcp/package.json +37 -0
- package/apps/mcp/src/index.ts +414 -0
- package/apps/mcp/tsconfig.json +19 -0
- package/apps/mcp/vite.config.ts +22 -0
- package/apps/posthog-proxy/index.html +9 -0
- package/apps/workers/.prettierignore +7 -0
- package/apps/workers/.prettierrc.js +3 -0
- package/apps/workers/dotenvx-safe.sh +11 -0
- package/apps/workers/eslint.config.mjs +3 -0
- package/apps/workers/package.json +65 -0
- package/apps/workers/src/lib/config.ts +7 -0
- package/apps/workers/src/lib/messages.ts +0 -0
- package/apps/workers/src/lib/posthog.ts +25 -0
- package/apps/workers/src/main.ts +58 -0
- package/apps/workers/src/workflows/extraction.ts +866 -0
- package/apps/workers/src/workflows/index.ts +3 -0
- package/apps/workers/src/workflows/pipeline-dag.ts +210 -0
- package/apps/workers/src/workflows/pipeline-steps.ts +1393 -0
- package/apps/workers/tsconfig.json +16 -0
- package/apps/workers/vite.config.ts +35 -0
- package/docs/CHANGELOG.md +84 -0
- package/docs/agent-templates-and-runs.md +859 -0
- package/docs/aws-migration-plan.md +267 -0
- package/docs/impl-p0-form-builder-improvements.md +683 -0
- package/docs/on-prem-deployment-spec.docx +0 -0
- package/docs/on-prem-deployment-spec.md +378 -0
- package/docs/prd-form-builder-strategy.md +1120 -0
- package/docs/widget-ng-apf-packaging-spec.md +43 -0
- package/infra/k8s/charts/seadotdev/Chart.yaml +6 -0
- package/infra/k8s/charts/seadotdev/templates/_helpers.tpl +27 -0
- package/infra/k8s/charts/seadotdev/templates/api-v2.yaml +105 -0
- package/infra/k8s/charts/seadotdev/templates/external-secrets.yaml +83 -0
- package/infra/k8s/charts/seadotdev/templates/ingress.yaml +54 -0
- package/infra/k8s/charts/seadotdev/templates/main-app.yaml +104 -0
- package/infra/k8s/charts/seadotdev/templates/workers.yaml +182 -0
- package/infra/k8s/charts/seadotdev/values.yaml +143 -0
- package/infra/terraform/main.tf +399 -0
- package/libs/ai/.prettierignore +2 -0
- package/libs/ai/.prettierrc.js +5 -0
- package/libs/ai/README.md +139 -0
- package/libs/ai/eslint.config.mjs +3 -0
- package/libs/ai/package.json +42 -0
- package/libs/ai/src/index.ts +5 -0
- package/libs/ai/src/models.ts +19 -0
- package/libs/ai/src/rag/index.ts +1 -0
- package/libs/ai/src/rag/rag.test.ts +99 -0
- package/libs/ai/src/rag/rag.ts +510 -0
- package/libs/ai/tsconfig.json +21 -0
- package/libs/ai/vite.config.ts +38 -0
- package/libs/cache/.prettierignore +2 -0
- package/libs/cache/eslint.config.mjs +3 -0
- package/libs/cache/package.json +35 -0
- package/libs/cache/src/feedback.ts +77 -0
- package/libs/cache/src/index.ts +2 -0
- package/libs/cache/tsconfig.json +19 -0
- package/libs/cache/vite.config.ts +36 -0
- package/libs/clients/.prettierignore +6 -0
- package/libs/clients/eslint.config.mjs +3 -0
- package/libs/clients/package.json +59 -0
- package/libs/clients/src/azure.ts +249 -0
- package/libs/clients/src/gcp.ts +220 -0
- package/libs/clients/src/hatchet.ts +86 -0
- package/libs/clients/src/index.ts +8 -0
- package/libs/clients/src/loops.ts +86 -0
- package/libs/clients/src/polar.ts +77 -0
- package/libs/clients/src/posthog.ts +55 -0
- package/libs/clients/tsconfig.json +19 -0
- package/libs/clients/vite.config.ts +35 -0
- package/libs/config/.prettierignore +6 -0
- package/libs/config/.prettierrc.js +12 -0
- package/libs/config/eslint.config.mjs +3 -0
- package/libs/config/package.json +50 -0
- package/libs/config/src/azure.ts +54 -0
- package/libs/config/src/db.ts +18 -0
- package/libs/config/src/gcp.ts +53 -0
- package/libs/config/src/google.ts +17 -0
- package/libs/config/src/hatchet.ts +20 -0
- package/libs/config/src/index.ts +108 -0
- package/libs/config/src/llm.ts +17 -0
- package/libs/config/src/polar.ts +24 -0
- package/libs/config/src/util.ts +8 -0
- package/libs/config/src/vercel.ts +26 -0
- package/libs/config/tsconfig.json +19 -0
- package/libs/config/vite.config.ts +34 -0
- package/libs/core/.prettierignore +2 -0
- package/libs/core/eslint.config.mjs +3 -0
- package/libs/core/package.json +59 -0
- package/libs/core/src/chat/derived.ts +97 -0
- package/libs/core/src/chat/feedback.ts +293 -0
- package/libs/core/src/chat/index.ts +6 -0
- package/libs/core/src/chat/model.ts +92 -0
- package/libs/core/src/chat/prepare-tools.ts +286 -0
- package/libs/core/src/chat/prompts.ts +623 -0
- package/libs/core/src/chat/stream.ts +311 -0
- package/libs/core/src/chat/summarize.ts +168 -0
- package/libs/core/src/chat/tools/agent.ts +403 -0
- package/libs/core/src/chat/tools/chart-agent.ts +526 -0
- package/libs/core/src/chat/tools/chart-helpers/sandbox.ts +47 -0
- package/libs/core/src/chat/tools/chart.ts +86 -0
- package/libs/core/src/chat/tools/credit-agent.ts +1383 -0
- package/libs/core/src/chat/tools/credit.ts +1435 -0
- package/libs/core/src/chat/tools/deep-dive-agent.ts +100 -0
- package/libs/core/src/chat/tools/deep-dive.ts +141 -0
- package/libs/core/src/chat/tools/form.ts +449 -0
- package/libs/core/src/chat/tools/helpers.ts +91 -0
- package/libs/core/src/chat/tools/index.ts +42 -0
- package/libs/core/src/chat/tools/pipeline-artifact.ts +76 -0
- package/libs/core/src/chat/tools/report.ts +40 -0
- package/libs/core/src/chat/tools/search.ts +390 -0
- package/libs/core/src/chat/tools/submission.ts +227 -0
- package/libs/core/src/chat/tools/workflow.ts +684 -0
- package/libs/core/src/chat/types.ts +3 -0
- package/libs/core/src/data-extraction/classification/azure.ts +168 -0
- package/libs/core/src/data-extraction/classification/index.ts +1 -0
- package/libs/core/src/data-extraction/dal.ts +246 -0
- package/libs/core/src/data-extraction/form-structure-extractor.ts +294 -0
- package/libs/core/src/data-extraction/index.ts +4 -0
- package/libs/core/src/data-extraction/layout/azure.ts +730 -0
- package/libs/core/src/data-extraction/layout/excel.ts +180 -0
- package/libs/core/src/data-extraction/layout/gcp.ts +1071 -0
- package/libs/core/src/data-extraction/layout/index.ts +266 -0
- package/libs/core/src/data-extraction/layout/plaintext.ts +45 -0
- package/libs/core/src/data-extraction/models.ts +38 -0
- package/libs/core/src/data-extraction/pdf-utils.ts +96 -0
- package/libs/core/src/data-extraction/structuring/bank-statement.ts +1182 -0
- package/libs/core/src/data-extraction/structuring/custom.ts +495 -0
- package/libs/core/src/data-extraction/structuring/index.ts +290 -0
- package/libs/core/src/data-extraction/structuring/prompts.ts +69 -0
- package/libs/core/src/data-extraction/type-guards.ts +110 -0
- package/libs/core/src/data-extraction/types.ts +84 -0
- package/libs/core/src/data-extraction/utils.ts +31 -0
- package/libs/core/src/data-extraction/validation/bank-statement.ts +127 -0
- package/libs/core/src/deals.ts +17 -0
- package/libs/core/src/documents.ts +152 -0
- package/libs/core/src/index.ts +5 -0
- package/libs/core/src/pipelines/display.ts +678 -0
- package/libs/core/src/pipelines/execute.ts +2342 -0
- package/libs/core/src/pipelines/index.ts +4 -0
- package/libs/core/src/pipelines/list.ts +12 -0
- package/libs/core/src/pipelines/runs.ts +53 -0
- package/libs/core/tsconfig.json +20 -0
- package/libs/core/vite.config.ts +56 -0
- package/libs/dal/.prettierignore +6 -0
- package/libs/dal/.prettierrc.js +12 -0
- package/libs/dal/eslint.config.mjs +3 -0
- package/libs/dal/package.json +57 -0
- package/libs/dal/src/_tests/db.test.ts +19 -0
- package/libs/dal/src/_tests/mock-db.ts +60 -0
- package/libs/dal/src/api-key.test.ts +397 -0
- package/libs/dal/src/api-key.ts +110 -0
- package/libs/dal/src/billing.ts +23 -0
- package/libs/dal/src/conversation.test.ts +655 -0
- package/libs/dal/src/conversation.ts +532 -0
- package/libs/dal/src/deal.test.ts +45 -0
- package/libs/dal/src/deal.ts +87 -0
- package/libs/dal/src/defaults-consumer-lending-uk.ts +33 -0
- package/libs/dal/src/defaults-consumer-lending-us.ts +33 -0
- package/libs/dal/src/defaults-private-credit.ts +57 -0
- package/libs/dal/src/defaults-private-equity.ts +51 -0
- package/libs/dal/src/defaults-smb-lending-us.ts +1569 -0
- package/libs/dal/src/defaults-sme-lending-uk-express.ts +1527 -0
- package/libs/dal/src/defaults-sme-lending-uk.ts +1669 -0
- package/libs/dal/src/defaults-types.ts +23 -0
- package/libs/dal/src/defaults.ts +550 -0
- package/libs/dal/src/document.test.ts +70 -0
- package/libs/dal/src/document.ts +192 -0
- package/libs/dal/src/feedback.ts +255 -0
- package/libs/dal/src/form.test.ts +637 -0
- package/libs/dal/src/form.ts +1165 -0
- package/libs/dal/src/index.ts +20 -0
- package/libs/dal/src/invitation.test.ts +746 -0
- package/libs/dal/src/invitation.ts +207 -0
- package/libs/dal/src/member.test.ts +185 -0
- package/libs/dal/src/member.ts +80 -0
- package/libs/dal/src/organization.ts +116 -0
- package/libs/dal/src/permission.ts +25 -0
- package/libs/dal/src/pipeline.test.ts +388 -0
- package/libs/dal/src/pipeline.ts +4222 -0
- package/libs/dal/src/report.ts +199 -0
- package/libs/dal/src/result.ts +16 -0
- package/libs/dal/src/search.ts +172 -0
- package/libs/dal/src/session.test.ts +110 -0
- package/libs/dal/src/session.ts +31 -0
- package/libs/dal/src/submission.test.ts +1304 -0
- package/libs/dal/src/submission.ts +1396 -0
- package/libs/dal/src/tool.ts +159 -0
- package/libs/dal/src/user.ts +16 -0
- package/libs/dal/src/workflow.test.ts +89 -0
- package/libs/dal/src/workflow.ts +262 -0
- package/libs/dal/tsconfig.build.json +4 -0
- package/libs/dal/tsconfig.json +22 -0
- package/libs/dal/vite.config.ts +34 -0
- package/libs/db/.prettierignore +6 -0
- package/libs/db/.prettierrc.js +12 -0
- package/libs/db/eslint.config.mjs +3 -0
- package/libs/db/package.json +52 -0
- package/libs/db/src/index.ts +24 -0
- package/libs/db/src/relations.ts +549 -0
- package/libs/db/src/schema.ts +2 -0
- package/libs/db/src/schemas/api.ts +35 -0
- package/libs/db/src/schemas/conversations.ts +175 -0
- package/libs/db/src/schemas/core.ts +359 -0
- package/libs/db/src/schemas/documents.ts +181 -0
- package/libs/db/src/schemas/feedback.ts +40 -0
- package/libs/db/src/schemas/index.ts +26 -0
- package/libs/db/src/schemas/organisations.ts +97 -0
- package/libs/db/src/schemas/pipelines.ts +440 -0
- package/libs/db/src/schemas/users.ts +95 -0
- package/libs/db/src/types.ts +190 -0
- package/libs/db/src/utils.ts +14 -0
- package/libs/db/tsconfig.json +19 -0
- package/libs/db/vite.config.ts +31 -0
- package/libs/lint/.prettierignore +6 -0
- package/libs/lint/eslint.config.mjs +61 -0
- package/libs/lint/package.json +29 -0
- package/libs/lint/prettier.config.js +12 -0
- package/libs/schemas/.prettierignore +6 -0
- package/libs/schemas/.prettierrc.js +12 -0
- package/libs/schemas/README.md +15 -0
- package/libs/schemas/eslint.config.mjs +3 -0
- package/libs/schemas/package.json +67 -0
- package/libs/schemas/src/core/chat.ts +67 -0
- package/libs/schemas/src/core/core-result.ts +15 -0
- package/libs/schemas/src/core/data-extraction.ts +184 -0
- package/libs/schemas/src/core/layout.ts +478 -0
- package/libs/schemas/src/core/pipeline.ts +128 -0
- package/libs/schemas/src/core/submission.ts +97 -0
- package/libs/schemas/src/db/account.ts +57 -0
- package/libs/schemas/src/db/apiKey.ts +57 -0
- package/libs/schemas/src/db/context.ts +33 -0
- package/libs/schemas/src/db/conversation.ts +65 -0
- package/libs/schemas/src/db/deal.ts +42 -0
- package/libs/schemas/src/db/document.ts +103 -0
- package/libs/schemas/src/db/documentCitation.ts +58 -0
- package/libs/schemas/src/db/documentExtraction.ts +69 -0
- package/libs/schemas/src/db/fieldCorrection.ts +85 -0
- package/libs/schemas/src/db/form.ts +45 -0
- package/libs/schemas/src/db/formField.ts +59 -0
- package/libs/schemas/src/db/formGroup.ts +42 -0
- package/libs/schemas/src/db/impersonation.ts +39 -0
- package/libs/schemas/src/db/index.ts +25 -0
- package/libs/schemas/src/db/invitation.ts +42 -0
- package/libs/schemas/src/db/member.ts +36 -0
- package/libs/schemas/src/db/message.ts +58 -0
- package/libs/schemas/src/db/organization.ts +62 -0
- package/libs/schemas/src/db/session.ts +48 -0
- package/libs/schemas/src/db/submission.ts +54 -0
- package/libs/schemas/src/db/submissionGroup.ts +36 -0
- package/libs/schemas/src/db/submissionItem.ts +33 -0
- package/libs/schemas/src/db/submissionItemVersion.ts +70 -0
- package/libs/schemas/src/db/user.ts +51 -0
- package/libs/schemas/src/db/utils.ts +3 -0
- package/libs/schemas/src/db/verification.ts +36 -0
- package/libs/schemas/src/db/workflow.ts +42 -0
- package/libs/schemas/src/index.ts +10 -0
- package/libs/schemas/tsconfig.json +21 -0
- package/libs/schemas/vite.config.ts +38 -0
- package/libs/ui/.prettierignore +6 -0
- package/libs/ui/.prettierrc.js +12 -0
- package/libs/ui/components.json +24 -0
- package/libs/ui/eslint.config.mjs +3 -0
- package/libs/ui/package.json +142 -0
- package/libs/ui/src/components/chart-viz/chart.tsx +255 -0
- package/libs/ui/src/components/chart-viz/converters.ts +474 -0
- package/libs/ui/src/components/chart-viz/dashboard.tsx +146 -0
- package/libs/ui/src/components/chart-viz/index.ts +37 -0
- package/libs/ui/src/components/chart-viz/markdown.tsx +344 -0
- package/libs/ui/src/components/chart-viz/table.tsx +446 -0
- package/libs/ui/src/components/chart-viz/theme-context.tsx +70 -0
- package/libs/ui/src/components/chart-viz/themes/dark.ts +98 -0
- package/libs/ui/src/components/chart-viz/themes/index.ts +69 -0
- package/libs/ui/src/components/chart-viz/themes/light.ts +98 -0
- package/libs/ui/src/components/chart-viz/themes/tailwind.ts +326 -0
- package/libs/ui/src/components/chart-viz/themes/types.ts +99 -0
- package/libs/ui/src/components/chart-viz/tool-display.tsx +150 -0
- package/libs/ui/src/components/chart-viz/types.ts +95 -0
- package/libs/ui/src/components/doc-viewers/excel/index.tsx +431 -0
- package/libs/ui/src/components/doc-viewers/excel/themes.ts +160 -0
- package/libs/ui/src/components/doc-viewers/image/index.tsx +410 -0
- package/libs/ui/src/components/doc-viewers/pdf/index.tsx +258 -0
- package/libs/ui/src/components/doc-viewers/pdf/virtualized-pdf.tsx +556 -0
- package/libs/ui/src/components/misc/rel-date.tsx +52 -0
- package/libs/ui/src/components/misc/styled-link.tsx +2 -0
- package/libs/ui/src/components/table/data-table.tsx +546 -0
- package/libs/ui/src/components/table/report-table.tsx +305 -0
- package/libs/ui/src/components/table/sortable-column.tsx +34 -0
- package/libs/ui/src/components/ui/accordion.tsx +62 -0
- package/libs/ui/src/components/ui/alert-dialog.tsx +142 -0
- package/libs/ui/src/components/ui/alert.tsx +62 -0
- package/libs/ui/src/components/ui/artifact.tsx +118 -0
- package/libs/ui/src/components/ui/attachments.tsx +388 -0
- package/libs/ui/src/components/ui/avatar.tsx +39 -0
- package/libs/ui/src/components/ui/badge.tsx +43 -0
- package/libs/ui/src/components/ui/breadcrumb.tsx +102 -0
- package/libs/ui/src/components/ui/button-group.tsx +78 -0
- package/libs/ui/src/components/ui/button.tsx +79 -0
- package/libs/ui/src/components/ui/card.tsx +32 -0
- package/libs/ui/src/components/ui/carousel.tsx +228 -0
- package/libs/ui/src/components/ui/chain-of-thought.tsx +198 -0
- package/libs/ui/src/components/ui/checkbox.tsx +27 -0
- package/libs/ui/src/components/ui/citation.tsx +34 -0
- package/libs/ui/src/components/ui/code-block.tsx +500 -0
- package/libs/ui/src/components/ui/collapsible.tsx +19 -0
- package/libs/ui/src/components/ui/command.tsx +161 -0
- package/libs/ui/src/components/ui/conversation.tsx +90 -0
- package/libs/ui/src/components/ui/dialog.tsx +142 -0
- package/libs/ui/src/components/ui/dropdown-menu.tsx +246 -0
- package/libs/ui/src/components/ui/highlight.tsx +3 -0
- package/libs/ui/src/components/ui/hover-card.tsx +36 -0
- package/libs/ui/src/components/ui/inline-citation.tsx +251 -0
- package/libs/ui/src/components/ui/input-group.tsx +156 -0
- package/libs/ui/src/components/ui/input-otp.tsx +78 -0
- package/libs/ui/src/components/ui/input.tsx +21 -0
- package/libs/ui/src/components/ui/label.tsx +19 -0
- package/libs/ui/src/components/ui/model-selector.tsx +174 -0
- package/libs/ui/src/components/ui/multisidebar.tsx +750 -0
- package/libs/ui/src/components/ui/popover.tsx +43 -0
- package/libs/ui/src/components/ui/progress.tsx +28 -0
- package/libs/ui/src/components/ui/reasoning.tsx +178 -0
- package/libs/ui/src/components/ui/resizable.tsx +49 -0
- package/libs/ui/src/components/ui/scroll-area.tsx +54 -0
- package/libs/ui/src/components/ui/select.tsx +171 -0
- package/libs/ui/src/components/ui/separator.tsx +26 -0
- package/libs/ui/src/components/ui/sheet.tsx +128 -0
- package/libs/ui/src/components/ui/shimmer.tsx +53 -0
- package/libs/ui/src/components/ui/skeleton.tsx +13 -0
- package/libs/ui/src/components/ui/sonner.tsx +23 -0
- package/libs/ui/src/components/ui/switch.tsx +26 -0
- package/libs/ui/src/components/ui/table.tsx +96 -0
- package/libs/ui/src/components/ui/tabs.tsx +52 -0
- package/libs/ui/src/components/ui/textarea.tsx +41 -0
- package/libs/ui/src/components/ui/tool.tsx +209 -0
- package/libs/ui/src/components/ui/tooltip.tsx +58 -0
- package/libs/ui/src/components/ui/typography.tsx +113 -0
- package/libs/ui/src/fonts/manrope-v15-latin-300.woff2 +0 -0
- package/libs/ui/src/fonts/manrope-v15-latin-400.woff2 +0 -0
- package/libs/ui/src/fonts/manrope-v15-latin-500.woff2 +0 -0
- package/libs/ui/src/fonts/manrope-v15-latin-600.woff2 +0 -0
- package/libs/ui/src/hooks/use-mobile.ts +19 -0
- package/libs/ui/src/lib/utils.ts +6 -0
- package/libs/ui/src/styles/fonts.css +35 -0
- package/libs/ui/src/styles/style.css +218 -0
- package/libs/ui/tsconfig.json +21 -0
- package/libs/ui/vite.config.ts +80 -0
- package/libs/ui-lit/README.md +245 -0
- package/libs/ui-lit/TESTING_GUIDE.md +296 -0
- package/libs/ui-lit/eslint.config.mjs +3 -0
- package/libs/ui-lit/package.json +41 -0
- package/libs/ui-lit/scripts/build-css.js +43 -0
- package/libs/ui-lit/src/components/sea-alert.ts +132 -0
- package/libs/ui-lit/src/components/sea-button.ts +95 -0
- package/libs/ui-lit/src/components/sea-card.ts +113 -0
- package/libs/ui-lit/src/components/sea-input.ts +184 -0
- package/libs/ui-lit/src/components/sea-spinner.ts +65 -0
- package/libs/ui-lit/src/index.ts +15 -0
- package/libs/ui-lit/src/lib/utils.ts +6 -0
- package/libs/ui-lit/src/styles/tailwind.css +76 -0
- package/libs/ui-lit/src/theme.css +66 -0
- package/libs/ui-lit/src/theme.ts +79 -0
- package/libs/ui-lit/src/vite-env.d.ts +6 -0
- package/libs/ui-lit/tailwind.config.ts +50 -0
- package/libs/ui-lit/test.html +289 -0
- package/libs/ui-lit/tsconfig.json +23 -0
- package/libs/ui-lit/vite.config.ts +31 -0
- package/libs/ui-lit/vite.css.config.ts +20 -0
- package/libs/util/.prettierignore +6 -0
- package/libs/util/.prettierrc.js +12 -0
- package/libs/util/eslint.config.mjs +3 -0
- package/libs/util/package.json +45 -0
- package/libs/util/src/billing.ts +10 -0
- package/libs/util/src/data-transform.ts +19 -0
- package/libs/util/src/encryption.ts +45 -0
- package/libs/util/src/fmt.test.ts +9 -0
- package/libs/util/src/fmt.ts +71 -0
- package/libs/util/src/fuzzy.ts +47 -0
- package/libs/util/src/id.ts +24 -0
- package/libs/util/src/invariant.ts +31 -0
- package/libs/util/src/sub-name.ts +7 -0
- package/libs/util/tsconfig.json +19 -0
- package/libs/util/vite.config.ts +34 -0
- package/package.json +28 -0
- package/packages/widget/.prettierignore +6 -0
- package/packages/widget/.prettierrc.js +12 -0
- package/packages/widget/README.md +95 -0
- package/packages/widget/eslint.config.mjs +11 -0
- package/packages/widget/openapi-ts.config.ts +8 -0
- package/packages/widget/package.json +89 -0
- package/packages/widget/postcss.config.mjs +10 -0
- package/packages/widget/src/clients/api/client/client.ts +187 -0
- package/packages/widget/src/clients/api/client/index.ts +22 -0
- package/packages/widget/src/clients/api/client/types.ts +192 -0
- package/packages/widget/src/clients/api/client/utils.ts +394 -0
- package/packages/widget/src/clients/api/client.gen.ts +18 -0
- package/packages/widget/src/clients/api/core/auth.ts +39 -0
- package/packages/widget/src/clients/api/core/bodySerializer.ts +74 -0
- package/packages/widget/src/clients/api/core/params.ts +132 -0
- package/packages/widget/src/clients/api/core/pathSerializer.ts +169 -0
- package/packages/widget/src/clients/api/core/types.ts +80 -0
- package/packages/widget/src/clients/api/index.ts +3 -0
- package/packages/widget/src/clients/api/sdk.gen.ts +805 -0
- package/packages/widget/src/clients/api/types.gen.ts +2085 -0
- package/packages/widget/src/components/container.tsx +42 -0
- package/packages/widget/src/components/data-display.tsx +384 -0
- package/packages/widget/src/components/data-viewer.tsx +311 -0
- package/packages/widget/src/components/doc-list.tsx +102 -0
- package/packages/widget/src/components/field-correction-modal.tsx +265 -0
- package/packages/widget/src/components/header.tsx +71 -0
- package/packages/widget/src/components/new-submission.tsx +290 -0
- package/packages/widget/src/components/sidebar-right.tsx +19 -0
- package/packages/widget/src/components/submission-card.tsx +66 -0
- package/packages/widget/src/components/submission-page.tsx +75 -0
- package/packages/widget/src/components/upload-doc.tsx +241 -0
- package/packages/widget/src/components/widget.tsx +101 -0
- package/packages/widget/src/index.tsx +167 -0
- package/packages/widget/src/lib/config.ts +2 -0
- package/packages/widget/src/lib/util.ts +40 -0
- package/packages/widget/src/styles/index.css +5 -0
- package/packages/widget/src/styles/tw-properties.css +337 -0
- package/packages/widget/src/vite-env.d.ts +3 -0
- package/packages/widget/tsconfig.app.json +35 -0
- package/packages/widget/tsconfig.json +4 -0
- package/packages/widget/tsconfig.node.json +24 -0
- package/packages/widget/vite.config.ts +116 -0
- package/packages/widget-lit/BOTTLENECKS.md +250 -0
- package/packages/widget-lit/IMPLEMENTATION_SUMMARY.md +295 -0
- package/packages/widget-lit/README.md +232 -0
- package/packages/widget-lit/eslint.config.mjs +3 -0
- package/packages/widget-lit/package.json +52 -0
- package/packages/widget-lit/src/api-client.ts +230 -0
- package/packages/widget-lit/src/api-client.ts.backup +218 -0
- package/packages/widget-lit/src/components/sea-chat.ts +382 -0
- package/packages/widget-lit/src/components/sea-submission-viewer.ts +267 -0
- package/packages/widget-lit/src/components/sea-widget.ts +317 -0
- package/packages/widget-lit/src/index.ts +48 -0
- package/packages/widget-lit/src/react.ts +58 -0
- package/packages/widget-lit/src/style.css +47 -0
- package/packages/widget-lit/tsconfig.json +24 -0
- package/packages/widget-lit/vite.config.ts +29 -0
- package/packages/widget-ng/DEVELOPMENT.md +74 -0
- package/packages/widget-ng/README.md +657 -0
- package/packages/widget-ng/dev.sh +14 -0
- package/packages/widget-ng/eslint.config.mjs +24 -0
- package/packages/widget-ng/ng-package.json +9 -0
- package/packages/widget-ng/package.json +85 -0
- package/packages/widget-ng/src/index.ts +45 -0
- package/packages/widget-ng/src/lib/components/sea-chat.component.ts +737 -0
- package/packages/widget-ng/src/lib/components/sea-data-viewer.component.ts +2240 -0
- package/packages/widget-ng/src/lib/components/sea-deal-form-modal.component.ts +702 -0
- package/packages/widget-ng/src/lib/components/sea-document-list.component.ts +350 -0
- package/packages/widget-ng/src/lib/components/sea-feedback-modal.component.ts +461 -0
- package/packages/widget-ng/src/lib/components/sea-file-upload.component.ts +655 -0
- package/packages/widget-ng/src/lib/components/sea-model-selection-modal.component.ts +367 -0
- package/packages/widget-ng/src/lib/components/sea-new-submission-modal.component.ts +414 -0
- package/packages/widget-ng/src/lib/components/sea-pdf-viewer.component.ts +869 -0
- package/packages/widget-ng/src/lib/components/sea-submission-card.component.ts +251 -0
- package/packages/widget-ng/src/lib/components/sea-widget.component.ts +684 -0
- package/packages/widget-ng/src/lib/models/submission.model.ts +170 -0
- package/packages/widget-ng/src/lib/pipes/markdown.pipe.ts +57 -0
- package/packages/widget-ng/src/lib/services/api-client.service.ts +715 -0
- package/packages/widget-ng/src/lib/services/chat.service.ts +330 -0
- package/packages/widget-ng/src/lib/services/config.service.ts +107 -0
- package/packages/widget-ng/src/web-component.ts +56 -0
- package/packages/widget-ng/tsconfig.json +25 -0
- package/packages/widget-ng/tsconfig.lib.json +9 -0
- package/packages/widget-ng/vite.config.elements.ts +26 -0
- package/packages/widget-ng/vitest.config.ts +19 -0
- package/packages/widget-ng/vitest.setup.ts +13 -0
- package/pnpm-workspace.yaml +18 -0
- package/render.yaml +136 -0
- package/scripts/README.md +57 -0
- package/scripts/package.json +22 -0
- package/scripts/python/.python-version +1 -0
- package/scripts/python/README.md +3 -0
- package/scripts/python/export-org-data.py +693 -0
- package/scripts/python/pyproject.toml +29 -0
- package/scripts/python/requirements-dev.lock +36 -0
- package/scripts/python/requirements.lock +36 -0
- package/scripts/python/src/gen.py +297 -0
- package/scripts/python/test.py +34 -0
- package/scripts/src/fix-storage-provider-mismatch.ts +239 -0
- package/scripts/src/sync-render-yaml.ts +290 -0
- package/scripts/src/test-chat-stream.ts +300 -0
- package/scripts/src/test-reconciliation.ts +230 -0
- package/scripts/tsconfig.json +15 -0
- package/tests/angular-test-app/.vscode/extensions.json +4 -0
- package/tests/angular-test-app/.vscode/launch.json +13 -0
- package/tests/angular-test-app/.vscode/tasks.json +24 -0
- package/tests/angular-test-app/README.md +59 -0
- package/tests/angular-test-app/angular.json +111 -0
- package/tests/angular-test-app/clean-start.sh +14 -0
- package/tests/angular-test-app/package.json +36 -0
- package/tests/angular-test-app/public/favicon.ico +0 -0
- package/tests/angular-test-app/src/app/app.component.ts +220 -0
- package/tests/angular-test-app/src/app/app.config.ts +5 -0
- package/tests/angular-test-app/src/env.d.ts +13 -0
- package/tests/angular-test-app/src/index.html +13 -0
- package/tests/angular-test-app/src/main.ts +6 -0
- package/tests/angular-test-app/src/styles.css +8 -0
- package/tests/angular-test-app/tsconfig.app.json +15 -0
- package/tests/angular-test-app/tsconfig.json +27 -0
- package/tests/crm-viewer-app/API_INTEGRATION_SUMMARY.md +295 -0
- package/tests/crm-viewer-app/CURRENT_ASSETS_FIELDS.md +148 -0
- package/tests/crm-viewer-app/FIELD_ID_MAPPING.md +206 -0
- package/tests/crm-viewer-app/INTEGRATION_GUIDE.md +309 -0
- package/tests/crm-viewer-app/README.md +174 -0
- package/tests/crm-viewer-app/REAL_API_INTEGRATION.md +240 -0
- package/tests/crm-viewer-app/UPDATED_IMPLEMENTATION.md +279 -0
- package/tests/crm-viewer-app/angular.json +114 -0
- package/tests/crm-viewer-app/package.json +35 -0
- package/tests/crm-viewer-app/src/app/app.component.ts +534 -0
- package/tests/crm-viewer-app/src/app/citation.service.ts +316 -0
- package/tests/crm-viewer-app/src/env.d.ts +16 -0
- package/tests/crm-viewer-app/src/index.html +19 -0
- package/tests/crm-viewer-app/src/main.ts +7 -0
- package/tests/crm-viewer-app/src/styles.css +409 -0
- package/tests/crm-viewer-app/src/template.html +2678 -0
- package/tests/crm-viewer-app/tsconfig.app.json +15 -0
- package/tests/crm-viewer-app/tsconfig.json +27 -0
- package/tests/e2e/package.json +17 -0
- package/tests/e2e/playwright.config.ts +75 -0
- package/tests/e2e/tests/api/health.spec.ts +10 -0
- package/tests/e2e/tests/app/example.spec.ts +10 -0
- package/tests/widget-test-app/.prettierignore +6 -0
- package/tests/widget-test-app/README.md +48 -0
- package/tests/widget-test-app/index.html +12 -0
- package/tests/widget-test-app/package.json +24 -0
- package/tests/widget-test-app/src/App.css +192 -0
- package/tests/widget-test-app/src/App.tsx +80 -0
- package/tests/widget-test-app/src/main.tsx +9 -0
- package/tests/widget-test-app/src/vite-env.d.ts +4 -0
- package/tests/widget-test-app/tsconfig.json +25 -0
- package/tests/widget-test-app/tsconfig.node.json +11 -0
- package/tests/widget-test-app/vite.config.ts +14 -0
|
@@ -0,0 +1,1669 @@
|
|
|
1
|
+
import type { DenormWorkflow } from "./defaults-types";
|
|
2
|
+
|
|
3
|
+
export const defaultWorkflows: DenormWorkflow[] = [
|
|
4
|
+
// **************************
|
|
5
|
+
// Origination (Light Underwrite)
|
|
6
|
+
// **************************
|
|
7
|
+
{
|
|
8
|
+
name: "Origination",
|
|
9
|
+
slug: "origination",
|
|
10
|
+
hint: "Extract applicant details, loan amounts, business information, contact data",
|
|
11
|
+
forms: [
|
|
12
|
+
{
|
|
13
|
+
// **************************
|
|
14
|
+
// Origination - Investment Memo
|
|
15
|
+
// **************************
|
|
16
|
+
name: "Investment Memo",
|
|
17
|
+
hint: "Extract borrower profile, credit request details, industry analysis, management assessment, and financial performance metrics from investment memorandum",
|
|
18
|
+
groups: [
|
|
19
|
+
{
|
|
20
|
+
name: "Borrower Profile",
|
|
21
|
+
order: 0,
|
|
22
|
+
fields: [
|
|
23
|
+
{
|
|
24
|
+
name: "Borrower Name",
|
|
25
|
+
type: "string",
|
|
26
|
+
hint: "Legal name of the borrowing entity",
|
|
27
|
+
order: 0,
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
name: "Business Description",
|
|
31
|
+
type: "string-long",
|
|
32
|
+
hint: "Description of the borrower's primary business operations and activities",
|
|
33
|
+
order: 1,
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
name: "Company Overview",
|
|
37
|
+
type: "string-long",
|
|
38
|
+
hint: "Executive summary of the company including history, key products/services, and market position",
|
|
39
|
+
order: 2,
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
name: "Business Address",
|
|
43
|
+
type: "string",
|
|
44
|
+
hint: "Primary business address or headquarters location",
|
|
45
|
+
order: 3,
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name: "Credit Request",
|
|
49
|
+
type: "string-long",
|
|
50
|
+
hint: "Details of the financing request including amount, purpose, and structure",
|
|
51
|
+
order: 4,
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
name: "Companies House Number",
|
|
55
|
+
type: "string",
|
|
56
|
+
hint: "UK company registration number",
|
|
57
|
+
order: 5,
|
|
58
|
+
},
|
|
59
|
+
],
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
name: "Industry & Market Analysis",
|
|
63
|
+
order: 1,
|
|
64
|
+
fields: [
|
|
65
|
+
{
|
|
66
|
+
name: "Industry Overview",
|
|
67
|
+
type: "string-long",
|
|
68
|
+
hint: "Analysis of the borrower's industry including trends, outlook, and competitive dynamics",
|
|
69
|
+
order: 0,
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
name: "BusinessOperations",
|
|
73
|
+
type: "string-long",
|
|
74
|
+
hint: "Detailed description of day-to-day business operations and revenue drivers",
|
|
75
|
+
order: 1,
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
name: "Market Segment",
|
|
79
|
+
type: "string",
|
|
80
|
+
hint: "Specific market segment or niche within the broader industry",
|
|
81
|
+
order: 2,
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
name: "Industry Classification",
|
|
85
|
+
type: "string",
|
|
86
|
+
hint: "NAICS or SIC industry classification code and description",
|
|
87
|
+
order: 3,
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
name: "Business Type",
|
|
91
|
+
type: "string",
|
|
92
|
+
hint: "Type of business entity (LLC, Corporation, Partnership, etc.)",
|
|
93
|
+
order: 4,
|
|
94
|
+
},
|
|
95
|
+
],
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
name: "Management & Ownership",
|
|
99
|
+
order: 2,
|
|
100
|
+
fields: [
|
|
101
|
+
{
|
|
102
|
+
name: "Management Team",
|
|
103
|
+
type: "string-long",
|
|
104
|
+
hint: "Background and experience of key management personnel including CEO, CFO, and other executives",
|
|
105
|
+
order: 0,
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
name: "Ownership Structure",
|
|
109
|
+
type: "string-long",
|
|
110
|
+
hint: "Ownership percentages, key shareholders, and corporate structure details",
|
|
111
|
+
order: 1,
|
|
112
|
+
},
|
|
113
|
+
],
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
name: "Credit Facility Details",
|
|
117
|
+
order: 3,
|
|
118
|
+
fields: [
|
|
119
|
+
{
|
|
120
|
+
name: "Facility Structure",
|
|
121
|
+
type: "string-long",
|
|
122
|
+
hint: "Proposed loan structure including facility type, terms, covenants, and security",
|
|
123
|
+
order: 0,
|
|
124
|
+
},
|
|
125
|
+
],
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
name: "Banking Relationship",
|
|
129
|
+
order: 4,
|
|
130
|
+
fields: [
|
|
131
|
+
{
|
|
132
|
+
name: "Banking History",
|
|
133
|
+
type: "string-long",
|
|
134
|
+
hint: "Historical banking relationship and account performance summary",
|
|
135
|
+
order: 0,
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
name: "Account Activity",
|
|
139
|
+
type: "string-long",
|
|
140
|
+
hint: "Summary of recent account activity and transaction patterns",
|
|
141
|
+
order: 1,
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
name: "Primary Account Number",
|
|
145
|
+
type: "string",
|
|
146
|
+
hint: "Primary operating account number",
|
|
147
|
+
order: 2,
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
name: "Statement Date",
|
|
151
|
+
type: "date",
|
|
152
|
+
hint: "Most recent bank statement date",
|
|
153
|
+
order: 3,
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
name: "Current Balance",
|
|
157
|
+
type: "money",
|
|
158
|
+
hint: "Current account balance as of statement date",
|
|
159
|
+
order: 4,
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
name: "Low Balance",
|
|
163
|
+
type: "money",
|
|
164
|
+
hint: "Lowest account balance during the review period",
|
|
165
|
+
order: 5,
|
|
166
|
+
},
|
|
167
|
+
],
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
name: "Financial Performance",
|
|
171
|
+
order: 5,
|
|
172
|
+
fields: [
|
|
173
|
+
{
|
|
174
|
+
name: "Financial Period",
|
|
175
|
+
type: "string",
|
|
176
|
+
hint: "Financial reporting period being analyzed (e.g., FY2023, TTM, etc.)",
|
|
177
|
+
order: 0,
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
name: "EBITDA",
|
|
181
|
+
type: "money",
|
|
182
|
+
hint: "Earnings before interest, taxes, depreciation and amortization for the period",
|
|
183
|
+
order: 1,
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
name: "Total Debt To EBITDA",
|
|
187
|
+
type: "number",
|
|
188
|
+
hint: "Total debt to EBITDA ratio indicating leverage level",
|
|
189
|
+
order: 2,
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
name: "Debt Service Coverage Ratio",
|
|
193
|
+
type: "number",
|
|
194
|
+
hint: "Projected debt service coverage ratio demonstrating repayment capacity",
|
|
195
|
+
order: 3,
|
|
196
|
+
},
|
|
197
|
+
{
|
|
198
|
+
name: "Cash Flow Breakeven",
|
|
199
|
+
type: "string",
|
|
200
|
+
hint: "Projected month when borrower achieves positive cash flow",
|
|
201
|
+
order: 4,
|
|
202
|
+
},
|
|
203
|
+
],
|
|
204
|
+
},
|
|
205
|
+
],
|
|
206
|
+
},
|
|
207
|
+
|
|
208
|
+
// **************************
|
|
209
|
+
// Origination - Bank statement
|
|
210
|
+
// **************************
|
|
211
|
+
{
|
|
212
|
+
name: "Bank Statement",
|
|
213
|
+
hint: "Extract account balances, transactions, deposits, withdrawals, and cash flow patterns - capture multiple statement periods for trend analysis",
|
|
214
|
+
groups: [
|
|
215
|
+
{
|
|
216
|
+
name: "Account Information",
|
|
217
|
+
order: 0,
|
|
218
|
+
fields: [
|
|
219
|
+
{
|
|
220
|
+
name: "BankName",
|
|
221
|
+
type: "string",
|
|
222
|
+
hint: "Name of the bank (e.g., Barclays, HSBC, NatWest, Lloyds)",
|
|
223
|
+
order: 0,
|
|
224
|
+
},
|
|
225
|
+
{
|
|
226
|
+
name: "AccountNumber",
|
|
227
|
+
type: "string",
|
|
228
|
+
hint: "Bank account number",
|
|
229
|
+
order: 1,
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
name: "AccountType",
|
|
233
|
+
type: "string",
|
|
234
|
+
hint: "Type of account (e.g., Business Current Account, Business Savings)",
|
|
235
|
+
order: 2,
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
name: "AccountHolderName",
|
|
239
|
+
type: "string",
|
|
240
|
+
hint: "Legal name on the account",
|
|
241
|
+
order: 3,
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
name: "IBAN",
|
|
245
|
+
type: "string",
|
|
246
|
+
hint: "International Bank Account Number if available",
|
|
247
|
+
order: 4,
|
|
248
|
+
},
|
|
249
|
+
{
|
|
250
|
+
name: "SortCode",
|
|
251
|
+
type: "string",
|
|
252
|
+
hint: "UK bank sort code (e.g., 12-34-56)",
|
|
253
|
+
order: 5,
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
name: "Currency",
|
|
257
|
+
type: "string",
|
|
258
|
+
hint: "Account currency (typically GBP)",
|
|
259
|
+
order: 6,
|
|
260
|
+
},
|
|
261
|
+
],
|
|
262
|
+
},
|
|
263
|
+
{
|
|
264
|
+
name: "Statement Periods",
|
|
265
|
+
multi: true,
|
|
266
|
+
order: 1,
|
|
267
|
+
fields: [
|
|
268
|
+
{
|
|
269
|
+
name: "StatementPeriodStart",
|
|
270
|
+
type: "date",
|
|
271
|
+
hint: "Start date of this statement period",
|
|
272
|
+
order: 0,
|
|
273
|
+
},
|
|
274
|
+
{
|
|
275
|
+
name: "StatementPeriodEnd",
|
|
276
|
+
type: "date",
|
|
277
|
+
hint: "End date of this statement period",
|
|
278
|
+
order: 1,
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
name: "OpeningBalance",
|
|
282
|
+
type: "money",
|
|
283
|
+
hint: "Account balance at start of period",
|
|
284
|
+
order: 2,
|
|
285
|
+
},
|
|
286
|
+
{
|
|
287
|
+
name: "ClosingBalance",
|
|
288
|
+
type: "money",
|
|
289
|
+
hint: "Account balance at end of period",
|
|
290
|
+
order: 3,
|
|
291
|
+
},
|
|
292
|
+
],
|
|
293
|
+
},
|
|
294
|
+
{
|
|
295
|
+
name: "Transactions",
|
|
296
|
+
multi: true,
|
|
297
|
+
order: 2,
|
|
298
|
+
fields: [
|
|
299
|
+
{
|
|
300
|
+
name: "Date",
|
|
301
|
+
type: "date",
|
|
302
|
+
hint: "Transaction date",
|
|
303
|
+
order: 0,
|
|
304
|
+
},
|
|
305
|
+
{
|
|
306
|
+
name: "Description",
|
|
307
|
+
type: "string",
|
|
308
|
+
hint: "Transaction description/narrative",
|
|
309
|
+
order: 1,
|
|
310
|
+
},
|
|
311
|
+
{
|
|
312
|
+
name: "DepositAmount",
|
|
313
|
+
type: "money",
|
|
314
|
+
hint: "Amount deposited (leave blank if withdrawal)",
|
|
315
|
+
order: 2,
|
|
316
|
+
},
|
|
317
|
+
{
|
|
318
|
+
name: "WithdrawalAmount",
|
|
319
|
+
type: "money",
|
|
320
|
+
hint: "Amount withdrawn (leave blank if deposit)",
|
|
321
|
+
order: 3,
|
|
322
|
+
},
|
|
323
|
+
{
|
|
324
|
+
name: "Balance",
|
|
325
|
+
type: "money",
|
|
326
|
+
hint: "Account balance after this transaction",
|
|
327
|
+
order: 4,
|
|
328
|
+
},
|
|
329
|
+
],
|
|
330
|
+
},
|
|
331
|
+
],
|
|
332
|
+
},
|
|
333
|
+
|
|
334
|
+
// **************************
|
|
335
|
+
// Origination - Directors & Officers (UK)
|
|
336
|
+
// **************************
|
|
337
|
+
{
|
|
338
|
+
name: "Directors & Officers",
|
|
339
|
+
hint: "Extract UK company director and officer information including Companies House details, appointments, and shareholdings",
|
|
340
|
+
groups: [
|
|
341
|
+
{
|
|
342
|
+
name: "Company Information",
|
|
343
|
+
order: 0,
|
|
344
|
+
fields: [
|
|
345
|
+
{
|
|
346
|
+
name: "CompaniesHouseNumber",
|
|
347
|
+
type: "string",
|
|
348
|
+
hint: "UK Companies House registration number (e.g., 12345678)",
|
|
349
|
+
order: 0,
|
|
350
|
+
},
|
|
351
|
+
{
|
|
352
|
+
name: "SICCode",
|
|
353
|
+
type: "string",
|
|
354
|
+
hint: "Standard Industrial Classification code for UK companies",
|
|
355
|
+
order: 1,
|
|
356
|
+
},
|
|
357
|
+
{
|
|
358
|
+
name: "UTR",
|
|
359
|
+
type: "string",
|
|
360
|
+
hint: "Unique Taxpayer Reference number issued by HMRC",
|
|
361
|
+
order: 2,
|
|
362
|
+
},
|
|
363
|
+
{
|
|
364
|
+
name: "VATNumber",
|
|
365
|
+
type: "string",
|
|
366
|
+
hint: "UK VAT registration number (if applicable)",
|
|
367
|
+
order: 3,
|
|
368
|
+
},
|
|
369
|
+
{
|
|
370
|
+
name: "DateOfIncorporation",
|
|
371
|
+
type: "date",
|
|
372
|
+
hint: "Date the company was incorporated in the UK",
|
|
373
|
+
order: 4,
|
|
374
|
+
},
|
|
375
|
+
{
|
|
376
|
+
name: "RegisteredOfficeAddress",
|
|
377
|
+
type: "string-long",
|
|
378
|
+
hint: "Official registered office address as filed with Companies House",
|
|
379
|
+
order: 5,
|
|
380
|
+
},
|
|
381
|
+
],
|
|
382
|
+
},
|
|
383
|
+
{
|
|
384
|
+
name: "Directors",
|
|
385
|
+
order: 1,
|
|
386
|
+
multi: true,
|
|
387
|
+
fields: [
|
|
388
|
+
{
|
|
389
|
+
name: "DirectorName",
|
|
390
|
+
type: "string",
|
|
391
|
+
hint: "Full name of the director",
|
|
392
|
+
order: 0,
|
|
393
|
+
},
|
|
394
|
+
{
|
|
395
|
+
name: "DateOfBirth",
|
|
396
|
+
type: "date",
|
|
397
|
+
hint: "Director's date of birth",
|
|
398
|
+
order: 1,
|
|
399
|
+
},
|
|
400
|
+
{
|
|
401
|
+
name: "ResidentialAddress",
|
|
402
|
+
type: "string-long",
|
|
403
|
+
hint: "Director's residential address",
|
|
404
|
+
order: 2,
|
|
405
|
+
},
|
|
406
|
+
{
|
|
407
|
+
name: "Nationality",
|
|
408
|
+
type: "string",
|
|
409
|
+
hint: "Director's nationality",
|
|
410
|
+
order: 3,
|
|
411
|
+
},
|
|
412
|
+
{
|
|
413
|
+
name: "AppointmentDate",
|
|
414
|
+
type: "date",
|
|
415
|
+
hint: "Date the director was appointed to the board",
|
|
416
|
+
order: 4,
|
|
417
|
+
},
|
|
418
|
+
{
|
|
419
|
+
name: "ShareholdingPercentage",
|
|
420
|
+
type: "number",
|
|
421
|
+
hint: "Percentage of shares held by this director",
|
|
422
|
+
order: 5,
|
|
423
|
+
},
|
|
424
|
+
],
|
|
425
|
+
},
|
|
426
|
+
],
|
|
427
|
+
},
|
|
428
|
+
],
|
|
429
|
+
},
|
|
430
|
+
|
|
431
|
+
// **************************
|
|
432
|
+
// Underwriting (Full Business Details)
|
|
433
|
+
// **************************
|
|
434
|
+
{
|
|
435
|
+
name: "Underwriting",
|
|
436
|
+
slug: "underwriting",
|
|
437
|
+
hint: "Extract financial statements, credit scores, collateral, risk assessments",
|
|
438
|
+
forms: [
|
|
439
|
+
// **************************
|
|
440
|
+
// Underwriting - UK P&L (Profit & Loss Account)
|
|
441
|
+
// **************************
|
|
442
|
+
{
|
|
443
|
+
name: "UK P&L",
|
|
444
|
+
hint: "Capture UK Profit & Loss Account results across reporting periods using UK accounting terminology",
|
|
445
|
+
groups: [
|
|
446
|
+
{
|
|
447
|
+
name: "General Information",
|
|
448
|
+
order: 0,
|
|
449
|
+
fields: [
|
|
450
|
+
{
|
|
451
|
+
name: "CompanyName",
|
|
452
|
+
type: "string",
|
|
453
|
+
hint: "Name of the UK company for which the financials are reported",
|
|
454
|
+
order: 0,
|
|
455
|
+
},
|
|
456
|
+
{
|
|
457
|
+
name: "CompaniesHouseNumber",
|
|
458
|
+
type: "string",
|
|
459
|
+
hint: "UK Companies House registration number",
|
|
460
|
+
order: 1,
|
|
461
|
+
},
|
|
462
|
+
{
|
|
463
|
+
name: "FinancialYearEnd",
|
|
464
|
+
type: "date",
|
|
465
|
+
hint: "Financial year end date for the reporting period",
|
|
466
|
+
order: 2,
|
|
467
|
+
},
|
|
468
|
+
],
|
|
469
|
+
},
|
|
470
|
+
{
|
|
471
|
+
name: "Profit & Loss Account",
|
|
472
|
+
order: 1,
|
|
473
|
+
multi: true,
|
|
474
|
+
fields: [
|
|
475
|
+
{
|
|
476
|
+
name: "FinancialPeriod",
|
|
477
|
+
type: "date",
|
|
478
|
+
hint: "The relevant financial period end date. Provide the date in UTC (YYYY-MM-DD).",
|
|
479
|
+
order: 0,
|
|
480
|
+
},
|
|
481
|
+
{
|
|
482
|
+
name: "Turnover",
|
|
483
|
+
type: "money",
|
|
484
|
+
hint: "Total sales revenue (UK term for revenue/turnover)",
|
|
485
|
+
order: 1,
|
|
486
|
+
},
|
|
487
|
+
{
|
|
488
|
+
name: "CostOfSales",
|
|
489
|
+
type: "money",
|
|
490
|
+
hint: "Direct costs of producing goods sold (UK term for COGS)",
|
|
491
|
+
order: 2,
|
|
492
|
+
},
|
|
493
|
+
{
|
|
494
|
+
name: "GrossProfit",
|
|
495
|
+
type: "money",
|
|
496
|
+
hint: "Turnover minus Cost of Sales",
|
|
497
|
+
order: 3,
|
|
498
|
+
},
|
|
499
|
+
{
|
|
500
|
+
name: "OperatingExpenses",
|
|
501
|
+
type: "money",
|
|
502
|
+
hint: "Total operating expenses including administrative and distribution costs",
|
|
503
|
+
order: 4,
|
|
504
|
+
},
|
|
505
|
+
{
|
|
506
|
+
name: "OperatingProfit",
|
|
507
|
+
type: "money",
|
|
508
|
+
hint: "Profit from operating activities before interest and tax (UK equivalent of EBIT)",
|
|
509
|
+
order: 5,
|
|
510
|
+
},
|
|
511
|
+
{
|
|
512
|
+
name: "EBITDA",
|
|
513
|
+
type: "money",
|
|
514
|
+
hint: "Earnings before interest, taxes, depreciation, and amortisation",
|
|
515
|
+
order: 6,
|
|
516
|
+
},
|
|
517
|
+
{
|
|
518
|
+
name: "ProfitBeforeTax",
|
|
519
|
+
type: "money",
|
|
520
|
+
hint: "Profit after all operating and financing activities but before tax",
|
|
521
|
+
order: 7,
|
|
522
|
+
},
|
|
523
|
+
{
|
|
524
|
+
name: "TaxCharge",
|
|
525
|
+
type: "money",
|
|
526
|
+
hint: "Total tax charge for the period",
|
|
527
|
+
order: 8,
|
|
528
|
+
},
|
|
529
|
+
{
|
|
530
|
+
name: "ProfitAfterTax",
|
|
531
|
+
type: "money",
|
|
532
|
+
hint: "Net profit after tax (UK term for net income)",
|
|
533
|
+
order: 9,
|
|
534
|
+
},
|
|
535
|
+
],
|
|
536
|
+
},
|
|
537
|
+
],
|
|
538
|
+
},
|
|
539
|
+
|
|
540
|
+
// **************************
|
|
541
|
+
// Underwriting - UK Balance Sheet
|
|
542
|
+
// **************************
|
|
543
|
+
{
|
|
544
|
+
name: "UK Balance Sheet",
|
|
545
|
+
hint: "Capture UK Balance Sheet positions at different reporting dates using UK accounting terminology",
|
|
546
|
+
groups: [
|
|
547
|
+
{
|
|
548
|
+
name: "General Information",
|
|
549
|
+
order: 0,
|
|
550
|
+
fields: [
|
|
551
|
+
{
|
|
552
|
+
name: "CompanyName",
|
|
553
|
+
type: "string",
|
|
554
|
+
hint: "Name of the UK company for which the financials are reported",
|
|
555
|
+
order: 0,
|
|
556
|
+
},
|
|
557
|
+
{
|
|
558
|
+
name: "CompaniesHouseNumber",
|
|
559
|
+
type: "string",
|
|
560
|
+
hint: "UK Companies House registration number",
|
|
561
|
+
order: 1,
|
|
562
|
+
},
|
|
563
|
+
],
|
|
564
|
+
},
|
|
565
|
+
{
|
|
566
|
+
name: "Balance Sheet",
|
|
567
|
+
order: 1,
|
|
568
|
+
multi: true,
|
|
569
|
+
fields: [
|
|
570
|
+
{
|
|
571
|
+
name: "FinancialDate",
|
|
572
|
+
type: "date",
|
|
573
|
+
hint: "The balance sheet reporting date. Provide the date in UTC (YYYY-MM-DD).",
|
|
574
|
+
order: 0,
|
|
575
|
+
},
|
|
576
|
+
{
|
|
577
|
+
name: "FixedAssetsTangible",
|
|
578
|
+
type: "money",
|
|
579
|
+
hint: "Tangible fixed assets including property, plant and equipment",
|
|
580
|
+
order: 1,
|
|
581
|
+
},
|
|
582
|
+
{
|
|
583
|
+
name: "FixedAssetsIntangible",
|
|
584
|
+
type: "money",
|
|
585
|
+
hint: "Intangible fixed assets including goodwill, patents, trademarks",
|
|
586
|
+
order: 2,
|
|
587
|
+
},
|
|
588
|
+
{
|
|
589
|
+
name: "Stock",
|
|
590
|
+
type: "money",
|
|
591
|
+
hint: "Inventory/stock held for sale or production (UK term for inventory)",
|
|
592
|
+
order: 3,
|
|
593
|
+
},
|
|
594
|
+
{
|
|
595
|
+
name: "Debtors",
|
|
596
|
+
type: "money",
|
|
597
|
+
hint: "Trade debtors and other receivables (UK term for accounts receivable)",
|
|
598
|
+
order: 4,
|
|
599
|
+
},
|
|
600
|
+
{
|
|
601
|
+
name: "CashAtBank",
|
|
602
|
+
type: "money",
|
|
603
|
+
hint: "Cash and cash equivalents held at bank",
|
|
604
|
+
order: 5,
|
|
605
|
+
},
|
|
606
|
+
{
|
|
607
|
+
name: "CreditorsWithinOneYear",
|
|
608
|
+
type: "money",
|
|
609
|
+
hint: "Trade creditors and other payables due within one year (UK term for current accounts payable)",
|
|
610
|
+
order: 6,
|
|
611
|
+
},
|
|
612
|
+
{
|
|
613
|
+
name: "NetCurrentAssets",
|
|
614
|
+
type: "money",
|
|
615
|
+
hint: "Current assets minus current liabilities",
|
|
616
|
+
order: 7,
|
|
617
|
+
},
|
|
618
|
+
{
|
|
619
|
+
name: "CreditorsAfterOneYear",
|
|
620
|
+
type: "money",
|
|
621
|
+
hint: "Long-term creditors and debt due after one year",
|
|
622
|
+
order: 8,
|
|
623
|
+
},
|
|
624
|
+
{
|
|
625
|
+
name: "NetAssets",
|
|
626
|
+
type: "money",
|
|
627
|
+
hint: "Total assets minus total liabilities",
|
|
628
|
+
order: 9,
|
|
629
|
+
},
|
|
630
|
+
{
|
|
631
|
+
name: "CapitalAndReserves",
|
|
632
|
+
type: "money",
|
|
633
|
+
hint: "Share capital and retained reserves (UK term for shareholders' equity)",
|
|
634
|
+
order: 10,
|
|
635
|
+
},
|
|
636
|
+
],
|
|
637
|
+
},
|
|
638
|
+
],
|
|
639
|
+
},
|
|
640
|
+
|
|
641
|
+
// **************************
|
|
642
|
+
// Underwriting - Cash Flow Statement
|
|
643
|
+
// **************************
|
|
644
|
+
{
|
|
645
|
+
name: "Cash Flow Statement",
|
|
646
|
+
hint: "Capture UK Cash Flow Statement across reporting periods showing operating, investing, and financing cash flows",
|
|
647
|
+
groups: [
|
|
648
|
+
{
|
|
649
|
+
name: "General Information",
|
|
650
|
+
order: 0,
|
|
651
|
+
fields: [
|
|
652
|
+
{
|
|
653
|
+
name: "CompanyName",
|
|
654
|
+
type: "string",
|
|
655
|
+
hint: "Name of the UK company for which the cash flow is reported",
|
|
656
|
+
order: 0,
|
|
657
|
+
},
|
|
658
|
+
{
|
|
659
|
+
name: "CompaniesHouseNumber",
|
|
660
|
+
type: "string",
|
|
661
|
+
hint: "UK Companies House registration number",
|
|
662
|
+
order: 1,
|
|
663
|
+
},
|
|
664
|
+
],
|
|
665
|
+
},
|
|
666
|
+
{
|
|
667
|
+
name: "Cash Flow Statement",
|
|
668
|
+
order: 1,
|
|
669
|
+
multi: true,
|
|
670
|
+
fields: [
|
|
671
|
+
{
|
|
672
|
+
name: "FinancialPeriod",
|
|
673
|
+
type: "date",
|
|
674
|
+
hint: "The relevant financial period end date. Provide the date in UTC (YYYY-MM-DD).",
|
|
675
|
+
order: 0,
|
|
676
|
+
},
|
|
677
|
+
{
|
|
678
|
+
name: "OperatingProfit",
|
|
679
|
+
type: "money",
|
|
680
|
+
hint: "Profit from operating activities before interest and tax",
|
|
681
|
+
order: 1,
|
|
682
|
+
},
|
|
683
|
+
{
|
|
684
|
+
name: "DepreciationAndAmortisation",
|
|
685
|
+
type: "money",
|
|
686
|
+
hint: "Non-cash charges for depreciation and amortisation",
|
|
687
|
+
order: 2,
|
|
688
|
+
},
|
|
689
|
+
{
|
|
690
|
+
name: "WorkingCapitalChanges",
|
|
691
|
+
type: "money",
|
|
692
|
+
hint: "Net change in working capital (increase is negative, decrease is positive)",
|
|
693
|
+
order: 3,
|
|
694
|
+
},
|
|
695
|
+
{
|
|
696
|
+
name: "CashFromOperations",
|
|
697
|
+
type: "money",
|
|
698
|
+
hint: "Net cash generated from operating activities",
|
|
699
|
+
order: 4,
|
|
700
|
+
},
|
|
701
|
+
{
|
|
702
|
+
name: "CapitalExpenditure",
|
|
703
|
+
type: "money",
|
|
704
|
+
hint: "Cash spent on capital assets (typically negative)",
|
|
705
|
+
order: 5,
|
|
706
|
+
},
|
|
707
|
+
{
|
|
708
|
+
name: "CashFromInvesting",
|
|
709
|
+
type: "money",
|
|
710
|
+
hint: "Net cash from investing activities",
|
|
711
|
+
order: 6,
|
|
712
|
+
},
|
|
713
|
+
{
|
|
714
|
+
name: "ProceedsFromLoans",
|
|
715
|
+
type: "money",
|
|
716
|
+
hint: "Cash received from new loans or borrowings",
|
|
717
|
+
order: 7,
|
|
718
|
+
},
|
|
719
|
+
{
|
|
720
|
+
name: "LoanRepayments",
|
|
721
|
+
type: "money",
|
|
722
|
+
hint: "Cash paid for loan repayments (typically negative)",
|
|
723
|
+
order: 8,
|
|
724
|
+
},
|
|
725
|
+
{
|
|
726
|
+
name: "DividendsPaid",
|
|
727
|
+
type: "money",
|
|
728
|
+
hint: "Cash paid as dividends to shareholders (typically negative)",
|
|
729
|
+
order: 9,
|
|
730
|
+
},
|
|
731
|
+
{
|
|
732
|
+
name: "CashFromFinancing",
|
|
733
|
+
type: "money",
|
|
734
|
+
hint: "Net cash from financing activities",
|
|
735
|
+
order: 10,
|
|
736
|
+
},
|
|
737
|
+
{
|
|
738
|
+
name: "NetCashMovement",
|
|
739
|
+
type: "money",
|
|
740
|
+
hint: "Net increase or decrease in cash and cash equivalents",
|
|
741
|
+
order: 11,
|
|
742
|
+
},
|
|
743
|
+
],
|
|
744
|
+
},
|
|
745
|
+
],
|
|
746
|
+
},
|
|
747
|
+
|
|
748
|
+
// **************************
|
|
749
|
+
// Underwriting - Accounts Receivable (Debtors)
|
|
750
|
+
// **************************
|
|
751
|
+
{
|
|
752
|
+
name: "Debtors Ledger",
|
|
753
|
+
hint: "Extract UK accounts receivable (debtors) information including summary metrics and detailed customer ledger",
|
|
754
|
+
groups: [
|
|
755
|
+
{
|
|
756
|
+
name: "Debtors Summary",
|
|
757
|
+
order: 0,
|
|
758
|
+
fields: [
|
|
759
|
+
{
|
|
760
|
+
name: "AsAtDate",
|
|
761
|
+
type: "date",
|
|
762
|
+
hint: "Date as at which the debtors summary is prepared",
|
|
763
|
+
order: 0,
|
|
764
|
+
},
|
|
765
|
+
{
|
|
766
|
+
name: "TotalDebtors",
|
|
767
|
+
type: "money",
|
|
768
|
+
hint: "Total outstanding debtors balance",
|
|
769
|
+
order: 1,
|
|
770
|
+
},
|
|
771
|
+
{
|
|
772
|
+
name: "DebtorDays",
|
|
773
|
+
type: "number",
|
|
774
|
+
hint: "Average number of days debtors are outstanding (DSO equivalent)",
|
|
775
|
+
order: 2,
|
|
776
|
+
},
|
|
777
|
+
{
|
|
778
|
+
name: "ProvisionForBadDebts",
|
|
779
|
+
type: "money",
|
|
780
|
+
hint: "Provision or allowance for doubtful debts",
|
|
781
|
+
order: 3,
|
|
782
|
+
},
|
|
783
|
+
],
|
|
784
|
+
},
|
|
785
|
+
{
|
|
786
|
+
name: "Debtor Ledger",
|
|
787
|
+
order: 1,
|
|
788
|
+
multi: true,
|
|
789
|
+
fields: [
|
|
790
|
+
{
|
|
791
|
+
name: "CustomerName",
|
|
792
|
+
type: "string",
|
|
793
|
+
hint: "Name of the customer/debtor",
|
|
794
|
+
order: 0,
|
|
795
|
+
},
|
|
796
|
+
{
|
|
797
|
+
name: "InvoiceNumber",
|
|
798
|
+
type: "string",
|
|
799
|
+
hint: "Invoice number or reference",
|
|
800
|
+
order: 1,
|
|
801
|
+
},
|
|
802
|
+
{
|
|
803
|
+
name: "InvoiceDate",
|
|
804
|
+
type: "date",
|
|
805
|
+
hint: "Date the invoice was issued",
|
|
806
|
+
order: 2,
|
|
807
|
+
},
|
|
808
|
+
{
|
|
809
|
+
name: "InvoiceAmount",
|
|
810
|
+
type: "money",
|
|
811
|
+
hint: "Total invoice amount",
|
|
812
|
+
order: 3,
|
|
813
|
+
},
|
|
814
|
+
{
|
|
815
|
+
name: "AmountOutstanding",
|
|
816
|
+
type: "money",
|
|
817
|
+
hint: "Amount still outstanding on this invoice",
|
|
818
|
+
order: 4,
|
|
819
|
+
},
|
|
820
|
+
{
|
|
821
|
+
name: "DaysOutstanding",
|
|
822
|
+
type: "number",
|
|
823
|
+
hint: "Number of days the invoice has been outstanding",
|
|
824
|
+
order: 5,
|
|
825
|
+
},
|
|
826
|
+
{
|
|
827
|
+
name: "AgeCategory",
|
|
828
|
+
type: "string",
|
|
829
|
+
hint: "Ageing category (e.g., Current, 30 days, 60 days, 90+ days)",
|
|
830
|
+
order: 6,
|
|
831
|
+
},
|
|
832
|
+
],
|
|
833
|
+
},
|
|
834
|
+
],
|
|
835
|
+
},
|
|
836
|
+
|
|
837
|
+
// **************************
|
|
838
|
+
// Underwriting - Accounts Payable (Creditors)
|
|
839
|
+
// **************************
|
|
840
|
+
{
|
|
841
|
+
name: "Creditors Ledger",
|
|
842
|
+
hint: "Extract UK accounts payable (creditors) information including summary metrics and detailed supplier ledger",
|
|
843
|
+
groups: [
|
|
844
|
+
{
|
|
845
|
+
name: "Creditors Summary",
|
|
846
|
+
order: 0,
|
|
847
|
+
fields: [
|
|
848
|
+
{
|
|
849
|
+
name: "AsAtDate",
|
|
850
|
+
type: "date",
|
|
851
|
+
hint: "Date as at which the creditors summary is prepared",
|
|
852
|
+
order: 0,
|
|
853
|
+
},
|
|
854
|
+
{
|
|
855
|
+
name: "TotalCreditors",
|
|
856
|
+
type: "money",
|
|
857
|
+
hint: "Total outstanding creditors balance",
|
|
858
|
+
order: 1,
|
|
859
|
+
},
|
|
860
|
+
{
|
|
861
|
+
name: "CreditorDays",
|
|
862
|
+
type: "number",
|
|
863
|
+
hint: "Average number of days creditors are outstanding (DPO equivalent)",
|
|
864
|
+
order: 2,
|
|
865
|
+
},
|
|
866
|
+
],
|
|
867
|
+
},
|
|
868
|
+
{
|
|
869
|
+
name: "Creditor Ledger",
|
|
870
|
+
order: 1,
|
|
871
|
+
multi: true,
|
|
872
|
+
fields: [
|
|
873
|
+
{
|
|
874
|
+
name: "SupplierName",
|
|
875
|
+
type: "string",
|
|
876
|
+
hint: "Name of the supplier/creditor",
|
|
877
|
+
order: 0,
|
|
878
|
+
},
|
|
879
|
+
{
|
|
880
|
+
name: "InvoiceNumber",
|
|
881
|
+
type: "string",
|
|
882
|
+
hint: "Invoice number or reference",
|
|
883
|
+
order: 1,
|
|
884
|
+
},
|
|
885
|
+
{
|
|
886
|
+
name: "InvoiceDate",
|
|
887
|
+
type: "date",
|
|
888
|
+
hint: "Date the invoice was received",
|
|
889
|
+
order: 2,
|
|
890
|
+
},
|
|
891
|
+
{
|
|
892
|
+
name: "InvoiceAmount",
|
|
893
|
+
type: "money",
|
|
894
|
+
hint: "Total invoice amount",
|
|
895
|
+
order: 3,
|
|
896
|
+
},
|
|
897
|
+
{
|
|
898
|
+
name: "AmountOutstanding",
|
|
899
|
+
type: "money",
|
|
900
|
+
hint: "Amount still outstanding on this invoice",
|
|
901
|
+
order: 4,
|
|
902
|
+
},
|
|
903
|
+
{
|
|
904
|
+
name: "PaymentTerms",
|
|
905
|
+
type: "string",
|
|
906
|
+
hint: "Payment terms (e.g., Net 30, Net 60, Due on receipt)",
|
|
907
|
+
order: 5,
|
|
908
|
+
},
|
|
909
|
+
{
|
|
910
|
+
name: "DueDate",
|
|
911
|
+
type: "date",
|
|
912
|
+
hint: "Due date for payment of this invoice",
|
|
913
|
+
order: 6,
|
|
914
|
+
},
|
|
915
|
+
],
|
|
916
|
+
},
|
|
917
|
+
],
|
|
918
|
+
},
|
|
919
|
+
|
|
920
|
+
// **************************
|
|
921
|
+
// Underwriting - UK Credit Check
|
|
922
|
+
// **************************
|
|
923
|
+
{
|
|
924
|
+
name: "UK Credit Check",
|
|
925
|
+
hint: "Extract UK credit information including Experian scores, Companies House filing status, payment defaults, and County Court Judgements",
|
|
926
|
+
groups: [
|
|
927
|
+
{
|
|
928
|
+
name: "Credit Overview",
|
|
929
|
+
order: 0,
|
|
930
|
+
fields: [
|
|
931
|
+
{
|
|
932
|
+
name: "ExperianScore",
|
|
933
|
+
type: "number",
|
|
934
|
+
hint: "Experian credit score for the UK company",
|
|
935
|
+
order: 0,
|
|
936
|
+
},
|
|
937
|
+
{
|
|
938
|
+
name: "CompaniesHouseFilingStatus",
|
|
939
|
+
type: "string",
|
|
940
|
+
hint: "Current filing status with Companies House (e.g., Active, Dissolved, In Administration)",
|
|
941
|
+
order: 1,
|
|
942
|
+
},
|
|
943
|
+
{
|
|
944
|
+
name: "PaymentDefaultCount",
|
|
945
|
+
type: "number",
|
|
946
|
+
hint: "Number of payment defaults recorded",
|
|
947
|
+
order: 2,
|
|
948
|
+
},
|
|
949
|
+
],
|
|
950
|
+
},
|
|
951
|
+
{
|
|
952
|
+
name: "County Court Judgements",
|
|
953
|
+
order: 1,
|
|
954
|
+
multi: true,
|
|
955
|
+
fields: [
|
|
956
|
+
{
|
|
957
|
+
name: "CCJDate",
|
|
958
|
+
type: "date",
|
|
959
|
+
hint: "Date the County Court Judgement was issued",
|
|
960
|
+
order: 0,
|
|
961
|
+
},
|
|
962
|
+
{
|
|
963
|
+
name: "Amount",
|
|
964
|
+
type: "money",
|
|
965
|
+
hint: "Amount of the CCJ",
|
|
966
|
+
order: 1,
|
|
967
|
+
},
|
|
968
|
+
{
|
|
969
|
+
name: "Status",
|
|
970
|
+
type: "string",
|
|
971
|
+
hint: "Status of the CCJ (e.g., Satisfied, Unsatisfied, Set Aside)",
|
|
972
|
+
order: 2,
|
|
973
|
+
},
|
|
974
|
+
{
|
|
975
|
+
name: "Court",
|
|
976
|
+
type: "string",
|
|
977
|
+
hint: "Court that issued the judgement",
|
|
978
|
+
order: 3,
|
|
979
|
+
},
|
|
980
|
+
],
|
|
981
|
+
},
|
|
982
|
+
],
|
|
983
|
+
},
|
|
984
|
+
|
|
985
|
+
// **************************
|
|
986
|
+
// Underwriting - Security & Collateral
|
|
987
|
+
// **************************
|
|
988
|
+
{
|
|
989
|
+
name: "Security & Collateral",
|
|
990
|
+
hint: "Extract security and collateral information including property charges and personal guarantees",
|
|
991
|
+
groups: [
|
|
992
|
+
{
|
|
993
|
+
name: "Overview",
|
|
994
|
+
order: 0,
|
|
995
|
+
fields: [
|
|
996
|
+
{
|
|
997
|
+
name: "TotalSecurityValue",
|
|
998
|
+
type: "money",
|
|
999
|
+
hint: "Total value of all security provided",
|
|
1000
|
+
order: 0,
|
|
1001
|
+
},
|
|
1002
|
+
{
|
|
1003
|
+
name: "LoanToValue",
|
|
1004
|
+
type: "number",
|
|
1005
|
+
hint: "Loan to value ratio as a percentage",
|
|
1006
|
+
order: 1,
|
|
1007
|
+
},
|
|
1008
|
+
],
|
|
1009
|
+
},
|
|
1010
|
+
{
|
|
1011
|
+
name: "Property Charges",
|
|
1012
|
+
order: 1,
|
|
1013
|
+
multi: true,
|
|
1014
|
+
fields: [
|
|
1015
|
+
{
|
|
1016
|
+
name: "PropertyAddress",
|
|
1017
|
+
type: "string-long",
|
|
1018
|
+
hint: "Address of the property being charged",
|
|
1019
|
+
order: 0,
|
|
1020
|
+
},
|
|
1021
|
+
{
|
|
1022
|
+
name: "PropertyValue",
|
|
1023
|
+
type: "money",
|
|
1024
|
+
hint: "Current market value of the property",
|
|
1025
|
+
order: 1,
|
|
1026
|
+
},
|
|
1027
|
+
{
|
|
1028
|
+
name: "OutstandingMortgage",
|
|
1029
|
+
type: "money",
|
|
1030
|
+
hint: "Outstanding mortgage balance on the property",
|
|
1031
|
+
order: 2,
|
|
1032
|
+
},
|
|
1033
|
+
{
|
|
1034
|
+
name: "ChargeType",
|
|
1035
|
+
type: "string",
|
|
1036
|
+
hint: "Type of charge (e.g., First Charge, Second Charge, Floating Charge)",
|
|
1037
|
+
order: 3,
|
|
1038
|
+
},
|
|
1039
|
+
],
|
|
1040
|
+
},
|
|
1041
|
+
{
|
|
1042
|
+
name: "Personal Guarantees",
|
|
1043
|
+
order: 2,
|
|
1044
|
+
multi: true,
|
|
1045
|
+
fields: [
|
|
1046
|
+
{
|
|
1047
|
+
name: "GuarantorName",
|
|
1048
|
+
type: "string",
|
|
1049
|
+
hint: "Full name of the guarantor",
|
|
1050
|
+
order: 0,
|
|
1051
|
+
},
|
|
1052
|
+
{
|
|
1053
|
+
name: "GuaranteeAmount",
|
|
1054
|
+
type: "money",
|
|
1055
|
+
hint: "Amount guaranteed by this individual",
|
|
1056
|
+
order: 1,
|
|
1057
|
+
},
|
|
1058
|
+
{
|
|
1059
|
+
name: "PersonalAssetsValue",
|
|
1060
|
+
type: "money",
|
|
1061
|
+
hint: "Estimated value of personal assets of the guarantor",
|
|
1062
|
+
order: 2,
|
|
1063
|
+
},
|
|
1064
|
+
],
|
|
1065
|
+
},
|
|
1066
|
+
],
|
|
1067
|
+
},
|
|
1068
|
+
|
|
1069
|
+
// **************************
|
|
1070
|
+
// Underwriting - Cash Conversion Ratios
|
|
1071
|
+
// **************************
|
|
1072
|
+
{
|
|
1073
|
+
name: "Cash Conversion Ratios",
|
|
1074
|
+
hint: "Capture DPO, DSO, DIO, and cash conversion cycle calculations across multiple periods for working capital trend analysis",
|
|
1075
|
+
groups: [
|
|
1076
|
+
{
|
|
1077
|
+
name: "Cash Conversion Analysis Periods",
|
|
1078
|
+
order: 0,
|
|
1079
|
+
multi: true,
|
|
1080
|
+
fields: [
|
|
1081
|
+
{
|
|
1082
|
+
name: "PeriodEndDate",
|
|
1083
|
+
type: "date",
|
|
1084
|
+
hint: "The period end date for this calculation (e.g., 31/03/2024, 30/06/2024)",
|
|
1085
|
+
order: 0,
|
|
1086
|
+
},
|
|
1087
|
+
{
|
|
1088
|
+
name: "PeriodLength",
|
|
1089
|
+
type: "string",
|
|
1090
|
+
hint: "Type of period: Monthly, Quarterly, or Yearly",
|
|
1091
|
+
order: 1,
|
|
1092
|
+
},
|
|
1093
|
+
{
|
|
1094
|
+
name: "NumberOfDays",
|
|
1095
|
+
type: "number",
|
|
1096
|
+
hint: "Number of days in the period (e.g., 90 for a quarter, 365 for a year)",
|
|
1097
|
+
order: 2,
|
|
1098
|
+
},
|
|
1099
|
+
{
|
|
1100
|
+
name: "BeginningAccountsPayable",
|
|
1101
|
+
type: "money",
|
|
1102
|
+
hint: "Accounts Payable (Creditors) at start of period from balance sheet",
|
|
1103
|
+
order: 3,
|
|
1104
|
+
},
|
|
1105
|
+
{
|
|
1106
|
+
name: "EndingAccountsPayable",
|
|
1107
|
+
type: "money",
|
|
1108
|
+
hint: "Accounts Payable (Creditors) at end of period from balance sheet",
|
|
1109
|
+
order: 4,
|
|
1110
|
+
},
|
|
1111
|
+
{
|
|
1112
|
+
name: "BeginningAccountsReceivable",
|
|
1113
|
+
type: "money",
|
|
1114
|
+
hint: "Accounts Receivable (Debtors) at start of period from balance sheet",
|
|
1115
|
+
order: 5,
|
|
1116
|
+
},
|
|
1117
|
+
{
|
|
1118
|
+
name: "EndingAccountsReceivable",
|
|
1119
|
+
type: "money",
|
|
1120
|
+
hint: "Accounts Receivable (Debtors) at end of period from balance sheet",
|
|
1121
|
+
order: 6,
|
|
1122
|
+
},
|
|
1123
|
+
{
|
|
1124
|
+
name: "BeginningInventory",
|
|
1125
|
+
type: "money",
|
|
1126
|
+
hint: "Inventory (Stock) at start of period from balance sheet",
|
|
1127
|
+
order: 7,
|
|
1128
|
+
},
|
|
1129
|
+
{
|
|
1130
|
+
name: "EndingInventory",
|
|
1131
|
+
type: "money",
|
|
1132
|
+
hint: "Inventory (Stock) at end of period from balance sheet",
|
|
1133
|
+
order: 8,
|
|
1134
|
+
},
|
|
1135
|
+
{
|
|
1136
|
+
name: "Revenue",
|
|
1137
|
+
type: "money",
|
|
1138
|
+
hint: "Total revenue (Turnover) for the period from P&L",
|
|
1139
|
+
order: 9,
|
|
1140
|
+
},
|
|
1141
|
+
{
|
|
1142
|
+
name: "CostOfGoodsSold",
|
|
1143
|
+
type: "money",
|
|
1144
|
+
hint: "Cost of Goods Sold (Cost of Sales) for the period from P&L",
|
|
1145
|
+
order: 10,
|
|
1146
|
+
},
|
|
1147
|
+
{
|
|
1148
|
+
name: "DaysPayableOutstanding",
|
|
1149
|
+
type: "number",
|
|
1150
|
+
hint: "DPO = [(Beginning AP + Ending AP) / 2] / (COGS / Number of Days) - measures how long company takes to pay suppliers",
|
|
1151
|
+
order: 11,
|
|
1152
|
+
},
|
|
1153
|
+
{
|
|
1154
|
+
name: "DaysSalesOutstanding",
|
|
1155
|
+
type: "number",
|
|
1156
|
+
hint: "DSO = [(Beginning AR + Ending AR) / 2] / (Revenue / Number of Days) - measures how long to collect from customers",
|
|
1157
|
+
order: 12,
|
|
1158
|
+
},
|
|
1159
|
+
{
|
|
1160
|
+
name: "DaysInventoryOutstanding",
|
|
1161
|
+
type: "number",
|
|
1162
|
+
hint: "DIO = [(Beginning Inventory + Ending Inventory) / 2] / (COGS / Number of Days) - measures how long inventory sits unsold",
|
|
1163
|
+
order: 13,
|
|
1164
|
+
},
|
|
1165
|
+
{
|
|
1166
|
+
name: "CashConversionCycle",
|
|
1167
|
+
type: "number",
|
|
1168
|
+
hint: "CCC = DIO + DSO - DPO - measures days between paying suppliers and collecting from customers. Lower is better.",
|
|
1169
|
+
order: 14,
|
|
1170
|
+
},
|
|
1171
|
+
],
|
|
1172
|
+
},
|
|
1173
|
+
],
|
|
1174
|
+
},
|
|
1175
|
+
],
|
|
1176
|
+
},
|
|
1177
|
+
|
|
1178
|
+
// **************************
|
|
1179
|
+
// Monitoring (Light Underwrite)
|
|
1180
|
+
// **************************
|
|
1181
|
+
{
|
|
1182
|
+
name: "Monitoring",
|
|
1183
|
+
slug: "monitoring",
|
|
1184
|
+
hint: "Extract payment records, covenant compliance, performance metrics, alerts",
|
|
1185
|
+
forms: [
|
|
1186
|
+
{
|
|
1187
|
+
// **************************
|
|
1188
|
+
// Monitoring - Investment Memo
|
|
1189
|
+
// **************************
|
|
1190
|
+
name: "Investment Memo",
|
|
1191
|
+
hint: "Extract borrower profile, credit request details, industry analysis, management assessment, and financial performance metrics from investment memorandum",
|
|
1192
|
+
groups: [
|
|
1193
|
+
{
|
|
1194
|
+
name: "Borrower Profile",
|
|
1195
|
+
order: 0,
|
|
1196
|
+
fields: [
|
|
1197
|
+
{
|
|
1198
|
+
name: "Borrower Name",
|
|
1199
|
+
type: "string",
|
|
1200
|
+
hint: "Legal name of the borrowing entity",
|
|
1201
|
+
order: 0,
|
|
1202
|
+
},
|
|
1203
|
+
{
|
|
1204
|
+
name: "Business Description",
|
|
1205
|
+
type: "string-long",
|
|
1206
|
+
hint: "Description of the borrower's primary business operations and activities",
|
|
1207
|
+
order: 1,
|
|
1208
|
+
},
|
|
1209
|
+
{
|
|
1210
|
+
name: "Company Overview",
|
|
1211
|
+
type: "string-long",
|
|
1212
|
+
hint: "Executive summary of the company including history, key products/services, and market position",
|
|
1213
|
+
order: 2,
|
|
1214
|
+
},
|
|
1215
|
+
{
|
|
1216
|
+
name: "Business Address",
|
|
1217
|
+
type: "string",
|
|
1218
|
+
hint: "Primary business address or headquarters location",
|
|
1219
|
+
order: 3,
|
|
1220
|
+
},
|
|
1221
|
+
{
|
|
1222
|
+
name: "Credit Request",
|
|
1223
|
+
type: "string-long",
|
|
1224
|
+
hint: "Details of the financing request including amount, purpose, and structure",
|
|
1225
|
+
order: 4,
|
|
1226
|
+
},
|
|
1227
|
+
{
|
|
1228
|
+
name: "Companies House Number",
|
|
1229
|
+
type: "string",
|
|
1230
|
+
hint: "UK company registration number",
|
|
1231
|
+
order: 5,
|
|
1232
|
+
},
|
|
1233
|
+
],
|
|
1234
|
+
},
|
|
1235
|
+
{
|
|
1236
|
+
name: "Industry & Market Analysis",
|
|
1237
|
+
order: 1,
|
|
1238
|
+
fields: [
|
|
1239
|
+
{
|
|
1240
|
+
name: "Industry Overview",
|
|
1241
|
+
type: "string-long",
|
|
1242
|
+
hint: "Analysis of the borrower's industry including trends, outlook, and competitive dynamics",
|
|
1243
|
+
order: 0,
|
|
1244
|
+
},
|
|
1245
|
+
{
|
|
1246
|
+
name: "BusinessOperations",
|
|
1247
|
+
type: "string-long",
|
|
1248
|
+
hint: "Detailed description of day-to-day business operations and revenue drivers",
|
|
1249
|
+
order: 1,
|
|
1250
|
+
},
|
|
1251
|
+
{
|
|
1252
|
+
name: "Market Segment",
|
|
1253
|
+
type: "string",
|
|
1254
|
+
hint: "Specific market segment or niche within the broader industry",
|
|
1255
|
+
order: 2,
|
|
1256
|
+
},
|
|
1257
|
+
{
|
|
1258
|
+
name: "Industry Classification",
|
|
1259
|
+
type: "string",
|
|
1260
|
+
hint: "NAICS or SIC industry classification code and description",
|
|
1261
|
+
order: 3,
|
|
1262
|
+
},
|
|
1263
|
+
{
|
|
1264
|
+
name: "Business Type",
|
|
1265
|
+
type: "string",
|
|
1266
|
+
hint: "Type of business entity (LLC, Corporation, Partnership, etc.)",
|
|
1267
|
+
order: 4,
|
|
1268
|
+
},
|
|
1269
|
+
],
|
|
1270
|
+
},
|
|
1271
|
+
{
|
|
1272
|
+
name: "Management & Ownership",
|
|
1273
|
+
order: 2,
|
|
1274
|
+
fields: [
|
|
1275
|
+
{
|
|
1276
|
+
name: "Management Team",
|
|
1277
|
+
type: "string-long",
|
|
1278
|
+
hint: "Background and experience of key management personnel including CEO, CFO, and other executives",
|
|
1279
|
+
order: 0,
|
|
1280
|
+
},
|
|
1281
|
+
{
|
|
1282
|
+
name: "Ownership Structure",
|
|
1283
|
+
type: "string-long",
|
|
1284
|
+
hint: "Ownership percentages, key shareholders, and corporate structure details",
|
|
1285
|
+
order: 1,
|
|
1286
|
+
},
|
|
1287
|
+
],
|
|
1288
|
+
},
|
|
1289
|
+
{
|
|
1290
|
+
name: "Credit Facility Details",
|
|
1291
|
+
order: 3,
|
|
1292
|
+
fields: [
|
|
1293
|
+
{
|
|
1294
|
+
name: "Facility Structure",
|
|
1295
|
+
type: "string-long",
|
|
1296
|
+
hint: "Proposed loan structure including facility type, terms, covenants, and security",
|
|
1297
|
+
order: 0,
|
|
1298
|
+
},
|
|
1299
|
+
],
|
|
1300
|
+
},
|
|
1301
|
+
{
|
|
1302
|
+
name: "Banking Relationship",
|
|
1303
|
+
order: 4,
|
|
1304
|
+
fields: [
|
|
1305
|
+
{
|
|
1306
|
+
name: "Banking History",
|
|
1307
|
+
type: "string-long",
|
|
1308
|
+
hint: "Historical banking relationship and account performance summary",
|
|
1309
|
+
order: 0,
|
|
1310
|
+
},
|
|
1311
|
+
{
|
|
1312
|
+
name: "Account Activity",
|
|
1313
|
+
type: "string-long",
|
|
1314
|
+
hint: "Summary of recent account activity and transaction patterns",
|
|
1315
|
+
order: 1,
|
|
1316
|
+
},
|
|
1317
|
+
{
|
|
1318
|
+
name: "Primary Account Number",
|
|
1319
|
+
type: "string",
|
|
1320
|
+
hint: "Primary operating account number",
|
|
1321
|
+
order: 2,
|
|
1322
|
+
},
|
|
1323
|
+
{
|
|
1324
|
+
name: "Statement Date",
|
|
1325
|
+
type: "date",
|
|
1326
|
+
hint: "Most recent bank statement date",
|
|
1327
|
+
order: 3,
|
|
1328
|
+
},
|
|
1329
|
+
{
|
|
1330
|
+
name: "Current Balance",
|
|
1331
|
+
type: "money",
|
|
1332
|
+
hint: "Current account balance as of statement date",
|
|
1333
|
+
order: 4,
|
|
1334
|
+
},
|
|
1335
|
+
{
|
|
1336
|
+
name: "Low Balance",
|
|
1337
|
+
type: "money",
|
|
1338
|
+
hint: "Lowest account balance during the review period",
|
|
1339
|
+
order: 5,
|
|
1340
|
+
},
|
|
1341
|
+
],
|
|
1342
|
+
},
|
|
1343
|
+
{
|
|
1344
|
+
name: "Financial Performance",
|
|
1345
|
+
order: 5,
|
|
1346
|
+
fields: [
|
|
1347
|
+
{
|
|
1348
|
+
name: "Financial Period",
|
|
1349
|
+
type: "string",
|
|
1350
|
+
hint: "Financial reporting period being analyzed (e.g., FY2023, TTM, etc.)",
|
|
1351
|
+
order: 0,
|
|
1352
|
+
},
|
|
1353
|
+
{
|
|
1354
|
+
name: "EBITDA",
|
|
1355
|
+
type: "money",
|
|
1356
|
+
hint: "Earnings before interest, taxes, depreciation and amortization for the period",
|
|
1357
|
+
order: 1,
|
|
1358
|
+
},
|
|
1359
|
+
{
|
|
1360
|
+
name: "Total Debt To EBITDA",
|
|
1361
|
+
type: "number",
|
|
1362
|
+
hint: "Total debt to EBITDA ratio indicating leverage level",
|
|
1363
|
+
order: 2,
|
|
1364
|
+
},
|
|
1365
|
+
{
|
|
1366
|
+
name: "Debt Service Coverage Ratio",
|
|
1367
|
+
type: "number",
|
|
1368
|
+
hint: "Projected debt service coverage ratio demonstrating repayment capacity",
|
|
1369
|
+
order: 3,
|
|
1370
|
+
},
|
|
1371
|
+
{
|
|
1372
|
+
name: "Cash Flow Breakeven",
|
|
1373
|
+
type: "string",
|
|
1374
|
+
hint: "Projected month when borrower achieves positive cash flow",
|
|
1375
|
+
order: 4,
|
|
1376
|
+
},
|
|
1377
|
+
],
|
|
1378
|
+
},
|
|
1379
|
+
],
|
|
1380
|
+
},
|
|
1381
|
+
|
|
1382
|
+
// **************************
|
|
1383
|
+
// Monitoring - Bank statement
|
|
1384
|
+
// **************************
|
|
1385
|
+
{
|
|
1386
|
+
name: "Bank Statement",
|
|
1387
|
+
hint: "Extract account balances, transactions, deposits, withdrawals, and cash flow patterns - capture multiple statement periods for trend analysis",
|
|
1388
|
+
groups: [
|
|
1389
|
+
{
|
|
1390
|
+
name: "Account Information",
|
|
1391
|
+
order: 0,
|
|
1392
|
+
fields: [
|
|
1393
|
+
{
|
|
1394
|
+
name: "BankName",
|
|
1395
|
+
type: "string",
|
|
1396
|
+
hint: "Name of the bank (e.g., Barclays, HSBC, NatWest, Lloyds)",
|
|
1397
|
+
order: 0,
|
|
1398
|
+
},
|
|
1399
|
+
{
|
|
1400
|
+
name: "AccountNumber",
|
|
1401
|
+
type: "string",
|
|
1402
|
+
hint: "Bank account number",
|
|
1403
|
+
order: 1,
|
|
1404
|
+
},
|
|
1405
|
+
{
|
|
1406
|
+
name: "AccountType",
|
|
1407
|
+
type: "string",
|
|
1408
|
+
hint: "Type of account (e.g., Business Current Account, Business Savings)",
|
|
1409
|
+
order: 2,
|
|
1410
|
+
},
|
|
1411
|
+
{
|
|
1412
|
+
name: "AccountHolderName",
|
|
1413
|
+
type: "string",
|
|
1414
|
+
hint: "Legal name on the account",
|
|
1415
|
+
order: 3,
|
|
1416
|
+
},
|
|
1417
|
+
{
|
|
1418
|
+
name: "IBAN",
|
|
1419
|
+
type: "string",
|
|
1420
|
+
hint: "International Bank Account Number if available",
|
|
1421
|
+
order: 4,
|
|
1422
|
+
},
|
|
1423
|
+
{
|
|
1424
|
+
name: "SortCode",
|
|
1425
|
+
type: "string",
|
|
1426
|
+
hint: "UK bank sort code (e.g., 12-34-56)",
|
|
1427
|
+
order: 5,
|
|
1428
|
+
},
|
|
1429
|
+
{
|
|
1430
|
+
name: "Currency",
|
|
1431
|
+
type: "string",
|
|
1432
|
+
hint: "Account currency (typically GBP)",
|
|
1433
|
+
order: 6,
|
|
1434
|
+
},
|
|
1435
|
+
],
|
|
1436
|
+
},
|
|
1437
|
+
{
|
|
1438
|
+
name: "Statement Periods",
|
|
1439
|
+
multi: true,
|
|
1440
|
+
order: 1,
|
|
1441
|
+
fields: [
|
|
1442
|
+
{
|
|
1443
|
+
name: "StatementPeriodStart",
|
|
1444
|
+
type: "date",
|
|
1445
|
+
hint: "Start date of this statement period",
|
|
1446
|
+
order: 0,
|
|
1447
|
+
},
|
|
1448
|
+
{
|
|
1449
|
+
name: "StatementPeriodEnd",
|
|
1450
|
+
type: "date",
|
|
1451
|
+
hint: "End date of this statement period",
|
|
1452
|
+
order: 1,
|
|
1453
|
+
},
|
|
1454
|
+
{
|
|
1455
|
+
name: "OpeningBalance",
|
|
1456
|
+
type: "money",
|
|
1457
|
+
hint: "Account balance at start of period",
|
|
1458
|
+
order: 2,
|
|
1459
|
+
},
|
|
1460
|
+
{
|
|
1461
|
+
name: "ClosingBalance",
|
|
1462
|
+
type: "money",
|
|
1463
|
+
hint: "Account balance at end of period",
|
|
1464
|
+
order: 3,
|
|
1465
|
+
},
|
|
1466
|
+
],
|
|
1467
|
+
},
|
|
1468
|
+
{
|
|
1469
|
+
name: "Transactions",
|
|
1470
|
+
multi: true,
|
|
1471
|
+
order: 2,
|
|
1472
|
+
fields: [
|
|
1473
|
+
{
|
|
1474
|
+
name: "Date",
|
|
1475
|
+
type: "date",
|
|
1476
|
+
hint: "Transaction date",
|
|
1477
|
+
order: 0,
|
|
1478
|
+
},
|
|
1479
|
+
{
|
|
1480
|
+
name: "Description",
|
|
1481
|
+
type: "string",
|
|
1482
|
+
hint: "Transaction description/narrative",
|
|
1483
|
+
order: 1,
|
|
1484
|
+
},
|
|
1485
|
+
{
|
|
1486
|
+
name: "DepositAmount",
|
|
1487
|
+
type: "money",
|
|
1488
|
+
hint: "Amount deposited (leave blank if withdrawal)",
|
|
1489
|
+
order: 2,
|
|
1490
|
+
},
|
|
1491
|
+
{
|
|
1492
|
+
name: "WithdrawalAmount",
|
|
1493
|
+
type: "money",
|
|
1494
|
+
hint: "Amount withdrawn (leave blank if deposit)",
|
|
1495
|
+
order: 3,
|
|
1496
|
+
},
|
|
1497
|
+
{
|
|
1498
|
+
name: "Balance",
|
|
1499
|
+
type: "money",
|
|
1500
|
+
hint: "Account balance after this transaction",
|
|
1501
|
+
order: 4,
|
|
1502
|
+
},
|
|
1503
|
+
],
|
|
1504
|
+
},
|
|
1505
|
+
],
|
|
1506
|
+
},
|
|
1507
|
+
|
|
1508
|
+
// **************************
|
|
1509
|
+
// Monitoring - Directors & Officers (UK)
|
|
1510
|
+
// **************************
|
|
1511
|
+
{
|
|
1512
|
+
name: "Directors & Officers",
|
|
1513
|
+
hint: "Extract UK company director and officer information including Companies House details, appointments, and shareholdings",
|
|
1514
|
+
groups: [
|
|
1515
|
+
{
|
|
1516
|
+
name: "Company Information",
|
|
1517
|
+
order: 0,
|
|
1518
|
+
fields: [
|
|
1519
|
+
{
|
|
1520
|
+
name: "CompaniesHouseNumber",
|
|
1521
|
+
type: "string",
|
|
1522
|
+
hint: "UK Companies House registration number (e.g., 12345678)",
|
|
1523
|
+
order: 0,
|
|
1524
|
+
},
|
|
1525
|
+
{
|
|
1526
|
+
name: "SICCode",
|
|
1527
|
+
type: "string",
|
|
1528
|
+
hint: "Standard Industrial Classification code for UK companies",
|
|
1529
|
+
order: 1,
|
|
1530
|
+
},
|
|
1531
|
+
{
|
|
1532
|
+
name: "UTR",
|
|
1533
|
+
type: "string",
|
|
1534
|
+
hint: "Unique Taxpayer Reference number issued by HMRC",
|
|
1535
|
+
order: 2,
|
|
1536
|
+
},
|
|
1537
|
+
{
|
|
1538
|
+
name: "VATNumber",
|
|
1539
|
+
type: "string",
|
|
1540
|
+
hint: "UK VAT registration number (if applicable)",
|
|
1541
|
+
order: 3,
|
|
1542
|
+
},
|
|
1543
|
+
{
|
|
1544
|
+
name: "DateOfIncorporation",
|
|
1545
|
+
type: "date",
|
|
1546
|
+
hint: "Date the company was incorporated in the UK",
|
|
1547
|
+
order: 4,
|
|
1548
|
+
},
|
|
1549
|
+
{
|
|
1550
|
+
name: "RegisteredOfficeAddress",
|
|
1551
|
+
type: "string-long",
|
|
1552
|
+
hint: "Official registered office address as filed with Companies House",
|
|
1553
|
+
order: 5,
|
|
1554
|
+
},
|
|
1555
|
+
],
|
|
1556
|
+
},
|
|
1557
|
+
{
|
|
1558
|
+
name: "Directors",
|
|
1559
|
+
order: 1,
|
|
1560
|
+
multi: true,
|
|
1561
|
+
fields: [
|
|
1562
|
+
{
|
|
1563
|
+
name: "DirectorName",
|
|
1564
|
+
type: "string",
|
|
1565
|
+
hint: "Full name of the director",
|
|
1566
|
+
order: 0,
|
|
1567
|
+
},
|
|
1568
|
+
{
|
|
1569
|
+
name: "DateOfBirth",
|
|
1570
|
+
type: "date",
|
|
1571
|
+
hint: "Director's date of birth",
|
|
1572
|
+
order: 1,
|
|
1573
|
+
},
|
|
1574
|
+
{
|
|
1575
|
+
name: "ResidentialAddress",
|
|
1576
|
+
type: "string-long",
|
|
1577
|
+
hint: "Director's residential address",
|
|
1578
|
+
order: 2,
|
|
1579
|
+
},
|
|
1580
|
+
{
|
|
1581
|
+
name: "Nationality",
|
|
1582
|
+
type: "string",
|
|
1583
|
+
hint: "Director's nationality",
|
|
1584
|
+
order: 3,
|
|
1585
|
+
},
|
|
1586
|
+
{
|
|
1587
|
+
name: "AppointmentDate",
|
|
1588
|
+
type: "date",
|
|
1589
|
+
hint: "Date the director was appointed to the board",
|
|
1590
|
+
order: 4,
|
|
1591
|
+
},
|
|
1592
|
+
{
|
|
1593
|
+
name: "ShareholdingPercentage",
|
|
1594
|
+
type: "number",
|
|
1595
|
+
hint: "Percentage of shares held by this director",
|
|
1596
|
+
order: 5,
|
|
1597
|
+
},
|
|
1598
|
+
],
|
|
1599
|
+
},
|
|
1600
|
+
],
|
|
1601
|
+
},
|
|
1602
|
+
|
|
1603
|
+
// **************************
|
|
1604
|
+
// Monitoring - Covenant Compliance
|
|
1605
|
+
// **************************
|
|
1606
|
+
{
|
|
1607
|
+
name: "Covenant Compliance",
|
|
1608
|
+
hint: "Extract covenant compliance information including financial covenants and overall compliance status",
|
|
1609
|
+
groups: [
|
|
1610
|
+
{
|
|
1611
|
+
name: "Reporting Information",
|
|
1612
|
+
order: 0,
|
|
1613
|
+
fields: [
|
|
1614
|
+
{
|
|
1615
|
+
name: "ReportingPeriod",
|
|
1616
|
+
type: "string",
|
|
1617
|
+
hint: "Reporting period for covenant compliance (e.g., Q1 2024, FY 2024)",
|
|
1618
|
+
order: 0,
|
|
1619
|
+
},
|
|
1620
|
+
{
|
|
1621
|
+
name: "OverallComplianceStatus",
|
|
1622
|
+
type: "string",
|
|
1623
|
+
hint: "Overall compliance status (e.g., Compliant, Breach, At Risk)",
|
|
1624
|
+
order: 1,
|
|
1625
|
+
},
|
|
1626
|
+
],
|
|
1627
|
+
},
|
|
1628
|
+
{
|
|
1629
|
+
name: "Financial Covenants",
|
|
1630
|
+
order: 1,
|
|
1631
|
+
multi: true,
|
|
1632
|
+
fields: [
|
|
1633
|
+
{
|
|
1634
|
+
name: "CovenantDescription",
|
|
1635
|
+
type: "string-long",
|
|
1636
|
+
hint: "Description of the covenant requirement",
|
|
1637
|
+
order: 0,
|
|
1638
|
+
},
|
|
1639
|
+
{
|
|
1640
|
+
name: "RequiredLevel",
|
|
1641
|
+
type: "string",
|
|
1642
|
+
hint: "Required level or threshold for compliance",
|
|
1643
|
+
order: 1,
|
|
1644
|
+
},
|
|
1645
|
+
{
|
|
1646
|
+
name: "ActualLevel",
|
|
1647
|
+
type: "string",
|
|
1648
|
+
hint: "Actual level achieved",
|
|
1649
|
+
order: 2,
|
|
1650
|
+
},
|
|
1651
|
+
{
|
|
1652
|
+
name: "ComplianceStatus",
|
|
1653
|
+
type: "string",
|
|
1654
|
+
hint: "Compliance status for this specific covenant (e.g., Compliant, Breach)",
|
|
1655
|
+
order: 3,
|
|
1656
|
+
},
|
|
1657
|
+
{
|
|
1658
|
+
name: "Comments",
|
|
1659
|
+
type: "string-long",
|
|
1660
|
+
hint: "Additional comments or notes regarding compliance",
|
|
1661
|
+
order: 4,
|
|
1662
|
+
},
|
|
1663
|
+
],
|
|
1664
|
+
},
|
|
1665
|
+
],
|
|
1666
|
+
},
|
|
1667
|
+
],
|
|
1668
|
+
},
|
|
1669
|
+
];
|