Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
6b0a030
fix: update function parameters to support optional values and improv…
WANZARGEN Apr 7, 2025
16972f8
feat: add composables for project group queries and update ProjectMai…
WANZARGEN Apr 7, 2025
c46aa7f
refactor: integrate project group mutations into ProjectMainProjectGr…
WANZARGEN Apr 7, 2025
0b9c778
feat: add CREATE action translations for English, Japanese, and Korean
WANZARGEN Apr 7, 2025
fbb10dd
feat: add new LSB components and refactor navigation structure
WANZARGEN Apr 7, 2025
0196c7b
refactor: reorganize project structure and update imports for project…
WANZARGEN Apr 7, 2025
aaff39b
feat: implement new project management modals and refactor project co…
WANZARGEN Apr 7, 2025
c668ba2
feat: add V2 feature schema for project menu visibility
WANZARGEN Apr 7, 2025
78a24ae
feat: add empty state handling in LSBStarredTree component
WANZARGEN Apr 7, 2025
43adc70
feat: add selected paths functionality and improve project tree navig…
WANZARGEN Apr 7, 2025
fdddaf6
feat: refactor project management modals and queries
WANZARGEN Apr 7, 2025
a7ccc39
refactor: improve state management and user interactions
WANZARGEN Apr 7, 2025
128996a
feat: add project and project group management modals, enhance state …
WANZARGEN Apr 7, 2025
a345e80
feat: enhance ProjectActionDropdownButton and ProjectMoveModal compon…
WANZARGEN Apr 7, 2025
ce44a77
feat: refactor project group mutations and integrate them into modals
WANZARGEN Apr 7, 2025
37dac89
feat: update LSBStarredTree component layout
WANZARGEN Apr 7, 2025
b8b666f
feat: refactor ProjectAndGroupListPanel component and update project …
WANZARGEN Apr 7, 2025
3682d10
feat: enhance ProjectCard and ProjectActionDropdownButton
WANZARGEN Apr 7, 2025
cc19aab
feat: implement useTextEllipsis hook for text overflow detection
WANZARGEN Apr 7, 2025
0edcdc0
feat: add PROJECTS concept and translations for multiple languages
WANZARGEN Apr 7, 2025
b85967c
feat: refactor project management components to use centralized proje…
WANZARGEN Apr 7, 2025
9d0676e
feat: add ProjectDashboard, ProjectDetailTab, and ProjectOverview com…
WANZARGEN Apr 7, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 8 additions & 4 deletions apps/web/src/common/components/buttons/ActionMenuButton.vue
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
<script setup lang="ts">
import { onClickOutside } from '@vueuse/core';
import { ref, computed } from 'vue';
import { ref, computed, toRef } from 'vue';

import { PIconButton, PContextMenu, useContextMenuStyle } from '@cloudforet/mirinae';
import type { IconButtonSize, IconButtonStyleType } from '@cloudforet/mirinae/types/controls/buttons/icon-button/type';
import type { ContextMenuPosition } from '@cloudforet/mirinae/types/controls/dropdown/select-dropdown/type';

import { i18n } from '@/translations';

