@keystrokehq/opengraph_io 0.1.5 → 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 (45) hide show
  1. package/dist/action.cjs.map +1 -1
  2. package/dist/action.mjs.map +1 -1
  3. package/dist/actions/capture-screenshot.cjs +1 -0
  4. package/dist/actions/capture-screenshot.cjs.map +1 -1
  5. package/dist/actions/capture-screenshot.d.cts +3 -27
  6. package/dist/actions/capture-screenshot.d.cts.map +1 -1
  7. package/dist/actions/capture-screenshot.d.mts +3 -27
  8. package/dist/actions/capture-screenshot.d.mts.map +1 -1
  9. package/dist/actions/capture-screenshot.mjs +1 -0
  10. package/dist/actions/capture-screenshot.mjs.map +1 -1
  11. package/dist/actions/extract-site.cjs +1 -0
  12. package/dist/actions/extract-site.cjs.map +1 -1
  13. package/dist/actions/extract-site.d.cts +3 -19
  14. package/dist/actions/extract-site.d.cts.map +1 -1
  15. package/dist/actions/extract-site.d.mts +3 -19
  16. package/dist/actions/extract-site.d.mts.map +1 -1
  17. package/dist/actions/extract-site.mjs +1 -0
  18. package/dist/actions/extract-site.mjs.map +1 -1
  19. package/dist/actions/scrape-site.cjs +1 -0
  20. package/dist/actions/scrape-site.cjs.map +1 -1
  21. package/dist/actions/scrape-site.d.cts +3 -18
  22. package/dist/actions/scrape-site.d.cts.map +1 -1
  23. package/dist/actions/scrape-site.d.mts +3 -18
  24. package/dist/actions/scrape-site.d.mts.map +1 -1
  25. package/dist/actions/scrape-site.mjs +1 -0
  26. package/dist/actions/scrape-site.mjs.map +1 -1
  27. package/dist/actions/scrape-url.cjs +1 -0
  28. package/dist/actions/scrape-url.cjs.map +1 -1
  29. package/dist/actions/scrape-url.d.cts +3 -21
  30. package/dist/actions/scrape-url.d.cts.map +1 -1
  31. package/dist/actions/scrape-url.d.mts +3 -21
  32. package/dist/actions/scrape-url.d.mts.map +1 -1
  33. package/dist/actions/scrape-url.mjs +1 -0
  34. package/dist/actions/scrape-url.mjs.map +1 -1
  35. package/dist/app.cjs +2 -2
  36. package/dist/app.cjs.map +1 -1
  37. package/dist/app.d.cts +4 -6
  38. package/dist/app.d.cts.map +1 -1
  39. package/dist/app.d.mts +4 -6
  40. package/dist/app.d.mts.map +1 -1
  41. package/dist/app.mjs +0 -1
  42. package/dist/app.mjs.map +1 -1
  43. package/dist/index.d.cts +1 -1
  44. package/dist/index.d.mts +1 -1
  45. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"action.cjs","names":["opengraphIo","executeOpengraphIoTool"],"sources":["../src/action.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { opengraphIo } from \"./app\";\nimport { executeOpengraphIoTool } 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 opengraphIo.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 executeOpengraphIoTool(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":["opengraphIo","executeOpengraphIoTool"],"sources":["../src/action.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { opengraphIo } from \"./app\";\nimport { executeOpengraphIoTool } 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 opengraphIo.credential> {\n return opengraphIo.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 executeOpengraphIoTool(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 { opengraphIo } from \"./app\";\nimport { executeOpengraphIoTool } 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 opengraphIo.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 executeOpengraphIoTool(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 { opengraphIo } from \"./app\";\nimport { executeOpengraphIoTool } 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 opengraphIo.credential> {\n return opengraphIo.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 executeOpengraphIoTool(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/capture-screenshot.ts
@@ -1 +1 @@
1
- {"version":3,"file":"capture-screenshot.cjs","names":["z","action"],"sources":["../../src/actions/capture-screenshot.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpengraphIoCaptureScreenshotInput = z.object({\n url: z.string().describe(\"The target webpage URL to capture. Must be a valid HTTP or HTTPS URL.\"),\n format: z.enum([\"jpeg\", \"png\", \"webp\"]).describe(\"Image format options for the screenshot.\").optional(),\n quality: z.number().int().describe(\"Image quality from 10 to 80 (rounded to nearest 10). Higher values mean better quality but larger file size. Defaults to 80.\").optional(),\n cache_ok: z.boolean().describe(\"Allow returning a cached screenshot if available. Set to false to force a fresh capture. Defaults to true.\").optional(),\n selector: z.string().describe(\"CSS selector to capture a specific element instead of the full page. Example: '.main-content' or '#header'.\").optional(),\n dark_mode: z.boolean().describe(\"Set browser preference to dark mode before capturing. Useful for capturing dark-themed versions of websites. Defaults to false.\").optional(),\n full_page: z.boolean().describe(\"Capture the entire scrollable page instead of just the viewport. Set to true for full-page screenshots. Defaults to false.\").optional(),\n use_proxy: z.boolean().describe(\"Use a proxy for accessing protected or restricted sites. Defaults to false.\").optional(),\n dimensions: z.enum([\"xs\", \"sm\", \"md\", \"lg\"]).describe(\"Viewport size presets for different device types.\").optional(),\n capture_delay: z.number().int().describe(\"Delay in milliseconds before capturing the screenshot. Useful for waiting for dynamic content to load. Range: 0-10000ms.\").optional(),\n exclude_selectors: z.string().describe(\"Comma-separated CSS selectors of elements to hide from the screenshot. Useful for removing ads, popups, or unwanted elements. Example: '.header,.footer,.ads'.\").optional(),\n navigationTimeout: z.number().int().describe(\"Navigation timeout in milliseconds. Maximum time to wait for the page to load. Range: 1000-60000ms. Defaults to 30000ms (30 seconds).\").optional(),\n block_cookie_banner: z.boolean().describe(\"Automatically block known cookie consent banners from appearing in the screenshot. Defaults to true.\").optional(),\n}).describe(\"Request parameters for capturing a screenshot of a webpage.\");\nconst OpengraphIoCaptureScreenshot_DimensionsSchema = z.object({\n width: z.number().int().describe(\"Width of the screenshot in pixels.\").nullable().optional(),\n height: z.number().int().describe(\"Height of the screenshot in pixels.\").nullable().optional(),\n}).passthrough().describe(\"Dimensions of the captured screenshot.\");\nconst OpengraphIoCaptureScreenshot_RequestInfoSchema = z.object({\n host: z.string().describe(\"The hostname of the target URL.\").nullable().optional(),\n responseCode: z.number().int().describe(\"HTTP response code from the target URL.\").nullable().optional(),\n}).passthrough().describe(\"Information about the HTTP request to the target URL.\");\nexport const OpengraphIoCaptureScreenshotOutput = z.object({\n dimensions: OpengraphIoCaptureScreenshot_DimensionsSchema.nullable().optional(),\n requestInfo: OpengraphIoCaptureScreenshot_RequestInfoSchema.nullable().optional(),\n screenshotUrl: z.string().describe(\"URL to the captured screenshot image. This URL is valid for 24 hours after generation.\").nullable().optional(),\n}).passthrough().describe(\"Response schema for screenshot capture operation.\");\n\nexport const opengraphIoCaptureScreenshot = action(\"OPENGRAPH_IO_CAPTURE_SCREENSHOT\", {\n slug: \"opengraph_io-capture-screenshot\",\n name: \"Capture Screenshot\",\n description: \"Tool to capture high-quality screenshots of any webpage programmatically. Supports full-page captures, custom dimensions, device presets, element-specific screenshots, and quality settings. Screenshots are available for 24 hours after generation. Use when you need to capture visual snapshots of websites with specific rendering requirements or device simulations.\",\n input: OpengraphIoCaptureScreenshotInput,\n output: OpengraphIoCaptureScreenshotOutput,\n});\n"],"mappings":";;;AAIA,MAAa,oCAAoCA,IAAAA,EAAE,OAAO;CACxD,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uEAAuE;CAChG,QAAQA,IAAAA,EAAE,KAAK;EAAC;EAAQ;EAAO;CAAM,CAAC,CAAC,CAAC,SAAS,0CAA0C,CAAC,CAAC,SAAS;CACtG,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,8HAA8H,CAAC,CAAC,SAAS;CAC5K,UAAUA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,4GAA4G,CAAC,CAAC,SAAS;CACtJ,UAAUA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;CACtJ,WAAWA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,iIAAiI,CAAC,CAAC,SAAS;CAC5K,WAAWA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,4HAA4H,CAAC,CAAC,SAAS;CACvK,WAAWA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,6EAA6E,CAAC,CAAC,SAAS;CACxH,YAAYA,IAAAA,EAAE,KAAK;EAAC;EAAM;EAAM;EAAM;CAAI,CAAC,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;CACpH,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,0HAA0H,CAAC,CAAC,SAAS;CAC9K,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gKAAgK,CAAC,CAAC,SAAS;CAClN,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,uIAAuI,CAAC,CAAC,SAAS;CAC/L,qBAAqBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,sGAAsG,CAAC,CAAC,SAAS;AAC7J,CAAC,CAAC,CAAC,SAAS,6DAA6D;AACzE,MAAM,gDAAgDA,IAAAA,EAAE,OAAO;CAC7D,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC3F,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC/F,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,wCAAwC;AAClE,MAAM,iDAAiDA,IAAAA,EAAE,OAAO;CAC9D,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,iCAAiC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjF,cAAcA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACzG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,uDAAuD;AACjF,MAAa,qCAAqCA,IAAAA,EAAE,OAAO;CACzD,YAAY,8CAA8C,SAAS,CAAC,CAAC,SAAS;CAC9E,aAAa,+CAA+C,SAAS,CAAC,CAAC,SAAS;CAChF,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,wFAAwF,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACnJ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,mDAAmD;AAE7E,MAAa,+BAA+BC,eAAAA,OAAO,mCAAmC;CACpF,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"capture-screenshot.cjs","names":["z","action"],"sources":["../../src/actions/capture-screenshot.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { opengraphIo } from \"../app\";\n\nexport const OpengraphIoCaptureScreenshotInput = z.object({\n url: z.string().describe(\"The target webpage URL to capture. Must be a valid HTTP or HTTPS URL.\"),\n format: z.enum([\"jpeg\", \"png\", \"webp\"]).describe(\"Image format options for the screenshot.\").optional(),\n quality: z.number().int().describe(\"Image quality from 10 to 80 (rounded to nearest 10). Higher values mean better quality but larger file size. Defaults to 80.\").optional(),\n cache_ok: z.boolean().describe(\"Allow returning a cached screenshot if available. Set to false to force a fresh capture. Defaults to true.\").optional(),\n selector: z.string().describe(\"CSS selector to capture a specific element instead of the full page. Example: '.main-content' or '#header'.\").optional(),\n dark_mode: z.boolean().describe(\"Set browser preference to dark mode before capturing. Useful for capturing dark-themed versions of websites. Defaults to false.\").optional(),\n full_page: z.boolean().describe(\"Capture the entire scrollable page instead of just the viewport. Set to true for full-page screenshots. Defaults to false.\").optional(),\n use_proxy: z.boolean().describe(\"Use a proxy for accessing protected or restricted sites. Defaults to false.\").optional(),\n dimensions: z.enum([\"xs\", \"sm\", \"md\", \"lg\"]).describe(\"Viewport size presets for different device types.\").optional(),\n capture_delay: z.number().int().describe(\"Delay in milliseconds before capturing the screenshot. Useful for waiting for dynamic content to load. Range: 0-10000ms.\").optional(),\n exclude_selectors: z.string().describe(\"Comma-separated CSS selectors of elements to hide from the screenshot. Useful for removing ads, popups, or unwanted elements. Example: '.header,.footer,.ads'.\").optional(),\n navigationTimeout: z.number().int().describe(\"Navigation timeout in milliseconds. Maximum time to wait for the page to load. Range: 1000-60000ms. Defaults to 30000ms (30 seconds).\").optional(),\n block_cookie_banner: z.boolean().describe(\"Automatically block known cookie consent banners from appearing in the screenshot. Defaults to true.\").optional(),\n}).describe(\"Request parameters for capturing a screenshot of a webpage.\");\nconst OpengraphIoCaptureScreenshot_DimensionsSchema = z.object({\n width: z.number().int().describe(\"Width of the screenshot in pixels.\").nullable().optional(),\n height: z.number().int().describe(\"Height of the screenshot in pixels.\").nullable().optional(),\n}).passthrough().describe(\"Dimensions of the captured screenshot.\");\nconst OpengraphIoCaptureScreenshot_RequestInfoSchema = z.object({\n host: z.string().describe(\"The hostname of the target URL.\").nullable().optional(),\n responseCode: z.number().int().describe(\"HTTP response code from the target URL.\").nullable().optional(),\n}).passthrough().describe(\"Information about the HTTP request to the target URL.\");\nexport const OpengraphIoCaptureScreenshotOutput = z.object({\n dimensions: OpengraphIoCaptureScreenshot_DimensionsSchema.nullable().optional(),\n requestInfo: OpengraphIoCaptureScreenshot_RequestInfoSchema.nullable().optional(),\n screenshotUrl: z.string().describe(\"URL to the captured screenshot image. This URL is valid for 24 hours after generation.\").nullable().optional(),\n}).passthrough().describe(\"Response schema for screenshot capture operation.\");\n\nexport const opengraphIoCaptureScreenshot: AppAction<\n typeof OpengraphIoCaptureScreenshotInput,\n typeof OpengraphIoCaptureScreenshotOutput,\n typeof opengraphIo.credential\n> = action(\"OPENGRAPH_IO_CAPTURE_SCREENSHOT\", {\n slug: \"opengraph_io-capture-screenshot\",\n name: \"Capture Screenshot\",\n description: \"Tool to capture high-quality screenshots of any webpage programmatically. Supports full-page captures, custom dimensions, device presets, element-specific screenshots, and quality settings. Screenshots are available for 24 hours after generation. Use when you need to capture visual snapshots of websites with specific rendering requirements or device simulations.\",\n input: OpengraphIoCaptureScreenshotInput,\n output: OpengraphIoCaptureScreenshotOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,oCAAoCA,IAAAA,EAAE,OAAO;CACxD,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uEAAuE;CAChG,QAAQA,IAAAA,EAAE,KAAK;EAAC;EAAQ;EAAO;CAAM,CAAC,CAAC,CAAC,SAAS,0CAA0C,CAAC,CAAC,SAAS;CACtG,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,8HAA8H,CAAC,CAAC,SAAS;CAC5K,UAAUA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,4GAA4G,CAAC,CAAC,SAAS;CACtJ,UAAUA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;CACtJ,WAAWA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,iIAAiI,CAAC,CAAC,SAAS;CAC5K,WAAWA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,4HAA4H,CAAC,CAAC,SAAS;CACvK,WAAWA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,6EAA6E,CAAC,CAAC,SAAS;CACxH,YAAYA,IAAAA,EAAE,KAAK;EAAC;EAAM;EAAM;EAAM;CAAI,CAAC,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;CACpH,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,0HAA0H,CAAC,CAAC,SAAS;CAC9K,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gKAAgK,CAAC,CAAC,SAAS;CAClN,mBAAmBA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,uIAAuI,CAAC,CAAC,SAAS;CAC/L,qBAAqBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,sGAAsG,CAAC,CAAC,SAAS;AAC7J,CAAC,CAAC,CAAC,SAAS,6DAA6D;AACzE,MAAM,gDAAgDA,IAAAA,EAAE,OAAO;CAC7D,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC3F,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC/F,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,wCAAwC;AAClE,MAAM,iDAAiDA,IAAAA,EAAE,OAAO;CAC9D,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,iCAAiC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjF,cAAcA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACzG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,uDAAuD;AACjF,MAAa,qCAAqCA,IAAAA,EAAE,OAAO;CACzD,YAAY,8CAA8C,SAAS,CAAC,CAAC,SAAS;CAC9E,aAAa,+CAA+C,SAAS,CAAC,CAAC,SAAS;CAChF,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,wFAAwF,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACnJ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,mDAAmD;AAE7E,MAAa,+BAITC,eAAAA,OAAO,mCAAmC;CAC5C,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -1,3 +1,5 @@
1
+ import { opengraphIo } from "../app.cjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/capture-screenshot.d.ts
@@ -36,33 +38,7 @@ declare const OpengraphIoCaptureScreenshotOutput: z.ZodObject<{
36
38
  }, z.core.$loose>>>;
37
39
  screenshotUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
38
40
  }, z.core.$loose>;
39
- declare const opengraphIoCaptureScreenshot: import("@keystrokehq/action").WorkflowActionDefinition<{
40
- url: string;
41
- format?: "jpeg" | "png" | "webp" | undefined;
42
- quality?: number | undefined;
43
- cache_ok?: boolean | undefined;
44
- selector?: string | undefined;
45
- dark_mode?: boolean | undefined;
46
- full_page?: boolean | undefined;
47
- use_proxy?: boolean | undefined;
48
- dimensions?: "xs" | "sm" | "md" | "lg" | undefined;
49
- capture_delay?: number | undefined;
50
- exclude_selectors?: string | undefined;
51
- navigationTimeout?: number | undefined;
52
- block_cookie_banner?: boolean | undefined;
53
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
54
- connectionId: z.ZodString;
55
- entityId: z.ZodString;
56
- instanceId: z.ZodString;
57
- }, z.core.$strip>, z.ZodObject<{
58
- generic_api_key: z.ZodString;
59
- }, z.core.$strip>>]>, readonly [import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
60
- connectionId: z.ZodString;
61
- entityId: z.ZodString;
62
- instanceId: z.ZodString;
63
- }, z.core.$strip>, z.ZodObject<{
64
- generic_api_key: z.ZodString;
65
- }, z.core.$strip>>]>;
41
+ declare const opengraphIoCaptureScreenshot: AppAction<typeof OpengraphIoCaptureScreenshotInput, typeof OpengraphIoCaptureScreenshotOutput, typeof opengraphIo.credential>;
66
42
  //#endregion
