@friggframework/core 2.0.0--canary.700.80ec1cc.0 → 2.0.0--canary.702.047d3c4.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.
Files changed (130) hide show
  1. package/database/documentdb-utils.js +1 -6
  2. package/errors/index.js +0 -4
  3. package/generated/prisma-mongodb/edge.js +4 -52
  4. package/generated/prisma-mongodb/index-browser.js +1 -49
  5. package/generated/prisma-mongodb/index.d.ts +60 -3506
  6. package/generated/prisma-mongodb/index.js +4 -52
  7. package/generated/prisma-mongodb/package.json +1 -1
  8. package/generated/prisma-mongodb/schema.prisma +0 -65
  9. package/generated/prisma-mongodb/wasm.js +4 -52
  10. package/generated/prisma-postgresql/edge.js +4 -52
  11. package/generated/prisma-postgresql/index-browser.js +1 -49
  12. package/generated/prisma-postgresql/index.d.ts +94 -3824
  13. package/generated/prisma-postgresql/index.js +4 -52
  14. package/generated/prisma-postgresql/package.json +1 -1
  15. package/generated/prisma-postgresql/schema.prisma +0 -63
  16. package/generated/prisma-postgresql/wasm.js +4 -52
  17. package/handlers/WEBHOOKS.md +0 -29
  18. package/handlers/app-definition-loader.js +9 -2
  19. package/handlers/app-handler-helpers.js +2 -5
  20. package/handlers/integration-event-dispatcher.js +3 -7
  21. package/handlers/routers/integration-webhook-routers.js +38 -26
  22. package/index.js +0 -2
  23. package/integrations/integration-base.js +1 -162
  24. package/integrations/integration-router.js +1 -6
  25. package/integrations/repositories/integration-mapping-repository-documentdb.js +0 -50
  26. package/integrations/repositories/integration-mapping-repository-interface.js +0 -15
  27. package/integrations/repositories/integration-mapping-repository-mongo.js +0 -29
  28. package/integrations/repositories/integration-mapping-repository-postgres.js +0 -30
  29. package/integrations/repositories/integration-mapping-repository.js +0 -29
  30. package/integrations/repositories/integration-repository-documentdb.js +2 -6
  31. package/integrations/repositories/integration-repository-interface.js +0 -3
  32. package/integrations/repositories/integration-repository-mongo.js +5 -20
  33. package/integrations/repositories/integration-repository-postgres.js +1 -5
  34. package/integrations/repositories/process-repository-mongo.js +1 -1
  35. package/integrations/use-cases/create-integration.js +4 -14
  36. package/integrations/use-cases/delete-integration-for-user.js +4 -4
  37. package/integrations/use-cases/get-integration-for-user.js +2 -4
  38. package/integrations/use-cases/get-integration-instance.js +4 -4
  39. package/integrations/use-cases/get-integrations-for-user.js +4 -4
  40. package/integrations/use-cases/get-possible-integrations.js +2 -7
  41. package/integrations/use-cases/update-integration.js +4 -4
  42. package/package.json +6 -6
  43. package/prisma-mongodb/schema.prisma +0 -65
  44. package/prisma-postgresql/schema.prisma +0 -63
  45. package/queues/queuer-util.js +2 -9
  46. package/errors/mapping-already-exists-error.js +0 -14
  47. package/handlers/workers/integration-triggers.js +0 -25
  48. package/infrastructure/scheduler/recurrence.js +0 -204
  49. package/integrations/definitions/README.md +0 -278
  50. package/integrations/definitions/canonical.js +0 -11
  51. package/integrations/definitions/capabilities/AUDIT.md +0 -480
  52. package/integrations/definitions/capabilities/acmeerp.capabilities.json +0 -633
  53. package/integrations/definitions/capabilities/asana.capabilities.json +0 -279
  54. package/integrations/definitions/capabilities/calendly.capabilities.json +0 -385
  55. package/integrations/definitions/capabilities/docusign.capabilities.json +0 -314
  56. package/integrations/definitions/capabilities/fathom.capabilities.json +0 -238
  57. package/integrations/definitions/capabilities/github.capabilities.json +0 -585
  58. package/integrations/definitions/capabilities/hubspot.capabilities.json +0 -822
  59. package/integrations/definitions/capabilities/jira.capabilities.json +0 -391
  60. package/integrations/definitions/capabilities/klaviyo.capabilities.json +0 -503
  61. package/integrations/definitions/capabilities/linear.capabilities.json +0 -378
  62. package/integrations/definitions/capabilities/netsuite.capabilities.json +0 -535
  63. package/integrations/definitions/capabilities/notion.capabilities.json +0 -208
  64. package/integrations/definitions/capabilities/phone.capabilities.json +0 -511
  65. package/integrations/definitions/capabilities/pipedrive.capabilities.json +0 -430
  66. package/integrations/definitions/capabilities/quickbooks.capabilities.json +0 -635
  67. package/integrations/definitions/capabilities/salesforce.capabilities.json +0 -568
  68. package/integrations/definitions/capabilities/shopify.capabilities.json +0 -1128
  69. package/integrations/definitions/capabilities/slack.capabilities.json +0 -373
  70. package/integrations/definitions/capabilities/stripe.capabilities.json +0 -630
  71. package/integrations/definitions/capabilities/webflow.capabilities.json +0 -196
  72. package/integrations/definitions/capabilities/zendesk.capabilities.json +0 -422
  73. package/integrations/definitions/compile.js +0 -80
  74. package/integrations/definitions/config-form.js +0 -137
  75. package/integrations/definitions/examples/acme-erp-quickbooks.definition.json +0 -467
  76. package/integrations/definitions/examples/asana-slack.definition.json +0 -219
  77. package/integrations/definitions/examples/calendly-salesforce.definition.json +0 -459
  78. package/integrations/definitions/examples/docusign-salesforce.definition.json +0 -305
  79. package/integrations/definitions/examples/fathom-hubspot-notion.definition.json +0 -575
  80. package/integrations/definitions/examples/github-linear.definition.json +0 -322
  81. package/integrations/definitions/examples/hubspot-slack.definition.json +0 -427
  82. package/integrations/definitions/examples/klaviyo-hubspot.definition.json +0 -336
  83. package/integrations/definitions/examples/phone-hubspot.definition.json +0 -633
  84. package/integrations/definitions/examples/pipedrive-hubspot.definition.json +0 -136
  85. package/integrations/definitions/examples/pipedrive-phone.definition.json +0 -340
  86. package/integrations/definitions/examples/records/phone-hubspot.definition-version.json +0 -652
  87. package/integrations/definitions/examples/records/phone-hubspot.integration.json +0 -86
  88. package/integrations/definitions/examples/records/phone-hubspot.mappings.json +0 -39
  89. package/integrations/definitions/examples/records/phone-hubspot.workflow-run.json +0 -62
  90. package/integrations/definitions/examples/shopify-klaviyo.definition.json +0 -488
  91. package/integrations/definitions/examples/shopify-netsuite.definition.json +0 -622
  92. package/integrations/definitions/examples/stripe-quickbooks.definition.json +0 -476
  93. package/integrations/definitions/examples/webflow-hubspot-slack.definition.json +0 -262
  94. package/integrations/definitions/examples/zendesk-jira.definition.json +0 -604
  95. package/integrations/definitions/expressions.js +0 -229
  96. package/integrations/definitions/index.js +0 -45
  97. package/integrations/definitions/integration-runtime.js +0 -763
  98. package/integrations/definitions/interpreter.js +0 -104
  99. package/integrations/definitions/manifests.js +0 -177
  100. package/integrations/definitions/renderers/common.js +0 -67
  101. package/integrations/definitions/renderers/html.js +0 -129
  102. package/integrations/definitions/renderers/hubspot.js +0 -59
  103. package/integrations/definitions/renderers/preview.js +0 -154
  104. package/integrations/definitions/renderers/slack.js +0 -146
  105. package/integrations/definitions/repositories/definition-version-repository.js +0 -67
  106. package/integrations/definitions/repositories/workflow-run-repository.js +0 -80
  107. package/integrations/definitions/router.js +0 -170
  108. package/integrations/definitions/runtime.js +0 -268
  109. package/integrations/definitions/schema/capability-manifest.v0.1.schema.json +0 -549
  110. package/integrations/definitions/schema/installation.v0.1.schema.json +0 -130
  111. package/integrations/definitions/schema/integration-definition.v0.1.schema.json +0 -909
  112. package/integrations/definitions/schema/records.md +0 -105
  113. package/integrations/definitions/schema-check.js +0 -58
  114. package/integrations/definitions/scripts/check-manifests.js +0 -220
  115. package/integrations/definitions/scripts/validate.js +0 -66
  116. package/integrations/definitions/steps.js +0 -123
  117. package/integrations/definitions/sync-engine.js +0 -297
  118. package/integrations/definitions/tests/helpers-fake-crm.js +0 -49
  119. package/integrations/definitions/transforms.js +0 -91
  120. package/integrations/definitions/use-cases/definition-use-cases.js +0 -245
  121. package/integrations/definitions/validate.js +0 -436
  122. package/integrations/definitions/versioning.js +0 -176
  123. package/integrations/definitions/webhooks.js +0 -119
  124. package/integrations/integration-types.js +0 -64
  125. package/integrations/triggers.js +0 -244
  126. package/integrations/use-cases/run-trigger-tick.js +0 -155
  127. package/integrations/use-cases/run-trigger.js +0 -77
  128. package/prisma-postgresql/migrations/20261018000000_add_data_defined_integrations/migration.sql +0 -66
  129. package/prisma-postgresql/migrations/20261019000000_workflow_run_waits/migration.sql +0 -7
  130. package/prisma-postgresql/migrations/20261019120000_definition_workspace/migration.sql +0 -5
