@keystrokehq/scrapingant 0.1.4 → 0.1.6

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.
Files changed (69) hide show
  1. package/dist/action.cjs.map +1 -1
  2. package/dist/action.mjs.map +1 -1
  3. package/dist/actions/extract-content-as-markdown.cjs +1 -0
  4. package/dist/actions/extract-content-as-markdown.cjs.map +1 -1
  5. package/dist/actions/extract-content-as-markdown.d.cts +3 -12
  6. package/dist/actions/extract-content-as-markdown.d.cts.map +1 -1
  7. package/dist/actions/extract-content-as-markdown.d.mts +3 -12
  8. package/dist/actions/extract-content-as-markdown.d.mts.map +1 -1
  9. package/dist/actions/extract-content-as-markdown.mjs +1 -0
  10. package/dist/actions/extract-content-as-markdown.mjs.map +1 -1
  11. package/dist/actions/extract-data-with-ai.cjs +1 -0
  12. package/dist/actions/extract-data-with-ai.cjs.map +1 -1
  13. package/dist/actions/extract-data-with-ai.d.cts +3 -10
  14. package/dist/actions/extract-data-with-ai.d.cts.map +1 -1
  15. package/dist/actions/extract-data-with-ai.d.mts +3 -10
  16. package/dist/actions/extract-data-with-ai.d.mts.map +1 -1
  17. package/dist/actions/extract-data-with-ai.mjs +1 -0
  18. package/dist/actions/extract-data-with-ai.mjs.map +1 -1
  19. package/dist/actions/get-api-credits-usage.cjs +1 -0
  20. package/dist/actions/get-api-credits-usage.cjs.map +1 -1
  21. package/dist/actions/get-api-credits-usage.d.cts +3 -1
  22. package/dist/actions/get-api-credits-usage.d.cts.map +1 -1
  23. package/dist/actions/get-api-credits-usage.d.mts +3 -1
  24. package/dist/actions/get-api-credits-usage.d.mts.map +1 -1
  25. package/dist/actions/get-api-credits-usage.mjs +1 -0
  26. package/dist/actions/get-api-credits-usage.mjs.map +1 -1
  27. package/dist/actions/scrape-web-page.cjs +1 -0
  28. package/dist/actions/scrape-web-page.cjs.map +1 -1
  29. package/dist/actions/scrape-web-page.d.cts +3 -11
  30. package/dist/actions/scrape-web-page.d.cts.map +1 -1
  31. package/dist/actions/scrape-web-page.d.mts +3 -11
  32. package/dist/actions/scrape-web-page.d.mts.map +1 -1
  33. package/dist/actions/scrape-web-page.mjs +1 -0
  34. package/dist/actions/scrape-web-page.mjs.map +1 -1
  35. package/dist/actions/scrape-webpage-post.cjs +1 -0
  36. package/dist/actions/scrape-webpage-post.cjs.map +1 -1
  37. package/dist/actions/scrape-webpage-post.d.cts +3 -12
  38. package/dist/actions/scrape-webpage-post.d.cts.map +1 -1
  39. package/dist/actions/scrape-webpage-post.d.mts +3 -12
  40. package/dist/actions/scrape-webpage-post.d.mts.map +1 -1
  41. package/dist/actions/scrape-webpage-post.mjs +1 -0
  42. package/dist/actions/scrape-webpage-post.mjs.map +1 -1
  43. package/dist/actions/scrape-webpage-put.cjs +1 -0
  44. package/dist/actions/scrape-webpage-put.cjs.map +1 -1
  45. package/dist/actions/scrape-webpage-put.d.cts +3 -13
  46. package/dist/actions/scrape-webpage-put.d.cts.map +1 -1
  47. package/dist/actions/scrape-webpage-put.d.mts +3 -13
  48. package/dist/actions/scrape-webpage-put.d.mts.map +1 -1
  49. package/dist/actions/scrape-webpage-put.mjs +1 -0
  50. package/dist/actions/scrape-webpage-put.mjs.map +1 -1
  51. package/dist/actions/scrape-with-extended-json-output.cjs +1 -0
  52. package/dist/actions/scrape-with-extended-json-output.cjs.map +1 -1
  53. package/dist/actions/scrape-with-extended-json-output.d.cts +3 -10
  54. package/dist/actions/scrape-with-extended-json-output.d.cts.map +1 -1
  55. package/dist/actions/scrape-with-extended-json-output.d.mts +3 -10
  56. package/dist/actions/scrape-with-extended-json-output.d.mts.map +1 -1
  57. package/dist/actions/scrape-with-extended-json-output.mjs +1 -0
  58. package/dist/actions/scrape-with-extended-json-output.mjs.map +1 -1
  59. package/dist/app.cjs +5 -2
  60. package/dist/app.cjs.map +1 -1
  61. package/dist/app.d.cts +7 -1
  62. package/dist/app.d.cts.map +1 -1
  63. package/dist/app.d.mts +7 -1
  64. package/dist/app.d.mts.map +1 -1
  65. package/dist/app.mjs +3 -2
  66. package/dist/app.mjs.map +1 -1
  67. package/dist/index.d.cts +1 -1
  68. package/dist/index.d.mts +1 -1
  69. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"action.cjs","names":["scrapingant","executeScrapingantTool"],"sources":["../src/action.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { scrapingant } from \"./app\";\nimport { executeScrapingantTool } from \"./execute\";\n\n/** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */\nexport function action<TInput extends z.ZodType>(\n tool: string,\n def: {\n slug: string;\n name: string;\n description: string;\n input: TInput;\n output: z.ZodType;\n },\n) {\n return scrapingant.action({\n slug: def.slug,\n name: def.name,\n description: def.description,\n input: def.input,\n output: def.output as z.ZodTypeAny,\n async run(input) {\n return def.output.parse(await executeScrapingantTool(tool, input as Record<string, unknown>));\n },\n });\n}\n"],"mappings":";;;;;AAMA,SAAgB,OACd,MACA,KAOA;CACA,OAAOA,YAAAA,YAAY,OAAO;EACxB,MAAM,IAAI;EACV,MAAM,IAAI;EACV,aAAa,IAAI;EACjB,OAAO,IAAI;EACX,QAAQ,IAAI;EACZ,MAAM,IAAI,OAAO;GACf,OAAO,IAAI,OAAO,MAAM,MAAMC,gBAAAA,uBAAuB,MAAM,KAAgC,CAAC;EAC9F;CACF,CAAC;AACH"}
1
+ {"version":3,"file":"action.cjs","names":["scrapingant","executeScrapingantTool"],"sources":["../src/action.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { scrapingant } from \"./app\";\nimport { executeScrapingantTool } from \"./execute\";\n\n/** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */\nexport function action<TInput extends z.ZodType, TOutput extends z.ZodType>(\n tool: string,\n def: {\n slug: string;\n name: string;\n description: string;\n input: TInput;\n output: TOutput;\n },\n): AppAction<TInput, TOutput, typeof scrapingant.credential> {\n return scrapingant.action({\n slug: def.slug,\n name: def.name,\n description: def.description,\n input: def.input,\n output: def.output,\n async run(input) {\n return def.output.parse(await executeScrapingantTool(tool, input as Record<string, unknown>));\n },\n });\n}\n"],"mappings":";;;;;AAOA,SAAgB,OACd,MACA,KAO2D;CAC3D,OAAOA,YAAAA,YAAY,OAAO;EACxB,MAAM,IAAI;EACV,MAAM,IAAI;EACV,aAAa,IAAI;EACjB,OAAO,IAAI;EACX,QAAQ,IAAI;EACZ,MAAM,IAAI,OAAO;GACf,OAAO,IAAI,OAAO,MAAM,MAAMC,gBAAAA,uBAAuB,MAAM,KAAgC,CAAC;EAC9F;CACF,CAAC;AACH"}
@@ -1 +1 @@
1
- {"version":3,"file":"action.mjs","names":[],"sources":["../src/action.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { scrapingant } from \"./app\";\nimport { executeScrapingantTool } from \"./execute\";\n\n/** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */\nexport function action<TInput extends z.ZodType>(\n tool: string,\n def: {\n slug: string;\n name: string;\n description: string;\n input: TInput;\n output: z.ZodType;\n },\n) {\n return scrapingant.action({\n slug: def.slug,\n name: def.name,\n description: def.description,\n input: def.input,\n output: def.output as z.ZodTypeAny,\n async run(input) {\n return def.output.parse(await executeScrapingantTool(tool, input as Record<string, unknown>));\n },\n });\n}\n"],"mappings":";;;;;AAMA,SAAgB,OACd,MACA,KAOA;CACA,OAAO,YAAY,OAAO;EACxB,MAAM,IAAI;EACV,MAAM,IAAI;EACV,aAAa,IAAI;EACjB,OAAO,IAAI;EACX,QAAQ,IAAI;EACZ,MAAM,IAAI,OAAO;GACf,OAAO,IAAI,OAAO,MAAM,MAAM,uBAAuB,MAAM,KAAgC,CAAC;EAC9F;CACF,CAAC;AACH"}
1
+ {"version":3,"file":"action.mjs","names":[],"sources":["../src/action.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { scrapingant } from \"./app\";\nimport { executeScrapingantTool } from \"./execute\";\n\n/** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */\nexport function action<TInput extends z.ZodType, TOutput extends z.ZodType>(\n tool: string,\n def: {\n slug: string;\n name: string;\n description: string;\n input: TInput;\n output: TOutput;\n },\n): AppAction<TInput, TOutput, typeof scrapingant.credential> {\n return scrapingant.action({\n slug: def.slug,\n name: def.name,\n description: def.description,\n input: def.input,\n output: def.output,\n async run(input) {\n return def.output.parse(await executeScrapingantTool(tool, input as Record<string, unknown>));\n },\n });\n}\n"],"mappings":";;;;;AAOA,SAAgB,OACd,MACA,KAO2D;CAC3D,OAAO,YAAY,OAAO;EACxB,MAAM,IAAI;EACV,MAAM,IAAI;EACV,aAAa,IAAI;EACjB,OAAO,IAAI;EACX,QAAQ,IAAI;EACZ,MAAM,IAAI,OAAO;GACf,OAAO,IAAI,OAAO,MAAM,MAAM,uBAAuB,MAAM,KAAgC,CAAC;EAC9F;CACF,CAAC;AACH"}
@@ -1,3 +1,4 @@
1
+ require("../app.cjs");
1
2
  const require_action = require("../action.cjs");
2
3
  let zod = require("zod");
3
4
  //#region src/actions/extract-content-as-markdown.ts