67
43
  export { opengraphIoCaptureScreenshot };
68
44
  //# sourceMappingURL=capture-screenshot.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"capture-screenshot.d.cts","names":[],"sources":["../../src/actions/capture-screenshot.ts"],"mappings":";;;cAIa,iCAAA,EAAiC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;cAuBjC,kCAAA,EAAkC,CAAA,CAAA,SAAA;;;;;;;;;;;cAMlC,4BAAA,gCAA4B,wBAAA"}
1
+ {"version":3,"file":"capture-screenshot.d.cts","names":[],"sources":["../../src/actions/capture-screenshot.ts"],"mappings":";;;;;cAMa,iCAAA,EAAiC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;cAuBjC,kCAAA,EAAkC,CAAA,CAAA,SAAA;;;;;;;;;;;cAMlC,4BAAA,EAA8B,SAAA,QAClC,iCAAA,SACA,kCAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,5 @@
1
+ import { opengraphIo } from "../app.mjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/capture-screenshot.d.ts
@@ -36,33 +38,7 @@ declare const OpengraphIoCaptureScreenshotOutput: z.ZodObject<{
36
38
  }, z.core.$loose>>>;
37
39
  screenshotUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
38
40
  }, z.core.$loose>;
39
- declare const opengraphIoCaptureScreenshot: import("@keystrokehq/action").WorkflowActionDefinition<{
40
- url: string;
41
- format?: "jpeg" | "png" | "webp" | undefined;
42
- quality?: number | undefined;
43
- cache_ok?: boolean | undefined;
44
- selector?: string | undefined;
45
- dark_mode?: boolean | undefined;
46
- full_page?: boolean | undefined;
47
- use_proxy?: boolean | undefined;
48
- dimensions?: "xs" | "sm" | "md" | "lg" | undefined;
49
- capture_delay?: number | undefined;
50
- exclude_selectors?: string | undefined;
51
- navigationTimeout?: number | undefined;
52
- block_cookie_banner?: boolean | undefined;
53
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
54
- connectionId: z.ZodString;
55
- entityId: z.ZodString;
56
- instanceId: z.ZodString;
57
- }, z.core.$strip>, z.ZodObject<{
58
- generic_api_key: z.ZodString;
59
- }, z.core.$strip>>]>, readonly [import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
60
- connectionId: z.ZodString;
61
- entityId: z.ZodString;
62
- instanceId: z.ZodString;
63
- }, z.core.$strip>, z.ZodObject<{
64
- generic_api_key: z.ZodString;
65
- }, z.core.$strip>>]>;
41
+ declare const opengraphIoCaptureScreenshot: AppAction<typeof OpengraphIoCaptureScreenshotInput, typeof OpengraphIoCaptureScreenshotOutput, typeof opengraphIo.credential>;
66
42
  //#endregion
67
43
  export { opengraphIoCaptureScreenshot };
68
44
  //# sourceMappingURL=capture-screenshot.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"capture-screenshot.d.mts","names":[],"sources":["../../src/actions/capture-screenshot.ts"],"mappings":";;;cAIa,iCAAA,EAAiC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;cAuBjC,kCAAA,EAAkC,CAAA,CAAA,SAAA;;;;;;;;;;;cAMlC,4BAAA,gCAA4B,wBAAA"}
