@@ -15,6 +15,7 @@ const argv = require("minimist")(process.argv.slice(2))
1515 ******************************/
1616
1717/**
18+ * -b,--buckets Prints buckets overview and exits
1819 * -v,--verbose Prints verbose console logs
1920 * -f,--full Prints full name of buckets in summary
2021 */
@@ -43,12 +44,15 @@ const argv = require("minimist")(process.argv.slice(2))
4344 * ie. `es: [1, 10],` would import the "Homepage" and "Learn" buckets for Spanish
4445 * 2. Save file without committing*
4546 *
46- * Export/import translated content from Crowdin:
47+ * Optionally: To view summary of buckets from CSV, run `yarn crowdin-import --buckets` or `yarn crowdin-import -b`
48+ * Any items in USER_OVERRIDE will override the CSV import
49+ *
50+ * 3. Export translated content from Crowdin and import into ./.crowdin folder:
4751 * 1. Export latest translated content from Crowdin and unzip
4852 * 2. Copy languages folder from Crowdin export to ./.crowdin
4953 * ie. ./.crowdin/{lang-codes}
5054 *
51- * Execute script:
55+ * 4. Execute script:
5256 * 1. Execute script by running `yarn crowdin-import`
5357 * 2. If successful, copy `GATSBY_BUILD_LANGS={langs}` output and paste in
5458 * your `.env`, then build site to test results.
@@ -58,7 +62,8 @@ const argv = require("minimist")(process.argv.slice(2))
5862
5963type BucketsList = { [ key : string ] : Array < number > }
6064const USER_OVERRIDE : BucketsList = {
61- // langCode: [bucket_number, bucket_number],
65+ // FORMAT: lang_code: [bucket_number, bucket_number, ...],
66+ // EXAMPLE: es: [1, 10, 12, 14],
6267}
6368
6469/******************************
@@ -230,18 +235,21 @@ const highestBucketNumber: number = Object.values(bucketsToImport).reduce(
230235 buckets [ buckets . length - 1 ] > prev ? buckets [ buckets . length - 1 ] : prev ,
231236 0
232237)
238+
239+ /**
240+ * If BUCKET_GENERATION_ONLY (-b, --buckets) flag is enabled, show overview
241+ * of all langs and buckets to be imported. Also print a copy/paste ready
242+ * object for USER_OVERRIDE, then exit the script early.
243+ */
233244if ( BUCKET_GENERATION_ONLY ) {
234245 const bucketsOverview = { }
235246 Object . entries ( bucketsToImport ) . forEach ( ( [ langCode , buckets ] ) => {
236247 bucketsOverview [ langCode ] = Array ( highestBucketNumber - 1 )
237248 . fill ( 0 )
238249 . map ( ( _ , i ) => ( buckets . includes ( i + 1 ) ? i + 1 : "" ) )
239250 } )
240- // Show buckets overview
241251 console . table ( bucketsOverview )
242- // Show buckets to import, set up for copy/paste to USER_OVERRIDE
243252 console . log ( "const USER_OVERRIDE: BucketsList =" , bucketsToImport )
244- // EXIT SCRIPT EARLY
245253 process . exit ( 0 )
246254}
247255
0 commit comments