From 7c417e2f1cbdda958179cd88364a9e7db0591503 Mon Sep 17 00:00:00 2001 From: Vyacheslav Tumanov Date: Mon, 12 Jun 2023 22:07:58 +0500 Subject: [PATCH] UBER-417: replace AddSavedView with select popup, allow renaming (#3423) Signed-off-by: Vyacheslav Tumanov --- plugins/view-assets/lang/en.json | 1 + plugins/view-assets/lang/ru.json | 1 + .../src/components/filter/AddSavedView.svelte | 75 ------------------- .../components/navigator/TreeElement.svelte | 4 +- .../src/components/navigator/TreeItem.svelte | 2 +- plugins/view-resources/src/index.ts | 1 - plugins/view/src/index.ts | 1 + .../src/components/SavedView.svelte | 62 +++++++++++++-- 8 files changed, 60 insertions(+), 87 deletions(-) delete mode 100644 plugins/view-resources/src/components/filter/AddSavedView.svelte diff --git a/plugins/view-assets/lang/en.json b/plugins/view-assets/lang/en.json index d93a60d3ab..99b4b1dd55 100644 --- a/plugins/view-assets/lang/en.json +++ b/plugins/view-assets/lang/en.json @@ -95,6 +95,7 @@ "AddSavedView": "Add saved view", "Public": "Public", "Hide": "Hide", + "Rename": "Rename", "SaveAs": "Save as", "And": "and", "Between": "is between", diff --git a/plugins/view-assets/lang/ru.json b/plugins/view-assets/lang/ru.json index 84b0feb36d..a1f75a4fcd 100644 --- a/plugins/view-assets/lang/ru.json +++ b/plugins/view-assets/lang/ru.json @@ -91,6 +91,7 @@ "BetweenDates": "Между датами", "Public": "Публичный", "Hide": "Спрятать", + "Rename": "Переименовать", "SaveAs": "Сохранить как", "And": "и", "Between": "между", diff --git a/plugins/view-resources/src/components/filter/AddSavedView.svelte b/plugins/view-resources/src/components/filter/AddSavedView.svelte deleted file mode 100644 index 17430ddcbe..0000000000 --- a/plugins/view-resources/src/components/filter/AddSavedView.svelte +++ /dev/null @@ -1,75 +0,0 @@ - - -
dispatch('changeContent')}> -
- -
-
-
- {#each views as value} - - {/each} -
-
-
diff --git a/plugins/view-resources/src/components/navigator/TreeElement.svelte b/plugins/view-resources/src/components/navigator/TreeElement.svelte index 87c111417c..007895a9ac 100644 --- a/plugins/view-resources/src/components/navigator/TreeElement.svelte +++ b/plugins/view-resources/src/components/navigator/TreeElement.svelte @@ -31,12 +31,12 @@ export let selected = false export let bold = false export let shortDropbox = false - export let actions: () => Promise = async () => [] + export let actions: (originalEvent?: MouseEvent) => Promise = async () => [] export let indent: 'default' | 'ml-2' | 'ml-4' | 'ml-8' = 'default' let hovered = false async function onMenuClick (ev: MouseEvent) { - showPopup(Menu, { actions: await actions(), ctx: _id }, ev.target as HTMLElement, () => { + showPopup(Menu, { actions: await actions(ev), ctx: _id }, ev.target as HTMLElement, () => { hovered = false }) hovered = true diff --git a/plugins/view-resources/src/components/navigator/TreeItem.svelte b/plugins/view-resources/src/components/navigator/TreeItem.svelte index b4f6020f9c..07fb8e8866 100644 --- a/plugins/view-resources/src/components/navigator/TreeItem.svelte +++ b/plugins/view-resources/src/components/navigator/TreeItem.svelte @@ -22,7 +22,7 @@ export let icon: Asset | undefined = undefined export let title: string export let notifications = 0 - export let actions: () => Promise = async () => [] + export let actions: (originalEvent?: MouseEvent) => Promise = async () => [] export let selected: boolean = false export let bold = false export let indent: 'default' | 'ml-2' | 'ml-4' | 'ml-8' = 'default' diff --git a/plugins/view-resources/src/index.ts b/plugins/view-resources/src/index.ts index e8ff0a8f65..8e2b4bbb1e 100644 --- a/plugins/view-resources/src/index.ts +++ b/plugins/view-resources/src/index.ts @@ -108,7 +108,6 @@ import { AggregationMiddleware } from './middleware' import { grouppingStatusManager, StatusAggregationManager } from './status' export { getActions, invokeAction } from './actions' export { default as ActionHandler } from './components/ActionHandler.svelte' -export { default as AddSavedView } from './components/filter/AddSavedView.svelte' export { default as FilterButton } from './components/filter/FilterButton.svelte' export { default as FixedColumn } from './components/FixedColumn.svelte' export { default as SourcePresenter } from './components/inference/SourcePresenter.svelte' diff --git a/plugins/view/src/index.ts b/plugins/view/src/index.ts index be5e1fe7c4..e7ebe38b68 100644 --- a/plugins/view/src/index.ts +++ b/plugins/view/src/index.ts @@ -824,6 +824,7 @@ const view = plugin(viewId, { Timeline: '' as IntlString, Public: '' as IntlString, Hide: '' as IntlString, + Rename: '' as IntlString, Assigned: '' as IntlString, Open: '' as IntlString, Created: '' as IntlString, diff --git a/plugins/workbench-resources/src/components/SavedView.svelte b/plugins/workbench-resources/src/components/SavedView.svelte index 09c6d65df8..a89588a1c0 100644 --- a/plugins/workbench-resources/src/components/SavedView.svelte +++ b/plugins/workbench-resources/src/components/SavedView.svelte @@ -1,11 +1,20 @@