♻️ Add version reading by package file

This commit is contained in:
Manuel
2023-01-31 21:17:37 +01:00
parent 2b76ae83b1
commit 2b20cecb79
19 changed files with 83 additions and 36 deletions

View File

@@ -0,0 +1,14 @@
const getServerPackageVersion = (): string | undefined => process.env.npm_package_version;
const getServerNodeEnvironment = (): 'development' | 'production' | 'test' =>
process.env.NODE_ENV;
export const getServiceSidePackageAttributes = (): ServerSidePackageAttributesType => ({
packageVersion: getServerPackageVersion(),
environment: getServerNodeEnvironment(),
});
export type ServerSidePackageAttributesType = {
packageVersion: string | undefined;
environment: 'development' | 'production' | 'test';
};

View File

@@ -0,0 +1,19 @@
import { getCookie } from 'cookies-next';
import { IncomingMessage, ServerResponse } from 'http';
import { serverSideTranslations } from 'next-i18next/serverSideTranslations';
export const getServerSideTranslations = async (
req: IncomingMessage,
res: ServerResponse,
namespaces: string[],
requestLocale?: string
) => {
const configLocale = getCookie('config-locale', { req, res });
const translations = await serverSideTranslations(
(configLocale ?? requestLocale ?? 'en') as string,
namespaces
);
return translations;
};

View File

@@ -0,0 +1,36 @@
export const dashboardNamespaces = [
'common',
'layout/element-selector/selector',
'layout/modals/add-app',
'layout/modals/change-position',
'layout/modals/icon-picker',
'layout/modals/about',
'layout/header/actions/toggle-edit-mode',
'layout/mobile/drawer',
'settings/common',
'settings/general/theme-selector',
'settings/general/config-changer',
'settings/general/internationalization',
'settings/general/search-engine',
'settings/general/widget-positions',
'settings/customization/color-selector',
'settings/customization/page-appearance',
'settings/customization/shade-selector',
'settings/customization/app-width',
'settings/customization/opacity-selector',
'modules/common',
'modules/date',
'modules/calendar',
'modules/dlspeed',
'modules/usenet',
'modules/search',
'modules/torrents-status',
'modules/weather',
'modules/ping',
'modules/docker',
'modules/dashdot',
'modules/overseerr',
'modules/common-media-cards',
];
export const loginNamespaces = ['authentication/login'];