From 06de5de85c8165cb06514105632df36f102f76d3 Mon Sep 17 00:00:00 2001 From: Thomas Heartman Date: Wed, 29 May 2024 08:10:47 +0200 Subject: [PATCH 01/28] chore: code cleanup for new project form pt 2 (#7190) This is the second part of the code cleanup job. It primarily consists of breaking apart large files and organizing the code better --- .../ConfigButtons}/ChangeRequestTable.tsx | 0 .../ChangeRequestTableConfigButton.styles.tsx | 11 + .../ChangeRequestTableConfigButton.tsx | 128 +++++ .../ConfigButtons/ConfigButton.styles.tsx | 27 ++ .../ConfigButtons/ConfigButton.tsx | 84 ++++ .../ConfigButtons/DropdownList.styles.tsx | 15 + .../ConfigButtons/DropdownList.tsx | 151 ++++++ .../ConfigButtons/MultiSelectConfigButton.tsx | 42 ++ .../SingleSelectConfigButton.tsx | 40 ++ .../ConfigButtons/shared.styles.tsx | 34 ++ .../CreateProjectDialog.tsx | 2 +- .../NewProjectForm.styles.tsx | 60 +++ .../NewProjectForm.tsx | 160 ++---- .../CreateProject/SelectionButton.styles.tsx | 82 ---- .../Project/CreateProject/SelectionButton.tsx | 459 ------------------ .../project/ProjectList/ProjectList.tsx | 2 +- 16 files changed, 647 insertions(+), 650 deletions(-) rename frontend/src/component/project/Project/CreateProject/{ => NewCreateProjectForm/ConfigButtons}/ChangeRequestTable.tsx (100%) create mode 100644 frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ChangeRequestTableConfigButton.styles.tsx create mode 100644 frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ChangeRequestTableConfigButton.tsx create mode 100644 frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ConfigButton.styles.tsx create mode 100644 frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ConfigButton.tsx create mode 100644 frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/DropdownList.styles.tsx create mode 100644 frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/DropdownList.tsx create mode 100644 frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/MultiSelectConfigButton.tsx create mode 100644 frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/SingleSelectConfigButton.tsx create mode 100644 frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/shared.styles.tsx rename frontend/src/component/project/Project/CreateProject/{CreateProjectDialog => NewCreateProjectForm}/CreateProjectDialog.tsx (99%) create mode 100644 frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/NewProjectForm.styles.tsx rename frontend/src/component/project/Project/CreateProject/{ => NewCreateProjectForm}/NewProjectForm.tsx (72%) delete mode 100644 frontend/src/component/project/Project/CreateProject/SelectionButton.styles.tsx delete mode 100644 frontend/src/component/project/Project/CreateProject/SelectionButton.tsx diff --git a/frontend/src/component/project/Project/CreateProject/ChangeRequestTable.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ChangeRequestTable.tsx similarity index 100% rename from frontend/src/component/project/Project/CreateProject/ChangeRequestTable.tsx rename to frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ChangeRequestTable.tsx diff --git a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ChangeRequestTableConfigButton.styles.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ChangeRequestTableConfigButton.styles.tsx new file mode 100644 index 0000000000..f38aabb57b --- /dev/null +++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ChangeRequestTableConfigButton.styles.tsx @@ -0,0 +1,11 @@ +import { styled } from '@mui/material'; +import { StyledDropdownSearch } from './shared.styles'; + +export const TableSearchInput = styled(StyledDropdownSearch)({ + maxWidth: '30ch', +}); + +export const ScrollContainer = styled('div')({ + width: '100%', + overflow: 'auto', +}); diff --git a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ChangeRequestTableConfigButton.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ChangeRequestTableConfigButton.tsx new file mode 100644 index 0000000000..28c3f9c935 --- /dev/null +++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ChangeRequestTableConfigButton.tsx @@ -0,0 +1,128 @@ +import { type FC, useState, useMemo } from 'react'; +import { ConfigButton, type ConfigButtonProps } from './ConfigButton'; +import { InputAdornment } from '@mui/material'; +import Search from '@mui/icons-material/Search'; +import { ChangeRequestTable } from './ChangeRequestTable'; +import { TableSearchInput } from './ChangeRequestTableConfigButton.styles'; + +type ChangeRequestTableConfigButtonProps = Pick< + ConfigButtonProps, + 'button' | 'onOpen' | 'onClose' | 'description' +> & { + search: { + label: string; + placeholder: string; + }; + updateProjectChangeRequestConfiguration: { + disableChangeRequests: (env: string) => void; + enableChangeRequests: (env: string, requiredApprovals: number) => void; + }; + activeEnvironments: { + name: string; + type: string; + }[]; + projectChangeRequestConfiguration: Record< + string, + { requiredApprovals: number } + >; +}; + +export const ChangeRequestTableConfigButton: FC< + ChangeRequestTableConfigButtonProps +> = ({ + button, + search, + projectChangeRequestConfiguration, + updateProjectChangeRequestConfiguration, + activeEnvironments, + onOpen = () => {}, + onClose = () => {}, + ...props +}) => { + const configured = useMemo(() => { + return Object.fromEntries( + Object.entries(projectChangeRequestConfiguration).map( + ([name, config]) => [ + name, + { ...config, changeRequestEnabled: true }, + ], + ), + ); + }, [projectChangeRequestConfiguration]); + + const tableEnvs = useMemo( + () => + activeEnvironments.map(({ name, type }) => ({ + name, + type, + ...(configured[name] ?? { changeRequestEnabled: false }), + })), + [configured, activeEnvironments], + ); + + const onEnable = (name: string, requiredApprovals: number) => { + updateProjectChangeRequestConfiguration.enableChangeRequests( + name, + requiredApprovals, + ); + }; + + const onDisable = (name: string) => { + updateProjectChangeRequestConfiguration.disableChangeRequests(name); + }; + + const [anchorEl, setAnchorEl] = useState(); + const [searchText, setSearchText] = useState(''); + + const filteredEnvs = tableEnvs.filter((env) => + env.name.toLowerCase().includes(searchText.toLowerCase()), + ); + + const toggleTopItem = (event: React.KeyboardEvent) => { + if ( + event.key === 'Enter' && + searchText.trim().length > 0 && + filteredEnvs.length > 0 + ) { + const firstEnv = filteredEnvs[0]; + if (firstEnv.name in configured) { + onDisable(firstEnv.name); + } else { + onEnable(firstEnv.name, 1); + } + } + }; + + return ( + + setSearchText(event.target.value)} + hideLabel + label={search.label} + placeholder={search.placeholder} + autoFocus + InputProps={{ + startAdornment: ( + + + + ), + }} + onKeyDown={toggleTopItem} + /> + + + ); +}; diff --git a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ConfigButton.styles.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ConfigButton.styles.tsx new file mode 100644 index 0000000000..14be4832f9 --- /dev/null +++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ConfigButton.styles.tsx @@ -0,0 +1,27 @@ +import { Popover, styled } from '@mui/material'; +import { visuallyHiddenStyles } from './shared.styles'; + +export const StyledDropdown = styled('div')(({ theme }) => ({ + padding: theme.spacing(2), + display: 'flex', + flexDirection: 'column', + gap: theme.spacing(1), + maxHeight: '70vh', +})); + +export const StyledPopover = styled(Popover)(({ theme }) => ({ + '& .MuiPaper-root': { + borderRadius: `${theme.shape.borderRadiusMedium}px`, + }, +})); + +export const HiddenDescription = styled('p')(() => ({ + ...visuallyHiddenStyles, + position: 'absolute', +})); + +export const ButtonLabel = styled('span', { + shouldForwardProp: (prop) => prop !== 'labelWidth', +})<{ labelWidth?: string }>(({ labelWidth }) => ({ + width: labelWidth || 'unset', +})); diff --git a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ConfigButton.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ConfigButton.tsx new file mode 100644 index 0000000000..06aaa4d8b5 --- /dev/null +++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ConfigButton.tsx @@ -0,0 +1,84 @@ +import { v4 as uuidv4 } from 'uuid'; +import { type FC, type ReactNode, useRef, type PropsWithChildren } from 'react'; +import { Box, Button } from '@mui/material'; +import { + StyledDropdown, + StyledPopover, + HiddenDescription, + ButtonLabel, +} from './ConfigButton.styles'; + +export type ConfigButtonProps = { + button: { label: string; icon: ReactNode; labelWidth?: string }; + onOpen?: () => void; + onClose?: () => void; + description: string; + preventOpen?: boolean; + anchorEl: HTMLDivElement | null | undefined; + setAnchorEl: (el: HTMLDivElement | null | undefined) => void; +}; + +export const ConfigButton: FC> = ({ + button, + onOpen = () => {}, + onClose = () => {}, + description, + children, + preventOpen, + anchorEl, + setAnchorEl, +}) => { + const ref = useRef(null); + const descriptionId = uuidv4(); + + const open = () => { + setAnchorEl(ref.current); + onOpen(); + }; + + const handleClose = () => { + setAnchorEl(null); + onClose(); + }; + + return ( + <> + + + + + + {description} + + + {children} + + + + ); +}; diff --git a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/DropdownList.styles.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/DropdownList.styles.tsx new file mode 100644 index 0000000000..ca73fd0151 --- /dev/null +++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/DropdownList.styles.tsx @@ -0,0 +1,15 @@ +import { Checkbox, ListItem, styled } from '@mui/material'; + +export const StyledListItem = styled(ListItem)(({ theme }) => ({ + paddingLeft: theme.spacing(1), + cursor: 'pointer', + '&:hover, &:focus': { + backgroundColor: theme.palette.action.hover, + outline: 'none', + }, + minHeight: theme.spacing(4.5), +})); + +export const StyledCheckbox = styled(Checkbox)(({ theme }) => ({ + padding: theme.spacing(1, 1, 1, 1.5), +})); diff --git a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/DropdownList.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/DropdownList.tsx new file mode 100644 index 0000000000..c95ad1f08f --- /dev/null +++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/DropdownList.tsx @@ -0,0 +1,151 @@ +import Search from '@mui/icons-material/Search'; +import { type FC, useRef, useState } from 'react'; +import { InputAdornment, List, ListItemText } from '@mui/material'; +import { StyledDropdownSearch } from './shared.styles'; +import { StyledCheckbox, StyledListItem } from './DropdownList.styles'; + +const useSelectionManagement = ( + handleToggle: (value: string) => () => void, +) => { + const listRefs = useRef>([]); + + const handleSelection = ( + event: React.KeyboardEvent, + index: number, + filteredOptions: { label: string; value: string }[], + ) => { + // we have to be careful not to prevent other keys e.g tab + if (event.key === 'ArrowDown' && index < listRefs.current.length - 1) { + event.preventDefault(); + listRefs.current[index + 1]?.focus(); + } else if (event.key === 'ArrowUp' && index > 0) { + event.preventDefault(); + listRefs.current[index - 1]?.focus(); + } else if ( + event.key === 'Enter' && + index === 0 && + listRefs.current[0]?.value && + filteredOptions.length > 0 + ) { + // if the search field is not empty and the user presses + // enter from the search field, toggle the topmost item in + // the filtered list event.preventDefault(); + handleToggle(filteredOptions[0].value)(); + } else if ( + event.key === 'Enter' || + // allow selection with space when not in the search field + (index !== 0 && event.key === ' ') + ) { + event.preventDefault(); + if (index > 0) { + const listItemIndex = index - 1; + handleToggle(filteredOptions[listItemIndex].value)(); + } + } + }; + + return { listRefs, handleSelection }; +}; + +export type DropdownListProps = { + options: Array<{ label: string; value: string }>; + onChange: (value: string) => void; + search: { + label: string; + placeholder: string; + }; + multiselect?: { selectedOptions: Set }; +}; + +export const DropdownList: FC = ({ + options, + onChange, + search, + multiselect, +}) => { + const [searchText, setSearchText] = useState(''); + + const onSelection = (selected: string) => { + onChange(selected); + }; + + const { listRefs, handleSelection } = useSelectionManagement( + (selected: string) => () => onSelection(selected), + ); + + const filteredOptions = options?.filter((option) => + option.label.toLowerCase().includes(searchText.toLowerCase()), + ); + + return ( + <> + setSearchText(event.target.value)} + label={search.label} + hideLabel + placeholder={search.placeholder} + autoFocus + InputProps={{ + startAdornment: ( + + + + ), + }} + inputRef={(el) => { + listRefs.current[0] = el; + }} + onKeyDown={(event) => + handleSelection(event, 0, filteredOptions) + } + /> + + {filteredOptions.map((option, index) => { + const labelId = `checkbox-list-label-${option.value}`; + + return ( + { + onSelection(option.value); + }} + ref={(el) => { + listRefs.current[index + 1] = el; + }} + onKeyDown={(event) => + handleSelection( + event, + index + 1, + filteredOptions, + ) + } + > + {multiselect ? ( + + ) : null} + + + ); + })} + + + ); +}; diff --git a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/MultiSelectConfigButton.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/MultiSelectConfigButton.tsx new file mode 100644 index 0000000000..4888cfcbaa --- /dev/null +++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/MultiSelectConfigButton.tsx @@ -0,0 +1,42 @@ +import { type FC, useState } from 'react'; +import { ConfigButton, type ConfigButtonProps } from './ConfigButton'; +import { DropdownList, type DropdownListProps } from './DropdownList'; + +type MultiSelectConfigButtonProps = Pick< + ConfigButtonProps, + 'button' | 'onOpen' | 'onClose' | 'description' +> & + Pick & { + selectedOptions: Set; + onChange: (values: Set) => void; + }; + +export const MultiSelectConfigButton: FC = ({ + selectedOptions, + onChange, + ...rest +}) => { + const [anchorEl, setAnchorEl] = useState(); + + const handleToggle = (value: string) => { + if (selectedOptions.has(value)) { + selectedOptions.delete(value); + } else { + selectedOptions.add(value); + } + + onChange(new Set(selectedOptions)); + }; + + return ( + + + + ); +}; diff --git a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/SingleSelectConfigButton.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/SingleSelectConfigButton.tsx new file mode 100644 index 0000000000..e47d175418 --- /dev/null +++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/SingleSelectConfigButton.tsx @@ -0,0 +1,40 @@ +import { type FC, useState } from 'react'; +import { ConfigButton, type ConfigButtonProps } from './ConfigButton'; +import { DropdownList, type DropdownListProps } from './DropdownList'; + +type SingleSelectConfigButtonProps = Pick< + ConfigButtonProps, + 'button' | 'onOpen' | 'onClose' | 'description' +> & + Pick; + +export const SingleSelectConfigButton: FC = ({ + onChange, + ...props +}) => { + const [anchorEl, setAnchorEl] = useState(); + const [recentlyClosed, setRecentlyClosed] = useState(false); + + const handleChange = (value: any) => { + onChange(value); + setAnchorEl(null); + props.onClose && props.onClose(); + + setRecentlyClosed(true); + // this is a hack to prevent the button from being + // auto-clicked after you select an item by pressing enter + // in the search bar for single-select lists. + setTimeout(() => setRecentlyClosed(false), 1); + }; + + return ( + + + + ); +}; diff --git a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/shared.styles.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/shared.styles.tsx new file mode 100644 index 0000000000..735261af66 --- /dev/null +++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/shared.styles.tsx @@ -0,0 +1,34 @@ +import { TextField, styled } from '@mui/material'; + +export const visuallyHiddenStyles = { + border: 0, + clip: 'rect(0 0 0 0)', + height: 'auto', + margin: 0, + overflow: 'hidden', + padding: 0, + position: 'absolute', + width: '1px', + whiteSpace: 'nowrap', +}; + +export const StyledDropdownSearch = styled(TextField, { + shouldForwardProp: (prop) => prop !== 'hideLabel', +})<{ hideLabel?: boolean }>(({ theme, hideLabel }) => ({ + '& .MuiInputBase-root': { + padding: theme.spacing(0, 1.5), + borderRadius: `${theme.shape.borderRadiusMedium}px`, + }, + '& .MuiInputBase-input': { + padding: theme.spacing(0.75, 0), + fontSize: theme.typography.body2.fontSize, + }, + + ...(hideLabel + ? { + label: visuallyHiddenStyles, + + 'fieldset > legend > span': visuallyHiddenStyles, + } + : {}), +})); diff --git a/frontend/src/component/project/Project/CreateProject/CreateProjectDialog/CreateProjectDialog.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/CreateProjectDialog.tsx similarity index 99% rename from frontend/src/component/project/Project/CreateProject/CreateProjectDialog/CreateProjectDialog.tsx rename to frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/CreateProjectDialog.tsx index 808d00a05c..e1b2111a17 100644 --- a/frontend/src/component/project/Project/CreateProject/CreateProjectDialog/CreateProjectDialog.tsx +++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/CreateProjectDialog.tsx @@ -2,7 +2,7 @@ import { formatUnknownError } from 'utils/formatUnknownError'; import useProjectApi from 'hooks/api/actions/useProjectApi/useProjectApi'; import useToast from 'hooks/useToast'; import FormTemplate from 'component/common/FormTemplate/FormTemplate'; -import { NewProjectForm } from '../NewProjectForm'; +import { NewProjectForm } from './NewProjectForm'; import { CreateButton } from 'component/common/CreateButton/CreateButton'; import { CREATE_PROJECT } from 'component/providers/AccessProvider/permissions'; import useProjectForm, { diff --git a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/NewProjectForm.styles.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/NewProjectForm.styles.tsx new file mode 100644 index 0000000000..8bc7d6dad9 --- /dev/null +++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/NewProjectForm.styles.tsx @@ -0,0 +1,60 @@ +import { Typography, styled } from '@mui/material'; +import Input from 'component/common/Input/Input'; +import { ReactComponent as ProjectIcon } from 'assets/icons/projectIconSmall.svg'; + +export const StyledForm = styled('form')(({ theme }) => ({ + background: theme.palette.background.default, +})); + +export const StyledFormSection = styled('div')(({ theme }) => ({ + '& + *': { + borderBlockStart: `1px solid ${theme.palette.divider}`, + }, + + padding: theme.spacing(6), +})); + +export const TopGrid = styled(StyledFormSection)(({ theme }) => ({ + display: 'grid', + gridTemplateAreas: + '"icon header" "icon project-name" "icon project-description"', + gridTemplateColumns: 'auto 1fr', + gap: theme.spacing(4), +})); + +export const StyledIcon = styled(ProjectIcon)(({ theme }) => ({ + fill: theme.palette.primary.main, + stroke: theme.palette.primary.main, +})); + +export const StyledHeader = styled(Typography)({ + gridArea: 'header', + alignSelf: 'center', + fontWeight: 'lighter', +}); + +export const ProjectNameContainer = styled('div')({ + gridArea: 'project-name', +}); + +export const ProjectDescriptionContainer = styled('div')({ + gridArea: 'project-description', +}); + +export const StyledInput = styled(Input)({ + width: '100%', + fieldset: { border: 'none' }, +}); + +export const OptionButtons = styled(StyledFormSection)(({ theme }) => ({ + display: 'flex', + flexFlow: 'row wrap', + gap: theme.spacing(2), +})); + +export const FormActions = styled(StyledFormSection)(({ theme }) => ({ + display: 'flex', + gap: theme.spacing(5), + justifyContent: 'flex-end', + flexFlow: 'row wrap', +})); diff --git a/frontend/src/component/project/Project/CreateProject/NewProjectForm.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/NewProjectForm.tsx similarity index 72% rename from frontend/src/component/project/Project/CreateProject/NewProjectForm.tsx rename to frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/NewProjectForm.tsx index b5ed31dbb1..5c22df7568 100644 --- a/frontend/src/component/project/Project/CreateProject/NewProjectForm.tsx +++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/NewProjectForm.tsx @@ -1,12 +1,4 @@ -import { Typography, styled } from '@mui/material'; -import Input from 'component/common/Input/Input'; -import type { ProjectMode } from '../hooks/useProjectEnterpriseSettingsForm'; -import { ReactComponent as ProjectIcon } from 'assets/icons/projectIconSmall.svg'; -import { - MultiSelectList, - SingleSelectList, - TableSelect, -} from './SelectionButton'; +import type { ProjectMode } from '../../hooks/useProjectEnterpriseSettingsForm'; import { useEnvironments } from 'hooks/api/getters/useEnvironments/useEnvironments'; import StickinessIcon from '@mui/icons-material/FormatPaint'; import ProjectModeIcon from '@mui/icons-material/Adjust'; @@ -17,63 +9,20 @@ import { useStickinessOptions } from 'hooks/useStickinessOptions'; import { ReactComponent as ChangeRequestIcon } from 'assets/icons/merge.svg'; import type { ReactNode } from 'react'; import theme from 'themes/theme'; - -const StyledForm = styled('form')(({ theme }) => ({ - background: theme.palette.background.default, -})); - -const StyledFormSection = styled('div')(({ theme }) => ({ - '& + *': { - borderBlockStart: `1px solid ${theme.palette.divider}`, - }, - - padding: theme.spacing(6), -})); - -const TopGrid = styled(StyledFormSection)(({ theme }) => ({ - display: 'grid', - gridTemplateAreas: - '"icon header" "icon project-name" "icon project-description"', - gridTemplateColumns: 'auto 1fr', - gap: theme.spacing(4), -})); - -const StyledIcon = styled(ProjectIcon)(({ theme }) => ({ - fill: theme.palette.primary.main, - stroke: theme.palette.primary.main, -})); - -const StyledHeader = styled(Typography)(({ theme }) => ({ - gridArea: 'header', - alignSelf: 'center', - fontWeight: 'lighter', -})); - -const ProjectNameContainer = styled('div')(({ theme }) => ({ - gridArea: 'project-name', -})); - -const ProjectDescriptionContainer = styled('div')(({ theme }) => ({ - gridArea: 'project-description', -})); - -const StyledInput = styled(Input)(({ theme }) => ({ - width: '100%', - fieldset: { border: 'none' }, -})); - -const OptionButtons = styled(StyledFormSection)(({ theme }) => ({ - display: 'flex', - flexFlow: 'row wrap', - gap: theme.spacing(2), -})); - -const FormActions = styled(StyledFormSection)(({ theme }) => ({ - display: 'flex', - gap: theme.spacing(5), - justifyContent: 'flex-end', - flexFlow: 'row wrap', -})); +import { + FormActions, + OptionButtons, + ProjectDescriptionContainer, + ProjectNameContainer, + StyledForm, + StyledHeader, + StyledIcon, + StyledInput, + TopGrid, +} from './NewProjectForm.styles'; +import { MultiSelectConfigButton } from './ConfigButtons/MultiSelectConfigButton'; +import { SingleSelectConfigButton } from './ConfigButtons/SingleSelectConfigButton'; +import { ChangeRequestTableConfigButton } from './ConfigButtons/ChangeRequestTableConfigButton'; type FormProps = { projectId: string; @@ -104,6 +53,31 @@ type FormProps = { const PROJECT_NAME_INPUT = 'PROJECT_NAME_INPUT'; const PROJECT_DESCRIPTION_INPUT = 'PROJECT_DESCRIPTION_INPUT'; +const projectModeOptions = [ + { value: 'open', label: 'open' }, + { value: 'protected', label: 'protected' }, + { value: 'private', label: 'private' }, +]; + +const configButtonData = { + environments: { + icon: , + text: `Each feature flag can have a separate configuration per environment. This setting configures which environments your project should start with.`, + }, + stickiness: { + icon: , + text: 'Stickiness is used to guarantee that your users see the same result when using a gradual rollout. Default stickiness allows you to choose which field is used by default in this project.', + }, + mode: { + icon: , + text: 'Mode defines who should be allowed to interact and see your project. Private mode hides the project from anyone except the project owner and members.', + }, + changeRequests: { + icon: , + text: 'Change requests can be configured per environment and require changes to go through an approval process before being applied.', + }, +}; + export const NewProjectForm: React.FC = ({ children, handleSubmit, @@ -126,6 +100,7 @@ export const NewProjectForm: React.FC = ({ const { isEnterprise } = useUiConfig(); const { environments: allEnvironments } = useEnvironments(); const activeEnvironments = allEnvironments.filter((env) => env.enabled); + const stickinessOptions = useStickinessOptions(projectStickiness); const handleProjectNameUpdate = ( e: React.ChangeEvent, @@ -134,33 +109,6 @@ export const NewProjectForm: React.FC = ({ setProjectName(input); }; - const projectModeOptions = [ - { value: 'open', label: 'open' }, - { value: 'protected', label: 'protected' }, - { value: 'private', label: 'private' }, - ]; - - const stickinessOptions = useStickinessOptions(projectStickiness); - - const selectionButtonData = { - environments: { - icon: , - text: `Each feature flag can have a separate configuration per environment. This setting configures which environments your project should start with.`, - }, - stickiness: { - icon: , - text: 'Stickiness is used to guarantee that your users see the same result when using a gradual rollout. Default stickiness allows you to choose which field is used by default in this project.', - }, - mode: { - icon: , - text: 'Mode defines who should be allowed to interact and see your project. Private mode hides the project from anyone except the project owner and members.', - }, - changeRequests: { - icon: , - text: 'Change requests can be configured per environment and require changes to go through an approval process before being applied.', - }, - }; - const numberOfConfiguredChangeRequestEnvironments = Object.keys( projectChangeRequestConfiguration, ).length; @@ -231,8 +179,8 @@ export const NewProjectForm: React.FC = ({ - ({ label: env.name, @@ -252,13 +200,13 @@ export const NewProjectForm: React.FC = ({ placeholder: 'Select project environments', }} onOpen={() => - overrideDocumentation(selectionButtonData.environments) + overrideDocumentation(configButtonData.environments) } onClose={clearDocumentationOverride} /> - ({ value: key, ...rest, @@ -275,7 +223,7 @@ export const NewProjectForm: React.FC = ({ placeholder: 'Select default stickiness', }} onOpen={() => - overrideDocumentation(selectionButtonData.stickiness) + overrideDocumentation(configButtonData.stickiness) } onClose={clearDocumentationOverride} /> @@ -283,8 +231,8 @@ export const NewProjectForm: React.FC = ({ { setProjectMode(value); @@ -299,7 +247,7 @@ export const NewProjectForm: React.FC = ({ placeholder: 'Select project mode', }} onOpen={() => - overrideDocumentation(selectionButtonData.mode) + overrideDocumentation(configButtonData.mode) } onClose={clearDocumentationOverride} /> @@ -308,10 +256,8 @@ export const NewProjectForm: React.FC = ({ = ({ } onOpen={() => overrideDocumentation( - selectionButtonData.changeRequests, + configButtonData.changeRequests, ) } onClose={clearDocumentationOverride} diff --git a/frontend/src/component/project/Project/CreateProject/SelectionButton.styles.tsx b/frontend/src/component/project/Project/CreateProject/SelectionButton.styles.tsx deleted file mode 100644 index f58d97e116..0000000000 --- a/frontend/src/component/project/Project/CreateProject/SelectionButton.styles.tsx +++ /dev/null @@ -1,82 +0,0 @@ -import { Checkbox, ListItem, Popover, TextField, styled } from '@mui/material'; - -export const StyledDropdown = styled('div')(({ theme }) => ({ - padding: theme.spacing(2), - display: 'flex', - flexDirection: 'column', - gap: theme.spacing(1), - maxHeight: '70vh', -})); - -export const StyledListItem = styled(ListItem)(({ theme }) => ({ - paddingLeft: theme.spacing(1), - cursor: 'pointer', - '&:hover, &:focus': { - backgroundColor: theme.palette.action.hover, - outline: 'none', - }, - minHeight: theme.spacing(4.5), -})); - -export const StyledCheckbox = styled(Checkbox)(({ theme }) => ({ - padding: theme.spacing(1, 1, 1, 1.5), -})); - -export const StyledPopover = styled(Popover)(({ theme }) => ({ - '& .MuiPaper-root': { - borderRadius: `${theme.shape.borderRadiusMedium}px`, - }, -})); - -const visuallyHiddenStyles = { - border: 0, - clip: 'rect(0 0 0 0)', - height: 'auto', - margin: 0, - overflow: 'hidden', - padding: 0, - position: 'absolute', - width: '1px', - whiteSpace: 'nowrap', -}; - -export const HiddenDescription = styled('p')(() => ({ - ...visuallyHiddenStyles, - position: 'absolute', -})); - -export const StyledDropdownSearch = styled(TextField, { - shouldForwardProp: (prop) => prop !== 'hideLabel', -})<{ hideLabel?: boolean }>(({ theme, hideLabel }) => ({ - '& .MuiInputBase-root': { - padding: theme.spacing(0, 1.5), - borderRadius: `${theme.shape.borderRadiusMedium}px`, - }, - '& .MuiInputBase-input': { - padding: theme.spacing(0.75, 0), - fontSize: theme.typography.body2.fontSize, - }, - - ...(hideLabel - ? { - label: visuallyHiddenStyles, - - 'fieldset > legend > span': visuallyHiddenStyles, - } - : {}), -})); - -export const TableSearchInput = styled(StyledDropdownSearch)(({ theme }) => ({ - maxWidth: '30ch', -})); - -export const ScrollContainer = styled('div')(({ theme }) => ({ - width: '100%', - overflow: 'auto', -})); - -export const ButtonLabel = styled('span', { - shouldForwardProp: (prop) => prop !== 'labelWidth', -})<{ labelWidth?: string }>(({ labelWidth }) => ({ - width: labelWidth || 'unset', -})); diff --git a/frontend/src/component/project/Project/CreateProject/SelectionButton.tsx b/frontend/src/component/project/Project/CreateProject/SelectionButton.tsx deleted file mode 100644 index 2539542e38..0000000000 --- a/frontend/src/component/project/Project/CreateProject/SelectionButton.tsx +++ /dev/null @@ -1,459 +0,0 @@ -import Search from '@mui/icons-material/Search'; -import { v4 as uuidv4 } from 'uuid'; -import { - type FC, - type ReactNode, - useRef, - useState, - useMemo, - type PropsWithChildren, -} from 'react'; -import { Box, Button, InputAdornment, List, ListItemText } from '@mui/material'; -import { - StyledCheckbox, - StyledDropdown, - StyledListItem, - StyledPopover, - StyledDropdownSearch, - TableSearchInput, - HiddenDescription, - ButtonLabel, -} from './SelectionButton.styles'; -import { ChangeRequestTable } from './ChangeRequestTable'; - -export interface IFilterItemProps { - label: ReactNode; - options: Array<{ label: string; value: string }>; - selectedOptions: Set; - onChange: (values: Set) => void; -} - -export type FilterItemParams = { - operator: string; - values: string[]; -}; - -interface UseSelectionManagementProps { - handleToggle: (value: string) => () => void; -} - -const useSelectionManagement = ({ - handleToggle, -}: UseSelectionManagementProps) => { - const listRefs = useRef>([]); - - const handleSelection = ( - event: React.KeyboardEvent, - index: number, - filteredOptions: { label: string; value: string }[], - ) => { - // we have to be careful not to prevent other keys e.g tab - if (event.key === 'ArrowDown' && index < listRefs.current.length - 1) { - event.preventDefault(); - listRefs.current[index + 1]?.focus(); - } else if (event.key === 'ArrowUp' && index > 0) { - event.preventDefault(); - listRefs.current[index - 1]?.focus(); - } else if ( - event.key === 'Enter' && - index === 0 && - listRefs.current[0]?.value && - filteredOptions.length > 0 - ) { - // if the search field is not empty and the user presses - // enter from the search field, toggle the topmost item in - // the filtered list event.preventDefault(); - handleToggle(filteredOptions[0].value)(); - } else if ( - event.key === 'Enter' || - // allow selection with space when not in the search field - (index !== 0 && event.key === ' ') - ) { - event.preventDefault(); - if (index > 0) { - const listItemIndex = index - 1; - handleToggle(filteredOptions[listItemIndex].value)(); - } - } - }; - - return { listRefs, handleSelection }; -}; - -type CombinedSelectProps = { - options: Array<{ label: string; value: string }>; - onChange: (value: string) => void; - button: { label: string; icon: ReactNode; labelWidth?: string }; - search: { - label: string; - placeholder: string; - }; - multiselect?: { selectedOptions: Set }; - onOpen?: () => void; - onClose?: () => void; - description: string; // visually hidden, for assistive tech -}; - -const CombinedSelect: FC< - PropsWithChildren<{ - button: { label: string; icon: ReactNode; labelWidth?: string }; - onOpen?: () => void; - onClose?: () => void; - description: string; - preventOpen?: boolean; - anchorEl: HTMLDivElement | null | undefined; - setAnchorEl: (el: HTMLDivElement | null | undefined) => void; - }> -> = ({ - button, - onOpen = () => {}, - onClose = () => {}, - description, - children, - preventOpen, - anchorEl, - setAnchorEl, -}) => { - const ref = useRef(null); - const descriptionId = uuidv4(); - - const open = () => { - setAnchorEl(ref.current); - onOpen(); - }; - - const handleClose = () => { - setAnchorEl(null); - onClose(); - }; - - return ( - <> - - - - - - {description} - - - {children} - - - - ); -}; - -const DropdownList: FC = ({ - options, - onChange, - search, - multiselect, -}) => { - const [searchText, setSearchText] = useState(''); - - const onSelection = (selected: string) => { - onChange(selected); - }; - - const { listRefs, handleSelection } = useSelectionManagement({ - handleToggle: (selected: string) => () => onSelection(selected), - }); - - const filteredOptions = options?.filter((option) => - option.label.toLowerCase().includes(searchText.toLowerCase()), - ); - - return ( - <> - setSearchText(event.target.value)} - label={search.label} - hideLabel - placeholder={search.placeholder} - autoFocus - InputProps={{ - startAdornment: ( - - - - ), - }} - inputRef={(el) => { - listRefs.current[0] = el; - }} - onKeyDown={(event) => - handleSelection(event, 0, filteredOptions) - } - /> - - {filteredOptions.map((option, index) => { - const labelId = `checkbox-list-label-${option.value}`; - - return ( - { - onSelection(option.value); - }} - ref={(el) => { - listRefs.current[index + 1] = el; - }} - onKeyDown={(event) => - handleSelection( - event, - index + 1, - filteredOptions, - ) - } - > - {multiselect ? ( - - ) : null} - - - ); - })} - - - ); -}; - -type SingleSelectListProps = Pick< - CombinedSelectProps, - | 'options' - | 'button' - | 'search' - | 'onChange' - | 'onOpen' - | 'onClose' - | 'description' ->; - -export const SingleSelectList: FC = ({ - onChange, - ...props -}) => { - const [anchorEl, setAnchorEl] = useState(); - const [recentlyClosed, setRecentlyClosed] = useState(false); - - const handleChange = (value: any) => { - onChange(value); - setAnchorEl(null); - props.onClose && props.onClose(); - - setRecentlyClosed(true); - // this is a hack to prevent the button from being - // auto-clicked after you select an item by pressing enter - // in the search bar for single-select lists. - setTimeout(() => setRecentlyClosed(false), 1); - }; - - return ( - - - - ); -}; - -type MultiselectListProps = Pick< - CombinedSelectProps, - 'options' | 'button' | 'search' | 'onOpen' | 'onClose' | 'description' -> & { - selectedOptions: Set; - onChange: (values: Set) => void; -}; - -export const MultiSelectList: FC = ({ - selectedOptions, - onChange, - ...rest -}) => { - const [anchorEl, setAnchorEl] = useState(); - - const handleToggle = (value: string) => { - if (selectedOptions.has(value)) { - selectedOptions.delete(value); - } else { - selectedOptions.add(value); - } - - onChange(new Set(selectedOptions)); - }; - - return ( - - - - ); -}; - -type TableSelectProps = Pick< - CombinedSelectProps, - 'button' | 'search' | 'onOpen' | 'onClose' | 'description' -> & { - updateProjectChangeRequestConfiguration: { - disableChangeRequests: (env: string) => void; - enableChangeRequests: (env: string, requiredApprovals: number) => void; - }; - activeEnvironments: { - name: string; - type: string; - }[]; - projectChangeRequestConfiguration: Record< - string, - { requiredApprovals: number } - >; -}; - -export const TableSelect: FC = ({ - button, - search, - projectChangeRequestConfiguration, - updateProjectChangeRequestConfiguration, - activeEnvironments, - onOpen = () => {}, - onClose = () => {}, - ...props -}) => { - const configured = useMemo(() => { - return Object.fromEntries( - Object.entries(projectChangeRequestConfiguration).map( - ([name, config]) => [ - name, - { ...config, changeRequestEnabled: true }, - ], - ), - ); - }, [projectChangeRequestConfiguration]); - - const tableEnvs = useMemo( - () => - activeEnvironments.map(({ name, type }) => ({ - name, - type, - ...(configured[name] ?? { changeRequestEnabled: false }), - })), - [configured, activeEnvironments], - ); - - const onEnable = (name: string, requiredApprovals: number) => { - updateProjectChangeRequestConfiguration.enableChangeRequests( - name, - requiredApprovals, - ); - }; - - const onDisable = (name: string) => { - updateProjectChangeRequestConfiguration.disableChangeRequests(name); - }; - - const [anchorEl, setAnchorEl] = useState(); - const [searchText, setSearchText] = useState(''); - - const filteredEnvs = tableEnvs.filter((env) => - env.name.toLowerCase().includes(searchText.toLowerCase()), - ); - - const toggleTopItem = (event: React.KeyboardEvent) => { - if ( - event.key === 'Enter' && - searchText.trim().length > 0 && - filteredEnvs.length > 0 - ) { - const firstEnv = filteredEnvs[0]; - if (firstEnv.name in configured) { - onDisable(firstEnv.name); - } else { - onEnable(firstEnv.name, 1); - } - } - }; - - return ( - - setSearchText(event.target.value)} - hideLabel - label={search.label} - placeholder={search.placeholder} - autoFocus - InputProps={{ - startAdornment: ( - - - - ), - }} - onKeyDown={toggleTopItem} - /> - - - ); -}; diff --git a/frontend/src/component/project/ProjectList/ProjectList.tsx b/frontend/src/component/project/ProjectList/ProjectList.tsx index 3865a5bbfe..1093cdefa5 100644 --- a/frontend/src/component/project/ProjectList/ProjectList.tsx +++ b/frontend/src/component/project/ProjectList/ProjectList.tsx @@ -24,7 +24,7 @@ import { useUiFlag } from 'hooks/useUiFlag'; import { useProfile } from 'hooks/api/getters/useProfile/useProfile'; import { groupProjects } from './group-projects'; import { ProjectGroup } from './ProjectGroup'; -import { CreateProjectDialog } from '../Project/CreateProject/CreateProjectDialog/CreateProjectDialog'; +import { CreateProjectDialog } from '../Project/CreateProject/NewCreateProjectForm/CreateProjectDialog'; const StyledApiError = styled(ApiError)(({ theme }) => ({ maxWidth: '500px', From b592255ce7ccb8aba29ea0e8ac767370b686ad87 Mon Sep 17 00:00:00 2001 From: David Leek Date: Wed, 29 May 2024 08:37:20 +0200 Subject: [PATCH 02/28] chore: remove unused artillery scripts referencing state api (#7194) --- perf/README.md | 32 -------------------------------- perf/env.sh | 4 ---- perf/seed/.gitignore | 1 - perf/seed/export.sh | 12 ------------ perf/seed/import.sh | 13 ------------- perf/test/.gitignore | 2 -- perf/test/artillery.sh | 13 ------------- perf/test/artillery.yaml | 12 ------------ perf/test/gzip.sh | 25 ------------------------- 9 files changed, 114 deletions(-) delete mode 100644 perf/README.md delete mode 100644 perf/env.sh delete mode 100644 perf/seed/.gitignore delete mode 100755 perf/seed/export.sh delete mode 100755 perf/seed/import.sh delete mode 100644 perf/test/.gitignore delete mode 100755 perf/test/artillery.sh delete mode 100644 perf/test/artillery.yaml delete mode 100755 perf/test/gzip.sh diff --git a/perf/README.md b/perf/README.md deleted file mode 100644 index ad01262c72..0000000000 --- a/perf/README.md +++ /dev/null @@ -1,32 +0,0 @@ -# /perf - -Testing performance testing! Files of note: - -```shell -# Configure the app URL and auth token to use in performance testing. -./env.sh - -# Export all the data from the app at the configured URL. -./seed/export.sh - -# Import previously exported data to the app instance. -./seed/import.sh - -# Measure the GZIP response size for interesting endpoints. -./test/gzip.sh - -# Run a few load test scenarios against the app. -./test/artillery.sh -``` - -See also the following scripts in `package.json`: - -```shell -# Fill the unleash_testing/seed schema with seed data. -$ yarn seed:setup - -# Serve the unleash_testing/seed schema data, for exports. -$ yarn seed:serve -``` - -Edit files in `/test/e2e/seed` to change the amount data. diff --git a/perf/env.sh b/perf/env.sh deleted file mode 100644 index b6ff97d4fd..0000000000 --- a/perf/env.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env bash - -export PERF_AUTH_KEY="*:*.964a287e1b728cb5f4f3e0120df92cb5" -export PERF_APP_URL="http://localhost:4242" diff --git a/perf/seed/.gitignore b/perf/seed/.gitignore deleted file mode 100644 index 4df8098eac..0000000000 --- a/perf/seed/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/export.json diff --git a/perf/seed/export.sh b/perf/seed/export.sh deleted file mode 100755 index 4bace24222..0000000000 --- a/perf/seed/export.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/usr/bin/env bash - -set -feu - -cd "$(dirname "$0")" - -. ../env.sh - -# Export data. Delete environments since they can't be imported. -curl -H "Authorization: $PERF_AUTH_KEY" "$PERF_APP_URL/api/admin/state/export" \ - | jq 'del(.environments)' \ - > export.json diff --git a/perf/seed/import.sh b/perf/seed/import.sh deleted file mode 100755 index 0fe59b703a..0000000000 --- a/perf/seed/import.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/env bash - -set -feu - -cd "$(dirname "$0")" - -. ../env.sh - -curl -X POST \ - -H "Content-Type: application/json" \ - -H "Authorization: $PERF_AUTH_KEY" \ - -d @export.json \ - "$PERF_APP_URL/api/admin/state/import?drop=true&keep=false" diff --git a/perf/test/.gitignore b/perf/test/.gitignore deleted file mode 100644 index 2275e0aad6..0000000000 --- a/perf/test/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -/artillery.json -/artillery.json.html diff --git a/perf/test/artillery.sh b/perf/test/artillery.sh deleted file mode 100755 index 87655b8239..0000000000 --- a/perf/test/artillery.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/env bash - -set -feu - -cd "$(dirname "$0")" - -. ../env.sh - -artillery run ./artillery.yaml --output artillery.json - -artillery report artillery.json - -echo "See artillery.json.html for results" diff --git a/perf/test/artillery.yaml b/perf/test/artillery.yaml deleted file mode 100644 index fef84bebdb..0000000000 --- a/perf/test/artillery.yaml +++ /dev/null @@ -1,12 +0,0 @@ -config: - target: "http://localhost:4242" - defaults: - headers: - authorization: "{{ $processEnvironment.PERF_AUTH_KEY }}" - phases: - - duration: 60 - arrivalRate: 10 -scenarios: - - flow: - - get: - url: "/api/client/features" diff --git a/perf/test/gzip.sh b/perf/test/gzip.sh deleted file mode 100755 index 77405b0412..0000000000 --- a/perf/test/gzip.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash - -set -feu - -cd "$(dirname "$0")" - -. ../env.sh - -print_response_size () { - local URL - local RES - URL="$1" - RES="$(curl -s -H "Authorization: $PERF_AUTH_KEY" "$URL")" - echo - echo "$URL" - echo - echo "* Byte size: $(echo "$RES" | wc -c) bytes" - echo "* GZIP size: $(echo "$RES" | gzip -6 | wc -c) bytes" -} - -print_response_size "$PERF_APP_URL/api/admin/projects" - -print_response_size "$PERF_APP_URL/api/admin/features" - -print_response_size "$PERF_APP_URL/api/client/features" From 4a41e624a6c47665298efdcdc87e506b35400ff5 Mon Sep 17 00:00:00 2001 From: David Leek Date: Wed, 29 May 2024 08:37:40 +0200 Subject: [PATCH 03/28] chore(docs): additional removal notices of state api/service (#7197) --- website/docs/how-to/how-to-import-export.md | 24 ++++++++++++++++--- .../api/legacy/unleash/admin/state.md | 4 ++-- 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/website/docs/how-to/how-to-import-export.md b/website/docs/how-to/how-to-import-export.md index 45de93809b..270948211d 100644 --- a/website/docs/how-to/how-to-import-export.md +++ b/website/docs/how-to/how-to-import-export.md @@ -9,9 +9,9 @@ The import and export API first appeared in Unleash 3.3.0. ::: -:::caution Deprecation notice +:::caution Removal notice -Api admin state is deprecated from version 5. We recommend using the new [Environment Import & Export](https://docs.getunleash.io/reference/deploy/environment-import-export). +Api admin state is deprecated from version 5 and removed from version 6. We recommend using the new [Environment Import & Export](https://docs.getunleash.io/reference/deploy/environment-import-export). ::: @@ -33,7 +33,7 @@ Be careful when using the `drop` parameter in production environments: cleaning :::caution Removal notice -State Service has been removed as of Unleash 6.0 +State Service has been removed as of Unleash 6 ::: @@ -58,6 +58,12 @@ It is also possible to not override existing feature flags (and strategies) by u ### API Export {#api-export} +:::caution Removal notice + +State API has been removed as of Unleash 6 + +::: + The api endpoint `/api/admin/state/export` will export feature-toggles and strategies as json by default. You can customize the export with query parameters: @@ -76,6 +82,12 @@ For example if you want to download just feature-toggles as yaml: ### API Import {#api-import} +:::caution Removal notice + +State API has been removed as of Unleash 6 + +::: + :::caution Importing environments in Unleash 4.19 and below This is only relevant if you use **Unleash 4.19 or earlier**: @@ -108,6 +120,12 @@ Example usage: ## Startup import {#startup-import} +:::caution Removal notice + +State service startup import has been removed as of Unleash 6 + +::: + You can import flags and strategies on startup by using an import file in JSON or YAML format. As with other forms of imports, you can also choose to remove the current flag and strategy configuration in the database before importing. Unleash lets you do this both via configuration parameters and environment variables. The relevant parameters/variables are: diff --git a/website/docs/reference/api/legacy/unleash/admin/state.md b/website/docs/reference/api/legacy/unleash/admin/state.md index f9d8aa7b5b..ec3457da0c 100644 --- a/website/docs/reference/api/legacy/unleash/admin/state.md +++ b/website/docs/reference/api/legacy/unleash/admin/state.md @@ -3,9 +3,9 @@ id: state title: /api/admin/state --- -:::caution Deprecation notice +:::caution Removal notice -Api admin state is deprecated from version 5. We recommend using the new [Environment Import & Export](https://docs.getunleash.io/reference/deploy/environment-import-export). +Api admin state is deprecated from version 5 and removed in version 6. We recommend using the new [Environment Import & Export](https://docs.getunleash.io/reference/deploy/environment-import-export). ::: From 3aa7e89a3e3f4a448c28c01803ef2ff462826cb4 Mon Sep 17 00:00:00 2001 From: Thomas Heartman Date: Wed, 29 May 2024 08:37:52 +0200 Subject: [PATCH 04/28] chore: fix button design on narrow screens for new project form (#7195) This PR contains a few fixes for button designs on small screens for the new project form. It makes all buttons (config and actions) full-width and addresses some sizing stuff. It also caps the width of the stickiness button on non-small screens to avoid shifting. ![image](https://github.com/Unleash/unleash/assets/17786332/83af0a1c-8eb0-4a6b-aa5c-491bbcfab8e9) --- .../ConfigButtons/ConfigButton.styles.tsx | 7 ++++++- .../CreateProjectDialog.tsx | 6 +----- .../NewProjectForm.styles.tsx | 19 +++++++++++++++++++ .../NewCreateProjectForm/NewProjectForm.tsx | 1 + 4 files changed, 27 insertions(+), 6 deletions(-) diff --git a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ConfigButton.styles.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ConfigButton.styles.tsx index 14be4832f9..5a71b39b6e 100644 --- a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ConfigButton.styles.tsx +++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ConfigButton.styles.tsx @@ -22,6 +22,11 @@ export const HiddenDescription = styled('p')(() => ({ export const ButtonLabel = styled('span', { shouldForwardProp: (prop) => prop !== 'labelWidth', -})<{ labelWidth?: string }>(({ labelWidth }) => ({ +})<{ labelWidth?: string }>(({ labelWidth, theme }) => ({ width: labelWidth || 'unset', + overflowX: 'hidden', + textOverflow: 'ellipsis', + [theme.breakpoints.down('sm')]: { + width: 'max-content', + }, })); diff --git a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/CreateProjectDialog.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/CreateProjectDialog.tsx index e1b2111a17..05d747f3a5 100644 --- a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/CreateProjectDialog.tsx +++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/CreateProjectDialog.tsx @@ -33,10 +33,6 @@ const StyledDialog = styled(Dialog)(({ theme, maxWidth }) => ({ const CREATE_PROJECT_BTN = 'CREATE_PROJECT_BTN'; -const StyledButton = styled(Button)(({ theme }) => ({ - marginLeft: theme.spacing(3), -})); - const StyledProjectIcon = styled(ProjectIcon)(({ theme }) => ({ fill: theme.palette.common.white, stroke: theme.palette.common.white, @@ -166,7 +162,7 @@ export const CreateProjectDialog = ({ overrideDocumentation={setDocumentation} clearDocumentationOverride={clearDocumentationOverride} > - Cancel + ({ display: 'flex', flexFlow: 'row wrap', gap: theme.spacing(2), + [theme.breakpoints.down('sm')]: { + flexFlow: 'column nowrap', + 'div:has(button)': { + display: 'flex', + button: { + flex: 1, + }, + }, + }, })); export const FormActions = styled(StyledFormSection)(({ theme }) => ({ @@ -57,4 +66,14 @@ export const FormActions = styled(StyledFormSection)(({ theme }) => ({ gap: theme.spacing(5), justifyContent: 'flex-end', flexFlow: 'row wrap', + [theme.breakpoints.down('sm')]: { + flexFlow: 'column nowrap', + gap: theme.spacing(2), + '& > *': { + display: 'flex', + button: { + flex: 1, + }, + }, + }, })); diff --git a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/NewProjectForm.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/NewProjectForm.tsx index 5c22df7568..a1edb0f92e 100644 --- a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/NewProjectForm.tsx +++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/NewProjectForm.tsx @@ -217,6 +217,7 @@ export const NewProjectForm: React.FC = ({ button={{ label: projectStickiness, icon: , + labelWidth: '12ch', }} search={{ label: 'Filter stickiness options', From 0f3d93099dd87566f1b93c5c6cfb6f02d16f2055 Mon Sep 17 00:00:00 2001 From: Thomas Heartman Date: Wed, 29 May 2024 08:38:00 +0200 Subject: [PATCH 05/28] fix: CR button shows docs for change requests when selected (#7196) The props had been left out of the config button by mistake. It also puts the CR table in a scrollable div that had been removed by mistake. --- .../ChangeRequestTableConfigButton.tsx | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ChangeRequestTableConfigButton.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ChangeRequestTableConfigButton.tsx index 28c3f9c935..58a31a21a9 100644 --- a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ChangeRequestTableConfigButton.tsx +++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/ConfigButtons/ChangeRequestTableConfigButton.tsx @@ -3,7 +3,10 @@ import { ConfigButton, type ConfigButtonProps } from './ConfigButton'; import { InputAdornment } from '@mui/material'; import Search from '@mui/icons-material/Search'; import { ChangeRequestTable } from './ChangeRequestTable'; -import { TableSearchInput } from './ChangeRequestTableConfigButton.styles'; +import { + ScrollContainer, + TableSearchInput, +} from './ChangeRequestTableConfigButton.styles'; type ChangeRequestTableConfigButtonProps = Pick< ConfigButtonProps, @@ -35,8 +38,6 @@ export const ChangeRequestTableConfigButton: FC< projectChangeRequestConfiguration, updateProjectChangeRequestConfiguration, activeEnvironments, - onOpen = () => {}, - onClose = () => {}, ...props }) => { const configured = useMemo(() => { @@ -118,11 +119,13 @@ export const ChangeRequestTableConfigButton: FC< }} onKeyDown={toggleTopItem} /> - + + + ); }; From 82d401be1b40c13063c422eb85f32bf52e3912d7 Mon Sep 17 00:00:00 2001 From: Thomas Heartman Date: Wed, 29 May 2024 08:55:11 +0200 Subject: [PATCH 06/28] fix: get rid of horizontal scrollbar on narrow screens in CreateProjectDialog (#7198) This PR hides horizontal overflow in the dialog. The pop-up docs that we have on small windows was causing a tiny bit of overflow, giving us an annoying (and pretty useless) horizontal scrollbar. We can hide that scrollbar by hiding horizontal overflow. --- .../NewCreateProjectForm/CreateProjectDialog.tsx | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/CreateProjectDialog.tsx b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/CreateProjectDialog.tsx index 05d747f3a5..87c86c4056 100644 --- a/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/CreateProjectDialog.tsx +++ b/frontend/src/component/project/Project/CreateProject/NewCreateProjectForm/CreateProjectDialog.tsx @@ -21,7 +21,7 @@ interface ICreateProjectDialogProps { onClose: () => void; } -const StyledDialog = styled(Dialog)(({ theme, maxWidth }) => ({ +const StyledDialog = styled(Dialog)(({ theme }) => ({ '& .MuiDialog-paper': { borderRadius: theme.shape.borderRadiusLarge, maxWidth: theme.spacing(170), @@ -29,6 +29,9 @@ const StyledDialog = styled(Dialog)(({ theme, maxWidth }) => ({ backgroundColor: 'transparent', }, padding: 0, + '& .MuiPaper-root > section': { + overflowX: 'hidden', + }, })); const CREATE_PROJECT_BTN = 'CREATE_PROJECT_BTN'; From ab3cbcfa56683f244ebcefaa2fe24dcf88f4ab33 Mon Sep 17 00:00:00 2001 From: Jaanus Sellin Date: Wed, 29 May 2024 11:15:46 +0300 Subject: [PATCH 07/28] feat: insights docs (#7189) Documentation for insights features --- website/docs/reference/insights.mdx | 60 ++++++++++++++++++++ website/sidebars.js | 1 + website/static/img/insights-evaluation.png | Bin 0 -> 65921 bytes website/static/img/insights-health.png | Bin 0 -> 74359 bytes website/static/img/insights-production.png | Bin 0 -> 44478 bytes website/static/img/insights-total-flags.png | Bin 0 -> 54978 bytes website/static/img/insights-total-users.png | Bin 0 -> 43728 bytes website/static/img/insights-updates.png | Bin 0 -> 83209 bytes 8 files changed, 61 insertions(+) create mode 100644 website/docs/reference/insights.mdx create mode 100644 website/static/img/insights-evaluation.png create mode 100644 website/static/img/insights-health.png create mode 100644 website/static/img/insights-production.png create mode 100644 website/static/img/insights-total-flags.png create mode 100644 website/static/img/insights-total-users.png create mode 100644 website/static/img/insights-updates.png diff --git a/website/docs/reference/insights.mdx b/website/docs/reference/insights.mdx new file mode 100644 index 0000000000..9ef677b4f7 --- /dev/null +++ b/website/docs/reference/insights.mdx @@ -0,0 +1,60 @@ +--- +title: Insights +--- + +import Figure from '@site/src/components/Figure/Figure.tsx' + +:::info Availability + +Insights is released in Unleash 6.0 and is available for Enterprise and Pro customers. For Pro customers only the Total users and Total flags charts are available. + +::: + +Insights is a feature designed to help you better understand and gain insights into what is happening in your Unleash instance. You can view insights across all projects or by selecting single or multiple projects using the filter. + +In total, there are 6 different charts available that show information over time: + +- Total users (Pro, Enterprise) +- Total flags (Pro, Enterprise) +- Average health (Enterprise) +- Median time to production (Enterprise) +- Flag evaluation metrics (Enterprise) +- Updates per environment type (Enterprise) + + + +### Total users + +The Total users chart provides information about the total number of current users in your Unleash instance. This chart helps you understand how the user base is growing or changing over time. Additionally, it shows the number of users in selected projects and how the user distribution varies among them. + +
+ +### Total flags + +The Total flags chart displays the total number of active (not archived) feature flags across all projects. It provides insights into how the number of flags has changed over time, helping you track the growth and usage of feature flags. You can also view the data for specific projects. + +
+ +### Average health + +The average health chart represents the percentage of flags in the selected projects that are not stale or potentially stale. This chart helps you monitor the overall health of your feature flags, ensuring that they are actively maintained and relevant. The chart also shows how the overall health changes over time, allowing you to identify potential issues early and take corrective actions. + +
+ +### Median time to production + +The median time to production chart measures the average time from when a feature flag is created until it is enabled in a "production" type environment. This metric is calculated only for feature flags of the type "release" and is the median across the selected projects. Understanding this metric helps in assessing the efficiency of your development and deployment processes. It also highlights areas where you can improve to reduce time to market for new features. + +
+ +### Flag evaluation metrics + +The flag evaluation metrics chart provides a summary of all flag evaluations reported by SDKs across all projects. This chart helps you understand how often feature flags are being evaluated and used within your applications. It can indicate the performance impact and the effectiveness of your feature flag implementations. By analyzing these metrics per project, you can gain deeper insights into the usage patterns and optimize accordingly. + +
+ +### Updates per environment type + +The updates per environment type chart summarizes all feature configuration updates per environment type. This chart is crucial for understanding how configuration changes propagate across different environments, such as development, testing, and production. It helps in tracking the frequency and impact of updates, ensuring that changes are consistently and safely deployed. Monitoring updates per environment type can also help identify potential bottlenecks or issues in the deployment pipeline. + +
diff --git a/website/sidebars.js b/website/sidebars.js index 7c6f280ac8..b61dc39d34 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -250,6 +250,7 @@ module.exports = { 'reference/feature-toggle-variants', 'reference/front-end-api', 'reference/impression-data', + 'reference/insights', 'reference/login-history', 'reference/maintenance-mode', 'reference/network-view', diff --git a/website/static/img/insights-evaluation.png b/website/static/img/insights-evaluation.png new file mode 100644 index 0000000000000000000000000000000000000000..0cda6012dba42f445cd85e45753ec83060a4b5bb GIT binary patch literal 65921 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 F{{Z%8A;tgz literal 0 HcmV?d00001 diff --git a/website/static/img/insights-health.png b/website/static/img/insights-health.png new file mode 100644 index 0000000000000000000000000000000000000000..ebb5d3e619abc9ad50a2846b60728bf4a659a867 GIT binary patch literal 74359 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 R&5Hm4002ovPDHLkV1n(D;8p+t literal 0 HcmV?d00001 diff --git a/website/static/img/insights-production.png b/website/static/img/insights-production.png new file mode 100644 index 0000000000000000000000000000000000000000..7ffaa22fa711f878625a90dd6d833f4c5ebee5f5 GIT binary patch literal 44478 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 literal 0 HcmV?d00001 diff --git a/website/static/img/insights-total-flags.png b/website/static/img/insights-total-flags.png new file mode 100644 index 0000000000000000000000000000000000000000..a79fe4be674121b9ac535a8bcf04270ac6315898 GIT binary patch literal 54978 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�ls!nb7#|LsN$-%P@03n!MqtDWn#Js@;A6DH{-qGcp-tEj|mRC6qDf*Pe zM4!vlX&Z0>`Z)trrO4dZ@RCBl=-{17diQNPog@0Cj8o-P0V(0w-u8zHT0no=_4Vzf z?+L$Wq&p6G5@!uWLCs}CbL z`$!pi4IX*U|L1MI=}LTP-(cv_ve5lq)}g}g-9XUvFX8y0+QUwqK9OT#b?<_qpd_v> zVdquWLTiK2h!xUuY)+Ygm&QQyC0=^2FV2q@G?;?K?XOAJITS{?sUGR+otFVW4(rHO zE8~a|fJ^0vVktBUCj)izVBhb3OE?_fqM*ZehxBeVyn{EkUVdL zTP?t6FdBRcK;U;{{AXj?iJA%&)|DMPlp@%eS^u#Wfi$S41k(nPW*Dh5_1pMH!TH}h z-evk~GF^Hjlj+&ToO`6nAe_$XBMPYR9NZAAJLw_LlVl={1q~nn~VwvWB zdtDnE-<9NLaEl=Em>LC7XYa)KZUVo|m0IVz+vde38Pq5{bvR*ifXOJ>>ud z12m>|qMB9nU>F9f^~SfE|3B0n@84AveZ!L?5*?wPo zBt-~{Z7~fE)NY$}&lafZw!KKZj9rwAZ2pONmi8p;9mu*>9C0)`c}>@NQS8Ta93ToK~h1z#)0 zk9qt^dP0BFm~KNp7zGFCVye1{`~S2NlZztF0v{qnU!3F~c=XjA#E)Qc1$SkC7}rj^mWTo{EsX;6+xwwg$97fv57Z47=9tHc`xaP_?KX8X%Y^frkr0BoY4sdVhv{;8`ff_2?fku#(YcX0t`5zeF7o!n z7IbFCU3GRpGhBt=3P9-Q0{x2j_fP5)=}%5|oP#T5o7MO`0Co&OAfg)hvKu}Py4(1~ z0|kF!bBo_y@ddv}ZrOk0MBQC0e3)ItkSvQ^O>B6-_waFuxZ-s*=I;|J!m+$_@oeXb z9a2fu(V;|0mAZ)f^*(jiTlSYh89(|13D~FVQ##ma^2-D*b7NHFrrW5qdcm>xCxE?+ zDu=kTs5Ej}{rlo{<8`WiXkIVRl4j=7N<#>6pI5$E=r=}euhr?Lc$DwBGrNzumJZ7K zyZWIU^8^43P}MWT2E)0W;q!25z-D=02tb!PP9K5y`3!%1S>-1e-&NTc9~HYSs!vhP z=xw6EpP2J_i6-iv6iLH7RDSqAPR!_Xz(kM6;7&~l4Xka*s?DI(uvN=C?3pN*H|-n& z3^)%H`}TXX-`s%Z9Dm;1n-uEQ_R3yjS|f~Z9-nKqfowA}BWU_IFopuJ{w@D6;|&;4 z1$iKsh67>#d}@ec`T&=TD`d+#sn|a%LAM&&yK+6!5L?{q-$13KEE{_s!2z_ zFt^TcY6LEyl7}VuZUo8wyCPf`%tGepEvyBYTjfibp~p~DaR5@KmKPf8P#{fn-Twc1 wk3-f&Hg1wD#XmE%Z%UVfUr&EvH@*L7^QV6zqe~0=&~m_oMqykV4~A#`5Afl3)Bpeg literal 0 HcmV?d00001 diff --git a/website/static/img/insights-updates.png b/website/static/img/insights-updates.png new file mode 100644 index 0000000000000000000000000000000000000000..30ebd80dea8bdd73ec55a7f50b790c3d47354a0d GIT binary patch literal 83209 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 G Date: Wed, 29 May 2024 10:47:57 +0200 Subject: [PATCH 08/28] feat: smart sticky expand/hide button (#7201) --- .../NavigationSidebar/NavigationSidebar.tsx | 89 +++++++++---------- .../MainLayout/NavigationSidebar/ShowHide.tsx | 61 +++++++------ 2 files changed, 78 insertions(+), 72 deletions(-) diff --git a/frontend/src/component/layout/MainLayout/NavigationSidebar/NavigationSidebar.tsx b/frontend/src/component/layout/MainLayout/NavigationSidebar/NavigationSidebar.tsx index b9649a023f..2f042ddcd1 100644 --- a/frontend/src/component/layout/MainLayout/NavigationSidebar/NavigationSidebar.tsx +++ b/frontend/src/component/layout/MainLayout/NavigationSidebar/NavigationSidebar.tsx @@ -41,9 +41,6 @@ export const StretchContainer = styled(Box)(({ theme }) => ({ backgroundColor: theme.palette.background.paper, padding: theme.spacing(2), alignSelf: 'stretch', -})); - -export const ScreenHeightBox = styled(Box)(({ theme }) => ({ display: 'flex', flexDirection: 'column', gap: theme.spacing(3), @@ -64,69 +61,67 @@ export const NavigationSidebar = () => { return ( - - + { + changeExpanded('configure', expand); + }} + mode={mode} + title='Configure' + > + + + {mode === 'full' && ( { - changeExpanded('configure', expand); + changeExpanded('admin', expand); }} mode={mode} - title='Configure' + title='Admin' > - {mode === 'full' && ( - { - changeExpanded('admin', expand); - }} - mode={mode} - title='Admin' - > - - - )} + )} - {mode === 'mini' && ( - { - changeExpanded('admin', true); - setMode('full'); - }} - /> - )} - - {showRecentProject && ( - setActiveItem('/projects')} - /> - )} - - { - setMode(mode === 'full' ? 'mini' : 'full'); + changeExpanded('admin', true); + setMode('full'); }} /> - + )} + + {showRecentProject && ( + setActiveItem('/projects')} + /> + )} + + { + setMode(mode === 'full' ? 'mini' : 'full'); + }} + /> ); }; diff --git a/frontend/src/component/layout/MainLayout/NavigationSidebar/ShowHide.tsx b/frontend/src/component/layout/MainLayout/NavigationSidebar/ShowHide.tsx index 7ee109dcdf..06ae806eaf 100644 --- a/frontend/src/component/layout/MainLayout/NavigationSidebar/ShowHide.tsx +++ b/frontend/src/component/layout/MainLayout/NavigationSidebar/ShowHide.tsx @@ -5,15 +5,24 @@ import HideIcon from '@mui/icons-material/KeyboardDoubleArrowLeft'; import ExpandIcon from '@mui/icons-material/KeyboardDoubleArrowRight'; import SettingsIcon from '@mui/icons-material/Settings'; -const ShowHideWrapper = styled(Box, { +const ShowHideRow = styled(Box, { shouldForwardProp: (prop) => prop !== 'mode', })<{ mode: NavigationMode }>(({ theme, mode }) => ({ display: 'flex', justifyContent: 'space-between', alignItems: 'center', padding: theme.spacing(2, 1, 0, mode === 'mini' ? 1.5 : 2), - marginTop: 'auto', cursor: 'pointer', + position: 'sticky', + bottom: theme.spacing(2), + width: '100%', +})); + +// This component is needed when the sticky item could overlap with nav items. You can replicate it on a short screen. +const ShowHideContainer = styled(Box)(({ theme }) => ({ + flexGrow: 1, + display: 'flex', + alignItems: 'end', })); export const ShowHide: FC<{ mode: NavigationMode; onChange: () => void }> = ({ @@ -21,30 +30,32 @@ export const ShowHide: FC<{ mode: NavigationMode; onChange: () => void }> = ({ onChange, }) => { return ( - - {mode === 'full' && ( - ({ - color: theme.palette.neutral.main, - fontSize: 'small', - })} - > - Hide (⌘ + B) - - )} - - {mode === 'full' ? ( - - ) : ( - - - + + + {mode === 'full' && ( + ({ + color: theme.palette.neutral.main, + fontSize: 'small', + })} + > + Hide (⌘ + B) + )} - - + + {mode === 'full' ? ( + + ) : ( + + + + )} + + + ); }; From ef9f09b58ceecb4a1eb8c6423c7e215100436eec Mon Sep 17 00:00:00 2001 From: Jaanus Sellin Date: Wed, 29 May 2024 11:55:01 +0300 Subject: [PATCH 09/28] feat: insights out of beta and expose 2 widgets to pro (#7177) 1. Remove beta badge 2. Remove exposure from oss 3. Expose 2 widgets to pro and rest to enterprise --- .../src/component/insights/InsightsCharts.tsx | 184 ++++++++++-------- .../InsightsHeader/InsightsHeader.tsx | 2 - .../src/component/menu/Header/OldHeader.tsx | 7 +- .../__snapshots__/routes.test.tsx.snap | 2 +- frontend/src/component/menu/routes.ts | 2 +- src/test/e2e/api/admin/playground.e2e.test.ts | 2 +- 6 files changed, 110 insertions(+), 89 deletions(-) diff --git a/frontend/src/component/insights/InsightsCharts.tsx b/frontend/src/component/insights/InsightsCharts.tsx index 637bde06d4..8bcea8cc40 100644 --- a/frontend/src/component/insights/InsightsCharts.tsx +++ b/frontend/src/component/insights/InsightsCharts.tsx @@ -22,6 +22,7 @@ import type { import type { GroupedDataByProject } from './hooks/useGroupedProjectTrends'; import { allOption } from 'component/common/ProjectSelect/ProjectSelect'; import { chartInfo } from './chart-info'; +import useUiConfig from 'hooks/api/getters/useUiConfig/useUiConfig'; interface IChartsProps { flags: InstanceInsightsSchema['flags']; @@ -83,6 +84,7 @@ export const InsightsCharts: VFC = ({ allMetricsDatapoints, loading, }) => { + const { isEnterprise } = useUiConfig(); const showAllProjects = projects[0] === allOption.id; const isOneProjectSelected = projects.length === 1; @@ -143,91 +145,115 @@ export const InsightsCharts: VFC = ({ } /> - - - - + + + + + + + } + elseShow={ + + + + } /> - - } - elseShow={ - - - + + + + + + + + + + + + + } /> - - - - - - - - - - - - - - - - theme.spacing(2) }} - > - - + + + + + theme.spacing(2) }} + > + + + + } + /> ); }; diff --git a/frontend/src/component/insights/components/InsightsHeader/InsightsHeader.tsx b/frontend/src/component/insights/components/InsightsHeader/InsightsHeader.tsx index 75fc56a9c3..cfb1210556 100644 --- a/frontend/src/component/insights/components/InsightsHeader/InsightsHeader.tsx +++ b/frontend/src/component/insights/components/InsightsHeader/InsightsHeader.tsx @@ -10,7 +10,6 @@ import { useTheme, } from '@mui/material'; import { PageHeader } from 'component/common/PageHeader/PageHeader'; -import { Badge } from 'component/common/Badge/Badge'; import { ShareLink } from './ShareLink/ShareLink'; import { ConditionallyRender } from 'component/common/ConditionallyRender/ConditionallyRender'; @@ -82,7 +81,6 @@ export const InsightsHeader: VFC = ({ actions }) => { })} > Insights{' '} - Beta } actions={ diff --git a/frontend/src/component/menu/Header/OldHeader.tsx b/frontend/src/component/menu/Header/OldHeader.tsx index f85b0b010e..f8dd1d57ed 100644 --- a/frontend/src/component/menu/Header/OldHeader.tsx +++ b/frontend/src/component/menu/Header/OldHeader.tsx @@ -242,12 +242,9 @@ const OldHeader: VFC = () => { Search Playground + Insights } /> { if (features.length !== body.features.length) { ctx.log( - `I expected the number of mapped toggles (${body.features.length}) to be the same as the number of created toggles (${features.length}), but that was not the case.`, + `I expected the number of mapped flags (${body.features.length}) to be the same as the number of created toggles (${features.length}), but that was not the case.`, ); return false; } From 998abaad67041ba0a8c6e6f3bce85204bbfc2811 Mon Sep 17 00:00:00 2001 From: David Leek Date: Wed, 29 May 2024 11:01:33 +0200 Subject: [PATCH 10/28] chore: remove unused and deprecated methods in feature toggle legacy controller and in feature toggle service (#7199) --- .../feature-toggle/feature-toggle-service.ts | 63 ------ .../feature-toggle-legacy-controller.ts | 189 +----------------- 2 files changed, 1 insertion(+), 251 deletions(-) diff --git a/src/lib/features/feature-toggle/feature-toggle-service.ts b/src/lib/features/feature-toggle/feature-toggle-service.ts index 3db086704b..4477cf3334 100644 --- a/src/lib/features/feature-toggle/feature-toggle-service.ts +++ b/src/lib/features/feature-toggle/feature-toggle-service.ts @@ -14,10 +14,8 @@ import { FeatureStrategyUpdateEvent, type FeatureToggle, type FeatureToggleDTO, - type FeatureToggleLegacy, type FeatureToggleView, type FeatureToggleWithEnvironment, - FeatureUpdatedEvent, FeatureVariantEvent, type IAuditUser, type IConstraint, @@ -1815,67 +1813,6 @@ class FeatureToggleService { return feature; } - // @deprecated - async storeFeatureUpdatedEventLegacy( - featureName: string, - auditUser: IAuditUser, - ): Promise { - const feature = await this.getFeatureToggleLegacy(featureName); - - // Legacy event. Will not be used from v4.3. - // We do not include 'preData' on purpose. - await this.eventService.storeEvent( - new FeatureUpdatedEvent({ - featureName, - data: feature, - project: feature.project, - auditUser, - }), - ); - return feature; - } - - // @deprecated - async toggle( - projectId: string, - featureName: string, - environment: string, - auditUser: IAuditUser, - ): Promise { - await this.featureToggleStore.get(featureName); - const isEnabled = - await this.featureEnvironmentStore.isEnvironmentEnabled( - featureName, - environment, - ); - return this.updateEnabled( - projectId, - featureName, - environment, - !isEnabled, - auditUser, - ); - } - - // @deprecated - async getFeatureToggleLegacy( - featureName: string, - ): Promise { - const feature = - await this.featureStrategiesStore.getFeatureToggleWithEnvs( - featureName, - ); - const { environments, ...legacyFeature } = feature; - const defaultEnv = environments.find((e) => e.name === DEFAULT_ENV); - const strategies = defaultEnv?.strategies || []; - const enabled = defaultEnv?.enabled || false; - return { - ...legacyFeature, - enabled, - strategies, - }; - } - async changeProject( featureName: string, newProject: string, diff --git a/src/lib/features/feature-toggle/legacy/feature-toggle-legacy-controller.ts b/src/lib/features/feature-toggle/legacy/feature-toggle-legacy-controller.ts index 0c46f7c70d..32669a7917 100644 --- a/src/lib/features/feature-toggle/legacy/feature-toggle-legacy-controller.ts +++ b/src/lib/features/feature-toggle/legacy/feature-toggle-legacy-controller.ts @@ -5,11 +5,10 @@ import { NONE, UPDATE_FEATURE } from '../../../types/permissions'; import type { IUnleashConfig } from '../../../types/option'; import type { IUnleashServices } from '../../../types'; import type FeatureToggleService from '../feature-toggle-service'; -import { featureSchema, querySchema } from '../../../schema/feature-schema'; +import { querySchema } from '../../../schema/feature-schema'; import type { IFeatureToggleQuery } from '../../../types/model'; import type FeatureTagService from '../../../services/feature-tag-service'; import type { IAuthRequest } from '../../../routes/unleash-types'; -import { DEFAULT_ENV } from '../../../util/constants'; import type { TagSchema } from '../../../openapi/spec/tag-schema'; import type { TagsSchema } from '../../../openapi/spec/tags-schema'; import type { OpenApiService } from '../../../services/openapi-service'; @@ -184,15 +183,6 @@ class FeatureController extends Controller { return query; } - async getToggle( - req: Request<{ featureName: string }, any, any, any>, - res: Response, - ): Promise { - const name = req.params.featureName; - const feature = await this.service.getFeatureToggleLegacy(name); - res.json(feature).end(); - } - async listTags( req: Request<{ featureName: string }, any, any, any>, res: Response, @@ -274,182 +264,5 @@ class FeatureController extends Controller { ); res.status(200).end(); } - - async createToggle(req: IAuthRequest, res: Response): Promise { - const toggle = req.body; - - const validatedToggle = await featureSchema.validateAsync(toggle); - const { enabled, project, name, variants = [] } = validatedToggle; - const createdFeature = await this.service.createFeatureToggle( - project, - validatedToggle, - req.audit, - true, - ); - const strategies = await Promise.all( - (toggle.strategies ?? []).map(async (s) => - this.service.createStrategy( - s, - { - projectId: project, - featureName: name, - environment: DEFAULT_ENV, - }, - req.audit, - req.user, - ), - ), - ); - await this.service.updateEnabled( - project, - name, - DEFAULT_ENV, - enabled, - req.audit, - ); - await this.service.saveVariants(name, project, variants, req.audit); - - res.status(201).json({ - ...createdFeature, - variants, - enabled, - strategies, - }); - } - - async updateToggle(req: IAuthRequest, res: Response): Promise { - const { featureName } = req.params; - const updatedFeature = req.body; - - updatedFeature.name = featureName; - - const projectId = await this.service.getProjectId(featureName); - const value = await featureSchema.validateAsync(updatedFeature); - - await this.service.updateFeatureToggle( - projectId, - value, - featureName, - req.audit, - ); - - await this.service.removeAllStrategiesForEnv(featureName); - - if (updatedFeature.strategies) { - await Promise.all( - updatedFeature.strategies.map(async (s) => - this.service.createStrategy( - s, - { - projectId: projectId!!, - featureName, - environment: DEFAULT_ENV, - }, - req.audit, - req.user, - ), - ), - ); - } - await this.service.updateEnabled( - projectId!!, - featureName, - DEFAULT_ENV, - updatedFeature.enabled, - req.audit, - req.user, - ); - await this.service.saveVariants( - featureName, - projectId!!, - value.variants || [], - req.audit, - ); - - const feature = await this.service.storeFeatureUpdatedEventLegacy( - featureName, - req.audit, - ); - - res.status(200).json(feature); - } - - /** - * @deprecated TODO: remove? - * - * Kept to keep backward compatibility - */ - async toggle(req: IAuthRequest, res: Response): Promise { - const { featureName } = req.params; - const projectId = await this.service.getProjectId(featureName); - const feature = await this.service.toggle( - projectId, - featureName, - DEFAULT_ENV, - req.audit, - ); - await this.service.storeFeatureUpdatedEventLegacy( - featureName, - req.audit, - ); - res.status(200).json(feature); - } - - async toggleOn(req: IAuthRequest, res: Response): Promise { - const { featureName } = req.params; - const projectId = await this.service.getProjectId(featureName); - const feature = await this.service.updateEnabled( - projectId, - featureName, - DEFAULT_ENV, - true, - req.audit, - req.user, - ); - await this.service.storeFeatureUpdatedEventLegacy( - featureName, - req.audit, - ); - res.json(feature); - } - - async toggleOff(req: IAuthRequest, res: Response): Promise { - const { featureName } = req.params; - const projectId = await this.service.getProjectId(featureName); - const feature = await this.service.updateEnabled( - projectId, - featureName, - DEFAULT_ENV, - false, - req.audit, - req.user, - ); - await this.service.storeFeatureUpdatedEventLegacy( - featureName, - req.audit, - ); - res.json(feature); - } - - async staleOn(req: IAuthRequest, res: Response): Promise { - const { featureName } = req.params; - await this.service.updateStale(featureName, true, req.audit); - const feature = await this.service.getFeatureToggleLegacy(featureName); - res.json(feature); - } - - async staleOff(req: IAuthRequest, res: Response): Promise { - const { featureName } = req.params; - await this.service.updateStale(featureName, false, req.audit); - const feature = await this.service.getFeatureToggleLegacy(featureName); - res.json(feature); - } - - async archiveToggle(req: IAuthRequest, res: Response): Promise { - const { featureName } = req.params; - - await this.service.archiveToggle(featureName, req.user, req.audit); - res.status(200).end(); - } } export default FeatureController; From 75114e52f72acd3b00f631d9118ca2e8199fa50d Mon Sep 17 00:00:00 2001 From: Mateusz Kwasniewski Date: Wed, 29 May 2024 11:11:36 +0200 Subject: [PATCH 11/28] fix: footer overflow (#7203) --- frontend/src/component/menu/Footer/Footer.tsx | 1 + .../component/menu/Footer/__snapshots__/Footer.test.tsx.snap | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/frontend/src/component/menu/Footer/Footer.tsx b/frontend/src/component/menu/Footer/Footer.tsx index fea9d1e076..416c7bc798 100644 --- a/frontend/src/component/menu/Footer/Footer.tsx +++ b/frontend/src/component/menu/Footer/Footer.tsx @@ -13,6 +13,7 @@ const StyledFooter = styled('footer')(({ theme }) => ({ flexGrow: 1, zIndex: 100, backgroundColor: theme.palette.background.paper, + overflowY: 'hidden', })); const StyledList = styled(List)({ diff --git a/frontend/src/component/menu/Footer/__snapshots__/Footer.test.tsx.snap b/frontend/src/component/menu/Footer/__snapshots__/Footer.test.tsx.snap index c08f1ef092..e92281664a 100644 --- a/frontend/src/component/menu/Footer/__snapshots__/Footer.test.tsx.snap +++ b/frontend/src/component/menu/Footer/__snapshots__/Footer.test.tsx.snap @@ -3,7 +3,7 @@ exports[`should render DrawerMenu 1`] = ` [