UNPKG

935 BJavaScriptView Raw
1import { rehydrateMarks } from '../loadable/marks';
2export var injectLoadableTracker = function (name) {
3 if (name === void 0) { name = 'importedComponents'; }
4 var value = global[name];
5 if (value) {
6 if (!value.push || (value.push && !value.forEach)) {
7 // tslint:disable-next-line:no-console
8 console.error('given: ', value);
9 throw new Error("injectLoadableTracker(" + name + ") expected to be expected on Array-like variable, and only once.");
10 }
11 value.forEach(function (mark) { return rehydrateMarks(mark); });
12 }
13 global[name] = {
14 push: rehydrateMarks,
15 };
16};
17export var getLoadableTrackerCallback = function (name) {
18 if (name === void 0) { name = 'importedComponents'; }
19 return function (marks) {
20 return "<script>window." + name + "=window." + name + " || [];" + name + ".push(" + JSON.stringify(marks) + ");</script>";
21 };
22};