Path: blob/main/components/dashboard/src/user-settings/EnvironmentVariableEntry.tsx
2500 views
/**1* Copyright (c) 2023 Gitpod GmbH. All rights reserved.2* Licensed under the GNU Affero General Public License (AGPL).3* See License.AGPL.txt in the project root for license information.4*/56import { UserEnvVarValue } from "@gitpod/gitpod-protocol";7import { Item, ItemField, ItemFieldContextMenu } from "../components/ItemsList";8import { useState } from "react";910export const EnvironmentVariableEntry = (props: {11variable: UserEnvVarValue;12edit: (varible: UserEnvVarValue) => void;13confirmDeleteVariable: (varible: UserEnvVarValue) => void;14}) => {15const [menuActive, setMenuActive] = useState(false);1617const changeMenuState = (state: boolean) => {18setMenuActive(state);19};2021return (22<Item className="whitespace-nowrap" solid={menuActive}>23<ItemField className="w-5/12 overflow-ellipsis truncate my-auto">{props.variable.name}</ItemField>24<ItemField className="w-5/12 overflow-ellipsis truncate text-sm text-gray-400 my-auto">25{props.variable.repositoryPattern}26</ItemField>27<ItemFieldContextMenu28changeMenuState={changeMenuState}29menuEntries={[30{31title: "Edit",32onClick: () => props.edit(props.variable),33separator: true,34},35{36title: "Delete",37customFontStyle: "text-red-600 dark:text-red-400 hover:text-red-800 dark:hover:text-red-300",38onClick: () => props.confirmDeleteVariable(props.variable),39},40]}41/>42</Item>43);44};454647