mirror of https://github.com/grafana/grafana
FolderPicker: Remove old folder picker (#105374)
* Remove newFolderPicker toggle * Remove usage of the old folder picker * fix some tests * remove old testpull/106491/head
parent
7e6eefc8cd
commit
cbb828202a
|
@ -1,70 +1,3 @@ |
|||||||
import { useCallback } from 'react'; |
import { NestedFolderPicker } from '../NestedFolderPicker/NestedFolderPicker'; |
||||||
|
|
||||||
import { config } from '@grafana/runtime'; |
export const FolderPicker = NestedFolderPicker; |
||||||
|
|
||||||
import { NestedFolderPicker, NestedFolderPickerProps } from '../NestedFolderPicker/NestedFolderPicker'; |
|
||||||
|
|
||||||
import { OldFolderPicker } from './OldFolderPicker'; |
|
||||||
|
|
||||||
interface FolderPickerProps extends NestedFolderPickerProps { |
|
||||||
// These props are only used by the old folder picker, and should be removed when old picker is removed
|
|
||||||
|
|
||||||
/** @deprecated */ |
|
||||||
initialTitle?: string; |
|
||||||
|
|
||||||
/** @deprecated */ |
|
||||||
inputId?: string; |
|
||||||
|
|
||||||
/** @deprecated */ |
|
||||||
dashboardId?: number | string; |
|
||||||
|
|
||||||
/** @deprecated */ |
|
||||||
enableCreateNew?: boolean; |
|
||||||
|
|
||||||
/** @deprecated */ |
|
||||||
skipInitialLoad?: boolean; |
|
||||||
} |
|
||||||
|
|
||||||
// Temporary wrapper component to switch between the NestedFolderPicker and the old flat
|
|
||||||
// FolderPicker depending on feature flags
|
|
||||||
export function FolderPicker(props: FolderPickerProps) { |
|
||||||
const nestedEnabled = config.featureToggles.newFolderPicker || config.featureToggles.nestedFolders; |
|
||||||
const { initialTitle, dashboardId, enableCreateNew, ...newFolderPickerProps } = props; |
|
||||||
|
|
||||||
return nestedEnabled ? <NestedFolderPicker {...newFolderPickerProps} /> : <OldFolderPickerWrapper {...props} />; |
|
||||||
} |
|
||||||
|
|
||||||
// Converts new NestedFolderPicker props to old non-nested folder picker props
|
|
||||||
// Seperate component so the hooks aren't created if not used
|
|
||||||
function OldFolderPickerWrapper({ |
|
||||||
value, |
|
||||||
showRootFolder, |
|
||||||
onChange, |
|
||||||
initialTitle, |
|
||||||
dashboardId, |
|
||||||
enableCreateNew, |
|
||||||
inputId, |
|
||||||
skipInitialLoad, |
|
||||||
}: FolderPickerProps) { |
|
||||||
const handleOnChange = useCallback( |
|
||||||
(newFolder: { title: string; uid: string }) => { |
|
||||||
if (onChange) { |
|
||||||
onChange(newFolder.uid, newFolder.title); |
|
||||||
} |
|
||||||
}, |
|
||||||
[onChange] |
|
||||||
); |
|
||||||
|
|
||||||
return ( |
|
||||||
<OldFolderPicker |
|
||||||
onChange={handleOnChange} |
|
||||||
showRoot={showRootFolder} |
|
||||||
initialFolderUid={value} |
|
||||||
initialTitle={initialTitle} |
|
||||||
inputId={inputId} |
|
||||||
skipInitialLoad={skipInitialLoad} |
|
||||||
dashboardId={dashboardId} |
|
||||||
enableCreateNew={enableCreateNew} |
|
||||||
/> |
|
||||||
); |
|
||||||
} |
|
||||||
|
|||||||
Loading…
Reference in new issue