diff --git a/packages/nc-gui/components/workspace/integrations/IntegrationsTab.vue b/packages/nc-gui/components/workspace/integrations/IntegrationsTab.vue index ff14f26bcd..c070dfe13e 100644 --- a/packages/nc-gui/components/workspace/integrations/IntegrationsTab.vue +++ b/packages/nc-gui/components/workspace/integrations/IntegrationsTab.vue @@ -75,6 +75,7 @@ const integrationsMapByCategory = computed(() => { title: curr.title, list: getIntegrationsByCategory(curr.value, searchQuery.value), isAvailable: curr.isAvailable, + teleEventName: curr.teleEventName, } return acc @@ -85,6 +86,7 @@ const integrationsMapByCategory = computed(() => { title: string list: IntegrationItemType[] isAvailable?: boolean + teleEventName?: IntegrationCategoryType } >, ) @@ -114,7 +116,7 @@ const isAddNewIntegrationModalOpen = computed({ const handleUpvote = (category: IntegrationCategoryType, syncDataType: SyncDataType) => { if (upvotesData.value.has(syncDataType)) return - $e(`a:integration-request:${category}:${syncDataType}`) + $e(`a:integration-request:${integrationsMapByCategory.value[category]?.teleEventName || category}:${syncDataType}`) updateSyncDataUpvotes([...syncDataUpvotes.value, syncDataType]) } diff --git a/packages/nc-gui/lang/en.json b/packages/nc-gui/lang/en.json index 2eee53eeee..8289501748 100644 --- a/packages/nc-gui/lang/en.json +++ b/packages/nc-gui/lang/en.json @@ -416,7 +416,9 @@ "storageSubtitle": "Integrate and organize your storage solutions seamlessly with NocoDB.", "others": "Others", "othersSubtitle": "Discover additional versatile integrations to enhance your NocoDB experience.", - "ai": "AI" + "ai": "AI", + "spreadSheet": "Spreadsheet", + "spreadSheetSubtitle": "Connect and manage your spreadsheets with NocoDB." } }, "datatype": { diff --git a/packages/nc-gui/utils/syncDataUtils.ts b/packages/nc-gui/utils/syncDataUtils.ts index 8f6e71c77f..c6a4b6ce80 100644 --- a/packages/nc-gui/utils/syncDataUtils.ts +++ b/packages/nc-gui/utils/syncDataUtils.ts @@ -18,6 +18,7 @@ export interface IntegrationCategoryItemType { iconBgColor?: string iconStyle?: CSSProperties isAvailable?: boolean + teleEventName?: IntegrationCategoryType } export const integrationCategories: IntegrationCategoryItemType[] = [ @@ -52,6 +53,17 @@ export const integrationCategories: IntegrationCategoryItemType[] = [ color: '#801044', }, }, + { + title: 'objects.integrationCategories.spreadSheet', + subtitle: 'objects.integrationCategories.spreadSheetSubtitle', + value: IntegrationCategoryType.SPREAD_SHEET, + teleEventName: IntegrationCategoryType.OTHERS, + icon: iconMap.viewGannt, + iconBgColor: '#FFF0D1', + iconStyle: { + color: '#977223', + }, + }, { title: 'objects.integrationCategories.projectManagement', subtitle: 'objects.integrationCategories.projectManagementSubtitle', @@ -454,29 +466,31 @@ export const allIntegrations: IntegrationItemType[] = [ categories: [IntegrationCategoryType.STORAGE], }, - // Others + // Spreadsheet { title: 'objects.syncData.appleNumbers', value: SyncDataType.APPLE_NUMBERS, icon: iconMap.appleSolid, - categories: [IntegrationCategoryType.OTHERS], - }, - { - title: 'objects.syncData.googleCalendar', - value: SyncDataType.GOOGLE_CALENDAR, - icon: iconMap.googleCalendar, - categories: [IntegrationCategoryType.OTHERS], + categories: [IntegrationCategoryType.SPREAD_SHEET], }, { title: 'objects.syncData.microsoftExcel', value: SyncDataType.MICROSOFT_EXCEL, icon: iconMap.microsoftExcel, - categories: [IntegrationCategoryType.OTHERS], + categories: [IntegrationCategoryType.SPREAD_SHEET], }, { title: 'objects.syncData.googleSheets', value: SyncDataType.GOOGLE_SHEETS, icon: iconMap.googleSheet, - categories: [IntegrationCategoryType.OTHERS], + categories: [IntegrationCategoryType.SPREAD_SHEET], }, + + // Others + // { + // title: 'objects.syncData.googleCalendar', + // value: SyncDataType.GOOGLE_CALENDAR, + // icon: iconMap.googleCalendar, + // categories: [IntegrationCategoryType.OTHERS], + // }, ] diff --git a/packages/nocodb-sdk/src/lib/enums.ts b/packages/nocodb-sdk/src/lib/enums.ts index 3f9e68b80f..a0a19b0c07 100644 --- a/packages/nocodb-sdk/src/lib/enums.ts +++ b/packages/nocodb-sdk/src/lib/enums.ts @@ -417,6 +417,7 @@ export enum IntegrationCategoryType { DATABASE = 'database', AI = 'ai', COMMUNICATION = 'communication', + SPREAD_SHEET = 'spread-sheet', PROJECT_MANAGEMENT = 'project-management', CRM = 'crm', MARKETING = 'marketing',