@activepieces/piece-housecall-pro 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -0
- package/package.json +24 -0
- package/src/i18n/translation.json +3 -0
- package/src/index.d.ts +1 -0
- package/src/index.js +46 -0
- package/src/index.js.map +1 -0
- package/src/lib/actions/create-customer-address.d.ts +11 -0
- package/src/lib/actions/create-customer-address.js +84 -0
- package/src/lib/actions/create-customer-address.js.map +1 -0
- package/src/lib/actions/create-customer.d.ts +15 -0
- package/src/lib/actions/create-customer.js +122 -0
- package/src/lib/actions/create-customer.js.map +1 -0
- package/src/lib/actions/create-job.d.ts +15 -0
- package/src/lib/actions/create-job.js +126 -0
- package/src/lib/actions/create-job.js.map +1 -0
- package/src/lib/actions/delete-job-schedule.d.ts +3 -0
- package/src/lib/actions/delete-job-schedule.js +28 -0
- package/src/lib/actions/delete-job-schedule.js.map +1 -0
- package/src/lib/actions/get-customer-address.d.ts +4 -0
- package/src/lib/actions/get-customer-address.js +33 -0
- package/src/lib/actions/get-customer-address.js.map +1 -0
- package/src/lib/actions/get-customer-addresses.d.ts +7 -0
- package/src/lib/actions/get-customer-addresses.js +72 -0
- package/src/lib/actions/get-customer-addresses.js.map +1 -0
- package/src/lib/actions/get-customer.d.ts +4 -0
- package/src/lib/actions/get-customer.js +43 -0
- package/src/lib/actions/get-customer.js.map +1 -0
- package/src/lib/actions/get-customers.d.ts +9 -0
- package/src/lib/actions/get-customers.js +97 -0
- package/src/lib/actions/get-customers.js.map +1 -0
- package/src/lib/actions/get-job.d.ts +4 -0
- package/src/lib/actions/get-job.js +43 -0
- package/src/lib/actions/get-job.js.map +1 -0
- package/src/lib/actions/get-jobs.d.ts +15 -0
- package/src/lib/actions/get-jobs.js +161 -0
- package/src/lib/actions/get-jobs.js.map +1 -0
- package/src/lib/actions/update-customer.d.ts +15 -0
- package/src/lib/actions/update-customer.js +94 -0
- package/src/lib/actions/update-customer.js.map +1 -0
- package/src/lib/actions/update-job-schedule.d.ts +10 -0
- package/src/lib/actions/update-job-schedule.js +89 -0
- package/src/lib/actions/update-job-schedule.js.map +1 -0
- package/src/lib/common/index.d.ts +63 -0
- package/src/lib/common/index.js +90 -0
- package/src/lib/common/index.js.map +1 -0
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getCustomerAddresses = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
+
const common_1 = require("../common");
|
|
7
|
+
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
8
|
+
exports.getCustomerAddresses = (0, pieces_framework_1.createAction)({
|
|
9
|
+
auth: common_1.housecallProAuth,
|
|
10
|
+
name: "get_customer_addresses",
|
|
11
|
+
displayName: "Get All of a Customer's Addresses",
|
|
12
|
+
description: "Retrieves all of a customer's addresses.",
|
|
13
|
+
props: {
|
|
14
|
+
customer_id: pieces_framework_1.Property.ShortText({
|
|
15
|
+
displayName: "Customer ID",
|
|
16
|
+
description: "The ID of the customer",
|
|
17
|
+
required: true,
|
|
18
|
+
}),
|
|
19
|
+
page: pieces_framework_1.Property.Number({
|
|
20
|
+
displayName: "Page",
|
|
21
|
+
description: "Paginated page number",
|
|
22
|
+
required: false,
|
|
23
|
+
defaultValue: 1,
|
|
24
|
+
}),
|
|
25
|
+
page_size: pieces_framework_1.Property.Number({
|
|
26
|
+
displayName: "Page Size",
|
|
27
|
+
description: "Number of addresses returned per page",
|
|
28
|
+
required: false,
|
|
29
|
+
defaultValue: 50,
|
|
30
|
+
}),
|
|
31
|
+
sort_by: pieces_framework_1.Property.StaticDropdown({
|
|
32
|
+
displayName: "Sort By",
|
|
33
|
+
description: "Address attribute to sort by",
|
|
34
|
+
required: false,
|
|
35
|
+
options: {
|
|
36
|
+
options: [
|
|
37
|
+
{ label: "Created At", value: "created_at" },
|
|
38
|
+
{ label: "Updated At", value: "updated_at" },
|
|
39
|
+
],
|
|
40
|
+
},
|
|
41
|
+
}),
|
|
42
|
+
sort_direction: pieces_framework_1.Property.StaticDropdown({
|
|
43
|
+
displayName: "Sort Direction",
|
|
44
|
+
description: "Ascending or descending",
|
|
45
|
+
required: false,
|
|
46
|
+
options: {
|
|
47
|
+
options: [
|
|
48
|
+
{ label: "Ascending", value: "asc" },
|
|
49
|
+
{ label: "Descending", value: "desc" },
|
|
50
|
+
],
|
|
51
|
+
},
|
|
52
|
+
}),
|
|
53
|
+
},
|
|
54
|
+
run(context) {
|
|
55
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
56
|
+
const { auth, propsValue } = context;
|
|
57
|
+
const queryParams = {
|
|
58
|
+
page: String(propsValue.page || 1),
|
|
59
|
+
page_size: String(propsValue.page_size || 50),
|
|
60
|
+
};
|
|
61
|
+
if (propsValue.sort_by) {
|
|
62
|
+
queryParams["sort_by"] = propsValue.sort_by;
|
|
63
|
+
}
|
|
64
|
+
if (propsValue.sort_direction) {
|
|
65
|
+
queryParams["sort_direction"] = propsValue.sort_direction;
|
|
66
|
+
}
|
|
67
|
+
const response = yield (0, common_1.makeHousecallProRequest)(auth, `/customers/${propsValue.customer_id}/addresses`, pieces_common_1.HttpMethod.GET, undefined, queryParams);
|
|
68
|
+
return response.body;
|
|
69
|
+
});
|
|
70
|
+
},
|
|
71
|
+
});
|
|
72
|
+
//# sourceMappingURL=get-customer-addresses.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-customer-addresses.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/housecall-pro/src/lib/actions/get-customer-addresses.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,sCAAsE;AACtE,+DAAyD;AAE5C,QAAA,oBAAoB,GAAG,IAAA,+BAAY,EAAC;IAC/C,IAAI,EAAE,yBAAgB;IACtB,IAAI,EAAE,wBAAwB;IAC9B,WAAW,EAAE,mCAAmC;IAChD,WAAW,EAAE,0CAA0C;IACvD,KAAK,EAAE;QACL,WAAW,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC9B,WAAW,EAAE,aAAa;YAC1B,WAAW,EAAE,wBAAwB;YACrC,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,IAAI,EAAE,2BAAQ,CAAC,MAAM,CAAC;YACpB,WAAW,EAAE,MAAM;YACnB,WAAW,EAAE,uBAAuB;YACpC,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,CAAC;SAChB,CAAC;QACF,SAAS,EAAE,2BAAQ,CAAC,MAAM,CAAC;YACzB,WAAW,EAAE,WAAW;YACxB,WAAW,EAAE,uCAAuC;YACpD,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,EAAE;SACjB,CAAC;QACF,OAAO,EAAE,2BAAQ,CAAC,cAAc,CAAC;YAC/B,WAAW,EAAE,SAAS;YACtB,WAAW,EAAE,8BAA8B;YAC3C,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE;gBACP,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE;oBAC5C,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE;iBAC7C;aACF;SACF,CAAC;QACF,cAAc,EAAE,2BAAQ,CAAC,cAAc,CAAC;YACtC,WAAW,EAAE,gBAAgB;YAC7B,WAAW,EAAE,yBAAyB;YACtC,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE;gBACP,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE;oBACpC,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE;iBACvC;aACF;SACF,CAAC;KACH;IACK,GAAG,CAAC,OAAO;;YACf,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;YAErC,MAAM,WAAW,GAA2B;gBAC1C,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,CAAC;gBAClC,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC,SAAS,IAAI,EAAE,CAAC;aAC9C,CAAC;YAEF,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACvB,WAAW,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC;YAC9C,CAAC;YACD,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;gBAC9B,WAAW,CAAC,gBAAgB,CAAC,GAAG,UAAU,CAAC,cAAc,CAAC;YAC5D,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAA,gCAAuB,EAC5C,IAAI,EACJ,cAAc,UAAU,CAAC,WAAW,YAAY,EAChD,0BAAU,CAAC,GAAG,EACd,SAAS,EACT,WAAW,CACZ,CAAC;YAEF,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;KAAA;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const getCustomer: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {
|
|
2
|
+
customer_id: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
3
|
+
expand: import("@activepieces/pieces-framework").StaticMultiSelectDropdownProperty<string, false>;
|
|
4
|
+
}>;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getCustomer = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
+
const common_1 = require("../common");
|
|
7
|
+
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
8
|
+
exports.getCustomer = (0, pieces_framework_1.createAction)({
|
|
9
|
+
auth: common_1.housecallProAuth,
|
|
10
|
+
name: "get_customer",
|
|
11
|
+
displayName: "Get Customer",
|
|
12
|
+
description: "Retrieves the customer by ID.",
|
|
13
|
+
props: {
|
|
14
|
+
customer_id: pieces_framework_1.Property.ShortText({
|
|
15
|
+
displayName: "Customer ID",
|
|
16
|
+
description: "The ID of the customer to retrieve.",
|
|
17
|
+
required: true,
|
|
18
|
+
}),
|
|
19
|
+
expand: pieces_framework_1.Property.StaticMultiSelectDropdown({
|
|
20
|
+
displayName: "Expand",
|
|
21
|
+
description: "Expand related data",
|
|
22
|
+
required: false,
|
|
23
|
+
options: {
|
|
24
|
+
options: [
|
|
25
|
+
{ label: "Attachments", value: "attachments" },
|
|
26
|
+
{ label: "Do Not Service", value: "do_not_service" },
|
|
27
|
+
],
|
|
28
|
+
},
|
|
29
|
+
}),
|
|
30
|
+
},
|
|
31
|
+
run(context) {
|
|
32
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
33
|
+
const { auth, propsValue } = context;
|
|
34
|
+
const queryParams = {};
|
|
35
|
+
if (propsValue.expand && propsValue.expand.length > 0) {
|
|
36
|
+
queryParams["expand"] = propsValue.expand.join(",");
|
|
37
|
+
}
|
|
38
|
+
const response = yield (0, common_1.makeHousecallProRequest)(auth, `/customers/${propsValue.customer_id}`, pieces_common_1.HttpMethod.GET, undefined, queryParams);
|
|
39
|
+
return response.body;
|
|
40
|
+
});
|
|
41
|
+
},
|
|
42
|
+
});
|
|
43
|
+
//# sourceMappingURL=get-customer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-customer.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/housecall-pro/src/lib/actions/get-customer.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,sCAAsE;AACtE,+DAAyD;AAE5C,QAAA,WAAW,GAAG,IAAA,+BAAY,EAAC;IACtC,IAAI,EAAE,yBAAgB;IACtB,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,cAAc;IAC3B,WAAW,EAAE,+BAA+B;IAC5C,KAAK,EAAE;QACL,WAAW,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC9B,WAAW,EAAE,aAAa;YAC1B,WAAW,EAAE,qCAAqC;YAClD,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,MAAM,EAAE,2BAAQ,CAAC,yBAAyB,CAAC;YACzC,WAAW,EAAE,QAAQ;YACrB,WAAW,EAAE,qBAAqB;YAClC,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE;gBACP,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE;oBAC9C,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,gBAAgB,EAAE;iBACrD;aACF;SACF,CAAC;KACH;IACK,GAAG,CAAC,OAAO;;YACf,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;YAErC,MAAM,WAAW,GAA2B,EAAE,CAAC;YAE/C,IAAI,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtD,WAAW,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACtD,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAA,gCAAuB,EAC5C,IAAI,EACJ,cAAc,UAAU,CAAC,WAAW,EAAE,EACtC,0BAAU,CAAC,GAAG,EACd,SAAS,EACT,WAAW,CACZ,CAAC;YAEF,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;KAAA;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const getCustomers: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {
|
|
2
|
+
page: import("@activepieces/pieces-framework").NumberProperty<false>;
|
|
3
|
+
page_size: import("@activepieces/pieces-framework").NumberProperty<false>;
|
|
4
|
+
q: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
5
|
+
expand: import("@activepieces/pieces-framework").StaticMultiSelectDropdownProperty<string, false>;
|
|
6
|
+
location_ids: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
7
|
+
sort_by: import("@activepieces/pieces-framework").StaticDropdownProperty<string, false>;
|
|
8
|
+
sort_direction: import("@activepieces/pieces-framework").StaticDropdownProperty<string, false>;
|
|
9
|
+
}>;
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getCustomers = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
+
const common_1 = require("../common");
|
|
7
|
+
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
8
|
+
exports.getCustomers = (0, pieces_framework_1.createAction)({
|
|
9
|
+
auth: common_1.housecallProAuth,
|
|
10
|
+
name: 'get_customers',
|
|
11
|
+
displayName: 'Get Customers',
|
|
12
|
+
description: 'Retrieves a list of customers from Housecall Pro.',
|
|
13
|
+
props: {
|
|
14
|
+
page: pieces_framework_1.Property.Number({
|
|
15
|
+
displayName: 'Page',
|
|
16
|
+
description: 'Page number for pagination (starts from 1)',
|
|
17
|
+
required: false,
|
|
18
|
+
defaultValue: 1,
|
|
19
|
+
}),
|
|
20
|
+
page_size: pieces_framework_1.Property.Number({
|
|
21
|
+
displayName: 'Page Size',
|
|
22
|
+
description: 'Number of customers per page (max 100)',
|
|
23
|
+
required: false,
|
|
24
|
+
defaultValue: 50,
|
|
25
|
+
}),
|
|
26
|
+
q: pieces_framework_1.Property.ShortText({
|
|
27
|
+
displayName: 'Search Query',
|
|
28
|
+
description: 'Search customers by name, email, mobile number, and address',
|
|
29
|
+
required: false,
|
|
30
|
+
}),
|
|
31
|
+
expand: pieces_framework_1.Property.StaticMultiSelectDropdown({
|
|
32
|
+
displayName: 'Expand',
|
|
33
|
+
description: 'Expand related data',
|
|
34
|
+
required: false,
|
|
35
|
+
options: {
|
|
36
|
+
options: [
|
|
37
|
+
{ label: 'Attachments', value: 'attachments' },
|
|
38
|
+
{ label: 'Do Not Service', value: 'do_not_service' },
|
|
39
|
+
],
|
|
40
|
+
},
|
|
41
|
+
}),
|
|
42
|
+
location_ids: pieces_framework_1.Property.Array({
|
|
43
|
+
displayName: 'Location IDs',
|
|
44
|
+
description: 'IDs of locations from which to pull customers',
|
|
45
|
+
required: false,
|
|
46
|
+
}),
|
|
47
|
+
sort_by: pieces_framework_1.Property.StaticDropdown({
|
|
48
|
+
displayName: 'Sort By',
|
|
49
|
+
description: 'The customer attribute by which to sort the results',
|
|
50
|
+
required: false,
|
|
51
|
+
options: {
|
|
52
|
+
options: [
|
|
53
|
+
{ label: 'Created At', value: 'created_at' },
|
|
54
|
+
{ label: 'Updated At', value: 'updated_at' },
|
|
55
|
+
{ label: 'Last Name', value: 'last_name' },
|
|
56
|
+
],
|
|
57
|
+
},
|
|
58
|
+
}),
|
|
59
|
+
sort_direction: pieces_framework_1.Property.StaticDropdown({
|
|
60
|
+
displayName: 'Sort Direction',
|
|
61
|
+
description: 'The order of sorting (ascending or descending)',
|
|
62
|
+
required: false,
|
|
63
|
+
options: {
|
|
64
|
+
options: [
|
|
65
|
+
{ label: 'Ascending', value: 'asc' },
|
|
66
|
+
{ label: 'Descending', value: 'desc' },
|
|
67
|
+
],
|
|
68
|
+
},
|
|
69
|
+
}),
|
|
70
|
+
},
|
|
71
|
+
run(_a) {
|
|
72
|
+
return tslib_1.__awaiter(this, arguments, void 0, function* ({ auth, propsValue }) {
|
|
73
|
+
const queryParams = {
|
|
74
|
+
page: (propsValue.page || 1).toString(),
|
|
75
|
+
page_size: (propsValue.page_size || 50).toString(),
|
|
76
|
+
};
|
|
77
|
+
if (propsValue.q) {
|
|
78
|
+
queryParams['q'] = propsValue.q;
|
|
79
|
+
}
|
|
80
|
+
if (propsValue.expand && propsValue.expand.length > 0) {
|
|
81
|
+
queryParams['expand'] = propsValue.expand.join(',');
|
|
82
|
+
}
|
|
83
|
+
if (propsValue.location_ids && propsValue.location_ids.length > 0) {
|
|
84
|
+
queryParams['location_ids'] = propsValue.location_ids.join(',');
|
|
85
|
+
}
|
|
86
|
+
if (propsValue.sort_by) {
|
|
87
|
+
queryParams['sort_by'] = propsValue.sort_by;
|
|
88
|
+
}
|
|
89
|
+
if (propsValue.sort_direction) {
|
|
90
|
+
queryParams['sort_direction'] = propsValue.sort_direction;
|
|
91
|
+
}
|
|
92
|
+
const response = yield (0, common_1.makeHousecallProRequest)(auth, '/customers', pieces_common_1.HttpMethod.GET, undefined, queryParams);
|
|
93
|
+
return response.body;
|
|
94
|
+
});
|
|
95
|
+
},
|
|
96
|
+
});
|
|
97
|
+
//# sourceMappingURL=get-customers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-customers.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/housecall-pro/src/lib/actions/get-customers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const getJob: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {
|
|
2
|
+
job_id: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
3
|
+
expand: import("@activepieces/pieces-framework").StaticMultiSelectDropdownProperty<string, false>;
|
|
4
|
+
}>;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getJob = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
+
const common_1 = require("../common");
|
|
7
|
+
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
8
|
+
exports.getJob = (0, pieces_framework_1.createAction)({
|
|
9
|
+
auth: common_1.housecallProAuth,
|
|
10
|
+
name: "get_job",
|
|
11
|
+
displayName: "Get a Job",
|
|
12
|
+
description: "Retrieves a single job by ID from Housecall Pro.",
|
|
13
|
+
props: {
|
|
14
|
+
job_id: pieces_framework_1.Property.ShortText({
|
|
15
|
+
displayName: "Job ID",
|
|
16
|
+
description: "The ID of the job to retrieve",
|
|
17
|
+
required: true,
|
|
18
|
+
}),
|
|
19
|
+
expand: pieces_framework_1.Property.StaticMultiSelectDropdown({
|
|
20
|
+
displayName: "Expand",
|
|
21
|
+
description: "Expand related data (attachments, appointments)",
|
|
22
|
+
required: false,
|
|
23
|
+
options: {
|
|
24
|
+
options: [
|
|
25
|
+
{ label: "Attachments", value: "attachments" },
|
|
26
|
+
{ label: "Appointments", value: "appointments" },
|
|
27
|
+
],
|
|
28
|
+
},
|
|
29
|
+
}),
|
|
30
|
+
},
|
|
31
|
+
run(context) {
|
|
32
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
33
|
+
const { auth, propsValue } = context;
|
|
34
|
+
const queryParams = {};
|
|
35
|
+
if (propsValue['expand'] && propsValue['expand'].length > 0) {
|
|
36
|
+
queryParams['expand'] = propsValue['expand'].join(',');
|
|
37
|
+
}
|
|
38
|
+
const response = yield (0, common_1.makeHousecallProRequest)(auth, `/jobs/${propsValue['job_id']}`, pieces_common_1.HttpMethod.GET, undefined, queryParams);
|
|
39
|
+
return response.body;
|
|
40
|
+
});
|
|
41
|
+
},
|
|
42
|
+
});
|
|
43
|
+
//# sourceMappingURL=get-job.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-job.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/housecall-pro/src/lib/actions/get-job.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,sCAAsE;AACtE,+DAAyD;AAE5C,QAAA,MAAM,GAAG,IAAA,+BAAY,EAAC;IACjC,IAAI,EAAE,yBAAgB;IACtB,IAAI,EAAE,SAAS;IACf,WAAW,EAAE,WAAW;IACxB,WAAW,EAAE,kDAAkD;IAC/D,KAAK,EAAE;QACL,MAAM,EAAE,2BAAQ,CAAC,SAAS,CAAC;YACzB,WAAW,EAAE,QAAQ;YACrB,WAAW,EAAE,+BAA+B;YAC5C,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,MAAM,EAAE,2BAAQ,CAAC,yBAAyB,CAAC;YACzC,WAAW,EAAE,QAAQ;YACrB,WAAW,EAAE,iDAAiD;YAC9D,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE;gBACP,OAAO,EAAE;oBACP,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE;oBAC9C,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,cAAc,EAAE;iBACjD;aACF;SACF,CAAC;KACH;IACK,GAAG,CAAC,OAAO;;YACf,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;YAErC,MAAM,WAAW,GAA2B,EAAE,CAAC;YAE/C,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5D,WAAW,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACzD,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,IAAA,gCAAuB,EAC5C,IAAI,EACJ,SAAS,UAAU,CAAC,QAAQ,CAAC,EAAE,EAC/B,0BAAU,CAAC,GAAG,EACd,SAAS,EACT,WAAW,CACZ,CAAC;YAEF,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;KAAA;CACF,CAAC,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare const getJobs: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {
|
|
2
|
+
customer_id: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
3
|
+
employee_ids: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
4
|
+
expand: import("@activepieces/pieces-framework").StaticMultiSelectDropdownProperty<string, false>;
|
|
5
|
+
location_ids: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
6
|
+
page: import("@activepieces/pieces-framework").NumberProperty<false>;
|
|
7
|
+
page_size: import("@activepieces/pieces-framework").NumberProperty<false>;
|
|
8
|
+
scheduled_start_min: import("@activepieces/pieces-framework").DateTimeProperty<false>;
|
|
9
|
+
scheduled_start_max: import("@activepieces/pieces-framework").DateTimeProperty<false>;
|
|
10
|
+
scheduled_end_min: import("@activepieces/pieces-framework").DateTimeProperty<false>;
|
|
11
|
+
scheduled_end_max: import("@activepieces/pieces-framework").DateTimeProperty<false>;
|
|
12
|
+
sort_by: import("@activepieces/pieces-framework").StaticDropdownProperty<string, false>;
|
|
13
|
+
sort_direction: import("@activepieces/pieces-framework").StaticDropdownProperty<string, false>;
|
|
14
|
+
work_status: import("@activepieces/pieces-framework").StaticMultiSelectDropdownProperty<string, false>;
|
|
15
|
+
}>;
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getJobs = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
+
const common_1 = require("../common");
|
|
7
|
+
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
8
|
+
exports.getJobs = (0, pieces_framework_1.createAction)({
|
|
9
|
+
auth: common_1.housecallProAuth,
|
|
10
|
+
name: 'get_jobs',
|
|
11
|
+
displayName: 'Get Jobs',
|
|
12
|
+
description: 'Retrieve a list of jobs from Housecall Pro.',
|
|
13
|
+
props: {
|
|
14
|
+
customer_id: pieces_framework_1.Property.ShortText({
|
|
15
|
+
displayName: 'Customer ID',
|
|
16
|
+
description: 'Filters jobs by a single customer ID',
|
|
17
|
+
required: false,
|
|
18
|
+
}),
|
|
19
|
+
employee_ids: pieces_framework_1.Property.Array({
|
|
20
|
+
displayName: 'Employee IDs',
|
|
21
|
+
description: 'Array of employee IDs to filter jobs',
|
|
22
|
+
required: false,
|
|
23
|
+
}),
|
|
24
|
+
expand: pieces_framework_1.Property.StaticMultiSelectDropdown({
|
|
25
|
+
displayName: 'Expand',
|
|
26
|
+
description: 'Array of strings to expand response body',
|
|
27
|
+
required: false,
|
|
28
|
+
options: {
|
|
29
|
+
options: [
|
|
30
|
+
{ label: 'Attachments', value: 'attachments' },
|
|
31
|
+
{ label: 'Appointments', value: 'appointments' },
|
|
32
|
+
],
|
|
33
|
+
},
|
|
34
|
+
}),
|
|
35
|
+
location_ids: pieces_framework_1.Property.Array({
|
|
36
|
+
displayName: 'Location IDs',
|
|
37
|
+
description: 'IDs of locations to retrieve jobs from',
|
|
38
|
+
required: false,
|
|
39
|
+
}),
|
|
40
|
+
page: pieces_framework_1.Property.Number({
|
|
41
|
+
displayName: 'Page',
|
|
42
|
+
description: 'The paginated page number',
|
|
43
|
+
required: false,
|
|
44
|
+
defaultValue: 1,
|
|
45
|
+
}),
|
|
46
|
+
page_size: pieces_framework_1.Property.Number({
|
|
47
|
+
displayName: 'Page Size',
|
|
48
|
+
description: 'The number of jobs returned per page',
|
|
49
|
+
required: false,
|
|
50
|
+
defaultValue: 10,
|
|
51
|
+
}),
|
|
52
|
+
scheduled_start_min: pieces_framework_1.Property.DateTime({
|
|
53
|
+
displayName: 'Scheduled Start Min',
|
|
54
|
+
description: 'Filters jobs with a starting time greater than or equal to the date sent',
|
|
55
|
+
required: false,
|
|
56
|
+
}),
|
|
57
|
+
scheduled_start_max: pieces_framework_1.Property.DateTime({
|
|
58
|
+
displayName: 'Scheduled Start Max',
|
|
59
|
+
description: 'Filters jobs with a starting time less than or equal to the date sent',
|
|
60
|
+
required: false,
|
|
61
|
+
}),
|
|
62
|
+
scheduled_end_min: pieces_framework_1.Property.DateTime({
|
|
63
|
+
displayName: 'Scheduled End Min',
|
|
64
|
+
description: 'Filters jobs with an end time greater than or equal to the date sent',
|
|
65
|
+
required: false,
|
|
66
|
+
}),
|
|
67
|
+
scheduled_end_max: pieces_framework_1.Property.DateTime({
|
|
68
|
+
displayName: 'Scheduled End Max',
|
|
69
|
+
description: 'Filters jobs with an end time less than or equal to the date sent',
|
|
70
|
+
required: false,
|
|
71
|
+
}),
|
|
72
|
+
sort_by: pieces_framework_1.Property.StaticDropdown({
|
|
73
|
+
displayName: 'Sort By',
|
|
74
|
+
description: 'The attribute to sort the results by',
|
|
75
|
+
required: false,
|
|
76
|
+
options: {
|
|
77
|
+
options: [
|
|
78
|
+
{ label: 'Created At', value: 'created_at' },
|
|
79
|
+
{ label: 'Updated At', value: 'updated_at' },
|
|
80
|
+
{ label: 'Invoice Number', value: 'invoice_number' },
|
|
81
|
+
{ label: 'ID', value: 'id' },
|
|
82
|
+
{ label: 'Description', value: 'description' },
|
|
83
|
+
{ label: 'Work Status', value: 'work_status' },
|
|
84
|
+
],
|
|
85
|
+
},
|
|
86
|
+
}),
|
|
87
|
+
sort_direction: pieces_framework_1.Property.StaticDropdown({
|
|
88
|
+
displayName: 'Sort Direction',
|
|
89
|
+
description: 'The sorting order',
|
|
90
|
+
required: false,
|
|
91
|
+
options: {
|
|
92
|
+
options: [
|
|
93
|
+
{ label: 'Ascending', value: 'asc' },
|
|
94
|
+
{ label: 'Descending', value: 'desc' },
|
|
95
|
+
],
|
|
96
|
+
},
|
|
97
|
+
defaultValue: 'desc',
|
|
98
|
+
}),
|
|
99
|
+
work_status: pieces_framework_1.Property.StaticMultiSelectDropdown({
|
|
100
|
+
displayName: 'Work Status',
|
|
101
|
+
description: 'Filters jobs by their work status. If empty, returns jobs from all statuses',
|
|
102
|
+
required: false,
|
|
103
|
+
options: {
|
|
104
|
+
options: [
|
|
105
|
+
{ label: 'Unscheduled', value: 'unscheduled' },
|
|
106
|
+
{ label: 'Scheduled', value: 'scheduled' },
|
|
107
|
+
{ label: 'In Progress', value: 'in_progress' },
|
|
108
|
+
{ label: 'Completed', value: 'completed' },
|
|
109
|
+
{ label: 'Canceled', value: 'canceled' },
|
|
110
|
+
],
|
|
111
|
+
},
|
|
112
|
+
}),
|
|
113
|
+
},
|
|
114
|
+
run(_a) {
|
|
115
|
+
return tslib_1.__awaiter(this, arguments, void 0, function* ({ auth, propsValue }) {
|
|
116
|
+
const queryParams = {};
|
|
117
|
+
if (propsValue['customer_id']) {
|
|
118
|
+
queryParams['customer_id'] = propsValue['customer_id'];
|
|
119
|
+
}
|
|
120
|
+
if (propsValue['employee_ids'] && propsValue['employee_ids'].length > 0) {
|
|
121
|
+
queryParams['employee_ids'] = propsValue['employee_ids'].join(',');
|
|
122
|
+
}
|
|
123
|
+
if (propsValue['expand'] && propsValue['expand'].length > 0) {
|
|
124
|
+
queryParams['expand'] = propsValue['expand'].join(',');
|
|
125
|
+
}
|
|
126
|
+
if (propsValue['location_ids'] && propsValue['location_ids'].length > 0) {
|
|
127
|
+
queryParams['location_ids'] = propsValue['location_ids'].join(',');
|
|
128
|
+
}
|
|
129
|
+
if (propsValue['page']) {
|
|
130
|
+
queryParams['page'] = propsValue['page'].toString();
|
|
131
|
+
}
|
|
132
|
+
if (propsValue['page_size']) {
|
|
133
|
+
queryParams['page_size'] = propsValue['page_size'].toString();
|
|
134
|
+
}
|
|
135
|
+
if (propsValue['scheduled_start_min']) {
|
|
136
|
+
queryParams['scheduled_start_min'] = propsValue['scheduled_start_min'];
|
|
137
|
+
}
|
|
138
|
+
if (propsValue['scheduled_start_max']) {
|
|
139
|
+
queryParams['scheduled_start_max'] = propsValue['scheduled_start_max'];
|
|
140
|
+
}
|
|
141
|
+
if (propsValue['scheduled_end_min']) {
|
|
142
|
+
queryParams['scheduled_end_min'] = propsValue['scheduled_end_min'];
|
|
143
|
+
}
|
|
144
|
+
if (propsValue['scheduled_end_max']) {
|
|
145
|
+
queryParams['scheduled_end_max'] = propsValue['scheduled_end_max'];
|
|
146
|
+
}
|
|
147
|
+
if (propsValue['sort_by']) {
|
|
148
|
+
queryParams['sort_by'] = propsValue['sort_by'];
|
|
149
|
+
}
|
|
150
|
+
if (propsValue['sort_direction']) {
|
|
151
|
+
queryParams['sort_direction'] = propsValue['sort_direction'];
|
|
152
|
+
}
|
|
153
|
+
if (propsValue['work_status'] && propsValue['work_status'].length > 0) {
|
|
154
|
+
queryParams['work_status'] = propsValue['work_status'].join(',');
|
|
155
|
+
}
|
|
156
|
+
const response = yield (0, common_1.makeHousecallProRequest)(auth, '/jobs', pieces_common_1.HttpMethod.GET, undefined, queryParams);
|
|
157
|
+
return response.body;
|
|
158
|
+
});
|
|
159
|
+
},
|
|
160
|
+
});
|
|
161
|
+
//# sourceMappingURL=get-jobs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-jobs.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/housecall-pro/src/lib/actions/get-jobs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare const updateCustomer: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {
|
|
2
|
+
customer_id: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
3
|
+
first_name: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
4
|
+
last_name: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
5
|
+
email: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
6
|
+
mobile_number: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
7
|
+
home_number: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
8
|
+
work_number: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
9
|
+
company: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
10
|
+
notes: import("@activepieces/pieces-framework").LongTextProperty<false>;
|
|
11
|
+
tags: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
12
|
+
notifications_enabled: import("@activepieces/pieces-framework").CheckboxProperty<false>;
|
|
13
|
+
lead_source: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
14
|
+
addresses: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
15
|
+
}>;
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.updateCustomer = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
+
const common_1 = require("../common");
|
|
7
|
+
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
8
|
+
const zod_1 = require("zod");
|
|
9
|
+
const pieces_common_2 = require("@activepieces/pieces-common");
|
|
10
|
+
exports.updateCustomer = (0, pieces_framework_1.createAction)({
|
|
11
|
+
auth: common_1.housecallProAuth,
|
|
12
|
+
name: 'update_customer',
|
|
13
|
+
displayName: 'Update Customer',
|
|
14
|
+
description: 'Updates an existing customer in Housecall Pro.',
|
|
15
|
+
props: {
|
|
16
|
+
customer_id: pieces_framework_1.Property.ShortText({
|
|
17
|
+
displayName: 'Customer ID',
|
|
18
|
+
description: 'The ID of the customer to update.',
|
|
19
|
+
required: true,
|
|
20
|
+
}),
|
|
21
|
+
first_name: pieces_framework_1.Property.ShortText({
|
|
22
|
+
displayName: 'First Name',
|
|
23
|
+
required: false,
|
|
24
|
+
}),
|
|
25
|
+
last_name: pieces_framework_1.Property.ShortText({
|
|
26
|
+
displayName: 'Last Name',
|
|
27
|
+
required: false,
|
|
28
|
+
}),
|
|
29
|
+
email: pieces_framework_1.Property.ShortText({
|
|
30
|
+
displayName: 'Email',
|
|
31
|
+
required: false,
|
|
32
|
+
}),
|
|
33
|
+
mobile_number: pieces_framework_1.Property.ShortText({
|
|
34
|
+
displayName: 'Mobile Number',
|
|
35
|
+
required: false,
|
|
36
|
+
}),
|
|
37
|
+
home_number: pieces_framework_1.Property.ShortText({
|
|
38
|
+
displayName: 'Home Number',
|
|
39
|
+
required: false,
|
|
40
|
+
}),
|
|
41
|
+
work_number: pieces_framework_1.Property.ShortText({
|
|
42
|
+
displayName: 'Work Number',
|
|
43
|
+
required: false,
|
|
44
|
+
}),
|
|
45
|
+
company: pieces_framework_1.Property.ShortText({
|
|
46
|
+
displayName: 'Company',
|
|
47
|
+
required: false,
|
|
48
|
+
}),
|
|
49
|
+
notes: pieces_framework_1.Property.LongText({
|
|
50
|
+
displayName: 'Notes',
|
|
51
|
+
required: false,
|
|
52
|
+
}),
|
|
53
|
+
tags: pieces_framework_1.Property.Array({
|
|
54
|
+
displayName: 'Tags',
|
|
55
|
+
description: 'Array of tags to assign to the customer (replaces existing tags)',
|
|
56
|
+
required: false,
|
|
57
|
+
}),
|
|
58
|
+
notifications_enabled: pieces_framework_1.Property.Checkbox({
|
|
59
|
+
displayName: 'Notifications Enabled',
|
|
60
|
+
description: 'Will the customer receive notifications',
|
|
61
|
+
required: false,
|
|
62
|
+
}),
|
|
63
|
+
lead_source: pieces_framework_1.Property.ShortText({
|
|
64
|
+
displayName: 'Lead Source',
|
|
65
|
+
required: false,
|
|
66
|
+
}),
|
|
67
|
+
addresses: pieces_framework_1.Property.Array({
|
|
68
|
+
displayName: 'Addresses',
|
|
69
|
+
description: 'Array of address objects (if provided, each address must include an id)',
|
|
70
|
+
required: false,
|
|
71
|
+
}),
|
|
72
|
+
},
|
|
73
|
+
run(_a) {
|
|
74
|
+
return tslib_1.__awaiter(this, arguments, void 0, function* ({ auth, propsValue }) {
|
|
75
|
+
yield pieces_common_2.propsValidation.validateZod(propsValue, {
|
|
76
|
+
email: zod_1.z.string().email().optional(),
|
|
77
|
+
mobile_number: zod_1.z.string().regex(/^\+?[1-9]\d{1,14}$/).optional(),
|
|
78
|
+
home_number: zod_1.z.string().regex(/^\+?[1-9]\d{1,14}$/).optional(),
|
|
79
|
+
work_number: zod_1.z.string().regex(/^\+?[1-9]\d{1,14}$/).optional(),
|
|
80
|
+
});
|
|
81
|
+
const { customer_id } = propsValue, updateData = tslib_1.__rest(propsValue, ["customer_id"]);
|
|
82
|
+
// Remove undefined values to avoid sending empty strings
|
|
83
|
+
const cleanUpdateData = {};
|
|
84
|
+
Object.keys(updateData).forEach(key => {
|
|
85
|
+
if (updateData[key] !== undefined && updateData[key] !== null) {
|
|
86
|
+
cleanUpdateData[key] = updateData[key];
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
const response = yield (0, common_1.makeHousecallProRequest)(auth, `/customers/${customer_id}`, pieces_common_1.HttpMethod.PUT, cleanUpdateData);
|
|
90
|
+
return response.body;
|
|
91
|
+
});
|
|
92
|
+
},
|
|
93
|
+
});
|
|
94
|
+
//# sourceMappingURL=update-customer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-customer.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/housecall-pro/src/lib/actions/update-customer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare const updateJobSchedule: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {
|
|
2
|
+
job_id: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
3
|
+
start_time: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
4
|
+
end_time: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
5
|
+
arrival_window_in_minutes: import("@activepieces/pieces-framework").NumberProperty<false>;
|
|
6
|
+
notify: import("@activepieces/pieces-framework").CheckboxProperty<false>;
|
|
7
|
+
notify_pro: import("@activepieces/pieces-framework").CheckboxProperty<false>;
|
|
8
|
+
expand: import("@activepieces/pieces-framework").StaticMultiSelectDropdownProperty<string, false>;
|
|
9
|
+
dispatched_employees: import("@activepieces/pieces-framework").ArrayProperty<false>;
|
|
10
|
+
}>;
|