mirror of
https://github.com/transloadit/uppy.git
synced 2026-07-18 00:55:35 +00:00
Part of the dev-dependency major-version upgrades. These required code changes so they're split out from the no-code-change batch (#6315). **AI Disclaimer** : AI Used - **glob 8 → 13** — `@uppy/locales` scripts: the callback API was removed, so `getPaths()` uses the promise form and `test.mjs` uses the named `globSync`. - **npm-packlist 5 → 11** — `upload-to-cdn.js`: v7+ takes an `@npmcli/arborist` tree instead of `{ path }`; loads the tree and passes it to `packlist()`. Adds `@npmcli/arborist` as a devDependency. - **nock 13 → 14** (`@uppy/companion`) — the v14 @mswjs/interceptors rewrite crashed the SSRF tests in `http-agent.test.ts`; nock interception is now kept off by default and only activated for the one test that mocks a host. - **@types/use-sync-external-store 0 → 1** — `@uppy/react`: v1's exports map only exposes extensionless subpaths, so imports use `use-sync-external-store/shim` and `/with-selector` (runtime supports both).
35 lines
816 B
JavaScript
35 lines
816 B
JavaScript
import path from 'node:path'
|
|
import { pathToFileURL } from 'node:url'
|
|
|
|
import { glob } from 'glob'
|
|
|
|
export function getPaths(globPath) {
|
|
return glob(globPath)
|
|
}
|
|
|
|
export function sortObjectAlphabetically(obj) {
|
|
return Object.fromEntries(
|
|
Object.entries(obj).sort(([keyA], [keyB]) => keyA.localeCompare(keyB)),
|
|
)
|
|
}
|
|
|
|
export function omit(object, key) {
|
|
const copy = { ...object }
|
|
delete copy[key]
|
|
return copy
|
|
}
|
|
|
|
export async function getLocales(pathPattern) {
|
|
const paths = await getPaths(pathPattern)
|
|
|
|
return Object.fromEntries(
|
|
await Promise.all(
|
|
paths.map(async (filePath) => {
|
|
const pluginName = path.basename(path.join(filePath, '..', '..'))
|
|
const { default: locale } = await import(pathToFileURL(filePath))
|
|
|
|
return [pluginName, locale]
|
|
}),
|
|
),
|
|
)
|
|
}
|