2022-02-25 04:58:08 -06:00
|
|
|
import D from 'debug';
|
|
|
|
import {Flecks} from '@flecks/core';
|
|
|
|
|
2022-02-25 21:39:51 -06:00
|
|
|
import Progress from './progress';
|
|
|
|
|
2022-02-25 04:58:08 -06:00
|
|
|
/* global __non_webpack_import__ */
|
|
|
|
|
|
|
|
const {version} = require('../package.json');
|
|
|
|
|
2022-02-25 21:39:51 -06:00
|
|
|
const progress = new Progress(window);
|
2022-02-25 04:58:08 -06:00
|
|
|
|
|
|
|
(async () => {
|
|
|
|
// eslint-disable-next-line no-console
|
|
|
|
console.log(`flecks client v${version} loading runtime...`);
|
|
|
|
const config = window[Symbol.for('@flecks/http/config')];
|
|
|
|
const debug = D(config['@flecks/core']?.id || 'flecks');
|
|
|
|
debug('loading runtime...');
|
|
|
|
const {default: loader} = await __non_webpack_import__(
|
|
|
|
/* @preserve webpackChunkName: "flecks-runtime" */
|
|
|
|
'@flecks/http/runtime',
|
|
|
|
);
|
2022-02-25 21:39:51 -06:00
|
|
|
const runtime = await loader(progress.update.bind(progress));
|
|
|
|
progress.finish();
|
2022-02-25 04:58:08 -06:00
|
|
|
debug('starting client...');
|
|
|
|
const flecks = new Flecks(runtime);
|
|
|
|
window.flecks = flecks;
|
|
|
|
try {
|
|
|
|
await flecks.up('@flecks/http/client/up');
|
|
|
|
debug('up!');
|
|
|
|
}
|
|
|
|
catch (error) {
|
|
|
|
// eslint-disable-next-line no-console
|
|
|
|
console.error(error);
|
|
|
|
}
|
|
|
|
})();
|