@activepieces/piece-bokio 0.0.6 → 0.0.7
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 +7 -11
- package/src/index.js +13 -52
- package/src/index.d.ts +0 -5
- package/src/index.d.ts.map +0 -1
- package/src/index.js.map +0 -1
- package/src/lib/actions/add-line-item-to-invoice.d.ts +0 -15
- package/src/lib/actions/add-line-item-to-invoice.d.ts.map +0 -1
- package/src/lib/actions/add-line-item-to-invoice.js +0 -65
- package/src/lib/actions/add-line-item-to-invoice.js.map +0 -1
- package/src/lib/actions/create-a-journal-entry.d.ts +0 -9
- package/src/lib/actions/create-a-journal-entry.d.ts.map +0 -1
- package/src/lib/actions/create-a-journal-entry.js +0 -68
- package/src/lib/actions/create-a-journal-entry.js.map +0 -1
- package/src/lib/actions/create-an-item.d.ts +0 -11
- package/src/lib/actions/create-an-item.d.ts.map +0 -1
- package/src/lib/actions/create-an-item.js +0 -58
- package/src/lib/actions/create-an-item.js.map +0 -1
- package/src/lib/actions/create-customer.d.ts +0 -19
- package/src/lib/actions/create-customer.d.ts.map +0 -1
- package/src/lib/actions/create-customer.js +0 -143
- package/src/lib/actions/create-customer.js.map +0 -1
- package/src/lib/actions/create-invoice.d.ts +0 -18
- package/src/lib/actions/create-invoice.d.ts.map +0 -1
- package/src/lib/actions/create-invoice.js +0 -123
- package/src/lib/actions/create-invoice.js.map +0 -1
- package/src/lib/actions/find-customer.d.ts +0 -10
- package/src/lib/actions/find-customer.d.ts.map +0 -1
- package/src/lib/actions/find-customer.js +0 -76
- package/src/lib/actions/find-customer.js.map +0 -1
- package/src/lib/actions/get-a-journal-entry.d.ts +0 -7
- package/src/lib/actions/get-a-journal-entry.d.ts.map +0 -1
- package/src/lib/actions/get-a-journal-entry.js +0 -32
- package/src/lib/actions/get-a-journal-entry.js.map +0 -1
- package/src/lib/actions/get-an-invoice.d.ts +0 -7
- package/src/lib/actions/get-an-invoice.d.ts.map +0 -1
- package/src/lib/actions/get-an-invoice.js +0 -32
- package/src/lib/actions/get-an-invoice.js.map +0 -1
- package/src/lib/actions/get-draft-invoice-by-customer-name.d.ts +0 -9
- package/src/lib/actions/get-draft-invoice-by-customer-name.d.ts.map +0 -1
- package/src/lib/actions/get-draft-invoice-by-customer-name.js +0 -73
- package/src/lib/actions/get-draft-invoice-by-customer-name.js.map +0 -1
- package/src/lib/actions/update-an-invoice.d.ts +0 -18
- package/src/lib/actions/update-an-invoice.d.ts.map +0 -1
- package/src/lib/actions/update-an-invoice.js +0 -107
- package/src/lib/actions/update-an-invoice.js.map +0 -1
- package/src/lib/common/auth.d.ts +0 -5
- package/src/lib/common/auth.d.ts.map +0 -1
- package/src/lib/common/auth.js +0 -45
- package/src/lib/common/auth.js.map +0 -1
- package/src/lib/common/client.d.ts +0 -4
- package/src/lib/common/client.d.ts.map +0 -1
- package/src/lib/common/client.js +0 -27
- package/src/lib/common/client.js.map +0 -1
- package/src/lib/common/props.d.ts +0 -10
- package/src/lib/common/props.d.ts.map +0 -1
- package/src/lib/common/props.js +0 -126
- package/src/lib/common/props.js.map +0 -1
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getDraftInvoiceByCustomerName = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
-
const auth_1 = require("../common/auth");
|
|
7
|
-
const client_1 = require("../common/client");
|
|
8
|
-
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
9
|
-
exports.getDraftInvoiceByCustomerName = (0, pieces_framework_1.createAction)({
|
|
10
|
-
auth: auth_1.bokioAuth,
|
|
11
|
-
name: 'getDraftInvoiceByCustomerName',
|
|
12
|
-
displayName: 'Get Draft Invoice by Customer Name',
|
|
13
|
-
description: 'Get all draft invoices for a customer by customer name',
|
|
14
|
-
audience: 'both',
|
|
15
|
-
aiMetadata: { description: 'Looks up a Bokio customer by exact name and returns their draft invoices with pagination. Use when you have a customer name (not an ID) and want their pending draft invoices; returns an empty result if no customer matches. Idempotent read-only lookup.', idempotent: true },
|
|
16
|
-
props: {
|
|
17
|
-
customerName: pieces_framework_1.Property.ShortText({
|
|
18
|
-
displayName: 'Customer Name',
|
|
19
|
-
description: 'Name of the customer to find draft invoices for',
|
|
20
|
-
required: true,
|
|
21
|
-
}),
|
|
22
|
-
page: pieces_framework_1.Property.Number({
|
|
23
|
-
displayName: 'Page',
|
|
24
|
-
description: 'Page number (defaults to 1)',
|
|
25
|
-
required: false,
|
|
26
|
-
}),
|
|
27
|
-
pageSize: pieces_framework_1.Property.Number({
|
|
28
|
-
displayName: 'Page Size',
|
|
29
|
-
description: 'Number of items per page (max 100, defaults to 25)',
|
|
30
|
-
required: false,
|
|
31
|
-
}),
|
|
32
|
-
},
|
|
33
|
-
run(context) {
|
|
34
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
35
|
-
const { customerName, page, pageSize } = context.propsValue;
|
|
36
|
-
const { api_key, companyId } = context.auth.props;
|
|
37
|
-
// First, find the customer by name
|
|
38
|
-
const customerSearchParams = new URLSearchParams();
|
|
39
|
-
customerSearchParams.append('page', '1');
|
|
40
|
-
customerSearchParams.append('pageSize', '100');
|
|
41
|
-
customerSearchParams.append('query', `name=='${customerName}'`);
|
|
42
|
-
const customerUrl = `/companies/${companyId}/customers?${customerSearchParams.toString()}`;
|
|
43
|
-
const customerResponse = yield (0, client_1.makeRequest)(api_key, pieces_common_1.HttpMethod.GET, customerUrl);
|
|
44
|
-
if (!customerResponse.items || customerResponse.items.length === 0) {
|
|
45
|
-
return {
|
|
46
|
-
message: `No customer found with name: ${customerName}`,
|
|
47
|
-
items: [],
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
const customerId = customerResponse.items[0].id;
|
|
51
|
-
// Now fetch draft invoices for this customer
|
|
52
|
-
const invoiceParams = new URLSearchParams();
|
|
53
|
-
if (page !== undefined && page !== null) {
|
|
54
|
-
invoiceParams.append('page', String(page));
|
|
55
|
-
}
|
|
56
|
-
else {
|
|
57
|
-
invoiceParams.append('page', '1');
|
|
58
|
-
}
|
|
59
|
-
if (pageSize !== undefined && pageSize !== null) {
|
|
60
|
-
invoiceParams.append('pageSize', String(pageSize));
|
|
61
|
-
}
|
|
62
|
-
else {
|
|
63
|
-
invoiceParams.append('pageSize', '25');
|
|
64
|
-
}
|
|
65
|
-
// Filter for draft invoices with matching customer
|
|
66
|
-
invoiceParams.append('query', `status==draft&&customerRef==${customerId}`);
|
|
67
|
-
const invoiceUrl = `/companies/${companyId}/invoices?${invoiceParams.toString()}`;
|
|
68
|
-
const invoiceResponse = yield (0, client_1.makeRequest)(api_key, pieces_common_1.HttpMethod.GET, invoiceUrl);
|
|
69
|
-
return Object.assign({ customerName: customerResponse.items[0].name, customerId }, invoiceResponse);
|
|
70
|
-
});
|
|
71
|
-
},
|
|
72
|
-
});
|
|
73
|
-
//# sourceMappingURL=get-draft-invoice-by-customer-name.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-draft-invoice-by-customer-name.js","sourceRoot":"","sources":["../../../../src/lib/actions/get-draft-invoice-by-customer-name.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,yCAA2C;AAC3C,6CAA+C;AAC/C,+DAAyD;AAE5C,QAAA,6BAA6B,GAAG,IAAA,+BAAY,EAAC;IACxD,IAAI,EAAE,gBAAS;IACf,IAAI,EAAE,+BAA+B;IACrC,WAAW,EAAE,oCAAoC;IACjD,WAAW,EAAE,wDAAwD;IACrE,QAAQ,EAAE,MAAM;IAChB,UAAU,EAAE,EAAE,WAAW,EAAE,6PAA6P,EAAE,UAAU,EAAE,IAAI,EAAE;IAC5S,KAAK,EAAE;QACL,YAAY,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC/B,WAAW,EAAE,eAAe;YAC5B,WAAW,EAAE,iDAAiD;YAC9D,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,IAAI,EAAE,2BAAQ,CAAC,MAAM,CAAC;YACpB,WAAW,EAAE,MAAM;YACnB,WAAW,EAAE,6BAA6B;YAC1C,QAAQ,EAAE,KAAK;SAChB,CAAC;QACF,QAAQ,EAAE,2BAAQ,CAAC,MAAM,CAAC;YACxB,WAAW,EAAE,WAAW;YACxB,WAAW,EAAE,oDAAoD;YACjE,QAAQ,EAAE,KAAK;SAChB,CAAC;KACH;IACK,GAAG,CAAC,OAAO;;YACf,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YAC5D,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;YAElD,mCAAmC;YACnC,MAAM,oBAAoB,GAAG,IAAI,eAAe,EAAE,CAAC;YACnD,oBAAoB,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YACzC,oBAAoB,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC/C,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,UAAU,YAAY,GAAG,CAAC,CAAC;YAEhE,MAAM,WAAW,GAAG,cAAc,SAAS,cAAc,oBAAoB,CAAC,QAAQ,EAAE,EAAE,CAAC;YAC3F,MAAM,gBAAgB,GAAG,MAAM,IAAA,oBAAW,EAAC,OAAO,EAAE,0BAAU,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YAEjF,IAAI,CAAC,gBAAgB,CAAC,KAAK,IAAI,gBAAgB,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACnE,OAAO;oBACL,OAAO,EAAE,gCAAgC,YAAY,EAAE;oBACvD,KAAK,EAAE,EAAE;iBACV,CAAC;YACJ,CAAC;YAED,MAAM,UAAU,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAEhD,6CAA6C;YAC7C,MAAM,aAAa,GAAG,IAAI,eAAe,EAAE,CAAC;YAC5C,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBACxC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACN,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YACpC,CAAC;YAED,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;gBAChD,aAAa,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,aAAa,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YACzC,CAAC;YAED,mDAAmD;YACnD,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,+BAA+B,UAAU,EAAE,CAAC,CAAC;YAE3E,MAAM,UAAU,GAAG,cAAc,SAAS,aAAa,aAAa,CAAC,QAAQ,EAAE,EAAE,CAAC;YAClF,MAAM,eAAe,GAAG,MAAM,IAAA,oBAAW,EAAC,OAAO,EAAE,0BAAU,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAE/E,uBACE,YAAY,EAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAC5C,UAAU,IACP,eAAe,EAClB;QACJ,CAAC;KAAA;CACF,CAAC,CAAC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
export declare const updateAnInvoice: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
2
|
-
companyId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
3
|
-
api_key: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
4
|
-
}>, {
|
|
5
|
-
invoiceId: import("@activepieces/pieces-framework").DropdownProperty<unknown, true, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
6
|
-
companyId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
7
|
-
api_key: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
8
|
-
}>>;
|
|
9
|
-
invoiceType: import("@activepieces/pieces-framework").StaticDropdownProperty<string, false>;
|
|
10
|
-
customerRef: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
11
|
-
invoiceDate: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
12
|
-
dueDate: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
13
|
-
orderNumberReference: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
14
|
-
currency: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
15
|
-
currencyRate: import("@activepieces/pieces-framework").NumberProperty<false>;
|
|
16
|
-
lineItemsJson: import("@activepieces/pieces-framework").LongTextProperty<false>;
|
|
17
|
-
}>;
|
|
18
|
-
//# sourceMappingURL=update-an-invoice.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"update-an-invoice.d.ts","sourceRoot":"","sources":["../../../../src/lib/actions/update-an-invoice.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;EAwH1B,CAAC"}
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.updateAnInvoice = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
-
const auth_1 = require("../common/auth");
|
|
7
|
-
const client_1 = require("../common/client");
|
|
8
|
-
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
9
|
-
const props_1 = require("../common/props");
|
|
10
|
-
exports.updateAnInvoice = (0, pieces_framework_1.createAction)({
|
|
11
|
-
auth: auth_1.bokioAuth,
|
|
12
|
-
name: 'updateAnInvoice',
|
|
13
|
-
displayName: 'Update an invoice',
|
|
14
|
-
description: 'Updates an existing draft invoice in Bokio',
|
|
15
|
-
audience: 'both',
|
|
16
|
-
aiMetadata: { description: 'Updates an existing draft invoice in Bokio, identified by invoice ID, replacing fields such as type, customer, dates, currency, and the full line-items list (passed as a JSON array). Use to modify an invoice that already exists rather than create one. Idempotent — repeating the same update yields the same invoice state.', idempotent: true },
|
|
17
|
-
props: {
|
|
18
|
-
invoiceId: props_1.invoiceIdDropdown,
|
|
19
|
-
invoiceType: pieces_framework_1.Property.StaticDropdown({
|
|
20
|
-
displayName: 'Invoice Type',
|
|
21
|
-
description: 'Type of invoice',
|
|
22
|
-
required: false,
|
|
23
|
-
options: {
|
|
24
|
-
options: [
|
|
25
|
-
{ label: 'Invoice', value: 'invoice' },
|
|
26
|
-
{ label: 'Cash Invoice', value: 'cashInvoice' },
|
|
27
|
-
],
|
|
28
|
-
},
|
|
29
|
-
}),
|
|
30
|
-
customerRef: pieces_framework_1.Property.ShortText({
|
|
31
|
-
displayName: 'Customer ID',
|
|
32
|
-
description: 'UUID of the customer',
|
|
33
|
-
required: false,
|
|
34
|
-
}),
|
|
35
|
-
invoiceDate: pieces_framework_1.Property.ShortText({
|
|
36
|
-
displayName: 'Invoice Date',
|
|
37
|
-
description: 'Invoice date (YYYY-MM-DD)',
|
|
38
|
-
required: true,
|
|
39
|
-
}),
|
|
40
|
-
dueDate: pieces_framework_1.Property.ShortText({
|
|
41
|
-
displayName: 'Due Date',
|
|
42
|
-
description: 'Due date (YYYY-MM-DD)',
|
|
43
|
-
required: true,
|
|
44
|
-
}),
|
|
45
|
-
orderNumberReference: pieces_framework_1.Property.ShortText({
|
|
46
|
-
displayName: 'Order Number Reference',
|
|
47
|
-
description: 'The order number associated with the invoice',
|
|
48
|
-
required: false,
|
|
49
|
-
}),
|
|
50
|
-
currency: pieces_framework_1.Property.ShortText({
|
|
51
|
-
displayName: 'Currency',
|
|
52
|
-
description: 'ISO 4217 currency code (e.g., SEK, EUR, USD)',
|
|
53
|
-
required: false,
|
|
54
|
-
}),
|
|
55
|
-
currencyRate: pieces_framework_1.Property.Number({
|
|
56
|
-
displayName: 'Currency Rate',
|
|
57
|
-
description: 'Currency rate',
|
|
58
|
-
required: false,
|
|
59
|
-
}),
|
|
60
|
-
lineItemsJson: pieces_framework_1.Property.LongText({
|
|
61
|
-
displayName: 'Line Items (JSON)',
|
|
62
|
-
description: 'Line items as JSON array. Each item should have: itemRef (object with id), description, quantity, unitPrice, unit, itemType (PRODUCT or SERVICE), vat',
|
|
63
|
-
required: false,
|
|
64
|
-
}),
|
|
65
|
-
},
|
|
66
|
-
run(context) {
|
|
67
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
68
|
-
const { invoiceId, invoiceType, customerRef, invoiceDate, dueDate, orderNumberReference, currency, currencyRate, lineItemsJson, } = context.propsValue;
|
|
69
|
-
const { api_key, companyId } = context.auth.props;
|
|
70
|
-
const body = {};
|
|
71
|
-
if (invoiceType) {
|
|
72
|
-
body.type = invoiceType;
|
|
73
|
-
}
|
|
74
|
-
if (customerRef) {
|
|
75
|
-
body.customerRef = {
|
|
76
|
-
id: customerRef,
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
if (invoiceDate) {
|
|
80
|
-
body.invoiceDate = invoiceDate;
|
|
81
|
-
}
|
|
82
|
-
if (dueDate) {
|
|
83
|
-
body.dueDate = dueDate;
|
|
84
|
-
}
|
|
85
|
-
if (orderNumberReference) {
|
|
86
|
-
body.orderNumberReference = orderNumberReference;
|
|
87
|
-
}
|
|
88
|
-
if (currency) {
|
|
89
|
-
body.currency = currency;
|
|
90
|
-
}
|
|
91
|
-
if (currencyRate !== undefined && currencyRate !== null) {
|
|
92
|
-
body.currencyRate = currencyRate;
|
|
93
|
-
}
|
|
94
|
-
if (lineItemsJson) {
|
|
95
|
-
try {
|
|
96
|
-
body.lineItems = JSON.parse(lineItemsJson);
|
|
97
|
-
}
|
|
98
|
-
catch (_a) {
|
|
99
|
-
throw new Error('Invalid JSON format for line items');
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
const response = yield (0, client_1.makeRequest)(api_key, pieces_common_1.HttpMethod.PUT, `/companies/${companyId}/invoices/${invoiceId}`, body);
|
|
103
|
-
return response;
|
|
104
|
-
});
|
|
105
|
-
},
|
|
106
|
-
});
|
|
107
|
-
//# sourceMappingURL=update-an-invoice.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"update-an-invoice.js","sourceRoot":"","sources":["../../../../src/lib/actions/update-an-invoice.ts"],"names":[],"mappings":"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"}
|
package/src/lib/common/auth.d.ts
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export declare const bokioAuth: import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
2
|
-
companyId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
3
|
-
api_key: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
4
|
-
}>;
|
|
5
|
-
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../src/lib/common/auth.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,SAAS;;;EAuCpB,CAAC"}
|
package/src/lib/common/auth.js
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.bokioAuth = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
-
const client_1 = require("./client");
|
|
7
|
-
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
8
|
-
exports.bokioAuth = pieces_framework_1.PieceAuth.CustomAuth({
|
|
9
|
-
displayName: 'Bokio API Key',
|
|
10
|
-
description: 'Bokio API Key is required to authenticate requests to Bokio',
|
|
11
|
-
required: true,
|
|
12
|
-
props: {
|
|
13
|
-
companyId: pieces_framework_1.Property.ShortText({
|
|
14
|
-
displayName: 'Company ID',
|
|
15
|
-
description: 'Enter your Bokio Company ID ',
|
|
16
|
-
required: true,
|
|
17
|
-
}),
|
|
18
|
-
api_key: pieces_framework_1.Property.ShortText({
|
|
19
|
-
displayName: 'API Key',
|
|
20
|
-
description: 'Enter your Bokio API Key',
|
|
21
|
-
required: true,
|
|
22
|
-
}),
|
|
23
|
-
},
|
|
24
|
-
validate: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth }) {
|
|
25
|
-
if (auth) {
|
|
26
|
-
try {
|
|
27
|
-
yield (0, client_1.makeRequest)(auth.api_key, pieces_common_1.HttpMethod.GET, `/companies/${auth.companyId}/journal-entries`);
|
|
28
|
-
return {
|
|
29
|
-
valid: true,
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
catch (e) {
|
|
33
|
-
return {
|
|
34
|
-
valid: false,
|
|
35
|
-
error: 'Invalid Api Key',
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
return {
|
|
40
|
-
valid: false,
|
|
41
|
-
error: 'Invalid Api Key',
|
|
42
|
-
};
|
|
43
|
-
}),
|
|
44
|
-
});
|
|
45
|
-
//# sourceMappingURL=auth.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/lib/common/auth.ts"],"names":[],"mappings":";;;;AAAA,qEAAqE;AACrE,qCAAuC;AACvC,+DAAqE;AAExD,QAAA,SAAS,GAAG,4BAAS,CAAC,UAAU,CAAC;IAC5C,WAAW,EAAE,eAAe;IAC5B,WAAW,EAAE,6DAA6D;IAC1E,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE;QACL,SAAS,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC5B,WAAW,EAAE,YAAY;YACzB,WAAW,EAAE,8BAA8B;YAC3C,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,OAAO,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC1B,WAAW,EAAE,SAAS;YACtB,WAAW,EAAE,0BAA0B;YACvC,QAAQ,EAAE,IAAI;SACf,CAAC;KACH;IACD,QAAQ,EAAE,KAAiB,EAAE,oDAAZ,EAAE,IAAI,EAAE;QACvB,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC;gBACH,MAAM,IAAA,oBAAW,EACf,IAAI,CAAC,OAAO,EACZ,0BAAU,CAAC,GAAG,EACd,cAAc,IAAI,CAAC,SAAS,kBAAkB,CAC/C,CAAC;gBACF,OAAO;oBACL,KAAK,EAAE,IAAI;iBACZ,CAAC;YACJ,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO;oBACL,KAAK,EAAE,KAAK;oBACZ,KAAK,EAAE,iBAAiB;iBACzB,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,iBAAiB;SACzB,CAAC;IACJ,CAAC,CAAA;CACF,CAAC,CAAC"}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { HttpMethod } from '@activepieces/pieces-common';
|
|
2
|
-
export declare const BASE_URL = "https://api.bokio.se/v1";
|
|
3
|
-
export declare function makeRequest(api_key: string, method: HttpMethod, path: string, body?: unknown): Promise<any>;
|
|
4
|
-
//# sourceMappingURL=client.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/lib/common/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAc,MAAM,6BAA6B,CAAC;AAErE,eAAO,MAAM,QAAQ,4BAA4B,CAAC;AAElD,wBAAsB,WAAW,CAC/B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,OAAO,gBAgBf"}
|
package/src/lib/common/client.js
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BASE_URL = void 0;
|
|
4
|
-
exports.makeRequest = makeRequest;
|
|
5
|
-
const tslib_1 = require("tslib");
|
|
6
|
-
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
7
|
-
exports.BASE_URL = `https://api.bokio.se/v1`;
|
|
8
|
-
function makeRequest(api_key, method, path, body) {
|
|
9
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
10
|
-
try {
|
|
11
|
-
const response = yield pieces_common_1.httpClient.sendRequest({
|
|
12
|
-
method,
|
|
13
|
-
url: `${exports.BASE_URL}${path}`,
|
|
14
|
-
headers: {
|
|
15
|
-
Authorization: `Bearer ${api_key}`,
|
|
16
|
-
'Content-Type': 'application/json',
|
|
17
|
-
},
|
|
18
|
-
body,
|
|
19
|
-
});
|
|
20
|
-
return response.body;
|
|
21
|
-
}
|
|
22
|
-
catch (error) {
|
|
23
|
-
throw new Error(`Unexpected error: ${error.message || String(error)}`);
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=client.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/lib/common/client.ts"],"names":[],"mappings":";;;AAIA,kCAoBC;;AAxBD,+DAAqE;AAExD,QAAA,QAAQ,GAAG,yBAAyB,CAAC;AAElD,SAAsB,WAAW,CAC/B,OAAe,EACf,MAAkB,EAClB,IAAY,EACZ,IAAc;;QAEd,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC5C,MAAM;gBACN,GAAG,EAAE,GAAG,gBAAQ,GAAG,IAAI,EAAE;gBACzB,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,OAAO,EAAE;oBAClC,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI;aACL,CAAC,CAAC;YACH,OAAO,QAAQ,CAAC,IAAI,CAAC;QACvB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,qBAAqB,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;CAAA"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export declare const invoiceIdDropdown: import("@activepieces/pieces-framework").DropdownProperty<unknown, true, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
2
|
-
companyId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
3
|
-
api_key: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
4
|
-
}>>;
|
|
5
|
-
export declare const unitTypeDropdown: import("@activepieces/pieces-framework").StaticDropdownProperty<string, false>;
|
|
6
|
-
export declare const lineItemsProps: import("@activepieces/pieces-framework").DynamicProperties<false, import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
7
|
-
companyId: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
8
|
-
api_key: import("@activepieces/pieces-framework").ShortTextProperty<true>;
|
|
9
|
-
}>>;
|
|
10
|
-
//# sourceMappingURL=props.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"props.d.ts","sourceRoot":"","sources":["../../../../src/lib/common/props.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,iBAAiB;;;GAoC5B,CAAC;AAEH,eAAO,MAAM,gBAAgB,gFA+B3B,CAAC;AAEH,eAAO,MAAM,cAAc;;;GA2DzB,CAAC"}
|
package/src/lib/common/props.js
DELETED
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.lineItemsProps = exports.unitTypeDropdown = exports.invoiceIdDropdown = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
6
|
-
const client_1 = require("./client");
|
|
7
|
-
const auth_1 = require("./auth");
|
|
8
|
-
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
9
|
-
exports.invoiceIdDropdown = pieces_framework_1.Property.Dropdown({
|
|
10
|
-
auth: auth_1.bokioAuth,
|
|
11
|
-
displayName: 'Invoice',
|
|
12
|
-
description: 'Select the invoice',
|
|
13
|
-
required: true,
|
|
14
|
-
refreshers: [],
|
|
15
|
-
options: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth }) {
|
|
16
|
-
if (!auth) {
|
|
17
|
-
return {
|
|
18
|
-
disabled: true,
|
|
19
|
-
options: [],
|
|
20
|
-
};
|
|
21
|
-
}
|
|
22
|
-
try {
|
|
23
|
-
const response = yield (0, client_1.makeRequest)(auth.props.api_key, pieces_common_1.HttpMethod.GET, `/companies/${auth.props.companyId}/invoices?limit=100`);
|
|
24
|
-
const options = response.items.map((invoice) => ({
|
|
25
|
-
label: `#${invoice.invoiceNumber} - ${invoice.customerRef.customerName}`,
|
|
26
|
-
value: invoice.id,
|
|
27
|
-
}));
|
|
28
|
-
return {
|
|
29
|
-
disabled: false,
|
|
30
|
-
options,
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
catch (error) {
|
|
34
|
-
return {
|
|
35
|
-
disabled: true,
|
|
36
|
-
options: [],
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
}),
|
|
40
|
-
});
|
|
41
|
-
exports.unitTypeDropdown = pieces_framework_1.Property.StaticDropdown({
|
|
42
|
-
displayName: 'Unit Type',
|
|
43
|
-
description: 'Unit type for the item',
|
|
44
|
-
required: false,
|
|
45
|
-
options: {
|
|
46
|
-
options: [
|
|
47
|
-
{ label: 'Unspecified', value: 'unspecified' },
|
|
48
|
-
{ label: 'Piece', value: 'piece' },
|
|
49
|
-
{ label: 'Hour', value: 'hour' },
|
|
50
|
-
{ label: 'Day', value: 'day' },
|
|
51
|
-
{ label: 'Month', value: 'month' },
|
|
52
|
-
{ label: 'Kilogram', value: 'kilogram' },
|
|
53
|
-
{ label: 'Gram', value: 'gram' },
|
|
54
|
-
{ label: 'Liter', value: 'liter' },
|
|
55
|
-
{ label: 'Meter', value: 'meter' },
|
|
56
|
-
{ label: 'Centimeter', value: 'centimeter' },
|
|
57
|
-
{ label: 'Millimeter', value: 'millimeter' },
|
|
58
|
-
{ label: 'Meter Squared', value: 'meterSquared' },
|
|
59
|
-
{ label: 'Meter Cubic', value: 'meterCubic' },
|
|
60
|
-
{ label: 'Mile', value: 'mile' },
|
|
61
|
-
{ label: 'Kilometer', value: 'kilometer' },
|
|
62
|
-
{ label: 'Gigabyte', value: 'gigabyte' },
|
|
63
|
-
{ label: 'Hectar', value: 'hectar' },
|
|
64
|
-
{ label: 'Words', value: 'words' },
|
|
65
|
-
{ label: 'Year', value: 'year' },
|
|
66
|
-
{ label: 'Week', value: 'week' },
|
|
67
|
-
{ label: 'Minute', value: 'minute' },
|
|
68
|
-
{ label: 'Megabyte', value: 'megabyte' },
|
|
69
|
-
{ label: 'Ton', value: 'ton' },
|
|
70
|
-
],
|
|
71
|
-
},
|
|
72
|
-
});
|
|
73
|
-
exports.lineItemsProps = pieces_framework_1.Property.DynamicProperties({
|
|
74
|
-
auth: auth_1.bokioAuth,
|
|
75
|
-
displayName: 'Item Details',
|
|
76
|
-
description: 'Configure item details based on item type',
|
|
77
|
-
required: false,
|
|
78
|
-
refreshers: ['itemType'],
|
|
79
|
-
props: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ itemType }) {
|
|
80
|
-
const properties = {
|
|
81
|
-
description: pieces_framework_1.Property.ShortText({
|
|
82
|
-
displayName: 'Description',
|
|
83
|
-
description: 'Description of the line item',
|
|
84
|
-
required: true,
|
|
85
|
-
}),
|
|
86
|
-
};
|
|
87
|
-
// Only show pricing fields for sales items
|
|
88
|
-
if (itemType === 'salesItem') {
|
|
89
|
-
properties['itemRefId'] = pieces_framework_1.Property.ShortText({
|
|
90
|
-
displayName: 'Item Reference ID',
|
|
91
|
-
description: 'UUID of the item reference',
|
|
92
|
-
required: false,
|
|
93
|
-
});
|
|
94
|
-
properties['productType'] = pieces_framework_1.Property.StaticDropdown({
|
|
95
|
-
displayName: 'Product Type',
|
|
96
|
-
description: 'Type of product',
|
|
97
|
-
required: true,
|
|
98
|
-
options: {
|
|
99
|
-
options: [
|
|
100
|
-
{ label: 'Goods', value: 'goods' },
|
|
101
|
-
{ label: 'Service', value: 'service' },
|
|
102
|
-
],
|
|
103
|
-
},
|
|
104
|
-
});
|
|
105
|
-
properties['unitType'] = exports.unitTypeDropdown;
|
|
106
|
-
properties['quantity'] = pieces_framework_1.Property.Number({
|
|
107
|
-
displayName: 'Quantity',
|
|
108
|
-
description: 'Quantity of the item',
|
|
109
|
-
required: true,
|
|
110
|
-
defaultValue: 1,
|
|
111
|
-
});
|
|
112
|
-
properties['unitPrice'] = pieces_framework_1.Property.Number({
|
|
113
|
-
displayName: 'Unit Price',
|
|
114
|
-
description: 'Price per unit',
|
|
115
|
-
required: true,
|
|
116
|
-
});
|
|
117
|
-
properties['taxRate'] = pieces_framework_1.Property.Number({
|
|
118
|
-
displayName: 'Tax Rate',
|
|
119
|
-
description: 'Tax rate in percentage (e.g., 25 for 25%)',
|
|
120
|
-
required: false,
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
return properties;
|
|
124
|
-
}),
|
|
125
|
-
});
|
|
126
|
-
//# sourceMappingURL=props.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"props.js","sourceRoot":"","sources":["../../../../src/lib/common/props.ts"],"names":[],"mappings":"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"}
|