@activepieces/piece-dumpling-ai 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 ADDED
@@ -0,0 +1,7 @@
1
+ # pieces-dumpling-ai
2
+
3
+ This library was generated with [Nx](https://nx.dev).
4
+
5
+ ## Building
6
+
7
+ Run `nx build pieces-dumpling-ai` to build the library.
package/package.json ADDED
@@ -0,0 +1,36 @@
1
+ {
2
+ "name": "@activepieces/piece-dumpling-ai",
3
+ "version": "0.0.1",
4
+ "dependencies": {
5
+ "@anthropic-ai/sdk": "0.39.0",
6
+ "@sinclair/typebox": "0.34.11",
7
+ "axios": "1.8.3",
8
+ "axios-retry": "4.4.1",
9
+ "deepmerge-ts": "7.1.0",
10
+ "mime-types": "2.1.35",
11
+ "nanoid": "3.3.8",
12
+ "openai": "4.67.1",
13
+ "replicate": "0.34.1",
14
+ "semver": "7.6.0",
15
+ "zod": "3.24.2",
16
+ "@activepieces/pieces-common": "0.4.6",
17
+ "@activepieces/pieces-framework": "0.9.0",
18
+ "@activepieces/shared": "0.11.0",
19
+ "tslib": "1.14.1"
20
+ },
21
+ "overrides": {
22
+ "cross-spawn": "7.0.6",
23
+ "@tryfabric/martian": {
24
+ "@notionhq/client": "$@notionhq/client"
25
+ },
26
+ "vite": {
27
+ "rollup": "npm:@rollup/wasm-node"
28
+ }
29
+ },
30
+ "resolutions": {
31
+ "rollup": "npm:@rollup/wasm-node"
32
+ },
33
+ "main": "./src/index.js",
34
+ "type": "commonjs",
35
+ "types": "./src/index.d.ts"
36
+ }
package/src/index.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export declare const dumplingAuth: import("@activepieces/pieces-framework").SecretTextProperty<true>;
2
+ export declare const dumplingAi: import("@activepieces/pieces-framework").Piece<import("@activepieces/pieces-framework").SecretTextProperty<true>>;
package/src/index.js ADDED
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.dumplingAi = exports.dumplingAuth = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const pieces_framework_1 = require("@activepieces/pieces-framework");
6
+ const actions_1 = require("./lib/actions");
7
+ const shared_1 = require("@activepieces/shared");
8
+ const pieces_common_1 = require("@activepieces/pieces-common");
9
+ exports.dumplingAuth = pieces_framework_1.PieceAuth.SecretText({
10
+ displayName: 'API Key',
11
+ required: true,
12
+ description: `
13
+ You can obtain API key from [API Section](https://app.dumplingai.com/api-keys).`,
14
+ validate: (_a) => tslib_1.__awaiter(void 0, [_a], void 0, function* ({ auth }) {
15
+ try {
16
+ yield pieces_common_1.httpClient.sendRequest({
17
+ url: 'https://app.dumplingai.com/api/v1/search',
18
+ method: pieces_common_1.HttpMethod.POST,
19
+ authentication: {
20
+ type: pieces_common_1.AuthenticationType.BEARER_TOKEN,
21
+ token: auth,
22
+ },
23
+ body: {
24
+ query: 'Activepieces',
25
+ },
26
+ });
27
+ return {
28
+ valid: true,
29
+ };
30
+ }
31
+ catch (e) {
32
+ return { valid: false, error: 'Invalid API Key.' };
33
+ }
34
+ }),
35
+ });
36
+ exports.dumplingAi = (0, pieces_framework_1.createPiece)({
37
+ displayName: 'Dumpling AI',
38
+ description: 'Transform unstructured website content into clean, AI-ready data',
39
+ auth: exports.dumplingAuth,
40
+ minimumSupportedRelease: '0.36.1',
41
+ logoUrl: 'https://cdn.activepieces.com/pieces/dumpling-ai.png',
42
+ authors: ['neo773'],
43
+ categories: [shared_1.PieceCategory.ARTIFICIAL_INTELLIGENCE, shared_1.PieceCategory.PRODUCTIVITY],
44
+ actions: [
45
+ actions_1.webSearch,
46
+ actions_1.searchNews,
47
+ actions_1.generateImage,
48
+ actions_1.scrapeWebsite,
49
+ actions_1.crawlWebsite,
50
+ actions_1.extractDocument,
51
+ (0, pieces_common_1.createCustomApiCallAction)({
52
+ baseUrl: () => 'https://app.dumplingai.com/api/v1',
53
+ auth: exports.dumplingAuth,
54
+ authMapping: (auth) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
55
+ return ({
56
+ Authorization: `Bearer ${auth}`,
57
+ });
58
+ }),
59
+ }),
60
+ ],
61
+ triggers: [],
62
+ });
63
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/pieces/community/dumpling-ai/src/index.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,2CAOuB;AACvB,iDAAqD;AACrD,+DAKqC;AAExB,QAAA,YAAY,GAAG,4BAAS,CAAC,UAAU,CAAC;IAChD,WAAW,EAAE,SAAS;IACtB,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE;kFACoE;IACjF,QAAQ,EAAE,KAAiB,EAAE,oDAAZ,EAAE,IAAI,EAAE;QACxB,IAAI,CAAC;YACJ,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC5B,GAAG,EAAE,0CAA0C;gBAC/C,MAAM,EAAE,0BAAU,CAAC,IAAI;gBACvB,cAAc,EAAE;oBACf,IAAI,EAAE,kCAAkB,CAAC,YAAY;oBACrC,KAAK,EAAE,IAAI;iBACX;gBACD,IAAI,EAAE;oBACL,KAAK,EAAE,cAAc;iBACrB;aACD,CAAC,CAAC;YAEH,OAAO;gBACN,KAAK,EAAE,IAAI;aACX,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC;QACpD,CAAC;IACF,CAAC,CAAA;CACD,CAAC,CAAC;AAEU,QAAA,UAAU,GAAG,IAAA,8BAAW,EAAC;IACrC,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAC,kEAAkE;IAC9E,IAAI,EAAE,oBAAY;IAClB,uBAAuB,EAAE,QAAQ;IACjC,OAAO,EAAE,qDAAqD;IAC9D,OAAO,EAAE,CAAC,QAAQ,CAAC;IACnB,UAAU,EAAE,CAAC,sBAAa,CAAC,uBAAuB,EAAE,sBAAa,CAAC,YAAY,CAAC;IAC/E,OAAO,EAAE;QACR,mBAAS;QACT,oBAAU;QACV,uBAAa;QACb,uBAAa;QACb,sBAAY;QACZ,yBAAe;QACf,IAAA,yCAAyB,EAAC;YACzB,OAAO,EAAE,GAAG,EAAE,CAAC,mCAAmC;YAClD,IAAI,EAAE,oBAAY;YAClB,WAAW,EAAE,CAAO,IAAI,EAAE,EAAE;gBAAC,OAAA,CAAC;oBAC7B,aAAa,EAAE,UAAU,IAAI,EAAE;iBAC/B,CAAC,CAAA;cAAA;SACF,CAAC;KACF;IACD,QAAQ,EAAE,EAAE;CACZ,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ export declare const crawlWebsite: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {
2
+ url: import("@activepieces/pieces-framework").ShortTextProperty<true>;
3
+ limit: import("@activepieces/pieces-framework").NumberProperty<false>;
4
+ depth: import("@activepieces/pieces-framework").NumberProperty<false>;
5
+ format: import("@activepieces/pieces-framework").StaticDropdownProperty<string, false>;
6
+ }>;
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.crawlWebsite = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const pieces_framework_1 = require("@activepieces/pieces-framework");
6
+ const pieces_common_1 = require("@activepieces/pieces-common");
7
+ const index_1 = require("../../index");
8
+ exports.crawlWebsite = (0, pieces_framework_1.createAction)({
9
+ name: 'crawl_website',
10
+ auth: index_1.dumplingAuth,
11
+ displayName: 'Crawl Website',
12
+ description: 'Crawl a website and return structured content from multiple pages.',
13
+ props: {
14
+ url: pieces_framework_1.Property.ShortText({
15
+ displayName: 'URL',
16
+ required: true,
17
+ description: 'The website URL to crawl.',
18
+ }),
19
+ limit: pieces_framework_1.Property.Number({
20
+ displayName: 'Page Limit',
21
+ required: false,
22
+ defaultValue: 5,
23
+ description: 'Maximum number of pages to crawl.',
24
+ }),
25
+ depth: pieces_framework_1.Property.Number({
26
+ displayName: 'Crawl Depth',
27
+ required: false,
28
+ defaultValue: 2,
29
+ description: 'Depth of crawling (distance between base URL path and sub paths).',
30
+ }),
31
+ format: pieces_framework_1.Property.StaticDropdown({
32
+ displayName: 'Output Format',
33
+ required: false,
34
+ defaultValue: 'markdown',
35
+ options: {
36
+ options: [
37
+ { label: 'Markdown', value: 'markdown' },
38
+ { label: 'Text', value: 'text' },
39
+ { label: 'Raw', value: 'raw' },
40
+ ],
41
+ },
42
+ description: 'Format of the output content.',
43
+ }),
44
+ },
45
+ run(context) {
46
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
47
+ const { url, limit, depth, format } = context.propsValue;
48
+ const requestBody = {
49
+ url,
50
+ };
51
+ // Add optional parameters if provided
52
+ if (limit !== undefined)
53
+ requestBody['limit'] = limit;
54
+ if (depth !== undefined)
55
+ requestBody['depth'] = depth;
56
+ if (format)
57
+ requestBody['format'] = format;
58
+ const response = yield pieces_common_1.httpClient.sendRequest({
59
+ method: pieces_common_1.HttpMethod.POST,
60
+ url: 'https://app.dumplingai.com/api/v1/crawl',
61
+ headers: {
62
+ 'Content-Type': 'application/json',
63
+ Authorization: `Bearer ${context.auth}`,
64
+ },
65
+ body: requestBody,
66
+ });
67
+ return response.body;
68
+ });
69
+ },
70
+ });
71
+ //# sourceMappingURL=crawl-website.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crawl-website.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/dumpling-ai/src/lib/actions/crawl-website.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,+DAAqE;AACrE,uCAA2C;AAE9B,QAAA,YAAY,GAAG,IAAA,+BAAY,EAAC;IACxC,IAAI,EAAE,eAAe;IACrB,IAAI,EAAE,oBAAY;IAClB,WAAW,EAAE,eAAe;IAC5B,WAAW,EAAE,oEAAoE;IACjF,KAAK,EAAE;QACN,GAAG,EAAE,2BAAQ,CAAC,SAAS,CAAC;YACvB,WAAW,EAAE,KAAK;YAClB,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,2BAA2B;SACxC,CAAC;QACF,KAAK,EAAE,2BAAQ,CAAC,MAAM,CAAC;YACtB,WAAW,EAAE,YAAY;YACzB,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,CAAC;YACf,WAAW,EAAE,mCAAmC;SAChD,CAAC;QACF,KAAK,EAAE,2BAAQ,CAAC,MAAM,CAAC;YACtB,WAAW,EAAE,aAAa;YAC1B,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,CAAC;YACf,WAAW,EAAE,mEAAmE;SAChF,CAAC;QACF,MAAM,EAAE,2BAAQ,CAAC,cAAc,CAAC;YAC/B,WAAW,EAAE,eAAe;YAC5B,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,UAAU;YACxB,OAAO,EAAE;gBACR,OAAO,EAAE;oBACR,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;oBACxC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;oBAChC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;iBAC9B;aACD;YACD,WAAW,EAAE,+BAA+B;SAC5C,CAAC;KACF;IACK,GAAG,CAAC,OAAO;;YAChB,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YAEzD,MAAM,WAAW,GAAwB;gBACxC,GAAG;aACH,CAAC;YAEF,sCAAsC;YACtC,IAAI,KAAK,KAAK,SAAS;gBAAE,WAAW,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC;YACtD,IAAI,KAAK,KAAK,SAAS;gBAAE,WAAW,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC;YACtD,IAAI,MAAM;gBAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;YAE3C,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC7C,MAAM,EAAE,0BAAU,CAAC,IAAI;gBACvB,GAAG,EAAE,yCAAyC;gBAC9C,OAAO,EAAE;oBACR,cAAc,EAAE,kBAAkB;oBAClC,aAAa,EAAE,UAAU,OAAO,CAAC,IAAI,EAAE;iBACvC;gBACD,IAAI,EAAE,WAAW;aACjB,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC,IAAI,CAAC;QACtB,CAAC;KAAA;CACD,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare const extractDocument: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {
2
+ file: import("@activepieces/pieces-framework").FileProperty<true>;
3
+ prompt: import("@activepieces/pieces-framework").LongTextProperty<true>;
4
+ jsonMode: import("@activepieces/pieces-framework").CheckboxProperty<false>;
5
+ }>;
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractDocument = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const pieces_framework_1 = require("@activepieces/pieces-framework");
6
+ const pieces_common_1 = require("@activepieces/pieces-common");
7
+ const index_1 = require("../../index");
8
+ exports.extractDocument = (0, pieces_framework_1.createAction)({
9
+ name: 'extract_document',
10
+ auth: index_1.dumplingAuth,
11
+ displayName: 'Extract Document Data',
12
+ description: 'Extract structured data from documents using vision-capable AI.',
13
+ props: {
14
+ file: pieces_framework_1.Property.File({
15
+ displayName: 'File',
16
+ required: true,
17
+ description: 'File URL or base64-encoded file.',
18
+ }),
19
+ prompt: pieces_framework_1.Property.LongText({
20
+ displayName: 'Extraction Prompt',
21
+ required: true,
22
+ description: 'The prompt describing what data to extract from the document.',
23
+ }),
24
+ jsonMode: pieces_framework_1.Property.Checkbox({
25
+ displayName: 'JSON Mode',
26
+ required: false,
27
+ defaultValue: false,
28
+ description: 'Whether to return the result in JSON format.',
29
+ }),
30
+ },
31
+ run(context) {
32
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
33
+ const { file, prompt, jsonMode } = context.propsValue;
34
+ const requestBody = {
35
+ inputMethod: 'base64',
36
+ files: [file.base64],
37
+ prompt,
38
+ };
39
+ // Add optional parameters if provided
40
+ if (jsonMode !== undefined)
41
+ requestBody['jsonMode'] = jsonMode;
42
+ const response = yield pieces_common_1.httpClient.sendRequest({
43
+ method: pieces_common_1.HttpMethod.POST,
44
+ url: 'https://app.dumplingai.com/api/v1/extract-document',
45
+ headers: {
46
+ 'Content-Type': 'application/json',
47
+ Authorization: `Bearer ${context.auth}`,
48
+ },
49
+ body: requestBody,
50
+ });
51
+ return response.body;
52
+ });
53
+ },
54
+ });
55
+ //# sourceMappingURL=extract-document.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extract-document.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/dumpling-ai/src/lib/actions/extract-document.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,+DAAqE;AACrE,uCAA2C;AAE9B,QAAA,eAAe,GAAG,IAAA,+BAAY,EAAC;IAC3C,IAAI,EAAE,kBAAkB;IACxB,IAAI,EAAE,oBAAY;IAClB,WAAW,EAAE,uBAAuB;IACpC,WAAW,EAAE,iEAAiE;IAC9E,KAAK,EAAE;QACN,IAAI,EAAE,2BAAQ,CAAC,IAAI,CAAC;YACnB,WAAW,EAAE,MAAM;YACnB,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,kCAAkC;SAC/C,CAAC;QACF,MAAM,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YACzB,WAAW,EAAE,mBAAmB;YAChC,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,+DAA+D;SAC5E,CAAC;QACF,QAAQ,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YAC3B,WAAW,EAAE,WAAW;YACxB,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,KAAK;YACnB,WAAW,EAAE,8CAA8C;SAC3D,CAAC;KACF;IACK,GAAG,CAAC,OAAO;;YAChB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YAEtD,MAAM,WAAW,GAAwB;gBACxC,WAAW,EAAE,QAAQ;gBACrB,KAAK,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;gBACpB,MAAM;aACN,CAAC;YAEF,sCAAsC;YACtC,IAAI,QAAQ,KAAK,SAAS;gBAAE,WAAW,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;YAE/D,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC7C,MAAM,EAAE,0BAAU,CAAC,IAAI;gBACvB,GAAG,EAAE,oDAAoD;gBACzD,OAAO,EAAE;oBACR,cAAc,EAAE,kBAAkB;oBAClC,aAAa,EAAE,UAAU,OAAO,CAAC,IAAI,EAAE;iBACvC;gBACD,IAAI,EAAE,WAAW;aACjB,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC,IAAI,CAAC;QACtB,CAAC;KAAA;CACD,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ export declare const generateImage: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {
2
+ model: import("@activepieces/pieces-framework").StaticDropdownProperty<string, true>;
3
+ prompt: import("@activepieces/pieces-framework").LongTextProperty<true>;
4
+ aspect_ratio: import("@activepieces/pieces-framework").StaticDropdownProperty<string, false>;
5
+ num_outputs: import("@activepieces/pieces-framework").NumberProperty<false>;
6
+ seed: import("@activepieces/pieces-framework").NumberProperty<false>;
7
+ output_format: import("@activepieces/pieces-framework").StaticDropdownProperty<string, false>;
8
+ }>;
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateImage = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const pieces_framework_1 = require("@activepieces/pieces-framework");
6
+ const pieces_common_1 = require("@activepieces/pieces-common");
7
+ const index_1 = require("../../index");
8
+ exports.generateImage = (0, pieces_framework_1.createAction)({
9
+ name: 'generate_image',
10
+ auth: index_1.dumplingAuth,
11
+ displayName: 'Generate Image',
12
+ description: 'Generate images based on a text prompt using AI.',
13
+ props: {
14
+ model: pieces_framework_1.Property.StaticDropdown({
15
+ displayName: 'Model',
16
+ required: true,
17
+ description: 'The model to use for image generation',
18
+ defaultValue: 'FLUX.1-schnell',
19
+ options: {
20
+ options: [
21
+ { label: 'FLUX.1-schnell', value: 'FLUX.1-schnell' },
22
+ { label: 'FLUX.1-dev', value: 'FLUX.1-dev' },
23
+ { label: 'FLUX.1-pro', value: 'FLUX.1-pro' },
24
+ { label: 'FLUX.1.1-pro', value: 'FLUX.1.1-pro' },
25
+ { label: 'recraft-v3', value: 'recraft-v3' },
26
+ ],
27
+ },
28
+ }),
29
+ prompt: pieces_framework_1.Property.LongText({
30
+ displayName: 'Prompt',
31
+ required: true,
32
+ description: 'The text prompt for image generation',
33
+ }),
34
+ aspect_ratio: pieces_framework_1.Property.StaticDropdown({
35
+ displayName: 'Aspect Ratio',
36
+ required: false,
37
+ description: 'Aspect ratio of the generated image',
38
+ defaultValue: '1:1',
39
+ options: {
40
+ options: [
41
+ { label: 'Square (1:1)', value: '1:1' },
42
+ { label: 'Landscape 16:9', value: '16:9' },
43
+ { label: 'Landscape 21:9', value: '21:9' },
44
+ { label: 'Landscape 3:2', value: '3:2' },
45
+ { label: 'Landscape 4:3', value: '4:3' },
46
+ { label: 'Portrait 2:3', value: '2:3' },
47
+ { label: 'Portrait 3:4', value: '3:4' },
48
+ { label: 'Portrait 4:5', value: '4:5' },
49
+ { label: 'Portrait 9:16', value: '9:16' },
50
+ { label: 'Portrait 9:21', value: '9:21' },
51
+ ],
52
+ },
53
+ }),
54
+ num_outputs: pieces_framework_1.Property.Number({
55
+ displayName: 'Number of Images',
56
+ required: false,
57
+ defaultValue: 1,
58
+ description: 'Number of images to generate (1-4)',
59
+ }),
60
+ seed: pieces_framework_1.Property.Number({
61
+ displayName: 'Seed',
62
+ required: false,
63
+ description: 'Seed for reproducible results',
64
+ }),
65
+ output_format: pieces_framework_1.Property.StaticDropdown({
66
+ displayName: 'Output Format',
67
+ required: false,
68
+ description: 'Format of the generated image',
69
+ defaultValue: 'webp',
70
+ options: {
71
+ options: [
72
+ { label: 'WebP', value: 'webp' },
73
+ { label: 'JPG', value: 'jpg' },
74
+ { label: 'PNG', value: 'png' },
75
+ ],
76
+ },
77
+ }),
78
+ },
79
+ run(context) {
80
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
81
+ const { model, prompt, aspect_ratio, num_outputs, seed, output_format } = context.propsValue;
82
+ // Prepare the input object based on the selected model
83
+ const input = {
84
+ prompt: prompt,
85
+ };
86
+ // Add common optional parameters
87
+ if (seed !== undefined)
88
+ input['seed'] = seed;
89
+ if (aspect_ratio)
90
+ input['aspect_ratio'] = aspect_ratio;
91
+ if (num_outputs)
92
+ input['num_outputs'] = num_outputs;
93
+ if (output_format)
94
+ input['output_format'] = output_format;
95
+ const requestBody = {
96
+ model: model,
97
+ input: input,
98
+ };
99
+ const response = yield pieces_common_1.httpClient.sendRequest({
100
+ method: pieces_common_1.HttpMethod.POST,
101
+ url: 'https://app.dumplingai.com/api/v1/generate-ai-image',
102
+ headers: {
103
+ 'Content-Type': 'application/json',
104
+ Authorization: `Bearer ${context.auth}`,
105
+ },
106
+ body: requestBody,
107
+ });
108
+ return response.body;
109
+ });
110
+ },
111
+ });
112
+ //# sourceMappingURL=generate-image.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-image.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/dumpling-ai/src/lib/actions/generate-image.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { webSearch } from './web-search';
2
+ import { searchNews } from './search-news';
3
+ import { generateImage } from './generate-image';
4
+ import { scrapeWebsite } from './scrape-website';
5
+ import { crawlWebsite } from './crawl-website';
6
+ import { extractDocument } from './extract-document';
7
+ export { webSearch, searchNews, generateImage, scrapeWebsite, crawlWebsite, extractDocument };
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extractDocument = exports.crawlWebsite = exports.scrapeWebsite = exports.generateImage = exports.searchNews = exports.webSearch = void 0;
4
+ const web_search_1 = require("./web-search");
5
+ Object.defineProperty(exports, "webSearch", { enumerable: true, get: function () { return web_search_1.webSearch; } });
6
+ const search_news_1 = require("./search-news");
7
+ Object.defineProperty(exports, "searchNews", { enumerable: true, get: function () { return search_news_1.searchNews; } });
8
+ const generate_image_1 = require("./generate-image");
9
+ Object.defineProperty(exports, "generateImage", { enumerable: true, get: function () { return generate_image_1.generateImage; } });
10
+ const scrape_website_1 = require("./scrape-website");
11
+ Object.defineProperty(exports, "scrapeWebsite", { enumerable: true, get: function () { return scrape_website_1.scrapeWebsite; } });
12
+ const crawl_website_1 = require("./crawl-website");
13
+ Object.defineProperty(exports, "crawlWebsite", { enumerable: true, get: function () { return crawl_website_1.crawlWebsite; } });
14
+ const extract_document_1 = require("./extract-document");
15
+ Object.defineProperty(exports, "extractDocument", { enumerable: true, get: function () { return extract_document_1.extractDocument; } });
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/dumpling-ai/src/lib/actions/index.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AAOhC,0FAPA,sBAAS,OAOA;AANlB,+CAA2C;AAMvB,2FANX,wBAAU,OAMW;AAL9B,qDAAiD;AAKjB,8FALvB,8BAAa,OAKuB;AAJ7C,qDAAiD;AAIF,8FAJtC,8BAAa,OAIsC;AAH5D,mDAA+C;AAGe,6FAHrD,4BAAY,OAGqD;AAF1E,yDAAqD;AAEuB,gGAFnE,kCAAe,OAEmE"}
@@ -0,0 +1,6 @@
1
+ export declare const scrapeWebsite: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {
2
+ url: import("@activepieces/pieces-framework").ShortTextProperty<true>;
3
+ format: import("@activepieces/pieces-framework").StaticDropdownProperty<string, false>;
4
+ cleaned: import("@activepieces/pieces-framework").CheckboxProperty<false>;
5
+ renderJs: import("@activepieces/pieces-framework").CheckboxProperty<false>;
6
+ }>;
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.scrapeWebsite = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const pieces_framework_1 = require("@activepieces/pieces-framework");
6
+ const pieces_common_1 = require("@activepieces/pieces-common");
7
+ const index_1 = require("../../index");
8
+ exports.scrapeWebsite = (0, pieces_framework_1.createAction)({
9
+ name: 'scrape_website',
10
+ auth: index_1.dumplingAuth,
11
+ displayName: 'Scrape Website',
12
+ description: 'Scrapes data from a specified URL and format the result.',
13
+ props: {
14
+ url: pieces_framework_1.Property.ShortText({
15
+ displayName: 'URL',
16
+ required: true,
17
+ }),
18
+ format: pieces_framework_1.Property.StaticDropdown({
19
+ displayName: 'Output Format',
20
+ required: false,
21
+ defaultValue: 'markdown',
22
+ options: {
23
+ options: [
24
+ { label: 'Markdown', value: 'markdown' },
25
+ { label: 'HTML', value: 'html' },
26
+ { label: 'Screenshot', value: 'screenshot' },
27
+ ],
28
+ },
29
+ description: 'The format of the output',
30
+ }),
31
+ cleaned: pieces_framework_1.Property.Checkbox({
32
+ displayName: 'Clean Output ?',
33
+ required: false,
34
+ defaultValue: true,
35
+ description: 'Whether the output should be cleaned.',
36
+ }),
37
+ renderJs: pieces_framework_1.Property.Checkbox({
38
+ displayName: 'Render JavaScript ?',
39
+ required: false,
40
+ defaultValue: true,
41
+ description: 'Whether to render JavaScript before scraping.',
42
+ }),
43
+ },
44
+ run(context) {
45
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
46
+ const { url, format, cleaned, renderJs } = context.propsValue;
47
+ const requestBody = {
48
+ url,
49
+ };
50
+ // Add optional parameters if provided
51
+ if (format)
52
+ requestBody['format'] = format;
53
+ if (cleaned !== undefined)
54
+ requestBody['cleaned'] = cleaned;
55
+ if (renderJs !== undefined)
56
+ requestBody['renderJs'] = renderJs;
57
+ const response = yield pieces_common_1.httpClient.sendRequest({
58
+ method: pieces_common_1.HttpMethod.POST,
59
+ url: 'https://app.dumplingai.com/api/v1/scrape',
60
+ headers: {
61
+ 'Content-Type': 'application/json',
62
+ Authorization: `Bearer ${context.auth}`,
63
+ },
64
+ body: requestBody,
65
+ });
66
+ return response.body;
67
+ });
68
+ },
69
+ });
70
+ //# sourceMappingURL=scrape-website.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scrape-website.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/dumpling-ai/src/lib/actions/scrape-website.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,+DAAqE;AACrE,uCAA2C;AAE9B,QAAA,aAAa,GAAG,IAAA,+BAAY,EAAC;IACzC,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE,oBAAY;IAClB,WAAW,EAAE,gBAAgB;IAC7B,WAAW,EAAE,0DAA0D;IACvE,KAAK,EAAE;QACN,GAAG,EAAE,2BAAQ,CAAC,SAAS,CAAC;YACvB,WAAW,EAAE,KAAK;YAClB,QAAQ,EAAE,IAAI;SACd,CAAC;QACF,MAAM,EAAE,2BAAQ,CAAC,cAAc,CAAC;YAC/B,WAAW,EAAE,eAAe;YAC5B,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,UAAU;YACxB,OAAO,EAAE;gBACR,OAAO,EAAE;oBACR,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;oBACxC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;oBAChC,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE;iBAC5C;aACD;YACD,WAAW,EAAE,0BAA0B;SACvC,CAAC;QACF,OAAO,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YAC1B,WAAW,EAAE,gBAAgB;YAC7B,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,uCAAuC;SACpD,CAAC;QACF,QAAQ,EAAE,2BAAQ,CAAC,QAAQ,CAAC;YAC3B,WAAW,EAAE,qBAAqB;YAClC,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,+CAA+C;SAC5D,CAAC;KACF;IACK,GAAG,CAAC,OAAO;;YAChB,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YAE9D,MAAM,WAAW,GAAwB;gBACxC,GAAG;aACH,CAAC;YAEF,sCAAsC;YACtC,IAAI,MAAM;gBAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;YAC3C,IAAI,OAAO,KAAK,SAAS;gBAAE,WAAW,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC;YAC5D,IAAI,QAAQ,KAAK,SAAS;gBAAE,WAAW,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;YAE/D,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC7C,MAAM,EAAE,0BAAU,CAAC,IAAI;gBACvB,GAAG,EAAE,0CAA0C;gBAC/C,OAAO,EAAE;oBACR,cAAc,EAAE,kBAAkB;oBAClC,aAAa,EAAE,UAAU,OAAO,CAAC,IAAI,EAAE;iBACvC;gBACD,IAAI,EAAE,WAAW;aACjB,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC,IAAI,CAAC;QACtB,CAAC;KAAA;CACD,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ export declare const searchNews: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {
2
+ query: import("@activepieces/pieces-framework").ShortTextProperty<true>;
3
+ country: import("@activepieces/pieces-framework").ShortTextProperty<false>;
4
+ location: import("@activepieces/pieces-framework").ShortTextProperty<false>;
5
+ language: import("@activepieces/pieces-framework").ShortTextProperty<false>;
6
+ dateRange: import("@activepieces/pieces-framework").StaticDropdownProperty<string, false>;
7
+ page: import("@activepieces/pieces-framework").NumberProperty<false>;
8
+ }>;
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.searchNews = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const pieces_framework_1 = require("@activepieces/pieces-framework");
6
+ const pieces_common_1 = require("@activepieces/pieces-common");
7
+ const index_1 = require("../../index");
8
+ exports.searchNews = (0, pieces_framework_1.createAction)({
9
+ name: 'search_news',
10
+ auth: index_1.dumplingAuth,
11
+ displayName: 'Search News',
12
+ description: 'Search for news articles using Google News.',
13
+ props: {
14
+ query: pieces_framework_1.Property.ShortText({
15
+ displayName: 'Search Query',
16
+ required: true,
17
+ description: 'The search query for Google News.',
18
+ }),
19
+ country: pieces_framework_1.Property.ShortText({
20
+ displayName: 'Country',
21
+ required: false,
22
+ description: 'Country code for location bias (e.g., "US" for United States).',
23
+ }),
24
+ location: pieces_framework_1.Property.ShortText({
25
+ displayName: 'Location',
26
+ required: false,
27
+ description: 'Specific location to focus the search (e.g., "New York, NY").',
28
+ }),
29
+ language: pieces_framework_1.Property.ShortText({
30
+ displayName: 'Language',
31
+ required: false,
32
+ description: 'Language code for the search results (e.g., "en" for English).',
33
+ }),
34
+ dateRange: pieces_framework_1.Property.StaticDropdown({
35
+ displayName: 'Date Range',
36
+ required: false,
37
+ options: {
38
+ options: [
39
+ { label: 'Any Time', value: 'anyTime' },
40
+ { label: 'Past Hour', value: 'pastHour' },
41
+ { label: 'Past Day', value: 'pastDay' },
42
+ { label: 'Past Week', value: 'pastWeek' },
43
+ { label: 'Past Month', value: 'pastMonth' },
44
+ { label: 'Past Year', value: 'pastYear' },
45
+ ],
46
+ },
47
+ description: 'Filter results by date.',
48
+ }),
49
+ page: pieces_framework_1.Property.Number({
50
+ displayName: 'Page Number',
51
+ required: false,
52
+ description: 'Page number for paginated results.',
53
+ }),
54
+ },
55
+ run(context) {
56
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
57
+ const { query, country, location, language, dateRange, page } = context.propsValue;
58
+ const requestBody = {
59
+ query,
60
+ };
61
+ // Add optional parameters if provided
62
+ if (country)
63
+ requestBody['country'] = country;
64
+ if (location)
65
+ requestBody['location'] = location;
66
+ if (language)
67
+ requestBody['language'] = language;
68
+ if (dateRange)
69
+ requestBody['dateRange'] = dateRange;
70
+ if (page)
71
+ requestBody['page'] = page;
72
+ const response = yield pieces_common_1.httpClient.sendRequest({
73
+ method: pieces_common_1.HttpMethod.POST,
74
+ url: 'https://app.dumplingai.com/api/v1/search-news',
75
+ headers: {
76
+ 'Content-Type': 'application/json',
77
+ Authorization: `Bearer ${context.auth}`,
78
+ },
79
+ body: requestBody,
80
+ });
81
+ return response.body;
82
+ });
83
+ },
84
+ });
85
+ //# sourceMappingURL=search-news.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-news.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/dumpling-ai/src/lib/actions/search-news.ts"],"names":[],"mappings":";;;;AAAA,qEAAwE;AACxE,+DAAqE;AACrE,uCAA2C;AAE9B,QAAA,UAAU,GAAG,IAAA,+BAAY,EAAC;IACtC,IAAI,EAAE,aAAa;IACnB,IAAI,EAAE,oBAAY;IAClB,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,6CAA6C;IAC1D,KAAK,EAAE;QACN,KAAK,EAAE,2BAAQ,CAAC,SAAS,CAAC;YACzB,WAAW,EAAE,cAAc;YAC3B,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,mCAAmC;SAChD,CAAC;QACF,OAAO,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC3B,WAAW,EAAE,SAAS;YACtB,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,gEAAgE;SAC7E,CAAC;QACF,QAAQ,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC5B,WAAW,EAAE,UAAU;YACvB,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,+DAA+D;SAC5E,CAAC;QACF,QAAQ,EAAE,2BAAQ,CAAC,SAAS,CAAC;YAC5B,WAAW,EAAE,UAAU;YACvB,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,gEAAgE;SAC7E,CAAC;QACF,SAAS,EAAE,2BAAQ,CAAC,cAAc,CAAC;YAClC,WAAW,EAAE,YAAY;YACzB,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE;gBACR,OAAO,EAAE;oBACR,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE;oBACvC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE;oBACzC,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE;oBACvC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE;oBACzC,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE;oBAC3C,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE;iBACzC;aACD;YACD,WAAW,EAAE,yBAAyB;SACtC,CAAC;QACF,IAAI,EAAE,2BAAQ,CAAC,MAAM,CAAC;YACrB,WAAW,EAAE,aAAa;YAC1B,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,oCAAoC;SACjD,CAAC;KACF;IACK,GAAG,CAAC,OAAO;;YAChB,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;YAEnF,MAAM,WAAW,GAAwB;gBACxC,KAAK;aACL,CAAC;YAEF,sCAAsC;YACtC,IAAI,OAAO;gBAAE,WAAW,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC;YAC9C,IAAI,QAAQ;gBAAE,WAAW,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;YACjD,IAAI,QAAQ;gBAAE,WAAW,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;YACjD,IAAI,SAAS;gBAAE,WAAW,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC;YACpD,IAAI,IAAI;gBAAE,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;YAErC,MAAM,QAAQ,GAAG,MAAM,0BAAU,CAAC,WAAW,CAAC;gBAC7C,MAAM,EAAE,0BAAU,CAAC,IAAI;gBACvB,GAAG,EAAE,+CAA+C;gBACpD,OAAO,EAAE;oBACR,cAAc,EAAE,kBAAkB;oBAClC,aAAa,EAAE,UAAU,OAAO,CAAC,IAAI,EAAE;iBACvC;gBACD,IAAI,EAAE,WAAW;aACjB,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC,IAAI,CAAC;QACtB,CAAC;KAAA;CACD,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ export declare const webSearch: import("@activepieces/pieces-framework").IAction<import("@activepieces/pieces-framework").SecretTextProperty<true>, {
2
+ query: import("@activepieces/pieces-framework").ShortTextProperty<true>;
3
+ country: import("@activepieces/pieces-framework").ShortTextProperty<false>;
4
+ location: import("@activepieces/pieces-framework").ShortTextProperty<false>;
5
+ language: import("@activepieces/pieces-framework").ShortTextProperty<false>;
6
+ dateRange: import("@activepieces/pieces-framework").StaticDropdownProperty<string, false>;
7
+ page: import("@activepieces/pieces-framework").NumberProperty<false>;
8
+ scrapeResults: import("@activepieces/pieces-framework").CheckboxProperty<false>;
9
+ numResultsToScrape: import("@activepieces/pieces-framework").NumberProperty<false>;
10
+ scrapeFormat: import("@activepieces/pieces-framework").StaticDropdownProperty<string, false>;
11
+ cleanedOutput: import("@activepieces/pieces-framework").CheckboxProperty<false>;
12
+ }>;
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.webSearch = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const pieces_framework_1 = require("@activepieces/pieces-framework");
6
+ const pieces_common_1 = require("@activepieces/pieces-common");
7
+ const index_1 = require("../../index");
8
+ exports.webSearch = (0, pieces_framework_1.createAction)({
9
+ name: 'web_search',
10
+ auth: index_1.dumplingAuth,
11
+ displayName: 'Web Search',
12
+ description: 'Search the web and optionally retrieve content from top results.',
13
+ props: {
14
+ query: pieces_framework_1.Property.ShortText({
15
+ displayName: 'Search Query',
16
+ required: true,
17
+ }),
18
+ country: pieces_framework_1.Property.ShortText({
19
+ displayName: 'Country',
20
+ required: false,
21
+ description: 'Two-letter country code for location bias (e.g., "US" for United States).',
22
+ }),
23
+ location: pieces_framework_1.Property.ShortText({
24
+ displayName: 'Location',
25
+ required: false,
26
+ description: 'Specific location to focus the search (e.g., "New York, NY").',
27
+ }),
28
+ language: pieces_framework_1.Property.ShortText({
29
+ displayName: 'Language',
30
+ required: false,
31
+ description: 'Language code for the search results (e.g., "en" for English).',
32
+ }),
33
+ dateRange: pieces_framework_1.Property.StaticDropdown({
34
+ displayName: 'Date Range',
35
+ required: false,
36
+ options: {
37
+ options: [
38
+ { label: 'Any Time', value: 'anyTime' },
39
+ { label: 'Past Hour', value: 'pastHour' },
40
+ { label: 'Past Day', value: 'pastDay' },
41
+ { label: 'Past Week', value: 'pastWeek' },
42
+ { label: 'Past Month', value: 'pastMonth' },
43
+ { label: 'Past Year', value: 'pastYear' },
44
+ ],
45
+ },
46
+ description: 'Filter results by date.',
47
+ }),
48
+ page: pieces_framework_1.Property.Number({
49
+ displayName: 'Page Number',
50
+ required: false,
51
+ description: 'Page number for paginated results.',
52
+ }),
53
+ scrapeResults: pieces_framework_1.Property.Checkbox({
54
+ displayName: 'Scrape Results',
55
+ required: false,
56
+ defaultValue: false,
57
+ description: 'Whether to scrape top search results.',
58
+ }),
59
+ numResultsToScrape: pieces_framework_1.Property.Number({
60
+ displayName: 'Number of Results to Scrape',
61
+ required: false,
62
+ defaultValue: 3,
63
+ description: 'Number of top results to scrape (max: 10).',
64
+ }),
65
+ scrapeFormat: pieces_framework_1.Property.StaticDropdown({
66
+ displayName: 'Scrape Format',
67
+ required: false,
68
+ defaultValue: 'markdown',
69
+ options: {
70
+ options: [
71
+ { label: 'Markdown', value: 'markdown' },
72
+ { label: 'HTML', value: 'html' },
73
+ { label: 'Screenshot', value: 'screenshot' },
74
+ ],
75
+ },
76
+ description: 'Format of scraped content',
77
+ }),
78
+ cleanedOutput: pieces_framework_1.Property.Checkbox({
79
+ displayName: 'Clean Output',
80
+ required: false,
81
+ defaultValue: true,
82
+ description: 'Whether the scraped output should be cleaned.',
83
+ }),
84
+ },
85
+ run(context) {
86
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
87
+ const { query, country, location, language, dateRange, page, scrapeResults, numResultsToScrape, scrapeFormat, cleanedOutput, } = context.propsValue;
88
+ const requestBody = {
89
+ query,
90
+ };
91
+ // Add optional parameters if provided
92
+ if (country)
93
+ requestBody['country'] = country;
94
+ if (location)
95
+ requestBody['location'] = location;
96
+ if (language)
97
+ requestBody['language'] = language;
98
+ if (dateRange)
99
+ requestBody['dateRange'] = dateRange;
100
+ if (page)
101
+ requestBody['page'] = page;
102
+ if (scrapeResults !== undefined)
103
+ requestBody['scrapeResults'] = scrapeResults;
104
+ if (numResultsToScrape)
105
+ requestBody['numResultsToScrape'] = numResultsToScrape;
106
+ // Add scrape options if scraping is enabled
107
+ if (scrapeResults) {
108
+ requestBody['scrapeOptions'] = {};
109
+ if (scrapeFormat)
110
+ requestBody['scrapeOptions']['format'] = scrapeFormat;
111
+ if (cleanedOutput !== undefined)
112
+ requestBody['scrapeOptions']['cleaned'] = cleanedOutput;
113
+ }
114
+ const response = yield pieces_common_1.httpClient.sendRequest({
115
+ method: pieces_common_1.HttpMethod.POST,
116
+ url: 'https://app.dumplingai.com/api/v1/search',
117
+ headers: {
118
+ 'Content-Type': 'application/json',
119
+ Authorization: `Bearer ${context.auth}`,
120
+ },
121
+ body: requestBody,
122
+ });
123
+ return response.body;
124
+ });
125
+ },
126
+ });
127
+ //# sourceMappingURL=web-search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web-search.js","sourceRoot":"","sources":["../../../../../../../../packages/pieces/community/dumpling-ai/src/lib/actions/web-search.ts"],"names":[],"mappings":"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"}