mirror of
https://github.com/electron/electron.git
synced 2026-05-02 03:00:22 -04:00
* build: add oxfmt for code formatting and import sorting
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.
* chore: apply oxfmt formatting to JS and TS sources
Runs `yarn format` across lib/, spec/, script/, build/, default_app/,
and npm/ to bring the codebase in line with the .oxfmtrc.json settings
added in the previous commit. This is a pure formatting pass: import
statements are sorted into the groups defined by the config, method
chains longer than printWidth are broken, single-quoted strings
containing apostrophes are switched to double quotes, and a handful of
single-statement `if` bodies are re-wrapped and get braces added by
`oxlint --fix` to satisfy the `curly: multi-line` rule.
No behavior changes.
71 lines
2.6 KiB
JavaScript
71 lines
2.6 KiB
JavaScript
(function () {
|
|
const { setImmediate } = require('node:timers');
|
|
const { ipcRenderer } = require('electron');
|
|
window.ipcRenderer = ipcRenderer;
|
|
window.setImmediate = setImmediate;
|
|
window.require = require;
|
|
|
|
function invoke(code) {
|
|
try {
|
|
return code();
|
|
} catch {
|
|
return null;
|
|
}
|
|
}
|
|
|
|
process.once('loaded', () => {
|
|
ipcRenderer.send('process-loaded');
|
|
});
|
|
|
|
if (location.protocol === 'file:') {
|
|
window.test = 'preload';
|
|
window.process = process;
|
|
if (process.env.sandboxmain) {
|
|
window.test = {
|
|
osSandbox: !process.argv.includes('--no-sandbox'),
|
|
hasCrash: typeof process.crash === 'function',
|
|
hasHang: typeof process.hang === 'function',
|
|
creationTime: invoke(() => process.getCreationTime()),
|
|
heapStatistics: invoke(() => process.getHeapStatistics()),
|
|
blinkMemoryInfo: invoke(() => process.getBlinkMemoryInfo()),
|
|
processMemoryInfo: invoke(() => (process.getProcessMemoryInfo() ? {} : null)),
|
|
systemMemoryInfo: invoke(() => process.getSystemMemoryInfo()),
|
|
systemVersion: invoke(() => process.getSystemVersion()),
|
|
cpuUsage: invoke(() => process.getCPUUsage()),
|
|
uptime: invoke(() => process.uptime()),
|
|
// eslint-disable-next-line unicorn/prefer-node-protocol
|
|
nodeEvents: invoke(() => require('events') === require('node:events')),
|
|
// eslint-disable-next-line unicorn/prefer-node-protocol
|
|
nodeTimers: invoke(() => require('timers') === require('node:timers')),
|
|
// eslint-disable-next-line unicorn/prefer-node-protocol
|
|
nodeUrl: invoke(() => require('url') === require('node:url')),
|
|
env: process.env,
|
|
execPath: process.execPath,
|
|
pid: process.pid,
|
|
arch: process.arch,
|
|
platform: process.platform,
|
|
sandboxed: process.sandboxed,
|
|
contextIsolated: process.contextIsolated,
|
|
type: process.type,
|
|
version: process.version,
|
|
versions: process.versions,
|
|
contextId: process.contextId
|
|
};
|
|
}
|
|
} else if (location.href !== 'about:blank') {
|
|
addEventListener('DOMContentLoaded', () => {
|
|
ipcRenderer.on('touch-the-opener', () => {
|
|
let errorMessage = null;
|
|
try {
|
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
const openerDoc = opener.document;
|
|
} catch (error) {
|
|
errorMessage = error.message;
|
|
}
|
|
ipcRenderer.send('answer', errorMessage);
|
|
});
|
|
ipcRenderer.send('child-loaded', window.opener == null, document.body.innerHTML, location.href);
|
|
});
|
|
}
|
|
})();
|