Thanks to visit codestin.com
Credit goes to github.com

Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
79 changes: 0 additions & 79 deletions site/src/modules/dashboard/DashboardLayout.stories.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,10 @@ import {
reactRouterParameters,
} from "storybook-addon-remix-react-router";
import { buildInfoKey } from "#/api/queries/buildInfo";
import { chatModels } from "#/api/queries/chats";
import { deploymentStatsQueryKey } from "#/api/queries/deployment";
import { organizationsPermissions } from "#/api/queries/organizations";
import { updateCheckQueryKey } from "#/api/queries/updateCheck";
import type { UpdateCheckResponse } from "#/api/typesGenerated";
import {
MockChatModel,
MockChatModelProviderDescriptor,
} from "#/testHelpers/chatModels";
import {
MockBuildInfo,
MockDefaultOrganization,
Expand Down Expand Up @@ -55,17 +50,6 @@ const mcpServersRouter = reactRouterParameters({
],
});

const modelSettingsRouter = reactRouterParameters({
location: { path: "/" },
routing: [
{ path: "/", useStoryElement: true },
{
path: "/ai/settings/models",
element: <h1>Organization models</h1>,
},
],
});

const meta: Meta<typeof DashboardLayout> = {
title: "modules/dashboard/DashboardLayout",
component: DashboardLayout,
Expand Down Expand Up @@ -124,57 +108,6 @@ export const ForMember: Story = {
},
};

export const CustomOrganizationRoleCanOpenModels: Story = {
parameters: {
pixel: { matrix: pixelWithDesktop },
user: MockUserMember,
permissions: MockNoPermissions,
reactRouter: modelSettingsRouter,
queries: [
{ key: buildInfoKey, data: MockBuildInfo },
{ key: updateCheckQueryKey, data: MockUpdateCheck },
{ key: deploymentStatsQueryKey, data: MockDeploymentStats },
{
key: organizationsPermissions([MockDefaultOrganization.id]).queryKey,
data: {
[MockDefaultOrganization.id]: {
...MockNoOrganizationPermissions,
viewChatModelConfigs: true,
},
},
},
],
},
play: openModels,
};

export const ACLReadableMemberCanOpenModels: Story = {
parameters: {
pixel: { matrix: pixelWithDesktop },
user: MockUserMember,
permissions: MockNoPermissions,
reactRouter: modelSettingsRouter,
queries: [
{ key: buildInfoKey, data: MockBuildInfo },
{ key: updateCheckQueryKey, data: MockUpdateCheck },
{ key: deploymentStatsQueryKey, data: MockDeploymentStats },
{
key: chatModels(MockDefaultOrganization.id).queryKey,
data: {
models: [
{
...MockChatModel,
organization_id: MockDefaultOrganization.id,
},
],
providers: [MockChatModelProviderDescriptor],
},
},
],
},
play: openModels,
};

