@activepieces/piece-pipedrive 0.6.3 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +9 -7
- package/src/index.js +1 -1
- package/src/index.js.map +1 -1
- package/src/lib/actions/add-follower.js +1 -1
- package/src/lib/actions/add-follower.js.map +1 -1
- package/src/lib/actions/add-label-to-person.js +10 -10
- package/src/lib/actions/add-label-to-person.js.map +1 -1
- package/src/lib/actions/add-product-to-deal.js +3 -3
- package/src/lib/actions/add-product-to-deal.js.map +1 -1
- package/src/lib/actions/create-activity.d.ts +2 -2
- package/src/lib/actions/create-activity.js +13 -11
- package/src/lib/actions/create-activity.js.map +1 -1
- package/src/lib/actions/create-deal.js +19 -19
- package/src/lib/actions/create-deal.js.map +1 -1
- package/src/lib/actions/create-lead.d.ts +1 -1
- package/src/lib/actions/create-lead.js +5 -5
- package/src/lib/actions/create-lead.js.map +1 -1
- package/src/lib/actions/create-note.js +4 -4
- package/src/lib/actions/create-note.js.map +1 -1
- package/src/lib/actions/create-organization.js +21 -17
- package/src/lib/actions/create-organization.js.map +1 -1
- package/src/lib/actions/create-person.d.ts +1 -1
- package/src/lib/actions/create-person.js +47 -29
- package/src/lib/actions/create-person.js.map +1 -1
- package/src/lib/actions/create-product.js +18 -17
- package/src/lib/actions/create-product.js.map +1 -1
- package/src/lib/actions/find-activity.js +24 -10
- package/src/lib/actions/find-activity.js.map +1 -1
- package/src/lib/actions/find-deal.js +12 -10
- package/src/lib/actions/find-deal.js.map +1 -1
- package/src/lib/actions/find-deals-associated-with-person.js +12 -6
- package/src/lib/actions/find-deals-associated-with-person.js.map +1 -1
- package/src/lib/actions/find-notes.js +3 -3
- package/src/lib/actions/find-notes.js.map +1 -1
- package/src/lib/actions/find-organization.js +9 -7
- package/src/lib/actions/find-organization.js.map +1 -1
- package/src/lib/actions/find-person.js +9 -6
- package/src/lib/actions/find-person.js.map +1 -1
- package/src/lib/actions/find-product.js +14 -10
- package/src/lib/actions/find-product.js.map +1 -1
- package/src/lib/actions/find-products.js +20 -12
- package/src/lib/actions/find-products.js.map +1 -1
- package/src/lib/actions/find-user.js +4 -4
- package/src/lib/actions/find-user.js.map +1 -1
- package/src/lib/actions/get-note.js +6 -5
- package/src/lib/actions/get-note.js.map +1 -1
- package/src/lib/actions/get-product.js +5 -5
- package/src/lib/actions/get-product.js.map +1 -1
- package/src/lib/actions/update-activity.d.ts +2 -2
- package/src/lib/actions/update-activity.js +15 -12
- package/src/lib/actions/update-activity.js.map +1 -1
- package/src/lib/actions/update-deal.js +19 -20
- package/src/lib/actions/update-deal.js.map +1 -1
- package/src/lib/actions/update-lead.d.ts +1 -1
- package/src/lib/actions/update-lead.js +5 -5
- package/src/lib/actions/update-lead.js.map +1 -1
- package/src/lib/actions/update-organization.js +21 -18
- package/src/lib/actions/update-organization.js.map +1 -1
- package/src/lib/actions/update-person.js +37 -26
- package/src/lib/actions/update-person.js.map +1 -1
- package/src/lib/common/constants.d.ts +3 -0
- package/src/lib/common/constants.js +64 -0
- package/src/lib/common/constants.js.map +1 -0
- package/src/lib/common/index.d.ts +5 -2
- package/src/lib/common/index.js +127 -10
- package/src/lib/common/index.js.map +1 -1
- package/src/lib/common/props.d.ts +62 -7
- package/src/lib/common/props.js +138 -81
- package/src/lib/common/props.js.map +1 -1
- package/src/lib/common/types.d.ts +319 -36
- package/src/lib/trigger/activity-matching-filter.js +10 -9
- package/src/lib/trigger/activity-matching-filter.js.map +1 -1
- package/src/lib/trigger/deal-matching-filter.js +15 -58
- package/src/lib/trigger/deal-matching-filter.js.map +1 -1
- package/src/lib/trigger/new-activity.js +51 -62
- package/src/lib/trigger/new-activity.js.map +1 -1
- package/src/lib/trigger/new-deal.js +37 -113
- package/src/lib/trigger/new-deal.js.map +1 -1
- package/src/lib/trigger/new-lead.js +13 -10
- package/src/lib/trigger/new-lead.js.map +1 -1
- package/src/lib/trigger/new-note.js +17 -23
- package/src/lib/trigger/new-note.js.map +1 -1
- package/src/lib/trigger/new-organization.js +35 -61
- package/src/lib/trigger/new-organization.js.map +1 -1
- package/src/lib/trigger/new-person.js +34 -81
- package/src/lib/trigger/new-person.js.map +1 -1
- package/src/lib/trigger/organization-matching-filter.js +46 -69
- package/src/lib/trigger/organization-matching-filter.js.map +1 -1
- package/src/lib/trigger/person-matching-filter.js +39 -84
- package/src/lib/trigger/person-matching-filter.js.map +1 -1
- package/src/lib/trigger/updated-deal-stage.js +50 -123
- package/src/lib/trigger/updated-deal-stage.js.map +1 -1
- package/src/lib/trigger/updated-deal.js +38 -128
- package/src/lib/trigger/updated-deal.js.map +1 -1
- package/src/lib/trigger/updated-organization.js +39 -68
- package/src/lib/trigger/updated-organization.js.map +1 -1
- package/src/lib/trigger/updated-person.js +39 -89
- package/src/lib/trigger/updated-person.js.map +1 -1
|
@@ -3,33 +3,30 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.updatedPerson = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
-
const pieces_framework_2 = require("@activepieces/pieces-framework");
|
|
7
|
-
const common_1 = require("../common");
|
|
8
|
-
const __1 = require("../..");
|
|
9
6
|
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
7
|
+
const __1 = require("../../");
|
|
8
|
+
const common_1 = require("../common");
|
|
10
9
|
const shared_1 = require("@activepieces/shared");
|
|
10
|
+
const constants_1 = require("../common/constants");
|
|
11
11
|
exports.updatedPerson = (0, pieces_framework_1.createTrigger)({
|
|
12
12
|
auth: __1.pipedriveAuth,
|
|
13
13
|
name: 'updated_person',
|
|
14
14
|
displayName: 'Updated Person',
|
|
15
|
-
description: 'Triggers when a person is updated',
|
|
15
|
+
description: 'Triggers when a person is updated.',
|
|
16
16
|
props: {},
|
|
17
|
-
type:
|
|
17
|
+
type: pieces_framework_1.TriggerStrategy.WEBHOOK,
|
|
18
18
|
onEnable(context) {
|
|
19
19
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
20
20
|
var _a;
|
|
21
|
-
const webhook = yield common_1.pipedriveCommon.subscribeWebhook('person', '
|
|
22
|
-
yield ((_a = context.store) === null || _a === void 0 ? void 0 : _a.put('_updated_person_trigger',
|
|
23
|
-
webhookId: webhook.data.id,
|
|
24
|
-
}));
|
|
21
|
+
const webhook = yield common_1.pipedriveCommon.subscribeWebhook('person', 'change', context.webhookUrl, context.auth.data['api_domain'], context.auth.access_token);
|
|
22
|
+
yield ((_a = context.store) === null || _a === void 0 ? void 0 : _a.put('_updated_person_trigger', webhook.data.id));
|
|
25
23
|
});
|
|
26
24
|
},
|
|
27
25
|
onDisable(context) {
|
|
28
26
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
const webhook = yield common_1.pipedriveCommon.unsubscribeWebhook(response.webhookId, context.auth.data['api_domain'], context.auth.access_token);
|
|
27
|
+
const webhookId = yield context.store.get('_updated_person_trigger');
|
|
28
|
+
if (webhookId !== null && webhookId !== undefined) {
|
|
29
|
+
yield common_1.pipedriveCommon.unsubscribeWebhook(webhookId, context.auth.data['api_domain'], context.auth.access_token);
|
|
33
30
|
}
|
|
34
31
|
});
|
|
35
32
|
},
|
|
@@ -39,14 +36,19 @@ exports.updatedPerson = (0, pieces_framework_1.createTrigger)({
|
|
|
39
36
|
accessToken: context.auth.access_token,
|
|
40
37
|
apiDomain: context.auth.data['api_domain'],
|
|
41
38
|
method: pieces_common_1.HttpMethod.GET,
|
|
42
|
-
resourceUri: '/persons',
|
|
43
|
-
query: {
|
|
39
|
+
resourceUri: '/v2/persons',
|
|
40
|
+
query: {
|
|
41
|
+
limit: 5,
|
|
42
|
+
sort_by: 'update_time',
|
|
43
|
+
sort_direction: 'desc',
|
|
44
|
+
include_fields: constants_1.PERSON_OPTIONAL_FIELDS.join(','),
|
|
45
|
+
},
|
|
44
46
|
});
|
|
45
|
-
const customFieldsResponse = yield (0, common_1.
|
|
47
|
+
const customFieldsResponse = yield (0, common_1.pipedrivePaginatedV1ApiCall)({
|
|
46
48
|
accessToken: context.auth.access_token,
|
|
47
49
|
apiDomain: context.auth.data['api_domain'],
|
|
48
50
|
method: pieces_common_1.HttpMethod.GET,
|
|
49
|
-
resourceUri: '/personFields',
|
|
51
|
+
resourceUri: '/v1/personFields',
|
|
50
52
|
});
|
|
51
53
|
if ((0, shared_1.isNil)(personsResponse.data)) {
|
|
52
54
|
return [];
|
|
@@ -61,19 +63,21 @@ exports.updatedPerson = (0, pieces_framework_1.createTrigger)({
|
|
|
61
63
|
},
|
|
62
64
|
run(context) {
|
|
63
65
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
64
|
-
// Pipedrive will always return a list of Persons even if we are looking up a specific person
|
|
65
66
|
const payloadBody = context.payload.body;
|
|
66
67
|
const personResponse = yield (0, common_1.pipedriveApiCall)({
|
|
67
68
|
accessToken: context.auth.access_token,
|
|
68
69
|
apiDomain: context.auth.data['api_domain'],
|
|
69
70
|
method: pieces_common_1.HttpMethod.GET,
|
|
70
|
-
resourceUri: `/persons/${payloadBody.
|
|
71
|
+
resourceUri: `/v2/persons/${payloadBody.data.id}`,
|
|
72
|
+
query: {
|
|
73
|
+
include_fields: constants_1.PERSON_OPTIONAL_FIELDS.join(','),
|
|
74
|
+
},
|
|
71
75
|
});
|
|
72
|
-
const customFieldsResponse = yield (0, common_1.
|
|
76
|
+
const customFieldsResponse = yield (0, common_1.pipedrivePaginatedV1ApiCall)({
|
|
73
77
|
accessToken: context.auth.access_token,
|
|
74
78
|
apiDomain: context.auth.data['api_domain'],
|
|
75
79
|
method: pieces_common_1.HttpMethod.GET,
|
|
76
|
-
resourceUri: '/personFields',
|
|
80
|
+
resourceUri: '/v1/personFields',
|
|
77
81
|
});
|
|
78
82
|
const updatedPersonProperties = (0, common_1.pipedriveTransformCustomFields)(customFieldsResponse, personResponse.data);
|
|
79
83
|
return [updatedPersonProperties];
|
|
@@ -81,90 +85,36 @@ exports.updatedPerson = (0, pieces_framework_1.createTrigger)({
|
|
|
81
85
|
},
|
|
82
86
|
sampleData: {
|
|
83
87
|
id: 1,
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
id: 123,
|
|
87
|
-
name: 'Jane Doe',
|
|
88
|
-
email: 'jane@pipedrive.com',
|
|
89
|
-
has_pic: 1,
|
|
90
|
-
pic_hash: '2611ace8ac6a3afe2f69ed56f9e08c6b',
|
|
91
|
-
active_flag: true,
|
|
92
|
-
value: 123,
|
|
93
|
-
},
|
|
94
|
-
org_id: {
|
|
95
|
-
name: 'Org Name',
|
|
96
|
-
people_count: 1,
|
|
97
|
-
owner_id: 123,
|
|
98
|
-
address: 'Mustamäe tee 3a, 10615 Tallinn',
|
|
99
|
-
active_flag: true,
|
|
100
|
-
cc_email: 'org@pipedrivemail.com',
|
|
101
|
-
value: 1234,
|
|
102
|
-
},
|
|
88
|
+
owner_id: 123,
|
|
89
|
+
org_id: 1234,
|
|
103
90
|
name: 'Will Smith',
|
|
104
91
|
first_name: 'Will',
|
|
105
92
|
last_name: 'Smith',
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
closed_deals_count: 3,
|
|
109
|
-
related_closed_deals_count: 3,
|
|
110
|
-
participant_open_deals_count: 1,
|
|
111
|
-
participant_closed_deals_count: 1,
|
|
112
|
-
email_messages_count: 1,
|
|
113
|
-
activities_count: 1,
|
|
114
|
-
done_activities_count: 1,
|
|
115
|
-
undone_activities_count: 2,
|
|
116
|
-
files_count: 2,
|
|
117
|
-
notes_count: 2,
|
|
118
|
-
followers_count: 3,
|
|
119
|
-
won_deals_count: 3,
|
|
120
|
-
related_won_deals_count: 3,
|
|
121
|
-
lost_deals_count: 1,
|
|
122
|
-
related_lost_deals_count: 1,
|
|
123
|
-
active_flag: true,
|
|
124
|
-
phone: [
|
|
93
|
+
is_deleted: false,
|
|
94
|
+
phones: [
|
|
125
95
|
{
|
|
126
96
|
value: '12345',
|
|
127
97
|
primary: true,
|
|
128
98
|
label: 'work',
|
|
129
99
|
},
|
|
130
100
|
],
|
|
131
|
-
|
|
101
|
+
emails: [
|
|
132
102
|
{
|
|
133
|
-
value: '
|
|
103
|
+
value: 'will.smith@example.com',
|
|
134
104
|
primary: true,
|
|
135
105
|
label: 'work',
|
|
136
106
|
},
|
|
137
107
|
],
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
visible_to: '3',
|
|
143
|
-
marketing_status: 'no_consent',
|
|
144
|
-
picture_id: {
|
|
145
|
-
item_type: 'person',
|
|
146
|
-
item_id: 25,
|
|
147
|
-
active_flag: true,
|
|
148
|
-
add_time: '2020-09-08 08:17:52',
|
|
149
|
-
update_time: '0000-00-00 00:00:00',
|
|
150
|
-
added_by_user_id: 967055,
|
|
151
|
-
pictures: {
|
|
152
|
-
'128': 'https://pipedrive-profile-pics.s3.example.com/f8893852574273f2747bf6ef09d11cfb4ac8f269_128.jpg',
|
|
153
|
-
'512': 'https://pipedrive-profile-pics.s3.example.com/f8893852574273f2747bf6ef09d11cfb4ac8f269_512.jpg',
|
|
154
|
-
},
|
|
155
|
-
value: 4,
|
|
156
|
-
},
|
|
157
|
-
next_activity_date: '2019-11-29',
|
|
158
|
-
next_activity_time: '11:30:00',
|
|
108
|
+
add_time: '2017-10-18T13:23:07Z',
|
|
109
|
+
update_time: '2020-05-08T05:30:20Z',
|
|
110
|
+
visible_to: 3,
|
|
111
|
+
picture_id: 4,
|
|
159
112
|
next_activity_id: 128,
|
|
160
113
|
last_activity_id: 34,
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
org_name: 'Organization name',
|
|
166
|
-
owner_name: 'Jane Doe',
|
|
167
|
-
cc_email: 'org@pipedrivemail.com',
|
|
114
|
+
last_incoming_mail_time: '2019-05-29T18:21:42Z',
|
|
115
|
+
last_outgoing_mail_time: '2019-05-30T03:45:35Z',
|
|
116
|
+
label_ids: [1],
|
|
117
|
+
marketing_status: 'no_consent',
|
|
168
118
|
},
|
|
169
119
|
});
|
|
170
120
|
//# sourceMappingURL=updated-person.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updated-person.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/pipedrive/src/lib/trigger/updated-person.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"updated-person.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/pipedrive/src/lib/trigger/updated-person.ts"],"names":[],"mappings":";;;;AAAA,qEAAgF;AAChF,+DAAyD;AACzD,8BAAuC;AACvC,sCAKmB;AAEnB,iDAA6C;AAC7C,mDAA6D;AAmEhD,QAAA,aAAa,GAAG,IAAA,gCAAa,EAAC;IAC1C,IAAI,EAAE,iBAAa;IACnB,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,gBAAgB;IAC7B,WAAW,EAAE,oCAAoC;IACjD,KAAK,EAAE,EAAE;IACT,IAAI,EAAE,kCAAe,CAAC,OAAO;IACvB,QAAQ,CAAC,OAAO;;;YACrB,MAAM,OAAO,GAAG,MAAM,wBAAe,CAAC,gBAAgB,CACrD,QAAQ,EACR,QAAQ,EACR,OAAO,CAAC,UAAW,EACnB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAC/B,OAAO,CAAC,IAAI,CAAC,YAAY,CACzB,CAAC;YACF,MAAM,CAAA,MAAA,OAAO,CAAC,KAAK,0CAAE,GAAG,CAAS,yBAAyB,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA,CAAC;QAC9E,CAAC;KAAA;IAEK,SAAS,CAAC,OAAO;;YACtB,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,GAAG,CAAS,yBAAyB,CAAC,CAAC;YAC7E,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBACnD,MAAM,wBAAe,CAAC,kBAAkB,CACvC,SAAS,EACT,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAC/B,OAAO,CAAC,IAAI,CAAC,YAAY,CACzB,CAAC;YACH,CAAC;QACF,CAAC;KAAA;IACK,IAAI,CAAC,OAAO;;YACjB,MAAM,eAAe,GAAG,MAAM,IAAA,yBAAgB,EAAuB;gBACpE,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,YAAY;gBACtC,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;gBAC1C,MAAM,EAAE,0BAAU,CAAC,GAAG;gBACtB,WAAW,EAAE,aAAa;gBAC1B,KAAK,EAAE;oBACN,KAAK,EAAE,CAAC;oBACR,OAAO,EAAE,aAAa;oBACtB,cAAc,EAAE,MAAM;oBACtB,cAAc,EAAE,kCAAsB,CAAC,IAAI,CAAC,GAAG,CAAC;iBAChD;aACD,CAAC,CAAC;YAEH,MAAM,oBAAoB,GAAG,MAAM,IAAA,oCAA2B,EAAW;gBACxE,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,YAAY;gBACtC,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;gBAC1C,MAAM,EAAE,0BAAU,CAAC,GAAG;gBACtB,WAAW,EAAE,kBAAkB;aAC/B,CAAC,CAAC;YAEH,IAAI,IAAA,cAAK,EAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjC,OAAO,EAAE,CAAC;YACX,CAAC;YAED,MAAM,MAAM,GAAG,EAAE,CAAC;YAElB,KAAK,MAAM,MAAM,IAAI,eAAe,CAAC,IAAI,EAAE,CAAC;gBAC3C,MAAM,uBAAuB,GAAG,IAAA,uCAA8B,EAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;gBAC7F,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YACtC,CAAC;YAED,OAAO,MAAM,CAAC;QACf,CAAC;KAAA;IACK,GAAG,CAAC,OAAO;;YAChB,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,IAGnC,CAAC;YAEF,MAAM,cAAc,GAAG,MAAM,IAAA,yBAAgB,EAAsB;gBAClE,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,YAAY;gBACtC,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;gBAC1C,MAAM,EAAE,0BAAU,CAAC,GAAG;gBACtB,WAAW,EAAE,eAAe,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE;gBACjD,KAAK,EAAE;oBACN,cAAc,EAAE,kCAAsB,CAAC,IAAI,CAAC,GAAG,CAAC;iBAChD;aACD,CAAC,CAAC;YAEH,MAAM,oBAAoB,GAAG,MAAM,IAAA,oCAA2B,EAAW;gBACxE,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,YAAY;gBACtC,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC;gBAC1C,MAAM,EAAE,0BAAU,CAAC,GAAG;gBACtB,WAAW,EAAE,kBAAkB;aAC/B,CAAC,CAAC;YAEH,MAAM,uBAAuB,GAAG,IAAA,uCAA8B,EAC7D,oBAAoB,EACpB,cAAc,CAAC,IAAI,CACnB,CAAC;YAEF,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAClC,CAAC;KAAA;IACD,UAAU,EAAE;QACX,EAAE,EAAE,CAAC;QACL,QAAQ,EAAE,GAAG;QACb,MAAM,EAAE,IAAI;QACZ,IAAI,EAAE,YAAY;QAClB,UAAU,EAAE,MAAM;QAClB,SAAS,EAAE,OAAO;QAClB,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE;YACP;gBACC,KAAK,EAAE,OAAO;gBACd,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,MAAM;aACb;SACD;QACD,MAAM,EAAE;YACP;gBACC,KAAK,EAAE,wBAAwB;gBAC/B,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,MAAM;aACb;SACD;QACD,QAAQ,EAAE,sBAAsB;QAChC,WAAW,EAAE,sBAAsB;QACnC,UAAU,EAAE,CAAC;QACb,UAAU,EAAE,CAAC;QACb,gBAAgB,EAAE,GAAG;QACrB,gBAAgB,EAAE,EAAE;QACpB,uBAAuB,EAAE,sBAAsB;QAC/C,uBAAuB,EAAE,sBAAsB;QAC/C,SAAS,EAAE,CAAC,CAAC,CAAC;QACd,gBAAgB,EAAE,YAAY;KAC9B;CACD,CAAC,CAAC"}
|