From 32f76b74a69ad4d60a014bf075c39517888436bc Mon Sep 17 00:00:00 2001 From: MCMXC <16797721+mcmxcdev@users.noreply.github.com> Date: Sat, 29 Jul 2023 21:12:16 -0600 Subject: refactor: various improvements (#1296) * refactor: various improvements - enable no-use-before-define eslint rule - shuffle code to conform to no-use-before-define eslint rule - remove btoa dependency which is deprecated and replace with Buffer.from(string).toString('base64') - convert some any types into useful ones - add type annotations where possible - remove unused @types/expect.js - install @types/semver and ts-node which were missing - repair and rewrite add-crowdin-contributors script - remove export keyword from variables which are never consumed in another file - remove unity indicator hack where linked issue was closed - remove module declaration for kebab-case which is unused - add missing state interface for certain components - remove default exports for files which already have a named export - export IRecipePreview so it can be used throughout codebase - remove unused removeCacheForCallWith method from CachedRequest.ts - cleanup unused colors and styles inside legacy theme * - improve ColorPickerInput - fix invalid DOM nesting with div inside p in EditSettingsForm - fix progressbarAccentColor color picker not updating input when using slider - install missing @types/react-color dependency --- scripts/add-crowdin-contributors.ts | 42 +++++++++++++++++++++---------------- 1 file changed, 24 insertions(+), 18 deletions(-) (limited to 'scripts/add-crowdin-contributors.ts') diff --git a/scripts/add-crowdin-contributors.ts b/scripts/add-crowdin-contributors.ts index 242d338ce..7a0d0e769 100644 --- a/scripts/add-crowdin-contributors.ts +++ b/scripts/add-crowdin-contributors.ts @@ -53,7 +53,7 @@ console.log(JSON.stringify(members)); * 5. Regenerate the README table using the CLI ('all-contributors generate') * Please check if the generated data is ok and no data is lost. */ -const list: any[] = [ +const list: { name: string; login: string; avatar_url: string }[] = [ { name: 'vantezzen_', login: 'vantezzen_', @@ -1064,21 +1064,27 @@ const list: any[] = [ }, ]; -const infoPath = path.join(__dirname, '..', '.all-contributorsrc'); -const info = fs.readJSONSync(infoPath); -for (const user of list) { - if (user.login) { - info.contributors = allContributors.addContributorWithDetails({ - ...user, - contributions: ['translation'], - profile: `https://crowdin.com/profile/${user.login}`, - options: { - contributors: info.contributors, - }, - }); - } -} +const allContributorsFile = path.join(__dirname, '..', '.all-contributorsrc'); +const allContributorsJSON = fs.readJSONSync(allContributorsFile); -fs.writeJSONSync(infoPath, info, { - spaces: 2, -}); +// eslint-disable-next-line unicorn/prefer-top-level-await +(async () => { + allContributorsJSON.contributors = await Promise.all( + list + .filter(user => user.login) + .map(user => { + return allContributors.addContributorWithDetails({ + ...user, + contributions: ['translation'], + profile: `https://crowdin.com/profile/${user.login}`, + options: { + contributors: allContributorsJSON.contributors, + }, + }); + }), + ); + + fs.writeJSONSync(allContributorsFile, allContributorsJSON, { + spaces: 2, + }); +})(); -- cgit v1.2.3-70-g09d2