diff --git a/app/web/src/newhotness/Workspace.vue b/app/web/src/newhotness/Workspace.vue index 5e77a6b7b3..e9290b4e35 100644 --- a/app/web/src/newhotness/Workspace.vue +++ b/app/web/src/newhotness/Workspace.vue @@ -145,6 +145,7 @@ :actionId="actionId" /> + @@ -184,6 +185,7 @@ import { ChangeSet, ChangeSetStatus } from "@/api/sdf/dal/change_set"; import { muspelheimStatuses } from "@/store/realtime/heimdall"; import { trackEvent } from "@/utils/tracking"; import Onboarding, { DEBUG_MODE } from "@/newhotness/Onboarding2.vue"; +import WorkspaceDashboard from "@/newhotness/WorkspaceDashboard.vue"; import NavbarPanelRight from "./nav/NavbarPanelRight.vue"; import Lobby from "./Lobby.vue"; import Explore, { GroupByUrlQuery, SortByUrlQuery } from "./Explore.vue"; @@ -960,6 +962,7 @@ const bumpToWorkspaces = () => { }; const onReviewPage = computed(() => route.name === "new-hotness-review"); +const onDashPage = computed(() => route.name === "new-hotness-dash"); // POSTHOG TRACKING watch(heimdall.initCompleted, () => { diff --git a/app/web/src/newhotness/WorkspaceDashboard.vue b/app/web/src/newhotness/WorkspaceDashboard.vue new file mode 100644 index 0000000000..6f1df7dd91 --- /dev/null +++ b/app/web/src/newhotness/WorkspaceDashboard.vue @@ -0,0 +1,394 @@ + + + diff --git a/app/web/src/newhotness/layout_components/CollapsingFlexItem.vue b/app/web/src/newhotness/layout_components/CollapsingFlexItem.vue index 2eedbe33b9..c7e046538e 100644 --- a/app/web/src/newhotness/layout_components/CollapsingFlexItem.vue +++ b/app/web/src/newhotness/layout_components/CollapsingFlexItem.vue @@ -26,27 +26,42 @@ 'group/header', 'flex-none flex items-center px-xs m-0 min-h-[2.5rem]', !disableCollapse && [ - 'cursor-pointer', + !disableOpen && 'cursor-pointer', variant === 'standard' && + !disableOpen && themeClasses('hover:bg-neutral-100', 'hover:bg-neutral-700'), ], `text-${computedHeaderTextSize}`, variant === 'standard' && [ showOpen && 'border-b', - themeClasses( - 'bg-white border-neutral-400', - 'bg-neutral-800 border-neutral-600', - ), + !disableOpen && + themeClasses( + 'bg-white border-neutral-400', + 'bg-neutral-800 border-neutral-600', + ), + disableOpen && + themeClasses( + 'bg-neutral-200 border-neutral-300 text-gray-700', + 'bg-neutral-900 border-neutral-700 text-gray-300', + ), ], variant === 'onboarding' && 'hover:underline', ) " @click="toggleOpen" > - + -
+
+
(), { h3class: tw`flex flex-row items-center gap-xs p-2xs z-30`, @@ -153,6 +170,7 @@ const emit = defineEmits<{ }>(); const toggleOpen = () => { + if (props.disableOpen) return; emit("toggle"); openState.toggle(); }; diff --git a/app/web/src/newhotness/layout_components/DashboardDetails.vue b/app/web/src/newhotness/layout_components/DashboardDetails.vue new file mode 100644 index 0000000000..238ef292b3 --- /dev/null +++ b/app/web/src/newhotness/layout_components/DashboardDetails.vue @@ -0,0 +1,85 @@ + + + diff --git a/app/web/src/router.ts b/app/web/src/router.ts index 5ee25cb70b..0e7e7a3ed4 100644 --- a/app/web/src/router.ts +++ b/app/web/src/router.ts @@ -104,6 +104,12 @@ const routes: RouteRecordRaw[] = [ // path: "lobby", // component: () => import("@/newhotness/Workspace.vue"), // }, + { + name: "new-hotness-dash", + path: "dash", + props: true, + component: () => import("@/newhotness/Workspace.vue"), + }, { name: "new-hotness-view", path: ":viewId/v/edit", diff --git a/app/web/src/store/realtime/heimdall_inner.ts b/app/web/src/store/realtime/heimdall_inner.ts index 87bbfefb28..058a0a0039 100644 --- a/app/web/src/store/realtime/heimdall_inner.ts +++ b/app/web/src/store/realtime/heimdall_inner.ts @@ -9,7 +9,9 @@ import { import { Gettable } from "@/workers/types/dbinterface"; import { Context } from "@/newhotness/types"; -export const innerUseMakeKey = (ctx: Context) => { +export const rawUseMakeKey = ( + ctx: Pick, +) => { return ( kind: MaybeRefOrGetter, id?: MaybeRefOrGetter, @@ -44,7 +46,13 @@ export const innerUseMakeKey = (ctx: Context) => { }); }; -export const innerUseMakeArgs = (ctx: Context) => { +export const innerUseMakeKey = (ctx: Context) => { + return rawUseMakeKey(ctx); +}; + +export const rawUseMakeArgs = ( + ctx: Pick, +) => { return (kind: EntityKind, id?: string) => { if (GLOBAL_ENTITIES.includes(kind as GlobalEntity)) { return { @@ -62,3 +70,7 @@ export const innerUseMakeArgs = (ctx: Context) => { }; }; }; + +export const innerUseMakeArgs = (ctx: Context) => { + return rawUseMakeArgs(ctx); +}; diff --git a/lib/vue-lib/src/design-system/general/CollapseExpandChevron.vue b/lib/vue-lib/src/design-system/general/CollapseExpandChevron.vue index 1339ab4403..9c0c2089e4 100644 --- a/lib/vue-lib/src/design-system/general/CollapseExpandChevron.vue +++ b/lib/vue-lib/src/design-system/general/CollapseExpandChevron.vue @@ -2,14 +2,15 @@