sliftutils 0.9.0 → 0.11.0
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.
- package/.cursorrules +2 -0
- package/.gitignore +38 -0
- package/assets/icon128.png +0 -0
- package/assets/icon16.png +0 -0
- package/assets/icon48.png +0 -0
- package/build-electron/assets/icon128.png +0 -0
- package/build-electron/assets/icon16.png +0 -0
- package/build-electron/assets/icon48.png +0 -0
- package/build-electron/electron/electronIndex.html +12 -0
- package/build-electron/electronMain.js +5185 -0
- package/build-electron/electronRenderer.js +20852 -0
- package/build-extension/assets/icon128.png +0 -0
- package/build-extension/assets/icon16.png +0 -0
- package/build-extension/assets/icon48.png +0 -0
- package/build-extension/extBackground.js +5246 -0
- package/build-extension/extContentScript.js +5243 -0
- package/build-extension/manifest.json +29 -0
- package/build-nodejs/server.js +198610 -0
- package/build-web/assets/icon128.png +0 -0
- package/build-web/assets/icon16.png +0 -0
- package/build-web/assets/icon48.png +0 -0
- package/build-web/browser.js +199266 -0
- package/build-web/web/index.html +32 -0
- package/builders/dist/electronBuild.ts.cache +105 -0
- package/builders/dist/extensionBuild.ts.cache +146 -0
- package/builders/dist/generateIndexDts.ts.cache +74 -0
- package/builders/dist/hotReload.ts.cache +93 -0
- package/builders/dist/nodeJSBuild.ts.cache +29 -0
- package/builders/dist/watch.ts.cache +163 -0
- package/builders/dist/webBuild.ts.cache +81 -0
- package/builders/generateIndexDts.ts +63 -0
- package/bundler/dist/bundleEntry.ts.cache +48 -0
- package/bundler/dist/bundleEntryCaller.ts.cache +18 -0
- package/bundler/dist/bundleRequire.ts.cache +246 -0
- package/bundler/dist/bundleWrapper.ts.cache +101 -0
- package/bundler/dist/bundler.ts.cache +66 -0
- package/bundler/dist/sourceMaps.ts.cache +210 -0
- package/dist/electronMain.ts.cache +27 -0
- package/dist/electronRenderer.tsx.cache +62 -0
- package/electron/dist/electronMain.ts.cache +26 -0
- package/electron/dist/electronRenderer.tsx.cache +64 -0
- package/extension/dist/extBackground.ts.cache +20 -0
- package/extension/dist/extContentScript.ts.cache +17 -0
- package/index.d.ts +46 -0
- package/misc/dist/environment.ts.cache +50 -0
- package/misc/dist/fs.ts.cache +29 -0
- package/misc/environment.d.ts +8 -0
- package/misc/fs.d.ts +1 -0
- package/misc/getSecret.d.ts +8 -0
- package/misc/getSecret.ts +0 -4
- package/misc/types.d.ts +1 -0
- package/misc/zip.d.ts +7 -0
- package/nodejs/dist/exampleFile.ts.cache +11 -0
- package/nodejs/dist/server.ts.cache +15 -0
- package/package.json +8 -3
- package/render-utils/SyncedController.d.ts +1 -0
- package/render-utils/dist/observer.tsx.cache +33 -0
- package/storage/dist/CachedStorage.ts.cache +31 -0
- package/storage/dist/DelayedStorage.ts.cache +35 -0
- package/storage/dist/DiskCollection.ts.cache +241 -0
- package/storage/dist/FileFolderAPI.tsx.cache +345 -0
- package/storage/dist/IndexedDBFileFolderAPI.ts.cache +142 -0
- package/storage/dist/JSONStorage.ts.cache +38 -0
- package/storage/dist/PendingManager.tsx.cache +73 -0
- package/storage/dist/PendingStorage.ts.cache +49 -0
- package/storage/dist/PrivateFileSystemStorage.ts.cache +178 -0
- package/storage/dist/StorageObservable.ts.cache +120 -0
- package/storage/dist/TransactionStorage.ts.cache +421 -0
- package/storage/dist/fileSystemPointer.ts.cache +77 -0
- package/tsconfig.declarations.json +3 -1
- package/web/dist/browser.tsx.cache +66 -0
- package/yarn.lock +1752 -0
- package/builders/generateIndexDts.js +0 -50
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true , configurable: true});
|
|
3
|
+
//exports.bundleRequire = void 0;
|
|
4
|
+
function bundleRequire(config) {
|
|
5
|
+
globalThis.process = globalThis.process || {
|
|
6
|
+
env: {
|
|
7
|
+
NODE_ENV: "production",
|
|
8
|
+
},
|
|
9
|
+
versions: {},
|
|
10
|
+
on: () => { },
|
|
11
|
+
};
|
|
12
|
+
globalThis.window = globalThis.window || globalThis;
|
|
13
|
+
globalThis.global = globalThis.global || globalThis;
|
|
14
|
+
globalThis.setImmediate = globalThis.setImmediate || globalThis.setTimeout;
|
|
15
|
+
globalThis.BOOTED_EDGE_NODE = undefined;
|
|
16
|
+
let builtInModuleExports = {
|
|
17
|
+
worker_threads: {
|
|
18
|
+
isMainThread: true,
|
|
19
|
+
},
|
|
20
|
+
util: {
|
|
21
|
+
// https://nodejs.org/api/util.html#util_util_inherits_constructor_superconstructor
|
|
22
|
+
inherits(constructor, superConstructor) {
|
|
23
|
+
Object.setPrototypeOf(constructor.prototype, superConstructor.prototype);
|
|
24
|
+
},
|
|
25
|
+
TextDecoder: TextDecoder,
|
|
26
|
+
TextEncoder: TextEncoder,
|
|
27
|
+
},
|
|
28
|
+
buffer: { Buffer },
|
|
29
|
+
stream: {
|
|
30
|
+
// HACK: Needed to get SAX JS to work correctly.
|
|
31
|
+
Stream: function () { },
|
|
32
|
+
Transform: function () { },
|
|
33
|
+
Writable: function () { },
|
|
34
|
+
},
|
|
35
|
+
timers: {
|
|
36
|
+
// TODO: Add all members of timers
|
|
37
|
+
setImmediate: globalThis.setImmediate,
|
|
38
|
+
},
|
|
39
|
+
child_process: {},
|
|
40
|
+
events: class EventEmitter {
|
|
41
|
+
},
|
|
42
|
+
};
|
|
43
|
+
// If is nodeJs
|
|
44
|
+
let allBuiltInModules = new Set();
|
|
45
|
+
// Electron
|
|
46
|
+
allBuiltInModules.add("electron");
|
|
47
|
+
allBuiltInModules.add("original-fs");
|
|
48
|
+
allBuiltInModules.add("vscode");
|
|
49
|
+
if (typeof document === "undefined" && typeof require !== "undefined") {
|
|
50
|
+
// Change the builts ins to use the actual built ins!
|
|
51
|
+
let { builtinModules } = require("node:module");
|
|
52
|
+
for (let key of builtinModules) {
|
|
53
|
+
allBuiltInModules.add(key);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
for (let key of allBuiltInModules) {
|
|
57
|
+
Object.defineProperty(builtInModuleExports, key, {
|
|
58
|
+
get() {
|
|
59
|
+
return require(key);
|
|
60
|
+
},
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
// Just path.resolve (but needs to be reimplemented, because we can't use imports)
|
|
64
|
+
function pathResolve(...paths) {
|
|
65
|
+
// Start with empty path segments array
|
|
66
|
+
let segments = [];
|
|
67
|
+
let isWindowsPath = false;
|
|
68
|
+
paths = paths.map(x => x.replace(/\\/g, "/"));
|
|
69
|
+
// Process each path argument
|
|
70
|
+
for (const path of paths) {
|
|
71
|
+
// Check for Windows drive letter (e.g., C:/)
|
|
72
|
+
if (/^[A-Za-z]:/.test(path)) {
|
|
73
|
+
isWindowsPath = true;
|
|
74
|
+
// Remove drive letter for processing
|
|
75
|
+
const withoutDrive = path.slice(2);
|
|
76
|
+
if (withoutDrive.startsWith("/")) {
|
|
77
|
+
segments = [path.slice(0, 2)]; // Keep drive letter and reset segments
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
// If no leading slash, keep current segments (relative to current drive path)
|
|
81
|
+
if (segments.length === 0 || !segments[0].match(/^[A-Za-z]:/)) {
|
|
82
|
+
segments = [path.slice(0, 2)];
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
// Add the rest of the path parts
|
|
86
|
+
segments.push(...withoutDrive.split("/").filter(x => x));
|
|
87
|
+
continue;
|
|
88
|
+
}
|
|
89
|
+
// If absolute path, reset segments but keep drive letter if present
|
|
90
|
+
if (path.startsWith("/")) {
|
|
91
|
+
if (isWindowsPath && segments.length > 0 && segments[0].match(/^[A-Za-z]:/)) {
|
|
92
|
+
const drive = segments[0];
|
|
93
|
+
segments = [drive];
|
|
94
|
+
}
|
|
95
|
+
else {
|
|
96
|
+
segments = [];
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
// Split path into segments and process each
|
|
100
|
+
const pathParts = path.split("/").filter(x => x);
|
|
101
|
+
for (const part of pathParts) {
|
|
102
|
+
if (part === "..") {
|
|
103
|
+
// Don't pop off the drive letter
|
|
104
|
+
if (segments.length > (isWindowsPath ? 1 : 0)) {
|
|
105
|
+
segments.pop();
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
else if (part !== ".") {
|
|
109
|
+
// Add segment if not current directory marker
|
|
110
|
+
segments.push(part);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
// Combine segments into final path
|
|
115
|
+
let result = segments.join("/");
|
|
116
|
+
if (!isWindowsPath) {
|
|
117
|
+
result = "/" + result;
|
|
118
|
+
}
|
|
119
|
+
return result;
|
|
120
|
+
}
|
|
121
|
+
function dirname(path) {
|
|
122
|
+
return path.split("/").slice(0, -1).join("/");
|
|
123
|
+
}
|
|
124
|
+
const requireCache = {};
|
|
125
|
+
let rootModule = createModule({
|
|
126
|
+
parentModule: undefined,
|
|
127
|
+
resolveAbsolutePath: config.rootPath + "/rootPlaceholder",
|
|
128
|
+
});
|
|
129
|
+
globalThis.require = rootModule.require;
|
|
130
|
+
function createModule(config) {
|
|
131
|
+
var _a;
|
|
132
|
+
const { parentModule, resolveAbsolutePath } = config;
|
|
133
|
+
let cached = requireCache[resolveAbsolutePath];
|
|
134
|
+
if (cached) {
|
|
135
|
+
return cached;
|
|
136
|
+
}
|
|
137
|
+
let serialized = (_a = globalThis.registeredModules) === null || _a === void 0 ? void 0 : _a[resolveAbsolutePath];
|
|
138
|
+
let newModule = {
|
|
139
|
+
id: resolveAbsolutePath,
|
|
140
|
+
filename: resolveAbsolutePath,
|
|
141
|
+
exports: {},
|
|
142
|
+
parent: parentModule,
|
|
143
|
+
children: [],
|
|
144
|
+
isPreloading: false,
|
|
145
|
+
loaded: false,
|
|
146
|
+
path: dirname(resolveAbsolutePath),
|
|
147
|
+
paths: (serialized === null || serialized === void 0 ? void 0 : serialized.paths) || [],
|
|
148
|
+
require,
|
|
149
|
+
load,
|
|
150
|
+
};
|
|
151
|
+
newModule.exports.default = newModule.exports;
|
|
152
|
+
if (parentModule) {
|
|
153
|
+
parentModule.children.push(newModule);
|
|
154
|
+
}
|
|
155
|
+
for (let [key, value] of Object.entries((serialized === null || serialized === void 0 ? void 0 : serialized.moduleFields) || {})) {
|
|
156
|
+
if (key in newModule)
|
|
157
|
+
continue;
|
|
158
|
+
newModule[key] = value;
|
|
159
|
+
}
|
|
160
|
+
resolve.paths = (request) => [];
|
|
161
|
+
requireCache[newModule.id] = newModule;
|
|
162
|
+
require.resolve = resolve;
|
|
163
|
+
require.cache = requireCache;
|
|
164
|
+
require.main = newModule;
|
|
165
|
+
require.extensions = "extension not implemented yet";
|
|
166
|
+
// Resolves file extensions
|
|
167
|
+
function innerResolve(path) {
|
|
168
|
+
var _a;
|
|
169
|
+
let candidates = [
|
|
170
|
+
path,
|
|
171
|
+
path + ".js",
|
|
172
|
+
path + ".ts",
|
|
173
|
+
path + ".tsx",
|
|
174
|
+
];
|
|
175
|
+
for (let candidate of candidates) {
|
|
176
|
+
let registered = (_a = globalThis.registeredModules) === null || _a === void 0 ? void 0 : _a[candidate];
|
|
177
|
+
if (registered) {
|
|
178
|
+
return registered.id;
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
return path;
|
|
182
|
+
}
|
|
183
|
+
function resolve(path) {
|
|
184
|
+
var _a;
|
|
185
|
+
path = path.replace(/\\/g, "/");
|
|
186
|
+
if (path.startsWith(".")) {
|
|
187
|
+
return innerResolve(pathResolve(newModule.path, path));
|
|
188
|
+
}
|
|
189
|
+
// We need to search all paths
|
|
190
|
+
for (let searchRoot of (serialized === null || serialized === void 0 ? void 0 : serialized.paths) || []) {
|
|
191
|
+
let candidate = innerResolve(pathResolve(searchRoot, path));
|
|
192
|
+
let registered = (_a = globalThis.registeredModules) === null || _a === void 0 ? void 0 : _a[candidate];
|
|
193
|
+
if (registered) {
|
|
194
|
+
return registered.id;
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
// It is probably "fs" or something like that
|
|
198
|
+
return path;
|
|
199
|
+
// debugger;
|
|
200
|
+
// throw new Error(`Module ${path} not found`);
|
|
201
|
+
}
|
|
202
|
+
function require(path) {
|
|
203
|
+
if (path in builtInModuleExports) {
|
|
204
|
+
return builtInModuleExports[path];
|
|
205
|
+
}
|
|
206
|
+
let resolved = resolve(path);
|
|
207
|
+
let subModule = createModule({
|
|
208
|
+
parentModule: newModule,
|
|
209
|
+
resolveAbsolutePath: resolved,
|
|
210
|
+
});
|
|
211
|
+
subModule.load(newModule.filename);
|
|
212
|
+
return subModule.exports;
|
|
213
|
+
}
|
|
214
|
+
function load() {
|
|
215
|
+
var _a;
|
|
216
|
+
if (newModule.loaded)
|
|
217
|
+
return;
|
|
218
|
+
// NOTE: Set loaded immediately, in case we have a circular dependency
|
|
219
|
+
newModule.loaded = true;
|
|
220
|
+
if (serialized) {
|
|
221
|
+
serialized.moduleFnc(newModule.exports, require, newModule, newModule.filename, newModule.path);
|
|
222
|
+
}
|
|
223
|
+
else {
|
|
224
|
+
// If we are being imported by the root module, we need to throw an error
|
|
225
|
+
if (!((_a = config.parentModule) === null || _a === void 0 ? void 0 : _a.parent)) {
|
|
226
|
+
debugger;
|
|
227
|
+
throw new Error(`Could not find required module ${JSON.stringify(config.resolveAbsolutePath)}, have ${JSON.stringify(Object.keys(globalThis.registeredModules || {}))}`);
|
|
228
|
+
}
|
|
229
|
+
newModule.exports = new Proxy({}, {
|
|
230
|
+
get(target, property) {
|
|
231
|
+
if (property === "__esModule")
|
|
232
|
+
return undefined;
|
|
233
|
+
if (property === "default")
|
|
234
|
+
return newModule.exports;
|
|
235
|
+
console.warn(`Module ${newModule.filename} is not available (are you missing "module.allowclient = true"?). Tried to access ${String(property)}.`);
|
|
236
|
+
return undefined;
|
|
237
|
+
},
|
|
238
|
+
});
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
return newModule;
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
exports.bundleRequire = bundleRequire;
|
|
245
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlUmVxdWlyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImJ1bmRsZVJlcXVpcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBTUEsU0FBZ0IsYUFBYSxDQUFDLE1BQTJCO0lBQ3JELFVBQVUsQ0FBQyxPQUFPLEdBQUcsVUFBVSxDQUFDLE9BQU8sSUFBSTtRQUN2QyxHQUFHLEVBQUU7WUFDRCxRQUFRLEVBQUUsWUFBWTtTQUN6QjtRQUNELFFBQVEsRUFBRSxFQUFFO1FBQ1osRUFBRSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUM7S0FDaEIsQ0FBQztJQUNELFVBQWtCLENBQUMsTUFBTSxHQUFJLFVBQWtCLENBQUMsTUFBTSxJQUFJLFVBQVUsQ0FBQztJQUNyRSxVQUFrQixDQUFDLE1BQU0sR0FBSSxVQUFrQixDQUFDLE1BQU0sSUFBSSxVQUFVLENBQUM7SUFDckUsVUFBa0IsQ0FBQyxZQUFZLEdBQUksVUFBa0IsQ0FBQyxZQUFZLElBQUksVUFBVSxDQUFDLFVBQVUsQ0FBQztJQUU1RixVQUFrQixDQUFDLGdCQUFnQixHQUFHLFNBQVMsQ0FBQztJQUVqRCxJQUFJLG9CQUFvQixHQUErQjtRQUNuRCxjQUFjLEVBQUU7WUFDWixZQUFZLEVBQUUsSUFBSTtTQUNyQjtRQUNELElBQUksRUFBRTtZQUNGLG1GQUFtRjtZQUNuRixRQUFRLENBQUMsV0FBZ0IsRUFBRSxnQkFBcUI7Z0JBQzVDLE1BQU0sQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUM3RSxDQUFDO1lBQ0QsV0FBVyxFQUFFLFdBQVc7WUFDeEIsV0FBVyxFQUFFLFdBQVc7U0FDM0I7UUFDRCxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUU7UUFDbEIsTUFBTSxFQUFFO1lBQ0osZ0RBQWdEO1lBQ2hELE1BQU0sRUFBRSxjQUFjLENBQUM7WUFDdkIsU0FBUyxFQUFFLGNBQWMsQ0FBQztZQUUxQixRQUFRLEVBQUUs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LENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FDdkksQ0FBQzt3QkFDRixPQUFPLFNBQVMsQ0FBQztvQkFDckIsQ0FBQztpQkFDSixDQUNKLENBQUM7WUFDTixDQUFDO1FBQ0wsQ0FBQztRQUVELE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7QUFDTCxDQUFDO0FBL1BELHNDQStQQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlcmlhbGl6ZWRNb2R1bGUgfSBmcm9tIFwiLi9idW5kbGVXcmFwcGVyXCI7XG5cbi8vIFNldHMgZ2xvYmFsVGhpcy5yZXF1aXJlID0gLi4uLCB1dGlsaXppbmcgcmVnaXN0ZXJlZE1vZHVsZXMgKGZyb20gYnVuZGxlV3JhcHBlci50cykgd2hlbiByZXF1aXJlIGlzIGNhbGxlZFxuZXhwb3J0IGludGVyZmFjZSBCdW5kbGVSZXF1aXJlQ29uZmlnIHtcbiAgICByb290UGF0aDogc3RyaW5nO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGJ1bmRsZVJlcXVpcmUoY29uZmlnOiBCdW5kbGVSZXF1aXJlQ29uZmlnKSB7XG4gICAgZ2xvYmFsVGhpcy5wcm9jZXNzID0gZ2xvYmFsVGhpcy5wcm9jZXNzIHx8IHtcbiAgICAgICAgZW52OiB7XG4gICAgICAgICAgICBOT0RFX0VOVjogXCJwcm9kdWN0aW9uXCIsXG4gICAgICAgIH0sXG4gICAgICAgIHZlcnNpb25zOiB7fSxcbiAgICAgICAgb246ICgpID0+IHsgfSxcbiAgICB9O1xuICAgIChnbG9iYWxUaGlzIGFzIGFueSkud2luZG93ID0gKGdsb2JhbFRoaXMgYXMgYW55KS53aW5kb3cgfHwgZ2xvYmFsVGhpcztcbiAgICAoZ2xvYmFsVGhpcyBhcyBhbnkpLmdsb2JhbCA9IChnbG9iYWxUaGlzIGFzIGFueSkuZ2xvYmFsIHx8IGdsb2JhbFRoaXM7XG4gICAgKGdsb2JhbFRoaXMgYXMgYW55KS5zZXRJbW1lZGlhdGUgPSAoZ2xvYmFsVGhpcyBhcyBhbnkpLnNldEltbWVkaWF0ZSB8fCBnbG9iYWxUaGlzLnNldFRpbWVvdXQ7XG5cbiAgICAoZ2xvYmFsVGhpcyBhcyBhbnkpLkJPT1RFRF9FREdFX05PREUgPSB1bmRlZmluZWQ7XG5cbiAgICBsZXQgYnVpbHRJbk1vZHVsZUV4cG9ydHM6IHsgW2tleTogc3RyaW5nXTogdW5rbm93biB9ID0ge1xuICAgICAgICB3b3JrZXJfdGhyZWFkczoge1xuICAgICAgICAgICAgaXNNYWluVGhyZWFkOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICB1dGlsOiB7XG4gICAgICAgICAgICAvLyBodHRwczovL25vZGVqcy5vcmcvYXBpL3V0aWwuaHRtbCN1dGlsX3V0aWxfaW5oZXJpdHNfY29uc3RydWN0b3Jfc3VwZXJjb25zdHJ1Y3RvclxuICAgICAgICAgICAgaW5oZXJpdHMoY29uc3RydWN0b3I6IGFueSwgc3VwZXJDb25zdHJ1Y3RvcjogYW55KSB7XG4gICAgICAgICAgICAgICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKGNvbnN0cnVjdG9yLnByb3RvdHlwZSwgc3VwZXJDb25zdHJ1Y3Rvci5wcm90b3R5cGUpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFRleHREZWNvZGVyOiBUZXh0RGVjb2RlcixcbiAgICAgICAgICAgIFRleHRFbmNvZGVyOiBUZXh0RW5jb2RlcixcbiAgICAgICAgfSxcbiAgICAgICAgYnVmZmVyOiB7IEJ1ZmZlciB9LFxuICAgICAgICBzdHJlYW06IHtcbiAgICAgICAgICAgIC8vIEhBQ0s6IE5lZWRlZCB0byBnZXQgU0FYIEpTIHRvIHdvcmsgY29ycmVjdGx5LlxuICAgICAgICAgICAgU3RyZWFtOiBmdW5jdGlvbiAoKSB7IH0sXG4gICAgICAgICAgICBUcmFuc2Zvcm06IGZ1bmN0aW9uICgpIHsgfSxcblxuICAgICAgICAgICAgV3JpdGFibGU6IGZ1bmN0aW9uICgpIHsgfSxcbiAgICAgICAgfSxcbiAgICAgICAgdGltZXJzOiB7XG4gICAgICAgICAgICAvLyBUT0RPOiBBZGQgYWxsIG1lbWJlcnMgb2YgdGltZXJzXG4gICAgICAgICAgICBzZXRJbW1lZGlhdGU6IGdsb2JhbFRoaXMuc2V0SW1tZWRpYXRlLFxuICAgICAgICB9LFxuICAgICAgICBjaGlsZF9wcm9jZXNzOiB7fSxcbiAgICAgICAgZXZlbnRzOiBjbGFzcyBFdmVudEVtaXR0ZXIgeyB9LFxuICAgIH07XG4gICAgLy8gSWYgaXMgbm9kZUpzXG4gICAgbGV0IGFsbEJ1aWx0SW5Nb2R1bGVzID0gbmV3IFNldDxzdHJpbmc+KCk7XG4gICAgLy8gRWxlY3Ryb24gXG4gICAgYWxsQnVpbHRJbk1vZHVsZXMuYWRkKFwiZWxlY3Ryb25cIik7XG4gICAgYWxsQnVpbHRJbk1vZHVsZXMuYWRkKFwib3JpZ2luYWwtZnNcIik7XG4gICAgYWxsQnVpbHRJbk1vZHVsZXMuYWRkKFwidnNjb2RlXCIpO1xuICAgIGlmICh0eXBlb2YgZG9jdW1lbnQgPT09IFwidW5kZWZpbmVkXCIgJiYgdHlwZW9mIHJlcXVpcmUgIT09IFwidW5kZWZpbmVkXCIpIHtcbiAgICAgICAgLy8gQ2hhbmdlIHRoZSBidWlsdHMgaW5zIHRvIHVzZSB0aGUgYWN0dWFsIGJ1aWx0IGlucyFcbiAgICAgICAgbGV0IHsgYnVpbHRpbk1vZHVsZXMgfSA9IHJlcXVpcmUoXCJub2RlOm1vZHVsZVwiKTtcbiAgICAgICAgZm9yIChsZXQga2V5IG9mIGJ1aWx0aW5Nb2R1bGVzKSB7XG4gICAgICAgICAgICBhbGxCdWlsdEluTW9kdWxlcy5hZGQoa2V5KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBmb3IgKGxldCBrZXkgb2YgYWxsQnVpbHRJbk1vZHVsZXMpIHtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KGJ1aWx0SW5Nb2R1bGVFeHBvcnRzLCBrZXksIHtcbiAgICAgICAgICAgIGdldCgpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVxdWlyZShrZXkpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gSnVzdCBwYXRoLnJlc29sdmUgKGJ1dCBuZWVkcyB0byBiZSByZWltcGxlbWVudGVkLCBiZWNhdXNlIHdlIGNhbid0IHVzZSBpbXBvcnRzKVxuICAgIGZ1bmN0aW9uIHBhdGhSZXNvbHZlKC4uLnBhdGhzOiBzdHJpbmdbXSk6IHN0cmluZyB7XG4gICAgICAgIC8vIFN0YXJ0IHdpdGggZW1wdHkgcGF0aCBzZWdtZW50cyBhcnJheVxuICAgICAgICBsZXQgc2VnbWVudHM6IHN0cmluZ1tdID0gW107XG4gICAgICAgIGxldCBpc1dpbmRvd3NQYXRoID0gZmFsc2U7XG5cbiAgICAgICAgcGF0aHMgPSBwYXRocy5tYXAoeCA9PiB4LnJlcGxhY2UoL1xcXFwvZywgXCIvXCIpKTtcblxuICAgICAgICAvLyBQcm9jZXNzIGVhY2ggcGF0aCBhcmd1bWVudFxuICAgICAgICBmb3IgKGNvbnN0IHBhdGggb2YgcGF0aHMpIHtcbiAgICAgICAgICAgIC8vIENoZWNrIGZvciBXaW5kb3dzIGRyaXZlIGxldHRlciAoZS5nLiwgQzovKVxuICAgICAgICAgICAgaWYgKC9eW0EtWmEtel06Ly50ZXN0KHBhdGgpKSB7XG4gICAgICAgICAgICAgICAgaXNXaW5kb3dzUGF0aCA9IHRydWU7XG4gICAgICAgICAgICAgICAgLy8gUmVtb3ZlIGRyaXZlIGxldHRlciBmb3IgcHJvY2Vzc2luZ1xuICAgICAgICAgICAgICAgIGNvbnN0IHdpdGhvdXREcml2ZSA9IHBhdGguc2xpY2UoMik7XG4gICAgICAgICAgICAgICAgaWYgKHdpdGhvdXREcml2ZS5zdGFydHNXaXRoKFwiL1wiKSkge1xuICAgICAgICAgICAgICAgICAgICBzZWdtZW50cyA9IFtwYXRoLnNsaWNlKDAsIDIpXTsgLy8gS2VlcCBkcml2ZSBsZXR0ZXIgYW5kIHJlc2V0IHNlZ21lbnRzXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gSWYgbm8gbGVhZGluZyBzbGFzaCwga2VlcCBjdXJyZW50IHNlZ21lbnRzIChyZWxhdGl2ZSB0byBjdXJyZW50IGRyaXZlIHBhdGgpXG4gICAgICAgICAgICAgICAgICAgIGlmIChzZWdtZW50cy5sZW5ndGggPT09IDAgfHwgIXNlZ21lbnRzWzBdLm1hdGNoKC9eW0EtWmEtel06LykpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlZ21lbnRzID0gW3BhdGguc2xpY2UoMCwgMildO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIEFkZCB0aGUgcmVzdCBvZiB0aGUgcGF0aCBwYXJ0c1xuICAgICAgICAgICAgICAgIHNlZ21lbnRzLnB1c2goLi4ud2l0aG91dERyaXZlLnNwbGl0KFwiL1wiKS5maWx0ZXIoeCA9PiB4KSk7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIElmIGFic29sdXRlIHBhdGgsIHJlc2V0IHNlZ21lbnRzIGJ1dCBrZWVwIGRyaXZlIGxldHRlciBpZiBwcmVzZW50XG4gICAgICAgICAgICBpZiAocGF0aC5zdGFydHNXaXRoKFwiL1wiKSkge1xuICAgICAgICAgICAgICAgIGlmIChpc1dpbmRvd3NQYXRoICYmIHNlZ21lbnRzLmxlbmd0aCA+IDAgJiYgc2VnbWVudHNbMF0ubWF0Y2goL15bQS1aYS16XTovKSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBkcml2ZSA9IHNlZ21lbnRzWzBdO1xuICAgICAgICAgICAgICAgICAgICBzZWdtZW50cyA9IFtkcml2ZV07XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgc2VnbWVudHMgPSBbXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFNwbGl0IHBhdGggaW50byBzZWdtZW50cyBhbmQgcHJvY2VzcyBlYWNoXG4gICAgICAgICAgICBjb25zdCBwYXRoUGFydHMgPSBwYXRoLnNwbGl0KFwiL1wiKS5maWx0ZXIoeCA9PiB4KTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgcGFydCBvZiBwYXRoUGFydHMpIHtcbiAgICAgICAgICAgICAgICBpZiAocGFydCA9PT0gXCIuLlwiKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIERvbid0IHBvcCBvZmYgdGhlIGRyaXZlIGxldHRlclxuICAgICAgICAgICAgICAgICAgICBpZiAoc2VnbWVudHMubGVuZ3RoID4gKGlzV2luZG93c1BhdGggPyAxIDogMCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlZ21lbnRzLnBvcCgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChwYXJ0ICE9PSBcIi5cIikge1xuICAgICAgICAgICAgICAgICAgICAvLyBBZGQgc2VnbWVudCBpZiBub3QgY3VycmVudCBkaXJlY3RvcnkgbWFya2VyXG4gICAgICAgICAgICAgICAgICAgIHNlZ21lbnRzLnB1c2gocGFydCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ29tYmluZSBzZWdtZW50cyBpbnRvIGZpbmFsIHBhdGhcbiAgICAgICAgbGV0IHJlc3VsdCA9IHNlZ21lbnRzLmpvaW4oXCIvXCIpO1xuICAgICAgICBpZiAoIWlzV2luZG93c1BhdGgpIHtcbiAgICAgICAgICAgIHJlc3VsdCA9IFwiL1wiICsgcmVzdWx0O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuICAgIGZ1bmN0aW9uIGRpcm5hbWUocGF0aDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHBhdGguc3BsaXQoXCIvXCIpLnNsaWNlKDAsIC0xKS5qb2luKFwiL1wiKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXF1aXJlQ2FjaGU6IHsgW2lkOiBzdHJpbmddOiBOb2RlSlMuTW9kdWxlIH0gPSB7fTtcblxuICAgIGxldCByb290TW9kdWxlID0gY3JlYXRlTW9kdWxlKHtcbiAgICAgICAgcGFyZW50TW9kdWxlOiB1bmRlZmluZWQsXG4gICAgICAgIHJlc29sdmVBYnNvbHV0ZVBhdGg6IGNvbmZpZy5yb290UGF0aCArIFwiL3Jvb3RQbGFjZWhvbGRlclwiLFxuICAgIH0pO1xuICAgIGdsb2JhbFRoaXMucmVxdWlyZSA9IHJvb3RNb2R1bGUucmVxdWlyZSBhcyBhbnk7XG5cbiAgICBmdW5jdGlvbiBjcmVhdGVNb2R1bGUoY29uZmlnOiB7XG4gICAgICAgIHBhcmVudE1vZHVsZTogTm9kZUpTLk1vZHVsZSB8IHVuZGVmaW5lZDtcbiAgICAgICAgcmVzb2x2ZUFic29sdXRlUGF0aDogc3RyaW5nO1xuICAgIH0pOiBOb2RlSlMuTW9kdWxlIHtcbiAgICAgICAgY29uc3QgeyBwYXJlbnRNb2R1bGUsIHJlc29sdmVBYnNvbHV0ZVBhdGggfSA9IGNvbmZpZztcbiAgICAgICAgbGV0IGNhY2hlZCA9IHJlcXVpcmVDYWNoZVtyZXNvbHZlQWJzb2x1dGVQYXRoXTtcbiAgICAgICAgaWYgKGNhY2hlZCkge1xuICAgICAgICAgICAgcmV0dXJuIGNhY2hlZDtcbiAgICAgICAgfVxuICAgICAgICBsZXQgc2VyaWFsaXplZCA9IGdsb2JhbFRoaXMucmVnaXN0ZXJlZE1vZHVsZXM/LltyZXNvbHZlQWJzb2x1dGVQYXRoXTtcblxuICAgICAgICBsZXQgbmV3TW9kdWxlOiBOb2RlSlMuTW9kdWxlID0ge1xuICAgICAgICAgICAgaWQ6IHJlc29sdmVBYnNvbHV0ZVBhdGgsXG4gICAgICAgICAgICBmaWxlbmFtZTogcmVzb2x2ZUFic29sdXRlUGF0aCxcbiAgICAgICAgICAgIGV4cG9ydHM6IHt9LFxuICAgICAgICAgICAgcGFyZW50OiBwYXJlbnRNb2R1bGUsXG4gICAgICAgICAgICBjaGlsZHJlbjogW10sXG4gICAgICAgICAgICBpc1ByZWxvYWRpbmc6IGZhbHNlLFxuICAgICAgICAgICAgbG9hZGVkOiBmYWxzZSxcbiAgICAgICAgICAgIHBhdGg6IGRpcm5hbWUocmVzb2x2ZUFic29sdXRlUGF0aCksXG4gICAgICAgICAgICBwYXRoczogc2VyaWFsaXplZD8ucGF0aHMgfHwgW10sXG4gICAgICAgICAgICByZXF1aXJlLFxuICAgICAgICAgICAgbG9hZCxcbiAgICAgICAgfSBhcyBhbnk7XG4gICAgICAgIG5ld01vZHVsZS5leHBvcnRzLmRlZmF1bHQgPSBuZXdNb2R1bGUuZXhwb3J0cztcbiAgICAgICAgaWYgKHBhcmVudE1vZHVsZSkge1xuICAgICAgICAgICAgcGFyZW50TW9kdWxlLmNoaWxkcmVuLnB1c2gobmV3TW9kdWxlKTtcbiAgICAgICAgfVxuICAgICAgICBmb3IgKGxldCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMoc2VyaWFsaXplZD8ubW9kdWxlRmllbGRzIHx8IHt9KSkge1xuICAgICAgICAgICAgaWYgKGtleSBpbiBuZXdNb2R1bGUpIGNvbnRpbnVlO1xuICAgICAgICAgICAgKG5ld01vZHVsZSBhcyBhbnkpW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXNvbHZlLnBhdGhzID0gKHJlcXVlc3Q6IHN0cmluZykgPT4gW107XG5cbiAgICAgICAgcmVxdWlyZUNhY2hlW25ld01vZHVsZS5pZF0gPSBuZXdNb2R1bGU7XG4gICAgICAgIHJlcXVpcmUucmVzb2x2ZSA9IHJlc29sdmU7XG4gICAgICAgIHJlcXVpcmUuY2FjaGUgPSByZXF1aXJlQ2FjaGU7XG4gICAgICAgIHJlcXVpcmUubWFpbiA9IG5ld01vZHVsZTtcbiAgICAgICAgcmVxdWlyZS5leHRlbnNpb25zID0gXCJleHRlbnNpb24gbm90IGltcGxlbWVudGVkIHlldFwiIGFzIGFueTtcblxuICAgICAgICAvLyBSZXNvbHZlcyBmaWxlIGV4dGVuc2lvbnNcbiAgICAgICAgZnVuY3Rpb24gaW5uZXJSZXNvbHZlKHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgICAgICBsZXQgY2FuZGlkYXRlcyA9IFtcbiAgICAgICAgICAgICAgICBwYXRoLFxuICAgICAgICAgICAgICAgIHBhdGggKyBcIi5qc1wiLFxuICAgICAgICAgICAgICAgIHBhdGggKyBcIi50c1wiLFxuICAgICAgICAgICAgICAgIHBhdGggKyBcIi50c3hcIixcbiAgICAgICAgICAgIF07XG4gICAgICAgICAgICBmb3IgKGxldCBjYW5kaWRhdGUgb2YgY2FuZGlkYXRlcykge1xuICAgICAgICAgICAgICAgIGxldCByZWdpc3RlcmVkID0gZ2xvYmFsVGhpcy5yZWdpc3RlcmVkTW9kdWxlcz8uW2NhbmRpZGF0ZV07XG4gICAgICAgICAgICAgICAgaWYgKHJlZ2lzdGVyZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlZ2lzdGVyZWQuaWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHBhdGg7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiByZXNvbHZlKHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgICAgICBwYXRoID0gcGF0aC5yZXBsYWNlKC9cXFxcL2csIFwiL1wiKTtcbiAgICAgICAgICAgIGlmIChwYXRoLnN0YXJ0c1dpdGgoXCIuXCIpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGlubmVyUmVzb2x2ZShwYXRoUmVzb2x2ZShuZXdNb2R1bGUucGF0aCwgcGF0aCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gV2UgbmVlZCB0byBzZWFyY2ggYWxsIHBhdGhzXG4gICAgICAgICAgICBmb3IgKGxldCBzZWFyY2hSb290IG9mIHNlcmlhbGl6ZWQ/LnBhdGhzIHx8IFtdKSB7XG4gICAgICAgICAgICAgICAgbGV0IGNhbmRpZGF0ZSA9IGlubmVyUmVzb2x2ZShwYXRoUmVzb2x2ZShzZWFyY2hSb290LCBwYXRoKSk7XG4gICAgICAgICAgICAgICAgbGV0IHJlZ2lzdGVyZWQgPSBnbG9iYWxUaGlzLnJlZ2lzdGVyZWRNb2R1bGVzPy5bY2FuZGlkYXRlXTtcbiAgICAgICAgICAgICAgICBpZiAocmVnaXN0ZXJlZCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVnaXN0ZXJlZC5pZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBJdCBpcyBwcm9iYWJseSBcImZzXCIgb3Igc29tZXRoaW5nIGxpa2UgdGhhdFxuICAgICAgICAgICAgcmV0dXJuIHBhdGg7XG4gICAgICAgICAgICAvLyBkZWJ1Z2dlcjtcbiAgICAgICAgICAgIC8vIHRocm93IG5ldyBFcnJvcihgTW9kdWxlICR7cGF0aH0gbm90IGZvdW5kYCk7XG4gICAgICAgIH1cblxuICAgICAgICBmdW5jdGlvbiByZXF1aXJlKHBhdGg6IHN0cmluZykge1xuICAgICAgICAgICAgaWYgKHBhdGggaW4gYnVpbHRJbk1vZHVsZUV4cG9ydHMpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gYnVpbHRJbk1vZHVsZUV4cG9ydHNbcGF0aCBhcyBrZXlvZiB0eXBlb2YgYnVpbHRJbk1vZHVsZUV4cG9ydHNdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGV0IHJlc29sdmVkID0gcmVzb2x2ZShwYXRoKTtcbiAgICAgICAgICAgIGxldCBzdWJNb2R1bGUgPSBjcmVhdGVNb2R1bGUoe1xuICAgICAgICAgICAgICAgIHBhcmVudE1vZHVsZTogbmV3TW9kdWxlLFxuICAgICAgICAgICAgICAgIHJlc29sdmVBYnNvbHV0ZVBhdGg6IHJlc29sdmVkLFxuICAgICAgICAgICAgfSkgYXMgYW55O1xuICAgICAgICAgICAgc3ViTW9kdWxlLmxvYWQobmV3TW9kdWxlLmZpbGVuYW1lKTtcbiAgICAgICAgICAgIHJldHVybiBzdWJNb2R1bGUuZXhwb3J0cztcbiAgICAgICAgfVxuXG4gICAgICAgIGZ1bmN0aW9uIGxvYWQoKSB7XG4gICAgICAgICAgICBpZiAobmV3TW9kdWxlLmxvYWRlZCkgcmV0dXJuO1xuICAgICAgICAgICAgLy8gTk9URTogU2V0IGxvYWRlZCBpbW1lZGlhdGVseSwgaW4gY2FzZSB3ZSBoYXZlIGEgY2lyY3VsYXIgZGVwZW5kZW5jeVxuICAgICAgICAgICAgbmV3TW9kdWxlLmxvYWRlZCA9IHRydWU7XG5cbiAgICAgICAgICAgIGlmIChzZXJpYWxpemVkKSB7XG4gICAgICAgICAgICAgICAgc2VyaWFsaXplZC5tb2R1bGVGbmMobmV3TW9kdWxlLmV4cG9ydHMsIHJlcXVpcmUsIG5ld01vZHVsZSwgbmV3TW9kdWxlLmZpbGVuYW1lLCBuZXdNb2R1bGUucGF0aCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIC8vIElmIHdlIGFyZSBiZWluZyBpbXBvcnRlZCBieSB0aGUgcm9vdCBtb2R1bGUsIHdlIG5lZWQgdG8gdGhyb3cgYW4gZXJyb3JcbiAgICAgICAgICAgICAgICBpZiAoIWNvbmZpZy5wYXJlbnRNb2R1bGU/LnBhcmVudCkge1xuICAgICAgICAgICAgICAgICAgICBkZWJ1Z2dlcjtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb3VsZCBub3QgZmluZCByZXF1aXJlZCBtb2R1bGUgJHtKU09OLnN0cmluZ2lmeShjb25maWcucmVzb2x2ZUFic29sdXRlUGF0aCl9LCBoYXZlICR7SlNPTi5zdHJpbmdpZnkoT2JqZWN0LmtleXMoZ2xvYmFsVGhpcy5yZWdpc3RlcmVkTW9kdWxlcyB8fCB7fSkpfWApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBuZXdNb2R1bGUuZXhwb3J0cyA9IG5ldyBQcm94eShcbiAgICAgICAgICAgICAgICAgICAge30sXG4gICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdldCh0YXJnZXQsIHByb3BlcnR5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHByb3BlcnR5ID09PSBcIl9fZXNNb2R1bGVcIikgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocHJvcGVydHkgPT09IFwiZGVmYXVsdFwiKSByZXR1cm4gbmV3TW9kdWxlLmV4cG9ydHM7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBNb2R1bGUgJHtuZXdNb2R1bGUuZmlsZW5hbWV9IGlzIG5vdCBhdmFpbGFibGUgKGFyZSB5b3UgbWlzc2luZyBcIm1vZHVsZS5hbGxvd2NsaWVudCA9IHRydWVcIj8pLiBUcmllZCB0byBhY2Nlc3MgJHtTdHJpbmcocHJvcGVydHkpfS5gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbmV3TW9kdWxlO1xuICAgIH1cbn0iXX0=
|
|
246
|
+
/* _JS_SOURCE_HASH = "7144df5a853f20363fe51f587a13defe1e11289175c78caf38c4a00ae9846bb1"; */
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule && mod.default) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true , configurable: true});
|
|
6
|
+
//exports.wrapModule = void 0;
|
|
7
|
+
const caching_1 = require("socket-function/src/caching");
|
|
8
|
+
const path_1 = __importDefault(require("path"));
|
|
9
|
+
const fs_1 = __importDefault(require("fs"));
|
|
10
|
+
const getPackageJsonPath = (0, caching_1.cache)((directory) => {
|
|
11
|
+
if (!directory.includes("/") && !directory.includes("\\")) {
|
|
12
|
+
return undefined;
|
|
13
|
+
}
|
|
14
|
+
let packageJsonPath = path_1.default.resolve(directory, "package.json");
|
|
15
|
+
if (fs_1.default.existsSync(packageJsonPath)) {
|
|
16
|
+
return packageJsonPath;
|
|
17
|
+
}
|
|
18
|
+
return getPackageJsonPath(path_1.default.dirname(directory));
|
|
19
|
+
});
|
|
20
|
+
const getMainPath = (0, caching_1.cache)((directory) => {
|
|
21
|
+
let packageJsonPath = getPackageJsonPath(directory);
|
|
22
|
+
if (!packageJsonPath)
|
|
23
|
+
return undefined;
|
|
24
|
+
let packageJson = JSON.parse(fs_1.default.readFileSync(packageJsonPath, "utf8"));
|
|
25
|
+
let dir = path_1.default.dirname(packageJsonPath);
|
|
26
|
+
let mainName = packageJson.main;
|
|
27
|
+
if (!mainName) {
|
|
28
|
+
if (fs_1.default.existsSync(path_1.default.resolve(dir, "index.js"))) {
|
|
29
|
+
mainName = "index.js";
|
|
30
|
+
}
|
|
31
|
+
else if (fs_1.default.existsSync(path_1.default.resolve(dir, "index.ts"))) {
|
|
32
|
+
mainName = "index.ts";
|
|
33
|
+
}
|
|
34
|
+
else if (fs_1.default.existsSync(path_1.default.resolve(dir, "index.tsx"))) {
|
|
35
|
+
mainName = "index.tsx";
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
mainName = "index.js";
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
let mainPath = path_1.default.resolve(dir, mainName);
|
|
42
|
+
return mainPath;
|
|
43
|
+
});
|
|
44
|
+
// Wraps the module so it registers itself when the returned code is evaluated
|
|
45
|
+
// - See https://nodejs.org/api/modules.html#the-module-wrapper
|
|
46
|
+
function wrapModule(module) {
|
|
47
|
+
let contents = module.moduleContents || "/* No contents */";
|
|
48
|
+
// NOTE: debugName only matters during module evaluation. After that the sourcemap should work.
|
|
49
|
+
let debugName = module.filename
|
|
50
|
+
.replace(/\\/g, "/")
|
|
51
|
+
.split("/")
|
|
52
|
+
.slice(-1)[0]
|
|
53
|
+
.replace(/\./g, "_")
|
|
54
|
+
.replace(/[^a-zA-Z_]/g, "");
|
|
55
|
+
let wrapped = `(function ${debugName}(exports, require, module, __filename, __dirname) { ${contents}
|
|
56
|
+
})`;
|
|
57
|
+
let moduleFields = {};
|
|
58
|
+
for (let [key, value] of Object.entries(module)) {
|
|
59
|
+
if (typeof value === "function")
|
|
60
|
+
continue;
|
|
61
|
+
if (typeof value === "boolean") {
|
|
62
|
+
moduleFields[key] = value;
|
|
63
|
+
}
|
|
64
|
+
else if (typeof value === "string" && value.length < 150) {
|
|
65
|
+
moduleFields[key] = value;
|
|
66
|
+
}
|
|
67
|
+
else if (typeof value === "number") {
|
|
68
|
+
moduleFields[key] = value;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
let isModuleMain;
|
|
72
|
+
let dirname = path_1.default.dirname(module.filename);
|
|
73
|
+
let packageJsonPath = getPackageJsonPath(dirname);
|
|
74
|
+
if (packageJsonPath) {
|
|
75
|
+
let mainPath = getMainPath(dirname);
|
|
76
|
+
if ((mainPath === null || mainPath === void 0 ? void 0 : mainPath.replaceAll("\\", "/")) === module.filename.replaceAll("\\", "/")) {
|
|
77
|
+
// Then we are the main of the module
|
|
78
|
+
isModuleMain = path_1.default.dirname(packageJsonPath).replaceAll("\\", "/");
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
// NOTE: We can't have new lines, or they break source maps
|
|
82
|
+
let objWrapped = `{`
|
|
83
|
+
+ ` id: ${JSON.stringify(module.id.replaceAll("\\", "/"))},`
|
|
84
|
+
+ ` filename: ${JSON.stringify(module.filename.replaceAll("\\", "/"))},`
|
|
85
|
+
+ ` isModuleMain: ${JSON.stringify(isModuleMain)},`
|
|
86
|
+
+ ` paths: ${JSON.stringify(module.paths.map(p => p.replaceAll("\\", "/")))},`
|
|
87
|
+
+ ` moduleFields: ${JSON.stringify(moduleFields)},`
|
|
88
|
+
+ ` moduleFnc: ${wrapped}`
|
|
89
|
+
+ ` }`;
|
|
90
|
+
function initModule(serialized) {
|
|
91
|
+
globalThis.registeredModules = globalThis.registeredModules || {};
|
|
92
|
+
globalThis.registeredModules[serialized.id] = serialized;
|
|
93
|
+
if (serialized.isModuleMain) {
|
|
94
|
+
globalThis.registeredModules[serialized.isModuleMain] = serialized;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
return `;(${initModule.toString().replaceAll("\n", " ")})(${objWrapped});`;
|
|
98
|
+
}
|
|
99
|
+
exports.wrapModule = wrapModule;
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlV3JhcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImJ1bmRsZVdyYXBwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEseURBQW9EO0FBQ3BELGdEQUF3QjtBQUN4Qiw0Q0FBb0I7QUFFcEIsTUFBTSxrQkFBa0IsR0FBRyxJQUFBLGVBQUssRUFBQyxDQUFDLFNBQWlCLEVBQXNCLEVBQUU7SUFDdkUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDeEQsT0FBTyxTQUFTLENBQUM7SUFDckIsQ0FBQztJQUNELElBQUksZUFBZSxHQUFHLGNBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQzlELElBQUksWUFBRSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO1FBQ2pDLE9BQU8sZUFBZSxDQUFDO0lBQzNCLENBQUM7SUFDRCxPQUFPLGtCQUFrQixDQUFDLGNBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztBQUN2RCxDQUFDLENBQUMsQ0FBQztBQUNILE1BQU0sV0FBVyxHQUFHLElBQUEsZUFBSyxFQUFDLENBQUMsU0FBaUIsRUFBc0IsRUFBRTtJQUNoRSxJQUFJLGVBQWUsR0FBRyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNwRCxJQUFJLENBQUMsZUFBZTtRQUFFLE9BQU8sU0FBUyxDQUFDO0lBQ3ZDLElBQUksV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBRSxDQUFDLFlBQVksQ0FBQyxlQUFlLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUN2RSxJQUFJLEdBQUcsR0FBRyxjQUFJLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3hDLElBQUksUUFBUSxHQUFHLFdBQVcsQ0FBQyxJQUFJ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QUFVLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxLQUFLLFVBQVUsSUFBSSxDQUFDO0FBQy9FLENBQUM7QUF4REQsZ0NBd0RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2FjaGUgfSBmcm9tIFwic29ja2V0LWZ1bmN0aW9uL3NyYy9jYWNoaW5nXCI7XG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IGZzIGZyb20gXCJmc1wiO1xuXG5jb25zdCBnZXRQYWNrYWdlSnNvblBhdGggPSBjYWNoZSgoZGlyZWN0b3J5OiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQgPT4ge1xuICAgIGlmICghZGlyZWN0b3J5LmluY2x1ZGVzKFwiL1wiKSAmJiAhZGlyZWN0b3J5LmluY2x1ZGVzKFwiXFxcXFwiKSkge1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBsZXQgcGFja2FnZUpzb25QYXRoID0gcGF0aC5yZXNvbHZlKGRpcmVjdG9yeSwgXCJwYWNrYWdlLmpzb25cIik7XG4gICAgaWYgKGZzLmV4aXN0c1N5bmMocGFja2FnZUpzb25QYXRoKSkge1xuICAgICAgICByZXR1cm4gcGFja2FnZUpzb25QYXRoO1xuICAgIH1cbiAgICByZXR1cm4gZ2V0UGFja2FnZUpzb25QYXRoKHBhdGguZGlybmFtZShkaXJlY3RvcnkpKTtcbn0pO1xuY29uc3QgZ2V0TWFpblBhdGggPSBjYWNoZSgoZGlyZWN0b3J5OiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQgPT4ge1xuICAgIGxldCBwYWNrYWdlSnNvblBhdGggPSBnZXRQYWNrYWdlSnNvblBhdGgoZGlyZWN0b3J5KTtcbiAgICBpZiAoIXBhY2thZ2VKc29uUGF0aCkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICBsZXQgcGFja2FnZUpzb24gPSBKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhwYWNrYWdlSnNvblBhdGgsIFwidXRmOFwiKSk7XG4gICAgbGV0IGRpciA9IHBhdGguZGlybmFtZShwYWNrYWdlSnNvblBhdGgpO1xuICAgIGxldCBtYWluTmFtZSA9IHBhY2thZ2VKc29uLm1haW47XG4gICAgaWYgKCFtYWluTmFtZSkge1xuICAgICAgICBpZiAoZnMuZXhpc3RzU3luYyhwYXRoLnJlc29sdmUoZGlyLCBcImluZGV4LmpzXCIpKSkge1xuICAgICAgICAgICAgbWFpbk5hbWUgPSBcImluZGV4LmpzXCI7XG4gICAgICAgIH0gZWxzZSBpZiAoZnMuZXhpc3RzU3luYyhwYXRoLnJlc29sdmUoZGlyLCBcImluZGV4LnRzXCIpKSkge1xuICAgICAgICAgICAgbWFpbk5hbWUgPSBcImluZGV4LnRzXCI7XG4gICAgICAgIH0gZWxzZSBpZiAoZnMuZXhpc3RzU3luYyhwYXRoLnJlc29sdmUoZGlyLCBcImluZGV4LnRzeFwiKSkpIHtcbiAgICAgICAgICAgIG1haW5OYW1lID0gXCJpbmRleC50c3hcIjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG1haW5OYW1lID0gXCJpbmRleC5qc1wiO1xuICAgICAgICB9XG4gICAgfVxuICAgIGxldCBtYWluUGF0aCA9IHBhdGgucmVzb2x2ZShkaXIsIG1haW5OYW1lKTtcbiAgICByZXR1cm4gbWFpblBhdGg7XG59KTtcblxuXG4vLyBXcmFwcyB0aGUgbW9kdWxlIHNvIGl0IHJlZ2lzdGVycyBpdHNlbGYgd2hlbiB0aGUgcmV0dXJuZWQgY29kZSBpcyBldmFsdWF0ZWRcbi8vICAtIFNlZSBodHRwczovL25vZGVqcy5vcmcvYXBpL21vZHVsZXMuaHRtbCN0aGUtbW9kdWxlLXdyYXBwZXJcbmV4cG9ydCBmdW5jdGlvbiB3cmFwTW9kdWxlKG1vZHVsZTogTm9kZUpTLk1vZHVsZSk6IHN0cmluZyB7XG4gICAgbGV0IGNvbnRlbnRzID0gKG1vZHVsZSBhcyBhbnkpLm1vZHVsZUNvbnRlbnRzIHx8IFwiLyogTm8gY29udGVudHMgKi9cIjtcblxuICAgIC8vIE5PVEU6IGRlYnVnTmFtZSBvbmx5IG1hdHRlcnMgZHVyaW5nIG1vZHVsZSBldmFsdWF0aW9uLiBBZnRlciB0aGF0IHRoZSBzb3VyY2VtYXAgc2hvdWxkIHdvcmsuXG4gICAgbGV0IGRlYnVnTmFtZSA9IG1vZHVsZS5maWxlbmFtZVxuICAgICAgICAucmVwbGFjZSgvXFxcXC9nLCBcIi9cIilcbiAgICAgICAgLnNwbGl0KFwiL1wiKVxuICAgICAgICAuc2xpY2UoLTEpWzBdXG4gICAgICAgIC5yZXBsYWNlKC9cXC4vZywgXCJfXCIpXG4gICAgICAgIC5yZXBsYWNlKC9bXmEtekEtWl9dL2csIFwiXCIpO1xuXG4gICAgbGV0IHdyYXBwZWQgPSBgKGZ1bmN0aW9uICR7ZGVidWdOYW1lfShleHBvcnRzLCByZXF1aXJlLCBtb2R1bGUsIF9fZmlsZW5hbWUsIF9fZGlybmFtZSkgeyAke2NvbnRlbnRzfVxuICAgIH0pYDtcblxuICAgIGxldCBtb2R1bGVGaWVsZHM6IHsgW2ZsYWc6IHN0cmluZ106IHVua25vd247IH0gPSB7fTtcbiAgICBmb3IgKGxldCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMobW9kdWxlKSkge1xuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcImZ1bmN0aW9uXCIpIGNvbnRpbnVlO1xuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcImJvb2xlYW5cIikge1xuICAgICAgICAgICAgbW9kdWxlRmllbGRzW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdmFsdWUgPT09IFwic3RyaW5nXCIgJiYgdmFsdWUubGVuZ3RoIDwgMTUwKSB7XG4gICAgICAgICAgICBtb2R1bGVGaWVsZHNba2V5XSA9IHZhbHVlO1xuICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJudW1iZXJcIikge1xuICAgICAgICAgICAgbW9kdWxlRmllbGRzW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxldCBpc01vZHVsZU1haW46IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICBsZXQgZGlybmFtZSA9IHBhdGguZGlybmFtZShtb2R1bGUuZmlsZW5hbWUpO1xuICAgIGxldCBwYWNrYWdlSnNvblBhdGggPSBnZXRQYWNrYWdlSnNvblBhdGgoZGlybmFtZSk7XG4gICAgaWYgKHBhY2thZ2VKc29uUGF0aCkge1xuICAgICAgICBsZXQgbWFpblBhdGggPSBnZXRNYWluUGF0aChkaXJuYW1lKTtcbiAgICAgICAgaWYgKG1haW5QYXRoPy5yZXBsYWNlQWxsKFwiXFxcXFwiLCBcIi9cIikgPT09IG1vZHVsZS5maWxlbmFtZS5yZXBsYWNlQWxsKFwiXFxcXFwiLCBcIi9cIikpIHtcbiAgICAgICAgICAgIC8vIFRoZW4gd2UgYXJlIHRoZSBtYWluIG9mIHRoZSBtb2R1bGVcbiAgICAgICAgICAgIGlzTW9kdWxlTWFpbiA9IHBhdGguZGlybmFtZShwYWNrYWdlSnNvblBhdGgpLnJlcGxhY2VBbGwoXCJcXFxcXCIsIFwiL1wiKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5PVEU6IFdlIGNhbid0IGhhdmUgbmV3IGxpbmVzLCBvciB0aGV5IGJyZWFrIHNvdXJjZSBtYXBzXG4gICAgbGV0IG9ialdyYXBwZWQgPSBge2BcbiAgICAgICAgKyBgIGlkOiAke0pTT04uc3RyaW5naWZ5KG1vZHVsZS5pZC5yZXBsYWNlQWxsKFwiXFxcXFwiLCBcIi9cIikpfSxgXG4gICAgICAgICsgYCBmaWxlbmFtZTogJHtKU09OLnN0cmluZ2lmeShtb2R1bGUuZmlsZW5hbWUucmVwbGFjZUFsbChcIlxcXFxcIiwgXCIvXCIpKX0sYFxuICAgICAgICArIGAgaXNNb2R1bGVNYWluOiAke0pTT04uc3RyaW5naWZ5KGlzTW9kdWxlTWFpbil9LGBcbiAgICAgICAgKyBgIHBhdGhzOiAke0pTT04uc3RyaW5naWZ5KG1vZHVsZS5wYXRocy5tYXAocCA9PiBwLnJlcGxhY2VBbGwoXCJcXFxcXCIsIFwiL1wiKSkpfSxgXG4gICAgICAgICsgYCBtb2R1bGVGaWVsZHM6ICR7SlNPTi5zdHJpbmdpZnkobW9kdWxlRmllbGRzKX0sYFxuICAgICAgICArIGAgbW9kdWxlRm5jOiAke3dyYXBwZWR9YFxuICAgICAgICArIGAgfWA7XG5cbiAgICBmdW5jdGlvbiBpbml0TW9kdWxlKHNlcmlhbGl6ZWQ6IFNlcmlhbGl6ZWRNb2R1bGUpIHtcbiAgICAgICAgZ2xvYmFsVGhpcy5yZWdpc3RlcmVkTW9kdWxlcyA9IGdsb2JhbFRoaXMucmVnaXN0ZXJlZE1vZHVsZXMgfHwge307XG4gICAgICAgIGdsb2JhbFRoaXMucmVnaXN0ZXJlZE1vZHVsZXNbc2VyaWFsaXplZC5pZF0gPSBzZXJpYWxpemVkO1xuICAgICAgICBpZiAoc2VyaWFsaXplZC5pc01vZHVsZU1haW4pIHtcbiAgICAgICAgICAgIGdsb2JhbFRoaXMucmVnaXN0ZXJlZE1vZHVsZXNbc2VyaWFsaXplZC5pc01vZHVsZU1haW5dID0gc2VyaWFsaXplZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBgOygke2luaXRNb2R1bGUudG9TdHJpbmcoKS5yZXBsYWNlQWxsKFwiXFxuXCIsIFwiIFwiKX0pKCR7b2JqV3JhcHBlZH0pO2A7XG59XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgICB2YXIgcmVnaXN0ZXJlZE1vZHVsZXM6IHsgW2lkOiBzdHJpbmddOiBTZXJpYWxpemVkTW9kdWxlOyB9IHwgdW5kZWZpbmVkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlcmlhbGl6ZWRNb2R1bGUge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgZmlsZW5hbWU6IHN0cmluZztcblxuICAgIC8vIFRoZSBtYWluIG1haW4gd2UgcmVwcmVzZW50LiBFeCwgXCIvYWkzL25vZGVfbW9kdWxlcy90eXBlc2FmZWNzc1wiXG4gICAgaXNNb2R1bGVNYWluPzogc3RyaW5nO1xuXG4gICAgLy8gUGF0aHMgd2hpY2ggdGhlIHJlcXVpcmUgZnVuY3Rpb24gc2VhcmNoZXMgZm9yIG5vbi1yZWxhdGl2ZSBpbXBvcnRzXG4gICAgcGF0aHM6IHN0cmluZ1tdO1xuXG4gICAgLy8gRmllbGRzIHRvIGJlIHNldCBvbiB0aGUgbW9kdWxlLCB3aGVuIGl0IGlzIGNyZWF0ZWRcbiAgICBtb2R1bGVGaWVsZHM6IHsgW2ZsYWc6IHN0cmluZ106IHVua25vd247IH07XG5cbiAgICBtb2R1bGVGbmM6IChleHBvcnRzOiBhbnksIHJlcXVpcmU6IGFueSwgbW9kdWxlOiBhbnksIF9fZmlsZW5hbWU6IHN0cmluZywgX19kaXJuYW1lOiBzdHJpbmcpID0+IHVua25vd247XG59Il19
|
|
101
|
+
/* _JS_SOURCE_HASH = "b3ee411148a95aa3c28256d9bbad02bf05f4c4c841569662d2cbc9515ffce7f1"; */
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule && mod.default) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true , configurable: true});
|
|
6
|
+
//exports.extractBundleHash = exports.bundle = void 0;
|
|
7
|
+
const js_sha256_1 = require("js-sha256");
|
|
8
|
+
const bundleRequire_1 = require("./bundleRequire");
|
|
9
|
+
const bundleWrapper_1 = require("./bundleWrapper");
|
|
10
|
+
const sourceMaps_1 = require("./sourceMaps");
|
|
11
|
+
const fs_1 = __importDefault(require("fs"));
|
|
12
|
+
async function bundle(config) {
|
|
13
|
+
const { modules, rootPath, entryPoints } = config;
|
|
14
|
+
// NOTE: We COULD use an "index source map", which contains other sourcemaps
|
|
15
|
+
// and gives offsets for them. However... tooling support will is better
|
|
16
|
+
// for regular sourcemaps, and it's more flexible.
|
|
17
|
+
let inProgressSourceMap = {
|
|
18
|
+
sources: [],
|
|
19
|
+
mappings: [],
|
|
20
|
+
};
|
|
21
|
+
let code = "";
|
|
22
|
+
let curLineCount = 0;
|
|
23
|
+
for (let module of modules) {
|
|
24
|
+
if (!module)
|
|
25
|
+
continue;
|
|
26
|
+
let newCode = (0, bundleWrapper_1.wrapModule)(module);
|
|
27
|
+
let { sourceMap, code: newCode2 } = (0, sourceMaps_1.removeSourceMap)(newCode);
|
|
28
|
+
newCode = newCode2;
|
|
29
|
+
if (sourceMap) {
|
|
30
|
+
let inProgress = (0, sourceMaps_1.getInProgressSourceMap)(sourceMap);
|
|
31
|
+
for (let mapping of inProgress.mappings) {
|
|
32
|
+
mapping.generatedLine += curLineCount;
|
|
33
|
+
}
|
|
34
|
+
(0, sourceMaps_1.addToInProgressSourceMap)(inProgressSourceMap, inProgress);
|
|
35
|
+
}
|
|
36
|
+
code += newCode + "\n";
|
|
37
|
+
curLineCount += (newCode.match(/\n/g) || []).length + 1;
|
|
38
|
+
}
|
|
39
|
+
code += "\n/* Inlined buffer implementation: */\n";
|
|
40
|
+
code += `\n;\n${fs_1.default.readFileSync(__dirname + "/buffer.js").toString()}\n;\n`;
|
|
41
|
+
code += `\n;globalThis.__BUNDLE_HASH__ = ${JSON.stringify((0, js_sha256_1.sha256)(code))};`;
|
|
42
|
+
let bundleConfig = {
|
|
43
|
+
rootPath,
|
|
44
|
+
};
|
|
45
|
+
code += `;(${bundleRequire_1.bundleRequire.toString()})(${JSON.stringify(bundleConfig)});`;
|
|
46
|
+
// Delay the initial requires, so our extension can boot and we can debug startup errors
|
|
47
|
+
code += "\n;setTimeout(() => {";
|
|
48
|
+
for (let entryPoint of entryPoints) {
|
|
49
|
+
code += `\n;globalThis.require(${JSON.stringify(entryPoint)});`;
|
|
50
|
+
}
|
|
51
|
+
code += "\n;});";
|
|
52
|
+
code += "\n" + (0, sourceMaps_1.encodeSourceMapLineComment)((0, sourceMaps_1.finalizeInProgressSourceMap)(inProgressSourceMap));
|
|
53
|
+
return {
|
|
54
|
+
bundle: code,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
exports.bundle = bundle;
|
|
58
|
+
function extractBundleHash(code) {
|
|
59
|
+
let match = code.match(/;globalThis.__BUNDLE_HASH__ = "([^"]+)";/);
|
|
60
|
+
if (!match)
|
|
61
|
+
return undefined;
|
|
62
|
+
return match[1];
|
|
63
|
+
}
|
|
64
|
+
exports.extractBundleHash = extractBundleHash;
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImJ1bmRsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEseUNBQW1DO0FBQ25DLG1EQUFxRTtBQUNyRSxtREFBNkM7QUFDN0MsNkNBQStLO0FBQy9LLDRDQUFvQjtBQUViLEtBQUssVUFBVSxNQUFNLENBQUMsTUFJNUI7SUFHRyxNQUFNLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFFbEQsNEVBQTRFO0lBQzVFLHlFQUF5RTtJQUN6RSxtREFBbUQ7SUFFbkQsSUFBSSxtQkFBbUIsR0FBd0I7UUFDM0MsT0FBTyxFQUFFLEVBQUU7UUFDWCxRQUFRLEVBQUUsRUFBRTtLQUNmLENBQUM7SUFFRixJQUFJLElBQUksR0FBRyxFQUFFLENBQUM7SUFDZCxJQUFJLFlBQVksR0FBRyxDQUFDLENBQUM7SUFDckIsS0FBSyxJQUFJLE1BQU0sSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsTUFBTTtZQUFFLFNBQVM7UUFFdEIsSUFBSSxPQUFPLEdBQUcsSUFBQSwwQkFBVSxFQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRWpDLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxHQUFHLElBQUEsNEJBQWUsRUFBQyxPQUFPLENBQUMsQ0FBQztRQUM3RCxPQUFPLEdBQUcsUUFBUSxDQUFDO1FBQ25CLElBQUksU0FBUyxFQUFFLENBQUM7WUFDWixJQUFJLFVBQVUsR0FBRyxJQUFBLG1DQUFzQixFQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ25ELEtBQUssSUFBSSxPQUFPLElBQUksVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUN0QyxPQUFPLENBQUMsYUFBYSxJQUFJLFlBQVksQ0FBQztZQUMxQyxDQUFDO1lBQ0QsSUFBQSxxQ0FBd0IsRUFBQyxtQkFBbUIsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUM5RCxDQUFDO1FBRUQsSUFBSSxJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDdkIsWUFBWSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFDRCxJQUFJLElBQUksMENBQTBDLENBQUM7SUFDbkQsSUFBSSxJQUFJLFFBQVEsWUFBRSxDQUFDLFlBQVksQ0FBQyxTQUFTLEdBQUcsWUFBWSxDQUFDLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQztJQUM1RSxJQUFJLElBQUksbUNBQW1DLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBQSxrQkFBTSxFQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUMzRSxJQUFJLFlBQVksR0FBd0I7UUFDcEMsUUFBUTtLQUNYLENBQUM7SUFDRixJQUFJLElBQUksS0FBSyw2QkFBYSxDQUFDLFFBQVEsRUFBRSxLQUFLLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQztJQUMzRSx3RkFBd0Y7SUFDeEYsSUFBSSxJQUFJLHVCQUF1QixDQUFDO0lBQ2hDLEtBQUssSUFBSSxVQUFVLElBQUksV0FBVyxFQUFFLENBQUM7UUFDakMsSUFBSSxJQUFJLHlCQUF5QixJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUM7SUFDcEUsQ0FBQztJQUNELElBQUksSUFBSSxRQUFRLENBQUM7SUFDakIsSUFBSSxJQUFJLElBQUksR0FBRyxJQUFBLHVDQUEwQixFQUFDLElBQUEsd0NBQTJCLEVBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDO0lBQzVGLE9BQU87UUFDSCxNQUFNLEVBQUUsSUFBSTtLQUNmLENBQUM7QUFDTixDQUFDO0FBdkRELHdCQXVEQztBQU1ELFNBQWdCLGlCQUFpQixDQUFDLElBQVk7SUFDMUMsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO0lBQ25FLElBQUksQ0FBQyxLQUFLO1FBQUUsT0FBTyxTQUFTLENBQUM7SUFDN0IsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDcEIsQ0FBQztBQUpELDhDQUlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgc2hhMjU2IH0gZnJvbSBcImpzLXNoYTI1NlwiO1xuaW1wb3J0IHsgYnVuZGxlUmVxdWlyZSwgQnVuZGxlUmVxdWlyZUNvbmZpZyB9IGZyb20gXCIuL2J1bmRsZVJlcXVpcmVcIjtcbmltcG9ydCB7IHdyYXBNb2R1bGUgfSBmcm9tIFwiLi9idW5kbGVXcmFwcGVyXCI7XG5pbXBvcnQgeyBhZGRUb0luUHJvZ3Jlc3NTb3VyY2VNYXAsIGVuY29kZVNvdXJjZU1hcExpbmVDb21tZW50LCBmaW5hbGl6ZUluUHJvZ3Jlc3NTb3VyY2VNYXAsIGdldEluUHJvZ3Jlc3NTb3VyY2VNYXAsIEluUHJvZ3Jlc3NTb3VyY2VNYXAsIHJlbW92ZVNvdXJjZU1hcCB9IGZyb20gXCIuL3NvdXJjZU1hcHNcIjtcbmltcG9ydCBmcyBmcm9tIFwiZnNcIjtcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGJ1bmRsZShjb25maWc6IHtcbiAgICBtb2R1bGVzOiAodHlwZW9mIHJlcXVpcmUuY2FjaGVbXCJcIl0pW107XG4gICAgcm9vdFBhdGg6IHN0cmluZztcbiAgICBlbnRyeVBvaW50czogc3RyaW5nW107XG59KTogUHJvbWlzZTx7XG4gICAgYnVuZGxlOiBzdHJpbmc7XG59PiB7XG4gICAgY29uc3QgeyBtb2R1bGVzLCByb290UGF0aCwgZW50cnlQb2ludHMgfSA9IGNvbmZpZztcblxuICAgIC8vIE5PVEU6IFdlIENPVUxEIHVzZSBhbiBcImluZGV4IHNvdXJjZSBtYXBcIiwgd2hpY2ggY29udGFpbnMgb3RoZXIgc291cmNlbWFwc1xuICAgIC8vICBhbmQgZ2l2ZXMgb2Zmc2V0cyBmb3IgdGhlbS4gSG93ZXZlci4uLiB0b29saW5nIHN1cHBvcnQgd2lsbCBpcyBiZXR0ZXJcbiAgICAvLyAgZm9yIHJlZ3VsYXIgc291cmNlbWFwcywgYW5kIGl0J3MgbW9yZSBmbGV4aWJsZS5cblxuICAgIGxldCBpblByb2dyZXNzU291cmNlTWFwOiBJblByb2dyZXNzU291cmNlTWFwID0ge1xuICAgICAgICBzb3VyY2VzOiBbXSxcbiAgICAgICAgbWFwcGluZ3M6IFtdLFxuICAgIH07XG5cbiAgICBsZXQgY29kZSA9IFwiXCI7XG4gICAgbGV0IGN1ckxpbmVDb3VudCA9IDA7XG4gICAgZm9yIChsZXQgbW9kdWxlIG9mIG1vZHVsZXMpIHtcbiAgICAgICAgaWYgKCFtb2R1bGUpIGNvbnRpbnVlO1xuXG4gICAgICAgIGxldCBuZXdDb2RlID0gd3JhcE1vZHVsZShtb2R1bGUpO1xuXG4gICAgICAgIGxldCB7IHNvdXJjZU1hcCwgY29kZTogbmV3Q29kZTIgfSA9IHJlbW92ZVNvdXJjZU1hcChuZXdDb2RlKTtcbiAgICAgICAgbmV3Q29kZSA9IG5ld0NvZGUyO1xuICAgICAgICBpZiAoc291cmNlTWFwKSB7XG4gICAgICAgICAgICBsZXQgaW5Qcm9ncmVzcyA9IGdldEluUHJvZ3Jlc3NTb3VyY2VNYXAoc291cmNlTWFwKTtcbiAgICAgICAgICAgIGZvciAobGV0IG1hcHBpbmcgb2YgaW5Qcm9ncmVzcy5tYXBwaW5ncykge1xuICAgICAgICAgICAgICAgIG1hcHBpbmcuZ2VuZXJhdGVkTGluZSArPSBjdXJMaW5lQ291bnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhZGRUb0luUHJvZ3Jlc3NTb3VyY2VNYXAoaW5Qcm9ncmVzc1NvdXJjZU1hcCwgaW5Qcm9ncmVzcyk7XG4gICAgICAgIH1cblxuICAgICAgICBjb2RlICs9IG5ld0NvZGUgKyBcIlxcblwiO1xuICAgICAgICBjdXJMaW5lQ291bnQgKz0gKG5ld0NvZGUubWF0Y2goL1xcbi9nKSB8fCBbXSkubGVuZ3RoICsgMTtcbiAgICB9XG4gICAgY29kZSArPSBcIlxcbi8qIElubGluZWQgYnVmZmVyIGltcGxlbWVudGF0aW9uOiAqL1xcblwiO1xuICAgIGNvZGUgKz0gYFxcbjtcXG4ke2ZzLnJlYWRGaWxlU3luYyhfX2Rpcm5hbWUgKyBcIi9idWZmZXIuanNcIikudG9TdHJpbmcoKX1cXG47XFxuYDtcbiAgICBjb2RlICs9IGBcXG47Z2xvYmFsVGhpcy5fX0JVTkRMRV9IQVNIX18gPSAke0pTT04uc3RyaW5naWZ5KHNoYTI1Nihjb2RlKSl9O2A7XG4gICAgbGV0IGJ1bmRsZUNvbmZpZzogQnVuZGxlUmVxdWlyZUNvbmZpZyA9IHtcbiAgICAgICAgcm9vdFBhdGgsXG4gICAgfTtcbiAgICBjb2RlICs9IGA7KCR7YnVuZGxlUmVxdWlyZS50b1N0cmluZygpfSkoJHtKU09OLnN0cmluZ2lmeShidW5kbGVDb25maWcpfSk7YDtcbiAgICAvLyBEZWxheSB0aGUgaW5pdGlhbCByZXF1aXJlcywgc28gb3VyIGV4dGVuc2lvbiBjYW4gYm9vdCBhbmQgd2UgY2FuIGRlYnVnIHN0YXJ0dXAgZXJyb3JzXG4gICAgY29kZSArPSBcIlxcbjtzZXRUaW1lb3V0KCgpID0+IHtcIjtcbiAgICBmb3IgKGxldCBlbnRyeVBvaW50IG9mIGVudHJ5UG9pbnRzKSB7XG4gICAgICAgIGNvZGUgKz0gYFxcbjtnbG9iYWxUaGlzLnJlcXVpcmUoJHtKU09OLnN0cmluZ2lmeShlbnRyeVBvaW50KX0pO2A7XG4gICAgfVxuICAgIGNvZGUgKz0gXCJcXG47fSk7XCI7XG4gICAgY29kZSArPSBcIlxcblwiICsgZW5jb2RlU291cmNlTWFwTGluZUNvbW1lbnQoZmluYWxpemVJblByb2dyZXNzU291cmNlTWFwKGluUHJvZ3Jlc3NTb3VyY2VNYXApKTtcbiAgICByZXR1cm4ge1xuICAgICAgICBidW5kbGU6IGNvZGUsXG4gICAgfTtcbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuICAgIHZhciBfX0JVTkRMRV9IQVNIX186IHN0cmluZyB8IHVuZGVmaW5lZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGV4dHJhY3RCdW5kbGVIYXNoKGNvZGU6IHN0cmluZykge1xuICAgIGxldCBtYXRjaCA9IGNvZGUubWF0Y2goLztnbG9iYWxUaGlzLl9fQlVORExFX0hBU0hfXyA9IFwiKFteXCJdKylcIjsvKTtcbiAgICBpZiAoIW1hdGNoKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIHJldHVybiBtYXRjaFsxXTtcbn0iXX0=
|
|
66
|
+
/* _JS_SOURCE_HASH = "195272562986c65a1aea7f7f87d4635e04cfe02662426c8cdca6558ed654ea0e"; */
|