Expand All @@ -12,12 +14,14 @@ import type { ActionMenuItem } from './type';
type SupportMenu = 'edit' | 'delete';
const props = withDefaults(defineProps<{
menu?: Array<SupportMenu|ActionMenuItem>;
styleType?: string;
size?: string;
styleType?: IconButtonStyleType;
size?: IconButtonSize;
position?: ContextMenuPosition;
}>(), {
menu: undefined,
styleType: 'transparent',
size: 'md',
position: 'right',
});
const emit = defineEmits<{(event: 'edit'): void;
(event: 'delete'): void;
Expand All @@ -33,7 +37,7 @@ useContextMenuStyle({
menuRef,
visibleMenu,
useFixedMenuStyle: true,
position: 'right',
position: toRef(props, 'position'),
menuWidth: props.size === 'sm' ? '113px' : '192px',
});
const menuMap = computed<Record<SupportMenu, ActionMenuItem>>(() => ({
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { PDivider } from '@cloudforet/mirinae';
</script>

<template>
<div class="pt-1 pb-3 px-2 my-2">
<div class="pt-2 pb-2">
<p-divider />
</div>
</template>
62 changes: 62 additions & 0 deletions apps/web/src/common/modules/navigations/new-lsb/LSBItem.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
<script setup lang="ts">
import { PTreeNode } from '@cloudforet/mirinae';

import BetaMark from '@/common/components/marks/BetaMark.vue';
import NewMark from '@/common/components/marks/NewMark.vue';
import UpdateMark from '@/common/components/marks/UpdateMark.vue';
import FavoriteButton from '@/common/modules/favorites/favorite-button/FavoriteButton.vue';
import { FAVORITE_TYPE } from '@/common/modules/favorites/favorite-button/type';
import type { LSBItemProps } from '@/common/modules/navigations/new-lsb/type';

const props = withDefaults(defineProps<LSBItemProps>(), {
icon: undefined,
displayType: 'list',
highlightTag: undefined,
favoriteOptions: undefined,
favoriteVisibility: 'always',
});

</script>

<template>
<p-tree-node :id="props.id"
:name="props.name"
:icon="props.icon"
:display-type="props.displayType"
selectable
:link="props.link"
>
<template #outer-left>
<slot name="outer-left" />
</template>
<template #inner-left>
<slot name="inner-left" />
</template>
<template #default>
<slot />
</template>
<template #inner-right>
<slot name="inner-right" />
<div v-if="props.highlightTag"
class="h-full mt-[-0.25rem]"
>
<new-mark v-if="props.highlightTag === 'new'" />
<update-mark v-else-if="props.highlightTag === 'update'" />
<beta-mark v-else-if="props.highlightTag === 'beta'" />
</div>
</template>
<template #outer-right>
<slot name="outer-right" />
</template>
<template #action="{isHovered}">
<favorite-button v-if="props.favoriteVisibility !== 'none'"
v-show="props.favoriteVisibility === 'hovered-only' ? isHovered : true"
:item-id="props.favoriteOptions?.id ?? props.id"
:favorite-type="props.favoriteOptions?.type ?? FAVORITE_TYPE.MENU"
:visible-active-case-only="props.favoriteVisibility === 'active-only'"
scale="0.8"
/>
</template>
</p-tree-node>
</template>

This file was deleted.

152 changes: 0 additions & 152 deletions apps/web/src/common/modules/navigations/new-lsb/LSBRouterItem.vue

This file was deleted.

48 changes: 48 additions & 0 deletions apps/web/src/common/modules/navigations/new-lsb/LSBStarredTree.vue
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
<script setup lang="ts">
import { PTreeNode, PEmpty } from '@cloudforet/mirinae';

import LSBItem from '@/common/modules/navigations/new-lsb/LSBItem.vue';
import type { LSBItemProps } from '@/common/modules/navigations/new-lsb/type';

const props = defineProps<{
expanded?: boolean;
items: LSBItemProps[];
}>();
</script>

<template>
<p-tree-node id="starred"
icon="ic_multi-favorite"
display-type="tree"
:expanded="props.expanded"
has-children
>
<template v-for="(_, slot) of $scopedSlots"
#[slot]="scope"
>
<slot :name="slot"
v-bind="scope"
/>
</template>
<span class="font-bold">{{ $t('COMMON.STARRED') }}</span>
<template #children>
<div v-if="props.items.length > 0"
class="max-h-[21rem] overflow-x-auto"
>
<l-s-b-item v-for="item in props.items"
:id="item.id"
:key="item.id"
:name="item.name"
display-type="tree"
:icon="item.icon"
:link="item.link"
:favorite-options="item.favoriteOptions"
favorite-visibility="hovered-only"
/>
</div>
<p-empty v-else>
{{ $t('COMMON.STARRED_NO_DATA') }}
</p-empty>
</template>
</p-tree-node>
</template>
Loading
Loading