diff --git a/admin/app/ai/page.tsx b/admin/app/ai/page.tsx index f8892217b3..5ea7b9fdec 100644 --- a/admin/app/ai/page.tsx +++ b/admin/app/ai/page.tsx @@ -4,7 +4,7 @@ import { observer } from "mobx-react"; import useSWR from "swr"; import { Loader } from "@plane/ui"; // components -import { PageHeader } from "@/components/core"; +import { PageHeader } from "@/components/common"; // hooks import { useInstance } from "@/hooks/store"; // components diff --git a/admin/app/authentication/github/page.tsx b/admin/app/authentication/github/page.tsx index adf493b2ed..924b9b36d7 100644 --- a/admin/app/authentication/github/page.tsx +++ b/admin/app/authentication/github/page.tsx @@ -7,7 +7,8 @@ import { useTheme } from "next-themes"; import useSWR from "swr"; import { Loader, ToggleSwitch, setPromiseToast } from "@plane/ui"; // components -import { PageHeader } from "@/components/core"; +import { AuthenticationMethodCard } from "@/components/authentication"; +import { PageHeader } from "@/components/common"; // helpers import { resolveGeneralTheme } from "@/helpers/common.helper"; // hooks @@ -16,7 +17,6 @@ import { useInstance } from "@/hooks/store"; import githubLightModeImage from "@/public/logos/github-black.png"; import githubDarkModeImage from "@/public/logos/github-white.png"; // local components -import { AuthenticationMethodCard } from "../components"; import { InstanceGithubConfigForm } from "./form"; const InstanceGithubAuthenticationPage = observer(() => { diff --git a/admin/app/authentication/gitlab/page.tsx b/admin/app/authentication/gitlab/page.tsx index f7e73b0123..cb2cfd9cdb 100644 --- a/admin/app/authentication/gitlab/page.tsx +++ b/admin/app/authentication/gitlab/page.tsx @@ -6,13 +6,13 @@ import Image from "next/image"; import useSWR from "swr"; import { Loader, ToggleSwitch, setPromiseToast } from "@plane/ui"; // components -import { PageHeader } from "@/components/core"; +import { AuthenticationMethodCard } from "@/components/authentication"; +import { PageHeader } from "@/components/common"; // hooks import { useInstance } from "@/hooks/store"; // icons import GitlabLogo from "@/public/logos/gitlab-logo.svg"; // local components -import { AuthenticationMethodCard } from "../components"; import { InstanceGitlabConfigForm } from "./form"; const InstanceGitlabAuthenticationPage = observer(() => { diff --git a/admin/app/authentication/google/page.tsx b/admin/app/authentication/google/page.tsx index 2edd22f51c..79e7111792 100644 --- a/admin/app/authentication/google/page.tsx +++ b/admin/app/authentication/google/page.tsx @@ -6,13 +6,13 @@ import Image from "next/image"; import useSWR from "swr"; import { Loader, ToggleSwitch, setPromiseToast } from "@plane/ui"; // components -import { PageHeader } from "@/components/core"; +import { AuthenticationMethodCard } from "@/components/authentication"; +import { PageHeader } from "@/components/common"; // hooks import { useInstance } from "@/hooks/store"; // icons import GoogleLogo from "@/public/logos/google-logo.svg"; // local components -import { AuthenticationMethodCard } from "../components"; import { InstanceGoogleConfigForm } from "./form"; const InstanceGoogleAuthenticationPage = observer(() => { diff --git a/admin/app/authentication/page.tsx b/admin/app/authentication/page.tsx index 8ad7cac7c5..89b7385ef9 100644 --- a/admin/app/authentication/page.tsx +++ b/admin/app/authentication/page.tsx @@ -2,40 +2,16 @@ import { useState } from "react"; import { observer } from "mobx-react"; -import Image from "next/image"; -import { useTheme } from "next-themes"; import useSWR from "swr"; -import { Mails, KeyRound } from "lucide-react"; import { TInstanceConfigurationKeys } from "@plane/types"; import { Loader, ToggleSwitch, setPromiseToast } from "@plane/ui"; -// components -import { PageHeader } from "@/components/core"; -// hooks +import { PageHeader } from "@/components/common"; // helpers -import { cn, resolveGeneralTheme } from "@/helpers/common.helper"; +import { cn } from "@/helpers/common.helper"; +// hooks import { useInstance } from "@/hooks/store"; -// images -import githubLightModeImage from "@/public/logos/github-black.png"; -import githubDarkModeImage from "@/public/logos/github-white.png"; -import GitlabLogo from "@/public/logos/gitlab-logo.svg"; -import GoogleLogo from "@/public/logos/google-logo.svg"; -// local components -import { - AuthenticationMethodCard, - EmailCodesConfiguration, - PasswordLoginConfiguration, - GitlabConfiguration, - GithubConfiguration, - GoogleConfiguration, -} from "./components"; - -type TInstanceAuthenticationMethodCard = { - key: string; - name: string; - description: string; - icon: JSX.Element; - config: JSX.Element; -}; +// plane admin components +import { AuthenticationModes } from "@/plane-admin/components/authentication"; const InstanceAuthenticationPage = observer(() => { // store @@ -45,8 +21,6 @@ const InstanceAuthenticationPage = observer(() => { // state const [isSubmitting, setIsSubmitting] = useState(false); - // theme - const { resolvedTheme } = useTheme(); // derived values const enableSignUpConfig = formattedConfig?.ENABLE_SIGNUP ?? ""; @@ -81,52 +55,6 @@ const InstanceAuthenticationPage = observer(() => { }); }; - // Authentication methods - const authenticationMethodsCard: TInstanceAuthenticationMethodCard[] = [ - { - key: "email-codes", - name: "Email codes", - description: "Login or sign up using codes sent via emails. You need to have email setup here and enabled.", - icon: , - config: , - }, - { - key: "password-login", - name: "Password based login", - description: "Allow members to create accounts with passwords for emails to sign in.", - icon: , - config: , - }, - { - key: "google", - name: "Google", - description: "Allow members to login or sign up to plane with their Google accounts.", - icon: Google Logo, - config: , - }, - { - key: "github", - name: "Github", - description: "Allow members to login or sign up to plane with their Github accounts.", - icon: ( - GitHub Logo - ), - config: , - }, - { - key: "gitlab", - name: "GitLab", - description: "Allow members to login or sign up to plane with their GitLab accounts.", - icon: GitLab Logo, - config: , - }, - ]; - return ( <> @@ -168,16 +96,7 @@ const InstanceAuthenticationPage = observer(() => {
Authentication modes
- {authenticationMethodsCard.map((method) => ( - - ))} + ) : ( diff --git a/admin/app/email/page.tsx b/admin/app/email/page.tsx index 122979850a..4e765da059 100644 --- a/admin/app/email/page.tsx +++ b/admin/app/email/page.tsx @@ -4,7 +4,7 @@ import { observer } from "mobx-react"; import useSWR from "swr"; import { Loader } from "@plane/ui"; // components -import { PageHeader } from "@/components/core"; +import { PageHeader } from "@/components/common"; // hooks import { useInstance } from "@/hooks/store"; // components diff --git a/admin/app/image/page.tsx b/admin/app/image/page.tsx index eada4e6a18..824509c5b1 100644 --- a/admin/app/image/page.tsx +++ b/admin/app/image/page.tsx @@ -4,7 +4,7 @@ import { observer } from "mobx-react"; import useSWR from "swr"; import { Loader } from "@plane/ui"; // components -import { PageHeader } from "@/components/core"; +import { PageHeader } from "@/components/common"; // hooks import { useInstance } from "@/hooks/store"; // local diff --git a/admin/app/layout.tsx b/admin/app/layout.tsx index 9fdce40172..19aba48e9a 100644 --- a/admin/app/layout.tsx +++ b/admin/app/layout.tsx @@ -16,10 +16,12 @@ import { UserProvider } from "@/lib/user-provider"; // styles import "./globals.css"; -export default function RootLayout({ children }: { children: ReactNode }) { - // themes +const ToastWithTheme = () => { const { resolvedTheme } = useTheme(); + return ; +}; +export default function RootLayout({ children }: { children: ReactNode }) { return ( @@ -31,7 +33,7 @@ export default function RootLayout({ children }: { children: ReactNode }) { - + diff --git a/admin/ce/components/authentication/authentication-modes.tsx b/admin/ce/components/authentication/authentication-modes.tsx new file mode 100644 index 0000000000..860740ae0c --- /dev/null +++ b/admin/ce/components/authentication/authentication-modes.tsx @@ -0,0 +1,104 @@ +import { observer } from "mobx-react"; +import Image from "next/image"; +import { useTheme } from "next-themes"; +import { KeyRound, Mails } from "lucide-react"; +// types +import { TInstanceAuthenticationMethodKeys, TInstanceAuthenticationModes } from "@plane/types"; +// components +import { + AuthenticationMethodCard, + EmailCodesConfiguration, + GithubConfiguration, + GitlabConfiguration, + GoogleConfiguration, + PasswordLoginConfiguration, +} from "@/components/authentication"; +// helpers +import { resolveGeneralTheme } from "@/helpers/common.helper"; +// images +import githubLightModeImage from "@/public/logos/github-black.png"; +import githubDarkModeImage from "@/public/logos/github-white.png"; +import GitlabLogo from "@/public/logos/gitlab-logo.svg"; +import GoogleLogo from "@/public/logos/google-logo.svg"; + +export type TAuthenticationModeProps = { + disabled: boolean; + updateConfig: (key: TInstanceAuthenticationMethodKeys, value: string) => void; +}; + +export type TGetAuthenticationModeProps = { + disabled: boolean; + updateConfig: (key: TInstanceAuthenticationMethodKeys, value: string) => void; + resolvedTheme: string | undefined; +}; + +// Authentication methods +export const getAuthenticationModes: (props: TGetAuthenticationModeProps) => TInstanceAuthenticationModes[] = ({ + disabled, + updateConfig, + resolvedTheme, +}) => [ + { + key: "email-codes", + name: "Email codes", + description: "Login or sign up using codes sent via emails. You need to have email setup here and enabled.", + icon: , + config: , + }, + { + key: "password-login", + name: "Password based login", + description: "Allow members to create accounts with passwords for emails to sign in.", + icon: , + config: , + }, + { + key: "google", + name: "Google", + description: "Allow members to login or sign up to plane with their Google accounts.", + icon: Google Logo, + config: , + }, + { + key: "github", + name: "Github", + description: "Allow members to login or sign up to plane with their Github accounts.", + icon: ( + GitHub Logo + ), + config: , + }, + { + key: "gitlab", + name: "GitLab", + description: "Allow members to login or sign up to plane with their GitLab accounts.", + icon: GitLab Logo, + config: , + }, + ]; + +export const AuthenticationModes: React.FC = observer((props) => { + const { disabled, updateConfig } = props; + // next-themes + const { resolvedTheme } = useTheme(); + + return ( + <> + {getAuthenticationModes({ disabled, updateConfig, resolvedTheme }).map((method) => ( + + ))} + + ); +}); diff --git a/admin/ce/components/authentication/index.ts b/admin/ce/components/authentication/index.ts new file mode 100644 index 0000000000..d2aa748557 --- /dev/null +++ b/admin/ce/components/authentication/index.ts @@ -0,0 +1 @@ +export * from "./authentication-modes"; diff --git a/admin/components/common/toast.tsx b/admin/components/common/toast.tsx deleted file mode 100644 index 455e67930a..0000000000 --- a/admin/components/common/toast.tsx +++ /dev/null @@ -1,13 +0,0 @@ -"use client"; - -import { useTheme } from "next-themes"; -// ui -import { Toast as ToastComponent } from "@plane/ui"; -// helpers -import { resolveGeneralTheme } from "@/helpers/common.helper"; - -export const Toast = () => { - const { theme } = useTheme(); - - return ; -}; diff --git a/admin/components/core/index.ts b/admin/components/core/index.ts deleted file mode 100644 index d32aafe964..0000000000 --- a/admin/components/core/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from "./page-header"; diff --git a/admin/components/admin-sidebar/help-section.tsx b/admin/core/components/admin-sidebar/help-section.tsx similarity index 100% rename from admin/components/admin-sidebar/help-section.tsx rename to admin/core/components/admin-sidebar/help-section.tsx diff --git a/admin/components/admin-sidebar/index.ts b/admin/core/components/admin-sidebar/index.ts similarity index 100% rename from admin/components/admin-sidebar/index.ts rename to admin/core/components/admin-sidebar/index.ts diff --git a/admin/components/admin-sidebar/root.tsx b/admin/core/components/admin-sidebar/root.tsx similarity index 93% rename from admin/components/admin-sidebar/root.tsx rename to admin/core/components/admin-sidebar/root.tsx index ca16acc10d..2d41f57bee 100644 --- a/admin/components/admin-sidebar/root.tsx +++ b/admin/core/components/admin-sidebar/root.tsx @@ -5,10 +5,10 @@ import { observer } from "mobx-react"; // hooks import { HelpSection, SidebarMenu, SidebarDropdown } from "@/components/admin-sidebar"; import { useTheme } from "@/hooks/store"; -import useOutsideClickDetector from "hooks/use-outside-click-detector"; +import useOutsideClickDetector from "@/hooks/use-outside-click-detector"; // components -export interface IInstanceSidebar {} +export interface IInstanceSidebar { } export const InstanceSidebar: FC = observer(() => { // store diff --git a/admin/components/admin-sidebar/sidebar-dropdown.tsx b/admin/core/components/admin-sidebar/sidebar-dropdown.tsx similarity index 100% rename from admin/components/admin-sidebar/sidebar-dropdown.tsx rename to admin/core/components/admin-sidebar/sidebar-dropdown.tsx diff --git a/admin/components/admin-sidebar/sidebar-menu-hamburger-toogle.tsx b/admin/core/components/admin-sidebar/sidebar-menu-hamburger-toogle.tsx similarity index 100% rename from admin/components/admin-sidebar/sidebar-menu-hamburger-toogle.tsx rename to admin/core/components/admin-sidebar/sidebar-menu-hamburger-toogle.tsx diff --git a/admin/components/admin-sidebar/sidebar-menu.tsx b/admin/core/components/admin-sidebar/sidebar-menu.tsx similarity index 100% rename from admin/components/admin-sidebar/sidebar-menu.tsx rename to admin/core/components/admin-sidebar/sidebar-menu.tsx diff --git a/admin/components/auth-header.tsx b/admin/core/components/auth-header.tsx similarity index 98% rename from admin/components/auth-header.tsx rename to admin/core/components/auth-header.tsx index 6975c06c13..e1de884cfc 100644 --- a/admin/components/auth-header.tsx +++ b/admin/core/components/auth-header.tsx @@ -10,7 +10,7 @@ import { Settings } from "lucide-react"; import { Breadcrumbs } from "@plane/ui"; // components import { SidebarHamburgerToggle } from "@/components/admin-sidebar"; -import { BreadcrumbLink } from "components/common"; +import { BreadcrumbLink } from "@/components/common"; export const InstanceHeader: FC = observer(() => { const pathName = usePathname(); diff --git a/admin/app/authentication/components/authentication-method-card.tsx b/admin/core/components/authentication/authentication-method-card.tsx similarity index 100% rename from admin/app/authentication/components/authentication-method-card.tsx rename to admin/core/components/authentication/authentication-method-card.tsx diff --git a/admin/app/authentication/components/email-config-switch.tsx b/admin/core/components/authentication/email-config-switch.tsx similarity index 100% rename from admin/app/authentication/components/email-config-switch.tsx rename to admin/core/components/authentication/email-config-switch.tsx diff --git a/admin/app/authentication/components/github-config.tsx b/admin/core/components/authentication/github-config.tsx similarity index 100% rename from admin/app/authentication/components/github-config.tsx rename to admin/core/components/authentication/github-config.tsx diff --git a/admin/app/authentication/components/gitlab-config.tsx b/admin/core/components/authentication/gitlab-config.tsx similarity index 100% rename from admin/app/authentication/components/gitlab-config.tsx rename to admin/core/components/authentication/gitlab-config.tsx diff --git a/admin/app/authentication/components/google-config.tsx b/admin/core/components/authentication/google-config.tsx similarity index 100% rename from admin/app/authentication/components/google-config.tsx rename to admin/core/components/authentication/google-config.tsx diff --git a/admin/app/authentication/components/index.ts b/admin/core/components/authentication/index.ts similarity index 100% rename from admin/app/authentication/components/index.ts rename to admin/core/components/authentication/index.ts diff --git a/admin/app/authentication/components/password-config-switch.tsx b/admin/core/components/authentication/password-config-switch.tsx similarity index 100% rename from admin/app/authentication/components/password-config-switch.tsx rename to admin/core/components/authentication/password-config-switch.tsx diff --git a/admin/components/common/banner.tsx b/admin/core/components/common/banner.tsx similarity index 100% rename from admin/components/common/banner.tsx rename to admin/core/components/common/banner.tsx diff --git a/admin/components/common/breadcrumb-link.tsx b/admin/core/components/common/breadcrumb-link.tsx similarity index 100% rename from admin/components/common/breadcrumb-link.tsx rename to admin/core/components/common/breadcrumb-link.tsx diff --git a/admin/components/common/confirm-discard-modal.tsx b/admin/core/components/common/confirm-discard-modal.tsx similarity index 100% rename from admin/components/common/confirm-discard-modal.tsx rename to admin/core/components/common/confirm-discard-modal.tsx diff --git a/admin/components/common/controller-input.tsx b/admin/core/components/common/controller-input.tsx similarity index 100% rename from admin/components/common/controller-input.tsx rename to admin/core/components/common/controller-input.tsx diff --git a/admin/components/common/copy-field.tsx b/admin/core/components/common/copy-field.tsx similarity index 100% rename from admin/components/common/copy-field.tsx rename to admin/core/components/common/copy-field.tsx diff --git a/admin/components/common/empty-state.tsx b/admin/core/components/common/empty-state.tsx similarity index 100% rename from admin/components/common/empty-state.tsx rename to admin/core/components/common/empty-state.tsx diff --git a/admin/components/common/index.ts b/admin/core/components/common/index.ts similarity index 89% rename from admin/components/common/index.ts rename to admin/core/components/common/index.ts index c810cac69b..ef376f6229 100644 --- a/admin/components/common/index.ts +++ b/admin/core/components/common/index.ts @@ -6,4 +6,4 @@ export * from "./password-strength-meter"; export * from "./banner"; export * from "./empty-state"; export * from "./logo-spinner"; -export * from "./toast"; +export * from "./page-header"; diff --git a/admin/components/common/logo-spinner.tsx b/admin/core/components/common/logo-spinner.tsx similarity index 100% rename from admin/components/common/logo-spinner.tsx rename to admin/core/components/common/logo-spinner.tsx diff --git a/admin/components/core/page-header.tsx b/admin/core/components/common/page-header.tsx similarity index 100% rename from admin/components/core/page-header.tsx rename to admin/core/components/common/page-header.tsx diff --git a/admin/components/common/password-strength-meter.tsx b/admin/core/components/common/password-strength-meter.tsx similarity index 100% rename from admin/components/common/password-strength-meter.tsx rename to admin/core/components/common/password-strength-meter.tsx diff --git a/admin/components/instance/index.ts b/admin/core/components/instance/index.ts similarity index 100% rename from admin/components/instance/index.ts rename to admin/core/components/instance/index.ts diff --git a/admin/components/instance/instance-failure-view.tsx b/admin/core/components/instance/instance-failure-view.tsx similarity index 100% rename from admin/components/instance/instance-failure-view.tsx rename to admin/core/components/instance/instance-failure-view.tsx diff --git a/admin/components/instance/instance-not-ready.tsx b/admin/core/components/instance/instance-not-ready.tsx similarity index 100% rename from admin/components/instance/instance-not-ready.tsx rename to admin/core/components/instance/instance-not-ready.tsx diff --git a/admin/components/instance/setup-form.tsx b/admin/core/components/instance/setup-form.tsx similarity index 100% rename from admin/components/instance/setup-form.tsx rename to admin/core/components/instance/setup-form.tsx diff --git a/admin/components/login/index.ts b/admin/core/components/login/index.ts similarity index 100% rename from admin/components/login/index.ts rename to admin/core/components/login/index.ts diff --git a/admin/components/login/sign-in-form.tsx b/admin/core/components/login/sign-in-form.tsx similarity index 100% rename from admin/components/login/sign-in-form.tsx rename to admin/core/components/login/sign-in-form.tsx diff --git a/admin/components/new-user-popup.tsx b/admin/core/components/new-user-popup.tsx similarity index 100% rename from admin/components/new-user-popup.tsx rename to admin/core/components/new-user-popup.tsx diff --git a/admin/constants/seo.ts b/admin/core/constants/seo.ts similarity index 100% rename from admin/constants/seo.ts rename to admin/core/constants/seo.ts diff --git a/admin/constants/swr-config.ts b/admin/core/constants/swr-config.ts similarity index 100% rename from admin/constants/swr-config.ts rename to admin/core/constants/swr-config.ts diff --git a/admin/hooks/store/index.ts b/admin/core/hooks/store/index.ts similarity index 100% rename from admin/hooks/store/index.ts rename to admin/core/hooks/store/index.ts diff --git a/admin/hooks/store/use-instance.tsx b/admin/core/hooks/store/use-instance.tsx similarity index 100% rename from admin/hooks/store/use-instance.tsx rename to admin/core/hooks/store/use-instance.tsx diff --git a/admin/hooks/store/use-theme.tsx b/admin/core/hooks/store/use-theme.tsx similarity index 100% rename from admin/hooks/store/use-theme.tsx rename to admin/core/hooks/store/use-theme.tsx diff --git a/admin/hooks/store/use-user.tsx b/admin/core/hooks/store/use-user.tsx similarity index 100% rename from admin/hooks/store/use-user.tsx rename to admin/core/hooks/store/use-user.tsx diff --git a/admin/hooks/use-outside-click-detector.tsx b/admin/core/hooks/use-outside-click-detector.tsx similarity index 100% rename from admin/hooks/use-outside-click-detector.tsx rename to admin/core/hooks/use-outside-click-detector.tsx diff --git a/admin/layouts/admin-layout.tsx b/admin/core/layouts/admin-layout.tsx similarity index 100% rename from admin/layouts/admin-layout.tsx rename to admin/core/layouts/admin-layout.tsx diff --git a/admin/layouts/default-layout.tsx b/admin/core/layouts/default-layout.tsx similarity index 100% rename from admin/layouts/default-layout.tsx rename to admin/core/layouts/default-layout.tsx diff --git a/admin/lib/instance-provider.tsx b/admin/core/lib/instance-provider.tsx similarity index 100% rename from admin/lib/instance-provider.tsx rename to admin/core/lib/instance-provider.tsx diff --git a/admin/lib/store-provider.tsx b/admin/core/lib/store-provider.tsx similarity index 100% rename from admin/lib/store-provider.tsx rename to admin/core/lib/store-provider.tsx diff --git a/admin/lib/user-provider.tsx b/admin/core/lib/user-provider.tsx similarity index 100% rename from admin/lib/user-provider.tsx rename to admin/core/lib/user-provider.tsx diff --git a/admin/services/api.service.ts b/admin/core/services/api.service.ts similarity index 100% rename from admin/services/api.service.ts rename to admin/core/services/api.service.ts diff --git a/admin/services/auth.service.ts b/admin/core/services/auth.service.ts similarity index 89% rename from admin/services/auth.service.ts rename to admin/core/services/auth.service.ts index ef7b7b1515..2454473ca0 100644 --- a/admin/services/auth.service.ts +++ b/admin/core/services/auth.service.ts @@ -1,7 +1,7 @@ // helpers import { API_BASE_URL } from "helpers/common.helper"; // services -import { APIService } from "services/api.service"; +import { APIService } from "@/services/api.service"; type TCsrfTokenResponse = { csrf_token: string; diff --git a/admin/services/instance.service.ts b/admin/core/services/instance.service.ts similarity index 100% rename from admin/services/instance.service.ts rename to admin/core/services/instance.service.ts diff --git a/admin/services/user.service.ts b/admin/core/services/user.service.ts similarity index 93% rename from admin/services/user.service.ts rename to admin/core/services/user.service.ts index bef384daf6..992ed7c08d 100644 --- a/admin/services/user.service.ts +++ b/admin/core/services/user.service.ts @@ -1,9 +1,9 @@ // helpers import { API_BASE_URL } from "helpers/common.helper"; -// services -import { APIService } from "services/api.service"; // types import type { IUser } from "@plane/types"; +// services +import { APIService } from "@/services/api.service"; interface IUserSession extends IUser { isAuthenticated: boolean; diff --git a/admin/store/instance.store.ts b/admin/core/store/instance.store.ts similarity index 98% rename from admin/store/instance.store.ts rename to admin/core/store/instance.store.ts index a99cd808c5..7be8deec69 100644 --- a/admin/store/instance.store.ts +++ b/admin/core/store/instance.store.ts @@ -9,7 +9,7 @@ import { IInstanceConfig, } from "@plane/types"; // helpers -import { EInstanceStatus, TInstanceStatus } from "@/helpers"; +import { EInstanceStatus, TInstanceStatus } from "@/helpers/instance.helper"; // services import { InstanceService } from "@/services/instance.service"; // root store diff --git a/admin/store/root.store.ts b/admin/core/store/root.store.ts similarity index 100% rename from admin/store/root.store.ts rename to admin/core/store/root.store.ts diff --git a/admin/store/theme.store.ts b/admin/core/store/theme.store.ts similarity index 100% rename from admin/store/theme.store.ts rename to admin/core/store/theme.store.ts diff --git a/admin/store/user.store.ts b/admin/core/store/user.store.ts similarity index 97% rename from admin/store/user.store.ts rename to admin/core/store/user.store.ts index 60638f0cd6..fd3132169a 100644 --- a/admin/store/user.store.ts +++ b/admin/core/store/user.store.ts @@ -1,7 +1,7 @@ import { action, observable, runInAction, makeObservable } from "mobx"; import { IUser } from "@plane/types"; // helpers -import { EUserStatus, TUserStatus } from "@/helpers"; +import { EUserStatus, TUserStatus } from "@/helpers/user.helper"; // services import { AuthService } from "@/services/auth.service"; import { UserService } from "@/services/user.service"; diff --git a/admin/ee/components/authentication/authentication-modes.tsx b/admin/ee/components/authentication/authentication-modes.tsx new file mode 100644 index 0000000000..3a8ab7d1dd --- /dev/null +++ b/admin/ee/components/authentication/authentication-modes.tsx @@ -0,0 +1 @@ +export * from "ce/components/authentication/authentication-modes"; \ No newline at end of file diff --git a/admin/ee/components/authentication/index.ts b/admin/ee/components/authentication/index.ts new file mode 100644 index 0000000000..d2aa748557 --- /dev/null +++ b/admin/ee/components/authentication/index.ts @@ -0,0 +1 @@ +export * from "./authentication-modes"; diff --git a/admin/tsconfig.json b/admin/tsconfig.json index 5bc5a56844..120275283a 100644 --- a/admin/tsconfig.json +++ b/admin/tsconfig.json @@ -7,7 +7,10 @@ "jsx": "preserve", "esModuleInterop": true, "paths": { - "@/*": ["*"] + "@/*": ["core/*"], + "@/helpers/*": ["helpers/*"], + "@/public/*": ["public/*"], + "@/plane-admin/*": ["ce/*"] }, "plugins": [ { diff --git a/packages/types/src/instance/auth.d.ts b/packages/types/src/instance/auth.d.ts index 67f6b9f414..df8179cf1f 100644 --- a/packages/types/src/instance/auth.d.ts +++ b/packages/types/src/instance/auth.d.ts @@ -1,3 +1,11 @@ +export type TInstanceAuthenticationModes = { + key: string; + name: string; + description: string; + icon: JSX.Element; + config: JSX.Element; +}; + export type TInstanceAuthenticationMethodKeys = | "ENABLE_SIGNUP" | "ENABLE_MAGIC_LINK_LOGIN"