@@ -1,305 +0,0 @@
1
- {
2
- "$schema": "https://friggframework.org/schemas/integration-definition/v0.1.json",
3
- "schemaVersion": "0.1",
4
- "id": "docusign-salesforce",
5
- "version": "1.3.2",
6
- "display": {
7
- "label": "DocuSign \u2192 Salesforce",
8
- "description": "Completed envelopes move the opportunity forward and attach the signed PDF; declined envelopes create a task for the owner; the opportunity page shows every envelope and its status.",
9
- "category": "Contracts",
10
- "tags": [
11
- "e-signature",
12
- "crm",
13
- "contracts"
14
- ]
15
- },
16
- "modules": {
17
- "docusign": {
18
- "module": "docusign",
19
- "version": "^1.2"
20
- },
21
- "salesforce": {
22
- "module": "salesforce",
23
- "version": "^3.0"
24
- }
25
- },
26
- "settings": {
27
- "opportunityField": {
28
- "type": "string",
29
- "label": "Envelope custom field holding the Opportunity Id",
30
- "default": "SalesforceOpportunityId",
31
- "required": true
32
- }
33
- },
34
- "workflows": [
35
- {
36
- "id": "completed-envelope",
37
- "label": "Completed envelopes advance the opportunity",
38
- "purpose": "write",
39
- "default": "on",
40
- "settings": {
41
- "stage": {
42
- "type": "enum",
43
- "label": "Move the opportunity to",
44
- "enum": [
45
- "Negotiation/Review",
46
- "Closed Won"
47
- ],
48
- "default": "Closed Won"
49
- },
50
- "attachPdf": {
51
- "type": "boolean",
52
- "label": "Attach the signed PDF",
53
- "default": true
54
- }
55
- },
56
- "trigger": {
57
- "type": "webhook",
58
- "module": "docusign",
59
- "topic": "envelope.completed"
60
- },
61
- "steps": [
62
- {
63
- "id": "opp",
64
- "use": "code",
65
- "with": {
66
- "ref": "@acme/docusign-steps#customFieldValue@1.0.0",
67
- "with": {
68
- "fields": "$.record.customFields.textCustomFields",
69
- "name": "$.install.opportunityField"
70
- }
71
- }
72
- },
73
- {
74
- "use": "stop",
75
- "when": "$.steps.opp.value == null",
76
- "with": {
77
- "reason": "Envelope was not sent from a Salesforce opportunity"
78
- }
79
- },
80
- {
81
- "use": "salesforce.opportunity.update",
82
- "with": {
83
- "id": "$.steps.opp.value",
84
- "fields": {
85
- "StageName": "$.settings.stage",
86
- "NextStep": "Signed {{record.completedDateTime | date}}: kick off onboarding"
87
- }
88
- }
89
- },
90
- {
91
- "id": "pdf",
92
- "use": "docusign.document.combined",
93
- "when": "$.settings.attachPdf == true",
94
- "with": {
95
- "envelopeId": "$.record.envelopeId",
96
- "certificate": true
97
- }
98
- },
99
- {
100
- "use": "salesforce.file.attach",
101
- "when": "$.settings.attachPdf == true",
102
- "with": {
103
- "title": "{{record.emailSubject}} (signed)",
104
- "pathOnClient": "{{record.envelopeId}}.pdf",
105
- "versionData": "$.steps.pdf.base64",
106
- "firstPublishLocationId": "$.steps.opp.value"
107
- }
108
- },
109
- {
110
- "id": "note",
111
- "use": "template",
112
- "with": {
113
- "id": "completed-note"
114
- }
115
- },
116
- {
117
- "use": "salesforce.note.create",
118
- "with": {
119
- "title": "Envelope completed",
120
- "content": "$.steps.note",
121
- "linkedEntityId": "$.steps.opp.value"
122
- }
123
- }
124
- ],
125
- "retry": {
126
- "max": 3,
127
- "backoff": "exponential"
128
- }
129
- },
130
- {
131
- "id": "declined-envelope",
132
- "label": "Declined envelopes create a task for the owner",
133
- "purpose": "write",
134
- "default": "on",
135
- "trigger": {
136
- "type": "webhook",
137
- "module": "docusign",
138
- "topic": "envelope.declined"
139
- },
140
- "steps": [
141
- {
142
- "id": "opp",
143
- "use": "code",
144
- "with": {
145
- "ref": "@acme/docusign-steps#customFieldValue@1.0.0",
146
- "with": {
147
- "fields": "$.record.customFields.textCustomFields",
148
- "name": "$.install.opportunityField"
149
- }
150
- }
151
- },
152
- {
153
- "use": "stop",
154
- "when": "$.steps.opp.value == null",
155
- "with": {
156
- "reason": "Envelope was not sent from a Salesforce opportunity"
157
- }
158
- },
159
- {
160
- "id": "opportunity",
161
- "use": "salesforce.opportunity.get",
162
- "with": {
163
- "id": "$.steps.opp.value"
164
- }
165
- },
166
- {
167
- "id": "description",
168
- "use": "template",
169
- "with": {
170
- "id": "declined-task"
171
- }
172
- },
173
- {
174
- "use": "salesforce.task.create",
175
- "with": {
176
- "fields": {
177
- "Subject": "Envelope declined by {{record.recipients.signers[0].name}}",
178
- "Status": "Not Started",
179
- "Priority": "High",
180
- "ActivityDate": "{{record.declinedDateTime | date}}",
181
- "WhatId": "$.steps.opp.value",
182
- "OwnerId": "$.steps.opportunity.OwnerId",
183
- "Description": "$.steps.description"
184
- }
185
- }
186
- }
187
- ]
188
- }
189
- ],
190
- "queries": [
191
- {
192
- "id": "opportunity-envelopes",
193
- "description": "Envelopes sent for this opportunity in the last year.",
194
- "steps": [
195
- {
196
- "id": "envelopes",
197
- "use": "docusign.envelope.list",
198
- "with": {
199
- "from_date": "-365d",
200
- "custom_field": "{{install.opportunityField}}={{record.Id}}",
201
- "count": 20
202
- }
203
- }
204
- ],
205
- "returns": {
206
- "envelopes": "$.steps.envelopes"
207
- }
208
- }
209
- ],
210
- "ui": [
211
- {
212
- "id": "envelopes-card",
213
- "label": "DocuSign envelopes",
214
- "host": "salesforce",
215
- "placement": "lightning.record.sidebar",
216
- "objects": [
217
- "opportunity"
218
- ],
219
- "data": {
220
- "query": "opportunity-envelopes"
221
- },
222
- "view": {
223
- "component": "Stack",
224
- "children": [
225
- {
226
- "component": "Heading",
227
- "props": {
228
- "text": "DocuSign"
229
- }
230
- },
231
- {
232
- "component": "Table",
233
- "props": {
234
- "rows": "$.data.envelopes",
235
- "columns": [
236
- {
237
- "label": "Envelope",
238
- "value": "{{row.emailSubject | truncate: 40}}"
239
- },
240
- {
241
- "label": "Status",
242
- "value": "{{row.status}}"
243
- },
244
- {
245
- "label": "Sent",
246
- "value": "{{row.sentDateTime | date}}"
247
- },
248
- {
249
- "label": "Completed",
250
- "value": "{{row.completedDateTime | date}}"
251
- }
252
- ]
253
- }
254
- },
255
- {
256
- "component": "Empty",
257
- "when": "$.data.envelopes[0] == null",
258
- "props": {
259
- "text": "No envelopes sent for this opportunity."
260
- }
261
- },
262
- {
263
- "component": "Button",
264
- "props": {
265
- "label": "Open DocuSign",
266
- "action": {
267
- "type": "open_url",
268
- "url": "https://app.docusign.com/documents"
269
- }
270
- }
271
- }
272
- ]
273
- }
274
- }
275
- ],
276
- "templates": {
277
- "completed-note": "{{record.emailSubject}} was completed on {{record.completedDateTime | date}}. Signers: {{record.recipients.signers[0].name}} <{{record.recipients.signers[0].email}}>. Envelope {{record.envelopeId}}.",
278
- "declined-task": "{{record.recipients.signers[0].name}} ({{record.recipients.signers[0].email}}) declined \"{{record.emailSubject}}\" on {{record.declinedDateTime | date}}.\nReason: {{record.recipients.signers[0].declinedReason | default: 'none given'}}\nCorrect the documents and resend from DocuSign."
279
- },
280
- "lifecycle": {
281
- "onInstall": [
282
- {
283
- "id": "connect",
284
- "use": "docusign.connect.create",
285
- "with": {
286
- "name": "Frigg: Salesforce",
287
- "urlToPublishTo": "$.install.webhookUrls.docusign",
288
- "events": [
289
- "envelope-sent",
290
- "envelope-completed",
291
- "envelope-declined"
292
- ]
293
- }
294
- }
295
- ],
296
- "onUninstall": [
297
- {
298
- "use": "docusign.connect.delete",
299
- "with": {
300
- "connectId": "$.install.runtime.installed.connect.connectId"
301
- }
302
- }
303
- ]
304
- }
305
- }