1
+ {"version":3,"file":"capture-screenshot.d.mts","names":[],"sources":["../../src/actions/capture-screenshot.ts"],"mappings":";;;;;cAMa,iCAAA,EAAiC,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;cAuBjC,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
  //#region src/actions/capture-screenshot.ts
@@ -1 +1 @@
1
- {"version":3,"file":"capture-screenshot.mjs","names":[],"sources":["../../src/actions/capture-screenshot.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpengraphIoCaptureScreenshotInput = z.object({\n url: z.string().describe(\"The target webpage URL to capture. Must be a valid HTTP or HTTPS URL.\"),\n format: z.enum([\"jpeg\", \"png\", \"webp\"]).describe(\"Image format options for the screenshot.\").optional(),\n quality: z.number().int().describe(\"Image quality from 10 to 80 (rounded to nearest 10). Higher values mean better quality but larger file size. Defaults to 80.\").optional(),\n cache_ok: z.boolean().describe(\"Allow returning a cached screenshot if available. Set to false to force a fresh capture. Defaults to true.\").optional(),\n selector: z.string().describe(\"CSS selector to capture a specific element instead of the full page. Example: '.main-content' or '#header'.\").optional(),\n dark_mode: z.boolean().describe(\"Set browser preference to dark mode before capturing. Useful for capturing dark-themed versions of websites. Defaults to false.\").optional(),\n full_page: z.boolean().describe(\"Capture the entire scrollable page instead of just the viewport. Set to true for full-page screenshots. Defaults to false.\").optional(),\n use_proxy: z.boolean().describe(\"Use a proxy for accessing protected or restricted sites. Defaults to false.\").optional(),\n dimensions: z.enum([\"xs\", \"sm\", \"md\", \"lg\"]).describe(\"Viewport size presets for different device types.\").optional(),\n capture_delay: z.number().int().describe(\"Delay in milliseconds before capturing the screenshot. Useful for waiting for dynamic content to load. Range: 0-10000ms.\").optional(),\n exclude_selectors: z.string().describe(\"Comma-separated CSS selectors of elements to hide from the screenshot. Useful for removing ads, popups, or unwanted elements. Example: '.header,.footer,.ads'.\").optional(),\n navigationTimeout: z.number().int().describe(\"Navigation timeout in milliseconds. Maximum time to wait for the page to load. Range: 1000-60000ms. Defaults to 30000ms (30 seconds).\").optional(),\n block_cookie_banner: z.boolean().describe(\"Automatically block known cookie consent banners from appearing in the screenshot. Defaults to true.\").optional(),\n}).describe(\"Request parameters for capturing a screenshot of a webpage.\");\nconst OpengraphIoCaptureScreenshot_DimensionsSchema = z.object({\n width: z.number().int().describe(\"Width of the screenshot in pixels.\").nullable().optional(),\n height: z.number().int().describe(\"Height of the screenshot in pixels.\").nullable().optional(),\n}).passthrough().describe(\"Dimensions of the captured screenshot.\");\nconst OpengraphIoCaptureScreenshot_RequestInfoSchema = z.object({\n host: z.string().describe(\"The hostname of the target URL.\").nullable().optional(),\n responseCode: z.number().int().describe(\"HTTP response code from the target URL.\").nullable().optional(),\n}).passthrough().describe(\"Information about the HTTP request to the target URL.\");\nexport const OpengraphIoCaptureScreenshotOutput = z.object({\n dimensions: OpengraphIoCaptureScreenshot_DimensionsSchema.nullable().optional(),\n requestInfo: OpengraphIoCaptureScreenshot_RequestInfoSchema.nullable().optional(),\n screenshotUrl: z.string().describe(\"URL to the captured screenshot image. This URL is valid for 24 hours after generation.\").nullable().optional(),\n}).passthrough().describe(\"Response schema for screenshot capture operation.\");\n\nexport const opengraphIoCaptureScreenshot = action(\"OPENGRAPH_IO_CAPTURE_SCREENSHOT\", {\n slug: \"opengraph_io-capture-screenshot\",\n name: \"Capture Screenshot\",\n description: \"Tool to capture high-quality screenshots of any webpage programmatically. Supports full-page captures, custom dimensions, device presets, element-specific screenshots, and quality settings. Screenshots are available for 24 hours after generation. Use when you need to capture visual snapshots of websites with specific rendering requirements or device simulations.\",\n input: OpengraphIoCaptureScreenshotInput,\n output: OpengraphIoCaptureScreenshotOutput,\n});\n"],"mappings":";;;AAIA,MAAa,oCAAoC,EAAE,OAAO;CACxD,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,uEAAuE;CAChG,QAAQ,EAAE,KAAK;EAAC;EAAQ;EAAO;CAAM,CAAC,CAAC,CAAC,SAAS,0CAA0C,CAAC,CAAC,SAAS;CACtG,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,8HAA8H,CAAC,CAAC,SAAS;CAC5K,UAAU,EAAE,QAAQ,CAAC,CAAC,SAAS,4GAA4G,CAAC,CAAC,SAAS;CACtJ,UAAU,EAAE,OAAO,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;CACtJ,WAAW,EAAE,QAAQ,CAAC,CAAC,SAAS,iIAAiI,CAAC,CAAC,SAAS;CAC5K,WAAW,EAAE,QAAQ,CAAC,CAAC,SAAS,4HAA4H,CAAC,CAAC,SAAS;CACvK,WAAW,EAAE,QAAQ,CAAC,CAAC,SAAS,6EAA6E,CAAC,CAAC,SAAS;CACxH,YAAY,EAAE,KAAK;EAAC;EAAM;EAAM;EAAM;CAAI,CAAC,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;CACpH,eAAe,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,0HAA0H,CAAC,CAAC,SAAS;CAC9K,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,gKAAgK,CAAC,CAAC,SAAS;CAClN,mBAAmB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,uIAAuI,CAAC,CAAC,SAAS;CAC/L,qBAAqB,EAAE,QAAQ,CAAC,CAAC,SAAS,sGAAsG,CAAC,CAAC,SAAS;AAC7J,CAAC,CAAC,CAAC,SAAS,6DAA6D;AACzE,MAAM,gDAAgD,EAAE,OAAO;CAC7D,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC3F,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC/F,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,wCAAwC;AAClE,MAAM,iDAAiD,EAAE,OAAO;CAC9D,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,iCAAiC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjF,cAAc,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACzG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,uDAAuD;AAOjF,MAAa,+BAA+B,OAAO,mCAAmC;CACpF,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAXgD,EAAE,OAAO;EACzD,YAAY,8CAA8C,SAAS,CAAC,CAAC,SAAS;EAC9E,aAAa,+CAA+C,SAAS,CAAC,CAAC,SAAS;EAChF,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,wFAAwF,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACnJ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,mDAOhB;AACV,CAAC"}
1
+ {"version":3,"file":"capture-screenshot.mjs","names":[],"sources":["../../src/actions/capture-screenshot.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { opengraphIo } from \"../app\";\n\nexport const OpengraphIoCaptureScreenshotInput = z.object({\n url: z.string().describe(\"The target webpage URL to capture. Must be a valid HTTP or HTTPS URL.\"),\n format: z.enum([\"jpeg\", \"png\", \"webp\"]).describe(\"Image format options for the screenshot.\").optional(),\n quality: z.number().int().describe(\"Image quality from 10 to 80 (rounded to nearest 10). Higher values mean better quality but larger file size. Defaults to 80.\").optional(),\n cache_ok: z.boolean().describe(\"Allow returning a cached screenshot if available. Set to false to force a fresh capture. Defaults to true.\").optional(),\n selector: z.string().describe(\"CSS selector to capture a specific element instead of the full page. Example: '.main-content' or '#header'.\").optional(),\n dark_mode: z.boolean().describe(\"Set browser preference to dark mode before capturing. Useful for capturing dark-themed versions of websites. Defaults to false.\").optional(),\n full_page: z.boolean().describe(\"Capture the entire scrollable page instead of just the viewport. Set to true for full-page screenshots. Defaults to false.\").optional(),\n use_proxy: z.boolean().describe(\"Use a proxy for accessing protected or restricted sites. Defaults to false.\").optional(),\n dimensions: z.enum([\"xs\", \"sm\", \"md\", \"lg\"]).describe(\"Viewport size presets for different device types.\").optional(),\n capture_delay: z.number().int().describe(\"Delay in milliseconds before capturing the screenshot. Useful for waiting for dynamic content to load. Range: 0-10000ms.\").optional(),\n exclude_selectors: z.string().describe(\"Comma-separated CSS selectors of elements to hide from the screenshot. Useful for removing ads, popups, or unwanted elements. Example: '.header,.footer,.ads'.\").optional(),\n navigationTimeout: z.number().int().describe(\"Navigation timeout in milliseconds. Maximum time to wait for the page to load. Range: 1000-60000ms. Defaults to 30000ms (30 seconds).\").optional(),\n block_cookie_banner: z.boolean().describe(\"Automatically block known cookie consent banners from appearing in the screenshot. Defaults to true.\").optional(),\n}).describe(\"Request parameters for capturing a screenshot of a webpage.\");\nconst OpengraphIoCaptureScreenshot_DimensionsSchema = z.object({\n width: z.number().int().describe(\"Width of the screenshot in pixels.\").nullable().optional(),\n height: z.number().int().describe(\"Height of the screenshot in pixels.\").nullable().optional(),\n}).passthrough().describe(\"Dimensions of the captured screenshot.\");\nconst OpengraphIoCaptureScreenshot_RequestInfoSchema = z.object({\n host: z.string().describe(\"The hostname of the target URL.\").nullable().optional(),\n responseCode: z.number().int().describe(\"HTTP response code from the target URL.\").nullable().optional(),\n}).passthrough().describe(\"Information about the HTTP request to the target URL.\");\nexport const OpengraphIoCaptureScreenshotOutput = z.object({\n dimensions: OpengraphIoCaptureScreenshot_DimensionsSchema.nullable().optional(),\n requestInfo: OpengraphIoCaptureScreenshot_RequestInfoSchema.nullable().optional(),\n screenshotUrl: z.string().describe(\"URL to the captured screenshot image. This URL is valid for 24 hours after generation.\").nullable().optional(),\n}).passthrough().describe(\"Response schema for screenshot capture operation.\");\n\nexport const opengraphIoCaptureScreenshot: AppAction<\n typeof OpengraphIoCaptureScreenshotInput,\n typeof OpengraphIoCaptureScreenshotOutput,\n typeof opengraphIo.credential\n> = action(\"OPENGRAPH_IO_CAPTURE_SCREENSHOT\", {\n slug: \"opengraph_io-capture-screenshot\",\n name: \"Capture Screenshot\",\n description: \"Tool to capture high-quality screenshots of any webpage programmatically. Supports full-page captures, custom dimensions, device presets, element-specific screenshots, and quality settings. Screenshots are available for 24 hours after generation. Use when you need to capture visual snapshots of websites with specific rendering requirements or device simulations.\",\n input: OpengraphIoCaptureScreenshotInput,\n output: OpengraphIoCaptureScreenshotOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,oCAAoC,EAAE,OAAO;CACxD,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,uEAAuE;CAChG,QAAQ,EAAE,KAAK;EAAC;EAAQ;EAAO;CAAM,CAAC,CAAC,CAAC,SAAS,0CAA0C,CAAC,CAAC,SAAS;CACtG,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,8HAA8H,CAAC,CAAC,SAAS;CAC5K,UAAU,EAAE,QAAQ,CAAC,CAAC,SAAS,4GAA4G,CAAC,CAAC,SAAS;CACtJ,UAAU,EAAE,OAAO,CAAC,CAAC,SAAS,6GAA6G,CAAC,CAAC,SAAS;CACtJ,WAAW,EAAE,QAAQ,CAAC,CAAC,SAAS,iIAAiI,CAAC,CAAC,SAAS;CAC5K,WAAW,EAAE,QAAQ,CAAC,CAAC,SAAS,4HAA4H,CAAC,CAAC,SAAS;CACvK,WAAW,EAAE,QAAQ,CAAC,CAAC,SAAS,6EAA6E,CAAC,CAAC,SAAS;CACxH,YAAY,EAAE,KAAK;EAAC;EAAM;EAAM;EAAM;CAAI,CAAC,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;CACpH,eAAe,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,0HAA0H,CAAC,CAAC,SAAS;CAC9K,mBAAmB,EAAE,OAAO,CAAC,CAAC,SAAS,gKAAgK,CAAC,CAAC,SAAS;CAClN,mBAAmB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,uIAAuI,CAAC,CAAC,SAAS;CAC/L,qBAAqB,EAAE,QAAQ,CAAC,CAAC,SAAS,sGAAsG,CAAC,CAAC,SAAS;AAC7J,CAAC,CAAC,CAAC,SAAS,6DAA6D;AACzE,MAAM,gDAAgD,EAAE,OAAO;CAC7D,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC3F,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC/F,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,wCAAwC;AAClE,MAAM,iDAAiD,EAAE,OAAO;CAC9D,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,iCAAiC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjF,cAAc,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACzG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,uDAAuD;AAOjF,MAAa,+BAIT,OAAO,mCAAmC;CAC5C,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAfgD,EAAE,OAAO;EACzD,YAAY,8CAA8C,SAAS,CAAC,CAAC,SAAS;EAC9E,aAAa,+CAA+C,SAAS,CAAC,CAAC,SAAS;EAChF,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,wFAAwF,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACnJ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,mDAWhB;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-site.ts
@@ -1 +1 @@
1
- {"version":3,"file":"extract-site.cjs","names":["z","action"],"sources":["../../src/actions/extract-site.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpengraphIoExtractSiteInput = z.object({\n site: z.string().describe(\"URL of the site to extract metadata from\"),\n scrape: z.boolean().describe(\"Scrape all data instead of just Open Graph and meta tags\").optional(),\n use_proxy: z.boolean().describe(\"Use a proxy during extraction\").optional(),\n accept_lang: z.string().describe(\"Preferred language for extracted data (e.g., 'en-US')\").optional(),\n full_render: z.boolean().describe(\"Render the page in a browser before extraction\").optional(),\n}).describe(\"Request model for extracting site metadata.\");\nexport const OpengraphIoExtractSiteOutput = z.object({\n tags: z.array(z.record(z.string(), z.unknown())).describe(\"List of extracted HTML tags with their innerText and position.\").nullable().optional(),\n domain: z.string().describe(\"Domain of the extracted site.\").nullable().optional(),\n oEmbed: z.record(z.string(), z.unknown()).describe(\"oEmbed metadata if present.\").nullable().optional(),\n openGraph: z.record(z.string(), z.unknown()).describe(\"Open Graph-specific fields extracted from content.\").nullable().optional(),\n requestUrl: z.string().describe(\"Final URL used for data request (after redirects).\").nullable().optional(),\n hybridGraph: z.record(z.string(), z.unknown()).describe(\"All returned fields from Open Graph, meta, and other signals.\").nullable().optional(),\n twitterCard: z.record(z.string(), z.unknown()).describe(\"Twitter-specific metadata if present.\").nullable().optional(),\n htmlInferred: z.record(z.string(), z.unknown()).describe(\"Data extracted from HTML where OG tags are missing.\").nullable().optional(),\n}).passthrough().describe(\"Response model for site metadata extraction.\\nContains extracted HTML tags from the page.\");\n\nexport const opengraphIoExtractSite = action(\"OPENGRAPH_IO_EXTRACT_SITE\", {\n slug: \"opengraph_io-extract-site\",\n name: \"Extract Site Metadata\",\n description: \"Tool to extract site metadata. Use when you need to retrieve Open Graph and other meta signals from a website.\",\n input: OpengraphIoExtractSiteInput,\n output: OpengraphIoExtractSiteOutput,\n});\n"],"mappings":";;;AAIA,MAAa,8BAA8BA,IAAAA,EAAE,OAAO;CAClD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0CAA0C;CACpE,QAAQA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,0DAA0D,CAAC,CAAC,SAAS;CAClG,WAAWA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS;CAC1E,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uDAAuD,CAAC,CAAC,SAAS;CACnG,aAAaA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,gDAAgD,CAAC,CAAC,SAAS;AAC/F,CAAC,CAAC,CAAC,SAAS,6CAA6C;AACzD,MAAa,+BAA+BA,IAAAA,EAAE,OAAO;CACnD,MAAMA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,gEAAgE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChJ,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjF,QAAQA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,6BAA6B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACtG,WAAWA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,oDAAoD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChI,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,oDAAoD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC1G,aAAaA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,+DAA+D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC7I,aAAaA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACrH,cAAcA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,qDAAqD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACtI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,2FAA2F;AAErH,MAAa,yBAAyBC,eAAAA,OAAO,6BAA6B;CACxE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"extract-site.cjs","names":["z","action"],"sources":["../../src/actions/extract-site.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { opengraphIo } from \"../app\";\n\nexport const OpengraphIoExtractSiteInput = z.object({\n site: z.string().describe(\"URL of the site to extract metadata from\"),\n scrape: z.boolean().describe(\"Scrape all data instead of just Open Graph and meta tags\").optional(),\n use_proxy: z.boolean().describe(\"Use a proxy during extraction\").optional(),\n accept_lang: z.string().describe(\"Preferred language for extracted data (e.g., 'en-US')\").optional(),\n full_render: z.boolean().describe(\"Render the page in a browser before extraction\").optional(),\n}).describe(\"Request model for extracting site metadata.\");\nexport const OpengraphIoExtractSiteOutput = z.object({\n tags: z.array(z.record(z.string(), z.unknown())).describe(\"List of extracted HTML tags with their innerText and position.\").nullable().optional(),\n domain: z.string().describe(\"Domain of the extracted site.\").nullable().optional(),\n oEmbed: z.record(z.string(), z.unknown()).describe(\"oEmbed metadata if present.\").nullable().optional(),\n openGraph: z.record(z.string(), z.unknown()).describe(\"Open Graph-specific fields extracted from content.\").nullable().optional(),\n requestUrl: z.string().describe(\"Final URL used for data request (after redirects).\").nullable().optional(),\n hybridGraph: z.record(z.string(), z.unknown()).describe(\"All returned fields from Open Graph, meta, and other signals.\").nullable().optional(),\n twitterCard: z.record(z.string(), z.unknown()).describe(\"Twitter-specific metadata if present.\").nullable().optional(),\n htmlInferred: z.record(z.string(), z.unknown()).describe(\"Data extracted from HTML where OG tags are missing.\").nullable().optional(),\n}).passthrough().describe(\"Response model for site metadata extraction.\\nContains extracted HTML tags from the page.\");\n\nexport const opengraphIoExtractSite: AppAction<\n typeof OpengraphIoExtractSiteInput,\n typeof OpengraphIoExtractSiteOutput,\n typeof opengraphIo.credential\n> = action(\"OPENGRAPH_IO_EXTRACT_SITE\", {\n slug: \"opengraph_io-extract-site\",\n name: \"Extract Site Metadata\",\n description: \"Tool to extract site metadata. Use when you need to retrieve Open Graph and other meta signals from a website.\",\n input: OpengraphIoExtractSiteInput,\n output: OpengraphIoExtractSiteOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,8BAA8BA,IAAAA,EAAE,OAAO;CAClD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0CAA0C;CACpE,QAAQA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,0DAA0D,CAAC,CAAC,SAAS;CAClG,WAAWA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS;CAC1E,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uDAAuD,CAAC,CAAC,SAAS;CACnG,aAAaA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,gDAAgD,CAAC,CAAC,SAAS;AAC/F,CAAC,CAAC,CAAC,SAAS,6CAA6C;AACzD,MAAa,+BAA+BA,IAAAA,EAAE,OAAO;CACnD,MAAMA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,gEAAgE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChJ,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjF,QAAQA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,6BAA6B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACtG,WAAWA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,oDAAoD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChI,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,oDAAoD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC1G,aAAaA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,+DAA+D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC7I,aAAaA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACrH,cAAcA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,qDAAqD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACtI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,2FAA2F;AAErH,MAAa,yBAITC,eAAAA,OAAO,6BAA6B;CACtC,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -1,3 +1,5 @@
1
+ import { opengraphIo } from "../app.cjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/extract-site.d.ts
@@ -18,25 +20,7 @@ declare const OpengraphIoExtractSiteOutput: z.ZodObject<{
18
20
  twitterCard: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
19
21
  htmlInferred: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
20
22
  }, z.core.$loose>;
21
- declare const opengraphIoExtractSite: import("@keystrokehq/action").WorkflowActionDefinition<{
22
- site: string;
23
- scrape?: boolean | undefined;
24
- use_proxy?: boolean | undefined;
25
- accept_lang?: string | undefined;
26
- full_render?: boolean | undefined;
27
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
28
- connectionId: z.ZodString;
29
- entityId: z.ZodString;
30
- instanceId: z.ZodString;
31
- }, z.core.$strip>, z.ZodObject<{
32
- generic_api_key: z.ZodString;
33
- }, z.core.$strip>>]>, readonly [import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
34
- connectionId: z.ZodString;
35
- entityId: z.ZodString;
36
- instanceId: z.ZodString;
37
- }, z.core.$strip>, z.ZodObject<{
38
- generic_api_key: z.ZodString;
39
- }, z.core.$strip>>]>;
23
+ declare const opengraphIoExtractSite: AppAction<typeof OpengraphIoExtractSiteInput, typeof OpengraphIoExtractSiteOutput, typeof opengraphIo.credential>;
40
24
  //#endregion
41
25
  export { opengraphIoExtractSite };
42
26
  //# sourceMappingURL=extract-site.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extract-site.d.cts","names":[],"sources":["../../src/actions/extract-site.ts"],"mappings":";;;cAIa,2BAAA,EAA2B,CAAA,CAAA,SAAA;;;;;;;cAO3B,4BAAA,EAA4B,CAAA,CAAA,SAAA;;;;;;;;;;cAW5B,sBAAA,gCAAsB,wBAAA"}
1
+ {"version":3,"file":"extract-site.d.cts","names":[],"sources":["../../src/actions/extract-site.ts"],"mappings":";;;;;cAMa,2BAAA,EAA2B,CAAA,CAAA,SAAA;;;;;;;cAO3B,4BAAA,EAA4B,CAAA,CAAA,SAAA;;;;;;;;;;cAW5B,sBAAA,EAAwB,SAAA,QAC5B,2BAAA,SACA,4BAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,5 @@
1
+ import { opengraphIo } from "../app.mjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/extract-site.d.ts
@@ -18,25 +20,7 @@ declare const OpengraphIoExtractSiteOutput: z.ZodObject<{
18
20
  twitterCard: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
19
21
  htmlInferred: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
20
22
  }, z.core.$loose>;
21
- declare const opengraphIoExtractSite: import("@keystrokehq/action").WorkflowActionDefinition<{
22
- site: string;
23
- scrape?: boolean | undefined;
24
- use_proxy?: boolean | undefined;
25
- accept_lang?: string | undefined;
26
- full_render?: boolean | undefined;
27
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
28
- connectionId: z.ZodString;
29
- entityId: z.ZodString;
30
- instanceId: z.ZodString;
31
- }, z.core.$strip>, z.ZodObject<{
32
- generic_api_key: z.ZodString;
33
- }, z.core.$strip>>]>, readonly [import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
34
- connectionId: z.ZodString;
35
- entityId: z.ZodString;
36
- instanceId: z.ZodString;
37
- }, z.core.$strip>, z.ZodObject<{
38
- generic_api_key: z.ZodString;
39
- }, z.core.$strip>>]>;
23
+ declare const opengraphIoExtractSite: AppAction<typeof OpengraphIoExtractSiteInput, typeof OpengraphIoExtractSiteOutput, typeof opengraphIo.credential>;
40
24
  //#endregion
41
25
  export { opengraphIoExtractSite };
42
26
  //# sourceMappingURL=extract-site.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extract-site.d.mts","names":[],"sources":["../../src/actions/extract-site.ts"],"mappings":";;;cAIa,2BAAA,EAA2B,CAAA,CAAA,SAAA;;;;;;;cAO3B,4BAAA,EAA4B,CAAA,CAAA,SAAA;;;;;;;;;;cAW5B,sBAAA,gCAAsB,wBAAA"}
1
+ {"version":3,"file":"extract-site.d.mts","names":[],"sources":["../../src/actions/extract-site.ts"],"mappings":";;;;;cAMa,2BAAA,EAA2B,CAAA,CAAA,SAAA;;;;;;;cAO3B,4BAAA,EAA4B,CAAA,CAAA,SAAA;;;;;;;;;;cAW5B,sBAAA,EAAwB,SAAA,QAC5B,2BAAA,SACA,4BAAA,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 opengraphIoExtractSite = action("OPENGRAPH_IO_EXTRACT_SITE", {
@@ -1 +1 @@
1
- {"version":3,"file":"extract-site.mjs","names":[],"sources":["../../src/actions/extract-site.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpengraphIoExtractSiteInput = z.object({\n site: z.string().describe(\"URL of the site to extract metadata from\"),\n scrape: z.boolean().describe(\"Scrape all data instead of just Open Graph and meta tags\").optional(),\n use_proxy: z.boolean().describe(\"Use a proxy during extraction\").optional(),\n accept_lang: z.string().describe(\"Preferred language for extracted data (e.g., 'en-US')\").optional(),\n full_render: z.boolean().describe(\"Render the page in a browser before extraction\").optional(),\n}).describe(\"Request model for extracting site metadata.\");\nexport const OpengraphIoExtractSiteOutput = z.object({\n tags: z.array(z.record(z.string(), z.unknown())).describe(\"List of extracted HTML tags with their innerText and position.\").nullable().optional(),\n domain: z.string().describe(\"Domain of the extracted site.\").nullable().optional(),\n oEmbed: z.record(z.string(), z.unknown()).describe(\"oEmbed metadata if present.\").nullable().optional(),\n openGraph: z.record(z.string(), z.unknown()).describe(\"Open Graph-specific fields extracted from content.\").nullable().optional(),\n requestUrl: z.string().describe(\"Final URL used for data request (after redirects).\").nullable().optional(),\n hybridGraph: z.record(z.string(), z.unknown()).describe(\"All returned fields from Open Graph, meta, and other signals.\").nullable().optional(),\n twitterCard: z.record(z.string(), z.unknown()).describe(\"Twitter-specific metadata if present.\").nullable().optional(),\n htmlInferred: z.record(z.string(), z.unknown()).describe(\"Data extracted from HTML where OG tags are missing.\").nullable().optional(),\n}).passthrough().describe(\"Response model for site metadata extraction.\\nContains extracted HTML tags from the page.\");\n\nexport const opengraphIoExtractSite = action(\"OPENGRAPH_IO_EXTRACT_SITE\", {\n slug: \"opengraph_io-extract-site\",\n name: \"Extract Site Metadata\",\n description: \"Tool to extract site metadata. Use when you need to retrieve Open Graph and other meta signals from a website.\",\n input: OpengraphIoExtractSiteInput,\n output: OpengraphIoExtractSiteOutput,\n});\n"],"mappings":";;AAsBA,MAAa,yBAAyB,OAAO,6BAA6B;CACxE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAtByC,EAAE,OAAO;EAClD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,0CAA0C;EACpE,QAAQ,EAAE,QAAQ,CAAC,CAAC,SAAS,0DAA0D,CAAC,CAAC,SAAS;EAClG,WAAW,EAAE,QAAQ,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS;EAC1E,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,uDAAuD,CAAC,CAAC,SAAS;EACnG,aAAa,EAAE,QAAQ,CAAC,CAAC,SAAS,gDAAgD,CAAC,CAAC,SAAS;CAC/F,CAAC,CAAC,CAAC,SAAS,6CAgBH;CACP,QAhB0C,EAAE,OAAO;EACnD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,gEAAgE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAChJ,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACjF,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,6BAA6B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACtG,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,oDAAoD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAChI,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,oDAAoD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAC1G,aAAa,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,+DAA+D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAC7I,aAAa,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACrH,cAAc,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,qDAAqD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACtI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,2FAOhB;AACV,CAAC"}
1
+ {"version":3,"file":"extract-site.mjs","names":[],"sources":["../../src/actions/extract-site.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { opengraphIo } from \"../app\";\n\nexport const OpengraphIoExtractSiteInput = z.object({\n site: z.string().describe(\"URL of the site to extract metadata from\"),\n scrape: z.boolean().describe(\"Scrape all data instead of just Open Graph and meta tags\").optional(),\n use_proxy: z.boolean().describe(\"Use a proxy during extraction\").optional(),\n accept_lang: z.string().describe(\"Preferred language for extracted data (e.g., 'en-US')\").optional(),\n full_render: z.boolean().describe(\"Render the page in a browser before extraction\").optional(),\n}).describe(\"Request model for extracting site metadata.\");\nexport const OpengraphIoExtractSiteOutput = z.object({\n tags: z.array(z.record(z.string(), z.unknown())).describe(\"List of extracted HTML tags with their innerText and position.\").nullable().optional(),\n domain: z.string().describe(\"Domain of the extracted site.\").nullable().optional(),\n oEmbed: z.record(z.string(), z.unknown()).describe(\"oEmbed metadata if present.\").nullable().optional(),\n openGraph: z.record(z.string(), z.unknown()).describe(\"Open Graph-specific fields extracted from content.\").nullable().optional(),\n requestUrl: z.string().describe(\"Final URL used for data request (after redirects).\").nullable().optional(),\n hybridGraph: z.record(z.string(), z.unknown()).describe(\"All returned fields from Open Graph, meta, and other signals.\").nullable().optional(),\n twitterCard: z.record(z.string(), z.unknown()).describe(\"Twitter-specific metadata if present.\").nullable().optional(),\n htmlInferred: z.record(z.string(), z.unknown()).describe(\"Data extracted from HTML where OG tags are missing.\").nullable().optional(),\n}).passthrough().describe(\"Response model for site metadata extraction.\\nContains extracted HTML tags from the page.\");\n\nexport const opengraphIoExtractSite: AppAction<\n typeof OpengraphIoExtractSiteInput,\n typeof OpengraphIoExtractSiteOutput,\n typeof opengraphIo.credential\n> = action(\"OPENGRAPH_IO_EXTRACT_SITE\", {\n slug: \"opengraph_io-extract-site\",\n name: \"Extract Site Metadata\",\n description: \"Tool to extract site metadata. Use when you need to retrieve Open Graph and other meta signals from a website.\",\n input: OpengraphIoExtractSiteInput,\n output: OpengraphIoExtractSiteOutput,\n});\n"],"mappings":";;;AAwBA,MAAa,yBAIT,OAAO,6BAA6B;CACtC,MAAM;CACN,MAAM;CACN,aAAa;CACb,OA1ByC,EAAE,OAAO;EAClD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,0CAA0C;EACpE,QAAQ,EAAE,QAAQ,CAAC,CAAC,SAAS,0DAA0D,CAAC,CAAC,SAAS;EAClG,WAAW,EAAE,QAAQ,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS;EAC1E,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,uDAAuD,CAAC,CAAC,SAAS;EACnG,aAAa,EAAE,QAAQ,CAAC,CAAC,SAAS,gDAAgD,CAAC,CAAC,SAAS;CAC/F,CAAC,CAAC,CAAC,SAAS,6CAoBH;CACP,QApB0C,EAAE,OAAO;EACnD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,gEAAgE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAChJ,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACjF,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,6BAA6B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACtG,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,oDAAoD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAChI,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,oDAAoD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAC1G,aAAa,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,+DAA+D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAC7I,aAAa,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACrH,cAAc,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,qDAAqD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACtI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,2FAWhB;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-site.ts
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-site.cjs","names":["z","action"],"sources":["../../src/actions/scrape-site.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpengraphIoScrapeSiteInput = z.object({\n site: z.string().describe(\"The URL of the site to scrape. This will be URL-encoded by the action. E.g., 'https://example.com'.\"),\n scrape: z.boolean().describe(\"If true, forces scraping regardless of cache. Otherwise may return cached result.\").optional(),\n cache_ok: z.boolean().describe(\"If false, forces a fresh scrape instead of returning cached data. Defaults to using cache if not set.\").optional(),\n full_render: z.boolean().describe(\"If true, performs a full page render (runs JavaScript). Defaults to a lightweight scrape if not set.\").optional(),\n}).describe(\"Request model for scraping a site's raw HTML and metadata.\");\nexport const OpengraphIoScrapeSiteOutput = z.object({\n oEmbed: z.record(z.string(), z.unknown()).describe(\"oEmbed metadata, if any.\").nullable().optional(),\n openGraph: z.record(z.string(), z.unknown()).describe(\"Raw OpenGraph properties, if detected.\").nullable().optional(),\n requestUrl: z.string().describe(\"The actual URL that was scraped.\").nullable().optional(),\n hybridGraph: z.record(z.string(), z.unknown()).describe(\"Parsed OpenGraph and social metadata fields detected on the page.\").nullable().optional(),\n twitterCard: z.record(z.string(), z.unknown()).describe(\"Twitter card metadata detected, if any.\").nullable().optional(),\n htmlInferred: z.record(z.string(), z.unknown()).describe(\"Fallback metadata discovered by scraping regular HTML tags.\").nullable().optional(),\n}).passthrough().describe(\"Response model for scraped site metadata.\");\n\nexport const opengraphIoScrapeSite = action(\"OPENGRAPH_IO_SCRAPE_SITE\", {\n slug: \"opengraph_io-scrape-site\",\n name: \"Scrape Site\",\n description: \"Tool to scrape a site for its raw HTML and social/OpenGraph metadata. Use when you need the full page content and metadata. Use after confirming the URL.\",\n input: OpengraphIoScrapeSiteInput,\n output: OpengraphIoScrapeSiteOutput,\n});\n"],"mappings":";;;AAIA,MAAa,6BAA6BA,IAAAA,EAAE,OAAO;CACjD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,qGAAqG;CAC/H,QAAQA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,mFAAmF,CAAC,CAAC,SAAS;CAC3H,UAAUA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,uGAAuG,CAAC,CAAC,SAAS;CACjJ,aAAaA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,sGAAsG,CAAC,CAAC,SAAS;AACrJ,CAAC,CAAC,CAAC,SAAS,4DAA4D;AACxE,MAAa,8BAA8BA,IAAAA,EAAE,OAAO;CAClD,QAAQA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,0BAA0B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACnG,WAAWA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACpH,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kCAAkC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxF,aAAaA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,mEAAmE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjJ,aAAaA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACvH,cAAcA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,6DAA6D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC9I,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,2CAA2C;AAErE,MAAa,wBAAwBC,eAAAA,OAAO,4BAA4B;CACtE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"scrape-site.cjs","names":["z","action"],"sources":["../../src/actions/scrape-site.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { opengraphIo } from \"../app\";\n\nexport const OpengraphIoScrapeSiteInput = z.object({\n site: z.string().describe(\"The URL of the site to scrape. This will be URL-encoded by the action. E.g., 'https://example.com'.\"),\n scrape: z.boolean().describe(\"If true, forces scraping regardless of cache. Otherwise may return cached result.\").optional(),\n cache_ok: z.boolean().describe(\"If false, forces a fresh scrape instead of returning cached data. Defaults to using cache if not set.\").optional(),\n full_render: z.boolean().describe(\"If true, performs a full page render (runs JavaScript). Defaults to a lightweight scrape if not set.\").optional(),\n}).describe(\"Request model for scraping a site's raw HTML and metadata.\");\nexport const OpengraphIoScrapeSiteOutput = z.object({\n oEmbed: z.record(z.string(), z.unknown()).describe(\"oEmbed metadata, if any.\").nullable().optional(),\n openGraph: z.record(z.string(), z.unknown()).describe(\"Raw OpenGraph properties, if detected.\").nullable().optional(),\n requestUrl: z.string().describe(\"The actual URL that was scraped.\").nullable().optional(),\n hybridGraph: z.record(z.string(), z.unknown()).describe(\"Parsed OpenGraph and social metadata fields detected on the page.\").nullable().optional(),\n twitterCard: z.record(z.string(), z.unknown()).describe(\"Twitter card metadata detected, if any.\").nullable().optional(),\n htmlInferred: z.record(z.string(), z.unknown()).describe(\"Fallback metadata discovered by scraping regular HTML tags.\").nullable().optional(),\n}).passthrough().describe(\"Response model for scraped site metadata.\");\n\nexport const opengraphIoScrapeSite: AppAction<\n typeof OpengraphIoScrapeSiteInput,\n typeof OpengraphIoScrapeSiteOutput,\n typeof opengraphIo.credential\n> = action(\"OPENGRAPH_IO_SCRAPE_SITE\", {\n slug: \"opengraph_io-scrape-site\",\n name: \"Scrape Site\",\n description: \"Tool to scrape a site for its raw HTML and social/OpenGraph metadata. Use when you need the full page content and metadata. Use after confirming the URL.\",\n input: OpengraphIoScrapeSiteInput,\n output: OpengraphIoScrapeSiteOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,6BAA6BA,IAAAA,EAAE,OAAO;CACjD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,qGAAqG;CAC/H,QAAQA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,mFAAmF,CAAC,CAAC,SAAS;CAC3H,UAAUA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,uGAAuG,CAAC,CAAC,SAAS;CACjJ,aAAaA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,sGAAsG,CAAC,CAAC,SAAS;AACrJ,CAAC,CAAC,CAAC,SAAS,4DAA4D;AACxE,MAAa,8BAA8BA,IAAAA,EAAE,OAAO;CAClD,QAAQA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,0BAA0B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACnG,WAAWA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACpH,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kCAAkC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxF,aAAaA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,mEAAmE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjJ,aAAaA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACvH,cAAcA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,6DAA6D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC9I,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,2CAA2C;AAErE,MAAa,wBAITC,eAAAA,OAAO,4BAA4B;CACrC,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -1,3 +1,5 @@
1
+ import { opengraphIo } from "../app.cjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/scrape-site.d.ts
@@ -15,24 +17,7 @@ declare const OpengraphIoScrapeSiteOutput: z.ZodObject<{
15
17
  twitterCard: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
16
18
  htmlInferred: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
17
19
  }, z.core.$loose>;
18
- declare const opengraphIoScrapeSite: import("@keystrokehq/action").WorkflowActionDefinition<{
19
- site: string;
20
- scrape?: boolean | undefined;
21
- cache_ok?: boolean | undefined;
22
- full_render?: boolean | undefined;
23
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
24
- connectionId: z.ZodString;
25
- entityId: z.ZodString;
26
- instanceId: z.ZodString;
27
- }, z.core.$strip>, z.ZodObject<{
28
- generic_api_key: z.ZodString;
29
- }, z.core.$strip>>]>, readonly [import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
30
- connectionId: z.ZodString;
31
- entityId: z.ZodString;
32
- instanceId: z.ZodString;
33
- }, z.core.$strip>, z.ZodObject<{
34
- generic_api_key: z.ZodString;
35
- }, z.core.$strip>>]>;
20
+ declare const opengraphIoScrapeSite: AppAction<typeof OpengraphIoScrapeSiteInput, typeof OpengraphIoScrapeSiteOutput, typeof opengraphIo.credential>;
36
21
  //#endregion
37
22
  export { opengraphIoScrapeSite };
38
23
  //# sourceMappingURL=scrape-site.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-site.d.cts","names":[],"sources":["../../src/actions/scrape-site.ts"],"mappings":";;;cAIa,0BAAA,EAA0B,CAAA,CAAA,SAAA;;;;;;cAM1B,2BAAA,EAA2B,CAAA,CAAA,SAAA;;;;;;;;cAS3B,qBAAA,gCAAqB,wBAAA"}
1
+ {"version":3,"file":"scrape-site.d.cts","names":[],"sources":["../../src/actions/scrape-site.ts"],"mappings":";;;;;cAMa,0BAAA,EAA0B,CAAA,CAAA,SAAA;;;;;;cAM1B,2BAAA,EAA2B,CAAA,CAAA,SAAA;;;;;;;;cAS3B,qBAAA,EAAuB,SAAA,QAC3B,0BAAA,SACA,2BAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,5 @@
1
+ import { opengraphIo } from "../app.mjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/scrape-site.d.ts
@@ -15,24 +17,7 @@ declare const OpengraphIoScrapeSiteOutput: z.ZodObject<{
15
17
  twitterCard: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
16
18
  htmlInferred: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
17
19
  }, z.core.$loose>;
18
- declare const opengraphIoScrapeSite: import("@keystrokehq/action").WorkflowActionDefinition<{
19
- site: string;
20
- scrape?: boolean | undefined;
21
- cache_ok?: boolean | undefined;
22
- full_render?: boolean | undefined;
23
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
24
- connectionId: z.ZodString;
25
- entityId: z.ZodString;
26
- instanceId: z.ZodString;
27
- }, z.core.$strip>, z.ZodObject<{
28
- generic_api_key: z.ZodString;
29
- }, z.core.$strip>>]>, readonly [import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
30
- connectionId: z.ZodString;
31
- entityId: z.ZodString;
32
- instanceId: z.ZodString;
33
- }, z.core.$strip>, z.ZodObject<{
34
- generic_api_key: z.ZodString;
35
- }, z.core.$strip>>]>;
20
+ declare const opengraphIoScrapeSite: AppAction<typeof OpengraphIoScrapeSiteInput, typeof OpengraphIoScrapeSiteOutput, typeof opengraphIo.credential>;
36
21
  //#endregion
37
22
  export { opengraphIoScrapeSite };
38
23
  //# sourceMappingURL=scrape-site.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-site.d.mts","names":[],"sources":["../../src/actions/scrape-site.ts"],"mappings":";;;cAIa,0BAAA,EAA0B,CAAA,CAAA,SAAA;;;;;;cAM1B,2BAAA,EAA2B,CAAA,CAAA,SAAA;;;;;;;;cAS3B,qBAAA,gCAAqB,wBAAA"}
1
+ {"version":3,"file":"scrape-site.d.mts","names":[],"sources":["../../src/actions/scrape-site.ts"],"mappings":";;;;;cAMa,0BAAA,EAA0B,CAAA,CAAA,SAAA;;;;;;cAM1B,2BAAA,EAA2B,CAAA,CAAA,SAAA;;;;;;;;cAS3B,qBAAA,EAAuB,SAAA,QAC3B,0BAAA,SACA,2BAAA,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 opengraphIoScrapeSite = action("OPENGRAPH_IO_SCRAPE_SITE", {
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-site.mjs","names":[],"sources":["../../src/actions/scrape-site.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpengraphIoScrapeSiteInput = z.object({\n site: z.string().describe(\"The URL of the site to scrape. This will be URL-encoded by the action. E.g., 'https://example.com'.\"),\n scrape: z.boolean().describe(\"If true, forces scraping regardless of cache. Otherwise may return cached result.\").optional(),\n cache_ok: z.boolean().describe(\"If false, forces a fresh scrape instead of returning cached data. Defaults to using cache if not set.\").optional(),\n full_render: z.boolean().describe(\"If true, performs a full page render (runs JavaScript). Defaults to a lightweight scrape if not set.\").optional(),\n}).describe(\"Request model for scraping a site's raw HTML and metadata.\");\nexport const OpengraphIoScrapeSiteOutput = z.object({\n oEmbed: z.record(z.string(), z.unknown()).describe(\"oEmbed metadata, if any.\").nullable().optional(),\n openGraph: z.record(z.string(), z.unknown()).describe(\"Raw OpenGraph properties, if detected.\").nullable().optional(),\n requestUrl: z.string().describe(\"The actual URL that was scraped.\").nullable().optional(),\n hybridGraph: z.record(z.string(), z.unknown()).describe(\"Parsed OpenGraph and social metadata fields detected on the page.\").nullable().optional(),\n twitterCard: z.record(z.string(), z.unknown()).describe(\"Twitter card metadata detected, if any.\").nullable().optional(),\n htmlInferred: z.record(z.string(), z.unknown()).describe(\"Fallback metadata discovered by scraping regular HTML tags.\").nullable().optional(),\n}).passthrough().describe(\"Response model for scraped site metadata.\");\n\nexport const opengraphIoScrapeSite = action(\"OPENGRAPH_IO_SCRAPE_SITE\", {\n slug: \"opengraph_io-scrape-site\",\n name: \"Scrape Site\",\n description: \"Tool to scrape a site for its raw HTML and social/OpenGraph metadata. Use when you need the full page content and metadata. Use after confirming the URL.\",\n input: OpengraphIoScrapeSiteInput,\n output: OpengraphIoScrapeSiteOutput,\n});\n"],"mappings":";;AAmBA,MAAa,wBAAwB,OAAO,4BAA4B;CACtE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAnBwC,EAAE,OAAO;EACjD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,qGAAqG;EAC/H,QAAQ,EAAE,QAAQ,CAAC,CAAC,SAAS,mFAAmF,CAAC,CAAC,SAAS;EAC3H,UAAU,EAAE,QAAQ,CAAC,CAAC,SAAS,uGAAuG,CAAC,CAAC,SAAS;EACjJ,aAAa,EAAE,QAAQ,CAAC,CAAC,SAAS,sGAAsG,CAAC,CAAC,SAAS;CACrJ,CAAC,CAAC,CAAC,SAAS,4DAcH;CACP,QAdyC,EAAE,OAAO;EAClD,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,0BAA0B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACnG,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACpH,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,kCAAkC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACxF,aAAa,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,mEAAmE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACjJ,aAAa,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACvH,cAAc,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,6DAA6D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC9I,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,2CAOhB;AACV,CAAC"}
1
+ {"version":3,"file":"scrape-site.mjs","names":[],"sources":["../../src/actions/scrape-site.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { opengraphIo } from \"../app\";\n\nexport const OpengraphIoScrapeSiteInput = z.object({\n site: z.string().describe(\"The URL of the site to scrape. This will be URL-encoded by the action. E.g., 'https://example.com'.\"),\n scrape: z.boolean().describe(\"If true, forces scraping regardless of cache. Otherwise may return cached result.\").optional(),\n cache_ok: z.boolean().describe(\"If false, forces a fresh scrape instead of returning cached data. Defaults to using cache if not set.\").optional(),\n full_render: z.boolean().describe(\"If true, performs a full page render (runs JavaScript). Defaults to a lightweight scrape if not set.\").optional(),\n}).describe(\"Request model for scraping a site's raw HTML and metadata.\");\nexport const OpengraphIoScrapeSiteOutput = z.object({\n oEmbed: z.record(z.string(), z.unknown()).describe(\"oEmbed metadata, if any.\").nullable().optional(),\n openGraph: z.record(z.string(), z.unknown()).describe(\"Raw OpenGraph properties, if detected.\").nullable().optional(),\n requestUrl: z.string().describe(\"The actual URL that was scraped.\").nullable().optional(),\n hybridGraph: z.record(z.string(), z.unknown()).describe(\"Parsed OpenGraph and social metadata fields detected on the page.\").nullable().optional(),\n twitterCard: z.record(z.string(), z.unknown()).describe(\"Twitter card metadata detected, if any.\").nullable().optional(),\n htmlInferred: z.record(z.string(), z.unknown()).describe(\"Fallback metadata discovered by scraping regular HTML tags.\").nullable().optional(),\n}).passthrough().describe(\"Response model for scraped site metadata.\");\n\nexport const opengraphIoScrapeSite: AppAction<\n typeof OpengraphIoScrapeSiteInput,\n typeof OpengraphIoScrapeSiteOutput,\n typeof opengraphIo.credential\n> = action(\"OPENGRAPH_IO_SCRAPE_SITE\", {\n slug: \"opengraph_io-scrape-site\",\n name: \"Scrape Site\",\n description: \"Tool to scrape a site for its raw HTML and social/OpenGraph metadata. Use when you need the full page content and metadata. Use after confirming the URL.\",\n input: OpengraphIoScrapeSiteInput,\n output: OpengraphIoScrapeSiteOutput,\n});\n"],"mappings":";;;AAqBA,MAAa,wBAIT,OAAO,4BAA4B;CACrC,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAvBwC,EAAE,OAAO;EACjD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,qGAAqG;EAC/H,QAAQ,EAAE,QAAQ,CAAC,CAAC,SAAS,mFAAmF,CAAC,CAAC,SAAS;EAC3H,UAAU,EAAE,QAAQ,CAAC,CAAC,SAAS,uGAAuG,CAAC,CAAC,SAAS;EACjJ,aAAa,EAAE,QAAQ,CAAC,CAAC,SAAS,sGAAsG,CAAC,CAAC,SAAS;CACrJ,CAAC,CAAC,CAAC,SAAS,4DAkBH;CACP,QAlByC,EAAE,OAAO;EAClD,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,0BAA0B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACnG,WAAW,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACpH,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,kCAAkC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACxF,aAAa,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,mEAAmE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACjJ,aAAa,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACvH,cAAc,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,6DAA6D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC9I,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,2CAWhB;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-url.ts
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-url.cjs","names":["z","action"],"sources":["../../src/actions/scrape-url.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpengraphIoScrapeUrlInput = z.object({\n url: z.string().describe(\"The target website URL to scrape. Must start with http:// or https://. This will be URL-encoded automatically.\"),\n cache_ok: z.boolean().describe(\"Allow cached results. Set to false to force a fresh scrape. Defaults to true to improve performance.\").optional(),\n use_proxy: z.boolean().describe(\"Use standard datacenter proxy for the request. Helps bypass basic bot detection. Defaults to false.\").optional(),\n accept_lang: z.string().describe(\"Language header for localized content (e.g., 'en-US', 'fr-FR', 'es-ES'). Defaults to 'en-US'.\").optional(),\n full_render: z.boolean().describe(\"Enable JavaScript rendering. Required for Single Page Applications (SPAs) and dynamic content. Defaults to false for faster lightweight scraping.\").optional(),\n use_premium: z.boolean().describe(\"Use residential proxy for the request. Better for scraping protected sites with stronger bot detection. Defaults to false.\").optional(),\n use_superior: z.boolean().describe(\"Use mobile proxy for the request. Best for heavily protected sites with advanced bot detection. Defaults to false.\").optional(),\n}).describe(\"Request model for scraping raw HTML content from a URL.\");\nconst OpengraphIoScrapeUrl_RequestInfoSchema = z.object({\n host: z.string().describe(\"The host that responded to the request\").nullable().optional(),\n redirects: z.number().int().describe(\"Number of redirects followed\").nullable().optional(),\n responseCode: z.number().int().describe(\"HTTP response code from the target site\").nullable().optional(),\n responseContentType: z.string().describe(\"Content-Type header from the response\").nullable().optional(),\n}).passthrough().describe(\"Information about the HTTP request execution.\");\nexport const OpengraphIoScrapeUrlOutput = z.object({\n htmlContent: z.string().describe(\"Raw HTML content of the scraped page\").nullable().optional(),\n requestInfo: OpengraphIoScrapeUrl_RequestInfoSchema.nullable().optional(),\n}).passthrough().describe(\"Response model containing raw HTML content and request information.\");\n\nexport const opengraphIoScrapeUrl = action(\"OPENGRAPH_IO_SCRAPE_URL\", {\n slug: \"opengraph_io-scrape-url\",\n name: \"Scrape URL for HTML\",\n description: \"Tool to scrape raw HTML content from a website with anti-bot protection and optional JavaScript rendering. Use when you need the full HTML source code of a page, especially for sites with bot detection or dynamic content.\",\n input: OpengraphIoScrapeUrlInput,\n output: OpengraphIoScrapeUrlOutput,\n});\n"],"mappings":";;;AAIA,MAAa,4BAA4BA,IAAAA,EAAE,OAAO;CAChD,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gHAAgH;CACzI,UAAUA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,sGAAsG,CAAC,CAAC,SAAS;CAChJ,WAAWA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,qGAAqG,CAAC,CAAC,SAAS;CAChJ,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,+FAA+F,CAAC,CAAC,SAAS;CAC3I,aAAaA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,mJAAmJ,CAAC,CAAC,SAAS;CAChM,aAAaA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,4HAA4H,CAAC,CAAC,SAAS;CACzK,cAAcA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,oHAAoH,CAAC,CAAC,SAAS;AACpK,CAAC,CAAC,CAAC,SAAS,yDAAyD;AACrE,MAAM,yCAAyCA,IAAAA,EAAE,OAAO;CACtD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxF,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,8BAA8B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACzF,cAAcA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACvG,qBAAqBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACxG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,+CAA+C;AACzE,MAAa,6BAA6BA,IAAAA,EAAE,OAAO;CACjD,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC7F,aAAa,uCAAuC,SAAS,CAAC,CAAC,SAAS;AAC1E,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,qEAAqE;AAE/F,MAAa,uBAAuBC,eAAAA,OAAO,2BAA2B;CACpE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
1
+ {"version":3,"file":"scrape-url.cjs","names":["z","action"],"sources":["../../src/actions/scrape-url.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { opengraphIo } from \"../app\";\n\nexport const OpengraphIoScrapeUrlInput = z.object({\n url: z.string().describe(\"The target website URL to scrape. Must start with http:// or https://. This will be URL-encoded automatically.\"),\n cache_ok: z.boolean().describe(\"Allow cached results. Set to false to force a fresh scrape. Defaults to true to improve performance.\").optional(),\n use_proxy: z.boolean().describe(\"Use standard datacenter proxy for the request. Helps bypass basic bot detection. Defaults to false.\").optional(),\n accept_lang: z.string().describe(\"Language header for localized content (e.g., 'en-US', 'fr-FR', 'es-ES'). Defaults to 'en-US'.\").optional(),\n full_render: z.boolean().describe(\"Enable JavaScript rendering. Required for Single Page Applications (SPAs) and dynamic content. Defaults to false for faster lightweight scraping.\").optional(),\n use_premium: z.boolean().describe(\"Use residential proxy for the request. Better for scraping protected sites with stronger bot detection. Defaults to false.\").optional(),\n use_superior: z.boolean().describe(\"Use mobile proxy for the request. Best for heavily protected sites with advanced bot detection. Defaults to false.\").optional(),\n}).describe(\"Request model for scraping raw HTML content from a URL.\");\nconst OpengraphIoScrapeUrl_RequestInfoSchema = z.object({\n host: z.string().describe(\"The host that responded to the request\").nullable().optional(),\n redirects: z.number().int().describe(\"Number of redirects followed\").nullable().optional(),\n responseCode: z.number().int().describe(\"HTTP response code from the target site\").nullable().optional(),\n responseContentType: z.string().describe(\"Content-Type header from the response\").nullable().optional(),\n}).passthrough().describe(\"Information about the HTTP request execution.\");\nexport const OpengraphIoScrapeUrlOutput = z.object({\n htmlContent: z.string().describe(\"Raw HTML content of the scraped page\").nullable().optional(),\n requestInfo: OpengraphIoScrapeUrl_RequestInfoSchema.nullable().optional(),\n}).passthrough().describe(\"Response model containing raw HTML content and request information.\");\n\nexport const opengraphIoScrapeUrl: AppAction<\n typeof OpengraphIoScrapeUrlInput,\n typeof OpengraphIoScrapeUrlOutput,\n typeof opengraphIo.credential\n> = action(\"OPENGRAPH_IO_SCRAPE_URL\", {\n slug: \"opengraph_io-scrape-url\",\n name: \"Scrape URL for HTML\",\n description: \"Tool to scrape raw HTML content from a website with anti-bot protection and optional JavaScript rendering. Use when you need the full HTML source code of a page, especially for sites with bot detection or dynamic content.\",\n input: OpengraphIoScrapeUrlInput,\n output: OpengraphIoScrapeUrlOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,4BAA4BA,IAAAA,EAAE,OAAO;CAChD,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gHAAgH;CACzI,UAAUA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,sGAAsG,CAAC,CAAC,SAAS;CAChJ,WAAWA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,qGAAqG,CAAC,CAAC,SAAS;CAChJ,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,+FAA+F,CAAC,CAAC,SAAS;CAC3I,aAAaA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,mJAAmJ,CAAC,CAAC,SAAS;CAChM,aAAaA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,4HAA4H,CAAC,CAAC,SAAS;CACzK,cAAcA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,oHAAoH,CAAC,CAAC,SAAS;AACpK,CAAC,CAAC,CAAC,SAAS,yDAAyD;AACrE,MAAM,yCAAyCA,IAAAA,EAAE,OAAO;CACtD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxF,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,8BAA8B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACzF,cAAcA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACvG,qBAAqBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACxG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,+CAA+C;AACzE,MAAa,6BAA6BA,IAAAA,EAAE,OAAO;CACjD,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC7F,aAAa,uCAAuC,SAAS,CAAC,CAAC,SAAS;AAC1E,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,qEAAqE;AAE/F,MAAa,uBAITC,eAAAA,OAAO,2BAA2B;CACpC,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -1,3 +1,5 @@
1
+ import { opengraphIo } from "../app.cjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/scrape-url.d.ts
@@ -19,27 +21,7 @@ declare const OpengraphIoScrapeUrlOutput: z.ZodObject<{
19
21
  responseContentType: z.ZodOptional<z.ZodNullable<z.ZodString>>;
20
22
  }, z.core.$loose>>>;
21
23
  }, z.core.$loose>;
22
- declare const opengraphIoScrapeUrl: import("@keystrokehq/action").WorkflowActionDefinition<{
23
- url: string;
24
- cache_ok?: boolean | undefined;
25
- use_proxy?: boolean | undefined;
26
- accept_lang?: string | undefined;
27
- full_render?: boolean | undefined;
28
- use_premium?: boolean | undefined;
29
- use_superior?: boolean | undefined;
30
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
31
- connectionId: z.ZodString;
32
- entityId: z.ZodString;
33
- instanceId: z.ZodString;
34
- }, z.core.$strip>, z.ZodObject<{
35
- generic_api_key: z.ZodString;
36
- }, z.core.$strip>>]>, readonly [import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
37
- connectionId: z.ZodString;
38
- entityId: z.ZodString;
39
- instanceId: z.ZodString;
40
- }, z.core.$strip>, z.ZodObject<{
41
- generic_api_key: z.ZodString;
42
- }, z.core.$strip>>]>;
24
+ declare const opengraphIoScrapeUrl: AppAction<typeof OpengraphIoScrapeUrlInput, typeof OpengraphIoScrapeUrlOutput, typeof opengraphIo.credential>;
43
25
  //#endregion
44
26
  export { opengraphIoScrapeUrl };
45
27
  //# sourceMappingURL=scrape-url.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-url.d.cts","names":[],"sources":["../../src/actions/scrape-url.ts"],"mappings":";;;cAIa,yBAAA,EAAyB,CAAA,CAAA,SAAA;;;;;;;;;cAezB,0BAAA,EAA0B,CAAA,CAAA,SAAA;;;;;;;;;cAK1B,oBAAA,gCAAoB,wBAAA"}
1
+ {"version":3,"file":"scrape-url.d.cts","names":[],"sources":["../../src/actions/scrape-url.ts"],"mappings":";;;;;cAMa,yBAAA,EAAyB,CAAA,CAAA,SAAA;;;;;;;;;cAezB,0BAAA,EAA0B,CAAA,CAAA,SAAA;;;;;;;;;cAK1B,oBAAA,EAAsB,SAAA,QAC1B,yBAAA,SACA,0BAAA,SACA,WAAA,CAAY,UAAA"}
@@ -1,3 +1,5 @@
1
+ import { opengraphIo } from "../app.mjs";
2
+ import { AppAction } from "@keystrokehq/keystroke/app";
1
3
  import { z } from "zod";
2
4
 
3
5
  //#region src/actions/scrape-url.d.ts
@@ -19,27 +21,7 @@ declare const OpengraphIoScrapeUrlOutput: z.ZodObject<{
19
21
  responseContentType: z.ZodOptional<z.ZodNullable<z.ZodString>>;
20
22
  }, z.core.$loose>>>;
21
23
  }, z.core.$loose>;
22
- declare const opengraphIoScrapeUrl: import("@keystrokehq/action").WorkflowActionDefinition<{
23
- url: string;
24
- cache_ok?: boolean | undefined;
25
- use_proxy?: boolean | undefined;
26
- accept_lang?: string | undefined;
27
- full_render?: boolean | undefined;
28
- use_premium?: boolean | undefined;
29
- use_superior?: boolean | undefined;
30
- }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
31
- connectionId: z.ZodString;
32
- entityId: z.ZodString;
33
- instanceId: z.ZodString;
34
- }, z.core.$strip>, z.ZodObject<{
35
- generic_api_key: z.ZodString;
36
- }, z.core.$strip>>]>, readonly [import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
37
- connectionId: z.ZodString;
38
- entityId: z.ZodString;
39
- instanceId: z.ZodString;
40
- }, z.core.$strip>, z.ZodObject<{
41
- generic_api_key: z.ZodString;
42
- }, z.core.$strip>>]>;
24
+ declare const opengraphIoScrapeUrl: AppAction<typeof OpengraphIoScrapeUrlInput, typeof OpengraphIoScrapeUrlOutput, typeof opengraphIo.credential>;
43
25
  //#endregion
44
26
  export { opengraphIoScrapeUrl };
45
27
  //# sourceMappingURL=scrape-url.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-url.d.mts","names":[],"sources":["../../src/actions/scrape-url.ts"],"mappings":";;;cAIa,yBAAA,EAAyB,CAAA,CAAA,SAAA;;;;;;;;;cAezB,0BAAA,EAA0B,CAAA,CAAA,SAAA;;;;;;;;;cAK1B,oBAAA,gCAAoB,wBAAA"}
1
+ {"version":3,"file":"scrape-url.d.mts","names":[],"sources":["../../src/actions/scrape-url.ts"],"mappings":";;;;;cAMa,yBAAA,EAAyB,CAAA,CAAA,SAAA;;;;;;;;;cAezB,0BAAA,EAA0B,CAAA,CAAA,SAAA;;;;;;;;;cAK1B,oBAAA,EAAsB,SAAA,QAC1B,yBAAA,SACA,0BAAA,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-url.ts
@@ -1 +1 @@
1
- {"version":3,"file":"scrape-url.mjs","names":[],"sources":["../../src/actions/scrape-url.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const OpengraphIoScrapeUrlInput = z.object({\n url: z.string().describe(\"The target website URL to scrape. Must start with http:// or https://. This will be URL-encoded automatically.\"),\n cache_ok: z.boolean().describe(\"Allow cached results. Set to false to force a fresh scrape. Defaults to true to improve performance.\").optional(),\n use_proxy: z.boolean().describe(\"Use standard datacenter proxy for the request. Helps bypass basic bot detection. Defaults to false.\").optional(),\n accept_lang: z.string().describe(\"Language header for localized content (e.g., 'en-US', 'fr-FR', 'es-ES'). Defaults to 'en-US'.\").optional(),\n full_render: z.boolean().describe(\"Enable JavaScript rendering. Required for Single Page Applications (SPAs) and dynamic content. Defaults to false for faster lightweight scraping.\").optional(),\n use_premium: z.boolean().describe(\"Use residential proxy for the request. Better for scraping protected sites with stronger bot detection. Defaults to false.\").optional(),\n use_superior: z.boolean().describe(\"Use mobile proxy for the request. Best for heavily protected sites with advanced bot detection. Defaults to false.\").optional(),\n}).describe(\"Request model for scraping raw HTML content from a URL.\");\nconst OpengraphIoScrapeUrl_RequestInfoSchema = z.object({\n host: z.string().describe(\"The host that responded to the request\").nullable().optional(),\n redirects: z.number().int().describe(\"Number of redirects followed\").nullable().optional(),\n responseCode: z.number().int().describe(\"HTTP response code from the target site\").nullable().optional(),\n responseContentType: z.string().describe(\"Content-Type header from the response\").nullable().optional(),\n}).passthrough().describe(\"Information about the HTTP request execution.\");\nexport const OpengraphIoScrapeUrlOutput = z.object({\n htmlContent: z.string().describe(\"Raw HTML content of the scraped page\").nullable().optional(),\n requestInfo: OpengraphIoScrapeUrl_RequestInfoSchema.nullable().optional(),\n}).passthrough().describe(\"Response model containing raw HTML content and request information.\");\n\nexport const opengraphIoScrapeUrl = action(\"OPENGRAPH_IO_SCRAPE_URL\", {\n slug: \"opengraph_io-scrape-url\",\n name: \"Scrape URL for HTML\",\n description: \"Tool to scrape raw HTML content from a website with anti-bot protection and optional JavaScript rendering. Use when you need the full HTML source code of a page, especially for sites with bot detection or dynamic content.\",\n input: OpengraphIoScrapeUrlInput,\n output: OpengraphIoScrapeUrlOutput,\n});\n"],"mappings":";;;AAIA,MAAa,4BAA4B,EAAE,OAAO;CAChD,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,gHAAgH;CACzI,UAAU,EAAE,QAAQ,CAAC,CAAC,SAAS,sGAAsG,CAAC,CAAC,SAAS;CAChJ,WAAW,EAAE,QAAQ,CAAC,CAAC,SAAS,qGAAqG,CAAC,CAAC,SAAS;CAChJ,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,+FAA+F,CAAC,CAAC,SAAS;CAC3I,aAAa,EAAE,QAAQ,CAAC,CAAC,SAAS,mJAAmJ,CAAC,CAAC,SAAS;CAChM,aAAa,EAAE,QAAQ,CAAC,CAAC,SAAS,4HAA4H,CAAC,CAAC,SAAS;CACzK,cAAc,EAAE,QAAQ,CAAC,CAAC,SAAS,oHAAoH,CAAC,CAAC,SAAS;AACpK,CAAC,CAAC,CAAC,SAAS,yDAAyD;AACrE,MAAM,yCAAyC,EAAE,OAAO;CACtD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxF,WAAW,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,8BAA8B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACzF,cAAc,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACvG,qBAAqB,EAAE,OAAO,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACxG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,+CAA+C;AAMzE,MAAa,uBAAuB,OAAO,2BAA2B;CACpE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAVwC,EAAE,OAAO;EACjD,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAC7F,aAAa,uCAAuC,SAAS,CAAC,CAAC,SAAS;CAC1E,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,qEAOhB;AACV,CAAC"}
1
+ {"version":3,"file":"scrape-url.mjs","names":[],"sources":["../../src/actions/scrape-url.ts"],"sourcesContent":["import type { AppAction } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nimport { action } from \"../action\";\nimport { opengraphIo } from \"../app\";\n\nexport const OpengraphIoScrapeUrlInput = z.object({\n url: z.string().describe(\"The target website URL to scrape. Must start with http:// or https://. This will be URL-encoded automatically.\"),\n cache_ok: z.boolean().describe(\"Allow cached results. Set to false to force a fresh scrape. Defaults to true to improve performance.\").optional(),\n use_proxy: z.boolean().describe(\"Use standard datacenter proxy for the request. Helps bypass basic bot detection. Defaults to false.\").optional(),\n accept_lang: z.string().describe(\"Language header for localized content (e.g., 'en-US', 'fr-FR', 'es-ES'). Defaults to 'en-US'.\").optional(),\n full_render: z.boolean().describe(\"Enable JavaScript rendering. Required for Single Page Applications (SPAs) and dynamic content. Defaults to false for faster lightweight scraping.\").optional(),\n use_premium: z.boolean().describe(\"Use residential proxy for the request. Better for scraping protected sites with stronger bot detection. Defaults to false.\").optional(),\n use_superior: z.boolean().describe(\"Use mobile proxy for the request. Best for heavily protected sites with advanced bot detection. Defaults to false.\").optional(),\n}).describe(\"Request model for scraping raw HTML content from a URL.\");\nconst OpengraphIoScrapeUrl_RequestInfoSchema = z.object({\n host: z.string().describe(\"The host that responded to the request\").nullable().optional(),\n redirects: z.number().int().describe(\"Number of redirects followed\").nullable().optional(),\n responseCode: z.number().int().describe(\"HTTP response code from the target site\").nullable().optional(),\n responseContentType: z.string().describe(\"Content-Type header from the response\").nullable().optional(),\n}).passthrough().describe(\"Information about the HTTP request execution.\");\nexport const OpengraphIoScrapeUrlOutput = z.object({\n htmlContent: z.string().describe(\"Raw HTML content of the scraped page\").nullable().optional(),\n requestInfo: OpengraphIoScrapeUrl_RequestInfoSchema.nullable().optional(),\n}).passthrough().describe(\"Response model containing raw HTML content and request information.\");\n\nexport const opengraphIoScrapeUrl: AppAction<\n typeof OpengraphIoScrapeUrlInput,\n typeof OpengraphIoScrapeUrlOutput,\n typeof opengraphIo.credential\n> = action(\"OPENGRAPH_IO_SCRAPE_URL\", {\n slug: \"opengraph_io-scrape-url\",\n name: \"Scrape URL for HTML\",\n description: \"Tool to scrape raw HTML content from a website with anti-bot protection and optional JavaScript rendering. Use when you need the full HTML source code of a page, especially for sites with bot detection or dynamic content.\",\n input: OpengraphIoScrapeUrlInput,\n output: OpengraphIoScrapeUrlOutput,\n});\n"],"mappings":";;;;AAMA,MAAa,4BAA4B,EAAE,OAAO;CAChD,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,gHAAgH;CACzI,UAAU,EAAE,QAAQ,CAAC,CAAC,SAAS,sGAAsG,CAAC,CAAC,SAAS;CAChJ,WAAW,EAAE,QAAQ,CAAC,CAAC,SAAS,qGAAqG,CAAC,CAAC,SAAS;CAChJ,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,+FAA+F,CAAC,CAAC,SAAS;CAC3I,aAAa,EAAE,QAAQ,CAAC,CAAC,SAAS,mJAAmJ,CAAC,CAAC,SAAS;CAChM,aAAa,EAAE,QAAQ,CAAC,CAAC,SAAS,4HAA4H,CAAC,CAAC,SAAS;CACzK,cAAc,EAAE,QAAQ,CAAC,CAAC,SAAS,oHAAoH,CAAC,CAAC,SAAS;AACpK,CAAC,CAAC,CAAC,SAAS,yDAAyD;AACrE,MAAM,yCAAyC,EAAE,OAAO;CACtD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxF,WAAW,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,8BAA8B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACzF,cAAc,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACvG,qBAAqB,EAAE,OAAO,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACxG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,+CAA+C;AAMzE,MAAa,uBAIT,OAAO,2BAA2B;CACpC,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAdwC,EAAE,OAAO;EACjD,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAC7F,aAAa,uCAAuC,SAAS,CAAC,CAAC,SAAS;CAC1E,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,qEAWhB;AACV,CAAC"}
package/dist/app.cjs CHANGED
@@ -1,10 +1,10 @@
1
1
  let _keystrokehq_keystroke_app = require("@keystrokehq/keystroke/app");
2
- let zod = require("zod");
3
2
  //#region src/app.ts
3
+ const credential = { generic_api_key: require("zod").z.string() };
4
4
  const opengraphIo = (0, _keystrokehq_keystroke_app.defineApp)({
5
5
  slug: "opengraph_io",
6
6
  auth: "keystroke",
7
- credential: { generic_api_key: zod.z.string() }
7
+ credential
8
8
  });
9
9
  //#endregion
10
10
  exports.opengraphIo = opengraphIo;
package/dist/app.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.cjs","names":["z"],"sources":["../src/app.ts"],"sourcesContent":["import { defineApp } from \"@keystrokehq/keystroke/app\";\nimport { z } from \"zod\";\n\nexport const opengraphIo = defineApp({\n slug: \"opengraph_io\",\n auth: \"keystroke\",\n credential: {\n generic_api_key: z.string(),\n },\n});\n"],"mappings":";;;AAGA,MAAa,eAAA,GAAA,2BAAA,UAAA,CAAwB;CACnC,MAAM;CACN,MAAM;CACN,YAAY,EACV,iBAAiBA,IAAAA,EAAE,OAAO,EAC5B;AACF,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 opengraphIo: KeystrokeApp<\"opengraph_io\", typeof credential> = defineApp({\n slug: \"opengraph_io\",\n auth: \"keystroke\",\n credential,\n});\n"],"mappings":";;AAGA,MAAM,aAAa,EACjB,8BAAiBA,CAAAA,CAAAA,EAAE,OAAO,EAC5B;AAEA,MAAa,eAAA,GAAA,2BAAA,UAAA,CAAyE;CACpF,MAAM;CACN,MAAM;CACN;AACF,CAAC"}
package/dist/app.d.cts CHANGED
@@ -1,13 +1,11 @@
1
+ import { KeystrokeApp } from "@keystrokehq/keystroke/app";
1
2
  import { z } from "zod";
