mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-08-12 14:40:22 +08:00
chore: migrate oxlint & oxfmt (#15464)
#### PR Dependency Tree * **PR #15464** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Replaced the project’s formatting and linting workflow with Oxfmt and Oxlint. * Added shared formatting and linting configuration, editor integration, and updated automated checks. * Updated generated files, scripts, and lint guidance to use the new tooling. * **Style** * Reformatted templates, source code, examples, and configuration files for consistent readability. * No user-facing functionality or rendering behavior changed. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
This commit is contained in:
@@ -17,7 +17,7 @@
|
||||
"@types/node": "^22.0.0",
|
||||
"chalk": "^5.3.0",
|
||||
"lodash-es": "^4.17.23",
|
||||
"prettier": "^3.7.4",
|
||||
"oxfmt": "0.63.0",
|
||||
"typescript": "^5.9.3"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,17 +1,22 @@
|
||||
import { readFileSync } from 'node:fs';
|
||||
|
||||
import { once } from 'lodash-es';
|
||||
import { type BuiltInParserName, format } from 'prettier';
|
||||
import { format, type FormatConfig } from 'oxfmt';
|
||||
|
||||
import { ProjectRoot } from './path';
|
||||
|
||||
const readConfig = once(() => {
|
||||
const path = ProjectRoot.join('.prettierrc').value;
|
||||
const config = JSON.parse(readFileSync(path, 'utf-8'));
|
||||
const path = ProjectRoot.join('.oxfmtrc.json').value;
|
||||
const config = JSON.parse(readFileSync(path, 'utf-8')) as FormatConfig;
|
||||
return config;
|
||||
});
|
||||
|
||||
export function prettier(content: string, parser: BuiltInParserName) {
|
||||
const config = readConfig();
|
||||
return format(content, { parser, ...config });
|
||||
export async function formatCode(content: string, fileName: string) {
|
||||
const result = await format(fileName, content, readConfig());
|
||||
if (result.errors.length) {
|
||||
throw new Error(
|
||||
result.errors.map(error => error.codeframe ?? error.message).join('\n')
|
||||
);
|
||||
}
|
||||
return result.code;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user