export const CustomOrganizationRoleCanOpenMCPServers: Story = {
parameters: {
pixel: { matrix: pixelWithDesktop },
Expand Down Expand Up @@ -243,15 +176,3 @@ export const SkipToMainContent: Story = {
await expect(main).toHaveFocus();
},
};

async function openModels({ canvasElement }: { canvasElement: HTMLElement }) {
const user = userEvent.setup();
const canvas = within(canvasElement);
await expect(
canvas.queryByRole("button", { name: "Admin settings" }),
).not.toBeInTheDocument();
await user.click(canvas.getByRole("link", { name: "Models" }));
await expect(
await canvas.findByRole("heading", { name: "Organization models" }),
).toBeInTheDocument();
}
36 changes: 1 addition & 35 deletions site/src/modules/dashboard/Navbar/MobileMenu.stories.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import type { Meta, StoryObj } from "@storybook/react-vite";
import type { FC } from "react";
import { expect, fn, userEvent, within } from "storybook/test";
import { reactRouterParameters } from "storybook-addon-remix-react-router";
import { fn, userEvent, within } from "storybook/test";
import {
MockPrimaryWorkspaceProxy,
MockProxyLatencies,
Expand Down Expand Up @@ -43,7 +42,6 @@ const meta: Meta<typeof MobileMenu> = {
supportLinks: MockSupportLinks,
onSignOut: fn(),
isDefaultOpen: true,
canViewModels: false,
adminPermissions: {
canViewDeployment: true,
canViewOrganizations: true,
Expand Down Expand Up @@ -98,38 +96,6 @@ export const Member: Story = {
},
};

export const MemberWithModelAccess: Story = {
parameters: {
reactRouter: reactRouterParameters({
location: { path: "/" },
routing: [
{ path: "/", useStoryElement: true },
{
path: "/ai/settings/models",
element: <h1>Organization models</h1>,
},
],
}),
},
args: {
user: MockUserMember,
adminPermissions: {},
canViewModels: true,
},
play: async ({ canvasElement }) => {
const user = userEvent.setup();
const canvas = within(canvasElement);
const body = within(canvasElement.ownerDocument.body);
await expect(
body.queryByRole("menuitem", { name: /admin settings/i }),
).not.toBeInTheDocument();
await user.click(body.getByRole("menuitem", { name: "Models" }));
await expect(
await canvas.findByRole("heading", { name: "Organization models" }),
).toBeInTheDocument();
},
};

export const ProxySettings: Story = {
play: async ({ canvasElement }) => {
const user = userEvent.setup();
Expand Down
7 changes: 0 additions & 7 deletions site/src/modules/dashboard/Navbar/MobileMenu.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,6 @@ const itemStyles = {

type MobileMenuProps = {
proxyContextValue?: ProxyContextValue;
canViewModels: boolean;
adminPermissions: AdminSettingsPermissions;
user?: TypesGen.User;
supportLinks?: readonly TypesGen.LinkConfig[];
Expand All @@ -53,7 +52,6 @@ type MobileMenuProps = {

export const MobileMenu: FC<MobileMenuProps> = ({
adminPermissions,
canViewModels,
proxyContextValue,
user,
supportLinks,
Expand Down Expand Up @@ -89,11 +87,6 @@ export const MobileMenu: FC<MobileMenuProps> = ({
<DropdownMenuItem asChild className={itemStyles.default}>
<Link to="/agents">Agents</Link>
</DropdownMenuItem>
{canViewModels && (
<DropdownMenuItem asChild className={itemStyles.default}>
<Link to="/ai/settings/models">Models</Link>
</DropdownMenuItem>
)}
<DropdownMenuSeparator />
<ProxySettingsSub proxyContextValue={proxyContextValue} />

Expand Down
6 changes: 0 additions & 6 deletions site/src/modules/dashboard/Navbar/Navbar.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ import {
canViewDeploymentSettings,
} from "#/modules/permissions";
import { useCanShareOrganizationMCPServers } from "#/pages/AISettingsPage/MCPServersPage/organizationSharing";
import { useAccessibleModelOrganizations } from "#/pages/AISettingsPage/ModelsPage/organizationModels";
import { useFeatureVisibility } from "../useFeatureVisibility";
import { NavbarView } from "./NavbarView";

Expand All @@ -22,8 +21,6 @@ export const Navbar: React.FC = () => {
const { user: me, permissions, signOut } = useAuthenticated();
const featureVisibility = useFeatureVisibility();
const proxyContextValue = useProxy();
const accessibleModelOrgsQuery =
useAccessibleModelOrganizations(organizations);
const canAccessAnyModel = canAccessAnyChatModelConfig(permissions);

const canViewDeployment = canViewDeploymentSettings(permissions);
Expand Down Expand Up @@ -51,8 +48,6 @@ export const Navbar: React.FC = () => {
);
const canViewAISettings =
canViewSiteWideAISettings || organizationMCPSharing.canShare;
Comment thread
ethanndickson marked this conversation as resolved.
const canViewModels =
!canViewAISettings && accessibleModelOrgsQuery.organizations.length > 0;
const canCreateChat = permissions.createChat;

const uniqueLinks = new Map<string, LinkConfig>();
Expand All @@ -76,7 +71,6 @@ export const Navbar: React.FC = () => {
canViewAIBridge,
canViewHealth,
}}
canViewModels={canViewModels}
canCreateChat={canCreateChat}
canViewLicenses={permissions.viewAllLicenses}
proxyContextValue={proxyContextValue}
Expand Down
34 changes: 0 additions & 34 deletions site/src/modules/dashboard/Navbar/NavbarView.stories.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,6 @@ const meta: Meta<typeof NavbarView> = {
canViewAIBridge: true,
canViewHealth: true,
},
canViewModels: false,
canCreateChat: true,
canViewLicenses: false,
supportLinks: [],
Expand Down Expand Up @@ -329,39 +328,6 @@ export const ForUserWithoutOrganization: Story = {
},
};

Comment thread
ethanndickson marked this conversation as resolved.
export const ForMemberWithModelAccess: Story = {
parameters: {
pixel: { matrix: pixelWithDesktop },
reactRouter: reactRouterParameters({
location: { path: "/" },
routing: [
{ path: "/", useStoryElement: true },
{
path: "/ai/settings/models",
element: <h1>Organization models</h1>,
},
],
}),
},
args: {
user: MockUserMember,
adminPermissions: {},
canViewModels: true,
canCreateChat: false,
},
play: async ({ canvasElement }) => {
const user = userEvent.setup();
const canvas = within(canvasElement);
await expect(
canvas.queryByRole("button", { name: "Admin settings" }),
).not.toBeInTheDocument();
await user.click(canvas.getByRole("link", { name: "Models" }));
await expect(
await canvas.findByRole("heading", { name: "Organization models" }),
).toBeInTheDocument();
},
};

export const ForMember: Story = {
args: {
user: MockUserMember,
Expand Down
22 changes: 1 addition & 21 deletions site/src/modules/dashboard/Navbar/NavbarView.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@ interface NavbarViewProps {
onSignOut: () => void;
adminPermissions: AdminSettingsPermissions;
canCreateChat: boolean;
canViewModels: boolean;
canViewLicenses: boolean;
proxyContextValue?: ProxyContextValue;
}
Expand All @@ -51,7 +50,6 @@ export const NavbarView: FC<NavbarViewProps> = ({
onSignOut,
adminPermissions,
canCreateChat,
canViewModels,
canViewLicenses,
proxyContextValue,
}) => {
Expand Down Expand Up @@ -84,7 +82,6 @@ export const NavbarView: FC<NavbarViewProps> = ({
<NavItems
className="ml-4 hidden md:flex"
user={user}
canViewModels={canViewModels}
canCreateChat={canCreateChat}
/>

Expand Down Expand Up @@ -151,7 +148,6 @@ export const NavbarView: FC<NavbarViewProps> = ({
<div className="md:hidden">
<MobileMenu
proxyContextValue={proxyContextValue}
canViewModels={canViewModels}
adminPermissions={adminPermissions}
user={user}
supportLinks={supportLinks}
Expand All @@ -166,16 +162,10 @@ export const NavbarView: FC<NavbarViewProps> = ({
interface NavItemsProps {
className?: string;
user: TypesGen.User;
canViewModels: boolean;
canCreateChat: boolean;
}

const NavItems: FC<NavItemsProps> = ({
className,
user,
canCreateChat,
canViewModels,
}) => {
const NavItems: FC<NavItemsProps> = ({ className, user, canCreateChat }) => {
const location = useLocation();

return (
Expand All @@ -200,16 +190,6 @@ const NavItems: FC<NavItemsProps> = ({
Templates
</NavLink>
<TasksNavItem user={user} />
{canViewModels && (
<NavLink
className={({ isActive }) =>
cn(linkStyles.default, { [linkStyles.active]: isActive })
}
to="/ai/settings/models"
>
Models
</NavLink>
)}
{canCreateChat && (
<NavLink
className={({ isActive }) => {
Expand Down
Loading