@@ -1 +1 @@
1
- {"version":3,"file":"extract-content-as-markdown.cjs","names":["z","action"],"sources":["../../src/actions/extract-content-as-markdown.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapingantExtractContentAsMarkdownInput = z.object({\n url: z.string().describe(\"The URL of the web page to scrape and convert to Markdown.\"),\n method: z.enum([\"get\", \"post\", \"put\", \"delete\"]).default(\"get\").describe(\"HTTP method to use for the request.\").optional(),\n browser: z.boolean().describe(\"Enables the use of a headless browser for scraping. Default is true.\").optional(),\n cookies: z.string().describe(\"Cookies to include with the request.\").optional(),\n js_snippet: z.string().describe(\"Base64-encoded JavaScript to execute on the page after it loads.\").optional(),\n proxy_type: z.string().describe(\"Specifies the type of proxy to use.\").optional(),\n proxy_country: z.string().describe(\"Specifies the country for the proxy (e.g., US, GB).\").optional(),\n block_resource: z.array(z.string()).describe(\"List of resource types to block (e.g., image, script, stylesheet, font, media, websocket, other).\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the result.\").optional(),\n return_page_source: z.boolean().describe(\"Returns the raw HTML as received from the server, without JavaScript rendering. Default is false.\").optional(),\n});\nexport const ScrapingantExtractContentAsMarkdownOutput = z.object({\n url: z.string().describe(\"The original URL of the scraped page.\").nullable().optional(),\n detail: z.string().describe(\"Error detail if the request failed.\").nullable().optional(),\n markdown: z.string().describe(\"The extracted content in Markdown format.\").nullable().optional(),\n}).passthrough();\n\nexport const scrapingantExtractContentAsMarkdown = action(\"SCRAPINGANT_EXTRACT_CONTENT_AS_MARKDOWN\", {\n slug: \"scrapingant-extract-content-as-markdown\",\n name: \"Extract Content as Markdown\",\n description: \"This tool extracts content from a given URL and converts it into Markdown format. It is particularly useful for preparing text for Language Learning Models (LLMs) and Retrieval-Augmented Generation (RAG) systems. It supports GET, POST, PUT, and DELETE methods.\",\n input: ScrapingantExtractContentAsMarkdownInput,\n output: ScrapingantExtractContentAsMarkdownOutput,\n});\n"],"mappings":";;;AAIA,MAAa,2CAA2CA,IAAAA,EAAE,OAAO;CAC/D,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,4DAA4D;CACrF,QAAQA,IAAAA,EAAE,KAAK;EAAC;EAAO;EAAQ;EAAO;CAAQ,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;CACzH,SAASA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,sEAAsE,CAAC,CAAC,SAAS;CAC/G,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;CAC9E,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kEAAkE,CAAC,CAAC,SAAS;CAC7G,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;CAChF,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,qDAAqD,CAAC,CAAC,SAAS;CACnG,gBAAgBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,mGAAmG,CAAC,CAAC,SAAS;CAC3J,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uDAAuD,CAAC,CAAC,SAAS;CACzG,oBAAoBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,mGAAmG,CAAC,CAAC,SAAS;AACzJ,CAAC;AACD,MAAa,4CAA4CA,IAAAA,EAAE,OAAO;CAChE,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACtF,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACvF,UAAUA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACjG,CAAC,CAAC,CAAC,YAAY;AAEf,MAAa,sCAAsCC,eAAAA,OAAO,2CAA2C;CACnG,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"extract-content-as-markdown.cjs","names":["z","action"],"sources":["../../src/actions/extract-content-as-markdown.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { scrapingant } from \"../app\";\n\nexport const ScrapingantExtractContentAsMarkdownInput = z.object({\n url: z.string().describe(\"The URL of the web page to scrape and convert to Markdown.\"),\n method: z.enum([\"get\", \"post\", \"put\", \"delete\"]).default(\"get\").describe(\"HTTP method to use for the request.\").optional(),\n browser: z.boolean().describe(\"Enables the use of a headless browser for scraping. Default is true.\").optional(),\n cookies: z.string().describe(\"Cookies to include with the request.\").optional(),\n js_snippet: z.string().describe(\"Base64-encoded JavaScript to execute on the page after it loads.\").optional(),\n proxy_type: z.string().describe(\"Specifies the type of proxy to use.\").optional(),\n proxy_country: z.string().describe(\"Specifies the country for the proxy (e.g., US, GB).\").optional(),\n block_resource: z.array(z.string()).describe(\"List of resource types to block (e.g., image, script, stylesheet, font, media, websocket, other).\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the result.\").optional(),\n return_page_source: z.boolean().describe(\"Returns the raw HTML as received from the server, without JavaScript rendering. Default is false.\").optional(),\n});\nexport const ScrapingantExtractContentAsMarkdownOutput = z.object({\n url: z.string().describe(\"The original URL of the scraped page.\").nullable().optional(),\n detail: z.string().describe(\"Error detail if the request failed.\").nullable().optional(),\n markdown: z.string().describe(\"The extracted content in Markdown format.\").nullable().optional(),\n}).passthrough();\n\nexport const scrapingantExtractContentAsMarkdown: AppAction<\n typeof ScrapingantExtractContentAsMarkdownInput,\n typeof ScrapingantExtractContentAsMarkdownOutput,\n typeof scrapingant.credential\n> = action(\"SCRAPINGANT_EXTRACT_CONTENT_AS_MARKDOWN\", {\n slug: \"scrapingant-extract-content-as-markdown\",\n name: \"Extract Content as Markdown\",\n description: \"This tool extracts content from a given URL and converts it into Markdown format. It is particularly useful for preparing text for Language Learning Models (LLMs) and Retrieval-Augmented Generation (RAG) systems. It supports GET, POST, PUT, and DELETE methods.\",\n input: ScrapingantExtractContentAsMarkdownInput,\n output: ScrapingantExtractContentAsMarkdownOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,2CAA2CA,IAAAA,EAAE,OAAO;CAC/D,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,4DAA4D;CACrF,QAAQA,IAAAA,EAAE,KAAK;EAAC;EAAO;EAAQ;EAAO;CAAQ,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;CACzH,SAASA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,sEAAsE,CAAC,CAAC,SAAS;CAC/G,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;CAC9E,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kEAAkE,CAAC,CAAC,SAAS;CAC7G,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;CAChF,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,qDAAqD,CAAC,CAAC,SAAS;CACnG,gBAAgBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,mGAAmG,CAAC,CAAC,SAAS;CAC3J,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uDAAuD,CAAC,CAAC,SAAS;CACzG,oBAAoBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,mGAAmG,CAAC,CAAC,SAAS;AACzJ,CAAC;AACD,MAAa,4CAA4CA,IAAAA,EAAE,OAAO;CAChE,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACtF,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACvF,UAAUA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACjG,CAAC,CAAC,CAAC,YAAY;AAEf,MAAa,sCAITC,eAAAA,OAAO,2CAA2C;CACpD,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -1,3 +1,5 @@
1
+ import { scrapingant } from "../app.cjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/extract-content-as-markdown.d.ts
@@ -23,18 +25,7 @@ declare const ScrapingantExtractContentAsMarkdownOutput: z.ZodObject<{
23
25
  detail: z.ZodOptional<z.ZodNullable<z.ZodString>>;
24
26
  markdown: z.ZodOptional<z.ZodNullable<z.ZodString>>;
25
27
  }, z.core.$loose>;
26
- declare const scrapingantExtractContentAsMarkdown: import("@keystrokehq/action").WorkflowActionDefinition<{
27
- url: string;
28
- method?: "get" | "post" | "put" | "delete" | undefined;
29
- browser?: boolean | undefined;
30
- cookies?: string | undefined;
31
- js_snippet?: string | undefined;
32
- proxy_type?: string | undefined;
33
- proxy_country?: string | undefined;
34
- block_resource?: string[] | undefined;
35
- wait_for_selector?: string | undefined;
36
- return_page_source?: boolean | undefined;
37
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
28
+ declare const scrapingantExtractContentAsMarkdown: AppAction<typeof ScrapingantExtractContentAsMarkdownInput, typeof ScrapingantExtractContentAsMarkdownOutput, typeof scrapingant.credential>;
38
29
  //#endregion
39
30
  export { scrapingantExtractContentAsMarkdown };
40
31
  //# sourceMappingURL=extract-content-as-markdown.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extract-content-as-markdown.d.cts","names":[],"sources":["../../src/actions/extract-content-as-markdown.ts"],"mappings":";;;cAIa,wCAAA,EAAwC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;cAYxC,yCAAA,EAAyC,CAAA,CAAA,SAAA;;;;;cAMzC,mCAAA,gCAAmC,wBAAA"}
1
+ {"version":3,"file":"extract-content-as-markdown.d.cts","names":[],"sources":["../../src/actions/extract-content-as-markdown.ts"],"mappings":";;;;;cAMa,wCAAA,EAAwC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;cAYxC,yCAAA,EAAyC,CAAA,CAAA,SAAA;;;;;cAMzC,mCAAA,EAAqC,SAAA,QACzC,wCAAA,SACA,yCAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,5 @@
1
+ import { scrapingant } from "../app.mjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/extract-content-as-markdown.d.ts
@@ -23,18 +25,7 @@ declare const ScrapingantExtractContentAsMarkdownOutput: z.ZodObject<{
23
25
  detail: z.ZodOptional<z.ZodNullable<z.ZodString>>;
24
26
  markdown: z.ZodOptional<z.ZodNullable<z.ZodString>>;
25
27
  }, z.core.$loose>;
26
- declare const scrapingantExtractContentAsMarkdown: import("@keystrokehq/action").WorkflowActionDefinition<{
27
- url: string;
28
- method?: "get" | "post" | "put" | "delete" | undefined;
29
- browser?: boolean | undefined;
30
- cookies?: string | undefined;
31
- js_snippet?: string | undefined;
32
- proxy_type?: string | undefined;
33
- proxy_country?: string | undefined;
34
- block_resource?: string[] | undefined;
35
- wait_for_selector?: string | undefined;
36
- return_page_source?: boolean | undefined;
37
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
28
+ declare const scrapingantExtractContentAsMarkdown: AppAction<typeof ScrapingantExtractContentAsMarkdownInput, typeof ScrapingantExtractContentAsMarkdownOutput, typeof scrapingant.credential>;
38
29
  //#endregion
39
30
  export { scrapingantExtractContentAsMarkdown };
40
31
  //# sourceMappingURL=extract-content-as-markdown.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extract-content-as-markdown.d.mts","names":[],"sources":["../../src/actions/extract-content-as-markdown.ts"],"mappings":";;;cAIa,wCAAA,EAAwC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;cAYxC,yCAAA,EAAyC,CAAA,CAAA,SAAA;;;;;cAMzC,mCAAA,gCAAmC,wBAAA"}
1
+ {"version":3,"file":"extract-content-as-markdown.d.mts","names":[],"sources":["../../src/actions/extract-content-as-markdown.ts"],"mappings":";;;;;cAMa,wCAAA,EAAwC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;cAYxC,yCAAA,EAAyC,CAAA,CAAA,SAAA;;;;;cAMzC,mCAAA,EAAqC,SAAA,QACzC,wCAAA,SACA,yCAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,4 @@
1
+ import "../app.mjs";
1
2
  import { action } from "../action.mjs";
2
3
  import { z } from "zod";
3
4
  const scrapingantExtractContentAsMarkdown = action("SCRAPINGANT_EXTRACT_CONTENT_AS_MARKDOWN", {
@@ -1 +1 @@
1
- {"version":3,"file":"extract-content-as-markdown.mjs","names":[],"sources":["../../src/actions/extract-content-as-markdown.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapingantExtractContentAsMarkdownInput = z.object({\n url: z.string().describe(\"The URL of the web page to scrape and convert to Markdown.\"),\n method: z.enum([\"get\", \"post\", \"put\", \"delete\"]).default(\"get\").describe(\"HTTP method to use for the request.\").optional(),\n browser: z.boolean().describe(\"Enables the use of a headless browser for scraping. Default is true.\").optional(),\n cookies: z.string().describe(\"Cookies to include with the request.\").optional(),\n js_snippet: z.string().describe(\"Base64-encoded JavaScript to execute on the page after it loads.\").optional(),\n proxy_type: z.string().describe(\"Specifies the type of proxy to use.\").optional(),\n proxy_country: z.string().describe(\"Specifies the country for the proxy (e.g., US, GB).\").optional(),\n block_resource: z.array(z.string()).describe(\"List of resource types to block (e.g., image, script, stylesheet, font, media, websocket, other).\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the result.\").optional(),\n return_page_source: z.boolean().describe(\"Returns the raw HTML as received from the server, without JavaScript rendering. Default is false.\").optional(),\n});\nexport const ScrapingantExtractContentAsMarkdownOutput = z.object({\n url: z.string().describe(\"The original URL of the scraped page.\").nullable().optional(),\n detail: z.string().describe(\"Error detail if the request failed.\").nullable().optional(),\n markdown: z.string().describe(\"The extracted content in Markdown format.\").nullable().optional(),\n}).passthrough();\n\nexport const scrapingantExtractContentAsMarkdown = action(\"SCRAPINGANT_EXTRACT_CONTENT_AS_MARKDOWN\", {\n slug: \"scrapingant-extract-content-as-markdown\",\n name: \"Extract Content as Markdown\",\n description: \"This tool extracts content from a given URL and converts it into Markdown format. It is particularly useful for preparing text for Language Learning Models (LLMs) and Retrieval-Augmented Generation (RAG) systems. It supports GET, POST, PUT, and DELETE methods.\",\n input: ScrapingantExtractContentAsMarkdownInput,\n output: ScrapingantExtractContentAsMarkdownOutput,\n});\n"],"mappings":";;AAsBA,MAAa,sCAAsC,OAAO,2CAA2C;CACnG,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAtBsD,EAAE,OAAO;EAC/D,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,4DAA4D;EACrF,QAAQ,EAAE,KAAK;GAAC;GAAO;GAAQ;GAAO;EAAQ,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;EACzH,SAAS,EAAE,QAAQ,CAAC,CAAC,SAAS,sEAAsE,CAAC,CAAC,SAAS;EAC/G,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;EAC9E,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,kEAAkE,CAAC,CAAC,SAAS;EAC7G,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;EAChF,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,qDAAqD,CAAC,CAAC,SAAS;EACnG,gBAAgB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,mGAAmG,CAAC,CAAC,SAAS;EAC3J,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,uDAAuD,CAAC,CAAC,SAAS;EACzG,oBAAoB,EAAE,QAAQ,CAAC,CAAC,SAAS,mGAAmG,CAAC,CAAC,SAAS;CACzJ,CAWS;CACP,QAXuD,EAAE,OAAO;EAChE,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACtF,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACvF,UAAU,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjG,CAAC,CAAC,CAAC,YAOO;AACV,CAAC"}
1
+ {"version":3,"file":"extract-content-as-markdown.mjs","names":[],"sources":["../../src/actions/extract-content-as-markdown.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { scrapingant } from \"../app\";\n\nexport const ScrapingantExtractContentAsMarkdownInput = z.object({\n url: z.string().describe(\"The URL of the web page to scrape and convert to Markdown.\"),\n method: z.enum([\"get\", \"post\", \"put\", \"delete\"]).default(\"get\").describe(\"HTTP method to use for the request.\").optional(),\n browser: z.boolean().describe(\"Enables the use of a headless browser for scraping. Default is true.\").optional(),\n cookies: z.string().describe(\"Cookies to include with the request.\").optional(),\n js_snippet: z.string().describe(\"Base64-encoded JavaScript to execute on the page after it loads.\").optional(),\n proxy_type: z.string().describe(\"Specifies the type of proxy to use.\").optional(),\n proxy_country: z.string().describe(\"Specifies the country for the proxy (e.g., US, GB).\").optional(),\n block_resource: z.array(z.string()).describe(\"List of resource types to block (e.g., image, script, stylesheet, font, media, websocket, other).\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the result.\").optional(),\n return_page_source: z.boolean().describe(\"Returns the raw HTML as received from the server, without JavaScript rendering. Default is false.\").optional(),\n});\nexport const ScrapingantExtractContentAsMarkdownOutput = z.object({\n url: z.string().describe(\"The original URL of the scraped page.\").nullable().optional(),\n detail: z.string().describe(\"Error detail if the request failed.\").nullable().optional(),\n markdown: z.string().describe(\"The extracted content in Markdown format.\").nullable().optional(),\n}).passthrough();\n\nexport const scrapingantExtractContentAsMarkdown: AppAction<\n typeof ScrapingantExtractContentAsMarkdownInput,\n typeof ScrapingantExtractContentAsMarkdownOutput,\n typeof scrapingant.credential\n> = action(\"SCRAPINGANT_EXTRACT_CONTENT_AS_MARKDOWN\", {\n slug: \"scrapingant-extract-content-as-markdown\",\n name: \"Extract Content as Markdown\",\n description: \"This tool extracts content from a given URL and converts it into Markdown format. It is particularly useful for preparing text for Language Learning Models (LLMs) and Retrieval-Augmented Generation (RAG) systems. It supports GET, POST, PUT, and DELETE methods.\",\n input: ScrapingantExtractContentAsMarkdownInput,\n output: ScrapingantExtractContentAsMarkdownOutput,\n});\n"],"mappings":";;;AAwBA,MAAa,sCAIT,OAAO,2CAA2C;CACpD,MAAM;CACN,MAAM;CACN,aAAa;CACb,OA1BsD,EAAE,OAAO;EAC/D,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,4DAA4D;EACrF,QAAQ,EAAE,KAAK;GAAC;GAAO;GAAQ;GAAO;EAAQ,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;EACzH,SAAS,EAAE,QAAQ,CAAC,CAAC,SAAS,sEAAsE,CAAC,CAAC,SAAS;EAC/G,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;EAC9E,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,kEAAkE,CAAC,CAAC,SAAS;EAC7G,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;EAChF,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,qDAAqD,CAAC,CAAC,SAAS;EACnG,gBAAgB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,mGAAmG,CAAC,CAAC,SAAS;EAC3J,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,uDAAuD,CAAC,CAAC,SAAS;EACzG,oBAAoB,EAAE,QAAQ,CAAC,CAAC,SAAS,mGAAmG,CAAC,CAAC,SAAS;CACzJ,CAeS;CACP,QAfuD,EAAE,OAAO;EAChE,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACtF,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACvF,UAAU,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjG,CAAC,CAAC,CAAC,YAWO;AACV,CAAC"}
@@ -1,3 +1,4 @@
1
+ require("../app.cjs");
1
2
  const require_action = require("../action.cjs");
2
3
  let zod = require("zod");
3
4
  //#region src/actions/extract-data-with-ai.ts
@@ -1 +1 @@
1
- {"version":3,"file":"extract-data-with-ai.cjs","names":["z","action"],"sources":["../../src/actions/extract-data-with-ai.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapingantExtractDataWithAiInput = z.object({\n url: z.string().describe(\"The URL of the page to extract data from.\"),\n cookies: z.string().describe(\"Cookies to use for the request. (e.g. cookie1=value1; cookie2=value2)\").optional(),\n proxy_type: z.string().describe(\"Proxy type to use for the request. (datacenter, residential)\").optional(),\n return_text: z.boolean().describe(\"Return text content of the page. (default: false)\").optional(),\n proxy_country: z.string().describe(\"Proxy country to use for the request. (e.g. US, GB, DE)\").optional(),\n enable_javascript: z.boolean().describe(\"Enable browser rendering. (default: true)\").optional(),\n wait_for_selector: z.string().describe(\"Wait for a specific selector to appear on the page before extracting data.\").optional(),\n extract_properties: z.string().describe(\"A free-form text describing the data you want to extract.\"),\n});\nexport const ScrapingantExtractDataWithAiOutput = z.object({\n text: z.string().describe(\"Text content of the page. Only populated when return_text is set to true.\").nullable().optional(),\n content: z.record(z.string(), z.unknown()).describe(\"Extracted data as a JSON object with the requested properties as keys. Can contain nested objects, arrays, strings, numbers, and booleans.\").nullable().optional(),\n status_code: z.number().int().describe(\"HTTP status code of the response from the target website.\").nullable().optional(),\n}).passthrough();\n\nexport const scrapingantExtractDataWithAi = action(\"SCRAPINGANT_EXTRACT_DATA_WITH_AI\", {\n slug: \"scrapingant-extract-data-with-ai\",\n name: \"Extract Data with AI\",\n description: \"This tool allows you to extract structured data from a web page using ScrapingAnt's AI-powered extraction capabilities. You provide a URL and an AI query (prompt) describing what data you want to extract, and the tool returns the extracted data in a structured format. It supports additional parameters for browser rendering, proxies, and cookies to handle dynamic content and localization.\",\n input: ScrapingantExtractDataWithAiInput,\n output: ScrapingantExtractDataWithAiOutput,\n});\n"],"mappings":";;;AAIA,MAAa,oCAAoCA,IAAAA,EAAE,OAAO;CACxD,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C;CACpE,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uEAAuE,CAAC,CAAC,SAAS;CAC/G,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,8DAA8D,CAAC,CAAC,SAAS;CACzG,aAAaA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;CAChG,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,yDAAyD,CAAC,CAAC,SAAS;CACvG,mBAAmBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS;CAC9F,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,4EAA4E,CAAC,CAAC,SAAS;CAC9H,oBAAoBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2DAA2D;AACrG,CAAC;AACD,MAAa,qCAAqCA,IAAAA,EAAE,OAAO;CACzD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2EAA2E,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC3H,SAASA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,4IAA4I,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACtN,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,2DAA2D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC1H,CAAC,CAAC,CAAC,YAAY;AAEf,MAAa,+BAA+BC,eAAAA,OAAO,oCAAoC;CACrF,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"extract-data-with-ai.cjs","names":["z","action"],"sources":["../../src/actions/extract-data-with-ai.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { scrapingant } from \"../app\";\n\nexport const ScrapingantExtractDataWithAiInput = z.object({\n url: z.string().describe(\"The URL of the page to extract data from.\"),\n cookies: z.string().describe(\"Cookies to use for the request. (e.g. cookie1=value1; cookie2=value2)\").optional(),\n proxy_type: z.string().describe(\"Proxy type to use for the request. (datacenter, residential)\").optional(),\n return_text: z.boolean().describe(\"Return text content of the page. (default: false)\").optional(),\n proxy_country: z.string().describe(\"Proxy country to use for the request. (e.g. US, GB, DE)\").optional(),\n enable_javascript: z.boolean().describe(\"Enable browser rendering. (default: true)\").optional(),\n wait_for_selector: z.string().describe(\"Wait for a specific selector to appear on the page before extracting data.\").optional(),\n extract_properties: z.string().describe(\"A free-form text describing the data you want to extract.\"),\n});\nexport const ScrapingantExtractDataWithAiOutput = z.object({\n text: z.string().describe(\"Text content of the page. Only populated when return_text is set to true.\").nullable().optional(),\n content: z.record(z.string(), z.unknown()).describe(\"Extracted data as a JSON object with the requested properties as keys. Can contain nested objects, arrays, strings, numbers, and booleans.\").nullable().optional(),\n status_code: z.number().int().describe(\"HTTP status code of the response from the target website.\").nullable().optional(),\n}).passthrough();\n\nexport const scrapingantExtractDataWithAi: AppAction<\n typeof ScrapingantExtractDataWithAiInput,\n typeof ScrapingantExtractDataWithAiOutput,\n typeof scrapingant.credential\n> = action(\"SCRAPINGANT_EXTRACT_DATA_WITH_AI\", {\n slug: \"scrapingant-extract-data-with-ai\",\n name: \"Extract Data with AI\",\n description: \"This tool allows you to extract structured data from a web page using ScrapingAnt's AI-powered extraction capabilities. You provide a URL and an AI query (prompt) describing what data you want to extract, and the tool returns the extracted data in a structured format. It supports additional parameters for browser rendering, proxies, and cookies to handle dynamic content and localization.\",\n input: ScrapingantExtractDataWithAiInput,\n output: ScrapingantExtractDataWithAiOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,oCAAoCA,IAAAA,EAAE,OAAO;CACxD,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C;CACpE,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uEAAuE,CAAC,CAAC,SAAS;CAC/G,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,8DAA8D,CAAC,CAAC,SAAS;CACzG,aAAaA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;CAChG,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,yDAAyD,CAAC,CAAC,SAAS;CACvG,mBAAmBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS;CAC9F,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,4EAA4E,CAAC,CAAC,SAAS;CAC9H,oBAAoBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2DAA2D;AACrG,CAAC;AACD,MAAa,qCAAqCA,IAAAA,EAAE,OAAO;CACzD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2EAA2E,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC3H,SAASA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,4IAA4I,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACtN,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,2DAA2D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC1H,CAAC,CAAC,CAAC,YAAY;AAEf,MAAa,+BAITC,eAAAA,OAAO,oCAAoC;CAC7C,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -1,3 +1,5 @@
1
+ import { scrapingant } from "../app.cjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/extract-data-with-ai.d.ts
@@ -16,16 +18,7 @@ declare const ScrapingantExtractDataWithAiOutput: z.ZodObject<{
16
18
  content: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
17
19
  status_code: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
18
20
  }, z.core.$loose>;
19
- declare const scrapingantExtractDataWithAi: import("@keystrokehq/action").WorkflowActionDefinition<{
20
- url: string;
21
- extract_properties: string;
22
- cookies?: string | undefined;
23
- proxy_type?: string | undefined;
24
- return_text?: boolean | undefined;
25
- proxy_country?: string | undefined;
26
- enable_javascript?: boolean | undefined;
27
- wait_for_selector?: string | undefined;
28
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
21
+ declare const scrapingantExtractDataWithAi: AppAction<typeof ScrapingantExtractDataWithAiInput, typeof ScrapingantExtractDataWithAiOutput, typeof scrapingant.credential>;
29
22
  //#endregion
30
23
  export { scrapingantExtractDataWithAi };
31
24
  //# sourceMappingURL=extract-data-with-ai.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extract-data-with-ai.d.cts","names":[],"sources":["../../src/actions/extract-data-with-ai.ts"],"mappings":";;;cAIa,iCAAA,EAAiC,CAAA,CAAA,SAAA;;;;;;;;;;cAUjC,kCAAA,EAAkC,CAAA,CAAA,SAAA;;;;;cAMlC,4BAAA,gCAA4B,wBAAA"}
1
+ {"version":3,"file":"extract-data-with-ai.d.cts","names":[],"sources":["../../src/actions/extract-data-with-ai.ts"],"mappings":";;;;;cAMa,iCAAA,EAAiC,CAAA,CAAA,SAAA;;;;;;;;;;cAUjC,kCAAA,EAAkC,CAAA,CAAA,SAAA;;;;;cAMlC,4BAAA,EAA8B,SAAA,QAClC,iCAAA,SACA,kCAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,5 @@
1
+ import { scrapingant } from "../app.mjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/extract-data-with-ai.d.ts
@@ -16,16 +18,7 @@ declare const ScrapingantExtractDataWithAiOutput: z.ZodObject<{
16
18
  content: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
17
19
  status_code: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
18
20
  }, z.core.$loose>;
19
- declare const scrapingantExtractDataWithAi: import("@keystrokehq/action").WorkflowActionDefinition<{
20
- url: string;
21
- extract_properties: string;
22
- cookies?: string | undefined;
23
- proxy_type?: string | undefined;
24
- return_text?: boolean | undefined;
25
- proxy_country?: string | undefined;
26
- enable_javascript?: boolean | undefined;
27
- wait_for_selector?: string | undefined;
28
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
21
+ declare const scrapingantExtractDataWithAi: AppAction<typeof ScrapingantExtractDataWithAiInput, typeof ScrapingantExtractDataWithAiOutput, typeof scrapingant.credential>;
29
22
  //#endregion
30
23
  export { scrapingantExtractDataWithAi };
31
24
  //# sourceMappingURL=extract-data-with-ai.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extract-data-with-ai.d.mts","names":[],"sources":["../../src/actions/extract-data-with-ai.ts"],"mappings":";;;cAIa,iCAAA,EAAiC,CAAA,CAAA,SAAA;;;;;;;;;;cAUjC,kCAAA,EAAkC,CAAA,CAAA,SAAA;;;;;cAMlC,4BAAA,gCAA4B,wBAAA"}
1
+ {"version":3,"file":"extract-data-with-ai.d.mts","names":[],"sources":["../../src/actions/extract-data-with-ai.ts"],"mappings":";;;;;cAMa,iCAAA,EAAiC,CAAA,CAAA,SAAA;;;;;;;;;;cAUjC,kCAAA,EAAkC,CAAA,CAAA,SAAA;;;;;cAMlC,4BAAA,EAA8B,SAAA,QAClC,iCAAA,SACA,kCAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,4 @@
1
+ import "../app.mjs";
1
2
  import { action } from "../action.mjs";
2
3
  import { z } from "zod";
3
4
  const scrapingantExtractDataWithAi = action("SCRAPINGANT_EXTRACT_DATA_WITH_AI", {
@@ -1 +1 @@
1
- {"version":3,"file":"extract-data-with-ai.mjs","names":[],"sources":["../../src/actions/extract-data-with-ai.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapingantExtractDataWithAiInput = z.object({\n url: z.string().describe(\"The URL of the page to extract data from.\"),\n cookies: z.string().describe(\"Cookies to use for the request. (e.g. cookie1=value1; cookie2=value2)\").optional(),\n proxy_type: z.string().describe(\"Proxy type to use for the request. (datacenter, residential)\").optional(),\n return_text: z.boolean().describe(\"Return text content of the page. (default: false)\").optional(),\n proxy_country: z.string().describe(\"Proxy country to use for the request. (e.g. US, GB, DE)\").optional(),\n enable_javascript: z.boolean().describe(\"Enable browser rendering. (default: true)\").optional(),\n wait_for_selector: z.string().describe(\"Wait for a specific selector to appear on the page before extracting data.\").optional(),\n extract_properties: z.string().describe(\"A free-form text describing the data you want to extract.\"),\n});\nexport const ScrapingantExtractDataWithAiOutput = z.object({\n text: z.string().describe(\"Text content of the page. Only populated when return_text is set to true.\").nullable().optional(),\n content: z.record(z.string(), z.unknown()).describe(\"Extracted data as a JSON object with the requested properties as keys. Can contain nested objects, arrays, strings, numbers, and booleans.\").nullable().optional(),\n status_code: z.number().int().describe(\"HTTP status code of the response from the target website.\").nullable().optional(),\n}).passthrough();\n\nexport const scrapingantExtractDataWithAi = action(\"SCRAPINGANT_EXTRACT_DATA_WITH_AI\", {\n slug: \"scrapingant-extract-data-with-ai\",\n name: \"Extract Data with AI\",\n description: \"This tool allows you to extract structured data from a web page using ScrapingAnt's AI-powered extraction capabilities. You provide a URL and an AI query (prompt) describing what data you want to extract, and the tool returns the extracted data in a structured format. It supports additional parameters for browser rendering, proxies, and cookies to handle dynamic content and localization.\",\n input: ScrapingantExtractDataWithAiInput,\n output: ScrapingantExtractDataWithAiOutput,\n});\n"],"mappings":";;AAoBA,MAAa,+BAA+B,OAAO,oCAAoC;CACrF,MAAM;CACN,MAAM;CACN,aAAa;CACb,OApB+C,EAAE,OAAO;EACxD,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C;EACpE,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,uEAAuE,CAAC,CAAC,SAAS;EAC/G,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,8DAA8D,CAAC,CAAC,SAAS;EACzG,aAAa,EAAE,QAAQ,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;EAChG,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,yDAAyD,CAAC,CAAC,SAAS;EACvG,mBAAmB,EAAE,QAAQ,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS;EAC9F,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,4EAA4E,CAAC,CAAC,SAAS;EAC9H,oBAAoB,EAAE,OAAO,CAAC,CAAC,SAAS,2DAA2D;CACrG,CAWS;CACP,QAXgD,EAAE,OAAO;EACzD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,2EAA2E,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAC3H,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,4IAA4I,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACtN,aAAa,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,2DAA2D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC1H,CAAC,CAAC,CAAC,YAOO;AACV,CAAC"}
1
+ {"version":3,"file":"extract-data-with-ai.mjs","names":[],"sources":["../../src/actions/extract-data-with-ai.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { scrapingant } from \"../app\";\n\nexport const ScrapingantExtractDataWithAiInput = z.object({\n url: z.string().describe(\"The URL of the page to extract data from.\"),\n cookies: z.string().describe(\"Cookies to use for the request. (e.g. cookie1=value1; cookie2=value2)\").optional(),\n proxy_type: z.string().describe(\"Proxy type to use for the request. (datacenter, residential)\").optional(),\n return_text: z.boolean().describe(\"Return text content of the page. (default: false)\").optional(),\n proxy_country: z.string().describe(\"Proxy country to use for the request. (e.g. US, GB, DE)\").optional(),\n enable_javascript: z.boolean().describe(\"Enable browser rendering. (default: true)\").optional(),\n wait_for_selector: z.string().describe(\"Wait for a specific selector to appear on the page before extracting data.\").optional(),\n extract_properties: z.string().describe(\"A free-form text describing the data you want to extract.\"),\n});\nexport const ScrapingantExtractDataWithAiOutput = z.object({\n text: z.string().describe(\"Text content of the page. Only populated when return_text is set to true.\").nullable().optional(),\n content: z.record(z.string(), z.unknown()).describe(\"Extracted data as a JSON object with the requested properties as keys. Can contain nested objects, arrays, strings, numbers, and booleans.\").nullable().optional(),\n status_code: z.number().int().describe(\"HTTP status code of the response from the target website.\").nullable().optional(),\n}).passthrough();\n\nexport const scrapingantExtractDataWithAi: AppAction<\n typeof ScrapingantExtractDataWithAiInput,\n typeof ScrapingantExtractDataWithAiOutput,\n typeof scrapingant.credential\n> = action(\"SCRAPINGANT_EXTRACT_DATA_WITH_AI\", {\n slug: \"scrapingant-extract-data-with-ai\",\n name: \"Extract Data with AI\",\n description: \"This tool allows you to extract structured data from a web page using ScrapingAnt's AI-powered extraction capabilities. You provide a URL and an AI query (prompt) describing what data you want to extract, and the tool returns the extracted data in a structured format. It supports additional parameters for browser rendering, proxies, and cookies to handle dynamic content and localization.\",\n input: ScrapingantExtractDataWithAiInput,\n output: ScrapingantExtractDataWithAiOutput,\n});\n"],"mappings":";;;AAsBA,MAAa,+BAIT,OAAO,oCAAoC;CAC7C,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAxB+C,EAAE,OAAO;EACxD,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C;EACpE,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,uEAAuE,CAAC,CAAC,SAAS;EAC/G,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,8DAA8D,CAAC,CAAC,SAAS;EACzG,aAAa,EAAE,QAAQ,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;EAChG,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,yDAAyD,CAAC,CAAC,SAAS;EACvG,mBAAmB,EAAE,QAAQ,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS;EAC9F,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,4EAA4E,CAAC,CAAC,SAAS;EAC9H,oBAAoB,EAAE,OAAO,CAAC,CAAC,SAAS,2DAA2D;CACrG,CAeS;CACP,QAfgD,EAAE,OAAO;EACzD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,2EAA2E,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAC3H,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,4IAA4I,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACtN,aAAa,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,2DAA2D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC1H,CAAC,CAAC,CAAC,YAWO;AACV,CAAC"}
@@ -1,3 +1,4 @@
1
+ require("../app.cjs");
1
2
  const require_action = require("../action.cjs");
2
3
  let zod = require("zod");
3
4
  //#region src/actions/get-api-credits-usage.ts
@@ -1 +1 @@
1
- {"version":3,"file":"get-api-credits-usage.cjs","names":["z","action"],"sources":["../../src/actions/get-api-credits-usage.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapingantGetApiCreditsUsageInput = z.object({}).describe(\"Request model for GetApiCreditsUsage action.\\nThis action does not require any specific request parameters beyond authentication.\");\nexport const ScrapingantGetApiCreditsUsageOutput = z.object({\n end_date: z.string().describe(\"The end date of the current billing period in ISO 8601 format (e.g., '2026-02-07T11:34:42.437395').\").nullable(),\n plan_name: z.string().describe(\"The name of the current subscription plan (e.g., 'Free', 'Hobby', 'Business').\").nullable(),\n start_date: z.string().describe(\"The start date of the current billing period in ISO 8601 format (e.g., '2026-01-08T11:34:42.437390').\").nullable(),\n remained_credits: z.number().int().describe(\"The number of API credits remaining for the current billing period.\").nullable(),\n plan_total_credits: z.number().int().describe(\"The total number of API credits included in the current subscription plan.\").nullable(),\n}).passthrough().describe(\"Response model for GetApiCreditsUsage action.\");\n\nexport const scrapingantGetApiCreditsUsage = action(\"SCRAPINGANT_GET_API_CREDITS_USAGE\", {\n slug: \"scrapingant-get-api-credits-usage\",\n name: \"Get API Credits Usage\",\n description: \"This tool retrieves the current API credit usage status for the authenticated ScrapingAnt account. It enables users to monitor their consumption of API credits, check their current usage against the subscription limits, and manage their API credits effectively.\",\n input: ScrapingantGetApiCreditsUsageInput,\n output: ScrapingantGetApiCreditsUsageOutput,\n});\n"],"mappings":";;;AAIA,MAAa,qCAAqCA,IAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,mIAAmI;AAC3M,MAAa,sCAAsCA,IAAAA,EAAE,OAAO;CAC1D,UAAUA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,qGAAqG,CAAC,CAAC,SAAS;CAC9I,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gFAAgF,CAAC,CAAC,SAAS;CAC1H,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uGAAuG,CAAC,CAAC,SAAS;CAClJ,kBAAkBA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,qEAAqE,CAAC,CAAC,SAAS;CAC5H,oBAAoBA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,4EAA4E,CAAC,CAAC,SAAS;AACvI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,+CAA+C;AAEzE,MAAa,gCAAgCC,eAAAA,OAAO,qCAAqC;CACvF,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"get-api-credits-usage.cjs","names":["z","action"],"sources":["../../src/actions/get-api-credits-usage.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { scrapingant } from \"../app\";\n\nexport const ScrapingantGetApiCreditsUsageInput = z.object({}).describe(\"Request model for GetApiCreditsUsage action.\\nThis action does not require any specific request parameters beyond authentication.\");\nexport const ScrapingantGetApiCreditsUsageOutput = z.object({\n end_date: z.string().describe(\"The end date of the current billing period in ISO 8601 format (e.g., '2026-02-07T11:34:42.437395').\").nullable(),\n plan_name: z.string().describe(\"The name of the current subscription plan (e.g., 'Free', 'Hobby', 'Business').\").nullable(),\n start_date: z.string().describe(\"The start date of the current billing period in ISO 8601 format (e.g., '2026-01-08T11:34:42.437390').\").nullable(),\n remained_credits: z.number().int().describe(\"The number of API credits remaining for the current billing period.\").nullable(),\n plan_total_credits: z.number().int().describe(\"The total number of API credits included in the current subscription plan.\").nullable(),\n}).passthrough().describe(\"Response model for GetApiCreditsUsage action.\");\n\nexport const scrapingantGetApiCreditsUsage: AppAction<\n typeof ScrapingantGetApiCreditsUsageInput,\n typeof ScrapingantGetApiCreditsUsageOutput,\n typeof scrapingant.credential\n> = action(\"SCRAPINGANT_GET_API_CREDITS_USAGE\", {\n slug: \"scrapingant-get-api-credits-usage\",\n name: \"Get API Credits Usage\",\n description: \"This tool retrieves the current API credit usage status for the authenticated ScrapingAnt account. It enables users to monitor their consumption of API credits, check their current usage against the subscription limits, and manage their API credits effectively.\",\n input: ScrapingantGetApiCreditsUsageInput,\n output: ScrapingantGetApiCreditsUsageOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,qCAAqCA,IAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,mIAAmI;AAC3M,MAAa,sCAAsCA,IAAAA,EAAE,OAAO;CAC1D,UAAUA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,qGAAqG,CAAC,CAAC,SAAS;CAC9I,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gFAAgF,CAAC,CAAC,SAAS;CAC1H,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uGAAuG,CAAC,CAAC,SAAS;CAClJ,kBAAkBA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,qEAAqE,CAAC,CAAC,SAAS;CAC5H,oBAAoBA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,4EAA4E,CAAC,CAAC,SAAS;AACvI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,+CAA+C;AAEzE,MAAa,gCAITC,eAAAA,OAAO,qCAAqC;CAC9C,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -1,3 +1,5 @@
1
+ import { scrapingant } from "../app.cjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/get-api-credits-usage.d.ts
@@ -9,7 +11,7 @@ declare const ScrapingantGetApiCreditsUsageOutput: z.ZodObject<{
9
11
  remained_credits: z.ZodNullable<z.ZodNumber>;
10
12
  plan_total_credits: z.ZodNullable<z.ZodNumber>;
11
13
  }, z.core.$loose>;
12
- declare const scrapingantGetApiCreditsUsage: import("@keystrokehq/action").WorkflowActionDefinition<Record<string, never>, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
14
+ declare const scrapingantGetApiCreditsUsage: AppAction<typeof ScrapingantGetApiCreditsUsageInput, typeof ScrapingantGetApiCreditsUsageOutput, typeof scrapingant.credential>;
13
15
  //#endregion
14
16
  export { scrapingantGetApiCreditsUsage };
15
17
  //# sourceMappingURL=get-api-credits-usage.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-api-credits-usage.d.cts","names":[],"sources":["../../src/actions/get-api-credits-usage.ts"],"mappings":";;;cAIa,kCAAA,EAAkC,CAAA,CAAA,SAAA,KAAA,CAAA,CAAA,IAAA,CAAA,MAAA;AAAA,cAClC,mCAAA,EAAmC,CAAA,CAAA,SAAA;;;;;;;cAQnC,6BAAA,gCAA6B,wBAAA,CAAA,MAAA,wDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
1
+ {"version":3,"file":"get-api-credits-usage.d.cts","names":[],"sources":["../../src/actions/get-api-credits-usage.ts"],"mappings":";;;;;cAMa,kCAAA,EAAkC,CAAA,CAAA,SAAA,KAAA,CAAA,CAAA,IAAA,CAAA,MAAA;AAAA,cAClC,mCAAA,EAAmC,CAAA,CAAA,SAAA;;;;;;;cAQnC,6BAAA,EAA+B,SAAA,QACnC,kCAAA,SACA,mCAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,5 @@
1
+ import { scrapingant } from "../app.mjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/get-api-credits-usage.d.ts
@@ -9,7 +11,7 @@ declare const ScrapingantGetApiCreditsUsageOutput: z.ZodObject<{
9
11
  remained_credits: z.ZodNullable<z.ZodNumber>;
10
12
  plan_total_credits: z.ZodNullable<z.ZodNumber>;
11
13
  }, z.core.$loose>;
12
- declare const scrapingantGetApiCreditsUsage: import("@keystrokehq/action").WorkflowActionDefinition<Record<string, never>, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
14
+ declare const scrapingantGetApiCreditsUsage: AppAction<typeof ScrapingantGetApiCreditsUsageInput, typeof ScrapingantGetApiCreditsUsageOutput, typeof scrapingant.credential>;
13
15
  //#endregion
14
16
  export { scrapingantGetApiCreditsUsage };
15
17
  //# sourceMappingURL=get-api-credits-usage.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-api-credits-usage.d.mts","names":[],"sources":["../../src/actions/get-api-credits-usage.ts"],"mappings":";;;cAIa,kCAAA,EAAkC,CAAA,CAAA,SAAA,KAAA,CAAA,CAAA,IAAA,CAAA,MAAA;AAAA,cAClC,mCAAA,EAAmC,CAAA,CAAA,SAAA;;;;;;;cAQnC,6BAAA,gCAA6B,wBAAA,CAAA,MAAA,wDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
1
+ {"version":3,"file":"get-api-credits-usage.d.mts","names":[],"sources":["../../src/actions/get-api-credits-usage.ts"],"mappings":";;;;;cAMa,kCAAA,EAAkC,CAAA,CAAA,SAAA,KAAA,CAAA,CAAA,IAAA,CAAA,MAAA;AAAA,cAClC,mCAAA,EAAmC,CAAA,CAAA,SAAA;;;;;;;cAQnC,6BAAA,EAA+B,SAAA,QACnC,kCAAA,SACA,mCAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,4 @@
1
+ import "../app.mjs";
1
2
  import { action } from "../action.mjs";
2
3
  import { z } from "zod";
3
4
  const scrapingantGetApiCreditsUsage = action("SCRAPINGANT_GET_API_CREDITS_USAGE", {
@@ -1 +1 @@
1
- {"version":3,"file":"get-api-credits-usage.mjs","names":[],"sources":["../../src/actions/get-api-credits-usage.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapingantGetApiCreditsUsageInput = z.object({}).describe(\"Request model for GetApiCreditsUsage action.\\nThis action does not require any specific request parameters beyond authentication.\");\nexport const ScrapingantGetApiCreditsUsageOutput = z.object({\n end_date: z.string().describe(\"The end date of the current billing period in ISO 8601 format (e.g., '2026-02-07T11:34:42.437395').\").nullable(),\n plan_name: z.string().describe(\"The name of the current subscription plan (e.g., 'Free', 'Hobby', 'Business').\").nullable(),\n start_date: z.string().describe(\"The start date of the current billing period in ISO 8601 format (e.g., '2026-01-08T11:34:42.437390').\").nullable(),\n remained_credits: z.number().int().describe(\"The number of API credits remaining for the current billing period.\").nullable(),\n plan_total_credits: z.number().int().describe(\"The total number of API credits included in the current subscription plan.\").nullable(),\n}).passthrough().describe(\"Response model for GetApiCreditsUsage action.\");\n\nexport const scrapingantGetApiCreditsUsage = action(\"SCRAPINGANT_GET_API_CREDITS_USAGE\", {\n slug: \"scrapingant-get-api-credits-usage\",\n name: \"Get API Credits Usage\",\n description: \"This tool retrieves the current API credit usage status for the authenticated ScrapingAnt account. It enables users to monitor their consumption of API credits, check their current usage against the subscription limits, and manage their API credits effectively.\",\n input: ScrapingantGetApiCreditsUsageInput,\n output: ScrapingantGetApiCreditsUsageOutput,\n});\n"],"mappings":";;AAaA,MAAa,gCAAgC,OAAO,qCAAqC;CACvF,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAbgD,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,mIAa/D;CACP,QAbiD,EAAE,OAAO;EAC1D,UAAU,EAAE,OAAO,CAAC,CAAC,SAAS,qGAAqG,CAAC,CAAC,SAAS;EAC9I,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,gFAAgF,CAAC,CAAC,SAAS;EAC1H,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,uGAAuG,CAAC,CAAC,SAAS;EAClJ,kBAAkB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,qEAAqE,CAAC,CAAC,SAAS;EAC5H,oBAAoB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,4EAA4E,CAAC,CAAC,SAAS;CACvI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,+CAOhB;AACV,CAAC"}
1
+ {"version":3,"file":"get-api-credits-usage.mjs","names":[],"sources":["../../src/actions/get-api-credits-usage.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { scrapingant } from \"../app\";\n\nexport const ScrapingantGetApiCreditsUsageInput = z.object({}).describe(\"Request model for GetApiCreditsUsage action.\\nThis action does not require any specific request parameters beyond authentication.\");\nexport const ScrapingantGetApiCreditsUsageOutput = z.object({\n end_date: z.string().describe(\"The end date of the current billing period in ISO 8601 format (e.g., '2026-02-07T11:34:42.437395').\").nullable(),\n plan_name: z.string().describe(\"The name of the current subscription plan (e.g., 'Free', 'Hobby', 'Business').\").nullable(),\n start_date: z.string().describe(\"The start date of the current billing period in ISO 8601 format (e.g., '2026-01-08T11:34:42.437390').\").nullable(),\n remained_credits: z.number().int().describe(\"The number of API credits remaining for the current billing period.\").nullable(),\n plan_total_credits: z.number().int().describe(\"The total number of API credits included in the current subscription plan.\").nullable(),\n}).passthrough().describe(\"Response model for GetApiCreditsUsage action.\");\n\nexport const scrapingantGetApiCreditsUsage: AppAction<\n typeof ScrapingantGetApiCreditsUsageInput,\n typeof ScrapingantGetApiCreditsUsageOutput,\n typeof scrapingant.credential\n> = action(\"SCRAPINGANT_GET_API_CREDITS_USAGE\", {\n slug: \"scrapingant-get-api-credits-usage\",\n name: \"Get API Credits Usage\",\n description: \"This tool retrieves the current API credit usage status for the authenticated ScrapingAnt account. It enables users to monitor their consumption of API credits, check their current usage against the subscription limits, and manage their API credits effectively.\",\n input: ScrapingantGetApiCreditsUsageInput,\n output: ScrapingantGetApiCreditsUsageOutput,\n});\n"],"mappings":";;;AAeA,MAAa,gCAIT,OAAO,qCAAqC;CAC9C,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAjBgD,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,mIAiB/D;CACP,QAjBiD,EAAE,OAAO;EAC1D,UAAU,EAAE,OAAO,CAAC,CAAC,SAAS,qGAAqG,CAAC,CAAC,SAAS;EAC9I,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,gFAAgF,CAAC,CAAC,SAAS;EAC1H,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,uGAAuG,CAAC,CAAC,SAAS;EAClJ,kBAAkB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,qEAAqE,CAAC,CAAC,SAAS;EAC5H,oBAAoB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,4EAA4E,CAAC,CAAC,SAAS;CACvI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,+CAWhB;AACV,CAAC"}
@@ -1,3 +1,4 @@
1
+ require("../app.cjs");
1
2
  const require_action = require("../action.cjs");
2
3
  let zod = require("zod");
3
4
  //#region src/actions/scrape-web-page.ts
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-web-page.cjs","names":["z","action"],"sources":["../../src/actions/scrape-web-page.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapingantScrapeWebPageInput = z.object({\n url: z.string().describe(\"URL of the web page to scrape.\"),\n browser: z.boolean().default(true).describe(\"Enable to use a headless browser for scraping. Defaults to True. If False, JavaScript will not be rendered.\").optional(),\n cookies: z.string().describe(\"Cookies to pass with the scraping request.\").optional(),\n js_snippet: z.string().describe(\"Base64 encoded JavaScript snippet to execute on the page. Requires headless browser.\").optional(),\n proxy_type: z.enum([\"datacenter\", \"residential\"]).describe(\"Specifies the type of proxy to use.\").optional(),\n proxy_country: z.string().describe(\"Specifies the country for the proxy.\").optional(),\n block_resource: z.array(z.enum([\"document\", \"stylesheet\", \"image\", \"media\", \"font\", \"script\", \"texttrack\", \"xhr\", \"fetch\", \"eventsource\", \"websocket\", \"manifest\", \"other\"])).describe(\"List of resource types to block. Requires headless browser.\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the result. Requires headless browser.\").optional(),\n return_page_source: z.boolean().default(false).describe(\"Enable to return the raw HTML from the server without JavaScript rendering. Requires headless browser. Defaults to False.\").optional(),\n});\nexport const ScrapingantScrapeWebPageOutput = z.object({\n content: z.string().describe(\"The HTML content of the scraped web page.\").nullable(),\n}).passthrough();\n\nexport const scrapingantScrapeWebPage = action(\"SCRAPINGANT_SCRAPE_WEB_PAGE\", {\n slug: \"scrapingant-scrape-web-page\",\n name: \"Scrape Web Page\",\n description: \"This tool scrapes a web page using the ScrapingAnt API. It fetches the HTML content of the specified URL. Users can customize the scraping behavior by enabling a headless browser, using proxies, waiting for specific elements, executing JavaScript, passing cookies, and blocking certain resources.\",\n input: ScrapingantScrapeWebPageInput,\n output: ScrapingantScrapeWebPageOutput,\n});\n"],"mappings":";;;AAIA,MAAa,gCAAgCA,IAAAA,EAAE,OAAO;CACpD,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gCAAgC;CACzD,SAASA,IAAAA,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;CACpK,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,4CAA4C,CAAC,CAAC,SAAS;CACpF,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,sFAAsF,CAAC,CAAC,SAAS;CACjI,YAAYA,IAAAA,EAAE,KAAK,CAAC,cAAc,aAAa,CAAC,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;CAC3G,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;CACpF,gBAAgBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,KAAK;EAAC;EAAY;EAAc;EAAS;EAAS;EAAQ;EAAU;EAAa;EAAO;EAAS;EAAe;EAAa;EAAY;CAAO,CAAC,CAAC,CAAC,CAAC,SAAS,6DAA6D,CAAC,CAAC,SAAS;CAC/P,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kFAAkF,CAAC,CAAC,SAAS;CACpI,oBAAoBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS;AAChM,CAAC;AACD,MAAa,iCAAiCA,IAAAA,EAAE,OAAO,EACrD,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS,EACrF,CAAC,CAAC,CAAC,YAAY;AAEf,MAAa,2BAA2BC,eAAAA,OAAO,+BAA+B;CAC5E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"scrape-web-page.cjs","names":["z","action"],"sources":["../../src/actions/scrape-web-page.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { scrapingant } from \"../app\";\n\nexport const ScrapingantScrapeWebPageInput = z.object({\n url: z.string().describe(\"URL of the web page to scrape.\"),\n browser: z.boolean().default(true).describe(\"Enable to use a headless browser for scraping. Defaults to True. If False, JavaScript will not be rendered.\").optional(),\n cookies: z.string().describe(\"Cookies to pass with the scraping request.\").optional(),\n js_snippet: z.string().describe(\"Base64 encoded JavaScript snippet to execute on the page. Requires headless browser.\").optional(),\n proxy_type: z.enum([\"datacenter\", \"residential\"]).describe(\"Specifies the type of proxy to use.\").optional(),\n proxy_country: z.string().describe(\"Specifies the country for the proxy.\").optional(),\n block_resource: z.array(z.enum([\"document\", \"stylesheet\", \"image\", \"media\", \"font\", \"script\", \"texttrack\", \"xhr\", \"fetch\", \"eventsource\", \"websocket\", \"manifest\", \"other\"])).describe(\"List of resource types to block. Requires headless browser.\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the result. Requires headless browser.\").optional(),\n return_page_source: z.boolean().default(false).describe(\"Enable to return the raw HTML from the server without JavaScript rendering. Requires headless browser. Defaults to False.\").optional(),\n});\nexport const ScrapingantScrapeWebPageOutput = z.object({\n content: z.string().describe(\"The HTML content of the scraped web page.\").nullable(),\n}).passthrough();\n\nexport const scrapingantScrapeWebPage: AppAction<\n typeof ScrapingantScrapeWebPageInput,\n typeof ScrapingantScrapeWebPageOutput,\n typeof scrapingant.credential\n> = action(\"SCRAPINGANT_SCRAPE_WEB_PAGE\", {\n slug: \"scrapingant-scrape-web-page\",\n name: \"Scrape Web Page\",\n description: \"This tool scrapes a web page using the ScrapingAnt API. It fetches the HTML content of the specified URL. Users can customize the scraping behavior by enabling a headless browser, using proxies, waiting for specific elements, executing JavaScript, passing cookies, and blocking certain resources.\",\n input: ScrapingantScrapeWebPageInput,\n output: ScrapingantScrapeWebPageOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,gCAAgCA,IAAAA,EAAE,OAAO;CACpD,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gCAAgC;CACzD,SAASA,IAAAA,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;CACpK,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,4CAA4C,CAAC,CAAC,SAAS;CACpF,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,sFAAsF,CAAC,CAAC,SAAS;CACjI,YAAYA,IAAAA,EAAE,KAAK,CAAC,cAAc,aAAa,CAAC,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;CAC3G,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;CACpF,gBAAgBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,KAAK;EAAC;EAAY;EAAc;EAAS;EAAS;EAAQ;EAAU;EAAa;EAAO;EAAS;EAAe;EAAa;EAAY;CAAO,CAAC,CAAC,CAAC,CAAC,SAAS,6DAA6D,CAAC,CAAC,SAAS;CAC/P,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kFAAkF,CAAC,CAAC,SAAS;CACpI,oBAAoBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS;AAChM,CAAC;AACD,MAAa,iCAAiCA,IAAAA,EAAE,OAAO,EACrD,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS,EACrF,CAAC,CAAC,CAAC,YAAY;AAEf,MAAa,2BAITC,eAAAA,OAAO,+BAA+B;CACxC,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -1,3 +1,5 @@
1
+ import { scrapingant } from "../app.cjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/scrape-web-page.d.ts
@@ -32,17 +34,7 @@ declare const ScrapingantScrapeWebPageInput: z.ZodObject<{
32
34
  declare const ScrapingantScrapeWebPageOutput: z.ZodObject<{
33
35
  content: z.ZodNullable<z.ZodString>;
34
36
  }, z.core.$loose>;
35
- declare const scrapingantScrapeWebPage: import("@keystrokehq/action").WorkflowActionDefinition<{
36
- url: string;
37
- browser?: boolean | undefined;
38
- cookies?: string | undefined;
39
- js_snippet?: string | undefined;
40
- proxy_type?: "datacenter" | "residential" | undefined;
41
- proxy_country?: string | undefined;
42
- block_resource?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "eventsource" | "websocket" | "manifest" | "other")[] | undefined;
43
- wait_for_selector?: string | undefined;
44
- return_page_source?: boolean | undefined;
45
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
37
+ declare const scrapingantScrapeWebPage: AppAction<typeof ScrapingantScrapeWebPageInput, typeof ScrapingantScrapeWebPageOutput, typeof scrapingant.credential>;
46
38
  //#endregion
47
39
  export { scrapingantScrapeWebPage };
48
40
  //# sourceMappingURL=scrape-web-page.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-web-page.d.cts","names":[],"sources":["../../src/actions/scrape-web-page.ts"],"mappings":";;;cAIa,6BAAA,EAA6B,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAW7B,8BAAA,EAA8B,CAAA,CAAA,SAAA;;;cAI9B,wBAAA,gCAAwB,wBAAA"}
1
+ {"version":3,"file":"scrape-web-page.d.cts","names":[],"sources":["../../src/actions/scrape-web-page.ts"],"mappings":";;;;;cAMa,6BAAA,EAA6B,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAW7B,8BAAA,EAA8B,CAAA,CAAA,SAAA;;;cAI9B,wBAAA,EAA0B,SAAA,QAC9B,6BAAA,SACA,8BAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,5 @@
1
+ import { scrapingant } from "../app.mjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/scrape-web-page.d.ts
@@ -32,17 +34,7 @@ declare const ScrapingantScrapeWebPageInput: z.ZodObject<{
32
34
  declare const ScrapingantScrapeWebPageOutput: z.ZodObject<{
33
35
  content: z.ZodNullable<z.ZodString>;
34
36
  }, z.core.$loose>;
35
- declare const scrapingantScrapeWebPage: import("@keystrokehq/action").WorkflowActionDefinition<{
36
- url: string;
37
- browser?: boolean | undefined;
38
- cookies?: string | undefined;
39
- js_snippet?: string | undefined;
40
- proxy_type?: "datacenter" | "residential" | undefined;
41
- proxy_country?: string | undefined;
42
- block_resource?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "eventsource" | "websocket" | "manifest" | "other")[] | undefined;
43
- wait_for_selector?: string | undefined;
44
- return_page_source?: boolean | undefined;
45
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
37
+ declare const scrapingantScrapeWebPage: AppAction<typeof ScrapingantScrapeWebPageInput, typeof ScrapingantScrapeWebPageOutput, typeof scrapingant.credential>;
46
38
  //#endregion
47
39
  export { scrapingantScrapeWebPage };
48
40
  //# sourceMappingURL=scrape-web-page.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-web-page.d.mts","names":[],"sources":["../../src/actions/scrape-web-page.ts"],"mappings":";;;cAIa,6BAAA,EAA6B,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAW7B,8BAAA,EAA8B,CAAA,CAAA,SAAA;;;cAI9B,wBAAA,gCAAwB,wBAAA"}
1
+ {"version":3,"file":"scrape-web-page.d.mts","names":[],"sources":["../../src/actions/scrape-web-page.ts"],"mappings":";;;;;cAMa,6BAAA,EAA6B,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAW7B,8BAAA,EAA8B,CAAA,CAAA,SAAA;;;cAI9B,wBAAA,EAA0B,SAAA,QAC9B,6BAAA,SACA,8BAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,4 @@
1
+ import "../app.mjs";
1
2
  import { action } from "../action.mjs";
2
3
  import { z } from "zod";
3
4
  const scrapingantScrapeWebPage = action("SCRAPINGANT_SCRAPE_WEB_PAGE", {
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-web-page.mjs","names":[],"sources":["../../src/actions/scrape-web-page.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapingantScrapeWebPageInput = z.object({\n url: z.string().describe(\"URL of the web page to scrape.\"),\n browser: z.boolean().default(true).describe(\"Enable to use a headless browser for scraping. Defaults to True. If False, JavaScript will not be rendered.\").optional(),\n cookies: z.string().describe(\"Cookies to pass with the scraping request.\").optional(),\n js_snippet: z.string().describe(\"Base64 encoded JavaScript snippet to execute on the page. Requires headless browser.\").optional(),\n proxy_type: z.enum([\"datacenter\", \"residential\"]).describe(\"Specifies the type of proxy to use.\").optional(),\n proxy_country: z.string().describe(\"Specifies the country for the proxy.\").optional(),\n block_resource: z.array(z.enum([\"document\", \"stylesheet\", \"image\", \"media\", \"font\", \"script\", \"texttrack\", \"xhr\", \"fetch\", \"eventsource\", \"websocket\", \"manifest\", \"other\"])).describe(\"List of resource types to block. Requires headless browser.\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the result. Requires headless browser.\").optional(),\n return_page_source: z.boolean().default(false).describe(\"Enable to return the raw HTML from the server without JavaScript rendering. Requires headless browser. Defaults to False.\").optional(),\n});\nexport const ScrapingantScrapeWebPageOutput = z.object({\n content: z.string().describe(\"The HTML content of the scraped web page.\").nullable(),\n}).passthrough();\n\nexport const scrapingantScrapeWebPage = action(\"SCRAPINGANT_SCRAPE_WEB_PAGE\", {\n slug: \"scrapingant-scrape-web-page\",\n name: \"Scrape Web Page\",\n description: \"This tool scrapes a web page using the ScrapingAnt API. It fetches the HTML content of the specified URL. Users can customize the scraping behavior by enabling a headless browser, using proxies, waiting for specific elements, executing JavaScript, passing cookies, and blocking certain resources.\",\n input: ScrapingantScrapeWebPageInput,\n output: ScrapingantScrapeWebPageOutput,\n});\n"],"mappings":";;AAmBA,MAAa,2BAA2B,OAAO,+BAA+B;CAC5E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAnB2C,EAAE,OAAO;EACpD,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,gCAAgC;EACzD,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;EACpK,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,4CAA4C,CAAC,CAAC,SAAS;EACpF,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,sFAAsF,CAAC,CAAC,SAAS;EACjI,YAAY,EAAE,KAAK,CAAC,cAAc,aAAa,CAAC,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;EAC3G,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;EACpF,gBAAgB,EAAE,MAAM,EAAE,KAAK;GAAC;GAAY;GAAc;GAAS;GAAS;GAAQ;GAAU;GAAa;GAAO;GAAS;GAAe;GAAa;GAAY;EAAO,CAAC,CAAC,CAAC,CAAC,SAAS,6DAA6D,CAAC,CAAC,SAAS;EAC/P,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,kFAAkF,CAAC,CAAC,SAAS;EACpI,oBAAoB,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS;CAChM,CASS;CACP,QAT4C,EAAE,OAAO,EACrD,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS,EACrF,CAAC,CAAC,CAAC,YAOO;AACV,CAAC"}
1
+ {"version":3,"file":"scrape-web-page.mjs","names":[],"sources":["../../src/actions/scrape-web-page.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { scrapingant } from \"../app\";\n\nexport const ScrapingantScrapeWebPageInput = z.object({\n url: z.string().describe(\"URL of the web page to scrape.\"),\n browser: z.boolean().default(true).describe(\"Enable to use a headless browser for scraping. Defaults to True. If False, JavaScript will not be rendered.\").optional(),\n cookies: z.string().describe(\"Cookies to pass with the scraping request.\").optional(),\n js_snippet: z.string().describe(\"Base64 encoded JavaScript snippet to execute on the page. Requires headless browser.\").optional(),\n proxy_type: z.enum([\"datacenter\", \"residential\"]).describe(\"Specifies the type of proxy to use.\").optional(),\n proxy_country: z.string().describe(\"Specifies the country for the proxy.\").optional(),\n block_resource: z.array(z.enum([\"document\", \"stylesheet\", \"image\", \"media\", \"font\", \"script\", \"texttrack\", \"xhr\", \"fetch\", \"eventsource\", \"websocket\", \"manifest\", \"other\"])).describe(\"List of resource types to block. Requires headless browser.\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the result. Requires headless browser.\").optional(),\n return_page_source: z.boolean().default(false).describe(\"Enable to return the raw HTML from the server without JavaScript rendering. Requires headless browser. Defaults to False.\").optional(),\n});\nexport const ScrapingantScrapeWebPageOutput = z.object({\n content: z.string().describe(\"The HTML content of the scraped web page.\").nullable(),\n}).passthrough();\n\nexport const scrapingantScrapeWebPage: AppAction<\n typeof ScrapingantScrapeWebPageInput,\n typeof ScrapingantScrapeWebPageOutput,\n typeof scrapingant.credential\n> = action(\"SCRAPINGANT_SCRAPE_WEB_PAGE\", {\n slug: \"scrapingant-scrape-web-page\",\n name: \"Scrape Web Page\",\n description: \"This tool scrapes a web page using the ScrapingAnt API. It fetches the HTML content of the specified URL. Users can customize the scraping behavior by enabling a headless browser, using proxies, waiting for specific elements, executing JavaScript, passing cookies, and blocking certain resources.\",\n input: ScrapingantScrapeWebPageInput,\n output: ScrapingantScrapeWebPageOutput,\n});\n"],"mappings":";;;AAqBA,MAAa,2BAIT,OAAO,+BAA+B;CACxC,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAvB2C,EAAE,OAAO;EACpD,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,gCAAgC;EACzD,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;EACpK,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,4CAA4C,CAAC,CAAC,SAAS;EACpF,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,sFAAsF,CAAC,CAAC,SAAS;EACjI,YAAY,EAAE,KAAK,CAAC,cAAc,aAAa,CAAC,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;EAC3G,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;EACpF,gBAAgB,EAAE,MAAM,EAAE,KAAK;GAAC;GAAY;GAAc;GAAS;GAAS;GAAQ;GAAU;GAAa;GAAO;GAAS;GAAe;GAAa;GAAY;EAAO,CAAC,CAAC,CAAC,CAAC,SAAS,6DAA6D,CAAC,CAAC,SAAS;EAC/P,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,kFAAkF,CAAC,CAAC,SAAS;EACpI,oBAAoB,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS;CAChM,CAaS;CACP,QAb4C,EAAE,OAAO,EACrD,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS,EACrF,CAAC,CAAC,CAAC,YAWO;AACV,CAAC"}
@@ -1,3 +1,4 @@
1
+ require("../app.cjs");
1
2
  const require_action = require("../action.cjs");
2
3
  let zod = require("zod");
3
4
  //#region src/actions/scrape-webpage-post.ts
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-webpage-post.cjs","names":["z","action"],"sources":["../../src/actions/scrape-webpage-post.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapingantScrapeWebpagePostInput = z.object({\n url: z.string().describe(\"URL of the target web page to scrape using POST request.\"),\n browser: z.boolean().default(true).describe(\"Enable to use a headless browser for scraping. Defaults to True. If False, JavaScript will not be rendered.\").optional(),\n cookies: z.string().describe(\"Cookies to pass with the scraping request to the target site. Format: cookie_name1=cookie_value1;cookie_name2=cookie_value2\").optional(),\n post_data: z.record(z.string(), z.unknown()).describe(\"POST data to send to the target web page. This will be forwarded transparently to the target. Useful for form submissions and APIs requiring POST requests.\").optional(),\n js_snippet: z.string().describe(\"Base64 encoded JavaScript snippet to execute once the page is loaded. Requires browser=True.\").optional(),\n proxy_type: z.enum([\"datacenter\", \"residential\"]).describe(\"Specifies the type of proxy to use for the request. Defaults to datacenter.\").optional(),\n proxy_country: z.string().describe(\"Specifies the country for the proxy. If not specified, a random country will be used.\").optional(),\n block_resource: z.array(z.enum([\"document\", \"stylesheet\", \"image\", \"media\", \"font\", \"script\", \"texttrack\", \"xhr\", \"fetch\", \"eventsource\", \"websocket\", \"manifest\", \"other\"])).describe(\"List of resource types to block. Prevents cloud browser from loading specified resource types. Requires browser=True.\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the result. Requires browser=True.\").optional(),\n return_page_source: z.boolean().default(false).describe(\"Enable to return the raw HTML from the server without JavaScript rendering. Requires browser=True. Defaults to False.\").optional(),\n});\nexport const ScrapingantScrapeWebpagePostOutput = z.object({\n content: z.string().describe(\"The HTML content of the scraped web page returned from the POST request.\").nullable(),\n}).passthrough();\n\nexport const scrapingantScrapeWebpagePost = action(\"SCRAPINGANT_SCRAPE_WEBPAGE_POST\", {\n slug: \"scrapingant-scrape-webpage-post\",\n name: \"Scrape Webpage via POST\",\n description: \"Tool to perform a POST request through ScrapingAnt's proxy to scrape a webpage. Use when you need to scrape pages that require POST method, such as form submissions or APIs that only accept POST requests. Data is forwarded transparently to the target web page.\",\n input: ScrapingantScrapeWebpagePostInput,\n output: ScrapingantScrapeWebpagePostOutput,\n});\n"],"mappings":";;;AAIA,MAAa,oCAAoCA,IAAAA,EAAE,OAAO;CACxD,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0DAA0D;CACnF,SAASA,IAAAA,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;CACpK,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,6HAA6H,CAAC,CAAC,SAAS;CACrK,WAAWA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,6JAA6J,CAAC,CAAC,SAAS;CAC9N,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,8FAA8F,CAAC,CAAC,SAAS;CACzI,YAAYA,IAAAA,EAAE,KAAK,CAAC,cAAc,aAAa,CAAC,CAAC,CAAC,SAAS,6EAA6E,CAAC,CAAC,SAAS;CACnJ,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uFAAuF,CAAC,CAAC,SAAS;CACrI,gBAAgBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,KAAK;EAAC;EAAY;EAAc;EAAS;EAAS;EAAQ;EAAU;EAAa;EAAO;EAAS;EAAe;EAAa;EAAY;CAAO,CAAC,CAAC,CAAC,CAAC,SAAS,uHAAuH,CAAC,CAAC,SAAS;CACzT,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,8EAA8E,CAAC,CAAC,SAAS;CAChI,oBAAoBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,uHAAuH,CAAC,CAAC,SAAS;AAC5L,CAAC;AACD,MAAa,qCAAqCA,IAAAA,EAAE,OAAO,EACzD,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0EAA0E,CAAC,CAAC,SAAS,EACpH,CAAC,CAAC,CAAC,YAAY;AAEf,MAAa,+BAA+BC,eAAAA,OAAO,mCAAmC;CACpF,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"scrape-webpage-post.cjs","names":["z","action"],"sources":["../../src/actions/scrape-webpage-post.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { scrapingant } from \"../app\";\n\nexport const ScrapingantScrapeWebpagePostInput = z.object({\n url: z.string().describe(\"URL of the target web page to scrape using POST request.\"),\n browser: z.boolean().default(true).describe(\"Enable to use a headless browser for scraping. Defaults to True. If False, JavaScript will not be rendered.\").optional(),\n cookies: z.string().describe(\"Cookies to pass with the scraping request to the target site. Format: cookie_name1=cookie_value1;cookie_name2=cookie_value2\").optional(),\n post_data: z.record(z.string(), z.unknown()).describe(\"POST data to send to the target web page. This will be forwarded transparently to the target. Useful for form submissions and APIs requiring POST requests.\").optional(),\n js_snippet: z.string().describe(\"Base64 encoded JavaScript snippet to execute once the page is loaded. Requires browser=True.\").optional(),\n proxy_type: z.enum([\"datacenter\", \"residential\"]).describe(\"Specifies the type of proxy to use for the request. Defaults to datacenter.\").optional(),\n proxy_country: z.string().describe(\"Specifies the country for the proxy. If not specified, a random country will be used.\").optional(),\n block_resource: z.array(z.enum([\"document\", \"stylesheet\", \"image\", \"media\", \"font\", \"script\", \"texttrack\", \"xhr\", \"fetch\", \"eventsource\", \"websocket\", \"manifest\", \"other\"])).describe(\"List of resource types to block. Prevents cloud browser from loading specified resource types. Requires browser=True.\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the result. Requires browser=True.\").optional(),\n return_page_source: z.boolean().default(false).describe(\"Enable to return the raw HTML from the server without JavaScript rendering. Requires browser=True. Defaults to False.\").optional(),\n});\nexport const ScrapingantScrapeWebpagePostOutput = z.object({\n content: z.string().describe(\"The HTML content of the scraped web page returned from the POST request.\").nullable(),\n}).passthrough();\n\nexport const scrapingantScrapeWebpagePost: AppAction<\n typeof ScrapingantScrapeWebpagePostInput,\n typeof ScrapingantScrapeWebpagePostOutput,\n typeof scrapingant.credential\n> = action(\"SCRAPINGANT_SCRAPE_WEBPAGE_POST\", {\n slug: \"scrapingant-scrape-webpage-post\",\n name: \"Scrape Webpage via POST\",\n description: \"Tool to perform a POST request through ScrapingAnt's proxy to scrape a webpage. Use when you need to scrape pages that require POST method, such as form submissions or APIs that only accept POST requests. Data is forwarded transparently to the target web page.\",\n input: ScrapingantScrapeWebpagePostInput,\n output: ScrapingantScrapeWebpagePostOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,oCAAoCA,IAAAA,EAAE,OAAO;CACxD,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0DAA0D;CACnF,SAASA,IAAAA,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;CACpK,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,6HAA6H,CAAC,CAAC,SAAS;CACrK,WAAWA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,6JAA6J,CAAC,CAAC,SAAS;CAC9N,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,8FAA8F,CAAC,CAAC,SAAS;CACzI,YAAYA,IAAAA,EAAE,KAAK,CAAC,cAAc,aAAa,CAAC,CAAC,CAAC,SAAS,6EAA6E,CAAC,CAAC,SAAS;CACnJ,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uFAAuF,CAAC,CAAC,SAAS;CACrI,gBAAgBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,KAAK;EAAC;EAAY;EAAc;EAAS;EAAS;EAAQ;EAAU;EAAa;EAAO;EAAS;EAAe;EAAa;EAAY;CAAO,CAAC,CAAC,CAAC,CAAC,SAAS,uHAAuH,CAAC,CAAC,SAAS;CACzT,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,8EAA8E,CAAC,CAAC,SAAS;CAChI,oBAAoBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,uHAAuH,CAAC,CAAC,SAAS;AAC5L,CAAC;AACD,MAAa,qCAAqCA,IAAAA,EAAE,OAAO,EACzD,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0EAA0E,CAAC,CAAC,SAAS,EACpH,CAAC,CAAC,CAAC,YAAY;AAEf,MAAa,+BAITC,eAAAA,OAAO,mCAAmC;CAC5C,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -1,3 +1,5 @@
1
+ import { scrapingant } from "../app.cjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/scrape-webpage-post.d.ts
@@ -33,18 +35,7 @@ declare const ScrapingantScrapeWebpagePostInput: z.ZodObject<{
33
35
  declare const ScrapingantScrapeWebpagePostOutput: z.ZodObject<{
34
36
  content: z.ZodNullable<z.ZodString>;
35
37
  }, z.core.$loose>;
36
- declare const scrapingantScrapeWebpagePost: import("@keystrokehq/action").WorkflowActionDefinition<{
37
- url: string;
38
- browser?: boolean | undefined;
39
- cookies?: string | undefined;
40
- post_data?: Record<string, unknown> | undefined;
41
- js_snippet?: string | undefined;
42
- proxy_type?: "datacenter" | "residential" | undefined;
43
- proxy_country?: string | undefined;
44
- block_resource?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "eventsource" | "websocket" | "manifest" | "other")[] | undefined;
45
- wait_for_selector?: string | undefined;
46
- return_page_source?: boolean | undefined;
47
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
38
+ declare const scrapingantScrapeWebpagePost: AppAction<typeof ScrapingantScrapeWebpagePostInput, typeof ScrapingantScrapeWebpagePostOutput, typeof scrapingant.credential>;
48
39
  //#endregion
49
40
  export { scrapingantScrapeWebpagePost };
50
41
  //# sourceMappingURL=scrape-webpage-post.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-webpage-post.d.cts","names":[],"sources":["../../src/actions/scrape-webpage-post.ts"],"mappings":";;;cAIa,iCAAA,EAAiC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAYjC,kCAAA,EAAkC,CAAA,CAAA,SAAA;;;cAIlC,4BAAA,gCAA4B,wBAAA;;;;cAMvC,MAAA"}
1
+ {"version":3,"file":"scrape-webpage-post.d.cts","names":[],"sources":["../../src/actions/scrape-webpage-post.ts"],"mappings":";;;;;cAMa,iCAAA,EAAiC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAYjC,kCAAA,EAAkC,CAAA,CAAA,SAAA;;;cAIlC,4BAAA,EAA8B,SAAA,QAClC,iCAAA,SACA,kCAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,5 @@
1
+ import { scrapingant } from "../app.mjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/scrape-webpage-post.d.ts
@@ -33,18 +35,7 @@ declare const ScrapingantScrapeWebpagePostInput: z.ZodObject<{
33
35
  declare const ScrapingantScrapeWebpagePostOutput: z.ZodObject<{
34
36
  content: z.ZodNullable<z.ZodString>;
35
37
  }, z.core.$loose>;
36
- declare const scrapingantScrapeWebpagePost: import("@keystrokehq/action").WorkflowActionDefinition<{
37
- url: string;
38
- browser?: boolean | undefined;
39
- cookies?: string | undefined;
40
- post_data?: Record<string, unknown> | undefined;
41
- js_snippet?: string | undefined;
42
- proxy_type?: "datacenter" | "residential" | undefined;
43
- proxy_country?: string | undefined;
44
- block_resource?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "eventsource" | "websocket" | "manifest" | "other")[] | undefined;
45
- wait_for_selector?: string | undefined;
46
- return_page_source?: boolean | undefined;
47
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
38
+ declare const scrapingantScrapeWebpagePost: AppAction<typeof ScrapingantScrapeWebpagePostInput, typeof ScrapingantScrapeWebpagePostOutput, typeof scrapingant.credential>;
48
39
  //#endregion
49
40
  export { scrapingantScrapeWebpagePost };
50
41
  //# sourceMappingURL=scrape-webpage-post.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-webpage-post.d.mts","names":[],"sources":["../../src/actions/scrape-webpage-post.ts"],"mappings":";;;cAIa,iCAAA,EAAiC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAYjC,kCAAA,EAAkC,CAAA,CAAA,SAAA;;;cAIlC,4BAAA,gCAA4B,wBAAA;;;;cAMvC,MAAA"}
1
+ {"version":3,"file":"scrape-webpage-post.d.mts","names":[],"sources":["../../src/actions/scrape-webpage-post.ts"],"mappings":";;;;;cAMa,iCAAA,EAAiC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAYjC,kCAAA,EAAkC,CAAA,CAAA,SAAA;;;cAIlC,4BAAA,EAA8B,SAAA,QAClC,iCAAA,SACA,kCAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,4 @@
1
+ import "../app.mjs";
1
2
  import { action } from "../action.mjs";
2
3
  import { z } from "zod";
3
4
  const scrapingantScrapeWebpagePost = action("SCRAPINGANT_SCRAPE_WEBPAGE_POST", {
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-webpage-post.mjs","names":[],"sources":["../../src/actions/scrape-webpage-post.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapingantScrapeWebpagePostInput = z.object({\n url: z.string().describe(\"URL of the target web page to scrape using POST request.\"),\n browser: z.boolean().default(true).describe(\"Enable to use a headless browser for scraping. Defaults to True. If False, JavaScript will not be rendered.\").optional(),\n cookies: z.string().describe(\"Cookies to pass with the scraping request to the target site. Format: cookie_name1=cookie_value1;cookie_name2=cookie_value2\").optional(),\n post_data: z.record(z.string(), z.unknown()).describe(\"POST data to send to the target web page. This will be forwarded transparently to the target. Useful for form submissions and APIs requiring POST requests.\").optional(),\n js_snippet: z.string().describe(\"Base64 encoded JavaScript snippet to execute once the page is loaded. Requires browser=True.\").optional(),\n proxy_type: z.enum([\"datacenter\", \"residential\"]).describe(\"Specifies the type of proxy to use for the request. Defaults to datacenter.\").optional(),\n proxy_country: z.string().describe(\"Specifies the country for the proxy. If not specified, a random country will be used.\").optional(),\n block_resource: z.array(z.enum([\"document\", \"stylesheet\", \"image\", \"media\", \"font\", \"script\", \"texttrack\", \"xhr\", \"fetch\", \"eventsource\", \"websocket\", \"manifest\", \"other\"])).describe(\"List of resource types to block. Prevents cloud browser from loading specified resource types. Requires browser=True.\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the result. Requires browser=True.\").optional(),\n return_page_source: z.boolean().default(false).describe(\"Enable to return the raw HTML from the server without JavaScript rendering. Requires browser=True. Defaults to False.\").optional(),\n});\nexport const ScrapingantScrapeWebpagePostOutput = z.object({\n content: z.string().describe(\"The HTML content of the scraped web page returned from the POST request.\").nullable(),\n}).passthrough();\n\nexport const scrapingantScrapeWebpagePost = action(\"SCRAPINGANT_SCRAPE_WEBPAGE_POST\", {\n slug: \"scrapingant-scrape-webpage-post\",\n name: \"Scrape Webpage via POST\",\n description: \"Tool to perform a POST request through ScrapingAnt's proxy to scrape a webpage. Use when you need to scrape pages that require POST method, such as form submissions or APIs that only accept POST requests. Data is forwarded transparently to the target web page.\",\n input: ScrapingantScrapeWebpagePostInput,\n output: ScrapingantScrapeWebpagePostOutput,\n});\n"],"mappings":";;AAoBA,MAAa,+BAA+B,OAAO,mCAAmC;CACpF,MAAM;CACN,MAAM;CACN,aAAa;CACb,OApB+C,EAAE,OAAO;EACxD,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,0DAA0D;EACnF,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;EACpK,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,6HAA6H,CAAC,CAAC,SAAS;EACrK,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,6JAA6J,CAAC,CAAC,SAAS;EAC9N,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,8FAA8F,CAAC,CAAC,SAAS;EACzI,YAAY,EAAE,KAAK,CAAC,cAAc,aAAa,CAAC,CAAC,CAAC,SAAS,6EAA6E,CAAC,CAAC,SAAS;EACnJ,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,uFAAuF,CAAC,CAAC,SAAS;EACrI,gBAAgB,EAAE,MAAM,EAAE,KAAK;GAAC;GAAY;GAAc;GAAS;GAAS;GAAQ;GAAU;GAAa;GAAO;GAAS;GAAe;GAAa;GAAY;EAAO,CAAC,CAAC,CAAC,CAAC,SAAS,uHAAuH,CAAC,CAAC,SAAS;EACzT,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,8EAA8E,CAAC,CAAC,SAAS;EAChI,oBAAoB,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,uHAAuH,CAAC,CAAC,SAAS;CAC5L,CASS;CACP,QATgD,EAAE,OAAO,EACzD,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,0EAA0E,CAAC,CAAC,SAAS,EACpH,CAAC,CAAC,CAAC,YAOO;AACV,CAAC"}
1
+ {"version":3,"file":"scrape-webpage-post.mjs","names":[],"sources":["../../src/actions/scrape-webpage-post.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { scrapingant } from \"../app\";\n\nexport const ScrapingantScrapeWebpagePostInput = z.object({\n url: z.string().describe(\"URL of the target web page to scrape using POST request.\"),\n browser: z.boolean().default(true).describe(\"Enable to use a headless browser for scraping. Defaults to True. If False, JavaScript will not be rendered.\").optional(),\n cookies: z.string().describe(\"Cookies to pass with the scraping request to the target site. Format: cookie_name1=cookie_value1;cookie_name2=cookie_value2\").optional(),\n post_data: z.record(z.string(), z.unknown()).describe(\"POST data to send to the target web page. This will be forwarded transparently to the target. Useful for form submissions and APIs requiring POST requests.\").optional(),\n js_snippet: z.string().describe(\"Base64 encoded JavaScript snippet to execute once the page is loaded. Requires browser=True.\").optional(),\n proxy_type: z.enum([\"datacenter\", \"residential\"]).describe(\"Specifies the type of proxy to use for the request. Defaults to datacenter.\").optional(),\n proxy_country: z.string().describe(\"Specifies the country for the proxy. If not specified, a random country will be used.\").optional(),\n block_resource: z.array(z.enum([\"document\", \"stylesheet\", \"image\", \"media\", \"font\", \"script\", \"texttrack\", \"xhr\", \"fetch\", \"eventsource\", \"websocket\", \"manifest\", \"other\"])).describe(\"List of resource types to block. Prevents cloud browser from loading specified resource types. Requires browser=True.\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the result. Requires browser=True.\").optional(),\n return_page_source: z.boolean().default(false).describe(\"Enable to return the raw HTML from the server without JavaScript rendering. Requires browser=True. Defaults to False.\").optional(),\n});\nexport const ScrapingantScrapeWebpagePostOutput = z.object({\n content: z.string().describe(\"The HTML content of the scraped web page returned from the POST request.\").nullable(),\n}).passthrough();\n\nexport const scrapingantScrapeWebpagePost: AppAction<\n typeof ScrapingantScrapeWebpagePostInput,\n typeof ScrapingantScrapeWebpagePostOutput,\n typeof scrapingant.credential\n> = action(\"SCRAPINGANT_SCRAPE_WEBPAGE_POST\", {\n slug: \"scrapingant-scrape-webpage-post\",\n name: \"Scrape Webpage via POST\",\n description: \"Tool to perform a POST request through ScrapingAnt's proxy to scrape a webpage. Use when you need to scrape pages that require POST method, such as form submissions or APIs that only accept POST requests. Data is forwarded transparently to the target web page.\",\n input: ScrapingantScrapeWebpagePostInput,\n output: ScrapingantScrapeWebpagePostOutput,\n});\n"],"mappings":";;;AAsBA,MAAa,+BAIT,OAAO,mCAAmC;CAC5C,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAxB+C,EAAE,OAAO;EACxD,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,0DAA0D;EACnF,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;EACpK,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,6HAA6H,CAAC,CAAC,SAAS;EACrK,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,6JAA6J,CAAC,CAAC,SAAS;EAC9N,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,8FAA8F,CAAC,CAAC,SAAS;EACzI,YAAY,EAAE,KAAK,CAAC,cAAc,aAAa,CAAC,CAAC,CAAC,SAAS,6EAA6E,CAAC,CAAC,SAAS;EACnJ,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,uFAAuF,CAAC,CAAC,SAAS;EACrI,gBAAgB,EAAE,MAAM,EAAE,KAAK;GAAC;GAAY;GAAc;GAAS;GAAS;GAAQ;GAAU;GAAa;GAAO;GAAS;GAAe;GAAa;GAAY;EAAO,CAAC,CAAC,CAAC,CAAC,SAAS,uHAAuH,CAAC,CAAC,SAAS;EACzT,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,8EAA8E,CAAC,CAAC,SAAS;EAChI,oBAAoB,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,uHAAuH,CAAC,CAAC,SAAS;CAC5L,CAaS;CACP,QAbgD,EAAE,OAAO,EACzD,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,0EAA0E,CAAC,CAAC,SAAS,EACpH,CAAC,CAAC,CAAC,YAWO;AACV,CAAC"}
@@ -1,3 +1,4 @@
1
+ require("../app.cjs");
1
2
  const require_action = require("../action.cjs");
2
3
  let zod = require("zod");
3
4
  //#region src/actions/scrape-webpage-put.ts
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-webpage-put.cjs","names":["z","action"],"sources":["../../src/actions/scrape-webpage-put.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapingantScrapeWebpagePutInput = z.object({\n url: z.string().describe(\"URL of the web page to scrape using PUT method.\"),\n browser: z.boolean().default(true).describe(\"Enable to use a headless browser for scraping. Defaults to True. If False, JavaScript will not be rendered.\").optional(),\n cookies: z.string().describe(\"Cookies to pass with the scraping request to the target site. Format: cookie_name1=cookie_value1;cookie_name2=cookie_value2\").optional(),\n js_snippet: z.string().describe(\"Base64 encoded JavaScript snippet to execute on the page once loaded. Requires headless browser.\").optional(),\n proxy_type: z.enum([\"datacenter\", \"residential\"]).describe(\"Specifies the type of proxy to use. Defaults to datacenter.\").optional(),\n content_type: z.string().describe(\"Content-Type header to use for the PUT request. Will be sent as Ant-Content-Type header.\").optional(),\n request_body: z.string().describe(\"Request body data to send with the PUT request. This data will be forwarded transparently to the target web page.\").optional(),\n proxy_country: z.string().describe(\"Specifies the country for the proxy. If not specified, request will be made from a random country.\").optional(),\n block_resource: z.array(z.enum([\"document\", \"stylesheet\", \"image\", \"media\", \"font\", \"script\", \"texttrack\", \"xhr\", \"fetch\", \"eventsource\", \"websocket\", \"manifest\", \"other\"])).describe(\"List of resource types to block from loading. Requires headless browser.\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the result. Requires headless browser.\").optional(),\n return_page_source: z.boolean().default(false).describe(\"Enable to return the raw HTML from the server without JavaScript rendering. Requires headless browser. Defaults to False.\").optional(),\n});\nexport const ScrapingantScrapeWebpagePutOutput = z.object({\n content: z.string().describe(\"The HTML content of the scraped web page returned by the PUT request.\").nullable(),\n}).passthrough();\n\nexport const scrapingantScrapeWebpagePut = action(\"SCRAPINGANT_SCRAPE_WEBPAGE_PUT\", {\n slug: \"scrapingant-scrape-webpage-put\",\n name: \"Scrape Webpage with PUT\",\n description: \"Tool to perform a PUT request through ScrapingAnt's proxy to scrape a webpage that requires PUT method. Use when the target webpage requires PUT method for data submission. Data is forwarded transparently to the target web page.\",\n input: ScrapingantScrapeWebpagePutInput,\n output: ScrapingantScrapeWebpagePutOutput,\n});\n"],"mappings":";;;AAIA,MAAa,mCAAmCA,IAAAA,EAAE,OAAO;CACvD,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,iDAAiD;CAC1E,SAASA,IAAAA,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;CACpK,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,6HAA6H,CAAC,CAAC,SAAS;CACrK,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kGAAkG,CAAC,CAAC,SAAS;CAC7I,YAAYA,IAAAA,EAAE,KAAK,CAAC,cAAc,aAAa,CAAC,CAAC,CAAC,SAAS,6DAA6D,CAAC,CAAC,SAAS;CACnI,cAAcA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0FAA0F,CAAC,CAAC,SAAS;CACvI,cAAcA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,mHAAmH,CAAC,CAAC,SAAS;CAChK,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,oGAAoG,CAAC,CAAC,SAAS;CAClJ,gBAAgBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,KAAK;EAAC;EAAY;EAAc;EAAS;EAAS;EAAQ;EAAU;EAAa;EAAO;EAAS;EAAe;EAAa;EAAY;CAAO,CAAC,CAAC,CAAC,CAAC,SAAS,0EAA0E,CAAC,CAAC,SAAS;CAC5Q,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kFAAkF,CAAC,CAAC,SAAS;CACpI,oBAAoBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS;AAChM,CAAC;AACD,MAAa,oCAAoCA,IAAAA,EAAE,OAAO,EACxD,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uEAAuE,CAAC,CAAC,SAAS,EACjH,CAAC,CAAC,CAAC,YAAY;AAEf,MAAa,8BAA8BC,eAAAA,OAAO,kCAAkC;CAClF,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"scrape-webpage-put.cjs","names":["z","action"],"sources":["../../src/actions/scrape-webpage-put.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { scrapingant } from \"../app\";\n\nexport const ScrapingantScrapeWebpagePutInput = z.object({\n url: z.string().describe(\"URL of the web page to scrape using PUT method.\"),\n browser: z.boolean().default(true).describe(\"Enable to use a headless browser for scraping. Defaults to True. If False, JavaScript will not be rendered.\").optional(),\n cookies: z.string().describe(\"Cookies to pass with the scraping request to the target site. Format: cookie_name1=cookie_value1;cookie_name2=cookie_value2\").optional(),\n js_snippet: z.string().describe(\"Base64 encoded JavaScript snippet to execute on the page once loaded. Requires headless browser.\").optional(),\n proxy_type: z.enum([\"datacenter\", \"residential\"]).describe(\"Specifies the type of proxy to use. Defaults to datacenter.\").optional(),\n content_type: z.string().describe(\"Content-Type header to use for the PUT request. Will be sent as Ant-Content-Type header.\").optional(),\n request_body: z.string().describe(\"Request body data to send with the PUT request. This data will be forwarded transparently to the target web page.\").optional(),\n proxy_country: z.string().describe(\"Specifies the country for the proxy. If not specified, request will be made from a random country.\").optional(),\n block_resource: z.array(z.enum([\"document\", \"stylesheet\", \"image\", \"media\", \"font\", \"script\", \"texttrack\", \"xhr\", \"fetch\", \"eventsource\", \"websocket\", \"manifest\", \"other\"])).describe(\"List of resource types to block from loading. Requires headless browser.\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the result. Requires headless browser.\").optional(),\n return_page_source: z.boolean().default(false).describe(\"Enable to return the raw HTML from the server without JavaScript rendering. Requires headless browser. Defaults to False.\").optional(),\n});\nexport const ScrapingantScrapeWebpagePutOutput = z.object({\n content: z.string().describe(\"The HTML content of the scraped web page returned by the PUT request.\").nullable(),\n}).passthrough();\n\nexport const scrapingantScrapeWebpagePut: AppAction<\n typeof ScrapingantScrapeWebpagePutInput,\n typeof ScrapingantScrapeWebpagePutOutput,\n typeof scrapingant.credential\n> = action(\"SCRAPINGANT_SCRAPE_WEBPAGE_PUT\", {\n slug: \"scrapingant-scrape-webpage-put\",\n name: \"Scrape Webpage with PUT\",\n description: \"Tool to perform a PUT request through ScrapingAnt's proxy to scrape a webpage that requires PUT method. Use when the target webpage requires PUT method for data submission. Data is forwarded transparently to the target web page.\",\n input: ScrapingantScrapeWebpagePutInput,\n output: ScrapingantScrapeWebpagePutOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,mCAAmCA,IAAAA,EAAE,OAAO;CACvD,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,iDAAiD;CAC1E,SAASA,IAAAA,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;CACpK,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,6HAA6H,CAAC,CAAC,SAAS;CACrK,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kGAAkG,CAAC,CAAC,SAAS;CAC7I,YAAYA,IAAAA,EAAE,KAAK,CAAC,cAAc,aAAa,CAAC,CAAC,CAAC,SAAS,6DAA6D,CAAC,CAAC,SAAS;CACnI,cAAcA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0FAA0F,CAAC,CAAC,SAAS;CACvI,cAAcA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,mHAAmH,CAAC,CAAC,SAAS;CAChK,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,oGAAoG,CAAC,CAAC,SAAS;CAClJ,gBAAgBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,KAAK;EAAC;EAAY;EAAc;EAAS;EAAS;EAAQ;EAAU;EAAa;EAAO;EAAS;EAAe;EAAa;EAAY;CAAO,CAAC,CAAC,CAAC,CAAC,SAAS,0EAA0E,CAAC,CAAC,SAAS;CAC5Q,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kFAAkF,CAAC,CAAC,SAAS;CACpI,oBAAoBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS;AAChM,CAAC;AACD,MAAa,oCAAoCA,IAAAA,EAAE,OAAO,EACxD,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uEAAuE,CAAC,CAAC,SAAS,EACjH,CAAC,CAAC,CAAC,YAAY;AAEf,MAAa,8BAITC,eAAAA,OAAO,kCAAkC;CAC3C,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -1,3 +1,5 @@
1
+ import { scrapingant } from "../app.cjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/scrape-webpage-put.d.ts
@@ -34,19 +36,7 @@ declare const ScrapingantScrapeWebpagePutInput: z.ZodObject<{
34
36
  declare const ScrapingantScrapeWebpagePutOutput: z.ZodObject<{
35
37
  content: z.ZodNullable<z.ZodString>;
36
38
  }, z.core.$loose>;
37
- declare const scrapingantScrapeWebpagePut: import("@keystrokehq/action").WorkflowActionDefinition<{
38
- url: string;
39
- browser?: boolean | undefined;
40
- cookies?: string | undefined;
41
- js_snippet?: string | undefined;
42
- proxy_type?: "datacenter" | "residential" | undefined;
43
- content_type?: string | undefined;
44
- request_body?: string | undefined;
45
- proxy_country?: string | undefined;
46
- block_resource?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "eventsource" | "websocket" | "manifest" | "other")[] | undefined;
47
- wait_for_selector?: string | undefined;
48
- return_page_source?: boolean | undefined;
49
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
39
+ declare const scrapingantScrapeWebpagePut: AppAction<typeof ScrapingantScrapeWebpagePutInput, typeof ScrapingantScrapeWebpagePutOutput, typeof scrapingant.credential>;
50
40
  //#endregion
51
41
  export { scrapingantScrapeWebpagePut };
52
42
  //# sourceMappingURL=scrape-webpage-put.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-webpage-put.d.cts","names":[],"sources":["../../src/actions/scrape-webpage-put.ts"],"mappings":";;;cAIa,gCAAA,EAAgC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAahC,iCAAA,EAAiC,CAAA,CAAA,SAAA;;;cAIjC,2BAAA,gCAA2B,wBAAA"}
1
+ {"version":3,"file":"scrape-webpage-put.d.cts","names":[],"sources":["../../src/actions/scrape-webpage-put.ts"],"mappings":";;;;;cAMa,gCAAA,EAAgC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAahC,iCAAA,EAAiC,CAAA,CAAA,SAAA;;;cAIjC,2BAAA,EAA6B,SAAA,QACjC,gCAAA,SACA,iCAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,5 @@
1
+ import { scrapingant } from "../app.mjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/scrape-webpage-put.d.ts
@@ -34,19 +36,7 @@ declare const ScrapingantScrapeWebpagePutInput: z.ZodObject<{
34
36
  declare const ScrapingantScrapeWebpagePutOutput: z.ZodObject<{
35
37
  content: z.ZodNullable<z.ZodString>;
36
38
  }, z.core.$loose>;
37
- declare const scrapingantScrapeWebpagePut: import("@keystrokehq/action").WorkflowActionDefinition<{
38
- url: string;
39
- browser?: boolean | undefined;
40
- cookies?: string | undefined;
41
- js_snippet?: string | undefined;
42
- proxy_type?: "datacenter" | "residential" | undefined;
43
- content_type?: string | undefined;
44
- request_body?: string | undefined;
45
- proxy_country?: string | undefined;
46
- block_resource?: ("document" | "stylesheet" | "image" | "media" | "font" | "script" | "texttrack" | "xhr" | "fetch" | "eventsource" | "websocket" | "manifest" | "other")[] | undefined;
47
- wait_for_selector?: string | undefined;
48
- return_page_source?: boolean | undefined;
49
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
39
+ declare const scrapingantScrapeWebpagePut: AppAction<typeof ScrapingantScrapeWebpagePutInput, typeof ScrapingantScrapeWebpagePutOutput, typeof scrapingant.credential>;
50
40
  //#endregion
51
41
  export { scrapingantScrapeWebpagePut };
52
42
  //# sourceMappingURL=scrape-webpage-put.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-webpage-put.d.mts","names":[],"sources":["../../src/actions/scrape-webpage-put.ts"],"mappings":";;;cAIa,gCAAA,EAAgC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAahC,iCAAA,EAAiC,CAAA,CAAA,SAAA;;;cAIjC,2BAAA,gCAA2B,wBAAA"}
1
+ {"version":3,"file":"scrape-webpage-put.d.mts","names":[],"sources":["../../src/actions/scrape-webpage-put.ts"],"mappings":";;;;;cAMa,gCAAA,EAAgC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAahC,iCAAA,EAAiC,CAAA,CAAA,SAAA;;;cAIjC,2BAAA,EAA6B,SAAA,QACjC,gCAAA,SACA,iCAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,4 @@
1
+ import "../app.mjs";
1
2
  import { action } from "../action.mjs";
2
3
  import { z } from "zod";
3
4
  const scrapingantScrapeWebpagePut = action("SCRAPINGANT_SCRAPE_WEBPAGE_PUT", {
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-webpage-put.mjs","names":[],"sources":["../../src/actions/scrape-webpage-put.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapingantScrapeWebpagePutInput = z.object({\n url: z.string().describe(\"URL of the web page to scrape using PUT method.\"),\n browser: z.boolean().default(true).describe(\"Enable to use a headless browser for scraping. Defaults to True. If False, JavaScript will not be rendered.\").optional(),\n cookies: z.string().describe(\"Cookies to pass with the scraping request to the target site. Format: cookie_name1=cookie_value1;cookie_name2=cookie_value2\").optional(),\n js_snippet: z.string().describe(\"Base64 encoded JavaScript snippet to execute on the page once loaded. Requires headless browser.\").optional(),\n proxy_type: z.enum([\"datacenter\", \"residential\"]).describe(\"Specifies the type of proxy to use. Defaults to datacenter.\").optional(),\n content_type: z.string().describe(\"Content-Type header to use for the PUT request. Will be sent as Ant-Content-Type header.\").optional(),\n request_body: z.string().describe(\"Request body data to send with the PUT request. This data will be forwarded transparently to the target web page.\").optional(),\n proxy_country: z.string().describe(\"Specifies the country for the proxy. If not specified, request will be made from a random country.\").optional(),\n block_resource: z.array(z.enum([\"document\", \"stylesheet\", \"image\", \"media\", \"font\", \"script\", \"texttrack\", \"xhr\", \"fetch\", \"eventsource\", \"websocket\", \"manifest\", \"other\"])).describe(\"List of resource types to block from loading. Requires headless browser.\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the result. Requires headless browser.\").optional(),\n return_page_source: z.boolean().default(false).describe(\"Enable to return the raw HTML from the server without JavaScript rendering. Requires headless browser. Defaults to False.\").optional(),\n});\nexport const ScrapingantScrapeWebpagePutOutput = z.object({\n content: z.string().describe(\"The HTML content of the scraped web page returned by the PUT request.\").nullable(),\n}).passthrough();\n\nexport const scrapingantScrapeWebpagePut = action(\"SCRAPINGANT_SCRAPE_WEBPAGE_PUT\", {\n slug: \"scrapingant-scrape-webpage-put\",\n name: \"Scrape Webpage with PUT\",\n description: \"Tool to perform a PUT request through ScrapingAnt's proxy to scrape a webpage that requires PUT method. Use when the target webpage requires PUT method for data submission. Data is forwarded transparently to the target web page.\",\n input: ScrapingantScrapeWebpagePutInput,\n output: ScrapingantScrapeWebpagePutOutput,\n});\n"],"mappings":";;AAqBA,MAAa,8BAA8B,OAAO,kCAAkC;CAClF,MAAM;CACN,MAAM;CACN,aAAa;CACb,OArB8C,EAAE,OAAO;EACvD,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,iDAAiD;EAC1E,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;EACpK,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,6HAA6H,CAAC,CAAC,SAAS;EACrK,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,kGAAkG,CAAC,CAAC,SAAS;EAC7I,YAAY,EAAE,KAAK,CAAC,cAAc,aAAa,CAAC,CAAC,CAAC,SAAS,6DAA6D,CAAC,CAAC,SAAS;EACnI,cAAc,EAAE,OAAO,CAAC,CAAC,SAAS,0FAA0F,CAAC,CAAC,SAAS;EACvI,cAAc,EAAE,OAAO,CAAC,CAAC,SAAS,mHAAmH,CAAC,CAAC,SAAS;EAChK,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,oGAAoG,CAAC,CAAC,SAAS;EAClJ,gBAAgB,EAAE,MAAM,EAAE,KAAK;GAAC;GAAY;GAAc;GAAS;GAAS;GAAQ;GAAU;GAAa;GAAO;GAAS;GAAe;GAAa;GAAY;EAAO,CAAC,CAAC,CAAC,CAAC,SAAS,0EAA0E,CAAC,CAAC,SAAS;EAC5Q,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,kFAAkF,CAAC,CAAC,SAAS;EACpI,oBAAoB,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS;CAChM,CASS;CACP,QAT+C,EAAE,OAAO,EACxD,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,uEAAuE,CAAC,CAAC,SAAS,EACjH,CAAC,CAAC,CAAC,YAOO;AACV,CAAC"}
1
+ {"version":3,"file":"scrape-webpage-put.mjs","names":[],"sources":["../../src/actions/scrape-webpage-put.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { scrapingant } from \"../app\";\n\nexport const ScrapingantScrapeWebpagePutInput = z.object({\n url: z.string().describe(\"URL of the web page to scrape using PUT method.\"),\n browser: z.boolean().default(true).describe(\"Enable to use a headless browser for scraping. Defaults to True. If False, JavaScript will not be rendered.\").optional(),\n cookies: z.string().describe(\"Cookies to pass with the scraping request to the target site. Format: cookie_name1=cookie_value1;cookie_name2=cookie_value2\").optional(),\n js_snippet: z.string().describe(\"Base64 encoded JavaScript snippet to execute on the page once loaded. Requires headless browser.\").optional(),\n proxy_type: z.enum([\"datacenter\", \"residential\"]).describe(\"Specifies the type of proxy to use. Defaults to datacenter.\").optional(),\n content_type: z.string().describe(\"Content-Type header to use for the PUT request. Will be sent as Ant-Content-Type header.\").optional(),\n request_body: z.string().describe(\"Request body data to send with the PUT request. This data will be forwarded transparently to the target web page.\").optional(),\n proxy_country: z.string().describe(\"Specifies the country for the proxy. If not specified, request will be made from a random country.\").optional(),\n block_resource: z.array(z.enum([\"document\", \"stylesheet\", \"image\", \"media\", \"font\", \"script\", \"texttrack\", \"xhr\", \"fetch\", \"eventsource\", \"websocket\", \"manifest\", \"other\"])).describe(\"List of resource types to block from loading. Requires headless browser.\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the result. Requires headless browser.\").optional(),\n return_page_source: z.boolean().default(false).describe(\"Enable to return the raw HTML from the server without JavaScript rendering. Requires headless browser. Defaults to False.\").optional(),\n});\nexport const ScrapingantScrapeWebpagePutOutput = z.object({\n content: z.string().describe(\"The HTML content of the scraped web page returned by the PUT request.\").nullable(),\n}).passthrough();\n\nexport const scrapingantScrapeWebpagePut: AppAction<\n typeof ScrapingantScrapeWebpagePutInput,\n typeof ScrapingantScrapeWebpagePutOutput,\n typeof scrapingant.credential\n> = action(\"SCRAPINGANT_SCRAPE_WEBPAGE_PUT\", {\n slug: \"scrapingant-scrape-webpage-put\",\n name: \"Scrape Webpage with PUT\",\n description: \"Tool to perform a PUT request through ScrapingAnt's proxy to scrape a webpage that requires PUT method. Use when the target webpage requires PUT method for data submission. Data is forwarded transparently to the target web page.\",\n input: ScrapingantScrapeWebpagePutInput,\n output: ScrapingantScrapeWebpagePutOutput,\n});\n"],"mappings":";;;AAuBA,MAAa,8BAIT,OAAO,kCAAkC;CAC3C,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAzB8C,EAAE,OAAO;EACvD,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,iDAAiD;EAC1E,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;EACpK,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,6HAA6H,CAAC,CAAC,SAAS;EACrK,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,kGAAkG,CAAC,CAAC,SAAS;EAC7I,YAAY,EAAE,KAAK,CAAC,cAAc,aAAa,CAAC,CAAC,CAAC,SAAS,6DAA6D,CAAC,CAAC,SAAS;EACnI,cAAc,EAAE,OAAO,CAAC,CAAC,SAAS,0FAA0F,CAAC,CAAC,SAAS;EACvI,cAAc,EAAE,OAAO,CAAC,CAAC,SAAS,mHAAmH,CAAC,CAAC,SAAS;EAChK,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,oGAAoG,CAAC,CAAC,SAAS;EAClJ,gBAAgB,EAAE,MAAM,EAAE,KAAK;GAAC;GAAY;GAAc;GAAS;GAAS;GAAQ;GAAU;GAAa;GAAO;GAAS;GAAe;GAAa;GAAY;EAAO,CAAC,CAAC,CAAC,CAAC,SAAS,0EAA0E,CAAC,CAAC,SAAS;EAC5Q,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,kFAAkF,CAAC,CAAC,SAAS;EACpI,oBAAoB,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,2HAA2H,CAAC,CAAC,SAAS;CAChM,CAaS;CACP,QAb+C,EAAE,OAAO,EACxD,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,uEAAuE,CAAC,CAAC,SAAS,EACjH,CAAC,CAAC,CAAC,YAWO;AACV,CAAC"}
@@ -1,3 +1,4 @@
1
+ require("../app.cjs");
1
2
  const require_action = require("../action.cjs");
2
3
  let zod = require("zod");
3
4
  //#region src/actions/scrape-with-extended-json-output.ts
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-with-extended-json-output.cjs","names":["z","action"],"sources":["../../src/actions/scrape-with-extended-json-output.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapingantScrapeWithExtendedJsonOutputInput = z.object({\n url: z.string().describe(\"The full URL of the web page to scrape (must include protocol, e.g., https://).\"),\n browser: z.boolean().describe(\"Enable or disable headless browser rendering. When True (default), JavaScript is executed and dynamic content is loaded. Set to False for faster scraping of static pages.\").optional(),\n cookies: z.string().describe(\"Custom cookies to send with the request. Format: 'name1=value1; name2=value2'.\").optional(),\n timeout: z.number().int().describe(\"Maximum time in seconds to wait for the page to load. Must be between 5 and 60. Default is 60 seconds.\").optional(),\n proxy_type: z.string().describe(\"Type of proxy to use: 'datacenter' (faster, cheaper) or 'residential' (better for anti-bot sites). Default is 'datacenter'.\").optional(),\n proxy_country: z.string().describe(\"Two-letter country code (ISO 3166-1 alpha-2) for geographic proxy location (e.g., 'US', 'GB', 'DE').\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the page content. Useful for pages with dynamic content that loads after initial page load.\").optional(),\n return_page_source: z.boolean().describe(\"When True, returns the raw HTML from the server without JavaScript rendering. Useful for faster scraping when JS execution is not needed.\").optional(),\n});\nconst ScrapingantScrapeWithExtendedJsonOutput_HeaderItemSchema = z.object({\n name: z.string().nullable(),\n value: z.string().nullable(),\n}).passthrough();\nconst ScrapingantScrapeWithExtendedJsonOutput_XhrItemSchema = z.object({\n url: z.string().nullable(),\n body: z.string().nullable().optional(),\n method: z.string().nullable(),\n status: z.number().int().nullable(),\n headers: z.array(ScrapingantScrapeWithExtendedJsonOutput_HeaderItemSchema),\n request_body: z.string().nullable().optional(),\n}).passthrough();\nconst ScrapingantScrapeWithExtendedJsonOutput_IframeItemSchema = z.object({\n src: z.string().nullable(),\n html: z.string().nullable(),\n}).passthrough();\nexport const ScrapingantScrapeWithExtendedJsonOutputOutput = z.object({\n html: z.string().describe(\"The full HTML content of the scraped web page, including all rendered content.\").nullable(),\n text: z.string().describe(\"Plain text content extracted from the web page with HTML tags stripped.\").nullable(),\n xhrs: z.array(ScrapingantScrapeWithExtendedJsonOutput_XhrItemSchema).describe(\"XHR and Fetch requests made by the web page during rendering (only available when browser=True). Useful for capturing API calls made by JavaScript.\"),\n cookies: z.string().describe(\"Cookies set by the target web page during the request (format: 'name=value; name2=value2').\").nullable(),\n headers: z.array(ScrapingantScrapeWithExtendedJsonOutput_HeaderItemSchema).describe(\"HTTP response headers from the target web page as name-value pairs.\"),\n iframes: z.array(ScrapingantScrapeWithExtendedJsonOutput_IframeItemSchema).describe(\"Content of iframes embedded in the web page (only available when browser=True).\"),\n status_code: z.number().int().describe(\"The HTTP status code returned by the target web page (e.g., 200 for success, 404 for not found).\").nullable(),\n}).passthrough();\n\nexport const scrapingantScrapeWithExtendedJsonOutput = action(\"SCRAPINGANT_SCRAPE_WITH_EXTENDED_JSON_OUTPUT\", {\n slug: \"scrapingant-scrape-with-extended-json-output\",\n name: \"Scrape with Extended JSON Output\",\n description: \"Scrapes a web page and returns comprehensive data including HTML content, plain text, cookies, HTTP headers, XHR/Fetch requests, and iframe content. This tool uses ScrapingAnt's extended endpoint which provides much richer data than standard scraping: - Full HTML and extracted plain text content - All cookies and HTTP response headers from the target page - Captured XHR/Fetch API requests made by the page (useful for finding hidden APIs) - Content from embedded iframes Best used when you need more than just the HTML - such as analyzing cookies, headers, or JavaScript API calls made by a page. For simple HTML scraping, consider using the basic scrape tool instead for lower API credit usage.\",\n input: ScrapingantScrapeWithExtendedJsonOutputInput,\n output: ScrapingantScrapeWithExtendedJsonOutputOutput,\n});\n"],"mappings":";;;AAIA,MAAa,+CAA+CA,IAAAA,EAAE,OAAO;CACnE,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,iFAAiF;CAC1G,SAASA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,4KAA4K,CAAC,CAAC,SAAS;CACrN,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gFAAgF,CAAC,CAAC,SAAS;CACxH,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,wGAAwG,CAAC,CAAC,SAAS;CACtJ,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,6HAA6H,CAAC,CAAC,SAAS;CACxK,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,sGAAsG,CAAC,CAAC,SAAS;CACpJ,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uIAAuI,CAAC,CAAC,SAAS;CACzL,oBAAoBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,2IAA2I,CAAC,CAAC,SAAS;AACjM,CAAC;AACD,MAAM,2DAA2DA,IAAAA,EAAE,OAAO;CACxE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;CAC1B,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;AAC7B,CAAC,CAAC,CAAC,YAAY;AACf,MAAM,wDAAwDA,IAAAA,EAAE,OAAO;CACrE,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;CACzB,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACrC,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;CAC5B,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS;CAClC,SAASA,IAAAA,EAAE,MAAM,wDAAwD;CACzE,cAAcA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC/C,CAAC,CAAC,CAAC,YAAY;AACf,MAAM,2DAA2DA,IAAAA,EAAE,OAAO;CACxE,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;CACzB,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;AAC5B,CAAC,CAAC,CAAC,YAAY;AACf,MAAa,gDAAgDA,IAAAA,EAAE,OAAO;CACpE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gFAAgF,CAAC,CAAC,SAAS;CACrH,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,yEAAyE,CAAC,CAAC,SAAS;CAC9G,MAAMA,IAAAA,EAAE,MAAM,qDAAqD,CAAC,CAAC,SAAS,qJAAqJ;CACnO,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,6FAA6F,CAAC,CAAC,SAAS;CACrI,SAASA,IAAAA,EAAE,MAAM,wDAAwD,CAAC,CAAC,SAAS,qEAAqE;CACzJ,SAASA,IAAAA,EAAE,MAAM,wDAAwD,CAAC,CAAC,SAAS,iFAAiF;CACrK,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kGAAkG,CAAC,CAAC,SAAS;AACtJ,CAAC,CAAC,CAAC,YAAY;AAEf,MAAa,0CAA0CC,eAAAA,OAAO,gDAAgD;CAC5G,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"scrape-with-extended-json-output.cjs","names":["z","action"],"sources":["../../src/actions/scrape-with-extended-json-output.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { scrapingant } from \"../app\";\n\nexport const ScrapingantScrapeWithExtendedJsonOutputInput = z.object({\n url: z.string().describe(\"The full URL of the web page to scrape (must include protocol, e.g., https://).\"),\n browser: z.boolean().describe(\"Enable or disable headless browser rendering. When True (default), JavaScript is executed and dynamic content is loaded. Set to False for faster scraping of static pages.\").optional(),\n cookies: z.string().describe(\"Custom cookies to send with the request. Format: 'name1=value1; name2=value2'.\").optional(),\n timeout: z.number().int().describe(\"Maximum time in seconds to wait for the page to load. Must be between 5 and 60. Default is 60 seconds.\").optional(),\n proxy_type: z.string().describe(\"Type of proxy to use: 'datacenter' (faster, cheaper) or 'residential' (better for anti-bot sites). Default is 'datacenter'.\").optional(),\n proxy_country: z.string().describe(\"Two-letter country code (ISO 3166-1 alpha-2) for geographic proxy location (e.g., 'US', 'GB', 'DE').\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the page content. Useful for pages with dynamic content that loads after initial page load.\").optional(),\n return_page_source: z.boolean().describe(\"When True, returns the raw HTML from the server without JavaScript rendering. Useful for faster scraping when JS execution is not needed.\").optional(),\n});\nconst ScrapingantScrapeWithExtendedJsonOutput_HeaderItemSchema = z.object({\n name: z.string().nullable(),\n value: z.string().nullable(),\n}).passthrough();\nconst ScrapingantScrapeWithExtendedJsonOutput_XhrItemSchema = z.object({\n url: z.string().nullable(),\n body: z.string().nullable().optional(),\n method: z.string().nullable(),\n status: z.number().int().nullable(),\n headers: z.array(ScrapingantScrapeWithExtendedJsonOutput_HeaderItemSchema),\n request_body: z.string().nullable().optional(),\n}).passthrough();\nconst ScrapingantScrapeWithExtendedJsonOutput_IframeItemSchema = z.object({\n src: z.string().nullable(),\n html: z.string().nullable(),\n}).passthrough();\nexport const ScrapingantScrapeWithExtendedJsonOutputOutput = z.object({\n html: z.string().describe(\"The full HTML content of the scraped web page, including all rendered content.\").nullable(),\n text: z.string().describe(\"Plain text content extracted from the web page with HTML tags stripped.\").nullable(),\n xhrs: z.array(ScrapingantScrapeWithExtendedJsonOutput_XhrItemSchema).describe(\"XHR and Fetch requests made by the web page during rendering (only available when browser=True). Useful for capturing API calls made by JavaScript.\"),\n cookies: z.string().describe(\"Cookies set by the target web page during the request (format: 'name=value; name2=value2').\").nullable(),\n headers: z.array(ScrapingantScrapeWithExtendedJsonOutput_HeaderItemSchema).describe(\"HTTP response headers from the target web page as name-value pairs.\"),\n iframes: z.array(ScrapingantScrapeWithExtendedJsonOutput_IframeItemSchema).describe(\"Content of iframes embedded in the web page (only available when browser=True).\"),\n status_code: z.number().int().describe(\"The HTTP status code returned by the target web page (e.g., 200 for success, 404 for not found).\").nullable(),\n}).passthrough();\n\nexport const scrapingantScrapeWithExtendedJsonOutput: AppAction<\n typeof ScrapingantScrapeWithExtendedJsonOutputInput,\n typeof ScrapingantScrapeWithExtendedJsonOutputOutput,\n typeof scrapingant.credential\n> = action(\"SCRAPINGANT_SCRAPE_WITH_EXTENDED_JSON_OUTPUT\", {\n slug: \"scrapingant-scrape-with-extended-json-output\",\n name: \"Scrape with Extended JSON Output\",\n description: \"Scrapes a web page and returns comprehensive data including HTML content, plain text, cookies, HTTP headers, XHR/Fetch requests, and iframe content. This tool uses ScrapingAnt's extended endpoint which provides much richer data than standard scraping: - Full HTML and extracted plain text content - All cookies and HTTP response headers from the target page - Captured XHR/Fetch API requests made by the page (useful for finding hidden APIs) - Content from embedded iframes Best used when you need more than just the HTML - such as analyzing cookies, headers, or JavaScript API calls made by a page. For simple HTML scraping, consider using the basic scrape tool instead for lower API credit usage.\",\n input: ScrapingantScrapeWithExtendedJsonOutputInput,\n output: ScrapingantScrapeWithExtendedJsonOutputOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,+CAA+CA,IAAAA,EAAE,OAAO;CACnE,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,iFAAiF;CAC1G,SAASA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,4KAA4K,CAAC,CAAC,SAAS;CACrN,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gFAAgF,CAAC,CAAC,SAAS;CACxH,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,wGAAwG,CAAC,CAAC,SAAS;CACtJ,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,6HAA6H,CAAC,CAAC,SAAS;CACxK,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,sGAAsG,CAAC,CAAC,SAAS;CACpJ,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uIAAuI,CAAC,CAAC,SAAS;CACzL,oBAAoBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,2IAA2I,CAAC,CAAC,SAAS;AACjM,CAAC;AACD,MAAM,2DAA2DA,IAAAA,EAAE,OAAO;CACxE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;CAC1B,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;AAC7B,CAAC,CAAC,CAAC,YAAY;AACf,MAAM,wDAAwDA,IAAAA,EAAE,OAAO;CACrE,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;CACzB,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACrC,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;CAC5B,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS;CAClC,SAASA,IAAAA,EAAE,MAAM,wDAAwD;CACzE,cAAcA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC/C,CAAC,CAAC,CAAC,YAAY;AACf,MAAM,2DAA2DA,IAAAA,EAAE,OAAO;CACxE,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;CACzB,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS;AAC5B,CAAC,CAAC,CAAC,YAAY;AACf,MAAa,gDAAgDA,IAAAA,EAAE,OAAO;CACpE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gFAAgF,CAAC,CAAC,SAAS;CACrH,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,yEAAyE,CAAC,CAAC,SAAS;CAC9G,MAAMA,IAAAA,EAAE,MAAM,qDAAqD,CAAC,CAAC,SAAS,qJAAqJ;CACnO,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,6FAA6F,CAAC,CAAC,SAAS;CACrI,SAASA,IAAAA,EAAE,MAAM,wDAAwD,CAAC,CAAC,SAAS,qEAAqE;CACzJ,SAASA,IAAAA,EAAE,MAAM,wDAAwD,CAAC,CAAC,SAAS,iFAAiF;CACrK,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kGAAkG,CAAC,CAAC,SAAS;AACtJ,CAAC,CAAC,CAAC,YAAY;AAEf,MAAa,0CAITC,eAAAA,OAAO,gDAAgD;CACzD,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -1,3 +1,5 @@
1
+ import { scrapingant } from "../app.cjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/scrape-with-extended-json-output.d.ts
@@ -36,16 +38,7 @@ declare const ScrapingantScrapeWithExtendedJsonOutputOutput: z.ZodObject<{
36
38
  }, z.core.$loose>>;
37
39
  status_code: z.ZodNullable<z.ZodNumber>;
38
40
  }, z.core.$loose>;
39
- declare const scrapingantScrapeWithExtendedJsonOutput: import("@keystrokehq/action").WorkflowActionDefinition<{
40
- url: string;
41
- browser?: boolean | undefined;
42
- cookies?: string | undefined;
43
- timeout?: number | undefined;
44
- proxy_type?: string | undefined;
45
- proxy_country?: string | undefined;
46
- wait_for_selector?: string | undefined;
47
- return_page_source?: boolean | undefined;
48
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
41
+ declare const scrapingantScrapeWithExtendedJsonOutput: AppAction<typeof ScrapingantScrapeWithExtendedJsonOutputInput, typeof ScrapingantScrapeWithExtendedJsonOutputOutput, typeof scrapingant.credential>;
49
42
  //#endregion
50
43
  export { scrapingantScrapeWithExtendedJsonOutput };
51
44
  //# sourceMappingURL=scrape-with-extended-json-output.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-with-extended-json-output.d.cts","names":[],"sources":["../../src/actions/scrape-with-extended-json-output.ts"],"mappings":";;;cAIa,4CAAA,EAA4C,CAAA,CAAA,SAAA;;;;;;;;;;cA0B5C,6CAAA,EAA6C,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;cAU7C,uCAAA,gCAAuC,wBAAA"}
1
+ {"version":3,"file":"scrape-with-extended-json-output.d.cts","names":[],"sources":["../../src/actions/scrape-with-extended-json-output.ts"],"mappings":";;;;;cAMa,4CAAA,EAA4C,CAAA,CAAA,SAAA;;;;;;;;;;cA0B5C,6CAAA,EAA6C,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;cAU7C,uCAAA,EAAyC,SAAA,QAC7C,4CAAA,SACA,6CAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,5 @@
1
+ import { scrapingant } from "../app.mjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/scrape-with-extended-json-output.d.ts
@@ -36,16 +38,7 @@ declare const ScrapingantScrapeWithExtendedJsonOutputOutput: z.ZodObject<{
36
38
  }, z.core.$loose>>;
37
39
  status_code: z.ZodNullable<z.ZodNumber>;
38
40
  }, z.core.$loose>;
39
- declare const scrapingantScrapeWithExtendedJsonOutput: import("@keystrokehq/action").WorkflowActionDefinition<{
40
- url: string;
41
- browser?: boolean | undefined;
42
- cookies?: string | undefined;
43
- timeout?: number | undefined;
44
- proxy_type?: string | undefined;
45
- proxy_country?: string | undefined;
46
- wait_for_selector?: string | undefined;
47
- return_page_source?: boolean | undefined;
48
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
41
+ declare const scrapingantScrapeWithExtendedJsonOutput: AppAction<typeof ScrapingantScrapeWithExtendedJsonOutputInput, typeof ScrapingantScrapeWithExtendedJsonOutputOutput, typeof scrapingant.credential>;
49
42
  //#endregion
50
43
  export { scrapingantScrapeWithExtendedJsonOutput };
51
44
  //# sourceMappingURL=scrape-with-extended-json-output.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-with-extended-json-output.d.mts","names":[],"sources":["../../src/actions/scrape-with-extended-json-output.ts"],"mappings":";;;cAIa,4CAAA,EAA4C,CAAA,CAAA,SAAA;;;;;;;;;;cA0B5C,6CAAA,EAA6C,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;cAU7C,uCAAA,gCAAuC,wBAAA"}
1
+ {"version":3,"file":"scrape-with-extended-json-output.d.mts","names":[],"sources":["../../src/actions/scrape-with-extended-json-output.ts"],"mappings":";;;;;cAMa,4CAAA,EAA4C,CAAA,CAAA,SAAA;;;;;;;;;;cA0B5C,6CAAA,EAA6C,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;cAU7C,uCAAA,EAAyC,SAAA,QAC7C,4CAAA,SACA,6CAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,4 @@
1
+ import "../app.mjs";
1
2
  import { action } from "../action.mjs";
2
3
  import { z } from "zod";
3
4
  //#region src/actions/scrape-with-extended-json-output.ts
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-with-extended-json-output.mjs","names":[],"sources":["../../src/actions/scrape-with-extended-json-output.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapingantScrapeWithExtendedJsonOutputInput = z.object({\n url: z.string().describe(\"The full URL of the web page to scrape (must include protocol, e.g., https://).\"),\n browser: z.boolean().describe(\"Enable or disable headless browser rendering. When True (default), JavaScript is executed and dynamic content is loaded. Set to False for faster scraping of static pages.\").optional(),\n cookies: z.string().describe(\"Custom cookies to send with the request. Format: 'name1=value1; name2=value2'.\").optional(),\n timeout: z.number().int().describe(\"Maximum time in seconds to wait for the page to load. Must be between 5 and 60. Default is 60 seconds.\").optional(),\n proxy_type: z.string().describe(\"Type of proxy to use: 'datacenter' (faster, cheaper) or 'residential' (better for anti-bot sites). Default is 'datacenter'.\").optional(),\n proxy_country: z.string().describe(\"Two-letter country code (ISO 3166-1 alpha-2) for geographic proxy location (e.g., 'US', 'GB', 'DE').\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the page content. Useful for pages with dynamic content that loads after initial page load.\").optional(),\n return_page_source: z.boolean().describe(\"When True, returns the raw HTML from the server without JavaScript rendering. Useful for faster scraping when JS execution is not needed.\").optional(),\n});\nconst ScrapingantScrapeWithExtendedJsonOutput_HeaderItemSchema = z.object({\n name: z.string().nullable(),\n value: z.string().nullable(),\n}).passthrough();\nconst ScrapingantScrapeWithExtendedJsonOutput_XhrItemSchema = z.object({\n url: z.string().nullable(),\n body: z.string().nullable().optional(),\n method: z.string().nullable(),\n status: z.number().int().nullable(),\n headers: z.array(ScrapingantScrapeWithExtendedJsonOutput_HeaderItemSchema),\n request_body: z.string().nullable().optional(),\n}).passthrough();\nconst ScrapingantScrapeWithExtendedJsonOutput_IframeItemSchema = z.object({\n src: z.string().nullable(),\n html: z.string().nullable(),\n}).passthrough();\nexport const ScrapingantScrapeWithExtendedJsonOutputOutput = z.object({\n html: z.string().describe(\"The full HTML content of the scraped web page, including all rendered content.\").nullable(),\n text: z.string().describe(\"Plain text content extracted from the web page with HTML tags stripped.\").nullable(),\n xhrs: z.array(ScrapingantScrapeWithExtendedJsonOutput_XhrItemSchema).describe(\"XHR and Fetch requests made by the web page during rendering (only available when browser=True). Useful for capturing API calls made by JavaScript.\"),\n cookies: z.string().describe(\"Cookies set by the target web page during the request (format: 'name=value; name2=value2').\").nullable(),\n headers: z.array(ScrapingantScrapeWithExtendedJsonOutput_HeaderItemSchema).describe(\"HTTP response headers from the target web page as name-value pairs.\"),\n iframes: z.array(ScrapingantScrapeWithExtendedJsonOutput_IframeItemSchema).describe(\"Content of iframes embedded in the web page (only available when browser=True).\"),\n status_code: z.number().int().describe(\"The HTTP status code returned by the target web page (e.g., 200 for success, 404 for not found).\").nullable(),\n}).passthrough();\n\nexport const scrapingantScrapeWithExtendedJsonOutput = action(\"SCRAPINGANT_SCRAPE_WITH_EXTENDED_JSON_OUTPUT\", {\n slug: \"scrapingant-scrape-with-extended-json-output\",\n name: \"Scrape with Extended JSON Output\",\n description: \"Scrapes a web page and returns comprehensive data including HTML content, plain text, cookies, HTTP headers, XHR/Fetch requests, and iframe content. This tool uses ScrapingAnt's extended endpoint which provides much richer data than standard scraping: - Full HTML and extracted plain text content - All cookies and HTTP response headers from the target page - Captured XHR/Fetch API requests made by the page (useful for finding hidden APIs) - Content from embedded iframes Best used when you need more than just the HTML - such as analyzing cookies, headers, or JavaScript API calls made by a page. For simple HTML scraping, consider using the basic scrape tool instead for lower API credit usage.\",\n input: ScrapingantScrapeWithExtendedJsonOutputInput,\n output: ScrapingantScrapeWithExtendedJsonOutputOutput,\n});\n"],"mappings":";;;AAIA,MAAa,+CAA+C,EAAE,OAAO;CACnE,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,iFAAiF;CAC1G,SAAS,EAAE,QAAQ,CAAC,CAAC,SAAS,4KAA4K,CAAC,CAAC,SAAS;CACrN,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,gFAAgF,CAAC,CAAC,SAAS;CACxH,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,wGAAwG,CAAC,CAAC,SAAS;CACtJ,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,6HAA6H,CAAC,CAAC,SAAS;CACxK,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,sGAAsG,CAAC,CAAC,SAAS;CACpJ,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,uIAAuI,CAAC,CAAC,SAAS;CACzL,oBAAoB,EAAE,QAAQ,CAAC,CAAC,SAAS,2IAA2I,CAAC,CAAC,SAAS;AACjM,CAAC;AACD,MAAM,2DAA2D,EAAE,OAAO;CACxE,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS;CAC1B,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS;AAC7B,CAAC,CAAC,CAAC,YAAY;AACf,MAAM,wDAAwD,EAAE,OAAO;CACrE,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS;CACzB,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACrC,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS;CAC5B,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS;CAClC,SAAS,EAAE,MAAM,wDAAwD;CACzE,cAAc,EAAE,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC/C,CAAC,CAAC,CAAC,YAAY;AACf,MAAM,2DAA2D,EAAE,OAAO;CACxE,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS;CACzB,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS;AAC5B,CAAC,CAAC,CAAC,YAAY;AAWf,MAAa,0CAA0C,OAAO,gDAAgD;CAC5G,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAf2D,EAAE,OAAO;EACpE,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,gFAAgF,CAAC,CAAC,SAAS;EACrH,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,yEAAyE,CAAC,CAAC,SAAS;EAC9G,MAAM,EAAE,MAAM,qDAAqD,CAAC,CAAC,SAAS,qJAAqJ;EACnO,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,6FAA6F,CAAC,CAAC,SAAS;EACrI,SAAS,EAAE,MAAM,wDAAwD,CAAC,CAAC,SAAS,qEAAqE;EACzJ,SAAS,EAAE,MAAM,wDAAwD,CAAC,CAAC,SAAS,iFAAiF;EACrK,aAAa,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kGAAkG,CAAC,CAAC,SAAS;CACtJ,CAAC,CAAC,CAAC,YAOO;AACV,CAAC"}
1
+ {"version":3,"file":"scrape-with-extended-json-output.mjs","names":[],"sources":["../../src/actions/scrape-with-extended-json-output.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { scrapingant } from \"../app\";\n\nexport const ScrapingantScrapeWithExtendedJsonOutputInput = z.object({\n url: z.string().describe(\"The full URL of the web page to scrape (must include protocol, e.g., https://).\"),\n browser: z.boolean().describe(\"Enable or disable headless browser rendering. When True (default), JavaScript is executed and dynamic content is loaded. Set to False for faster scraping of static pages.\").optional(),\n cookies: z.string().describe(\"Custom cookies to send with the request. Format: 'name1=value1; name2=value2'.\").optional(),\n timeout: z.number().int().describe(\"Maximum time in seconds to wait for the page to load. Must be between 5 and 60. Default is 60 seconds.\").optional(),\n proxy_type: z.string().describe(\"Type of proxy to use: 'datacenter' (faster, cheaper) or 'residential' (better for anti-bot sites). Default is 'datacenter'.\").optional(),\n proxy_country: z.string().describe(\"Two-letter country code (ISO 3166-1 alpha-2) for geographic proxy location (e.g., 'US', 'GB', 'DE').\").optional(),\n wait_for_selector: z.string().describe(\"CSS selector to wait for before returning the page content. Useful for pages with dynamic content that loads after initial page load.\").optional(),\n return_page_source: z.boolean().describe(\"When True, returns the raw HTML from the server without JavaScript rendering. Useful for faster scraping when JS execution is not needed.\").optional(),\n});\nconst ScrapingantScrapeWithExtendedJsonOutput_HeaderItemSchema = z.object({\n name: z.string().nullable(),\n value: z.string().nullable(),\n}).passthrough();\nconst ScrapingantScrapeWithExtendedJsonOutput_XhrItemSchema = z.object({\n url: z.string().nullable(),\n body: z.string().nullable().optional(),\n method: z.string().nullable(),\n status: z.number().int().nullable(),\n headers: z.array(ScrapingantScrapeWithExtendedJsonOutput_HeaderItemSchema),\n request_body: z.string().nullable().optional(),\n}).passthrough();\nconst ScrapingantScrapeWithExtendedJsonOutput_IframeItemSchema = z.object({\n src: z.string().nullable(),\n html: z.string().nullable(),\n}).passthrough();\nexport const ScrapingantScrapeWithExtendedJsonOutputOutput = z.object({\n html: z.string().describe(\"The full HTML content of the scraped web page, including all rendered content.\").nullable(),\n text: z.string().describe(\"Plain text content extracted from the web page with HTML tags stripped.\").nullable(),\n xhrs: z.array(ScrapingantScrapeWithExtendedJsonOutput_XhrItemSchema).describe(\"XHR and Fetch requests made by the web page during rendering (only available when browser=True). Useful for capturing API calls made by JavaScript.\"),\n cookies: z.string().describe(\"Cookies set by the target web page during the request (format: 'name=value; name2=value2').\").nullable(),\n headers: z.array(ScrapingantScrapeWithExtendedJsonOutput_HeaderItemSchema).describe(\"HTTP response headers from the target web page as name-value pairs.\"),\n iframes: z.array(ScrapingantScrapeWithExtendedJsonOutput_IframeItemSchema).describe(\"Content of iframes embedded in the web page (only available when browser=True).\"),\n status_code: z.number().int().describe(\"The HTTP status code returned by the target web page (e.g., 200 for success, 404 for not found).\").nullable(),\n}).passthrough();\n\nexport const scrapingantScrapeWithExtendedJsonOutput: AppAction<\n typeof ScrapingantScrapeWithExtendedJsonOutputInput,\n typeof ScrapingantScrapeWithExtendedJsonOutputOutput,\n typeof scrapingant.credential\n> = action(\"SCRAPINGANT_SCRAPE_WITH_EXTENDED_JSON_OUTPUT\", {\n slug: \"scrapingant-scrape-with-extended-json-output\",\n name: \"Scrape with Extended JSON Output\",\n description: \"Scrapes a web page and returns comprehensive data including HTML content, plain text, cookies, HTTP headers, XHR/Fetch requests, and iframe content. This tool uses ScrapingAnt's extended endpoint which provides much richer data than standard scraping: - Full HTML and extracted plain text content - All cookies and HTTP response headers from the target page - Captured XHR/Fetch API requests made by the page (useful for finding hidden APIs) - Content from embedded iframes Best used when you need more than just the HTML - such as analyzing cookies, headers, or JavaScript API calls made by a page. For simple HTML scraping, consider using the basic scrape tool instead for lower API credit usage.\",\n input: ScrapingantScrapeWithExtendedJsonOutputInput,\n output: ScrapingantScrapeWithExtendedJsonOutputOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,+CAA+C,EAAE,OAAO;CACnE,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,iFAAiF;CAC1G,SAAS,EAAE,QAAQ,CAAC,CAAC,SAAS,4KAA4K,CAAC,CAAC,SAAS;CACrN,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,gFAAgF,CAAC,CAAC,SAAS;CACxH,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,wGAAwG,CAAC,CAAC,SAAS;CACtJ,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,6HAA6H,CAAC,CAAC,SAAS;CACxK,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,sGAAsG,CAAC,CAAC,SAAS;CACpJ,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,uIAAuI,CAAC,CAAC,SAAS;CACzL,oBAAoB,EAAE,QAAQ,CAAC,CAAC,SAAS,2IAA2I,CAAC,CAAC,SAAS;AACjM,CAAC;AACD,MAAM,2DAA2D,EAAE,OAAO;CACxE,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS;CAC1B,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS;AAC7B,CAAC,CAAC,CAAC,YAAY;AACf,MAAM,wDAAwD,EAAE,OAAO;CACrE,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS;CACzB,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACrC,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS;CAC5B,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS;CAClC,SAAS,EAAE,MAAM,wDAAwD;CACzE,cAAc,EAAE,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC/C,CAAC,CAAC,CAAC,YAAY;AACf,MAAM,2DAA2D,EAAE,OAAO;CACxE,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS;CACzB,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS;AAC5B,CAAC,CAAC,CAAC,YAAY;AAWf,MAAa,0CAIT,OAAO,gDAAgD;CACzD,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAnB2D,EAAE,OAAO;EACpE,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,gFAAgF,CAAC,CAAC,SAAS;EACrH,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,yEAAyE,CAAC,CAAC,SAAS;EAC9G,MAAM,EAAE,MAAM,qDAAqD,CAAC,CAAC,SAAS,qJAAqJ;EACnO,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,6FAA6F,CAAC,CAAC,SAAS;EACrI,SAAS,EAAE,MAAM,wDAAwD,CAAC,CAAC,SAAS,qEAAqE;EACzJ,SAAS,EAAE,MAAM,wDAAwD,CAAC,CAAC,SAAS,iFAAiF;EACrK,aAAa,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kGAAkG,CAAC,CAAC,SAAS;CACtJ,CAAC,CAAC,CAAC,YAWO;AACV,CAAC"}
package/dist/app.cjs CHANGED
@@ -1,7 +1,10 @@
1
+ let _keystrokehq_keystroke_app = require("@keystrokehq/keystroke/app");
1
2
  //#region src/app.ts
2
- const scrapingant = (0, require("@keystrokehq/keystroke/app").defineApp)({
3
+ const credential = { generic_api_key: require("zod").z.string() };
4
+ const scrapingant = (0, _keystrokehq_keystroke_app.defineApp)({
3
5
  slug: "scrapingant",
4
- auth: "keystroke"
6
+ auth: "keystroke",
7
+ credential
5
8
  });
6
9
  //#endregion
7
10
  exports.scrapingant = scrapingant;
package/dist/app.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.cjs","names":[],"sources":["../src/app.ts"],"sourcesContent":["import { defineApp } from \"@keystrokehq/keystroke/app\";\n\nexport const scrapingant = defineApp({\n slug: \"scrapingant\",\n auth: \"keystroke\",\n});\n"],"mappings":";AAEA,MAAa,eAAA,uCAAA,CAAA,CAAA,UAAA,CAAwB;CACnC,MAAM;CACN,MAAM;AACR,CAAC"}
1
+ {"version":3,"file":"app.cjs","names":["z"],"sources":["../src/app.ts"],"sourcesContent":["import { defineApp, type KeystrokeApp } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nconst credential = {\n generic_api_key: z.string(),\n};\n\nexport const scrapingant: KeystrokeApp<\"scrapingant\", typeof credential> = defineApp({\n slug: \"scrapingant\",\n auth: \"keystroke\",\n credential,\n});\n"],"mappings":";;AAGA,MAAM,aAAa,EACjB,8BAAiBA,CAAAA,CAAAA,EAAE,OAAO,EAC5B;AAEA,MAAa,eAAA,GAAA,2BAAA,UAAA,CAAwE;CACnF,MAAM;CACN,MAAM;CACN;AACF,CAAC"}
package/dist/app.d.cts CHANGED
@@ -1,5 +1,11 @@
1
+ import { KeystrokeApp } from "@keystrokehq/keystroke/app";
2
+ import { z } from "zod";
3
+
1
4
  //#region src/app.d.ts
2
- declare const scrapingant: import("@keystrokehq/app").App<import("@keystrokehq/shared").Credential>;
5
+ declare const credential: {
6
+ generic_api_key: z.ZodString;
7
+ };
8
+ declare const scrapingant: KeystrokeApp<"scrapingant", typeof credential>;
3
9
  //#endregion
4
10
  export { scrapingant };
5
11
  //# sourceMappingURL=app.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.cts","names":[],"sources":["../src/app.ts"],"mappings":";cAEa,WAAA,6BAAW,GAAA,+BAAA,UAAA"}
1
+ {"version":3,"file":"app.d.cts","names":[],"sources":["../src/app.ts"],"mappings":";;;;cAGM,UAAA;mBAEL,CAAA,CAAA,SAAA;AAAA;AAAA,cAEY,WAAA,EAAa,YAAY,uBAAuB,UAAA"}
package/dist/app.d.mts CHANGED
@@ -1,5 +1,11 @@
1
+ import { KeystrokeApp } from "@keystrokehq/keystroke/app";
2
+ import { z } from "zod";
3
+
1
4
  //#region src/app.d.ts
2
- declare const scrapingant: import("@keystrokehq/app").App<import("@keystrokehq/shared").Credential>;
5
+ declare const credential: {
6
+ generic_api_key: z.ZodString;
7
+ };
8
+ declare const scrapingant: KeystrokeApp<"scrapingant", typeof credential>;
3
9
  //#endregion
4
10
  export { scrapingant };
5
11
  //# sourceMappingURL=app.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.mts","names":[],"sources":["../src/app.ts"],"mappings":";cAEa,WAAA,6BAAW,GAAA,+BAAA,UAAA"}
1
+ {"version":3,"file":"app.d.mts","names":[],"sources":["../src/app.ts"],"mappings":";;;;cAGM,UAAA;mBAEL,CAAA,CAAA,SAAA;AAAA;AAAA,cAEY,WAAA,EAAa,YAAY,uBAAuB,UAAA"}
package/dist/app.mjs CHANGED
@@ -1,8 +1,9 @@
1
1
  import { defineApp } from "@keystrokehq/keystroke/app";
2
- //#region src/app.ts
2
+ import { z } from "zod";
3
3
  const scrapingant = defineApp({
4
4
  slug: "scrapingant",
5
- auth: "keystroke"
5
+ auth: "keystroke",
6
+ credential: { generic_api_key: z.string() }
6
7
  });
7
8
  //#endregion
8
9
  export { scrapingant };
package/dist/app.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.mjs","names":[],"sources":["../src/app.ts"],"sourcesContent":["import { defineApp } from \"@keystrokehq/keystroke/app\";\n\nexport const scrapingant = defineApp({\n slug: \"scrapingant\",\n auth: \"keystroke\",\n});\n"],"mappings":";;AAEA,MAAa,cAAc,UAAU;CACnC,MAAM;CACN,MAAM;AACR,CAAC"}
1
+ {"version":3,"file":"app.mjs","names":[],"sources":["../src/app.ts"],"sourcesContent":["import { defineApp, type KeystrokeApp } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nconst credential = {\n generic_api_key: z.string(),\n};\n\nexport const scrapingant: KeystrokeApp<\"scrapingant\", typeof credential> = defineApp({\n slug: \"scrapingant\",\n auth: \"keystroke\",\n credential,\n});\n"],"mappings":";;AAOA,MAAa,cAA8D,UAAU;CACnF,MAAM;CACN,MAAM;CACN,cANA,iBAAiB,EAAE,OAAO,EAM1B;AACF,CAAC"}
package/dist/index.d.cts CHANGED
@@ -1,3 +1,4 @@
1
+ import { scrapingant } from "./app.cjs";
1
2
  import { scrapingantExtractContentAsMarkdown } from "./actions/extract-content-as-markdown.cjs";
2
3
  import { scrapingantExtractDataWithAi } from "./actions/extract-data-with-ai.cjs";
3
4
  import { scrapingantGetApiCreditsUsage } from "./actions/get-api-credits-usage.cjs";
@@ -5,6 +6,5 @@ import { scrapingantScrapeWebPage } from "./actions/scrape-web-page.cjs";
5
6
  import { scrapingantScrapeWebpagePost } from "./actions/scrape-webpage-post.cjs";
6
7
  import { scrapingantScrapeWebpagePut } from "./actions/scrape-webpage-put.cjs";
7
8
  import { scrapingantScrapeWithExtendedJsonOutput } from "./actions/scrape-with-extended-json-output.cjs";
8
- import { scrapingant } from "./app.cjs";
9
9
  import { scrapingantCatalog } from "./catalog.cjs";
10
10
  export { scrapingant, scrapingantCatalog, scrapingantExtractContentAsMarkdown, scrapingantExtractDataWithAi, scrapingantGetApiCreditsUsage, scrapingantScrapeWebPage, scrapingantScrapeWebpagePost, scrapingantScrapeWebpagePut, scrapingantScrapeWithExtendedJsonOutput };
package/dist/index.d.mts CHANGED
@@ -1,3 +1,4 @@
1
+ import { scrapingant } from "./app.mjs";
1
2
  import { scrapingantExtractContentAsMarkdown } from "./actions/extract-content-as-markdown.mjs";
2
3
  import { scrapingantExtractDataWithAi } from "./actions/extract-data-with-ai.mjs";
3
4
  import { scrapingantGetApiCreditsUsage } from "./actions/get-api-credits-usage.mjs";
@@ -5,6 +6,5 @@ import { scrapingantScrapeWebPage } from "./actions/scrape-web-page.mjs";
5
6
  import { scrapingantScrapeWebpagePost } from "./actions/scrape-webpage-post.mjs";
6
7
  import { scrapingantScrapeWebpagePut } from "./actions/scrape-webpage-put.mjs";
7
8
  import { scrapingantScrapeWithExtendedJsonOutput } from "./actions/scrape-with-extended-json-output.mjs";
8
- import { scrapingant } from "./app.mjs";
9
9
  import { scrapingantCatalog } from "./catalog.mjs";
10
10
  export { scrapingant, scrapingantCatalog, scrapingantExtractContentAsMarkdown, scrapingantExtractDataWithAi, scrapingantGetApiCreditsUsage, scrapingantScrapeWebPage, scrapingantScrapeWebpagePost, scrapingantScrapeWebpagePut, scrapingantScrapeWithExtendedJsonOutput };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@keystrokehq/scrapingant",
3
- "version": "0.1.4",
3
+ "version": "0.1.6",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org"
@@ -31,7 +31,7 @@
31
31
  }
32
32
  },
33
33
  "peerDependencies": {
34
- "@keystrokehq/keystroke": ">=0.1.4",
34
+ "@keystrokehq/keystroke": ">=0.1.104",
35
35
  "zod": "^4.4.3"
36
36
  },
37
37
  "devDependencies": {