2
3
 
3
4
  //#region src/app.d.ts
4
- declare const opengraphIo: import("@keystrokehq/app").App<import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
5
- connectionId: z.ZodString;
6
- entityId: z.ZodString;
7
- instanceId: z.ZodString;
8
- }, z.core.$strip>, z.ZodObject<{
5
+ declare const credential: {
9
6
  generic_api_key: z.ZodString;
10
- }, z.core.$strip>>>;
7
+ };
8
+ declare const opengraphIo: KeystrokeApp<"opengraph_io", typeof credential>;
11
9
  //#endregion
12
10
  export { opengraphIo };
13
11
  //# sourceMappingURL=app.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.cts","names":[],"sources":["../src/app.ts"],"mappings":";;;cAGa,WAAA,6BAAW,GAAA,+BAAA,UAAA,iBAAA,CAAA,CAAA,SAAA"}
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,wBAAwB,UAAA"}
package/dist/app.d.mts CHANGED
@@ -1,13 +1,11 @@
1
+ import { KeystrokeApp } from "@keystrokehq/keystroke/app";
1
2
  import { z } from "zod";
2
3
 
3
4
  //#region src/app.d.ts
4
- declare const opengraphIo: import("@keystrokehq/app").App<import("@keystrokehq/shared").Credential<"opengraph_io", z.ZodObject<{
5
- connectionId: z.ZodString;
6
- entityId: z.ZodString;
7
- instanceId: z.ZodString;
8
- }, z.core.$strip>, z.ZodObject<{
5
+ declare const credential: {
9
6
  generic_api_key: z.ZodString;
10
- }, z.core.$strip>>>;
7
+ };
8
+ declare const opengraphIo: KeystrokeApp<"opengraph_io", typeof credential>;
11
9
  //#endregion
