From 5381d0bc3566b755d04dbec153b151ee6e77233b Mon Sep 17 00:00:00 2001 From: Anmol Singh Bhatia <121005188+anmolsinghbhatia@users.noreply.github.com> Date: Wed, 22 May 2024 18:49:58 +0530 Subject: [PATCH 01/10] [WEB-1404] chore: auth improvements (#4553) * chore: auth page logo and tab head title updated * chore: auth page logo and tab head title updated * chore: code refactor * chore: space app existing user auth validation --- admin/layouts/default-layout.tsx | 11 ++++++++--- .../black-horizontal-with-blue-logo.svg | 17 +++++++++++++++++ .../white-horizontal-with-blue-logo.svg | 17 +++++++++++++++++ .../components/account/auth-forms/auth-root.tsx | 2 +- space/components/instance/not-ready-view.tsx | 11 ++++++++--- space/components/views/auth.tsx | 11 ++++++++--- space/lib/instance-provider.tsx | 10 +++++++--- web/components/instance/not-ready-view.tsx | 11 ++++++++--- web/pages/accounts/forgot-password.tsx | 12 ++++++++---- web/pages/accounts/reset-password.tsx | 13 +++++++++---- web/pages/accounts/set-password.tsx | 13 +++++++++---- web/pages/create-workspace.tsx | 8 +++----- web/pages/index.tsx | 12 ++++++++---- web/pages/invitations/index.tsx | 8 +++----- web/pages/sign-up.tsx | 13 +++++++++---- 15 files changed, 123 insertions(+), 46 deletions(-) create mode 100644 admin/public/plane-logos/black-horizontal-with-blue-logo.svg create mode 100644 admin/public/plane-logos/white-horizontal-with-blue-logo.svg diff --git a/admin/layouts/default-layout.tsx b/admin/layouts/default-layout.tsx index 1621fc0f8..4a3724248 100644 --- a/admin/layouts/default-layout.tsx +++ b/admin/layouts/default-layout.tsx @@ -2,11 +2,13 @@ import { FC, ReactNode } from "react"; import Image from "next/image"; +import Link from "next/link"; import { useTheme } from "next-themes"; // logo/ images import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BluePlaneLogoWithoutText from "public/plane-logos/blue-without-text.png"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; type TDefaultLayout = { children: ReactNode; @@ -19,13 +21,16 @@ export const DefaultLayout: FC = (props) => { const { resolvedTheme } = useTheme(); const patternBackground = resolvedTheme === "dark" ? PlaneBackgroundPatternDark : PlaneBackgroundPattern; + const logo = resolvedTheme === "light" ? BlackHorizontalLogo : WhiteHorizontalLogo; + return (
- Plane Logo - Plane + + Plane logo +
{!withoutBackground && ( diff --git a/admin/public/plane-logos/black-horizontal-with-blue-logo.svg b/admin/public/plane-logos/black-horizontal-with-blue-logo.svg new file mode 100644 index 000000000..ae79919fc --- /dev/null +++ b/admin/public/plane-logos/black-horizontal-with-blue-logo.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/admin/public/plane-logos/white-horizontal-with-blue-logo.svg b/admin/public/plane-logos/white-horizontal-with-blue-logo.svg new file mode 100644 index 000000000..1f09cc34a --- /dev/null +++ b/admin/public/plane-logos/white-horizontal-with-blue-logo.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/space/components/account/auth-forms/auth-root.tsx b/space/components/account/auth-forms/auth-root.tsx index b0c676fbf..e02947af0 100644 --- a/space/components/account/auth-forms/auth-root.tsx +++ b/space/components/account/auth-forms/auth-root.tsx @@ -94,7 +94,7 @@ export const AuthRoot: FC = observer(() => { await authService .emailCheck(data) .then(async (response) => { - let currentAuthMode: EAuthModes = EAuthModes.SIGN_UP; + let currentAuthMode: EAuthModes = response.existing ? EAuthModes.SIGN_IN : EAuthModes.SIGN_UP; if (response.existing) { currentAuthMode = EAuthModes.SIGN_IN; setAuthMode(() => EAuthModes.SIGN_IN); diff --git a/space/components/instance/not-ready-view.tsx b/space/components/instance/not-ready-view.tsx index e9b472960..d30737743 100644 --- a/space/components/instance/not-ready-view.tsx +++ b/space/components/instance/not-ready-view.tsx @@ -2,6 +2,7 @@ import { FC } from "react"; import Image from "next/image"; +import Link from "next/link"; import { useTheme } from "next-themes"; // ui import { Button } from "@plane/ui"; @@ -11,19 +12,23 @@ import { GOD_MODE_URL } from "@/helpers/common.helper"; import PlaneTakeOffImage from "@/public/instance/plane-takeoff.png"; import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BluePlaneLogoWithoutText from "public/plane-logos/blue-without-text.png"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; export const InstanceNotReady: FC = () => { const { resolvedTheme } = useTheme(); const patternBackground = resolvedTheme === "dark" ? PlaneBackgroundPatternDark : PlaneBackgroundPattern; + const logo = resolvedTheme === "light" ? BlackHorizontalLogo : WhiteHorizontalLogo; + return (
- Plane Logo - Plane + + Plane logo +
diff --git a/space/components/views/auth.tsx b/space/components/views/auth.tsx index 15a2bae77..734266581 100644 --- a/space/components/views/auth.tsx +++ b/space/components/views/auth.tsx @@ -2,18 +2,22 @@ import { observer } from "mobx-react-lite"; import Image from "next/image"; +import Link from "next/link"; import { useTheme } from "next-themes"; // components import { AuthRoot } from "@/components/account"; // images import PlaneBackgroundPatternDark from "@/public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "@/public/auth/background-pattern.svg"; -import BluePlaneLogoWithoutText from "@/public/plane-logos/blue-without-text-new.png"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; export const AuthView = observer(() => { // hooks const { resolvedTheme } = useTheme(); + const logo = resolvedTheme === "light" ? BlackHorizontalLogo : WhiteHorizontalLogo; + return (
@@ -26,8 +30,9 @@ export const AuthView = observer(() => {
- Plane Logo - Plane + + Plane logo +
diff --git a/space/lib/instance-provider.tsx b/space/lib/instance-provider.tsx index 032bc5ae9..0f9bd7e25 100644 --- a/space/lib/instance-provider.tsx +++ b/space/lib/instance-provider.tsx @@ -3,6 +3,7 @@ import { ReactNode } from "react"; import { observer } from "mobx-react-lite"; import Image from "next/image"; +import Link from "next/link"; import { useTheme } from "next-themes"; import useSWR from "swr"; // components @@ -13,7 +14,8 @@ import { useInstance, useUser } from "@/hooks/store"; // assets import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BluePlaneLogoWithoutText from "public/plane-logos/blue-without-text.png"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; export const InstanceProvider = observer(({ children }: { children: ReactNode }) => { const { fetchInstanceInfo, instance, error } = useInstance(); @@ -36,14 +38,16 @@ export const InstanceProvider = observer(({ children }: { children: ReactNode })
); + const logo = resolvedTheme === "light" ? BlackHorizontalLogo : WhiteHorizontalLogo; if (error) { return (
- Plane Logo - Plane + + Plane logo +
diff --git a/web/components/instance/not-ready-view.tsx b/web/components/instance/not-ready-view.tsx index 1e10c4239..526030f56 100644 --- a/web/components/instance/not-ready-view.tsx +++ b/web/components/instance/not-ready-view.tsx @@ -1,5 +1,6 @@ import { FC } from "react"; import Image from "next/image"; +import Link from "next/link"; import { useTheme } from "next-themes"; import { Button } from "@plane/ui"; // helpers @@ -9,19 +10,23 @@ import PlaneTakeOffImage from "@/public/plane-takeoff.png"; // assets import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BluePlaneLogoWithoutText from "public/plane-logos/blue-without-text.png"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; export const InstanceNotReady: FC = () => { const { resolvedTheme } = useTheme(); const patternBackground = resolvedTheme === "dark" ? PlaneBackgroundPatternDark : PlaneBackgroundPattern; + const logo = resolvedTheme === "light" ? BlackHorizontalLogo : WhiteHorizontalLogo; + return (
- Plane Logo - Plane + + Plane logo +
diff --git a/web/pages/accounts/forgot-password.tsx b/web/pages/accounts/forgot-password.tsx index f5c9df44f..b86b2518f 100644 --- a/web/pages/accounts/forgot-password.tsx +++ b/web/pages/accounts/forgot-password.tsx @@ -30,7 +30,8 @@ import { AuthService } from "@/services/auth.service"; // images import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BluePlaneLogoWithoutText from "public/plane-logos/blue-without-text.png"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; type TForgotPasswordFormValues = { email: string; @@ -95,9 +96,11 @@ const ForgotPasswordPage: NextPageWithLayout = () => { }); }; + const logo = resolvedTheme === "light" ? BlackHorizontalLogo : WhiteHorizontalLogo; + return (
- +
{
- Plane Logo - Plane + + Plane logo +
New to Plane?{" "} diff --git a/web/pages/accounts/reset-password.tsx b/web/pages/accounts/reset-password.tsx index a7e73ae76..02772f914 100644 --- a/web/pages/accounts/reset-password.tsx +++ b/web/pages/accounts/reset-password.tsx @@ -1,5 +1,6 @@ import { ReactElement, useEffect, useMemo, useState } from "react"; import Image from "next/image"; +import Link from "next/link"; import { useRouter } from "next/router"; // icons import { useTheme } from "next-themes"; @@ -30,7 +31,8 @@ import { AuthService } from "@/services/auth.service"; // images import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BluePlaneLogoWithoutText from "public/plane-logos/blue-without-text.png"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; type TResetPasswordFormValues = { email: string; @@ -101,9 +103,11 @@ const ResetPasswordPage: NextPageWithLayout = () => { const confirmPassword = resetFormData?.confirm_password ?? ""; const renderPasswordMatchError = !isRetryPasswordInputFocused || confirmPassword.length >= password.length; + const logo = resolvedTheme === "light" ? BlackHorizontalLogo : WhiteHorizontalLogo; + return (
- +
{
- Plane Logo - Plane + + Plane logo +
diff --git a/web/pages/accounts/set-password.tsx b/web/pages/accounts/set-password.tsx index d303cb8ca..93a9148c0 100644 --- a/web/pages/accounts/set-password.tsx +++ b/web/pages/accounts/set-password.tsx @@ -1,6 +1,7 @@ import { FormEvent, ReactElement, useEffect, useMemo, useState } from "react"; import { observer } from "mobx-react-lite"; import Image from "next/image"; +import Link from "next/link"; import { useRouter } from "next/router"; // icons import { useTheme } from "next-themes"; @@ -26,7 +27,8 @@ import { AuthService } from "@/services/auth.service"; // images import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BluePlaneLogoWithoutText from "public/plane-logos/blue-without-text.png"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; type TResetPasswordFormValues = { email: string; @@ -103,9 +105,11 @@ const SetPasswordPage: NextPageWithLayout = observer(() => { const confirmPassword = passwordFormData?.confirm_password ?? ""; const renderPasswordMatchError = !isRetryPasswordInputFocused || confirmPassword.length >= password.length; + const logo = resolvedTheme === "light" ? BlackHorizontalLogo : WhiteHorizontalLogo; + return (
- +
{
- Plane Logo - Plane + + Plane logo +
diff --git a/web/pages/create-workspace.tsx b/web/pages/create-workspace.tsx index 08fcea958..d20b93a7d 100644 --- a/web/pages/create-workspace.tsx +++ b/web/pages/create-workspace.tsx @@ -39,6 +39,8 @@ const CreateWorkspacePage: NextPageWithLayout = observer(() => { await updateUserProfile({ last_workspace_id: workspace.id }).then(() => router.push(`/${workspace.slug}`)); }; + const logo = resolvedTheme === "light" ? BlackHorizontalLogo : WhiteHorizontalLogo; + return ( <> @@ -50,11 +52,7 @@ const CreateWorkspacePage: NextPageWithLayout = observer(() => { href="/" >
- {resolvedTheme === "light" ? ( - Plane black logo - ) : ( - Plane white logo - )} + Plane logo
diff --git a/web/pages/index.tsx b/web/pages/index.tsx index 3336185c7..9cc1f9d95 100644 --- a/web/pages/index.tsx +++ b/web/pages/index.tsx @@ -22,16 +22,19 @@ import { AuthenticationWrapper } from "@/lib/wrappers"; // assets import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BluePlaneLogoWithoutText from "public/plane-logos/blue-without-text.png"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; const HomePage: NextPageWithLayout = observer(() => { const { resolvedTheme } = useTheme(); // hooks const { captureEvent } = useEventTracker(); + const logo = resolvedTheme === "light" ? BlackHorizontalLogo : WhiteHorizontalLogo; + return (
- +
{
- Plane Logo - Plane + + Plane logo +
New to Plane?{" "} diff --git a/web/pages/invitations/index.tsx b/web/pages/invitations/index.tsx index 0fe64519d..1f0debaaf 100644 --- a/web/pages/invitations/index.tsx +++ b/web/pages/invitations/index.tsx @@ -127,6 +127,8 @@ const UserInvitationsPage: NextPageWithLayout = observer(() => { }); }; + const logo = resolvedTheme === "light" ? BlackHorizontalLogo : WhiteHorizontalLogo; + return ( <> @@ -135,11 +137,7 @@ const UserInvitationsPage: NextPageWithLayout = observer(() => {
- {resolvedTheme === "light" ? ( - Plane black logo - ) : ( - Plane white logo - )} + Plane logo
diff --git a/web/pages/sign-up.tsx b/web/pages/sign-up.tsx index a3013e920..470f927b4 100644 --- a/web/pages/sign-up.tsx +++ b/web/pages/sign-up.tsx @@ -21,7 +21,9 @@ import { AuthenticationWrapper } from "@/lib/wrappers"; // assets import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BluePlaneLogoWithoutText from "public/plane-logos/blue-without-text.png"; + +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; export type AuthType = "sign-in" | "sign-up"; @@ -31,9 +33,11 @@ const SignInPage: NextPageWithLayout = observer(() => { // hooks const { resolvedTheme } = useTheme(); + const logo = resolvedTheme === "light" ? BlackHorizontalLogo : WhiteHorizontalLogo; + return (
- +
{
- Plane Logo - Plane + + Plane logo +
Already have an account?{" "} From 2a83ac73766ca3b2ffbdd0f1c7458956e43e6016 Mon Sep 17 00:00:00 2001 From: rahulramesha <71900764+rahulramesha@users.noreply.github.com> Date: Wed, 22 May 2024 18:53:40 +0530 Subject: [PATCH 02/10] upgrade cmdk version to 1.0 to fix a critical issue (#4554) --- web/package.json | 4 +- yarn.lock | 168 +++-------------------------------------------- 2 files changed, 11 insertions(+), 161 deletions(-) diff --git a/web/package.json b/web/package.json index e2a1dc225..52542afc4 100644 --- a/web/package.json +++ b/web/package.json @@ -35,7 +35,7 @@ "@sentry/nextjs": "^7.108.0", "axios": "^1.1.3", "clsx": "^2.0.0", - "cmdk": "^0.2.0", + "cmdk": "^1.0.0", "date-fns": "^2.30.0", "dompurify": "^3.0.11", "dotenv": "^16.0.3", @@ -83,4 +83,4 @@ "tsconfig": "*", "typescript": "4.7.4" } -} +} \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index 34be66b97..b1a7ba562 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2065,13 +2065,6 @@ resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f" integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A== -"@radix-ui/primitive@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@radix-ui/primitive/-/primitive-1.0.0.tgz#e1d8ef30b10ea10e69c76e896f608d9276352253" - integrity sha512-3e7rn8FDMin4CgeL7Z/49smCA3rFYY3Ha2rUQ7HRWFadS5iCRw08ZgVT1LaNTCNqgvrUiyczLflrVrF0SRQtNA== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/primitive@1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@radix-ui/primitive/-/primitive-1.0.1.tgz#e46f9958b35d10e9f6dc71c497305c22e3e55dbd" @@ -2079,13 +2072,6 @@ dependencies: "@babel/runtime" "^7.13.10" -"@radix-ui/react-compose-refs@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@radix-ui/react-compose-refs/-/react-compose-refs-1.0.0.tgz#37595b1f16ec7f228d698590e78eeed18ff218ae" - integrity sha512-0KaSv6sx787/hK3eF53iOkiSLwAGlFMx5lotrqD2pTjB18KbybKoEIgkNZTKC60YECDQTKGTRcDBILwZVqVKvA== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-compose-refs@1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@radix-ui/react-compose-refs/-/react-compose-refs-1.0.1.tgz#7ed868b66946aa6030e580b1ffca386dd4d21989" @@ -2093,13 +2079,6 @@ dependencies: "@babel/runtime" "^7.13.10" -"@radix-ui/react-context@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@radix-ui/react-context/-/react-context-1.0.0.tgz#f38e30c5859a9fb5e9aa9a9da452ee3ed9e0aee0" - integrity sha512-1pVM9RfOQ+n/N5PJK33kRSKsr1glNxomxONs5c49MliinBY6Yw2Q995qfBUUo0/Mbg05B/sGA0gkgPI7kmSHBg== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-context@1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@radix-ui/react-context/-/react-context-1.0.1.tgz#fe46e67c96b240de59187dcb7a1a50ce3e2ec00c" @@ -2107,28 +2086,7 @@ dependencies: "@babel/runtime" "^7.13.10" -"@radix-ui/react-dialog@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@radix-ui/react-dialog/-/react-dialog-1.0.0.tgz#997e97cb183bc90bd888b26b8e23a355ac9fe5f0" - integrity sha512-Yn9YU+QlHYLWwV1XfKiqnGVpWYWk6MeBVM6x/bcoyPvxgjQGoeT35482viLPctTMWoMw0PoHgqfSox7Ig+957Q== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/primitive" "1.0.0" - "@radix-ui/react-compose-refs" "1.0.0" - "@radix-ui/react-context" "1.0.0" - "@radix-ui/react-dismissable-layer" "1.0.0" - "@radix-ui/react-focus-guards" "1.0.0" - "@radix-ui/react-focus-scope" "1.0.0" - "@radix-ui/react-id" "1.0.0" - "@radix-ui/react-portal" "1.0.0" - "@radix-ui/react-presence" "1.0.0" - "@radix-ui/react-primitive" "1.0.0" - "@radix-ui/react-slot" "1.0.0" - "@radix-ui/react-use-controllable-state" "1.0.0" - aria-hidden "^1.1.1" - react-remove-scroll "2.5.4" - -"@radix-ui/react-dialog@^1.0.5": +"@radix-ui/react-dialog@1.0.5", "@radix-ui/react-dialog@^1.0.5": version "1.0.5" resolved "https://registry.yarnpkg.com/@radix-ui/react-dialog/-/react-dialog-1.0.5.tgz#71657b1b116de6c7a0b03242d7d43e01062c7300" integrity sha512-GjWJX/AUpB703eEBanuBnIWdIXg6NvJFCXcNlSZk4xdszCdhrJgBoUd1cGk67vFO+WdA2pfI/plOpqz/5GUP6Q== @@ -2149,18 +2107,6 @@ aria-hidden "^1.1.1" react-remove-scroll "2.5.5" -"@radix-ui/react-dismissable-layer@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.0.0.tgz#35b7826fa262fd84370faef310e627161dffa76b" - integrity sha512-n7kDRfx+LB1zLueRDvZ1Pd0bxdJWDUZNQ/GWoxDn2prnuJKRdxsjulejX/ePkOsLi2tTm6P24mDqlMSgQpsT6g== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/primitive" "1.0.0" - "@radix-ui/react-compose-refs" "1.0.0" - "@radix-ui/react-primitive" "1.0.0" - "@radix-ui/react-use-callback-ref" "1.0.0" - "@radix-ui/react-use-escape-keydown" "1.0.0" - "@radix-ui/react-dismissable-layer@1.0.5": version "1.0.5" resolved "https://registry.yarnpkg.com/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.0.5.tgz#3f98425b82b9068dfbab5db5fff3df6ebf48b9d4" @@ -2173,13 +2119,6 @@ "@radix-ui/react-use-callback-ref" "1.0.1" "@radix-ui/react-use-escape-keydown" "1.0.3" -"@radix-ui/react-focus-guards@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@radix-ui/react-focus-guards/-/react-focus-guards-1.0.0.tgz#339c1c69c41628c1a5e655f15f7020bf11aa01fa" - integrity sha512-UagjDk4ijOAnGu4WMUPj9ahi7/zJJqNZ9ZAiGPp7waUWJO0O1aWXi/udPphI0IUjvrhBsZJGSN66dR2dsueLWQ== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-focus-guards@1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@radix-ui/react-focus-guards/-/react-focus-guards-1.0.1.tgz#1ea7e32092216b946397866199d892f71f7f98ad" @@ -2187,16 +2126,6 @@ dependencies: "@babel/runtime" "^7.13.10" -"@radix-ui/react-focus-scope@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@radix-ui/react-focus-scope/-/react-focus-scope-1.0.0.tgz#95a0c1188276dc8933b1eac5f1cdb6471e01ade5" - integrity sha512-C4SWtsULLGf/2L4oGeIHlvWQx7Rf+7cX/vKOAD2dXW0A1b5QXwi3wWeaEgW+wn+SEVrraMUk05vLU9fZZz5HbQ== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-compose-refs" "1.0.0" - "@radix-ui/react-primitive" "1.0.0" - "@radix-ui/react-use-callback-ref" "1.0.0" - "@radix-ui/react-focus-scope@1.0.4": version "1.0.4" resolved "https://registry.yarnpkg.com/@radix-ui/react-focus-scope/-/react-focus-scope-1.0.4.tgz#2ac45fce8c5bb33eb18419cdc1905ef4f1906525" @@ -2207,14 +2136,6 @@ "@radix-ui/react-primitive" "1.0.3" "@radix-ui/react-use-callback-ref" "1.0.1" -"@radix-ui/react-id@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@radix-ui/react-id/-/react-id-1.0.0.tgz#8d43224910741870a45a8c9d092f25887bb6d11e" - integrity sha512-Q6iAB/U7Tq3NTolBBQbHTgclPmGWE3OlktGGqrClPozSw4vkQ1DfQAOtzgRPecKsMdJINE05iaoDUG8tRzCBjw== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-use-layout-effect" "1.0.0" - "@radix-ui/react-id@1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@radix-ui/react-id/-/react-id-1.0.1.tgz#73cdc181f650e4df24f0b6a5b7aa426b912c88c0" @@ -2223,14 +2144,6 @@ "@babel/runtime" "^7.13.10" "@radix-ui/react-use-layout-effect" "1.0.1" -"@radix-ui/react-portal@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@radix-ui/react-portal/-/react-portal-1.0.0.tgz#7220b66743394fabb50c55cb32381395cc4a276b" - integrity sha512-a8qyFO/Xb99d8wQdu4o7qnigNjTPG123uADNecz0eX4usnQEj7o+cG4ZX4zkqq98NYekT7UoEQIjxBNWIFuqTA== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-primitive" "1.0.0" - "@radix-ui/react-portal@1.0.4": version "1.0.4" resolved "https://registry.yarnpkg.com/@radix-ui/react-portal/-/react-portal-1.0.4.tgz#df4bfd353db3b1e84e639e9c63a5f2565fb00e15" @@ -2239,15 +2152,6 @@ "@babel/runtime" "^7.13.10" "@radix-ui/react-primitive" "1.0.3" -"@radix-ui/react-presence@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@radix-ui/react-presence/-/react-presence-1.0.0.tgz#814fe46df11f9a468808a6010e3f3ca7e0b2e84a" - integrity sha512-A+6XEvN01NfVWiKu38ybawfHsBjWum42MRPnEuqPsBZ4eV7e/7K321B5VgYMPv3Xx5An6o1/l9ZuDBgmcmWK3w== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-compose-refs" "1.0.0" - "@radix-ui/react-use-layout-effect" "1.0.0" - "@radix-ui/react-presence@1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@radix-ui/react-presence/-/react-presence-1.0.1.tgz#491990ba913b8e2a5db1b06b203cb24b5cdef9ba" @@ -2257,14 +2161,6 @@ "@radix-ui/react-compose-refs" "1.0.1" "@radix-ui/react-use-layout-effect" "1.0.1" -"@radix-ui/react-primitive@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@radix-ui/react-primitive/-/react-primitive-1.0.0.tgz#376cd72b0fcd5e0e04d252ed33eb1b1f025af2b0" - integrity sha512-EyXe6mnRlHZ8b6f4ilTDrXmkLShICIuOTTj0GX4w1rp+wSxf3+TD05u1UOITC8VsJ2a9nwHvdXtOXEOl0Cw/zQ== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-slot" "1.0.0" - "@radix-ui/react-primitive@1.0.3": version "1.0.3" resolved "https://registry.yarnpkg.com/@radix-ui/react-primitive/-/react-primitive-1.0.3.tgz#d49ea0f3f0b2fe3ab1cb5667eb03e8b843b914d0" @@ -2273,14 +2169,6 @@ "@babel/runtime" "^7.13.10" "@radix-ui/react-slot" "1.0.2" -"@radix-ui/react-slot@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@radix-ui/react-slot/-/react-slot-1.0.0.tgz#7fa805b99891dea1e862d8f8fbe07f4d6d0fd698" - integrity sha512-3mrKauI/tWXo1Ll+gN5dHcxDPdm/Df1ufcDLCecn+pnCIVcdWE7CujXo8QaXOWRJyZyQWWbpB8eFwHzWXlv5mQ== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-compose-refs" "1.0.0" - "@radix-ui/react-slot@1.0.2", "@radix-ui/react-slot@^1.0.2": version "1.0.2" resolved "https://registry.yarnpkg.com/@radix-ui/react-slot/-/react-slot-1.0.2.tgz#a9ff4423eade67f501ffb32ec22064bc9d3099ab" @@ -2289,13 +2177,6 @@ "@babel/runtime" "^7.13.10" "@radix-ui/react-compose-refs" "1.0.1" -"@radix-ui/react-use-callback-ref@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.0.0.tgz#9e7b8b6b4946fe3cbe8f748c82a2cce54e7b6a90" - integrity sha512-GZtyzoHz95Rhs6S63D2t/eqvdFCm7I+yHMLVQheKM7nBD8mbZIt+ct1jz4536MDnaOGKIxynJ8eHTkVGVVkoTg== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-use-callback-ref@1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.0.1.tgz#f4bb1f27f2023c984e6534317ebc411fc181107a" @@ -2303,14 +2184,6 @@ dependencies: "@babel/runtime" "^7.13.10" -"@radix-ui/react-use-controllable-state@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.0.0.tgz#a64deaafbbc52d5d407afaa22d493d687c538b7f" - integrity sha512-FohDoZvk3mEXh9AWAVyRTYR4Sq7/gavuofglmiXB2g1aKyboUD4YtgWxKj8O5n+Uak52gXQ4wKz5IFST4vtJHg== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-use-callback-ref" "1.0.0" - "@radix-ui/react-use-controllable-state@1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.0.1.tgz#ecd2ced34e6330caf89a82854aa2f77e07440286" @@ -2319,14 +2192,6 @@ "@babel/runtime" "^7.13.10" "@radix-ui/react-use-callback-ref" "1.0.1" -"@radix-ui/react-use-escape-keydown@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.0.0.tgz#aef375db4736b9de38a5a679f6f49b45a060e5d1" - integrity sha512-JwfBCUIfhXRxKExgIqGa4CQsiMemo1Xt0W/B4ei3fpzpvPENKpMKQ8mZSB6Acj3ebrAEgi2xiQvcI1PAAodvyg== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-use-callback-ref" "1.0.0" - "@radix-ui/react-use-escape-keydown@1.0.3": version "1.0.3" resolved "https://registry.yarnpkg.com/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.0.3.tgz#217b840c250541609c66f67ed7bab2b733620755" @@ -2335,13 +2200,6 @@ "@babel/runtime" "^7.13.10" "@radix-ui/react-use-callback-ref" "1.0.1" -"@radix-ui/react-use-layout-effect@1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.0.0.tgz#2fc19e97223a81de64cd3ba1dc42ceffd82374dc" - integrity sha512-6Tpkq+R6LOlmQb1R5NNETLG0B4YP0wc+klfXafpUCj6JGyaUc8il7/kUZ7m59rGbXGczE9Bs+iz2qloqsZBduQ== - dependencies: - "@babel/runtime" "^7.13.10" - "@radix-ui/react-use-layout-effect@1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.0.1.tgz#be8c7bc809b0c8934acf6657b577daf948a75399" @@ -5610,12 +5468,13 @@ clsx@^2.0.0, clsx@^2.1.0: resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.1.1.tgz#eed397c9fd8bd882bfb18deab7102049a2f32999" integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== -cmdk@^0.2.0: - version "0.2.1" - resolved "https://registry.yarnpkg.com/cmdk/-/cmdk-0.2.1.tgz#aa8e1332bb0b8d8484e793017c82537351188d9a" - integrity sha512-U6//9lQ6JvT47+6OF6Gi8BvkxYQ8SCRRSKIJkthIMsFsLZRG0cKvTtuTaefyIKMQb8rvvXy0wGdpTNq/jPtm+g== +cmdk@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/cmdk/-/cmdk-1.0.0.tgz#0a095fdafca3dfabed82d1db78a6262fb163ded9" + integrity sha512-gDzVf0a09TvoJ5jnuPvygTB77+XdOSwEmJ88L6XPFPlv7T3RxbP9jgenfylrAMD0+Le1aO0nVjQUzl2g+vjz5Q== dependencies: - "@radix-ui/react-dialog" "1.0.0" + "@radix-ui/react-dialog" "1.0.5" + "@radix-ui/react-primitive" "1.0.3" color-convert@^1.9.0: version "1.9.3" @@ -10896,17 +10755,6 @@ react-remove-scroll-bar@^2.3.3: react-style-singleton "^2.2.1" tslib "^2.0.0" -react-remove-scroll@2.5.4: - version "2.5.4" - resolved "https://registry.yarnpkg.com/react-remove-scroll/-/react-remove-scroll-2.5.4.tgz#afe6491acabde26f628f844b67647645488d2ea0" - integrity sha512-xGVKJJr0SJGQVirVFAUZ2k1QLyO6m+2fy0l8Qawbp5Jgrv3DeLalrfMNBFSlmz5kriGGzsVBtGVnf4pTKIhhWA== - dependencies: - react-remove-scroll-bar "^2.3.3" - react-style-singleton "^2.2.1" - tslib "^2.1.0" - use-callback-ref "^1.3.0" - use-sidecar "^1.1.2" - react-remove-scroll@2.5.5: version "2.5.5" resolved "https://registry.yarnpkg.com/react-remove-scroll/-/react-remove-scroll-2.5.5.tgz#1e31a1260df08887a8a0e46d09271b52b3a37e77" @@ -11760,6 +11608,7 @@ string-argv@0.3.2: integrity sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q== "string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: + name string-width-cjs version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -13252,6 +13101,7 @@ workbox-window@6.6.1, workbox-window@^6.5.4: workbox-core "6.6.1" "wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: + name wrap-ansi-cjs version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== From 577996b34a3e8e7380002dd393f415cce5f338e2 Mon Sep 17 00:00:00 2001 From: Anmol Singh Bhatia <121005188+anmolsinghbhatia@users.noreply.github.com> Date: Wed, 22 May 2024 20:24:47 +0530 Subject: [PATCH 03/10] chore: space app logo redirection updated (#4556) --- space/components/instance/not-ready-view.tsx | 4 ++-- space/components/views/auth.tsx | 4 +++- space/lib/instance-provider.tsx | 4 +++- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/space/components/instance/not-ready-view.tsx b/space/components/instance/not-ready-view.tsx index d30737743..f79778387 100644 --- a/space/components/instance/not-ready-view.tsx +++ b/space/components/instance/not-ready-view.tsx @@ -7,7 +7,7 @@ import { useTheme } from "next-themes"; // ui import { Button } from "@plane/ui"; // helper -import { GOD_MODE_URL } from "@/helpers/common.helper"; +import { GOD_MODE_URL, SPACE_BASE_PATH } from "@/helpers/common.helper"; // images import PlaneTakeOffImage from "@/public/instance/plane-takeoff.png"; import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; @@ -26,7 +26,7 @@ export const InstanceNotReady: FC = () => {
- + Plane logo
diff --git a/space/components/views/auth.tsx b/space/components/views/auth.tsx index 734266581..88023dbef 100644 --- a/space/components/views/auth.tsx +++ b/space/components/views/auth.tsx @@ -6,6 +6,8 @@ import Link from "next/link"; import { useTheme } from "next-themes"; // components import { AuthRoot } from "@/components/account"; +// helpers +import { SPACE_BASE_PATH } from "@/helpers/common.helper"; // images import PlaneBackgroundPatternDark from "@/public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "@/public/auth/background-pattern.svg"; @@ -30,7 +32,7 @@ export const AuthView = observer(() => {
- + Plane logo
diff --git a/space/lib/instance-provider.tsx b/space/lib/instance-provider.tsx index 0f9bd7e25..a4de61a16 100644 --- a/space/lib/instance-provider.tsx +++ b/space/lib/instance-provider.tsx @@ -9,6 +9,8 @@ import useSWR from "swr"; // components import { LogoSpinner } from "@/components/common"; import { InstanceFailureView } from "@/components/instance"; +// helpers +import { SPACE_BASE_PATH } from "@/helpers/common.helper"; // hooks import { useInstance, useUser } from "@/hooks/store"; // assets @@ -45,7 +47,7 @@ export const InstanceProvider = observer(({ children }: { children: ReactNode })
- + Plane logo
From 2b27f3972735d12e00719e3fc56c0fc6fb170f57 Mon Sep 17 00:00:00 2001 From: Prateek Shourya Date: Wed, 22 May 2024 20:39:31 +0530 Subject: [PATCH 04/10] [WEB-1380] chore: fix sidebar expanding issue on sign out. (#4557) * [WEB-1380] chore: fix sidebar expanding issue on sign out. * chore: update sign-out redirect url. * dev: update signout view and fix the entrypoint on docker-compose-local * chore: remove localStorage reset logic for `app_sidebar_collapsed` on sign-out. --------- Co-authored-by: pablohashescobar --- apiserver/plane/authentication/views/app/signout.py | 10 ++++------ docker-compose-local.yml | 2 +- web/store/root.store.ts | 1 - 3 files changed, 5 insertions(+), 8 deletions(-) diff --git a/apiserver/plane/authentication/views/app/signout.py b/apiserver/plane/authentication/views/app/signout.py index 10461f240..260a89a8d 100644 --- a/apiserver/plane/authentication/views/app/signout.py +++ b/apiserver/plane/authentication/views/app/signout.py @@ -1,6 +1,3 @@ -# Python imports -from urllib.parse import urljoin - # Django imports from django.views import View from django.contrib.auth import logout @@ -23,9 +20,10 @@ class SignOutAuthEndpoint(View): user.save() # Log the user out logout(request) - url = urljoin(base_host(request=request, is_app=True), "sign-in") - return HttpResponseRedirect(url) + return HttpResponseRedirect( + base_host(request=request, is_app=True) + ) except Exception: return HttpResponseRedirect( - base_host(request=request, is_app=True), "sign-in" + base_host(request=request, is_app=True) ) diff --git a/docker-compose-local.yml b/docker-compose-local.yml index 18d54b688..39c587d2b 100644 --- a/docker-compose-local.yml +++ b/docker-compose-local.yml @@ -97,7 +97,7 @@ services: - dev_env volumes: - ./apiserver:/code - command: ./bin/docker-entrypoint-api.sh + command: ./bin/docker-entrypoint-api-local.sh env_file: - ./apiserver/.env depends_on: diff --git a/web/store/root.store.ts b/web/store/root.store.ts index b76fc4756..4e6a74815 100644 --- a/web/store/root.store.ts +++ b/web/store/root.store.ts @@ -96,7 +96,6 @@ export class RootStore { this.dashboard = new DashboardStore(this); this.router = new RouterStore(); this.commandPalette = new CommandPaletteStore(); - this.theme = new ThemeStore(this); this.eventTracker = new EventTrackerStore(this); this.instance = new InstanceStore(); this.user = new UserStore(this); From c26c8cfe1976cee6cbc9460d4e9a61ac3b6ca029 Mon Sep 17 00:00:00 2001 From: sriram veeraghanta Date: Wed, 22 May 2024 20:52:02 +0530 Subject: [PATCH 05/10] fix: nginx conf file updated by removing rewrites for space location --- nginx/nginx.conf.dev | 1 - nginx/nginx.conf.template | 1 - 2 files changed, 2 deletions(-) diff --git a/nginx/nginx.conf.dev b/nginx/nginx.conf.dev index a6f20cbf5..7c1c4397d 100644 --- a/nginx/nginx.conf.dev +++ b/nginx/nginx.conf.dev @@ -53,7 +53,6 @@ http { } location /spaces/ { - rewrite ^/spaces/?$ /spaces/login break; proxy_http_version 1.1; proxy_set_header Upgrade ${dollar}http_upgrade; proxy_set_header Connection "upgrade"; diff --git a/nginx/nginx.conf.template b/nginx/nginx.conf.template index 56fdae8dc..74758a866 100644 --- a/nginx/nginx.conf.template +++ b/nginx/nginx.conf.template @@ -53,7 +53,6 @@ http { } location /spaces/ { - rewrite ^/spaces/?$ /spaces/login break; proxy_http_version 1.1; proxy_set_header Upgrade ${dollar}http_upgrade; proxy_set_header Connection "upgrade"; From d17492319b75f3adb22b1093717ecb6bd2bd98e5 Mon Sep 17 00:00:00 2001 From: sriram veeraghanta Date: Thu, 23 May 2024 13:38:20 +0530 Subject: [PATCH 06/10] fix: updating docker urls and base paths --- admin/Dockerfile.admin | 32 ++++++++++++++++++++++---------- space/Dockerfile.space | 26 ++++++++++++++++++++++---- web/Dockerfile.web | 8 +++++++- 3 files changed, 51 insertions(+), 15 deletions(-) diff --git a/admin/Dockerfile.admin b/admin/Dockerfile.admin index b2908f356..ad9469110 100644 --- a/admin/Dockerfile.admin +++ b/admin/Dockerfile.admin @@ -29,15 +29,21 @@ COPY turbo.json turbo.json ARG NEXT_PUBLIC_API_BASE_URL="" ENV NEXT_PUBLIC_API_BASE_URL=$NEXT_PUBLIC_API_BASE_URL -ARG NEXT_PUBLIC_WEB_BASE_URL="" -ENV NEXT_PUBLIC_WEB_BASE_URL=$NEXT_PUBLIC_WEB_BASE_URL - -ARG NEXT_PUBLIC_SPACE_BASE_URL="/spaces" -ENV NEXT_PUBLIC_SPACE_BASE_URL=$NEXT_PUBLIC_SPACE_BASE_URL +ARG NEXT_PUBLIC_ADMIN_BASE_URL="" +ENV NEXT_PUBLIC_ADMIN_BASE_URL=$NEXT_PUBLIC_ADMIN_BASE_URL ARG NEXT_PUBLIC_ADMIN_BASE_PATH="/god-mode" ENV NEXT_PUBLIC_ADMIN_BASE_PATH=$NEXT_PUBLIC_ADMIN_BASE_PATH +ARG NEXT_PUBLIC_SPACE_BASE_URL="" +ENV NEXT_PUBLIC_SPACE_BASE_URL=$NEXT_PUBLIC_SPACE_BASE_URL + +ARG NEXT_PUBLIC_SPACE_BASE_PATH="/spaces" +ENV NEXT_PUBLIC_SPACE_BASE_PATH=$NEXT_PUBLIC_SPACE_BASE_PATH + +ARG NEXT_PUBLIC_WEB_BASE_URL="" +ENV NEXT_PUBLIC_WEB_BASE_URL=$NEXT_PUBLIC_WEB_BASE_URL + ENV NEXT_TELEMETRY_DISABLED 1 ENV TURBO_TELEMETRY_DISABLED 1 @@ -59,15 +65,21 @@ COPY --from=installer /app/admin/public ./admin/public ARG NEXT_PUBLIC_API_BASE_URL="" ENV NEXT_PUBLIC_API_BASE_URL=$NEXT_PUBLIC_API_BASE_URL -ARG NEXT_PUBLIC_WEB_BASE_URL="" -ENV NEXT_PUBLIC_WEB_BASE_URL=$NEXT_PUBLIC_WEB_BASE_URL - -ARG NEXT_PUBLIC_SPACE_BASE_URL="/spaces" -ENV NEXT_PUBLIC_SPACE_BASE_URL=$NEXT_PUBLIC_SPACE_BASE_URL +ARG NEXT_PUBLIC_ADMIN_BASE_URL="" +ENV NEXT_PUBLIC_ADMIN_BASE_URL=$NEXT_PUBLIC_ADMIN_BASE_URL ARG NEXT_PUBLIC_ADMIN_BASE_PATH="/god-mode" ENV NEXT_PUBLIC_ADMIN_BASE_PATH=$NEXT_PUBLIC_ADMIN_BASE_PATH +ARG NEXT_PUBLIC_SPACE_BASE_URL="" +ENV NEXT_PUBLIC_SPACE_BASE_URL=$NEXT_PUBLIC_SPACE_BASE_URL + +ARG NEXT_PUBLIC_SPACE_BASE_PATH="/spaces" +ENV NEXT_PUBLIC_SPACE_BASE_PATH=$NEXT_PUBLIC_SPACE_BASE_PATH + +ARG NEXT_PUBLIC_WEB_BASE_URL="" +ENV NEXT_PUBLIC_WEB_BASE_URL=$NEXT_PUBLIC_WEB_BASE_URL + ENV NEXT_TELEMETRY_DISABLED 1 ENV TURBO_TELEMETRY_DISABLED 1 diff --git a/space/Dockerfile.space b/space/Dockerfile.space index 229585818..4e53cfc8a 100644 --- a/space/Dockerfile.space +++ b/space/Dockerfile.space @@ -29,12 +29,21 @@ COPY turbo.json turbo.json ARG NEXT_PUBLIC_API_BASE_URL="" ENV NEXT_PUBLIC_API_BASE_URL=$NEXT_PUBLIC_API_BASE_URL -ARG NEXT_PUBLIC_WEB_BASE_URL="" -ENV NEXT_PUBLIC_WEB_BASE_URL=$NEXT_PUBLIC_WEB_BASE_URL +ARG NEXT_PUBLIC_ADMIN_BASE_URL="" +ENV NEXT_PUBLIC_ADMIN_BASE_URL=$NEXT_PUBLIC_ADMIN_BASE_URL + +ARG NEXT_PUBLIC_ADMIN_BASE_PATH="/god-mode" +ENV NEXT_PUBLIC_ADMIN_BASE_PATH=$NEXT_PUBLIC_ADMIN_BASE_PATH + +ARG NEXT_PUBLIC_SPACE_BASE_URL="" +ENV NEXT_PUBLIC_SPACE_BASE_URL=$NEXT_PUBLIC_SPACE_BASE_URL ARG NEXT_PUBLIC_SPACE_BASE_PATH="/spaces" ENV NEXT_PUBLIC_SPACE_BASE_PATH=$NEXT_PUBLIC_SPACE_BASE_PATH +ARG NEXT_PUBLIC_WEB_BASE_URL="" +ENV NEXT_PUBLIC_WEB_BASE_URL=$NEXT_PUBLIC_WEB_BASE_URL + RUN yarn turbo run build --filter=space # ***************************************************************************** @@ -54,12 +63,21 @@ COPY --from=installer /app/space/public ./space/public ARG NEXT_PUBLIC_API_BASE_URL="" ENV NEXT_PUBLIC_API_BASE_URL=$NEXT_PUBLIC_API_BASE_URL -ARG NEXT_PUBLIC_WEB_BASE_URL="" -ENV NEXT_PUBLIC_WEB_BASE_URL=$NEXT_PUBLIC_WEB_BASE_URL +ARG NEXT_PUBLIC_ADMIN_BASE_URL="" +ENV NEXT_PUBLIC_ADMIN_BASE_URL=$NEXT_PUBLIC_ADMIN_BASE_URL + +ARG NEXT_PUBLIC_ADMIN_BASE_PATH="/god-mode" +ENV NEXT_PUBLIC_ADMIN_BASE_PATH=$NEXT_PUBLIC_ADMIN_BASE_PATH + +ARG NEXT_PUBLIC_SPACE_BASE_URL="" +ENV NEXT_PUBLIC_SPACE_BASE_URL=$NEXT_PUBLIC_SPACE_BASE_URL ARG NEXT_PUBLIC_SPACE_BASE_PATH="/spaces" ENV NEXT_PUBLIC_SPACE_BASE_PATH=$NEXT_PUBLIC_SPACE_BASE_PATH +ARG NEXT_PUBLIC_WEB_BASE_URL="" +ENV NEXT_PUBLIC_WEB_BASE_URL=$NEXT_PUBLIC_WEB_BASE_URL + ENV NEXT_TELEMETRY_DISABLED 1 ENV TURBO_TELEMETRY_DISABLED 1 diff --git a/web/Dockerfile.web b/web/Dockerfile.web index e6e7f0a19..eceb6c079 100644 --- a/web/Dockerfile.web +++ b/web/Dockerfile.web @@ -45,6 +45,9 @@ ENV NEXT_PUBLIC_SPACE_BASE_URL=$NEXT_PUBLIC_SPACE_BASE_URL ARG NEXT_PUBLIC_SPACE_BASE_PATH="/spaces" ENV NEXT_PUBLIC_SPACE_BASE_PATH=$NEXT_PUBLIC_SPACE_BASE_PATH +ARG NEXT_PUBLIC_WEB_BASE_URL="" +ENV NEXT_PUBLIC_WEB_BASE_URL=$NEXT_PUBLIC_WEB_BASE_URL + ENV NEXT_TELEMETRY_DISABLED 1 ENV TURBO_TELEMETRY_DISABLED 1 @@ -74,12 +77,15 @@ ENV NEXT_PUBLIC_ADMIN_BASE_URL=$NEXT_PUBLIC_ADMIN_BASE_URL ARG NEXT_PUBLIC_ADMIN_BASE_PATH="/god-mode" ENV NEXT_PUBLIC_ADMIN_BASE_PATH=$NEXT_PUBLIC_ADMIN_BASE_PATH -ARG NEXT_PUBLIC_SPACE_BASE_URL="/spaces" +ARG NEXT_PUBLIC_SPACE_BASE_URL="" ENV NEXT_PUBLIC_SPACE_BASE_URL=$NEXT_PUBLIC_SPACE_BASE_URL ARG NEXT_PUBLIC_SPACE_BASE_PATH="/spaces" ENV NEXT_PUBLIC_SPACE_BASE_PATH=$NEXT_PUBLIC_SPACE_BASE_PATH +ARG NEXT_PUBLIC_WEB_BASE_URL="" +ENV NEXT_PUBLIC_WEB_BASE_URL=$NEXT_PUBLIC_WEB_BASE_URL + ENV NEXT_TELEMETRY_DISABLED 1 ENV TURBO_TELEMETRY_DISABLED 1 From c9e6ead3af7d5748d81e32b48b1128ebcc01d2b8 Mon Sep 17 00:00:00 2001 From: guru_sainath Date: Thu, 23 May 2024 14:04:53 +0530 Subject: [PATCH 07/10] chore: handled suppert email validation in the admin app (#4560) --- admin/helpers/authentication.helper.tsx | 9 +++++++++ admin/helpers/common.helper.ts | 2 ++ 2 files changed, 11 insertions(+) diff --git a/admin/helpers/authentication.helper.tsx b/admin/helpers/authentication.helper.tsx index 6bfccd45e..cc9058611 100644 --- a/admin/helpers/authentication.helper.tsx +++ b/admin/helpers/authentication.helper.tsx @@ -1,5 +1,7 @@ import { ReactNode } from "react"; import Link from "next/link"; +// helpers +import { SUPPORT_EMAIL } from "./common.helper"; export enum EPageTypes { PUBLIC = "PUBLIC", @@ -38,6 +40,7 @@ export enum EAuthenticationErrorCodes { ADMIN_AUTHENTICATION_FAILED = "5175", ADMIN_USER_ALREADY_EXIST = "5180", ADMIN_USER_DOES_NOT_EXIST = "5185", + ADMIN_USER_DEACTIVATED = "5190", } export type TAuthErrorInfo = { @@ -99,6 +102,10 @@ const errorCodeMessages: {
), }, + [EAuthenticationErrorCodes.ADMIN_USER_DEACTIVATED]: { + title: `User account deactivated`, + message: () => `User account deactivated. Please contact ${!!SUPPORT_EMAIL ? SUPPORT_EMAIL : "administrator"}.`, + }, }; export const authErrorHandler = ( @@ -106,6 +113,7 @@ export const authErrorHandler = ( email?: string | undefined ): TAuthErrorInfo | undefined => { const bannerAlertErrorCodes = [ + EAuthenticationErrorCodes.ADMIN_ALREADY_EXIST, EAuthenticationErrorCodes.REQUIRED_ADMIN_EMAIL_PASSWORD_FIRST_NAME, EAuthenticationErrorCodes.INVALID_ADMIN_EMAIL, EAuthenticationErrorCodes.INVALID_ADMIN_PASSWORD, @@ -113,6 +121,7 @@ export const authErrorHandler = ( EAuthenticationErrorCodes.ADMIN_AUTHENTICATION_FAILED, EAuthenticationErrorCodes.ADMIN_USER_ALREADY_EXIST, EAuthenticationErrorCodes.ADMIN_USER_DOES_NOT_EXIST, + EAuthenticationErrorCodes.ADMIN_USER_DEACTIVATED, ]; if (bannerAlertErrorCodes.includes(errorCode)) diff --git a/admin/helpers/common.helper.ts b/admin/helpers/common.helper.ts index e7aae0698..e282e5792 100644 --- a/admin/helpers/common.helper.ts +++ b/admin/helpers/common.helper.ts @@ -10,6 +10,8 @@ export const SPACE_BASE_PATH = process.env.NEXT_PUBLIC_SPACE_BASE_PATH || ""; export const WEB_BASE_URL = process.env.NEXT_PUBLIC_WEB_BASE_URL || ""; +export const SUPPORT_EMAIL = process.env.NEXT_PUBLIC_SUPPORT_EMAIL || ""; + export const ASSET_PREFIX = ADMIN_BASE_PATH; export const cn = (...inputs: ClassValue[]) => twMerge(clsx(inputs)); From 780caf59a0d1b9e079fad5abab7142e9256521ab Mon Sep 17 00:00:00 2001 From: Prateek Shourya Date: Thu, 23 May 2024 14:27:16 +0530 Subject: [PATCH 08/10] [WEB-1404] chore: space app infinite loader and scroll fix. (#4559) * [WEB-1404] chore: space app infinite loader and scroll fix. * chore: revert back `isLoading` initail state to `true` in user store. --- space/app/loading.tsx | 20 -------------------- space/app/page.tsx | 7 +++++-- space/components/views/auth.tsx | 2 +- space/helpers/authentication.helper.tsx | 4 +++- space/helpers/common.helper.ts | 2 ++ space/lib/instance-provider.tsx | 6 +++++- 6 files changed, 16 insertions(+), 25 deletions(-) delete mode 100644 space/app/loading.tsx diff --git a/space/app/loading.tsx b/space/app/loading.tsx deleted file mode 100644 index d35e42a76..000000000 --- a/space/app/loading.tsx +++ /dev/null @@ -1,20 +0,0 @@ -"use client"; -import Image from "next/image"; -import { useTheme } from "next-themes"; -// assets -import LogoSpinnerDark from "@/public/images/logo-spinner-dark.gif"; -import LogoSpinnerLight from "@/public/images/logo-spinner-light.gif"; - -export default function LogoSpinner() { - const { resolvedTheme } = useTheme(); - - const logoSrc = resolvedTheme === "dark" ? LogoSpinnerDark : LogoSpinnerLight; - - return ( -
-
- logo -
-
- ); -} diff --git a/space/app/page.tsx b/space/app/page.tsx index d03300a25..a6058fb8a 100644 --- a/space/app/page.tsx +++ b/space/app/page.tsx @@ -1,5 +1,6 @@ "use client"; +import { observer } from "mobx-react-lite"; // components import { UserLoggedIn } from "@/components/account"; import { LogoSpinner } from "@/components/common"; @@ -7,7 +8,7 @@ import { AuthView } from "@/components/views"; // hooks import { useUser } from "@/hooks/store"; -export default function HomePage() { +const HomePage = observer(() => { const { data: currentUser, isAuthenticated, isLoading } = useUser(); if (isLoading) return ; @@ -15,4 +16,6 @@ export default function HomePage() { if (currentUser && isAuthenticated) return ; return ; -} +}); + +export default HomePage; diff --git a/space/components/views/auth.tsx b/space/components/views/auth.tsx index 88023dbef..5992ca5a5 100644 --- a/space/components/views/auth.tsx +++ b/space/components/views/auth.tsx @@ -37,7 +37,7 @@ export const AuthView = observer(() => {
-
+
diff --git a/space/helpers/authentication.helper.tsx b/space/helpers/authentication.helper.tsx index e2be3c617..0e5ab0186 100644 --- a/space/helpers/authentication.helper.tsx +++ b/space/helpers/authentication.helper.tsx @@ -1,5 +1,7 @@ import { ReactNode } from "react"; import Link from "next/link"; +// helpers +import { SUPPORT_EMAIL } from "./common.helper"; export enum EPageTypes { INIT = "INIT", @@ -152,7 +154,7 @@ const errorCodeMessages: { // sign in [EAuthenticationErrorCodes.USER_ACCOUNT_DEACTIVATED]: { title: `User account deactivated`, - message: () =>
Your account is deactivated. Contact support@plane.so.
, + message: () => `User account deactivated. Please contact ${!!SUPPORT_EMAIL ? SUPPORT_EMAIL : "administrator"}.`, }, [EAuthenticationErrorCodes.USER_DOES_NOT_EXIST]: { diff --git a/space/helpers/common.helper.ts b/space/helpers/common.helper.ts index 52c61e4e2..6db73a4a1 100644 --- a/space/helpers/common.helper.ts +++ b/space/helpers/common.helper.ts @@ -8,6 +8,8 @@ export const ADMIN_BASE_PATH = process.env.NEXT_PUBLIC_ADMIN_BASE_PATH || ""; export const SPACE_BASE_PATH = process.env.NEXT_PUBLIC_SPACE_BASE_PATH || ""; +export const SUPPORT_EMAIL = process.env.NEXT_PUBLIC_SUPPORT_EMAIL || ""; + export const WEB_BASE_URL = process.env.NEXT_PUBLIC_WEB_BASE_URL || ""; export const GOD_MODE_URL = encodeURI(`${ADMIN_BASE_URL}${ADMIN_BASE_PATH}`); diff --git a/space/lib/instance-provider.tsx b/space/lib/instance-provider.tsx index a4de61a16..db9b15db7 100644 --- a/space/lib/instance-provider.tsx +++ b/space/lib/instance-provider.tsx @@ -31,7 +31,11 @@ export const InstanceProvider = observer(({ children }: { children: ReactNode }) revalidateIfStale: false, errorRetryCount: 0, }); - useSWR("CURRENT_USER", () => fetchCurrentUser()); + useSWR("CURRENT_USER", () => fetchCurrentUser(), { + shouldRetryOnError: false, + revalidateOnFocus: false, + revalidateIfStale: false, + }); if (!instance && !error) return ( From 7089474c11c5300c05ef72ed2f697d7b358afb7c Mon Sep 17 00:00:00 2001 From: Prateek Shourya Date: Thu, 23 May 2024 14:28:11 +0530 Subject: [PATCH 09/10] [WEB-1240] chore: toast messages updates (#4561) * [WEB-1240] fix: toast messages inconsistency in sub-issues. * [WEB-1241] chore: update draft issue creation toast message. * chore: minor logic improvement. --- web/components/issues/delete-issue-modal.tsx | 8 +++++++- web/components/issues/issue-modal/modal.tsx | 4 ++-- web/components/issues/sub-issues/root.tsx | 18 ++++++++---------- 3 files changed, 17 insertions(+), 13 deletions(-) diff --git a/web/components/issues/delete-issue-modal.tsx b/web/components/issues/delete-issue-modal.tsx index dc7b64075..49c1a8700 100644 --- a/web/components/issues/delete-issue-modal.tsx +++ b/web/components/issues/delete-issue-modal.tsx @@ -13,11 +13,12 @@ type Props = { handleClose: () => void; dataId?: string | null | undefined; data?: TIssue; + isSubIssue?: boolean; onSubmit?: () => Promise; }; export const DeleteIssueModal: React.FC = (props) => { - const { dataId, data, isOpen, handleClose, onSubmit } = props; + const { dataId, data, isOpen, handleClose, isSubIssue = false, onSubmit } = props; // states const [isDeleting, setIsDeleting] = useState(false); // store hooks @@ -44,6 +45,11 @@ export const DeleteIssueModal: React.FC = (props) => { if (onSubmit) await onSubmit() .then(() => { + setToast({ + type: TOAST_TYPE.SUCCESS, + title: "Success!", + message: `${isSubIssue ? "Sub-issue" : "Issue"} deleted successfully`, + }); onClose(); }) .catch(() => { diff --git a/web/components/issues/issue-modal/modal.tsx b/web/components/issues/issue-modal/modal.tsx index 04970028b..38b328df6 100644 --- a/web/components/issues/issue-modal/modal.tsx +++ b/web/components/issues/issue-modal/modal.tsx @@ -162,7 +162,7 @@ export const CreateUpdateIssueModal: React.FC = observer((prop setToast({ type: TOAST_TYPE.SUCCESS, title: "Success!", - message: "Issue created successfully.", + message: `${is_draft_issue ? "Draft issue" : "Issue"} created successfully.`, }); captureIssueEvent({ eventName: ISSUE_CREATED, @@ -178,7 +178,7 @@ export const CreateUpdateIssueModal: React.FC = observer((prop setToast({ type: TOAST_TYPE.ERROR, title: "Error!", - message: "Issue could not be created. Please try again.", + message: `${is_draft_issue ? "Draft issue" : "Issue"} could not be created. Please try again.`, }); captureIssueEvent({ eventName: ISSUE_CREATED, diff --git a/web/components/issues/sub-issues/root.tsx b/web/components/issues/sub-issues/root.tsx index a88434e3b..b697ff20a 100644 --- a/web/components/issues/sub-issues/root.tsx +++ b/web/components/issues/sub-issues/root.tsx @@ -1,20 +1,22 @@ import { FC, useCallback, useEffect, useMemo, useState } from "react"; import { observer } from "mobx-react"; import { useRouter } from "next/router"; +// icons import { Plus, ChevronRight, Loader, Pencil } from "lucide-react"; +// types import { IUser, TIssue } from "@plane/types"; -// hooks +// ui import { CircularProgressIndicator, CustomMenu, LayersIcon, TOAST_TYPE, setToast } from "@plane/ui"; +// components import { ExistingIssuesListModal } from "@/components/core"; import { CreateUpdateIssueModal, DeleteIssueModal } from "@/components/issues"; +// helpers import { cn } from "@/helpers/common.helper"; import { copyTextToClipboard } from "@/helpers/string.helper"; +// hooks import { useEventTracker, useIssueDetail } from "@/hooks/store"; -// components +// local components import { IssueList } from "./issues-list"; -// ui -// helpers -// types export interface ISubIssuesRoot { workspaceSlug: string; @@ -248,11 +250,6 @@ export const SubIssuesRoot: FC = observer((props) => { try { setSubIssueHelpers(parentIssueId, "issue_loader", issueId); await deleteSubIssue(workspaceSlug, projectId, parentIssueId, issueId); - setToast({ - type: TOAST_TYPE.SUCCESS, - title: "Error!", - message: "Issue deleted successfully", - }); captureIssueEvent({ eventName: "Sub-issue deleted", payload: { id: issueId, state: "SUCCESS", element: "Issue detail page" }, @@ -535,6 +532,7 @@ export const SubIssuesRoot: FC = observer((props) => { issueCrudState?.delete?.issue?.id as string ) } + isSubIssue /> )} From 073d4537521bbe3fd5de8e12ad7074cc6ce86654 Mon Sep 17 00:00:00 2001 From: Anmol Singh Bhatia <121005188+anmolsinghbhatia@users.noreply.github.com> Date: Thu, 23 May 2024 14:45:40 +0530 Subject: [PATCH 10/10] chore: plane logo asset updated (#4562) --- admin/layouts/default-layout.tsx | 4 ++-- .../black-horizontal-with-blue-logo.png | Bin 0 -> 2852 bytes .../black-horizontal-with-blue-logo.svg | 17 ----------------- .../white-horizontal-with-blue-logo.png | Bin 0 -> 2412 bytes .../white-horizontal-with-blue-logo.svg | 17 ----------------- space/components/account/user-logged-in.tsx | 2 +- space/components/instance/not-ready-view.tsx | 4 ++-- space/components/views/auth.tsx | 4 ++-- space/lib/instance-provider.tsx | 4 ++-- .../black-horizontal-with-blue-logo.png | Bin 0 -> 2852 bytes .../black-horizontal-with-blue-logo.svg | 17 ----------------- .../white-horizontal-with-blue-logo.png | Bin 0 -> 2412 bytes .../white-horizontal-with-blue-logo.svg | 17 ----------------- web/components/instance/not-ready-view.tsx | 4 ++-- web/layouts/auth-layout/workspace-wrapper.tsx | 4 ++-- web/pages/accounts/forgot-password.tsx | 4 ++-- web/pages/accounts/reset-password.tsx | 4 ++-- web/pages/accounts/set-password.tsx | 4 ++-- web/pages/create-workspace.tsx | 4 ++-- web/pages/index.tsx | 4 ++-- web/pages/invitations/index.tsx | 4 ++-- web/pages/sign-up.tsx | 4 ++-- .../black-horizontal-with-blue-logo.png | Bin 0 -> 2852 bytes .../black-horizontal-with-blue-logo.svg | 17 ----------------- .../white-horizontal-with-blue-logo.png | Bin 0 -> 2412 bytes .../white-horizontal-with-blue-logo.svg | 17 ----------------- 26 files changed, 27 insertions(+), 129 deletions(-) create mode 100644 admin/public/plane-logos/black-horizontal-with-blue-logo.png delete mode 100644 admin/public/plane-logos/black-horizontal-with-blue-logo.svg create mode 100644 admin/public/plane-logos/white-horizontal-with-blue-logo.png delete mode 100644 admin/public/plane-logos/white-horizontal-with-blue-logo.svg create mode 100644 space/public/plane-logos/black-horizontal-with-blue-logo.png delete mode 100644 space/public/plane-logos/black-horizontal-with-blue-logo.svg create mode 100644 space/public/plane-logos/white-horizontal-with-blue-logo.png delete mode 100644 space/public/plane-logos/white-horizontal-with-blue-logo.svg create mode 100644 web/public/plane-logos/black-horizontal-with-blue-logo.png delete mode 100644 web/public/plane-logos/black-horizontal-with-blue-logo.svg create mode 100644 web/public/plane-logos/white-horizontal-with-blue-logo.png delete mode 100644 web/public/plane-logos/white-horizontal-with-blue-logo.svg diff --git a/admin/layouts/default-layout.tsx b/admin/layouts/default-layout.tsx index 4a3724248..1be40ea12 100644 --- a/admin/layouts/default-layout.tsx +++ b/admin/layouts/default-layout.tsx @@ -7,8 +7,8 @@ import { useTheme } from "next-themes"; // logo/ images import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; -import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.png"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.png"; type TDefaultLayout = { children: ReactNode; diff --git a/admin/public/plane-logos/black-horizontal-with-blue-logo.png b/admin/public/plane-logos/black-horizontal-with-blue-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..c14505a6f621fcfffe2bf3f3f5c8d7660f81ab96 GIT binary patch literal 2852 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 - - - - - - - - - - - - - - - - diff --git a/admin/public/plane-logos/white-horizontal-with-blue-logo.png b/admin/public/plane-logos/white-horizontal-with-blue-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..97560fb9f92ee7bd29ed2df5a353ac6b39b2ec75 GIT binary patch literal 2412 zcmV-y36u7TP)%xyoan5-PxHAV3A#R1i`@mI{ChSSkQ2z^NeIH{PP#0VyEt)!=b( zHXg0L9_?=I`OeV^v9(?yq~D{FG#WvXzu(=RZjDCIv0-eD9xnXVs~m=5bY>fhjDY>w zZ04|G{CL0@7>1$377W8MT417K7)C2phbKlqkcOC}(a6IXJSG}O9p@os^B04dyfoo3 zYF@R(HIsqd^rii z@fn7(B<2WRFCU`0+x>;)1m?fnl`3L}LK3 z)gf6N?_n4%Fwqzehr)Gdi@%IEm?Lx`&`>3a!xf748uMf!ZOvzr~SlS#HPA9rNP3;}qh-!ut`$l=@D?kJZ&DiS6|=8yd~0F(BAX^) ziN^4#9pCaBObu?}U(ro0<|+5jWJm;y5|vwHkB&ppF*_~WXYsuZKT^{CJ2@2McHTye zO*Dpwxrey$P(Bilw~N|>iN^3qHdDewl1U^BHD;Q@IgLyMmVTF< z@^QzRpnegWrZqFEd6q}qp;;~K5&H*7G@X#2exEN*1iGPM9HV_*j=79=(0vk)-Pkm( z4NnFHH=4Rmc8iYivri&f=sTz}PTH&+;HB{6@Z($j?!2*hg(>VzW&XW{z} zmsu3Wzhg`|vPF(uwpgU0gs11n)~+mq%Sd~Yq-Pw&%4ni7EF|Y)jt+1G8wK`2$wNdm!h>{qA?Ko?Uf0)uh5NHBi9Tx zR0@acGb?zlXLC7^h1;1l#m#>wCw%Tu%VAAa#H|h|t>G}y7y#^VkUDm!V-EP)nQ;3! z#hwfvs+>We3(Za$n4;d=AiatGUYW*)J8a;;p;4#6tQs~(G!u1rEz)#pB$e~B7gQare z`ad<-B(qCu9ctG-}NG=_yoVPR-_;dg}V>R$c`^j!{rK2EsaW)*2Fe)&6_Ph%L+8-%>? zyUNpcT1&XQ@E!eN6Y5gJRsXa7Y-{!sO8l6O&R@K{b5P*fX!ZdktwlV4t=05gBRPtQ zRHrG{OGNN6`ou4SwyhPOk6^)YP(rh88;XY>o)f)!$(p!Yu}~NT!F(EPBy?&uD{sI& zhp|#jG>k4tmJH3Rc&vs^_64*-s!OsO53yc;DVvFg(FMt=N}{of#a-oh^#LzjcPUqc zE`!aU7+sJ=V-G8Um&y0S(uhQg-S;#tJ|Aln={1iRiQOj@n zSU5(9qAoA_ILs&<26D{eO9C&6w_otRwv61+gCl9t8!~40()GunG9fQbF?tkl)bf-! z3b;!RIzxQ5Cw-P0_gC~3dfRivu2>Kr5{xpkSB|1C%W#XdnXe23*~BXGC=O$a?v6Im zFjV1~n2Us?q-kTGhXms-ixm0{3kP-LCNoAE|GUge*~g7>P4>Ci@WfE3a#pBjwD6KM zJ{R^L1A!yElMv@f1I^YnKJL*(!$<;kYCgl2qOW;$r?f75JKY+CPkblg(5g@3XPveY zVb$Tuv#m$7REfcc=<5~ig`cvsj*j_jYdYsBrvGvn)%qNx*n88qKFj?=OV{ZLMslQ? zf=!E)P$GrX*D5cs*&ttr!;|BaxW|)Ilp1!v=ndGmZfB9B0#XfmQvdxU^+|XXAt32r es?*!9zvurqzPKh2y6xit0000 - - - - - - - - - - - - - - - - diff --git a/space/components/account/user-logged-in.tsx b/space/components/account/user-logged-in.tsx index a9930b5fd..33be330fa 100644 --- a/space/components/account/user-logged-in.tsx +++ b/space/components/account/user-logged-in.tsx @@ -6,7 +6,7 @@ import { UserAvatar } from "@/components/issues/navbar/user-avatar"; // hooks import { useUser } from "@/hooks/store"; // assets -import PlaneLogo from "@/public/plane-logos/black-horizontal-with-blue-logo.svg"; +import PlaneLogo from "@/public/plane-logos/black-horizontal-with-blue-logo.png"; import UserLoggedInImage from "@/public/user-logged-in.svg"; export const UserLoggedIn = () => { diff --git a/space/components/instance/not-ready-view.tsx b/space/components/instance/not-ready-view.tsx index f79778387..be46a9473 100644 --- a/space/components/instance/not-ready-view.tsx +++ b/space/components/instance/not-ready-view.tsx @@ -12,8 +12,8 @@ import { GOD_MODE_URL, SPACE_BASE_PATH } from "@/helpers/common.helper"; import PlaneTakeOffImage from "@/public/instance/plane-takeoff.png"; import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; -import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.png"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.png"; export const InstanceNotReady: FC = () => { const { resolvedTheme } = useTheme(); diff --git a/space/components/views/auth.tsx b/space/components/views/auth.tsx index 5992ca5a5..538519696 100644 --- a/space/components/views/auth.tsx +++ b/space/components/views/auth.tsx @@ -11,8 +11,8 @@ import { SPACE_BASE_PATH } from "@/helpers/common.helper"; // images import PlaneBackgroundPatternDark from "@/public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "@/public/auth/background-pattern.svg"; -import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; -import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.png"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.png"; export const AuthView = observer(() => { // hooks diff --git a/space/lib/instance-provider.tsx b/space/lib/instance-provider.tsx index db9b15db7..8447d8a5f 100644 --- a/space/lib/instance-provider.tsx +++ b/space/lib/instance-provider.tsx @@ -16,8 +16,8 @@ import { useInstance, useUser } from "@/hooks/store"; // assets import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; -import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.png"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.png"; export const InstanceProvider = observer(({ children }: { children: ReactNode }) => { const { fetchInstanceInfo, instance, error } = useInstance(); diff --git a/space/public/plane-logos/black-horizontal-with-blue-logo.png b/space/public/plane-logos/black-horizontal-with-blue-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..c14505a6f621fcfffe2bf3f3f5c8d7660f81ab96 GIT binary patch literal 2852 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 - - - - - - - - - - - - - - - - diff --git a/space/public/plane-logos/white-horizontal-with-blue-logo.png b/space/public/plane-logos/white-horizontal-with-blue-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..97560fb9f92ee7bd29ed2df5a353ac6b39b2ec75 GIT binary patch literal 2412 zcmV-y36u7TP)%xyoan5-PxHAV3A#R1i`@mI{ChSSkQ2z^NeIH{PP#0VyEt)!=b( zHXg0L9_?=I`OeV^v9(?yq~D{FG#WvXzu(=RZjDCIv0-eD9xnXVs~m=5bY>fhjDY>w zZ04|G{CL0@7>1$377W8MT417K7)C2phbKlqkcOC}(a6IXJSG}O9p@os^B04dyfoo3 zYF@R(HIsqd^rii z@fn7(B<2WRFCU`0+x>;)1m?fnl`3L}LK3 z)gf6N?_n4%Fwqzehr)Gdi@%IEm?Lx`&`>3a!xf748uMf!ZOvzr~SlS#HPA9rNP3;}qh-!ut`$l=@D?kJZ&DiS6|=8yd~0F(BAX^) ziN^4#9pCaBObu?}U(ro0<|+5jWJm;y5|vwHkB&ppF*_~WXYsuZKT^{CJ2@2McHTye zO*Dpwxrey$P(Bilw~N|>iN^3qHdDewl1U^BHD;Q@IgLyMmVTF< z@^QzRpnegWrZqFEd6q}qp;;~K5&H*7G@X#2exEN*1iGPM9HV_*j=79=(0vk)-Pkm( z4NnFHH=4Rmc8iYivri&f=sTz}PTH&+;HB{6@Z($j?!2*hg(>VzW&XW{z} zmsu3Wzhg`|vPF(uwpgU0gs11n)~+mq%Sd~Yq-Pw&%4ni7EF|Y)jt+1G8wK`2$wNdm!h>{qA?Ko?Uf0)uh5NHBi9Tx zR0@acGb?zlXLC7^h1;1l#m#>wCw%Tu%VAAa#H|h|t>G}y7y#^VkUDm!V-EP)nQ;3! z#hwfvs+>We3(Za$n4;d=AiatGUYW*)J8a;;p;4#6tQs~(G!u1rEz)#pB$e~B7gQare z`ad<-B(qCu9ctG-}NG=_yoVPR-_;dg}V>R$c`^j!{rK2EsaW)*2Fe)&6_Ph%L+8-%>? zyUNpcT1&XQ@E!eN6Y5gJRsXa7Y-{!sO8l6O&R@K{b5P*fX!ZdktwlV4t=05gBRPtQ zRHrG{OGNN6`ou4SwyhPOk6^)YP(rh88;XY>o)f)!$(p!Yu}~NT!F(EPBy?&uD{sI& zhp|#jG>k4tmJH3Rc&vs^_64*-s!OsO53yc;DVvFg(FMt=N}{of#a-oh^#LzjcPUqc zE`!aU7+sJ=V-G8Um&y0S(uhQg-S;#tJ|Aln={1iRiQOj@n zSU5(9qAoA_ILs&<26D{eO9C&6w_otRwv61+gCl9t8!~40()GunG9fQbF?tkl)bf-! z3b;!RIzxQ5Cw-P0_gC~3dfRivu2>Kr5{xpkSB|1C%W#XdnXe23*~BXGC=O$a?v6Im zFjV1~n2Us?q-kTGhXms-ixm0{3kP-LCNoAE|GUge*~g7>P4>Ci@WfE3a#pBjwD6KM zJ{R^L1A!yElMv@f1I^YnKJL*(!$<;kYCgl2qOW;$r?f75JKY+CPkblg(5g@3XPveY zVb$Tuv#m$7REfcc=<5~ig`cvsj*j_jYdYsBrvGvn)%qNx*n88qKFj?=OV{ZLMslQ? zf=!E)P$GrX*D5cs*&ttr!;|BaxW|)Ilp1!v=ndGmZfB9B0#XfmQvdxU^+|XXAt32r es?*!9zvurqzPKh2y6xit0000 - - - - - - - - - - - - - - - - diff --git a/web/components/instance/not-ready-view.tsx b/web/components/instance/not-ready-view.tsx index 526030f56..68221283f 100644 --- a/web/components/instance/not-ready-view.tsx +++ b/web/components/instance/not-ready-view.tsx @@ -10,8 +10,8 @@ import PlaneTakeOffImage from "@/public/plane-takeoff.png"; // assets import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; -import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.png"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.png"; export const InstanceNotReady: FC = () => { const { resolvedTheme } = useTheme(); diff --git a/web/layouts/auth-layout/workspace-wrapper.tsx b/web/layouts/auth-layout/workspace-wrapper.tsx index 972bb92cb..603fa9b6b 100644 --- a/web/layouts/auth-layout/workspace-wrapper.tsx +++ b/web/layouts/auth-layout/workspace-wrapper.tsx @@ -12,8 +12,8 @@ import { LogoSpinner } from "@/components/common"; import { useMember, useProject, useUser, useWorkspace } from "@/hooks/store"; import { usePlatformOS } from "@/hooks/use-platform-os"; // images -import PlaneBlackLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; -import PlaneWhiteLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; +import PlaneBlackLogo from "public/plane-logos/black-horizontal-with-blue-logo.png"; +import PlaneWhiteLogo from "public/plane-logos/white-horizontal-with-blue-logo.png"; import WorkSpaceNotAvailable from "public/workspace/workspace-not-available.png"; export interface IWorkspaceAuthWrapper { diff --git a/web/pages/accounts/forgot-password.tsx b/web/pages/accounts/forgot-password.tsx index b86b2518f..8810e47cd 100644 --- a/web/pages/accounts/forgot-password.tsx +++ b/web/pages/accounts/forgot-password.tsx @@ -30,8 +30,8 @@ import { AuthService } from "@/services/auth.service"; // images import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; -import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.png"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.png"; type TForgotPasswordFormValues = { email: string; diff --git a/web/pages/accounts/reset-password.tsx b/web/pages/accounts/reset-password.tsx index 02772f914..92756cd43 100644 --- a/web/pages/accounts/reset-password.tsx +++ b/web/pages/accounts/reset-password.tsx @@ -31,8 +31,8 @@ import { AuthService } from "@/services/auth.service"; // images import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; -import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.png"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.png"; type TResetPasswordFormValues = { email: string; diff --git a/web/pages/accounts/set-password.tsx b/web/pages/accounts/set-password.tsx index 93a9148c0..9328d2cc9 100644 --- a/web/pages/accounts/set-password.tsx +++ b/web/pages/accounts/set-password.tsx @@ -27,8 +27,8 @@ import { AuthService } from "@/services/auth.service"; // images import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; -import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.png"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.png"; type TResetPasswordFormValues = { email: string; diff --git a/web/pages/create-workspace.tsx b/web/pages/create-workspace.tsx index d20b93a7d..e5992e008 100644 --- a/web/pages/create-workspace.tsx +++ b/web/pages/create-workspace.tsx @@ -16,8 +16,8 @@ import DefaultLayout from "@/layouts/default-layout"; import { NextPageWithLayout } from "@/lib/types"; // wrappers import { AuthenticationWrapper } from "@/lib/wrappers"; -import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; -import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.png"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.png"; // types const CreateWorkspacePage: NextPageWithLayout = observer(() => { diff --git a/web/pages/index.tsx b/web/pages/index.tsx index 9cc1f9d95..ee22cd77f 100644 --- a/web/pages/index.tsx +++ b/web/pages/index.tsx @@ -22,8 +22,8 @@ import { AuthenticationWrapper } from "@/lib/wrappers"; // assets import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; -import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.png"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.png"; const HomePage: NextPageWithLayout = observer(() => { const { resolvedTheme } = useTheme(); diff --git a/web/pages/invitations/index.tsx b/web/pages/invitations/index.tsx index 1f0debaaf..aac6c833b 100644 --- a/web/pages/invitations/index.tsx +++ b/web/pages/invitations/index.tsx @@ -31,8 +31,8 @@ import { AuthenticationWrapper } from "@/lib/wrappers"; import { WorkspaceService } from "@/services/workspace.service"; // images import emptyInvitation from "public/empty-state/invitation.svg"; -import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; -import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.png"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.png"; const workspaceService = new WorkspaceService(); diff --git a/web/pages/sign-up.tsx b/web/pages/sign-up.tsx index 470f927b4..2c511d730 100644 --- a/web/pages/sign-up.tsx +++ b/web/pages/sign-up.tsx @@ -22,8 +22,8 @@ import { AuthenticationWrapper } from "@/lib/wrappers"; import PlaneBackgroundPatternDark from "public/auth/background-pattern-dark.svg"; import PlaneBackgroundPattern from "public/auth/background-pattern.svg"; -import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.svg"; -import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.svg"; +import BlackHorizontalLogo from "public/plane-logos/black-horizontal-with-blue-logo.png"; +import WhiteHorizontalLogo from "public/plane-logos/white-horizontal-with-blue-logo.png"; export type AuthType = "sign-in" | "sign-up"; diff --git a/web/public/plane-logos/black-horizontal-with-blue-logo.png b/web/public/plane-logos/black-horizontal-with-blue-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..c14505a6f621fcfffe2bf3f3f5c8d7660f81ab96 GIT binary patch literal 2852 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 - - - - - - - - - - - - - - - - diff --git a/web/public/plane-logos/white-horizontal-with-blue-logo.png b/web/public/plane-logos/white-horizontal-with-blue-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..97560fb9f92ee7bd29ed2df5a353ac6b39b2ec75 GIT binary patch literal 2412 zcmV-y36u7TP)%xyoan5-PxHAV3A#R1i`@mI{ChSSkQ2z^NeIH{PP#0VyEt)!=b( zHXg0L9_?=I`OeV^v9(?yq~D{FG#WvXzu(=RZjDCIv0-eD9xnXVs~m=5bY>fhjDY>w zZ04|G{CL0@7>1$377W8MT417K7)C2phbKlqkcOC}(a6IXJSG}O9p@os^B04dyfoo3 zYF@R(HIsqd^rii z@fn7(B<2WRFCU`0+x>;)1m?fnl`3L}LK3 z)gf6N?_n4%Fwqzehr)Gdi@%IEm?Lx`&`>3a!xf748uMf!ZOvzr~SlS#HPA9rNP3;}qh-!ut`$l=@D?kJZ&DiS6|=8yd~0F(BAX^) ziN^4#9pCaBObu?}U(ro0<|+5jWJm;y5|vwHkB&ppF*_~WXYsuZKT^{CJ2@2McHTye zO*Dpwxrey$P(Bilw~N|>iN^3qHdDewl1U^BHD;Q@IgLyMmVTF< z@^QzRpnegWrZqFEd6q}qp;;~K5&H*7G@X#2exEN*1iGPM9HV_*j=79=(0vk)-Pkm( z4NnFHH=4Rmc8iYivri&f=sTz}PTH&+;HB{6@Z($j?!2*hg(>VzW&XW{z} zmsu3Wzhg`|vPF(uwpgU0gs11n)~+mq%Sd~Yq-Pw&%4ni7EF|Y)jt+1G8wK`2$wNdm!h>{qA?Ko?Uf0)uh5NHBi9Tx zR0@acGb?zlXLC7^h1;1l#m#>wCw%Tu%VAAa#H|h|t>G}y7y#^VkUDm!V-EP)nQ;3! z#hwfvs+>We3(Za$n4;d=AiatGUYW*)J8a;;p;4#6tQs~(G!u1rEz)#pB$e~B7gQare z`ad<-B(qCu9ctG-}NG=_yoVPR-_;dg}V>R$c`^j!{rK2EsaW)*2Fe)&6_Ph%L+8-%>? zyUNpcT1&XQ@E!eN6Y5gJRsXa7Y-{!sO8l6O&R@K{b5P*fX!ZdktwlV4t=05gBRPtQ zRHrG{OGNN6`ou4SwyhPOk6^)YP(rh88;XY>o)f)!$(p!Yu}~NT!F(EPBy?&uD{sI& zhp|#jG>k4tmJH3Rc&vs^_64*-s!OsO53yc;DVvFg(FMt=N}{of#a-oh^#LzjcPUqc zE`!aU7+sJ=V-G8Um&y0S(uhQg-S;#tJ|Aln={1iRiQOj@n zSU5(9qAoA_ILs&<26D{eO9C&6w_otRwv61+gCl9t8!~40()GunG9fQbF?tkl)bf-! z3b;!RIzxQ5Cw-P0_gC~3dfRivu2>Kr5{xpkSB|1C%W#XdnXe23*~BXGC=O$a?v6Im zFjV1~n2Us?q-kTGhXms-ixm0{3kP-LCNoAE|GUge*~g7>P4>Ci@WfE3a#pBjwD6KM zJ{R^L1A!yElMv@f1I^YnKJL*(!$<;kYCgl2qOW;$r?f75JKY+CPkblg(5g@3XPveY zVb$Tuv#m$7REfcc=<5~ig`cvsj*j_jYdYsBrvGvn)%qNx*n88qKFj?=OV{ZLMslQ? zf=!E)P$GrX*D5cs*&ttr!;|BaxW|)Ilp1!v=ndGmZfB9B0#XfmQvdxU^+|XXAt32r es?*!9zvurqzPKh2y6xit0000 - - - - - - - - - - - - - - - -