26 lines
No EOL
925 B
JavaScript
26 lines
No EOL
925 B
JavaScript
import './code-editor.mjs';
|
|
|
|
export default async function init_app() {
|
|
const flags = JSON.parse(document.getElementById('think-editor-data').textContent);
|
|
const packages = await (await fetch('https://elm-package-list.think.somethingorotherwhatever.com/elm-packages.json')).json();
|
|
flags.elm_packages = packages;
|
|
flags.csrf_token = document.getElementById('csrftoken')?.textContent || '';
|
|
const app = Elm.App.init({node: document.body, flags});
|
|
|
|
app.ports.reload_preview.subscribe(() => {
|
|
console.log('reload preview');
|
|
const iframe = document.getElementById('preview-frame');
|
|
if(iframe) {
|
|
const src = iframe.src;
|
|
iframe.src = "";
|
|
setTimeout(() => {
|
|
iframe.src = src;
|
|
},10);
|
|
}
|
|
})
|
|
|
|
app.ports.show_modal.subscribe(id => {
|
|
console.log(id);
|
|
document.getElementById(id).showModal()
|
|
})
|
|
} |