@@ -315,96 +315,98 @@ async function onRemoveCustomIcon() {
315315 </script >
316316
317317<template >
318- <ContextMenu .ContextMenu >
319- <ContextMenu .ContextMenuTrigger as-child >
320- <UiTree
321- :model-value =" treeData "
322- :selected-ids =" selectedIds "
323- :editable-id =" editableId "
324- :focused-id =" focusedId "
325- :highlighted-ids =" highlightedIds "
326- @click-node =" onClickNode "
327- @dblclick-node =" onDblclickNode "
328- @toggle-node =" onToggleNode "
329- @drag-node =" onDragNode "
330- @external-drop =" onExternalDrop "
331- @context-menu =" onContextMenu "
332- @update-label =" onUpdateLabel "
333- @cancel-edit =" onCancelEdit "
334- @update :selected-ids =" selectedIds = $event "
335- @update :editable-id =" editableId = $event "
336- @update :focused-id =" focusedId = $event "
337- @update :highlighted-ids =" highlightedIds = $event "
338- >
339- <template #icon =" { node } " >
340- <div class =" mr-1.5 flex flex-shrink-0 items-center" >
341- <UiFolderIcon
342- v-if =" getFolderByIdFromTree (folders , Number (node .id ))?.icon "
343- :name =" getFolderByIdFromTree (folders , Number (node .id ))! .icon ! "
344- />
345- <Folder
346- v-else
347- class="h-4 w-4"
348- />
349- </div >
350- </template >
351- </UiTree >
352- </ContextMenu .ContextMenuTrigger >
353- <ContextMenu .ContextMenuContent >
354- <template v-if =" isContextMultiSelection " >
355- <ContextMenu .ContextMenuItem @click =" onDeleteFolder" >
356- {{ i18n.t("action.delete.common") }}
357- </ContextMenu .ContextMenuItem >
358- </template >
359- <template v-else >
360- <ContextMenu .ContextMenuItem
361- @click =" createFolderAndSelect(contextNode?.id)"
362- >
363- {{ i18n.t("action.new.folder") }}
364- </ContextMenu .ContextMenuItem >
365- <ContextMenu .ContextMenuSeparator />
366- <ContextMenu .ContextMenuItem @click =" onRenameFolder" >
367- {{ i18n.t("action.rename") }}
368- </ContextMenu .ContextMenuItem >
369- <ContextMenu .ContextMenuItem @click =" onDeleteFolder" >
370- {{ i18n.t("action.delete.common") }}
371- </ContextMenu .ContextMenuItem >
372- <ContextMenu .ContextMenuSeparator />
373- <ContextMenu .ContextMenuItem @click =" onSetCustomIcon" >
374- {{ i18n.t("action.setCustomIcon") }}
375- </ContextMenu .ContextMenuItem >
376- <ContextMenu .ContextMenuItem
377- v-if =" contextNode?.icon"
378- @click =" onRemoveCustomIcon"
318+ <div class =" h-full min-h-0" >
319+ <ContextMenu .ContextMenu >
320+ <ContextMenu .ContextMenuTrigger as-child >
321+ <UiTree
322+ :model-value =" treeData "
323+ :selected-ids =" selectedIds "
324+ :editable-id =" editableId "
325+ :focused-id =" focusedId "
326+ :highlighted-ids =" highlightedIds "
327+ @click-node =" onClickNode "
328+ @dblclick-node =" onDblclickNode "
329+ @toggle-node =" onToggleNode "
330+ @drag-node =" onDragNode "
331+ @external-drop =" onExternalDrop "
332+ @context-menu =" onContextMenu "
333+ @update-label =" onUpdateLabel "
334+ @cancel-edit =" onCancelEdit "
335+ @update :selected-ids =" selectedIds = $event "
336+ @update :editable-id =" editableId = $event "
337+ @update :focused-id =" focusedId = $event "
338+ @update :highlighted-ids =" highlightedIds = $event "
379339 >
380- {{ i18n.t("action.removeCustomIcon") }}
381- </ContextMenu .ContextMenuItem >
382- <ContextMenu .ContextMenuSeparator />
383- <ContextMenu .ContextMenuSub >
384- <ContextMenu .ContextMenuSubTrigger >
385- {{ i18n.t("action.defaultLanguage") }}
386- </ContextMenu .ContextMenuSubTrigger >
387- <ContextMenu .ContextMenuSubContent >
388- <div class =" scrollbar max-h-[250px] min-h-0 overflow-y-auto" >
389- <ContextMenu .ContextMenuCheckboxItem
390- v-for =" language in languages"
391- :key =" language.value"
392- :ref ="
393- (el) =>
394- scrollToSelectedLanguage(
395- el,
396- contextNodeDefaultLanguage === language.value,
397- )
398- "
399- :checked =" contextNodeDefaultLanguage === language.value"
400- @click =" onSelectLanguage(language.value)"
401- >
402- {{ language.name }}
403- </ContextMenu .ContextMenuCheckboxItem >
340+ <template #icon =" { node } " >
341+ <div class =" mr-1.5 flex flex-shrink-0 items-center" >
342+ <UiFolderIcon
343+ v-if =" getFolderByIdFromTree (folders , Number (node .id ))?.icon "
344+ :name =" getFolderByIdFromTree (folders , Number (node .id ))! .icon ! "
345+ />
346+ <Folder
347+ v-else
348+ class="h-4 w-4"
349+ />
404350 </div >
405- </ContextMenu .ContextMenuSubContent >
406- </ContextMenu .ContextMenuSub >
407- </template >
408- </ContextMenu .ContextMenuContent >
409- </ContextMenu .ContextMenu >
351+ </template >
352+ </UiTree >
353+ </ContextMenu .ContextMenuTrigger >
354+ <ContextMenu .ContextMenuContent >
355+ <template v-if =" isContextMultiSelection " >
356+ <ContextMenu .ContextMenuItem @click =" onDeleteFolder" >
357+ {{ i18n.t("action.delete.common") }}
358+ </ContextMenu .ContextMenuItem >
359+ </template >
360+ <template v-else >
361+ <ContextMenu .ContextMenuItem
362+ @click =" createFolderAndSelect(contextNode?.id)"
363+ >
364+ {{ i18n.t("action.new.folder") }}
365+ </ContextMenu .ContextMenuItem >
366+ <ContextMenu .ContextMenuSeparator />
367+ <ContextMenu .ContextMenuItem @click =" onRenameFolder" >
368+ {{ i18n.t("action.rename") }}
369+ </ContextMenu .ContextMenuItem >
370+ <ContextMenu .ContextMenuItem @click =" onDeleteFolder" >
371+ {{ i18n.t("action.delete.common") }}
372+ </ContextMenu .ContextMenuItem >
373+ <ContextMenu .ContextMenuSeparator />
374+ <ContextMenu .ContextMenuItem @click =" onSetCustomIcon" >
375+ {{ i18n.t("action.setCustomIcon") }}
376+ </ContextMenu .ContextMenuItem >
377+ <ContextMenu .ContextMenuItem
378+ v-if =" contextNode?.icon"
379+ @click =" onRemoveCustomIcon"
380+ >
381+ {{ i18n.t("action.removeCustomIcon") }}
382+ </ContextMenu .ContextMenuItem >
383+ <ContextMenu .ContextMenuSeparator />
384+ <ContextMenu .ContextMenuSub >
385+ <ContextMenu .ContextMenuSubTrigger >
386+ {{ i18n.t("action.defaultLanguage") }}
387+ </ContextMenu .ContextMenuSubTrigger >
388+ <ContextMenu .ContextMenuSubContent >
389+ <div class =" scrollbar max-h-[250px] min-h-0 overflow-y-auto" >
390+ <ContextMenu .ContextMenuCheckboxItem
391+ v-for =" language in languages"
392+ :key =" language.value"
393+ :ref ="
394+ (el) =>
395+ scrollToSelectedLanguage(
396+ el,
397+ contextNodeDefaultLanguage === language.value,
398+ )
399+ "
400+ :checked =" contextNodeDefaultLanguage === language.value"
401+ @click =" onSelectLanguage(language.value)"
402+ >
403+ {{ language.name }}
404+ </ContextMenu .ContextMenuCheckboxItem >
405+ </div >
406+ </ContextMenu .ContextMenuSubContent >
407+ </ContextMenu .ContextMenuSub >
408+ </template >
409+ </ContextMenu .ContextMenuContent >
410+ </ContextMenu .ContextMenu >
411+ </div >
410412</template >
0 commit comments