@activepieces/piece-polydoc 0.0.2 → 0.0.3
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 -12
- package/src/index.js +15 -37
- 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/capture-screenshot.d.ts +0 -24
- package/src/lib/actions/capture-screenshot.d.ts.map +0 -1
- package/src/lib/actions/capture-screenshot.js +0 -112
- package/src/lib/actions/capture-screenshot.js.map +0 -1
- package/src/lib/actions/convert-pdf.d.ts +0 -28
- package/src/lib/actions/convert-pdf.d.ts.map +0 -1
- package/src/lib/actions/convert-pdf.js +0 -111
- package/src/lib/actions/convert-pdf.js.map +0 -1
- package/src/lib/actions/generate-einvoice.d.ts +0 -21
- package/src/lib/actions/generate-einvoice.d.ts.map +0 -1
- package/src/lib/actions/generate-einvoice.js +0 -111
- package/src/lib/actions/generate-einvoice.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 -62
- package/src/lib/common/auth.js.map +0 -1
- package/src/lib/common/build-request-body.d.ts +0 -11
- package/src/lib/common/build-request-body.d.ts.map +0 -1
- package/src/lib/common/build-request-body.js +0 -172
- package/src/lib/common/build-request-body.js.map +0 -1
- package/src/lib/common/client.d.ts +0 -20
- package/src/lib/common/client.d.ts.map +0 -1
- package/src/lib/common/client.js +0 -68
- package/src/lib/common/client.js.map +0 -1
- package/src/lib/common/constants.d.ts +0 -41
- package/src/lib/common/constants.d.ts.map +0 -1
- package/src/lib/common/constants.js +0 -28
- package/src/lib/common/constants.js.map +0 -1
- package/src/lib/common/output.d.ts +0 -24
- package/src/lib/common/output.d.ts.map +0 -1
- package/src/lib/common/output.js +0 -53
- package/src/lib/common/output.js.map +0 -1
- package/src/lib/common/props.d.ts +0 -20
- package/src/lib/common/props.d.ts.map +0 -1
- package/src/lib/common/props.js +0 -144
- package/src/lib/common/props.js.map +0 -1
- package/src/lib/common/types.d.ts +0 -37
- package/src/lib/common/types.d.ts.map +0 -1
- package/src/lib/common/types.js +0 -3
- package/src/lib/common/types.js.map +0 -1
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.convertToPdf = 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 build_request_body_1 = require("../common/build-request-body");
|
|
8
|
-
const client_1 = require("../common/client");
|
|
9
|
-
const constants_1 = require("../common/constants");
|
|
10
|
-
const output_1 = require("../common/output");
|
|
11
|
-
const props_1 = require("../common/props");
|
|
12
|
-
exports.convertToPdf = (0, pieces_framework_1.createAction)({
|
|
13
|
-
auth: auth_1.polydocAuth,
|
|
14
|
-
name: 'convert_to_pdf',
|
|
15
|
-
displayName: 'Convert to PDF',
|
|
16
|
-
description: 'Convert HTML, a URL, or a saved template to a PDF.',
|
|
17
|
-
aiMetadata: {
|
|
18
|
-
description: 'Converts a URL, an inline HTML string, or a saved PolyDoc template into a PDF and returns the file (or delivers it to cloud storage / a webhook). Use it to render documents like invoices, reports, or contracts. Idempotent: the same input yields the same PDF.',
|
|
19
|
-
idempotent: true,
|
|
20
|
-
},
|
|
21
|
-
props: {
|
|
22
|
-
sourceType: (0, props_1.sourceTypeProp)('url'),
|
|
23
|
-
source: props_1.sourceProp,
|
|
24
|
-
templateData: props_1.templateDataProp,
|
|
25
|
-
format: pieces_framework_1.Property.StaticDropdown({
|
|
26
|
-
displayName: 'Page Format',
|
|
27
|
-
required: false,
|
|
28
|
-
defaultValue: 'A4',
|
|
29
|
-
options: { disabled: false, options: constants_1.PAGE_FORMATS.map((f) => ({ label: f, value: f })) },
|
|
30
|
-
}),
|
|
31
|
-
landscape: pieces_framework_1.Property.Checkbox({ displayName: 'Landscape', required: false, defaultValue: false }),
|
|
32
|
-
printBackground: pieces_framework_1.Property.Checkbox({
|
|
33
|
-
displayName: 'Print Background',
|
|
34
|
-
description: 'Print background graphics and colors.',
|
|
35
|
-
required: false,
|
|
36
|
-
defaultValue: true,
|
|
37
|
-
}),
|
|
38
|
-
scale: pieces_framework_1.Property.Number({
|
|
39
|
-
displayName: 'Scale',
|
|
40
|
-
description: 'Render scale (0.1 to 2).',
|
|
41
|
-
required: false,
|
|
42
|
-
}),
|
|
43
|
-
pageRanges: pieces_framework_1.Property.ShortText({
|
|
44
|
-
displayName: 'Page Ranges',
|
|
45
|
-
description: 'Pages to include, e.g. "1-5, 8". Empty means all pages.',
|
|
46
|
-
required: false,
|
|
47
|
-
}),
|
|
48
|
-
outline: pieces_framework_1.Property.Checkbox({
|
|
49
|
-
displayName: 'Outline (Bookmarks)',
|
|
50
|
-
description: 'Generate PDF bookmarks from HTML headings.',
|
|
51
|
-
required: false,
|
|
52
|
-
defaultValue: false,
|
|
53
|
-
}),
|
|
54
|
-
tagged: pieces_framework_1.Property.Checkbox({
|
|
55
|
-
displayName: 'Tagged (Accessible)',
|
|
56
|
-
description: 'Produce a tagged, accessible PDF.',
|
|
57
|
-
required: false,
|
|
58
|
-
defaultValue: false,
|
|
59
|
-
}),
|
|
60
|
-
marginTop: pieces_framework_1.Property.ShortText({
|
|
61
|
-
displayName: 'Margin Top',
|
|
62
|
-
description: 'Top margin with optional unit, e.g. 10mm, 1cm, 0.5in.',
|
|
63
|
-
required: false,
|
|
64
|
-
}),
|
|
65
|
-
marginRight: pieces_framework_1.Property.ShortText({ displayName: 'Margin Right', required: false }),
|
|
66
|
-
marginBottom: pieces_framework_1.Property.ShortText({ displayName: 'Margin Bottom', required: false }),
|
|
67
|
-
marginLeft: pieces_framework_1.Property.ShortText({ displayName: 'Margin Left', required: false }),
|
|
68
|
-
deliveryMode: props_1.deliveryModeProp,
|
|
69
|
-
presignedUrl: props_1.presignedUrlProp,
|
|
70
|
-
webhookUrl: props_1.webhookUrlProp,
|
|
71
|
-
webhookOptions: props_1.webhookOptionsProp,
|
|
72
|
-
filename: props_1.filenameProp,
|
|
73
|
-
tag: props_1.tagProp,
|
|
74
|
-
timeout: props_1.timeoutProp,
|
|
75
|
-
advanced: props_1.advancedProp,
|
|
76
|
-
},
|
|
77
|
-
run(context) {
|
|
78
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
79
|
-
var _a;
|
|
80
|
-
const props = context.propsValue;
|
|
81
|
-
const params = Object.assign(Object.assign(Object.assign({ operation: 'pdf' }, (0, props_1.resolveSourceParams)(props)), (0, props_1.resolveMetadata)(props)), { delivery: (0, props_1.resolveDelivery)(props), pdfOptions: {
|
|
82
|
-
format: props['format'],
|
|
83
|
-
landscape: props['landscape'],
|
|
84
|
-
printBackground: props['printBackground'],
|
|
85
|
-
scale: props['scale'],
|
|
86
|
-
pageRanges: props['pageRanges'],
|
|
87
|
-
outline: props['outline'],
|
|
88
|
-
tagged: props['tagged'],
|
|
89
|
-
marginTop: props['marginTop'],
|
|
90
|
-
marginRight: props['marginRight'],
|
|
91
|
-
marginBottom: props['marginBottom'],
|
|
92
|
-
marginLeft: props['marginLeft'],
|
|
93
|
-
} });
|
|
94
|
-
const request = (0, build_request_body_1.buildRequestBody)(params);
|
|
95
|
-
try {
|
|
96
|
-
const response = yield (0, client_1.polyDocRequest)(context.auth, request);
|
|
97
|
-
return yield (0, output_1.shapeOutput)({
|
|
98
|
-
response,
|
|
99
|
-
isBinary: request.isBinary,
|
|
100
|
-
files: context.files,
|
|
101
|
-
operation: 'pdf',
|
|
102
|
-
filename: params.filename,
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
catch (error) {
|
|
106
|
-
throw new Error((_a = (0, client_1.extractApiErrorMessage)(error)) !== null && _a !== void 0 ? _a : error.message);
|
|
107
|
-
}
|
|
108
|
-
});
|
|
109
|
-
},
|
|
110
|
-
});
|
|
111
|
-
//# sourceMappingURL=convert-pdf.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"convert-pdf.js","sourceRoot":"","sources":["../../../../src/lib/actions/convert-pdf.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,yCAA6C;AAC7C,qEAAgE;AAChE,6CAA0E;AAC1E,mDAAmD;AACnD,6CAA+C;AAC/C,2CAeyB;AAGZ,QAAA,YAAY,GAAG,IAAA,+BAAY,EAAC;IACvC,IAAI,EAAE,kBAAW;IACjB,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,gBAAgB;IAC7B,WAAW,EAAE,oDAAoD;IACjE,UAAU,EAAE;QACV,WAAW,EACT,oQAAoQ;QACtQ,UAAU,EAAE,IAAI;KACjB;IACD,KAAK,EAAE;QACL,UAAU,EAAE,IAAA,sBAAc,EAAC,KAAK,CAAC;QACjC,MAAM,EAAE,kBAAU;QAClB,YAAY,EAAE,wBAAgB;QAC9B,MAAM,EAAE,2BAAQ,CAAC,cAAc,CAAC;YAC9B,WAAW,EAAE,aAAa;YAC1B,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,IAAI;YAClB,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,wBAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE;SACzF,CAAC;QACF,SAAS,EAAE,2BAAQ,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;QAChG,eAAe,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YACjC,WAAW,EAAE,kBAAkB;YAC/B,WAAW,EAAE,uCAAuC;YACpD,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,IAAI;SACnB,CAAC;QACF,KAAK,EAAE,2BAAQ,CAAC,MAAM,CAAC;YACrB,WAAW,EAAE,OAAO;YACpB,WAAW,EAAE,0BAA0B;YACvC,QAAQ,EAAE,KAAK;SAChB,CAAC;QACF,UAAU,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC7B,WAAW,EAAE,aAAa;YAC1B,WAAW,EAAE,yDAAyD;YACtE,QAAQ,EAAE,KAAK;SAChB,CAAC;QACF,OAAO,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YACzB,WAAW,EAAE,qBAAqB;YAClC,WAAW,EAAE,4CAA4C;YACzD,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,KAAK;SACpB,CAAC;QACF,MAAM,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YACxB,WAAW,EAAE,qBAAqB;YAClC,WAAW,EAAE,mCAAmC;YAChD,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,KAAK;SACpB,CAAC;QACF,SAAS,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC5B,WAAW,EAAE,YAAY;YACzB,WAAW,EAAE,uDAAuD;YACpE,QAAQ,EAAE,KAAK;SAChB,CAAC;QACF,WAAW,EAAE,2BAAQ,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QACjF,YAAY,EAAE,2BAAQ,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE,eAAe,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QACnF,UAAU,EAAE,2BAAQ,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAC/E,YAAY,EAAE,wBAAgB;QAC9B,YAAY,EAAE,wBAAgB;QAC9B,UAAU,EAAE,sBAAc;QAC1B,cAAc,EAAE,0BAAkB;QAClC,QAAQ,EAAE,oBAAY;QACtB,GAAG,EAAE,eAAO;QACZ,OAAO,EAAE,mBAAW;QACpB,QAAQ,EAAE,oBAAY;KACvB;IACK,GAAG,CAAC,OAAO;;;YACf,MAAM,KAAK,GAAG,OAAO,CAAC,UAAqC,CAAC;YAC5D,MAAM,MAAM,+CACV,SAAS,EAAE,KAAK,IACb,IAAA,2BAAmB,EAAC,KAAK,CAAC,GAC1B,IAAA,uBAAe,EAAC,KAAK,CAAC,KACzB,QAAQ,EAAE,IAAA,uBAAe,EAAC,KAAK,CAAC,EAChC,UAAU,EAAE;oBACV,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC;oBACvB,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC;oBAC7B,eAAe,EAAE,KAAK,CAAC,iBAAiB,CAAC;oBACzC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;oBACrB,UAAU,EAAE,KAAK,CAAC,YAAY,CAAC;oBAC/B,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;oBACzB,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC;oBACvB,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC;oBAC7B,WAAW,EAAE,KAAK,CAAC,aAAa,CAAC;oBACjC,YAAY,EAAE,KAAK,CAAC,cAAc,CAAC;oBACnC,UAAU,EAAE,KAAK,CAAC,YAAY,CAAC;iBAChC,GACF,CAAC;YAEF,MAAM,OAAO,GAAG,IAAA,qCAAgB,EAAC,MAAM,CAAC,CAAC;YACzC,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAA,uBAAc,EAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC7D,OAAO,MAAM,IAAA,oBAAW,EAAC;oBACvB,QAAQ;oBACR,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;oBACpB,SAAS,EAAE,KAAK;oBAChB,QAAQ,EAAE,MAAM,CAAC,QAAQ;iBAC1B,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,MAAA,IAAA,+BAAsB,EAAC,KAAK,CAAC,mCAAK,KAAe,CAAC,OAAO,CAAC,CAAC;YAC7E,CAAC;QACH,CAAC;KAAA;CACF,CAAC,CAAC"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
export declare const generateEinvoice: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
2
|
-
apiKey: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
3
|
-
sandbox: import("@activepieces/pieces-framework").CheckboxProperty<false>;
|
|
4
|
-
}>, {
|
|
5
|
-
sourceType: import("@activepieces/pieces-framework").StaticDropdownProperty<"url" | "html" | "template", true>;
|
|
6
|
-
source: import("@activepieces/pieces-framework").LongTextProperty<true>;
|
|
7
|
-
templateData: import("@activepieces/pieces-framework").JsonProperty<false>;
|
|
8
|
-
standard: import("@activepieces/pieces-framework").StaticDropdownProperty<"zugferd" | "facturx", true>;
|
|
9
|
-
profile: import("@activepieces/pieces-framework").StaticDropdownProperty<"minimum" | "basicwl" | "basic" | "en16931" | "extended", true>;
|
|
10
|
-
invoice: import("@activepieces/pieces-framework").JsonProperty<true>;
|
|
11
|
-
verify: import("@activepieces/pieces-framework").CheckboxProperty<false>;
|
|
12
|
-
deliveryMode: import("@activepieces/pieces-framework").StaticDropdownProperty<"download" | "cloudStorage" | "webhook", true>;
|
|
13
|
-
presignedUrl: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
14
|
-
webhookUrl: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
15
|
-
webhookOptions: import("@activepieces/pieces-framework").JsonProperty<false>;
|
|
16
|
-
filename: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
17
|
-
tag: import("@activepieces/pieces-framework").ShortTextProperty<false>;
|
|
18
|
-
timeout: import("@activepieces/pieces-framework").NumberProperty<false>;
|
|
19
|
-
advanced: import("@activepieces/pieces-framework").JsonProperty<false>;
|
|
20
|
-
}>;
|
|
21
|
-
//# sourceMappingURL=generate-einvoice.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generate-einvoice.d.ts","sourceRoot":"","sources":["../../../../src/lib/actions/generate-einvoice.ts"],"names":[],"mappings":"AAiDA,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;EAmF3B,CAAC"}
|
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.generateEinvoice = 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 build_request_body_1 = require("../common/build-request-body");
|
|
8
|
-
const client_1 = require("../common/client");
|
|
9
|
-
const constants_1 = require("../common/constants");
|
|
10
|
-
const output_1 = require("../common/output");
|
|
11
|
-
const props_1 = require("../common/props");
|
|
12
|
-
const SAMPLE_INVOICE = {
|
|
13
|
-
number: 'INV-001',
|
|
14
|
-
issueDate: '2026-01-31',
|
|
15
|
-
dueDate: '2026-03-02',
|
|
16
|
-
currencyCode: 'EUR',
|
|
17
|
-
seller: {
|
|
18
|
-
name: 'Your Company GmbH',
|
|
19
|
-
address: { line1: 'Main St 1', city: 'Berlin', postalCode: '10115', countryCode: 'DE' },
|
|
20
|
-
taxId: 'DE123456789',
|
|
21
|
-
},
|
|
22
|
-
buyer: {
|
|
23
|
-
name: 'Customer SARL',
|
|
24
|
-
address: { line1: 'Rue 2', city: 'Paris', postalCode: '75001', countryCode: 'FR' },
|
|
25
|
-
},
|
|
26
|
-
lines: [
|
|
27
|
-
{ description: 'Widget', quantity: 2, unitPrice: 10, lineTotal: 20, vatRate: 19, vatCategoryCode: 'S' },
|
|
28
|
-
],
|
|
29
|
-
taxSummary: [{ categoryCode: 'S', rate: 19, taxableAmount: 20, taxAmount: 3.8 }],
|
|
30
|
-
paymentTerms: 'Net 30 days',
|
|
31
|
-
totalNetAmount: 20,
|
|
32
|
-
totalTaxAmount: 3.8,
|
|
33
|
-
totalGrossAmount: 23.8,
|
|
34
|
-
};
|
|
35
|
-
exports.generateEinvoice = (0, pieces_framework_1.createAction)({
|
|
36
|
-
auth: auth_1.polydocAuth,
|
|
37
|
-
name: 'generate_einvoice',
|
|
38
|
-
displayName: 'Generate E-Invoice',
|
|
39
|
-
description: 'Generate a hybrid e-invoice PDF (Factur-X / ZUGFeRD, EN 16931) from a visual layout plus structured invoice data.',
|
|
40
|
-
aiMetadata: {
|
|
41
|
-
description: 'Generates a hybrid e-invoice PDF (Factur-X / ZUGFeRD, EN 16931) by embedding structured invoice XML into a visual PDF layout. EN 16931 requires payment terms or a due date, a seller tax ID for VAT category S, and consistent totals. Idempotent: the same input yields the same PDF.',
|
|
42
|
-
idempotent: true,
|
|
43
|
-
},
|
|
44
|
-
props: {
|
|
45
|
-
sourceType: (0, props_1.sourceTypeProp)('html'),
|
|
46
|
-
source: props_1.sourceProp,
|
|
47
|
-
templateData: props_1.templateDataProp,
|
|
48
|
-
standard: pieces_framework_1.Property.StaticDropdown({
|
|
49
|
-
displayName: 'Standard',
|
|
50
|
-
description: 'The hybrid e-invoice standard to embed.',
|
|
51
|
-
required: true,
|
|
52
|
-
defaultValue: 'zugferd',
|
|
53
|
-
options: {
|
|
54
|
-
disabled: false,
|
|
55
|
-
options: constants_1.EINVOICE_STANDARDS.map((o) => ({ label: o.label, value: o.value })),
|
|
56
|
-
},
|
|
57
|
-
}),
|
|
58
|
-
profile: pieces_framework_1.Property.StaticDropdown({
|
|
59
|
-
displayName: 'Profile',
|
|
60
|
-
description: 'The data granularity profile to validate against.',
|
|
61
|
-
required: true,
|
|
62
|
-
defaultValue: 'en16931',
|
|
63
|
-
options: {
|
|
64
|
-
disabled: false,
|
|
65
|
-
options: constants_1.EINVOICE_PROFILES.map((p) => ({ label: p, value: p })),
|
|
66
|
-
},
|
|
67
|
-
}),
|
|
68
|
-
invoice: pieces_framework_1.Property.Json({
|
|
69
|
-
displayName: 'Invoice Data',
|
|
70
|
-
description: 'Structured invoice data: number, dates, currency, seller, buyer, lines, totals. EN 16931 needs payment terms (or due date), seller taxId for VAT category S, and consistent totals. See docs.polydoc.tech.',
|
|
71
|
-
required: true,
|
|
72
|
-
defaultValue: SAMPLE_INVOICE,
|
|
73
|
-
}),
|
|
74
|
-
verify: pieces_framework_1.Property.Checkbox({
|
|
75
|
-
displayName: 'Verify',
|
|
76
|
-
description: 'Validate PDF/A and e-invoice compliance (returns an error if it fails).',
|
|
77
|
-
required: false,
|
|
78
|
-
defaultValue: false,
|
|
79
|
-
}),
|
|
80
|
-
deliveryMode: props_1.deliveryModeProp,
|
|
81
|
-
presignedUrl: props_1.presignedUrlProp,
|
|
82
|
-
webhookUrl: props_1.webhookUrlProp,
|
|
83
|
-
webhookOptions: props_1.webhookOptionsProp,
|
|
84
|
-
filename: props_1.filenameProp,
|
|
85
|
-
tag: props_1.tagProp,
|
|
86
|
-
timeout: props_1.timeoutProp,
|
|
87
|
-
advanced: props_1.advancedProp,
|
|
88
|
-
},
|
|
89
|
-
run(context) {
|
|
90
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
91
|
-
var _a, _b;
|
|
92
|
-
const props = context.propsValue;
|
|
93
|
-
const params = Object.assign(Object.assign(Object.assign({ operation: 'einvoice' }, (0, props_1.resolveSourceParams)(props)), (0, props_1.resolveMetadata)(props)), { delivery: (0, props_1.resolveDelivery)(props), eInvoiceStandard: props['standard'], eInvoiceProfile: props['profile'], eInvoiceVerify: props['verify'] === true, invoice: (_a = (0, props_1.asJsonObject)(props['invoice'])) !== null && _a !== void 0 ? _a : {} });
|
|
94
|
-
const request = (0, build_request_body_1.buildRequestBody)(params);
|
|
95
|
-
try {
|
|
96
|
-
const response = yield (0, client_1.polyDocRequest)(context.auth, request);
|
|
97
|
-
return yield (0, output_1.shapeOutput)({
|
|
98
|
-
response,
|
|
99
|
-
isBinary: request.isBinary,
|
|
100
|
-
files: context.files,
|
|
101
|
-
operation: 'einvoice',
|
|
102
|
-
filename: params.filename,
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
catch (error) {
|
|
106
|
-
throw new Error((_b = (0, client_1.extractApiErrorMessage)(error)) !== null && _b !== void 0 ? _b : error.message);
|
|
107
|
-
}
|
|
108
|
-
});
|
|
109
|
-
},
|
|
110
|
-
});
|
|
111
|
-
//# sourceMappingURL=generate-einvoice.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generate-einvoice.js","sourceRoot":"","sources":["../../../../src/lib/actions/generate-einvoice.ts"],"names":[],"mappings":"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"}
|
package/src/lib/common/auth.d.ts
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export declare const polydocAuth: import("@activepieces/pieces-framework").CustomAuthProperty<{
|
|
2
|
-
apiKey: import("@activepieces/pieces-framework").SecretTextProperty<true>;
|
|
3
|
-
sandbox: import("@activepieces/pieces-framework").CheckboxProperty<false>;
|
|
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":"AAQA,eAAO,MAAM,WAAW;;;EAgDtB,CAAC"}
|
package/src/lib/common/auth.js
DELETED
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.polydocAuth = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
6
|
-
const pieces_framework_1 = require("@activepieces/pieces-framework");
|
|
7
|
-
const constants_1 = require("./constants");
|
|
8
|
-
const AUTH_GUIDE = `Get an API key from the PolyDoc dashboard (dashboard.polydoc.tech, API Keys). It is sent as Authorization: Bearer <key>.
|
|
9
|
-
|
|
10
|
-
Turn on **Sandbox** to test against sandbox quota (output is watermarked). Leave it off for production conversions.`;
|
|
11
|
-
exports.polydocAuth = pieces_framework_1.PieceAuth.CustomAuth({
|
|
12
|
-
description: AUTH_GUIDE,
|
|
13
|
-
required: true,
|
|
14
|
-
props: {
|
|
15
|
-
apiKey: pieces_framework_1.PieceAuth.SecretText({
|
|
16
|
-
displayName: 'API Key',
|
|
17
|
-
description: 'Your PolyDoc API key from dashboard.polydoc.tech.',
|
|
18
|
-
required: true,
|
|
19
|
-
}),
|
|
20
|
-
sandbox: pieces_framework_1.Property.Checkbox({
|
|
21
|
-
displayName: 'Sandbox',
|
|
22
|
-
description: 'Use sandbox quota (watermarked output).',
|
|
23
|
-
required: false,
|
|
24
|
-
defaultValue: false,
|
|
25
|
-
}),
|
|
26
|
-
},
|
|
27
|
-
validate: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth }) {
|
|
28
|
-
var _b;
|
|
29
|
-
const apiKey = auth.apiKey;
|
|
30
|
-
if (!apiKey) {
|
|
31
|
-
return { valid: false, error: 'API key is required.' };
|
|
32
|
-
}
|
|
33
|
-
try {
|
|
34
|
-
// Minimal forced-sandbox screenshot: proves the key is valid without
|
|
35
|
-
// touching production quota. 200 means valid, 401 means a bad key.
|
|
36
|
-
yield pieces_common_1.httpClient.sendRequest({
|
|
37
|
-
method: pieces_common_1.HttpMethod.POST,
|
|
38
|
-
url: `${constants_1.DEFAULT_BASE_URL.replace(/\/+$/, '')}${constants_1.SCREENSHOT_CONVERT_PATH}`,
|
|
39
|
-
headers: {
|
|
40
|
-
Authorization: `Bearer ${apiKey}`,
|
|
41
|
-
'Content-Type': 'application/json',
|
|
42
|
-
'X-Sandbox': auth.sandbox ? 'true' : 'false',
|
|
43
|
-
},
|
|
44
|
-
body: { source: '<p>polydoc</p>', screenshot: { type: 'png' } },
|
|
45
|
-
responseType: 'arraybuffer',
|
|
46
|
-
});
|
|
47
|
-
return { valid: true };
|
|
48
|
-
}
|
|
49
|
-
catch (error) {
|
|
50
|
-
const status = (_b = error === null || error === void 0 ? void 0 : error.response) === null || _b === void 0 ? void 0 : _b.status;
|
|
51
|
-
if (status === 401) {
|
|
52
|
-
return { valid: false, error: 'Invalid PolyDoc API key.' };
|
|
53
|
-
}
|
|
54
|
-
const detail = status ? `the API returned HTTP ${status}` : 'the API was unreachable';
|
|
55
|
-
return {
|
|
56
|
-
valid: false,
|
|
57
|
-
error: `Could not validate the PolyDoc API key (${detail}). Check the key and try again.`,
|
|
58
|
-
};
|
|
59
|
-
}
|
|
60
|
-
}),
|
|
61
|
-
});
|
|
62
|
-
//# sourceMappingURL=auth.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/lib/common/auth.ts"],"names":[],"mappings":";;;;AAAA,+DAAqE;AACrE,qEAAqE;AACrE,2CAAwE;AAExE,MAAM,UAAU,GAAG;;oHAEiG,CAAC;AAExG,QAAA,WAAW,GAAG,4BAAS,CAAC,UAAU,CAAC;IAC9C,WAAW,EAAE,UAAU;IACvB,QAAQ,EAAE,IAAI;IACd,KAAK,EAAE;QACL,MAAM,EAAE,4BAAS,CAAC,UAAU,CAAC;YAC3B,WAAW,EAAE,SAAS;YACtB,WAAW,EAAE,mDAAmD;YAChE,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,OAAO,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YACzB,WAAW,EAAE,SAAS;YACtB,WAAW,EAAE,yCAAyC;YACtD,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,KAAK;SACpB,CAAC;KACH;IACD,QAAQ,EAAE,KAAiB,EAAE,oDAAZ,EAAE,IAAI,EAAE;;QACvB,MAAM,MAAM,GAAI,IAAI,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC;QACzD,CAAC;QACD,IAAI,CAAC;YACH,qEAAqE;YACrE,mEAAmE;YACnE,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC3B,MAAM,EAAE,0BAAU,CAAC,IAAI;gBACvB,GAAG,EAAE,GAAG,4BAAgB,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,mCAAuB,EAAE;gBACxE,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,MAAM,EAAE;oBACjC,cAAc,EAAE,kBAAkB;oBAClC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;iBAC7C;gBACD,IAAI,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;gBAC/D,YAAY,EAAE,aAAa;aAC5B,CAAC,CAAC;YACH,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,MAAC,KAA4C,aAA5C,KAAK,uBAAL,KAAK,CAAyC,QAAQ,0CAAE,MAAM,CAAC;YAC/E,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;gBACnB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,0BAA0B,EAAE,CAAC;YAC7D,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,yBAAyB,MAAM,EAAE,CAAC,CAAC,CAAC,yBAAyB,CAAC;YACtF,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,2CAA2C,MAAM,iCAAiC;aAC1F,CAAC;QACJ,CAAC;IACH,CAAC,CAAA;CACF,CAAC,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { JsonObject, PolyDocOperation, PolyDocParams, PolyDocRequest } from './types';
|
|
2
|
-
/** Deep-merge `source` into `target` (source wins). Arrays and scalars overwrite. */
|
|
3
|
-
export declare function mergeDeep(target: JsonObject, source: JsonObject): JsonObject;
|
|
4
|
-
/**
|
|
5
|
-
* Assemble the PolyDoc request body. Returns the endpoint to call, the body to
|
|
6
|
-
* send, and whether the default (binary) delivery is in effect.
|
|
7
|
-
*/
|
|
8
|
-
export declare function buildRequestBody(params: PolyDocParams): PolyDocRequest;
|
|
9
|
-
/** Default output filename when the user did not set one. */
|
|
10
|
-
export declare function defaultFilename(operation: PolyDocOperation, imageType?: string): string;
|
|
11
|
-
//# sourceMappingURL=build-request-body.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"build-request-body.d.ts","sourceRoot":"","sources":["../../../../src/lib/common/build-request-body.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAY3F,qFAAqF;AACrF,wBAAgB,SAAS,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,GAAG,UAAU,CAU5E;AA4ED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,cAAc,CAkEtE;AAED,6DAA6D;AAC7D,wBAAgB,eAAe,CAAC,SAAS,EAAE,gBAAgB,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAMvF"}
|
|
@@ -1,172 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.mergeDeep = mergeDeep;
|
|
4
|
-
exports.buildRequestBody = buildRequestBody;
|
|
5
|
-
exports.defaultFilename = defaultFilename;
|
|
6
|
-
const constants_1 = require("./constants");
|
|
7
|
-
/**
|
|
8
|
-
* Pure assembly of the PolyDoc request body from resolved action params. No I/O
|
|
9
|
-
* and no Activepieces references, so it is unit-testable in isolation and stays
|
|
10
|
-
* the single source of truth for the request shape across all actions.
|
|
11
|
-
*/
|
|
12
|
-
function isPlainObject(value) {
|
|
13
|
-
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
14
|
-
}
|
|
15
|
-
/** Deep-merge `source` into `target` (source wins). Arrays and scalars overwrite. */
|
|
16
|
-
function mergeDeep(target, source) {
|
|
17
|
-
const out = Object.assign({}, target);
|
|
18
|
-
for (const [key, value] of Object.entries(source)) {
|
|
19
|
-
if (isPlainObject(value) && isPlainObject(out[key])) {
|
|
20
|
-
out[key] = mergeDeep(out[key], value);
|
|
21
|
-
}
|
|
22
|
-
else {
|
|
23
|
-
out[key] = value;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
return out;
|
|
27
|
-
}
|
|
28
|
-
function resolveSource(params) {
|
|
29
|
-
var _a, _b, _c;
|
|
30
|
-
switch (params.sourceType) {
|
|
31
|
-
case 'url':
|
|
32
|
-
return (_a = params.url) !== null && _a !== void 0 ? _a : '';
|
|
33
|
-
case 'html':
|
|
34
|
-
return (_b = params.html) !== null && _b !== void 0 ? _b : '';
|
|
35
|
-
case 'template':
|
|
36
|
-
return `[template:${(_c = params.templateId) !== null && _c !== void 0 ? _c : ''}]`;
|
|
37
|
-
default:
|
|
38
|
-
return '';
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
function buildLayout(opts) {
|
|
42
|
-
var _a, _b, _c, _d;
|
|
43
|
-
const layout = {};
|
|
44
|
-
if (typeof opts['format'] === 'string' && opts['format'] !== '') {
|
|
45
|
-
layout['format'] = opts['format'];
|
|
46
|
-
}
|
|
47
|
-
for (const flag of ['landscape', 'printBackground', 'outline', 'tagged']) {
|
|
48
|
-
if (typeof opts[flag] === 'boolean') {
|
|
49
|
-
layout[flag] = opts[flag];
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
if (typeof opts['scale'] === 'number') {
|
|
53
|
-
layout['scale'] = opts['scale'];
|
|
54
|
-
}
|
|
55
|
-
if (typeof opts['pageRanges'] === 'string' && opts['pageRanges'] !== '') {
|
|
56
|
-
layout['pageRanges'] = opts['pageRanges'];
|
|
57
|
-
}
|
|
58
|
-
const margins = ['marginTop', 'marginRight', 'marginBottom', 'marginLeft'];
|
|
59
|
-
if (margins.some((m) => opts[m] !== undefined && opts[m] !== '')) {
|
|
60
|
-
layout['margin'] = {
|
|
61
|
-
top: (_a = opts['marginTop']) !== null && _a !== void 0 ? _a : '2',
|
|
62
|
-
right: (_b = opts['marginRight']) !== null && _b !== void 0 ? _b : '1',
|
|
63
|
-
bottom: (_c = opts['marginBottom']) !== null && _c !== void 0 ? _c : '2',
|
|
64
|
-
left: (_d = opts['marginLeft']) !== null && _d !== void 0 ? _d : '1',
|
|
65
|
-
};
|
|
66
|
-
}
|
|
67
|
-
return Object.keys(layout).length > 0 ? layout : undefined;
|
|
68
|
-
}
|
|
69
|
-
function buildScreenshot(opts) {
|
|
70
|
-
const shot = {};
|
|
71
|
-
if (typeof opts['imageType'] === 'string' && opts['imageType'] !== '') {
|
|
72
|
-
shot['type'] = opts['imageType'];
|
|
73
|
-
}
|
|
74
|
-
if (typeof opts['fullPage'] === 'boolean') {
|
|
75
|
-
shot['fullPage'] = opts['fullPage'];
|
|
76
|
-
}
|
|
77
|
-
if (typeof opts['quality'] === 'number') {
|
|
78
|
-
shot['quality'] = opts['quality'];
|
|
79
|
-
}
|
|
80
|
-
if (opts['encoding'] === 'base64') {
|
|
81
|
-
shot['encoding'] = 'base64';
|
|
82
|
-
}
|
|
83
|
-
const hasViewportWidth = typeof opts['viewportWidth'] === 'number';
|
|
84
|
-
const hasViewportHeight = typeof opts['viewportHeight'] === 'number';
|
|
85
|
-
if (hasViewportWidth !== hasViewportHeight) {
|
|
86
|
-
throw new Error('Both viewport width and height are required to set a custom viewport.');
|
|
87
|
-
}
|
|
88
|
-
if (hasViewportWidth && hasViewportHeight) {
|
|
89
|
-
const viewport = {
|
|
90
|
-
width: opts['viewportWidth'],
|
|
91
|
-
height: opts['viewportHeight'],
|
|
92
|
-
};
|
|
93
|
-
if (typeof opts['devicePixelRatio'] === 'number' && opts['devicePixelRatio'] > 0) {
|
|
94
|
-
viewport['devicePixelRatio'] = opts['devicePixelRatio'];
|
|
95
|
-
}
|
|
96
|
-
shot['viewport'] = viewport;
|
|
97
|
-
}
|
|
98
|
-
return Object.keys(shot).length > 0 ? shot : undefined;
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Assemble the PolyDoc request body. Returns the endpoint to call, the body to
|
|
102
|
-
* send, and whether the default (binary) delivery is in effect.
|
|
103
|
-
*/
|
|
104
|
-
function buildRequestBody(params) {
|
|
105
|
-
var _a, _b;
|
|
106
|
-
const endpoint = params.operation === 'screenshot' ? constants_1.SCREENSHOT_CONVERT_PATH : constants_1.PDF_CONVERT_PATH;
|
|
107
|
-
const body = {
|
|
108
|
-
source: resolveSource(params),
|
|
109
|
-
};
|
|
110
|
-
if (params.templateData && Object.keys(params.templateData).length > 0) {
|
|
111
|
-
body['templateData'] = params.templateData;
|
|
112
|
-
}
|
|
113
|
-
if (params.filename) {
|
|
114
|
-
body['filename'] = params.filename;
|
|
115
|
-
}
|
|
116
|
-
if (params.tag) {
|
|
117
|
-
body['tag'] = params.tag;
|
|
118
|
-
}
|
|
119
|
-
if (typeof params.timeout === 'number' && params.timeout > 0) {
|
|
120
|
-
body['timeout'] = params.timeout;
|
|
121
|
-
}
|
|
122
|
-
if (params.operation === 'pdf') {
|
|
123
|
-
const layout = params.pdfOptions ? buildLayout(params.pdfOptions) : undefined;
|
|
124
|
-
if (layout) {
|
|
125
|
-
body['layout'] = layout;
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
if (params.operation === 'screenshot') {
|
|
129
|
-
const shot = params.screenshotOptions ? buildScreenshot(params.screenshotOptions) : undefined;
|
|
130
|
-
if (shot) {
|
|
131
|
-
body['screenshot'] = shot;
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
if (params.operation === 'einvoice') {
|
|
135
|
-
const eInvoice = {
|
|
136
|
-
standard: params.eInvoiceStandard,
|
|
137
|
-
profile: params.eInvoiceProfile,
|
|
138
|
-
invoice: (_a = params.invoice) !== null && _a !== void 0 ? _a : {},
|
|
139
|
-
};
|
|
140
|
-
if (typeof params.eInvoiceVerify === 'boolean') {
|
|
141
|
-
eInvoice['verify'] = params.eInvoiceVerify;
|
|
142
|
-
}
|
|
143
|
-
body['eInvoice'] = eInvoice;
|
|
144
|
-
}
|
|
145
|
-
const delivery = (_b = params.delivery) !== null && _b !== void 0 ? _b : { mode: 'download' };
|
|
146
|
-
const isBinary = delivery.mode === 'download';
|
|
147
|
-
if (delivery.mode === 'cloudStorage' && delivery.presignedUrl) {
|
|
148
|
-
body['cloudStorage'] = {
|
|
149
|
-
presignedUrl: delivery.presignedUrl,
|
|
150
|
-
};
|
|
151
|
-
}
|
|
152
|
-
if (delivery.mode === 'webhook' && delivery.webhook) {
|
|
153
|
-
body['webhook'] = delivery.webhook;
|
|
154
|
-
}
|
|
155
|
-
const merged = params.advanced && Object.keys(params.advanced).length > 0
|
|
156
|
-
? mergeDeep(body, params.advanced)
|
|
157
|
-
: body;
|
|
158
|
-
return {
|
|
159
|
-
endpoint,
|
|
160
|
-
body: merged,
|
|
161
|
-
isBinary,
|
|
162
|
-
};
|
|
163
|
-
}
|
|
164
|
-
/** Default output filename when the user did not set one. */
|
|
165
|
-
function defaultFilename(operation, imageType) {
|
|
166
|
-
if (operation === 'screenshot') {
|
|
167
|
-
const ext = imageType === 'jpeg' ? 'jpg' : (imageType !== null && imageType !== void 0 ? imageType : 'png');
|
|
168
|
-
return `screenshot.${ext}`;
|
|
169
|
-
}
|
|
170
|
-
return 'document.pdf';
|
|
171
|
-
}
|
|
172
|
-
//# sourceMappingURL=build-request-body.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"build-request-body.js","sourceRoot":"","sources":["../../../../src/lib/common/build-request-body.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { type HttpHeaders } from '@activepieces/pieces-common';
|
|
2
|
-
import type { PolyDocRequest } from './types';
|
|
3
|
-
export interface PolyDocResponse {
|
|
4
|
-
status: number;
|
|
5
|
-
headers: HttpHeaders;
|
|
6
|
-
body: unknown;
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* Perform an authenticated PolyDoc API call. Sets the Bearer token and the
|
|
10
|
-
* per-request X-Sandbox header, and requests bytes or JSON depending on the
|
|
11
|
-
* delivery mode. Returns the full response so callers can read binary bytes +
|
|
12
|
-
* headers or the JSON delivery confirmation.
|
|
13
|
-
*/
|
|
14
|
-
export declare function polyDocRequest(auth: any, request: PolyDocRequest): Promise<PolyDocResponse>;
|
|
15
|
-
/**
|
|
16
|
-
* Best-effort extraction of PolyDoc's `{ error, message }` from a thrown HTTP
|
|
17
|
-
* error, including the binary path where the error body arrives as bytes.
|
|
18
|
-
*/
|
|
19
|
-
export declare function extractApiErrorMessage(error: unknown): string | undefined;
|
|
20
|
-
//# 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,EAA0B,KAAK,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAEvF,OAAO,KAAK,EAAc,cAAc,EAAE,MAAM,SAAS,CAAC;AAG1D,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,WAAW,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;CACf;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,GAAG,EACT,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,eAAe,CAAC,CAc1B;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CA4BzE"}
|
package/src/lib/common/client.js
DELETED
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.polyDocRequest = polyDocRequest;
|
|
4
|
-
exports.extractApiErrorMessage = extractApiErrorMessage;
|
|
5
|
-
const tslib_1 = require("tslib");
|
|
6
|
-
const pieces_common_1 = require("@activepieces/pieces-common");
|
|
7
|
-
const constants_1 = require("./constants");
|
|
8
|
-
/**
|
|
9
|
-
* Perform an authenticated PolyDoc API call. Sets the Bearer token and the
|
|
10
|
-
* per-request X-Sandbox header, and requests bytes or JSON depending on the
|
|
11
|
-
* delivery mode. Returns the full response so callers can read binary bytes +
|
|
12
|
-
* headers or the JSON delivery confirmation.
|
|
13
|
-
*/
|
|
14
|
-
function polyDocRequest(auth, request) {
|
|
15
|
-
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
16
|
-
var _a;
|
|
17
|
-
const baseUrl = constants_1.DEFAULT_BASE_URL.replace(/\/+$/, '');
|
|
18
|
-
const res = yield pieces_common_1.httpClient.sendRequest({
|
|
19
|
-
method: pieces_common_1.HttpMethod.POST,
|
|
20
|
-
url: `${baseUrl}${request.endpoint}`,
|
|
21
|
-
headers: {
|
|
22
|
-
Authorization: `Bearer ${auth.props.apiKey}`,
|
|
23
|
-
'Content-Type': 'application/json',
|
|
24
|
-
'X-Sandbox': auth.props.sandbox ? 'true' : 'false',
|
|
25
|
-
},
|
|
26
|
-
body: request.body,
|
|
27
|
-
responseType: request.isBinary ? 'arraybuffer' : 'json',
|
|
28
|
-
});
|
|
29
|
-
return { status: res.status, headers: (_a = res.headers) !== null && _a !== void 0 ? _a : {}, body: res.body };
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Best-effort extraction of PolyDoc's `{ error, message }` from a thrown HTTP
|
|
34
|
-
* error, including the binary path where the error body arrives as bytes.
|
|
35
|
-
*/
|
|
36
|
-
function extractApiErrorMessage(error) {
|
|
37
|
-
var _a;
|
|
38
|
-
const err = error;
|
|
39
|
-
let payload = (_a = err === null || err === void 0 ? void 0 : err.response) === null || _a === void 0 ? void 0 : _a.body;
|
|
40
|
-
if (payload instanceof ArrayBuffer) {
|
|
41
|
-
payload = Buffer.from(payload).toString('utf8');
|
|
42
|
-
}
|
|
43
|
-
else if (Buffer.isBuffer(payload)) {
|
|
44
|
-
payload = payload.toString('utf8');
|
|
45
|
-
}
|
|
46
|
-
if (typeof payload === 'string') {
|
|
47
|
-
const text = payload;
|
|
48
|
-
try {
|
|
49
|
-
payload = JSON.parse(text);
|
|
50
|
-
}
|
|
51
|
-
catch (_b) {
|
|
52
|
-
return text || undefined;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
if (payload && typeof payload === 'object' && !Array.isArray(payload)) {
|
|
56
|
-
const p = payload;
|
|
57
|
-
const message = p['message'];
|
|
58
|
-
if (typeof message === 'string') {
|
|
59
|
-
return message;
|
|
60
|
-
}
|
|
61
|
-
const errorField = p['error'];
|
|
62
|
-
if (typeof errorField === 'string') {
|
|
63
|
-
return errorField;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
return undefined;
|
|
67
|
-
}
|
|
68
|
-
//# sourceMappingURL=client.js.map
|