diff --git a/Services/client/README.md b/Services/client/README.md index c84527c..c795c65 100644 --- a/Services/client/README.md +++ b/Services/client/README.md @@ -1,4 +1,15 @@ -# ระบบ BMA eHR (eHR กรุงเทพมหานคร) +# EDM Frontend +Enterprise Document Management (EDM) ส่วน frontend + +# ส่วนประกอบ + +- Vue.js (TypeScript) ใช้ Quasar Framework เป็น UI Framework หลักสำหรับการพัฒนา +- pnpm เป็น package manager +- Library Document ใช้ typedoc, typedoc-plugin-vue +``` +pnpm i -D typedoc typedoc-plugin-vue +``` + สำหรับ User diff --git a/Services/client/package.json b/Services/client/package.json index cbaeb82..b8955f5 100644 --- a/Services/client/package.json +++ b/Services/client/package.json @@ -1,6 +1,6 @@ { - "name": "ehr_portfolio", - "version": "0.0.0", + "name": "edm-frontend", + "version": "0.1.0", "private": true, "scripts": { "dev": "vite", @@ -12,7 +12,9 @@ "build-only": "vite build", "type-check": "vue-tsc --noEmit -p tsconfig.vitest.json --composite false", "lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore", - "format": "prettier . --write" + "format": "prettier . --write", + "docs": "npm run docs:typedoc", + "docs:typedoc": "typedoc && scp -r fe-typedoc projects-doc:~/projects/project-docs/edm/ && rm -r fe-typedoc" }, "dependencies": { "@fullcalendar/core": "^6.1.8", @@ -51,6 +53,8 @@ "prettier": "^2.7.1", "sass": "^1.32.12", "start-server-and-test": "^1.15.2", + "typedoc": "^0.25.3", + "typedoc-plugin-vue": "^1.1.0", "typescript": "~4.7.4", "vite": "^4.0.0", "vitest": "^0.25.6", diff --git a/Services/client/pnpm-lock.yaml b/Services/client/pnpm-lock.yaml index 8e999ad..31ba074 100644 --- a/Services/client/pnpm-lock.yaml +++ b/Services/client/pnpm-lock.yaml @@ -109,6 +109,12 @@ devDependencies: start-server-and-test: specifier: ^1.15.2 version: 1.15.5 + typedoc: + specifier: ^0.25.3 + version: 0.25.3(typescript@4.7.4) + typedoc-plugin-vue: + specifier: ^1.1.0 + version: 1.1.0(typedoc@0.25.3) typescript: specifier: ~4.7.4 version: 4.7.4 @@ -2331,6 +2337,10 @@ packages: engines: {node: '>=8'} dev: true + /ansi-sequence-parser@1.1.1: + resolution: {integrity: sha512-vJXt3yiaUL4UU546s3rPXlsry/RnM730G1+HkpKE012AN0sx1eOrxSu95oKDIonskeLTijMgqWZ3uDEe3NFvyg==} + dev: true + /ansi-styles@3.2.1: resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} engines: {node: '>=4'} @@ -4158,6 +4168,10 @@ packages: engines: {node: '>=6'} hasBin: true + /jsonc-parser@3.2.0: + resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==} + dev: true + /jsonfile@6.1.0: resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} dependencies: @@ -4308,6 +4322,10 @@ packages: yallist: 4.0.0 dev: true + /lunr@2.3.9: + resolution: {integrity: sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==} + dev: true + /magic-string@0.25.9: resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} dependencies: @@ -4324,6 +4342,12 @@ packages: resolution: {integrity: sha512-CkYQrPYZfWnu/DAmVCpTSX/xHpKZ80eKh2lAkyA6AJTef6bW+6JpbQZN5rofum7da+SyN1bi5ctTm+lTfcCW3g==} dev: true + /marked@4.3.0: + resolution: {integrity: sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==} + engines: {node: '>= 12'} + hasBin: true + dev: true + /memorystream@0.3.1: resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==} engines: {node: '>= 0.10.0'} @@ -5026,6 +5050,15 @@ packages: resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} dev: true + /shiki@0.14.5: + resolution: {integrity: sha512-1gCAYOcmCFONmErGTrS1fjzJLA7MGZmKzrBNX7apqSwhyITJg2O102uFzXUeBxNnEkDA9vHIKLyeKq0V083vIw==} + dependencies: + ansi-sequence-parser: 1.1.1 + jsonc-parser: 3.2.0 + vscode-oniguruma: 1.7.0 + vscode-textmate: 8.0.0 + dev: true + /side-channel@1.0.4: resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} dependencies: @@ -5462,6 +5495,28 @@ packages: for-each: 0.3.3 is-typed-array: 1.1.12 + /typedoc-plugin-vue@1.1.0(typedoc@0.25.3): + resolution: {integrity: sha512-zbc2jFH3K2e/rRerV8crWY16M2MfZAze5bV6s2Ti0c8De+MjBn7K0EuK3eGoJXkY1n22flYgBz65j0pYu+ffmA==} + peerDependencies: + typedoc: 0.25.x + dependencies: + typedoc: 0.25.3(typescript@4.7.4) + dev: true + + /typedoc@0.25.3(typescript@4.7.4): + resolution: {integrity: sha512-Ow8Bo7uY1Lwy7GTmphRIMEo6IOZ+yYUyrc8n5KXIZg1svpqhZSWgni2ZrDhe+wLosFS8yswowUzljTAV/3jmWw==} + engines: {node: '>= 16'} + hasBin: true + peerDependencies: + typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x + dependencies: + lunr: 2.3.9 + marked: 4.3.0 + minimatch: 9.0.3 + shiki: 0.14.5 + typescript: 4.7.4 + dev: true + /typescript@4.7.4: resolution: {integrity: sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==} engines: {node: '>=4.2.0'} @@ -5675,6 +5730,14 @@ packages: - terser dev: true + /vscode-oniguruma@1.7.0: + resolution: {integrity: sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==} + dev: true + + /vscode-textmate@8.0.0: + resolution: {integrity: sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==} + dev: true + /vue-component-type-helpers@1.8.4: resolution: {integrity: sha512-6bnLkn8O0JJyiFSIF0EfCogzeqNXpnjJ0vW/SZzNHfe6sPx30lTtTXlE5TFs2qhJlAtDFybStVNpL73cPe3OMQ==} dev: true diff --git a/Services/client/typedoc.json b/Services/client/typedoc.json new file mode 100644 index 0000000..3eb93e0 --- /dev/null +++ b/Services/client/typedoc.json @@ -0,0 +1,5 @@ +{ + "plugin": ["typedoc-plugin-vue"], + "entryPoints": ["src/main.ts","src/**/*.ts"], + "out": "fe-typedoc" +} diff --git a/Services/server/package.json b/Services/server/package.json index d738d3f..4e29ce5 100644 --- a/Services/server/package.json +++ b/Services/server/package.json @@ -1,5 +1,5 @@ { - "name": "edm-api", + "name": "edm-backend", "version": "0.1.0", "description": "Enterprise Document Management", "main": "src/app.ts", @@ -10,7 +10,7 @@ "preview": "node ./dist/app.js", "serve": "node ./dist/app.js", "docs":"npm run docs:typedoc && npm run docs:swagger", - "docs:typedoc":"npx typedoc && scp -r typedoc projects-doc:~/projects/project-docs/edm/ && rm -r typedoc" , + "docs:typedoc":"typedoc && scp -r be-typedoc projects-doc:~/projects/project-docs/edm/ && rm -r be-typedoc" , "docs:swagger": "scp src/swagger.json projects-doc:~/projects/project-docs/edm/" }, "keywords": [], diff --git a/Services/server/tsconfig.json b/Services/server/tsconfig.json index 986d5dd..b62253b 100644 --- a/Services/server/tsconfig.json +++ b/Services/server/tsconfig.json @@ -14,12 +14,5 @@ "experimentalDecorators": true, "skipLibCheck": true - }, - "typedocOptions": { - "entryPoints": [ - "src/**/*.ts" - ], - "out": "typedoc" } - } diff --git a/Services/server/typedoc.json b/Services/server/typedoc.json new file mode 100644 index 0000000..f2823cd --- /dev/null +++ b/Services/server/typedoc.json @@ -0,0 +1,4 @@ +{ + "entryPoints": ["src/**/*.ts"], + "out": "be-typedoc" +}