From 55282963b5b7496ded48243261f351410818444d Mon Sep 17 00:00:00 2001
From: yuetsh <517252939@qq.com>
Date: Tue, 16 Jun 2026 09:37:50 -0600
Subject: [PATCH] fix
---
Dockerfile | 1 +
server/db.test.ts | 2 +-
server/db.ts | 2 +-
server/routes/books.test.ts | 2 +-
server/routes/books.ts | 2 +-
{src => shared}/domain/teachingDesign.test.ts | 0
{src => shared}/domain/teachingDesign.ts | 0
src/App.test.ts | 2 +-
src/components/A4Workspace.test.ts | 2 +-
src/components/BookListPage.test.ts | 2 +-
src/components/LessonSidebar.test.ts | 2 +-
src/components/PrintBook.test.ts | 2 +-
src/components/TeachingDesignPage.test.ts | 2 +-
src/components/WorkspaceView.test.ts | 2 +-
src/composables/useTeachingBook.test.ts | 2 +-
src/composables/useTeachingBook.ts | 2 +-
src/services/booksApi.test.ts | 2 +-
src/services/booksApi.ts | 2 +-
src/services/markdownParser.ts | 2 +-
src/services/markdownWriter.ts | 2 +-
src/services/zipExporter.test.ts | 2 +-
src/services/zipExporter.ts | 2 +-
22 files changed, 20 insertions(+), 19 deletions(-)
rename {src => shared}/domain/teachingDesign.test.ts (100%)
rename {src => shared}/domain/teachingDesign.ts (100%)
diff --git a/Dockerfile b/Dockerfile
index 59b711a..2c342ea 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -22,6 +22,7 @@ COPY package.json bun.lock ./
RUN bun install --frozen-lockfile --production
COPY server/ ./server/
+COPY shared/ ./shared/
COPY --from=builder /app/dist ./dist/
RUN mkdir -p data
diff --git a/server/db.test.ts b/server/db.test.ts
index eef7fed..1b37155 100644
--- a/server/db.test.ts
+++ b/server/db.test.ts
@@ -2,7 +2,7 @@ import { existsSync, rmSync } from 'node:fs'
import { tmpdir } from 'node:os'
import { join } from 'node:path'
import { afterEach, describe, expect, it, setSystemTime } from 'bun:test'
-import { createEmptyBook, createEmptyTeachingDesign } from '../src/domain/teachingDesign'
+import { createEmptyBook, createEmptyTeachingDesign } from '../shared/domain/teachingDesign'
import {
createBook, deleteBook, getBook, listBooks, openDb, renameBook, saveBookData,
createUser, findUserByUsername, findUserById, listUsers, deleteUser, updateUserPasswordHash,
diff --git a/server/db.ts b/server/db.ts
index eb302b0..86a30f5 100644
--- a/server/db.ts
+++ b/server/db.ts
@@ -1,5 +1,5 @@
import { Database } from 'bun:sqlite'
-import { createEmptyBook, type TeachingBook } from '../src/domain/teachingDesign'
+import { createEmptyBook, type TeachingBook } from '../shared/domain/teachingDesign'
export interface BookSummary {
id: string
diff --git a/server/routes/books.test.ts b/server/routes/books.test.ts
index f340108..e0a8c80 100644
--- a/server/routes/books.test.ts
+++ b/server/routes/books.test.ts
@@ -1,7 +1,7 @@
import { beforeEach, describe, expect, it } from 'bun:test'
import type { Database } from 'bun:sqlite'
import { Hono } from 'hono'
-import { createEmptyBook, createEmptyTeachingDesign } from '../../src/domain/teachingDesign'
+import { createEmptyBook, createEmptyTeachingDesign } from '../../shared/domain/teachingDesign'
import { openDb } from '../db'
import { createBooksRouter } from './books'
diff --git a/server/routes/books.ts b/server/routes/books.ts
index f31a3d2..e00742d 100644
--- a/server/routes/books.ts
+++ b/server/routes/books.ts
@@ -1,6 +1,6 @@
import type { Database } from 'bun:sqlite'
import { Hono } from 'hono'
-import type { TeachingBook } from '../../src/domain/teachingDesign'
+import type { TeachingBook } from '../../shared/domain/teachingDesign'
import { createBook, deleteBook, getBook, listBooks, renameBook, saveBookData } from '../db'
export function createBooksRouter(db: Database): Hono {
diff --git a/src/domain/teachingDesign.test.ts b/shared/domain/teachingDesign.test.ts
similarity index 100%
rename from src/domain/teachingDesign.test.ts
rename to shared/domain/teachingDesign.test.ts
diff --git a/src/domain/teachingDesign.ts b/shared/domain/teachingDesign.ts
similarity index 100%
rename from src/domain/teachingDesign.ts
rename to shared/domain/teachingDesign.ts
diff --git a/src/App.test.ts b/src/App.test.ts
index 84cd74b..3e1de6e 100644
--- a/src/App.test.ts
+++ b/src/App.test.ts
@@ -2,7 +2,7 @@ import { flushPromises, mount } from '@vue/test-utils'
import { computed } from 'vue'
import { beforeEach, describe, expect, it, vi } from 'vitest'
import App from './App.vue'
-import { createEmptyBook } from './domain/teachingDesign'
+import { createEmptyBook } from '../shared/domain/teachingDesign'
import * as booksApi from './services/booksApi'
vi.mock('./services/booksApi')
diff --git a/src/components/A4Workspace.test.ts b/src/components/A4Workspace.test.ts
index 53c0f0b..70f2d31 100644
--- a/src/components/A4Workspace.test.ts
+++ b/src/components/A4Workspace.test.ts
@@ -1,6 +1,6 @@
import { mount } from '@vue/test-utils'
import { describe, expect, it } from 'vitest'
-import { createEmptyTeachingDesign } from '../domain/teachingDesign'
+import { createEmptyTeachingDesign } from '../../shared/domain/teachingDesign'
import A4Workspace from './A4Workspace.vue'
describe('A4Workspace', () => {
diff --git a/src/components/BookListPage.test.ts b/src/components/BookListPage.test.ts
index 27744bb..aaf27fc 100644
--- a/src/components/BookListPage.test.ts
+++ b/src/components/BookListPage.test.ts
@@ -1,6 +1,6 @@
import { flushPromises, mount } from '@vue/test-utils'
import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'
-import { createEmptyBook } from '../domain/teachingDesign'
+import { createEmptyBook } from '../../shared/domain/teachingDesign'
import * as booksApi from '../services/booksApi'
import BookListPage from './BookListPage.vue'
diff --git a/src/components/LessonSidebar.test.ts b/src/components/LessonSidebar.test.ts
index 4b7f20a..a6a5b26 100644
--- a/src/components/LessonSidebar.test.ts
+++ b/src/components/LessonSidebar.test.ts
@@ -1,6 +1,6 @@
import { mount } from '@vue/test-utils'
import { describe, expect, it } from 'vitest'
-import { createEmptyTeachingDesign } from '../domain/teachingDesign'
+import { createEmptyTeachingDesign } from '../../shared/domain/teachingDesign'
import LessonSidebar from './LessonSidebar.vue'
describe('LessonSidebar', () => {
diff --git a/src/components/PrintBook.test.ts b/src/components/PrintBook.test.ts
index 6c5e8d8..2af3d0e 100644
--- a/src/components/PrintBook.test.ts
+++ b/src/components/PrintBook.test.ts
@@ -1,6 +1,6 @@
import { mount } from '@vue/test-utils'
import { describe, expect, it } from 'vitest'
-import { createEmptyTeachingDesign } from '../domain/teachingDesign'
+import { createEmptyTeachingDesign } from '../../shared/domain/teachingDesign'
import PrintBook from './PrintBook.vue'
describe('PrintBook', () => {
diff --git a/src/components/TeachingDesignPage.test.ts b/src/components/TeachingDesignPage.test.ts
index 1a1e2c2..ce8679f 100644
--- a/src/components/TeachingDesignPage.test.ts
+++ b/src/components/TeachingDesignPage.test.ts
@@ -1,6 +1,6 @@
import { mount } from '@vue/test-utils'
import { describe, expect, it } from 'vitest'
-import { createEmptyTeachingDesign, type TeachingDesign } from '../domain/teachingDesign'
+import { createEmptyTeachingDesign, type TeachingDesign } from '../../shared/domain/teachingDesign'
import TeachingDesignPage from './TeachingDesignPage.vue'
describe('TeachingDesignPage', () => {
diff --git a/src/components/WorkspaceView.test.ts b/src/components/WorkspaceView.test.ts
index 753a9eb..060dcf7 100644
--- a/src/components/WorkspaceView.test.ts
+++ b/src/components/WorkspaceView.test.ts
@@ -1,6 +1,6 @@
import { flushPromises, mount } from '@vue/test-utils'
import { beforeEach, describe, expect, it, vi } from 'vitest'
-import { createEmptyBook, createEmptyTeachingDesign } from '../domain/teachingDesign'
+import { createEmptyBook, createEmptyTeachingDesign } from '../../shared/domain/teachingDesign'
import * as booksApi from '../services/booksApi'
import * as zipExporter from '../services/zipExporter'
import BatchGenerateDialog from './BatchGenerateDialog.vue'
diff --git a/src/composables/useTeachingBook.test.ts b/src/composables/useTeachingBook.test.ts
index 49364ae..f951966 100644
--- a/src/composables/useTeachingBook.test.ts
+++ b/src/composables/useTeachingBook.test.ts
@@ -1,6 +1,6 @@
import { flushPromises } from '@vue/test-utils'
import { beforeEach, describe, expect, it, vi } from 'vitest'
-import { createEmptyBook, createEmptyTeachingDesign, type TeachingBook } from '../domain/teachingDesign'
+import { createEmptyBook, createEmptyTeachingDesign, type TeachingBook } from '../../shared/domain/teachingDesign'
import * as booksApi from '../services/booksApi'
import { useTeachingBook } from './useTeachingBook'
diff --git a/src/composables/useTeachingBook.ts b/src/composables/useTeachingBook.ts
index c300758..06db554 100644
--- a/src/composables/useTeachingBook.ts
+++ b/src/composables/useTeachingBook.ts
@@ -4,7 +4,7 @@ import {
type DesignId,
type TeachingBook,
type TeachingDesign,
-} from '../domain/teachingDesign'
+} from '../../shared/domain/teachingDesign'
import * as booksApi from '../services/booksApi'
import { parseTeachingDesign } from '../services/markdownParser'
import { sortFilesNaturally } from '../services/naturalSort'
diff --git a/src/services/booksApi.test.ts b/src/services/booksApi.test.ts
index a7f08c0..b0a8c3e 100644
--- a/src/services/booksApi.test.ts
+++ b/src/services/booksApi.test.ts
@@ -1,5 +1,5 @@
import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'
-import { createEmptyBook } from '../domain/teachingDesign'
+import { createEmptyBook } from '../../shared/domain/teachingDesign'
import * as booksApi from './booksApi'
describe('booksApi', () => {
diff --git a/src/services/booksApi.ts b/src/services/booksApi.ts
index 51438d1..c3aeefa 100644
--- a/src/services/booksApi.ts
+++ b/src/services/booksApi.ts
@@ -1,4 +1,4 @@
-import type { TeachingBook } from '../domain/teachingDesign'
+import type { TeachingBook } from '../../shared/domain/teachingDesign'
import { authedFetch } from '../composables/useAuth'
export interface BookSummary {
diff --git a/src/services/markdownParser.ts b/src/services/markdownParser.ts
index 82c68e5..b13111d 100644
--- a/src/services/markdownParser.ts
+++ b/src/services/markdownParser.ts
@@ -4,7 +4,7 @@ import {
type ParseWarning,
type TeachingDesign,
type TeachingStep,
-} from '../domain/teachingDesign'
+} from '../../shared/domain/teachingDesign'
import { extractMarkdownTable } from './markdownTable'
const BR = /
/gi
diff --git a/src/services/markdownWriter.ts b/src/services/markdownWriter.ts
index d33b52b..7e836de 100644
--- a/src/services/markdownWriter.ts
+++ b/src/services/markdownWriter.ts
@@ -1,4 +1,4 @@
-import type { TeachingDesign } from '../domain/teachingDesign'
+import type { TeachingDesign } from '../../shared/domain/teachingDesign'
function escapeCell(value: string): string {
return value
diff --git a/src/services/zipExporter.test.ts b/src/services/zipExporter.test.ts
index 6a776fa..5472637 100644
--- a/src/services/zipExporter.test.ts
+++ b/src/services/zipExporter.test.ts
@@ -1,6 +1,6 @@
import JSZip from 'jszip'
import { describe, expect, it } from 'vitest'
-import { createEmptyTeachingDesign } from '../domain/teachingDesign'
+import { createEmptyTeachingDesign } from '../../shared/domain/teachingDesign'
import { createBookZip } from './zipExporter'
describe('createBookZip', () => {
diff --git a/src/services/zipExporter.ts b/src/services/zipExporter.ts
index 43d4426..4a7484e 100644
--- a/src/services/zipExporter.ts
+++ b/src/services/zipExporter.ts
@@ -1,5 +1,5 @@
import JSZip from 'jszip'
-import type { TeachingDesign } from '../domain/teachingDesign'
+import type { TeachingDesign } from '../../shared/domain/teachingDesign'
import { writeTeachingDesignMarkdown } from './markdownWriter'
export async function createBookZip(designs: readonly TeachingDesign[]): Promise {