runline 0.33.0 → 0.35.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.
- package/dist/auth/oauth2.d.ts +7 -1
- package/dist/auth/oauth2.js +10 -0
- package/dist/auth/token.d.ts +1 -0
- package/dist/auth/token.js +19 -1
- package/dist/auth/types.d.ts +22 -1
- package/dist/core/engine.d.ts +7 -0
- package/dist/core/engine.js +21 -8
- package/dist/credentials/policy.d.ts +53 -1
- package/dist/credentials/policy.js +146 -6
- package/dist/credentials/registry.d.ts +9 -0
- package/dist/credentials/registry.js +184 -22
- package/dist/credentials/transport.d.ts +48 -2
- package/dist/credentials/transport.js +248 -70
- package/dist/credentials/types.d.ts +177 -10
- package/dist/index.d.ts +6 -5
- package/dist/index.js +3 -2
- package/dist/plugin/api.d.ts +7 -0
- package/dist/plugin/api.js +7 -0
- package/dist/plugin/schema.d.ts +16 -4
- package/dist/plugin/schema.js +28 -5
- package/dist/plugin/types.d.ts +20 -0
- package/dist/plugins/_shared/base64.js +30 -0
- package/dist/plugins/_shared/credentialAdapter.js +99 -15
- package/dist/plugins/_shared/credentials.js +416 -0
- package/dist/plugins/_shared/googleAuth.js +69 -39
- package/dist/plugins/_shared/googleCredentials.js +68 -14
- package/dist/plugins/_shared/localFile.js +40 -0
- package/dist/plugins/_shared/mediaFile.js +12 -12
- package/dist/plugins/_shared/microsoftAuth.js +31 -47
- package/dist/plugins/_shared/microsoftCredentials.js +42 -15
- package/dist/plugins/_shared/provider.js +2 -14
- package/dist/plugins/_shared/shiftCloud.js +16 -56
- package/dist/plugins/_shared/shiftCredentials.js +83 -0
- package/dist/plugins/_shared/shiftUpload.js +14 -10
- package/dist/plugins/actionNetwork/src/credentials.js +14 -0
- package/dist/plugins/actionNetwork/src/index.js +39 -50
- package/dist/plugins/activeCampaign/src/credentials.js +22 -0
- package/dist/plugins/activeCampaign/src/index.js +61 -132
- package/dist/plugins/adalo/src/credentials.js +16 -0
- package/dist/plugins/adalo/src/index.js +19 -43
- package/dist/plugins/affinity/src/credentials.js +19 -0
- package/dist/plugins/affinity/src/index.js +29 -54
- package/dist/plugins/agentMail/src/credentials.js +35 -0
- package/dist/plugins/agentMail/src/drafts.js +137 -0
- package/dist/plugins/agentMail/src/inboxes.js +95 -0
- package/dist/plugins/agentMail/src/index.js +35 -0
- package/dist/plugins/agentMail/src/messages.js +154 -0
- package/dist/plugins/agentMail/src/schemas.js +156 -0
- package/dist/plugins/agentMail/src/shared.js +203 -0
- package/dist/plugins/agentMail/src/threads.js +75 -0
- package/dist/plugins/agileCrm/src/credentials.js +16 -0
- package/dist/plugins/agileCrm/src/index.js +46 -112
- package/dist/plugins/airtable/src/credentials.js +19 -0
- package/dist/plugins/airtable/src/index.js +37 -50
- package/dist/plugins/airtop/src/credentials.js +20 -0
- package/dist/plugins/airtop/src/index.js +51 -75
- package/dist/plugins/apiTemplateIo/src/credentials.js +19 -0
- package/dist/plugins/apiTemplateIo/src/index.js +14 -31
- package/dist/plugins/asana/src/credentials.js +19 -0
- package/dist/plugins/asana/src/index.js +51 -72
- package/dist/plugins/autopilot/src/credentials.js +19 -0
- package/dist/plugins/autopilot/src/index.js +38 -45
- package/dist/plugins/bambooHr/src/credentials.js +16 -0
- package/dist/plugins/bambooHr/src/index.js +41 -67
- package/dist/plugins/bannerbear/src/credentials.js +19 -0
- package/dist/plugins/bannerbear/src/index.js +15 -27
- package/dist/plugins/baserow/src/credentials.js +17 -0
- package/dist/plugins/baserow/src/index.js +23 -49
- package/dist/plugins/beeminder/src/credentials.js +19 -0
- package/dist/plugins/beeminder/src/index.js +32 -54
- package/dist/plugins/bitly/src/credentials.js +19 -0
- package/dist/plugins/bitly/src/index.js +12 -26
- package/dist/plugins/bitwarden/src/credentials.js +62 -0
- package/dist/plugins/bitwarden/src/index.js +34 -80
- package/dist/plugins/box/src/credentials.js +19 -0
- package/dist/plugins/box/src/index.js +24 -49
- package/dist/plugins/brandfetch/src/credentials.js +13 -0
- package/dist/plugins/brandfetch/src/index.js +12 -17
- package/dist/plugins/brevo/src/credentials.js +19 -0
- package/dist/plugins/brevo/src/index.js +30 -51
- package/dist/plugins/bubble/src/credentials.js +28 -0
- package/dist/plugins/bubble/src/index.js +29 -65
- package/dist/plugins/chargebee/src/credentials.js +16 -0
- package/dist/plugins/chargebee/src/index.js +15 -45
- package/dist/plugins/circleci/src/credentials.js +19 -0
- package/dist/plugins/circleci/src/index.js +19 -39
- package/dist/plugins/ciscoWebex/src/credentials.js +19 -0
- package/dist/plugins/ciscoWebex/src/index.js +43 -61
- package/dist/plugins/clearbit/src/credentials.js +22 -0
- package/dist/plugins/clearbit/src/index.js +11 -21
- package/dist/plugins/clickup/src/credentials.js +19 -0
- package/dist/plugins/clickup/src/index.js +85 -117
- package/dist/plugins/clockify/src/credentials.js +19 -0
- package/dist/plugins/clockify/src/index.js +46 -61
- package/dist/plugins/cloudflare/src/credentials.js +19 -0
- package/dist/plugins/cloudflare/src/index.js +19 -34
- package/dist/plugins/cockpit/src/credentials.js +17 -0
- package/dist/plugins/cockpit/src/index.js +18 -31
- package/dist/plugins/coda/src/credentials.js +19 -0
- package/dist/plugins/coda/src/index.js +33 -50
- package/dist/plugins/coingecko/src/credentials.js +20 -0
- package/dist/plugins/coingecko/src/index.js +24 -34
- package/dist/plugins/contentful/src/credentials.js +26 -0
- package/dist/plugins/contentful/src/index.js +19 -40
- package/dist/plugins/convertkit/src/credentials.js +26 -0
- package/dist/plugins/convertkit/src/index.js +27 -45
- package/dist/plugins/copper/src/credentials.js +17 -0
- package/dist/plugins/copper/src/index.js +25 -47
- package/dist/plugins/cortex/src/credentials.js +28 -0
- package/dist/plugins/cortex/src/index.js +26 -49
- package/dist/plugins/currents/src/credentials.js +19 -0
- package/dist/plugins/currents/src/index.js +46 -59
- package/dist/plugins/customerIo/src/credentials.js +52 -0
- package/dist/plugins/customerIo/src/index.js +30 -58
- package/dist/plugins/databricks/src/credentials.js +13 -0
- package/dist/plugins/databricks/src/index.js +51 -103
- package/dist/plugins/deepl/src/credentials.js +19 -0
- package/dist/plugins/deepl/src/index.js +13 -39
- package/dist/plugins/demio/src/credentials.js +26 -0
- package/dist/plugins/demio/src/index.js +17 -41
- package/dist/plugins/dhl/src/credentials.js +13 -0
- package/dist/plugins/dhl/src/index.js +8 -19
- package/dist/plugins/discord/src/credentials.js +19 -0
- package/dist/plugins/discord/src/index.js +30 -58
- package/dist/plugins/discourse/src/credentials.js +18 -0
- package/dist/plugins/discourse/src/index.js +36 -53
- package/dist/plugins/disqus/src/credentials.js +13 -0
- package/dist/plugins/disqus/src/index.js +14 -32
- package/dist/plugins/drift/src/credentials.js +13 -0
- package/dist/plugins/drift/src/index.js +16 -26
- package/dist/plugins/dropbox/src/credentials.js +13 -0
- package/dist/plugins/dropbox/src/index.js +23 -30
- package/dist/plugins/dropcontact/src/credentials.js +13 -0
- package/dist/plugins/dropcontact/src/index.js +13 -18
- package/dist/plugins/egoi/src/credentials.js +19 -0
- package/dist/plugins/egoi/src/index.js +23 -38
- package/dist/plugins/elasticsearch/src/credentials.js +18 -0
- package/dist/plugins/elasticsearch/src/index.js +27 -48
- package/dist/plugins/elevenlabs/src/credentials.js +30 -0
- package/dist/plugins/elevenlabs/src/index.js +4 -1
- package/dist/plugins/elevenlabs/src/schemas.js +2 -1
- package/dist/plugins/elevenlabs/src/shared.js +87 -62
- package/dist/plugins/elevenlabs/src/workflows.js +2 -2
- package/dist/plugins/emelia/src/credentials.js +14 -0
- package/dist/plugins/emelia/src/index.js +19 -23
- package/dist/plugins/erpnext/src/credentials.js +27 -0
- package/dist/plugins/erpnext/src/index.js +21 -42
- package/dist/plugins/facebookGraph/src/credentials.js +20 -0
- package/dist/plugins/facebookGraph/src/index.js +39 -37
- package/dist/plugins/fal/src/credentials.js +14 -0
- package/dist/plugins/fal/src/index.js +5 -3
- package/dist/plugins/fal/src/shared.js +58 -63
- package/dist/plugins/freshdesk/src/credentials.js +20 -0
- package/dist/plugins/freshdesk/src/index.js +25 -46
- package/dist/plugins/freshservice/src/credentials.js +16 -0
- package/dist/plugins/freshservice/src/index.js +37 -58
- package/dist/plugins/freshworksCrm/src/credentials.js +16 -0
- package/dist/plugins/freshworksCrm/src/index.js +20 -39
- package/dist/plugins/getresponse/src/credentials.js +22 -0
- package/dist/plugins/getresponse/src/index.js +20 -32
- package/dist/plugins/gett/src/credentials.js +64 -0
- package/dist/plugins/gett/src/index.js +11 -6
- package/dist/plugins/gett/src/login.js +24 -0
- package/dist/plugins/gett/src/session.js +15 -38
- package/dist/plugins/gett/src/shared.js +41 -84
- package/dist/plugins/ghost/src/credentials.js +36 -0
- package/dist/plugins/ghost/src/index.js +18 -59
- package/dist/plugins/github/src/credentials.js +18 -0
- package/dist/plugins/github/src/index.js +55 -78
- package/dist/plugins/gitlab/src/credentials.js +24 -0
- package/dist/plugins/gitlab/src/index.js +29 -48
- package/dist/plugins/gmail/src/index.js +47 -108
- package/dist/plugins/gong/src/credentials.js +16 -0
- package/dist/plugins/gong/src/index.js +16 -32
- package/dist/plugins/googleAppsScript/src/index.js +109 -42
- package/dist/plugins/googleCalendar/src/index.js +20 -51
- package/dist/plugins/googleContacts/src/index.js +13 -40
- package/dist/plugins/googleDocs/src/index.js +3 -32
- package/dist/plugins/googleDocs/src/shared.js +2 -1
- package/dist/plugins/googleDrive/src/index.js +68 -97
- package/dist/plugins/googleImage/src/credentials.js +14 -0
- package/dist/plugins/googleImage/src/index.js +15 -26
- package/dist/plugins/googleSheets/src/index.js +27 -60
- package/dist/plugins/googleSlides/src/index.js +7 -35
- package/dist/plugins/googleTasks/src/index.js +14 -42
- package/dist/plugins/gotify/src/credentials.js +32 -0
- package/dist/plugins/gotify/src/index.js +14 -36
- package/dist/plugins/gotowebinar/src/credentials.js +13 -0
- package/dist/plugins/gotowebinar/src/index.js +52 -69
- package/dist/plugins/grafana/src/credentials.js +16 -0
- package/dist/plugins/grafana/src/index.js +34 -53
- package/dist/plugins/graphql/src/credentials.js +42 -0
- package/dist/plugins/graphql/src/index.js +21 -46
- package/dist/plugins/grist/src/credentials.js +30 -0
- package/dist/plugins/grist/src/index.js +14 -43
- package/dist/plugins/halopsa/src/credentials.js +56 -0
- package/dist/plugins/halopsa/src/index.js +20 -47
- package/dist/plugins/harvest/src/credentials.js +20 -0
- package/dist/plugins/harvest/src/index.js +24 -43
- package/dist/plugins/helpscout/src/credentials.js +13 -0
- package/dist/plugins/helpscout/src/index.js +26 -38
- package/dist/plugins/highlevel/src/credentials.js +19 -0
- package/dist/plugins/highlevel/src/index.js +42 -65
- package/dist/plugins/homeAssistant/src/credentials.js +27 -0
- package/dist/plugins/homeAssistant/src/index.js +34 -52
- package/dist/plugins/hubspot/src/credentials.js +16 -0
- package/dist/plugins/hubspot/src/index.js +29 -41
- package/dist/plugins/humanticAi/src/credentials.js +13 -0
- package/dist/plugins/humanticAi/src/index.js +15 -22
- package/dist/plugins/hunter/src/credentials.js +13 -0
- package/dist/plugins/hunter/src/index.js +18 -17
- package/dist/plugins/intercom/src/credentials.js +19 -0
- package/dist/plugins/intercom/src/index.js +25 -38
- package/dist/plugins/iterable/src/credentials.js +17 -0
- package/dist/plugins/iterable/src/index.js +26 -40
- package/dist/plugins/jenkins/src/credentials.js +16 -0
- package/dist/plugins/jenkins/src/index.js +22 -36
- package/dist/plugins/jira/src/credentials.js +16 -0
- package/dist/plugins/jira/src/index.js +35 -61
- package/dist/plugins/keap/src/credentials.js +19 -0
- package/dist/plugins/keap/src/index.js +43 -71
- package/dist/plugins/kobotoolbox/src/credentials.js +13 -0
- package/dist/plugins/kobotoolbox/src/index.js +46 -84
- package/dist/plugins/lemlist/src/credentials.js +19 -0
- package/dist/plugins/lemlist/src/index.js +35 -47
- package/dist/plugins/linear/src/attachments.js +7 -7
- package/dist/plugins/linear/src/comments.js +7 -7
- package/dist/plugins/linear/src/credentials.js +17 -0
- package/dist/plugins/linear/src/cycles.js +5 -5
- package/dist/plugins/linear/src/index.js +2 -0
- package/dist/plugins/linear/src/initiatives.js +6 -6
- package/dist/plugins/linear/src/issues.js +14 -14
- package/dist/plugins/linear/src/labels.js +6 -6
- package/dist/plugins/linear/src/organization.js +2 -2
- package/dist/plugins/linear/src/projects.js +12 -12
- package/dist/plugins/linear/src/shared.js +34 -32
- package/dist/plugins/linear/src/states.js +3 -3
- package/dist/plugins/linear/src/teams.js +4 -4
- package/dist/plugins/linear/src/users.js +3 -3
- package/dist/plugins/linear/src/views.js +5 -5
- package/dist/plugins/linear/src/webhooks.js +5 -5
- package/dist/plugins/lingvanex/src/credentials.js +13 -0
- package/dist/plugins/lingvanex/src/index.js +7 -9
- package/dist/plugins/linkedin/src/credentials.js +17 -0
- package/dist/plugins/linkedin/src/index.js +13 -17
- package/dist/plugins/lonescale/src/credentials.js +13 -0
- package/dist/plugins/lonescale/src/index.js +16 -26
- package/dist/plugins/magento/src/credentials.js +16 -0
- package/dist/plugins/magento/src/index.js +67 -84
- package/dist/plugins/mailcheck/src/credentials.js +17 -0
- package/dist/plugins/mailcheck/src/index.js +7 -9
- package/dist/plugins/mailchimp/src/credentials.js +32 -0
- package/dist/plugins/mailchimp/src/index.js +36 -44
- package/dist/plugins/mailerlite/src/credentials.js +13 -0
- package/dist/plugins/mailerlite/src/index.js +19 -32
- package/dist/plugins/mailgun/src/credentials.js +21 -0
- package/dist/plugins/mailgun/src/index.js +15 -21
- package/dist/plugins/mailjet/src/credentials.js +38 -0
- package/dist/plugins/mailjet/src/index.js +60 -115
- package/dist/plugins/mandrill/src/credentials.js +17 -0
- package/dist/plugins/mandrill/src/index.js +11 -12
- package/dist/plugins/marketstack/src/credentials.js +16 -0
- package/dist/plugins/marketstack/src/index.js +18 -28
- package/dist/plugins/matrix/src/credentials.js +19 -0
- package/dist/plugins/matrix/src/index.js +23 -52
- package/dist/plugins/mattermost/src/credentials.js +19 -0
- package/dist/plugins/mattermost/src/index.js +41 -73
- package/dist/plugins/mautic/src/credentials.js +16 -0
- package/dist/plugins/mautic/src/index.js +46 -62
- package/dist/plugins/medium/src/credentials.js +20 -0
- package/dist/plugins/medium/src/index.js +18 -23
- package/dist/plugins/messagebird/src/credentials.js +22 -0
- package/dist/plugins/messagebird/src/index.js +13 -18
- package/dist/plugins/metabase/src/credentials.js +19 -0
- package/dist/plugins/metabase/src/index.js +24 -40
- package/dist/plugins/microsoftCalendar/src/index.js +49 -18
- package/dist/plugins/microsoftFiles/src/index.js +95 -31
- package/dist/plugins/microsoftMail/src/index.js +63 -21
- package/dist/plugins/misp/src/credentials.js +16 -0
- package/dist/plugins/misp/src/index.js +60 -71
- package/dist/plugins/mocean/src/credentials.js +17 -0
- package/dist/plugins/mocean/src/index.js +11 -23
- package/dist/plugins/monday/src/credentials.js +14 -0
- package/dist/plugins/monday/src/index.js +31 -44
- package/dist/plugins/monicaCrm/src/credentials.js +19 -0
- package/dist/plugins/monicaCrm/src/index.js +25 -42
- package/dist/plugins/msg91/src/credentials.js +10 -0
- package/dist/plugins/msg91/src/index.js +15 -11
- package/dist/plugins/nasa/src/credentials.js +22 -0
- package/dist/plugins/nasa/src/index.js +24 -28
- package/dist/plugins/netlify/src/credentials.js +19 -0
- package/dist/plugins/netlify/src/index.js +27 -51
- package/dist/plugins/netscalerAdc/src/credentials.js +18 -0
- package/dist/plugins/netscalerAdc/src/index.js +16 -31
- package/dist/plugins/nextcloud/src/credentials.js +27 -0
- package/dist/plugins/nextcloud/src/index.js +55 -109
- package/dist/plugins/nocodb/src/credentials.js +16 -0
- package/dist/plugins/nocodb/src/index.js +19 -37
- package/dist/plugins/notion/src/credentials.js +21 -0
- package/dist/plugins/notion/src/index.js +25 -38
- package/dist/plugins/npm/src/credentials.js +19 -0
- package/dist/plugins/npm/src/index.js +22 -32
- package/dist/plugins/odoo/src/credentials.js +21 -0
- package/dist/plugins/odoo/src/index.js +53 -69
- package/dist/plugins/okta/src/credentials.js +23 -0
- package/dist/plugins/okta/src/index.js +30 -35
- package/dist/plugins/oneSimpleApi/src/credentials.js +16 -0
- package/dist/plugins/oneSimpleApi/src/index.js +19 -24
- package/dist/plugins/onfleet/src/credentials.js +23 -0
- package/dist/plugins/onfleet/src/index.js +42 -53
- package/dist/plugins/openai/src/credentials.js +13 -0
- package/dist/plugins/openai/src/index.js +16 -24
- package/dist/plugins/openweathermap/src/credentials.js +16 -0
- package/dist/plugins/openweathermap/src/index.js +22 -22
- package/dist/plugins/oura/src/credentials.js +19 -0
- package/dist/plugins/oura/src/index.js +13 -18
- package/dist/plugins/paddle/src/credentials.js +27 -0
- package/dist/plugins/paddle/src/index.js +20 -36
- package/dist/plugins/pagerduty/src/credentials.js +24 -0
- package/dist/plugins/pagerduty/src/index.js +30 -39
- package/dist/plugins/parallel/src/credentials.js +18 -0
- package/dist/plugins/parallel/src/index.js +16 -22
- package/dist/plugins/paypal/src/credentials.js +44 -0
- package/dist/plugins/paypal/src/index.js +14 -40
- package/dist/plugins/peekalink/src/credentials.js +16 -0
- package/dist/plugins/peekalink/src/index.js +10 -11
- package/dist/plugins/phantombuster/src/credentials.js +19 -0
- package/dist/plugins/phantombuster/src/index.js +19 -32
- package/dist/plugins/philipsHue/src/credentials.js +17 -0
- package/dist/plugins/philipsHue/src/index.js +15 -27
- package/dist/plugins/pipedrive/src/credentials.js +26 -0
- package/dist/plugins/pipedrive/src/index.js +43 -73
- package/dist/plugins/plaud/src/index.js +2 -1
- package/dist/plugins/plaud/src/shared.js +23 -19
- package/dist/plugins/plivo/src/credentials.js +20 -0
- package/dist/plugins/plivo/src/index.js +13 -19
- package/dist/plugins/posthog/src/credentials.js +18 -0
- package/dist/plugins/posthog/src/index.js +14 -20
- package/dist/plugins/profitwell/src/credentials.js +22 -0
- package/dist/plugins/profitwell/src/index.js +10 -17
- package/dist/plugins/pushbullet/src/credentials.js +19 -0
- package/dist/plugins/pushbullet/src/index.js +19 -27
- package/dist/plugins/pushcut/src/credentials.js +19 -0
- package/dist/plugins/pushcut/src/index.js +7 -8
- package/dist/plugins/pushover/src/credentials.js +14 -0
- package/dist/plugins/pushover/src/index.js +7 -12
- package/dist/plugins/quickbase/src/credentials.js +15 -0
- package/dist/plugins/quickbase/src/index.js +24 -34
- package/dist/plugins/quickbooks/src/credentials.js +22 -0
- package/dist/plugins/quickbooks/src/index.js +17 -46
- package/dist/plugins/raindrop/src/credentials.js +19 -0
- package/dist/plugins/raindrop/src/index.js +30 -32
- package/dist/plugins/recraft/src/credentials.js +13 -0
- package/dist/plugins/recraft/src/index.js +39 -28
- package/dist/plugins/reddit/src/credentials.js +26 -0
- package/dist/plugins/reddit/src/index.js +30 -34
- package/dist/plugins/replicate/src/credentials.js +23 -0
- package/dist/plugins/replicate/src/index.js +18 -28
- package/dist/plugins/rocketchat/src/credentials.js +17 -0
- package/dist/plugins/rocketchat/src/index.js +8 -19
- package/dist/plugins/rundeck/src/credentials.js +16 -0
- package/dist/plugins/rundeck/src/index.js +12 -28
- package/dist/plugins/salesforce/src/credentials.js +73 -0
- package/dist/plugins/salesforce/src/index.js +6 -0
- package/dist/plugins/salesforce/src/metadata.js +3 -16
- package/dist/plugins/salesforce/src/shared.js +25 -100
- package/dist/plugins/salesforce/src/sobjects.js +10 -9
- package/dist/plugins/salesmate/src/credentials.js +17 -0
- package/dist/plugins/salesmate/src/index.js +20 -37
- package/dist/plugins/securityScorecard/src/credentials.js +22 -0
- package/dist/plugins/securityScorecard/src/index.js +24 -37
- package/dist/plugins/segment/src/credentials.js +16 -0
- package/dist/plugins/segment/src/index.js +12 -16
- package/dist/plugins/sendgrid/src/credentials.js +13 -0
- package/dist/plugins/sendgrid/src/index.js +31 -35
- package/dist/plugins/sendy/src/credentials.js +18 -0
- package/dist/plugins/sendy/src/index.js +18 -24
- package/dist/plugins/sentry/src/credentials.js +16 -0
- package/dist/plugins/sentry/src/index.js +30 -98
- package/dist/plugins/servicenow/src/credentials.js +13 -0
- package/dist/plugins/servicenow/src/index.js +22 -41
- package/dist/plugins/shiftAtlas/src/graph.js +2 -2
- package/dist/plugins/shiftAtlas/src/index.js +2 -0
- package/dist/plugins/shiftAtlas/src/shared.js +3 -1
- package/dist/plugins/shiftBwm/src/index.js +4 -2
- package/dist/plugins/shiftBwm/src/shared.js +41 -16
- package/dist/plugins/shiftCrm/src/access.js +2 -2
- package/dist/plugins/shiftCrm/src/accounts.js +3 -3
- package/dist/plugins/shiftCrm/src/activities.js +3 -3
- package/dist/plugins/shiftCrm/src/credentials.js +6 -0
- package/dist/plugins/shiftCrm/src/index.js +2 -0
- package/dist/plugins/shiftCrm/src/opportunities.js +3 -3
- package/dist/plugins/shiftCrm/src/people.js +3 -3
- package/dist/plugins/shiftCrm/src/records.js +2 -2
- package/dist/plugins/shiftCrm/src/shared.js +2 -1
- package/dist/plugins/shiftCrm/src/tasks.js +3 -3
- package/dist/plugins/shiftObjects/src/credentials.js +2 -0
- package/dist/plugins/shiftObjects/src/index.js +2 -0
- package/dist/plugins/shiftObjects/src/objects.js +4 -3
- package/dist/plugins/shiftOcr/src/credentials.js +8 -0
- package/dist/plugins/shiftOcr/src/index.js +14 -8
- package/dist/plugins/shiftPages/src/index.js +2 -0
- package/dist/plugins/shiftPages/src/pages.js +5 -3
- package/dist/plugins/shiftPages/src/shared.js +3 -1
- package/dist/plugins/shiftTranscription/src/index.js +2 -0
- package/dist/plugins/shiftTranscription/src/shared.js +11 -1
- package/dist/plugins/shiftTranscription/src/transcription.js +5 -5
- package/dist/plugins/shiftWork/src/index.js +2 -0
- package/dist/plugins/shiftWork/src/issue-views.js +5 -5
- package/dist/plugins/shiftWork/src/issues.js +11 -7
- package/dist/plugins/shiftWork/src/projects.js +3 -3
- package/dist/plugins/shiftWork/src/shared.js +3 -1
- package/dist/plugins/shopify/src/credentials.js +16 -0
- package/dist/plugins/shopify/src/index.js +32 -59
- package/dist/plugins/signl4/src/credentials.js +17 -0
- package/dist/plugins/signl4/src/index.js +28 -29
- package/dist/plugins/slack/src/credentials.js +19 -0
- package/dist/plugins/slack/src/index.js +51 -60
- package/dist/plugins/sms77/src/credentials.js +17 -0
- package/dist/plugins/sms77/src/index.js +11 -16
- package/dist/plugins/splunk/src/credentials.js +19 -0
- package/dist/plugins/splunk/src/index.js +32 -74
- package/dist/plugins/spotify/src/credentials.js +19 -0
- package/dist/plugins/spotify/src/index.js +40 -55
- package/dist/plugins/stackby/src/credentials.js +13 -0
- package/dist/plugins/stackby/src/index.js +14 -23
- package/dist/plugins/steel/src/auth.js +27 -0
- package/dist/plugins/steel/src/browser.js +4 -3
- package/dist/plugins/steel/src/captchas.js +4 -3
- package/dist/plugins/steel/src/extensions.js +3 -2
- package/dist/plugins/steel/src/files.js +9 -10
- package/dist/plugins/steel/src/index.js +2 -0
- package/dist/plugins/steel/src/page/tools.js +3 -3
- package/dist/plugins/steel/src/profiles.js +4 -3
- package/dist/plugins/steel/src/sessions.js +13 -13
- package/dist/plugins/steel/src/shared.js +21 -51
- package/dist/plugins/storyblok/src/credentials.js +37 -0
- package/dist/plugins/storyblok/src/index.js +22 -66
- package/dist/plugins/strapi/src/credentials.js +71 -0
- package/dist/plugins/strapi/src/index.js +36 -70
- package/dist/plugins/strava/src/credentials.js +19 -0
- package/dist/plugins/strava/src/index.js +16 -33
- package/dist/plugins/stripe/src/credentials.js +19 -0
- package/dist/plugins/stripe/src/index.js +44 -58
- package/dist/plugins/supabase/src/credentials.js +30 -0
- package/dist/plugins/supabase/src/index.js +18 -40
- package/dist/plugins/syncromsp/src/credentials.js +16 -0
- package/dist/plugins/syncromsp/src/index.js +37 -70
- package/dist/plugins/tapfiliate/src/credentials.js +13 -0
- package/dist/plugins/tapfiliate/src/index.js +21 -31
- package/dist/plugins/telegram/src/credentials.js +20 -0
- package/dist/plugins/telegram/src/index.js +31 -39
- package/dist/plugins/thehive/src/credentials.js +14 -0
- package/dist/plugins/thehive/src/index.js +33 -50
- package/dist/plugins/thehiveProject/src/credentials.js +16 -0
- package/dist/plugins/thehiveProject/src/index.js +53 -122
- package/dist/plugins/todoist/src/credentials.js +26 -0
- package/dist/plugins/todoist/src/index.js +49 -79
- package/dist/plugins/together/src/credentials.js +16 -0
- package/dist/plugins/together/src/index.js +31 -33
- package/dist/plugins/travisci/src/credentials.js +24 -0
- package/dist/plugins/travisci/src/index.js +16 -30
- package/dist/plugins/trello/src/credentials.js +29 -0
- package/dist/plugins/trello/src/index.js +49 -64
- package/dist/plugins/twake/src/credentials.js +16 -0
- package/dist/plugins/twake/src/index.js +8 -10
- package/dist/plugins/twilio/src/credentials.js +23 -0
- package/dist/plugins/twilio/src/index.js +12 -26
- package/dist/plugins/twist/src/credentials.js +13 -0
- package/dist/plugins/twist/src/index.js +32 -44
- package/dist/plugins/twitter/src/credentials.js +16 -0
- package/dist/plugins/twitter/src/index.js +25 -37
- package/dist/plugins/typesafe/src/credentials.js +28 -0
- package/dist/plugins/typesafe/src/index.js +3 -1
- package/dist/plugins/typesafe/src/shared.js +23 -35
- package/dist/plugins/unleashedSoftware/src/credentials.js +21 -0
- package/dist/plugins/unleashedSoftware/src/index.js +13 -37
- package/dist/plugins/uplead/src/credentials.js +16 -0
- package/dist/plugins/uplead/src/index.js +11 -16
- package/dist/plugins/uproc/src/credentials.js +14 -0
- package/dist/plugins/uproc/src/index.js +7 -10
- package/dist/plugins/uptimerobot/src/credentials.js +14 -0
- package/dist/plugins/uptimerobot/src/index.js +28 -39
- package/dist/plugins/urlscanio/src/credentials.js +13 -0
- package/dist/plugins/urlscanio/src/index.js +13 -22
- package/dist/plugins/vercel/src/credentials.js +19 -0
- package/dist/plugins/vercel/src/deployments.js +27 -11
- package/dist/plugins/vercel/src/env.js +31 -12
- package/dist/plugins/vercel/src/index.js +2 -0
- package/dist/plugins/vercel/src/projects.js +6 -3
- package/dist/plugins/vercel/src/shared.js +32 -37
- package/dist/plugins/vero/src/credentials.js +17 -0
- package/dist/plugins/vero/src/index.js +18 -21
- package/dist/plugins/vonage/src/credentials.js +17 -0
- package/dist/plugins/vonage/src/index.js +14 -18
- package/dist/plugins/wekan/src/credentials.js +16 -0
- package/dist/plugins/wekan/src/index.js +33 -46
- package/dist/plugins/wolt/src/account.js +6 -0
- package/dist/plugins/wolt/src/catalog.js +2 -2
- package/dist/plugins/wolt/src/credentials.js +64 -0
- package/dist/plugins/wolt/src/index.js +8 -3
- package/dist/plugins/wolt/src/orders.js +2 -2
- package/dist/plugins/wolt/src/public.js +91 -0
- package/dist/plugins/wolt/src/shared.js +49 -158
- package/dist/plugins/woocommerce/src/credentials.js +16 -0
- package/dist/plugins/woocommerce/src/index.js +19 -37
- package/dist/plugins/wordpress/src/credentials.js +16 -0
- package/dist/plugins/wordpress/src/index.js +23 -42
- package/dist/plugins/xai/src/credentials.js +13 -0
- package/dist/plugins/xai/src/index.js +32 -31
- package/dist/plugins/xero/src/credentials.js +17 -0
- package/dist/plugins/xero/src/index.js +19 -36
- package/dist/plugins/yourls/src/credentials.js +17 -0
- package/dist/plugins/yourls/src/index.js +13 -23
- package/dist/plugins/zammad/src/credentials.js +15 -0
- package/dist/plugins/zammad/src/index.js +27 -47
- package/dist/plugins/zendesk/src/credentials.js +26 -0
- package/dist/plugins/zendesk/src/index.js +29 -48
- package/dist/plugins/zoho/src/credentials.js +17 -0
- package/dist/plugins/zoho/src/index.js +18 -38
- package/dist/plugins/zoom/src/credentials.js +19 -0
- package/dist/plugins/zoom/src/index.js +15 -30
- package/dist/plugins/zulip/src/credentials.js +16 -0
- package/dist/plugins/zulip/src/index.js +36 -42
- package/dist/sdk.d.ts +8 -0
- package/dist/sdk.js +3 -0
- package/package.json +2 -1
- package/dist/plugins/_shared/authedFetch.js +0 -33
- package/dist/plugins/_shared/tokenRefresh.js +0 -41
- package/dist/tests/helpers/engine-harness.d.ts +0 -1
- package/dist/tests/helpers/engine-harness.js +0 -236
|
@@ -1,43 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import { credentialOk, jsonAnswer, jsonOrAcknowledged, pathSegment, } from "../../_shared/credentials.js";
|
|
2
|
+
import { bambooHrCredential } from "./credentials.js";
|
|
3
|
+
async function apiRequest(ctx, method, path, body, query) {
|
|
4
|
+
const res = await credentialOk(ctx, bambooHrCredential, "bambooHr", {
|
|
5
|
+
target: "api",
|
|
6
|
+
path,
|
|
7
7
|
method,
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
method !== "DELETE") {
|
|
18
|
-
opts.body = JSON.stringify(body);
|
|
19
|
-
}
|
|
20
|
-
const res = await fetch(url, opts);
|
|
21
|
-
if (!res.ok) {
|
|
22
|
-
const text = await res.text();
|
|
23
|
-
throw new Error(`BambooHR API error ${res.status}: ${text}`);
|
|
24
|
-
}
|
|
25
|
-
if (res.status === 204 || res.headers.get("content-length") === "0")
|
|
26
|
-
return { success: true };
|
|
27
|
-
const contentType = res.headers.get("content-type") ?? "";
|
|
28
|
-
if (contentType.includes("application/json"))
|
|
29
|
-
return res.json();
|
|
30
|
-
return { success: true };
|
|
31
|
-
}
|
|
32
|
-
function getConn(ctx) {
|
|
33
|
-
return {
|
|
34
|
-
subdomain: ctx.connection.config.subdomain,
|
|
35
|
-
apiKey: ctx.connection.config.apiKey,
|
|
36
|
-
};
|
|
8
|
+
query,
|
|
9
|
+
...(body &&
|
|
10
|
+
Object.keys(body).length > 0 &&
|
|
11
|
+
method !== "GET" &&
|
|
12
|
+
method !== "DELETE"
|
|
13
|
+
? { json: body }
|
|
14
|
+
: {}),
|
|
15
|
+
});
|
|
16
|
+
return jsonOrAcknowledged(res);
|
|
37
17
|
}
|
|
38
18
|
export default function bambooHr(rl) {
|
|
39
19
|
rl.setName("bambooHr");
|
|
40
20
|
rl.setVersion("0.1.0");
|
|
21
|
+
rl.setCredential(bambooHrCredential);
|
|
41
22
|
rl.setConnectionSchema({
|
|
42
23
|
subdomain: {
|
|
43
24
|
type: "string",
|
|
@@ -93,19 +74,13 @@ export default function bambooHr(rl) {
|
|
|
93
74
|
},
|
|
94
75
|
},
|
|
95
76
|
async execute(input, ctx) {
|
|
96
|
-
const { subdomain, apiKey } = getConn(ctx);
|
|
97
77
|
const body = input;
|
|
98
|
-
const res = await
|
|
78
|
+
const res = await credentialOk(ctx, bambooHrCredential, "bambooHr", {
|
|
79
|
+
target: "api",
|
|
80
|
+
path: "employees",
|
|
99
81
|
method: "POST",
|
|
100
|
-
|
|
101
|
-
"Content-Type": "application/json",
|
|
102
|
-
Accept: "application/json",
|
|
103
|
-
Authorization: `Basic ${btoa(`${apiKey}:x`)}`,
|
|
104
|
-
},
|
|
105
|
-
body: JSON.stringify(body),
|
|
82
|
+
json: body,
|
|
106
83
|
});
|
|
107
|
-
if (!res.ok)
|
|
108
|
-
throw new Error(`BambooHR error ${res.status}: ${await res.text()}`);
|
|
109
84
|
const location = res.headers.get("location") ?? "";
|
|
110
85
|
const employeeId = location.split("/").pop();
|
|
111
86
|
return { id: employeeId };
|
|
@@ -128,14 +103,15 @@ export default function bambooHr(rl) {
|
|
|
128
103
|
},
|
|
129
104
|
async execute(input, ctx) {
|
|
130
105
|
const { employeeId, fields } = input;
|
|
131
|
-
const { subdomain, apiKey } = getConn(ctx);
|
|
132
106
|
let fieldList = fields ?? "all";
|
|
133
107
|
if (fieldList === "all") {
|
|
134
|
-
const dir = (await apiRequest(
|
|
108
|
+
const dir = (await apiRequest(ctx, "GET", "employees/directory"));
|
|
135
109
|
const dirFields = dir.fields ?? [];
|
|
136
110
|
fieldList = dirFields.map((f) => f.id).join(",");
|
|
137
111
|
}
|
|
138
|
-
return apiRequest(
|
|
112
|
+
return apiRequest(ctx, "GET", `employees/${pathSegment(employeeId)}`, undefined, {
|
|
113
|
+
fields: fieldList,
|
|
114
|
+
});
|
|
139
115
|
},
|
|
140
116
|
});
|
|
141
117
|
rl.registerAction("employee.list", {
|
|
@@ -150,8 +126,7 @@ export default function bambooHr(rl) {
|
|
|
150
126
|
},
|
|
151
127
|
async execute(input, ctx) {
|
|
152
128
|
const { limit } = (input ?? {});
|
|
153
|
-
const
|
|
154
|
-
const data = (await apiRequest(subdomain, apiKey, "GET", "employees/directory"));
|
|
129
|
+
const data = (await apiRequest(ctx, "GET", "employees/directory"));
|
|
155
130
|
const employees = data.employees ?? [];
|
|
156
131
|
if (limit)
|
|
157
132
|
return employees.slice(0, limit);
|
|
@@ -190,8 +165,7 @@ export default function bambooHr(rl) {
|
|
|
190
165
|
},
|
|
191
166
|
async execute(input, ctx) {
|
|
192
167
|
const { employeeId, ...fields } = input;
|
|
193
|
-
|
|
194
|
-
await apiRequest(subdomain, apiKey, "POST", `employees/${employeeId}`, fields);
|
|
168
|
+
await apiRequest(ctx, "POST", `employees/${pathSegment(employeeId)}`, fields);
|
|
195
169
|
return { success: true };
|
|
196
170
|
},
|
|
197
171
|
});
|
|
@@ -213,8 +187,7 @@ export default function bambooHr(rl) {
|
|
|
213
187
|
},
|
|
214
188
|
async execute(input, ctx) {
|
|
215
189
|
const { employeeId, limit } = input;
|
|
216
|
-
const
|
|
217
|
-
const data = (await apiRequest(subdomain, apiKey, "GET", `employees/${employeeId}/files/view/`));
|
|
190
|
+
const data = (await apiRequest(ctx, "GET", `employees/${pathSegment(employeeId)}/files/view/`));
|
|
218
191
|
const categories = data.categories ?? [];
|
|
219
192
|
// Flatten files from all categories
|
|
220
193
|
const files = [];
|
|
@@ -240,8 +213,7 @@ export default function bambooHr(rl) {
|
|
|
240
213
|
},
|
|
241
214
|
async execute(input, ctx) {
|
|
242
215
|
const { employeeId, fileId } = input;
|
|
243
|
-
|
|
244
|
-
await apiRequest(subdomain, apiKey, "DELETE", `employees/${employeeId}/files/${fileId}`);
|
|
216
|
+
await apiRequest(ctx, "DELETE", `employees/${pathSegment(employeeId)}/files/${pathSegment(fileId)}`);
|
|
245
217
|
return { success: true };
|
|
246
218
|
},
|
|
247
219
|
});
|
|
@@ -263,10 +235,9 @@ export default function bambooHr(rl) {
|
|
|
263
235
|
},
|
|
264
236
|
async execute(input, ctx) {
|
|
265
237
|
const { employeeId, fileId, shareWithEmployee } = input;
|
|
266
|
-
const { subdomain, apiKey } = getConn(ctx);
|
|
267
238
|
const body = {};
|
|
268
239
|
body.shareWithEmployee = shareWithEmployee ? "yes" : "no";
|
|
269
|
-
await apiRequest(
|
|
240
|
+
await apiRequest(ctx, "POST", `employees/${pathSegment(employeeId)}/files/${pathSegment(fileId)}`, body);
|
|
270
241
|
return { success: true };
|
|
271
242
|
},
|
|
272
243
|
});
|
|
@@ -283,8 +254,7 @@ export default function bambooHr(rl) {
|
|
|
283
254
|
},
|
|
284
255
|
async execute(input, ctx) {
|
|
285
256
|
const { limit } = (input ?? {});
|
|
286
|
-
const
|
|
287
|
-
const data = (await apiRequest(subdomain, apiKey, "GET", "files/view"));
|
|
257
|
+
const data = (await apiRequest(ctx, "GET", "files/view"));
|
|
288
258
|
const categories = data.categories ?? [];
|
|
289
259
|
const files = [];
|
|
290
260
|
for (const cat of categories) {
|
|
@@ -304,8 +274,7 @@ export default function bambooHr(rl) {
|
|
|
304
274
|
},
|
|
305
275
|
async execute(input, ctx) {
|
|
306
276
|
const { fileId } = input;
|
|
307
|
-
|
|
308
|
-
await apiRequest(subdomain, apiKey, "DELETE", `files/${fileId}`);
|
|
277
|
+
await apiRequest(ctx, "DELETE", `files/${pathSegment(fileId)}`);
|
|
309
278
|
return { success: true };
|
|
310
279
|
},
|
|
311
280
|
});
|
|
@@ -322,8 +291,7 @@ export default function bambooHr(rl) {
|
|
|
322
291
|
},
|
|
323
292
|
async execute(input, ctx) {
|
|
324
293
|
const { fileId, shareWithEmployee } = input;
|
|
325
|
-
|
|
326
|
-
await apiRequest(subdomain, apiKey, "POST", `files/${fileId}`, {
|
|
294
|
+
await apiRequest(ctx, "POST", `files/${pathSegment(fileId)}`, {
|
|
327
295
|
shareWithEmployee: shareWithEmployee ? "yes" : "no",
|
|
328
296
|
});
|
|
329
297
|
return { success: true };
|
|
@@ -338,13 +306,19 @@ export default function bambooHr(rl) {
|
|
|
338
306
|
format: {
|
|
339
307
|
type: "string",
|
|
340
308
|
required: false,
|
|
341
|
-
description: "Format: JSON
|
|
309
|
+
description: "Format: JSON (default, parsed), CSV or XML (returned as text)",
|
|
342
310
|
},
|
|
343
311
|
},
|
|
344
312
|
async execute(input, ctx) {
|
|
345
313
|
const { reportId, format = "JSON" } = input;
|
|
346
|
-
|
|
347
|
-
|
|
314
|
+
if (!["JSON", "CSV", "XML"].includes(format))
|
|
315
|
+
throw new Error("bambooHr: format must be JSON, CSV, or XML");
|
|
316
|
+
const res = await credentialOk(ctx, bambooHrCredential, "bambooHr", {
|
|
317
|
+
target: "api",
|
|
318
|
+
path: `reports/${pathSegment(reportId)}/`,
|
|
319
|
+
query: { format, fd: "true", onlyCurrent: "true" },
|
|
320
|
+
});
|
|
321
|
+
return format === "JSON" ? jsonAnswer(res) : res.text();
|
|
348
322
|
},
|
|
349
323
|
});
|
|
350
324
|
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { staticCredential } from "../../_shared/credentials.js";
|
|
2
|
+
/** A project API key, sent as a bearer to Bannerbear's one API origin. */
|
|
3
|
+
export const bannerbearCredential = staticCredential({
|
|
4
|
+
id: "bannerbear",
|
|
5
|
+
auth: { kind: "bearer" },
|
|
6
|
+
local: { secret: "apiKey" },
|
|
7
|
+
targets: {
|
|
8
|
+
api: {
|
|
9
|
+
baseUrl: "https://api.bannerbear.com/v2/",
|
|
10
|
+
methods: ["GET", "POST"],
|
|
11
|
+
},
|
|
12
|
+
},
|
|
13
|
+
probe: {
|
|
14
|
+
target: "api",
|
|
15
|
+
path: "account",
|
|
16
|
+
method: "GET",
|
|
17
|
+
acceptedStatuses: [200],
|
|
18
|
+
},
|
|
19
|
+
});
|
|
@@ -1,29 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { credentialJson, pathSegment } from "../../_shared/credentials.js";
|
|
2
|
+
import { bannerbearCredential } from "./credentials.js";
|
|
3
|
+
function apiRequest(ctx, method, path, body) {
|
|
4
|
+
const json = body && Object.keys(body).length > 0 && method !== "GET" ? body : undefined;
|
|
5
|
+
return credentialJson(ctx, bannerbearCredential, "bannerbear", {
|
|
6
|
+
target: "api",
|
|
7
|
+
path,
|
|
4
8
|
method,
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
Accept: "application/json",
|
|
8
|
-
Authorization: `Bearer ${apiKey}`,
|
|
9
|
-
},
|
|
10
|
-
};
|
|
11
|
-
if (body && Object.keys(body).length > 0 && method !== "GET") {
|
|
12
|
-
opts.body = JSON.stringify(body);
|
|
13
|
-
}
|
|
14
|
-
const res = await fetch(`${BASE_URL}${endpoint}`, opts);
|
|
15
|
-
if (!res.ok) {
|
|
16
|
-
const text = await res.text();
|
|
17
|
-
throw new Error(`Bannerbear API error ${res.status}: ${text}`);
|
|
18
|
-
}
|
|
19
|
-
return res.json();
|
|
20
|
-
}
|
|
21
|
-
function getKey(ctx) {
|
|
22
|
-
return ctx.connection.config.apiKey;
|
|
9
|
+
...(json !== undefined ? { json } : {}),
|
|
10
|
+
});
|
|
23
11
|
}
|
|
24
12
|
export default function bannerbear(rl) {
|
|
25
13
|
rl.setName("bannerbear");
|
|
26
14
|
rl.setVersion("0.1.0");
|
|
15
|
+
rl.setCredential(bannerbearCredential);
|
|
27
16
|
rl.setConnectionSchema({
|
|
28
17
|
apiKey: {
|
|
29
18
|
type: "string",
|
|
@@ -70,7 +59,6 @@ export default function bannerbear(rl) {
|
|
|
70
59
|
},
|
|
71
60
|
async execute(input, ctx) {
|
|
72
61
|
const { templateId, modifications, webhookUrl, metadata, waitForImage, maxTries = 3, } = (input ?? {});
|
|
73
|
-
const apiKey = getKey(ctx);
|
|
74
62
|
const body = { template: templateId };
|
|
75
63
|
if (modifications)
|
|
76
64
|
body.modifications = modifications;
|
|
@@ -78,12 +66,12 @@ export default function bannerbear(rl) {
|
|
|
78
66
|
body.webhook_url = webhookUrl;
|
|
79
67
|
if (metadata)
|
|
80
68
|
body.metadata = metadata;
|
|
81
|
-
let result = (await apiRequest(
|
|
69
|
+
let result = (await apiRequest(ctx, "POST", "images", body));
|
|
82
70
|
if (waitForImage && result.status !== "completed") {
|
|
83
71
|
let tries = maxTries;
|
|
84
72
|
while (tries > 0) {
|
|
85
73
|
await new Promise((r) => setTimeout(r, 2000));
|
|
86
|
-
result = (await apiRequest(
|
|
74
|
+
result = (await apiRequest(ctx, "GET", `images/${pathSegment(result.uid)}`));
|
|
87
75
|
if (result.status === "completed")
|
|
88
76
|
break;
|
|
89
77
|
tries--;
|
|
@@ -103,7 +91,7 @@ export default function bannerbear(rl) {
|
|
|
103
91
|
},
|
|
104
92
|
async execute(input, ctx) {
|
|
105
93
|
const { imageId } = input;
|
|
106
|
-
return apiRequest(
|
|
94
|
+
return apiRequest(ctx, "GET", `images/${pathSegment(imageId)}`);
|
|
107
95
|
},
|
|
108
96
|
});
|
|
109
97
|
// ── Template ────────────────────────────────────────
|
|
@@ -119,14 +107,14 @@ export default function bannerbear(rl) {
|
|
|
119
107
|
},
|
|
120
108
|
async execute(input, ctx) {
|
|
121
109
|
const { templateId } = input;
|
|
122
|
-
return apiRequest(
|
|
110
|
+
return apiRequest(ctx, "GET", `templates/${pathSegment(templateId)}`);
|
|
123
111
|
},
|
|
124
112
|
});
|
|
125
113
|
rl.registerAction("template.list", {
|
|
126
114
|
access: "read",
|
|
127
115
|
description: "List all templates",
|
|
128
116
|
async execute(_input, ctx) {
|
|
129
|
-
return apiRequest(
|
|
117
|
+
return apiRequest(ctx, "GET", "templates");
|
|
130
118
|
},
|
|
131
119
|
});
|
|
132
120
|
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { httpsBase, staticCredential } from "../../_shared/credentials.js";
|
|
2
|
+
/**
|
|
3
|
+
* A database token, sent as `Authorization: Token {token}` to the
|
|
4
|
+
* configured host's /api/ base — Baserow's cloud unless the connection
|
|
5
|
+
* names a self-hosted one, which must be HTTPS.
|
|
6
|
+
*/
|
|
7
|
+
export const baserowCredential = staticCredential({
|
|
8
|
+
id: "baserow",
|
|
9
|
+
auth: { kind: "apiKey", header: "Authorization", prefix: "Token " },
|
|
10
|
+
local: { secret: "token" },
|
|
11
|
+
targets: (config) => ({
|
|
12
|
+
api: {
|
|
13
|
+
baseUrl: httpsBase(config.host ?? "https://api.baserow.io", "api/"),
|
|
14
|
+
methods: ["GET", "POST", "PATCH", "DELETE"],
|
|
15
|
+
},
|
|
16
|
+
}),
|
|
17
|
+
});
|
|
@@ -1,36 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
}
|
|
9
|
-
const opts = {
|
|
1
|
+
import { credentialJson, pathSegment } from "../../_shared/credentials.js";
|
|
2
|
+
import { baserowCredential } from "./credentials.js";
|
|
3
|
+
/** A path beneath the host's /api/ base, signed through the credential. */
|
|
4
|
+
function apiRequest(ctx, method, path, body, query) {
|
|
5
|
+
return credentialJson(ctx, baserowCredential, "baserow", {
|
|
6
|
+
target: "api",
|
|
7
|
+
path,
|
|
10
8
|
method,
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
},
|
|
15
|
-
};
|
|
16
|
-
if (body && method !== "GET" && method !== "DELETE") {
|
|
17
|
-
opts.body = JSON.stringify(body);
|
|
18
|
-
}
|
|
19
|
-
const res = await fetch(url.toString(), opts);
|
|
20
|
-
if (!res.ok) {
|
|
21
|
-
const text = await res.text();
|
|
22
|
-
throw new Error(`Baserow API error ${res.status}: ${text}`);
|
|
23
|
-
}
|
|
24
|
-
if (res.status === 204)
|
|
25
|
-
return { success: true };
|
|
26
|
-
return res.json();
|
|
9
|
+
query,
|
|
10
|
+
...(body && method !== "GET" && method !== "DELETE" ? { json: body } : {}),
|
|
11
|
+
});
|
|
27
12
|
}
|
|
28
|
-
async function paginateAll(
|
|
13
|
+
async function paginateAll(ctx, path, qs, limit) {
|
|
29
14
|
const results = [];
|
|
30
15
|
let page = 1;
|
|
31
16
|
const size = 100;
|
|
32
17
|
while (true) {
|
|
33
|
-
const data = (await apiRequest(
|
|
18
|
+
const data = (await apiRequest(ctx, "GET", path, undefined, {
|
|
34
19
|
...qs,
|
|
35
20
|
page,
|
|
36
21
|
size,
|
|
@@ -44,15 +29,10 @@ async function paginateAll(host, token, endpoint, qs, limit) {
|
|
|
44
29
|
}
|
|
45
30
|
return results;
|
|
46
31
|
}
|
|
47
|
-
function getConn(ctx) {
|
|
48
|
-
return {
|
|
49
|
-
host: ctx.connection.config.host.replace(/\/$/, ""),
|
|
50
|
-
token: ctx.connection.config.token,
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
32
|
export default function baserow(rl) {
|
|
54
33
|
rl.setName("baserow");
|
|
55
34
|
rl.setVersion("0.1.0");
|
|
35
|
+
rl.setCredential(baserowCredential);
|
|
56
36
|
rl.setConnectionSchema({
|
|
57
37
|
host: {
|
|
58
38
|
type: "string",
|
|
@@ -82,8 +62,7 @@ export default function baserow(rl) {
|
|
|
82
62
|
},
|
|
83
63
|
async execute(input, ctx) {
|
|
84
64
|
const { tableId, fields } = input;
|
|
85
|
-
|
|
86
|
-
return apiRequest(host, token, "POST", `/api/database/rows/table/${tableId}/`, fields);
|
|
65
|
+
return apiRequest(ctx, "POST", `database/rows/table/${pathSegment(tableId)}/`, fields);
|
|
87
66
|
},
|
|
88
67
|
});
|
|
89
68
|
rl.registerAction("row.get", {
|
|
@@ -95,8 +74,7 @@ export default function baserow(rl) {
|
|
|
95
74
|
},
|
|
96
75
|
async execute(input, ctx) {
|
|
97
76
|
const { tableId, rowId } = input;
|
|
98
|
-
|
|
99
|
-
return apiRequest(host, token, "GET", `/api/database/rows/table/${tableId}/${rowId}/`);
|
|
77
|
+
return apiRequest(ctx, "GET", `database/rows/table/${pathSegment(tableId)}/${pathSegment(rowId)}/`);
|
|
100
78
|
},
|
|
101
79
|
});
|
|
102
80
|
rl.registerAction("row.list", {
|
|
@@ -118,13 +96,12 @@ export default function baserow(rl) {
|
|
|
118
96
|
},
|
|
119
97
|
async execute(input, ctx) {
|
|
120
98
|
const { tableId, search, orderBy, limit } = input;
|
|
121
|
-
const { host, token } = getConn(ctx);
|
|
122
99
|
const qs = {};
|
|
123
100
|
if (search)
|
|
124
101
|
qs.search = search;
|
|
125
102
|
if (orderBy)
|
|
126
103
|
qs.order_by = orderBy;
|
|
127
|
-
return paginateAll(
|
|
104
|
+
return paginateAll(ctx, `database/rows/table/${pathSegment(tableId)}/`, qs, limit);
|
|
128
105
|
},
|
|
129
106
|
});
|
|
130
107
|
rl.registerAction("row.update", {
|
|
@@ -141,8 +118,7 @@ export default function baserow(rl) {
|
|
|
141
118
|
},
|
|
142
119
|
async execute(input, ctx) {
|
|
143
120
|
const { tableId, rowId, fields } = input;
|
|
144
|
-
|
|
145
|
-
return apiRequest(host, token, "PATCH", `/api/database/rows/table/${tableId}/${rowId}/`, fields);
|
|
121
|
+
return apiRequest(ctx, "PATCH", `database/rows/table/${pathSegment(tableId)}/${pathSegment(rowId)}/`, fields);
|
|
146
122
|
},
|
|
147
123
|
});
|
|
148
124
|
rl.registerAction("row.delete", {
|
|
@@ -154,8 +130,7 @@ export default function baserow(rl) {
|
|
|
154
130
|
},
|
|
155
131
|
async execute(input, ctx) {
|
|
156
132
|
const { tableId, rowId } = input;
|
|
157
|
-
|
|
158
|
-
await apiRequest(host, token, "DELETE", `/api/database/rows/table/${tableId}/${rowId}/`);
|
|
133
|
+
await apiRequest(ctx, "DELETE", `database/rows/table/${pathSegment(tableId)}/${pathSegment(rowId)}/`);
|
|
159
134
|
return { success: true };
|
|
160
135
|
},
|
|
161
136
|
});
|
|
@@ -172,8 +147,9 @@ export default function baserow(rl) {
|
|
|
172
147
|
},
|
|
173
148
|
async execute(input, ctx) {
|
|
174
149
|
const { tableId, items } = input;
|
|
175
|
-
|
|
176
|
-
|
|
150
|
+
return apiRequest(ctx, "POST", `database/rows/table/${pathSegment(tableId)}/batch/`, {
|
|
151
|
+
items,
|
|
152
|
+
});
|
|
177
153
|
},
|
|
178
154
|
});
|
|
179
155
|
rl.registerAction("row.batchUpdate", {
|
|
@@ -189,8 +165,7 @@ export default function baserow(rl) {
|
|
|
189
165
|
},
|
|
190
166
|
async execute(input, ctx) {
|
|
191
167
|
const { tableId, items } = input;
|
|
192
|
-
|
|
193
|
-
return apiRequest(host, token, "PATCH", `/api/database/rows/table/${tableId}/batch/`, { items });
|
|
168
|
+
return apiRequest(ctx, "PATCH", `database/rows/table/${pathSegment(tableId)}/batch/`, { items });
|
|
194
169
|
},
|
|
195
170
|
});
|
|
196
171
|
rl.registerAction("row.batchDelete", {
|
|
@@ -206,8 +181,7 @@ export default function baserow(rl) {
|
|
|
206
181
|
},
|
|
207
182
|
async execute(input, ctx) {
|
|
208
183
|
const { tableId, rowIds } = input;
|
|
209
|
-
|
|
210
|
-
await apiRequest(host, token, "POST", `/api/database/rows/table/${tableId}/batch-delete/`, {
|
|
184
|
+
await apiRequest(ctx, "POST", `database/rows/table/${pathSegment(tableId)}/batch-delete/`, {
|
|
211
185
|
items: rowIds,
|
|
212
186
|
});
|
|
213
187
|
return { success: true, deleted: rowIds };
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { staticCredential } from "../../_shared/credentials.js";
|
|
2
|
+
/** A personal API token, sent as the auth_token query parameter. */
|
|
3
|
+
export const beeminderCredential = staticCredential({
|
|
4
|
+
id: "beeminder",
|
|
5
|
+
auth: { kind: "queryKey", param: "auth_token" },
|
|
6
|
+
local: { secret: "apiToken" },
|
|
7
|
+
targets: {
|
|
8
|
+
api: {
|
|
9
|
+
baseUrl: "https://www.beeminder.com/api/v1/",
|
|
10
|
+
methods: ["GET", "POST", "PUT", "DELETE"],
|
|
11
|
+
},
|
|
12
|
+
},
|
|
13
|
+
probe: {
|
|
14
|
+
target: "api",
|
|
15
|
+
path: "users/me.json",
|
|
16
|
+
method: "GET",
|
|
17
|
+
acceptedStatuses: [200],
|
|
18
|
+
},
|
|
19
|
+
});
|