diff --git a/components/intercom/package.json b/components/intercom/package.json index adb1cbd575763..0cd9b5d28f76e 100644 --- a/components/intercom/package.json +++ b/components/intercom/package.json @@ -1,6 +1,6 @@ { "name": "@pipedream/intercom", - "version": "0.3.9", + "version": "0.4.0", "description": "Pipedream Intercom Components", "main": "intercom.app.mjs", "keywords": [ @@ -14,7 +14,7 @@ "access": "public" }, "dependencies": { - "@pipedream/platform": "^1.2.0", + "@pipedream/platform": "^3.0.3", "crypto": "^1.0.1" } } diff --git a/components/intercom/sources/common.mjs b/components/intercom/sources/common/common.mjs similarity index 93% rename from components/intercom/sources/common.mjs rename to components/intercom/sources/common/common.mjs index e3ea21ecfcbf8..2b1c1878d160b 100644 --- a/components/intercom/sources/common.mjs +++ b/components/intercom/sources/common/common.mjs @@ -1,4 +1,4 @@ -import intercom from "../intercom.app.mjs"; +import intercom from "../../intercom.app.mjs"; import { DEFAULT_POLLING_SOURCE_TIMER_INTERVAL } from "@pipedream/platform"; export default { diff --git a/components/intercom/sources/conversation-closed/conversation-closed.mjs b/components/intercom/sources/conversation-closed/conversation-closed.mjs index 8f5ae3aea688c..6215d45ab3c46 100644 --- a/components/intercom/sources/conversation-closed/conversation-closed.mjs +++ b/components/intercom/sources/conversation-closed/conversation-closed.mjs @@ -1,11 +1,11 @@ -import common from "../common.mjs"; +import common from "../common/common.mjs"; export default { ...common, key: "intercom-conversation-closed", name: "New Closed Conversation", description: "Emit new event each time a conversation is closed.", - version: "0.0.4", + version: "0.0.5", type: "source", dedupe: "unique", methods: { diff --git a/components/intercom/sources/lead-added-email/lead-added-email.mjs b/components/intercom/sources/lead-added-email/lead-added-email.mjs index a641015dc632b..2e7137ead1547 100644 --- a/components/intercom/sources/lead-added-email/lead-added-email.mjs +++ b/components/intercom/sources/lead-added-email/lead-added-email.mjs @@ -1,11 +1,11 @@ -import common from "../common.mjs"; +import common from "../common/common.mjs"; export default { ...common, key: "intercom-lead-added-email", name: "Lead Added Email", description: "Emit new event each time a lead adds their email address.", - version: "0.0.4", + version: "0.0.5", type: "source", dedupe: "unique", methods: { diff --git a/components/intercom/sources/new-admin-reply/new-admin-reply.mjs b/components/intercom/sources/new-admin-reply/new-admin-reply.mjs index 6f98ee199ab07..907a1aaada9ac 100644 --- a/components/intercom/sources/new-admin-reply/new-admin-reply.mjs +++ b/components/intercom/sources/new-admin-reply/new-admin-reply.mjs @@ -1,11 +1,11 @@ -import common from "../common.mjs"; +import common from "../common/common.mjs"; export default { ...common, key: "intercom-new-admin-reply", name: "New Reply From Admin", description: "Emit new event each time an admin replies to a conversation.", - version: "0.0.4", + version: "0.0.5", type: "source", dedupe: "unique", methods: { diff --git a/components/intercom/sources/new-company/new-company.mjs b/components/intercom/sources/new-company/new-company.mjs index 6dc8389af2893..fe46f463b84c1 100644 --- a/components/intercom/sources/new-company/new-company.mjs +++ b/components/intercom/sources/new-company/new-company.mjs @@ -1,11 +1,11 @@ -import common from "../common.mjs"; +import common from "../common/common.mjs"; export default { ...common, key: "intercom-new-company", name: "New Companies", description: "Emit new event each time a new company is added.", - version: "0.0.4", + version: "0.0.5", type: "source", dedupe: "unique", methods: { diff --git a/components/intercom/sources/new-conversation-rating-added/new-conversation-rating-added.mjs b/components/intercom/sources/new-conversation-rating-added/new-conversation-rating-added.mjs new file mode 100644 index 0000000000000..c6c652cc6acf4 --- /dev/null +++ b/components/intercom/sources/new-conversation-rating-added/new-conversation-rating-added.mjs @@ -0,0 +1,43 @@ +import common from "../common/common.mjs"; + +export default { + ...common, + key: "intercom-new-conversation-rating-added", + name: "New Conversation Rating Added", + description: "Emit new event each time a new rating is added to a conversation.", + version: "0.0.1", + type: "source", + dedupe: "unique", + methods: { + ...common.methods, + generateMeta(conversation) { + const ts = conversation.conversation_rating.created_at; + return { + id: `${conversation.id}-${ts}`, + summary: `New rating added to conversation with ID: ${conversation.id}`, + ts, + }; + }, + }, + async run() { + let lastRatingCreatedAt = this._getLastUpdate(); + const data = { + query: { + field: "conversation_rating.requested_at", + operator: ">", + value: lastRatingCreatedAt, + }, + }; + + const results = await this.intercom.searchConversations(data); + for (const conversation of results) { + const createdAt = conversation.conversation_rating.created_at; + if (createdAt > lastRatingCreatedAt) + lastRatingCreatedAt = createdAt; + const meta = this.generateMeta(conversation); + this.$emit(conversation, meta); + } + + this._setLastUpdate(lastRatingCreatedAt); + }, +}; diff --git a/components/intercom/sources/new-conversation/new-conversation.mjs b/components/intercom/sources/new-conversation/new-conversation.mjs index b804764003a15..547c6f3a0879d 100644 --- a/components/intercom/sources/new-conversation/new-conversation.mjs +++ b/components/intercom/sources/new-conversation/new-conversation.mjs @@ -1,11 +1,11 @@ -import common from "../common.mjs"; +import common from "../common/common.mjs"; export default { ...common, key: "intercom-new-conversation", name: "New Conversations", description: "Emit new event each time a new conversation is added.", - version: "0.0.4", + version: "0.0.5", type: "source", dedupe: "unique", methods: { diff --git a/components/intercom/sources/new-event/new-event.mjs b/components/intercom/sources/new-event/new-event.mjs index c746b9aab9210..c4ee3fa096183 100644 --- a/components/intercom/sources/new-event/new-event.mjs +++ b/components/intercom/sources/new-event/new-event.mjs @@ -1,11 +1,11 @@ -import common from "../common.mjs"; +import common from "../common/common.mjs"; export default { ...common, key: "intercom-new-event", name: "New Event", description: "Emit new event for each new Intercom event for a user.", - version: "0.0.4", + version: "0.0.5", type: "source", dedupe: "unique", props: { diff --git a/components/intercom/sources/new-lead/new-lead.mjs b/components/intercom/sources/new-lead/new-lead.mjs index a4f6d1d432df7..dae88ca980589 100644 --- a/components/intercom/sources/new-lead/new-lead.mjs +++ b/components/intercom/sources/new-lead/new-lead.mjs @@ -1,11 +1,11 @@ -import common from "../common.mjs"; +import common from "../common/common.mjs"; export default { ...common, key: "intercom-new-lead", name: "New Leads", description: "Emit new event each time a new lead is added.", - version: "0.0.4", + version: "0.0.5", type: "source", dedupe: "unique", methods: { diff --git a/components/intercom/sources/new-unsubscription/new-unsubscription.mjs b/components/intercom/sources/new-unsubscription/new-unsubscription.mjs index 47680e66ee3dc..53e222a11c801 100644 --- a/components/intercom/sources/new-unsubscription/new-unsubscription.mjs +++ b/components/intercom/sources/new-unsubscription/new-unsubscription.mjs @@ -1,11 +1,11 @@ -import common from "../common.mjs"; +import common from "../common/common.mjs"; export default { ...common, key: "intercom-new-unsubscription", name: "New Unsubscriptions", description: "Emit new event each time a user unsubscribes from receiving emails.", - version: "0.0.4", + version: "0.0.5", type: "source", dedupe: "unique", methods: { diff --git a/components/intercom/sources/new-user-reply/new-user-reply.mjs b/components/intercom/sources/new-user-reply/new-user-reply.mjs index 2fed937856cc2..a02030a437f3a 100644 --- a/components/intercom/sources/new-user-reply/new-user-reply.mjs +++ b/components/intercom/sources/new-user-reply/new-user-reply.mjs @@ -1,11 +1,11 @@ -import common from "../common.mjs"; +import common from "../common/common.mjs"; export default { ...common, key: "intercom-new-user-reply", name: "New Reply From User", description: "Emit new event each time a user replies to a conversation.", - version: "0.0.4", + version: "0.0.5", type: "source", dedupe: "unique", methods: { diff --git a/components/intercom/sources/new-user/new-user.mjs b/components/intercom/sources/new-user/new-user.mjs index 9b690f66c2f9a..6f27c94dbda24 100644 --- a/components/intercom/sources/new-user/new-user.mjs +++ b/components/intercom/sources/new-user/new-user.mjs @@ -1,11 +1,11 @@ -import common from "../common.mjs"; +import common from "../common/common.mjs"; export default { ...common, key: "intercom-new-user", name: "New Users", description: "Emit new event each time a new user is added.", - version: "0.0.4", + version: "0.0.5", type: "source", dedupe: "unique", methods: { diff --git a/components/intercom/sources/tag-added-to-conversation/tag-added-to-conversation.mjs b/components/intercom/sources/tag-added-to-conversation/tag-added-to-conversation.mjs index 0e0a240ebf137..95efa65929810 100644 --- a/components/intercom/sources/tag-added-to-conversation/tag-added-to-conversation.mjs +++ b/components/intercom/sources/tag-added-to-conversation/tag-added-to-conversation.mjs @@ -1,11 +1,11 @@ -import common from "../common.mjs"; +import common from "../common/common.mjs"; export default { ...common, key: "intercom-tag-added-to-conversation", name: "Tag Added To Conversation", description: "Emit new event each time a new tag is added to a conversation.", - version: "0.0.4", + version: "0.0.5", type: "source", dedupe: "unique", methods: { diff --git a/components/intercom/sources/tag-added-to-lead/tag-added-to-lead.mjs b/components/intercom/sources/tag-added-to-lead/tag-added-to-lead.mjs index cdf01394ea70a..326b2c85f6504 100644 --- a/components/intercom/sources/tag-added-to-lead/tag-added-to-lead.mjs +++ b/components/intercom/sources/tag-added-to-lead/tag-added-to-lead.mjs @@ -1,11 +1,11 @@ -import common from "../common.mjs"; +import common from "../common/common.mjs"; export default { ...common, key: "intercom-tag-added-to-lead", name: "Tag Added To Lead", description: "Emit new event each time a new tag is added to a lead.", - version: "0.0.4", + version: "0.0.5", type: "source", dedupe: "unique", methods: { diff --git a/components/intercom/sources/tag-added-to-user/tag-added-to-user.mjs b/components/intercom/sources/tag-added-to-user/tag-added-to-user.mjs index d547447588615..2bb250640625a 100644 --- a/components/intercom/sources/tag-added-to-user/tag-added-to-user.mjs +++ b/components/intercom/sources/tag-added-to-user/tag-added-to-user.mjs @@ -1,11 +1,11 @@ -import common from "../common.mjs"; +import common from "../common/common.mjs"; export default { ...common, key: "intercom-tag-added-to-user", name: "Tag Added To User", description: "Emit new event each time a new tag is added to a user.", - version: "0.0.4", + version: "0.0.5", type: "source", dedupe: "unique", methods: { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a234fe7037a27..fa690ec073ecf 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4999,10 +4999,10 @@ importers: components/intercom: specifiers: - '@pipedream/platform': ^1.2.0 + '@pipedream/platform': ^3.0.3 crypto: ^1.0.1 dependencies: - '@pipedream/platform': 1.5.1 + '@pipedream/platform': 3.0.3 crypto: 1.0.1 components/interseller: @@ -13201,55 +13201,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'} @@ -13485,7 +13436,7 @@ 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 @@ -13527,6 +13478,55 @@ packages: - 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 + '@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-sso-oidc' + - aws-crt + dev: false + /@aws-sdk/core/3.556.0: resolution: {integrity: sha512-vJaSaHw2kPQlo11j/Rzuz0gk1tEaKdz+2ser0f0qZ5vwFlANjt08m/frU17ctnVKC1s58bxpctO/1P894fHLrA==} engines: {node: '>=14.0.0'} @@ -17819,7 +17819,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.6