@workbuddy/piece-workbuddy-edge 1.0.0 → 1.0.2
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/package.json +2 -2
- package/src/lib/actions/jobs.d.ts +2 -2
- package/src/lib/actions/jobs.d.ts.map +1 -1
- package/src/lib/actions/jobs.js +24 -4
- package/src/lib/actions/jobs.js.map +1 -1
- package/src/lib/actions/jobs.ts +24 -4
- package/src/lib/triggers/activity.d.ts +24 -12
- package/src/lib/triggers/activity.d.ts.map +1 -1
- package/src/lib/triggers/activity.js +45 -21
- package/src/lib/triggers/activity.js.map +1 -1
- package/src/lib/triggers/activity.ts +39 -24
- package/src/lib/triggers/bill.d.ts +64 -16
- package/src/lib/triggers/bill.d.ts.map +1 -1
- package/src/lib/triggers/bill.js +152 -28
- package/src/lib/triggers/bill.js.map +1 -1
- package/src/lib/triggers/bill.ts +136 -32
- package/src/lib/triggers/invoice.d.ts +64 -16
- package/src/lib/triggers/invoice.d.ts.map +1 -1
- package/src/lib/triggers/invoice.js +152 -28
- package/src/lib/triggers/invoice.js.map +1 -1
- package/src/lib/triggers/invoice.ts +136 -32
- package/src/lib/triggers/job.d.ts +144 -16
- package/src/lib/triggers/job.d.ts.map +1 -1
- package/src/lib/triggers/job.js +292 -28
- package/src/lib/triggers/job.js.map +1 -1
- package/src/lib/triggers/job.ts +256 -32
- package/src/lib/triggers/lead.d.ts +112 -16
- package/src/lib/triggers/lead.d.ts.map +1 -1
- package/src/lib/triggers/lead.js +200 -28
- package/src/lib/triggers/lead.js.map +1 -1
- package/src/lib/triggers/lead.ts +172 -32
- package/src/lib/triggers/opportunity.d.ts +80 -16
- package/src/lib/triggers/opportunity.d.ts.map +1 -1
- package/src/lib/triggers/opportunity.js +144 -28
- package/src/lib/triggers/opportunity.js.map +1 -1
- package/src/lib/triggers/opportunity.ts +124 -32
- package/src/lib/triggers/quote.d.ts +64 -16
- package/src/lib/triggers/quote.d.ts.map +1 -1
- package/src/lib/triggers/quote.js +152 -28
- package/src/lib/triggers/quote.js.map +1 -1
- package/src/lib/triggers/quote.ts +136 -32
- package/src/lib/triggers/stage.d.ts +112 -16
- package/src/lib/triggers/stage.d.ts.map +1 -1
- package/src/lib/triggers/stage.js +236 -28
- package/src/lib/triggers/stage.js.map +1 -1
- package/src/lib/triggers/stage.ts +212 -32
- package/src/lib/triggers/task.d.ts +16 -16
- package/src/lib/triggers/task.d.ts.map +1 -1
- package/src/lib/triggers/task.js +32 -28
- package/src/lib/triggers/task.js.map +1 -1
- package/src/lib/triggers/task.ts +28 -32
- package/src/lib/actions/mcp-context.d.ts +0 -16
- package/src/lib/actions/mcp-context.d.ts.map +0 -1
- package/src/lib/actions/mcp-context.js +0 -82
- package/src/lib/actions/mcp-context.js.map +0 -1
- package/src/lib/actions/mcp-context.ts +0 -86
- package/src/lib/actions/webhooks.d.ts +0 -48
- package/src/lib/actions/webhooks.d.ts.map +0 -1
- package/src/lib/actions/webhooks.js +0 -292
- package/src/lib/actions/webhooks.js.map +0 -1
- package/src/lib/actions/webhooks.ts +0 -318
- package/src/lib/triggers/allocation.d.ts +0 -53
- package/src/lib/triggers/allocation.d.ts.map +0 -1
- package/src/lib/triggers/allocation.js +0 -181
- package/src/lib/triggers/allocation.js.map +0 -1
- package/src/lib/triggers/allocation.ts +0 -198
- package/src/lib/triggers/form.d.ts +0 -19
- package/src/lib/triggers/form.d.ts.map +0 -1
- package/src/lib/triggers/form.js +0 -65
- package/src/lib/triggers/form.js.map +0 -1
- package/src/lib/triggers/form.ts +0 -68
- package/src/lib/triggers/item.d.ts +0 -53
- package/src/lib/triggers/item.d.ts.map +0 -1
- package/src/lib/triggers/item.js +0 -181
- package/src/lib/triggers/item.js.map +0 -1
- package/src/lib/triggers/item.ts +0 -198
- package/src/lib/triggers/site.d.ts +0 -19
- package/src/lib/triggers/site.d.ts.map +0 -1
- package/src/lib/triggers/site.js +0 -65
- package/src/lib/triggers/site.js.map +0 -1
- package/src/lib/triggers/site.ts +0 -68
package/src/lib/triggers/job.ts
CHANGED
|
@@ -8,12 +8,59 @@ export const job_created_trigger = createTrigger({
|
|
|
8
8
|
displayName: 'Job Created',
|
|
9
9
|
description: 'Triggered when a new job is created',
|
|
10
10
|
props: {
|
|
11
|
-
|
|
12
|
-
displayName: '
|
|
13
|
-
description:
|
|
14
|
-
'Optional webhook filters object. Discover allowed fields with GET /webhooks/entities/:entity/filters.',
|
|
11
|
+
customer: Property.Array({
|
|
12
|
+
displayName: 'Filter by Customer',
|
|
13
|
+
description: 'Only trigger for specific customer IDs',
|
|
15
14
|
required: false,
|
|
16
|
-
|
|
15
|
+
}),
|
|
16
|
+
billingCompany: Property.Array({
|
|
17
|
+
displayName: 'Filter by Billing Company',
|
|
18
|
+
description: 'Only trigger for specific billing company IDs',
|
|
19
|
+
required: false,
|
|
20
|
+
}),
|
|
21
|
+
tag: Property.Array({
|
|
22
|
+
displayName: 'Filter by Tags',
|
|
23
|
+
description: 'Only trigger for specific tags IDs',
|
|
24
|
+
required: false,
|
|
25
|
+
}),
|
|
26
|
+
site: Property.Array({
|
|
27
|
+
displayName: 'Filter by Site',
|
|
28
|
+
description: 'Only trigger for specific site IDs',
|
|
29
|
+
required: false,
|
|
30
|
+
}),
|
|
31
|
+
type: Property.Array({
|
|
32
|
+
displayName: 'Filter by Job Type',
|
|
33
|
+
description: 'Only trigger for specific job type IDs',
|
|
34
|
+
required: false,
|
|
35
|
+
}),
|
|
36
|
+
priority: Property.Array({
|
|
37
|
+
displayName: 'Filter by Priority',
|
|
38
|
+
description: 'Only trigger for specific priority IDs',
|
|
39
|
+
required: false,
|
|
40
|
+
}),
|
|
41
|
+
owner: Property.Array({
|
|
42
|
+
displayName: 'Filter by Owner',
|
|
43
|
+
description: 'Only trigger for specific owner IDs',
|
|
44
|
+
required: false,
|
|
45
|
+
}),
|
|
46
|
+
zone: Property.Array({
|
|
47
|
+
displayName: 'Filter by Zone',
|
|
48
|
+
description: 'Only trigger for specific zone IDs',
|
|
49
|
+
required: false,
|
|
50
|
+
}),
|
|
51
|
+
status: Property.StaticMultiSelectDropdown({
|
|
52
|
+
displayName: 'Filter by Status',
|
|
53
|
+
description: 'Only trigger when the status matches one of these values',
|
|
54
|
+
required: false,
|
|
55
|
+
options: {
|
|
56
|
+
options: [
|
|
57
|
+
{ label: 'Open', value: JSON.stringify({ match: 'systemStatus', value: 'Open' }) },
|
|
58
|
+
{ label: 'InProgress', value: JSON.stringify({ match: 'systemStatus', value: 'InProgress' }) },
|
|
59
|
+
{ label: 'Completed', value: JSON.stringify({ match: 'systemStatus', value: 'Completed' }) },
|
|
60
|
+
{ label: 'Closed', value: JSON.stringify({ match: 'systemStatus', value: 'Closed' }) },
|
|
61
|
+
{ label: 'Cancelled', value: JSON.stringify({ match: 'systemStatus', value: 'Cancelled' }) },
|
|
62
|
+
],
|
|
63
|
+
},
|
|
17
64
|
}),
|
|
18
65
|
},
|
|
19
66
|
sampleData: {
|
|
@@ -58,6 +105,17 @@ export const job_created_trigger = createTrigger({
|
|
|
58
105
|
const token = await getAccessToken(context.auth);
|
|
59
106
|
const baseUrl = context.auth.props.baseUrl;
|
|
60
107
|
|
|
108
|
+
// Assemble filters from individual props
|
|
109
|
+
const filters: Record<string, unknown> = {};
|
|
110
|
+
if (context.propsValue.customer?.length) filters.customer = context.propsValue.customer;
|
|
111
|
+
if (context.propsValue.billingCompany?.length) filters.billingCompany = context.propsValue.billingCompany;
|
|
112
|
+
if (context.propsValue.tag?.length) filters.tag = context.propsValue.tag;
|
|
113
|
+
if (context.propsValue.site?.length) filters.site = context.propsValue.site;
|
|
114
|
+
if (context.propsValue.type?.length) filters.type = context.propsValue.type;
|
|
115
|
+
if (context.propsValue.priority?.length) filters.priority = context.propsValue.priority;
|
|
116
|
+
if (context.propsValue.owner?.length) filters.owner = context.propsValue.owner;
|
|
117
|
+
if (context.propsValue.zone?.length) filters.zone = context.propsValue.zone;
|
|
118
|
+
if (context.propsValue.status?.length) filters.status = context.propsValue.status.map((v: string) => JSON.parse(v));
|
|
61
119
|
// Register webhook with WorkBuddy v2 API (server handles upsert - reactivates if exists)
|
|
62
120
|
const response = await httpClient.sendRequest<{ data: { id: string } }>({
|
|
63
121
|
method: HttpMethod.POST,
|
|
@@ -72,9 +130,7 @@ export const job_created_trigger = createTrigger({
|
|
|
72
130
|
url: context.webhookUrl,
|
|
73
131
|
entity: 'job',
|
|
74
132
|
events: ['Job Created'],
|
|
75
|
-
...(
|
|
76
|
-
? { filters: context.propsValue.filters }
|
|
77
|
-
: {}),
|
|
133
|
+
...(Object.keys(filters).length > 0 ? { filters } : {}),
|
|
78
134
|
workflow: {
|
|
79
135
|
platform: 'activepieces',
|
|
80
136
|
integrationId: context.webhookUrl,
|
|
@@ -119,12 +175,59 @@ export const job_updated_trigger = createTrigger({
|
|
|
119
175
|
displayName: 'Job Updated',
|
|
120
176
|
description: 'Triggered when a job is updated',
|
|
121
177
|
props: {
|
|
122
|
-
|
|
123
|
-
displayName: '
|
|
124
|
-
description:
|
|
125
|
-
'Optional webhook filters object. Discover allowed fields with GET /webhooks/entities/:entity/filters.',
|
|
178
|
+
customer: Property.Array({
|
|
179
|
+
displayName: 'Filter by Customer',
|
|
180
|
+
description: 'Only trigger for specific customer IDs',
|
|
126
181
|
required: false,
|
|
127
|
-
|
|
182
|
+
}),
|
|
183
|
+
billingCompany: Property.Array({
|
|
184
|
+
displayName: 'Filter by Billing Company',
|
|
185
|
+
description: 'Only trigger for specific billing company IDs',
|
|
186
|
+
required: false,
|
|
187
|
+
}),
|
|
188
|
+
tag: Property.Array({
|
|
189
|
+
displayName: 'Filter by Tags',
|
|
190
|
+
description: 'Only trigger for specific tags IDs',
|
|
191
|
+
required: false,
|
|
192
|
+
}),
|
|
193
|
+
site: Property.Array({
|
|
194
|
+
displayName: 'Filter by Site',
|
|
195
|
+
description: 'Only trigger for specific site IDs',
|
|
196
|
+
required: false,
|
|
197
|
+
}),
|
|
198
|
+
type: Property.Array({
|
|
199
|
+
displayName: 'Filter by Job Type',
|
|
200
|
+
description: 'Only trigger for specific job type IDs',
|
|
201
|
+
required: false,
|
|
202
|
+
}),
|
|
203
|
+
priority: Property.Array({
|
|
204
|
+
displayName: 'Filter by Priority',
|
|
205
|
+
description: 'Only trigger for specific priority IDs',
|
|
206
|
+
required: false,
|
|
207
|
+
}),
|
|
208
|
+
owner: Property.Array({
|
|
209
|
+
displayName: 'Filter by Owner',
|
|
210
|
+
description: 'Only trigger for specific owner IDs',
|
|
211
|
+
required: false,
|
|
212
|
+
}),
|
|
213
|
+
zone: Property.Array({
|
|
214
|
+
displayName: 'Filter by Zone',
|
|
215
|
+
description: 'Only trigger for specific zone IDs',
|
|
216
|
+
required: false,
|
|
217
|
+
}),
|
|
218
|
+
status: Property.StaticMultiSelectDropdown({
|
|
219
|
+
displayName: 'Filter by Status',
|
|
220
|
+
description: 'Only trigger when the status matches one of these values',
|
|
221
|
+
required: false,
|
|
222
|
+
options: {
|
|
223
|
+
options: [
|
|
224
|
+
{ label: 'Open', value: JSON.stringify({ match: 'systemStatus', value: 'Open' }) },
|
|
225
|
+
{ label: 'InProgress', value: JSON.stringify({ match: 'systemStatus', value: 'InProgress' }) },
|
|
226
|
+
{ label: 'Completed', value: JSON.stringify({ match: 'systemStatus', value: 'Completed' }) },
|
|
227
|
+
{ label: 'Closed', value: JSON.stringify({ match: 'systemStatus', value: 'Closed' }) },
|
|
228
|
+
{ label: 'Cancelled', value: JSON.stringify({ match: 'systemStatus', value: 'Cancelled' }) },
|
|
229
|
+
],
|
|
230
|
+
},
|
|
128
231
|
}),
|
|
129
232
|
},
|
|
130
233
|
sampleData: {
|
|
@@ -169,6 +272,17 @@ export const job_updated_trigger = createTrigger({
|
|
|
169
272
|
const token = await getAccessToken(context.auth);
|
|
170
273
|
const baseUrl = context.auth.props.baseUrl;
|
|
171
274
|
|
|
275
|
+
// Assemble filters from individual props
|
|
276
|
+
const filters: Record<string, unknown> = {};
|
|
277
|
+
if (context.propsValue.customer?.length) filters.customer = context.propsValue.customer;
|
|
278
|
+
if (context.propsValue.billingCompany?.length) filters.billingCompany = context.propsValue.billingCompany;
|
|
279
|
+
if (context.propsValue.tag?.length) filters.tag = context.propsValue.tag;
|
|
280
|
+
if (context.propsValue.site?.length) filters.site = context.propsValue.site;
|
|
281
|
+
if (context.propsValue.type?.length) filters.type = context.propsValue.type;
|
|
282
|
+
if (context.propsValue.priority?.length) filters.priority = context.propsValue.priority;
|
|
283
|
+
if (context.propsValue.owner?.length) filters.owner = context.propsValue.owner;
|
|
284
|
+
if (context.propsValue.zone?.length) filters.zone = context.propsValue.zone;
|
|
285
|
+
if (context.propsValue.status?.length) filters.status = context.propsValue.status.map((v: string) => JSON.parse(v));
|
|
172
286
|
// Register webhook with WorkBuddy v2 API (server handles upsert - reactivates if exists)
|
|
173
287
|
const response = await httpClient.sendRequest<{ data: { id: string } }>({
|
|
174
288
|
method: HttpMethod.POST,
|
|
@@ -183,9 +297,7 @@ export const job_updated_trigger = createTrigger({
|
|
|
183
297
|
url: context.webhookUrl,
|
|
184
298
|
entity: 'job',
|
|
185
299
|
events: ['Job Updated'],
|
|
186
|
-
...(
|
|
187
|
-
? { filters: context.propsValue.filters }
|
|
188
|
-
: {}),
|
|
300
|
+
...(Object.keys(filters).length > 0 ? { filters } : {}),
|
|
189
301
|
workflow: {
|
|
190
302
|
platform: 'activepieces',
|
|
191
303
|
integrationId: context.webhookUrl,
|
|
@@ -230,12 +342,59 @@ export const job_status_changed_trigger = createTrigger({
|
|
|
230
342
|
displayName: 'Job Status Changed',
|
|
231
343
|
description: 'Triggered when a job status changes',
|
|
232
344
|
props: {
|
|
233
|
-
|
|
234
|
-
displayName: '
|
|
235
|
-
description:
|
|
236
|
-
'Optional webhook filters object. Discover allowed fields with GET /webhooks/entities/:entity/filters.',
|
|
345
|
+
customer: Property.Array({
|
|
346
|
+
displayName: 'Filter by Customer',
|
|
347
|
+
description: 'Only trigger for specific customer IDs',
|
|
237
348
|
required: false,
|
|
238
|
-
|
|
349
|
+
}),
|
|
350
|
+
billingCompany: Property.Array({
|
|
351
|
+
displayName: 'Filter by Billing Company',
|
|
352
|
+
description: 'Only trigger for specific billing company IDs',
|
|
353
|
+
required: false,
|
|
354
|
+
}),
|
|
355
|
+
tag: Property.Array({
|
|
356
|
+
displayName: 'Filter by Tags',
|
|
357
|
+
description: 'Only trigger for specific tags IDs',
|
|
358
|
+
required: false,
|
|
359
|
+
}),
|
|
360
|
+
site: Property.Array({
|
|
361
|
+
displayName: 'Filter by Site',
|
|
362
|
+
description: 'Only trigger for specific site IDs',
|
|
363
|
+
required: false,
|
|
364
|
+
}),
|
|
365
|
+
type: Property.Array({
|
|
366
|
+
displayName: 'Filter by Job Type',
|
|
367
|
+
description: 'Only trigger for specific job type IDs',
|
|
368
|
+
required: false,
|
|
369
|
+
}),
|
|
370
|
+
priority: Property.Array({
|
|
371
|
+
displayName: 'Filter by Priority',
|
|
372
|
+
description: 'Only trigger for specific priority IDs',
|
|
373
|
+
required: false,
|
|
374
|
+
}),
|
|
375
|
+
owner: Property.Array({
|
|
376
|
+
displayName: 'Filter by Owner',
|
|
377
|
+
description: 'Only trigger for specific owner IDs',
|
|
378
|
+
required: false,
|
|
379
|
+
}),
|
|
380
|
+
zone: Property.Array({
|
|
381
|
+
displayName: 'Filter by Zone',
|
|
382
|
+
description: 'Only trigger for specific zone IDs',
|
|
383
|
+
required: false,
|
|
384
|
+
}),
|
|
385
|
+
status: Property.StaticMultiSelectDropdown({
|
|
386
|
+
displayName: 'Filter by Status',
|
|
387
|
+
description: 'Only trigger when the status matches one of these values',
|
|
388
|
+
required: false,
|
|
389
|
+
options: {
|
|
390
|
+
options: [
|
|
391
|
+
{ label: 'Open', value: JSON.stringify({ match: 'systemStatus', value: 'Open' }) },
|
|
392
|
+
{ label: 'InProgress', value: JSON.stringify({ match: 'systemStatus', value: 'InProgress' }) },
|
|
393
|
+
{ label: 'Completed', value: JSON.stringify({ match: 'systemStatus', value: 'Completed' }) },
|
|
394
|
+
{ label: 'Closed', value: JSON.stringify({ match: 'systemStatus', value: 'Closed' }) },
|
|
395
|
+
{ label: 'Cancelled', value: JSON.stringify({ match: 'systemStatus', value: 'Cancelled' }) },
|
|
396
|
+
],
|
|
397
|
+
},
|
|
239
398
|
}),
|
|
240
399
|
},
|
|
241
400
|
sampleData: {
|
|
@@ -280,6 +439,17 @@ export const job_status_changed_trigger = createTrigger({
|
|
|
280
439
|
const token = await getAccessToken(context.auth);
|
|
281
440
|
const baseUrl = context.auth.props.baseUrl;
|
|
282
441
|
|
|
442
|
+
// Assemble filters from individual props
|
|
443
|
+
const filters: Record<string, unknown> = {};
|
|
444
|
+
if (context.propsValue.customer?.length) filters.customer = context.propsValue.customer;
|
|
445
|
+
if (context.propsValue.billingCompany?.length) filters.billingCompany = context.propsValue.billingCompany;
|
|
446
|
+
if (context.propsValue.tag?.length) filters.tag = context.propsValue.tag;
|
|
447
|
+
if (context.propsValue.site?.length) filters.site = context.propsValue.site;
|
|
448
|
+
if (context.propsValue.type?.length) filters.type = context.propsValue.type;
|
|
449
|
+
if (context.propsValue.priority?.length) filters.priority = context.propsValue.priority;
|
|
450
|
+
if (context.propsValue.owner?.length) filters.owner = context.propsValue.owner;
|
|
451
|
+
if (context.propsValue.zone?.length) filters.zone = context.propsValue.zone;
|
|
452
|
+
if (context.propsValue.status?.length) filters.status = context.propsValue.status.map((v: string) => JSON.parse(v));
|
|
283
453
|
// Register webhook with WorkBuddy v2 API (server handles upsert - reactivates if exists)
|
|
284
454
|
const response = await httpClient.sendRequest<{ data: { id: string } }>({
|
|
285
455
|
method: HttpMethod.POST,
|
|
@@ -294,9 +464,7 @@ export const job_status_changed_trigger = createTrigger({
|
|
|
294
464
|
url: context.webhookUrl,
|
|
295
465
|
entity: 'job',
|
|
296
466
|
events: ['Job Status Changed'],
|
|
297
|
-
...(
|
|
298
|
-
? { filters: context.propsValue.filters }
|
|
299
|
-
: {}),
|
|
467
|
+
...(Object.keys(filters).length > 0 ? { filters } : {}),
|
|
300
468
|
workflow: {
|
|
301
469
|
platform: 'activepieces',
|
|
302
470
|
integrationId: context.webhookUrl,
|
|
@@ -341,12 +509,59 @@ export const job_deleted_trigger = createTrigger({
|
|
|
341
509
|
displayName: 'Job Deleted',
|
|
342
510
|
description: 'Triggered when a job is deleted',
|
|
343
511
|
props: {
|
|
344
|
-
|
|
345
|
-
displayName: '
|
|
346
|
-
description:
|
|
347
|
-
'Optional webhook filters object. Discover allowed fields with GET /webhooks/entities/:entity/filters.',
|
|
512
|
+
customer: Property.Array({
|
|
513
|
+
displayName: 'Filter by Customer',
|
|
514
|
+
description: 'Only trigger for specific customer IDs',
|
|
348
515
|
required: false,
|
|
349
|
-
|
|
516
|
+
}),
|
|
517
|
+
billingCompany: Property.Array({
|
|
518
|
+
displayName: 'Filter by Billing Company',
|
|
519
|
+
description: 'Only trigger for specific billing company IDs',
|
|
520
|
+
required: false,
|
|
521
|
+
}),
|
|
522
|
+
tag: Property.Array({
|
|
523
|
+
displayName: 'Filter by Tags',
|
|
524
|
+
description: 'Only trigger for specific tags IDs',
|
|
525
|
+
required: false,
|
|
526
|
+
}),
|
|
527
|
+
site: Property.Array({
|
|
528
|
+
displayName: 'Filter by Site',
|
|
529
|
+
description: 'Only trigger for specific site IDs',
|
|
530
|
+
required: false,
|
|
531
|
+
}),
|
|
532
|
+
type: Property.Array({
|
|
533
|
+
displayName: 'Filter by Job Type',
|
|
534
|
+
description: 'Only trigger for specific job type IDs',
|
|
535
|
+
required: false,
|
|
536
|
+
}),
|
|
537
|
+
priority: Property.Array({
|
|
538
|
+
displayName: 'Filter by Priority',
|
|
539
|
+
description: 'Only trigger for specific priority IDs',
|
|
540
|
+
required: false,
|
|
541
|
+
}),
|
|
542
|
+
owner: Property.Array({
|
|
543
|
+
displayName: 'Filter by Owner',
|
|
544
|
+
description: 'Only trigger for specific owner IDs',
|
|
545
|
+
required: false,
|
|
546
|
+
}),
|
|
547
|
+
zone: Property.Array({
|
|
548
|
+
displayName: 'Filter by Zone',
|
|
549
|
+
description: 'Only trigger for specific zone IDs',
|
|
550
|
+
required: false,
|
|
551
|
+
}),
|
|
552
|
+
status: Property.StaticMultiSelectDropdown({
|
|
553
|
+
displayName: 'Filter by Status',
|
|
554
|
+
description: 'Only trigger when the status matches one of these values',
|
|
555
|
+
required: false,
|
|
556
|
+
options: {
|
|
557
|
+
options: [
|
|
558
|
+
{ label: 'Open', value: JSON.stringify({ match: 'systemStatus', value: 'Open' }) },
|
|
559
|
+
{ label: 'InProgress', value: JSON.stringify({ match: 'systemStatus', value: 'InProgress' }) },
|
|
560
|
+
{ label: 'Completed', value: JSON.stringify({ match: 'systemStatus', value: 'Completed' }) },
|
|
561
|
+
{ label: 'Closed', value: JSON.stringify({ match: 'systemStatus', value: 'Closed' }) },
|
|
562
|
+
{ label: 'Cancelled', value: JSON.stringify({ match: 'systemStatus', value: 'Cancelled' }) },
|
|
563
|
+
],
|
|
564
|
+
},
|
|
350
565
|
}),
|
|
351
566
|
},
|
|
352
567
|
sampleData: {
|
|
@@ -391,6 +606,17 @@ export const job_deleted_trigger = createTrigger({
|
|
|
391
606
|
const token = await getAccessToken(context.auth);
|
|
392
607
|
const baseUrl = context.auth.props.baseUrl;
|
|
393
608
|
|
|
609
|
+
// Assemble filters from individual props
|
|
610
|
+
const filters: Record<string, unknown> = {};
|
|
611
|
+
if (context.propsValue.customer?.length) filters.customer = context.propsValue.customer;
|
|
612
|
+
if (context.propsValue.billingCompany?.length) filters.billingCompany = context.propsValue.billingCompany;
|
|
613
|
+
if (context.propsValue.tag?.length) filters.tag = context.propsValue.tag;
|
|
614
|
+
if (context.propsValue.site?.length) filters.site = context.propsValue.site;
|
|
615
|
+
if (context.propsValue.type?.length) filters.type = context.propsValue.type;
|
|
616
|
+
if (context.propsValue.priority?.length) filters.priority = context.propsValue.priority;
|
|
617
|
+
if (context.propsValue.owner?.length) filters.owner = context.propsValue.owner;
|
|
618
|
+
if (context.propsValue.zone?.length) filters.zone = context.propsValue.zone;
|
|
619
|
+
if (context.propsValue.status?.length) filters.status = context.propsValue.status.map((v: string) => JSON.parse(v));
|
|
394
620
|
// Register webhook with WorkBuddy v2 API (server handles upsert - reactivates if exists)
|
|
395
621
|
const response = await httpClient.sendRequest<{ data: { id: string } }>({
|
|
396
622
|
method: HttpMethod.POST,
|
|
@@ -405,9 +631,7 @@ export const job_deleted_trigger = createTrigger({
|
|
|
405
631
|
url: context.webhookUrl,
|
|
406
632
|
entity: 'job',
|
|
407
633
|
events: ['Job Deleted'],
|
|
408
|
-
...(
|
|
409
|
-
? { filters: context.propsValue.filters }
|
|
410
|
-
: {}),
|
|
634
|
+
...(Object.keys(filters).length > 0 ? { filters } : {}),
|
|
411
635
|
workflow: {
|
|
412
636
|
platform: 'activepieces',
|
|
413
637
|
integrationId: context.webhookUrl,
|
|
@@ -4,99 +4,195 @@ export declare const lead_created_trigger: import("@activepieces/pieces-framewor
|
|
|
4
4
|
clientId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
5
5
|
clientSecret: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
6
6
|
}>, {
|
|
7
|
-
|
|
7
|
+
customer: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
8
|
+
billingCompany: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
9
|
+
tag: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
10
|
+
leadStage: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
11
|
+
leadSource: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
12
|
+
owner: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
13
|
+
type: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
8
14
|
}> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.POLLING, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
9
15
|
baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
10
16
|
clientId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
11
17
|
clientSecret: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
12
18
|
}>, {
|
|
13
|
-
|
|
19
|
+
customer: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
20
|
+
billingCompany: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
21
|
+
tag: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
22
|
+
leadStage: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
23
|
+
leadSource: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
24
|
+
owner: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
25
|
+
type: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
14
26
|
}> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.MANUAL, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
15
27
|
baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
16
28
|
clientId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
17
29
|
clientSecret: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
18
30
|
}>, {
|
|
19
|
-
|
|
31
|
+
customer: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
32
|
+
billingCompany: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
33
|
+
tag: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
34
|
+
leadStage: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
35
|
+
leadSource: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
36
|
+
owner: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
37
|
+
type: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
20
38
|
}> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.APP_WEBHOOK, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
21
39
|
baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
22
40
|
clientId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
23
41
|
clientSecret: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
24
42
|
}>, {
|
|
25
|
-
|
|
43
|
+
customer: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
44
|
+
billingCompany: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
45
|
+
tag: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
46
|
+
leadStage: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
47
|
+
leadSource: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
48
|
+
owner: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
49
|
+
type: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
26
50
|
}>;
|
|
27
51
|
export declare const lead_updated_trigger: import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.WEBHOOK, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
28
52
|
baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
29
53
|
clientId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
30
54
|
clientSecret: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
31
55
|
}>, {
|
|
32
|
-
|
|
56
|
+
customer: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
57
|
+
billingCompany: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
58
|
+
tag: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
59
|
+
leadStage: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
60
|
+
leadSource: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
61
|
+
owner: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
62
|
+
type: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
33
63
|
}> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.POLLING, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
34
64
|
baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
35
65
|
clientId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
36
66
|
clientSecret: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
37
67
|
}>, {
|
|
38
|
-
|
|
68
|
+
customer: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
69
|
+
billingCompany: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
70
|
+
tag: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
71
|
+
leadStage: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
72
|
+
leadSource: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
73
|
+
owner: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
74
|
+
type: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
39
75
|
}> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.MANUAL, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
40
76
|
baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
41
77
|
clientId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
42
78
|
clientSecret: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
43
79
|
}>, {
|
|
44
|
-
|
|
80
|
+
customer: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
81
|
+
billingCompany: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
82
|
+
tag: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
83
|
+
leadStage: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
84
|
+
leadSource: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
85
|
+
owner: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
86
|
+
type: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
45
87
|
}> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.APP_WEBHOOK, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
46
88
|
baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
47
89
|
clientId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
48
90
|
clientSecret: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
49
91
|
}>, {
|
|
50
|
-
|
|
92
|
+
customer: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
93
|
+
billingCompany: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
94
|
+
tag: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
95
|
+
leadStage: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
96
|
+
leadSource: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
97
|
+
owner: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
98
|
+
type: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
51
99
|
}>;
|
|
52
100
|
export declare const lead_status_changed_trigger: import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.WEBHOOK, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
53
101
|
baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
54
102
|
clientId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
55
103
|
clientSecret: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
56
104
|
}>, {
|
|
57
|
-
|
|
105
|
+
customer: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
106
|
+
billingCompany: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
107
|
+
tag: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
108
|
+
leadStage: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
109
|
+
leadSource: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
110
|
+
owner: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
111
|
+
type: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
58
112
|
}> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.POLLING, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
59
113
|
baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
60
114
|
clientId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
61
115
|
clientSecret: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
62
116
|
}>, {
|
|
63
|
-
|
|
117
|
+
customer: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
118
|
+
billingCompany: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
119
|
+
tag: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
120
|
+
leadStage: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
121
|
+
leadSource: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
122
|
+
owner: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
123
|
+
type: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
64
124
|
}> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.MANUAL, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
65
125
|
baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
66
126
|
clientId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
67
127
|
clientSecret: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
68
128
|
}>, {
|
|
69
|
-
|
|
129
|
+
customer: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
130
|
+
billingCompany: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
131
|
+
tag: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
132
|
+
leadStage: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
133
|
+
leadSource: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
134
|
+
owner: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
135
|
+
type: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
70
136
|
}> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.APP_WEBHOOK, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
71
137
|
baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
72
138
|
clientId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
73
139
|
clientSecret: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
74
140
|
}>, {
|
|
75
|
-
|
|
141
|
+
customer: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
142
|
+
billingCompany: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
143
|
+
tag: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
144
|
+
leadStage: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
145
|
+
leadSource: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
146
|
+
owner: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
147
|
+
type: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
76
148
|
}>;
|
|
77
149
|
export declare const lead_deleted_trigger: import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.WEBHOOK, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
78
150
|
baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
79
151
|
clientId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
80
152
|
clientSecret: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
81
153
|
}>, {
|
|
82
|
-
|
|
154
|
+
customer: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
155
|
+
billingCompany: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
156
|
+
tag: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
157
|
+
leadStage: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
158
|
+
leadSource: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
159
|
+
owner: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
160
|
+
type: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
83
161
|
}> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.POLLING, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
84
162
|
baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
85
163
|
clientId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
86
164
|
clientSecret: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
87
165
|
}>, {
|
|
88
|
-
|
|
166
|
+
customer: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
167
|
+
billingCompany: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
168
|
+
tag: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
169
|
+
leadStage: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
170
|
+
leadSource: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
171
|
+
owner: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
172
|
+
type: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
89
173
|
}> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.MANUAL, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
90
174
|
baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
91
175
|
clientId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
92
176
|
clientSecret: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
93
177
|
}>, {
|
|
94
|
-
|
|
178
|
+
customer: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
179
|
+
billingCompany: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
180
|
+
tag: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
181
|
+
leadStage: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
182
|
+
leadSource: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
183
|
+
owner: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
184
|
+
type: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
95
185
|
}> | import("@activepieces/pieces-framework").ITrigger<TriggerStrategy.APP_WEBHOOK, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
96
186
|
baseUrl: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
97
187
|
clientId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
98
188
|
clientSecret: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
99
189
|
}>, {
|
|
100
|
-
|
|
190
|
+
customer: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
191
|
+
billingCompany: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
192
|
+
tag: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
193
|
+
leadStage: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
194
|
+
leadSource: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
195
|
+
owner: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
196
|
+
type: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
101
197
|
}>;
|
|
102
198
|
//# sourceMappingURL=lead.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lead.d.ts","sourceRoot":"","sources":["lead.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,eAAe,EAAY,MAAM,gCAAgC,CAAC;AAI1F,eAAO,MAAM,oBAAoB
|
|
1
|
+
{"version":3,"file":"lead.d.ts","sourceRoot":"","sources":["lead.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,eAAe,EAAY,MAAM,gCAAgC,CAAC;AAI1F,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuH/B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuH/B,CAAC;AAEH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuHtC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuH/B,CAAC"}
|