Merge pull request #166 from 30-seconds/update-extractor

[Chore] Update extractor for 30-seconds-web
This commit is contained in:
Angelos Chalaris
2019-11-06 19:24:51 +02:00
committed by GitHub
7 changed files with 18 additions and 10 deletions

View File

@ -12,5 +12,8 @@ module.exports = {
pagePath: `src/docs/pages`,
staticPartsPath: `src/static-parts`,
// General information
language: `py`,
language: {
short: `py`,
long: `Python`
},
};

View File

@ -112,11 +112,11 @@ try {
output += snippet.attributes.text;
output += `\`\`\`${config.language}\n${snippet.attributes.codeBlocks.code}\n\`\`\``;
output += `\`\`\`${config.language.short}\n${snippet.attributes.codeBlocks.code}\n\`\`\``;
output += misc.collapsible(
'Examples',
`\`\`\`${config.language}\n${snippet.attributes.codeBlocks.example}\n\`\`\``,
`\`\`\`${config.language.short}\n${snippet.attributes.codeBlocks.example}\n\`\`\``,
);
output +=

View File

@ -43,6 +43,7 @@ const completeData = {
meta: {
specification: 'http://jsonapi.org/format/',
type: 'snippetArray',
language: config.language
},
};
let listingData = {
@ -61,6 +62,7 @@ let listingData = {
meta: {
specification: 'http://jsonapi.org/format/',
type: 'snippetListingArray',
language: config.language
},
};
// Write files

View File

@ -36,11 +36,11 @@ const prepTaggedData = tagDbData =>
);
const makeExamples = data => {
data =
data.slice(0, data.lastIndexOf(`\`\`\`${config.language}`)).trim() +
data.slice(0, data.lastIndexOf(`\`\`\`${config.language.short}`)).trim() +
misc.collapsible(
'Examples',
data.slice(
data.lastIndexOf(`\`\`\`${config.language}`),
data.lastIndexOf(`\`\`\`${config.language.short}`),
data.lastIndexOf('```'),
) + data.slice(data.lastIndexOf('```')),
);

View File

@ -53,7 +53,7 @@ const getCodeBlocks = str => {
});
}
const replacer = new RegExp(
`\`\`\`${config.language}([\\s\\S]*?)\`\`\``,
`\`\`\`${config.language.short}([\\s\\S]*?)\`\`\``,
'g',
);
results = results.map(v => v.replace(replacer, '$1').trim());
@ -99,6 +99,9 @@ const readSnippets = snippetsPath => {
},
meta: {
hash: hashData(data.body),
firstSeen: execSync(`git log --diff-filter=A --pretty=format:%at -- snippets/${snippet}`).toString(),
lastUpdated: execSync(`git log -n 1 --pretty=format:%at -- snippets/${snippet}`).toString(),
updateCount: execSync(`git log --pretty=%H -- snippets/${snippet}`).toString().split('\n').length
},
};
}

View File

@ -85,7 +85,7 @@ const FullCard = ({ snippetData, difficulty, isDarkMode }) => {
<ShareIcon />
</button> */}
<pre
className={`card-code language-${config.language}`}
className={`card-code language-${config.language.short}`}
dangerouslySetInnerHTML={{ __html: cardCodeHtml }}
/>
<button
@ -154,7 +154,7 @@ const ShortCard = ({
/>
</CopyToClipboard>
<pre
className={`card-code language-${config.language}`}
className={`card-code language-${config.language.short}`}
dangerouslySetInnerHTML={{ __html: cardCodeHtml }}
/>
</div> : '' }

View File

@ -26,7 +26,7 @@ const getCodeBlocks = str => {
});
}
const replacer = new RegExp(
`<pre class="language-${config.language}"><code class="language-${config.language}">([\\s\\S]*?)</code></pre>`,
`<pre class="language-${config.language.short}"><code class="language-${config.language.short}">([\\s\\S]*?)</code></pre>`,
'g',
);
results = results.map(v => v.replace(replacer, '$1').trim());
@ -85,7 +85,7 @@ const getRawCodeBlocks = str => {
});
}
const replacer = new RegExp(
`\`\`\`${config.language}([\\s\\S]*?)\`\`\``,
`\`\`\`${config.language.short}([\\s\\S]*?)\`\`\``,
'g',
);
results = results.map(v => v.replace(replacer, '$1').trim());