From f3894d5898e472038f2dd7a02269f04a53615be2 Mon Sep 17 00:00:00 2001 From: Daniel Lockyer Date: Wed, 14 Jun 2023 14:33:47 +0200 Subject: [PATCH] Moved Portal to `apps/` refs https://github.com/TryGhost/Toolbox/issues/594 - we're moving all the standalone apps to a separate folder to keep them out of the core code and easier to find --- .github/dev.js | 2 +- .gitignore | 4 ++-- {ghost => apps}/portal/.env | 0 .../portal/.env.development.local.example | 0 {ghost => apps}/portal/.eslintignore | 0 {ghost => apps}/portal/.yarnrc | 0 {ghost => apps}/portal/README.md | 0 {ghost => apps}/portal/jsconfig.json | 0 {ghost => apps}/portal/package.json | 0 {ghost => apps}/portal/src/App.css | 0 {ghost => apps}/portal/src/App.js | 0 {ghost => apps}/portal/src/App.test.js | 0 {ghost => apps}/portal/src/AppContext.js | 0 {ghost => apps}/portal/src/actions.js | 0 {ghost => apps}/portal/src/components/Frame.js | 0 .../portal/src/components/Frame.styles.js | 0 .../portal/src/components/Global.styles.js | 0 .../portal/src/components/Notification.js | 0 .../portal/src/components/Notification.styles.js | 0 {ghost => apps}/portal/src/components/PopupModal.js | 0 .../portal/src/components/TriggerButton.js | 0 .../portal/src/components/TriggerButton.styles.js | 0 .../portal/src/components/TriggerButton.test.js | 0 .../portal/src/components/common/ActionButton.js | 0 .../src/components/common/ActionButton.test.js | 0 .../portal/src/components/common/BackButton.js | 0 .../portal/src/components/common/CloseButton.js | 0 .../portal/src/components/common/InputField.js | 0 .../portal/src/components/common/InputField.test.js | 0 .../portal/src/components/common/InputForm.js | 0 .../portal/src/components/common/MemberGravatar.js | 0 .../src/components/common/MemberGravatar.test.js | 0 .../src/components/common/NewsletterManagement.js | 0 .../portal/src/components/common/PlansSection.js | 0 .../src/components/common/PopupNotification.js | 0 .../portal/src/components/common/PoweredBy.js | 0 .../portal/src/components/common/ProductsSection.js | 0 .../src/components/common/SiteTitleBackButton.js | 0 .../portal/src/components/common/Switch.js | 0 .../portal/src/components/common/Switch.test.js | 0 .../portal/src/components/pages/AccountEmailPage.js | 0 .../pages/AccountHomePage/AccountHomePage.css | 0 .../pages/AccountHomePage/AccountHomePage.js | 0 .../pages/AccountHomePage/AccountHomePage.test.js | 0 .../AccountHomePage/components/AccountActions.js | 0 .../AccountHomePage/components/AccountFooter.js | 0 .../pages/AccountHomePage/components/AccountMain.js | 0 .../AccountHomePage/components/AccountWelcome.js | 0 .../components/ContinueSubscriptionButton.js | 0 .../components/EmailNewsletterAction.js | 0 .../components/EmailPreferencesAction.js | 0 .../components/PaidAccountActions.js | 0 .../AccountHomePage/components/SubscribeButton.js | 0 .../pages/AccountHomePage/components/UserHeader.js | 0 .../portal/src/components/pages/AccountPlanPage.js | 0 .../src/components/pages/AccountPlanPage.test.js | 0 .../src/components/pages/AccountProfilePage.js | 0 .../src/components/pages/AccountProfilePage.test.js | 0 .../src/components/pages/EmailReceivingFAQ.css | 0 .../src/components/pages/EmailReceivingFAQ.js | 0 .../src/components/pages/EmailSuppressedPage.css | 0 .../src/components/pages/EmailSuppressedPage.js | 0 .../components/pages/EmailSuppressedPage.test.js | 0 .../src/components/pages/EmailSuppressionFAQ.css | 0 .../src/components/pages/EmailSuppressionFAQ.js | 0 .../portal/src/components/pages/FeedbackPage.js | 0 .../portal/src/components/pages/LoadingPage.js | 0 .../portal/src/components/pages/MagicLinkPage.js | 0 .../src/components/pages/MagicLinkPage.test.js | 0 .../src/components/pages/NewsletterSelectionPage.js | 0 .../portal/src/components/pages/OfferPage.js | 0 .../portal/src/components/pages/SigninPage.js | 0 .../portal/src/components/pages/SigninPage.test.js | 0 .../portal/src/components/pages/SignupPage.js | 0 .../portal/src/components/pages/SignupPage.test.js | 0 .../portal/src/components/pages/UnsubscribePage.js | 0 {ghost => apps}/portal/src/data-attributes.js | 0 {ghost => apps}/portal/src/images/close.png | Bin .../portal/src/images/ghost-logo-small.svg | 0 .../portal/src/images/icons/arrow-left.svg | 0 .../portal/src/images/icons/arrow-right.svg | 0 .../portal/src/images/icons/button-icon-1.svg | 0 .../portal/src/images/icons/button-icon-2.svg | 0 .../portal/src/images/icons/button-icon-3.svg | 0 .../portal/src/images/icons/button-icon-4.svg | 0 .../portal/src/images/icons/button-icon-5.svg | 0 .../portal/src/images/icons/check-circle.svg | 0 .../portal/src/images/icons/checkmark-fill.svg | 0 .../portal/src/images/icons/checkmark.svg | 0 {ghost => apps}/portal/src/images/icons/close.svg | 0 .../src/images/icons/email-delivery-failed.svg | 0 .../portal/src/images/icons/envelope.svg | 0 .../portal/src/images/icons/invitation.svg | 0 {ghost => apps}/portal/src/images/icons/loader.svg | 0 {ghost => apps}/portal/src/images/icons/lock.svg | 0 {ghost => apps}/portal/src/images/icons/logout.svg | 0 .../portal/src/images/icons/offer-tag.svg | 0 .../portal/src/images/icons/thumbs-down.svg | 0 .../portal/src/images/icons/thumbs-error.svg | 0 .../portal/src/images/icons/thumbs-up.svg | 0 {ghost => apps}/portal/src/images/icons/user.svg | 0 .../portal/src/images/icons/warning-fill.svg | 0 {ghost => apps}/portal/src/index.css | 0 {ghost => apps}/portal/src/index.js | 0 {ghost => apps}/portal/src/logo.svg | 0 {ghost => apps}/portal/src/pages.js | 0 {ghost => apps}/portal/src/setupTests.js | 0 {ghost => apps}/portal/src/tests/SigninFlow.test.js | 0 {ghost => apps}/portal/src/tests/SignupFlow.test.js | 0 .../portal/src/tests/UpgradeFlow.test.js | 0 .../portal/src/tests/data-attributes.test.js | 0 .../portal/src/tests/portal-links.test.js | 0 {ghost => apps}/portal/src/utils/api.js | 0 {ghost => apps}/portal/src/utils/check-mode.js | 0 {ghost => apps}/portal/src/utils/contrast-color.js | 0 .../portal/src/utils/copy-to-clipboard.js | 0 {ghost => apps}/portal/src/utils/date-time.js | 0 {ghost => apps}/portal/src/utils/discount.js | 0 {ghost => apps}/portal/src/utils/errors.js | 0 .../portal/src/utils/fixtures-generator.js | 0 {ghost => apps}/portal/src/utils/fixtures.js | 0 {ghost => apps}/portal/src/utils/form.js | 0 {ghost => apps}/portal/src/utils/helpers.js | 0 {ghost => apps}/portal/src/utils/helpers.test.js | 0 {ghost => apps}/portal/src/utils/notifications.js | 0 {ghost => apps}/portal/src/utils/test-fixtures.js | 0 {ghost => apps}/portal/src/utils/test-utils.js | 0 {ghost => apps}/portal/src/utils/validator.js | 0 {ghost => apps}/portal/vite.config.js | 4 ++-- 129 files changed, 5 insertions(+), 5 deletions(-) rename {ghost => apps}/portal/.env (100%) rename {ghost => apps}/portal/.env.development.local.example (100%) rename {ghost => apps}/portal/.eslintignore (100%) rename {ghost => apps}/portal/.yarnrc (100%) rename {ghost => apps}/portal/README.md (100%) rename {ghost => apps}/portal/jsconfig.json (100%) rename {ghost => apps}/portal/package.json (100%) rename {ghost => apps}/portal/src/App.css (100%) rename {ghost => apps}/portal/src/App.js (100%) rename {ghost => apps}/portal/src/App.test.js (100%) rename {ghost => apps}/portal/src/AppContext.js (100%) rename {ghost => apps}/portal/src/actions.js (100%) rename {ghost => apps}/portal/src/components/Frame.js (100%) rename {ghost => apps}/portal/src/components/Frame.styles.js (100%) rename {ghost => apps}/portal/src/components/Global.styles.js (100%) rename {ghost => apps}/portal/src/components/Notification.js (100%) rename {ghost => apps}/portal/src/components/Notification.styles.js (100%) rename {ghost => apps}/portal/src/components/PopupModal.js (100%) rename {ghost => apps}/portal/src/components/TriggerButton.js (100%) rename {ghost => apps}/portal/src/components/TriggerButton.styles.js (100%) rename {ghost => apps}/portal/src/components/TriggerButton.test.js (100%) rename {ghost => apps}/portal/src/components/common/ActionButton.js (100%) rename {ghost => apps}/portal/src/components/common/ActionButton.test.js (100%) rename {ghost => apps}/portal/src/components/common/BackButton.js (100%) rename {ghost => apps}/portal/src/components/common/CloseButton.js (100%) rename {ghost => apps}/portal/src/components/common/InputField.js (100%) rename {ghost => apps}/portal/src/components/common/InputField.test.js (100%) rename {ghost => apps}/portal/src/components/common/InputForm.js (100%) rename {ghost => apps}/portal/src/components/common/MemberGravatar.js (100%) rename {ghost => apps}/portal/src/components/common/MemberGravatar.test.js (100%) rename {ghost => apps}/portal/src/components/common/NewsletterManagement.js (100%) rename {ghost => apps}/portal/src/components/common/PlansSection.js (100%) rename {ghost => apps}/portal/src/components/common/PopupNotification.js (100%) rename {ghost => apps}/portal/src/components/common/PoweredBy.js (100%) rename {ghost => apps}/portal/src/components/common/ProductsSection.js (100%) rename {ghost => apps}/portal/src/components/common/SiteTitleBackButton.js (100%) rename {ghost => apps}/portal/src/components/common/Switch.js (100%) rename {ghost => apps}/portal/src/components/common/Switch.test.js (100%) rename {ghost => apps}/portal/src/components/pages/AccountEmailPage.js (100%) rename {ghost => apps}/portal/src/components/pages/AccountHomePage/AccountHomePage.css (100%) rename {ghost => apps}/portal/src/components/pages/AccountHomePage/AccountHomePage.js (100%) rename {ghost => apps}/portal/src/components/pages/AccountHomePage/AccountHomePage.test.js (100%) rename {ghost => apps}/portal/src/components/pages/AccountHomePage/components/AccountActions.js (100%) rename {ghost => apps}/portal/src/components/pages/AccountHomePage/components/AccountFooter.js (100%) rename {ghost => apps}/portal/src/components/pages/AccountHomePage/components/AccountMain.js (100%) rename {ghost => apps}/portal/src/components/pages/AccountHomePage/components/AccountWelcome.js (100%) rename {ghost => apps}/portal/src/components/pages/AccountHomePage/components/ContinueSubscriptionButton.js (100%) rename {ghost => apps}/portal/src/components/pages/AccountHomePage/components/EmailNewsletterAction.js (100%) rename {ghost => apps}/portal/src/components/pages/AccountHomePage/components/EmailPreferencesAction.js (100%) rename {ghost => apps}/portal/src/components/pages/AccountHomePage/components/PaidAccountActions.js (100%) rename {ghost => apps}/portal/src/components/pages/AccountHomePage/components/SubscribeButton.js (100%) rename {ghost => apps}/portal/src/components/pages/AccountHomePage/components/UserHeader.js (100%) rename {ghost => apps}/portal/src/components/pages/AccountPlanPage.js (100%) rename {ghost => apps}/portal/src/components/pages/AccountPlanPage.test.js (100%) rename {ghost => apps}/portal/src/components/pages/AccountProfilePage.js (100%) rename {ghost => apps}/portal/src/components/pages/AccountProfilePage.test.js (100%) rename {ghost => apps}/portal/src/components/pages/EmailReceivingFAQ.css (100%) rename {ghost => apps}/portal/src/components/pages/EmailReceivingFAQ.js (100%) rename {ghost => apps}/portal/src/components/pages/EmailSuppressedPage.css (100%) rename {ghost => apps}/portal/src/components/pages/EmailSuppressedPage.js (100%) rename {ghost => apps}/portal/src/components/pages/EmailSuppressedPage.test.js (100%) rename {ghost => apps}/portal/src/components/pages/EmailSuppressionFAQ.css (100%) rename {ghost => apps}/portal/src/components/pages/EmailSuppressionFAQ.js (100%) rename {ghost => apps}/portal/src/components/pages/FeedbackPage.js (100%) rename {ghost => apps}/portal/src/components/pages/LoadingPage.js (100%) rename {ghost => apps}/portal/src/components/pages/MagicLinkPage.js (100%) rename {ghost => apps}/portal/src/components/pages/MagicLinkPage.test.js (100%) rename {ghost => apps}/portal/src/components/pages/NewsletterSelectionPage.js (100%) rename {ghost => apps}/portal/src/components/pages/OfferPage.js (100%) rename {ghost => apps}/portal/src/components/pages/SigninPage.js (100%) rename {ghost => apps}/portal/src/components/pages/SigninPage.test.js (100%) rename {ghost => apps}/portal/src/components/pages/SignupPage.js (100%) rename {ghost => apps}/portal/src/components/pages/SignupPage.test.js (100%) rename {ghost => apps}/portal/src/components/pages/UnsubscribePage.js (100%) rename {ghost => apps}/portal/src/data-attributes.js (100%) rename {ghost => apps}/portal/src/images/close.png (100%) rename {ghost => apps}/portal/src/images/ghost-logo-small.svg (100%) rename {ghost => apps}/portal/src/images/icons/arrow-left.svg (100%) rename {ghost => apps}/portal/src/images/icons/arrow-right.svg (100%) rename {ghost => apps}/portal/src/images/icons/button-icon-1.svg (100%) rename {ghost => apps}/portal/src/images/icons/button-icon-2.svg (100%) rename {ghost => apps}/portal/src/images/icons/button-icon-3.svg (100%) rename {ghost => apps}/portal/src/images/icons/button-icon-4.svg (100%) rename {ghost => apps}/portal/src/images/icons/button-icon-5.svg (100%) rename {ghost => apps}/portal/src/images/icons/check-circle.svg (100%) rename {ghost => apps}/portal/src/images/icons/checkmark-fill.svg (100%) rename {ghost => apps}/portal/src/images/icons/checkmark.svg (100%) rename {ghost => apps}/portal/src/images/icons/close.svg (100%) rename {ghost => apps}/portal/src/images/icons/email-delivery-failed.svg (100%) rename {ghost => apps}/portal/src/images/icons/envelope.svg (100%) rename {ghost => apps}/portal/src/images/icons/invitation.svg (100%) rename {ghost => apps}/portal/src/images/icons/loader.svg (100%) rename {ghost => apps}/portal/src/images/icons/lock.svg (100%) rename {ghost => apps}/portal/src/images/icons/logout.svg (100%) rename {ghost => apps}/portal/src/images/icons/offer-tag.svg (100%) rename {ghost => apps}/portal/src/images/icons/thumbs-down.svg (100%) rename {ghost => apps}/portal/src/images/icons/thumbs-error.svg (100%) rename {ghost => apps}/portal/src/images/icons/thumbs-up.svg (100%) rename {ghost => apps}/portal/src/images/icons/user.svg (100%) rename {ghost => apps}/portal/src/images/icons/warning-fill.svg (100%) rename {ghost => apps}/portal/src/index.css (100%) rename {ghost => apps}/portal/src/index.js (100%) rename {ghost => apps}/portal/src/logo.svg (100%) rename {ghost => apps}/portal/src/pages.js (100%) rename {ghost => apps}/portal/src/setupTests.js (100%) rename {ghost => apps}/portal/src/tests/SigninFlow.test.js (100%) rename {ghost => apps}/portal/src/tests/SignupFlow.test.js (100%) rename {ghost => apps}/portal/src/tests/UpgradeFlow.test.js (100%) rename {ghost => apps}/portal/src/tests/data-attributes.test.js (100%) rename {ghost => apps}/portal/src/tests/portal-links.test.js (100%) rename {ghost => apps}/portal/src/utils/api.js (100%) rename {ghost => apps}/portal/src/utils/check-mode.js (100%) rename {ghost => apps}/portal/src/utils/contrast-color.js (100%) rename {ghost => apps}/portal/src/utils/copy-to-clipboard.js (100%) rename {ghost => apps}/portal/src/utils/date-time.js (100%) rename {ghost => apps}/portal/src/utils/discount.js (100%) rename {ghost => apps}/portal/src/utils/errors.js (100%) rename {ghost => apps}/portal/src/utils/fixtures-generator.js (100%) rename {ghost => apps}/portal/src/utils/fixtures.js (100%) rename {ghost => apps}/portal/src/utils/form.js (100%) rename {ghost => apps}/portal/src/utils/helpers.js (100%) rename {ghost => apps}/portal/src/utils/helpers.test.js (100%) rename {ghost => apps}/portal/src/utils/notifications.js (100%) rename {ghost => apps}/portal/src/utils/test-fixtures.js (100%) rename {ghost => apps}/portal/src/utils/test-utils.js (100%) rename {ghost => apps}/portal/src/utils/validator.js (100%) rename {ghost => apps}/portal/vite.config.js (95%) diff --git a/.github/dev.js b/.github/dev.js index 74a74644a4..13ce1a9d98 100644 --- a/.github/dev.js +++ b/.github/dev.js @@ -92,7 +92,7 @@ if (DASH_DASH_ARGS.includes('portal') || DASH_DASH_ARGS.includes('all')) { commands.push({ name: 'portal', command: 'yarn dev', - cwd: path.resolve(__dirname, '../ghost/portal'), + cwd: path.resolve(__dirname, '../apps/portal'), prefixColor: 'magenta', env: {} }); diff --git a/.gitignore b/.gitignore index 749bc5e065..3fbc0564b8 100644 --- a/.gitignore +++ b/.gitignore @@ -126,8 +126,8 @@ Caddyfile /ghost/admin/dist # Portal -!/ghost/portal/.env -/ghost/portal/umd +!/apps/portal/.env +/apps/portal/umd # Sodo-Search /apps/sodo-search/public/main.css diff --git a/ghost/portal/.env b/apps/portal/.env similarity index 100% rename from ghost/portal/.env rename to apps/portal/.env diff --git a/ghost/portal/.env.development.local.example b/apps/portal/.env.development.local.example similarity index 100% rename from ghost/portal/.env.development.local.example rename to apps/portal/.env.development.local.example diff --git a/ghost/portal/.eslintignore b/apps/portal/.eslintignore similarity index 100% rename from ghost/portal/.eslintignore rename to apps/portal/.eslintignore diff --git a/ghost/portal/.yarnrc b/apps/portal/.yarnrc similarity index 100% rename from ghost/portal/.yarnrc rename to apps/portal/.yarnrc diff --git a/ghost/portal/README.md b/apps/portal/README.md similarity index 100% rename from ghost/portal/README.md rename to apps/portal/README.md diff --git a/ghost/portal/jsconfig.json b/apps/portal/jsconfig.json similarity index 100% rename from ghost/portal/jsconfig.json rename to apps/portal/jsconfig.json diff --git a/ghost/portal/package.json b/apps/portal/package.json similarity index 100% rename from ghost/portal/package.json rename to apps/portal/package.json diff --git a/ghost/portal/src/App.css b/apps/portal/src/App.css similarity index 100% rename from ghost/portal/src/App.css rename to apps/portal/src/App.css diff --git a/ghost/portal/src/App.js b/apps/portal/src/App.js similarity index 100% rename from ghost/portal/src/App.js rename to apps/portal/src/App.js diff --git a/ghost/portal/src/App.test.js b/apps/portal/src/App.test.js similarity index 100% rename from ghost/portal/src/App.test.js rename to apps/portal/src/App.test.js diff --git a/ghost/portal/src/AppContext.js b/apps/portal/src/AppContext.js similarity index 100% rename from ghost/portal/src/AppContext.js rename to apps/portal/src/AppContext.js diff --git a/ghost/portal/src/actions.js b/apps/portal/src/actions.js similarity index 100% rename from ghost/portal/src/actions.js rename to apps/portal/src/actions.js diff --git a/ghost/portal/src/components/Frame.js b/apps/portal/src/components/Frame.js similarity index 100% rename from ghost/portal/src/components/Frame.js rename to apps/portal/src/components/Frame.js diff --git a/ghost/portal/src/components/Frame.styles.js b/apps/portal/src/components/Frame.styles.js similarity index 100% rename from ghost/portal/src/components/Frame.styles.js rename to apps/portal/src/components/Frame.styles.js diff --git a/ghost/portal/src/components/Global.styles.js b/apps/portal/src/components/Global.styles.js similarity index 100% rename from ghost/portal/src/components/Global.styles.js rename to apps/portal/src/components/Global.styles.js diff --git a/ghost/portal/src/components/Notification.js b/apps/portal/src/components/Notification.js similarity index 100% rename from ghost/portal/src/components/Notification.js rename to apps/portal/src/components/Notification.js diff --git a/ghost/portal/src/components/Notification.styles.js b/apps/portal/src/components/Notification.styles.js similarity index 100% rename from ghost/portal/src/components/Notification.styles.js rename to apps/portal/src/components/Notification.styles.js diff --git a/ghost/portal/src/components/PopupModal.js b/apps/portal/src/components/PopupModal.js similarity index 100% rename from ghost/portal/src/components/PopupModal.js rename to apps/portal/src/components/PopupModal.js diff --git a/ghost/portal/src/components/TriggerButton.js b/apps/portal/src/components/TriggerButton.js similarity index 100% rename from ghost/portal/src/components/TriggerButton.js rename to apps/portal/src/components/TriggerButton.js diff --git a/ghost/portal/src/components/TriggerButton.styles.js b/apps/portal/src/components/TriggerButton.styles.js similarity index 100% rename from ghost/portal/src/components/TriggerButton.styles.js rename to apps/portal/src/components/TriggerButton.styles.js diff --git a/ghost/portal/src/components/TriggerButton.test.js b/apps/portal/src/components/TriggerButton.test.js similarity index 100% rename from ghost/portal/src/components/TriggerButton.test.js rename to apps/portal/src/components/TriggerButton.test.js diff --git a/ghost/portal/src/components/common/ActionButton.js b/apps/portal/src/components/common/ActionButton.js similarity index 100% rename from ghost/portal/src/components/common/ActionButton.js rename to apps/portal/src/components/common/ActionButton.js diff --git a/ghost/portal/src/components/common/ActionButton.test.js b/apps/portal/src/components/common/ActionButton.test.js similarity index 100% rename from ghost/portal/src/components/common/ActionButton.test.js rename to apps/portal/src/components/common/ActionButton.test.js diff --git a/ghost/portal/src/components/common/BackButton.js b/apps/portal/src/components/common/BackButton.js similarity index 100% rename from ghost/portal/src/components/common/BackButton.js rename to apps/portal/src/components/common/BackButton.js diff --git a/ghost/portal/src/components/common/CloseButton.js b/apps/portal/src/components/common/CloseButton.js similarity index 100% rename from ghost/portal/src/components/common/CloseButton.js rename to apps/portal/src/components/common/CloseButton.js diff --git a/ghost/portal/src/components/common/InputField.js b/apps/portal/src/components/common/InputField.js similarity index 100% rename from ghost/portal/src/components/common/InputField.js rename to apps/portal/src/components/common/InputField.js diff --git a/ghost/portal/src/components/common/InputField.test.js b/apps/portal/src/components/common/InputField.test.js similarity index 100% rename from ghost/portal/src/components/common/InputField.test.js rename to apps/portal/src/components/common/InputField.test.js diff --git a/ghost/portal/src/components/common/InputForm.js b/apps/portal/src/components/common/InputForm.js similarity index 100% rename from ghost/portal/src/components/common/InputForm.js rename to apps/portal/src/components/common/InputForm.js diff --git a/ghost/portal/src/components/common/MemberGravatar.js b/apps/portal/src/components/common/MemberGravatar.js similarity index 100% rename from ghost/portal/src/components/common/MemberGravatar.js rename to apps/portal/src/components/common/MemberGravatar.js diff --git a/ghost/portal/src/components/common/MemberGravatar.test.js b/apps/portal/src/components/common/MemberGravatar.test.js similarity index 100% rename from ghost/portal/src/components/common/MemberGravatar.test.js rename to apps/portal/src/components/common/MemberGravatar.test.js diff --git a/ghost/portal/src/components/common/NewsletterManagement.js b/apps/portal/src/components/common/NewsletterManagement.js similarity index 100% rename from ghost/portal/src/components/common/NewsletterManagement.js rename to apps/portal/src/components/common/NewsletterManagement.js diff --git a/ghost/portal/src/components/common/PlansSection.js b/apps/portal/src/components/common/PlansSection.js similarity index 100% rename from ghost/portal/src/components/common/PlansSection.js rename to apps/portal/src/components/common/PlansSection.js diff --git a/ghost/portal/src/components/common/PopupNotification.js b/apps/portal/src/components/common/PopupNotification.js similarity index 100% rename from ghost/portal/src/components/common/PopupNotification.js rename to apps/portal/src/components/common/PopupNotification.js diff --git a/ghost/portal/src/components/common/PoweredBy.js b/apps/portal/src/components/common/PoweredBy.js similarity index 100% rename from ghost/portal/src/components/common/PoweredBy.js rename to apps/portal/src/components/common/PoweredBy.js diff --git a/ghost/portal/src/components/common/ProductsSection.js b/apps/portal/src/components/common/ProductsSection.js similarity index 100% rename from ghost/portal/src/components/common/ProductsSection.js rename to apps/portal/src/components/common/ProductsSection.js diff --git a/ghost/portal/src/components/common/SiteTitleBackButton.js b/apps/portal/src/components/common/SiteTitleBackButton.js similarity index 100% rename from ghost/portal/src/components/common/SiteTitleBackButton.js rename to apps/portal/src/components/common/SiteTitleBackButton.js diff --git a/ghost/portal/src/components/common/Switch.js b/apps/portal/src/components/common/Switch.js similarity index 100% rename from ghost/portal/src/components/common/Switch.js rename to apps/portal/src/components/common/Switch.js diff --git a/ghost/portal/src/components/common/Switch.test.js b/apps/portal/src/components/common/Switch.test.js similarity index 100% rename from ghost/portal/src/components/common/Switch.test.js rename to apps/portal/src/components/common/Switch.test.js diff --git a/ghost/portal/src/components/pages/AccountEmailPage.js b/apps/portal/src/components/pages/AccountEmailPage.js similarity index 100% rename from ghost/portal/src/components/pages/AccountEmailPage.js rename to apps/portal/src/components/pages/AccountEmailPage.js diff --git a/ghost/portal/src/components/pages/AccountHomePage/AccountHomePage.css b/apps/portal/src/components/pages/AccountHomePage/AccountHomePage.css similarity index 100% rename from ghost/portal/src/components/pages/AccountHomePage/AccountHomePage.css rename to apps/portal/src/components/pages/AccountHomePage/AccountHomePage.css diff --git a/ghost/portal/src/components/pages/AccountHomePage/AccountHomePage.js b/apps/portal/src/components/pages/AccountHomePage/AccountHomePage.js similarity index 100% rename from ghost/portal/src/components/pages/AccountHomePage/AccountHomePage.js rename to apps/portal/src/components/pages/AccountHomePage/AccountHomePage.js diff --git a/ghost/portal/src/components/pages/AccountHomePage/AccountHomePage.test.js b/apps/portal/src/components/pages/AccountHomePage/AccountHomePage.test.js similarity index 100% rename from ghost/portal/src/components/pages/AccountHomePage/AccountHomePage.test.js rename to apps/portal/src/components/pages/AccountHomePage/AccountHomePage.test.js diff --git a/ghost/portal/src/components/pages/AccountHomePage/components/AccountActions.js b/apps/portal/src/components/pages/AccountHomePage/components/AccountActions.js similarity index 100% rename from ghost/portal/src/components/pages/AccountHomePage/components/AccountActions.js rename to apps/portal/src/components/pages/AccountHomePage/components/AccountActions.js diff --git a/ghost/portal/src/components/pages/AccountHomePage/components/AccountFooter.js b/apps/portal/src/components/pages/AccountHomePage/components/AccountFooter.js similarity index 100% rename from ghost/portal/src/components/pages/AccountHomePage/components/AccountFooter.js rename to apps/portal/src/components/pages/AccountHomePage/components/AccountFooter.js diff --git a/ghost/portal/src/components/pages/AccountHomePage/components/AccountMain.js b/apps/portal/src/components/pages/AccountHomePage/components/AccountMain.js similarity index 100% rename from ghost/portal/src/components/pages/AccountHomePage/components/AccountMain.js rename to apps/portal/src/components/pages/AccountHomePage/components/AccountMain.js diff --git a/ghost/portal/src/components/pages/AccountHomePage/components/AccountWelcome.js b/apps/portal/src/components/pages/AccountHomePage/components/AccountWelcome.js similarity index 100% rename from ghost/portal/src/components/pages/AccountHomePage/components/AccountWelcome.js rename to apps/portal/src/components/pages/AccountHomePage/components/AccountWelcome.js diff --git a/ghost/portal/src/components/pages/AccountHomePage/components/ContinueSubscriptionButton.js b/apps/portal/src/components/pages/AccountHomePage/components/ContinueSubscriptionButton.js similarity index 100% rename from ghost/portal/src/components/pages/AccountHomePage/components/ContinueSubscriptionButton.js rename to apps/portal/src/components/pages/AccountHomePage/components/ContinueSubscriptionButton.js diff --git a/ghost/portal/src/components/pages/AccountHomePage/components/EmailNewsletterAction.js b/apps/portal/src/components/pages/AccountHomePage/components/EmailNewsletterAction.js similarity index 100% rename from ghost/portal/src/components/pages/AccountHomePage/components/EmailNewsletterAction.js rename to apps/portal/src/components/pages/AccountHomePage/components/EmailNewsletterAction.js diff --git a/ghost/portal/src/components/pages/AccountHomePage/components/EmailPreferencesAction.js b/apps/portal/src/components/pages/AccountHomePage/components/EmailPreferencesAction.js similarity index 100% rename from ghost/portal/src/components/pages/AccountHomePage/components/EmailPreferencesAction.js rename to apps/portal/src/components/pages/AccountHomePage/components/EmailPreferencesAction.js diff --git a/ghost/portal/src/components/pages/AccountHomePage/components/PaidAccountActions.js b/apps/portal/src/components/pages/AccountHomePage/components/PaidAccountActions.js similarity index 100% rename from ghost/portal/src/components/pages/AccountHomePage/components/PaidAccountActions.js rename to apps/portal/src/components/pages/AccountHomePage/components/PaidAccountActions.js diff --git a/ghost/portal/src/components/pages/AccountHomePage/components/SubscribeButton.js b/apps/portal/src/components/pages/AccountHomePage/components/SubscribeButton.js similarity index 100% rename from ghost/portal/src/components/pages/AccountHomePage/components/SubscribeButton.js rename to apps/portal/src/components/pages/AccountHomePage/components/SubscribeButton.js diff --git a/ghost/portal/src/components/pages/AccountHomePage/components/UserHeader.js b/apps/portal/src/components/pages/AccountHomePage/components/UserHeader.js similarity index 100% rename from ghost/portal/src/components/pages/AccountHomePage/components/UserHeader.js rename to apps/portal/src/components/pages/AccountHomePage/components/UserHeader.js diff --git a/ghost/portal/src/components/pages/AccountPlanPage.js b/apps/portal/src/components/pages/AccountPlanPage.js similarity index 100% rename from ghost/portal/src/components/pages/AccountPlanPage.js rename to apps/portal/src/components/pages/AccountPlanPage.js diff --git a/ghost/portal/src/components/pages/AccountPlanPage.test.js b/apps/portal/src/components/pages/AccountPlanPage.test.js similarity index 100% rename from ghost/portal/src/components/pages/AccountPlanPage.test.js rename to apps/portal/src/components/pages/AccountPlanPage.test.js diff --git a/ghost/portal/src/components/pages/AccountProfilePage.js b/apps/portal/src/components/pages/AccountProfilePage.js similarity index 100% rename from ghost/portal/src/components/pages/AccountProfilePage.js rename to apps/portal/src/components/pages/AccountProfilePage.js diff --git a/ghost/portal/src/components/pages/AccountProfilePage.test.js b/apps/portal/src/components/pages/AccountProfilePage.test.js similarity index 100% rename from ghost/portal/src/components/pages/AccountProfilePage.test.js rename to apps/portal/src/components/pages/AccountProfilePage.test.js diff --git a/ghost/portal/src/components/pages/EmailReceivingFAQ.css b/apps/portal/src/components/pages/EmailReceivingFAQ.css similarity index 100% rename from ghost/portal/src/components/pages/EmailReceivingFAQ.css rename to apps/portal/src/components/pages/EmailReceivingFAQ.css diff --git a/ghost/portal/src/components/pages/EmailReceivingFAQ.js b/apps/portal/src/components/pages/EmailReceivingFAQ.js similarity index 100% rename from ghost/portal/src/components/pages/EmailReceivingFAQ.js rename to apps/portal/src/components/pages/EmailReceivingFAQ.js diff --git a/ghost/portal/src/components/pages/EmailSuppressedPage.css b/apps/portal/src/components/pages/EmailSuppressedPage.css similarity index 100% rename from ghost/portal/src/components/pages/EmailSuppressedPage.css rename to apps/portal/src/components/pages/EmailSuppressedPage.css diff --git a/ghost/portal/src/components/pages/EmailSuppressedPage.js b/apps/portal/src/components/pages/EmailSuppressedPage.js similarity index 100% rename from ghost/portal/src/components/pages/EmailSuppressedPage.js rename to apps/portal/src/components/pages/EmailSuppressedPage.js diff --git a/ghost/portal/src/components/pages/EmailSuppressedPage.test.js b/apps/portal/src/components/pages/EmailSuppressedPage.test.js similarity index 100% rename from ghost/portal/src/components/pages/EmailSuppressedPage.test.js rename to apps/portal/src/components/pages/EmailSuppressedPage.test.js diff --git a/ghost/portal/src/components/pages/EmailSuppressionFAQ.css b/apps/portal/src/components/pages/EmailSuppressionFAQ.css similarity index 100% rename from ghost/portal/src/components/pages/EmailSuppressionFAQ.css rename to apps/portal/src/components/pages/EmailSuppressionFAQ.css diff --git a/ghost/portal/src/components/pages/EmailSuppressionFAQ.js b/apps/portal/src/components/pages/EmailSuppressionFAQ.js similarity index 100% rename from ghost/portal/src/components/pages/EmailSuppressionFAQ.js rename to apps/portal/src/components/pages/EmailSuppressionFAQ.js diff --git a/ghost/portal/src/components/pages/FeedbackPage.js b/apps/portal/src/components/pages/FeedbackPage.js similarity index 100% rename from ghost/portal/src/components/pages/FeedbackPage.js rename to apps/portal/src/components/pages/FeedbackPage.js diff --git a/ghost/portal/src/components/pages/LoadingPage.js b/apps/portal/src/components/pages/LoadingPage.js similarity index 100% rename from ghost/portal/src/components/pages/LoadingPage.js rename to apps/portal/src/components/pages/LoadingPage.js diff --git a/ghost/portal/src/components/pages/MagicLinkPage.js b/apps/portal/src/components/pages/MagicLinkPage.js similarity index 100% rename from ghost/portal/src/components/pages/MagicLinkPage.js rename to apps/portal/src/components/pages/MagicLinkPage.js diff --git a/ghost/portal/src/components/pages/MagicLinkPage.test.js b/apps/portal/src/components/pages/MagicLinkPage.test.js similarity index 100% rename from ghost/portal/src/components/pages/MagicLinkPage.test.js rename to apps/portal/src/components/pages/MagicLinkPage.test.js diff --git a/ghost/portal/src/components/pages/NewsletterSelectionPage.js b/apps/portal/src/components/pages/NewsletterSelectionPage.js similarity index 100% rename from ghost/portal/src/components/pages/NewsletterSelectionPage.js rename to apps/portal/src/components/pages/NewsletterSelectionPage.js diff --git a/ghost/portal/src/components/pages/OfferPage.js b/apps/portal/src/components/pages/OfferPage.js similarity index 100% rename from ghost/portal/src/components/pages/OfferPage.js rename to apps/portal/src/components/pages/OfferPage.js diff --git a/ghost/portal/src/components/pages/SigninPage.js b/apps/portal/src/components/pages/SigninPage.js similarity index 100% rename from ghost/portal/src/components/pages/SigninPage.js rename to apps/portal/src/components/pages/SigninPage.js diff --git a/ghost/portal/src/components/pages/SigninPage.test.js b/apps/portal/src/components/pages/SigninPage.test.js similarity index 100% rename from ghost/portal/src/components/pages/SigninPage.test.js rename to apps/portal/src/components/pages/SigninPage.test.js diff --git a/ghost/portal/src/components/pages/SignupPage.js b/apps/portal/src/components/pages/SignupPage.js similarity index 100% rename from ghost/portal/src/components/pages/SignupPage.js rename to apps/portal/src/components/pages/SignupPage.js diff --git a/ghost/portal/src/components/pages/SignupPage.test.js b/apps/portal/src/components/pages/SignupPage.test.js similarity index 100% rename from ghost/portal/src/components/pages/SignupPage.test.js rename to apps/portal/src/components/pages/SignupPage.test.js diff --git a/ghost/portal/src/components/pages/UnsubscribePage.js b/apps/portal/src/components/pages/UnsubscribePage.js similarity index 100% rename from ghost/portal/src/components/pages/UnsubscribePage.js rename to apps/portal/src/components/pages/UnsubscribePage.js diff --git a/ghost/portal/src/data-attributes.js b/apps/portal/src/data-attributes.js similarity index 100% rename from ghost/portal/src/data-attributes.js rename to apps/portal/src/data-attributes.js diff --git a/ghost/portal/src/images/close.png b/apps/portal/src/images/close.png similarity index 100% rename from ghost/portal/src/images/close.png rename to apps/portal/src/images/close.png diff --git a/ghost/portal/src/images/ghost-logo-small.svg b/apps/portal/src/images/ghost-logo-small.svg similarity index 100% rename from ghost/portal/src/images/ghost-logo-small.svg rename to apps/portal/src/images/ghost-logo-small.svg diff --git a/ghost/portal/src/images/icons/arrow-left.svg b/apps/portal/src/images/icons/arrow-left.svg similarity index 100% rename from ghost/portal/src/images/icons/arrow-left.svg rename to apps/portal/src/images/icons/arrow-left.svg diff --git a/ghost/portal/src/images/icons/arrow-right.svg b/apps/portal/src/images/icons/arrow-right.svg similarity index 100% rename from ghost/portal/src/images/icons/arrow-right.svg rename to apps/portal/src/images/icons/arrow-right.svg diff --git a/ghost/portal/src/images/icons/button-icon-1.svg b/apps/portal/src/images/icons/button-icon-1.svg similarity index 100% rename from ghost/portal/src/images/icons/button-icon-1.svg rename to apps/portal/src/images/icons/button-icon-1.svg diff --git a/ghost/portal/src/images/icons/button-icon-2.svg b/apps/portal/src/images/icons/button-icon-2.svg similarity index 100% rename from ghost/portal/src/images/icons/button-icon-2.svg rename to apps/portal/src/images/icons/button-icon-2.svg diff --git a/ghost/portal/src/images/icons/button-icon-3.svg b/apps/portal/src/images/icons/button-icon-3.svg similarity index 100% rename from ghost/portal/src/images/icons/button-icon-3.svg rename to apps/portal/src/images/icons/button-icon-3.svg diff --git a/ghost/portal/src/images/icons/button-icon-4.svg b/apps/portal/src/images/icons/button-icon-4.svg similarity index 100% rename from ghost/portal/src/images/icons/button-icon-4.svg rename to apps/portal/src/images/icons/button-icon-4.svg diff --git a/ghost/portal/src/images/icons/button-icon-5.svg b/apps/portal/src/images/icons/button-icon-5.svg similarity index 100% rename from ghost/portal/src/images/icons/button-icon-5.svg rename to apps/portal/src/images/icons/button-icon-5.svg diff --git a/ghost/portal/src/images/icons/check-circle.svg b/apps/portal/src/images/icons/check-circle.svg similarity index 100% rename from ghost/portal/src/images/icons/check-circle.svg rename to apps/portal/src/images/icons/check-circle.svg diff --git a/ghost/portal/src/images/icons/checkmark-fill.svg b/apps/portal/src/images/icons/checkmark-fill.svg similarity index 100% rename from ghost/portal/src/images/icons/checkmark-fill.svg rename to apps/portal/src/images/icons/checkmark-fill.svg diff --git a/ghost/portal/src/images/icons/checkmark.svg b/apps/portal/src/images/icons/checkmark.svg similarity index 100% rename from ghost/portal/src/images/icons/checkmark.svg rename to apps/portal/src/images/icons/checkmark.svg diff --git a/ghost/portal/src/images/icons/close.svg b/apps/portal/src/images/icons/close.svg similarity index 100% rename from ghost/portal/src/images/icons/close.svg rename to apps/portal/src/images/icons/close.svg diff --git a/ghost/portal/src/images/icons/email-delivery-failed.svg b/apps/portal/src/images/icons/email-delivery-failed.svg similarity index 100% rename from ghost/portal/src/images/icons/email-delivery-failed.svg rename to apps/portal/src/images/icons/email-delivery-failed.svg diff --git a/ghost/portal/src/images/icons/envelope.svg b/apps/portal/src/images/icons/envelope.svg similarity index 100% rename from ghost/portal/src/images/icons/envelope.svg rename to apps/portal/src/images/icons/envelope.svg diff --git a/ghost/portal/src/images/icons/invitation.svg b/apps/portal/src/images/icons/invitation.svg similarity index 100% rename from ghost/portal/src/images/icons/invitation.svg rename to apps/portal/src/images/icons/invitation.svg diff --git a/ghost/portal/src/images/icons/loader.svg b/apps/portal/src/images/icons/loader.svg similarity index 100% rename from ghost/portal/src/images/icons/loader.svg rename to apps/portal/src/images/icons/loader.svg diff --git a/ghost/portal/src/images/icons/lock.svg b/apps/portal/src/images/icons/lock.svg similarity index 100% rename from ghost/portal/src/images/icons/lock.svg rename to apps/portal/src/images/icons/lock.svg diff --git a/ghost/portal/src/images/icons/logout.svg b/apps/portal/src/images/icons/logout.svg similarity index 100% rename from ghost/portal/src/images/icons/logout.svg rename to apps/portal/src/images/icons/logout.svg diff --git a/ghost/portal/src/images/icons/offer-tag.svg b/apps/portal/src/images/icons/offer-tag.svg similarity index 100% rename from ghost/portal/src/images/icons/offer-tag.svg rename to apps/portal/src/images/icons/offer-tag.svg diff --git a/ghost/portal/src/images/icons/thumbs-down.svg b/apps/portal/src/images/icons/thumbs-down.svg similarity index 100% rename from ghost/portal/src/images/icons/thumbs-down.svg rename to apps/portal/src/images/icons/thumbs-down.svg diff --git a/ghost/portal/src/images/icons/thumbs-error.svg b/apps/portal/src/images/icons/thumbs-error.svg similarity index 100% rename from ghost/portal/src/images/icons/thumbs-error.svg rename to apps/portal/src/images/icons/thumbs-error.svg diff --git a/ghost/portal/src/images/icons/thumbs-up.svg b/apps/portal/src/images/icons/thumbs-up.svg similarity index 100% rename from ghost/portal/src/images/icons/thumbs-up.svg rename to apps/portal/src/images/icons/thumbs-up.svg diff --git a/ghost/portal/src/images/icons/user.svg b/apps/portal/src/images/icons/user.svg similarity index 100% rename from ghost/portal/src/images/icons/user.svg rename to apps/portal/src/images/icons/user.svg diff --git a/ghost/portal/src/images/icons/warning-fill.svg b/apps/portal/src/images/icons/warning-fill.svg similarity index 100% rename from ghost/portal/src/images/icons/warning-fill.svg rename to apps/portal/src/images/icons/warning-fill.svg diff --git a/ghost/portal/src/index.css b/apps/portal/src/index.css similarity index 100% rename from ghost/portal/src/index.css rename to apps/portal/src/index.css diff --git a/ghost/portal/src/index.js b/apps/portal/src/index.js similarity index 100% rename from ghost/portal/src/index.js rename to apps/portal/src/index.js diff --git a/ghost/portal/src/logo.svg b/apps/portal/src/logo.svg similarity index 100% rename from ghost/portal/src/logo.svg rename to apps/portal/src/logo.svg diff --git a/ghost/portal/src/pages.js b/apps/portal/src/pages.js similarity index 100% rename from ghost/portal/src/pages.js rename to apps/portal/src/pages.js diff --git a/ghost/portal/src/setupTests.js b/apps/portal/src/setupTests.js similarity index 100% rename from ghost/portal/src/setupTests.js rename to apps/portal/src/setupTests.js diff --git a/ghost/portal/src/tests/SigninFlow.test.js b/apps/portal/src/tests/SigninFlow.test.js similarity index 100% rename from ghost/portal/src/tests/SigninFlow.test.js rename to apps/portal/src/tests/SigninFlow.test.js diff --git a/ghost/portal/src/tests/SignupFlow.test.js b/apps/portal/src/tests/SignupFlow.test.js similarity index 100% rename from ghost/portal/src/tests/SignupFlow.test.js rename to apps/portal/src/tests/SignupFlow.test.js diff --git a/ghost/portal/src/tests/UpgradeFlow.test.js b/apps/portal/src/tests/UpgradeFlow.test.js similarity index 100% rename from ghost/portal/src/tests/UpgradeFlow.test.js rename to apps/portal/src/tests/UpgradeFlow.test.js diff --git a/ghost/portal/src/tests/data-attributes.test.js b/apps/portal/src/tests/data-attributes.test.js similarity index 100% rename from ghost/portal/src/tests/data-attributes.test.js rename to apps/portal/src/tests/data-attributes.test.js diff --git a/ghost/portal/src/tests/portal-links.test.js b/apps/portal/src/tests/portal-links.test.js similarity index 100% rename from ghost/portal/src/tests/portal-links.test.js rename to apps/portal/src/tests/portal-links.test.js diff --git a/ghost/portal/src/utils/api.js b/apps/portal/src/utils/api.js similarity index 100% rename from ghost/portal/src/utils/api.js rename to apps/portal/src/utils/api.js diff --git a/ghost/portal/src/utils/check-mode.js b/apps/portal/src/utils/check-mode.js similarity index 100% rename from ghost/portal/src/utils/check-mode.js rename to apps/portal/src/utils/check-mode.js diff --git a/ghost/portal/src/utils/contrast-color.js b/apps/portal/src/utils/contrast-color.js similarity index 100% rename from ghost/portal/src/utils/contrast-color.js rename to apps/portal/src/utils/contrast-color.js diff --git a/ghost/portal/src/utils/copy-to-clipboard.js b/apps/portal/src/utils/copy-to-clipboard.js similarity index 100% rename from ghost/portal/src/utils/copy-to-clipboard.js rename to apps/portal/src/utils/copy-to-clipboard.js diff --git a/ghost/portal/src/utils/date-time.js b/apps/portal/src/utils/date-time.js similarity index 100% rename from ghost/portal/src/utils/date-time.js rename to apps/portal/src/utils/date-time.js diff --git a/ghost/portal/src/utils/discount.js b/apps/portal/src/utils/discount.js similarity index 100% rename from ghost/portal/src/utils/discount.js rename to apps/portal/src/utils/discount.js diff --git a/ghost/portal/src/utils/errors.js b/apps/portal/src/utils/errors.js similarity index 100% rename from ghost/portal/src/utils/errors.js rename to apps/portal/src/utils/errors.js diff --git a/ghost/portal/src/utils/fixtures-generator.js b/apps/portal/src/utils/fixtures-generator.js similarity index 100% rename from ghost/portal/src/utils/fixtures-generator.js rename to apps/portal/src/utils/fixtures-generator.js diff --git a/ghost/portal/src/utils/fixtures.js b/apps/portal/src/utils/fixtures.js similarity index 100% rename from ghost/portal/src/utils/fixtures.js rename to apps/portal/src/utils/fixtures.js diff --git a/ghost/portal/src/utils/form.js b/apps/portal/src/utils/form.js similarity index 100% rename from ghost/portal/src/utils/form.js rename to apps/portal/src/utils/form.js diff --git a/ghost/portal/src/utils/helpers.js b/apps/portal/src/utils/helpers.js similarity index 100% rename from ghost/portal/src/utils/helpers.js rename to apps/portal/src/utils/helpers.js diff --git a/ghost/portal/src/utils/helpers.test.js b/apps/portal/src/utils/helpers.test.js similarity index 100% rename from ghost/portal/src/utils/helpers.test.js rename to apps/portal/src/utils/helpers.test.js diff --git a/ghost/portal/src/utils/notifications.js b/apps/portal/src/utils/notifications.js similarity index 100% rename from ghost/portal/src/utils/notifications.js rename to apps/portal/src/utils/notifications.js diff --git a/ghost/portal/src/utils/test-fixtures.js b/apps/portal/src/utils/test-fixtures.js similarity index 100% rename from ghost/portal/src/utils/test-fixtures.js rename to apps/portal/src/utils/test-fixtures.js diff --git a/ghost/portal/src/utils/test-utils.js b/apps/portal/src/utils/test-utils.js similarity index 100% rename from ghost/portal/src/utils/test-utils.js rename to apps/portal/src/utils/test-utils.js diff --git a/ghost/portal/src/utils/validator.js b/apps/portal/src/utils/validator.js similarity index 100% rename from ghost/portal/src/utils/validator.js rename to apps/portal/src/utils/validator.js diff --git a/ghost/portal/vite.config.js b/apps/portal/vite.config.js similarity index 95% rename from ghost/portal/vite.config.js rename to apps/portal/vite.config.js index eb28e3fcc4..82d7ec4005 100644 --- a/ghost/portal/vite.config.js +++ b/apps/portal/vite.config.js @@ -69,8 +69,8 @@ export default defineConfig((config) => { }, commonjsOptions: { include: [/ghost/, /node_modules/], - dynamicRequireRoot: '../', - dynamicRequireTargets: SUPPORTED_LOCALES.map(locale => `../i18n/locales/${locale}/portal.json`) + dynamicRequireRoot: '../../', + dynamicRequireTargets: SUPPORTED_LOCALES.map(locale => `../../ghost/i18n/locales/${locale}/portal.json`) } }, test: {