Add icons and proto updates for session summaries (#65583)

* Add flag/arrow up icons

* Add more command categories for the summarizer
This commit is contained in:
Ryan Clark
2026-04-09 14:25:00 +00:00
committed by GitHub
parent c4d6c13720
commit badd1f326c
8 changed files with 236 additions and 18 deletions
@@ -120,29 +120,69 @@ const (
// CommandCategoryOther indicates that the command does not fit into any of the
// other categories.
CommandCategory_COMMAND_CATEGORY_OTHER CommandCategory = 7
// CommandCategoryPackageManagement indicates that the command is related to
// package management, such as installing or updating packages.
CommandCategory_COMMAND_CATEGORY_PACKAGE_MANAGEMENT CommandCategory = 8
// CommandCategoryContainer indicates that the command is related to container
// operations, such as Docker or Kubernetes commands.
CommandCategory_COMMAND_CATEGORY_CONTAINER CommandCategory = 9
// CommandCategorySourceControl indicates that the command is related to source
// control, such as Git operations.
CommandCategory_COMMAND_CATEGORY_SOURCE_CONTROL CommandCategory = 10
// CommandCategoryScheduling indicates that the command is related to scheduling,
// such as cron or systemd timer operations.
CommandCategory_COMMAND_CATEGORY_SCHEDULING CommandCategory = 11
// CommandCategoryMonitoring indicates that the command is related to monitoring
// and observability.
CommandCategory_COMMAND_CATEGORY_MONITORING CommandCategory = 12
// CommandCategoryUserManagement indicates that the command is related to user
// and group management.
CommandCategory_COMMAND_CATEGORY_USER_MANAGEMENT CommandCategory = 13
// CommandCategoryTransfer indicates that the command is related to data transfer
// operations, such as scp or rsync.
CommandCategory_COMMAND_CATEGORY_TRANSFER CommandCategory = 14
// CommandCategoryDevelopment indicates that the command is related to development
// tools, such as compilers or build tools.
CommandCategory_COMMAND_CATEGORY_DEVELOPMENT CommandCategory = 15
)
// Enum value maps for CommandCategory.
var (
CommandCategory_name = map[int32]string{
0: "COMMAND_CATEGORY_UNSPECIFIED",
1: "COMMAND_CATEGORY_FILE_OPERATION",
2: "COMMAND_CATEGORY_NETWORK",
3: "COMMAND_CATEGORY_PROCESS",
4: "COMMAND_CATEGORY_SYSTEM_CONFIG",
5: "COMMAND_CATEGORY_DATA_ACCESS",
6: "COMMAND_CATEGORY_AUTHENTICATION",
7: "COMMAND_CATEGORY_OTHER",
0: "COMMAND_CATEGORY_UNSPECIFIED",
1: "COMMAND_CATEGORY_FILE_OPERATION",
2: "COMMAND_CATEGORY_NETWORK",
3: "COMMAND_CATEGORY_PROCESS",
4: "COMMAND_CATEGORY_SYSTEM_CONFIG",
5: "COMMAND_CATEGORY_DATA_ACCESS",
6: "COMMAND_CATEGORY_AUTHENTICATION",
7: "COMMAND_CATEGORY_OTHER",
8: "COMMAND_CATEGORY_PACKAGE_MANAGEMENT",
9: "COMMAND_CATEGORY_CONTAINER",
10: "COMMAND_CATEGORY_SOURCE_CONTROL",
11: "COMMAND_CATEGORY_SCHEDULING",
12: "COMMAND_CATEGORY_MONITORING",
13: "COMMAND_CATEGORY_USER_MANAGEMENT",
14: "COMMAND_CATEGORY_TRANSFER",
15: "COMMAND_CATEGORY_DEVELOPMENT",
}
CommandCategory_value = map[string]int32{
"COMMAND_CATEGORY_UNSPECIFIED": 0,
"COMMAND_CATEGORY_FILE_OPERATION": 1,
"COMMAND_CATEGORY_NETWORK": 2,
"COMMAND_CATEGORY_PROCESS": 3,
"COMMAND_CATEGORY_SYSTEM_CONFIG": 4,
"COMMAND_CATEGORY_DATA_ACCESS": 5,
"COMMAND_CATEGORY_AUTHENTICATION": 6,
"COMMAND_CATEGORY_OTHER": 7,
"COMMAND_CATEGORY_UNSPECIFIED": 0,
"COMMAND_CATEGORY_FILE_OPERATION": 1,
"COMMAND_CATEGORY_NETWORK": 2,
"COMMAND_CATEGORY_PROCESS": 3,
"COMMAND_CATEGORY_SYSTEM_CONFIG": 4,
"COMMAND_CATEGORY_DATA_ACCESS": 5,
"COMMAND_CATEGORY_AUTHENTICATION": 6,
"COMMAND_CATEGORY_OTHER": 7,
"COMMAND_CATEGORY_PACKAGE_MANAGEMENT": 8,
"COMMAND_CATEGORY_CONTAINER": 9,
"COMMAND_CATEGORY_SOURCE_CONTROL": 10,
"COMMAND_CATEGORY_SCHEDULING": 11,
"COMMAND_CATEGORY_MONITORING": 12,
"COMMAND_CATEGORY_USER_MANAGEMENT": 13,
"COMMAND_CATEGORY_TRANSFER": 14,
"COMMAND_CATEGORY_DEVELOPMENT": 15,
}
)
@@ -1673,7 +1713,7 @@ const file_teleport_summarizer_v1_summarizer_proto_rawDesc = "" +
"\x19SUMMARY_STATE_UNSPECIFIED\x10\x00\x12\x19\n" +
"\x15SUMMARY_STATE_PENDING\x10\x01\x12\x19\n" +
"\x15SUMMARY_STATE_SUCCESS\x10\x02\x12\x17\n" +
"\x13SUMMARY_STATE_ERROR\x10\x03*\x9b\x02\n" +
"\x13SUMMARY_STATE_ERROR\x10\x03*\xb2\x04\n" +
"\x0fCommandCategory\x12 \n" +
"\x1cCOMMAND_CATEGORY_UNSPECIFIED\x10\x00\x12#\n" +
"\x1fCOMMAND_CATEGORY_FILE_OPERATION\x10\x01\x12\x1c\n" +
@@ -1682,7 +1722,16 @@ const file_teleport_summarizer_v1_summarizer_proto_rawDesc = "" +
"\x1eCOMMAND_CATEGORY_SYSTEM_CONFIG\x10\x04\x12 \n" +
"\x1cCOMMAND_CATEGORY_DATA_ACCESS\x10\x05\x12#\n" +
"\x1fCOMMAND_CATEGORY_AUTHENTICATION\x10\x06\x12\x1a\n" +
"\x16COMMAND_CATEGORY_OTHER\x10\a*\x80\x01\n" +
"\x16COMMAND_CATEGORY_OTHER\x10\a\x12'\n" +
"#COMMAND_CATEGORY_PACKAGE_MANAGEMENT\x10\b\x12\x1e\n" +
"\x1aCOMMAND_CATEGORY_CONTAINER\x10\t\x12#\n" +
"\x1fCOMMAND_CATEGORY_SOURCE_CONTROL\x10\n" +
"\x12\x1f\n" +
"\x1bCOMMAND_CATEGORY_SCHEDULING\x10\v\x12\x1f\n" +
"\x1bCOMMAND_CATEGORY_MONITORING\x10\f\x12$\n" +
" COMMAND_CATEGORY_USER_MANAGEMENT\x10\r\x12\x1d\n" +
"\x19COMMAND_CATEGORY_TRANSFER\x10\x0e\x12 \n" +
"\x1cCOMMAND_CATEGORY_DEVELOPMENT\x10\x0f*\x80\x01\n" +
"\tRiskLevel\x12\x1a\n" +
"\x16RISK_LEVEL_UNSPECIFIED\x10\x00\x12\x12\n" +
"\x0eRISK_LEVEL_LOW\x10\x01\x12\x15\n" +
@@ -215,6 +215,30 @@ enum CommandCategory {
// CommandCategoryOther indicates that the command does not fit into any of the
// other categories.
COMMAND_CATEGORY_OTHER = 7;
// CommandCategoryPackageManagement indicates that the command is related to
// package management, such as installing or updating packages.
COMMAND_CATEGORY_PACKAGE_MANAGEMENT = 8;
// CommandCategoryContainer indicates that the command is related to container
// operations, such as Docker or Kubernetes commands.
COMMAND_CATEGORY_CONTAINER = 9;
// CommandCategorySourceControl indicates that the command is related to source
// control, such as Git operations.
COMMAND_CATEGORY_SOURCE_CONTROL = 10;
// CommandCategoryScheduling indicates that the command is related to scheduling,
// such as cron or systemd timer operations.
COMMAND_CATEGORY_SCHEDULING = 11;
// CommandCategoryMonitoring indicates that the command is related to monitoring
// and observability.
COMMAND_CATEGORY_MONITORING = 12;
// CommandCategoryUserManagement indicates that the command is related to user
// and group management.
COMMAND_CATEGORY_USER_MANAGEMENT = 13;
// CommandCategoryTransfer indicates that the command is related to data transfer
// operations, such as scp or rsync.
COMMAND_CATEGORY_TRANSFER = 14;
// CommandCategoryDevelopment indicates that the command is related to development
// tools, such as compilers or build tools.
COMMAND_CATEGORY_DEVELOPMENT = 15;
}
// RiskLevel represents the risk level associated with a command.
@@ -54,6 +54,7 @@ export const Icons = () => (
<IconBox IconCmpt={Icon.ArrowSquareIn} text="ArrowSquareIn" />
<IconBox IconCmpt={Icon.ArrowSquareOut} text="ArrowSquareOut" />
<IconBox IconCmpt={Icon.ArrowUp} text="ArrowUp" />
<IconBox IconCmpt={Icon.ArrowUpRight} text="ArrowUpRight" />
<IconBox IconCmpt={Icon.ArrowsIn} text="ArrowsIn" />
<IconBox IconCmpt={Icon.ArrowsOut} text="ArrowsOut" />
<IconBox IconCmpt={Icon.BedrockLogo} text="BedrockLogo" />
@@ -130,6 +131,7 @@ export const Icons = () => (
<IconBox IconCmpt={Icon.FastForward} text="FastForward" />
<IconBox IconCmpt={Icon.FilmStrip} text="FilmStrip" />
<IconBox IconCmpt={Icon.FingerprintSimple} text="FingerprintSimple" />
<IconBox IconCmpt={Icon.Flag} text="Flag" />
<IconBox IconCmpt={Icon.Floppy} text="Floppy" />
<IconBox IconCmpt={Icon.FlowArrow} text="FlowArrow" />
<IconBox IconCmpt={Icon.FolderPlus} text="FolderPlus" />
@@ -0,0 +1,68 @@
/**
* Teleport
* Copyright (C) 2023 Gravitational, Inc.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/* MIT License
Copyright (c) 2020 Phosphor Icons
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
*/
import { forwardRef } from 'react';
import { Icon, IconProps } from '../Icon';
/*
THIS FILE IS GENERATED. DO NOT EDIT.
*/
export const ArrowUpRight = forwardRef<HTMLSpanElement, IconProps>(
({ size = 24, color, ...otherProps }, ref) => (
<Icon
size={size}
color={color}
className="icon icon-arrowupright"
{...otherProps}
ref={ref}
>
<path
fillRule="evenodd"
d="M8.083 5.269c-.175.033-.4.208-.487.378a.78.78 0 0 0 .274 1l.15.093 4.079.011 4.079.01-5.426 5.43c-4.943 4.945-5.43 5.445-5.472 5.604a.751.751 0 0 0 .925.925c.159-.042.659-.529 5.604-5.472l5.43-5.426.01 4.079.011 4.079.093.15a.77.77 0 0 0 1.294 0l.093-.15.012-5.02c.008-3.494-.001-5.065-.031-5.168a.8.8 0 0 0-.419-.477c-.155-.07-.39-.073-5.142-.069-2.739.003-5.023.013-5.077.023"
/>
</Icon>
)
);
@@ -0,0 +1,69 @@
/**
* Teleport
* Copyright (C) 2023 Gravitational, Inc.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/* MIT License
Copyright (c) 2020 Phosphor Icons
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
*/
import { forwardRef } from 'react';
import { Icon, IconProps } from '../Icon';
/*
THIS FILE IS GENERATED. DO NOT EDIT.
*/
export const Flag = forwardRef<HTMLSpanElement, IconProps>(
({ size = 24, color, ...otherProps }, ref) => (
<Icon
size={size}
color={color}
className="icon icon-flag"
{...otherProps}
ref={ref}
>
<path
fillRule="evenodd"
d="M3.259 3.933c1.653-1.431 3.268-1.828 4.845-1.64 1.511.181 2.943.899 4.229 1.535 1.339.663 2.533 1.244 3.74 1.389 1.142.136 2.34-.117 3.686-1.284A.75.75 0 0 1 21 4.5v11.25a.75.75 0 0 1-.259.567c-1.653 1.432-3.268 1.827-4.845 1.639-1.511-.18-2.943-.898-4.229-1.534-1.339-.663-2.533-1.245-3.74-1.389-1.068-.127-2.185.086-3.427 1.07v4.147a.75.75 0 0 1-1.5 0V4.5l.002-.043v-.018a.8.8 0 0 1 .041-.183q.012-.038.027-.072l.028-.05a.8.8 0 0 1 .16-.2m4.668-.15c-1.068-.127-2.185.086-3.427 1.07v9.439c1.223-.703 2.424-.89 3.604-.748 1.511.18 2.943.898 4.229 1.534 1.339.663 2.533 1.244 3.74 1.389 1.068.127 2.185-.087 3.427-1.07v-9.44c-1.223.704-2.424.89-3.604.749-1.511-.18-2.943-.898-4.229-1.534-1.339-.663-2.533-1.245-3.74-1.389"
clipRule="evenodd"
/>
</Icon>
)
);
@@ -0,0 +1 @@
<svg width="24" height="24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M8.083 5.269c-.175.033-.4.208-.487.378a.778.778 0 0 0 .274 1l.15.093 4.079.011 4.079.01-5.426 5.43c-4.943 4.945-5.43 5.445-5.472 5.604a.751.751 0 0 0 .925.925c.159-.042.659-.529 5.604-5.472l5.43-5.426.01 4.079.011 4.079.093.15a.77.77 0 0 0 1.294 0l.093-.15.012-5.02c.008-3.494-.001-5.065-.031-5.168a.793.793 0 0 0-.419-.477c-.155-.07-.39-.073-5.142-.069-2.739.003-5.023.013-5.077.023" fill-rule="evenodd" fill="#000"/></svg>

After

Width:  |  Height:  |  Size: 508 B

@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M3.25879 3.93346C4.91202 2.5016 6.52715 2.1054 8.10449 2.29381C9.61545 2.47434 11.0472 3.19163 12.333 3.82799C13.6719 4.49062 14.8657 5.07238 16.0732 5.21666C17.2145 5.35296 18.4123 5.09953 19.7588 3.93346C19.9807 3.74125 20.2945 3.69623 20.5615 3.81822C20.8284 3.94026 21 4.20641 21 4.49987V15.7499C20.9999 15.9674 20.9056 16.1748 20.7412 16.3172C19.0881 17.749 17.4728 18.1443 15.8955 17.9559C14.3846 17.7754 12.9528 17.0581 11.667 16.4217C10.3281 15.7591 9.13429 15.1774 7.92676 15.0331C6.85904 14.9055 5.74216 15.1194 4.5 16.1024V20.2499C4.49993 20.664 4.16417 20.9999 3.75 20.9999C3.33583 20.9999 3.00007 20.664 3 20.2499V4.49987C3 4.48547 3.00115 4.47109 3.00195 4.4569C3.00229 4.45103 3.00245 4.44517 3.00293 4.43932C3.00594 4.40155 3.01308 4.36495 3.02148 4.32897C3.0273 4.30416 3.03463 4.27991 3.04297 4.25572C3.05133 4.23149 3.05961 4.20747 3.07031 4.18444C3.07839 4.16702 3.08819 4.15051 3.09766 4.13365C3.11186 4.10841 3.12662 4.08374 3.14355 4.06041C3.17661 4.0149 3.21448 3.97188 3.25879 3.93346ZM7.92676 3.78307C6.85904 3.65552 5.74216 3.8694 4.5 4.8524V14.2919C5.72276 13.5892 6.92418 13.4028 8.10449 13.5438C9.61545 13.7243 11.0472 14.4416 12.333 15.078C13.6719 15.7406 14.8657 16.3224 16.0732 16.4667C17.1409 16.5942 18.2579 16.3803 19.5 15.3973V5.95787C18.2772 6.6606 17.0759 6.84689 15.8955 6.70592C14.3846 6.52542 12.9528 5.80809 11.667 5.17174C10.3281 4.50911 9.13429 3.92738 7.92676 3.78307Z" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

+2
View File
@@ -43,6 +43,7 @@ export { ArrowRight } from './Icons/ArrowRight';
export { ArrowSquareIn } from './Icons/ArrowSquareIn';
export { ArrowSquareOut } from './Icons/ArrowSquareOut';
export { ArrowUp } from './Icons/ArrowUp';
export { ArrowUpRight } from './Icons/ArrowUpRight';
export { ArrowsIn } from './Icons/ArrowsIn';
export { ArrowsOut } from './Icons/ArrowsOut';
export { BedrockLogo } from './Icons/BedrockLogo';
@@ -119,6 +120,7 @@ export { Facebook } from './Icons/Facebook';
export { FastForward } from './Icons/FastForward';
export { FilmStrip } from './Icons/FilmStrip';
export { FingerprintSimple } from './Icons/FingerprintSimple';
export { Flag } from './Icons/Flag';
export { Floppy } from './Icons/Floppy';
export { FlowArrow } from './Icons/FlowArrow';
export { FolderPlus } from './Icons/FolderPlus';