From 631dbdafd377056d9336617434204f543db0f7e4 Mon Sep 17 00:00:00 2001 From: anteqkois Date: Sun, 26 May 2024 22:37:19 +0200 Subject: [PATCH] feat(connectors): better UI for flow connectors --- apps/api-gateway/src/main.ts | 2 +- .../modules/flows/flows/defaultColumns.tsx | 80 +++++++++++++++++- apps/web/public/images/connectors/binance.png | Bin 5552 -> 42319 bytes .../{telegram.png => telegram-bot.png} | Bin libs/connectors/telegram-bot/src/index.ts | 2 +- libs/nest-core/src/core.module.ts | 43 +++++----- .../src/lib/modules/connectors/utils.ts | 5 ++ 7 files changed, 105 insertions(+), 27 deletions(-) rename apps/web/public/images/connectors/{telegram.png => telegram-bot.png} (100%) diff --git a/apps/api-gateway/src/main.ts b/apps/api-gateway/src/main.ts index f8ea92a8..417a1901 100644 --- a/apps/api-gateway/src/main.ts +++ b/apps/api-gateway/src/main.ts @@ -26,7 +26,7 @@ async function bootstrap() { ) const configService = app.get(ConfigService) - const frontendUrl = configService.get('FRONTEND_HOST') + const frontendUrl = configService.getOrThrow('FRONTEND_HOST') app.enableCors({ origin: [frontendUrl], diff --git a/apps/web/modules/flows/flows/defaultColumns.tsx b/apps/web/modules/flows/flows/defaultColumns.tsx index 362a212d..b6cf1ebd 100644 --- a/apps/web/modules/flows/flows/defaultColumns.tsx +++ b/apps/web/modules/flows/flows/defaultColumns.tsx @@ -7,8 +7,10 @@ import { FlowStatus, TriggerType, assertNotNullOrUndefined, + builImageUrlFromConnectorPacakgeName, flowHelper, isCustomHttpExceptionAxios, + isStepBaseSettings, isTrigger, } from '@linkerry/shared' import { @@ -37,6 +39,7 @@ import { import { Button, Icons } from '@linkerry/ui-components/server' import { ColumnDef } from '@tanstack/react-table' import dayjs from 'dayjs' +import Image from 'next/image' import Link from 'next/link' import { useCallback, useState } from 'react' import { getBrowserQueryCllient } from '../../../libs/react-query' @@ -73,11 +76,44 @@ export const columns: ColumnDef[] = [
- {/* {`${row.original.version.stepsCount} ${flowVersionChainMap[0].map((step) => step.settings.connectorName).join(', ')}`} */} - - {row.original.version.stepsCount}: - {isEmptyFlow ? 'Empty Trigger' : flowVersionChainMap[0].map((step) => step.settings.connectorName).join(', ')} + {isEmptyFlow ? ( + 'Empty Trigger' + ) : ( + <> + {flowVersionChainMap[0].slice(0, 4).map((step, index) => { + if (!isStepBaseSettings(step.settings)) + return ( + + ? + + ) + return ( + {step.displayName} + ) + })} + {flowVersionChainMap[0].length > 4 ? ( + + +{flowVersionChainMap[0].length - 4} + + ) : null} + + )}
@@ -97,6 +133,42 @@ export const columns: ColumnDef[] = [ }, }, // { + // id: 'steps', + // accessorFn: (row) => row.version.stepsCount, + // header: ({ column }) => , + // cell: ({ row }) => { + // const flowVersionChainMap = flowHelper.transformFlowVersionToChainMap(row.original.version) + // const isEmptyFlow = flowVersionChainMap[0][0].type === TriggerType.EMPTY + + // return ( + // + // + // + //
+ // {/* {`${row.original.version.stepsCount} ${flowVersionChainMap[0].map((step) => step.settings.connectorName).join(', ')}`} */} + + // {row.original.version.stepsCount}: + // + // {isEmptyFlow ? 'Empty Trigger' : flowVersionChainMap[0].map((step) => step.settings.connectorName).join(', ')} + // + //
+ //
+ // {isEmptyFlow ? null : ( + // + // {flowVersionChainMap[0].map((step) => ( + //
+ // {!isTrigger(step) && } + //

{`${isTrigger(step) ? 'Trigger' : 'Action'}: ${step.settings.connectorName} - ${step.displayName}`}

+ //
+ // ))} + //
+ // )} + //
+ //
+ // ) + // }, + // }, + // { // id: 'steps', // accessorFn: (row) => row.version.stepsCount, // header: ({ column }) => , diff --git a/apps/web/public/images/connectors/binance.png b/apps/web/public/images/connectors/binance.png index d4014f275fb6c00b3a1988da8cd8529cc13a1c5d..3c01aca39992e4a2700464fc8ce6b9a1bdfe4b6e 100644 GIT binary patch literal 42319 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 diff --git a/apps/web/public/images/connectors/telegram.png b/apps/web/public/images/connectors/telegram-bot.png similarity index 100% rename from apps/web/public/images/connectors/telegram.png rename to apps/web/public/images/connectors/telegram-bot.png diff --git a/libs/connectors/telegram-bot/src/index.ts b/libs/connectors/telegram-bot/src/index.ts index 37cb68d4..093f597a 100644 --- a/libs/connectors/telegram-bot/src/index.ts +++ b/libs/connectors/telegram-bot/src/index.ts @@ -12,7 +12,7 @@ export const telegramBot = createConnector({ displayName: 'Telegram Bot', description: 'Build chatbots for Telegram', minimumSupportedRelease: '0.0.0', - logoUrl: '/images/connectors/telegram.png', + logoUrl: '/images/connectors/telegram-bot.png', tags: ['communication', 'bots', 'cryptocurrency'], auth: telegramBotAuth, actions: [ diff --git a/libs/nest-core/src/core.module.ts b/libs/nest-core/src/core.module.ts index fc983ec5..29a276b7 100644 --- a/libs/nest-core/src/core.module.ts +++ b/libs/nest-core/src/core.module.ts @@ -91,28 +91,29 @@ import { QUEUES } from './modules/workers/flow-worker/queues/types' export class CoreModule implements NestModule, OnApplicationBootstrap { async onApplicationBootstrap() { - // Clear env - setTimeout(() => { - delete process.env['LINKERRY_API_KEY'] - delete process.env['APPS_SECRET'] - delete process.env['MONGO_PROTOCOL'] - delete process.env['MONGO_USERNAME'] - delete process.env['MONGO_PASSWORD'] - delete process.env['MONGO_HOST'] - delete process.env['MONGO_DATABASE'] - delete process.env['APP_WEBHOOK_SECRETS'] - delete process.env['TAWK_API_KEY'] - delete process.env['STRIPE_WEBHOOK_SECRET'] - delete process.env['STRIPE_API_KEY'] - delete process.env['REDIS_PASSWORD'] - delete process.env['JWT_SECRET'] - delete process.env['COOKIES_SIGNATURE'] - delete process.env['ENCRYPTION_KEY'] - delete process.env['ENCRYPTION_ALG'] - delete process.env['IV_LENGTH'] + // TODO update it to delete only few keys + // // Clear env + // setTimeout(() => { + // delete process.env['LINKERRY_API_KEY'] + // delete process.env['APPS_SECRET'] + // delete process.env['MONGO_PROTOCOL'] + // delete process.env['MONGO_USERNAME'] + // delete process.env['MONGO_PASSWORD'] + // delete process.env['MONGO_HOST'] + // delete process.env['MONGO_DATABASE'] + // delete process.env['APP_WEBHOOK_SECRETS'] + // delete process.env['TAWK_API_KEY'] + // delete process.env['STRIPE_WEBHOOK_SECRET'] + // delete process.env['STRIPE_API_KEY'] + // delete process.env['REDIS_PASSWORD'] + // delete process.env['JWT_SECRET'] + // delete process.env['COOKIES_SIGNATURE'] + // delete process.env['ENCRYPTION_KEY'] + // delete process.env['ENCRYPTION_ALG'] + // delete process.env['IV_LENGTH'] - console.log('CLEARED') - }, 15_000) + // console.log('CLEARED') + // }, 15_000) } // Add a middleware on all routes configure(consumer: MiddlewareConsumer) { diff --git a/libs/shared/src/lib/modules/connectors/utils.ts b/libs/shared/src/lib/modules/connectors/utils.ts index 6e7b3b67..292f40d0 100644 --- a/libs/shared/src/lib/modules/connectors/utils.ts +++ b/libs/shared/src/lib/modules/connectors/utils.ts @@ -33,6 +33,11 @@ export const getConnectorAppNameFromConnectorPacakgeName = (pacakgeName: string) return pacakgeName.slice(10) } +export const builImageUrlFromConnectorPacakgeName = (pacakgeName: string): string => { + const name = pacakgeName.slice(10) + return `/images/connectors/${name}.png` +} + export const extractConnectorFromModule = (params: ExtractConnectorFromModuleParams): T => { const { module, connectorName, connectorVersion } = params const exports = Object.values(module)