♻️ Add version reading by package file
This commit is contained in:
14
src/tools/server/getPackageVersion.ts
Normal file
14
src/tools/server/getPackageVersion.ts
Normal 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';
|
||||
};
|
||||
19
src/tools/server/getServerSideTranslations.ts
Normal file
19
src/tools/server/getServerSideTranslations.ts
Normal 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;
|
||||
};
|
||||
36
src/tools/server/translation-namespaces.ts
Normal file
36
src/tools/server/translation-namespaces.ts
Normal 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'];
|
||||
Reference in New Issue
Block a user