vite.config.js 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. import { defineConfig } from 'vite'
  2. import react from '@vitejs/plugin-react'
  3. import path from 'path'
  4. const bases = {
  5. core: path.resolve(__dirname, '../packages/core/src'),
  6. react: path.resolve(__dirname, '../packages/react/src'),
  7. tldrawLogseq: path.resolve(__dirname, '../apps/tldraw-logseq/src'),
  8. }
  9. // https://vitejs.dev/config/
  10. export default defineConfig({
  11. plugins: [
  12. react({
  13. babel: {
  14. parserOpts: {
  15. plugins: ['decorators-legacy'],
  16. },
  17. plugins: [[require.resolve('@babel/plugin-proposal-decorators'), { legacy: true }]],
  18. },
  19. }),
  20. ],
  21. server: {
  22. port: '3031',
  23. // force: true,
  24. fs: {
  25. strict: false,
  26. },
  27. },
  28. resolve: {
  29. alias: [
  30. {
  31. find: 'tldraw-logseq',
  32. replacement: bases.tldrawLogseq,
  33. },
  34. {
  35. find: /~(.*)/,
  36. replacement: '$1',
  37. customResolver: (id, importer) => {
  38. if (id) {
  39. const base = Object.values(bases).find(value => importer.startsWith(value))
  40. return base ? path.join('/@fs', base, id) : null
  41. }
  42. },
  43. },
  44. {
  45. find: '@tldraw/core',
  46. replacement: bases.core,
  47. },
  48. {
  49. find: '@tldraw/react',
  50. replacement: bases.react,
  51. },
  52. ],
  53. },
  54. })