12
10
  export { opengraphIo };
13
11
  //# sourceMappingURL=app.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.mts","names":[],"sources":["../src/app.ts"],"mappings":";;;cAGa,WAAA,6BAAW,GAAA,+BAAA,UAAA,iBAAA,CAAA,CAAA,SAAA"}
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,wBAAwB,UAAA"}
package/dist/app.mjs CHANGED
@@ -1,6 +1,5 @@
1
1
  import { defineApp } from "@keystrokehq/keystroke/app";
2
2
  import { z } from "zod";
3
- //#region src/app.ts
4
3
  const opengraphIo = defineApp({
5
4
  slug: "opengraph_io",
6
5
  auth: "keystroke",
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\";\nimport { z } from \"zod\";\n\nexport const opengraphIo = defineApp({\n slug: \"opengraph_io\",\n auth: \"keystroke\",\n credential: {\n generic_api_key: z.string(),\n },\n});\n"],"mappings":";;;AAGA,MAAa,cAAc,UAAU;CACnC,MAAM;CACN,MAAM;CACN,YAAY,EACV,iBAAiB,EAAE,OAAO,EAC5B;AACF,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 opengraphIo: KeystrokeApp<\"opengraph_io\", typeof credential> = defineApp({\n slug: \"opengraph_io\",\n auth: \"keystroke\",\n credential,\n});\n"],"mappings":";;AAOA,MAAa,cAA+D,UAAU;CACpF,MAAM;CACN,MAAM;CACN,cANA,iBAAiB,EAAE,OAAO,EAM1B;AACF,CAAC"}
package/dist/index.d.cts CHANGED
@@ -1,7 +1,7 @@
1
+ import { opengraphIo } from "./app.cjs";
1
2
  import { opengraphIoCaptureScreenshot } from "./actions/capture-screenshot.cjs";
