refactor(highlightjs): create separate project

This commit is contained in:
Elian Doran 2025-05-18 00:16:09 +03:00
parent 56d4d7c20f
commit d4fab87ed9
No known key found for this signature in database
10 changed files with 130 additions and 0 deletions

View File

@ -0,0 +1,7 @@
# highlightjs
This library was generated with [Nx](https://nx.dev).
## Building
Run `nx build highlightjs` to build the library.

View File

@ -0,0 +1,24 @@
import baseConfig from "../../eslint.config.mjs";
export default [
...baseConfig,
{
"files": [
"**/*.json"
],
"rules": {
"@nx/dependency-checks": [
"error",
{
"ignoredFiles": [
"{projectRoot}/eslint.config.{js,cjs,mjs}",
"{projectRoot}/vite.config.{js,ts,mjs,mts}"
]
}
]
},
"languageOptions": {
"parser": (await import('jsonc-eslint-parser'))
}
}
];

View File

@ -0,0 +1,22 @@
{
"name": "@triliumnext/highlightjs",
"version": "0.0.1",
"private": true,
"type": "module",
"main": "./dist/index.js",
"module": "./dist/index.js",
"types": "./dist/index.d.ts",
"exports": {
"./package.json": "./package.json",
".": {
"development": "./src/index.ts",
"types": "./dist/index.d.ts",
"import": "./dist/index.js",
"default": "./dist/index.js"
}
},
"nx": {
"name": "highlightjs"
},
"dependencies": {}
}

View File

@ -0,0 +1 @@
export * from './lib/highlightjs.js';

View File

@ -0,0 +1,3 @@
export function highlightjs(): string {
return 'highlightjs';
}

View File

@ -0,0 +1,10 @@
{
"extends": "../../tsconfig.base.json",
"files": [],
"include": [],
"references": [
{
"path": "./tsconfig.lib.json"
}
]
}

View File

@ -0,0 +1,21 @@
{
"extends": "../../tsconfig.base.json",
"compilerOptions": {
"baseUrl": ".",
"rootDir": "src",
"outDir": "dist",
"tsBuildInfoFile": "dist/tsconfig.lib.tsbuildinfo",
"emitDeclarationOnly": true,
"forceConsistentCasingInFileNames": true,
"noImplicitOverride": true,
"noImplicitReturns": true,
"types": [
"node",
"vite/client"
]
},
"include": [
"src/**/*.ts"
],
"references": []
}

View File

@ -0,0 +1,37 @@
/// <reference types='vitest' />
import { defineConfig } from 'vite';
import dts from 'vite-plugin-dts';
import * as path from 'path';
export default defineConfig(() => ({
root: __dirname,
cacheDir: '../../node_modules/.vite/packages/highlightjs',
plugins: [dts({ entryRoot: 'src', tsconfigPath: path.join(__dirname, 'tsconfig.lib.json') })],
// Uncomment this if you are using workers.
// worker: {
// plugins: [ nxViteTsPaths() ],
// },
// Configuration for building your library.
// See: https://vitejs.dev/guide/build.html#library-mode
build: {
outDir: './dist',
emptyOutDir: true,
reportCompressedSize: true,
commonjsOptions: {
transformMixedEsModules: true,
},
lib: {
// Could also be a dictionary or array of multiple entry points.
entry: 'src/index.ts',
name: 'highlightjs',
fileName: 'index',
// Change this to the formats you want to support.
// Don't forget to update your package.json as well.
formats: ['es' as const]
},
rollupOptions: {
// External packages that should not be bundled into your library.
external: []
},
},
}));

2
pnpm-lock.yaml generated
View File

@ -1287,6 +1287,8 @@ importers:
specifier: ^2.3.0 specifier: ^2.3.0
version: 2.8.1 version: 2.8.1
packages/highlightjs: {}
packages/turndown-plugin-gfm: packages/turndown-plugin-gfm:
dependencies: dependencies:
'@swc/helpers': '@swc/helpers':

View File

@ -53,6 +53,9 @@
}, },
{ {
"path": "./packages/codemirror" "path": "./packages/codemirror"
},
{
"path": "./packages/highlightjs"
} }
] ]
} }