@5ss/ai-tools 2.11.3 → 3.0.0

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 (147) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +4 -11
  3. package/dist/{bedrock-agentcore-browser-a_qOs-NR.js → bedrock-agentcore-browser-o_oqSPMK.js} +2 -2
  4. package/dist/{bedrock-agentcore-browser-a_qOs-NR.js.map → bedrock-agentcore-browser-o_oqSPMK.js.map} +1 -1
  5. package/dist/{bedrock-agentcore-code-interpreter-MWK-8RhA.js → bedrock-agentcore-code-interpreter-D4ERRFj1.js} +2 -2
  6. package/dist/{bedrock-agentcore-code-interpreter-MWK-8RhA.js.map → bedrock-agentcore-code-interpreter-D4ERRFj1.js.map} +1 -1
  7. package/dist/{cloudflare-browser-B6Yolpin.js → cloudflare-browser-nLJdH5nG.js} +3 -3
  8. package/dist/{cloudflare-browser-B6Yolpin.js.map → cloudflare-browser-nLJdH5nG.js.map} +1 -1
  9. package/dist/{cloudflare-email-Dy0KHeDf.js → cloudflare-email-CSRq8mRd.js} +2 -2
  10. package/dist/{cloudflare-email-Dy0KHeDf.js.map → cloudflare-email-CSRq8mRd.js.map} +1 -1
  11. package/dist/{cloudflare-sandbox-Dp_uNaqW.js → cloudflare-sandbox-Be7SeS4-.js} +3 -3
  12. package/dist/{cloudflare-sandbox-Dp_uNaqW.js.map → cloudflare-sandbox-Be7SeS4-.js.map} +1 -1
  13. package/dist/content-type-E4_Qdoa0.js +19 -0
  14. package/dist/{content-type-CORxaxcv.js.map → content-type-E4_Qdoa0.js.map} +1 -1
  15. package/dist/core/index.js +2 -6
  16. package/dist/core/index.js.map +1 -1
  17. package/dist/{define-CvpJ_pNP.js → define-ieoksEQ0.js} +1 -6
  18. package/dist/define-ieoksEQ0.js.map +1 -0
  19. package/dist/{eventbridge-scheduler-Bh6GqZY2.js → eventbridge-scheduler-BhQaReAz.js} +2 -2
  20. package/dist/{eventbridge-scheduler-Bh6GqZY2.js.map → eventbridge-scheduler-BhQaReAz.js.map} +1 -1
  21. package/dist/imessage-CH49-sFn.js +558 -0
  22. package/dist/imessage-CH49-sFn.js.map +1 -0
  23. package/dist/index-CZX5OeOF.d.ts.map +1 -1
  24. package/dist/{mastra-vector-Dhc6XZ8l.js → mastra-vector-B8HjvdMT.js} +2 -2
  25. package/dist/{mastra-vector-Dhc6XZ8l.js.map → mastra-vector-B8HjvdMT.js.map} +1 -1
  26. package/dist/modules/artifacts/index.js +3 -3
  27. package/dist/modules/browser/index.js +3 -3
  28. package/dist/modules/calendar/index.js +1 -1
  29. package/dist/modules/code-sandbox/index.js +3 -3
  30. package/dist/modules/content-type/index.js +2 -2
  31. package/dist/modules/crypto/index.js +1 -1
  32. package/dist/modules/document-extract/index.js +2 -2
  33. package/dist/modules/document-render/index.d.ts +21 -30
  34. package/dist/modules/document-render/index.d.ts.map +1 -1
  35. package/dist/modules/document-render/index.js +11 -28
  36. package/dist/modules/document-render/index.js.map +1 -1
  37. package/dist/modules/email/index.d.ts +19 -1
  38. package/dist/modules/email/index.d.ts.map +1 -1
  39. package/dist/modules/email/index.js +3 -3
  40. package/dist/modules/email-message/index.js +1 -1
  41. package/dist/modules/files/index.js +2 -2
  42. package/dist/modules/image/index.d.ts +4 -1
  43. package/dist/modules/image/index.d.ts.map +1 -1
  44. package/dist/modules/image/index.js +25 -4
  45. package/dist/modules/image/index.js.map +1 -1
  46. package/dist/modules/messaging/index.d.ts +12 -24
  47. package/dist/modules/messaging/index.d.ts.map +1 -1
  48. package/dist/modules/messaging/index.js +28 -43
  49. package/dist/modules/messaging/index.js.map +1 -1
  50. package/dist/modules/queue/index.js +2 -2
  51. package/dist/modules/rag/index.js +2 -2
  52. package/dist/modules/scheduler/index.js +2 -2
  53. package/dist/modules/skills/index.js +1 -1
  54. package/dist/modules/tasks/index.js +1 -1
  55. package/dist/modules/vector-store/index.js +1 -1
  56. package/dist/modules/web-fetch/index.js +1 -1
  57. package/dist/{pinecone-umY4t6OF.js → pinecone-CNnCFmix.js} +2 -2
  58. package/dist/{pinecone-umY4t6OF.js.map → pinecone-CNnCFmix.js.map} +1 -1
  59. package/dist/{qdrant-DMp4NhKR.js → qdrant-R_FIcG9d.js} +2 -2
  60. package/dist/{qdrant-DMp4NhKR.js.map → qdrant-R_FIcG9d.js.map} +1 -1
  61. package/dist/{resend-BAC38_dA.js → resend-Bu0NFO3h.js} +2 -2
  62. package/dist/{resend-BAC38_dA.js.map → resend-Bu0NFO3h.js.map} +1 -1
  63. package/dist/{s3-CsOaPWMP.js → s3-Dj7Teh-A.js} +2 -2
  64. package/dist/{s3-CsOaPWMP.js.map → s3-Dj7Teh-A.js.map} +1 -1
  65. package/dist/{slack-Di5BBNpt.js → slack-AjJDNnXJ.js} +2 -2
  66. package/dist/{slack-Di5BBNpt.js.map → slack-AjJDNnXJ.js.map} +1 -1
  67. package/dist/{sqs-DCwS1i2N.js → sqs-CjyXjasF.js} +2 -2
  68. package/dist/{sqs-DCwS1i2N.js.map → sqs-CjyXjasF.js.map} +1 -1
  69. package/dist/{supabase-vector-Dpp9mmJR.js → supabase-vector-BNoJZuft.js} +2 -2
  70. package/dist/{supabase-vector-Dpp9mmJR.js.map → supabase-vector-BNoJZuft.js.map} +1 -1
  71. package/dist/{teams-DYAHNb39.js → teams-CvxYLAi5.js} +2 -2
  72. package/dist/{teams-DYAHNb39.js.map → teams-CvxYLAi5.js.map} +1 -1
  73. package/dist/{telegram-DDXWzkfL.js → telegram-B_-Jljk3.js} +2 -2
  74. package/dist/{telegram-DDXWzkfL.js.map → telegram-B_-Jljk3.js.map} +1 -1
  75. package/dist/{textract-CPLiB22H.js → textract-CAfnGvua.js} +3 -3
  76. package/dist/{textract-CPLiB22H.js.map → textract-CAfnGvua.js.map} +1 -1
  77. package/dist/{vector-store-C3nEO80e.js → vector-store-DDiu3XPg.js} +6 -6
  78. package/dist/{vector-store-C3nEO80e.js.map → vector-store-DDiu3XPg.js.map} +1 -1
  79. package/dist/vendors/amazon-sp-api/index.js +339 -2
  80. package/dist/vendors/amazon-sp-api/index.js.map +1 -1
  81. package/dist/vendors/bedrock-agentcore-browser/index.js +1 -1
  82. package/dist/vendors/bedrock-agentcore-code-interpreter/index.js +1 -1
  83. package/dist/vendors/cloudflare-browser/index.js +1 -1
  84. package/dist/vendors/cloudflare-email/index.js +1 -1
  85. package/dist/vendors/cloudflare-sandbox/index.js +1 -1
  86. package/dist/vendors/eventbridge-scheduler/index.js +1 -1
  87. package/dist/vendors/imessage/index.d.ts +65 -188
  88. package/dist/vendors/imessage/index.d.ts.map +1 -1
  89. package/dist/vendors/imessage/index.js +2 -3
  90. package/dist/vendors/katana/index.js +1 -1
  91. package/dist/vendors/mastra-vector/index.js +1 -1
  92. package/dist/vendors/pinecone/index.js +1 -1
  93. package/dist/vendors/qdrant/index.js +1 -1
  94. package/dist/vendors/resend/index.js +1 -1
  95. package/dist/vendors/s3/index.js +1 -1
  96. package/dist/vendors/slack/index.js +1 -1
  97. package/dist/vendors/sqs/index.js +1 -1
  98. package/dist/vendors/supabase-vector/index.js +1 -1
  99. package/dist/vendors/teams/index.js +1 -1
  100. package/dist/vendors/telegram/index.js +1 -1
  101. package/dist/vendors/textract/index.js +1 -1
  102. package/dist/vendors/woocommerce/index.js +1 -1
  103. package/logos/README.md +0 -4
  104. package/logos/pack-logos.json +0 -5
  105. package/package.json +4 -55
  106. package/dist/artifacts-O8g-40Pw.js +0 -404
  107. package/dist/artifacts-O8g-40Pw.js.map +0 -1
  108. package/dist/batch-BMM5dXqL.d.ts +0 -22
  109. package/dist/batch-BMM5dXqL.d.ts.map +0 -1
  110. package/dist/client-CCKGsTeI.js +0 -743
  111. package/dist/client-CCKGsTeI.js.map +0 -1
  112. package/dist/content-type-CORxaxcv.js +0 -49
  113. package/dist/define-CvpJ_pNP.js.map +0 -1
  114. package/dist/esm-BDrCssjb.js +0 -957
  115. package/dist/esm-BDrCssjb.js.map +0 -1
  116. package/dist/gotenberg-NuJjxyln.js +0 -291
  117. package/dist/gotenberg-NuJjxyln.js.map +0 -1
  118. package/dist/imessage-BSAFOI8Z.js +0 -154
  119. package/dist/imessage-BSAFOI8Z.js.map +0 -1
  120. package/dist/modules/document/index.d.ts +0 -575
  121. package/dist/modules/document/index.d.ts.map +0 -1
  122. package/dist/modules/document/index.js +0 -444
  123. package/dist/modules/document/index.js.map +0 -1
  124. package/dist/modules/file-convert/index.d.ts +0 -273
  125. package/dist/modules/file-convert/index.d.ts.map +0 -1
  126. package/dist/modules/file-convert/index.js +0 -103
  127. package/dist/modules/file-convert/index.js.map +0 -1
  128. package/dist/modules/pdf/index.d.ts +0 -287
  129. package/dist/modules/pdf/index.d.ts.map +0 -1
  130. package/dist/modules/pdf/index.js +0 -259
  131. package/dist/modules/pdf/index.js.map +0 -1
  132. package/dist/modules/presentation/index.d.ts +0 -247
  133. package/dist/modules/presentation/index.d.ts.map +0 -1
  134. package/dist/modules/presentation/index.js +0 -11721
  135. package/dist/modules/presentation/index.js.map +0 -1
  136. package/dist/object-artifact-store-BVLietAc.d.ts +0 -7
  137. package/dist/object-artifact-store-BVLietAc.d.ts.map +0 -1
  138. package/dist/object-artifact-store-wZ2j9cto.js +0 -28
  139. package/dist/object-artifact-store-wZ2j9cto.js.map +0 -1
  140. package/dist/vendors/gotenberg/index.d.ts +0 -306
  141. package/dist/vendors/gotenberg/index.d.ts.map +0 -1
  142. package/dist/vendors/gotenberg/index.js +0 -2
  143. package/logos/document.svg +0 -10
  144. package/logos/file-convert.svg +0 -9
  145. package/logos/gotenberg.svg +0 -340
  146. package/logos/pdf.svg +0 -10
  147. package/logos/presentation.svg +0 -8