2
3
  import { opengraphIoExtractSite } from "./actions/extract-site.cjs";
3
4
  import { opengraphIoScrapeSite } from "./actions/scrape-site.cjs";
4
5
  import { opengraphIoScrapeUrl } from "./actions/scrape-url.cjs";
5
- import { opengraphIo } from "./app.cjs";
6
6
  import { opengraphIoCatalog } from "./catalog.cjs";
7
7
  export { opengraphIo, opengraphIoCaptureScreenshot, opengraphIoCatalog, opengraphIoExtractSite, opengraphIoScrapeSite, opengraphIoScrapeUrl };
package/dist/index.d.mts CHANGED
@@ -1,7 +1,7 @@
1
+ import { opengraphIo } from "./app.mjs";
1
2
  import { opengraphIoCaptureScreenshot } from "./actions/capture-screenshot.mjs";
2
3
  import { opengraphIoExtractSite } from "./actions/extract-site.mjs";
3
4
  import { opengraphIoScrapeSite } from "./actions/scrape-site.mjs";
4
5
  import { opengraphIoScrapeUrl } from "./actions/scrape-url.mjs";
5
- import { opengraphIo } from "./app.mjs";
6
6
  import { opengraphIoCatalog } from "./catalog.mjs";
7
7
  export { opengraphIo, opengraphIoCaptureScreenshot, opengraphIoCatalog, opengraphIoExtractSite, opengraphIoScrapeSite, opengraphIoScrapeUrl };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@keystrokehq/opengraph_io",
3
- "version": "0.1.5",
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": {