**vite.config.ts (host ) **
import { sentryVitePlugin } from "@sentry/vite-plugin";
import { defineConfig } from 'vite';
import react from '@vitejs/plugin-react';
import { resolve } from 'path';
import checker from 'vite-plugin-checker';
import federation from '@originjs/vite-plugin-federation';
export default defineConfig({
build: {
outDir: 'dist',
modulePreload: false,
target: 'esnext',
minify: false,
cssCodeSplit: false,
sourcemap: true
},
resolve: {
alias: {
'@': resolve(__dirname, 'src'),
'@components': resolve(__dirname, 'src/components'),
'@provider': resolve(__dirname, 'src/provider'),
'@view': resolve(__dirname, 'src/view'),
'@config': resolve(__dirname, 'src/config'),
'@hooks': resolve(__dirname, 'src/hooks'),
'@services': resolve(__dirname, 'src/services'),
'@types': resolve(__dirname, 'src/@types'),
},
},
plugins: [
react(),
checker({
typescript: {
tsconfigPath: './tsconfig.json',
},
}),
federation({
name: 'tablet',
filename: 'remoteEntry.js',
exposes: {
'./Messenger': './src/view/messenger/index.tsx',
'./MessengerRoot': './src/view/messenger/[root]/index.tsx',
'./MessengerGroup': './src/view/messenger/[group_id]/index.tsx',
'./provider': './src/provider/index.tsx',
},
shared: [
'react',
'react-dom',
'@mui/lab',
'@mui/material',
'@mui/x-data-grid-premium',
'@emotion/react',
'@emotion/styled',
'react-i18next',
'react-hook-form',
'@tanstack/react-query',
'socket.io-react-hook',
'react-router-dom',
],
}), sentryVitePlugin({
org: "21jumpclick",
project: "tablet-nui",
url: "https://sentry.fafa1510.be"
})
],
});