@@ -1 +0,0 @@
1
- {"version":3,"file":"gotenberg-NuJjxyln.js","names":["#auth","#http","#storage","#renderAndStore"],"sources":["../src/vendors/gotenberg/contracts.ts","../src/vendors/gotenberg/domain.ts","../src/vendors/gotenberg/client.ts","../src/vendors/gotenberg/module.ts"],"sourcesContent":["import { z } from 'zod'\n\nimport { artifactRefSchema } from '../../shared/artifact'\nimport { s3AuthSchema } from '../s3'\n\nexport const MAX_HTML_CHARS = 2_000_000\n\nexport const gotenbergAuthSchema = z.object({\n\tgotenberg_base_url: z.url().describe('Self-hosted Gotenberg origin, for example http://localhost:3000'),\n\tgotenberg_api_username: z.string().min(1).optional().describe('Optional basic-auth username'),\n\tgotenberg_api_password: z.string().min(1).optional().describe('Optional basic-auth password'),\n\tstorage: s3AuthSchema.describe('Object storage for rendered ArtifactRef output')\n})\n\nexport type GotenbergAuth = z.infer<typeof gotenbergAuthSchema>\n\nexport const gotenbergViewportSchema = z.object({\n\twidth: z.int().min(1).max(8_000).describe('Viewport width in CSS pixels'),\n\theight: z.int().min(1).max(8_000).describe('Viewport height in CSS pixels'),\n\tdevice_scale_factor: z.number().min(0.1).max(4).optional().describe('Device scale factor (default 1)')\n})\n\nexport const gotenbergRenderSourceSchema = z\n\t.object({\n\t\thtml: z.string().min(1).max(MAX_HTML_CHARS).optional().describe('HTML document body to render'),\n\t\turl: z.url().optional().describe('Absolute http(s) URL to open and render')\n\t})\n\t.refine((v) => Boolean(v.html?.trim() || v.url), {\n\t\tmessage: 'Provide html or url'\n\t})\n\t.refine((v) => !(v.html && v.url), {\n\t\tmessage: 'Provide only one of html or url'\n\t})\n\nexport const gotenbergRenderPdfInputSchema = z.object({\n\tsource: gotenbergRenderSourceSchema.describe('HTML string or URL to print'),\n\toutput_key: z.string().min(1).optional().describe('Object key for the PDF. Defaults under renders/'),\n\tfilename: z.string().min(1).optional().describe('Display filename for the result ArtifactRef')\n})\n\nexport const gotenbergRenderScreenshotInputSchema = z.object({\n\tsource: gotenbergRenderSourceSchema.describe('HTML string or URL to capture'),\n\toutput_key: z.string().min(1).optional().describe('Object key for the PNG. Defaults under renders/'),\n\tfilename: z.string().min(1).optional().describe('Display filename for the result ArtifactRef'),\n\tviewport: gotenbergViewportSchema.optional().describe('Optional screenshot viewport')\n})\n\nexport const gotenbergRenderOutputSchema = z.object({\n\tresult: artifactRefSchema,\n\tkind: z.enum(['pdf', 'screenshot'])\n})\n\n/** Office document → PDF via LibreOffice (not HTML print). */\nexport const gotenbergConvertPathSchema = z.enum(['office-to-pdf']).describe('Closed conversion path')\n\nexport const gotenbergConvertInputSchema = z.object({\n\tsource: artifactRefSchema.describe('Input artifact in object storage (office document)'),\n\tpath: gotenbergConvertPathSchema.default('office-to-pdf').describe('Conversion path (currently office-to-pdf only)'),\n\toutput_key: z\n\t\t.string()\n\t\t.min(1)\n\t\t.optional()\n\t\t.describe('Object key for the PDF result. Defaults to source key with .pdf extension'),\n\tfilename: z.string().min(1).optional().describe('Upload filename when source has none')\n})\n\nexport const gotenbergConvertOutputSchema = z.object({\n\tsource: artifactRefSchema,\n\tresult: artifactRefSchema,\n\tpath: gotenbergConvertPathSchema\n})\n\nexport const MAX_BATCH_CONVERT = 10\n\nexport const gotenbergConvertBatchInputSchema = z.object({\n\titems: z\n\t\t.array(gotenbergConvertInputSchema)\n\t\t.min(1)\n\t\t.max(MAX_BATCH_CONVERT)\n\t\t.describe(`Conversions to run (max ${MAX_BATCH_CONVERT})`)\n})\n\nexport type GotenbergViewport = z.infer<typeof gotenbergViewportSchema>\nexport type GotenbergRenderSource = z.infer<typeof gotenbergRenderSourceSchema>\nexport type GotenbergRenderPdfInput = z.infer<typeof gotenbergRenderPdfInputSchema>\nexport type GotenbergRenderScreenshotInput = z.infer<typeof gotenbergRenderScreenshotInputSchema>\nexport type GotenbergRenderOutput = z.infer<typeof gotenbergRenderOutputSchema>\nexport type GotenbergConvertPath = z.infer<typeof gotenbergConvertPathSchema>\nexport type GotenbergConvertInput = z.infer<typeof gotenbergConvertInputSchema>\nexport type GotenbergConvertOutput = z.infer<typeof gotenbergConvertOutputSchema>\nexport type GotenbergConvertBatchInput = z.infer<typeof gotenbergConvertBatchInputSchema>\n","/**\n * Gotenberg form/path helpers (no HTTP).\n */\n\nimport { ToolError } from '../../core/errors'\nimport type { ArtifactRef } from '../../shared/artifact'\nimport { toArrayBuffer } from '../../shared/bytes'\nimport type { GotenbergRenderSource } from './contracts'\n\nexport function appendSource(form: FormData, source: GotenbergRenderSource): void {\n\tif (source.html) {\n\t\tconst bytes = new TextEncoder().encode(source.html)\n\t\tconst blob = new Blob([toArrayBuffer(bytes)], { type: 'text/html' })\n\t\tform.append('files', blob, 'index.html')\n\t\treturn\n\t}\n\tif (source.url) {\n\t\tform.append('url', source.url)\n\t\treturn\n\t}\n\tthrow new ToolError('Provide html or url', { code: 'bad_input' })\n}\n\nexport function htmlPath(kind: 'pdf' | 'screenshot', source: GotenbergRenderSource): string {\n\tif (source.html) {\n\t\treturn kind === 'pdf' ? '/forms/chromium/convert/html' : '/forms/chromium/screenshot/html'\n\t}\n\treturn kind === 'pdf' ? '/forms/chromium/convert/url' : '/forms/chromium/screenshot/url'\n}\n\nexport function defaultRenderKey(kind: 'pdf' | 'screenshot', outputKey: string | undefined): string {\n\tif (outputKey) return outputKey\n\tconst stamp = Date.now()\n\treturn kind === 'pdf' ? `renders/${stamp}.pdf` : `renders/${stamp}.png`\n}\n\n/** LibreOffice route — office suite docs → PDF. */\nexport const LIBREOFFICE_CONVERT_PATH = '/forms/libreoffice/convert'\n\nexport function basenameFromKey(key: string): string {\n\tconst parts = key.replace(/\\/+$/, '').split('/')\n\tconst last = parts[parts.length - 1]\n\treturn last && last.length > 0 ? last : 'document'\n}\n\nexport function officeUploadName(source: ArtifactRef, filename?: string): string {\n\tif (filename && filename.trim().length > 0) return filename.trim()\n\tif (source.filename && source.filename.trim().length > 0) return source.filename.trim()\n\treturn basenameFromKey(source.key)\n}\n\nexport function officeToPdfResultKey(sourceKey: string, outputKey: string | undefined): string {\n\tif (outputKey) return outputKey\n\tconst base = sourceKey.replace(/\\.[^./]+$/, '')\n\treturn `${base}.pdf`\n}\n\nexport function guessOfficeMediaType(filename: string, hint?: string): string {\n\tif (hint && hint.length > 0) return hint\n\tconst lower = filename.toLowerCase()\n\tif (lower.endsWith('.docx')) return 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'\n\tif (lower.endsWith('.doc')) return 'application/msword'\n\tif (lower.endsWith('.pptx')) return 'application/vnd.openxmlformats-officedocument.presentationml.presentation'\n\tif (lower.endsWith('.ppt')) return 'application/vnd.ms-powerpoint'\n\tif (lower.endsWith('.xlsx')) return 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'\n\tif (lower.endsWith('.xls')) return 'application/vnd.ms-excel'\n\tif (lower.endsWith('.odt')) return 'application/vnd.oasis.opendocument.text'\n\tif (lower.endsWith('.odp')) return 'application/vnd.oasis.opendocument.presentation'\n\tif (lower.endsWith('.ods')) return 'application/vnd.oasis.opendocument.spreadsheet'\n\tif (lower.endsWith('.rtf')) return 'application/rtf'\n\tif (lower.endsWith('.csv')) return 'text/csv'\n\tif (lower.endsWith('.txt')) return 'text/plain'\n\treturn 'application/octet-stream'\n}\n","/**\n * Gotenberg vendor client.\n * Chromium: HTML/URL → PDF or screenshot.\n * LibreOffice: office documents → PDF (file convert).\n * Host: `new GotenbergClient(auth)`. Agent tools: `fromContext(ctx)`.\n */\n\nimport { ToolError } from '../../core/errors'\nimport { requireAuth } from '../../core/provider'\nimport type { ToolContext } from '../../core/types'\nimport { artifactRefSchema } from '../../shared/artifact'\nimport { runBatchItems } from '../../shared/batch'\nimport { toArrayBuffer } from '../../shared/bytes'\nimport { HttpService } from '../../transport/http-service'\nimport type { HttpServiceOptions } from '../../transport/http-service'\nimport { S3Client } from '../s3'\nimport type {\n\tGotenbergAuth,\n\tGotenbergConvertBatchInput,\n\tGotenbergConvertInput,\n\tGotenbergConvertOutput,\n\tGotenbergRenderOutput,\n\tGotenbergRenderPdfInput,\n\tGotenbergRenderScreenshotInput\n} from './contracts'\nimport { gotenbergAuthSchema, gotenbergConvertOutputSchema, gotenbergRenderOutputSchema } from './contracts'\nimport {\n\tappendSource,\n\tdefaultRenderKey,\n\tguessOfficeMediaType,\n\thtmlPath,\n\tLIBREOFFICE_CONVERT_PATH,\n\tofficeToPdfResultKey,\n\tofficeUploadName\n} from './domain'\n\nexport type GotenbergClientOptions = Pick<HttpServiceOptions, 'fetch' | 'signal'>\n\nexport class GotenbergClient {\n\treadonly #auth: GotenbergAuth\n\treadonly #http: HttpService\n\treadonly #storage: S3Client\n\n\tconstructor(auth: GotenbergAuth, options: GotenbergClientOptions = {}) {\n\t\tconst parsed = gotenbergAuthSchema.safeParse(auth)\n\t\tif (!parsed.success) {\n\t\t\tthrow new ToolError('Invalid Gotenberg auth credentials', {\n\t\t\t\tcode: 'bad_auth',\n\t\t\t\tdetails: { issues: parsed.error.issues.map((issue) => issue.message) }\n\t\t\t})\n\t\t}\n\t\tthis.#auth = parsed.data\n\t\tconst headers: Record<string, string> = {}\n\t\tif (this.#auth.gotenberg_api_username && this.#auth.gotenberg_api_password) {\n\t\t\tconst token = btoa(`${this.#auth.gotenberg_api_username}:${this.#auth.gotenberg_api_password}`)\n\t\t\theaders['Authorization'] = `Basic ${token}`\n\t\t}\n\t\tthis.#http = new HttpService({\n\t\t\t...options,\n\t\t\tbaseURL: this.#auth.gotenberg_base_url,\n\t\t\theaders,\n\t\t\tlabel: 'Gotenberg'\n\t\t})\n\t\tthis.#storage = new S3Client(this.#auth.storage, options)\n\t}\n\n\tstatic fromContext(ctx: ToolContext): GotenbergClient {\n\t\tconst auth = requireAuth(ctx, gotenbergAuthSchema)\n\t\treturn new GotenbergClient(auth, {\n\t\t\t...(ctx.fetch && { fetch: ctx.fetch }),\n\t\t\t...(ctx.signal && { signal: ctx.signal })\n\t\t})\n\t}\n\n\t/** Chromium HTML/URL → PDF; store result in object storage. */\n\tasync renderPdf(input: GotenbergRenderPdfInput): Promise<GotenbergRenderOutput> {\n\t\treturn this.#renderAndStore('pdf', input)\n\t}\n\n\t/** Chromium HTML/URL → PNG screenshot; store result in object storage. */\n\tasync renderScreenshot(input: GotenbergRenderScreenshotInput): Promise<GotenbergRenderOutput> {\n\t\treturn this.#renderAndStore('screenshot', input)\n\t}\n\n\t/**\n\t * LibreOffice convert: office document in object storage → PDF ArtifactRef.\n\t * Path: office-to-pdf only (docx/pptx/xlsx/odt/…). Not for HTML layout print.\n\t */\n\tasync convert(input: GotenbergConvertInput): Promise<GotenbergConvertOutput> {\n\t\tif (input.source.store !== 'object') {\n\t\t\tthrow new ToolError('Gotenberg convert requires source.store \"object\"', { code: 'bad_input' })\n\t\t}\n\t\t// path is a closed enum (office-to-pdf); future paths branch here.\n\n\t\tconst bytes = await this.#storage.getBytes(input.source.key)\n\t\tconst filename = officeUploadName(input.source, input.filename)\n\t\tconst mediaType = guessOfficeMediaType(filename, input.source.media_type)\n\n\t\tconst form = new FormData()\n\t\tconst blob = new Blob([toArrayBuffer(bytes)], { type: mediaType })\n\t\tform.append('files', blob, filename)\n\n\t\tconst { bytes: outBytes } = await this.#http.bytes('POST', LIBREOFFICE_CONVERT_PATH, {\n\t\t\tlabel: 'Gotenberg libreoffice convert',\n\t\t\tbody: form\n\t\t})\n\n\t\tconst resultKey = officeToPdfResultKey(input.source.key, input.output_key)\n\t\tconst resultName = filename.replace(/\\.[^./]+$/, '') + '.pdf'\n\t\tawait this.#storage.putBytes(resultKey, outBytes, 'application/pdf')\n\n\t\tconst result = artifactRefSchema.parse({\n\t\t\tstore: 'object',\n\t\t\tkey: resultKey,\n\t\t\tmedia_type: 'application/pdf',\n\t\t\tfilename: resultName,\n\t\t\tbyte_length: outBytes.byteLength\n\t\t})\n\n\t\treturn gotenbergConvertOutputSchema.parse({\n\t\t\tsource: input.source,\n\t\t\tresult,\n\t\t\tpath: 'office-to-pdf'\n\t\t})\n\t}\n\n\tasync convertBatch(input: GotenbergConvertBatchInput) {\n\t\treturn runBatchItems(input.items, (item) => this.convert(item))\n\t}\n\n\tasync #renderAndStore(\n\t\tkind: 'pdf' | 'screenshot',\n\t\tinput: GotenbergRenderPdfInput | GotenbergRenderScreenshotInput\n\t): Promise<GotenbergRenderOutput> {\n\t\tconst form = new FormData()\n\t\tappendSource(form, input.source)\n\t\tif (kind === 'screenshot' && 'viewport' in input && input.viewport) {\n\t\t\tform.append('width', String(input.viewport.width))\n\t\t\tform.append('height', String(input.viewport.height))\n\t\t\tif (input.viewport.device_scale_factor !== undefined) {\n\t\t\t\tform.append('deviceScaleFactor', String(input.viewport.device_scale_factor))\n\t\t\t}\n\t\t}\n\n\t\tconst path = htmlPath(kind, input.source)\n\t\tconst { bytes } = await this.#http.bytes('POST', path, {\n\t\t\tlabel: `Gotenberg ${kind}`,\n\t\t\tbody: form\n\t\t})\n\n\t\tconst mediaType = kind === 'pdf' ? 'application/pdf' : 'image/png'\n\t\tconst key = defaultRenderKey(kind, input.output_key)\n\t\tconst filename = input.filename ?? (kind === 'pdf' ? 'render.pdf' : 'render.png')\n\t\tawait this.#storage.putBytes(key, bytes, mediaType)\n\n\t\tconst result = artifactRefSchema.parse({\n\t\t\tstore: 'object',\n\t\t\tkey,\n\t\t\tmedia_type: mediaType,\n\t\t\tfilename,\n\t\t\tbyte_length: bytes.byteLength\n\t\t})\n\t\treturn gotenbergRenderOutputSchema.parse({ result, kind })\n\t}\n}\n","import { defineModule, defineTool } from '../../core/define'\nimport { batchResultSchema } from '../../shared/batch'\nimport { GotenbergClient } from './client'\nimport {\n\tgotenbergAuthSchema,\n\tgotenbergConvertBatchInputSchema,\n\tgotenbergConvertInputSchema,\n\tgotenbergConvertOutputSchema,\n\tgotenbergRenderOutputSchema,\n\tgotenbergRenderPdfInputSchema,\n\tgotenbergRenderScreenshotInputSchema\n} from './contracts'\n\nconst gotenbergConvertBatchOutputSchema = batchResultSchema(gotenbergConvertOutputSchema)\n\nexport const gotenbergRenderPdfTool = defineTool({\n\tid: 'gotenberg-render-pdf',\n\tname: 'gotenbergRenderPdf',\n\tdescription:\n\t\t'Render HTML or a URL to a PDF via Chromium. Writes the PDF to object storage and returns an ArtifactRef. Prefer for web layouts; use convert for office documents.',\n\tinputSchema: gotenbergRenderPdfInputSchema,\n\toutputSchema: gotenbergRenderOutputSchema,\n\tsideEffect: 'write',\n\truntime: 'both',\n\texecute: async (input, ctx) => GotenbergClient.fromContext(ctx).renderPdf(input)\n})\n\nexport const gotenbergRenderScreenshotTool = defineTool({\n\tid: 'gotenberg-render-screenshot',\n\tname: 'gotenbergRenderScreenshot',\n\tdescription:\n\t\t'Capture a PNG screenshot of HTML or a URL via Chromium. Writes the image to object storage and returns an ArtifactRef.',\n\tinputSchema: gotenbergRenderScreenshotInputSchema,\n\toutputSchema: gotenbergRenderOutputSchema,\n\tsideEffect: 'write',\n\truntime: 'both',\n\texecute: async (input, ctx) => GotenbergClient.fromContext(ctx).renderScreenshot(input)\n})\n\nexport const gotenbergConvertTool = defineTool({\n\tid: 'gotenberg-convert',\n\tname: 'gotenbergConvert',\n\tdescription:\n\t\t'Convert an office document ArtifactRef to PDF (path office-to-pdf: docx, pptx, xlsx, odt, …). Not for HTML print layouts. Writes PDF to object storage.',\n\tinputSchema: gotenbergConvertInputSchema,\n\toutputSchema: gotenbergConvertOutputSchema,\n\tsideEffect: 'write',\n\truntime: 'both',\n\texecute: async (input, ctx) => GotenbergClient.fromContext(ctx).convert(input)\n})\n\nexport const gotenbergConvertBatchTool = defineTool({\n\tid: 'gotenberg-convert-batch',\n\tname: 'gotenbergConvertBatch',\n\tdescription:\n\t\t'Convert up to 10 office document ArtifactRefs to PDF. Per-item success or error without aborting the batch.',\n\tinputSchema: gotenbergConvertBatchInputSchema,\n\toutputSchema: gotenbergConvertBatchOutputSchema,\n\tsideEffect: 'write',\n\truntime: 'both',\n\texecute: async (input, ctx) => GotenbergClient.fromContext(ctx).convertBatch(input)\n})\n\nexport const gotenbergModule = defineModule({\n\tid: 'gotenberg',\n\ttitle: 'Gotenberg',\n\tdescription:\n\t\t'Gotenberg tools for HTML or URL rendering and office-document-to-PDF conversion. Each successful output is a final ArtifactRef; use the specific render or convert action matching the source format.',\n\truntime: 'both',\n\tauth: { type: 'custom', schema: gotenbergAuthSchema },\n\tcategories: ['documents', 'convert'],\n\tclassification: 'standard',\n\ttags: ['libreoffice', 'pdf'],\n\ttools: [gotenbergRenderPdfTool, gotenbergRenderScreenshotTool, gotenbergConvertTool, gotenbergConvertBatchTool]\n})\n"],"mappings":"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"}
@@ -1,154 +0,0 @@
1
- import { A as imessageSetReactionInputSchema, C as imessageMessageOutputSchema, D as imessageSendChatActionInputSchema, E as imessageReadInputSchema, M as imessageUnsendInputSchema, O as imessageSendMediaInputSchema, T as imessageOkOutputSchema, _ as imessageDownloadFileInputSchema, g as imessageClearReactionInputSchema, h as imessageAuthSchema, k as imessageSendTextInputSchema, t as ImessageClient, v as imessageDownloadFileOutputSchema, y as imessageEditTextInputSchema } from "./client-CCKGsTeI.js";
2
- import { n as defineModule, r as defineTool } from "./define-CvpJ_pNP.js";
3
- //#region src/vendors/imessage/module.ts
4
- const imessageSendTextTool = defineTool({
5
- id: "imessage-send-text",
6
- name: "imessageSendText",
7
- description: "Send a text message to an iMessage chat. chat_id is the chat guid (e.g. any;-;+1555…). Returns message_id (guid) for later edits, reactions, or unsend.",
8
- inputSchema: imessageSendTextInputSchema,
9
- outputSchema: imessageMessageOutputSchema,
10
- sideEffect: "send",
11
- runtime: "node",
12
- network: true,
13
- execute: async (input, ctx) => ImessageClient.fromContext(ctx).sendText(input)
14
- });
15
- const imessageEditTextTool = defineTool({
16
- id: "imessage-edit-text",
17
- name: "imessageEditText",
18
- description: "Edit the text of a previously sent iMessage. Requires chat guid and message guid.",
19
- inputSchema: imessageEditTextInputSchema,
20
- outputSchema: imessageMessageOutputSchema,
21
- sideEffect: "write",
22
- runtime: "node",
23
- network: true,
24
- execute: async (input, ctx) => ImessageClient.fromContext(ctx).editText(input)
25
- });
26
- const imessageSendChatActionTool = defineTool({
27
- id: "imessage-send-chat-action",
28
- name: "imessageSendChatAction",
29
- description: "Show a typing indicator in an iMessage chat while a response is being prepared.",
30
- inputSchema: imessageSendChatActionInputSchema,
31
- outputSchema: imessageOkOutputSchema,
32
- sideEffect: "none",
33
- runtime: "node",
34
- network: true,
35
- execute: async (input, ctx) => {
36
- await ImessageClient.fromContext(ctx).sendChatAction(input);
37
- return {
38
- ok: true,
39
- space_id: input.chat_id
40
- };
41
- }
42
- });
43
- const imessageSetReactionTool = defineTool({
44
- id: "imessage-set-reaction",
45
- name: "imessageSetReaction",
46
- description: "React to an iMessage with a tapback (love, like, dislike, laugh, emphasize, question) or free emoji. Returns a message guid for journaling. To clear, call clear-reaction with the same target message_id and emoji.",
47
- inputSchema: imessageSetReactionInputSchema,
48
- outputSchema: imessageMessageOutputSchema,
49
- sideEffect: "write",
50
- runtime: "node",
51
- network: true,
52
- execute: async (input, ctx) => ImessageClient.fromContext(ctx).setReaction(input)
53
- });
54
- const imessageClearReactionTool = defineTool({
55
- id: "imessage-clear-reaction",
56
- name: "imessageClearReaction",
57
- description: "Clear an iMessage reaction. message_id is the target message that was reacted to; emoji must match set-reaction (tapback name or emoji character).",
58
- inputSchema: imessageClearReactionInputSchema,
59
- outputSchema: imessageOkOutputSchema,
60
- sideEffect: "delete",
61
- runtime: "node",
62
- network: true,
63
- execute: async (input, ctx) => {
64
- await ImessageClient.fromContext(ctx).clearReaction(input);
65
- return {
66
- ok: true,
67
- space_id: input.chat_id
68
- };
69
- }
70
- });
71
- const imessageUnsendTool = defineTool({
72
- id: "imessage-unsend",
73
- name: "imessageUnsend",
74
- description: "Unsend a previously sent iMessage using its chat guid and message guid.",
75
- inputSchema: imessageUnsendInputSchema,
76
- outputSchema: imessageOkOutputSchema,
77
- sideEffect: "delete",
78
- runtime: "node",
79
- network: true,
80
- execute: async (input, ctx) => {
81
- await ImessageClient.fromContext(ctx).unsend(input);
82
- return {
83
- ok: true,
84
- space_id: input.chat_id
85
- };
86
- }
87
- });
88
- const imessageReadTool = defineTool({
89
- id: "imessage-read",
90
- name: "imessageRead",
91
- description: "Mark an iMessage conversation as read (whole chat).",
92
- inputSchema: imessageReadInputSchema,
93
- outputSchema: imessageOkOutputSchema,
94
- sideEffect: "write",
95
- runtime: "node",
96
- network: true,
97
- execute: async (input, ctx) => {
98
- await ImessageClient.fromContext(ctx).read(input);
99
- return {
100
- ok: true,
101
- space_id: input.chat_id
102
- };
103
- }
104
- });
105
- const imessageSendMediaTool = defineTool({
106
- id: "imessage-send-media",
107
- name: "imessageSendMedia",
108
- description: "Upload and send one photo or document to an iMessage chat from base64 bytes. Optional caption is sent as a follow-up text message.",
109
- inputSchema: imessageSendMediaInputSchema,
110
- outputSchema: imessageMessageOutputSchema,
111
- sideEffect: "send",
112
- runtime: "node",
113
- network: true,
114
- execute: async (input, ctx) => ImessageClient.fromContext(ctx).sendMedia(input)
115
- });
116
- const imessageDownloadFileTool = defineTool({
117
- id: "imessage-download-file",
118
- name: "imessageDownloadFile",
119
- description: "Download attachment bytes by attachment guid (file_id from inbound or upload).",
120
- inputSchema: imessageDownloadFileInputSchema,
121
- outputSchema: imessageDownloadFileOutputSchema,
122
- sideEffect: "none",
123
- runtime: "node",
124
- network: true,
125
- execute: async (input, ctx) => ImessageClient.fromContext(ctx).downloadFile(input)
126
- });
127
- const imessageModule = defineModule({
128
- id: "imessage",
129
- title: "iMessage",
130
- description: "iMessage tools for sending and editing text or media, typing indicators, reactions, unsend, read state, and attachment download via Photon Spectrum Cloud + Advanced iMessage gRPC (Node only).",
131
- runtime: "node",
132
- auth: {
133
- type: "custom",
134
- schema: imessageAuthSchema
135
- },
136
- categories: ["messaging", "chat"],
137
- classification: "pii",
138
- tags: ["imessage", "photon"],
139
- tools: [
140
- imessageSendTextTool,
141
- imessageEditTextTool,
142
- imessageSendChatActionTool,
143
- imessageSetReactionTool,
144
- imessageClearReactionTool,
145
- imessageUnsendTool,
146
- imessageReadTool,
147
- imessageSendMediaTool,
148
- imessageDownloadFileTool
149
- ]
150
- });
151
- //#endregion
152
- export { imessageReadTool as a, imessageSendTextTool as c, imessageModule as i, imessageSetReactionTool as l, imessageDownloadFileTool as n, imessageSendChatActionTool as o, imessageEditTextTool as r, imessageSendMediaTool as s, imessageClearReactionTool as t, imessageUnsendTool as u };
153
-
154
- //# sourceMappingURL=imessage-BSAFOI8Z.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"imessage-BSAFOI8Z.js","names":[],"sources":["../src/vendors/imessage/module.ts"],"sourcesContent":["import { defineModule, defineTool } from '../../core/define'\nimport { ImessageClient } from './client'\nimport {\n\timessageAuthSchema,\n\timessageClearReactionInputSchema,\n\timessageDownloadFileInputSchema,\n\timessageDownloadFileOutputSchema,\n\timessageEditTextInputSchema,\n\timessageMessageOutputSchema,\n\timessageOkOutputSchema,\n\timessageReadInputSchema,\n\timessageSendChatActionInputSchema,\n\timessageSendMediaInputSchema,\n\timessageSendTextInputSchema,\n\timessageSetReactionInputSchema,\n\timessageUnsendInputSchema\n} from './contracts'\n\nexport const imessageSendTextTool = defineTool({\n\tid: 'imessage-send-text',\n\tname: 'imessageSendText',\n\tdescription:\n\t\t'Send a text message to an iMessage chat. chat_id is the chat guid (e.g. any;-;+1555…). Returns message_id (guid) for later edits, reactions, or unsend.',\n\tinputSchema: imessageSendTextInputSchema,\n\toutputSchema: imessageMessageOutputSchema,\n\tsideEffect: 'send',\n\truntime: 'node',\n\tnetwork: true,\n\texecute: async (input, ctx) => ImessageClient.fromContext(ctx).sendText(input)\n})\n\nexport const imessageEditTextTool = defineTool({\n\tid: 'imessage-edit-text',\n\tname: 'imessageEditText',\n\tdescription: 'Edit the text of a previously sent iMessage. Requires chat guid and message guid.',\n\tinputSchema: imessageEditTextInputSchema,\n\toutputSchema: imessageMessageOutputSchema,\n\tsideEffect: 'write',\n\truntime: 'node',\n\tnetwork: true,\n\texecute: async (input, ctx) => ImessageClient.fromContext(ctx).editText(input)\n})\n\nexport const imessageSendChatActionTool = defineTool({\n\tid: 'imessage-send-chat-action',\n\tname: 'imessageSendChatAction',\n\tdescription: 'Show a typing indicator in an iMessage chat while a response is being prepared.',\n\tinputSchema: imessageSendChatActionInputSchema,\n\toutputSchema: imessageOkOutputSchema,\n\tsideEffect: 'none',\n\truntime: 'node',\n\tnetwork: true,\n\texecute: async (input, ctx) => {\n\t\tawait ImessageClient.fromContext(ctx).sendChatAction(input)\n\t\treturn { ok: true, space_id: input.chat_id }\n\t}\n})\n\nexport const imessageSetReactionTool = defineTool({\n\tid: 'imessage-set-reaction',\n\tname: 'imessageSetReaction',\n\tdescription:\n\t\t'React to an iMessage with a tapback (love, like, dislike, laugh, emphasize, question) or free emoji. Returns a message guid for journaling. To clear, call clear-reaction with the same target message_id and emoji.',\n\tinputSchema: imessageSetReactionInputSchema,\n\toutputSchema: imessageMessageOutputSchema,\n\tsideEffect: 'write',\n\truntime: 'node',\n\tnetwork: true,\n\texecute: async (input, ctx) => ImessageClient.fromContext(ctx).setReaction(input)\n})\n\nexport const imessageClearReactionTool = defineTool({\n\tid: 'imessage-clear-reaction',\n\tname: 'imessageClearReaction',\n\tdescription:\n\t\t'Clear an iMessage reaction. message_id is the target message that was reacted to; emoji must match set-reaction (tapback name or emoji character).',\n\tinputSchema: imessageClearReactionInputSchema,\n\toutputSchema: imessageOkOutputSchema,\n\tsideEffect: 'delete',\n\truntime: 'node',\n\tnetwork: true,\n\texecute: async (input, ctx) => {\n\t\tawait ImessageClient.fromContext(ctx).clearReaction(input)\n\t\treturn { ok: true, space_id: input.chat_id }\n\t}\n})\n\nexport const imessageUnsendTool = defineTool({\n\tid: 'imessage-unsend',\n\tname: 'imessageUnsend',\n\tdescription: 'Unsend a previously sent iMessage using its chat guid and message guid.',\n\tinputSchema: imessageUnsendInputSchema,\n\toutputSchema: imessageOkOutputSchema,\n\tsideEffect: 'delete',\n\truntime: 'node',\n\tnetwork: true,\n\texecute: async (input, ctx) => {\n\t\tawait ImessageClient.fromContext(ctx).unsend(input)\n\t\treturn { ok: true, space_id: input.chat_id }\n\t}\n})\n\nexport const imessageReadTool = defineTool({\n\tid: 'imessage-read',\n\tname: 'imessageRead',\n\tdescription: 'Mark an iMessage conversation as read (whole chat).',\n\tinputSchema: imessageReadInputSchema,\n\toutputSchema: imessageOkOutputSchema,\n\tsideEffect: 'write',\n\truntime: 'node',\n\tnetwork: true,\n\texecute: async (input, ctx) => {\n\t\tawait ImessageClient.fromContext(ctx).read(input)\n\t\treturn { ok: true, space_id: input.chat_id }\n\t}\n})\n\nexport const imessageSendMediaTool = defineTool({\n\tid: 'imessage-send-media',\n\tname: 'imessageSendMedia',\n\tdescription:\n\t\t'Upload and send one photo or document to an iMessage chat from base64 bytes. Optional caption is sent as a follow-up text message.',\n\tinputSchema: imessageSendMediaInputSchema,\n\toutputSchema: imessageMessageOutputSchema,\n\tsideEffect: 'send',\n\truntime: 'node',\n\tnetwork: true,\n\texecute: async (input, ctx) => ImessageClient.fromContext(ctx).sendMedia(input)\n})\n\nexport const imessageDownloadFileTool = defineTool({\n\tid: 'imessage-download-file',\n\tname: 'imessageDownloadFile',\n\tdescription: 'Download attachment bytes by attachment guid (file_id from inbound or upload).',\n\tinputSchema: imessageDownloadFileInputSchema,\n\toutputSchema: imessageDownloadFileOutputSchema,\n\tsideEffect: 'none',\n\truntime: 'node',\n\tnetwork: true,\n\texecute: async (input, ctx) => ImessageClient.fromContext(ctx).downloadFile(input)\n})\n\nexport const imessageModule = defineModule({\n\tid: 'imessage',\n\ttitle: 'iMessage',\n\tdescription:\n\t\t'iMessage tools for sending and editing text or media, typing indicators, reactions, unsend, read state, and attachment download via Photon Spectrum Cloud + Advanced iMessage gRPC (Node only).',\n\truntime: 'node',\n\tauth: { type: 'custom', schema: imessageAuthSchema },\n\tcategories: ['messaging', 'chat'],\n\tclassification: 'pii',\n\ttags: ['imessage', 'photon'],\n\ttools: [\n\t\timessageSendTextTool,\n\t\timessageEditTextTool,\n\t\timessageSendChatActionTool,\n\t\timessageSetReactionTool,\n\t\timessageClearReactionTool,\n\t\timessageUnsendTool,\n\t\timessageReadTool,\n\t\timessageSendMediaTool,\n\t\timessageDownloadFileTool\n\t]\n})\n"],"mappings":"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"}