31022c6a6f
- clinica_id (tenant do scoreodonto, clinicas.id) como eixo de isolamento em clinics_devices e images (+índices); clinic_name vira rótulo legível. - Cadastro de device, socket (machine_token) e uploads (direct + legado) gravam clinica_id. - Listagens (/images, /patients, /by-patient, /unique-clinics) filtram por clinica_id. - /clients: lista clientes Windows ativos (inclui autenticados sem client-identify), tempo real + polling, exibe a clínica. - send-image marcado como legado (client real usa Direct Upload). Inclui trabalho de dev acumulado no working tree (não havia commits desde origin/main). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
39 lines
921 B
JavaScript
39 lines
921 B
JavaScript
import { defineConfig } from 'vite'
|
|
import react from '@vitejs/plugin-react'
|
|
|
|
// https://vitejs.dev/config/
|
|
export default defineConfig({
|
|
plugins: [react()],
|
|
// Em dev, faz proxy da API para o backend Express
|
|
server: {
|
|
cors: true,
|
|
hmr: {
|
|
host: 'dev.rx.scoreodonto.com',
|
|
clientPort: 443,
|
|
protocol: 'wss',
|
|
overlay: false
|
|
},
|
|
proxy: {
|
|
'/api': {
|
|
target: 'http://127.0.0.1:3000',
|
|
configure: (proxy) => {
|
|
proxy.on('proxyRes', (proxyRes) => {
|
|
proxyRes.headers['access-control-allow-origin'] = '*';
|
|
});
|
|
}
|
|
},
|
|
'/socket.io': {
|
|
target: 'http://127.0.0.1:3000',
|
|
ws: true
|
|
},
|
|
'/uploads': 'http://127.0.0.1:3000',
|
|
'/updates': 'http://127.0.0.1:3000'
|
|
}
|
|
},
|
|
build: {
|
|
// O output vai para o diretório que o Express vai servir
|
|
outDir: 'dist',
|
|
emptyOutDir: true
|
|
}
|
|
})
|