@worktile/planet 19.0.0-next.0 → 19.0.0-next.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/assets-loader.d.ts +9 -4
  3. package/assets-loader.d.ts.map +1 -1
  4. package/esm2022/application/ng-planet-application-ref.mjs +116 -0
  5. package/esm2022/application/planet-application-loader.mjs +459 -0
  6. package/esm2022/application/planet-application-ref.mjs +2 -0
  7. package/esm2022/application/planet-application.service.mjs +86 -0
  8. package/esm2022/application/portal-application.mjs +25 -0
  9. package/esm2022/assets-loader.mjs +332 -0
  10. package/esm2022/component/planet-component-loader.mjs +213 -0
  11. package/esm2022/component/planet-component-outlet.mjs +72 -0
  12. package/esm2022/component/planet-component-types.mjs +3 -0
  13. package/esm2022/component/plant-component.config.mjs +7 -0
  14. package/esm2022/debug.mjs +33 -0
  15. package/esm2022/empty/empty.component.mjs +17 -0
  16. package/esm2022/global-event-dispatcher.mjs +70 -0
  17. package/esm2022/global-planet.mjs +63 -0
  18. package/esm2022/helpers.mjs +187 -0
  19. package/esm2022/inner-types.mjs +2 -0
  20. package/esm2022/module.mjs +33 -0
  21. package/esm2022/planet.class.mjs +9 -0
  22. package/esm2022/planet.mjs +97 -0
  23. package/esm2022/public-api.mjs +19 -0
  24. package/esm2022/router/route-redirect.mjs +63 -0
  25. package/esm2022/sandbox/constants.mjs +7 -0
  26. package/esm2022/sandbox/exec.mjs +15 -0
  27. package/esm2022/sandbox/index.mjs +20 -0
  28. package/esm2022/sandbox/proxy/patches/document.mjs +12 -0
  29. package/esm2022/sandbox/proxy/patches/eventListener.mjs +41 -0
  30. package/esm2022/sandbox/proxy/patches/index.mjs +11 -0
  31. package/esm2022/sandbox/proxy/patches/storage.mjs +40 -0
  32. package/esm2022/sandbox/proxy/patches/timer.mjs +43 -0
  33. package/esm2022/sandbox/proxy/proxies/common.mjs +132 -0
  34. package/esm2022/sandbox/proxy/proxies/document.mjs +126 -0
  35. package/esm2022/sandbox/proxy/proxies/window.mjs +158 -0
  36. package/esm2022/sandbox/proxy/proxy-sandbox.mjs +49 -0
  37. package/esm2022/sandbox/proxy/types.mjs +2 -0
  38. package/esm2022/sandbox/sandbox.mjs +7 -0
  39. package/esm2022/sandbox/snapshot/snapshot-sandbox.mjs +12 -0
  40. package/esm2022/sandbox/types.mjs +2 -0
  41. package/esm2022/worktile-planet.mjs +5 -0
  42. package/fesm2022/worktile-planet.mjs +81 -51
  43. package/fesm2022/worktile-planet.mjs.map +1 -1
  44. package/helpers.d.ts +1 -1
  45. package/helpers.d.ts.map +1 -1
  46. package/inner-types.d.ts +6 -3
  47. package/inner-types.d.ts.map +1 -1
  48. package/package.json +3 -1
