@segment/action-destinations 3.251.1-staging-ffe4df084 → 3.251.1-staging-e43ed26d
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/destinations/blackbaud-raisers-edge-nxt/utils/index.d.ts +1 -1
- package/dist/destinations/engage/twilio/sendWhatsApp/WhatsAppMessageSender.d.ts +1 -0
- package/dist/destinations/engage/twilio/sendWhatsApp/WhatsAppMessageSender.js +19 -11
- package/dist/destinations/engage/twilio/sendWhatsApp/WhatsAppMessageSender.js.map +1 -1
- package/dist/destinations/klaviyo/index.js +1 -1
- package/dist/destinations/klaviyo/properties.js +1 -1
- package/dist/destinations/linkedin-conversions/api/api.test.js +32 -14
- package/dist/destinations/linkedin-conversions/api/api.test.js.map +1 -1
- package/dist/destinations/linkedin-conversions/api/index.d.ts +8 -6
- package/dist/destinations/linkedin-conversions/api/index.js +66 -17
- package/dist/destinations/linkedin-conversions/api/index.js.map +1 -1
- package/dist/destinations/linkedin-conversions/constants.d.ts +7 -0
- package/dist/destinations/linkedin-conversions/constants.js +45 -1
- package/dist/destinations/linkedin-conversions/constants.js.map +1 -1
- package/dist/destinations/linkedin-conversions/streamConversion/generated-types.d.ts +6 -2
- package/dist/destinations/linkedin-conversions/streamConversion/index.js +74 -43
- package/dist/destinations/linkedin-conversions/streamConversion/index.js.map +1 -1
- package/dist/destinations/linkedin-conversions/types.d.ts +5 -0
- package/dist/destinations/marketo-static-lists/addToList/generated-types.d.ts +13 -1
- package/dist/destinations/marketo-static-lists/addToList/index.js +69 -2
- package/dist/destinations/marketo-static-lists/addToList/index.js.map +1 -1
- package/dist/destinations/marketo-static-lists/constants.d.ts +10 -3
- package/dist/destinations/marketo-static-lists/constants.js +2 -14
- package/dist/destinations/marketo-static-lists/constants.js.map +1 -1
- package/dist/destinations/marketo-static-lists/functions.d.ts +18 -1
- package/dist/destinations/marketo-static-lists/functions.js +87 -1
- package/dist/destinations/marketo-static-lists/functions.js.map +1 -1
- package/dist/destinations/marketo-static-lists/index.js +4 -42
- package/dist/destinations/marketo-static-lists/index.js.map +1 -1
- package/dist/destinations/marketo-static-lists/properties.js +1 -2
- package/dist/destinations/marketo-static-lists/properties.js.map +1 -1
- package/dist/destinations/marketo-static-lists/removeFromList/generated-types.d.ts +1 -1
- package/dist/destinations/moloco-rmp/addToCart/generated-types.d.ts +28 -0
- package/dist/destinations/moloco-rmp/addToCart/generated-types.js.map +1 -0
- package/dist/destinations/{responsys/asyncMergeProfileListMembers → moloco-rmp/addToCart}/index.d.ts +1 -1
- package/dist/destinations/moloco-rmp/addToCart/index.js +44 -0
- package/dist/destinations/moloco-rmp/addToCart/index.js.map +1 -0
- package/dist/destinations/moloco-rmp/addToWishlist/generated-types.d.ts +32 -0
- package/dist/destinations/moloco-rmp/addToWishlist/generated-types.js.map +1 -0
- package/dist/destinations/{responsys/asyncMergePetRecords → moloco-rmp/addToWishlist}/index.d.ts +1 -1
- package/dist/destinations/moloco-rmp/addToWishlist/index.js +45 -0
- package/dist/destinations/moloco-rmp/addToWishlist/index.js.map +1 -0
- package/dist/destinations/moloco-rmp/common/convert.d.ts +9 -0
- package/dist/destinations/moloco-rmp/common/convert.js +71 -0
- package/dist/destinations/moloco-rmp/common/convert.js.map +1 -0
- package/dist/destinations/moloco-rmp/common/event.d.ts +10 -0
- package/dist/destinations/moloco-rmp/common/event.js +15 -0
- package/dist/destinations/moloco-rmp/common/event.js.map +1 -0
- package/dist/destinations/moloco-rmp/common/fields.d.ts +14 -0
- package/dist/destinations/moloco-rmp/common/fields.js +348 -0
- package/dist/destinations/moloco-rmp/common/fields.js.map +1 -0
- package/dist/destinations/moloco-rmp/common/payload/moloco.d.ts +35 -0
- package/dist/destinations/moloco-rmp/common/payload/moloco.js +3 -0
- package/dist/destinations/moloco-rmp/common/payload/moloco.js.map +1 -0
- package/dist/destinations/moloco-rmp/common/payload/segment.d.ts +40 -0
- package/dist/destinations/moloco-rmp/common/payload/segment.js +3 -0
- package/dist/destinations/moloco-rmp/common/payload/segment.js.map +1 -0
- package/dist/destinations/moloco-rmp/common/request-client.d.ts +11 -0
- package/dist/destinations/moloco-rmp/common/request-client.js +28 -0
- package/dist/destinations/moloco-rmp/common/request-client.js.map +1 -0
- package/dist/destinations/moloco-rmp/common/settings.d.ts +4 -0
- package/dist/destinations/moloco-rmp/common/settings.js +3 -0
- package/dist/destinations/moloco-rmp/common/settings.js.map +1 -0
- package/dist/destinations/moloco-rmp/generated-types.d.ts +5 -0
- package/dist/destinations/moloco-rmp/generated-types.js +3 -0
- package/dist/destinations/moloco-rmp/generated-types.js.map +1 -0
- package/dist/destinations/moloco-rmp/home/generated-types.d.ts +28 -0
- package/dist/destinations/moloco-rmp/home/generated-types.js +3 -0
- package/dist/destinations/moloco-rmp/home/generated-types.js.map +1 -0
- package/dist/destinations/moloco-rmp/home/index.d.ts +5 -0
- package/dist/destinations/moloco-rmp/home/index.js +29 -0
- package/dist/destinations/moloco-rmp/home/index.js.map +1 -0
- package/dist/destinations/moloco-rmp/index.d.ts +4 -0
- package/dist/destinations/moloco-rmp/index.js +117 -0
- package/dist/destinations/moloco-rmp/index.js.map +1 -0
- package/dist/destinations/moloco-rmp/itemPageView/generated-types.d.ts +28 -0
- package/dist/destinations/moloco-rmp/itemPageView/generated-types.js +3 -0
- package/dist/destinations/moloco-rmp/itemPageView/generated-types.js.map +1 -0
- package/dist/destinations/moloco-rmp/itemPageView/index.d.ts +5 -0
- package/dist/destinations/moloco-rmp/itemPageView/index.js +44 -0
- package/dist/destinations/moloco-rmp/itemPageView/index.js.map +1 -0
- package/dist/destinations/moloco-rmp/land/generated-types.d.ts +29 -0
- package/dist/destinations/moloco-rmp/land/generated-types.js +3 -0
- package/dist/destinations/moloco-rmp/land/generated-types.js.map +1 -0
- package/dist/destinations/moloco-rmp/land/index.d.ts +5 -0
- package/dist/destinations/moloco-rmp/land/index.js +33 -0
- package/dist/destinations/moloco-rmp/land/index.js.map +1 -0
- package/dist/destinations/moloco-rmp/pageView/generated-types.d.ts +29 -0
- package/dist/destinations/moloco-rmp/pageView/generated-types.js +3 -0
- package/dist/destinations/moloco-rmp/pageView/generated-types.js.map +1 -0
- package/dist/destinations/moloco-rmp/pageView/index.d.ts +5 -0
- package/dist/destinations/moloco-rmp/pageView/index.js +36 -0
- package/dist/destinations/moloco-rmp/pageView/index.js.map +1 -0
- package/dist/destinations/moloco-rmp/purchase/generated-types.d.ts +36 -0
- package/dist/destinations/moloco-rmp/purchase/generated-types.js +3 -0
- package/dist/destinations/moloco-rmp/purchase/generated-types.js.map +1 -0
- package/dist/destinations/moloco-rmp/purchase/index.d.ts +5 -0
- package/dist/destinations/moloco-rmp/purchase/index.js +37 -0
- package/dist/destinations/moloco-rmp/purchase/index.js.map +1 -0
- package/dist/destinations/moloco-rmp/search/generated-types.d.ts +30 -0
- package/dist/destinations/moloco-rmp/search/generated-types.js +3 -0
- package/dist/destinations/moloco-rmp/search/generated-types.js.map +1 -0
- package/dist/destinations/moloco-rmp/search/index.d.ts +5 -0
- package/dist/destinations/moloco-rmp/search/index.js +34 -0
- package/dist/destinations/moloco-rmp/search/index.js.map +1 -0
- package/dist/destinations/responsys/index.d.ts +1 -1
- package/dist/destinations/responsys/index.js +12 -2
- package/dist/destinations/responsys/index.js.map +1 -1
- package/dist/destinations/responsys/sendAudience/generated-types.d.ts +2 -0
- package/dist/destinations/responsys/sendAudience/index.js +25 -6
- package/dist/destinations/responsys/sendAudience/index.js.map +1 -1
- package/dist/destinations/responsys/sendCustomTraits/generated-types.d.ts +2 -0
- package/dist/destinations/responsys/sendCustomTraits/index.js +25 -6
- package/dist/destinations/responsys/sendCustomTraits/index.js.map +1 -1
- package/dist/destinations/responsys/upsertListMember/generated-types.d.ts +1 -0
- package/dist/destinations/responsys/upsertListMember/index.js +8 -1
- package/dist/destinations/responsys/upsertListMember/index.js.map +1 -1
- package/dist/destinations/responsys/utils.d.ts +5 -2
- package/dist/destinations/responsys/utils.js +32 -7
- package/dist/destinations/responsys/utils.js.map +1 -1
- package/dist/destinations/segment-profiles/index.js +3 -1
- package/dist/destinations/segment-profiles/index.js.map +1 -1
- package/dist/destinations/segment-profiles/segment-properties.d.ts +2 -0
- package/dist/destinations/segment-profiles/segment-properties.js +14 -1
- package/dist/destinations/segment-profiles/segment-properties.js.map +1 -1
- package/package.json +2 -2
- package/dist/destinations/responsys/asyncMergePetRecords/generated-types.d.ts +0 -14
- package/dist/destinations/responsys/asyncMergePetRecords/generated-types.js.map +0 -1
- package/dist/destinations/responsys/asyncMergePetRecords/index.js +0 -113
- package/dist/destinations/responsys/asyncMergePetRecords/index.js.map +0 -1
- package/dist/destinations/responsys/asyncMergeProfileListMembers/generated-types.d.ts +0 -20
- package/dist/destinations/responsys/asyncMergeProfileListMembers/generated-types.js.map +0 -1
- package/dist/destinations/responsys/asyncMergeProfileListMembers/index.js +0 -174
- package/dist/destinations/responsys/asyncMergeProfileListMembers/index.js.map +0 -1
- package/dist/destinations/responsys/rsp-operations.d.ts +0 -14
- package/dist/destinations/responsys/rsp-operations.js +0 -33
- package/dist/destinations/responsys/rsp-operations.js.map +0 -1
- package/dist/destinations/responsys/rsp-properties.d.ts +0 -4
- package/dist/destinations/responsys/rsp-properties.js +0 -27
- package/dist/destinations/responsys/rsp-properties.js.map +0 -1
- package/dist/destinations/tiktok-offline-conversions/reportOfflineEvent/formatter.d.ts +0 -3
- package/dist/destinations/tiktok-offline-conversions/reportOfflineEvent/formatter.js +0 -43
- package/dist/destinations/tiktok-offline-conversions/reportOfflineEvent/formatter.js.map +0 -1
- /package/dist/destinations/{responsys/asyncMergePetRecords → moloco-rmp/addToCart}/generated-types.js +0 -0
- /package/dist/destinations/{responsys/asyncMergeProfileListMembers → moloco-rmp/addToWishlist}/generated-types.js +0 -0
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
export interface Payload {
|
|
2
|
-
adAccountId: string;
|
|
3
2
|
conversionHappenedAt: string;
|
|
4
3
|
conversionValue?: {
|
|
5
4
|
currencyCode: string;
|
|
@@ -17,21 +16,26 @@ export interface Payload {
|
|
|
17
16
|
title?: string;
|
|
18
17
|
countryCode?: string;
|
|
19
18
|
};
|
|
20
|
-
campaignId: string[];
|
|
21
19
|
}
|
|
22
20
|
export interface HookBundle {
|
|
23
21
|
onMappingSave: {
|
|
24
22
|
inputs?: {
|
|
23
|
+
adAccountId: string;
|
|
24
|
+
campaignId?: string[];
|
|
25
25
|
conversionRuleId?: string;
|
|
26
26
|
name?: string;
|
|
27
27
|
conversionType?: string;
|
|
28
28
|
attribution_type?: string;
|
|
29
|
+
post_click_attribution_window_size?: number;
|
|
30
|
+
view_through_attribution_window_size?: number;
|
|
29
31
|
};
|
|
30
32
|
outputs?: {
|
|
31
33
|
id: string;
|
|
32
34
|
name: string;
|
|
33
35
|
conversionType: string;
|
|
34
36
|
attribution_type: string;
|
|
37
|
+
post_click_attribution_window_size: number;
|
|
38
|
+
view_through_attribution_window_size: number;
|
|
35
39
|
};
|
|
36
40
|
};
|
|
37
41
|
}
|
|
@@ -12,14 +12,35 @@ const action = {
|
|
|
12
12
|
label: 'Create a Conversion Rule',
|
|
13
13
|
description: 'When saving this mapping, we will create a conversion rule in LinkedIn using the fields you provided.',
|
|
14
14
|
inputFields: {
|
|
15
|
+
adAccountId: {
|
|
16
|
+
label: 'Ad Account',
|
|
17
|
+
description: 'The ad account to use for the conversion event.',
|
|
18
|
+
type: 'string',
|
|
19
|
+
required: true,
|
|
20
|
+
dynamic: async (request) => {
|
|
21
|
+
const linkedIn = new api_1.LinkedInConversions(request);
|
|
22
|
+
return linkedIn.getAdAccounts();
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
campaignId: {
|
|
26
|
+
label: 'Add Campaigns to Conversion',
|
|
27
|
+
description: 'Select one or more advertising campaigns from your ad account to associate with the configured conversion rule. Segment will only add the selected campaigns to the conversion rule. Deselecting a campaign will not disassociate it from the conversion rule.',
|
|
28
|
+
type: 'string',
|
|
29
|
+
multiple: true,
|
|
30
|
+
required: false,
|
|
31
|
+
dynamic: async (request, { hookInputs }) => {
|
|
32
|
+
const linkedIn = new api_1.LinkedInConversions(request);
|
|
33
|
+
return linkedIn.getCampaignsList(hookInputs?.adAccountId);
|
|
34
|
+
}
|
|
35
|
+
},
|
|
15
36
|
conversionRuleId: {
|
|
16
37
|
type: 'string',
|
|
17
38
|
label: 'Existing Conversion Rule ID',
|
|
18
39
|
description: 'The ID of an existing conversion rule to stream events to. If defined, we will not create a new conversion rule.',
|
|
19
40
|
required: false,
|
|
20
|
-
dynamic: async (request, {
|
|
41
|
+
dynamic: async (request, { hookInputs }) => {
|
|
21
42
|
const linkedIn = new api_1.LinkedInConversions(request);
|
|
22
|
-
return linkedIn.getConversionRulesList(
|
|
43
|
+
return linkedIn.getConversionRulesList(hookInputs?.adAccountId);
|
|
23
44
|
}
|
|
24
45
|
},
|
|
25
46
|
name: {
|
|
@@ -41,16 +62,7 @@ const action = {
|
|
|
41
62
|
type: 'string',
|
|
42
63
|
label: 'Conversion Type',
|
|
43
64
|
description: 'The type of conversion rule.',
|
|
44
|
-
choices:
|
|
45
|
-
{ label: 'Add to Cart', value: 'ADD_TO_CART' },
|
|
46
|
-
{ label: 'Download', value: 'DOWNLOAD' },
|
|
47
|
-
{ label: 'Install', value: 'INSTALL' },
|
|
48
|
-
{ label: 'Key Page View', value: 'KEY_PAGE_VIEW' },
|
|
49
|
-
{ label: 'Lead', value: 'LEAD' },
|
|
50
|
-
{ label: 'Purchase', value: 'PURCHASE' },
|
|
51
|
-
{ label: 'Sign Up', value: 'SIGN_UP' },
|
|
52
|
-
{ label: 'Other', value: 'OTHER' }
|
|
53
|
-
],
|
|
65
|
+
choices: constants_1.CONVERSION_TYPE_OPTIONS,
|
|
54
66
|
depends_on: {
|
|
55
67
|
match: 'all',
|
|
56
68
|
conditions: [
|
|
@@ -80,6 +92,20 @@ const action = {
|
|
|
80
92
|
}
|
|
81
93
|
]
|
|
82
94
|
}
|
|
95
|
+
},
|
|
96
|
+
post_click_attribution_window_size: {
|
|
97
|
+
label: 'Post-Click Attribution Window Size',
|
|
98
|
+
description: 'Conversion window timeframe (in days) of a member clicking on a LinkedIn Ad (a post-click conversion) within which conversions will be attributed to a LinkedIn ad. Allowed values are 1, 7, 30 or 90. Default is 30.',
|
|
99
|
+
type: 'number',
|
|
100
|
+
default: 30,
|
|
101
|
+
choices: constants_1.SUPPORTED_LOOKBACK_WINDOW_CHOICES
|
|
102
|
+
},
|
|
103
|
+
view_through_attribution_window_size: {
|
|
104
|
+
label: 'View-Through Attribution Window Size',
|
|
105
|
+
description: 'Conversion window timeframe (in days) of a member seeing a LinkedIn Ad (a view-through conversion) within which conversions will be attributed to a LinkedIn ad. Allowed values are 1, 7, 30 or 90. Default is 7.',
|
|
106
|
+
type: 'number',
|
|
107
|
+
default: 7,
|
|
108
|
+
choices: constants_1.SUPPORTED_LOOKBACK_WINDOW_CHOICES
|
|
83
109
|
}
|
|
84
110
|
},
|
|
85
111
|
outputTypes: {
|
|
@@ -106,25 +132,48 @@ const action = {
|
|
|
106
132
|
description: 'The attribution type for the conversion rule.',
|
|
107
133
|
type: 'string',
|
|
108
134
|
required: true
|
|
135
|
+
},
|
|
136
|
+
post_click_attribution_window_size: {
|
|
137
|
+
label: 'Post-Click Attribution Window Size',
|
|
138
|
+
description: 'Conversion window timeframe (in days) of a member clicking on a LinkedIn Ad (a post-click conversion) within which conversions will be attributed to a LinkedIn ad.',
|
|
139
|
+
type: 'number',
|
|
140
|
+
required: true
|
|
141
|
+
},
|
|
142
|
+
view_through_attribution_window_size: {
|
|
143
|
+
label: 'View-Through Attribution Window Size',
|
|
144
|
+
description: ' Conversion window timeframe (in days) of a member seeing a LinkedIn Ad (a view-through conversion) within which conversions will be attributed to a LinkedIn ad.',
|
|
145
|
+
type: 'number',
|
|
146
|
+
required: true
|
|
109
147
|
}
|
|
110
148
|
},
|
|
111
|
-
performHook: async (request, {
|
|
112
|
-
const linkedIn = new api_1.LinkedInConversions(request
|
|
149
|
+
performHook: async (request, { hookInputs, hookOutputs }) => {
|
|
150
|
+
const linkedIn = new api_1.LinkedInConversions(request);
|
|
151
|
+
let hookReturn;
|
|
113
152
|
if (hookOutputs?.onMappingSave?.outputs) {
|
|
114
|
-
|
|
153
|
+
linkedIn.setConversionRuleId(hookOutputs.onMappingSave.outputs.id);
|
|
154
|
+
hookReturn = await linkedIn.updateConversionRule(hookInputs, hookOutputs.onMappingSave.outputs);
|
|
155
|
+
}
|
|
156
|
+
hookReturn = await linkedIn.createConversionRule(hookInputs);
|
|
157
|
+
if (hookReturn.error || !hookReturn.savedData) {
|
|
158
|
+
return hookReturn;
|
|
159
|
+
}
|
|
160
|
+
linkedIn.setConversionRuleId(hookReturn.savedData.id);
|
|
161
|
+
try {
|
|
162
|
+
await linkedIn.bulkAssociateCampaignToConversion(hookInputs?.campaignId);
|
|
115
163
|
}
|
|
116
|
-
|
|
164
|
+
catch (error) {
|
|
165
|
+
return {
|
|
166
|
+
error: {
|
|
167
|
+
message: `Failed to associate campaigns to conversion rule, please try again: ${JSON.stringify(error)}`,
|
|
168
|
+
code: 'ASSOCIATE_CAMPAIGN_TO_CONVERSION_ERROR'
|
|
169
|
+
}
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
return hookReturn;
|
|
117
173
|
}
|
|
118
174
|
}
|
|
119
175
|
},
|
|
120
176
|
fields: {
|
|
121
|
-
adAccountId: {
|
|
122
|
-
label: 'Ad Account',
|
|
123
|
-
description: 'The ad account to use for the conversion event.',
|
|
124
|
-
type: 'string',
|
|
125
|
-
required: true,
|
|
126
|
-
dynamic: true
|
|
127
|
-
},
|
|
128
177
|
conversionHappenedAt: {
|
|
129
178
|
label: 'Timestamp',
|
|
130
179
|
description: 'Epoch timestamp in milliseconds at which the conversion event happened. If your source records conversion timestamps in second, insert 000 at the end to transform it to milliseconds.',
|
|
@@ -219,24 +268,6 @@ const action = {
|
|
|
219
268
|
required: false
|
|
220
269
|
}
|
|
221
270
|
}
|
|
222
|
-
},
|
|
223
|
-
campaignId: {
|
|
224
|
-
label: 'Campaigns',
|
|
225
|
-
type: 'string',
|
|
226
|
-
multiple: true,
|
|
227
|
-
required: true,
|
|
228
|
-
dynamic: true,
|
|
229
|
-
description: 'Select one or more advertising campaigns from your ad account to associate with the configured conversion rule.'
|
|
230
|
-
}
|
|
231
|
-
},
|
|
232
|
-
dynamicFields: {
|
|
233
|
-
adAccountId: async (request) => {
|
|
234
|
-
const linkedIn = new api_1.LinkedInConversions(request);
|
|
235
|
-
return linkedIn.getAdAccounts();
|
|
236
|
-
},
|
|
237
|
-
campaignId: async (request, { payload }) => {
|
|
238
|
-
const linkedIn = new api_1.LinkedInConversions(request);
|
|
239
|
-
return linkedIn.getCampaignsList(payload.adAccountId);
|
|
240
271
|
}
|
|
241
272
|
},
|
|
242
273
|
perform: async (request, { payload, hookOutputs }) => {
|
|
@@ -251,9 +282,9 @@ const action = {
|
|
|
251
282
|
if (!conversionRuleId) {
|
|
252
283
|
throw new actions_core_1.PayloadValidationError('Conversion Rule ID is required.');
|
|
253
284
|
}
|
|
254
|
-
const linkedinApiClient = new api_1.LinkedInConversions(request
|
|
285
|
+
const linkedinApiClient = new api_1.LinkedInConversions(request);
|
|
286
|
+
linkedinApiClient.setConversionRuleId(conversionRuleId);
|
|
255
287
|
try {
|
|
256
|
-
await linkedinApiClient.bulkAssociateCampaignToConversion(payload.campaignId);
|
|
257
288
|
return linkedinApiClient.streamConversionEvent(payload, conversionTime);
|
|
258
289
|
}
|
|
259
290
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/linkedin-conversions/streamConversion/index.ts"],"names":[],"mappings":";;AACA,wDAAwH;AAExH,gCAA4C;AAC5C,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/linkedin-conversions/streamConversion/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -85,6 +85,9 @@ export interface ConversionRuleCreationResponse {
|
|
|
85
85
|
id: string;
|
|
86
86
|
name: string;
|
|
87
87
|
type: string;
|
|
88
|
+
attributionType: string;
|
|
89
|
+
postClickAttributionWindowSize: number;
|
|
90
|
+
viewThroughAttributionWindowSize: number;
|
|
88
91
|
}
|
|
89
92
|
export interface ConversionRuleUpdateResponse {
|
|
90
93
|
}
|
|
@@ -96,4 +99,6 @@ export interface GetConversionRuleResponse {
|
|
|
96
99
|
id?: string;
|
|
97
100
|
attributionType?: string;
|
|
98
101
|
account?: string;
|
|
102
|
+
postClickAttributionWindowSize?: number;
|
|
103
|
+
viewThroughAttributionWindowSize?: number;
|
|
99
104
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export interface Payload {
|
|
2
|
-
external_id
|
|
2
|
+
external_id?: string;
|
|
3
3
|
lookup_field: string;
|
|
4
4
|
data: {
|
|
5
5
|
email?: string;
|
|
@@ -12,3 +12,15 @@ export interface Payload {
|
|
|
12
12
|
batch_size: number;
|
|
13
13
|
event_name: string;
|
|
14
14
|
}
|
|
15
|
+
export interface HookBundle {
|
|
16
|
+
onMappingSave: {
|
|
17
|
+
inputs?: {
|
|
18
|
+
list_id?: string;
|
|
19
|
+
list_name?: string;
|
|
20
|
+
};
|
|
21
|
+
outputs?: {
|
|
22
|
+
id?: string;
|
|
23
|
+
name?: string;
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
}
|
|
@@ -14,12 +14,79 @@ const action = {
|
|
|
14
14
|
batch_size: { ...properties_1.batch_size },
|
|
15
15
|
event_name: { ...properties_1.event_name }
|
|
16
16
|
},
|
|
17
|
-
|
|
17
|
+
hooks: {
|
|
18
|
+
onMappingSave: {
|
|
19
|
+
label: 'Create a new static list in Marketo',
|
|
20
|
+
description: 'When saving this mapping, we will create a static list in Marketo using the fields you provided.',
|
|
21
|
+
inputFields: {
|
|
22
|
+
list_id: {
|
|
23
|
+
type: 'string',
|
|
24
|
+
label: 'List ID',
|
|
25
|
+
description: 'The ID of the Marketo Static List that users will be synced to. If defined, we will not create a new list.',
|
|
26
|
+
required: false
|
|
27
|
+
},
|
|
28
|
+
list_name: {
|
|
29
|
+
type: 'string',
|
|
30
|
+
label: 'List Name',
|
|
31
|
+
description: 'The name of the Marketo Static List that you would like to create.',
|
|
32
|
+
required: false
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
outputTypes: {
|
|
36
|
+
id: {
|
|
37
|
+
type: 'string',
|
|
38
|
+
label: 'ID',
|
|
39
|
+
description: 'The ID of the created Marketo Static List that users will be synced to.',
|
|
40
|
+
required: false
|
|
41
|
+
},
|
|
42
|
+
name: {
|
|
43
|
+
type: 'string',
|
|
44
|
+
label: 'List Name',
|
|
45
|
+
description: 'The name of the created Marketo Static List that users will be synced to.',
|
|
46
|
+
required: false
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
performHook: async (request, { settings, hookInputs, statsContext }) => {
|
|
50
|
+
if (hookInputs.list_id) {
|
|
51
|
+
return functions_1.getList(request, settings, hookInputs.list_id);
|
|
52
|
+
}
|
|
53
|
+
try {
|
|
54
|
+
const input = {
|
|
55
|
+
audienceName: hookInputs.list_name,
|
|
56
|
+
settings: settings
|
|
57
|
+
};
|
|
58
|
+
const listId = await functions_1.createList(request, input, statsContext);
|
|
59
|
+
return {
|
|
60
|
+
successMessage: `List ${listId} created successfully!`,
|
|
61
|
+
savedData: {
|
|
62
|
+
id: listId,
|
|
63
|
+
name: hookInputs.list_name
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
catch (e) {
|
|
68
|
+
return {
|
|
69
|
+
error: {
|
|
70
|
+
message: 'Failed to create list',
|
|
71
|
+
code: 'CREATE_LIST_FAILURE'
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
},
|
|
78
|
+
perform: async (request, { settings, payload, statsContext, hookOutputs }) => {
|
|
18
79
|
statsContext?.statsClient?.incr('addToAudience', 1, statsContext?.tags);
|
|
80
|
+
if (hookOutputs?.retlOnMappingSave?.outputs.id) {
|
|
81
|
+
payload.external_id = hookOutputs?.retlOnMappingSave?.outputs.id;
|
|
82
|
+
}
|
|
19
83
|
return functions_1.addToList(request, settings, [payload], statsContext);
|
|
20
84
|
},
|
|
21
|
-
performBatch: async (request, { settings, payload, statsContext }) => {
|
|
85
|
+
performBatch: async (request, { settings, payload, statsContext, hookOutputs }) => {
|
|
22
86
|
statsContext?.statsClient?.incr('addToAudience.batch', 1, statsContext?.tags);
|
|
87
|
+
if (hookOutputs?.retlOnMappingSave?.outputs.new_list_id) {
|
|
88
|
+
payload[0].external_id = hookOutputs?.retlOnMappingSave?.outputs.new_list_id;
|
|
89
|
+
}
|
|
23
90
|
return functions_1.addToList(request, settings, payload, statsContext);
|
|
24
91
|
}
|
|
25
92
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/marketo-static-lists/addToList/index.ts"],"names":[],"mappings":";;AAGA,8CAAwG;AACxG,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/destinations/marketo-static-lists/addToList/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
import { Settings } from './generated-types';
|
|
1
|
+
export declare const OAUTH_ENDPOINT = "identity/oauth/token";
|
|
3
2
|
export declare const GET_FOLDER_ENDPOINT: string;
|
|
4
3
|
export declare const CREATE_LIST_ENDPOINT: string;
|
|
5
4
|
export declare const GET_LIST_ENDPOINT: string;
|
|
@@ -56,4 +55,12 @@ export interface MarketoLeads {
|
|
|
56
55
|
updatedAt: string;
|
|
57
56
|
createdAt: string;
|
|
58
57
|
}
|
|
59
|
-
export
|
|
58
|
+
export interface CreateListInput {
|
|
59
|
+
audienceName: string;
|
|
60
|
+
settings: {
|
|
61
|
+
client_id: string;
|
|
62
|
+
client_secret: string;
|
|
63
|
+
api_endpoint: string;
|
|
64
|
+
folder_name: string;
|
|
65
|
+
};
|
|
66
|
+
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.CSV_LIMIT = exports.REMOVE_USERS_ENDPOINT = exports.GET_LEADS_ENDPOINT = exports.BULK_IMPORT_ENDPOINT = exports.GET_LIST_ENDPOINT = exports.CREATE_LIST_ENDPOINT = exports.GET_FOLDER_ENDPOINT = exports.OAUTH_ENDPOINT = void 0;
|
|
4
4
|
const API_VERSION = 'v1';
|
|
5
|
-
|
|
5
|
+
exports.OAUTH_ENDPOINT = 'identity/oauth/token';
|
|
6
6
|
exports.GET_FOLDER_ENDPOINT = `/rest/asset/${API_VERSION}/folder/byName.json?name=folderName`;
|
|
7
7
|
exports.CREATE_LIST_ENDPOINT = `/rest/asset/${API_VERSION}/staticLists.json?folder=folderId&name=listName`;
|
|
8
8
|
exports.GET_LIST_ENDPOINT = `/rest/asset/${API_VERSION}/staticList/listId.json`;
|
|
@@ -10,16 +10,4 @@ exports.BULK_IMPORT_ENDPOINT = `/bulk/${API_VERSION}/leads.json?format=csv&listI
|
|
|
10
10
|
exports.GET_LEADS_ENDPOINT = `/rest/${API_VERSION}/leads.json?filterType=field&filterValues=emailsToFilter`;
|
|
11
11
|
exports.REMOVE_USERS_ENDPOINT = `/rest/${API_VERSION}/lists/listId/leads.json?id=idsToDelete`;
|
|
12
12
|
exports.CSV_LIMIT = 10000000;
|
|
13
|
-
async function getAccessToken(request, settings) {
|
|
14
|
-
const res = await request(`${settings.api_endpoint}/${OAUTH_ENDPOINT}`, {
|
|
15
|
-
method: 'POST',
|
|
16
|
-
body: new URLSearchParams({
|
|
17
|
-
client_id: settings.client_id,
|
|
18
|
-
client_secret: settings.client_secret,
|
|
19
|
-
grant_type: 'client_credentials'
|
|
20
|
-
})
|
|
21
|
-
});
|
|
22
|
-
return res.data.access_token;
|
|
23
|
-
}
|
|
24
|
-
exports.getAccessToken = getAccessToken;
|
|
25
13
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/destinations/marketo-static-lists/constants.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/destinations/marketo-static-lists/constants.ts"],"names":[],"mappings":";;;AAAA,MAAM,WAAW,GAAG,IAAI,CAAA;AACX,QAAA,cAAc,GAAG,sBAAsB,CAAA;AACvC,QAAA,mBAAmB,GAAG,eAAe,WAAW,qCAAqC,CAAA;AACrF,QAAA,oBAAoB,GAAG,eAAe,WAAW,iDAAiD,CAAA;AAClG,QAAA,iBAAiB,GAAG,eAAe,WAAW,yBAAyB,CAAA;AACvE,QAAA,oBAAoB,GAAG,SAAS,WAAW,oEAAoE,CAAA;AAC/G,QAAA,kBAAkB,GAAG,SAAS,WAAW,0DAA0D,CAAA;AACnG,QAAA,qBAAqB,GAAG,SAAS,WAAW,yCAAyC,CAAA;AAErF,QAAA,SAAS,GAAG,QAAQ,CAAA"}
|
|
@@ -2,7 +2,24 @@ import { RequestClient, StatsContext } from '@segment/actions-core';
|
|
|
2
2
|
import { Settings } from './generated-types';
|
|
3
3
|
import { Payload as AddToListPayload } from './addToList/generated-types';
|
|
4
4
|
import { Payload as RemoveFromListPayload } from './removeFromList/generated-types';
|
|
5
|
-
import { MarketoBulkImportResponse, MarketoDeleteLeadsResponse } from './constants';
|
|
5
|
+
import { MarketoBulkImportResponse, MarketoDeleteLeadsResponse, CreateListInput } from './constants';
|
|
6
6
|
export declare function formatEndpoint(endpoint: string): string;
|
|
7
7
|
export declare function addToList(request: RequestClient, settings: Settings, payloads: AddToListPayload[], statsContext?: StatsContext): Promise<MarketoBulkImportResponse>;
|
|
8
8
|
export declare function removeFromList(request: RequestClient, settings: Settings, payloads: RemoveFromListPayload[], statsContext?: StatsContext): Promise<MarketoDeleteLeadsResponse>;
|
|
9
|
+
export declare function getAccessToken(request: RequestClient, settings: Settings): Promise<string>;
|
|
10
|
+
export declare function getList(request: RequestClient, settings: Settings, id: string): Promise<{
|
|
11
|
+
error: {
|
|
12
|
+
message: string;
|
|
13
|
+
code: string;
|
|
14
|
+
};
|
|
15
|
+
successMessage?: undefined;
|
|
16
|
+
savedData?: undefined;
|
|
17
|
+
} | {
|
|
18
|
+
successMessage: string;
|
|
19
|
+
savedData: {
|
|
20
|
+
id: string;
|
|
21
|
+
name: string;
|
|
22
|
+
};
|
|
23
|
+
error?: undefined;
|
|
24
|
+
}>;
|
|
25
|
+
export declare function createList(request: RequestClient, input: CreateListInput, statsContext?: StatsContext): Promise<string>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.removeFromList = exports.addToList = exports.formatEndpoint = void 0;
|
|
3
|
+
exports.createList = exports.getList = exports.getAccessToken = exports.removeFromList = exports.addToList = exports.formatEndpoint = void 0;
|
|
4
4
|
const actions_core_1 = require("@segment/actions-core");
|
|
5
5
|
const constants_1 = require("./constants");
|
|
6
6
|
function formatEndpoint(endpoint) {
|
|
@@ -8,6 +8,9 @@ function formatEndpoint(endpoint) {
|
|
|
8
8
|
}
|
|
9
9
|
exports.formatEndpoint = formatEndpoint;
|
|
10
10
|
async function addToList(request, settings, payloads, statsContext) {
|
|
11
|
+
if (!payloads[0].external_id) {
|
|
12
|
+
throw new actions_core_1.IntegrationError('No external_id found in payload', 'INVALID_REQUEST_DATA', 400);
|
|
13
|
+
}
|
|
11
14
|
const api_endpoint = formatEndpoint(settings.api_endpoint);
|
|
12
15
|
const csvData = formatData(payloads);
|
|
13
16
|
const csvSize = Buffer.byteLength(csvData, 'utf8');
|
|
@@ -33,6 +36,9 @@ async function addToList(request, settings, payloads, statsContext) {
|
|
|
33
36
|
}
|
|
34
37
|
exports.addToList = addToList;
|
|
35
38
|
async function removeFromList(request, settings, payloads, statsContext) {
|
|
39
|
+
if (!payloads[0].external_id) {
|
|
40
|
+
throw new actions_core_1.IntegrationError('No external_id found in payload', 'INVALID_REQUEST_DATA', 400);
|
|
41
|
+
}
|
|
36
42
|
const api_endpoint = formatEndpoint(settings.api_endpoint);
|
|
37
43
|
const usersToRemove = extractFilterData(payloads);
|
|
38
44
|
const getLeadsUrl = api_endpoint +
|
|
@@ -99,4 +105,84 @@ function parseErrorResponse(response) {
|
|
|
99
105
|
}
|
|
100
106
|
throw new actions_core_1.IntegrationError(response.errors[0].message, 'INVALID_RESPONSE', 400);
|
|
101
107
|
}
|
|
108
|
+
async function getAccessToken(request, settings) {
|
|
109
|
+
const res = await request(`${settings.api_endpoint}/${constants_1.OAUTH_ENDPOINT}`, {
|
|
110
|
+
method: 'POST',
|
|
111
|
+
body: new URLSearchParams({
|
|
112
|
+
client_id: settings.client_id,
|
|
113
|
+
client_secret: settings.client_secret,
|
|
114
|
+
grant_type: 'client_credentials'
|
|
115
|
+
})
|
|
116
|
+
});
|
|
117
|
+
return res.data.access_token;
|
|
118
|
+
}
|
|
119
|
+
exports.getAccessToken = getAccessToken;
|
|
120
|
+
async function getList(request, settings, id) {
|
|
121
|
+
const accessToken = await getAccessToken(request, settings);
|
|
122
|
+
const endpoint = formatEndpoint(settings.api_endpoint);
|
|
123
|
+
const getListUrl = endpoint + constants_1.GET_LIST_ENDPOINT.replace('listId', id);
|
|
124
|
+
const getListResponse = await request(getListUrl, {
|
|
125
|
+
method: 'GET',
|
|
126
|
+
headers: {
|
|
127
|
+
authorization: `Bearer ${accessToken}`
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
if (!getListResponse.data.success && getListResponse.data.errors) {
|
|
131
|
+
return {
|
|
132
|
+
error: {
|
|
133
|
+
message: getListResponse.data.errors[0].message,
|
|
134
|
+
code: 'LIST_ID_VERIFICATION_FAILURE'
|
|
135
|
+
}
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
return {
|
|
139
|
+
successMessage: `Using existing list ${id}.`,
|
|
140
|
+
savedData: {
|
|
141
|
+
id: id,
|
|
142
|
+
name: getListResponse.data.result[0].name
|
|
143
|
+
}
|
|
144
|
+
};
|
|
145
|
+
}
|
|
146
|
+
exports.getList = getList;
|
|
147
|
+
async function createList(request, input, statsContext) {
|
|
148
|
+
const statsClient = statsContext?.statsClient;
|
|
149
|
+
const statsTags = statsContext?.tags;
|
|
150
|
+
if (!input.audienceName) {
|
|
151
|
+
throw new actions_core_1.IntegrationError('Missing audience name value', 'MISSING_REQUIRED_FIELD', 400);
|
|
152
|
+
}
|
|
153
|
+
const endpoint = formatEndpoint(input.settings.api_endpoint);
|
|
154
|
+
const accessToken = await getAccessToken(request, input.settings);
|
|
155
|
+
const getFolderUrl = endpoint + constants_1.GET_FOLDER_ENDPOINT.replace('folderName', encodeURIComponent(input.settings.folder_name));
|
|
156
|
+
const getFolderResponse = await request(getFolderUrl, {
|
|
157
|
+
method: 'GET',
|
|
158
|
+
headers: {
|
|
159
|
+
authorization: `Bearer ${accessToken}`
|
|
160
|
+
}
|
|
161
|
+
});
|
|
162
|
+
if (!getFolderResponse.data.success && getFolderResponse.data.errors) {
|
|
163
|
+
statsClient?.incr('createAudience.error', 1, statsTags);
|
|
164
|
+
throw new actions_core_1.IntegrationError(`${getFolderResponse.data.errors[0].message}`, 'INVALID_RESPONSE', 400);
|
|
165
|
+
}
|
|
166
|
+
if (!getFolderResponse.data.result) {
|
|
167
|
+
statsClient?.incr('createAudience.error', 1, statsTags);
|
|
168
|
+
throw new actions_core_1.IntegrationError(`A folder with the name ${input.settings.folder_name} not found`, 'INVALID_REQUEST_DATA', 400);
|
|
169
|
+
}
|
|
170
|
+
const folderId = getFolderResponse.data.result[0].id.toString();
|
|
171
|
+
const createListUrl = endpoint +
|
|
172
|
+
constants_1.CREATE_LIST_ENDPOINT.replace('folderId', folderId).replace('listName', encodeURIComponent(input.audienceName));
|
|
173
|
+
const createListResponse = await request(createListUrl, {
|
|
174
|
+
method: 'POST',
|
|
175
|
+
headers: {
|
|
176
|
+
authorization: `Bearer ${accessToken}`
|
|
177
|
+
}
|
|
178
|
+
});
|
|
179
|
+
if (!createListResponse.data.success && createListResponse.data.errors) {
|
|
180
|
+
statsClient?.incr('createAudience.error', 1, statsTags);
|
|
181
|
+
throw new actions_core_1.IntegrationError(`${createListResponse.data.errors[0].message}`, 'INVALID_RESPONSE', 400);
|
|
182
|
+
}
|
|
183
|
+
const listId = createListResponse.data.result[0].id.toString();
|
|
184
|
+
statsClient?.incr('createAudience.success', 1, statsTags);
|
|
185
|
+
return listId;
|
|
186
|
+
}
|
|
187
|
+
exports.createList = createList;
|
|
102
188
|
//# sourceMappingURL=functions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"functions.js","sourceRoot":"","sources":["../../../src/destinations/marketo-static-lists/functions.ts"],"names":[],"mappings":";;;AAAA,wDAAqG;AAIrG,
|
|
1
|
+
{"version":3,"file":"functions.js","sourceRoot":"","sources":["../../../src/destinations/marketo-static-lists/functions.ts"],"names":[],"mappings":";;;AAAA,wDAAqG;AAIrG,2CAiBoB;AAIpB,SAAgB,cAAc,CAAC,QAAgB;IAC7C,OAAO,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;AACtC,CAAC;AAFD,wCAEC;AAEM,KAAK,UAAU,SAAS,CAC7B,OAAsB,EACtB,QAAkB,EAClB,QAA4B,EAC5B,YAA2B;IAE3B,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;QAC5B,MAAM,IAAI,+BAAgB,CAAC,iCAAiC,EAAE,sBAAsB,EAAE,GAAG,CAAC,CAAA;KAC3F;IAED,MAAM,YAAY,GAAG,cAAc,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;IAE1D,MAAM,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAA;IACpC,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAClD,IAAI,OAAO,GAAG,qBAAS,EAAE;QACvB,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;QAC7E,MAAM,IAAI,+BAAgB,CAAC,kCAAkC,qBAAS,QAAQ,EAAE,sBAAsB,EAAE,GAAG,CAAC,CAAA;KAC7G;IAED,MAAM,GAAG,GACP,YAAY;QACZ,gCAAoB,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,OAAO,CACzE,eAAe,EACf,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CACzB,CAAA;IAEH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAA4B,GAAG,EAAE;QAC7D,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,gDAAgD;SACjE;QACD,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC;KAC9B,CAAC,CAAA;IAEF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE;QAC1B,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;QAC7E,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;KAClC;IACD,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,uBAAuB,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;IAC/E,OAAO,QAAQ,CAAC,IAAI,CAAA;AACtB,CAAC;AAxCD,8BAwCC;AAEM,KAAK,UAAU,cAAc,CAClC,OAAsB,EACtB,QAAkB,EAClB,QAAiC,EACjC,YAA2B;IAE3B,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;QAC5B,MAAM,IAAI,+BAAgB,CAAC,iCAAiC,EAAE,sBAAsB,EAAE,GAAG,CAAC,CAAA;KAC3F;IAED,MAAM,YAAY,GAAG,cAAc,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;IAC1D,MAAM,aAAa,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IAEjD,MAAM,WAAW,GACf,YAAY;QACZ,8BAAkB,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CACnE,gBAAgB,EAChB,kBAAkB,CAAC,aAAa,CAAC,CAClC,CAAA;IAGH,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAA0B,WAAW,EAAE;QAC3E,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAC,CAAA;IAEF,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE;QAClC,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,0BAA0B,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;QAClF,kBAAkB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;KAC1C;IAED,MAAM,OAAO,GAAG,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAE5D,MAAM,cAAc,GAClB,YAAY,GAAG,iCAAqB,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,CAAA;IAGjH,MAAM,mBAAmB,GAAG,MAAM,OAAO,CAA6B,cAAc,EAAE;QACpF,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;KACF,CAAC,CAAA;IAEF,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,EAAE;QACrC,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,0BAA0B,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;QAClF,kBAAkB,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAA;KAC7C;IACD,YAAY,EAAE,WAAW,EAAE,IAAI,CAAC,4BAA4B,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;IACpF,OAAO,mBAAmB,CAAC,IAAI,CAAA;AACjC,CAAC;AApDD,wCAoDC;AAED,SAAS,cAAc,CAAC,OAAe;IACrC,MAAM,QAAQ,GAAG,kBAAkB,CAAA;IACnC,MAAM,QAAQ,GAAG,KAAK,QAAQ,0GAA0G,OAAO,SAAS,QAAQ,QAAQ,CAAA;IACxK,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,SAAS,UAAU,CAAC,QAA4B;IAC9C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QACzB,OAAO,EAAE,CAAA;KACV;IAED,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IACtF,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAChC,MAAM,OAAO,GAAG,QAAQ;SACrB,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAgC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SACtG,IAAI,CAAC,IAAI,CAAC,CAAA;IAEb,OAAO,GAAG,MAAM,KAAK,OAAO,EAAE,CAAA;AAChC,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAiC;IAC1D,MAAM,IAAI,GAAG,QAAQ;SAClB,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC;SACtD,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC;SACrC,IAAI,CAAC,GAAG,CAAC,CAAA;IACZ,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,cAAc,CAAC,KAAqB;IAC3C,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACvD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAyB;IACnD,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,EAAE;QAC1E,MAAM,IAAI,+BAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,qBAAqB,EAAE,GAAG,CAAC,CAAA;KACnF;IACD,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE;QACtC,MAAM,IAAI,6BAAc,CACtB,4FAA4F,CAC7F,CAAA;KACF;IACD,MAAM,IAAI,+BAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,kBAAkB,EAAE,GAAG,CAAC,CAAA;AACjF,CAAC;AAEM,KAAK,UAAU,cAAc,CAAC,OAAsB,EAAE,QAAkB;IAC7E,MAAM,GAAG,GAAG,MAAM,OAAO,CAAuB,GAAG,QAAQ,CAAC,YAAY,IAAI,0BAAc,EAAE,EAAE;QAC5F,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,eAAe,CAAC;YACxB,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,aAAa,EAAE,QAAQ,CAAC,aAAa;YACrC,UAAU,EAAE,oBAAoB;SACjC,CAAC;KACH,CAAC,CAAA;IAEF,OAAO,GAAG,CAAC,IAAI,CAAC,YAAY,CAAA;AAC9B,CAAC;AAXD,wCAWC;AAEM,KAAK,UAAU,OAAO,CAAC,OAAsB,EAAE,QAAkB,EAAE,EAAU;IAClF,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAC3D,MAAM,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;IAEtD,MAAM,UAAU,GAAG,QAAQ,GAAG,6BAAiB,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;IAErE,MAAM,eAAe,GAAG,MAAM,OAAO,CAAsB,UAAU,EAAE;QACrE,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,WAAW,EAAE;SACvC;KACF,CAAC,CAAA;IAEF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,IAAI,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE;QAChE,OAAO;YACL,KAAK,EAAE;gBACL,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO;gBAC/C,IAAI,EAAE,8BAA8B;aACrC;SACF,CAAA;KACF;IAED,OAAO;QACL,cAAc,EAAE,uBAAuB,EAAE,GAAG;QAC5C,SAAS,EAAE;YACT,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI;SAC1C;KACF,CAAA;AACH,CAAC;AA7BD,0BA6BC;AAEM,KAAK,UAAU,UAAU,CAAC,OAAsB,EAAE,KAAsB,EAAE,YAA2B;IAC1G,MAAM,WAAW,GAAG,YAAY,EAAE,WAAW,CAAA;IAC7C,MAAM,SAAS,GAAG,YAAY,EAAE,IAAI,CAAA;IAEpC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE;QACvB,MAAM,IAAI,+BAAgB,CAAC,6BAA6B,EAAE,wBAAwB,EAAE,GAAG,CAAC,CAAA;KACzF;IAGD,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;IAG5D,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;IAEjE,MAAM,YAAY,GAChB,QAAQ,GAAG,+BAAmB,CAAC,OAAO,CAAC,YAAY,EAAE,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAA;IAGtG,MAAM,iBAAiB,GAAG,MAAM,OAAO,CAAsB,YAAY,EAAE;QACzE,MAAM,EAAE,KAAK;QACb,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,WAAW,EAAE;SACvC;KACF,CAAC,CAAA;IAGF,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE;QACpE,WAAW,EAAE,IAAI,CAAC,sBAAsB,EAAE,CAAC,EAAE,SAAS,CAAC,CAAA;QACvD,MAAM,IAAI,+BAAgB,CAAC,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,kBAAkB,EAAE,GAAG,CAAC,CAAA;KACnG;IAED,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE;QAClC,WAAW,EAAE,IAAI,CAAC,sBAAsB,EAAE,CAAC,EAAE,SAAS,CAAC,CAAA;QACvD,MAAM,IAAI,+BAAgB,CACxB,0BAA0B,KAAK,CAAC,QAAQ,CAAC,WAAW,YAAY,EAChE,sBAAsB,EACtB,GAAG,CACJ,CAAA;KACF;IAED,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAA;IAE/D,MAAM,aAAa,GACjB,QAAQ;QACR,gCAAoB,CAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,kBAAkB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAA;IAGhH,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAsB,aAAa,EAAE;QAC3E,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,aAAa,EAAE,UAAU,WAAW,EAAE;SACvC;KACF,CAAC,CAAA;IAEF,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,MAAM,EAAE;QACtE,WAAW,EAAE,IAAI,CAAC,sBAAsB,EAAE,CAAC,EAAE,SAAS,CAAC,CAAA;QACvD,MAAM,IAAI,+BAAgB,CAAC,GAAG,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,kBAAkB,EAAE,GAAG,CAAC,CAAA;KACpG;IAED,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAA;IAC9D,WAAW,EAAE,IAAI,CAAC,wBAAwB,EAAE,CAAC,EAAE,SAAS,CAAC,CAAA;IAEzD,OAAO,MAAM,CAAA;AACf,CAAC;AA/DD,gCA+DC"}
|