@elevasis/core 0.23.0 → 0.24.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +4343 -2690
- package/dist/index.js +1101 -156
- package/dist/knowledge/index.d.ts +574 -210
- package/dist/knowledge/index.js +104 -1
- package/dist/organization-model/index.d.ts +4343 -2690
- package/dist/organization-model/index.js +1101 -156
- package/dist/test-utils/index.d.ts +483 -109
- package/dist/test-utils/index.js +904 -144
- package/package.json +3 -3
- package/src/README.md +14 -14
- package/src/__tests__/publish.test.ts +24 -24
- package/src/__tests__/template-core-compatibility.test.ts +9 -12
- package/src/_gen/__tests__/__snapshots__/contracts.md.snap +2137 -2093
- package/src/_gen/__tests__/scaffold-contracts.test.ts +30 -30
- package/src/auth/multi-tenancy/credentials/__tests__/encryption.test.ts +217 -217
- package/src/auth/multi-tenancy/credentials/server/encryption.ts +69 -69
- package/src/auth/multi-tenancy/credentials/server/kek-loader.ts +37 -37
- package/src/auth/multi-tenancy/index.ts +26 -26
- package/src/auth/multi-tenancy/invitations/api-schemas.ts +104 -104
- package/src/auth/multi-tenancy/memberships/api-schemas.ts +143 -143
- package/src/auth/multi-tenancy/memberships/index.ts +26 -26
- package/src/auth/multi-tenancy/memberships/membership.ts +130 -130
- package/src/auth/multi-tenancy/organizations/__tests__/api-schemas.test.ts +194 -194
- package/src/auth/multi-tenancy/organizations/api-schemas.ts +136 -136
- package/src/auth/multi-tenancy/permissions.test.ts +42 -42
- package/src/auth/multi-tenancy/permissions.ts +123 -123
- package/src/auth/multi-tenancy/role-management/api-schemas.ts +78 -78
- package/src/auth/multi-tenancy/role-management/index.ts +16 -16
- package/src/auth/multi-tenancy/theme-presets.ts +45 -45
- package/src/auth/multi-tenancy/types.ts +57 -57
- package/src/auth/multi-tenancy/users/api-schemas.ts +165 -165
- package/src/business/README.md +2 -2
- package/src/business/acquisition/activity-events.test.ts +250 -250
- package/src/business/acquisition/activity-events.ts +93 -93
- package/src/business/acquisition/api-schemas.test.ts +1883 -1843
- package/src/business/acquisition/api-schemas.ts +1492 -1497
- package/src/business/acquisition/build-templates.test.ts +240 -240
- package/src/business/acquisition/build-templates.ts +98 -98
- package/src/business/acquisition/crm-next-action.test.ts +262 -262
- package/src/business/acquisition/crm-next-action.ts +220 -220
- package/src/business/acquisition/crm-priority.test.ts +216 -216
- package/src/business/acquisition/crm-priority.ts +349 -349
- package/src/business/acquisition/crm-state-actions.test.ts +153 -153
- package/src/business/acquisition/deal-ownership.test.ts +351 -351
- package/src/business/acquisition/deal-ownership.ts +120 -120
- package/src/business/acquisition/derive-actions.test.ts +129 -104
- package/src/business/acquisition/derive-actions.ts +74 -84
- package/src/business/acquisition/index.ts +171 -170
- package/src/business/acquisition/ontology-validation.ts +309 -0
- package/src/business/acquisition/stateful.ts +30 -30
- package/src/business/acquisition/types.ts +396 -396
- package/src/business/clients/api-schemas.test.ts +115 -115
- package/src/business/clients/api-schemas.ts +158 -158
- package/src/business/clients/index.ts +1 -1
- package/src/business/crm/api-schemas.ts +40 -40
- package/src/business/crm/index.ts +1 -1
- package/src/business/deals/api-schemas.ts +87 -87
- package/src/business/deals/index.ts +1 -1
- package/src/business/index.ts +5 -5
- package/src/business/projects/types.ts +144 -144
- package/src/commands/queue/types/task.ts +15 -15
- package/src/execution/core/runner-types.ts +61 -61
- package/src/execution/core/sse-executions.ts +7 -7
- package/src/execution/engine/__tests__/fixtures/test-agents.ts +10 -10
- package/src/execution/engine/agent/core/__tests__/agent.test.ts +16 -16
- package/src/execution/engine/agent/core/__tests__/error-passthrough.test.ts +4 -4
- package/src/execution/engine/agent/core/types.ts +25 -25
- package/src/execution/engine/agent/index.ts +6 -6
- package/src/execution/engine/agent/reasoning/__tests__/request-builder.test.ts +24 -24
- package/src/execution/engine/index.ts +443 -443
- package/src/execution/engine/tools/integration/server/adapters/apify/__tests__/apify-run-actor.integration.test.ts +298 -298
- package/src/execution/engine/tools/integration/server/adapters/apify/apify-adapter.test.ts +55 -55
- package/src/execution/engine/tools/integration/server/adapters/apify/apify-adapter.ts +107 -107
- package/src/execution/engine/tools/integration/server/adapters/apollo/apollo-adapter.test.ts +48 -48
- package/src/execution/engine/tools/integration/server/adapters/apollo/apollo-adapter.ts +99 -99
- package/src/execution/engine/tools/integration/server/adapters/apollo/index.ts +1 -1
- package/src/execution/engine/tools/integration/server/adapters/attio/__tests__/attio-crud.integration.test.ts +363 -363
- package/src/execution/engine/tools/integration/server/adapters/attio/fetch/get-record/index.test.ts +162 -162
- package/src/execution/engine/tools/integration/server/adapters/attio/fetch/list-records/index.test.ts +316 -316
- package/src/execution/engine/tools/integration/server/adapters/clickup/clickup-adapter.test.ts +18 -18
- package/src/execution/engine/tools/integration/server/adapters/clickup/clickup-adapter.ts +194 -194
- package/src/execution/engine/tools/integration/server/adapters/clickup/index.ts +7 -7
- package/src/execution/engine/tools/integration/server/adapters/gmail/gmail-adapter.ts +204 -204
- package/src/execution/engine/tools/integration/server/adapters/gmail/gmail-tools.ts +105 -105
- package/src/execution/engine/tools/integration/server/adapters/google-calendar/google-calendar-adapter.ts +428 -428
- package/src/execution/engine/tools/integration/server/adapters/google-calendar/index.ts +2 -2
- package/src/execution/engine/tools/integration/server/adapters/google-sheets/__tests__/google-sheets.integration.test.ts +261 -261
- package/src/execution/engine/tools/integration/server/adapters/instantly/instantly-tools.ts +1474 -1474
- package/src/execution/engine/tools/integration/server/adapters/millionverifier/millionverifier-tools.ts +103 -103
- package/src/execution/engine/tools/integration/server/adapters/resend/fetch/send-email/index.test.ts +88 -88
- package/src/execution/engine/tools/integration/server/adapters/resend/fetch/send-email/index.ts +141 -141
- package/src/execution/engine/tools/integration/server/adapters/resend/fetch/utils/types.ts +76 -76
- package/src/execution/engine/tools/integration/server/adapters/signature-api/signature-api-tools.ts +182 -182
- package/src/execution/engine/tools/integration/server/adapters/stripe/stripe-tools.ts +310 -310
- package/src/execution/engine/tools/integration/service.test.ts +239 -239
- package/src/execution/engine/tools/integration/service.ts +172 -172
- package/src/execution/engine/tools/integration/tool.ts +255 -255
- package/src/execution/engine/tools/lead-service-types.ts +1005 -1005
- package/src/execution/engine/tools/messages.ts +43 -43
- package/src/execution/engine/tools/platform/acquisition/company-tools.ts +7 -7
- package/src/execution/engine/tools/platform/acquisition/contact-tools.ts +6 -6
- package/src/execution/engine/tools/platform/acquisition/list-tools.ts +6 -6
- package/src/execution/engine/tools/platform/acquisition/types.ts +280 -280
- package/src/execution/engine/tools/platform/email/types.ts +97 -97
- package/src/execution/engine/tools/registry.ts +704 -704
- package/src/execution/engine/tools/tool-maps.ts +831 -831
- package/src/execution/engine/tools/types.ts +234 -234
- package/src/execution/engine/workflow/types.ts +195 -197
- package/src/execution/external/__tests__/api-schemas.test.ts +127 -127
- package/src/execution/external/api-schemas.ts +40 -40
- package/src/execution/external/index.ts +1 -1
- package/src/index.ts +18 -18
- package/src/integrations/credentials/__tests__/api-schemas.test.ts +420 -420
- package/src/integrations/credentials/api-schemas.ts +146 -146
- package/src/integrations/credentials/schemas.ts +200 -200
- package/src/integrations/oauth/__tests__/provider-registry.test.ts +7 -7
- package/src/integrations/oauth/provider-registry.ts +74 -74
- package/src/integrations/oauth/server/credentials.ts +43 -43
- package/src/integrations/webhook-endpoints/__tests__/api-schemas.test.ts +327 -327
- package/src/integrations/webhook-endpoints/api-schemas.ts +103 -103
- package/src/integrations/webhook-endpoints/types.ts +58 -58
- package/src/knowledge/README.md +32 -32
- package/src/knowledge/__tests__/queries.test.ts +626 -535
- package/src/knowledge/format.ts +99 -99
- package/src/knowledge/index.ts +5 -5
- package/src/knowledge/published.ts +5 -5
- package/src/knowledge/queries.ts +269 -218
- package/src/operations/activities/api-schemas.ts +80 -80
- package/src/operations/activities/types.ts +64 -64
- package/src/organization-model/README.md +149 -149
- package/src/organization-model/__tests__/content-kinds-registry.test.ts +210 -210
- package/src/organization-model/__tests__/defaults.test.ts +168 -168
- package/src/organization-model/__tests__/domains/actions.test.ts +78 -56
- package/src/organization-model/__tests__/domains/customers.test.ts +299 -299
- package/src/organization-model/__tests__/domains/entities.test.ts +56 -56
- package/src/organization-model/__tests__/domains/goals.test.ts +493 -493
- package/src/organization-model/__tests__/domains/identity.test.ts +280 -280
- package/src/organization-model/__tests__/domains/navigation.test.ts +268 -268
- package/src/organization-model/__tests__/domains/offerings.test.ts +414 -414
- package/src/organization-model/__tests__/domains/policies.test.ts +323 -323
- package/src/organization-model/__tests__/domains/resource-mappings.test.ts +293 -293
- package/src/organization-model/__tests__/domains/resources.test.ts +387 -277
- package/src/organization-model/__tests__/domains/roles.test.ts +463 -463
- package/src/organization-model/__tests__/domains/statuses.test.ts +246 -246
- package/src/organization-model/__tests__/domains/systems.test.ts +209 -209
- package/src/organization-model/__tests__/domains/topology.test.ts +188 -0
- package/src/organization-model/__tests__/flatten-additive-merge.test.ts +362 -361
- package/src/organization-model/__tests__/foundation.test.ts +77 -77
- package/src/organization-model/__tests__/get-resources-for-system.test.ts +144 -144
- package/src/organization-model/__tests__/graph.test.ts +1312 -862
- package/src/organization-model/__tests__/icons.test.ts +10 -1
- package/src/organization-model/__tests__/knowledge.test.ts +251 -15
- package/src/organization-model/__tests__/lookup-helpers.test.ts +438 -438
- package/src/organization-model/__tests__/migration-helpers.test.ts +591 -591
- package/src/organization-model/__tests__/prospecting-ssot.test.ts +103 -103
- package/src/organization-model/__tests__/recursive-system-schema.test.ts +535 -506
- package/src/organization-model/__tests__/resolve.test.ts +274 -164
- package/src/organization-model/__tests__/schema.test.ts +844 -301
- package/src/organization-model/__tests__/surface-projection.test.ts +284 -284
- package/src/organization-model/catalogs/lead-gen.ts +144 -144
- package/src/organization-model/content-kinds/config.ts +36 -36
- package/src/organization-model/content-kinds/index.ts +76 -72
- package/src/organization-model/content-kinds/pipeline.ts +68 -68
- package/src/organization-model/content-kinds/registry.ts +44 -44
- package/src/organization-model/content-kinds/status.ts +71 -71
- package/src/organization-model/content-kinds/template.ts +83 -83
- package/src/organization-model/content-kinds/types.ts +117 -117
- package/src/organization-model/contracts.ts +27 -27
- package/src/organization-model/defaults.ts +42 -50
- package/src/organization-model/domains/actions.ts +333 -239
- package/src/organization-model/domains/customers.ts +78 -78
- package/src/organization-model/domains/entities.ts +144 -144
- package/src/organization-model/domains/goals.ts +83 -83
- package/src/organization-model/domains/knowledge.ts +117 -101
- package/src/organization-model/domains/navigation.ts +139 -139
- package/src/organization-model/domains/offerings.ts +71 -71
- package/src/organization-model/domains/policies.ts +102 -102
- package/src/organization-model/domains/projects.ts +14 -14
- package/src/organization-model/domains/prospecting.ts +395 -395
- package/src/organization-model/domains/resources.ts +202 -124
- package/src/organization-model/domains/roles.ts +96 -96
- package/src/organization-model/domains/sales.test.ts +218 -218
- package/src/organization-model/domains/sales.ts +380 -380
- package/src/organization-model/domains/shared.ts +63 -63
- package/src/organization-model/domains/statuses.ts +339 -339
- package/src/organization-model/domains/systems.ts +217 -172
- package/src/organization-model/domains/topology.ts +261 -0
- package/src/organization-model/foundation.ts +75 -75
- package/src/organization-model/graph/build.ts +1043 -867
- package/src/organization-model/graph/index.ts +4 -4
- package/src/organization-model/graph/link.ts +10 -10
- package/src/organization-model/graph/schema.ts +75 -68
- package/src/organization-model/graph/types.ts +71 -64
- package/src/organization-model/helpers.ts +289 -241
- package/src/organization-model/icons.ts +78 -66
- package/src/organization-model/index.ts +128 -125
- package/src/organization-model/migration-helpers.ts +247 -244
- package/src/organization-model/ontology.ts +658 -0
- package/src/organization-model/organization-graph.mdx +110 -90
- package/src/organization-model/organization-model.mdx +225 -213
- package/src/organization-model/published.ts +299 -222
- package/src/organization-model/resolve.ts +146 -91
- package/src/organization-model/schema.ts +818 -659
- package/src/organization-model/surface-projection.ts +212 -212
- package/src/organization-model/types.ts +179 -155
- package/src/platform/api/types.ts +38 -38
- package/src/platform/constants/versions.ts +3 -3
- package/src/platform/index.ts +23 -23
- package/src/platform/registry/__tests__/command-view.test.ts +10 -10
- package/src/platform/registry/__tests__/resource-link.test.ts +35 -35
- package/src/platform/registry/__tests__/resource-registry.integration.test.ts +20 -20
- package/src/platform/registry/__tests__/resource-registry.nested-systems.test.ts +245 -245
- package/src/platform/registry/__tests__/resource-registry.test.ts +2053 -2053
- package/src/platform/registry/__tests__/validation.test.ts +1444 -1259
- package/src/platform/registry/command-view.ts +10 -10
- package/src/platform/registry/index.ts +103 -103
- package/src/platform/registry/resource-link.ts +32 -32
- package/src/platform/registry/resource-registry.ts +886 -886
- package/src/platform/registry/serialization.ts +295 -295
- package/src/platform/registry/serialized-types.ts +166 -166
- package/src/platform/registry/stats-types.ts +68 -68
- package/src/platform/registry/types.ts +425 -425
- package/src/platform/registry/validation.ts +876 -684
- package/src/platform/utils/__tests__/validation.test.ts +1084 -1084
- package/src/platform/utils/validation.ts +425 -425
- package/src/projects/api-schemas.test.ts +39 -39
- package/src/projects/api-schemas.ts +291 -291
- package/src/reference/_generated/contracts.md +2136 -2093
- package/src/reference/glossary.md +76 -76
- package/src/scaffold-registry/__tests__/index.test.ts +206 -206
- package/src/scaffold-registry/__tests__/schema.test.ts +166 -166
- package/src/scaffold-registry/index.ts +392 -392
- package/src/scaffold-registry/schema.ts +243 -243
- package/src/server.ts +289 -289
- package/src/supabase/database.types.ts +3 -0
- package/src/test-utils/README.md +37 -37
- package/src/test-utils/entities.ts +108 -108
- package/src/test-utils/fixtures/memberships.ts +82 -82
- package/src/test-utils/index.ts +12 -12
- package/src/test-utils/organization-model.ts +65 -65
- package/src/test-utils/published.ts +6 -6
- package/src/test-utils/rls/RLSTestContext.ts +588 -588
- package/src/test-utils/test-utils.test.ts +44 -44
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
CRM_DISCOVERY_REPLIED_STATE
|
|
7
7
|
} from '@repo/core/organization-model'
|
|
8
8
|
import { getDealOwnership, type DealOwnership } from './deal-ownership'
|
|
9
|
+
import { getCrmActionMetadata } from './ontology-validation'
|
|
9
10
|
import type { AcqDealRow } from './types'
|
|
10
11
|
|
|
11
12
|
export interface Action {
|
|
@@ -14,18 +15,18 @@ export interface Action {
|
|
|
14
15
|
payloadSchema?: z.ZodTypeAny
|
|
15
16
|
}
|
|
16
17
|
|
|
17
|
-
export interface ActionDef {
|
|
18
|
-
key: string
|
|
19
|
-
label: string
|
|
20
|
-
isAvailableFor: (deal: AcqDealRow) => boolean
|
|
21
|
-
workflowId: string
|
|
22
|
-
payloadSchema?: z.ZodTypeAny
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
type DealActionInput = AcqDealRow & {
|
|
26
|
-
ownership?: DealOwnership
|
|
27
|
-
nextAction?: string | null
|
|
28
|
-
}
|
|
18
|
+
export interface ActionDef {
|
|
19
|
+
key: string
|
|
20
|
+
label: string
|
|
21
|
+
isAvailableFor: (deal: AcqDealRow) => boolean
|
|
22
|
+
workflowId: string
|
|
23
|
+
payloadSchema?: z.ZodTypeAny
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
type DealActionInput = AcqDealRow & {
|
|
27
|
+
ownership?: DealOwnership
|
|
28
|
+
nextAction?: string | null
|
|
29
|
+
}
|
|
29
30
|
|
|
30
31
|
export const SendReplyActionPayloadSchema = z
|
|
31
32
|
.object({
|
|
@@ -33,67 +34,59 @@ export const SendReplyActionPayloadSchema = z
|
|
|
33
34
|
})
|
|
34
35
|
.strict()
|
|
35
36
|
|
|
37
|
+
type CrmActionRuntimeDef = Pick<ActionDef, 'isAvailableFor' | 'payloadSchema'>
|
|
38
|
+
|
|
39
|
+
function crmAction(actionId: string, runtime: CrmActionRuntimeDef): ActionDef {
|
|
40
|
+
const metadata = getCrmActionMetadata(actionId)
|
|
41
|
+
if (!metadata?.resourceId) {
|
|
42
|
+
throw new Error(`CRM action metadata for "${actionId}" must define resourceId`)
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
return {
|
|
46
|
+
key: metadata.id,
|
|
47
|
+
label: metadata.label,
|
|
48
|
+
workflowId: metadata.resourceId,
|
|
49
|
+
...runtime
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
36
53
|
export const DEFAULT_CRM_ACTIONS: ActionDef[] = [
|
|
37
|
-
{
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
},
|
|
43
|
-
{
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
workflowId: 'move_to_closing-workflow'
|
|
48
|
-
},
|
|
49
|
-
{
|
|
50
|
-
key: 'move_to_closed_won',
|
|
51
|
-
label: 'Close Won',
|
|
52
|
-
isAvailableFor: (deal) => deal.stage_key === 'closing',
|
|
53
|
-
workflowId: 'move_to_closed_won-workflow'
|
|
54
|
-
},
|
|
55
|
-
{
|
|
56
|
-
key: 'move_to_closed_lost',
|
|
57
|
-
label: 'Close Lost',
|
|
54
|
+
crmAction('move_to_proposal', {
|
|
55
|
+
isAvailableFor: (deal) => deal.stage_key === 'interested'
|
|
56
|
+
}),
|
|
57
|
+
crmAction('move_to_closing', {
|
|
58
|
+
isAvailableFor: (deal) => deal.stage_key === 'proposal'
|
|
59
|
+
}),
|
|
60
|
+
crmAction('move_to_closed_won', {
|
|
61
|
+
isAvailableFor: (deal) => deal.stage_key === 'closing'
|
|
62
|
+
}),
|
|
63
|
+
crmAction('move_to_closed_lost', {
|
|
58
64
|
isAvailableFor: (deal) =>
|
|
59
|
-
deal.stage_key === 'interested' || deal.stage_key === 'proposal' || deal.stage_key === 'closing'
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
{
|
|
63
|
-
key: 'move_to_nurturing',
|
|
64
|
-
label: 'Move to Nurturing',
|
|
65
|
+
deal.stage_key === 'interested' || deal.stage_key === 'proposal' || deal.stage_key === 'closing'
|
|
66
|
+
}),
|
|
67
|
+
crmAction('move_to_nurturing', {
|
|
65
68
|
isAvailableFor: (deal) =>
|
|
66
|
-
deal.stage_key === 'interested' || deal.stage_key === 'proposal' || deal.stage_key === 'closing'
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
(deal.state_key === CRM_DISCOVERY_REPLIED_STATE.stateKey ||
|
|
76
|
-
deal.state_key === CRM_DISCOVERY_LINK_SENT_STATE.stateKey ||
|
|
77
|
-
deal.state_key === CRM_DISCOVERY_NUDGING_STATE.stateKey),
|
|
78
|
-
workflowId: 'crm-send-reply-workflow',
|
|
69
|
+
deal.stage_key === 'interested' || deal.stage_key === 'proposal' || deal.stage_key === 'closing'
|
|
70
|
+
}),
|
|
71
|
+
crmAction('send_reply', {
|
|
72
|
+
isAvailableFor: (deal) =>
|
|
73
|
+
deal.stage_key === 'interested' &&
|
|
74
|
+
isOurReplyAction(deal) &&
|
|
75
|
+
(deal.state_key === CRM_DISCOVERY_REPLIED_STATE.stateKey ||
|
|
76
|
+
deal.state_key === CRM_DISCOVERY_LINK_SENT_STATE.stateKey ||
|
|
77
|
+
deal.state_key === CRM_DISCOVERY_NUDGING_STATE.stateKey),
|
|
79
78
|
payloadSchema: SendReplyActionPayloadSchema
|
|
80
|
-
},
|
|
81
|
-
{
|
|
82
|
-
key: 'send_link',
|
|
83
|
-
label: 'Send Booking Link',
|
|
79
|
+
}),
|
|
80
|
+
crmAction('send_link', {
|
|
84
81
|
isAvailableFor: (deal) =>
|
|
85
|
-
deal.stage_key === 'interested' && deal.state_key === CRM_DISCOVERY_REPLIED_STATE.stateKey
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
{
|
|
89
|
-
key: 'send_nudge',
|
|
90
|
-
label: 'Send Nudge',
|
|
82
|
+
deal.stage_key === 'interested' && deal.state_key === CRM_DISCOVERY_REPLIED_STATE.stateKey
|
|
83
|
+
}),
|
|
84
|
+
crmAction('send_nudge', {
|
|
91
85
|
isAvailableFor: (deal) =>
|
|
92
86
|
deal.stage_key === 'interested' &&
|
|
93
87
|
(deal.state_key === CRM_DISCOVERY_LINK_SENT_STATE.stateKey ||
|
|
94
|
-
deal.state_key === CRM_DISCOVERY_NUDGING_STATE.stateKey)
|
|
95
|
-
|
|
96
|
-
},
|
|
88
|
+
deal.state_key === CRM_DISCOVERY_NUDGING_STATE.stateKey)
|
|
89
|
+
}),
|
|
97
90
|
{
|
|
98
91
|
key: 'mark_no_show',
|
|
99
92
|
label: 'Mark No-Show',
|
|
@@ -104,25 +97,22 @@ export const DEFAULT_CRM_ACTIONS: ActionDef[] = [
|
|
|
104
97
|
// event captures operator intent and distinguishes the manual variant from the timed one.
|
|
105
98
|
workflowId: 'mark_no_show-workflow'
|
|
106
99
|
},
|
|
107
|
-
{
|
|
108
|
-
key: 'rebook',
|
|
109
|
-
label: 'Rebook',
|
|
100
|
+
crmAction('rebook', {
|
|
110
101
|
isAvailableFor: (deal) =>
|
|
111
|
-
deal.stage_key === 'interested' && deal.state_key === CRM_DISCOVERY_BOOKING_CANCELLED_STATE.stateKey
|
|
112
|
-
|
|
113
|
-
}
|
|
102
|
+
deal.stage_key === 'interested' && deal.state_key === CRM_DISCOVERY_BOOKING_CANCELLED_STATE.stateKey
|
|
103
|
+
})
|
|
114
104
|
]
|
|
115
105
|
|
|
116
|
-
export function deriveActions(deal: DealActionInput, actions: ActionDef[] = DEFAULT_CRM_ACTIONS): Action[] {
|
|
117
|
-
return actions
|
|
118
|
-
.filter((a) => a.isAvailableFor(deal))
|
|
119
|
-
.map(({ key, label, payloadSchema }) => ({ key, label, payloadSchema }))
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
function isOurReplyAction(deal: DealActionInput): boolean {
|
|
123
|
-
if (Object.prototype.hasOwnProperty.call(deal, 'nextAction')) {
|
|
124
|
-
return deal.nextAction === 'send_reply'
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
return (deal.ownership ?? getDealOwnership(deal)) === 'us'
|
|
128
|
-
}
|
|
106
|
+
export function deriveActions(deal: DealActionInput, actions: ActionDef[] = DEFAULT_CRM_ACTIONS): Action[] {
|
|
107
|
+
return actions
|
|
108
|
+
.filter((a) => a.isAvailableFor(deal))
|
|
109
|
+
.map(({ key, label, payloadSchema }) => ({ key, label, payloadSchema }))
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
function isOurReplyAction(deal: DealActionInput): boolean {
|
|
113
|
+
if (Object.prototype.hasOwnProperty.call(deal, 'nextAction')) {
|
|
114
|
+
return deal.nextAction === 'send_reply'
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
return (deal.ownership ?? getDealOwnership(deal)) === 'us'
|
|
118
|
+
}
|
|
@@ -1,175 +1,176 @@
|
|
|
1
|
-
export * from './types'
|
|
2
|
-
export * from './activity-events'
|
|
3
|
-
export * from './build-templates'
|
|
4
|
-
export * from './derive-actions'
|
|
1
|
+
export * from './types'
|
|
2
|
+
export * from './activity-events'
|
|
3
|
+
export * from './build-templates'
|
|
4
|
+
export * from './derive-actions'
|
|
5
5
|
export * from './crm-priority'
|
|
6
6
|
export * from './crm-next-action'
|
|
7
7
|
export * from './deal-ownership'
|
|
8
8
|
export * from './stateful'
|
|
9
|
+
export * from './ontology-validation'
|
|
9
10
|
// Export api-schemas selectively to avoid re-exporting names already defined in types.ts
|
|
10
|
-
// (DealStage, AcqDealTaskKind are declared as union types there; api-schemas re-infers them from Zod)
|
|
11
|
-
export {
|
|
12
|
-
AcqCompanyStatusSchema,
|
|
13
|
-
AcqContactStatusSchema,
|
|
14
|
-
AcqEmailValidSchema,
|
|
15
|
-
CompanyIdParamsSchema,
|
|
16
|
-
ContactIdParamsSchema,
|
|
17
|
-
ListCompaniesQuerySchema,
|
|
18
|
-
ListContactsQuerySchema,
|
|
19
|
-
CreateCompanyRequestSchema,
|
|
20
|
-
UpdateCompanyRequestSchema,
|
|
21
|
-
CreateContactRequestSchema,
|
|
22
|
-
UpdateContactRequestSchema,
|
|
23
|
-
AcqCompanyResponseSchema,
|
|
24
|
-
AcqCompanyListResponseSchema,
|
|
25
|
-
AcqContactResponseSchema,
|
|
26
|
-
AcqContactListResponseSchema,
|
|
27
|
-
AcqCompanySchemas,
|
|
28
|
-
AcqContactSchemas,
|
|
29
|
-
DealStageSchema,
|
|
30
|
-
AcqDealTaskKindSchema,
|
|
31
|
-
DealIdParamsSchema,
|
|
32
|
-
DealTaskIdParamsSchema,
|
|
33
|
-
ListDealsQuerySchema,
|
|
34
|
-
ListDealTasksDueQuerySchema,
|
|
35
|
-
CreateDealNoteRequestSchema,
|
|
36
|
-
CreateDealTaskRequestSchema,
|
|
37
|
-
TransitionItemRequestSchema,
|
|
38
|
-
TransitionDealStateRequestSchema,
|
|
39
|
-
ExecuteActionParamsSchema,
|
|
40
|
-
ExecuteActionRequestSchema,
|
|
41
|
-
DealContactSummarySchema,
|
|
42
|
-
DealPrioritySchema,
|
|
43
|
-
DealListItemSchema,
|
|
44
|
-
DealListResponseSchema,
|
|
45
|
-
DealDetailResponseSchema,
|
|
46
|
-
DealNoteResponseSchema,
|
|
47
|
-
DealNoteListResponseSchema,
|
|
48
|
-
DealTaskResponseSchema,
|
|
49
|
-
DealTaskListResponseSchema,
|
|
50
|
-
DealSchemas,
|
|
51
|
-
ListStatusSchema,
|
|
52
|
-
ScrapingConfigSchema,
|
|
53
|
-
IcpRubricSchema,
|
|
54
|
-
PipelineStageSchema,
|
|
55
|
-
PipelineConfigSchema,
|
|
56
|
-
BuildPlanSnapshotStepSchema,
|
|
57
|
-
BuildPlanSnapshotSchema,
|
|
58
|
-
AcqListMetadataSchema,
|
|
59
|
-
ProspectingBuildTemplateIdSchema,
|
|
60
|
-
ProcessingStageStatusSchema,
|
|
61
|
-
ListStageCountsSchema,
|
|
62
|
-
ListTelemetrySchema,
|
|
63
|
-
ListIdParamsSchema,
|
|
64
|
-
ListReadQuerySchema,
|
|
65
|
-
GetListQuerySchema,
|
|
66
|
-
CreateListRequestSchema,
|
|
67
|
-
UpdateListRequestSchema,
|
|
68
|
-
UpdateListStatusRequestSchema,
|
|
69
|
-
UpdateListConfigRequestSchema,
|
|
70
|
-
AddCompaniesToListRequestSchema,
|
|
71
|
-
RemoveCompaniesFromListRequestSchema,
|
|
72
|
-
AddContactsToListRequestSchema,
|
|
73
|
-
RecordListExecutionRequestSchema,
|
|
74
|
-
AcqListResponseSchema,
|
|
75
|
-
AcqListDetailResponseSchema,
|
|
76
|
-
AcqListListResponseSchema,
|
|
77
|
-
AcqListDealRefSchema,
|
|
78
|
-
AcqListLineageSchema,
|
|
79
|
-
AcqListStatusResponseSchema,
|
|
80
|
-
ListTelemetryResponseSchema,
|
|
81
|
-
ListTelemetryListResponseSchema,
|
|
82
|
-
ListExecutionSummarySchema,
|
|
83
|
-
ListExecutionsResponseSchema,
|
|
84
|
-
ListStageProgressSchema,
|
|
85
|
-
ListProgressResponseSchema,
|
|
86
|
-
AcqListSchemas,
|
|
87
|
-
AcqSubstrateSchemas,
|
|
88
|
-
AcqArtifactOwnerKindSchema,
|
|
89
|
-
ListArtifactsQuerySchema,
|
|
90
|
-
CreateArtifactRequestSchema,
|
|
91
|
-
AcqArtifactResponseSchema,
|
|
92
|
-
AcqArtifactListResponseSchema,
|
|
93
|
-
ListMembersQuerySchema,
|
|
94
|
-
MemberIdParamsSchema,
|
|
95
|
-
AcqListMemberContactSummarySchema,
|
|
96
|
-
AcqListMemberResponseSchema,
|
|
97
|
-
AcqListMembersResponseSchema,
|
|
98
|
-
ListCompanyIdParamsSchema,
|
|
99
|
-
AcqListCompanyResponseSchema,
|
|
100
|
-
type AcqArtifactOwnerKind,
|
|
101
|
-
type ListArtifactsQuery,
|
|
102
|
-
type CreateArtifactRequest,
|
|
103
|
-
type AcqArtifactResponse,
|
|
104
|
-
type AcqArtifactListResponse,
|
|
105
|
-
type ListMembersQuery,
|
|
106
|
-
type MemberIdParams,
|
|
107
|
-
type AcqListMemberContactSummary,
|
|
108
|
-
type AcqListMemberResponse,
|
|
109
|
-
type AcqListMembersResponse,
|
|
110
|
-
type ListCompanyIdParams,
|
|
111
|
-
type AcqListCompanyResponse,
|
|
112
|
-
type CompanyIdParams,
|
|
113
|
-
type ContactIdParams,
|
|
114
|
-
type ListCompaniesQuery,
|
|
115
|
-
type ListContactsQuery,
|
|
116
|
-
type CreateCompanyRequest,
|
|
117
|
-
type UpdateCompanyRequest,
|
|
118
|
-
type CreateContactRequest,
|
|
119
|
-
type UpdateContactRequest,
|
|
120
|
-
type AcqCompanyResponse,
|
|
121
|
-
type AcqCompanyListResponse,
|
|
122
|
-
type AcqContactResponse,
|
|
123
|
-
type AcqContactListResponse,
|
|
124
|
-
type AcqCompanyStatus,
|
|
125
|
-
type AcqContactStatus,
|
|
126
|
-
type AcqEmailValid,
|
|
127
|
-
type DealIdParams,
|
|
128
|
-
type DealTaskIdParams,
|
|
129
|
-
type ListDealsQuery,
|
|
130
|
-
type ListDealTasksDueQuery,
|
|
131
|
-
type CreateDealNoteRequest,
|
|
132
|
-
type CreateDealTaskRequest,
|
|
133
|
-
type TransitionItemRequest,
|
|
134
|
-
type TransitionDealStateRequest,
|
|
135
|
-
type ExecuteActionParams,
|
|
136
|
-
type ExecuteActionRequest,
|
|
137
|
-
type DealPriorityResponse,
|
|
138
|
-
type DealListResponse,
|
|
139
|
-
type DealDetailResponse,
|
|
140
|
-
type DealNoteResponse,
|
|
141
|
-
type DealNoteListResponse,
|
|
142
|
-
type DealTaskResponse,
|
|
143
|
-
type DealTaskListResponse,
|
|
144
|
-
type ListStatus,
|
|
145
|
-
type ScrapingConfig,
|
|
146
|
-
type IcpRubric,
|
|
147
|
-
type PipelineStage,
|
|
148
|
-
type PipelineConfig,
|
|
149
|
-
type ProcessingStageStatus,
|
|
150
|
-
type ListStageCountsInput,
|
|
151
|
-
type ListTelemetryInput,
|
|
152
|
-
type ListIdParams,
|
|
153
|
-
type ListReadQuery,
|
|
154
|
-
type GetListQuery,
|
|
155
|
-
type CreateListRequest,
|
|
156
|
-
type UpdateListRequest,
|
|
157
|
-
type UpdateListStatusRequest,
|
|
158
|
-
type UpdateListConfigRequest,
|
|
159
|
-
type AddCompaniesToListRequest,
|
|
160
|
-
type RemoveCompaniesFromListRequest,
|
|
161
|
-
type AddContactsToListRequest,
|
|
162
|
-
type RecordListExecutionRequest,
|
|
163
|
-
type AcqListResponse,
|
|
164
|
-
type AcqListDetailResponse,
|
|
165
|
-
type AcqListListResponse,
|
|
166
|
-
type AcqListDealRef,
|
|
167
|
-
type AcqListLineage,
|
|
168
|
-
type AcqListStatusResponse,
|
|
169
|
-
type ListTelemetryResponse,
|
|
170
|
-
type ListTelemetryListResponse,
|
|
171
|
-
type ListExecutionSummaryInput,
|
|
172
|
-
type ListExecutionsResponse,
|
|
173
|
-
type ListStageProgress,
|
|
174
|
-
type ListProgress
|
|
175
|
-
} from './api-schemas'
|
|
11
|
+
// (DealStage, AcqDealTaskKind are declared as union types there; api-schemas re-infers them from Zod)
|
|
12
|
+
export {
|
|
13
|
+
AcqCompanyStatusSchema,
|
|
14
|
+
AcqContactStatusSchema,
|
|
15
|
+
AcqEmailValidSchema,
|
|
16
|
+
CompanyIdParamsSchema,
|
|
17
|
+
ContactIdParamsSchema,
|
|
18
|
+
ListCompaniesQuerySchema,
|
|
19
|
+
ListContactsQuerySchema,
|
|
20
|
+
CreateCompanyRequestSchema,
|
|
21
|
+
UpdateCompanyRequestSchema,
|
|
22
|
+
CreateContactRequestSchema,
|
|
23
|
+
UpdateContactRequestSchema,
|
|
24
|
+
AcqCompanyResponseSchema,
|
|
25
|
+
AcqCompanyListResponseSchema,
|
|
26
|
+
AcqContactResponseSchema,
|
|
27
|
+
AcqContactListResponseSchema,
|
|
28
|
+
AcqCompanySchemas,
|
|
29
|
+
AcqContactSchemas,
|
|
30
|
+
DealStageSchema,
|
|
31
|
+
AcqDealTaskKindSchema,
|
|
32
|
+
DealIdParamsSchema,
|
|
33
|
+
DealTaskIdParamsSchema,
|
|
34
|
+
ListDealsQuerySchema,
|
|
35
|
+
ListDealTasksDueQuerySchema,
|
|
36
|
+
CreateDealNoteRequestSchema,
|
|
37
|
+
CreateDealTaskRequestSchema,
|
|
38
|
+
TransitionItemRequestSchema,
|
|
39
|
+
TransitionDealStateRequestSchema,
|
|
40
|
+
ExecuteActionParamsSchema,
|
|
41
|
+
ExecuteActionRequestSchema,
|
|
42
|
+
DealContactSummarySchema,
|
|
43
|
+
DealPrioritySchema,
|
|
44
|
+
DealListItemSchema,
|
|
45
|
+
DealListResponseSchema,
|
|
46
|
+
DealDetailResponseSchema,
|
|
47
|
+
DealNoteResponseSchema,
|
|
48
|
+
DealNoteListResponseSchema,
|
|
49
|
+
DealTaskResponseSchema,
|
|
50
|
+
DealTaskListResponseSchema,
|
|
51
|
+
DealSchemas,
|
|
52
|
+
ListStatusSchema,
|
|
53
|
+
ScrapingConfigSchema,
|
|
54
|
+
IcpRubricSchema,
|
|
55
|
+
PipelineStageSchema,
|
|
56
|
+
PipelineConfigSchema,
|
|
57
|
+
BuildPlanSnapshotStepSchema,
|
|
58
|
+
BuildPlanSnapshotSchema,
|
|
59
|
+
AcqListMetadataSchema,
|
|
60
|
+
ProspectingBuildTemplateIdSchema,
|
|
61
|
+
ProcessingStageStatusSchema,
|
|
62
|
+
ListStageCountsSchema,
|
|
63
|
+
ListTelemetrySchema,
|
|
64
|
+
ListIdParamsSchema,
|
|
65
|
+
ListReadQuerySchema,
|
|
66
|
+
GetListQuerySchema,
|
|
67
|
+
CreateListRequestSchema,
|
|
68
|
+
UpdateListRequestSchema,
|
|
69
|
+
UpdateListStatusRequestSchema,
|
|
70
|
+
UpdateListConfigRequestSchema,
|
|
71
|
+
AddCompaniesToListRequestSchema,
|
|
72
|
+
RemoveCompaniesFromListRequestSchema,
|
|
73
|
+
AddContactsToListRequestSchema,
|
|
74
|
+
RecordListExecutionRequestSchema,
|
|
75
|
+
AcqListResponseSchema,
|
|
76
|
+
AcqListDetailResponseSchema,
|
|
77
|
+
AcqListListResponseSchema,
|
|
78
|
+
AcqListDealRefSchema,
|
|
79
|
+
AcqListLineageSchema,
|
|
80
|
+
AcqListStatusResponseSchema,
|
|
81
|
+
ListTelemetryResponseSchema,
|
|
82
|
+
ListTelemetryListResponseSchema,
|
|
83
|
+
ListExecutionSummarySchema,
|
|
84
|
+
ListExecutionsResponseSchema,
|
|
85
|
+
ListStageProgressSchema,
|
|
86
|
+
ListProgressResponseSchema,
|
|
87
|
+
AcqListSchemas,
|
|
88
|
+
AcqSubstrateSchemas,
|
|
89
|
+
AcqArtifactOwnerKindSchema,
|
|
90
|
+
ListArtifactsQuerySchema,
|
|
91
|
+
CreateArtifactRequestSchema,
|
|
92
|
+
AcqArtifactResponseSchema,
|
|
93
|
+
AcqArtifactListResponseSchema,
|
|
94
|
+
ListMembersQuerySchema,
|
|
95
|
+
MemberIdParamsSchema,
|
|
96
|
+
AcqListMemberContactSummarySchema,
|
|
97
|
+
AcqListMemberResponseSchema,
|
|
98
|
+
AcqListMembersResponseSchema,
|
|
99
|
+
ListCompanyIdParamsSchema,
|
|
100
|
+
AcqListCompanyResponseSchema,
|
|
101
|
+
type AcqArtifactOwnerKind,
|
|
102
|
+
type ListArtifactsQuery,
|
|
103
|
+
type CreateArtifactRequest,
|
|
104
|
+
type AcqArtifactResponse,
|
|
105
|
+
type AcqArtifactListResponse,
|
|
106
|
+
type ListMembersQuery,
|
|
107
|
+
type MemberIdParams,
|
|
108
|
+
type AcqListMemberContactSummary,
|
|
109
|
+
type AcqListMemberResponse,
|
|
110
|
+
type AcqListMembersResponse,
|
|
111
|
+
type ListCompanyIdParams,
|
|
112
|
+
type AcqListCompanyResponse,
|
|
113
|
+
type CompanyIdParams,
|
|
114
|
+
type ContactIdParams,
|
|
115
|
+
type ListCompaniesQuery,
|
|
116
|
+
type ListContactsQuery,
|
|
117
|
+
type CreateCompanyRequest,
|
|
118
|
+
type UpdateCompanyRequest,
|
|
119
|
+
type CreateContactRequest,
|
|
120
|
+
type UpdateContactRequest,
|
|
121
|
+
type AcqCompanyResponse,
|
|
122
|
+
type AcqCompanyListResponse,
|
|
123
|
+
type AcqContactResponse,
|
|
124
|
+
type AcqContactListResponse,
|
|
125
|
+
type AcqCompanyStatus,
|
|
126
|
+
type AcqContactStatus,
|
|
127
|
+
type AcqEmailValid,
|
|
128
|
+
type DealIdParams,
|
|
129
|
+
type DealTaskIdParams,
|
|
130
|
+
type ListDealsQuery,
|
|
131
|
+
type ListDealTasksDueQuery,
|
|
132
|
+
type CreateDealNoteRequest,
|
|
133
|
+
type CreateDealTaskRequest,
|
|
134
|
+
type TransitionItemRequest,
|
|
135
|
+
type TransitionDealStateRequest,
|
|
136
|
+
type ExecuteActionParams,
|
|
137
|
+
type ExecuteActionRequest,
|
|
138
|
+
type DealPriorityResponse,
|
|
139
|
+
type DealListResponse,
|
|
140
|
+
type DealDetailResponse,
|
|
141
|
+
type DealNoteResponse,
|
|
142
|
+
type DealNoteListResponse,
|
|
143
|
+
type DealTaskResponse,
|
|
144
|
+
type DealTaskListResponse,
|
|
145
|
+
type ListStatus,
|
|
146
|
+
type ScrapingConfig,
|
|
147
|
+
type IcpRubric,
|
|
148
|
+
type PipelineStage,
|
|
149
|
+
type PipelineConfig,
|
|
150
|
+
type ProcessingStageStatus,
|
|
151
|
+
type ListStageCountsInput,
|
|
152
|
+
type ListTelemetryInput,
|
|
153
|
+
type ListIdParams,
|
|
154
|
+
type ListReadQuery,
|
|
155
|
+
type GetListQuery,
|
|
156
|
+
type CreateListRequest,
|
|
157
|
+
type UpdateListRequest,
|
|
158
|
+
type UpdateListStatusRequest,
|
|
159
|
+
type UpdateListConfigRequest,
|
|
160
|
+
type AddCompaniesToListRequest,
|
|
161
|
+
type RemoveCompaniesFromListRequest,
|
|
162
|
+
type AddContactsToListRequest,
|
|
163
|
+
type RecordListExecutionRequest,
|
|
164
|
+
type AcqListResponse,
|
|
165
|
+
type AcqListDetailResponse,
|
|
166
|
+
type AcqListListResponse,
|
|
167
|
+
type AcqListDealRef,
|
|
168
|
+
type AcqListLineage,
|
|
169
|
+
type AcqListStatusResponse,
|
|
170
|
+
type ListTelemetryResponse,
|
|
171
|
+
type ListTelemetryListResponse,
|
|
172
|
+
type ListExecutionSummaryInput,
|
|
173
|
+
type ListExecutionsResponse,
|
|
174
|
+
type ListStageProgress,
|
|
175
|
+
type ListProgress
|
|
176
|
+
} from './api-schemas'
|