Skip to content

Instantly share code, notes, and snippets.

@tridungle
Forked from adeelibr/app-bar.js
Created October 1, 2019 06:33
Show Gist options
  • Save tridungle/d77772b41ade0756d7d74a0a9f3b8293 to your computer and use it in GitHub Desktop.
Save tridungle/d77772b41ade0756d7d74a0a9f3b8293 to your computer and use it in GitHub Desktop.
raw-loader-attempts
import 'docs/src/modules/components/bootstrap';
// --- Post bootstrap -----
import React from 'react';
import MarkdownDocs from 'docs/src/modules/components/MarkdownDocs';
const req = require.context('markdown', true, /.md$/);
/*
APPRAOCH #1 DOES NOT WORK! HANGS SYSTEM
const jsCode = require.context('docs/src/pages/demos/app-bar', true, /.js$/);
const rawCode = require.context('!raw-loader!docs/src/pages/demos/app-bar', true, /.js$/);
console.log('@@@ keys', rawCode.keys());
*/
/*
APPRAOCH #2 DOES NOT WORK
const parseAll = r => {
const cache = {};
r.keys().forEach(key => {
const fileName = `${key.split('./')[1]}`;
cache[key] = {
js: r(key).default,
raw: preval`
module.exports = require('fs')
.readFileSync(require.resolve(
docs/src/pages/demos/app-bar/${fileName},
'utf8'
))`,
};
});
return cache;
};
const demos = parseAll(require.context('docs/src/pages/demos/app-bar/', true, /\.js$/));
console.log('### demos', demos);
*/
function Page(props) {
return (
<MarkdownDocs
markdown={req(`./app-bar${props.lang}.md`)}
demos={{
'pages/demos/app-bar/SimpleAppBar.js': {
js: require('docs/src/pages/demos/app-bar/SimpleAppBar').default,
raw: preval`
module.exports = require('fs')
.readFileSync(require.resolve('docs/src/pages/demos/app-bar/SimpleAppBar'), 'utf8')
`,
},
'pages/demos/app-bar/ButtonAppBar.js': {
js: require('docs/src/pages/demos/app-bar/ButtonAppBar').default,
raw: preval`
module.exports = require('fs')
.readFileSync(require.resolve('docs/src/pages/demos/app-bar/ButtonAppBar'), 'utf8')
`,
},
'pages/demos/app-bar/MenuAppBar.js': {
js: require('docs/src/pages/demos/app-bar/MenuAppBar').default,
raw: preval`
module.exports = require('fs')
.readFileSync(require.resolve('docs/src/pages/demos/app-bar/MenuAppBar'), 'utf8')
`,
},
'pages/demos/app-bar/DenseAppBar.js': {
js: require('docs/src/pages/demos/app-bar/DenseAppBar').default,
raw: preval`
module.exports = require('fs')
.readFileSync(require.resolve('docs/src/pages/demos/app-bar/DenseAppBar'), 'utf8')
`,
},
'pages/demos/app-bar/SearchAppBar.js': {
js: require('docs/src/pages/demos/app-bar/SearchAppBar').default,
raw: preval`
module.exports = require('fs')
.readFileSync(require.resolve('docs/src/pages/demos/app-bar/SearchAppBar'), 'utf8')
`,
},
'pages/demos/app-bar/PrimarySearchAppBar.js': {
js: require('docs/src/pages/demos/app-bar/PrimarySearchAppBar').default,
raw: preval`
module.exports = require('fs')
.readFileSync(require.resolve('docs/src/pages/demos/app-bar/PrimarySearchAppBar'), 'utf8')
`,
},
'pages/demos/app-bar/BottomAppBar.js': {
js: require('docs/src/pages/demos/app-bar/BottomAppBar').default,
raw: preval`
module.exports = require('fs')
.readFileSync(require.resolve('docs/src/pages/demos/app-bar/BottomAppBar'), 'utf8')
`,
},
}}
/>
);
}
export default Page;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment