diff --git a/_regroup_monorepo/apps/edit-docs/package.json b/_regroup_monorepo/apps/edit-docs/package.json index 9bfe326d9..7c9a09e11 100644 --- a/_regroup_monorepo/apps/edit-docs/package.json +++ b/_regroup_monorepo/apps/edit-docs/package.json @@ -5,9 +5,9 @@ "main": "index.js", "type": "module", "scripts": { - "docs:edit": "cross-env NODE_OPTIONS=\"--import tsx\" TRILIUM_DATA_DIR=./data-docs TRILIUM_ENV=dev TRILIUM_INTEGRATION_TEST=memory-no-store TRILIUM_PORT=37741 electron ./src/electron-docs-main.ts .", - "docs:edit-nix": "electron-rebuild --version 33.3.1 && cross-env NODE_OPTIONS=\"--import tsx\" TRILIUM_DATA_DIR=./data-docs TRILIUM_PORT=37741 TRILIUM_ENV=dev TRILIUM_INTEGRATION_TEST=memory-no-store nix-shell -p electron_33 --run \"electron ./src/electron-docs-main.ts .\"", - "demo:edit": "cross-env NODE_OPTIONS=\"--import tsx\" TRILIUM_DATA_DIR=./data-demo TRILIUM_ENV=dev TRILIUM_INTEGRATION_TEST=memory-no-store TRILIUM_PORT=37741 electron ./src/electron-edit-demo.ts .", + "docs:edit": "cross-env NODE_OPTIONS=\"--import tsx\" electron ./src/electron-docs-main.ts .", + "docs:edit-nix": "electron-rebuild --version 33.3.1 && cross-env NODE_OPTIONS=\"--import tsx\" nix-shell -p electron_33 --run \"electron ./src/electron-docs-main.ts .\"", + "demo:edit": "cross-env NODE_OPTIONS=\"--import tsx\" TRILIUM_DATA_DIR=./data-demo electron ./src/electron-edit-demo.ts .", "demo:edit-nix": "electron-rebuild --version 33.3.1 && cross-env NODE_OPTIONS=\"--import tsx\" TRILIUM_DATA_DIR=./data-docs TRILIUM_PORT=37741 TRILIUM_ENV=dev TRILIUM_INTEGRATION_TEST=memory-no-store nix-shell -p electron_33 --run \"electron ./src/electron-edit-demo.ts .\"" }, "repository": { diff --git a/apps/edit-docs/.env b/apps/edit-docs/.env new file mode 100644 index 000000000..9ca876405 --- /dev/null +++ b/apps/edit-docs/.env @@ -0,0 +1,4 @@ +TRILIUM_DATA_DIR=./data-docs +TRILIUM_ENV=dev +TRILIUM_INTEGRATION_TEST=memory-no-store +TRILIUM_PORT=37741 \ No newline at end of file diff --git a/apps/edit-docs/eslint.config.mjs b/apps/edit-docs/eslint.config.mjs new file mode 100644 index 000000000..724052a2e --- /dev/null +++ b/apps/edit-docs/eslint.config.mjs @@ -0,0 +1,5 @@ +import baseConfig from "../../eslint.config.mjs"; + +export default [ + ...baseConfig +]; diff --git a/apps/edit-docs/package.json b/apps/edit-docs/package.json new file mode 100644 index 000000000..4a1aaca60 --- /dev/null +++ b/apps/edit-docs/package.json @@ -0,0 +1,36 @@ +{ + "name": "@triliumnext/edit-docs", + "version": "0.0.1", + "private": true, + "type": "module", + "devDependencies": { + "@triliumnext/client": "workspace:*", + "@triliumnext/desktop": "workspace:*", + "@types/fs-extra": "11.0.4", + "fs-extra": "11.3.0" + }, + "nx": { + "name": "edit-docs", + "targets": { + "serve": { + "executor": "@nx/js:node", + "defaultConfiguration": "development", + "dependsOn": [ + "build" + ], + "options": { + "buildTarget": "edit-docs:build", + "runBuildTargetDependencies": false + }, + "configurations": { + "development": { + "buildTarget": "edit-docs:build:development" + }, + "production": { + "buildTarget": "edit-docs:build:production" + } + } + } + } + } +} diff --git a/_regroup_monorepo/apps/edit-docs/src/electron-docs-main.ts b/apps/edit-docs/src/electron-docs-main.ts similarity index 98% rename from _regroup_monorepo/apps/edit-docs/src/electron-docs-main.ts rename to apps/edit-docs/src/electron-docs-main.ts index 61b6116c3..0d4407a8a 100644 --- a/_regroup_monorepo/apps/edit-docs/src/electron-docs-main.ts +++ b/apps/edit-docs/src/electron-docs-main.ts @@ -1,7 +1,6 @@ import fs from "fs/promises"; import fsExtra from "fs-extra"; import path from "path"; -import type NoteMeta from "@triliumnext/server/src/services/meta/note_meta.js"; import type { NoteMetaFile } from "@triliumnext/server/src/services/meta/note_meta.js"; import { initializeTranslations } from "@triliumnext/server/src/services/i18n.js"; import archiver, { type Archiver } from "archiver"; @@ -233,4 +232,4 @@ async function registerHandlers() { }); } -await main(); +main(); diff --git a/_regroup_monorepo/apps/edit-docs/src/electron-edit-demo.ts b/apps/edit-docs/src/electron-edit-demo.ts similarity index 100% rename from _regroup_monorepo/apps/edit-docs/src/electron-edit-demo.ts rename to apps/edit-docs/src/electron-edit-demo.ts diff --git a/_regroup_monorepo/apps/edit-docs/src/electron-utils.ts b/apps/edit-docs/src/electron-utils.ts similarity index 96% rename from _regroup_monorepo/apps/edit-docs/src/electron-utils.ts rename to apps/edit-docs/src/electron-utils.ts index c939f58af..8c7758f62 100644 --- a/_regroup_monorepo/apps/edit-docs/src/electron-utils.ts +++ b/apps/edit-docs/src/electron-utils.ts @@ -16,7 +16,7 @@ export function initializeDatabase(skipDemoDb: boolean) { } export async function startElectron() { - await import("@triliumnext/electron/src/electron-main.js"); + await import("@triliumnext/desktop/src/electron-main.js"); } export async function extractZip(zipFilePath: string, outputPath: string, ignoredFiles?: Set) { diff --git a/apps/edit-docs/tsconfig.app.json b/apps/edit-docs/tsconfig.app.json new file mode 100644 index 000000000..d707ff203 --- /dev/null +++ b/apps/edit-docs/tsconfig.app.json @@ -0,0 +1,30 @@ +{ + "extends": "../../tsconfig.base.json", + "compilerOptions": { + "outDir": "dist", + "types": [ + "node" + ], + "rootDir": "src", + "tsBuildInfoFile": "dist/tsconfig.app.tsbuildinfo" + }, + "include": [ + "src/**/*.ts" + ], + "exclude": [ + "eslint.config.js", + "eslint.config.cjs", + "eslint.config.mjs" + ], + "references": [ + { + "path": "../server/tsconfig.app.json" + }, + { + "path": "../desktop/tsconfig.app.json" + }, + { + "path": "../client/tsconfig.app.json" + } + ] +} diff --git a/apps/edit-docs/tsconfig.json b/apps/edit-docs/tsconfig.json new file mode 100644 index 000000000..de6607550 --- /dev/null +++ b/apps/edit-docs/tsconfig.json @@ -0,0 +1,19 @@ +{ + "extends": "../../tsconfig.base.json", + "files": [], + "include": [], + "references": [ + { + "path": "../server" + }, + { + "path": "../desktop" + }, + { + "path": "../client" + }, + { + "path": "./tsconfig.app.json" + } + ] +} diff --git a/apps/edit-docs/webpack.config.cjs b/apps/edit-docs/webpack.config.cjs new file mode 100644 index 000000000..35f214573 --- /dev/null +++ b/apps/edit-docs/webpack.config.cjs @@ -0,0 +1,19 @@ +const { NxAppWebpackPlugin } = require('@nx/webpack/app-plugin'); +const { join } = require('path'); + +module.exports = { + output: { + path: join(__dirname, 'dist'), + }, + plugins: [ + new NxAppWebpackPlugin({ + target: 'node', + compiler: 'tsc', + main: './src/electron-docs-main.ts', + tsConfig: './tsconfig.app.json', + optimization: false, + outputHashing: 'none', + generatePackageJson: true, + }) + ], +}; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 729202ad9..accaab7db 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -349,7 +349,7 @@ importers: version: 1.0.2 copy-webpack-plugin: specifier: 13.0.0 - version: 13.0.0(webpack@5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4)) + version: 13.0.0(webpack@5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) electron: specifier: 35.1.5 version: 35.1.5 @@ -385,6 +385,21 @@ importers: specifier: ^17.0.33 version: 17.0.33 + apps/edit-docs: + devDependencies: + '@triliumnext/client': + specifier: workspace:* + version: link:../client + '@triliumnext/desktop': + specifier: workspace:* + version: link:../desktop + '@types/fs-extra': + specifier: 11.0.4 + version: 11.0.4 + fs-extra: + specifier: 11.3.0 + version: 11.3.0 + apps/server: dependencies: '@highlightjs/cdn-assets': @@ -555,7 +570,7 @@ importers: version: 1.4.7 copy-webpack-plugin: specifier: 13.0.0 - version: 13.0.0(webpack@5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4)) + version: 13.0.0(webpack@5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) csrf-csrf: specifier: 3.1.0 version: 3.1.0 @@ -726,7 +741,7 @@ importers: version: 1.0.1 webpack: specifier: 5.99.6 - version: 5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4) + version: 5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) ws: specifier: 8.18.1 version: 8.18.1(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -15770,14 +15785,14 @@ snapshots: serialize-javascript: 6.0.2 webpack: 5.98.0(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4) - copy-webpack-plugin@13.0.0(webpack@5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4)): + copy-webpack-plugin@13.0.0(webpack@5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))): dependencies: glob-parent: 6.0.2 normalize-path: 3.0.0 schema-utils: 4.3.2 serialize-javascript: 6.0.2 tinyglobby: 0.2.13 - webpack: 5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4) + webpack: 5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) core-js-compat@3.41.0: dependencies: @@ -21483,14 +21498,14 @@ snapshots: '@swc/core': 1.5.29(@swc/helpers@0.5.17) esbuild: 0.19.12 - terser-webpack-plugin@5.3.14(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack@5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4)): + terser-webpack-plugin@5.3.14(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack@5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 4.3.2 serialize-javascript: 6.0.2 terser: 5.39.0 - webpack: 5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4) + webpack: 5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)) optionalDependencies: '@swc/core': 1.5.29(@swc/helpers@0.5.17) esbuild: 0.19.12 @@ -22231,7 +22246,7 @@ snapshots: - esbuild - uglify-js - webpack@5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4): + webpack@5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0)): dependencies: '@types/eslint-scope': 3.7.7 '@types/estree': 1.0.7 @@ -22253,7 +22268,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 4.3.2 tapable: 2.2.1 - terser-webpack-plugin: 5.3.14(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack@5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4)) + terser-webpack-plugin: 5.3.14(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack@5.99.6(@swc/core@1.5.29(@swc/helpers@0.5.17))(esbuild@0.19.12)(webpack-cli@5.1.4(webpack-dev-server@5.2.1)(webpack@5.98.0))) watchpack: 2.4.2 webpack-sources: 3.2.3 optionalDependencies: diff --git a/tsconfig.json b/tsconfig.json index 74bd16cd6..0c1b0f48f 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -26,6 +26,9 @@ }, { "path": "./apps/dump-db" + }, + { + "path": "./apps/edit-docs" } ] }