From e83afbda2c53db8ceca839ab3b1f625e268c0f15 Mon Sep 17 00:00:00 2001 From: alexsparkes Date: Wed, 29 Oct 2025 22:56:23 +0000 Subject: [PATCH] Refactor MainModal and Tab components to integrate Library and Discover tabs --- src/components/Elements/MainModal/Main.jsx | 28 ++++------ .../Elements/MainModal/backend/Tab.jsx | 6 +-- .../Elements/MainModal/backend/Tabs.jsx | 34 ++++++------ .../MainModal/components/ModalTopBar.jsx | 40 ++++++++++++++ .../Elements/MainModal/constants/tabConfig.js | 37 ++++++------- .../Elements/MainModal/scss/index.scss | 1 + .../MainModal/scss/modules/_sidebar.scss | 8 --- .../MainModal/scss/modules/_topBar.scss | 53 +++++++++++++++++++ .../views/{Marketplace.jsx => Discover.jsx} | 6 +-- .../misc/views/{Addons.jsx => Library.jsx} | 6 +-- src/features/misc/views/Settings.jsx | 2 +- src/i18n/locales/ar.json | 4 +- src/i18n/locales/az.json | 4 +- src/i18n/locales/azb.json | 4 +- src/i18n/locales/bn.json | 4 +- src/i18n/locales/de_DE.json | 4 +- src/i18n/locales/en_GB.json | 4 +- src/i18n/locales/en_US.json | 4 +- src/i18n/locales/es.json | 4 +- src/i18n/locales/es_419.json | 4 +- src/i18n/locales/et.json | 4 +- src/i18n/locales/fa.json | 4 +- src/i18n/locales/fr.json | 4 +- src/i18n/locales/id_ID.json | 4 +- src/i18n/locales/lt.json | 4 +- src/i18n/locales/lv.json | 4 +- src/i18n/locales/nl.json | 4 +- src/i18n/locales/no.json | 4 +- src/i18n/locales/pt.json | 4 +- src/i18n/locales/pt_BR.json | 4 +- src/i18n/locales/ru.json | 4 +- src/i18n/locales/sl.json | 4 +- src/i18n/locales/ta.json | 4 +- src/i18n/locales/tr_TR.json | 4 +- src/i18n/locales/uk.json | 4 +- src/i18n/locales/zh_CN.json | 4 +- src/i18n/locales/zh_Hant.json | 4 +- 37 files changed, 199 insertions(+), 126 deletions(-) create mode 100644 src/components/Elements/MainModal/components/ModalTopBar.jsx create mode 100644 src/components/Elements/MainModal/scss/modules/_topBar.scss rename src/features/misc/views/{Marketplace.jsx => Discover.jsx} (86%) rename src/features/misc/views/{Addons.jsx => Library.jsx} (76%) diff --git a/src/components/Elements/MainModal/Main.jsx b/src/components/Elements/MainModal/Main.jsx index cb38811c..5489d1e5 100644 --- a/src/components/Elements/MainModal/Main.jsx +++ b/src/components/Elements/MainModal/Main.jsx @@ -1,22 +1,20 @@ -import variables from 'config/variables'; import { Suspense, lazy, useState, memo, useEffect } from 'react'; -import { MdClose } from 'react-icons/md'; import './scss/index.scss'; -import { Tooltip } from 'components/Elements'; import ModalLoader from './components/ModalLoader'; +import ModalTopBar from './components/ModalTopBar'; import { TAB_TYPES } from './constants/tabConfig'; import { updateHash, onHashChange } from 'utils/deepLinking'; const Settings = lazy(() => import('../../../features/misc/views/Settings')); -const Addons = lazy(() => import('../../../features/misc/views/Addons')); -const Marketplace = lazy(() => import('../../../features/misc/views/Marketplace')); +const Library = lazy(() => import('../../../features/misc/views/Library')); +const Discover = lazy(() => import('../../../features/misc/views/Discover')); // Map tab types to their corresponding components const TAB_COMPONENTS = { [TAB_TYPES.SETTINGS]: Settings, - [TAB_TYPES.ADDONS]: Addons, - [TAB_TYPES.MARKETPLACE]: Marketplace, + [TAB_TYPES.LIBRARY]: Library, + [TAB_TYPES.DISCOVER]: Discover, }; function MainModal({ modalClose, deepLinkData }) { @@ -45,17 +43,13 @@ function MainModal({ modalClose, deepLinkData }) { return (
- - - - - + }> - +
); diff --git a/src/components/Elements/MainModal/backend/Tab.jsx b/src/components/Elements/MainModal/backend/Tab.jsx index 8108c95c..fddaeffe 100644 --- a/src/components/Elements/MainModal/backend/Tab.jsx +++ b/src/components/Elements/MainModal/backend/Tab.jsx @@ -1,6 +1,6 @@ import variables from 'config/variables'; import { memo, useState, useEffect } from 'react'; -import { getIconComponent, DIVIDER_LABELS, MUE_TITLE_LABELS } from '../constants/tabConfig'; +import { getIconComponent, DIVIDER_LABELS } from '../constants/tabConfig'; function Tab({ label, currentTab, onClick, navbarTab }) { const [isExperimental, setIsExperimental] = useState(true); @@ -15,9 +15,6 @@ function Tab({ label, currentTab, onClick, navbarTab }) { // Determine if this label should have a divider after it const hasDivider = DIVIDER_LABELS.some((key) => variables.getMessage(key) === label); - // Determine if this label should have "Mue" title before it - const hasMueTitle = MUE_TITLE_LABELS.some((key) => variables.getMessage(key) === label); - // Build className const baseClass = navbarTab ? 'navbar-item' : 'tab-list-item'; const activeClass = navbarTab ? 'navbar-item-active' : 'tab-list-active'; @@ -32,7 +29,6 @@ function Tab({ label, currentTab, onClick, navbarTab }) { return ( <> - {hasMueTitle && Mue} diff --git a/src/components/Elements/MainModal/backend/Tabs.jsx b/src/components/Elements/MainModal/backend/Tabs.jsx index a80a4190..15fd3633 100644 --- a/src/components/Elements/MainModal/backend/Tabs.jsx +++ b/src/components/Elements/MainModal/backend/Tabs.jsx @@ -1,11 +1,11 @@ import variables from 'config/variables'; import { useState } from 'react'; import Tab from './Tab'; -import ModalNavbar from '../components/ModalNavbar'; import ReminderInfo from '../components/ReminderInfo'; import ErrorBoundary from '../../../../features/misc/modals/ErrorBoundary'; +import { TAB_TYPES } from '../constants/tabConfig'; -const Tabs = ({ children, changeTab, current, navbar = false }) => { +const Tabs = ({ children, navbar = false, currentTab: activeTab }) => { const [currentTab, setCurrentTab] = useState(children[0]?.props.label); const [currentName, setCurrentName] = useState(children[0]?.props.name); const [showReminder, setShowReminder] = useState(localStorage.getItem('showReminder') === 'true'); @@ -24,22 +24,26 @@ const Tabs = ({ children, changeTab, current, navbar = false }) => { setShowReminder(false); }; + // Only show sidebar for Settings tab + const showSidebar = activeTab === TAB_TYPES.SETTINGS; + return (
-
- {children.map((tab, index) => ( - handleTabClick(nextTab, tab.props.name)} - navbarTab={navbar} - /> - ))} - -
+ {showSidebar && ( +
+ {children.map((tab, index) => ( + handleTabClick(nextTab, tab.props.name)} + navbarTab={navbar} + /> + ))} + +
+ )}
- {children.map((tab, index) => { if (tab.props.label !== currentTab) { return null; diff --git a/src/components/Elements/MainModal/components/ModalTopBar.jsx b/src/components/Elements/MainModal/components/ModalTopBar.jsx new file mode 100644 index 00000000..856cd26a --- /dev/null +++ b/src/components/Elements/MainModal/components/ModalTopBar.jsx @@ -0,0 +1,40 @@ +import variables from 'config/variables'; +import { MdClose } from 'react-icons/md'; +import { Tooltip, Button } from 'components/Elements'; +import { NAVBAR_BUTTONS } from '../constants/tabConfig'; + +function ModalTopBar({ currentTab, onTabChange, onClose }) { + return ( +
+
+ Mue +
+
+
+ {NAVBAR_BUTTONS.map(({ tab, icon: Icon, messageKey }) => ( +
+ + + + + +
+
+ ); +} + +export default ModalTopBar; diff --git a/src/components/Elements/MainModal/constants/tabConfig.js b/src/components/Elements/MainModal/constants/tabConfig.js index 5cff9d9f..1a5768c5 100644 --- a/src/components/Elements/MainModal/constants/tabConfig.js +++ b/src/components/Elements/MainModal/constants/tabConfig.js @@ -28,15 +28,15 @@ import { // Tab type constants export const TAB_TYPES = { SETTINGS: 'settings', - ADDONS: 'addons', - MARKETPLACE: 'marketplace', + LIBRARY: 'library', + DISCOVER: 'discover', }; // Icon component mapping - using component references instead of elements export const ICON_COMPONENTS = { SETTINGS: MdSettings, - ADDONS: MdWidgets, - MARKETPLACE: MdShoppingBasket, + LIBRARY: MdWidgets, + DISCOVER: MdShoppingBasket, NAVBAR: MdMenu, GREETING: MdEmojiPeople, TIME: MdAccessAlarm, @@ -64,8 +64,8 @@ export const ICON_COMPONENTS = { export const MESSAGE_KEYS = { OVERVIEW: 'modals.main.marketplace.product.overview', SETTINGS: 'modals.main.navbar.settings', - ADDONS: 'modals.main.navbar.addons', - MARKETPLACE: 'modals.main.navbar.marketplace', + LIBRARY: 'modals.main.navbar.library', + DISCOVER: 'modals.main.navbar.discover', NAVBAR: 'modals.main.settings.sections.appearance.navbar.title', GREETING: 'modals.main.settings.sections.greeting.title', TIME: 'modals.main.settings.sections.time.title', @@ -98,8 +98,8 @@ export const getIconComponent = (label, variables) => { const iconMap = { [variables.getMessage(MESSAGE_KEYS.OVERVIEW)]: ICON_COMPONENTS.OVERVIEW, [variables.getMessage(MESSAGE_KEYS.SETTINGS)]: ICON_COMPONENTS.SETTINGS, - [variables.getMessage(MESSAGE_KEYS.ADDONS)]: ICON_COMPONENTS.ADDONS, - [variables.getMessage(MESSAGE_KEYS.MARKETPLACE)]: ICON_COMPONENTS.MARKETPLACE, + [variables.getMessage(MESSAGE_KEYS.LIBRARY)]: ICON_COMPONENTS.LIBRARY, + [variables.getMessage(MESSAGE_KEYS.DISCOVER)]: ICON_COMPONENTS.DISCOVER, [variables.getMessage(MESSAGE_KEYS.NAVBAR)]: ICON_COMPONENTS.NAVBAR, [variables.getMessage(MESSAGE_KEYS.GREETING)]: ICON_COMPONENTS.GREETING, [variables.getMessage(MESSAGE_KEYS.TIME)]: ICON_COMPONENTS.TIME, @@ -119,7 +119,7 @@ export const getIconComponent = (label, variables) => { [variables.getMessage(MESSAGE_KEYS.ABOUT)]: ICON_COMPONENTS.ABOUT, [variables.getMessage(MESSAGE_KEYS.ADDED)]: ICON_COMPONENTS.ADDED, [variables.getMessage(MESSAGE_KEYS.CREATE)]: ICON_COMPONENTS.CREATE, - [variables.getMessage(MESSAGE_KEYS.ALL_MARKETPLACE)]: ICON_COMPONENTS.ADDONS, + [variables.getMessage(MESSAGE_KEYS.ALL_MARKETPLACE)]: ICON_COMPONENTS.LIBRARY, [variables.getMessage(MESSAGE_KEYS.PHOTO_PACKS)]: ICON_COMPONENTS.BACKGROUND, [variables.getMessage(MESSAGE_KEYS.QUOTE_PACKS)]: ICON_COMPONENTS.QUOTE, [variables.getMessage(MESSAGE_KEYS.PRESET_SETTINGS)]: ICON_COMPONENTS.ADVANCED, @@ -137,14 +137,14 @@ export const NAVBAR_BUTTONS = [ messageKey: 'modals.main.navbar.settings', }, { - tab: TAB_TYPES.ADDONS, - icon: ICON_COMPONENTS.ADDONS, - messageKey: 'modals.main.navbar.addons', + tab: TAB_TYPES.LIBRARY, + icon: ICON_COMPONENTS.LIBRARY, + messageKey: 'modals.main.navbar.library', }, { - tab: TAB_TYPES.MARKETPLACE, - icon: ICON_COMPONENTS.MARKETPLACE, - messageKey: 'modals.main.navbar.marketplace', + tab: TAB_TYPES.DISCOVER, + icon: ICON_COMPONENTS.DISCOVER, + messageKey: 'modals.main.navbar.discover', }, ]; @@ -155,10 +155,3 @@ export const DIVIDER_LABELS = [ 'modals.main.marketplace.all', 'modals.main.settings.sections.experimental.title', ]; - -// Labels that should have "Mue" title before them -export const MUE_TITLE_LABELS = [ - 'modals.main.marketplace.product.overview', - 'modals.main.addons.added', - 'modals.main.marketplace.all', -]; diff --git a/src/components/Elements/MainModal/scss/index.scss b/src/components/Elements/MainModal/scss/index.scss index a2d91b8d..4dd5fa68 100644 --- a/src/components/Elements/MainModal/scss/index.scss +++ b/src/components/Elements/MainModal/scss/index.scss @@ -1,5 +1,6 @@ @use 'sass:map'; @use 'scss/variables' as *; +@use 'modules/topBar' as *; @use 'modules/sidebar' as *; @use 'modules/navbar' as *; @use 'modules/modalTabContent' as *; diff --git a/src/components/Elements/MainModal/scss/modules/_sidebar.scss b/src/components/Elements/MainModal/scss/modules/_sidebar.scss index fe2185d2..483c424b 100644 --- a/src/components/Elements/MainModal/scss/modules/_sidebar.scss +++ b/src/components/Elements/MainModal/scss/modules/_sidebar.scss @@ -13,14 +13,6 @@ height: 80vh; min-width: 250px; - .mainTitle { - text-align: center; - font-size: 35px; - display: flex; - justify-content: center; - padding: 25px; - } - svg { margin-left: 20px; margin-right: 20px; diff --git a/src/components/Elements/MainModal/scss/modules/_topBar.scss b/src/components/Elements/MainModal/scss/modules/_topBar.scss new file mode 100644 index 00000000..af8fc866 --- /dev/null +++ b/src/components/Elements/MainModal/scss/modules/_topBar.scss @@ -0,0 +1,53 @@ +@use 'scss/variables' as *; + +.modalTopBar { + display: flex; + align-items: center; + justify-content: space-between; + padding: 1.5rem 1.5rem; + // width: 100%; + + .topBarLeft { + display: flex; + align-items: center; + flex-shrink: 0; + + .topBarLogo { + height: 32px; + width: auto; + } + } + + .topBarRight { + display: flex; + align-items: center; + gap: 0.75rem; + flex-shrink: 0; + + .topBarNavigation { + display: flex; + flex-flow: row; + gap: 0.5rem; + } + + .closeModal { + display: grid; + place-items: center; + padding: 0.4em; + border-radius: 12px; + cursor: pointer; + transition: 0.5s; + flex-shrink: 0; + + svg { + font-size: 1.5em; + } + + &:hover { + @include themed { + background: t($modal-sidebarActive); + } + } + } + } +} diff --git a/src/features/misc/views/Marketplace.jsx b/src/features/misc/views/Discover.jsx similarity index 86% rename from src/features/misc/views/Marketplace.jsx rename to src/features/misc/views/Discover.jsx index e66f2c33..2c444c50 100644 --- a/src/features/misc/views/Marketplace.jsx +++ b/src/features/misc/views/Discover.jsx @@ -4,9 +4,9 @@ import { memo } from 'react'; import Tabs from '../../../components/Elements/MainModal/backend/Tabs'; import MarketplaceTab from '../../marketplace/views/Browse'; -function Marketplace({ changeTab, deepLinkData }) { +function Discover({ changeTab, deepLinkData, currentTab }) { return ( - changeTab(type)} current="marketplace"> + changeTab(type)} current="discover" currentTab={currentTab}>
@@ -29,4 +29,4 @@ function Marketplace({ changeTab, deepLinkData }) { ); } -export default memo(Marketplace); +export default memo(Discover); diff --git a/src/features/misc/views/Addons.jsx b/src/features/misc/views/Library.jsx similarity index 76% rename from src/features/misc/views/Addons.jsx rename to src/features/misc/views/Library.jsx index 68a033eb..976396d0 100644 --- a/src/features/misc/views/Addons.jsx +++ b/src/features/misc/views/Library.jsx @@ -5,9 +5,9 @@ import Tabs from 'components/Elements/MainModal/backend/Tabs'; import Added from '../../marketplace/views/Added'; import Create from '../../marketplace/views/Create'; -function Addons(props) { +function Library(props) { return ( - props.changeTab(type)} current="addons"> + props.changeTab(type)} current="library" currentTab={props.currentTab}>
@@ -18,4 +18,4 @@ function Addons(props) { ); } -export default memo(Addons); +export default memo(Library); diff --git a/src/features/misc/views/Settings.jsx b/src/features/misc/views/Settings.jsx index af6e9033..2b7ae694 100644 --- a/src/features/misc/views/Settings.jsx +++ b/src/features/misc/views/Settings.jsx @@ -90,7 +90,7 @@ const sections = [ function Settings(props) { return ( - props.changeTab(type)} current="settings"> + props.changeTab(type)} current="settings" currentTab={props.currentTab}> {sections.map(({ label, name, component: Component }) => (
diff --git a/src/i18n/locales/ar.json b/src/i18n/locales/ar.json index 708e6f91..59174037 100644 --- a/src/i18n/locales/ar.json +++ b/src/i18n/locales/ar.json @@ -100,8 +100,8 @@ "quote_packs": "حزم الاقتباسات" }, "navbar": { - "addons": "الإضافات", - "marketplace": "السوق", + "library": "الإضافات", + "discover": "السوق", "settings": "الإعدادات" }, "settings": { diff --git a/src/i18n/locales/az.json b/src/i18n/locales/az.json index 19e01024..a6c069f6 100644 --- a/src/i18n/locales/az.json +++ b/src/i18n/locales/az.json @@ -100,8 +100,8 @@ "quote_packs": "Sitat Paketləri" }, "navbar": { - "addons": "Əlavələr", - "marketplace": "Bazarı", + "library": "Əlavələr", + "discover": "Bazarı", "settings": "Parametrlər" }, "settings": { diff --git a/src/i18n/locales/azb.json b/src/i18n/locales/azb.json index 983f6b19..69ae79af 100644 --- a/src/i18n/locales/azb.json +++ b/src/i18n/locales/azb.json @@ -100,8 +100,8 @@ "quote_packs": "Sitat Paketləri" }, "navbar": { - "addons": "Əlavələr", - "marketplace": "Bazar", + "library": "Əlavələr", + "discover": "Bazar", "settings": "Parametrlər" }, "settings": { diff --git a/src/i18n/locales/bn.json b/src/i18n/locales/bn.json index b63b6267..86e030c1 100644 --- a/src/i18n/locales/bn.json +++ b/src/i18n/locales/bn.json @@ -81,8 +81,8 @@ "file_upload_error": "ফাইল ২ মেগাবাইট এর বেশি", "navbar": { "settings": "সেটিংস", - "addons": "অ্যাড-অন", - "marketplace": "মার্কেটপ্লেস" + "library": "অ্যাড-অন", + "discover": "মার্কেটপ্লেস" }, "error_boundary": { "title": "ত্রুটি", diff --git a/src/i18n/locales/de_DE.json b/src/i18n/locales/de_DE.json index dfe40416..6f9d2c6b 100644 --- a/src/i18n/locales/de_DE.json +++ b/src/i18n/locales/de_DE.json @@ -81,8 +81,8 @@ "file_upload_error": "Datei ist größer als 2MB", "navbar": { "settings": "Einstellungen", - "addons": "Add-Ons", - "marketplace": "Marktplatz" + "library": "Add-Ons", + "discover": "Marktplatz" }, "error_boundary": { "title": "Fehler", diff --git a/src/i18n/locales/en_GB.json b/src/i18n/locales/en_GB.json index e2ca604d..5f2245b6 100644 --- a/src/i18n/locales/en_GB.json +++ b/src/i18n/locales/en_GB.json @@ -81,8 +81,8 @@ "file_upload_error": "File is over 2MB", "navbar": { "settings": "Settings", - "addons": "Add-ons", - "marketplace": "Marketplace" + "library": "Library", + "discover": "Discover" }, "error_boundary": { "title": "Error", diff --git a/src/i18n/locales/en_US.json b/src/i18n/locales/en_US.json index 924d8950..dca82646 100644 --- a/src/i18n/locales/en_US.json +++ b/src/i18n/locales/en_US.json @@ -100,8 +100,8 @@ "quote_packs": "Quote Packs" }, "navbar": { - "addons": "Add-ons", - "marketplace": "Marketplace", + "library": "Library", + "discover": "Discover", "settings": "Settings" }, "settings": { diff --git a/src/i18n/locales/es.json b/src/i18n/locales/es.json index 0306feed..e38faca9 100644 --- a/src/i18n/locales/es.json +++ b/src/i18n/locales/es.json @@ -100,8 +100,8 @@ "quote_packs": "Paquetes de citas" }, "navbar": { - "addons": "Addons", - "marketplace": "Tienda", + "library": "Addons", + "discover": "Tienda", "settings": "Ajustes" }, "settings": { diff --git a/src/i18n/locales/es_419.json b/src/i18n/locales/es_419.json index 17ccd95c..1a7e89a4 100644 --- a/src/i18n/locales/es_419.json +++ b/src/i18n/locales/es_419.json @@ -100,8 +100,8 @@ "quote_packs": "Paquetes de citas" }, "navbar": { - "addons": "Mis complementos", - "marketplace": "Tienda", + "library": "Mis complementos", + "discover": "Tienda", "settings": "Ajustes" }, "settings": { diff --git a/src/i18n/locales/et.json b/src/i18n/locales/et.json index d2ee2422..3cffbb3e 100644 --- a/src/i18n/locales/et.json +++ b/src/i18n/locales/et.json @@ -100,8 +100,8 @@ "quote_packs": "Tsitaadikomplektid" }, "navbar": { - "addons": "Lisad", - "marketplace": "Rakenduste pood", + "library": "Lisad", + "discover": "Rakenduste pood", "settings": "Seaded" }, "settings": { diff --git a/src/i18n/locales/fa.json b/src/i18n/locales/fa.json index 0bbdc7d8..1d00133c 100644 --- a/src/i18n/locales/fa.json +++ b/src/i18n/locales/fa.json @@ -81,8 +81,8 @@ "file_upload_error": "File is over 2MB", "navbar": { "settings": "Settings", - "addons": "Add-ons", - "marketplace": "Marketplace" + "library": "Add-ons", + "discover": "Marketplace" }, "error_boundary": { "title": "Error", diff --git a/src/i18n/locales/fr.json b/src/i18n/locales/fr.json index de3972e4..d8a0669b 100644 --- a/src/i18n/locales/fr.json +++ b/src/i18n/locales/fr.json @@ -100,8 +100,8 @@ "quote_packs": "Packs de citations" }, "navbar": { - "addons": "Add-ons", - "marketplace": "Marché", + "library": "Add-ons", + "discover": "Marché", "settings": "Paramètres" }, "settings": { diff --git a/src/i18n/locales/id_ID.json b/src/i18n/locales/id_ID.json index 7e0a836f..84680dab 100644 --- a/src/i18n/locales/id_ID.json +++ b/src/i18n/locales/id_ID.json @@ -100,8 +100,8 @@ "quote_packs": "Quote Packs" }, "navbar": { - "addons": "Pengaya", - "marketplace": "Marketplace", + "library": "Pengaya", + "discover": "Marketplace", "settings": "Pengaturan" }, "settings": { diff --git a/src/i18n/locales/lt.json b/src/i18n/locales/lt.json index 1ca01d84..900aae13 100644 --- a/src/i18n/locales/lt.json +++ b/src/i18n/locales/lt.json @@ -100,8 +100,8 @@ "quote_packs": "Citatų rinkiniai" }, "navbar": { - "addons": "Priedai", - "marketplace": "Prekyvietė", + "library": "Priedai", + "discover": "Prekyvietė", "settings": "Nustatymai" }, "settings": { diff --git a/src/i18n/locales/lv.json b/src/i18n/locales/lv.json index 981908c0..19bbcc6d 100644 --- a/src/i18n/locales/lv.json +++ b/src/i18n/locales/lv.json @@ -100,8 +100,8 @@ "quote_packs": "Citātu pakotnes" }, "navbar": { - "addons": "Paplašinājumi", - "marketplace": "Tirgus", + "library": "Paplašinājumi", + "discover": "Tirgus", "settings": "Iestatījumi" }, "settings": { diff --git a/src/i18n/locales/nl.json b/src/i18n/locales/nl.json index 78ae714d..1daa92eb 100644 --- a/src/i18n/locales/nl.json +++ b/src/i18n/locales/nl.json @@ -81,8 +81,8 @@ "file_upload_error": "Bestand is boven de 2MB", "navbar": { "settings": "Instellingen", - "addons": "Extensies", - "marketplace": "Marktplaats" + "library": "Extensies", + "discover": "Marktplaats" }, "error_boundary": { "title": "Foutmelding", diff --git a/src/i18n/locales/no.json b/src/i18n/locales/no.json index 124d9f42..815ba877 100644 --- a/src/i18n/locales/no.json +++ b/src/i18n/locales/no.json @@ -81,8 +81,8 @@ "file_upload_error": "File is over 2MB", "navbar": { "settings": "Instillinger", - "addons": "Mine add-ons", - "marketplace": "Markedsplass" + "library": "Mine add-ons", + "discover": "Markedsplass" }, "error_boundary": { "title": "Error", diff --git a/src/i18n/locales/pt.json b/src/i18n/locales/pt.json index 9910a596..f01999b4 100644 --- a/src/i18n/locales/pt.json +++ b/src/i18n/locales/pt.json @@ -100,8 +100,8 @@ "quote_packs": "Pacotes de citações" }, "navbar": { - "addons": "Complementos", - "marketplace": "Mercado", + "library": "Complementos", + "discover": "Mercado", "settings": "Configurações" }, "settings": { diff --git a/src/i18n/locales/pt_BR.json b/src/i18n/locales/pt_BR.json index 242b6883..7ba46602 100644 --- a/src/i18n/locales/pt_BR.json +++ b/src/i18n/locales/pt_BR.json @@ -100,8 +100,8 @@ "quote_packs": "Pacotes de citações" }, "navbar": { - "addons": "Complementos", - "marketplace": "Mercado", + "library": "Complementos", + "discover": "Mercado", "settings": "Configurações" }, "settings": { diff --git a/src/i18n/locales/ru.json b/src/i18n/locales/ru.json index 1daafaba..9f7df303 100644 --- a/src/i18n/locales/ru.json +++ b/src/i18n/locales/ru.json @@ -100,8 +100,8 @@ "quote_packs": "Наборы цитат" }, "navbar": { - "addons": "Аддоны", - "marketplace": "Магазин", + "library": "Аддоны", + "discover": "Магазин", "settings": "Настройки" }, "settings": { diff --git a/src/i18n/locales/sl.json b/src/i18n/locales/sl.json index 3eb123bf..41d8a773 100644 --- a/src/i18n/locales/sl.json +++ b/src/i18n/locales/sl.json @@ -100,8 +100,8 @@ "quote_packs": "Paketi citatov" }, "navbar": { - "addons": "Dodatki", - "marketplace": "Tržnica", + "library": "Dodatki", + "discover": "Tržnica", "settings": "Nastavitve" }, "settings": { diff --git a/src/i18n/locales/ta.json b/src/i18n/locales/ta.json index d7a6b592..4756dc59 100644 --- a/src/i18n/locales/ta.json +++ b/src/i18n/locales/ta.json @@ -100,8 +100,8 @@ "quote_packs": "மேற்கோள் பொதிகள்" }, "navbar": { - "addons": "துணை நிரல்கள்", - "marketplace": "சந்தை", + "library": "துணை நிரல்கள்", + "discover": "சந்தை", "settings": "அமைப்புகள்" }, "settings": { diff --git a/src/i18n/locales/tr_TR.json b/src/i18n/locales/tr_TR.json index 9247a58e..c99564fa 100644 --- a/src/i18n/locales/tr_TR.json +++ b/src/i18n/locales/tr_TR.json @@ -100,8 +100,8 @@ "quote_packs": "Alıntı Paketleri" }, "navbar": { - "addons": "Eklentilerim", - "marketplace": "Market", + "library": "Eklentilerim", + "discover": "Market", "settings": "Ayarlar" }, "settings": { diff --git a/src/i18n/locales/uk.json b/src/i18n/locales/uk.json index 15ad59ba..df4bba62 100644 --- a/src/i18n/locales/uk.json +++ b/src/i18n/locales/uk.json @@ -100,8 +100,8 @@ "quote_packs": "Набори цитат" }, "navbar": { - "addons": "Доповнення", - "marketplace": "Маркетплейс", + "library": "Доповнення", + "discover": "Маркетплейс", "settings": "Налаштування" }, "settings": { diff --git a/src/i18n/locales/zh_CN.json b/src/i18n/locales/zh_CN.json index d75d53e7..f5dcd8fe 100644 --- a/src/i18n/locales/zh_CN.json +++ b/src/i18n/locales/zh_CN.json @@ -100,8 +100,8 @@ "quote_packs": "名言包" }, "navbar": { - "addons": "我的插件", - "marketplace": "插件市场", + "library": "我的插件", + "discover": "插件市场", "settings": "设置" }, "settings": { diff --git a/src/i18n/locales/zh_Hant.json b/src/i18n/locales/zh_Hant.json index 654ebe49..1cf5f873 100644 --- a/src/i18n/locales/zh_Hant.json +++ b/src/i18n/locales/zh_Hant.json @@ -100,8 +100,8 @@ "quote_packs": "Quote Packs" }, "navbar": { - "addons": "附加元件", - "marketplace": "市場", + "library": "附加元件", + "discover": "市場", "settings": "設定" }, "settings": {