@rnsk/toolkits 0.0.7 → 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -1
- package/dist/index.d.ts +9 -1
- package/dist/index.js +17 -1
- package/dist/toolkits/cloudflare/icon.d.ts +5 -0
- package/dist/toolkits/cloudflare/icon.js +14 -0
- package/dist/toolkits/cloudflare/manifest.d.ts +3 -0
- package/dist/toolkits/cloudflare/manifest.js +36 -0
- package/dist/toolkits/cloudflare/tools/client.d.ts +19 -0
- package/dist/toolkits/cloudflare/tools/client.js +57 -0
- package/dist/toolkits/cloudflare/tools/create-dns-record.d.ts +14 -0
- package/dist/toolkits/cloudflare/tools/create-dns-record.js +32 -0
- package/dist/toolkits/cloudflare/tools/create-list.d.ts +8 -0
- package/dist/toolkits/cloudflare/tools/create-list.js +28 -0
- package/dist/toolkits/cloudflare/tools/create-zone.d.ts +8 -0
- package/dist/toolkits/cloudflare/tools/create-zone.js +37 -0
- package/dist/toolkits/cloudflare/tools/delete-dns-record.d.ts +6 -0
- package/dist/toolkits/cloudflare/tools/delete-dns-record.js +24 -0
- package/dist/toolkits/cloudflare/tools/delete-list.d.ts +6 -0
- package/dist/toolkits/cloudflare/tools/delete-list.js +24 -0
- package/dist/toolkits/cloudflare/tools/delete-zone.d.ts +5 -0
- package/dist/toolkits/cloudflare/tools/delete-zone.js +23 -0
- package/dist/toolkits/cloudflare/tools/get-bot-management-settings.d.ts +5 -0
- package/dist/toolkits/cloudflare/tools/get-bot-management-settings.js +23 -0
- package/dist/toolkits/cloudflare/tools/index.d.ts +277 -0
- package/dist/toolkits/cloudflare/tools/index.js +165 -0
- package/dist/toolkits/cloudflare/tools/list-account-members.d.ts +10 -0
- package/dist/toolkits/cloudflare/tools/list-account-members.js +33 -0
- package/dist/toolkits/cloudflare/tools/list-accounts.d.ts +8 -0
- package/dist/toolkits/cloudflare/tools/list-accounts.js +28 -0
- package/dist/toolkits/cloudflare/tools/list-dns-records.d.ts +15 -0
- package/dist/toolkits/cloudflare/tools/list-dns-records.js +47 -0
- package/dist/toolkits/cloudflare/tools/list-firewall-rules.d.ts +10 -0
- package/dist/toolkits/cloudflare/tools/list-firewall-rules.js +30 -0
- package/dist/toolkits/cloudflare/tools/list-monitors.d.ts +9 -0
- package/dist/toolkits/cloudflare/tools/list-monitors.js +29 -0
- package/dist/toolkits/cloudflare/tools/list-pools.d.ts +8 -0
- package/dist/toolkits/cloudflare/tools/list-pools.js +28 -0
- package/dist/toolkits/cloudflare/tools/list-tunnels.d.ts +9 -0
- package/dist/toolkits/cloudflare/tools/list-tunnels.js +29 -0
- package/dist/toolkits/cloudflare/tools/list-waf-lists.d.ts +5 -0
- package/dist/toolkits/cloudflare/tools/list-waf-lists.js +23 -0
- package/dist/toolkits/cloudflare/tools/list-zones.d.ts +13 -0
- package/dist/toolkits/cloudflare/tools/list-zones.js +38 -0
- package/dist/toolkits/cloudflare/tools/update-dns-record.d.ts +13 -0
- package/dist/toolkits/cloudflare/tools/update-dns-record.js +39 -0
- package/dist/toolkits/cloudflare/tools/update-list.d.ts +7 -0
- package/dist/toolkits/cloudflare/tools/update-list.js +27 -0
- package/dist/toolkits/cloudflare/tools/update-tunnel-configuration.d.ts +7 -0
- package/dist/toolkits/cloudflare/tools/update-tunnel-configuration.js +28 -0
- package/dist/toolkits/cloudflare/tools/update-zone.d.ts +8 -0
- package/dist/toolkits/cloudflare/tools/update-zone.js +32 -0
- package/dist/toolkits/figma/icon.d.ts +5 -0
- package/dist/toolkits/figma/icon.js +6 -0
- package/dist/toolkits/figma/manifest.d.ts +3 -0
- package/dist/toolkits/figma/manifest.js +58 -0
- package/dist/toolkits/figma/tools/add-comment-to-a-file.d.ts +8 -0
- package/dist/toolkits/figma/tools/add-comment-to-a-file.js +43 -0
- package/dist/toolkits/figma/tools/add-reaction-to-a-comment.d.ts +7 -0
- package/dist/toolkits/figma/tools/add-reaction-to-a-comment.js +31 -0
- package/dist/toolkits/figma/tools/client.d.ts +20 -0
- package/dist/toolkits/figma/tools/client.js +36 -0
- package/dist/toolkits/figma/tools/create-a-webhook.d.ts +12 -0
- package/dist/toolkits/figma/tools/create-a-webhook.js +45 -0
- package/dist/toolkits/figma/tools/create-dev-resources.d.ts +28 -0
- package/dist/toolkits/figma/tools/create-dev-resources.js +53 -0
- package/dist/toolkits/figma/tools/create-modify-delete-variables.d.ts +9 -0
- package/dist/toolkits/figma/tools/create-modify-delete-variables.js +43 -0
- package/dist/toolkits/figma/tools/delete-a-comment.d.ts +6 -0
- package/dist/toolkits/figma/tools/delete-a-comment.js +29 -0
- package/dist/toolkits/figma/tools/delete-a-reaction.d.ts +7 -0
- package/dist/toolkits/figma/tools/delete-a-reaction.js +31 -0
- package/dist/toolkits/figma/tools/delete-a-webhook.d.ts +5 -0
- package/dist/toolkits/figma/tools/delete-a-webhook.js +28 -0
- package/dist/toolkits/figma/tools/delete-dev-resource.d.ts +6 -0
- package/dist/toolkits/figma/tools/delete-dev-resource.js +29 -0
- package/dist/toolkits/figma/tools/design-tokens-to-tailwind.d.ts +26 -0
- package/dist/toolkits/figma/tools/design-tokens-to-tailwind.js +119 -0
- package/dist/toolkits/figma/tools/detect-background.d.ts +27 -0
- package/dist/toolkits/figma/tools/detect-background.js +124 -0
- package/dist/toolkits/figma/tools/discover-figma-resources.d.ts +38 -0
- package/dist/toolkits/figma/tools/discover-figma-resources.js +99 -0
- package/dist/toolkits/figma/tools/download-figma-images.d.ts +26 -0
- package/dist/toolkits/figma/tools/download-figma-images.js +86 -0
- package/dist/toolkits/figma/tools/extract-design-tokens.d.ts +46 -0
- package/dist/toolkits/figma/tools/extract-design-tokens.js +146 -0
- package/dist/toolkits/figma/tools/extract-prototype-interactions.d.ts +38 -0
- package/dist/toolkits/figma/tools/extract-prototype-interactions.js +80 -0
- package/dist/toolkits/figma/tools/get-a-webhook.d.ts +5 -0
- package/dist/toolkits/figma/tools/get-a-webhook.js +26 -0
- package/dist/toolkits/figma/tools/get-activity-logs.d.ts +10 -0
- package/dist/toolkits/figma/tools/get-activity-logs.js +33 -0
- package/dist/toolkits/figma/tools/get-comments-in-a-file.d.ts +6 -0
- package/dist/toolkits/figma/tools/get-comments-in-a-file.js +29 -0
- package/dist/toolkits/figma/tools/get-component-set.d.ts +5 -0
- package/dist/toolkits/figma/tools/get-component-set.js +26 -0
- package/dist/toolkits/figma/tools/get-component2.d.ts +5 -0
- package/dist/toolkits/figma/tools/get-component2.js +26 -0
- package/dist/toolkits/figma/tools/get-current-user.d.ts +4 -0
- package/dist/toolkits/figma/tools/get-current-user.js +25 -0
- package/dist/toolkits/figma/tools/get-dev-resources.d.ts +6 -0
- package/dist/toolkits/figma/tools/get-dev-resources.js +29 -0
- package/dist/toolkits/figma/tools/get-file-component-sets.d.ts +5 -0
- package/dist/toolkits/figma/tools/get-file-component-sets.js +26 -0
- package/dist/toolkits/figma/tools/get-file-components.d.ts +5 -0
- package/dist/toolkits/figma/tools/get-file-components.js +26 -0
- package/dist/toolkits/figma/tools/get-file-json.d.ts +12 -0
- package/dist/toolkits/figma/tools/get-file-json.js +49 -0
- package/dist/toolkits/figma/tools/get-file-metadata.d.ts +5 -0
- package/dist/toolkits/figma/tools/get-file-metadata.js +26 -0
- package/dist/toolkits/figma/tools/get-file-nodes.d.ts +10 -0
- package/dist/toolkits/figma/tools/get-file-nodes.js +34 -0
- package/dist/toolkits/figma/tools/get-file-styles.d.ts +5 -0
- package/dist/toolkits/figma/tools/get-file-styles.js +26 -0
- package/dist/toolkits/figma/tools/get-files-in-a-project.d.ts +6 -0
- package/dist/toolkits/figma/tools/get-files-in-a-project.js +29 -0
- package/dist/toolkits/figma/tools/get-image-fills.d.ts +5 -0
- package/dist/toolkits/figma/tools/get-image-fills.js +26 -0
- package/dist/toolkits/figma/tools/get-library-analytics-component-action-data.d.ts +4 -0
- package/dist/toolkits/figma/tools/get-library-analytics-component-action-data.js +4 -0
- package/dist/toolkits/figma/tools/get-library-analytics-component-usage-data.d.ts +4 -0
- package/dist/toolkits/figma/tools/get-library-analytics-component-usage-data.js +4 -0
- package/dist/toolkits/figma/tools/get-library-analytics-style-action-data.d.ts +4 -0
- package/dist/toolkits/figma/tools/get-library-analytics-style-action-data.js +4 -0
- package/dist/toolkits/figma/tools/get-library-analytics-style-usage-data.d.ts +4 -0
- package/dist/toolkits/figma/tools/get-library-analytics-style-usage-data.js +4 -0
- package/dist/toolkits/figma/tools/get-library-analytics-variable-action-data.d.ts +4 -0
- package/dist/toolkits/figma/tools/get-library-analytics-variable-action-data.js +4 -0
- package/dist/toolkits/figma/tools/get-library-analytics-variable-usage-data.d.ts +4 -0
- package/dist/toolkits/figma/tools/get-library-analytics-variable-usage-data.js +4 -0
- package/dist/toolkits/figma/tools/get-local-variables.d.ts +5 -0
- package/dist/toolkits/figma/tools/get-local-variables.js +26 -0
- package/dist/toolkits/figma/tools/get-payments.d.ts +9 -0
- package/dist/toolkits/figma/tools/get-payments.js +38 -0
- package/dist/toolkits/figma/tools/get-projects-in-a-team.d.ts +5 -0
- package/dist/toolkits/figma/tools/get-projects-in-a-team.js +26 -0
- package/dist/toolkits/figma/tools/get-published-variables.d.ts +5 -0
- package/dist/toolkits/figma/tools/get-published-variables.js +26 -0
- package/dist/toolkits/figma/tools/get-reactions-for-a-comment.d.ts +7 -0
- package/dist/toolkits/figma/tools/get-reactions-for-a-comment.js +30 -0
- package/dist/toolkits/figma/tools/get-scim-service-provider-config.d.ts +4 -0
- package/dist/toolkits/figma/tools/get-scim-service-provider-config.js +27 -0
- package/dist/toolkits/figma/tools/get-style.d.ts +5 -0
- package/dist/toolkits/figma/tools/get-style.js +26 -0
- package/dist/toolkits/figma/tools/get-team-component-sets.d.ts +8 -0
- package/dist/toolkits/figma/tools/get-team-component-sets.js +33 -0
- package/dist/toolkits/figma/tools/get-team-components.d.ts +8 -0
- package/dist/toolkits/figma/tools/get-team-components.js +33 -0
- package/dist/toolkits/figma/tools/get-team-styles.d.ts +8 -0
- package/dist/toolkits/figma/tools/get-team-styles.js +33 -0
- package/dist/toolkits/figma/tools/get-team-webhooks.d.ts +6 -0
- package/dist/toolkits/figma/tools/get-team-webhooks.js +29 -0
- package/dist/toolkits/figma/tools/get-versions-of-a-file.d.ts +8 -0
- package/dist/toolkits/figma/tools/get-versions-of-a-file.js +31 -0
- package/dist/toolkits/figma/tools/get-webhook-requests.d.ts +5 -0
- package/dist/toolkits/figma/tools/get-webhook-requests.js +26 -0
- package/dist/toolkits/figma/tools/index.d.ts +629 -0
- package/dist/toolkits/figma/tools/index.js +110 -0
- package/dist/toolkits/figma/tools/library-analytics-shared.d.ts +4 -0
- package/dist/toolkits/figma/tools/library-analytics-shared.js +40 -0
- package/dist/toolkits/figma/tools/render-images-of-file-nodes.d.ts +15 -0
- package/dist/toolkits/figma/tools/render-images-of-file-nodes.js +49 -0
- package/dist/toolkits/figma/tools/update-a-webhook.d.ts +10 -0
- package/dist/toolkits/figma/tools/update-a-webhook.js +45 -0
- package/dist/toolkits/figma/tools/update-dev-resources.d.ts +10 -0
- package/dist/toolkits/figma/tools/update-dev-resources.js +34 -0
- package/dist/toolkits/google-ads/icon.d.ts +5 -0
- package/dist/toolkits/google-ads/icon.js +18 -0
- package/dist/toolkits/google-ads/manifest.d.ts +3 -0
- package/dist/toolkits/google-ads/manifest.js +41 -0
- package/dist/toolkits/google-ads/tools/add-or-remove-to-customer-list.d.ts +30 -0
- package/dist/toolkits/google-ads/tools/add-or-remove-to-customer-list.js +69 -0
- package/dist/toolkits/google-ads/tools/client.d.ts +62 -0
- package/dist/toolkits/google-ads/tools/client.js +102 -0
- package/dist/toolkits/google-ads/tools/create-callout-asset.d.ts +23 -0
- package/dist/toolkits/google-ads/tools/create-callout-asset.js +62 -0
- package/dist/toolkits/google-ads/tools/create-customer-list.d.ts +9 -0
- package/dist/toolkits/google-ads/tools/create-customer-list.js +42 -0
- package/dist/toolkits/google-ads/tools/get-campaign-by-id.d.ts +32 -0
- package/dist/toolkits/google-ads/tools/get-campaign-by-id.js +38 -0
- package/dist/toolkits/google-ads/tools/get-campaign-by-name.d.ts +32 -0
- package/dist/toolkits/google-ads/tools/get-campaign-by-name.js +37 -0
- package/dist/toolkits/google-ads/tools/get-conversion-action-tag-snippets.d.ts +28 -0
- package/dist/toolkits/google-ads/tools/get-conversion-action-tag-snippets.js +33 -0
- package/dist/toolkits/google-ads/tools/get-customer-lists.d.ts +32 -0
- package/dist/toolkits/google-ads/tools/get-customer-lists.js +41 -0
- package/dist/toolkits/google-ads/tools/get-rmf-report.d.ts +60 -0
- package/dist/toolkits/google-ads/tools/get-rmf-report.js +97 -0
- package/dist/toolkits/google-ads/tools/index.d.ts +520 -0
- package/dist/toolkits/google-ads/tools/index.js +230 -0
- package/dist/toolkits/google-ads/tools/list-accessible-customers.d.ts +5 -0
- package/dist/toolkits/google-ads/tools/list-accessible-customers.js +26 -0
- package/dist/toolkits/google-ads/tools/list-sub-accounts.d.ts +51 -0
- package/dist/toolkits/google-ads/tools/list-sub-accounts.js +55 -0
- package/dist/toolkits/google-ads/tools/mutate-ad-group-ads.d.ts +11 -0
- package/dist/toolkits/google-ads/tools/mutate-ad-group-ads.js +40 -0
- package/dist/toolkits/google-ads/tools/mutate-ad-group-assets.d.ts +11 -0
- package/dist/toolkits/google-ads/tools/mutate-ad-group-assets.js +40 -0
- package/dist/toolkits/google-ads/tools/mutate-ad-group-bid-modifiers.d.ts +11 -0
- package/dist/toolkits/google-ads/tools/mutate-ad-group-bid-modifiers.js +40 -0
- package/dist/toolkits/google-ads/tools/mutate-ad-group-criteria.d.ts +11 -0
- package/dist/toolkits/google-ads/tools/mutate-ad-group-criteria.js +40 -0
- package/dist/toolkits/google-ads/tools/mutate-ad-groups.d.ts +10 -0
- package/dist/toolkits/google-ads/tools/mutate-ad-groups.js +38 -0
- package/dist/toolkits/google-ads/tools/mutate-assets.d.ts +11 -0
- package/dist/toolkits/google-ads/tools/mutate-assets.js +40 -0
- package/dist/toolkits/google-ads/tools/mutate-bidding-strategies.d.ts +11 -0
- package/dist/toolkits/google-ads/tools/mutate-bidding-strategies.js +40 -0
- package/dist/toolkits/google-ads/tools/mutate-campaign-assets.d.ts +11 -0
- package/dist/toolkits/google-ads/tools/mutate-campaign-assets.js +40 -0
- package/dist/toolkits/google-ads/tools/mutate-campaign-budgets.d.ts +11 -0
- package/dist/toolkits/google-ads/tools/mutate-campaign-budgets.js +40 -0
- package/dist/toolkits/google-ads/tools/mutate-campaign-criteria.d.ts +11 -0
- package/dist/toolkits/google-ads/tools/mutate-campaign-criteria.js +40 -0
- package/dist/toolkits/google-ads/tools/mutate-campaign-labels.d.ts +10 -0
- package/dist/toolkits/google-ads/tools/mutate-campaign-labels.js +38 -0
- package/dist/toolkits/google-ads/tools/mutate-campaigns-v2.d.ts +17 -0
- package/dist/toolkits/google-ads/tools/mutate-campaigns-v2.js +58 -0
- package/dist/toolkits/google-ads/tools/mutate-campaigns.d.ts +16 -0
- package/dist/toolkits/google-ads/tools/mutate-campaigns.js +53 -0
- package/dist/toolkits/google-ads/tools/mutate-conversion-actions.d.ts +11 -0
- package/dist/toolkits/google-ads/tools/mutate-conversion-actions.js +40 -0
- package/dist/toolkits/google-ads/tools/mutate-customer-assets.d.ts +17 -0
- package/dist/toolkits/google-ads/tools/mutate-customer-assets.js +51 -0
- package/dist/toolkits/google-ads/tools/mutate-labels.d.ts +11 -0
- package/dist/toolkits/google-ads/tools/mutate-labels.js +40 -0
- package/dist/toolkits/google-ads/tools/mutate-portfolio-bidding-strategies.d.ts +11 -0
- package/dist/toolkits/google-ads/tools/mutate-portfolio-bidding-strategies.js +41 -0
- package/dist/toolkits/google-ads/tools/search-stream-gaql.d.ts +37 -0
- package/dist/toolkits/google-ads/tools/search-stream-gaql.js +41 -0
- package/dist/toolkits/google-classroom/icon.d.ts +5 -0
- package/dist/toolkits/google-classroom/icon.js +42 -0
- package/dist/toolkits/google-classroom/manifest.d.ts +3 -0
- package/dist/toolkits/google-classroom/manifest.js +67 -0
- package/dist/toolkits/google-classroom/tools/aliases.d.ts +17 -0
- package/dist/toolkits/google-classroom/tools/aliases.js +70 -0
- package/dist/toolkits/google-classroom/tools/announcement-addons.d.ts +27 -0
- package/dist/toolkits/google-classroom/tools/announcement-addons.js +87 -0
- package/dist/toolkits/google-classroom/tools/announcements.d.ts +54 -0
- package/dist/toolkits/google-classroom/tools/announcements.js +158 -0
- package/dist/toolkits/google-classroom/tools/client.d.ts +18 -0
- package/dist/toolkits/google-classroom/tools/client.js +41 -0
- package/dist/toolkits/google-classroom/tools/courses.d.ts +60 -0
- package/dist/toolkits/google-classroom/tools/courses.js +189 -0
- package/dist/toolkits/google-classroom/tools/coursework-addons.d.ts +25 -0
- package/dist/toolkits/google-classroom/tools/coursework-addons.js +85 -0
- package/dist/toolkits/google-classroom/tools/coursework.d.ts +113 -0
- package/dist/toolkits/google-classroom/tools/coursework.js +248 -0
- package/dist/toolkits/google-classroom/tools/index.d.ts +608 -0
- package/dist/toolkits/google-classroom/tools/index.js +81 -0
- package/dist/toolkits/google-classroom/tools/invitations.d.ts +22 -0
- package/dist/toolkits/google-classroom/tools/invitations.js +89 -0
- package/dist/toolkits/google-classroom/tools/materials-addons.d.ts +13 -0
- package/dist/toolkits/google-classroom/tools/materials-addons.js +45 -0
- package/dist/toolkits/google-classroom/tools/materials.d.ts +44 -0
- package/dist/toolkits/google-classroom/tools/materials.js +132 -0
- package/dist/toolkits/google-classroom/tools/misc.d.ts +20 -0
- package/dist/toolkits/google-classroom/tools/misc.js +51 -0
- package/dist/toolkits/google-classroom/tools/posts-addons.d.ts +17 -0
- package/dist/toolkits/google-classroom/tools/posts-addons.js +49 -0
- package/dist/toolkits/google-classroom/tools/roster.d.ts +48 -0
- package/dist/toolkits/google-classroom/tools/roster.js +180 -0
- package/dist/toolkits/google-classroom/tools/topics.d.ts +29 -0
- package/dist/toolkits/google-classroom/tools/topics.js +117 -0
- package/dist/toolkits/google-tasks/icon.d.ts +5 -0
- package/dist/toolkits/google-tasks/icon.js +6 -0
- package/dist/toolkits/google-tasks/manifest.d.ts +3 -0
- package/dist/toolkits/google-tasks/manifest.js +40 -0
- package/dist/toolkits/google-tasks/tools/batch-execute.d.ts +34 -0
- package/dist/toolkits/google-tasks/tools/batch-execute.js +95 -0
- package/dist/toolkits/google-tasks/tools/clear-tasks.d.ts +5 -0
- package/dist/toolkits/google-tasks/tools/clear-tasks.js +29 -0
- package/dist/toolkits/google-tasks/tools/create-task-list.d.ts +5 -0
- package/dist/toolkits/google-tasks/tools/create-task-list.js +30 -0
- package/dist/toolkits/google-tasks/tools/create-task.d.ts +12 -0
- package/dist/toolkits/google-tasks/tools/create-task.js +47 -0
- package/dist/toolkits/google-tasks/tools/delete-task-list.d.ts +5 -0
- package/dist/toolkits/google-tasks/tools/delete-task-list.js +29 -0
- package/dist/toolkits/google-tasks/tools/delete-task.d.ts +6 -0
- package/dist/toolkits/google-tasks/tools/delete-task.js +28 -0
- package/dist/toolkits/google-tasks/tools/get-task-list.d.ts +5 -0
- package/dist/toolkits/google-tasks/tools/get-task-list.js +27 -0
- package/dist/toolkits/google-tasks/tools/get-task.d.ts +6 -0
- package/dist/toolkits/google-tasks/tools/get-task.js +28 -0
- package/dist/toolkits/google-tasks/tools/index.d.ts +249 -0
- package/dist/toolkits/google-tasks/tools/index.js +125 -0
- package/dist/toolkits/google-tasks/tools/list-all-tasks.d.ts +41 -0
- package/dist/toolkits/google-tasks/tools/list-all-tasks.js +106 -0
- package/dist/toolkits/google-tasks/tools/list-task-lists.d.ts +6 -0
- package/dist/toolkits/google-tasks/tools/list-task-lists.js +30 -0
- package/dist/toolkits/google-tasks/tools/list-tasks.d.ts +15 -0
- package/dist/toolkits/google-tasks/tools/list-tasks.js +50 -0
- package/dist/toolkits/google-tasks/tools/move-task.d.ts +9 -0
- package/dist/toolkits/google-tasks/tools/move-task.js +37 -0
- package/dist/toolkits/google-tasks/tools/update-task-full.d.ts +14 -0
- package/dist/toolkits/google-tasks/tools/update-task-full.js +55 -0
- package/dist/toolkits/google-tasks/tools/update-task-list.d.ts +6 -0
- package/dist/toolkits/google-tasks/tools/update-task-list.js +31 -0
- package/dist/toolkits/google-tasks/tools/update-task.d.ts +11 -0
- package/dist/toolkits/google-tasks/tools/update-task.js +47 -0
- package/dist/toolkits/google-tasks/tools/utils.d.ts +15 -0
- package/dist/toolkits/google-tasks/tools/utils.js +33 -0
- package/dist/toolkits/groww/icon.d.ts +5 -0
- package/dist/toolkits/groww/icon.js +21 -0
- package/dist/toolkits/groww/manifest.d.ts +3 -0
- package/dist/toolkits/groww/manifest.js +32 -0
- package/dist/toolkits/groww/tools/historical.d.ts +32 -0
- package/dist/toolkits/groww/tools/historical.js +85 -0
- package/dist/toolkits/groww/tools/index.d.ts +394 -0
- package/dist/toolkits/groww/tools/index.js +222 -0
- package/dist/toolkits/groww/tools/instruments.d.ts +51 -0
- package/dist/toolkits/groww/tools/instruments.js +120 -0
- package/dist/toolkits/groww/tools/live-data.d.ts +30 -0
- package/dist/toolkits/groww/tools/live-data.js +101 -0
- package/dist/toolkits/groww/tools/margin.d.ts +18 -0
- package/dist/toolkits/groww/tools/margin.js +52 -0
- package/dist/toolkits/groww/tools/orders.d.ts +57 -0
- package/dist/toolkits/groww/tools/orders.js +170 -0
- package/dist/toolkits/groww/tools/portfolio.d.ts +13 -0
- package/dist/toolkits/groww/tools/portfolio.js +58 -0
- package/dist/toolkits/groww/tools/smart-orders.d.ts +72 -0
- package/dist/toolkits/groww/tools/smart-orders.js +200 -0
- package/dist/toolkits/groww/tools/user.d.ts +4 -0
- package/dist/toolkits/groww/tools/user.js +21 -0
- package/dist/toolkits/groww/tools/utils.d.ts +18 -0
- package/dist/toolkits/groww/tools/utils.js +52 -0
- package/dist/toolkits/reddit/icon.d.ts +5 -0
- package/dist/toolkits/reddit/icon.js +6 -0
- package/dist/toolkits/reddit/manifest.d.ts +3 -0
- package/dist/toolkits/reddit/manifest.js +55 -0
- package/dist/toolkits/reddit/tools/check-username-available.d.ts +29 -0
- package/dist/toolkits/reddit/tools/check-username-available.js +30 -0
- package/dist/toolkits/reddit/tools/client.d.ts +10 -0
- package/dist/toolkits/reddit/tools/client.js +75 -0
- package/dist/toolkits/reddit/tools/create-post.d.ts +10 -0
- package/dist/toolkits/reddit/tools/create-post.js +59 -0
- package/dist/toolkits/reddit/tools/delete-comment.d.ts +29 -0
- package/dist/toolkits/reddit/tools/delete-comment.js +30 -0
- package/dist/toolkits/reddit/tools/delete-post.d.ts +29 -0
- package/dist/toolkits/reddit/tools/delete-post.js +30 -0
- package/dist/toolkits/reddit/tools/edit-comment-or-post.d.ts +6 -0
- package/dist/toolkits/reddit/tools/edit-comment-or-post.js +35 -0
- package/dist/toolkits/reddit/tools/get-controversial-posts.d.ts +10 -0
- package/dist/toolkits/reddit/tools/get-controversial-posts.js +45 -0
- package/dist/toolkits/reddit/tools/get-listing-by-sort.d.ts +11 -0
- package/dist/toolkits/reddit/tools/get-listing-by-sort.js +47 -0
- package/dist/toolkits/reddit/tools/get-oauth-scopes.d.ts +4 -0
- package/dist/toolkits/reddit/tools/get-oauth-scopes.js +28 -0
- package/dist/toolkits/reddit/tools/get-random-post.d.ts +5 -0
- package/dist/toolkits/reddit/tools/get-random-post.js +32 -0
- package/dist/toolkits/reddit/tools/get-subreddit-rules.d.ts +5 -0
- package/dist/toolkits/reddit/tools/get-subreddit-rules.js +29 -0
- package/dist/toolkits/reddit/tools/get-user-about.d.ts +5 -0
- package/dist/toolkits/reddit/tools/get-user-about.js +29 -0
- package/dist/toolkits/reddit/tools/get-user-flair.d.ts +8 -0
- package/dist/toolkits/reddit/tools/get-user-flair.js +32 -0
- package/dist/toolkits/reddit/tools/get-user-prefs.d.ts +5 -0
- package/dist/toolkits/reddit/tools/get-user-prefs.js +32 -0
- package/dist/toolkits/reddit/tools/index.d.ts +355 -0
- package/dist/toolkits/reddit/tools/index.js +173 -0
- package/dist/toolkits/reddit/tools/list-subreddit-post-flairs.d.ts +25 -0
- package/dist/toolkits/reddit/tools/list-subreddit-post-flairs.js +30 -0
- package/dist/toolkits/reddit/tools/post-comment.d.ts +6 -0
- package/dist/toolkits/reddit/tools/post-comment.js +35 -0
- package/dist/toolkits/reddit/tools/retrieve-post-comments.d.ts +8 -0
- package/dist/toolkits/reddit/tools/retrieve-post-comments.js +39 -0
- package/dist/toolkits/reddit/tools/retrieve-posts-from-subreddit.d.ts +12 -0
- package/dist/toolkits/reddit/tools/retrieve-posts-from-subreddit.js +56 -0
- package/dist/toolkits/reddit/tools/retrieve-specific-comment-or-post.d.ts +25 -0
- package/dist/toolkits/reddit/tools/retrieve-specific-comment-or-post.js +32 -0
- package/dist/toolkits/reddit/tools/search-across-subreddits.d.ts +12 -0
- package/dist/toolkits/reddit/tools/search-across-subreddits.js +59 -0
- package/dist/toolkits/reddit/tools/search-subreddits.d.ts +12 -0
- package/dist/toolkits/reddit/tools/search-subreddits.js +49 -0
- package/dist/toolkits/reddit/tools/toggle-inbox-replies.d.ts +34 -0
- package/dist/toolkits/reddit/tools/toggle-inbox-replies.js +31 -0
- package/dist/toolkits/youtube/icon.d.ts +5 -0
- package/dist/toolkits/youtube/icon.js +20 -0
- package/dist/toolkits/youtube/manifest.d.ts +3 -0
- package/dist/toolkits/youtube/manifest.js +48 -0
- package/dist/toolkits/youtube/tools/add-video-to-playlist.d.ts +7 -0
- package/dist/toolkits/youtube/tools/add-video-to-playlist.js +38 -0
- package/dist/toolkits/youtube/tools/client.d.ts +23 -0
- package/dist/toolkits/youtube/tools/client.js +55 -0
- package/dist/toolkits/youtube/tools/create-channel-section.d.ts +13 -0
- package/dist/toolkits/youtube/tools/create-channel-section.js +42 -0
- package/dist/toolkits/youtube/tools/create-comment-reply.d.ts +6 -0
- package/dist/toolkits/youtube/tools/create-comment-reply.js +31 -0
- package/dist/toolkits/youtube/tools/create-playlist.d.ts +7 -0
- package/dist/toolkits/youtube/tools/create-playlist.js +38 -0
- package/dist/toolkits/youtube/tools/delete-channel-section.d.ts +27 -0
- package/dist/toolkits/youtube/tools/delete-channel-section.js +30 -0
- package/dist/toolkits/youtube/tools/delete-comment.d.ts +26 -0
- package/dist/toolkits/youtube/tools/delete-comment.js +29 -0
- package/dist/toolkits/youtube/tools/delete-playlist-item.d.ts +26 -0
- package/dist/toolkits/youtube/tools/delete-playlist-item.js +29 -0
- package/dist/toolkits/youtube/tools/delete-playlist.d.ts +35 -0
- package/dist/toolkits/youtube/tools/delete-playlist.js +33 -0
- package/dist/toolkits/youtube/tools/delete-video.d.ts +35 -0
- package/dist/toolkits/youtube/tools/delete-video.js +33 -0
- package/dist/toolkits/youtube/tools/download-caption-track.d.ts +21 -0
- package/dist/toolkits/youtube/tools/download-caption-track.js +30 -0
- package/dist/toolkits/youtube/tools/get-channel-activities.d.ts +10 -0
- package/dist/toolkits/youtube/tools/get-channel-activities.js +33 -0
- package/dist/toolkits/youtube/tools/get-channel-id-by-handle.d.ts +5 -0
- package/dist/toolkits/youtube/tools/get-channel-id-by-handle.js +31 -0
- package/dist/toolkits/youtube/tools/get-channel-statistics.d.ts +9 -0
- package/dist/toolkits/youtube/tools/get-channel-statistics.js +53 -0
- package/dist/toolkits/youtube/tools/get-video-details-batch.d.ts +55 -0
- package/dist/toolkits/youtube/tools/get-video-details-batch.js +51 -0
- package/dist/toolkits/youtube/tools/get-video-rating.d.ts +6 -0
- package/dist/toolkits/youtube/tools/get-video-rating.js +29 -0
- package/dist/toolkits/youtube/tools/index.d.ts +959 -0
- package/dist/toolkits/youtube/tools/index.js +104 -0
- package/dist/toolkits/youtube/tools/list-caption-track.d.ts +6 -0
- package/dist/toolkits/youtube/tools/list-caption-track.js +29 -0
- package/dist/toolkits/youtube/tools/list-channel-sections.d.ts +10 -0
- package/dist/toolkits/youtube/tools/list-channel-sections.js +36 -0
- package/dist/toolkits/youtube/tools/list-channel-videos.d.ts +9 -0
- package/dist/toolkits/youtube/tools/list-channel-videos.js +76 -0
- package/dist/toolkits/youtube/tools/list-channels.d.ts +14 -0
- package/dist/toolkits/youtube/tools/list-channels.js +40 -0
- package/dist/toolkits/youtube/tools/list-comment-threads.d.ts +15 -0
- package/dist/toolkits/youtube/tools/list-comment-threads.js +38 -0
- package/dist/toolkits/youtube/tools/list-comments.d.ts +10 -0
- package/dist/toolkits/youtube/tools/list-comments.js +35 -0
- package/dist/toolkits/youtube/tools/list-i18n-languages.d.ts +6 -0
- package/dist/toolkits/youtube/tools/list-i18n-languages.js +29 -0
- package/dist/toolkits/youtube/tools/list-i18n-regions.d.ts +6 -0
- package/dist/toolkits/youtube/tools/list-i18n-regions.js +29 -0
- package/dist/toolkits/youtube/tools/list-live-chat-messages.d.ts +10 -0
- package/dist/toolkits/youtube/tools/list-live-chat-messages.js +33 -0
- package/dist/toolkits/youtube/tools/list-playlist-images.d.ts +11 -0
- package/dist/toolkits/youtube/tools/list-playlist-images.js +36 -0
- package/dist/toolkits/youtube/tools/list-playlist-items.d.ts +11 -0
- package/dist/toolkits/youtube/tools/list-playlist-items.js +34 -0
- package/dist/toolkits/youtube/tools/list-super-chat-events.d.ts +8 -0
- package/dist/toolkits/youtube/tools/list-super-chat-events.js +31 -0
- package/dist/toolkits/youtube/tools/list-user-playlists.d.ts +7 -0
- package/dist/toolkits/youtube/tools/list-user-playlists.js +30 -0
- package/dist/toolkits/youtube/tools/list-user-subscriptions.d.ts +7 -0
- package/dist/toolkits/youtube/tools/list-user-subscriptions.js +30 -0
- package/dist/toolkits/youtube/tools/list-video-abuse-report-reasons.d.ts +6 -0
- package/dist/toolkits/youtube/tools/list-video-abuse-report-reasons.js +29 -0
- package/dist/toolkits/youtube/tools/list-video-categories.d.ts +8 -0
- package/dist/toolkits/youtube/tools/list-video-categories.js +33 -0
- package/dist/toolkits/youtube/tools/mark-comment-as-spam.d.ts +26 -0
- package/dist/toolkits/youtube/tools/mark-comment-as-spam.js +29 -0
- package/dist/toolkits/youtube/tools/multipart-upload-video.d.ts +25 -0
- package/dist/toolkits/youtube/tools/multipart-upload-video.js +40 -0
- package/dist/toolkits/youtube/tools/post-comment.d.ts +7 -0
- package/dist/toolkits/youtube/tools/post-comment.js +34 -0
- package/dist/toolkits/youtube/tools/rate-video.d.ts +30 -0
- package/dist/toolkits/youtube/tools/rate-video.js +30 -0
- package/dist/toolkits/youtube/tools/report-video-abuse.d.ts +27 -0
- package/dist/toolkits/youtube/tools/report-video-abuse.js +40 -0
- package/dist/toolkits/youtube/tools/search-youtube.d.ts +14 -0
- package/dist/toolkits/youtube/tools/search-youtube.js +37 -0
- package/dist/toolkits/youtube/tools/set-comment-moderation-status.d.ts +27 -0
- package/dist/toolkits/youtube/tools/set-comment-moderation-status.js +34 -0
- package/dist/toolkits/youtube/tools/subscribe-channel.d.ts +5 -0
- package/dist/toolkits/youtube/tools/subscribe-channel.js +30 -0
- package/dist/toolkits/youtube/tools/unsubscribe-channel.d.ts +26 -0
- package/dist/toolkits/youtube/tools/unsubscribe-channel.js +29 -0
- package/dist/toolkits/youtube/tools/update-caption.d.ts +11 -0
- package/dist/toolkits/youtube/tools/update-caption.js +36 -0
- package/dist/toolkits/youtube/tools/update-channel-section.d.ts +15 -0
- package/dist/toolkits/youtube/tools/update-channel-section.js +45 -0
- package/dist/toolkits/youtube/tools/update-channel.d.ts +10 -0
- package/dist/toolkits/youtube/tools/update-channel.js +42 -0
- package/dist/toolkits/youtube/tools/update-comment.d.ts +6 -0
- package/dist/toolkits/youtube/tools/update-comment.js +31 -0
- package/dist/toolkits/youtube/tools/update-playlist-item.d.ts +19 -0
- package/dist/toolkits/youtube/tools/update-playlist-item.js +47 -0
- package/dist/toolkits/youtube/tools/update-playlist.d.ts +16 -0
- package/dist/toolkits/youtube/tools/update-playlist.js +44 -0
- package/dist/toolkits/youtube/tools/update-thumbnail.d.ts +6 -0
- package/dist/toolkits/youtube/tools/update-thumbnail.js +38 -0
- package/dist/toolkits/youtube/tools/update-video.d.ts +10 -0
- package/dist/toolkits/youtube/tools/update-video.js +56 -0
- package/dist/toolkits/youtube/tools/upload-shared.d.ts +15 -0
- package/dist/toolkits/youtube/tools/upload-shared.js +21 -0
- package/dist/toolkits/youtube/tools/upload-video.d.ts +30 -0
- package/dist/toolkits/youtube/tools/upload-video.js +56 -0
- package/package.json +1 -1
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
import { addCommentToAFile } from './add-comment-to-a-file.js';
|
|
3
|
+
import { addReactionToAComment } from './add-reaction-to-a-comment.js';
|
|
4
|
+
import { createAWebhook } from './create-a-webhook.js';
|
|
5
|
+
import { createDevResources } from './create-dev-resources.js';
|
|
6
|
+
import { createModifyDeleteVariables } from './create-modify-delete-variables.js';
|
|
7
|
+
import { deleteAComment } from './delete-a-comment.js';
|
|
8
|
+
import { deleteAReaction } from './delete-a-reaction.js';
|
|
9
|
+
import { deleteAWebhook } from './delete-a-webhook.js';
|
|
10
|
+
import { deleteDevResource } from './delete-dev-resource.js';
|
|
11
|
+
import { designTokensToTailwind } from './design-tokens-to-tailwind.js';
|
|
12
|
+
import { detectBackground } from './detect-background.js';
|
|
13
|
+
import { discoverFigmaResources } from './discover-figma-resources.js';
|
|
14
|
+
import { downloadFigmaImages } from './download-figma-images.js';
|
|
15
|
+
import { extractDesignTokens } from './extract-design-tokens.js';
|
|
16
|
+
import { extractPrototypeInteractions } from './extract-prototype-interactions.js';
|
|
17
|
+
import { getActivityLogs } from './get-activity-logs.js';
|
|
18
|
+
import { getAWebhook } from './get-a-webhook.js';
|
|
19
|
+
import { getCommentsInAFile } from './get-comments-in-a-file.js';
|
|
20
|
+
import { getComponent2 } from './get-component2.js';
|
|
21
|
+
import { getComponentSet } from './get-component-set.js';
|
|
22
|
+
import { getCurrentUser } from './get-current-user.js';
|
|
23
|
+
import { getDevResources } from './get-dev-resources.js';
|
|
24
|
+
import { getFileComponentSets } from './get-file-component-sets.js';
|
|
25
|
+
import { getFileComponents } from './get-file-components.js';
|
|
26
|
+
import { getFileJson } from './get-file-json.js';
|
|
27
|
+
import { getFileMetadata } from './get-file-metadata.js';
|
|
28
|
+
import { getFileNodes } from './get-file-nodes.js';
|
|
29
|
+
import { getFileStyles } from './get-file-styles.js';
|
|
30
|
+
import { getFilesInAProject } from './get-files-in-a-project.js';
|
|
31
|
+
import { getImageFills } from './get-image-fills.js';
|
|
32
|
+
import { getLibraryAnalyticsComponentActionData } from './get-library-analytics-component-action-data.js';
|
|
33
|
+
import { getLibraryAnalyticsComponentUsageData } from './get-library-analytics-component-usage-data.js';
|
|
34
|
+
import { getLibraryAnalyticsStyleActionData } from './get-library-analytics-style-action-data.js';
|
|
35
|
+
import { getLibraryAnalyticsStyleUsageData } from './get-library-analytics-style-usage-data.js';
|
|
36
|
+
import { getLibraryAnalyticsVariableActionData } from './get-library-analytics-variable-action-data.js';
|
|
37
|
+
import { getLibraryAnalyticsVariableUsageData } from './get-library-analytics-variable-usage-data.js';
|
|
38
|
+
import { getLocalVariables } from './get-local-variables.js';
|
|
39
|
+
import { getPayments } from './get-payments.js';
|
|
40
|
+
import { getProjectsInATeam } from './get-projects-in-a-team.js';
|
|
41
|
+
import { getPublishedVariables } from './get-published-variables.js';
|
|
42
|
+
import { getReactionsForAComment } from './get-reactions-for-a-comment.js';
|
|
43
|
+
import { getScimServiceProviderConfig } from './get-scim-service-provider-config.js';
|
|
44
|
+
import { getStyle } from './get-style.js';
|
|
45
|
+
import { getTeamComponentSets } from './get-team-component-sets.js';
|
|
46
|
+
import { getTeamComponents } from './get-team-components.js';
|
|
47
|
+
import { getTeamStyles } from './get-team-styles.js';
|
|
48
|
+
import { getTeamWebhooks } from './get-team-webhooks.js';
|
|
49
|
+
import { getVersionsOfAFile } from './get-versions-of-a-file.js';
|
|
50
|
+
import { getWebhookRequests } from './get-webhook-requests.js';
|
|
51
|
+
import { renderImagesOfFileNodes } from './render-images-of-file-nodes.js';
|
|
52
|
+
import { updateAWebhook } from './update-a-webhook.js';
|
|
53
|
+
import { updateDevResources } from './update-dev-resources.js';
|
|
54
|
+
export { addCommentToAFile, addReactionToAComment, createAWebhook, createDevResources, createModifyDeleteVariables, deleteAComment, deleteAReaction, deleteAWebhook, deleteDevResource, designTokensToTailwind, detectBackground, discoverFigmaResources, downloadFigmaImages, extractDesignTokens, extractPrototypeInteractions, getActivityLogs, getAWebhook, getCommentsInAFile, getComponent2, getComponentSet, getCurrentUser, getDevResources, getFileComponentSets, getFileComponents, getFileJson, getFileMetadata, getFileNodes, getFileStyles, getFilesInAProject, getImageFills, getLibraryAnalyticsComponentActionData, getLibraryAnalyticsComponentUsageData, getLibraryAnalyticsStyleActionData, getLibraryAnalyticsStyleUsageData, getLibraryAnalyticsVariableActionData, getLibraryAnalyticsVariableUsageData, getLocalVariables, getPayments, getProjectsInATeam, getPublishedVariables, getReactionsForAComment, getScimServiceProviderConfig, getStyle, getTeamComponentSets, getTeamComponents, getTeamStyles, getTeamWebhooks, getVersionsOfAFile, getWebhookRequests, renderImagesOfFileNodes, updateAWebhook, updateDevResources, };
|
|
55
|
+
const auth = 'figmaToken';
|
|
56
|
+
export const figmaTools = [
|
|
57
|
+
{ name: 'figmaAddCommentToAFile', description: 'Posts a comment to a file or branch, optionally replying to a root comment.', tool: addCommentToAFile, requiredAuth: auth, scope: 'write' },
|
|
58
|
+
{ name: 'figmaAddReactionToAComment', description: 'Posts an emoji reaction to a comment.', tool: addReactionToAComment, requiredAuth: auth, scope: 'write' },
|
|
59
|
+
{ name: 'figmaCreateAWebhook', description: 'Creates a team/project/file webhook for Figma events.', tool: createAWebhook, requiredAuth: auth, scope: 'write' },
|
|
60
|
+
{ name: 'figmaCreateDevResources', description: 'Attaches dev resources (Jira, GitHub, docs) to file nodes.', tool: createDevResources, requiredAuth: auth, scope: 'write' },
|
|
61
|
+
{ name: 'figmaCreateModifyDeleteVariables', description: 'Batch creates, updates, or deletes variables, collections, modes, and values.', tool: createModifyDeleteVariables, requiredAuth: auth, scope: 'write' },
|
|
62
|
+
{ name: 'figmaDeleteAComment', description: 'Deletes your comment from a file or branch.', tool: deleteAComment, requiredAuth: auth, scope: 'delete' },
|
|
63
|
+
{ name: 'figmaDeleteAReaction', description: 'Removes your emoji reaction from a comment.', tool: deleteAReaction, requiredAuth: auth, scope: 'delete' },
|
|
64
|
+
{ name: 'figmaDeleteAWebhook', description: 'Permanently deletes a webhook. Irreversible.', tool: deleteAWebhook, requiredAuth: auth, scope: 'delete' },
|
|
65
|
+
{ name: 'figmaDeleteDevResource', description: 'Deletes a dev resource from a main file.', tool: deleteDevResource, requiredAuth: auth, scope: 'delete' },
|
|
66
|
+
{ name: 'figmaDesignTokensToTailwind', description: 'Converts extracted design tokens into a Tailwind config plus font CSS. No auth needed.', tool: designTokensToTailwind, scope: 'read' },
|
|
67
|
+
{ name: 'figmaDetectBackground', description: 'Finds background candidates behind target nodes with confidence scores.', tool: detectBackground, requiredAuth: auth, scope: 'read' },
|
|
68
|
+
{ name: 'figmaDiscoverFigmaResources', description: 'Extracts IDs from any Figma URL and traverses team → projects → files → nodes.', tool: discoverFigmaResources, requiredAuth: auth, scope: 'read' },
|
|
69
|
+
{ name: 'figmaDownloadFigmaImages', description: 'Renders nodes and downloads image bytes (base64) in PNG/SVG/JPG/PDF.', tool: downloadFigmaImages, requiredAuth: auth, scope: 'read' },
|
|
70
|
+
{ name: 'figmaExtractDesignTokens', description: 'Extracts colors, typography, spacing, radii, and shadows from a file.', tool: extractDesignTokens, requiredAuth: auth, scope: 'read' },
|
|
71
|
+
{ name: 'figmaExtractPrototypeInteractions', description: 'Extracts prototype flows, interactions, animations, and variant states.', tool: extractPrototypeInteractions, requiredAuth: auth, scope: 'read' },
|
|
72
|
+
{ name: 'figmaGetActivityLogs', description: 'Retrieves org activity log events with filters and pagination.', tool: getActivityLogs, requiredAuth: auth, scope: 'read' },
|
|
73
|
+
{ name: 'figmaGetAWebhook', description: 'Retrieves a webhook by ID.', tool: getAWebhook, requiredAuth: auth, scope: 'read' },
|
|
74
|
+
{ name: 'figmaGetCommentsInAFile', description: 'Retrieves all comments from a file or branch.', tool: getCommentsInAFile, requiredAuth: auth, scope: 'read' },
|
|
75
|
+
{ name: 'figmaGetComponent2', description: 'Fetches published component metadata by component key.', tool: getComponent2, requiredAuth: auth, scope: 'read' },
|
|
76
|
+
{ name: 'figmaGetComponentSet', description: 'Fetches published component set metadata by set key.', tool: getComponentSet, requiredAuth: auth, scope: 'read' },
|
|
77
|
+
{ name: 'figmaGetCurrentUser', description: 'Returns the authenticated user details.', tool: getCurrentUser, requiredAuth: auth, scope: 'read' },
|
|
78
|
+
{ name: 'figmaGetDevResources', description: 'Lists dev resources on a main file, optionally filtered to nodes.', tool: getDevResources, requiredAuth: auth, scope: 'read' },
|
|
79
|
+
{ name: 'figmaGetFileComponentSets', description: 'Lists published component sets from a main library file.', tool: getFileComponentSets, requiredAuth: auth, scope: 'read' },
|
|
80
|
+
{ name: 'figmaGetFileComponents', description: 'Lists published components from a main library file.', tool: getFileComponents, requiredAuth: auth, scope: 'read' },
|
|
81
|
+
{ name: 'figmaGetFileJson', description: 'Gets a Design file document tree, optionally scoped to nodes and depth.', tool: getFileJson, requiredAuth: auth, scope: 'read' },
|
|
82
|
+
{ name: 'figmaGetFileMetadata', description: 'Gets file overview without the document tree.', tool: getFileMetadata, requiredAuth: auth, scope: 'read' },
|
|
83
|
+
{ name: 'figmaGetFileNodes', description: 'Fetches JSON for known node IDs without full-file payloads.', tool: getFileNodes, requiredAuth: auth, scope: 'read' },
|
|
84
|
+
{ name: 'figmaGetFileStyles', description: 'Lists published styles from a main library file.', tool: getFileStyles, requiredAuth: auth, scope: 'read' },
|
|
85
|
+
{ name: 'figmaGetFilesInAProject', description: 'Lists files in a project, optionally with branch metadata.', tool: getFilesInAProject, requiredAuth: auth, scope: 'read' },
|
|
86
|
+
{ name: 'figmaGetImageFills', description: 'Returns temporary download URLs for all image fills in a file.', tool: getImageFills, requiredAuth: auth, scope: 'read' },
|
|
87
|
+
{ name: 'figmaGetLibraryAnalyticsComponentActionData', description: 'Weekly component insertions/detachments for a library.', tool: getLibraryAnalyticsComponentActionData, requiredAuth: auth, scope: 'read' },
|
|
88
|
+
{ name: 'figmaGetLibraryAnalyticsComponentUsageData', description: 'Component usage totals for a library.', tool: getLibraryAnalyticsComponentUsageData, requiredAuth: auth, scope: 'read' },
|
|
89
|
+
{ name: 'figmaGetLibraryAnalyticsStyleActionData', description: 'Weekly style insertions/detachments for a library.', tool: getLibraryAnalyticsStyleActionData, requiredAuth: auth, scope: 'read' },
|
|
90
|
+
{ name: 'figmaGetLibraryAnalyticsStyleUsageData', description: 'Style usage totals for a library.', tool: getLibraryAnalyticsStyleUsageData, requiredAuth: auth, scope: 'read' },
|
|
91
|
+
{ name: 'figmaGetLibraryAnalyticsVariableActionData', description: 'Weekly variable insertions/detachments for a library.', tool: getLibraryAnalyticsVariableActionData, requiredAuth: auth, scope: 'read' },
|
|
92
|
+
{ name: 'figmaGetLibraryAnalyticsVariableUsageData', description: 'Variable usage totals for a library.', tool: getLibraryAnalyticsVariableUsageData, requiredAuth: auth, scope: 'read' },
|
|
93
|
+
{ name: 'figmaGetLocalVariables', description: 'Gets all local/remote variables with mode-specific values.', tool: getLocalVariables, requiredAuth: auth, scope: 'read' },
|
|
94
|
+
{ name: 'figmaGetPayments', description: 'Checks a user payment status for your plugin, widget, or Community file.', tool: getPayments, requiredAuth: auth, scope: 'read' },
|
|
95
|
+
{ name: 'figmaGetProjectsInATeam', description: 'Lists projects in a team.', tool: getProjectsInATeam, requiredAuth: auth, scope: 'read' },
|
|
96
|
+
{ name: 'figmaGetPublishedVariables', description: 'Gets published variables from a main library file.', tool: getPublishedVariables, requiredAuth: auth, scope: 'read' },
|
|
97
|
+
{ name: 'figmaGetReactionsForAComment', description: 'Lists reactions on a comment with pagination.', tool: getReactionsForAComment, requiredAuth: auth, scope: 'read' },
|
|
98
|
+
{ name: 'figmaGetScimServiceProviderConfig', description: 'Returns SCIM capabilities for account provisioning.', tool: getScimServiceProviderConfig, requiredAuth: auth, scope: 'read' },
|
|
99
|
+
{ name: 'figmaGetStyle', description: 'Fetches published style metadata by style key.', tool: getStyle, requiredAuth: auth, scope: 'read' },
|
|
100
|
+
{ name: 'figmaGetTeamComponentSets', description: 'Lists published component sets in a team library.', tool: getTeamComponentSets, requiredAuth: auth, scope: 'read' },
|
|
101
|
+
{ name: 'figmaGetTeamComponents', description: 'Lists published components in a team library.', tool: getTeamComponents, requiredAuth: auth, scope: 'read' },
|
|
102
|
+
{ name: 'figmaGetTeamStyles', description: 'Lists published styles in a team library.', tool: getTeamStyles, requiredAuth: auth, scope: 'read' },
|
|
103
|
+
{ name: 'figmaGetTeamWebhooks', description: 'Lists webhooks for a team, project, or file context.', tool: getTeamWebhooks, requiredAuth: auth, scope: 'read' },
|
|
104
|
+
{ name: 'figmaGetVersionsOfAFile', description: 'Retrieves version history for a file or branch.', tool: getVersionsOfAFile, requiredAuth: auth, scope: 'read' },
|
|
105
|
+
{ name: 'figmaGetWebhookRequests', description: 'Shows 7-day delivery history for a webhook.', tool: getWebhookRequests, requiredAuth: auth, scope: 'read' },
|
|
106
|
+
{ name: 'figmaRenderImagesOfFileNodes', description: 'Renders nodes as images and returns temporary URLs.', tool: renderImagesOfFileNodes, requiredAuth: auth, scope: 'read' },
|
|
107
|
+
{ name: 'figmaUpdateAWebhook', description: 'Updates a webhook event type, endpoint, passcode, status, or description.', tool: updateAWebhook, requiredAuth: auth, scope: 'write' },
|
|
108
|
+
{ name: 'figmaUpdateDevResources', description: 'Updates dev resource names and URLs by ID.', tool: updateDevResources, requiredAuth: auth, scope: 'write' },
|
|
109
|
+
];
|
|
110
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare function libraryAnalyticsTool(label: string, resource: 'component' | 'style' | 'variable', metric: 'actions' | 'usages', groupBy: string[], withDates: boolean): import("ai").Tool<{
|
|
2
|
+
[x: string]: any;
|
|
3
|
+
}, any>;
|
|
4
|
+
//# sourceMappingURL=library-analytics-shared.d.ts.map
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
import { tool } from 'ai';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
import { figmaRequest, figmaTokenField } from './client.js';
|
|
5
|
+
export function libraryAnalyticsTool(label, resource, metric, groupBy, withDates) {
|
|
6
|
+
const schema = {
|
|
7
|
+
figmaToken: figmaTokenField,
|
|
8
|
+
fileKey: z.string().describe('Published Enterprise library file key'),
|
|
9
|
+
groupBy: z.enum(groupBy).describe('Grouping dimension; shapes the rows'),
|
|
10
|
+
cursor: z.string().optional().describe('Pagination cursor; omit for first page'),
|
|
11
|
+
};
|
|
12
|
+
if (withDates) {
|
|
13
|
+
schema.startDate = z.string().optional().describe('Range start YYYY-MM-DD (defaults to one year prior)');
|
|
14
|
+
schema.endDate = z.string().optional().describe('Range end YYYY-MM-DD (defaults to latest week)');
|
|
15
|
+
}
|
|
16
|
+
return tool({
|
|
17
|
+
description: `${label} for an Enterprise library. Requires library_analytics:read.`,
|
|
18
|
+
inputSchema: z.object(schema),
|
|
19
|
+
execute: async ({ figmaToken, fileKey, groupBy, cursor, startDate, endDate }) => {
|
|
20
|
+
try {
|
|
21
|
+
if (startDate && endDate && endDate < startDate) {
|
|
22
|
+
return { error: 'endDate must not be before startDate' };
|
|
23
|
+
}
|
|
24
|
+
const result = await figmaRequest(figmaToken, `/v1/files/${fileKey}/analytics/${resource}/${metric}`, {
|
|
25
|
+
query: { group_by: groupBy, cursor, start_date: startDate, end_date: endDate },
|
|
26
|
+
});
|
|
27
|
+
if (!result.ok)
|
|
28
|
+
return { error: `Failed to get ${label}`, details: result.error };
|
|
29
|
+
return result.data;
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
return {
|
|
33
|
+
error: `Error getting ${label}`,
|
|
34
|
+
message: error instanceof Error ? error.message : 'Unknown error',
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=library-analytics-shared.js.map
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare const renderImagesOfFileNodes: import("ai").Tool<{
|
|
2
|
+
figmaToken: string;
|
|
3
|
+
fileKey: string;
|
|
4
|
+
ids: string;
|
|
5
|
+
version?: string | undefined;
|
|
6
|
+
format?: "svg" | "png" | "jpg" | "pdf" | undefined;
|
|
7
|
+
scale?: number | undefined;
|
|
8
|
+
svgIncludeId?: boolean | undefined;
|
|
9
|
+
svgOutlineText?: boolean | undefined;
|
|
10
|
+
svgSimplifyStroke?: boolean | undefined;
|
|
11
|
+
contentsOnly?: boolean | undefined;
|
|
12
|
+
useAbsoluteBounds?: boolean | undefined;
|
|
13
|
+
svgIncludeNodeId?: boolean | undefined;
|
|
14
|
+
}, any>;
|
|
15
|
+
//# sourceMappingURL=render-images-of-file-nodes.d.ts.map
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
import { tool } from 'ai';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
import { figmaRequest, figmaTokenField } from './client.js';
|
|
5
|
+
export const renderImagesOfFileNodes = tool({
|
|
6
|
+
description: 'Renders nodes as PNG/JPG/SVG/PDF and returns temporary (30-day) image URLs keyed by node ID. Null means that node failed (bad ID, invisible, 0% opacity). Capped at 32MP — lower scale for large nodes.',
|
|
7
|
+
inputSchema: z.object({
|
|
8
|
+
figmaToken: figmaTokenField,
|
|
9
|
+
fileKey: z.string().describe('File or branch key from the file URL'),
|
|
10
|
+
ids: z.string().describe("Comma-separated node IDs, e.g. '1:2,1:3'"),
|
|
11
|
+
format: z.enum(['jpg', 'pdf', 'png', 'svg']).optional().describe('Output format (default png)'),
|
|
12
|
+
scale: z.number().min(0.01).max(4).optional().describe('PNG/JPG scale 0.01-4 (ignored for SVG/PDF)'),
|
|
13
|
+
version: z.string().optional().describe('Version ID; omit for current'),
|
|
14
|
+
contentsOnly: z.boolean().optional().describe('Exclude overlapping content (default true)'),
|
|
15
|
+
useAbsoluteBounds: z.boolean().optional().describe('Full node dimensions, avoids text cropping'),
|
|
16
|
+
svgIncludeId: z.boolean().optional(),
|
|
17
|
+
svgOutlineText: z.boolean().optional(),
|
|
18
|
+
svgIncludeNodeId: z.boolean().optional(),
|
|
19
|
+
svgSimplifyStroke: z.boolean().optional(),
|
|
20
|
+
}),
|
|
21
|
+
execute: async ({ figmaToken, fileKey, ids, format, scale, version, contentsOnly, useAbsoluteBounds, svgIncludeId, svgOutlineText, svgIncludeNodeId, svgSimplifyStroke }) => {
|
|
22
|
+
try {
|
|
23
|
+
const result = await figmaRequest(figmaToken, `/v1/files/${fileKey}/images`, {
|
|
24
|
+
query: {
|
|
25
|
+
ids,
|
|
26
|
+
format,
|
|
27
|
+
scale,
|
|
28
|
+
version,
|
|
29
|
+
contents_only: contentsOnly,
|
|
30
|
+
use_absolute_bounds: useAbsoluteBounds,
|
|
31
|
+
svg_include_id: svgIncludeId,
|
|
32
|
+
svg_outline_text: svgOutlineText,
|
|
33
|
+
svg_include_node_id: svgIncludeNodeId,
|
|
34
|
+
svg_simplify_stroke: svgSimplifyStroke,
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
if (!result.ok)
|
|
38
|
+
return { error: 'Failed to render node images', details: result.error };
|
|
39
|
+
return result.data;
|
|
40
|
+
}
|
|
41
|
+
catch (error) {
|
|
42
|
+
return {
|
|
43
|
+
error: 'Error rendering node images',
|
|
44
|
+
message: error instanceof Error ? error.message : 'Unknown error',
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
//# sourceMappingURL=render-images-of-file-nodes.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare const updateAWebhook: import("ai").Tool<{
|
|
2
|
+
figmaToken: string;
|
|
3
|
+
webhookId: string;
|
|
4
|
+
status?: "ACTIVE" | "PAUSED" | undefined;
|
|
5
|
+
description?: string | undefined;
|
|
6
|
+
eventType?: "FILE_COMMENT" | "FILE_DELETE" | "FILE_UPDATE" | "FILE_VERSION_UPDATE" | "LIBRARY_PUBLISH" | "PING" | undefined;
|
|
7
|
+
endpoint?: string | undefined;
|
|
8
|
+
passcode?: string | undefined;
|
|
9
|
+
}, any>;
|
|
10
|
+
//# sourceMappingURL=update-a-webhook.d.ts.map
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
import { tool } from 'ai';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
import { figmaRequest, figmaTokenField } from './client.js';
|
|
5
|
+
export const updateAWebhook = tool({
|
|
6
|
+
description: 'Updates a webhook event type, endpoint, passcode, status, or description. Only provided fields change.',
|
|
7
|
+
inputSchema: z.object({
|
|
8
|
+
figmaToken: figmaTokenField,
|
|
9
|
+
webhookId: z.string().describe('Webhook ID to update'),
|
|
10
|
+
eventType: z.enum(['FILE_COMMENT', 'FILE_DELETE', 'FILE_UPDATE', 'FILE_VERSION_UPDATE', 'LIBRARY_PUBLISH', 'PING']).optional(),
|
|
11
|
+
endpoint: z.string().optional().describe('New HTTPS endpoint (max 2048 chars)'),
|
|
12
|
+
passcode: z.string().optional().describe('New secret (max 100 chars)'),
|
|
13
|
+
status: z.enum(['ACTIVE', 'PAUSED']).optional(),
|
|
14
|
+
description: z.string().optional().describe('New description (max 140 chars; empty string removes)'),
|
|
15
|
+
}),
|
|
16
|
+
execute: async ({ figmaToken, webhookId, eventType, endpoint, passcode, status, description }) => {
|
|
17
|
+
try {
|
|
18
|
+
const body = {};
|
|
19
|
+
if (eventType)
|
|
20
|
+
body.event_type = eventType;
|
|
21
|
+
if (endpoint)
|
|
22
|
+
body.endpoint = endpoint;
|
|
23
|
+
if (passcode)
|
|
24
|
+
body.passcode = passcode;
|
|
25
|
+
if (status)
|
|
26
|
+
body.status = status;
|
|
27
|
+
if (description !== undefined)
|
|
28
|
+
body.description = description;
|
|
29
|
+
const result = await figmaRequest(figmaToken, `/v2/webhooks/${webhookId}`, {
|
|
30
|
+
method: 'PUT',
|
|
31
|
+
body,
|
|
32
|
+
});
|
|
33
|
+
if (!result.ok)
|
|
34
|
+
return { error: 'Failed to update webhook', details: result.error };
|
|
35
|
+
return result.data;
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
return {
|
|
39
|
+
error: 'Error updating webhook',
|
|
40
|
+
message: error instanceof Error ? error.message : 'Unknown error',
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
});
|
|
45
|
+
//# sourceMappingURL=update-a-webhook.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare const updateDevResources: import("ai").Tool<{
|
|
2
|
+
figmaToken: string;
|
|
3
|
+
fileKey: string;
|
|
4
|
+
devResources: {
|
|
5
|
+
id: string;
|
|
6
|
+
url?: string | undefined;
|
|
7
|
+
name?: string | undefined;
|
|
8
|
+
}[];
|
|
9
|
+
}, any>;
|
|
10
|
+
//# sourceMappingURL=update-dev-resources.d.ts.map
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
import { tool } from 'ai';
|
|
3
|
+
import { z } from 'zod';
|
|
4
|
+
import { figmaRequest, figmaTokenField } from './client.js';
|
|
5
|
+
export const updateDevResources = tool({
|
|
6
|
+
description: 'Updates the name and/or URL of dev resources by ID. Omitted fields are retained.',
|
|
7
|
+
inputSchema: z.object({
|
|
8
|
+
figmaToken: figmaTokenField,
|
|
9
|
+
fileKey: z.string().describe('Main file key containing the resources'),
|
|
10
|
+
devResources: z.array(z.object({
|
|
11
|
+
id: z.string().describe('Dev resource ID to update'),
|
|
12
|
+
name: z.string().optional().describe('New name'),
|
|
13
|
+
url: z.string().optional().describe('New URL'),
|
|
14
|
+
})).min(1),
|
|
15
|
+
}),
|
|
16
|
+
execute: async ({ figmaToken, fileKey, devResources }) => {
|
|
17
|
+
try {
|
|
18
|
+
const result = await figmaRequest(figmaToken, `/v1/files/${fileKey}/dev_resources`, {
|
|
19
|
+
method: 'PUT',
|
|
20
|
+
body: { dev_resources: devResources },
|
|
21
|
+
});
|
|
22
|
+
if (!result.ok)
|
|
23
|
+
return { error: 'Failed to update dev resources', details: result.error };
|
|
24
|
+
return result.data;
|
|
25
|
+
}
|
|
26
|
+
catch (error) {
|
|
27
|
+
return {
|
|
28
|
+
error: 'Error updating dev resources',
|
|
29
|
+
message: error instanceof Error ? error.message : 'Unknown error',
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
});
|
|
34
|
+
//# sourceMappingURL=update-dev-resources.js.map
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
const SVG = `<svg width="800px" height="800px" viewBox="0 -13 256 256" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" preserveAspectRatio="xMidYMid">
|
|
2
|
+
<g>
|
|
3
|
+
<path d="M5.888,166.405103 L90.88,20.9 C101.676138,27.2558621 156.115862,57.3844138 164.908138,63.1135172 L79.9161379,208.627448 C70.6206897,220.906621 -5.888,185.040138 5.888,166.396276 L5.888,166.405103 Z" fill="#FBBC04">
|
|
4
|
+
|
|
5
|
+
</path>
|
|
6
|
+
<path d="M250.084224,166.401789 L165.092224,20.9055131 C153.210293,1.13172 127.619121,-6.05393517 106.600638,5.62496138 C85.582155,17.3038579 79.182155,42.4624786 91.0640861,63.1190303 L176.056086,208.632961 C187.938017,228.397927 213.52919,235.583582 234.547672,223.904686 C254.648086,212.225789 261.966155,186.175582 250.084224,166.419444 L250.084224,166.401789 Z" fill="#4285F4">
|
|
7
|
+
|
|
8
|
+
</path>
|
|
9
|
+
<ellipse fill="#34A853" cx="42.6637241" cy="187.924414" rx="42.6637241" ry="41.6044138">
|
|
10
|
+
|
|
11
|
+
</ellipse>
|
|
12
|
+
</g>
|
|
13
|
+
</svg>`;
|
|
14
|
+
export const GADS_ICON = {
|
|
15
|
+
kind: 'svg',
|
|
16
|
+
dataUri: `data:image/svg+xml;base64,${Buffer.from(SVG).toString('base64')}`,
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=icon.js.map
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { defineToolkit, defineTool } from '../../core/define.js';
|
|
2
|
+
import { inferToolScope } from '../../core/scope.js';
|
|
3
|
+
import { GADS_ICON } from './icon.js';
|
|
4
|
+
import { googleAdsTools } from './tools/index.js';
|
|
5
|
+
export default defineToolkit({
|
|
6
|
+
id: 'google-ads',
|
|
7
|
+
displayName: 'Google Ads',
|
|
8
|
+
shortDescription: 'Manage campaigns, ad groups, ads, budgets, audiences, and reports in Google Ads.',
|
|
9
|
+
category: 'Advertising & Marketing',
|
|
10
|
+
icon: GADS_ICON,
|
|
11
|
+
auth: {
|
|
12
|
+
type: 'oauth2',
|
|
13
|
+
tokenField: 'googleAdsToken',
|
|
14
|
+
provider: {
|
|
15
|
+
slug: 'google-ads',
|
|
16
|
+
env: { clientId: 'GOOGLE_ADS_CLIENT_ID', clientSecret: 'GOOGLE_ADS_CLIENT_SECRET' },
|
|
17
|
+
authorizeUrl: 'https://accounts.google.com/o/oauth2/v2/auth',
|
|
18
|
+
tokenUrl: 'https://oauth2.googleapis.com/token',
|
|
19
|
+
scopes: ['https://www.googleapis.com/auth/adwords'],
|
|
20
|
+
exchangeStyle: 'form',
|
|
21
|
+
extraAuthParams: { access_type: 'offline', prompt: 'consent' },
|
|
22
|
+
connectDescription: 'Connect Google Ads to manage campaigns, audiences, and reports.',
|
|
23
|
+
callbackPath: '/api/auth/google-ads/callback',
|
|
24
|
+
stateCookie: 'google_ads_oauth_state',
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
allowedHosts: ['googleads.googleapis.com'],
|
|
28
|
+
tools: googleAdsTools.map((entry) => defineTool({
|
|
29
|
+
name: entry.name,
|
|
30
|
+
description: entry.description,
|
|
31
|
+
tool: entry.tool,
|
|
32
|
+
requiredAuth: entry.requiredAuth,
|
|
33
|
+
scope: entry.scope ?? inferToolScope(entry.name),
|
|
34
|
+
})),
|
|
35
|
+
meta: {
|
|
36
|
+
since: '0.0.8',
|
|
37
|
+
homepage: 'https://ads.google.com',
|
|
38
|
+
docsUrl: 'https://developers.google.com/google-ads/api/docs/start',
|
|
39
|
+
},
|
|
40
|
+
});
|
|
41
|
+
//# sourceMappingURL=manifest.js.map
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export declare const addOrRemoveToCustomerList: import("ai").Tool<{
|
|
2
|
+
resourceName: string;
|
|
3
|
+
googleAdsToken: string;
|
|
4
|
+
developerToken: string;
|
|
5
|
+
emails: string[];
|
|
6
|
+
operation?: "create" | "remove" | undefined;
|
|
7
|
+
customerId?: string | undefined;
|
|
8
|
+
loginCustomerId?: string | undefined;
|
|
9
|
+
}, {
|
|
10
|
+
error: string;
|
|
11
|
+
details?: undefined;
|
|
12
|
+
status?: undefined;
|
|
13
|
+
message?: undefined;
|
|
14
|
+
} | {
|
|
15
|
+
error: string;
|
|
16
|
+
details: any;
|
|
17
|
+
status?: undefined;
|
|
18
|
+
message?: undefined;
|
|
19
|
+
} | {
|
|
20
|
+
status: string;
|
|
21
|
+
error?: undefined;
|
|
22
|
+
details?: undefined;
|
|
23
|
+
message?: undefined;
|
|
24
|
+
} | {
|
|
25
|
+
error: string;
|
|
26
|
+
message: string;
|
|
27
|
+
details?: undefined;
|
|
28
|
+
status?: undefined;
|
|
29
|
+
}>;
|
|
30
|
+
//# sourceMappingURL=add-or-remove-to-customer-list.d.ts.map
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
// @ts-nocheck
|
|
2
|
+
import { createHash } from 'node:crypto';
|
|
3
|
+
import { tool } from 'ai';
|
|
4
|
+
import { z } from 'zod';
|
|
5
|
+
import { GOOGLE_ADS_API_VERSION, adsRequest, customerIdField, developerTokenField, googleAdsTokenField, loginCustomerIdField, normalizeCustomerId, } from './client.js';
|
|
6
|
+
function hashEmail(email) {
|
|
7
|
+
return createHash('sha256').update(email.trim().toLowerCase()).digest('hex');
|
|
8
|
+
}
|
|
9
|
+
export const addOrRemoveToCustomerList = tool({
|
|
10
|
+
description: 'Adds or removes contacts from a customer list (UserList audience, not an account) via an offline user data job. Changes take 6-12 hours to reflect. Emails must comply with Ads policies and privacy/consent laws.',
|
|
11
|
+
inputSchema: z.object({
|
|
12
|
+
googleAdsToken: googleAdsTokenField,
|
|
13
|
+
developerToken: developerTokenField,
|
|
14
|
+
resourceName: z.string().describe('UserList resource name, e.g. customers/123/userLists/456'),
|
|
15
|
+
emails: z.array(z.string()).min(1).describe('Contact emails to add or remove (normalized and SHA-256 hashed automatically)'),
|
|
16
|
+
operation: z.enum(['create', 'remove']).optional().describe('Operation to perform (default create)'),
|
|
17
|
+
customerId: customerIdField,
|
|
18
|
+
loginCustomerId: loginCustomerIdField,
|
|
19
|
+
}),
|
|
20
|
+
execute: async ({ googleAdsToken, developerToken, resourceName, emails, operation, customerId, loginCustomerId }) => {
|
|
21
|
+
try {
|
|
22
|
+
const cid = normalizeCustomerId(customerId);
|
|
23
|
+
if (!cid)
|
|
24
|
+
return { error: 'customerId is required' };
|
|
25
|
+
const op = operation ?? 'create';
|
|
26
|
+
const base = `/${GOOGLE_ADS_API_VERSION}/customers/${cid}/offlineUserDataJobs`;
|
|
27
|
+
const createResult = await adsRequest(googleAdsToken, developerToken, `${base}:create`, {
|
|
28
|
+
method: 'POST',
|
|
29
|
+
loginCustomerId,
|
|
30
|
+
body: {
|
|
31
|
+
job: {
|
|
32
|
+
type: 'CUSTOMER_MATCH_USER_LIST',
|
|
33
|
+
customerMatchUserListMetadata: { userList: resourceName },
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
if (!createResult.ok)
|
|
38
|
+
return { error: 'Failed to create user data job', details: createResult.error };
|
|
39
|
+
const jobName = createResult.data?.resourceName;
|
|
40
|
+
if (!jobName)
|
|
41
|
+
return { error: 'Failed to create user data job', details: createResult.data };
|
|
42
|
+
const operations = emails.map((email) => ({
|
|
43
|
+
[op]: { userIdentifiers: [{ hashedEmail: hashEmail(email) }] },
|
|
44
|
+
}));
|
|
45
|
+
const addResult = await adsRequest(googleAdsToken, developerToken, `${base}/${jobName.split('/').pop()}:addOperations`, {
|
|
46
|
+
method: 'POST',
|
|
47
|
+
loginCustomerId,
|
|
48
|
+
body: { operations, enablePartialFailure: true },
|
|
49
|
+
});
|
|
50
|
+
if (!addResult.ok)
|
|
51
|
+
return { error: 'Failed to add members to user data job', details: addResult.error };
|
|
52
|
+
const runResult = await adsRequest(googleAdsToken, developerToken, `${base}/${jobName.split('/').pop()}:run`, {
|
|
53
|
+
method: 'POST',
|
|
54
|
+
loginCustomerId,
|
|
55
|
+
body: {},
|
|
56
|
+
});
|
|
57
|
+
if (!runResult.ok)
|
|
58
|
+
return { error: 'Failed to run user data job', details: runResult.error };
|
|
59
|
+
return { status: `User data job ${jobName} is running for ${emails.length} contact(s)` };
|
|
60
|
+
}
|
|
61
|
+
catch (error) {
|
|
62
|
+
return {
|
|
63
|
+
error: 'Error updating customer list',
|
|
64
|
+
message: error instanceof Error ? error.message : 'Unknown error',
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
},
|
|
68
|
+
});
|
|
69
|
+
//# sourceMappingURL=add-or-remove-to-customer-list.js.map
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const GOOGLE_ADS_API_BASE = "https://googleads.googleapis.com";
|
|
3
|
+
export declare const GOOGLE_ADS_API_VERSION = "v23";
|
|
4
|
+
export declare const googleAdsTokenField: z.ZodString;
|
|
5
|
+
export declare const developerTokenField: z.ZodString;
|
|
6
|
+
export declare const customerIdField: z.ZodOptional<z.ZodString>;
|
|
7
|
+
export declare const loginCustomerIdField: z.ZodOptional<z.ZodString>;
|
|
8
|
+
export declare function normalizeCustomerId(id?: string): string;
|
|
9
|
+
export declare function adsRequest(googleAdsToken: string, developerToken: string, path: string, options?: {
|
|
10
|
+
method?: string;
|
|
11
|
+
body?: unknown;
|
|
12
|
+
loginCustomerId?: string;
|
|
13
|
+
}): Promise<{
|
|
14
|
+
ok: false;
|
|
15
|
+
error: any;
|
|
16
|
+
data?: undefined;
|
|
17
|
+
} | {
|
|
18
|
+
ok: true;
|
|
19
|
+
data: any;
|
|
20
|
+
error?: undefined;
|
|
21
|
+
}>;
|
|
22
|
+
export declare function toGoogleAdsJson(value: unknown): unknown;
|
|
23
|
+
export interface MutateOptions {
|
|
24
|
+
customerId?: string;
|
|
25
|
+
loginCustomerId?: string;
|
|
26
|
+
operations: Array<Record<string, unknown>>;
|
|
27
|
+
validateOnly?: boolean;
|
|
28
|
+
partialFailure?: boolean;
|
|
29
|
+
responseContentType?: string;
|
|
30
|
+
}
|
|
31
|
+
export declare function adsMutate(googleAdsToken: string, developerToken: string, resource: string, opts: MutateOptions): Promise<{
|
|
32
|
+
ok: false;
|
|
33
|
+
error: any;
|
|
34
|
+
data?: undefined;
|
|
35
|
+
} | {
|
|
36
|
+
ok: true;
|
|
37
|
+
data: any;
|
|
38
|
+
error?: undefined;
|
|
39
|
+
}>;
|
|
40
|
+
export interface SearchOptions {
|
|
41
|
+
customerId?: string;
|
|
42
|
+
loginCustomerId?: string;
|
|
43
|
+
query: string;
|
|
44
|
+
pageToken?: string;
|
|
45
|
+
pageSize?: number;
|
|
46
|
+
summaryRowSetting?: string;
|
|
47
|
+
}
|
|
48
|
+
export declare function adsSearchStream(googleAdsToken: string, developerToken: string, opts: SearchOptions): Promise<{
|
|
49
|
+
ok: false;
|
|
50
|
+
error: any;
|
|
51
|
+
data?: undefined;
|
|
52
|
+
} | {
|
|
53
|
+
ok: true;
|
|
54
|
+
data: any;
|
|
55
|
+
error?: undefined;
|
|
56
|
+
}>;
|
|
57
|
+
export declare function collectStreamRows(data: unknown): {
|
|
58
|
+
rows: Array<Record<string, unknown>>;
|
|
59
|
+
requestId?: string;
|
|
60
|
+
summaryRow?: Record<string, unknown>;
|
|
61
|
+
};
|
|
62
|
+
//# sourceMappingURL=client.d.ts.map
|