diff --git a/components/trengo/actions/list-help-centers/list-help-centers.mjs b/components/trengo/actions/list-help-centers/list-help-centers.mjs new file mode 100644 index 0000000000000..9902135dd0172 --- /dev/null +++ b/components/trengo/actions/list-help-centers/list-help-centers.mjs @@ -0,0 +1,42 @@ +import utils from "../../common/utils.mjs"; +import app from "../../trengo.app.mjs"; + +export default { + type: "action", + key: "trengo-list-help-centers", + version: "0.0.1", + annotations: { + destructiveHint: false, + openWorldHint: true, + readOnlyHint: true, + }, + name: "List Help Centers", + description: "List all help centers. [See the documentation](https://developers.trengo.com/reference/list-all-help-centers)", + props: { + app, + maxResults: { + type: "integer", + label: "Max Results", + description: "Maximum number of help centers to return (if not specified, all results will be returned)", + optional: true, + }, + }, + async run({ $ }) { + const helpCenters = []; + const resourcesStream = utils.getResourcesStream({ + resourceFn: this.app.getHelpCenters, + resourceFnArgs: {}, + }); + for await (const item of resourcesStream) { + helpCenters.push(item); + if (this.maxResults && helpCenters.length >= this.maxResults) { + break; + } + } + const length = helpCenters.length; + $.export("$summary", `Successfully retrieved ${length} help center${length === 1 + ? "" + : "s"}`); + return helpCenters; + }, +}; diff --git a/components/trengo/package.json b/components/trengo/package.json index 7caf280627160..4558650e20e33 100644 --- a/components/trengo/package.json +++ b/components/trengo/package.json @@ -1,6 +1,6 @@ { "name": "@pipedream/trengo", - "version": "0.5.0", + "version": "0.6.0", "description": "Pipedream Trengo Components", "main": "trengo.app.mjs", "keywords": [