From f83cd0f7855098e6a16fa4fec686756ad1d9c636 Mon Sep 17 00:00:00 2001 From: Lina Date: Wed, 17 Dec 2025 15:13:16 +0100 Subject: [PATCH 1/7] Knowledge graphs first draft --- components/kern-icons/icons.ts | 5 +++-- hooks/web-socket/constants.ts | 7 +++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/components/kern-icons/icons.ts b/components/kern-icons/icons.ts index d8c7f04..6b5289c 100644 --- a/components/kern-icons/icons.ts +++ b/components/kern-icons/icons.ts @@ -1,5 +1,5 @@ import { memo } from 'react'; -import { IconActivity, IconAdjustments, IconAdjustmentsAlt, IconAdjustmentsOff, IconAlertCircle, IconAlertTriangle, IconAlertTriangleFilled, IconAngle, IconApi, IconArchive, IconArrowAutofitDown, IconArrowCurveRight, IconArrowDown, IconArrowLeft, IconArrowNarrowLeft, IconArrowNarrowRight, IconArrowRight, IconArrowsRandom, IconArrowsSort, IconArrowUp, IconArrowUpRight, IconAssembly, IconBallpen, IconBallpenOff, IconBell, IconBolt, IconBottle, IconBox, IconBoxOff, IconBrandGithub, IconBrandOpenai, IconBrandPython, IconBulb, IconBulldozer, IconCamera, IconCategoryPlus, IconCell, IconChartBubble, IconChartCircles, IconChartDots3, IconChartLine, IconChartPie, IconCheck, IconChecks, IconChevronCompactLeft, IconChevronCompactRight, IconChevronDown, IconChevronLeft, IconChevronRight, IconChevronUp, IconCircle, IconCircleCheck, IconCircleCheckFilled, IconCircleMinus, IconCirclePlus, IconClick, IconClipboard, IconClipboardCheck, IconClipboardOff, IconClock, IconCode, IconCodePlus, IconColorPicker, IconColumns, IconColumns1, IconColumns2, IconColumns3, IconCopy, IconCrown, IconCrownOff, IconDatabase, IconDatabasePlus, IconDeviceFloppy, IconDots, IconDotsVertical, IconDownload, IconEdit, IconEngine, IconExclamationCircle, IconExclamationMark, IconExternalLink, IconEye, IconEyeCancel, IconEyeCheck, IconEyeOff, IconFile, IconFileDownload, IconFileImport, IconFileInfo, IconFilePencil, IconFiles, IconFileText, IconFileUpload, IconFilter, IconFilterOff, IconFishHook, IconFolderBolt, IconGitCommit, IconGripVertical, IconHandClick, IconHeading, IconHelp, IconHexagons, IconHierarchy, IconHierarchy3, IconHistory, IconHome, IconHourglass, IconHourglassEmpty, IconInfoCircle, IconInfoCircleFilled, IconInfoSquare, IconLayoutList, IconLayoutNavbarCollapse, IconLayoutSidebar, IconLetterGSmall, IconLink, IconList, IconLoader, IconLoader2, IconLockAccess, IconMap, IconMaximize, IconMessageCircle, IconMinus, IconMessageCircleSearch, IconMessages, IconMinimize, IconMoustache, IconNews, IconNotes, IconPencil, IconPlayCardStar, IconPlayerPlay, IconPlayerPlayFilled, IconPlus, IconPoint, IconPointerOff, IconPointerSearch, IconPointFilled, IconQuestionMark, IconRecycle, IconRefresh, IconRefreshAlert, IconResize, IconRobot, IconRotate, IconScissors, IconScreenshot, IconSearch, IconSend, IconSettings, IconShare, IconShieldCheckFilled, IconShieldFilled, IconSquare, IconSquareCheck, IconStar, IconTag, IconTemplate, IconTerminal, IconThumbDown, IconThumbDownFilled, IconThumbUp, IconThumbUpFilled, IconTrash, IconTrashXFilled, IconTriangleInverted, IconTriangleSquareCircle, IconUpload, IconUser, IconUsersGroup, IconUserX, IconVariable, IconVariablePlus, IconVersions, IconWand, IconWaveSine, IconWebhook, IconWreckingBall, IconX, IconZoomCode, IconDragDrop2, IconCircleDotted, IconWorld, IconMail, IconHelpCircle, IconProgressCheck } from '@tabler/icons-react'; +import { IconActivity, IconAdjustments, IconAdjustmentsAlt, IconAdjustmentsOff, IconAlertCircle, IconAlertTriangle, IconAlertTriangleFilled, IconAngle, IconApi, IconArchive, IconArrowAutofitDown, IconArrowCurveRight, IconArrowDown, IconArrowLeft, IconArrowNarrowLeft, IconArrowNarrowRight, IconArrowRight, IconArrowsRandom, IconArrowsSort, IconArrowUp, IconArrowUpRight, IconAssembly, IconBallpen, IconBallpenOff, IconBell, IconBolt, IconBottle, IconBox, IconBoxOff, IconBrandGithub, IconBrandOpenai, IconBrandPython, IconBulb, IconBulldozer, IconCamera, IconCategoryPlus, IconCell, IconChartBubble, IconChartCircles, IconChartDots3, IconChartLine, IconChartPie, IconCheck, IconChecks, IconChevronCompactLeft, IconChevronCompactRight, IconChevronDown, IconChevronLeft, IconChevronRight, IconChevronUp, IconCircle, IconCircleCheck, IconCircleCheckFilled, IconCircleMinus, IconCirclePlus, IconClick, IconClipboard, IconClipboardCheck, IconClipboardOff, IconClock, IconCode, IconCodePlus, IconColorPicker, IconColumns, IconColumns1, IconColumns2, IconColumns3, IconCopy, IconCrown, IconCrownOff, IconDatabase, IconDatabasePlus, IconDeviceFloppy, IconDots, IconDotsVertical, IconDownload, IconEdit, IconEngine, IconExclamationCircle, IconExclamationMark, IconExternalLink, IconEye, IconEyeCancel, IconEyeCheck, IconEyeOff, IconFile, IconFileDownload, IconFileImport, IconFileInfo, IconFilePencil, IconFiles, IconFileText, IconFileUpload, IconFilter, IconFilterOff, IconFishHook, IconFolderBolt, IconGitCommit, IconGripVertical, IconHandClick, IconHeading, IconHelp, IconHexagons, IconHierarchy, IconHierarchy3, IconHistory, IconHome, IconHourglass, IconHourglassEmpty, IconInfoCircle, IconInfoCircleFilled, IconInfoSquare, IconLayoutList, IconLayoutNavbarCollapse, IconLayoutSidebar, IconLetterGSmall, IconLink, IconList, IconLoader, IconLoader2, IconLockAccess, IconMap, IconMaximize, IconMessageCircle, IconMinus, IconMessageCircleSearch, IconMessages, IconMinimize, IconMoustache, IconNews, IconNotes, IconPencil, IconPlayCardStar, IconPlayerPlay, IconPlayerPlayFilled, IconPlus, IconPoint, IconPointerOff, IconPointerSearch, IconPointFilled, IconQuestionMark, IconRecycle, IconRefresh, IconRefreshAlert, IconResize, IconRobot, IconRotate, IconScissors, IconScreenshot, IconSearch, IconSend, IconSettings, IconShare, IconShieldCheckFilled, IconShieldFilled, IconSquare, IconSquareCheck, IconStar, IconTag, IconTemplate, IconTerminal, IconThumbDown, IconThumbDownFilled, IconThumbUp, IconThumbUpFilled, IconTrash, IconTrashXFilled, IconTriangleInverted, IconTriangleSquareCircle, IconUpload, IconUser, IconUsersGroup, IconUserX, IconVariable, IconVariablePlus, IconVersions, IconWand, IconWaveSine, IconWebhook, IconWreckingBall, IconX, IconZoomCode, IconDragDrop2, IconCircleDotted, IconWorld, IconMail, IconHelpCircle, IconProgressCheck, IconSitemapFilled } from '@tabler/icons-react'; export const MemoIconHome = memo(IconHome); export const MemoIconInfoCircle = memo(IconInfoCircle); @@ -187,4 +187,5 @@ export const MemoIconCircleDotted = memo(IconCircleDotted); export const MemoIconWorld = memo(IconWorld); export const MemoIconMail = memo(IconMail); export const MemoIconHelpCircle = memo(IconHelpCircle); -export const MemoIconProgressCheck = memo(IconProgressCheck); \ No newline at end of file +export const MemoIconProgressCheck = memo(IconProgressCheck); +export const MemoIconSitemapFilled = memo(IconSitemapFilled); \ No newline at end of file diff --git a/hooks/web-socket/constants.ts b/hooks/web-socket/constants.ts index a93d6ce..d08a968 100644 --- a/hooks/web-socket/constants.ts +++ b/hooks/web-socket/constants.ts @@ -30,6 +30,7 @@ export enum CurrentPage { ENTRY_LAYOUT = "ENTRY_LAYOUT", ADMIN_DASHBOARD_LAYOUT = "ADMIN_DASHBOARD_LAYOUT", EVALUATION_RUN_DETAILS = "EVALUATION_RUN_DETAILS", + KNOWLEDGE_GRAPHS = "KNOWLEDGE_GRAPHS", } export enum CurrentPageSubKey { @@ -104,8 +105,10 @@ export const WHITELIST_LOOKUP_REFINERY = { }, [CurrentPage.NOTIFICATION_CENTER]: { [CurrentPageSubKey.NONE]: ['notification_created', 'project_deleted', 'admin_message'], - - } + }, + [CurrentPage.KNOWLEDGE_GRAPHS]: { + [CurrentPageSubKey.NONE]: ['knowledge_graphs_created', 'knowledge_graphs_updated', 'knowledge_graphs_deleted'], + }, } export const WHITELIST_LOOKUP_COGNITION = { From 524057cfcdae566adaadd8463b44b21dd48f1502 Mon Sep 17 00:00:00 2001 From: Lina Date: Mon, 29 Dec 2025 17:35:08 +0100 Subject: [PATCH 2/7] Graph details page --- hooks/web-socket/constants.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/hooks/web-socket/constants.ts b/hooks/web-socket/constants.ts index d08a968..31464c2 100644 --- a/hooks/web-socket/constants.ts +++ b/hooks/web-socket/constants.ts @@ -31,6 +31,7 @@ export enum CurrentPage { ADMIN_DASHBOARD_LAYOUT = "ADMIN_DASHBOARD_LAYOUT", EVALUATION_RUN_DETAILS = "EVALUATION_RUN_DETAILS", KNOWLEDGE_GRAPHS = "KNOWLEDGE_GRAPHS", + KNOWLEDGE_GRAPHS_DETAILS = "KNOWLEDGE_GRAPHS_DETAILS", } export enum CurrentPageSubKey { From db74a6c6df03419f7f3d2164c7140b501e0fbfb3 Mon Sep 17 00:00:00 2001 From: Lina Date: Fri, 9 Jan 2026 11:41:19 +0100 Subject: [PATCH 3/7] Renaming knowledge-graphs to data-blocks --- hooks/web-socket/constants.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/hooks/web-socket/constants.ts b/hooks/web-socket/constants.ts index 31464c2..baf43ac 100644 --- a/hooks/web-socket/constants.ts +++ b/hooks/web-socket/constants.ts @@ -30,8 +30,8 @@ export enum CurrentPage { ENTRY_LAYOUT = "ENTRY_LAYOUT", ADMIN_DASHBOARD_LAYOUT = "ADMIN_DASHBOARD_LAYOUT", EVALUATION_RUN_DETAILS = "EVALUATION_RUN_DETAILS", - KNOWLEDGE_GRAPHS = "KNOWLEDGE_GRAPHS", - KNOWLEDGE_GRAPHS_DETAILS = "KNOWLEDGE_GRAPHS_DETAILS", + DATA_BLOCKS = "DATA_BLOCKS", + DATA_BLOCKS_DETAILS = "DATA_BLOCKS_DETAILS", } export enum CurrentPageSubKey { @@ -107,8 +107,8 @@ export const WHITELIST_LOOKUP_REFINERY = { [CurrentPage.NOTIFICATION_CENTER]: { [CurrentPageSubKey.NONE]: ['notification_created', 'project_deleted', 'admin_message'], }, - [CurrentPage.KNOWLEDGE_GRAPHS]: { - [CurrentPageSubKey.NONE]: ['knowledge_graphs_created', 'knowledge_graphs_updated', 'knowledge_graphs_deleted'], + [CurrentPage.DATA_BLOCKS]: { + [CurrentPageSubKey.NONE]: ['data_blocks_created', 'data_blocks_updated', 'data_blocks_deleted'], }, } From 38b39adf792494a58e9c4293e8a37fdb8605e0cf Mon Sep 17 00:00:00 2001 From: Lina Date: Tue, 13 Jan 2026 17:31:15 +0100 Subject: [PATCH 4/7] Datablock column page --- hooks/web-socket/constants.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/hooks/web-socket/constants.ts b/hooks/web-socket/constants.ts index baf43ac..858b3e4 100644 --- a/hooks/web-socket/constants.ts +++ b/hooks/web-socket/constants.ts @@ -32,6 +32,7 @@ export enum CurrentPage { EVALUATION_RUN_DETAILS = "EVALUATION_RUN_DETAILS", DATA_BLOCKS = "DATA_BLOCKS", DATA_BLOCKS_DETAILS = "DATA_BLOCKS_DETAILS", + DATA_BLOCKS_COLUMNS = "DATA_BLOCKS_COLUMNS", } export enum CurrentPageSubKey { From 3b4b6ff4307b926fe1b346a6fa7ca42d01e39a42 Mon Sep 17 00:00:00 2001 From: Lina Date: Thu, 15 Jan 2026 13:34:45 +0100 Subject: [PATCH 5/7] New cell column --- components/kern-table/CellComponents.tsx | 19 ++++++++++++++++++- components/kern-table/KernTable.tsx | 4 +++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/components/kern-table/CellComponents.tsx b/components/kern-table/CellComponents.tsx index 795e495..9a273f5 100644 --- a/components/kern-table/CellComponents.tsx +++ b/components/kern-table/CellComponents.tsx @@ -10,6 +10,7 @@ import { FeedbackType, ModelsDownloadedStatus } from "@/submodules/javascript-fu import LoadingIcon from "@/submodules/react-components/components/LoadingIcon"; import { EvaluationRunState } from "../../types/evaluationRun"; import { MemoIconAlertCircle, MemoIconAlertTriangleFilled, MemoIconArrowRight, MemoIconCircleCheckFilled, MemoIconEdit, MemoIconExternalLink, MemoIconFileDownload, MemoIconInfoCircle, MemoIconInfoSquare, MemoIconLoader, MemoIconNotes, MemoIconTag, MemoIconThumbDownFilled, MemoIconThumbUpFilled, MemoIconTrash, MemoIconUserX } from "../kern-icons/icons"; +import ButtonAsText from "../kern-button/ButtonAsText"; function OrganizationAndUsersCell({ organization }) { @@ -406,4 +407,20 @@ function TaskStateCell({ value, color, tooltipValue }) { ); } -export { OrganizationAndUsersCell, MaxRowsColsCharsCell, CommentsCell, ExportConsumptionAndDeleteCell, BadgeCell, OrganizationUserCell, DeleteCell, LevelCell, ArchiveReasonCell, ProjectNameTaskCell, CancelTaskCell, IconCell, ConfigCell, EditDeleteOrgButtonCell, ViewStackCell, AbortSessionButtonCell, FeedbackMessageCell, FeedbackMessageTextCell, JumpToConversationCell, RemoteVersionCell, ExternalLinkCell, ModelDateCell, FileSizeCell, StatusModelCell, DeleteModelCell, LabelCell, ViewCell, EvaluationRunStateCell, EvaluationRunDetailsCell, EtlApiTokenCell, EmailCell, EditIntegrationCell, ExpiredTokenCell, LinkCell, ConfigReleaseNotificationCell, TruncateAndTooltipCell, JumpToConversationAndAssignCell, TaskStateCell } \ No newline at end of file +function DataBlockColumnDetailsCell({ userCreated, onClick }) { + return <> + {userCreated ? +
+ +
+ : } + +} + + +export { OrganizationAndUsersCell, MaxRowsColsCharsCell, CommentsCell, ExportConsumptionAndDeleteCell, BadgeCell, OrganizationUserCell, DeleteCell, LevelCell, ArchiveReasonCell, ProjectNameTaskCell, CancelTaskCell, IconCell, ConfigCell, EditDeleteOrgButtonCell, ViewStackCell, AbortSessionButtonCell, FeedbackMessageCell, FeedbackMessageTextCell, JumpToConversationCell, RemoteVersionCell, ExternalLinkCell, ModelDateCell, FileSizeCell, StatusModelCell, DeleteModelCell, LabelCell, ViewCell, EvaluationRunStateCell, EvaluationRunDetailsCell, EtlApiTokenCell, EmailCell, EditIntegrationCell, ExpiredTokenCell, LinkCell, ConfigReleaseNotificationCell, TruncateAndTooltipCell, JumpToConversationAndAssignCell, TaskStateCell, DataBlockColumnDetailsCell } \ No newline at end of file diff --git a/components/kern-table/KernTable.tsx b/components/kern-table/KernTable.tsx index 3b8657f..aa032ed 100644 --- a/components/kern-table/KernTable.tsx +++ b/components/kern-table/KernTable.tsx @@ -1,6 +1,6 @@ import SortArrows from "@/submodules/react-components/components/kern-table/SortArrows"; import { KernTableProps } from "../../types/kern-table"; -import { AbortSessionButtonCell, ArchiveReasonCell, BadgeCell, CancelTaskCell, CommentsCell, ConfigCell, DeleteModelCell, DeleteCell, EditDeleteOrgButtonCell, EmailCell, EtlApiTokenCell, EvaluationRunDetailsCell, EvaluationRunStateCell, ExportConsumptionAndDeleteCell, ExternalLinkCell, FeedbackMessageCell, FeedbackMessageTextCell, FileSizeCell, IconCell, JumpToConversationCell, LabelCell, LevelCell, MaxRowsColsCharsCell, ModelDateCell, OrganizationAndUsersCell, OrganizationUserCell, ProjectNameTaskCell, RemoteVersionCell, StatusModelCell, ViewCell, ViewStackCell, EditIntegrationCell, ExpiredTokenCell, LinkCell, ConfigReleaseNotificationCell, TruncateAndTooltipCell, JumpToConversationAndAssignCell, TaskStateCell } from "./CellComponents"; +import { AbortSessionButtonCell, ArchiveReasonCell, BadgeCell, CancelTaskCell, CommentsCell, ConfigCell, DeleteModelCell, DeleteCell, EditDeleteOrgButtonCell, EmailCell, EtlApiTokenCell, EvaluationRunDetailsCell, EvaluationRunStateCell, ExportConsumptionAndDeleteCell, ExternalLinkCell, FeedbackMessageCell, FeedbackMessageTextCell, FileSizeCell, IconCell, JumpToConversationCell, LabelCell, LevelCell, MaxRowsColsCharsCell, ModelDateCell, OrganizationAndUsersCell, OrganizationUserCell, ProjectNameTaskCell, RemoteVersionCell, StatusModelCell, ViewCell, ViewStackCell, EditIntegrationCell, ExpiredTokenCell, LinkCell, ConfigReleaseNotificationCell, TruncateAndTooltipCell, JumpToConversationAndAssignCell, TaskStateCell, DataBlockColumnDetailsCell } from "./CellComponents"; import { Fragment, useMemo } from "react"; import KernDropdown from "../KernDropdown"; import { NotApplicableBadge } from "@/submodules/react-components/components/Badges"; @@ -168,6 +168,8 @@ function ComponentMapper(cell: any) { return ; case 'TaskStateCell': return ; + case 'DataBlockColumnDetailsCell': + return ; case '@provided@': return cell.jsx ?? ; } From 475e9fcbf2d61a839b93158234c23f2ab0098f41 Mon Sep 17 00:00:00 2001 From: Lina Date: Thu, 22 Jan 2026 13:49:37 +0100 Subject: [PATCH 6/7] Progress fix --- hooks/web-socket/constants.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hooks/web-socket/constants.ts b/hooks/web-socket/constants.ts index 858b3e4..0c38cd8 100644 --- a/hooks/web-socket/constants.ts +++ b/hooks/web-socket/constants.ts @@ -109,7 +109,7 @@ export const WHITELIST_LOOKUP_REFINERY = { [CurrentPageSubKey.NONE]: ['notification_created', 'project_deleted', 'admin_message'], }, [CurrentPage.DATA_BLOCKS]: { - [CurrentPageSubKey.NONE]: ['data_blocks_created', 'data_blocks_updated', 'data_blocks_deleted'], + [CurrentPageSubKey.NONE]: ['data_blocks_created', 'data_blocks_updated', 'data_blocks_deleted', 'calculate_attribute', 'tokenization'], }, } From c14d467bf845556d3d98175eda7e0f9904cbcace Mon Sep 17 00:00:00 2001 From: Lina Date: Tue, 27 Jan 2026 10:27:32 +0100 Subject: [PATCH 7/7] Web sockets for data blocks --- hooks/web-socket/constants.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/hooks/web-socket/constants.ts b/hooks/web-socket/constants.ts index 0c38cd8..a2d0202 100644 --- a/hooks/web-socket/constants.ts +++ b/hooks/web-socket/constants.ts @@ -108,9 +108,12 @@ export const WHITELIST_LOOKUP_REFINERY = { [CurrentPage.NOTIFICATION_CENTER]: { [CurrentPageSubKey.NONE]: ['notification_created', 'project_deleted', 'admin_message'], }, - [CurrentPage.DATA_BLOCKS]: { + [CurrentPage.DATA_BLOCKS_COLUMNS]: { [CurrentPageSubKey.NONE]: ['data_blocks_created', 'data_blocks_updated', 'data_blocks_deleted', 'calculate_attribute', 'tokenization'], }, + [CurrentPage.DATA_BLOCKS_DETAILS]: { + [CurrentPageSubKey.NONE]: ['calculate_attribute'], + }, } export const WHITELIST_LOOKUP_COGNITION = {