@kelpie/server 0.8.0 → 0.10.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/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/ids.d.ts +11 -0
- package/dist/lib/ids.d.ts.map +1 -1
- package/dist/lib/ids.js +11 -0
- package/dist/lib/ids.js.map +1 -1
- package/dist/modules/activities/repository.d.ts.map +1 -1
- package/dist/modules/activities/repository.js +19 -20
- package/dist/modules/activities/repository.js.map +1 -1
- package/dist/modules/activities/wording.d.ts +12 -0
- package/dist/modules/activities/wording.d.ts.map +1 -1
- package/dist/modules/activities/wording.js +16 -0
- package/dist/modules/activities/wording.js.map +1 -1
- package/dist/modules/agent-tasks/catalog.d.ts.map +1 -1
- package/dist/modules/agent-tasks/catalog.js +62 -0
- package/dist/modules/agent-tasks/catalog.js.map +1 -1
- package/dist/modules/agent-tasks/resolve.d.ts.map +1 -1
- package/dist/modules/agent-tasks/resolve.js +42 -9
- package/dist/modules/agent-tasks/resolve.js.map +1 -1
- package/dist/modules/agent-tasks/routes.d.ts +2 -0
- package/dist/modules/agent-tasks/routes.d.ts.map +1 -1
- package/dist/modules/attachedRecords.d.ts +6 -1
- package/dist/modules/attachedRecords.d.ts.map +1 -1
- package/dist/modules/attachedRecords.js +15 -1
- package/dist/modules/attachedRecords.js.map +1 -1
- package/dist/modules/companies/index.d.ts.map +1 -1
- package/dist/modules/companies/index.js +3 -1
- package/dist/modules/companies/index.js.map +1 -1
- package/dist/modules/companies/routes.d.ts +14 -0
- package/dist/modules/companies/routes.d.ts.map +1 -1
- package/dist/modules/companies/routes.js +7 -0
- package/dist/modules/companies/routes.js.map +1 -1
- package/dist/modules/companies/schema.d.ts +20 -0
- package/dist/modules/companies/schema.d.ts.map +1 -1
- package/dist/modules/companies/schema.js +6 -1
- package/dist/modules/companies/schema.js.map +1 -1
- package/dist/modules/companies/service.d.ts +5 -0
- package/dist/modules/companies/service.d.ts.map +1 -1
- package/dist/modules/companies/service.js +24 -12
- package/dist/modules/companies/service.js.map +1 -1
- package/dist/modules/consent-purposes/capabilities.d.ts +7 -0
- package/dist/modules/consent-purposes/capabilities.d.ts.map +1 -0
- package/dist/modules/consent-purposes/capabilities.js +10 -0
- package/dist/modules/consent-purposes/capabilities.js.map +1 -0
- package/dist/modules/consent-purposes/events.d.ts +38 -0
- package/dist/modules/consent-purposes/events.d.ts.map +1 -0
- package/dist/modules/consent-purposes/events.js +17 -0
- package/dist/modules/consent-purposes/events.js.map +1 -0
- package/dist/modules/consent-purposes/index.d.ts +13 -0
- package/dist/modules/consent-purposes/index.d.ts.map +1 -0
- package/dist/modules/consent-purposes/index.js +41 -0
- package/dist/modules/consent-purposes/index.js.map +1 -0
- package/dist/modules/consent-purposes/repository.d.ts +21 -0
- package/dist/modules/consent-purposes/repository.d.ts.map +1 -0
- package/dist/modules/consent-purposes/repository.js +98 -0
- package/dist/modules/consent-purposes/repository.js.map +1 -0
- package/dist/modules/consent-purposes/routes.d.ts +39 -0
- package/dist/modules/consent-purposes/routes.d.ts.map +1 -0
- package/dist/modules/consent-purposes/routes.js +79 -0
- package/dist/modules/consent-purposes/routes.js.map +1 -0
- package/dist/modules/consent-purposes/schema.d.ts +175 -0
- package/dist/modules/consent-purposes/schema.d.ts.map +1 -0
- package/dist/modules/consent-purposes/schema.js +35 -0
- package/dist/modules/consent-purposes/schema.js.map +1 -0
- package/dist/modules/consent-purposes/service.d.ts +50 -0
- package/dist/modules/consent-purposes/service.d.ts.map +1 -0
- package/dist/modules/consent-purposes/service.js +263 -0
- package/dist/modules/consent-purposes/service.js.map +1 -0
- package/dist/modules/consent-purposes/starters.d.ts +17 -0
- package/dist/modules/consent-purposes/starters.d.ts.map +1 -0
- package/dist/modules/consent-purposes/starters.js +15 -0
- package/dist/modules/consent-purposes/starters.js.map +1 -0
- package/dist/modules/consent-purposes/tools.d.ts +4 -0
- package/dist/modules/consent-purposes/tools.d.ts.map +1 -0
- package/dist/modules/consent-purposes/tools.js +29 -0
- package/dist/modules/consent-purposes/tools.js.map +1 -0
- package/dist/modules/core.d.ts.map +1 -1
- package/dist/modules/core.js +10 -0
- package/dist/modules/core.js.map +1 -1
- package/dist/modules/custom-fields/capabilities.d.ts +12 -0
- package/dist/modules/custom-fields/capabilities.d.ts.map +1 -0
- package/dist/modules/custom-fields/capabilities.js +15 -0
- package/dist/modules/custom-fields/capabilities.js.map +1 -0
- package/dist/modules/custom-fields/events.d.ts +49 -0
- package/dist/modules/custom-fields/events.d.ts.map +1 -0
- package/dist/modules/custom-fields/events.js +25 -0
- package/dist/modules/custom-fields/events.js.map +1 -0
- package/dist/modules/custom-fields/index.d.ts +19 -0
- package/dist/modules/custom-fields/index.d.ts.map +1 -0
- package/dist/modules/custom-fields/index.js +46 -0
- package/dist/modules/custom-fields/index.js.map +1 -0
- package/dist/modules/custom-fields/repository.d.ts +37 -0
- package/dist/modules/custom-fields/repository.d.ts.map +1 -0
- package/dist/modules/custom-fields/repository.js +144 -0
- package/dist/modules/custom-fields/repository.js.map +1 -0
- package/dist/modules/custom-fields/routes.d.ts +44 -0
- package/dist/modules/custom-fields/routes.d.ts.map +1 -0
- package/dist/modules/custom-fields/routes.js +103 -0
- package/dist/modules/custom-fields/routes.js.map +1 -0
- package/dist/modules/custom-fields/schema.d.ts +215 -0
- package/dist/modules/custom-fields/schema.d.ts.map +1 -0
- package/dist/modules/custom-fields/schema.js +43 -0
- package/dist/modules/custom-fields/schema.js.map +1 -0
- package/dist/modules/custom-fields/service.d.ts +57 -0
- package/dist/modules/custom-fields/service.d.ts.map +1 -0
- package/dist/modules/custom-fields/service.js +273 -0
- package/dist/modules/custom-fields/service.js.map +1 -0
- package/dist/modules/custom-fields/tools.d.ts +4 -0
- package/dist/modules/custom-fields/tools.d.ts.map +1 -0
- package/dist/modules/custom-fields/tools.js +38 -0
- package/dist/modules/custom-fields/tools.js.map +1 -0
- package/dist/modules/custom-fields/values.d.ts +49 -0
- package/dist/modules/custom-fields/values.d.ts.map +1 -0
- package/dist/modules/custom-fields/values.js +249 -0
- package/dist/modules/custom-fields/values.js.map +1 -0
- package/dist/modules/custom-fields/wire.d.ts +12 -0
- package/dist/modules/custom-fields/wire.d.ts.map +1 -0
- package/dist/modules/custom-fields/wire.js +30 -0
- package/dist/modules/custom-fields/wire.js.map +1 -0
- package/dist/modules/dashboard/repository.d.ts.map +1 -1
- package/dist/modules/dashboard/repository.js +4 -3
- package/dist/modules/dashboard/repository.js.map +1 -1
- package/dist/modules/deals/index.d.ts +2 -1
- package/dist/modules/deals/index.d.ts.map +1 -1
- package/dist/modules/deals/index.js +5 -2
- package/dist/modules/deals/index.js.map +1 -1
- package/dist/modules/deals/repository.d.ts +0 -16
- package/dist/modules/deals/repository.d.ts.map +1 -1
- package/dist/modules/deals/repository.js +6 -76
- package/dist/modules/deals/repository.js.map +1 -1
- package/dist/modules/deals/routes.d.ts +14 -0
- package/dist/modules/deals/routes.d.ts.map +1 -1
- package/dist/modules/deals/routes.js +7 -0
- package/dist/modules/deals/routes.js.map +1 -1
- package/dist/modules/deals/schema.d.ts +20 -42
- package/dist/modules/deals/schema.d.ts.map +1 -1
- package/dist/modules/deals/schema.js +6 -11
- package/dist/modules/deals/schema.js.map +1 -1
- package/dist/modules/deals/service.d.ts +13 -2
- package/dist/modules/deals/service.d.ts.map +1 -1
- package/dist/modules/deals/service.js +43 -20
- package/dist/modules/deals/service.js.map +1 -1
- package/dist/modules/decisions/repository.d.ts.map +1 -1
- package/dist/modules/decisions/repository.js +2 -0
- package/dist/modules/decisions/repository.js.map +1 -1
- package/dist/modules/decisions/routes.d.ts +1 -0
- package/dist/modules/decisions/routes.d.ts.map +1 -1
- package/dist/modules/enquiries/events.d.ts +44 -0
- package/dist/modules/enquiries/events.d.ts.map +1 -0
- package/dist/modules/enquiries/events.js +19 -0
- package/dist/modules/enquiries/events.js.map +1 -0
- package/dist/modules/enquiries/index.d.ts +13 -0
- package/dist/modules/enquiries/index.d.ts.map +1 -0
- package/dist/modules/enquiries/index.js +44 -0
- package/dist/modules/enquiries/index.js.map +1 -0
- package/dist/modules/enquiries/repository.d.ts +30 -0
- package/dist/modules/enquiries/repository.d.ts.map +1 -0
- package/dist/modules/enquiries/repository.js +94 -0
- package/dist/modules/enquiries/repository.js.map +1 -0
- package/dist/modules/enquiries/routes.d.ts +52 -0
- package/dist/modules/enquiries/routes.d.ts.map +1 -0
- package/dist/modules/enquiries/routes.js +127 -0
- package/dist/modules/enquiries/routes.js.map +1 -0
- package/dist/modules/enquiries/schema.d.ts +290 -0
- package/dist/modules/enquiries/schema.d.ts.map +1 -0
- package/dist/modules/enquiries/schema.js +52 -0
- package/dist/modules/enquiries/schema.js.map +1 -0
- package/dist/modules/enquiries/service.d.ts +85 -0
- package/dist/modules/enquiries/service.d.ts.map +1 -0
- package/dist/modules/enquiries/service.js +370 -0
- package/dist/modules/enquiries/service.js.map +1 -0
- package/dist/modules/enquiries/tools.d.ts +4 -0
- package/dist/modules/enquiries/tools.d.ts.map +1 -0
- package/dist/modules/enquiries/tools.js +50 -0
- package/dist/modules/enquiries/tools.js.map +1 -0
- package/dist/modules/eventCatalogs.d.ts +3 -0
- package/dist/modules/eventCatalogs.d.ts.map +1 -1
- package/dist/modules/eventCatalogs.js +3 -0
- package/dist/modules/eventCatalogs.js.map +1 -1
- package/dist/modules/forms/embed.d.ts +20 -6
- package/dist/modules/forms/embed.d.ts.map +1 -1
- package/dist/modules/forms/embed.js +359 -43
- package/dist/modules/forms/embed.js.map +1 -1
- package/dist/modules/forms/events.d.ts +20 -7
- package/dist/modules/forms/events.d.ts.map +1 -1
- package/dist/modules/forms/events.js +20 -2
- package/dist/modules/forms/events.js.map +1 -1
- package/dist/modules/forms/fields.d.ts +14 -1
- package/dist/modules/forms/fields.d.ts.map +1 -1
- package/dist/modules/forms/fields.js +87 -3
- package/dist/modules/forms/fields.js.map +1 -1
- package/dist/modules/forms/index.d.ts.map +1 -1
- package/dist/modules/forms/index.js +12 -1
- package/dist/modules/forms/index.js.map +1 -1
- package/dist/modules/forms/mapping.d.ts +62 -5
- package/dist/modules/forms/mapping.d.ts.map +1 -1
- package/dist/modules/forms/mapping.js +139 -5
- package/dist/modules/forms/mapping.js.map +1 -1
- package/dist/modules/forms/publicRoutes.d.ts.map +1 -1
- package/dist/modules/forms/publicRoutes.js +29 -1
- package/dist/modules/forms/publicRoutes.js.map +1 -1
- package/dist/modules/forms/repository.d.ts +31 -0
- package/dist/modules/forms/repository.d.ts.map +1 -1
- package/dist/modules/forms/repository.js +90 -1
- package/dist/modules/forms/repository.js.map +1 -1
- package/dist/modules/forms/routes.d.ts +83 -1
- package/dist/modules/forms/routes.d.ts.map +1 -1
- package/dist/modules/forms/routes.js +185 -2
- package/dist/modules/forms/routes.js.map +1 -1
- package/dist/modules/forms/schema.d.ts +672 -1
- package/dist/modules/forms/schema.d.ts.map +1 -1
- package/dist/modules/forms/schema.js +146 -3
- package/dist/modules/forms/schema.js.map +1 -1
- package/dist/modules/forms/service.d.ts +54 -1
- package/dist/modules/forms/service.d.ts.map +1 -1
- package/dist/modules/forms/service.js +338 -28
- package/dist/modules/forms/service.js.map +1 -1
- package/dist/modules/forms/submission.d.ts +15 -0
- package/dist/modules/forms/submission.d.ts.map +1 -1
- package/dist/modules/forms/submission.js +418 -40
- package/dist/modules/forms/submission.js.map +1 -1
- package/dist/modules/import-export/drafts.d.ts +10 -0
- package/dist/modules/import-export/drafts.d.ts.map +1 -1
- package/dist/modules/import-export/drafts.js +16 -2
- package/dist/modules/import-export/drafts.js.map +1 -1
- package/dist/modules/import-export/exportRows.d.ts +7 -4
- package/dist/modules/import-export/exportRows.d.ts.map +1 -1
- package/dist/modules/import-export/exportRows.js +20 -5
- package/dist/modules/import-export/exportRows.js.map +1 -1
- package/dist/modules/import-export/plan.d.ts +12 -1
- package/dist/modules/import-export/plan.d.ts.map +1 -1
- package/dist/modules/import-export/plan.js +29 -2
- package/dist/modules/import-export/plan.js.map +1 -1
- package/dist/modules/import-export/presets.d.ts.map +1 -1
- package/dist/modules/import-export/presets.js +10 -0
- package/dist/modules/import-export/presets.js.map +1 -1
- package/dist/modules/import-export/repository.d.ts +11 -1
- package/dist/modules/import-export/repository.d.ts.map +1 -1
- package/dist/modules/import-export/repository.js +42 -9
- package/dist/modules/import-export/repository.js.map +1 -1
- package/dist/modules/import-export/routes.d.ts.map +1 -1
- package/dist/modules/import-export/routes.js +4 -0
- package/dist/modules/import-export/routes.js.map +1 -1
- package/dist/modules/import-export/schema.d.ts +17 -0
- package/dist/modules/import-export/schema.d.ts.map +1 -1
- package/dist/modules/import-export/schema.js +11 -0
- package/dist/modules/import-export/schema.js.map +1 -1
- package/dist/modules/import-export/service.d.ts +6 -0
- package/dist/modules/import-export/service.d.ts.map +1 -1
- package/dist/modules/import-export/service.js +14 -2
- package/dist/modules/import-export/service.js.map +1 -1
- package/dist/modules/import-export/streams.d.ts.map +1 -1
- package/dist/modules/import-export/streams.js +3 -3
- package/dist/modules/import-export/streams.js.map +1 -1
- package/dist/modules/import-export/tools.d.ts.map +1 -1
- package/dist/modules/import-export/tools.js +8 -0
- package/dist/modules/import-export/tools.js.map +1 -1
- package/dist/modules/import-export/validation.d.ts.map +1 -1
- package/dist/modules/import-export/validation.js +22 -1
- package/dist/modules/import-export/validation.js.map +1 -1
- package/dist/modules/import-export/writes.d.ts.map +1 -1
- package/dist/modules/import-export/writes.js +37 -4
- package/dist/modules/import-export/writes.js.map +1 -1
- package/dist/modules/lists/index.d.ts +38 -0
- package/dist/modules/lists/index.d.ts.map +1 -1
- package/dist/modules/lists/index.js +27 -0
- package/dist/modules/lists/index.js.map +1 -1
- package/dist/modules/lists/repository.d.ts +26 -0
- package/dist/modules/lists/repository.d.ts.map +1 -1
- package/dist/modules/lists/repository.js +32 -0
- package/dist/modules/lists/repository.js.map +1 -1
- package/dist/modules/lists/routes.d.ts +4 -0
- package/dist/modules/lists/routes.d.ts.map +1 -1
- package/dist/modules/lists/routes.js +8 -0
- package/dist/modules/lists/routes.js.map +1 -1
- package/dist/modules/lists/schema.d.ts +17 -0
- package/dist/modules/lists/schema.d.ts.map +1 -1
- package/dist/modules/lists/schema.js +10 -0
- package/dist/modules/lists/schema.js.map +1 -1
- package/dist/modules/lists/service.d.ts +14 -2
- package/dist/modules/lists/service.d.ts.map +1 -1
- package/dist/modules/lists/service.js +55 -7
- package/dist/modules/lists/service.js.map +1 -1
- package/dist/modules/mcp/index.d.ts.map +1 -1
- package/dist/modules/mcp/index.js +5 -0
- package/dist/modules/mcp/index.js.map +1 -1
- package/dist/modules/notes/routes.d.ts +1 -0
- package/dist/modules/notes/routes.d.ts.map +1 -1
- package/dist/modules/opportunities/index.d.ts.map +1 -1
- package/dist/modules/opportunities/index.js +3 -1
- package/dist/modules/opportunities/index.js.map +1 -1
- package/dist/modules/opportunities/repository.d.ts +2 -0
- package/dist/modules/opportunities/repository.d.ts.map +1 -1
- package/dist/modules/opportunities/repository.js +4 -0
- package/dist/modules/opportunities/repository.js.map +1 -1
- package/dist/modules/opportunities/routes.d.ts +16 -0
- package/dist/modules/opportunities/routes.d.ts.map +1 -1
- package/dist/modules/opportunities/routes.js +13 -0
- package/dist/modules/opportunities/routes.js.map +1 -1
- package/dist/modules/opportunities/schema.d.ts +20 -0
- package/dist/modules/opportunities/schema.d.ts.map +1 -1
- package/dist/modules/opportunities/schema.js +6 -1
- package/dist/modules/opportunities/schema.js.map +1 -1
- package/dist/modules/opportunities/service.d.ts +20 -3
- package/dist/modules/opportunities/service.d.ts.map +1 -1
- package/dist/modules/opportunities/service.js +99 -18
- package/dist/modules/opportunities/service.js.map +1 -1
- package/dist/modules/opportunities/tools.d.ts.map +1 -1
- package/dist/modules/opportunities/tools.js +2 -0
- package/dist/modules/opportunities/tools.js.map +1 -1
- package/dist/modules/partnerships/index.d.ts.map +1 -1
- package/dist/modules/partnerships/index.js +3 -1
- package/dist/modules/partnerships/index.js.map +1 -1
- package/dist/modules/partnerships/repository.d.ts +0 -17
- package/dist/modules/partnerships/repository.d.ts.map +1 -1
- package/dist/modules/partnerships/repository.js +6 -82
- package/dist/modules/partnerships/repository.js.map +1 -1
- package/dist/modules/partnerships/routes.d.ts +14 -0
- package/dist/modules/partnerships/routes.d.ts.map +1 -1
- package/dist/modules/partnerships/routes.js +7 -0
- package/dist/modules/partnerships/routes.js.map +1 -1
- package/dist/modules/partnerships/schema.d.ts +20 -41
- package/dist/modules/partnerships/schema.d.ts.map +1 -1
- package/dist/modules/partnerships/schema.js +6 -10
- package/dist/modules/partnerships/schema.js.map +1 -1
- package/dist/modules/partnerships/service.d.ts +11 -1
- package/dist/modules/partnerships/service.d.ts.map +1 -1
- package/dist/modules/partnerships/service.js +43 -20
- package/dist/modules/partnerships/service.js.map +1 -1
- package/dist/modules/people/consentHydration.d.ts +26 -0
- package/dist/modules/people/consentHydration.d.ts.map +1 -0
- package/dist/modules/people/consentHydration.js +100 -0
- package/dist/modules/people/consentHydration.js.map +1 -0
- package/dist/modules/people/index.d.ts.map +1 -1
- package/dist/modules/people/index.js +3 -1
- package/dist/modules/people/index.js.map +1 -1
- package/dist/modules/people/personConsentWrites.d.ts +40 -0
- package/dist/modules/people/personConsentWrites.d.ts.map +1 -0
- package/dist/modules/people/personConsentWrites.js +98 -0
- package/dist/modules/people/personConsentWrites.js.map +1 -0
- package/dist/modules/people/repository.d.ts.map +1 -1
- package/dist/modules/people/repository.js +5 -1
- package/dist/modules/people/repository.js.map +1 -1
- package/dist/modules/people/routes.d.ts +57 -4
- package/dist/modules/people/routes.d.ts.map +1 -1
- package/dist/modules/people/routes.js +104 -5
- package/dist/modules/people/routes.js.map +1 -1
- package/dist/modules/people/schema.d.ts +366 -1
- package/dist/modules/people/schema.d.ts.map +1 -1
- package/dist/modules/people/schema.js +92 -2
- package/dist/modules/people/schema.js.map +1 -1
- package/dist/modules/people/service.d.ts +30 -1
- package/dist/modules/people/service.d.ts.map +1 -1
- package/dist/modules/people/service.js +115 -38
- package/dist/modules/people/service.js.map +1 -1
- package/dist/modules/people/tools.d.ts.map +1 -1
- package/dist/modules/people/tools.js +4 -1
- package/dist/modules/people/tools.js.map +1 -1
- package/dist/modules/personLinks.d.ts +79 -0
- package/dist/modules/personLinks.d.ts.map +1 -0
- package/dist/modules/personLinks.js +155 -0
- package/dist/modules/personLinks.js.map +1 -0
- package/dist/modules/pipelines/routes.d.ts +1 -0
- package/dist/modules/pipelines/routes.d.ts.map +1 -1
- package/dist/modules/plans/routes.d.ts +1 -0
- package/dist/modules/plans/routes.d.ts.map +1 -1
- package/dist/modules/raises/index.d.ts.map +1 -1
- package/dist/modules/raises/index.js +3 -1
- package/dist/modules/raises/index.js.map +1 -1
- package/dist/modules/raises/repository.d.ts +0 -17
- package/dist/modules/raises/repository.d.ts.map +1 -1
- package/dist/modules/raises/repository.js +6 -77
- package/dist/modules/raises/repository.js.map +1 -1
- package/dist/modules/raises/routes.d.ts +14 -0
- package/dist/modules/raises/routes.d.ts.map +1 -1
- package/dist/modules/raises/routes.js +7 -0
- package/dist/modules/raises/routes.js.map +1 -1
- package/dist/modules/raises/schema.d.ts +20 -41
- package/dist/modules/raises/schema.d.ts.map +1 -1
- package/dist/modules/raises/schema.js +6 -10
- package/dist/modules/raises/schema.js.map +1 -1
- package/dist/modules/raises/service.d.ts +11 -1
- package/dist/modules/raises/service.d.ts.map +1 -1
- package/dist/modules/raises/service.js +41 -18
- package/dist/modules/raises/service.js.map +1 -1
- package/dist/modules/recordTargets.d.ts.map +1 -1
- package/dist/modules/recordTargets.js +2 -0
- package/dist/modules/recordTargets.js.map +1 -1
- package/dist/modules/references.d.ts +10 -0
- package/dist/modules/references.d.ts.map +1 -1
- package/dist/modules/references.js +27 -4
- package/dist/modules/references.js.map +1 -1
- package/dist/modules/sample-data/fixture.d.ts +21 -0
- package/dist/modules/sample-data/fixture.d.ts.map +1 -1
- package/dist/modules/sample-data/fixture.js +40 -0
- package/dist/modules/sample-data/fixture.js.map +1 -1
- package/dist/modules/sample-data/index.d.ts.map +1 -1
- package/dist/modules/sample-data/index.js +1 -0
- package/dist/modules/sample-data/index.js.map +1 -1
- package/dist/modules/sample-data/routes.d.ts.map +1 -1
- package/dist/modules/sample-data/routes.js +1 -0
- package/dist/modules/sample-data/routes.js.map +1 -1
- package/dist/modules/sample-data/service.d.ts +1 -0
- package/dist/modules/sample-data/service.d.ts.map +1 -1
- package/dist/modules/sample-data/service.js +77 -8
- package/dist/modules/sample-data/service.js.map +1 -1
- package/dist/modules/search/index.d.ts +1 -1
- package/dist/modules/search/index.d.ts.map +1 -1
- package/dist/modules/search/index.js +2 -1
- package/dist/modules/search/index.js.map +1 -1
- package/dist/modules/search/repository.d.ts +1 -0
- package/dist/modules/search/repository.d.ts.map +1 -1
- package/dist/modules/search/repository.js +23 -0
- package/dist/modules/search/repository.js.map +1 -1
- package/dist/modules/search/service.d.ts +3 -3
- package/dist/modules/search/service.d.ts.map +1 -1
- package/dist/modules/search/service.js +5 -4
- package/dist/modules/search/service.js.map +1 -1
- package/dist/modules/stagedRecords.d.ts +3 -3
- package/dist/modules/stagedRecords.d.ts.map +1 -1
- package/dist/modules/stagedRecords.js +9 -0
- package/dist/modules/stagedRecords.js.map +1 -1
- package/dist/modules/webhooks/payloads.d.ts.map +1 -1
- package/dist/modules/webhooks/payloads.js +15 -2
- package/dist/modules/webhooks/payloads.js.map +1 -1
- package/dist/modules/workspace/repository.d.ts +2 -0
- package/dist/modules/workspace/repository.d.ts.map +1 -1
- package/dist/modules/workspace/repository.js +7 -0
- package/dist/modules/workspace/repository.js.map +1 -1
- package/dist/modules/workspace/service.d.ts.map +1 -1
- package/dist/modules/workspace/service.js +10 -0
- package/dist/modules/workspace/service.js.map +1 -1
- package/dist/modules/workspace/starters.d.ts.map +1 -1
- package/dist/modules/workspace/starters.js +5 -0
- package/dist/modules/workspace/starters.js.map +1 -1
- package/dist/runtime/events.d.ts +1 -1
- package/dist/runtime/events.d.ts.map +1 -1
- package/dist/runtime/events.js +1 -0
- package/dist/runtime/events.js.map +1 -1
- package/dist/schema/index.d.ts +3 -0
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +3 -0
- package/dist/schema/index.js.map +1 -1
- package/dist/testing/database.d.ts +5 -1
- package/dist/testing/database.d.ts.map +1 -1
- package/dist/testing/database.js +81 -10
- package/dist/testing/database.js.map +1 -1
- package/migrations/0024_third_king_cobra.sql +46 -0
- package/migrations/0025_worthless_chimera.sql +3 -0
- package/migrations/0026_late_aqueduct.sql +46 -0
- package/migrations/0027_brainy_silver_sable.sql +3 -0
- package/migrations/0028_freezing_scrambler.sql +19 -0
- package/migrations/0029_custom_fields.sql +26 -0
- package/migrations/0030_enquiries.sql +79 -0
- package/migrations/0031_consent.sql +45 -0
- package/migrations/0032_form_field_statement.sql +1 -0
- package/migrations/0033_form_field_consent_purpose_ids.sql +5 -0
- package/migrations/0034_drop_form_field_consent_purpose_id.sql +1 -0
- package/migrations/0035_form_field_consent_purpose_labels.sql +1 -0
- package/migrations/0036_form_field_notice_type.sql +2 -0
- package/migrations/meta/0024_snapshot.json +5516 -0
- package/migrations/meta/0025_snapshot.json +5336 -0
- package/migrations/meta/0026_snapshot.json +5710 -0
- package/migrations/meta/0027_snapshot.json +5716 -0
- package/migrations/meta/0028_snapshot.json +5740 -0
- package/migrations/meta/0029_snapshot.json +5935 -0
- package/migrations/meta/0030_snapshot.json +6245 -0
- package/migrations/meta/0031_snapshot.json +6572 -0
- package/migrations/meta/0032_snapshot.json +6578 -0
- package/migrations/meta/0033_snapshot.json +6572 -0
- package/migrations/meta/0034_snapshot.json +6566 -0
- package/migrations/meta/0035_snapshot.json +6573 -0
- package/migrations/meta/0036_snapshot.json +6573 -0
- package/migrations/meta/_journal.json +91 -0
- package/package.json +2 -2
- package/src/index.ts +6 -0
- package/src/lib/ids.ts +11 -0
- package/src/modules/activities/repository.ts +22 -23
- package/src/modules/activities/wording.ts +18 -0
- package/src/modules/agent-tasks/catalog.ts +63 -0
- package/src/modules/agent-tasks/resolve.ts +64 -24
- package/src/modules/attachedRecords.ts +29 -2
- package/src/modules/companies/index.ts +3 -1
- package/src/modules/companies/routes.ts +7 -0
- package/src/modules/companies/schema.ts +7 -1
- package/src/modules/companies/service.ts +48 -13
- package/src/modules/consent-purposes/capabilities.ts +12 -0
- package/src/modules/consent-purposes/events.ts +38 -0
- package/src/modules/consent-purposes/index.ts +48 -0
- package/src/modules/consent-purposes/repository.ts +163 -0
- package/src/modules/consent-purposes/routes.ts +122 -0
- package/src/modules/consent-purposes/schema.ts +46 -0
- package/src/modules/consent-purposes/service.ts +423 -0
- package/src/modules/consent-purposes/starters.ts +32 -0
- package/src/modules/consent-purposes/tools.ts +44 -0
- package/src/modules/core.ts +10 -0
- package/src/modules/custom-fields/capabilities.ts +17 -0
- package/src/modules/custom-fields/events.ts +51 -0
- package/src/modules/custom-fields/index.ts +61 -0
- package/src/modules/custom-fields/repository.ts +225 -0
- package/src/modules/custom-fields/routes.ts +155 -0
- package/src/modules/custom-fields/schema.ts +61 -0
- package/src/modules/custom-fields/service.ts +439 -0
- package/src/modules/custom-fields/tools.ts +53 -0
- package/src/modules/custom-fields/values.ts +352 -0
- package/src/modules/custom-fields/wire.ts +32 -0
- package/src/modules/dashboard/repository.ts +4 -3
- package/src/modules/deals/index.ts +5 -2
- package/src/modules/deals/repository.ts +6 -106
- package/src/modules/deals/routes.ts +7 -0
- package/src/modules/deals/schema.ts +7 -15
- package/src/modules/deals/service.ts +92 -23
- package/src/modules/decisions/repository.ts +2 -0
- package/src/modules/enquiries/events.ts +45 -0
- package/src/modules/enquiries/index.ts +50 -0
- package/src/modules/enquiries/repository.ts +164 -0
- package/src/modules/enquiries/routes.ts +172 -0
- package/src/modules/enquiries/schema.ts +59 -0
- package/src/modules/enquiries/service.ts +644 -0
- package/src/modules/enquiries/tools.ts +66 -0
- package/src/modules/eventCatalogs.ts +3 -0
- package/src/modules/forms/embed.ts +391 -44
- package/src/modules/forms/events.ts +30 -2
- package/src/modules/forms/fields.ts +102 -2
- package/src/modules/forms/index.ts +12 -1
- package/src/modules/forms/mapping.ts +183 -6
- package/src/modules/forms/publicRoutes.ts +43 -1
- package/src/modules/forms/repository.ts +162 -1
- package/src/modules/forms/routes.ts +212 -2
- package/src/modules/forms/schema.ts +166 -4
- package/src/modules/forms/service.ts +565 -41
- package/src/modules/forms/submission.ts +718 -44
- package/src/modules/import-export/drafts.ts +20 -1
- package/src/modules/import-export/exportRows.ts +21 -5
- package/src/modules/import-export/plan.ts +47 -2
- package/src/modules/import-export/presets.ts +10 -0
- package/src/modules/import-export/repository.ts +73 -8
- package/src/modules/import-export/routes.ts +4 -0
- package/src/modules/import-export/schema.ts +11 -0
- package/src/modules/import-export/service.ts +28 -2
- package/src/modules/import-export/streams.ts +3 -1
- package/src/modules/import-export/tools.ts +10 -0
- package/src/modules/import-export/validation.ts +28 -0
- package/src/modules/import-export/writes.ts +70 -5
- package/src/modules/lists/index.ts +71 -0
- package/src/modules/lists/repository.ts +64 -0
- package/src/modules/lists/routes.ts +8 -0
- package/src/modules/lists/schema.ts +10 -0
- package/src/modules/lists/service.ts +110 -9
- package/src/modules/mcp/index.ts +5 -0
- package/src/modules/opportunities/index.ts +3 -1
- package/src/modules/opportunities/repository.ts +11 -0
- package/src/modules/opportunities/routes.ts +13 -0
- package/src/modules/opportunities/schema.ts +7 -1
- package/src/modules/opportunities/service.ts +188 -22
- package/src/modules/opportunities/tools.ts +2 -0
- package/src/modules/partnerships/index.ts +3 -1
- package/src/modules/partnerships/repository.ts +6 -117
- package/src/modules/partnerships/routes.ts +7 -0
- package/src/modules/partnerships/schema.ts +7 -14
- package/src/modules/partnerships/service.ts +93 -22
- package/src/modules/people/consentHydration.ts +167 -0
- package/src/modules/people/index.ts +3 -1
- package/src/modules/people/personConsentWrites.ts +177 -0
- package/src/modules/people/repository.ts +5 -0
- package/src/modules/people/routes.ts +127 -18
- package/src/modules/people/schema.ts +109 -3
- package/src/modules/people/service.ts +186 -40
- package/src/modules/people/tools.ts +5 -1
- package/src/modules/personLinks.ts +278 -0
- package/src/modules/raises/index.ts +3 -1
- package/src/modules/raises/repository.ts +6 -107
- package/src/modules/raises/routes.ts +7 -0
- package/src/modules/raises/schema.ts +7 -14
- package/src/modules/raises/service.ts +91 -20
- package/src/modules/recordTargets.ts +2 -0
- package/src/modules/references.ts +43 -4
- package/src/modules/sample-data/fixture.ts +63 -0
- package/src/modules/sample-data/index.ts +1 -0
- package/src/modules/sample-data/routes.ts +1 -0
- package/src/modules/sample-data/service.ts +97 -8
- package/src/modules/search/index.ts +2 -1
- package/src/modules/search/repository.ts +33 -1
- package/src/modules/search/service.ts +7 -5
- package/src/modules/stagedRecords.ts +18 -3
- package/src/modules/webhooks/payloads.ts +20 -2
- package/src/modules/workspace/repository.ts +12 -0
- package/src/modules/workspace/service.ts +14 -0
- package/src/modules/workspace/starters.ts +5 -0
- package/src/runtime/events.ts +1 -0
- package/src/schema/index.ts +3 -0
- package/src/testing/database.ts +97 -11
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
CREATE TABLE "person_links" (
|
|
2
|
+
"id" text PRIMARY KEY NOT NULL,
|
|
3
|
+
"workspace_id" text NOT NULL,
|
|
4
|
+
"person_id" text NOT NULL,
|
|
5
|
+
"target_type" text NOT NULL,
|
|
6
|
+
"target_id" text NOT NULL,
|
|
7
|
+
CONSTRAINT "person_links_person_target_key" UNIQUE("person_id","target_type","target_id"),
|
|
8
|
+
CONSTRAINT "person_links_target_type_check" CHECK ("person_links"."target_type" in ('deal', 'opportunity', 'raise', 'partnership'))
|
|
9
|
+
);
|
|
10
|
+
--> statement-breakpoint
|
|
11
|
+
ALTER TABLE "person_links" ADD CONSTRAINT "person_links_workspace_id_workspaces_id_fk" FOREIGN KEY ("workspace_id") REFERENCES "public"."workspaces"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
12
|
+
ALTER TABLE "person_links" ADD CONSTRAINT "person_links_person_id_people_id_fk" FOREIGN KEY ("person_id") REFERENCES "public"."people"("id") ON DELETE restrict ON UPDATE no action;--> statement-breakpoint
|
|
13
|
+
CREATE INDEX "person_links_target_idx" ON "person_links" USING btree ("workspace_id","target_type","target_id");--> statement-breakpoint
|
|
14
|
+
-- Backfill from the three per-pipeline join tables, hand-added because drizzle-kit
|
|
15
|
+
-- writes DDL only and this table replaces them. `workspace_id` comes from the
|
|
16
|
+
-- parent join (the old joins never carried one). `ON CONFLICT DO NOTHING` makes
|
|
17
|
+
-- each statement re-run-safe even though the journal only applies it once.
|
|
18
|
+
-- The join tables themselves are dropped by the next migration, after the
|
|
19
|
+
-- service code has stopped writing to them.
|
|
20
|
+
INSERT INTO "person_links" ("id", "workspace_id", "person_id", "target_type", "target_id")
|
|
21
|
+
SELECT 'plink_' || replace(gen_random_uuid()::text, '-', ''),
|
|
22
|
+
"deals"."workspace_id",
|
|
23
|
+
"deal_people"."person_id",
|
|
24
|
+
'deal',
|
|
25
|
+
"deal_people"."deal_id"
|
|
26
|
+
FROM "deal_people"
|
|
27
|
+
JOIN "deals" ON "deals"."id" = "deal_people"."deal_id"
|
|
28
|
+
ON CONFLICT ("person_id", "target_type", "target_id") DO NOTHING;--> statement-breakpoint
|
|
29
|
+
INSERT INTO "person_links" ("id", "workspace_id", "person_id", "target_type", "target_id")
|
|
30
|
+
SELECT 'plink_' || replace(gen_random_uuid()::text, '-', ''),
|
|
31
|
+
"partnerships"."workspace_id",
|
|
32
|
+
"partnership_people"."person_id",
|
|
33
|
+
'partnership',
|
|
34
|
+
"partnership_people"."partnership_id"
|
|
35
|
+
FROM "partnership_people"
|
|
36
|
+
JOIN "partnerships" ON "partnerships"."id" = "partnership_people"."partnership_id"
|
|
37
|
+
ON CONFLICT ("person_id", "target_type", "target_id") DO NOTHING;--> statement-breakpoint
|
|
38
|
+
INSERT INTO "person_links" ("id", "workspace_id", "person_id", "target_type", "target_id")
|
|
39
|
+
SELECT 'plink_' || replace(gen_random_uuid()::text, '-', ''),
|
|
40
|
+
"raises"."workspace_id",
|
|
41
|
+
"raise_people"."person_id",
|
|
42
|
+
'raise',
|
|
43
|
+
"raise_people"."raise_id"
|
|
44
|
+
FROM "raise_people"
|
|
45
|
+
JOIN "raises" ON "raises"."id" = "raise_people"."raise_id"
|
|
46
|
+
ON CONFLICT ("person_id", "target_type", "target_id") DO NOTHING;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
CREATE TABLE "form_attach_targets" (
|
|
2
|
+
"workspace_id" text NOT NULL,
|
|
3
|
+
"form_id" text NOT NULL,
|
|
4
|
+
"target_type" text NOT NULL,
|
|
5
|
+
"target_id" text NOT NULL,
|
|
6
|
+
CONSTRAINT "form_attach_targets_form_id_target_type_target_id_pk" PRIMARY KEY("form_id","target_type","target_id"),
|
|
7
|
+
CONSTRAINT "form_attach_targets_target_type_check" CHECK ("form_attach_targets"."target_type" in ('deal', 'opportunity', 'raise', 'partnership'))
|
|
8
|
+
);
|
|
9
|
+
--> statement-breakpoint
|
|
10
|
+
CREATE TABLE "form_lists" (
|
|
11
|
+
"workspace_id" text NOT NULL,
|
|
12
|
+
"form_id" text NOT NULL,
|
|
13
|
+
"list_id" text NOT NULL,
|
|
14
|
+
CONSTRAINT "form_lists_form_id_list_id_pk" PRIMARY KEY("form_id","list_id")
|
|
15
|
+
);
|
|
16
|
+
--> statement-breakpoint
|
|
17
|
+
ALTER TABLE "form_fields" DROP CONSTRAINT "form_fields_map_to_check";--> statement-breakpoint
|
|
18
|
+
ALTER TABLE "form_submissions" ADD COLUMN "opportunity_id" text;--> statement-breakpoint
|
|
19
|
+
ALTER TABLE "form_submissions" ADD COLUMN "partnership_id" text;--> statement-breakpoint
|
|
20
|
+
ALTER TABLE "form_submissions" ADD COLUMN "action_log" jsonb DEFAULT '[]'::jsonb NOT NULL;--> statement-breakpoint
|
|
21
|
+
ALTER TABLE "forms" ADD COLUMN "create_opportunity" boolean DEFAULT false NOT NULL;--> statement-breakpoint
|
|
22
|
+
ALTER TABLE "forms" ADD COLUMN "opportunity_kind" text;--> statement-breakpoint
|
|
23
|
+
ALTER TABLE "forms" ADD COLUMN "opportunity_stage_id" text;--> statement-breakpoint
|
|
24
|
+
ALTER TABLE "forms" ADD COLUMN "opportunity_name_template" text;--> statement-breakpoint
|
|
25
|
+
ALTER TABLE "forms" ADD COLUMN "opportunity_owner_id" text;--> statement-breakpoint
|
|
26
|
+
ALTER TABLE "forms" ADD COLUMN "create_partnership" boolean DEFAULT false NOT NULL;--> statement-breakpoint
|
|
27
|
+
ALTER TABLE "forms" ADD COLUMN "partnership_kind" text;--> statement-breakpoint
|
|
28
|
+
ALTER TABLE "forms" ADD COLUMN "partnership_stage_id" text;--> statement-breakpoint
|
|
29
|
+
ALTER TABLE "forms" ADD COLUMN "partnership_name_template" text;--> statement-breakpoint
|
|
30
|
+
ALTER TABLE "forms" ADD COLUMN "partnership_owner_id" text;--> statement-breakpoint
|
|
31
|
+
ALTER TABLE "forms" ADD COLUMN "person_tags" text[] DEFAULT '{}' NOT NULL;--> statement-breakpoint
|
|
32
|
+
ALTER TABLE "forms" ADD COLUMN "company_tags" text[] DEFAULT '{}' NOT NULL;--> statement-breakpoint
|
|
33
|
+
ALTER TABLE "form_attach_targets" ADD CONSTRAINT "form_attach_targets_workspace_id_workspaces_id_fk" FOREIGN KEY ("workspace_id") REFERENCES "public"."workspaces"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
34
|
+
ALTER TABLE "form_attach_targets" ADD CONSTRAINT "form_attach_targets_form_id_forms_id_fk" FOREIGN KEY ("form_id") REFERENCES "public"."forms"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
35
|
+
ALTER TABLE "form_lists" ADD CONSTRAINT "form_lists_workspace_id_workspaces_id_fk" FOREIGN KEY ("workspace_id") REFERENCES "public"."workspaces"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
36
|
+
ALTER TABLE "form_lists" ADD CONSTRAINT "form_lists_form_id_forms_id_fk" FOREIGN KEY ("form_id") REFERENCES "public"."forms"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
37
|
+
ALTER TABLE "form_lists" ADD CONSTRAINT "form_lists_list_id_lists_id_fk" FOREIGN KEY ("list_id") REFERENCES "public"."lists"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
38
|
+
CREATE INDEX "form_attach_targets_target_idx" ON "form_attach_targets" USING btree ("workspace_id","target_type","target_id");--> statement-breakpoint
|
|
39
|
+
CREATE INDEX "form_lists_workspace_idx" ON "form_lists" USING btree ("workspace_id");--> statement-breakpoint
|
|
40
|
+
ALTER TABLE "form_submissions" ADD CONSTRAINT "form_submissions_opportunity_id_opportunities_id_fk" FOREIGN KEY ("opportunity_id") REFERENCES "public"."opportunities"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
|
|
41
|
+
ALTER TABLE "form_submissions" ADD CONSTRAINT "form_submissions_partnership_id_partnerships_id_fk" FOREIGN KEY ("partnership_id") REFERENCES "public"."partnerships"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
|
|
42
|
+
ALTER TABLE "forms" ADD CONSTRAINT "forms_opportunity_stage_id_pipeline_stages_id_fk" FOREIGN KEY ("opportunity_stage_id") REFERENCES "public"."pipeline_stages"("id") ON DELETE restrict ON UPDATE no action;--> statement-breakpoint
|
|
43
|
+
ALTER TABLE "forms" ADD CONSTRAINT "forms_opportunity_owner_id_workspace_members_id_fk" FOREIGN KEY ("opportunity_owner_id") REFERENCES "public"."workspace_members"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
|
|
44
|
+
ALTER TABLE "forms" ADD CONSTRAINT "forms_partnership_stage_id_pipeline_stages_id_fk" FOREIGN KEY ("partnership_stage_id") REFERENCES "public"."pipeline_stages"("id") ON DELETE restrict ON UPDATE no action;--> statement-breakpoint
|
|
45
|
+
ALTER TABLE "forms" ADD CONSTRAINT "forms_partnership_owner_id_workspace_members_id_fk" FOREIGN KEY ("partnership_owner_id") REFERENCES "public"."workspace_members"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
|
|
46
|
+
ALTER TABLE "form_fields" ADD CONSTRAINT "form_fields_map_to_check" CHECK ("form_fields"."map_to" in ('person.name', 'person.email', 'company.name', 'company.domain', 'position.title', 'deal.name', 'opportunity.name', 'partnership.name', 'submission'));
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
-- Hand-ordered. Drizzle Kit emitted the `search_vector` rebuild before the
|
|
2
|
+
-- columns that rebuild reads, and dropping a generated column drops the index
|
|
3
|
+
-- over it, which Drizzle then never recreated. Two edits to what it generated:
|
|
4
|
+
--
|
|
5
|
+
-- 1. The four `people` columns are added first. Postgres validates a generated
|
|
6
|
+
-- expression at ADD COLUMN time, so the original order failed outright on
|
|
7
|
+
-- `column "first_name" does not exist`.
|
|
8
|
+
-- 2. `people_search_idx` is recreated after the column comes back. Nothing
|
|
9
|
+
-- would have failed without it — search would have gone on answering, from
|
|
10
|
+
-- a sequential scan of every person in the installation.
|
|
11
|
+
ALTER TABLE "people" ADD COLUMN "salutation" text;--> statement-breakpoint
|
|
12
|
+
ALTER TABLE "people" ADD COLUMN "first_name" text;--> statement-breakpoint
|
|
13
|
+
ALTER TABLE "people" ADD COLUMN "last_name" text;--> statement-breakpoint
|
|
14
|
+
ALTER TABLE "people" ADD COLUMN "suffix" text;--> statement-breakpoint
|
|
15
|
+
ALTER TABLE "people" drop column "search_vector";--> statement-breakpoint
|
|
16
|
+
ALTER TABLE "people" ADD COLUMN "search_vector" "tsvector" GENERATED ALWAYS AS (setweight(to_tsvector('english', regexp_replace(coalesce("people"."name"::text, ''), '[^[:alnum:]]+', ' ', 'g')), 'A') || setweight(to_tsvector('english', regexp_replace(coalesce("people"."first_name"::text, ''), '[^[:alnum:]]+', ' ', 'g')), 'A') || setweight(to_tsvector('english', regexp_replace(coalesce("people"."last_name"::text, ''), '[^[:alnum:]]+', ' ', 'g')), 'A') || setweight(to_tsvector('english', regexp_replace(coalesce("people"."email"::text, ''), '[^[:alnum:]]+', ' ', 'g')), 'B') || setweight(to_tsvector('english', regexp_replace(coalesce("people"."summary"::text, ''), '[^[:alnum:]]+', ' ', 'g')), 'B') || setweight(to_tsvector('english', regexp_replace(coalesce(kelpie_text_array_to_string("people"."tags"), ''), '[^[:alnum:]]+', ' ', 'g')), 'C')) STORED;--> statement-breakpoint
|
|
17
|
+
CREATE INDEX "people_search_idx" ON "people" USING gin ("search_vector");--> statement-breakpoint
|
|
18
|
+
ALTER TABLE "form_fields" DROP CONSTRAINT "form_fields_map_to_check";--> statement-breakpoint
|
|
19
|
+
ALTER TABLE "form_fields" ADD CONSTRAINT "form_fields_map_to_check" CHECK ("form_fields"."map_to" in ('person.name', 'person.first_name', 'person.last_name', 'person.email', 'company.name', 'company.domain', 'position.title', 'deal.name', 'opportunity.name', 'partnership.name', 'submission'));
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
CREATE TABLE "custom_field_definitions" (
|
|
2
|
+
"id" text PRIMARY KEY NOT NULL,
|
|
3
|
+
"workspace_id" text NOT NULL,
|
|
4
|
+
"object_type" text NOT NULL,
|
|
5
|
+
"key" text NOT NULL,
|
|
6
|
+
"label" text NOT NULL,
|
|
7
|
+
"type" text NOT NULL,
|
|
8
|
+
"options" jsonb DEFAULT '[]'::jsonb NOT NULL,
|
|
9
|
+
"description" text DEFAULT '' NOT NULL,
|
|
10
|
+
"sort_order" integer NOT NULL,
|
|
11
|
+
"created_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
12
|
+
"updated_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
13
|
+
CONSTRAINT "custom_field_definitions_workspace_object_key_key" UNIQUE("workspace_id","object_type","key"),
|
|
14
|
+
CONSTRAINT "custom_field_definitions_object_type_check" CHECK ("custom_field_definitions"."object_type" in ('person', 'company', 'deal', 'opportunity', 'partnership', 'raise')),
|
|
15
|
+
CONSTRAINT "custom_field_definitions_type_check" CHECK ("custom_field_definitions"."type" in ('text', 'long_text', 'number', 'currency', 'date', 'checkbox', 'select', 'multi_select', 'url'))
|
|
16
|
+
);
|
|
17
|
+
--> statement-breakpoint
|
|
18
|
+
ALTER TABLE "people" ADD COLUMN "custom_fields" jsonb DEFAULT '{}'::jsonb NOT NULL;--> statement-breakpoint
|
|
19
|
+
ALTER TABLE "companies" ADD COLUMN "custom_fields" jsonb DEFAULT '{}'::jsonb NOT NULL;--> statement-breakpoint
|
|
20
|
+
ALTER TABLE "deals" ADD COLUMN "custom_fields" jsonb DEFAULT '{}'::jsonb NOT NULL;--> statement-breakpoint
|
|
21
|
+
ALTER TABLE "opportunities" ADD COLUMN "custom_fields" jsonb DEFAULT '{}'::jsonb NOT NULL;--> statement-breakpoint
|
|
22
|
+
ALTER TABLE "partnerships" ADD COLUMN "custom_fields" jsonb DEFAULT '{}'::jsonb NOT NULL;--> statement-breakpoint
|
|
23
|
+
ALTER TABLE "raises" ADD COLUMN "custom_fields" jsonb DEFAULT '{}'::jsonb NOT NULL;--> statement-breakpoint
|
|
24
|
+
ALTER TABLE "custom_field_definitions" ADD CONSTRAINT "custom_field_definitions_workspace_id_workspaces_id_fk" FOREIGN KEY ("workspace_id") REFERENCES "public"."workspaces"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
25
|
+
CREATE INDEX "custom_field_definitions_workspace_idx" ON "custom_field_definitions" USING btree ("workspace_id");--> statement-breakpoint
|
|
26
|
+
CREATE INDEX "custom_field_definitions_workspace_object_idx" ON "custom_field_definitions" USING btree ("workspace_id","object_type");
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
CREATE TABLE "enquiries" (
|
|
2
|
+
"id" text PRIMARY KEY NOT NULL,
|
|
3
|
+
"workspace_id" text NOT NULL,
|
|
4
|
+
"name" text NOT NULL,
|
|
5
|
+
"source" text DEFAULT '' NOT NULL,
|
|
6
|
+
"stage_id" text NOT NULL,
|
|
7
|
+
"company_id" text,
|
|
8
|
+
"owner_id" text,
|
|
9
|
+
"converted_deal_id" text,
|
|
10
|
+
"summary" text DEFAULT '' NOT NULL,
|
|
11
|
+
"tags" text[] DEFAULT '{}' NOT NULL,
|
|
12
|
+
"custom_fields" jsonb DEFAULT '{}'::jsonb NOT NULL,
|
|
13
|
+
"created_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
14
|
+
"updated_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
15
|
+
"search_vector" "tsvector" GENERATED ALWAYS AS (setweight(to_tsvector('english', regexp_replace(coalesce("enquiries"."name"::text, ''), '[^[:alnum:]]+', ' ', 'g')), 'A') || setweight(to_tsvector('english', regexp_replace(coalesce("enquiries"."source"::text, ''), '[^[:alnum:]]+', ' ', 'g')), 'B') || setweight(to_tsvector('english', regexp_replace(coalesce("enquiries"."summary"::text, ''), '[^[:alnum:]]+', ' ', 'g')), 'B') || setweight(to_tsvector('english', regexp_replace(coalesce(kelpie_text_array_to_string("enquiries"."tags"), ''), '[^[:alnum:]]+', ' ', 'g')), 'C')) STORED
|
|
16
|
+
);
|
|
17
|
+
--> statement-breakpoint
|
|
18
|
+
ALTER TABLE "person_links" DROP CONSTRAINT "person_links_target_type_check";--> statement-breakpoint
|
|
19
|
+
ALTER TABLE "pipeline_stages" DROP CONSTRAINT "pipeline_stages_kind_check";--> statement-breakpoint
|
|
20
|
+
ALTER TABLE "plan_items" DROP CONSTRAINT "plan_items_target_type_check";--> statement-breakpoint
|
|
21
|
+
ALTER TABLE "decisions" DROP CONSTRAINT "decisions_target_type_check";--> statement-breakpoint
|
|
22
|
+
ALTER TABLE "notes" DROP CONSTRAINT "notes_target_type_check";--> statement-breakpoint
|
|
23
|
+
ALTER TABLE "list_members" DROP CONSTRAINT "list_members_target_type_check";--> statement-breakpoint
|
|
24
|
+
ALTER TABLE "lists" DROP CONSTRAINT "lists_target_type_check";--> statement-breakpoint
|
|
25
|
+
ALTER TABLE "activities" DROP CONSTRAINT "activities_target_type_check";--> statement-breakpoint
|
|
26
|
+
ALTER TABLE "custom_field_definitions" DROP CONSTRAINT "custom_field_definitions_object_type_check";--> statement-breakpoint
|
|
27
|
+
ALTER TABLE "form_attach_targets" DROP CONSTRAINT "form_attach_targets_target_type_check";--> statement-breakpoint
|
|
28
|
+
ALTER TABLE "form_fields" DROP CONSTRAINT "form_fields_map_to_check";--> statement-breakpoint
|
|
29
|
+
ALTER TABLE "form_submissions" ADD COLUMN "enquiry_id" text;--> statement-breakpoint
|
|
30
|
+
ALTER TABLE "forms" ADD COLUMN "create_enquiry" boolean DEFAULT false NOT NULL;--> statement-breakpoint
|
|
31
|
+
ALTER TABLE "forms" ADD COLUMN "enquiry_source" text;--> statement-breakpoint
|
|
32
|
+
ALTER TABLE "forms" ADD COLUMN "enquiry_stage_id" text;--> statement-breakpoint
|
|
33
|
+
ALTER TABLE "forms" ADD COLUMN "enquiry_name_template" text;--> statement-breakpoint
|
|
34
|
+
ALTER TABLE "forms" ADD COLUMN "enquiry_owner_id" text;--> statement-breakpoint
|
|
35
|
+
ALTER TABLE "enquiries" ADD CONSTRAINT "enquiries_workspace_id_workspaces_id_fk" FOREIGN KEY ("workspace_id") REFERENCES "public"."workspaces"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
36
|
+
ALTER TABLE "enquiries" ADD CONSTRAINT "enquiries_stage_id_pipeline_stages_id_fk" FOREIGN KEY ("stage_id") REFERENCES "public"."pipeline_stages"("id") ON DELETE restrict ON UPDATE no action;--> statement-breakpoint
|
|
37
|
+
ALTER TABLE "enquiries" ADD CONSTRAINT "enquiries_company_id_companies_id_fk" FOREIGN KEY ("company_id") REFERENCES "public"."companies"("id") ON DELETE restrict ON UPDATE no action;--> statement-breakpoint
|
|
38
|
+
ALTER TABLE "enquiries" ADD CONSTRAINT "enquiries_owner_id_workspace_members_id_fk" FOREIGN KEY ("owner_id") REFERENCES "public"."workspace_members"("id") ON DELETE restrict ON UPDATE no action;--> statement-breakpoint
|
|
39
|
+
ALTER TABLE "enquiries" ADD CONSTRAINT "enquiries_converted_deal_id_deals_id_fk" FOREIGN KEY ("converted_deal_id") REFERENCES "public"."deals"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
|
|
40
|
+
CREATE INDEX "enquiries_workspace_idx" ON "enquiries" USING btree ("workspace_id");--> statement-breakpoint
|
|
41
|
+
CREATE INDEX "enquiries_stage_idx" ON "enquiries" USING btree ("stage_id");--> statement-breakpoint
|
|
42
|
+
CREATE INDEX "enquiries_converted_deal_idx" ON "enquiries" USING btree ("converted_deal_id");--> statement-breakpoint
|
|
43
|
+
CREATE INDEX "enquiries_search_idx" ON "enquiries" USING gin ("search_vector");--> statement-breakpoint
|
|
44
|
+
ALTER TABLE "form_submissions" ADD CONSTRAINT "form_submissions_enquiry_id_enquiries_id_fk" FOREIGN KEY ("enquiry_id") REFERENCES "public"."enquiries"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
|
|
45
|
+
ALTER TABLE "forms" ADD CONSTRAINT "forms_enquiry_stage_id_pipeline_stages_id_fk" FOREIGN KEY ("enquiry_stage_id") REFERENCES "public"."pipeline_stages"("id") ON DELETE restrict ON UPDATE no action;--> statement-breakpoint
|
|
46
|
+
ALTER TABLE "forms" ADD CONSTRAINT "forms_enquiry_owner_id_workspace_members_id_fk" FOREIGN KEY ("enquiry_owner_id") REFERENCES "public"."workspace_members"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
|
|
47
|
+
ALTER TABLE "person_links" ADD CONSTRAINT "person_links_target_type_check" CHECK ("person_links"."target_type" in ('enquiry', 'deal', 'opportunity', 'raise', 'partnership'));--> statement-breakpoint
|
|
48
|
+
ALTER TABLE "pipeline_stages" ADD CONSTRAINT "pipeline_stages_kind_check" CHECK ("pipeline_stages"."kind" in ('enquiry', 'deal', 'opportunity', 'raise', 'partnership'));--> statement-breakpoint
|
|
49
|
+
ALTER TABLE "plan_items" ADD CONSTRAINT "plan_items_target_type_check" CHECK ("plan_items"."target_type" in ('enquiry', 'deal', 'opportunity', 'raise', 'partnership'));--> statement-breakpoint
|
|
50
|
+
ALTER TABLE "decisions" ADD CONSTRAINT "decisions_target_type_check" CHECK ("decisions"."target_type" in ('person', 'company', 'deal', 'opportunity', 'partnership', 'raise', 'enquiry', 'candidate'));--> statement-breakpoint
|
|
51
|
+
ALTER TABLE "notes" ADD CONSTRAINT "notes_target_type_check" CHECK ("notes"."target_type" in ('person', 'company', 'deal', 'opportunity', 'partnership', 'raise', 'enquiry', 'candidate'));--> statement-breakpoint
|
|
52
|
+
ALTER TABLE "list_members" ADD CONSTRAINT "list_members_target_type_check" CHECK ("list_members"."target_type" in ('person', 'company', 'deal', 'opportunity', 'partnership', 'raise', 'enquiry', 'candidate'));--> statement-breakpoint
|
|
53
|
+
ALTER TABLE "lists" ADD CONSTRAINT "lists_target_type_check" CHECK ("lists"."target_type" in ('person', 'company', 'deal', 'opportunity', 'partnership', 'raise', 'enquiry', 'candidate'));--> statement-breakpoint
|
|
54
|
+
ALTER TABLE "activities" ADD CONSTRAINT "activities_target_type_check" CHECK ("activities"."target_type" in ('person', 'company', 'deal', 'opportunity', 'partnership', 'raise', 'enquiry', 'candidate'));--> statement-breakpoint
|
|
55
|
+
ALTER TABLE "custom_field_definitions" ADD CONSTRAINT "custom_field_definitions_object_type_check" CHECK ("custom_field_definitions"."object_type" in ('person', 'company', 'deal', 'opportunity', 'partnership', 'raise', 'enquiry'));--> statement-breakpoint
|
|
56
|
+
ALTER TABLE "form_attach_targets" ADD CONSTRAINT "form_attach_targets_target_type_check" CHECK ("form_attach_targets"."target_type" in ('enquiry', 'deal', 'opportunity', 'raise', 'partnership'));--> statement-breakpoint
|
|
57
|
+
ALTER TABLE "form_fields" ADD CONSTRAINT "form_fields_map_to_check" CHECK ("form_fields"."map_to" in ('person.name', 'person.first_name', 'person.last_name', 'person.email', 'company.name', 'company.domain', 'position.title', 'enquiry.name', 'deal.name', 'opportunity.name', 'partnership.name', 'submission'));--> statement-breakpoint
|
|
58
|
+
-- Backfill: seed the three starter enquiry stages for every existing workspace.
|
|
59
|
+
-- Precedent: migration 0024 hand-inserts polymorphic rows with gen_random_uuid()
|
|
60
|
+
-- ids and ON CONFLICT DO NOTHING. Starter stages otherwise only seed at workspace
|
|
61
|
+
-- creation, so without this every existing workspace would 409 on the first
|
|
62
|
+
-- enquiry create and render zero kanban columns. Re-running the migration is a
|
|
63
|
+
-- no-op thanks to the unique (workspace_id, kind, slug) key.
|
|
64
|
+
INSERT INTO "pipeline_stages" ("id", "workspace_id", "kind", "slug", "label", "open", "sort_order")
|
|
65
|
+
SELECT
|
|
66
|
+
'stage_' || replace(gen_random_uuid()::text, '-', ''),
|
|
67
|
+
w."id",
|
|
68
|
+
'enquiry',
|
|
69
|
+
s.slug,
|
|
70
|
+
s.label,
|
|
71
|
+
s.open,
|
|
72
|
+
s.sort_order
|
|
73
|
+
FROM "workspaces" w
|
|
74
|
+
CROSS JOIN (VALUES
|
|
75
|
+
('new', 'New', true, 0),
|
|
76
|
+
('in_progress', 'In progress', true, 1),
|
|
77
|
+
('closed', 'Closed', false, 2)
|
|
78
|
+
) AS s(slug, label, open, sort_order)
|
|
79
|
+
ON CONFLICT ("workspace_id", "kind", "slug") DO NOTHING;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
CREATE TABLE "consent_purposes" (
|
|
2
|
+
"id" text PRIMARY KEY NOT NULL,
|
|
3
|
+
"workspace_id" text NOT NULL,
|
|
4
|
+
"slug" text NOT NULL,
|
|
5
|
+
"label" text NOT NULL,
|
|
6
|
+
"description" text DEFAULT '' NOT NULL,
|
|
7
|
+
"default_status" text DEFAULT 'unknown' NOT NULL,
|
|
8
|
+
"sort_order" integer NOT NULL,
|
|
9
|
+
"created_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
10
|
+
"updated_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
11
|
+
CONSTRAINT "consent_purposes_workspace_slug_key" UNIQUE("workspace_id","slug"),
|
|
12
|
+
CONSTRAINT "consent_purposes_default_status_check" CHECK ("consent_purposes"."default_status" in ('unknown', 'granted', 'withdrawn'))
|
|
13
|
+
);
|
|
14
|
+
--> statement-breakpoint
|
|
15
|
+
CREATE TABLE "person_consents" (
|
|
16
|
+
"workspace_id" text NOT NULL,
|
|
17
|
+
"person_id" text NOT NULL,
|
|
18
|
+
"purpose_id" text NOT NULL,
|
|
19
|
+
"status" text NOT NULL,
|
|
20
|
+
"noted_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
21
|
+
"source" text NOT NULL,
|
|
22
|
+
"created_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
23
|
+
"updated_at" timestamp with time zone DEFAULT now() NOT NULL,
|
|
24
|
+
CONSTRAINT "person_consents_person_id_purpose_id_pk" PRIMARY KEY("person_id","purpose_id"),
|
|
25
|
+
CONSTRAINT "person_consents_status_check" CHECK ("person_consents"."status" in ('granted', 'withdrawn'))
|
|
26
|
+
);
|
|
27
|
+
--> statement-breakpoint
|
|
28
|
+
ALTER TABLE "form_fields" DROP CONSTRAINT "form_fields_type_check";--> statement-breakpoint
|
|
29
|
+
ALTER TABLE "form_fields" DROP CONSTRAINT "form_fields_map_to_check";--> statement-breakpoint
|
|
30
|
+
ALTER TABLE "people" ADD COLUMN "do_not_contact" boolean DEFAULT false NOT NULL;--> statement-breakpoint
|
|
31
|
+
ALTER TABLE "lists" ADD COLUMN "consent_purpose_id" text;--> statement-breakpoint
|
|
32
|
+
ALTER TABLE "form_fields" ADD COLUMN "consent_purpose_id" text;--> statement-breakpoint
|
|
33
|
+
ALTER TABLE "import_jobs" ADD COLUMN "consent_purpose_id" text;--> statement-breakpoint
|
|
34
|
+
ALTER TABLE "consent_purposes" ADD CONSTRAINT "consent_purposes_workspace_id_workspaces_id_fk" FOREIGN KEY ("workspace_id") REFERENCES "public"."workspaces"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
35
|
+
ALTER TABLE "person_consents" ADD CONSTRAINT "person_consents_workspace_id_workspaces_id_fk" FOREIGN KEY ("workspace_id") REFERENCES "public"."workspaces"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
36
|
+
ALTER TABLE "person_consents" ADD CONSTRAINT "person_consents_person_id_people_id_fk" FOREIGN KEY ("person_id") REFERENCES "public"."people"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
37
|
+
ALTER TABLE "person_consents" ADD CONSTRAINT "person_consents_purpose_id_consent_purposes_id_fk" FOREIGN KEY ("purpose_id") REFERENCES "public"."consent_purposes"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
|
|
38
|
+
CREATE INDEX "consent_purposes_workspace_idx" ON "consent_purposes" USING btree ("workspace_id");--> statement-breakpoint
|
|
39
|
+
CREATE INDEX "person_consents_workspace_idx" ON "person_consents" USING btree ("workspace_id");--> statement-breakpoint
|
|
40
|
+
CREATE INDEX "person_consents_purpose_idx" ON "person_consents" USING btree ("purpose_id");--> statement-breakpoint
|
|
41
|
+
ALTER TABLE "lists" ADD CONSTRAINT "lists_consent_purpose_id_consent_purposes_id_fk" FOREIGN KEY ("consent_purpose_id") REFERENCES "public"."consent_purposes"("id") ON DELETE restrict ON UPDATE no action;--> statement-breakpoint
|
|
42
|
+
ALTER TABLE "form_fields" ADD CONSTRAINT "form_fields_consent_purpose_id_consent_purposes_id_fk" FOREIGN KEY ("consent_purpose_id") REFERENCES "public"."consent_purposes"("id") ON DELETE restrict ON UPDATE no action;--> statement-breakpoint
|
|
43
|
+
ALTER TABLE "import_jobs" ADD CONSTRAINT "import_jobs_consent_purpose_id_consent_purposes_id_fk" FOREIGN KEY ("consent_purpose_id") REFERENCES "public"."consent_purposes"("id") ON DELETE set null ON UPDATE no action;--> statement-breakpoint
|
|
44
|
+
ALTER TABLE "form_fields" ADD CONSTRAINT "form_fields_type_check" CHECK ("form_fields"."type" in ('text', 'email', 'textarea', 'select', 'consent'));--> statement-breakpoint
|
|
45
|
+
ALTER TABLE "form_fields" ADD CONSTRAINT "form_fields_map_to_check" CHECK ("form_fields"."map_to" in ('person.name', 'person.first_name', 'person.last_name', 'person.email', 'person.consent', 'company.name', 'company.domain', 'position.title', 'enquiry.name', 'deal.name', 'opportunity.name', 'partnership.name', 'submission'));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ALTER TABLE "form_fields" ADD COLUMN "statement" text;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
ALTER TABLE "form_fields" DROP CONSTRAINT "form_fields_consent_purpose_id_consent_purposes_id_fk";
|
|
2
|
+
--> statement-breakpoint
|
|
3
|
+
ALTER TABLE "form_fields" ADD COLUMN "consent_purpose_ids" text[] DEFAULT '{}' NOT NULL;
|
|
4
|
+
--> statement-breakpoint
|
|
5
|
+
UPDATE "form_fields" SET "consent_purpose_ids" = ARRAY["consent_purpose_id"] WHERE "consent_purpose_id" IS NOT NULL;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ALTER TABLE "form_fields" DROP COLUMN "consent_purpose_id";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ALTER TABLE "form_fields" ADD COLUMN "consent_purpose_labels" jsonb DEFAULT '{}'::jsonb NOT NULL;
|