forked from berserker/microblog
parent
6f78c66fe0
commit
ec4f906618
1 changed files with 18 additions and 42 deletions
@ -1,48 +1,24 @@ |
|||||||
import 'packs/public-path'; |
import 'packs/public-path'; |
||||||
import loadPolyfills from 'flavours/glitch/util/load_polyfills'; |
|
||||||
import ready from 'flavours/glitch/util/ready'; |
import ready from 'flavours/glitch/util/ready'; |
||||||
import loadKeyboardExtensions from 'flavours/glitch/util/load_keyboard_extensions'; |
|
||||||
|
|
||||||
function main() { |
ready(() => { |
||||||
const { delegate } = require('@rails/ujs'); |
const React = require('react'); |
||||||
|
const ReactDOM = require('react-dom'); |
||||||
ready(() => { |
|
||||||
const React = require('react'); |
[].forEach.call(document.querySelectorAll('[data-admin-component]'), element => { |
||||||
const ReactDOM = require('react-dom'); |
const componentName = element.getAttribute('data-admin-component'); |
||||||
|
const { locale, ...componentProps } = JSON.parse(element.getAttribute('data-props')); |
||||||
[].forEach.call(document.querySelectorAll('[data-admin-component]'), element => { |
|
||||||
const componentName = element.getAttribute('data-admin-component'); |
import('flavours/glitch/containers/admin_component').then(({ default: AdminComponent }) => { |
||||||
const { locale, ...componentProps } = JSON.parse(element.getAttribute('data-props')); |
return import('flavours/glitch/components/admin/' + componentName).then(({ default: Component }) => { |
||||||
|
ReactDOM.render(( |
||||||
import('flavours/glitch/containers/admin_component').then(({ default: AdminComponent }) => { |
<AdminComponent locale={locale}> |
||||||
return import('flavours/glitch/components/admin/' + componentName).then(({ default: Component }) => { |
<Component {...componentProps} /> |
||||||
ReactDOM.render(( |
</AdminComponent> |
||||||
<AdminComponent locale={locale}> |
), element); |
||||||
<Component {...componentProps} /> |
|
||||||
</AdminComponent> |
|
||||||
), element); |
|
||||||
}); |
|
||||||
}).catch(error => { |
|
||||||
console.error(error); |
|
||||||
}); |
}); |
||||||
|
}).catch(error => { |
||||||
|
console.error(error); |
||||||
}); |
}); |
||||||
}); |
}); |
||||||
|
}); |
||||||
delegate(document, '.sidebar__toggle__icon', 'click', () => { |
|
||||||
const target = document.querySelector('.sidebar ul'); |
|
||||||
|
|
||||||
if (target.style.display === 'block') { |
|
||||||
target.style.display = 'none'; |
|
||||||
} else { |
|
||||||
target.style.display = 'block'; |
|
||||||
} |
|
||||||
}); |
|
||||||
} |
|
||||||
|
|
||||||
loadPolyfills() |
|
||||||
.then(main) |
|
||||||
.then(loadKeyboardExtensions) |
|
||||||
.catch(error => { |
|
||||||
console.error(error); |
|
||||||
|
|
||||||
}); |
|
||||||
|
Loading…
Reference in new issue