mirror of
https://github.com/electron/electron.git
synced 2026-04-10 03:01:51 -04:00
Adds oxfmt as a devDependency alongside oxlint and wires it into the
lint pipeline. The .oxfmtrc.json config matches Electron's current JS
style (single quotes, semicolons, 2-space indent, trailing commas off,
printWidth 100) and configures sortImports with custom groups that
mirror the import/order pathGroups previously enforced by ESLint:
@electron/internal, @electron/*, and {electron,electron/**} each get
their own ordered group ahead of external modules.
- `yarn lint:fmt` runs `oxfmt --check` over JS/TS sources and is
chained into `yarn lint` so CI enforces it automatically.
- `yarn format` runs `oxfmt --write` for local fix-up.
- lint-staged invokes `oxfmt --write` on staged .js/.ts/.mjs/.cjs
files before oxlint, so formatting is applied at commit time.
The next commit applies the formatter to the existing codebase so the
check actually passes.
53 lines
1.2 KiB
JSON
53 lines
1.2 KiB
JSON
{
|
|
"$schema": "./node_modules/oxfmt/configuration_schema.json",
|
|
"printWidth": 120,
|
|
"tabWidth": 2,
|
|
"useTabs": false,
|
|
"semi": true,
|
|
"singleQuote": true,
|
|
"trailingComma": "none",
|
|
"arrowParens": "always",
|
|
"bracketSpacing": true,
|
|
"endOfLine": "lf",
|
|
"sortImports": {
|
|
"newlinesBetween": true,
|
|
"groups": [
|
|
"electron-internal",
|
|
"electron-scoped",
|
|
"electron",
|
|
"external",
|
|
"builtin",
|
|
["sibling", "parent"],
|
|
"index",
|
|
"type",
|
|
"unknown"
|
|
],
|
|
"customGroups": [
|
|
{
|
|
"groupName": "electron-internal",
|
|
"elementNamePattern": ["@electron/internal", "@electron/internal/**"]
|
|
},
|
|
{
|
|
"groupName": "electron-scoped",
|
|
"elementNamePattern": ["@electron/**"]
|
|
},
|
|
{
|
|
"groupName": "electron",
|
|
"elementNamePattern": ["electron", "electron/**"]
|
|
}
|
|
]
|
|
},
|
|
"ignorePatterns": [
|
|
"node_modules",
|
|
"out",
|
|
"ts-gen",
|
|
"spec/node_modules",
|
|
"spec/fixtures/native-addon",
|
|
".github/workflows/node_modules",
|
|
"docs/fiddles",
|
|
"shell/browser/resources/win/resource.h",
|
|
"shell/common/node_includes.h",
|
|
"spec/fixtures/pages/jquery-3.6.0.min.js"
|
|
]
|
|
}
|