mirror of
https://github.com/ThatGuySam/doesitarm.git
synced 2026-05-15 06:35:20 -07:00
Replace all in-scope axios callsites with a new helpers/http.js wrapper over native fetch, including JSON/text GET, JSON POST, HEAD checks, and transient 5xx retry behavior; update all browser, build, script, and proxy API clients to use it; add focused unit tests; and remove axios from package dependencies. Constraint: Preserve API/build and deployment behavior while lowering transport surface area. Rejected: inline fetch replacements at each callsite | rejected to avoid inconsistent error/retry semantics. Confidence: high Scope-risk: moderate Directive: Keep helper in place as the transport boundary and update tests when changing request semantics. Tested: pnpm run -s typecheck, pnpm -s run test-prebuild, pnpm -s run test, pnpm -s run test:browser, pnpm -s run netlify-build, smoke GETs on /apple-silicon-app-test and /apple-silicon-app-test/?version=2 Not-tested: branch/netlify deployment health in CI pipeline after merge
31 lines
905 B
JavaScript
31 lines
905 B
JavaScript
import fs from 'fs-extra'
|
|
import 'dotenv/config.js'
|
|
|
|
import {
|
|
// storkVersion,
|
|
// storkExecutableName,
|
|
// storkExecutablePath,
|
|
storkTomlPath,
|
|
} from '~/helpers/stork/config.js'
|
|
import { getText } from '~/helpers/http.js'
|
|
|
|
export async function downloadStorkToml () {
|
|
// Check if the toml file exists
|
|
if (fs.existsSync(storkTomlPath)) {
|
|
console.log(`Stork toml file already exists at ${storkTomlPath}`)
|
|
return
|
|
}
|
|
|
|
const apiUrl = new URL( process.env.PUBLIC_API_DOMAIN )
|
|
|
|
apiUrl.pathname = storkTomlPath.replace('static/', '')
|
|
|
|
const storkToml = await getText( apiUrl.toString() )
|
|
|
|
await fs.writeFile( storkTomlPath, storkToml, { encoding: null })
|
|
|
|
// Get toml file stats
|
|
const stats = await fs.stat( storkTomlPath )
|
|
console.log( stats.isFile() ? '✅' : '❌', 'TOML is file', storkTomlPath )
|
|
// console.log('TOML Stats', stats)
|
|
}
|