From 406ded3c4ec6c6677832b28fc175872040434d57 Mon Sep 17 00:00:00 2001 From: Luan Cazarine Date: Thu, 29 Aug 2024 16:08:02 -0300 Subject: [PATCH 1/5] gptzero_detect_ai init --- .../actions/scan-file/scan-file.mjs | 52 +++++++++++ .../actions/scan-text/scan-text.mjs | 41 +++++++++ .../gptzero_detect_ai.app.mjs | 86 +++++++++++++++++-- components/gptzero_detect_ai/package.json | 2 +- 4 files changed, 175 insertions(+), 6 deletions(-) create mode 100644 components/gptzero_detect_ai/actions/scan-file/scan-file.mjs create mode 100644 components/gptzero_detect_ai/actions/scan-text/scan-text.mjs diff --git a/components/gptzero_detect_ai/actions/scan-file/scan-file.mjs b/components/gptzero_detect_ai/actions/scan-file/scan-file.mjs new file mode 100644 index 0000000000000..2593b4a4cf063 --- /dev/null +++ b/components/gptzero_detect_ai/actions/scan-file/scan-file.mjs @@ -0,0 +1,52 @@ +import gptzeroDetectAi from "../../gptzero_detect_ai.app.mjs"; +import { axios } from "@pipedream/platform"; + +export default { + key: "gptzero_detect_ai-scan-file", + name: "Scan File for AI Detection", + description: "This endpoint takes in file(s) input and returns the model's result. By default, the maximum number of files that can be submitted simultaneously is 50, and the maximum file size for all files combined is 15 MB. Each file's document will be truncated to 50,000 characters. [See the documentation](https://gptzero.stoplight.io/docs/gptzero-api/0a8e7efa751a6-ai-detection-on-an-array-of-files)", + version: "0.0.{{ts}}", + type: "action", + props: { + gptzeroDetectAi, + files: { + propDefinition: [ + gptzeroDetectAi, + "files", + ], + }, + version: { + propDefinition: [ + gptzeroDetectAi, + "version", + ], + optional: true, + }, + }, + async run({ $ }) { + if (this.files.length > 50) { + throw new Error("The maximum number of files that can be submitted simultaneously is 50."); + } + + let totalFileSize = 0; + for (const file of this.files) { + const response = await axios($, { + method: "HEAD", + url: file, + }); + totalFileSize += parseInt(response["content-length"], 10); + } + + if (totalFileSize > 15 * 1024 * 1024) { + throw new Error("The maximum file size for all files combined is 15 MB."); + } + + const response = await this.gptzeroDetectAi.detectFiles({ + files: this.files, + version: this.version, + }); + + $.export("$summary", `Successfully scanned ${this.files.length} file(s) for AI detection`); + return response; + }, +}; diff --git a/components/gptzero_detect_ai/actions/scan-text/scan-text.mjs b/components/gptzero_detect_ai/actions/scan-text/scan-text.mjs new file mode 100644 index 0000000000000..6a54daa62e4d4 --- /dev/null +++ b/components/gptzero_detect_ai/actions/scan-text/scan-text.mjs @@ -0,0 +1,41 @@ +import gptzeroDetectAi from "../../gptzero_detect_ai.app.mjs"; +import { axios } from "@pipedream/platform"; + +export default { + key: "gptzero_detect_ai-scan-text", + name: "Scan Text for AI Detection", + description: "This endpoint takes in a single text input and runs AI detection. The document will be truncated to 50,000 characters. [See the documentation](https://gptzero.stoplight.io/docs/gptzero-api/d2144a785776b-ai-detection-on-single-string)", + version: "0.0.{{ts}}", + type: "action", + props: { + gptzeroDetectAi, + document: { + propDefinition: [ + gptzeroDetectAi, + "document", + ], + }, + version: { + propDefinition: [ + gptzeroDetectAi, + "version", + ], + }, + multilingual: { + propDefinition: [ + gptzeroDetectAi, + "multilingual", + ], + }, + }, + async run({ $ }) { + const response = await this.gptzeroDetectAi.detectText({ + document: this.document, + version: this.version, + multilingual: this.multilingual, + }); + + $.export("$summary", "Successfully ran AI detection on the document."); + return response; + }, +}; diff --git a/components/gptzero_detect_ai/gptzero_detect_ai.app.mjs b/components/gptzero_detect_ai/gptzero_detect_ai.app.mjs index b2fd26df8aca2..2e3f88c03dfc8 100644 --- a/components/gptzero_detect_ai/gptzero_detect_ai.app.mjs +++ b/components/gptzero_detect_ai/gptzero_detect_ai.app.mjs @@ -1,11 +1,87 @@ +import { axios } from "@pipedream/platform"; + export default { type: "app", app: "gptzero_detect_ai", - propDefinitions: {}, + propDefinitions: { + files: { + type: "string[]", + label: "Files", + description: "A list of files to analyze. Each file's document will be truncated to 50,000 characters.", + }, + version: { + type: "string", + label: "Version", + description: "Optionally, you can specify the desired version of the detector. Defaults to the latest version.", + optional: true, + }, + document: { + type: "string", + label: "Document", + description: "The single document you want to analyze. The document will be truncated to 50,000 characters.", + }, + multilingual: { + type: "boolean", + label: "Multilingual", + description: "When this option is `true`, a special multilingual AI detection model will be used. Currently supported languages are French and Spanish.", + optional: true, + }, + }, methods: { - // this.$auth contains connected account data - authKeys() { - console.log(Object.keys(this.$auth)); + _baseUrl() { + return "https://api.gptzero.me"; + }, + async _makeRequest(opts = {}) { + const { + $ = this, method = "GET", path = "/", headers, ...otherOpts + } = opts; + return axios($, { + ...otherOpts, + method, + url: this._baseUrl() + path, + headers: { + ...headers, + "x-api-key": this.$auth.api_key, + }, + }); + }, + async detectFiles({ + files, version, ...otherOpts + }) { + const formData = new FormData(); + files.forEach((file, index) => { + formData.append(`files[${index}]`, file); + }); + if (version) { + formData.append("version", version); + } + return this._makeRequest({ + method: "POST", + path: "/v2/predict/files", + headers: { + "Content-Type": "multipart/form-data", + }, + data: formData, + ...otherOpts, + }); + }, + async detectText({ + document, version, multilingual, ...otherOpts + }) { + const data = { + document, + version, + multilingual, + }; + return this._makeRequest({ + method: "POST", + path: "/v2/predict/text", + headers: { + "Content-Type": "application/json", + }, + data, + ...otherOpts, + }); }, }, -}; \ No newline at end of file +}; diff --git a/components/gptzero_detect_ai/package.json b/components/gptzero_detect_ai/package.json index be9dde3b506ca..83d7eb38becb2 100644 --- a/components/gptzero_detect_ai/package.json +++ b/components/gptzero_detect_ai/package.json @@ -12,4 +12,4 @@ "publishConfig": { "access": "public" } -} \ No newline at end of file +} From b7ffca88d17200534e3fe289f17e771756ad9164 Mon Sep 17 00:00:00 2001 From: Luan Cazarine Date: Wed, 11 Sep 2024 10:59:45 -0300 Subject: [PATCH 2/5] [Components] gptzero_detect_ai #13763 Actions - Scan File - Scan Text --- .../actions/scan-file/scan-file.mjs | 45 ++++------ .../actions/scan-text/scan-text.mjs | 32 +++---- components/gptzero_detect_ai/common/utils.mjs | 31 +++++++ .../gptzero_detect_ai.app.mjs | 85 +++++-------------- components/gptzero_detect_ai/package.json | 8 +- 5 files changed, 89 insertions(+), 112 deletions(-) create mode 100644 components/gptzero_detect_ai/common/utils.mjs diff --git a/components/gptzero_detect_ai/actions/scan-file/scan-file.mjs b/components/gptzero_detect_ai/actions/scan-file/scan-file.mjs index 2593b4a4cf063..a281b13de2bb5 100644 --- a/components/gptzero_detect_ai/actions/scan-file/scan-file.mjs +++ b/components/gptzero_detect_ai/actions/scan-file/scan-file.mjs @@ -1,49 +1,40 @@ +import { ConfigurationError } from "@pipedream/platform"; +import FormData from "form-data"; +import fs from "fs"; +import { + checkTmp, parseObject, +} from "../../common/utils.mjs"; import gptzeroDetectAi from "../../gptzero_detect_ai.app.mjs"; -import { axios } from "@pipedream/platform"; export default { key: "gptzero_detect_ai-scan-file", name: "Scan File for AI Detection", description: "This endpoint takes in file(s) input and returns the model's result. By default, the maximum number of files that can be submitted simultaneously is 50, and the maximum file size for all files combined is 15 MB. Each file's document will be truncated to 50,000 characters. [See the documentation](https://gptzero.stoplight.io/docs/gptzero-api/0a8e7efa751a6-ai-detection-on-an-array-of-files)", - version: "0.0.{{ts}}", + version: "0.0.1", type: "action", props: { gptzeroDetectAi, files: { - propDefinition: [ - gptzeroDetectAi, - "files", - ], - }, - version: { - propDefinition: [ - gptzeroDetectAi, - "version", - ], - optional: true, + type: "string[]", + label: "Files", + description: "A list of files to analyze. Each file's document will be truncated to 50,000 characters.", }, }, async run({ $ }) { if (this.files.length > 50) { - throw new Error("The maximum number of files that can be submitted simultaneously is 50."); - } - - let totalFileSize = 0; - for (const file of this.files) { - const response = await axios($, { - method: "HEAD", - url: file, - }); - totalFileSize += parseInt(response["content-length"], 10); + throw new ConfigurationError("The maximum number of files that can be submitted simultaneously is 50."); } - if (totalFileSize > 15 * 1024 * 1024) { - throw new Error("The maximum file size for all files combined is 15 MB."); + const data = new FormData(); + for (const filePath of parseObject(this.files)) { + const file = fs.createReadStream(checkTmp(filePath)); + data.append("files", file); } const response = await this.gptzeroDetectAi.detectFiles({ - files: this.files, - version: this.version, + $, + data, + headers: data.getHeaders(), }); $.export("$summary", `Successfully scanned ${this.files.length} file(s) for AI detection`); diff --git a/components/gptzero_detect_ai/actions/scan-text/scan-text.mjs b/components/gptzero_detect_ai/actions/scan-text/scan-text.mjs index 6a54daa62e4d4..bd2cb6c4abbc1 100644 --- a/components/gptzero_detect_ai/actions/scan-text/scan-text.mjs +++ b/components/gptzero_detect_ai/actions/scan-text/scan-text.mjs @@ -1,38 +1,32 @@ import gptzeroDetectAi from "../../gptzero_detect_ai.app.mjs"; -import { axios } from "@pipedream/platform"; export default { key: "gptzero_detect_ai-scan-text", name: "Scan Text for AI Detection", description: "This endpoint takes in a single text input and runs AI detection. The document will be truncated to 50,000 characters. [See the documentation](https://gptzero.stoplight.io/docs/gptzero-api/d2144a785776b-ai-detection-on-single-string)", - version: "0.0.{{ts}}", + version: "0.0.1", type: "action", props: { gptzeroDetectAi, document: { - propDefinition: [ - gptzeroDetectAi, - "document", - ], - }, - version: { - propDefinition: [ - gptzeroDetectAi, - "version", - ], + type: "string", + label: "Document", + description: "The single document you want to analyze. The document will be truncated to 50,000 characters.", }, multilingual: { - propDefinition: [ - gptzeroDetectAi, - "multilingual", - ], + type: "boolean", + label: "Multilingual", + description: "When this option is `true`, a special multilingual AI detection model will be used. Currently supported languages are French and Spanish.", + optional: true, }, }, async run({ $ }) { const response = await this.gptzeroDetectAi.detectText({ - document: this.document, - version: this.version, - multilingual: this.multilingual, + $, + data: { + document: this.document, + multilingual: this.multilingual, + }, }); $.export("$summary", "Successfully ran AI detection on the document."); diff --git a/components/gptzero_detect_ai/common/utils.mjs b/components/gptzero_detect_ai/common/utils.mjs new file mode 100644 index 0000000000000..0cd1a12b6a4ba --- /dev/null +++ b/components/gptzero_detect_ai/common/utils.mjs @@ -0,0 +1,31 @@ +export const checkTmp = (filename) => { + if (!filename.startsWith("/tmp")) { + return `/tmp/${filename}`; + } + return filename; +}; + +export const parseObject = (obj) => { + if (!obj) return undefined; + + if (Array.isArray(obj)) { + return obj.map((item) => { + if (typeof item === "string") { + try { + return JSON.parse(item); + } catch (e) { + return item; + } + } + return item; + }); + } + if (typeof obj === "string") { + try { + return JSON.parse(obj); + } catch (e) { + return obj; + } + } + return obj; +}; diff --git a/components/gptzero_detect_ai/gptzero_detect_ai.app.mjs b/components/gptzero_detect_ai/gptzero_detect_ai.app.mjs index 2e3f88c03dfc8..709798dfad4aa 100644 --- a/components/gptzero_detect_ai/gptzero_detect_ai.app.mjs +++ b/components/gptzero_detect_ai/gptzero_detect_ai.app.mjs @@ -3,84 +3,39 @@ import { axios } from "@pipedream/platform"; export default { type: "app", app: "gptzero_detect_ai", - propDefinitions: { - files: { - type: "string[]", - label: "Files", - description: "A list of files to analyze. Each file's document will be truncated to 50,000 characters.", - }, - version: { - type: "string", - label: "Version", - description: "Optionally, you can specify the desired version of the detector. Defaults to the latest version.", - optional: true, - }, - document: { - type: "string", - label: "Document", - description: "The single document you want to analyze. The document will be truncated to 50,000 characters.", - }, - multilingual: { - type: "boolean", - label: "Multilingual", - description: "When this option is `true`, a special multilingual AI detection model will be used. Currently supported languages are French and Spanish.", - optional: true, - }, - }, methods: { _baseUrl() { - return "https://api.gptzero.me"; + return "https://api.gptzero.me/v2/predict"; + }, + _headers(headers = {}) { + return { + "Accept": "application/json", + "Content-Type": "application/json", + "x-api-key": `${this.$auth.api_key}`, + ...headers, + }; }, - async _makeRequest(opts = {}) { - const { - $ = this, method = "GET", path = "/", headers, ...otherOpts - } = opts; + _makeRequest({ + $ = this, path, headers, ...opts + }) { return axios($, { - ...otherOpts, - method, url: this._baseUrl() + path, - headers: { - ...headers, - "x-api-key": this.$auth.api_key, - }, + headers: this._headers(headers), + ...opts, }); }, - async detectFiles({ - files, version, ...otherOpts - }) { - const formData = new FormData(); - files.forEach((file, index) => { - formData.append(`files[${index}]`, file); - }); - if (version) { - formData.append("version", version); - } + detectFiles(opts = {}) { return this._makeRequest({ method: "POST", - path: "/v2/predict/files", - headers: { - "Content-Type": "multipart/form-data", - }, - data: formData, - ...otherOpts, + path: "/files", + ...opts, }); }, - async detectText({ - document, version, multilingual, ...otherOpts - }) { - const data = { - document, - version, - multilingual, - }; + detectText(opts = {}) { return this._makeRequest({ method: "POST", - path: "/v2/predict/text", - headers: { - "Content-Type": "application/json", - }, - data, - ...otherOpts, + path: "/text", + ...opts, }); }, }, diff --git a/components/gptzero_detect_ai/package.json b/components/gptzero_detect_ai/package.json index 83d7eb38becb2..61e639ee33a1e 100644 --- a/components/gptzero_detect_ai/package.json +++ b/components/gptzero_detect_ai/package.json @@ -1,6 +1,6 @@ { "name": "@pipedream/gptzero_detect_ai", - "version": "0.0.1", + "version": "0.1.0", "description": "Pipedream GPTZero: Detect AI Components", "main": "gptzero_detect_ai.app.mjs", "keywords": [ @@ -11,5 +11,11 @@ "author": "Pipedream (https://pipedream.com/)", "publishConfig": { "access": "public" + }, + "dependencies": { + "@pipedream/platform": "^3.0.1", + "form-data": "^4.0.0", + "fs": "^0.0.1-security" } } + From f368cbf2ba4c0e43dbe9e018d253e84a31524841 Mon Sep 17 00:00:00 2001 From: Luan Cazarine Date: Wed, 11 Sep 2024 11:01:16 -0300 Subject: [PATCH 3/5] pnpm update --- pnpm-lock.yaml | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index dec4faf287c78..fe9e9f6b70001 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4074,7 +4074,14 @@ importers: '@pipedream/platform': 1.6.0 components/gptzero_detect_ai: - specifiers: {} + specifiers: + '@pipedream/platform': ^3.0.1 + form-data: ^4.0.0 + fs: ^0.0.1-security + dependencies: + '@pipedream/platform': 3.0.1 + form-data: 4.0.0 + fs: 0.0.1-security components/grab_your_reviews: specifiers: {} @@ -13686,7 +13693,7 @@ packages: peerDependencies: '@aws-sdk/client-sso-oidc': ^3.598.0 dependencies: - '@aws-sdk/client-sso-oidc': 3.600.0_tdq3komn4zwyd65w7klbptsu34 + '@aws-sdk/client-sso-oidc': 3.600.0 '@aws-sdk/types': 3.598.0 '@smithy/property-provider': 3.1.3 '@smithy/shared-ini-file-loader': 3.1.3 From defe041e31da44cd17bb896ef71346c68e8e9757 Mon Sep 17 00:00:00 2001 From: Luan Cazarine Date: Thu, 12 Sep 2024 10:02:56 -0300 Subject: [PATCH 4/5] some adjusts --- .../gptzero_detect_ai/actions/scan-file/scan-file.mjs | 11 +++++++++-- .../gptzero_detect_ai/actions/scan-text/scan-text.mjs | 2 +- components/gptzero_detect_ai/package.json | 3 +-- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/components/gptzero_detect_ai/actions/scan-file/scan-file.mjs b/components/gptzero_detect_ai/actions/scan-file/scan-file.mjs index a281b13de2bb5..c4d5577b1799c 100644 --- a/components/gptzero_detect_ai/actions/scan-file/scan-file.mjs +++ b/components/gptzero_detect_ai/actions/scan-file/scan-file.mjs @@ -9,15 +9,22 @@ import gptzeroDetectAi from "../../gptzero_detect_ai.app.mjs"; export default { key: "gptzero_detect_ai-scan-file", name: "Scan File for AI Detection", - description: "This endpoint takes in file(s) input and returns the model's result. By default, the maximum number of files that can be submitted simultaneously is 50, and the maximum file size for all files combined is 15 MB. Each file's document will be truncated to 50,000 characters. [See the documentation](https://gptzero.stoplight.io/docs/gptzero-api/0a8e7efa751a6-ai-detection-on-an-array-of-files)", + description: "This endpoint takes in file(s) input and returns the model's result. [See the documentation](https://gptzero.stoplight.io/docs/gptzero-api/0a8e7efa751a6-ai-detection-on-an-array-of-files)", version: "0.0.1", type: "action", props: { gptzeroDetectAi, + alert: { + type: "alert", + alertType: "info", + content: `By default, the maximum number of files that can be submitted simultaneously is **50**. + \nThe maximum file size for all files combined is **15 MB**. + \nEach file's document will be truncated to **50,000** characters.`, + }, files: { type: "string[]", label: "Files", - description: "A list of files to analyze. Each file's document will be truncated to 50,000 characters.", + description: "A list of paths to files in the `/tmp` directory to analyze. Each file's document will be truncated to 50,000 characters. [See the documentation on working with files](https://pipedream.com/docs/code/nodejs/working-with-files/#writing-a-file-to-tmp).", }, }, async run({ $ }) { diff --git a/components/gptzero_detect_ai/actions/scan-text/scan-text.mjs b/components/gptzero_detect_ai/actions/scan-text/scan-text.mjs index bd2cb6c4abbc1..c3a25d03d8a48 100644 --- a/components/gptzero_detect_ai/actions/scan-text/scan-text.mjs +++ b/components/gptzero_detect_ai/actions/scan-text/scan-text.mjs @@ -11,7 +11,7 @@ export default { document: { type: "string", label: "Document", - description: "The single document you want to analyze. The document will be truncated to 50,000 characters.", + description: "The text you want to analyze. The text will be truncated to 50,000 characters.", }, multilingual: { type: "boolean", diff --git a/components/gptzero_detect_ai/package.json b/components/gptzero_detect_ai/package.json index 61e639ee33a1e..1d3776f2eacde 100644 --- a/components/gptzero_detect_ai/package.json +++ b/components/gptzero_detect_ai/package.json @@ -14,8 +14,7 @@ }, "dependencies": { "@pipedream/platform": "^3.0.1", - "form-data": "^4.0.0", - "fs": "^0.0.1-security" + "form-data": "^4.0.0" } } From 8d6f6a40bcefe589fc6a93213504e5dc4249b8df Mon Sep 17 00:00:00 2001 From: Luan Cazarine Date: Thu, 12 Sep 2024 10:03:33 -0300 Subject: [PATCH 5/5] pnpm update --- pnpm-lock.yaml | 104 ++++++++++++++++++++++++------------------------- 1 file changed, 51 insertions(+), 53 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e4ba58df4c24c..d4a4e623baaa3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4154,11 +4154,9 @@ importers: specifiers: '@pipedream/platform': ^3.0.1 form-data: ^4.0.0 - fs: ^0.0.1-security dependencies: '@pipedream/platform': 3.0.1 form-data: 4.0.0 - fs: 0.0.1-security components/grab_your_reviews: specifiers: {} @@ -12669,55 +12667,6 @@ packages: - aws-crt dev: false - /@aws-sdk/client-sso-oidc/3.600.0_tdq3komn4zwyd65w7klbptsu34: - resolution: {integrity: sha512-7+I8RWURGfzvChyNQSyj5/tKrqRbzRl7H+BnTOf/4Vsw1nFOi5ROhlhD4X/Y0QCTacxnaoNcIrqnY7uGGvVRzw==} - engines: {node: '>=16.0.0'} - dependencies: - '@aws-crypto/sha256-browser': 5.2.0 - '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sts': 3.600.0 - '@aws-sdk/core': 3.598.0 - '@aws-sdk/credential-provider-node': 3.600.0_f7n47caigsrjd2lr2szmwfuee4 - '@aws-sdk/middleware-host-header': 3.598.0 - '@aws-sdk/middleware-logger': 3.598.0 - '@aws-sdk/middleware-recursion-detection': 3.598.0 - '@aws-sdk/middleware-user-agent': 3.598.0 - '@aws-sdk/region-config-resolver': 3.598.0 - '@aws-sdk/types': 3.598.0 - '@aws-sdk/util-endpoints': 3.598.0 - '@aws-sdk/util-user-agent-browser': 3.598.0 - '@aws-sdk/util-user-agent-node': 3.598.0 - '@smithy/config-resolver': 3.0.3 - '@smithy/core': 2.2.3 - '@smithy/fetch-http-handler': 3.2.1 - '@smithy/hash-node': 3.0.2 - '@smithy/invalid-dependency': 3.0.2 - '@smithy/middleware-content-length': 3.0.2 - '@smithy/middleware-endpoint': 3.0.4 - '@smithy/middleware-retry': 3.0.6 - '@smithy/middleware-serde': 3.0.3 - '@smithy/middleware-stack': 3.0.3 - '@smithy/node-config-provider': 3.1.3 - '@smithy/node-http-handler': 3.1.2 - '@smithy/protocol-http': 4.0.3 - '@smithy/smithy-client': 3.1.6 - '@smithy/types': 3.3.0 - '@smithy/url-parser': 3.0.3 - '@smithy/util-base64': 3.0.0 - '@smithy/util-body-length-browser': 3.0.0 - '@smithy/util-body-length-node': 3.0.0 - '@smithy/util-defaults-mode-browser': 3.0.6 - '@smithy/util-defaults-mode-node': 3.0.6 - '@smithy/util-endpoints': 2.0.3 - '@smithy/util-middleware': 3.0.3 - '@smithy/util-retry': 3.0.2 - '@smithy/util-utf8': 3.0.0 - tslib: 2.6.3 - transitivePeerDependencies: - - '@aws-sdk/client-sts' - - aws-crt - dev: false - /@aws-sdk/client-sso/3.423.0: resolution: {integrity: sha512-znIufHkwhCIePgaYciIs3x/+BpzR57CZzbCKHR9+oOvGyufEPPpUT5bFLvbwTgfiVkTjuk6sG/ES3U5Bc+xtrA==} engines: {node: '>=14.0.0'} @@ -12953,7 +12902,55 @@ packages: dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sso-oidc': 3.600.0_tdq3komn4zwyd65w7klbptsu34 + '@aws-sdk/client-sso-oidc': 3.600.0 + '@aws-sdk/core': 3.598.0 + '@aws-sdk/credential-provider-node': 3.600.0_f7n47caigsrjd2lr2szmwfuee4 + '@aws-sdk/middleware-host-header': 3.598.0 + '@aws-sdk/middleware-logger': 3.598.0 + '@aws-sdk/middleware-recursion-detection': 3.598.0 + '@aws-sdk/middleware-user-agent': 3.598.0 + '@aws-sdk/region-config-resolver': 3.598.0 + '@aws-sdk/types': 3.598.0 + '@aws-sdk/util-endpoints': 3.598.0 + '@aws-sdk/util-user-agent-browser': 3.598.0 + '@aws-sdk/util-user-agent-node': 3.598.0 + '@smithy/config-resolver': 3.0.3 + '@smithy/core': 2.2.3 + '@smithy/fetch-http-handler': 3.2.1 + '@smithy/hash-node': 3.0.2 + '@smithy/invalid-dependency': 3.0.2 + '@smithy/middleware-content-length': 3.0.2 + '@smithy/middleware-endpoint': 3.0.4 + '@smithy/middleware-retry': 3.0.6 + '@smithy/middleware-serde': 3.0.3 + '@smithy/middleware-stack': 3.0.3 + '@smithy/node-config-provider': 3.1.3 + '@smithy/node-http-handler': 3.1.2 + '@smithy/protocol-http': 4.0.3 + '@smithy/smithy-client': 3.1.6 + '@smithy/types': 3.3.0 + '@smithy/url-parser': 3.0.3 + '@smithy/util-base64': 3.0.0 + '@smithy/util-body-length-browser': 3.0.0 + '@smithy/util-body-length-node': 3.0.0 + '@smithy/util-defaults-mode-browser': 3.0.6 + '@smithy/util-defaults-mode-node': 3.0.6 + '@smithy/util-endpoints': 2.0.3 + '@smithy/util-middleware': 3.0.3 + '@smithy/util-retry': 3.0.2 + '@smithy/util-utf8': 3.0.0 + tslib: 2.6.3 + transitivePeerDependencies: + - aws-crt + dev: false + + /@aws-sdk/client-sts/3.600.0_dseaa2p5u2yk67qiepewcq3hkq: + resolution: {integrity: sha512-KQG97B7LvTtTiGmjlrG1LRAY8wUvCQzrmZVV5bjrJ/1oXAU7DITYwVbSJeX9NWg6hDuSk0VE3MFwIXS2SvfLIA==} + engines: {node: '>=16.0.0'} + dependencies: + '@aws-crypto/sha256-browser': 5.2.0 + '@aws-crypto/sha256-js': 5.2.0 + '@aws-sdk/client-sso-oidc': 3.600.0 '@aws-sdk/core': 3.598.0 '@aws-sdk/credential-provider-node': 3.600.0_f7n47caigsrjd2lr2szmwfuee4 '@aws-sdk/middleware-host-header': 3.598.0 @@ -12992,6 +12989,7 @@ packages: '@smithy/util-utf8': 3.0.0 tslib: 2.6.3 transitivePeerDependencies: + - '@aws-sdk/client-sso-oidc' - aws-crt dev: false @@ -17293,7 +17291,7 @@ packages: '@aws-sdk/client-sns': 3.423.0 '@aws-sdk/client-sqs': 3.423.0 '@aws-sdk/client-ssm': 3.423.0 - '@aws-sdk/client-sts': 3.600.0 + '@aws-sdk/client-sts': 3.600.0_dseaa2p5u2yk67qiepewcq3hkq '@aws-sdk/s3-request-presigner': 3.609.0 '@pipedream/helper_functions': 0.3.12 '@pipedream/platform': 1.6.5