@@ -0,0 +1,187 @@
1
+ const ELEMENT_NODE_TYPE = 1;
2
+ export function hashCode(str) {
3
+ let hash = 0;
4
+ let chr;
5
+ if (str.length === 0) {
6
+ return hash;
7
+ }
8
+ for (let i = 0; i < str.length; i++) {
9
+ chr = str.charCodeAt(i);
10
+ hash = (hash << 5) - hash + chr;
11
+ hash |= 0; // Convert to 32bit integer
12
+ }
13
+ return hash;
14
+ }
15
+ export function getHTMLElement(selector) {
16
+ if (selector instanceof HTMLElement) {
17
+ return selector;
18
+ }
19
+ else {
20
+ return document.querySelector(selector);
21
+ }
22
+ }
23
+ export function getTagNameByTemplate(template) {
24
+ const element = createElementByTemplate(template);
25
+ return element ? element.nodeName : '';
26
+ }
27
+ export function createElementByTemplate(template) {
28
+ if (!template) {
29
+ return null;
30
+ }
31
+ const element = document.createRange().createContextualFragment(template).firstChild;
32
+ if (element && element.nodeType === ELEMENT_NODE_TYPE) {
33
+ return element;
34
+ }
35
+ else {
36
+ throw new Error(`invalid template '${template}'`);
37
+ }
38
+ }
39
+ export function coerceArray(value) {
40
+ return Array.isArray(value) ? value : [value];
41
+ }
42
+ export function isEmpty(value) {
43
+ if (!value || value.length === 0) {
44
+ return true;
45
+ }
46
+ else {
47
+ return false;
48
+ }
49
+ }
50
+ export function isFunction(value) {
51
+ const type = typeof value;
52
+ return !!value && type === 'function';
53
+ }
54
+ export function isObject(value) {
55
+ return value && typeof value === 'object';
56
+ }
57
+ /**
58
+ * Get file name from path
59
+ * 1. "main.js" => "main.js"
60
+ * 2. "assets/scripts/main.js" => "main.js"
61
+ * @param path path
62
+ */
63
+ export function getResourceFileName(path) {
64
+ const lastSlashIndex = path.lastIndexOf('/');
65
+ if (lastSlashIndex >= 0) {
66
+ return path.slice(lastSlashIndex + 1);
67
+ }
68
+ else {
69
+ return path;
70
+ }
71
+ }
72
+ export function getExtName(name) {
73
+ const lastDotIndex = name.lastIndexOf('.');
74
+ if (lastDotIndex >= 0) {
75
+ return name.slice(lastDotIndex + 1);
76
+ }
77
+ else {
78
+ return '';
79
+ }
80
+ }
81
+ /**
82
+ * Build resource path by manifest
83
+ * if manifest is { "main.js": "main.h2sh23abee.js"}
84
+ * 1. "main.js" => "main.h2sh23abee.js"
85
+ * 2. "assets/scripts/main.js" =>"assets/scripts/main.h2sh23abee.js"
86
+ * @param resourceFilePath Resource File Path
87
+ * @param manifestResult manifest
88
+ */
89
+ export function buildResourceFilePath(resourceFilePath, manifestResult) {
90
+ const fileName = getResourceFileName(resourceFilePath);
91
+ if (manifestResult[fileName]) {
92
+ return resourceFilePath.replace(fileName, manifestResult[fileName].src);
93
+ }
94
+ else {
95
+ return resourceFilePath;
96
+ }
97
+ }
98
+ export function buildFullPath(path, basePath) {
99
+ if (basePath) {
100
+ if (path.startsWith(basePath)) {
101
+ return path;
102
+ }
103
+ else {
104
+ return `${basePath}${path}`;
105
+ }
106
+ }
107
+ return path;
108
+ }
109
+ function getDefinedAssets(app) {
110
+ if (app.entry) {
111
+ return {
112
+ scripts: isObject(app.entry) ? app.entry.scripts : undefined,
113
+ styles: isObject(app.entry) ? app.entry.styles : undefined
114
+ };
115
+ }
116
+ return {
117
+ scripts: app.scripts,
118
+ styles: app.styles
119
+ };
120
+ }
121
+ export function getAssetsBasePath(app) {
122
+ let basePath;
123
+ if (app.entry) {
124
+ if (isObject(app.entry)) {
125
+ basePath = app.entry.basePath;
126
+ }
127
+ else {
128
+ const lastDotIndex = app.entry.lastIndexOf('/');
129
+ basePath = lastDotIndex > 0 ? app.entry.slice(0, lastDotIndex + 1) : undefined;
130
+ }
131
+ }
132
+ return basePath || app.resourcePathPrefix;
133
+ }
134
+ function getAssetsByDefined(definedPaths, manifest, ext) {
135
+ let assets = [];
136
+ if (definedPaths) {
137
+ definedPaths.forEach(definedPath => {
138
+ const fileName = getResourceFileName(definedPath);
139
+ const assetsTagItem = manifest[fileName];
140
+ assets = assets.concat(assetsTagItem.map(item => ({
141
+ ...item,
142
+ src: definedPath.replace(fileName, item.src)
143
+ })));
144
+ });
145
+ }
146
+ else {
147
+ Object.keys(manifest)
148
+ .filter(key => {
149
+ return getExtName(key) === ext;
150
+ })
151
+ .forEach(key => {
152
+ assets = assets.concat(manifest[key]);
153
+ });
154
+ }
155
+ return assets;
156
+ }
157
+ export function toAssetsTagItem(src) {
158
+ return {
159
+ src: src
160
+ };
161
+ }
162
+ export function toAssetsTagItems(src) {
163
+ return src.map(item => toAssetsTagItem(item));
164
+ }
165
+ export function getScriptsAndStylesAssets(app, basePath, manifestResult) {
166
+ const result = { scripts: [], styles: [] };
167
+ let { scripts, styles } = getDefinedAssets(app);
168
+ // combine resource path by manifest
169
+ if (manifestResult) {
170
+ result.scripts = getAssetsByDefined(scripts, manifestResult, 'js');
171
+ result.styles = getAssetsByDefined(styles, manifestResult, 'css');
172
+ }
173
+ else {
174
+ result.scripts = toAssetsTagItems(scripts);
175
+ result.styles = toAssetsTagItems(styles);
176
+ }
177
+ if (basePath) {
178
+ result.scripts.forEach(item => {
179
+ item.src = buildFullPath(item.src, basePath);
180
+ });
181
+ result.styles.forEach(item => {
182
+ item.src = buildFullPath(item.src, basePath);
183
+ });
184
+ }
185
+ return result;
186
+ }
187
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL3BsYW5ldC9zcmMvaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLGlCQUFpQixHQUFHLENBQUMsQ0FBQztBQUU1QixNQUFNLFVBQVUsUUFBUSxDQUFDLEdBQVc7SUFDaEMsSUFBSSxJQUFJLEdBQUcsQ0FBQyxDQUFDO0lBQ2IsSUFBSSxHQUFXLENBQUM7SUFDaEIsSUFBSSxHQUFHLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ25CLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFDRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQ2xDLEdBQUcsR0FBRyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hCLElBQUksR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLEdBQUcsR0FBRyxDQUFDO1FBQ2hDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQywyQkFBMkI7SUFDMUMsQ0FBQztJQUNELE9BQU8sSUFBSSxDQUFDO0FBQ2hCLENBQUM7QUFFRCxNQUFNLFVBQVUsY0FBYyxDQUFDLFFBQThCO0lBQ3pELElBQUksUUFBUSxZQUFZLFdBQVcsRUFBRSxDQUFDO1FBQ2xDLE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7U0FBTSxDQUFDO1FBQ0osT0FBTyxRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzVDLENBQUM7QUFDTCxDQUFDO0FBRUQsTUFBTSxVQUFVLG9CQUFvQixDQUFDLFFBQWdCO0lBQ2pELE1BQU0sT0FBTyxHQUFHLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2xELE9BQU8sT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFB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QUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDekIsSUFBSSxDQUFDLEdBQUcsR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNqRCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFDRCxPQUFPLE1BQU0sQ0FBQztBQUNsQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXNzZXRzVGFnSXRlbSB9IGZyb20gJy4vaW5uZXItdHlwZXMnO1xuaW1wb3J0IHsgUGxhbmV0QXBwbGljYXRpb24sIFBsYW5ldEFwcGxpY2F0aW9uRW50cnkgfSBmcm9tICcuL3BsYW5ldC5jbGFzcyc7XG5cbmNvbnN0IEVMRU1FTlRfTk9ERV9UWVBFID0gMTtcblxuZXhwb3J0IGZ1bmN0aW9uIGhhc2hDb2RlKHN0cjogc3RyaW5nKTogbnVtYmVyIHtcbiAgICBsZXQgaGFzaCA9IDA7XG4gICAgbGV0IGNocjogbnVtYmVyO1xuICAgIGlmIChzdHIubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJldHVybiBoYXNoO1xuICAgIH1cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHN0ci5sZW5ndGg7IGkrKykge1xuICAgICAgICBjaHIgPSBzdHIuY2hhckNvZGVBdChpKTtcbiAgICAgICAgaGFzaCA9IChoYXNoIDw8IDUpIC0gaGFzaCArIGNocjtcbiAgICAgICAgaGFzaCB8PSAwOyAvLyBDb252ZXJ0IHRvIDMyYml0IGludGVnZXJcbiAgICB9XG4gICAgcmV0dXJuIGhhc2g7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRIVE1MRWxlbWVudChzZWxlY3Rvcjogc3RyaW5nIHwgSFRNTEVsZW1lbnQpOiBIVE1MRWxlbWVudCB8IG51bGwge1xuICAgIGlmIChzZWxlY3RvciBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KSB7XG4gICAgICAgIHJldHVybiBzZWxlY3RvcjtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihzZWxlY3Rvcik7XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VGFnTmFtZUJ5VGVtcGxhdGUodGVtcGxhdGU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3QgZWxlbWVudCA9IGNyZWF0ZUVsZW1lbnRCeVRlbXBsYXRlKHRlbXBsYXRlKTtcbiAgICByZXR1cm4gZWxlbWVudCA/IGVsZW1lbnQubm9kZU5hbWUgOiAnJztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUVsZW1lbnRCeVRlbXBsYXRlKHRlbXBsYXRlOiBzdHJpbmcpIHtcbiAgICBpZiAoIXRlbXBsYXRlKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgICBjb25zdCBlbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKS5jcmVhdGVDb250ZXh0dWFsRnJhZ21lbnQodGVtcGxhdGUpLmZpcnN0Q2hpbGQ7XG4gICAgaWYgKGVsZW1lbnQgJiYgZWxlbWVudC5ub2RlVHlwZSA9PT0gRUxFTUVOVF9OT0RFX1RZUEUpIHtcbiAgICAgICAgcmV0dXJuIGVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIHRlbXBsYXRlICcke3RlbXBsYXRlfSdgKTtcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjb2VyY2VBcnJheTxUPih2YWx1ZTogVCB8IFRbXSk6IFRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmlzQXJyYXkodmFsdWUpID8gdmFsdWUgOiBbdmFsdWVdO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNFbXB0eSh2YWx1ZTogYW55KTogYm9vbGVhbiB7XG4gICAgaWYgKCF2YWx1ZSB8fCB2YWx1ZS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRnVuY3Rpb24odmFsdWU6IGFueSk6IHZhbHVlIGlzIEZ1bmN0aW9uIHtcbiAgICBjb25zdCB0eXBlID0gdHlwZW9mIHZhbHVlO1xuICAgIHJldHVybiAhIXZhbHVlICYmIHR5cGUgPT09ICdmdW5jdGlvbic7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc09iamVjdDxUIGV4dGVuZHMgb2JqZWN0Pih2YWx1ZTogYW55KTogdmFsdWUgaXMgVCB7XG4gICAgcmV0dXJuIHZhbHVlICYmIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCc7XG59XG4vKipcbiAqIEdldCBmaWxlIG5hbWUgZnJvbSBwYXRoXG4gKiAxLiBcIm1haW4uanNcIiA9PiBcIm1haW4uanNcIlxuICogMi4gXCJhc3NldHMvc2NyaXB0cy9tYWluLmpzXCIgPT4gXCJtYWluLmpzXCJcbiAqIEBwYXJhbSBwYXRoIHBhdGhcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFJlc291cmNlRmlsZU5hbWUocGF0aDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBsYXN0U2xhc2hJbmRleCA9IHBhdGgubGFzdEluZGV4T2YoJy8nKTtcbiAgICBpZiAobGFzdFNsYXNoSW5kZXggPj0gMCkge1xuICAgICAgICByZXR1cm4gcGF0aC5zbGljZShsYXN0U2xhc2hJbmRleCArIDEpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBwYXRoO1xuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEV4dE5hbWUobmFtZTogc3RyaW5nKSB7XG4gICAgY29uc3QgbGFzdERvdEluZGV4ID0gbmFtZS5sYXN0SW5kZXhPZignLicpO1xuICAgIGlmIChsYXN0RG90SW5kZXggPj0gMCkge1xuICAgICAgICByZXR1cm4gbmFtZS5zbGljZShsYXN0RG90SW5kZXggKyAxKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gJyc7XG4gICAgfVxufVxuXG4vKipcbiAqIEJ1aWxkIHJlc291cmNlIHBhdGggYnkgbWFuaWZlc3RcbiAqIGlmIG1hbmlmZXN0IGlzIHsgXCJtYWluLmpzXCI6IFwibWFpbi5oMnNoMjNhYmVlLmpzXCJ9XG4gKiAxLiBcIm1haW4uanNcIiA9PiBcIm1haW4uaDJzaDIzYWJlZS5qc1wiXG4gKiAyLiBcImFzc2V0cy9zY3JpcHRzL21haW4uanNcIiA9PlwiYXNzZXRzL3NjcmlwdHMvbWFpbi5oMnNoMjNhYmVlLmpzXCJcbiAqIEBwYXJhbSByZXNvdXJjZUZpbGVQYXRoIFJlc291cmNlIEZpbGUgUGF0aFxuICogQHBhcmFtIG1hbmlmZXN0UmVzdWx0IG1hbmlmZXN0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBidWlsZFJlc291cmNlRmlsZVBhdGgocmVzb3VyY2VGaWxlUGF0aDogc3RyaW5nLCBtYW5pZmVzdFJlc3VsdDogUmVjb3JkPHN0cmluZywgQXNzZXRzVGFnSXRlbT4pIHtcbiAgICBjb25zdCBmaWxlTmFtZSA9IGdldFJlc291cmNlRmlsZU5hbWUocmVzb3VyY2VGaWxlUGF0aCk7XG4gICAgaWYgKG1hbmlmZXN0UmVzdWx0W2ZpbGVOYW1lXSkge1xuICAgICAgICByZXR1cm4gcmVzb3VyY2VGaWxlUGF0aC5yZXBsYWNlKGZpbGVOYW1lLCBtYW5pZmVzdFJlc3VsdFtmaWxlTmFtZV0uc3JjKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gcmVzb3VyY2VGaWxlUGF0aDtcbiAgICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBidWlsZEZ1bGxQYXRoKHBhdGg6IHN0cmluZywgYmFzZVBhdGg/OiBzdHJpbmcpIHtcbiAgICBpZiAoYmFzZVBhdGgpIHtcbiAgICAgICAgaWYgKHBhdGguc3RhcnRzV2l0aChiYXNlUGF0aCkpIHtcbiAgICAgICAgICAgIHJldHVybiBwYXRoO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIGAke2Jhc2VQYXRofSR7cGF0aH1gO1xuICAgICAgICB9XG4gICAgfVxuICAgIHJldHVybiBwYXRoO1xufVxuXG5mdW5jdGlvbiBnZXREZWZpbmVkQXNzZXRzKGFwcDogUGxhbmV0QXBwbGljYXRpb24pIHtcbiAgICBpZiAoYXBwLmVudHJ5KSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBzY3JpcHRzOiBpc09iamVjdDxQbGFuZXRBcHBsaWNhdGlvbkVudHJ5PihhcHAuZW50cnkpID8gYXBwLmVudHJ5LnNjcmlwdHMgOiB1bmRlZmluZWQsXG4gICAgICAgICAgICBzdHlsZXM6IGlzT2JqZWN0PFBsYW5ldEFwcGxpY2F0aW9uRW50cnk+KGFwcC5lbnRyeSkgPyBhcHAuZW50cnkuc3R5bGVzIDogdW5kZWZpbmVkXG4gICAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICAgIHNjcmlwdHM6IGFwcC5zY3JpcHRzLFxuICAgICAgICBzdHlsZXM6IGFwcC5zdHlsZXNcbiAgICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0QXNzZXRzQmFzZVBhdGgoYXBwOiBQbGFuZXRBcHBsaWNhdGlvbik6IHN0cmluZyB7XG4gICAgbGV0IGJhc2VQYXRoOiBzdHJpbmc7XG4gICAgaWYgKGFwcC5lbnRyeSkge1xuICAgICAgICBpZiAoaXNPYmplY3Q8UGxhbmV0QXBwbGljYXRpb25FbnRyeT4oYXBwLmVudHJ5KSkge1xuICAgICAgICAgICAgYmFzZVBhdGggPSBhcHAuZW50cnkuYmFzZVBhdGg7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCBsYXN0RG90SW5kZXggPSBhcHAuZW50cnkubGFzdEluZGV4T2YoJy8nKTtcbiAgICAgICAgICAgIGJhc2VQYXRoID0gbGFzdERvdEluZGV4ID4gMCA/IGFwcC5lbnRyeS5zbGljZSgwLCBsYXN0RG90SW5kZXggKyAxKSA6IHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gYmFzZVBhdGggfHwgYXBwLnJlc291cmNlUGF0aFByZWZpeDtcbn1cblxuZnVuY3Rpb24gZ2V0QXNzZXRzQnlEZWZpbmVkKGRlZmluZWRQYXRoczogc3RyaW5nW10sIG1hbmlmZXN0OiBSZWNvcmQ8c3RyaW5nLCBBc3NldHNUYWdJdGVtW10+LCBleHQ6ICdqcycgfCAnY3NzJyk6IEFzc2V0c1RhZ0l0ZW1bXSB7XG4gICAgbGV0IGFzc2V0czogQXNzZXRzVGFnSXRlbVtdID0gW107XG4gICAgaWYgKGRlZmluZWRQYXRocykge1xuICAgICAgICBkZWZpbmVkUGF0aHMuZm9yRWFjaChkZWZpbmVkUGF0aCA9PiB7XG4gICAgICAgICAgICBjb25zdCBmaWxlTmFtZSA9IGdldFJlc291cmNlRmlsZU5hbWUoZGVmaW5lZFBhdGgpO1xuICAgICAgICAgICAgY29uc3QgYXNzZXRzVGFnSXRlbSA9IG1hbmlmZXN0W2ZpbGVOYW1lXTtcbiAgICAgICAgICAgIGFzc2V0cyA9IGFzc2V0cy5jb25jYXQoXG4gICAgICAgICAgICAgICAgYXNzZXRzVGFnSXRlbS5tYXAoaXRlbSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAuLi5pdGVtLFxuICAgICAgICAgICAgICAgICAgICBzcmM6IGRlZmluZWRQYXRoLnJlcGxhY2UoZmlsZU5hbWUsIGl0ZW0uc3JjKVxuICAgICAgICAgICAgICAgIH0pKVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgT2JqZWN0LmtleXMobWFuaWZlc3QpXG4gICAgICAgICAgICAuZmlsdGVyKGtleSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGdldEV4dE5hbWUoa2V5KSA9PT0gZXh0O1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICAgICAgYXNzZXRzID0gYXNzZXRzLmNvbmNhdChtYW5pZmVzdFtrZXldKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gYXNzZXRzO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdG9Bc3NldHNUYWdJdGVtKHNyYzogc3RyaW5nKTogQXNzZXRzVGFnSXRlbSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgc3JjOiBzcmNcbiAgICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdG9Bc3NldHNUYWdJdGVtcyhzcmM6IHN0cmluZ1tdKTogQXNzZXRzVGFnSXRlbVtdIHtcbiAgICByZXR1cm4gc3JjLm1hcChpdGVtID0+IHRvQXNzZXRzVGFnSXRlbShpdGVtKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRTY3JpcHRzQW5kU3R5bGVzQXNzZXRzKFxuICAgIGFwcDogUGxhbmV0QXBwbGljYXRpb24sXG4gICAgYmFzZVBhdGg6IHN0cmluZyxcbiAgICBtYW5pZmVzdFJlc3VsdD86IFJlY29yZDxzdHJpbmcsIEFzc2V0c1RhZ0l0ZW1bXT5cbik6IHsgc2NyaXB0czogQXNzZXRzVGFnSXRlbVtdOyBzdHlsZXM6IEFzc2V0c1RhZ0l0ZW1bXSB9IHtcbiAgICBjb25zdCByZXN1bHQ6IHsgc2NyaXB0czogQXNzZXRzVGFnSXRlbVtdOyBzdHlsZXM6IEFzc2V0c1RhZ0l0ZW1bXSB9ID0geyBzY3JpcHRzOiBbXSwgc3R5bGVzOiBbXSB9O1xuICAgIGxldCB7IHNjcmlwdHMsIHN0eWxlcyB9ID0gZ2V0RGVmaW5lZEFzc2V0cyhhcHApO1xuICAgIC8vIGNvbWJpbmUgcmVzb3VyY2UgcGF0aCBieSBtYW5pZmVzdFxuICAgIGlmIChtYW5pZmVzdFJlc3VsdCkge1xuICAgICAgICByZXN1bHQuc2NyaXB0cyA9IGdldEFzc2V0c0J5RGVmaW5lZChzY3JpcHRzLCBtYW5pZmVzdFJlc3VsdCwgJ2pzJyk7XG4gICAgICAgIHJlc3VsdC5zdHlsZXMgPSBnZXRBc3NldHNCeURlZmluZWQoc3R5bGVzLCBtYW5pZmVzdFJlc3VsdCwgJ2NzcycpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJlc3VsdC5zY3JpcHRzID0gdG9Bc3NldHNUYWdJdGVtcyhzY3JpcHRzKTtcbiAgICAgICAgcmVzdWx0LnN0eWxlcyA9IHRvQXNzZXRzVGFnSXRlbXMoc3R5bGVzKTtcbiAgICB9XG4gICAgaWYgKGJhc2VQYXRoKSB7XG4gICAgICAgIHJlc3VsdC5zY3JpcHRzLmZvckVhY2goaXRlbSA9PiB7XG4gICAgICAgICAgICBpdGVtLnNyYyA9IGJ1aWxkRnVsbFBhdGgoaXRlbS5zcmMsIGJhc2VQYXRoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJlc3VsdC5zdHlsZXMuZm9yRWFjaChpdGVtID0+IHtcbiAgICAgICAgICAgIGl0ZW0uc3JjID0gYnVpbGRGdWxsUGF0aChpdGVtLnNyYywgYmFzZVBhdGgpO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5uZXItdHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wYWNrYWdlcy9wbGFuZXQvc3JjL2lubmVyLXR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFNjcmlwdFRhZ0F0dHJpYnV0ZXMge1xuICAgIHR5cGU/OiAnbW9kdWxlJyB8ICd0ZXh0L3NjcmlwdCcgfCB1bmRlZmluZWQ7XG4gICAgYXN5bmM/OiBzdHJpbmc7XG4gICAgZGVmZXI/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlua1RhZ0F0dHJpYnV0ZXMge1xuICAgIHJlbD86IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgU2NyaXB0T3JMaW5rVGFnQXR0cmlidXRlcyA9IFNjcmlwdFRhZ0F0dHJpYnV0ZXMgfCBMaW5rVGFnQXR0cmlidXRlcztcblxuZXhwb3J0IGludGVyZmFjZSBBc3NldHNUYWdJdGVtIHtcbiAgICBzcmM6IHN0cmluZztcbiAgICB0YWdOYW1lPzogJ2xpbmsnIHwgJ3NjcmlwdCc7XG4gICAgYXR0cmlidXRlcz86IFNjcmlwdE9yTGlua1RhZ0F0dHJpYnV0ZXM7XG59XG4iXX0=
@@ -0,0 +1,33 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { PLANET_APPLICATIONS } from './planet.class';
3
+ import { provideHttpClient, withInterceptorsFromDi } from '@angular/common/http';
4
+ import { EmptyComponent } from './empty/empty.component';
5
+ import { PlanetComponentOutlet } from './component/planet-component-outlet';
6
+ import { RedirectToRouteComponent } from './router/route-redirect';
7
+ import * as i0 from "@angular/core";
8
+ export class NgxPlanetModule {
9
+ static forRoot(apps) {
10
+ return {
11
+ ngModule: NgxPlanetModule,
12
+ providers: [
13
+ {
14
+ provide: PLANET_APPLICATIONS,
15
+ useValue: apps
16
+ }
17
+ ]
18
+ };
19
+ }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: NgxPlanetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
21
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.4", ngImport: i0, type: NgxPlanetModule, imports: [PlanetComponentOutlet, EmptyComponent, RedirectToRouteComponent], exports: [EmptyComponent, PlanetComponentOutlet] }); }
22
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: NgxPlanetModule, providers: [provideHttpClient(withInterceptorsFromDi())] }); }
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: NgxPlanetModule, decorators: [{
25
+ type: NgModule,
26
+ args: [{
27
+ declarations: [],
28
+ exports: [EmptyComponent, PlanetComponentOutlet],
29
+ imports: [PlanetComponentOutlet, EmptyComponent, RedirectToRouteComponent],
30
+ providers: [provideHttpClient(withInterceptorsFromDi())]
31
+ }]
32
+ }] });
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcGFja2FnZXMvcGxhbmV0L3NyYy9tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFxQixtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7QUFRbkUsTUFBTSxPQUFPLGVBQWU7SUFDeEIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUF5QjtRQUNwQyxPQUFPO1lBQ0gsUUFBUSxFQUFFLGVBQWU7WUFDekIsU0FBUyxFQUFFO2dCQUNQO29CQUNJLE9BQU8sRUFBRSxtQkFBbUI7b0JBQzVCLFFBQVEsRUFBRSxJQUFJO2lCQUNqQjthQUNKO1NBQ0osQ0FBQztJQUNOLENBQUM7OEdBWFEsZUFBZTsrR0FBZixlQUFlLFlBSGQscUJBQXFCLEVBQUUsY0FBYyxFQUFFLHdCQUF3QixhQUQvRCxjQUFjLEVBQUUscUJBQXFCOytHQUl0QyxlQUFlLGFBRmIsQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLENBQUM7OzJGQUUvQyxlQUFlO2tCQU4zQixRQUFRO21CQUFDO29CQUNOLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxjQUFjLEVBQUUscUJBQXFCLENBQUM7b0JBQ2hELE9BQU8sRUFBRSxDQUFDLHFCQUFxQixFQUFFLGNBQWMsRUFBRSx3QkFBd0IsQ0FBQztvQkFDMUUsU0FBUyxFQUFFLENBQUMsaUJBQWlCLENBQUMsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDO2lCQUMzRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQbGFuZXRBcHBsaWNhdGlvbiwgUExBTkVUX0FQUExJQ0FUSU9OUyB9IGZyb20gJy4vcGxhbmV0LmNsYXNzJztcbmltcG9ydCB7IHByb3ZpZGVIdHRwQ2xpZW50LCB3aXRoSW50ZXJjZXB0b3JzRnJvbURpIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgRW1wdHlDb21wb25lbnQgfSBmcm9tICcuL2VtcHR5L2VtcHR5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQbGFuZXRDb21wb25lbnRPdXRsZXQgfSBmcm9tICcuL2NvbXBvbmVudC9wbGFuZXQtY29tcG9uZW50LW91dGxldCc7XG5pbXBvcnQgeyBSZWRpcmVjdFRvUm91dGVDb21wb25lbnQgfSBmcm9tICcuL3JvdXRlci9yb3V0ZS1yZWRpcmVjdCc7XG5cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbXSxcbiAgICBleHBvcnRzOiBbRW1wdHlDb21wb25lbnQsIFBsYW5ldENvbXBvbmVudE91dGxldF0sXG4gICAgaW1wb3J0czogW1BsYW5ldENvbXBvbmVudE91dGxldCwgRW1wdHlDb21wb25lbnQsIFJlZGlyZWN0VG9Sb3V0ZUNvbXBvbmVudF0sXG4gICAgcHJvdmlkZXJzOiBbcHJvdmlkZUh0dHBDbGllbnQod2l0aEludGVyY2VwdG9yc0Zyb21EaSgpKV1cbn0pXG5leHBvcnQgY2xhc3MgTmd4UGxhbmV0TW9kdWxlIHtcbiAgICBzdGF0aWMgZm9yUm9vdChhcHBzOiBQbGFuZXRBcHBsaWNhdGlvbltdKTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ3hQbGFuZXRNb2R1bGU+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5nTW9kdWxlOiBOZ3hQbGFuZXRNb2R1bGUsXG4gICAgICAgICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IFBMQU5FVF9BUFBMSUNBVElPTlMsXG4gICAgICAgICAgICAgICAgICAgIHVzZVZhbHVlOiBhcHBzXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,9 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ export var SwitchModes;
3
+ (function (SwitchModes) {
4
+ SwitchModes["default"] = "default";
5
+ SwitchModes["coexist"] = "coexist";
6
+ })(SwitchModes || (SwitchModes = {}));
7
+ const PLANET_APPLICATIONS = new InjectionToken('PLANET_APPLICATIONS');
8
+ export { PLANET_APPLICATIONS };
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhbmV0LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcGFja2FnZXMvcGxhbmV0L3NyYy9wbGFuZXQuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQWlIL0MsTUFBTSxDQUFOLElBQVksV0FHWDtBQUhELFdBQVksV0FBVztJQUNuQixrQ0FBbUIsQ0FBQTtJQUNuQixrQ0FBbUIsQ0FBQTtBQUN2QixDQUFDLEVBSFcsV0FBVyxLQUFYLFdBQVcsUUFHdEI7QUFNRCxNQUFNLG1CQUFtQixHQUFHLElBQUksY0FBYyxDQUFvQixxQkFBcUIsQ0FBQyxDQUFDO0FBRXpGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERlYnVnIH0gZnJvbSAnLi9kZWJ1Zyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGxhbmV0T3B0aW9ucyB7XG4gICAgc3dpdGNoTW9kZT86IFN3aXRjaE1vZGVzO1xuICAgIGVycm9ySGFuZGxlcjogKGVycm9yOiBFcnJvcikgPT4gdm9pZDtcbiAgICBkZWJ1Z0ZhY3Rvcnk/OiBEZWJ1Zztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQbGFuZXRBcHBsaWNhdGlvbkVudHJ5IHtcbiAgICBiYXNlUGF0aD86IHN0cmluZztcbiAgICBzY3JpcHRzPzogc3RyaW5nW107XG4gICAgc3R5bGVzPzogc3RyaW5nW107XG4gICAgbWFuaWZlc3Q/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGxhbmV0QXBwbGljYXRpb248VEV4dHJhID0gYW55PiB7XG4gICAgLyoqXG4gICAgICogQXBwbGljYXRpb24gbmFtZSwgZS5nLiBcImFwcDFcIlxuICAgICAqL1xuICAgIG5hbWU6IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBTZWxlY3RvciBvciBFbGVtZW50IHdoaWNoIGFwcCBob3N0IHBhcmVudFxuICAgICAqIOW6lOeUqOWKoOi9veeahOWuv+S4u+WFg+e0oOaIluiAhemAieaLqeWZqFxuICAgICAqL1xuICAgIGhvc3RQYXJlbnQ6IHN0cmluZyB8IEhUTUxFbGVtZW50O1xuICAgIC8qKlxuICAgICAqIENsYXNzIG5hbWUgZm9yIGhvc3RcbiAgICAgKi9cbiAgICBob3N0Q2xhc3M/OiBzdHJpbmcgfCBzdHJpbmdbXTtcbiAgICAvKipcbiAgICAgKiBTZWxlY3RvciBmb3Igc3ViIGFwcGxpY2F0aW9uXG4gICAgICog5a2Q5bqU55So55qE6YCJ5oup5ZmoXG4gICAgICogQGRlcHJlY2F0ZWQgcGxlYXNlIHVzZSBuZXcgZGVmaW5lQXBwbGljYXRpb24gdG8gc2V0IHNlbGVjdG9yXG4gICAgICovXG4gICAgc2VsZWN0b3I/OiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogUGF0aCBwcmVmaXggZm9yIHN1YiBhcHBsaWNhdGlvbiwgZS5nLiAnL2FwcDEnXG4gICAgICog5a2Q5bqU55So6Lev55Sx5YmN57yA6Lev5b6EXG4gICAgICovXG4gICAgcm91dGVyUGF0aFByZWZpeDogc3RyaW5nIHwgUmVnRXhwO1xuICAgIC8qKlxuICAgICAqIFByZWxvYWQgZW5hYmxlZCwgZGVmYXVsdCBmYWxzZSwgaWYgZW5hYmxlZCx0aGUgYXBwbGljYXRpb24gd2lsbCBiZSBsb2FkZWQgd2hlbiBpZGxlIGluIHRoZSBiYWNrZ3JvdW5kXG4gICAgICog5piv5ZCm5byA5ZCv6aKE5Yqg6L2977yM5byA5ZCv5ZCO5Lya5Zyo5ZCO5Y+w5o+Q5YmN5Yqg6L295q2k5bqU55SoXG4gICAgICovXG4gICAgcHJlbG9hZD86IGJvb2xlYW47XG4gICAgLyoqXG4gICAgICogU2FuZGJveCBlbmFibGVkXG4gICAgICog5piv5ZCm5byA5ZCv5rKZ566x5qih5byPXG4gICAgICovXG4gICAgc2FuZGJveD86IGJvb2xlYW47XG4gICAgLyoqXG4gICAgICogU3dpdGNoIGFwcGxpY2F0aW9uIG1vZGVcbiAgICAgKiBkZWZhdWx0OiB3aWxsIGJlIGRlc3Ryb3llZCB3aGVuIHN3aXRjaCB0byBvdGhlciBhcHBcbiAgICAgKiBjb2V4aXN0OiBvbmx5IGhpZGUgYXBwIHdoZW4gc3dpdGNoIHRvIG90aGVyIGFwcFxuICAgICAqIOWIh+aNouW6lOeUqOeahOaooeW8j1xuICAgICAqL1xuICAgIHN3aXRjaE1vZGU/OiBTd2l0Y2hNb2RlcztcbiAgICAvKipcbiAgICAgKiBTdHlsZSBwcmVmaXgsIGUuZy4gJ2FwcDEnXG4gICAgICog5qC35byP5YmN57yAXG4gICAgICovXG4gICAgc3R5bGVQcmVmaXg/OiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogVGhlIGVudHJ5IG9mIHRoZSBtaWNybyBhcHBsaWNhdGlvbiwgZS5nLiAnL3N0YXRpYy9hcHAxL2luZGV4Lmh0bWwnXG4gICAgICogSWYgY29uZmlndXJlZCBhcyBzdHJpbmcsIGl0IHJlcHJlc2VudHMgdGhlIGVudHJ5IGh0bWwgYWRkcmVzcyBvZiB0aGUgbWljcm8gYXBwbGljYXRpb24uICBlLmcuICcvc3RhdGljL2FwcDEvaW5kZXguaHRtbCdcbiAgICAgKiBJZiBjb25maWd1cmVkIGFzIG9iamVjdCwgdGhlIHZhbHVlIG9mIG1hbmlmZXN0IGlzIHRoZSBodG1sIGFkZHJlc3Mgb2YgdGhlIG1pY3JvIGFwcGxpY2F0aW9uXG4gICAgICogICBlbnRyeS5iYXNlUGF0aDogdGhlIGJhc2UgcGF0aCBvZiB0aGUgZW50cnksIGUuZy4gJy9zdGF0aWMvYXBwMS8nXG4gICAgICogICBlbnRyeS5tYW5pZmVzdDogdGhlIG1hbmlmZXN0IG9mIHRoZSBlbnRyeSwgZS5nLiAnaW5kZXguaHRtbCcgb3IgJ2Fzc2V0cy1tYW5pZmVzdC5qc29uJ1xuICAgICAqICAgZW50cnkuc2NyaXB0czogdGhlIHNjcmlwdHMgb2YgdGhlIGVudHJ5LCB3aWxsIGdldCBmaW5hbCBzY3JpcHRzIGFkZHJlc3MgYnkgbWFuaWZlc3QgYW5kIGJhc2VQYXRoXG4gICAgICogICBlbnRyeS5zdHlsZXM6IHRoZSBzdHlsZXMgb2YgdGhlIGVudHJ5LCB3aWxsIGdldCBmaW5hbCBzdHlsZXMgYWRkcmVzcyBieSBtYW5pZmVzdCBhbmQgYmFzZVBhdGhcbiAgICAgKi9cbiAgICBlbnRyeT86IHN0cmluZyB8IFBsYW5ldEFwcGxpY2F0aW9uRW50cnk7XG4gICAgLyoqXG4gICAgICogTWFuaWZlc3QganNvbiBmaWxlIHBhdGgsIGUuZy4gL3N0YXRpYy9hcHAxL2Fzc2V0cy1tYW5pZmVzdC5qc29uXG4gICAgICog5bqU55So56iL5bqP5omT5YyF5ZCO55qE6ISa5pys5ZKM5qC35byP5paH5Lu25pu/5o2iXG4gICAgICogQGRlcHJlY2F0ZWQgUGxlYXNlIHVzZSBlbnRyeS5tYW5pZmVzdCBpbnN0ZWFkXG4gICAgICovXG4gICAgbWFuaWZlc3Q/OiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogUGF0aCBwcmVmaXggb2Ygc2NyaXB0cyBhbmQgc3R5bGVzLCBlLmcuICdzdGF0aWMvYXBwMS8nXG4gICAgICog6LWE5rqQ5paH5Lu26Lev5b6E55qE5YmN57yAXG4gICAgICogQGRlcHJlY2F0ZWQgUGxlYXNlIHVzZSBlbnRyeS5iYXNlUGF0aCBpbnN0ZWFkXG4gICAgICovXG4gICAgcmVzb3VyY2VQYXRoUHJlZml4Pzogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIFN0eWxlIHN0YXRpYyByZXNvdXJjZSBwYXRoc1xuICAgICAqIOagt+W8j+i1hOa6kOaWh+S7tlxuICAgICAqIEBkZXByZWNhdGVkIFBsZWFzZSB1c2UgZW50cnkuc3R5bGVzIGluc3RlYWRcbiAgICAgKi9cbiAgICBzdHlsZXM/OiBzdHJpbmdbXTtcbiAgICAvKipcbiAgICAgKiBTY3JpcHRzIHN0YXRpYyByZXNvdXJjZSBwYXRoc1xuICAgICAqIOiEmuacrOi1hOa6kOaWh+S7tlxuICAgICAqIEBkZXByZWNhdGVkIFBsZWFzZSB1c2UgZW50cnkuc2NyaXB0cyBpbnN0ZWFkXG4gICAgICovXG4gICAgc2NyaXB0cz86IHN0cmluZ1tdO1xuICAgIC8qKlxuICAgICAqIFNlcmlhbCBsb2FkIHNjcmlwdHMsIGRlZmF1bHQgaXMgcGFyYWxsZWwsIG9ubHkgZW5hYmxlIHdoZW4gdGhlIHNjcmlwdCBoYXMgc2VxdWVudGlhbGx5IGxvYWRlZCBkZXBlbmRlbmN5XG4gICAgICog5Liy6KGM5Yqg6L2977yM6buY6K6k5bm26KGM5Yqg6L296ISa5pys6LWE5rqQ77yM5LuF5b2T6ISa5pys6LWE5rqQ5pyJ5L6d6LWW5YWz57O75pe25byA5ZCvXG4gICAgICovXG4gICAgbG9hZFNlcmlhbD86IGJvb2xlYW47XG4gICAgLyoqXG4gICAgICog55qu6IKk5qC35byP55qE6Lev5b6EXG4gICAgICovXG4gICAgLy8gdGhlbWVTdHlsZXNQYXRoPzogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIEV4dHJhIGRhdGEgZm9yIGFwcGxpY2F0aW9uXG4gICAgICog6ZmE5Yqg5pWw5o2u77yM5Li76KaB5bqU55So5LqO5Lia5Yqh77yM5q+U5aaC5Zu+5qCH77yM5a2Q5bqU55So55qE6aKc6Imy77yM5pi+56S65ZCN562J5Liq5oCn5YyW6YWN572uXG4gICAgICovXG4gICAgZXh0cmE/OiBURXh0cmE7XG59XG5cbmV4cG9ydCBlbnVtIFN3aXRjaE1vZGVzIHtcbiAgICBkZWZhdWx0ID0gJ2RlZmF1bHQnLFxuICAgIGNvZXhpc3QgPSAnY29leGlzdCdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQbGFuZXRSb3V0ZXJFdmVudCB7XG4gICAgdXJsOiBzdHJpbmc7XG59XG5cbmNvbnN0IFBMQU5FVF9BUFBMSUNBVElPTlMgPSBuZXcgSW5qZWN0aW9uVG9rZW48UGxhbmV0QXBwbGljYXRpb24+KCdQTEFORVRfQVBQTElDQVRJT05TJyk7XG5cbmV4cG9ydCB7IFBMQU5FVF9BUFBMSUNBVElPTlMgfTtcbiJdfQ==
@@ -0,0 +1,97 @@
1
+ import { Injectable, Inject, Optional, Injector } from '@angular/core';
2
+ import { NavigationEnd, Router } from '@angular/router';
3
+ import { PLANET_APPLICATIONS } from './planet.class';
4
+ import { PlanetApplicationService } from './application/planet-application.service';
5
+ import { PlanetApplicationLoader } from './application/planet-application-loader';
6
+ import { filter, startWith, distinctUntilChanged, map } from 'rxjs/operators';
7
+ import { setPortalApplicationData, setApplicationLoader, setApplicationService, getApplicationLoader, getApplicationService } from './global-planet';
8
+ import { setDebugFactory } from './debug';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@angular/router";
11
+ export class Planet {
12
+ get planetApplicationLoader() {
13
+ return getApplicationLoader();
14
+ }
15
+ get planetApplicationService() {
16
+ return getApplicationService();
17
+ }
18
+ /**
19
+ * @deprecated please use loading signal
20
+ */
21
+ get loadingDone() {
22
+ return this.planetApplicationLoader.loadingDone;
23
+ }
24
+ get loading() {
25
+ return this.planetApplicationLoader.loading;
26
+ }
27
+ get appStatusChange() {
28
+ return this.planetApplicationLoader.appStatusChange;
29
+ }
30
+ get appsLoadingStart() {
31
+ return this.planetApplicationLoader.appsLoadingStart;
32
+ }
33
+ constructor(injector, router, planetApplications) {
34
+ this.injector = injector;
35
+ this.router = router;
36
+ if (!this.planetApplicationLoader) {
37
+ setApplicationLoader(this.injector.get(PlanetApplicationLoader));
38
+ }
39
+ if (!this.planetApplicationService) {
40
+ setApplicationService(this.injector.get(PlanetApplicationService));
41
+ }
42
+ if (planetApplications) {
43
+ this.registerApps(planetApplications);
44
+ }
45
+ }
46
+ setOptions(options) {
47
+ this.planetApplicationLoader.setOptions(options);
48
+ if (options.debugFactory) {
49
+ setDebugFactory(options.debugFactory);
50
+ }
51
+ }
52
+ setPortalAppData(data) {
53
+ setPortalApplicationData(data);
54
+ }
55
+ registerApp(app) {
56
+ this.planetApplicationService.register(app);
57
+ }
58
+ registerApps(apps) {
59
+ this.planetApplicationService.register(apps);
60
+ }
61
+ unregisterApp(name) {
62
+ this.planetApplicationService.unregister(name);
63
+ }
64
+ getApps() {
65
+ return this.planetApplicationService.getApps();
66
+ }
67
+ start() {
68
+ this.subscription = this.router.events
69
+ .pipe(filter(event => {
70
+ return event instanceof NavigationEnd;
71
+ }), map(event => {
72
+ return event.urlAfterRedirects || event.url;
73
+ }), startWith(location.pathname), distinctUntilChanged())
74
+ .subscribe((url) => {
75
+ this.planetApplicationLoader.reroute({
76
+ url: url
77
+ });
78
+ });
79
+ }
80
+ stop() {
81
+ this.subscription?.unsubscribe();
82
+ }
83
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: Planet, deps: [{ token: i0.Injector }, { token: i1.Router }, { token: PLANET_APPLICATIONS, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
84
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: Planet, providedIn: 'root' }); }
85
+ }
86
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: Planet, decorators: [{
87
+ type: Injectable,
88
+ args: [{
89
+ providedIn: 'root'
90
+ }]
91
+ }], ctorParameters: () => [{ type: i0.Injector }, { type: i1.Router }, { type: undefined, decorators: [{
92
+ type: Inject,
93
+ args: [PLANET_APPLICATIONS]
94
+ }, {
95
+ type: Optional
96
+ }] }] });
97
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhbmV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcGFja2FnZXMvcGxhbmV0L3NyYy9wbGFuZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsYUFBYSxFQUFlLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3JFLE9BQU8sRUFBb0MsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RixPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNwRixPQUFPLEVBQUUsdUJBQXVCLEVBQStDLE1BQU0seUNBQXlDLENBQUM7QUFFL0gsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUUsT0FBTyxFQUNILHdCQUF3QixFQUN4QixvQkFBb0IsRUFDcEIscUJBQXFCLEVBQ3JCLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDeEIsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sU0FBUyxDQUFDOzs7QUFLMUMsTUFBTSxPQUFPLE1BQU07SUFDZixJQUFZLHVCQUF1QjtRQUMvQixPQUFPLG9CQUFvQixFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQVksd0JBQXdCO1FBQ2hDLE9BQU8scUJBQXFCLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFXLFdBQVc7UUFDbEIsT0FBTyxJQUFJLENBQUMsdUJBQXVCLENBQUMsV0FBVyxDQUFDO0lBQ3BELENBQUM7SUFFRCxJQUFXLE9BQU87UUFDZCxPQUFPLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxPQUFPLENBQUM7SUFDaEQsQ0FBQztJQUVELElBQVcsZUFBZTtRQUN0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YWJsZSwgSW5qZWN0LCBPcHRpb25hbCwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5hdmlnYXRpb25FbmQsIFJvdXRlckV2ZW50LCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgUGxhbmV0T3B0aW9ucywgUGxhbmV0QXBwbGljYXRpb24sIFBMQU5FVF9BUFBMSUNBVElPTlMgfSBmcm9tICcuL3BsYW5ldC5jbGFzcyc7XG5pbXBvcnQgeyBQbGFuZXRBcHBsaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuL2FwcGxpY2F0aW9uL3BsYW5ldC1hcHBsaWNhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFBsYW5ldEFwcGxpY2F0aW9uTG9hZGVyLCBBcHBzTG9hZGluZ1N0YXJ0RXZlbnQsIEFwcFN0YXR1c0NoYW5nZUV2ZW50IH0gZnJvbSAnLi9hcHBsaWNhdGlvbi9wbGFuZXQtYXBwbGljYXRpb24tbG9hZGVyJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBzdGFydFdpdGgsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1xuICAgIHNldFBvcnRhbEFwcGxpY2F0aW9uRGF0YSxcbiAgICBzZXRBcHBsaWNhdGlvbkxvYWRlcixcbiAgICBzZXRBcHBsaWNhdGlvblNlcnZpY2UsXG4gICAgZ2V0QXBwbGljYXRpb25Mb2FkZXIsXG4gICAgZ2V0QXBwbGljYXRpb25TZXJ2aWNlXG59IGZyb20gJy4vZ2xvYmFsLXBsYW5ldCc7XG5pbXBvcnQgeyBzZXREZWJ1Z0ZhY3RvcnkgfSBmcm9tICcuL2RlYnVnJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBQbGFuZXQge1xuICAgIHByaXZhdGUgZ2V0IHBsYW5ldEFwcGxpY2F0aW9uTG9hZGVyKCk6IFBsYW5ldEFwcGxpY2F0aW9uTG9hZGVyIHtcbiAgICAgICAgcmV0dXJuIGdldEFwcGxpY2F0aW9uTG9hZGVyKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgcGxhbmV0QXBwbGljYXRpb25TZXJ2aWNlKCkge1xuICAgICAgICByZXR1cm4gZ2V0QXBwbGljYXRpb25TZXJ2aWNlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgcGxlYXNlIHVzZSBsb2FkaW5nIHNpZ25hbFxuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgbG9hZGluZ0RvbmUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnBsYW5ldEFwcGxpY2F0aW9uTG9hZGVyLmxvYWRpbmdEb25lO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbG9hZGluZygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGxhbmV0QXBwbGljYXRpb25Mb2FkZXIubG9hZGluZztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGFwcFN0YXR1c0NoYW5nZSgpOiBPYnNlcnZhYmxlPEFwcFN0YXR1c0NoYW5nZUV2ZW50PiB7XG4gICAgICAgIHJldHVybiB0aGlzLnBsYW5ldEFwcGxpY2F0aW9uTG9hZGVyLmFwcFN0YXR1c0NoYW5nZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGFwcHNMb2FkaW5nU3RhcnQoKTogT2JzZXJ2YWJsZTxBcHBzTG9hZGluZ1N0YXJ0RXZlbnQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGxhbmV0QXBwbGljYXRpb25Mb2FkZXIuYXBwc0xvYWRpbmdTdGFydDtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgQEluamVjdChQTEFORVRfQVBQTElDQVRJT05TKSBAT3B0aW9uYWwoKSBwbGFuZXRBcHBsaWNhdGlvbnM6IFBsYW5ldEFwcGxpY2F0aW9uW11cbiAgICApIHtcbiAgICAgICAgaWYgKCF0aGlzLnBsYW5ldEFwcGxpY2F0aW9uTG9hZGVyKSB7XG4gICAgICAgICAgICBzZXRBcHBsaWNhdGlvbkxvYWRlcih0aGlzLmluamVjdG9yLmdldChQbGFuZXRBcHBsaWNhdGlvbkxvYWRlcikpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghdGhpcy5wbGFuZXRBcHBsaWNhdGlvblNlcnZpY2UpIHtcbiAgICAgICAgICAgIHNldEFwcGxpY2F0aW9uU2VydmljZSh0aGlzLmluamVjdG9yLmdldChQbGFuZXRBcHBsaWNhdGlvblNlcnZpY2UpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChwbGFuZXRBcHBsaWNhdGlvbnMpIHtcbiAgICAgICAgICAgIHRoaXMucmVnaXN0ZXJBcHBzKHBsYW5ldEFwcGxpY2F0aW9ucyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZXRPcHRpb25zKG9wdGlvbnM6IFBhcnRpYWw8UGxhbmV0T3B0aW9ucz4pIHtcbiAgICAgICAgdGhpcy5wbGFuZXRBcHBsaWNhdGlvbkxvYWRlci5zZXRPcHRpb25zKG9wdGlvbnMpO1xuICAgICAgICBpZiAob3B0aW9ucy5kZWJ1Z0ZhY3RvcnkpIHtcbiAgICAgICAgICAgIHNldERlYnVnRmFjdG9yeShvcHRpb25zLmRlYnVnRmFjdG9yeSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZXRQb3J0YWxBcHBEYXRhPFQ+KGRhdGE6IFQpIHtcbiAgICAgICAgc2V0UG9ydGFsQXBwbGljYXRpb25EYXRhKGRhdGEpO1xuICAgIH1cblxuICAgIHJlZ2lzdGVyQXBwPFRFeHRyYT4oYXBwOiBQbGFuZXRBcHBsaWNhdGlvbjxURXh0cmE+KSB7XG4gICAgICAgIHRoaXMucGxhbmV0QXBwbGljYXRpb25TZXJ2aWNlLnJlZ2lzdGVyKGFwcCk7XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJBcHBzPFRFeHRyYT4oYXBwczogUGxhbmV0QXBwbGljYXRpb248VEV4dHJhPltdKSB7XG4gICAgICAgIHRoaXMucGxhbmV0QXBwbGljYXRpb25TZXJ2aWNlLnJlZ2lzdGVyKGFwcHMpO1xuICAgIH1cblxuICAgIHVucmVnaXN0ZXJBcHAobmFtZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMucGxhbmV0QXBwbGljYXRpb25TZXJ2aWNlLnVucmVnaXN0ZXIobmFtZSk7XG4gICAgfVxuXG4gICAgZ2V0QXBwcygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGxhbmV0QXBwbGljYXRpb25TZXJ2aWNlLmdldEFwcHMoKTtcbiAgICB9XG5cbiAgICBzdGFydCgpIHtcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSAodGhpcy5yb3V0ZXIuZXZlbnRzIGFzIE9ic2VydmFibGU8Um91dGVyRXZlbnQ+KVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZmlsdGVyKGV2ZW50ID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZDtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICBtYXAoZXZlbnQgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKGV2ZW50IGFzIE5hdmlnYXRpb25FbmQpLnVybEFmdGVyUmVkaXJlY3RzIHx8IGV2ZW50LnVybDtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICBzdGFydFdpdGgobG9jYXRpb24ucGF0aG5hbWUpLFxuICAgICAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHVybDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5wbGFuZXRBcHBsaWNhdGlvbkxvYWRlci5yZXJvdXRlKHtcbiAgICAgICAgICAgICAgICAgICAgdXJsOiB1cmxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHN0b3AoKSB7XG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,19 @@
1
+ /*
2
+ * Public API Surface of core
3
+ */
4
+ export * from './planet';
5
+ export * from './global-event-dispatcher';
6
+ export * from './application/portal-application';
7
+ export * from './planet.class';
8
+ export * from './module';
9
+ export { defineApplication, getPortalApplicationData, getPlanetApplicationRef } from './global-planet';
10
+ export { PlanetApplicationService } from './application/planet-application.service';
11
+ export * from './application/planet-application-loader';
12
+ export * from './assets-loader';
13
+ export { PlanetComponentLoader } from './component/planet-component-loader';
14
+ export { PlanetComponentRef } from './component/planet-component-types';
15
+ export { PlanetComponentOutlet } from './component/planet-component-outlet';
16
+ export { PlantComponentConfig } from './component/plant-component.config';
17
+ export * from './empty/empty.component';
18
+ export * from './router/route-redirect';
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BhY2thZ2VzL3BsYW5ldC9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsVUFBVSxDQUFDO0FBRXpCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSx3QkFBd0IsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3BGLGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxPQUFPLEVBQW1CLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDN0YsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDNUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDMUUsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBjb3JlXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wbGFuZXQnO1xuZXhwb3J0ICogZnJvbSAnLi9nbG9iYWwtZXZlbnQtZGlzcGF0Y2hlcic7XG5leHBvcnQgKiBmcm9tICcuL2FwcGxpY2F0aW9uL3BvcnRhbC1hcHBsaWNhdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3BsYW5ldC5jbGFzcyc7XG5leHBvcnQgKiBmcm9tICcuL21vZHVsZSc7XG5leHBvcnQgeyBQbGFuZXRBcHBsaWNhdGlvblJlZiB9IGZyb20gJy4vYXBwbGljYXRpb24vcGxhbmV0LWFwcGxpY2F0aW9uLXJlZic7XG5leHBvcnQgeyBkZWZpbmVBcHBsaWNhdGlvbiwgZ2V0UG9ydGFsQXBwbGljYXRpb25EYXRhLCBnZXRQbGFuZXRBcHBsaWNhdGlvblJlZiB9IGZyb20gJy4vZ2xvYmFsLXBsYW5ldCc7XG5leHBvcnQgeyBQbGFuZXRBcHBsaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuL2FwcGxpY2F0aW9uL3BsYW5ldC1hcHBsaWNhdGlvbi5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vYXBwbGljYXRpb24vcGxhbmV0LWFwcGxpY2F0aW9uLWxvYWRlcic7XG5leHBvcnQgKiBmcm9tICcuL2Fzc2V0cy1sb2FkZXInO1xuZXhwb3J0IHsgUGxhbmV0Q29tcG9uZW50LCBQbGFuZXRDb21wb25lbnRMb2FkZXIgfSBmcm9tICcuL2NvbXBvbmVudC9wbGFuZXQtY29tcG9uZW50LWxvYWRlcic7XG5leHBvcnQgeyBQbGFuZXRDb21wb25lbnRSZWYgfSBmcm9tICcuL2NvbXBvbmVudC9wbGFuZXQtY29tcG9uZW50LXR5cGVzJztcbmV4cG9ydCB7IFBsYW5ldENvbXBvbmVudE91dGxldCB9IGZyb20gJy4vY29tcG9uZW50L3BsYW5ldC1jb21wb25lbnQtb3V0bGV0JztcbmV4cG9ydCB7IFBsYW50Q29tcG9uZW50Q29uZmlnIH0gZnJvbSAnLi9jb21wb25lbnQvcGxhbnQtY29tcG9uZW50LmNvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2VtcHR5L2VtcHR5LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3JvdXRlci9yb3V0ZS1yZWRpcmVjdCc7XG4iXX0=
@@ -0,0 +1,63 @@
1
+ import { Component, inject } from '@angular/core';
2
+ import { ActivatedRoute, Router } from '@angular/router';
3
+ import * as i0 from "@angular/core";
4
+ class RouteRedirect {
5
+ constructor(redirectTo) {
6
+ this.activatedRoute = inject(ActivatedRoute);
7
+ this.router = inject(Router);
8
+ const finalRedirectTo = redirectTo || this.activatedRoute.snapshot.data['redirectTo'];
9
+ if (finalRedirectTo) {
10
+ const activatedRouteUrl = this.activatedRoute.pathFromRoot
11
+ .filter(route => {
12
+ return route.snapshot.url?.length > 0;
13
+ })
14
+ .map(route => {
15
+ return route.snapshot.url.join('/');
16
+ })
17
+ .join('/');
18
+ if (this.router.isActive(activatedRouteUrl, {
19
+ matrixParams: 'exact',
20
+ paths: 'exact',
21
+ queryParams: 'exact',
22
+ fragment: 'exact'
23
+ })) {
24
+ this.router.navigate([`${finalRedirectTo}`],
25
+ // By replacing the current URL in the history, we keep the Browser's Back
26
+ // Button behavior in tact. This will allow the user to easily navigate back
27
+ // to the previous URL without getting caught in a redirect.
28
+ {
29
+ replaceUrl: true,
30
+ relativeTo: this.activatedRoute
31
+ });
32
+ }
33
+ }
34
+ }
35
+ }
36
+ export function routeRedirect(redirectTo) {
37
+ return new RouteRedirect(redirectTo);
38
+ }
39
+ export class RedirectToRouteComponent {
40
+ constructor() {
41
+ this.routeRedirect = routeRedirect();
42
+ }
43
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: RedirectToRouteComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
44
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.4", type: RedirectToRouteComponent, isStandalone: true, selector: "planet-redirect-to-route", ngImport: i0, template: '', isInline: true }); }
45
+ }
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: RedirectToRouteComponent, decorators: [{
47
+ type: Component,
48
+ args: [{
49
+ selector: 'planet-redirect-to-route',
50
+ template: '',
51
+ standalone: true
52
+ }]
53
+ }] });
54
+ export function redirectToRoute(redirectTo) {
55
+ return {
56
+ path: '',
57
+ component: RedirectToRouteComponent,
58
+ data: {
59
+ redirectTo: redirectTo
60
+ }
61
+ };
62
+ }
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtcmVkaXJlY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGFuZXQvc3JjL3JvdXRlci9yb3V0ZS1yZWRpcmVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsY0FBYyxFQUFTLE1BQU0sRUFBVyxNQUFNLGlCQUFpQixDQUFDOztBQUV6RSxNQUFNLGFBQWE7SUFJZixZQUFZLFVBQWtCO1FBSDlCLG1CQUFjLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3hDLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFHcEIsTUFBTSxlQUFlLEdBQUcsVUFBVSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN0RixJQUFJLGVBQWUsRUFBRSxDQUFDO1lBQ2xCLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZO2lCQUNyRCxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ1osT0FBTyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxNQUFNLEdBQUcsQ0FBQyxDQUFDO1lBQzFDLENBQUMsQ0FBQztpQkFDRCxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ1QsT0FBTyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDeEMsQ0FBQyxDQUFDO2lCQUNELElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNmLElBQ0ksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsaUJBQWlCLEVBQUU7Z0JBQ3BDLFlBQVksRUFBRSxPQUFPO2dCQUNyQixLQUFLLEVBQUUsT0FBTztnQkFDZCxXQUFXLEVBQUUsT0FBTztnQkFDcEIsUUFBUSxFQUFFLE9BQU87YUFDcEIsQ0FBQyxFQUNKLENBQUM7Z0JBQ0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQ2hCLENBQUMsR0FBRyxlQUFlLEVBQUUsQ0FBQztnQkFDdEIsMEVBQTBFO2dCQUMxRSw0RUFBNEU7Z0JBQzVFLDREQUE0RDtnQkFDNUQ7b0JBQ0ksVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFVBQVUsRUFBRSxJQUFJLENBQUMsY0FBYztpQkFDbEMsQ0FDSixDQUFDO1lBQ04sQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDO0NBQ0o7QUFFRCxNQUFNLFVBQVUsYUFBYSxDQUFDLFVBQW1CO0lBQzdDLE9BQU8sSUFBSSxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7QUFDekMsQ0FBQztBQU9ELE1BQU0sT0FBTyx3QkFBd0I7SUFMckM7UUFNSSxrQkFBYSxHQUFHLGFBQWEsRUFBRSxDQUFDO0tBQ25DOzhHQUZZLHdCQUF3QjtrR0FBeEIsd0JBQXdCLG9GQUh2QixFQUFFOzsyRkFHSCx3QkFBd0I7a0JBTHBDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDBCQUEwQjtvQkFDcEMsUUFBUSxFQUFFLEVBQUU7b0JBQ1osVUFBVSxFQUFFLElBQUk7aUJBQ25COztBQUtELE1BQU0sVUFBVSxlQUFlLENBQUMsVUFBa0I7SUFDOUMsT0FBTztRQUNILElBQUksRUFBRSxFQUFFO1FBQ1IsU0FBUyxFQUFFLHdCQUF3QjtRQUNuQyxJQUFJLEVBQUU7WUFDRixVQUFVLEVBQUUsVUFBVTtTQUN6QjtLQUNKLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZSwgUm91dGVyLCBVcmxUcmVlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuY2xhc3MgUm91dGVSZWRpcmVjdCB7XG4gICAgYWN0aXZhdGVkUm91dGUgPSBpbmplY3QoQWN0aXZhdGVkUm91dGUpO1xuICAgIHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuXG4gICAgY29uc3RydWN0b3IocmVkaXJlY3RUbzogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IGZpbmFsUmVkaXJlY3RUbyA9IHJlZGlyZWN0VG8gfHwgdGhpcy5hY3RpdmF0ZWRSb3V0ZS5zbmFwc2hvdC5kYXRhWydyZWRpcmVjdFRvJ107XG4gICAgICAgIGlmIChmaW5hbFJlZGlyZWN0VG8pIHtcbiAgICAgICAgICAgIGNvbnN0IGFjdGl2YXRlZFJvdXRlVXJsID0gdGhpcy5hY3RpdmF0ZWRSb3V0ZS5wYXRoRnJvbVJvb3RcbiAgICAgICAgICAgICAgICAuZmlsdGVyKHJvdXRlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJvdXRlLnNuYXBzaG90LnVybD8ubGVuZ3RoID4gMDtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC5tYXAocm91dGUgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcm91dGUuc25hcHNob3QudXJsLmpvaW4oJy8nKTtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC5qb2luKCcvJyk7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgdGhpcy5yb3V0ZXIuaXNBY3RpdmUoYWN0aXZhdGVkUm91dGVVcmwsIHtcbiAgICAgICAgICAgICAgICAgICAgbWF0cml4UGFyYW1zOiAnZXhhY3QnLFxuICAgICAgICAgICAgICAgICAgICBwYXRoczogJ2V4YWN0JyxcbiAgICAgICAgICAgICAgICAgICAgcXVlcnlQYXJhbXM6ICdleGFjdCcsXG4gICAgICAgICAgICAgICAgICAgIGZyYWdtZW50OiAnZXhhY3QnXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFxuICAgICAgICAgICAgICAgICAgICBbYCR7ZmluYWxSZWRpcmVjdFRvfWBdLFxuICAgICAgICAgICAgICAgICAgICAvLyBCeSByZXBsYWNpbmcgdGhlIGN1cnJlbnQgVVJMIGluIHRoZSBoaXN0b3J5LCB3ZSBrZWVwIHRoZSBCcm93c2VyJ3MgQmFja1xuICAgICAgICAgICAgICAgICAgICAvLyBCdXR0b24gYmVoYXZpb3IgaW4gdGFjdC4gVGhpcyB3aWxsIGFsbG93IHRoZSB1c2VyIHRvIGVhc2lseSBuYXZpZ2F0ZSBiYWNrXG4gICAgICAgICAgICAgICAgICAgIC8vIHRvIHRoZSBwcmV2aW91cyBVUkwgd2l0aG91dCBnZXR0aW5nIGNhdWdodCBpbiBhIHJlZGlyZWN0LlxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXBsYWNlVXJsOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRpdmVUbzogdGhpcy5hY3RpdmF0ZWRSb3V0ZVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJvdXRlUmVkaXJlY3QocmVkaXJlY3RUbz86IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgUm91dGVSZWRpcmVjdChyZWRpcmVjdFRvKTtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwbGFuZXQtcmVkaXJlY3QtdG8tcm91dGUnLFxuICAgIHRlbXBsYXRlOiAnJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFJlZGlyZWN0VG9Sb3V0ZUNvbXBvbmVudCB7XG4gICAgcm91dGVSZWRpcmVjdCA9IHJvdXRlUmVkaXJlY3QoKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlZGlyZWN0VG9Sb3V0ZShyZWRpcmVjdFRvOiBzdHJpbmcpOiBSb3V0ZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcGF0aDogJycsXG4gICAgICAgIGNvbXBvbmVudDogUmVkaXJlY3RUb1JvdXRlQ29tcG9uZW50LFxuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgICByZWRpcmVjdFRvOiByZWRpcmVjdFRvXG4gICAgICAgIH1cbiAgICB9O1xufVxuIl19
@@ -0,0 +1,7 @@
1
+ export const PLANET_SANDBOX_WINDOW_WHITELIST = window['___PLANET_SANDBOX_WINDOW_WHITELIST___'];
2
+ export const PLANET_SANDBOX_DOCUMENT_WHITELIST = window['___PLANET_SANDBOX_DOCUMENT_WHITELIST___'];
3
+ export const SANDBOX_INSTANCE = Symbol.for('PLANET_SANDBOX_INSTANCE');
4
+ export const RAW_NODE = Symbol.for('PLANET_RAW_NODE');
5
+ export const WINDOW_BIND_FN = Symbol.for('PLANET_WINDOW_BIND_FN');
6
+ export const DOCUMENT_BIND_FN = Symbol.for('PLANET_DOCUMENT_BIND_FN');
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvcGxhbmV0L3NyYy9zYW5kYm94L2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSwrQkFBK0IsR0FBRyxNQUFNLENBQUMsdUNBQXVDLENBQUMsQ0FBQztBQUMvRixNQUFNLENBQUMsTUFBTSxpQ0FBaUMsR0FBRyxNQUFNLENBQUMseUNBQXlDLENBQUMsQ0FBQztBQUNuRyxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLHlCQUF5QixDQUFDLENBQUM7QUFDdEUsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQztBQUN0RCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0FBQ2xFLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMseUJBQXlCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBQTEFORVRfU0FOREJPWF9XSU5ET1dfV0hJVEVMSVNUID0gd2luZG93WydfX19QTEFORVRfU0FOREJPWF9XSU5ET1dfV0hJVEVMSVNUX19fJ107XG5leHBvcnQgY29uc3QgUExBTkVUX1NBTkRCT1hfRE9DVU1FTlRfV0hJVEVMSVNUID0gd2luZG93WydfX19QTEFORVRfU0FOREJPWF9ET0NVTUVOVF9XSElURUxJU1RfX18nXTtcbmV4cG9ydCBjb25zdCBTQU5EQk9YX0lOU1RBTkNFID0gU3ltYm9sLmZvcignUExBTkVUX1NBTkRCT1hfSU5TVEFOQ0UnKTtcbmV4cG9ydCBjb25zdCBSQVdfTk9ERSA9IFN5bWJvbC5mb3IoJ1BMQU5FVF9SQVdfTk9ERScpO1xuZXhwb3J0IGNvbnN0IFdJTkRPV19CSU5EX0ZOID0gU3ltYm9sLmZvcignUExBTkVUX1dJTkRPV19CSU5EX0ZOJyk7XG5leHBvcnQgY29uc3QgRE9DVU1FTlRfQklORF9GTiA9IFN5bWJvbC5mb3IoJ1BMQU5FVF9ET0NVTUVOVF9CSU5EX0ZOJyk7XG4iXX0=
@@ -0,0 +1,15 @@
1
+ export function execScript(code, url, global, strictGlobal) {
2
+ const sourceUrl = '//# sourceURL='.concat(url, '\n');
3
+ const window = (0, eval)('window');
4
+ window.tempGlobal = global;
5
+ code = strictGlobal
6
+ ? ';(function(window, self, globalThis){with(window){;'
7
+ .concat(code, '\n')
8
+ .concat(sourceUrl, '}}).bind(window.tempGlobal)(window.tempGlobal, window.tempGlobal, window.tempGlobal);')
9
+ : ';(function(window, self, globalThis){;'
10
+ .concat(code, '\n')
11
+ .concat(sourceUrl, '}).bind(window.tempGlobal)(window.tempGlobal, window.tempGlobal, window.tempGlobal);');
12
+ (0, eval)(code);
13
+ delete window.tempGlobal;
14
+ }
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL3BsYW5ldC9zcmMvc2FuZGJveC9leGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxVQUFVLENBQUMsSUFBWSxFQUFFLEdBQVcsRUFBRSxNQUFjLEVBQUUsWUFBcUI7SUFDdkYsTUFBTSxTQUFTLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNyRCxNQUFNLE1BQU0sR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNuQyxNQUFNLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQztJQUMzQixJQUFJLEdBQUcsWUFBWTtRQUNmLENBQUMsQ0FBQyxxREFBcUQ7YUFDaEQsTUFBTSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUM7YUFDbEIsTUFBTSxDQUNILFNBQVMsRUFDVCx1RkFBdUYsQ0FDMUY7UUFDUCxDQUFDLENBQUMsd0NBQXdDO2FBQ25DLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDO2FBQ2xCLE1BQU0sQ0FDSCxTQUFTLEVBQ1Qsc0ZBQXNGLENBQ3pGLENBQUM7SUFDWixDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQixPQUFPLE1BQU0sQ0FBQyxVQUFVLENBQUM7QUFDN0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdsb2JhbCB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gZXhlY1NjcmlwdChjb2RlOiBzdHJpbmcsIHVybDogc3RyaW5nLCBnbG9iYWw6IEdsb2JhbCwgc3RyaWN0R2xvYmFsOiBib29sZWFuKSB7XG4gICAgY29uc3Qgc291cmNlVXJsID0gJy8vIyBzb3VyY2VVUkw9Jy5jb25jYXQodXJsLCAnXFxuJyk7XG4gICAgY29uc3Qgd2luZG93ID0gKDAsIGV2YWwpKCd3aW5kb3cnKTtcbiAgICB3aW5kb3cudGVtcEdsb2JhbCA9IGdsb2JhbDtcbiAgICBjb2RlID0gc3RyaWN0R2xvYmFsXG4gICAgICAgID8gJzsoZnVuY3Rpb24od2luZG93LCBzZWxmLCBnbG9iYWxUaGlzKXt3aXRoKHdpbmRvdyl7OydcbiAgICAgICAgICAgICAgLmNvbmNhdChjb2RlLCAnXFxuJylcbiAgICAgICAgICAgICAgLmNvbmNhdChcbiAgICAgICAgICAgICAgICAgIHNvdXJjZVVybCxcbiAgICAgICAgICAgICAgICAgICd9fSkuYmluZCh3aW5kb3cudGVtcEdsb2JhbCkod2luZG93LnRlbXBHbG9iYWwsIHdpbmRvdy50ZW1wR2xvYmFsLCB3aW5kb3cudGVtcEdsb2JhbCk7J1xuICAgICAgICAgICAgICApXG4gICAgICAgIDogJzsoZnVuY3Rpb24od2luZG93LCBzZWxmLCBnbG9iYWxUaGlzKXs7J1xuICAgICAgICAgICAgICAuY29uY2F0KGNvZGUsICdcXG4nKVxuICAgICAgICAgICAgICAuY29uY2F0KFxuICAgICAgICAgICAgICAgICAgc291cmNlVXJsLFxuICAgICAgICAgICAgICAgICAgJ30pLmJpbmQod2luZG93LnRlbXBHbG9iYWwpKHdpbmRvdy50ZW1wR2xvYmFsLCB3aW5kb3cudGVtcEdsb2JhbCwgd2luZG93LnRlbXBHbG9iYWwpOydcbiAgICAgICAgICAgICAgKTtcbiAgICAoMCwgZXZhbCkoY29kZSk7XG4gICAgZGVsZXRlIHdpbmRvdy50ZW1wR2xvYmFsO1xufVxuIl19
@@ -0,0 +1,20 @@
1
+ import { ProxySandbox } from './proxy/proxy-sandbox';
2
+ import { SnapshotSandbox } from './snapshot/snapshot-sandbox';
3
+ import { SANDBOX_INSTANCE } from './constants';
4
+ export { Sandbox } from './sandbox';
5
+ const defaultOptions = {
6
+ strictGlobal: false
7
+ };
8
+ export function createSandbox(app, options) {
9
+ options = Object.assign({}, defaultOptions, options || {});
10
+ if (window.Proxy) {
11
+ return new ProxySandbox(app, options);
12
+ }
13
+ else {
14
+ return new SnapshotSandbox(app, options);
15
+ }
16
+ }
17
+ export function getSandboxInstance() {
18
+ return window[SANDBOX_INSTANCE];
19
+ }
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGFuZXQvc3JjL3NhbmRib3gvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFL0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVwQyxNQUFNLGNBQWMsR0FBNEI7SUFDNUMsWUFBWSxFQUFFLEtBQUs7Q0FDdEIsQ0FBQztBQUVGLE1BQU0sVUFBVSxhQUFhLENBQUMsR0FBVyxFQUFFLE9BQXdCO0lBQy9ELE9BQU8sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxjQUFjLEVBQUUsT0FBTyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBRTNELElBQUksTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2YsT0FBTyxJQUFJLFlBQVksQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDMUMsQ0FBQztTQUFNLENBQUM7UUFDSixPQUFPLElBQUksZUFBZSxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM3QyxDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sVUFBVSxrQkFBa0I7SUFDOUIsT0FBTyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztBQUNwQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2FuZGJveE9wdGlvbnMgfSBmcm9tICcuL3NhbmRib3gnO1xuaW1wb3J0IHsgUHJveHlTYW5kYm94IH0gZnJvbSAnLi9wcm94eS9wcm94eS1zYW5kYm94JztcbmltcG9ydCB7IFNuYXBzaG90U2FuZGJveCB9IGZyb20gJy4vc25hcHNob3Qvc25hcHNob3Qtc2FuZGJveCc7XG5pbXBvcnQgeyBTQU5EQk9YX0lOU1RBTkNFIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5leHBvcnQgeyBTYW5kYm94IH0gZnJvbSAnLi9zYW5kYm94JztcblxuY29uc3QgZGVmYXVsdE9wdGlvbnM6IFBhcnRpYWw8U2FuZGJveE9wdGlvbnM+ID0ge1xuICAgIHN0cmljdEdsb2JhbDogZmFsc2Vcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTYW5kYm94KGFwcDogc3RyaW5nLCBvcHRpb25zPzogU2FuZGJveE9wdGlvbnMpIHtcbiAgICBvcHRpb25zID0gT2JqZWN0LmFzc2lnbih7fSwgZGVmYXVsdE9wdGlvbnMsIG9wdGlvbnMgfHwge30pO1xuXG4gICAgaWYgKHdpbmRvdy5Qcm94eSkge1xuICAgICAgICByZXR1cm4gbmV3IFByb3h5U2FuZGJveChhcHAsIG9wdGlvbnMpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBuZXcgU25hcHNob3RTYW5kYm94KGFwcCwgb3B0aW9ucyk7XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2FuZGJveEluc3RhbmNlKCkge1xuICAgIHJldHVybiB3aW5kb3dbU0FOREJPWF9JTlNUQU5DRV07XG59XG4iXX0=
@@ -0,0 +1,12 @@
1
+ import { ProxyDocument } from '../proxies/document';
2
+ export function documentPatch() {
3
+ const proxyDocument = new ProxyDocument();
4
+ const { document, Document } = proxyDocument.create();
5
+ return {
6
+ rewrite: {
7
+ document,
8
+ Document
9
+ }
10
+ };
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGFuZXQvc3JjL3NhbmRib3gvcHJveHkvcGF0Y2hlcy9kb2N1bWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHcEQsTUFBTSxVQUFVLGFBQWE7SUFDekIsTUFBTSxhQUFhLEdBQUcsSUFBSSxhQUFhLEVBQUUsQ0FBQztJQUMxQyxNQUFNLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxHQUFHLGFBQWEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUN0RCxPQUFPO1FBQ0gsT0FBTyxFQUFFO1lBQ0wsUUFBUTtZQUNSLFFBQVE7U0FDWDtLQUNKLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJveHlEb2N1bWVudCB9IGZyb20gJy4uL3Byb3hpZXMvZG9jdW1lbnQnO1xuaW1wb3J0IHsgU2FuZGJveFBhdGNoSGFuZGxlciB9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGRvY3VtZW50UGF0Y2goKTogU2FuZGJveFBhdGNoSGFuZGxlciB7XG4gICAgY29uc3QgcHJveHlEb2N1bWVudCA9IG5ldyBQcm94eURvY3VtZW50KCk7XG4gICAgY29uc3QgeyBkb2N1bWVudCwgRG9jdW1lbnQgfSA9IHByb3h5RG9jdW1lbnQuY3JlYXRlKCk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcmV3cml0ZToge1xuICAgICAgICAgICAgZG9jdW1lbnQsXG4gICAgICAgICAgICBEb2N1bWVudFxuICAgICAgICB9XG4gICAgfTtcbn1cbiJdfQ==
@@ -0,0 +1,41 @@
1
+ import { Observable } from 'rxjs';
2
+ export function eventListenerPatch(sandbox) {
3
+ const rawAddEventListener = window.addEventListener;
4
+ const rawRemoveEventListener = window.removeEventListener;
5
+ const listenerSubscriptions = new Map();
6
+ function addEventListener(type, listener, options) {
7
+ const observable = new Observable(() => {
8
+ rawAddEventListener.call(this, type, listener, options);
9
+ return () => {
10
+ rawRemoveEventListener.call(this, type, listener, options);
11
+ };
12
+ });
13
+ const subscription = observable.subscribe(() => { });
14
+ listenerSubscriptions.set(listener, subscription);
15
+ }
16
+ function removeEventListener(type, listener) {
17
+ const subscription = listenerSubscriptions.get(listener);
18
+ if (subscription) {
19
+ subscription.unsubscribe();
20
+ listenerSubscriptions.delete(listener);
21
+ }
22
+ }
23
+ return {
24
+ rewrite: {
25
+ addEventListener: addEventListener.bind(window),
26
+ removeEventListener: removeEventListener.bind(window)
27
+ },
28
+ init() {
29
+ const fakeDocument = sandbox.global['document'];
30
+ if (fakeDocument) {
31
+ fakeDocument.addEventListener = addEventListener.bind(document);
32
+ fakeDocument.removeEventListener = removeEventListener.bind(document);
33
+ }
34
+ },
35
+ destroy() {
36
+ listenerSubscriptions.forEach(subscription => subscription.unsubscribe());
37
+ listenerSubscriptions.clear();
38
+ }
39
+ };
40
+ }
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRMaXN0ZW5lci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BsYW5ldC9zcmMvc2FuZGJveC9wcm94eS9wYXRjaGVzL2V2ZW50TGlzdGVuZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFFaEQsTUFBTSxVQUFVLGtCQUFrQixDQUFDLE9BQTZCO0lBQzVELE1BQU0sbUJBQW1CLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDO0lBQ3BELE1BQU0sc0JBQXNCLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDO0lBQzFELE1BQU0scUJBQXFCLEdBQUcsSUFBSSxHQUFHLEVBQW9ELENBQUM7SUFFMUYsU0FBUyxnQkFBZ0IsQ0FBQyxJQUFZLEVBQUUsUUFBNEMsRUFBRSxPQUEyQztRQUM3SCxNQUFNLFVBQVUsR0FBRyxJQUFJLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDbkMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ3hELE9BQU8sR0FBRyxFQUFFO2dCQUNSLHNCQUFzQixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztZQUMvRCxDQUFDLENBQUM7UUFDTixDQUFDLENBQUMsQ0FBQztRQUNILE1BQU0sWUFBWSxHQUFHLFVBQVUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDLENBQUM7UUFDcEQscUJBQXFCLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsU0FBUyxtQkFBbUIsQ0FBQyxJQUFZLEVBQUUsUUFBNEM7UUFDbkYsTUFBTSxZQUFZLEdBQUcscUJBQXFCLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3pELElBQUksWUFBWSxFQUFFLENBQUM7WUFDZixZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDM0IscUJBQXFCLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzNDLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTztRQUNILE9BQU8sRUFBRTtZQUNMLGdCQUFnQixFQUFFLGdCQUFnQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7WUFDL0MsbUJBQW1CLEVBQUUsbUJBQW1CLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztTQUN4RDtRQUNELElBQUk7WUFDQSxNQUFNLFlBQVksR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ2hELElBQUksWUFBWSxFQUFFLENBQUM7Z0JBQ2YsWUFBWSxDQUFDLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDaEUsWUFBWSxDQUFDLG1CQUFtQixHQUFHLG1CQUFtQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUMxRSxDQUFDO1FBQ0wsQ0FBQztRQUNELE9BQU87WUFDSCxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztZQUMxRSxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNsQyxDQUFDO0tBQ0osQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTYW5kYm94UGF0Y2hIYW5kbGVyLCBQcm94eVNhbmRib3hJbnN0YW5jZSB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgZnVuY3Rpb24gZXZlbnRMaXN0ZW5lclBhdGNoKHNhbmRib3g6IFByb3h5U2FuZGJveEluc3RhbmNlKTogU2FuZGJveFBhdGNoSGFuZGxlciB7XG4gICAgY29uc3QgcmF3QWRkRXZlbnRMaXN0ZW5lciA9IHdpbmRvdy5hZGRFdmVudExpc3RlbmVyO1xuICAgIGNvbnN0IHJhd1JlbW92ZUV2ZW50TGlzdGVuZXIgPSB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcjtcbiAgICBjb25zdCBsaXN0ZW5lclN1YnNjcmlwdGlvbnMgPSBuZXcgTWFwPEV2ZW50TGlzdGVuZXJPckV2ZW50TGlzdGVuZXJPYmplY3QsIFN1YnNjcmlwdGlvbj4oKTtcblxuICAgIGZ1bmN0aW9uIGFkZEV2ZW50TGlzdGVuZXIodHlwZTogc3RyaW5nLCBsaXN0ZW5lcjogRXZlbnRMaXN0ZW5lck9yRXZlbnRMaXN0ZW5lck9iamVjdCwgb3B0aW9ucz86IGJvb2xlYW4gfCBBZGRFdmVudExpc3RlbmVyT3B0aW9ucykge1xuICAgICAgICBjb25zdCBvYnNlcnZhYmxlID0gbmV3IE9ic2VydmFibGUoKCkgPT4ge1xuICAgICAgICAgICAgcmF3QWRkRXZlbnRMaXN0ZW5lci5jYWxsKHRoaXMsIHR5cGUsIGxpc3RlbmVyLCBvcHRpb25zKTtcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgcmF3UmVtb3ZlRXZlbnRMaXN0ZW5lci5jYWxsKHRoaXMsIHR5cGUsIGxpc3RlbmVyLCBvcHRpb25zKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBzdWJzY3JpcHRpb24gPSBvYnNlcnZhYmxlLnN1YnNjcmliZSgoKSA9PiB7fSk7XG4gICAgICAgIGxpc3RlbmVyU3Vic2NyaXB0aW9ucy5zZXQobGlzdGVuZXIsIHN1YnNjcmlwdGlvbik7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gcmVtb3ZlRXZlbnRMaXN0ZW5lcih0eXBlOiBzdHJpbmcsIGxpc3RlbmVyOiBFdmVudExpc3RlbmVyT3JFdmVudExpc3RlbmVyT2JqZWN0KSB7XG4gICAgICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IGxpc3RlbmVyU3Vic2NyaXB0aW9ucy5nZXQobGlzdGVuZXIpO1xuICAgICAgICBpZiAoc3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICAgIGxpc3RlbmVyU3Vic2NyaXB0aW9ucy5kZWxldGUobGlzdGVuZXIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgcmV3cml0ZToge1xuICAgICAgICAgICAgYWRkRXZlbnRMaXN0ZW5lcjogYWRkRXZlbnRMaXN0ZW5lci5iaW5kKHdpbmRvdyksXG4gICAgICAgICAgICByZW1vdmVFdmVudExpc3RlbmVyOiByZW1vdmVFdmVudExpc3RlbmVyLmJpbmQod2luZG93KVxuICAgICAgICB9LFxuICAgICAgICBpbml0KCkge1xuICAgICAgICAgICAgY29uc3QgZmFrZURvY3VtZW50ID0gc2FuZGJveC5nbG9iYWxbJ2RvY3VtZW50J107XG4gICAgICAgICAgICBpZiAoZmFrZURvY3VtZW50KSB7XG4gICAgICAgICAgICAgICAgZmFrZURvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIgPSBhZGRFdmVudExpc3RlbmVyLmJpbmQoZG9jdW1lbnQpO1xuICAgICAgICAgICAgICAgIGZha2VEb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyID0gcmVtb3ZlRXZlbnRMaXN0ZW5lci5iaW5kKGRvY3VtZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgZGVzdHJveSgpIHtcbiAgICAgICAgICAgIGxpc3RlbmVyU3Vic2NyaXB0aW9ucy5mb3JFYWNoKHN1YnNjcmlwdGlvbiA9PiBzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKSk7XG4gICAgICAgICAgICBsaXN0ZW5lclN1YnNjcmlwdGlvbnMuY2xlYXIoKTtcbiAgICAgICAgfVxuICAgIH07XG59XG4iXX0=
@@ -0,0 +1,11 @@
1
+ import { eventListenerPatch } from './eventListener';
2
+ import { documentPatch } from './document';
3
+ import { timerPatch } from './timer';
4
+ import { storagePatch } from './storage';
5
+ const sandboxPatches = [documentPatch, eventListenerPatch, timerPatch, storagePatch];
6
+ export function getSandboxPatchHandlers(sandbox) {
7
+ return sandboxPatches.map(patch => {
8
+ return patch(sandbox);
9
+ });
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wbGFuZXQvc3JjL3NhbmRib3gvcHJveHkvcGF0Y2hlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDckMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUV6QyxNQUFNLGNBQWMsR0FBbUIsQ0FBQyxhQUFhLEVBQUUsa0JBQWtCLEVBQUUsVUFBVSxFQUFFLFlBQVksQ0FBQyxDQUFDO0FBRXJHLE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxPQUE2QjtJQUNqRSxPQUFPLGNBQWMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDOUIsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDMUIsQ0FBQyxDQUFDLENBQUM7QUFDUCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJveHlTYW5kYm94SW5zdGFuY2UsIFNhbmRib3hQYXRjaCwgU2FuZGJveFBhdGNoSGFuZGxlciB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7IGV2ZW50TGlzdGVuZXJQYXRjaCB9IGZyb20gJy4vZXZlbnRMaXN0ZW5lcic7XG5pbXBvcnQgeyBkb2N1bWVudFBhdGNoIH0gZnJvbSAnLi9kb2N1bWVudCc7XG5pbXBvcnQgeyB0aW1lclBhdGNoIH0gZnJvbSAnLi90aW1lcic7XG5pbXBvcnQgeyBzdG9yYWdlUGF0Y2ggfSBmcm9tICcuL3N0b3JhZ2UnO1xuXG5jb25zdCBzYW5kYm94UGF0Y2hlczogU2FuZGJveFBhdGNoW10gPSBbZG9jdW1lbnRQYXRjaCwgZXZlbnRMaXN0ZW5lclBhdGNoLCB0aW1lclBhdGNoLCBzdG9yYWdlUGF0Y2hdO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0U2FuZGJveFBhdGNoSGFuZGxlcnMoc2FuZGJveDogUHJveHlTYW5kYm94SW5zdGFuY2UpOiBTYW5kYm94UGF0Y2hIYW5kbGVyW10ge1xuICAgIHJldHVybiBzYW5kYm94UGF0Y2hlcy5tYXAocGF0Y2ggPT4ge1xuICAgICAgICByZXR1cm4gcGF0Y2goc2FuZGJveCk7XG4gICAgfSk7XG59XG4iXX0=