[READ-ONLY] Mirror of https://github.com/probablykasper/readme-template-action. Integrate GitHub API data in your README.md
0

Configure Feed

Select the types of activity you want to include in your feed.

Fixed output of loops

Kasper (Aug 23, 2020, 3:51 AM +0200) e0bc2e62 0477297f

+22 -60
+1 -44
EXAMPLE_OUTPUT.md
··· 1 - # Test 2 - 3 - 4 - ## Specific repos 5 - 6 - | Stars | Name | Description | 7 - | ----------- | ---------- | ----------------- | 8 - | 1 | [probablykasper/vidl](https://github.com/probablykasper/vidl) | Python script for downloading video/audio | 9 - | 75658 | [golang/go](https://github.com/golang/go) | The Go programming language | 10 - | 0 | [probablykasper/embler](https://github.com/probablykasper/embler) | Turn binaries into applications | 11 - 12 - ## Me 13 - 14 - - **USERNAME**: probablykasper 15 - - **NAME**: Kasper 16 - - **EMAIL**: 17 - - **USER_ID**: MDQ6VXNlcjExMzE1NDky 18 - - **BIO**: 19 - - **COMPANY**: null 20 - - **LOCATION**: Norway 21 - - **TWITTER_USERNAME**: probablykasper 22 - - **AVATAR_URL**: https://avatars0.githubusercontent.com/u/11315492?u=c501da00e9b817ffc78faab6c630f236ac2738cf&v=4 23 - - **WEBSITE_URL**: https://kasper.space/ 24 - - **SIGNUP_DATE**: 2015-03-04T14:48:35Z 25 - - **SIGNUP_YYYY**: 2015 26 - - **SIGNUP_M**: 3 27 - - **SIGNUP_MMM**: Mar 28 - - **SIGNUP_MMMM**: March 29 - - **SIGNUP_D**: 4 30 - - **SIGNUP_DO**: 4th 31 - - **TOTAL_REPOS_SIZE_KB**: 707403 32 - - **TOTAL_REPOS_SIZE_MB**: 707.4 33 - - **TOTAL_REPOS_SIZE_GB**: 0.71 34 - - **TOTAL_REPOSITORIES**: 707403 35 - 36 - ## 5 most starred repos 37 - 38 - | Stars | Name | Description | 39 - | ----- | ---- | ----------- | 40 - | 10 | [probablykasper/chester-syntax](https://github.com/probablykasper/chester-syntax) | A pretty Atom syntax theme based on Lonely Planet colours | 41 - | 4 | [probablykasper/homebrew-tap](https://github.com/probablykasper/homebrew-tap) | null | 42 - | 2 | [probablykasper/cryp](https://github.com/probablykasper/cryp) | Cryptocurrency portfolio tracker | 43 - | 1 | [probablykasper/notifier](https://github.com/probablykasper/notifier) | Flutter app for scheduling notifications | 44 - | 1 | [probablykasper/colorboy](https://github.com/probablykasper/colorboy) | Easy terminal coloring for Node.js, macOS/Linux | 1 + [object Promise]
+9 -10
EXAMPLE_TEMPLATE.md
··· 1 - # Test 1 + # Example 2 2 3 3 ```js 4 4 // {{ TEMPLATE: }} ··· 25 25 26 26 ## Specific repos 27 27 28 - | Stars | Name | Description | 28 + | ⭐️Stars | 📦Repo | 📚Description | 29 29 | ----------- | ---------- | ----------------- | 30 30 {{ loop CUSTOM_PINNED_REPOS }} 31 31 | {{ REPO_STARS }} | [{{ REPO_FULL_NAME }}]({{ REPO_URL }}) | {{ REPO_DESCRIPTION }} | 32 32 {{ end CUSTOM_PINNED_REPOS }} 33 33 34 + ## 5 most starred repos 35 + 36 + {{ loop 5_MOST_STARRED_REPOS }} 37 + ⭐️ {{ REPO_STARS }} [{{ REPO_FULL_NAME }}]({{ REPO_URL }}): {{ REPO_DESCRIPTION }} 38 + 39 + {{ end 5_MOST_STARRED_REPOS }} 40 + 34 41 ## Me 35 42 36 43 - **USERNAME**: {{ USERNAME }} ··· 54 61 - **TOTAL_REPOS_SIZE_MB**: {{ TOTAL_REPOS_SIZE_MB }} 55 62 - **TOTAL_REPOS_SIZE_GB**: {{ TOTAL_REPOS_SIZE_GB }} 56 63 - **TOTAL_REPOSITORIES**: {{ TOTAL_REPOSITORIES }} 57 - 58 - ## 5 most starred repos 59 - 60 - | Stars | Name | Description | 61 - | ----- | ---- | ----------- | 62 - {{ loop 5_MOST_STARRED_REPOS }} 63 - | {{ REPO_STARS }} | [{{ REPO_FULL_NAME }}]({{ REPO_URL }}) | {{ REPO_DESCRIPTION }} | 64 - {{ end 5_MOST_STARRED_REPOS }}
+12 -6
index.js
··· 16 16 17 17 let beforeBlock = str.substring(0, openIndex) 18 18 beforeBlock = trimRightChar(beforeBlock, ' ') 19 - beforeBlock = trimRightChar(beforeBlock, '\n') 19 + if (beforeBlock.endsWith('\n')) { 20 + beforeBlock = beforeBlock.substring(0, beforeBlock.length - 1) 21 + } 20 22 let block = str.substring(openIndex+openStr.length, endIndex) 21 23 block = trimRightChar(block, ' ') 22 - block = trimRightChar(block, '\n') 24 + if (block.endsWith('\n')) { 25 + block = block.substring(0, block.length - 1) 26 + } 23 27 let afterBlock = str.substring(endIndex+closeStr.length) 24 - 25 28 return { beforeBlock, block, afterBlock } 26 29 } 27 30 ··· 49 52 return str 50 53 } 51 54 52 - function injectLoop(str, name, valuesList) { 55 + async function injectLoop(str, name, valuesListArg) { 56 + console.log({str, name, valuesListArg}) 53 57 const parsed = parseBlock(str, `{{ loop ${name} }}`, `{{ end ${name} }}`) 54 58 if (!parsed) return str 59 + let valuesList = valuesListArg 60 + if (typeof valuesListArg === 'function') valuesList = await valuesListArg() 55 61 let newBlock = '' 56 - console.log(parsed.block) 57 62 for (const values of valuesList) { 58 63 newBlock += inject(parsed.block, values) 59 64 } 60 - return parsed.beforeBlock + newBlock + parsed.afterBlock 65 + console.log(parsed) 66 + return parsed.beforeBlock + newBlock + injectLoop(parsed.afterBlock, name, valuesList) 61 67 } 62 68 63 69 run()