@rspack/dev-server 0.0.0-1bce45e7c0-20221109113710

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/CHANGELOG.md ADDED
@@ -0,0 +1,30 @@
1
+ # rspack-dev-server
2
+
3
+ ## 0.0.0-1bce45e7c0-20221109113710
4
+
5
+ ### Patch Changes
6
+
7
+ - e6d0926a29: unify version
8
+ - Updated dependencies [e6d0926a29]
9
+ - @rspack/core@0.0.0-1bce45e7c0-20221109113710
10
+ - @rspack/dev-server@0.0.0-1bce45e7c0-20221109113710
11
+ - @rspack/dev-middleware@0.0.0-1bce45e7c0-20221109113710
12
+ - @rspack/dev-client@0.0.0-1bce45e7c0-20221109113710
13
+
14
+ ## 0.0.4
15
+
16
+ ### Patch Changes
17
+
18
+ - d466288: add process_assets hook
19
+
20
+ ## 0.0.3
21
+
22
+ ### Patch Changes
23
+
24
+ - 536f6f70: fix broken lib
25
+
26
+ ## 0.0.2
27
+
28
+ ### Patch Changes
29
+
30
+ - bd57e818: first release
package/README.md ADDED
@@ -0,0 +1 @@
1
+ # rspack-dev-server
@@ -0,0 +1,16 @@
1
+ import type { Dev, WebSocketServerOptions, RspackOptionsNormalized } from "@rspack/core";
2
+ import type { WatchOptions } from "chokidar";
3
+ export interface ResolvedDev {
4
+ port: number;
5
+ static: {
6
+ directory: string;
7
+ watch: false | WatchOptions;
8
+ };
9
+ devMiddleware: {};
10
+ hot: boolean;
11
+ open: boolean;
12
+ liveReload: boolean;
13
+ webSocketServer: false | WebSocketServerOptions;
14
+ }
15
+ export declare function resolveDevOptions(devConfig: Dev, compilerOptions: RspackOptionsNormalized): ResolvedDev;
16
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,GAAG,EACH,sBAAsB,EACtB,uBAAuB,EACvB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAI7C,MAAM,WAAW,WAAW;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE;QACP,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,KAAK,GAAG,YAAY,CAAC;KAC5B,CAAC;IACF,aAAa,EAAE,EAAE,CAAC;IAClB,GAAG,EAAE,OAAO,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,KAAK,GAAG,sBAAsB,CAAC;CAChD;AAED,wBAAgB,iBAAiB,CAChC,SAAS,EAAE,GAAG,EACd,eAAe,EAAE,uBAAuB,GACtC,WAAW,CA0Cb"}
package/dist/config.js ADDED
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.resolveDevOptions = void 0;
7
+ const node_path_1 = __importDefault(require("node:path"));
8
+ const core_1 = require("@rspack/core");
9
+ function resolveDevOptions(devConfig, compilerOptions) {
10
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
11
+ const port = Number((_a = devConfig.port) !== null && _a !== void 0 ? _a : 8080);
12
+ const open = true;
13
+ const hot = (_b = devConfig.hot) !== null && _b !== void 0 ? _b : true;
14
+ // --- static
15
+ const directory = (_d = (_c = devConfig.static) === null || _c === void 0 ? void 0 : _c.directory) !== null && _d !== void 0 ? _d : node_path_1.default.resolve(compilerOptions.context, "dist");
16
+ let watch = {};
17
+ if (((_e = devConfig.static) === null || _e === void 0 ? void 0 : _e.watch) === false) {
18
+ watch = false;
19
+ }
20
+ else if (((_f = devConfig.static) === null || _f === void 0 ? void 0 : _f.watch) === true) {
21
+ watch = (0, core_1.resolveWatchOption)({});
22
+ }
23
+ else if ((_g = devConfig.static) === null || _g === void 0 ? void 0 : _g.watch) {
24
+ watch = (_h = devConfig.static) === null || _h === void 0 ? void 0 : _h.watch;
25
+ }
26
+ // ---
27
+ const devMiddleware = (_j = devConfig.devMiddleware) !== null && _j !== void 0 ? _j : {};
28
+ const liveReload = (_k = devConfig.liveReload) !== null && _k !== void 0 ? _k : true;
29
+ let webSocketServer = {};
30
+ if (devConfig.webSocketServer === false) {
31
+ webSocketServer = false;
32
+ }
33
+ else if (devConfig.webSocketServer === true) {
34
+ webSocketServer = {};
35
+ }
36
+ else if (devConfig.webSocketServer) {
37
+ webSocketServer = devConfig.webSocketServer;
38
+ }
39
+ return {
40
+ port,
41
+ static: {
42
+ directory,
43
+ watch
44
+ },
45
+ devMiddleware,
46
+ open,
47
+ hot,
48
+ liveReload,
49
+ webSocketServer
50
+ };
51
+ }
52
+ exports.resolveDevOptions = resolveDevOptions;
53
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";;;;;;AAMA,0DAA6B;AAC7B,uCAAkD;AAelD,SAAgB,iBAAiB,CAChC,SAAc,EACd,eAAwC;;IAExC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAA,SAAS,CAAC,IAAI,mCAAI,IAAI,CAAC,CAAC;IAE5C,MAAM,IAAI,GAAG,IAAI,CAAC;IAClB,MAAM,GAAG,GAAG,MAAA,SAAS,CAAC,GAAG,mCAAI,IAAI,CAAC;IAClC,aAAa;IACb,MAAM,SAAS,GACd,MAAA,MAAA,SAAS,CAAC,MAAM,0CAAE,SAAS,mCAC3B,mBAAI,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/C,IAAI,KAAK,GAAyB,EAAE,CAAC;IACrC,IAAI,CAAA,MAAA,SAAS,CAAC,MAAM,0CAAE,KAAK,MAAK,KAAK,EAAE;QACtC,KAAK,GAAG,KAAK,CAAC;KACd;SAAM,IAAI,CAAA,MAAA,SAAS,CAAC,MAAM,0CAAE,KAAK,MAAK,IAAI,EAAE;QAC5C,KAAK,GAAG,IAAA,yBAAkB,EAAC,EAAE,CAAC,CAAC;KAC/B;SAAM,IAAI,MAAA,SAAS,CAAC,MAAM,0CAAE,KAAK,EAAE;QACnC,KAAK,GAAG,MAAA,SAAS,CAAC,MAAM,0CAAE,KAAK,CAAC;KAChC;IACD,MAAM;IACN,MAAM,aAAa,GAAG,MAAA,SAAS,CAAC,aAAa,mCAAI,EAAE,CAAC;IACpD,MAAM,UAAU,GAAG,MAAA,SAAS,CAAC,UAAU,mCAAI,IAAI,CAAC;IAEhD,IAAI,eAAe,GAAmC,EAAE,CAAC;IACzD,IAAI,SAAS,CAAC,eAAe,KAAK,KAAK,EAAE;QACxC,eAAe,GAAG,KAAK,CAAC;KACxB;SAAM,IAAI,SAAS,CAAC,eAAe,KAAK,IAAI,EAAE;QAC9C,eAAe,GAAG,EAAE,CAAC;KACrB;SAAM,IAAI,SAAS,CAAC,eAAe,EAAE;QACrC,eAAe,GAAG,SAAS,CAAC,eAAe,CAAC;KAC5C;IAED,OAAO;QACN,IAAI;QACJ,MAAM,EAAE;YACP,SAAS;YACT,KAAK;SACL;QACD,aAAa;QACb,IAAI;QACJ,GAAG;QACH,UAAU;QACV,eAAe;KACf,CAAC;AACH,CAAC;AA7CD,8CA6CC"}
@@ -0,0 +1,2 @@
1
+ export { RspackDevServer } from "./server";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RspackDevServer = void 0;
4
+ var server_1 = require("./server");
5
+ Object.defineProperty(exports, "RspackDevServer", { enumerable: true, get: function () { return server_1.RspackDevServer; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,mCAA2C;AAAlC,yGAAA,eAAe,OAAA"}
@@ -0,0 +1,7 @@
1
+ export interface Logger {
2
+ error(...args: any[]): void;
3
+ warn(...args: any[]): void;
4
+ info(...args: any[]): void;
5
+ }
6
+ export declare function createLogger(name: string): Logger;
7
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,MAAM;IACtB,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAC5B,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAC3B,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;CAC3B;AAUD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAejD"}
package/dist/logger.js ADDED
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createLogger = void 0;
4
+ const COLOR = {
5
+ RESET: "\x1b[0m",
6
+ //
7
+ RED: "\x1b[31m",
8
+ GREEN: "\x1b[32m",
9
+ YELLOW: "\x1b[33m"
10
+ };
11
+ function createLogger(name) {
12
+ if (!name.length) {
13
+ throw Error();
14
+ }
15
+ return {
16
+ error(...msgs) {
17
+ console.log("[", name, "]:", COLOR.RED, msgs, COLOR.RESET);
18
+ },
19
+ warn(...msgs) {
20
+ console.log("[", name, "]:", COLOR.YELLOW, msgs, COLOR.RESET);
21
+ },
22
+ info(...msgs) {
23
+ console.log("[", name, "]:", COLOR.GREEN, msgs, COLOR.RESET);
24
+ }
25
+ };
26
+ }
27
+ exports.createLogger = createLogger;
28
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":";;;AAMA,MAAM,KAAK,GAAG;IACb,KAAK,EAAE,SAAS;IAChB,EAAE;IACF,GAAG,EAAE,UAAU;IACf,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,UAAU;CAClB,CAAC;AAEF,SAAgB,YAAY,CAAC,IAAY;IACxC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;QACjB,MAAM,KAAK,EAAE,CAAC;KACd;IACD,OAAO;QACN,KAAK,CAAC,GAAG,IAAW;YACnB,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,CAAC,GAAG,IAAW;YAClB,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,GAAG,IAAW;YAClB,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9D,CAAC;KACD,CAAC;AACH,CAAC;AAfD,oCAeC"}
@@ -0,0 +1,9 @@
1
+ import type { RspackOptionsNormalized } from "@rspack/core";
2
+ interface Status {
3
+ isUnloading: boolean;
4
+ currentHash: string;
5
+ previousHash: string[];
6
+ }
7
+ export declare function reloadApp({ liveReload, hot }: RspackOptionsNormalized["devServer"], status: Status): void;
8
+ export {};
9
+ //# sourceMappingURL=reload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reload.d.ts","sourceRoot":"","sources":["../src/reload.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAE5D,UAAU,MAAM;IACf,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,wBAAgB,SAAS,CACxB,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,uBAAuB,CAAC,WAAW,CAAC,EACzD,MAAM,EAAE,MAAM,QAoBd"}
package/dist/reload.js ADDED
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.reloadApp = void 0;
4
+ function reloadApp({ liveReload, hot }, status) {
5
+ if (status.isUnloading) {
6
+ return;
7
+ }
8
+ function applyReload(rootWindow, intervalId) {
9
+ clearInterval(intervalId);
10
+ console.log("App update, Reloading...");
11
+ rootWindow.location.reload();
12
+ }
13
+ if (liveReload) {
14
+ let rootWindow = self;
15
+ const intervalId = self.setInterval(() => {
16
+ if (rootWindow.location.protocol !== "about:") {
17
+ applyReload(rootWindow, intervalId);
18
+ }
19
+ });
20
+ }
21
+ }
22
+ exports.reloadApp = reloadApp;
23
+ //# sourceMappingURL=reload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reload.js","sourceRoot":"","sources":["../src/reload.ts"],"names":[],"mappings":";;;AAQA,SAAgB,SAAS,CACxB,EAAE,UAAU,EAAE,GAAG,EAAwC,EACzD,MAAc;IAEd,IAAI,MAAM,CAAC,WAAW,EAAE;QACvB,OAAO;KACP;IAED,SAAS,WAAW,CAAC,UAAkB,EAAE,UAAkB;QAC1D,aAAa,CAAC,UAAU,CAAC,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QACxC,UAAU,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC9B,CAAC;IAED,IAAI,UAAU,EAAE;QACf,IAAI,UAAU,GAAG,IAAI,CAAC;QACtB,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE;YACxC,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,KAAK,QAAQ,EAAE;gBAC9C,WAAW,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;aACpC;QACF,CAAC,CAAC,CAAC;KACH;AACF,CAAC;AAtBD,8BAsBC"}
@@ -0,0 +1,53 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ import type { Compiler, Dev } from "@rspack/core";
4
+ import type { Logger } from "./logger";
5
+ import type { Socket } from "net";
6
+ import type { FSWatcher, WatchOptions } from "chokidar";
7
+ import type { WebSocketServer, ClientConnection } from "./ws";
8
+ import type { Application } from "express";
9
+ import type { Server } from "http";
10
+ import type { ResolvedDev } from "./config";
11
+ declare type Host = "local-ip" | "local-ipv4" | "local-ipv6" | string;
12
+ declare type Port = number | string | "auto";
13
+ export declare class RspackDevServer {
14
+ compiler: Compiler;
15
+ options: ResolvedDev;
16
+ logger: Logger;
17
+ staticWatchers: FSWatcher[];
18
+ sockets: Socket[];
19
+ app: Application;
20
+ server: Server;
21
+ private listeners;
22
+ private currentHash;
23
+ private middleware;
24
+ webSocketServer: WebSocketServer | undefined;
25
+ constructor(compiler: Compiler);
26
+ normalizeOptions(dev?: Dev): ResolvedDev;
27
+ addAdditionEntires(): void;
28
+ static isAbsoluteURL(URL: string): boolean;
29
+ static findIp(gateway: string): string | undefined;
30
+ static internalIP(family: "v6" | "v4"): Promise<string | undefined>;
31
+ static internalIPSync(family: "v6" | "v4"): Promise<string | undefined>;
32
+ static getHostname(hostname: Host): Promise<string>;
33
+ static getFreePort(port: Port, host: string): Promise<string | number>;
34
+ static findCacheDir(): string;
35
+ private getCompilerOptions;
36
+ sendMessage(clients: ClientConnection[], type: string, data?: any, params?: any): void;
37
+ watchFiles(watchPath: string | string[], watchOptions?: WatchOptions): void;
38
+ invalidate(callback?: () => void): void;
39
+ start(): Promise<void>;
40
+ startCallback(callback?: (err?: Error) => void): void;
41
+ stopCallback(callback?: (err?: Error) => void): void;
42
+ listen(port: Port, hostname: string, fn: (err?: Error) => void): void;
43
+ close(callback?: (err?: Error) => void): void;
44
+ stop(): Promise<void>;
45
+ private setupApp;
46
+ private setupWatchStaticFiles;
47
+ private setupDevMiddleware;
48
+ private createWebsocketServer;
49
+ private setupMiddlewares;
50
+ private createServer;
51
+ }
52
+ export {};
53
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/dist/server.js ADDED
@@ -0,0 +1,190 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.RspackDevServer = void 0;
7
+ const chokidar_1 = __importDefault(require("chokidar"));
8
+ const http_1 = __importDefault(require("http"));
9
+ const logger_1 = require("./logger");
10
+ const webpack_dev_server_1 = __importDefault(require("webpack-dev-server"));
11
+ const express_1 = __importDefault(require("express"));
12
+ const dev_middleware_1 = require("@rspack/dev-middleware");
13
+ const ws_1 = require("./ws");
14
+ const config_1 = require("./config");
15
+ // copy from webpack-dev-server
16
+ class RspackDevServer {
17
+ constructor(compiler) {
18
+ this.compiler = compiler;
19
+ this.logger = (0, logger_1.createLogger)("rspack-dev-server");
20
+ this.staticWatchers = [];
21
+ this.listeners = [];
22
+ this.sockets = [];
23
+ this.currentHash = "";
24
+ this.options = this.normalizeOptions(compiler.options.devServer);
25
+ this.addAdditionEntires();
26
+ }
27
+ normalizeOptions(dev = {}) {
28
+ return (0, config_1.resolveDevOptions)(dev, this.compiler.options);
29
+ }
30
+ addAdditionEntires() {
31
+ var _a;
32
+ const entries = [];
33
+ if (this.options.hot) {
34
+ const hotUpdateEntryPath = require.resolve("@rspack/dev-client/devServer");
35
+ entries.push(hotUpdateEntryPath);
36
+ if ((_a = this.compiler.options.builtins.react) === null || _a === void 0 ? void 0 : _a.refresh) {
37
+ const reactRefreshEntryPath = require.resolve("@rspack/dev-client/react-refresh");
38
+ entries.push(reactRefreshEntryPath);
39
+ }
40
+ }
41
+ const devClientEntryPath = require.resolve("@rspack/dev-client");
42
+ entries.push(devClientEntryPath);
43
+ for (const key in this.compiler.options.entry) {
44
+ this.compiler.options.entry[key].unshift(...entries);
45
+ }
46
+ }
47
+ static isAbsoluteURL(URL) {
48
+ return webpack_dev_server_1.default.isAbsoluteURL(URL);
49
+ }
50
+ static findIp(gateway) {
51
+ return webpack_dev_server_1.default.findIp(gateway);
52
+ }
53
+ static async internalIP(family) {
54
+ return webpack_dev_server_1.default.internalIP(family);
55
+ }
56
+ static async internalIPSync(family) {
57
+ return webpack_dev_server_1.default.internalIPSync(family);
58
+ }
59
+ static async getHostname(hostname) {
60
+ return webpack_dev_server_1.default.getHostname(hostname);
61
+ }
62
+ static async getFreePort(port, host) {
63
+ return webpack_dev_server_1.default.getFreePort(port, host);
64
+ }
65
+ static findCacheDir() {
66
+ // TODO: we need remove the `webpack-dev-server` tag in WebpackDevServer;
67
+ return "";
68
+ }
69
+ getCompilerOptions() {
70
+ return this.compiler.options;
71
+ }
72
+ sendMessage(clients, type, data, params) {
73
+ for (const client of clients) {
74
+ if (client.readyState === 1) {
75
+ client.send(JSON.stringify({ type, data, params }));
76
+ }
77
+ }
78
+ }
79
+ watchFiles(watchPath, watchOptions) {
80
+ const watcher = chokidar_1.default.watch(watchPath, watchOptions);
81
+ // disabling refreshing on changing the content
82
+ if (this.options.liveReload) {
83
+ // TODO: remove this after we had memory filesystem
84
+ if (this.options.hot) {
85
+ return;
86
+ }
87
+ watcher.on("change", item => {
88
+ if (this.webSocketServer) {
89
+ this.sendMessage(this.webSocketServer.clients, "static-changed", item);
90
+ }
91
+ });
92
+ }
93
+ this.staticWatchers.push(watcher);
94
+ }
95
+ invalidate(callback = () => { }) {
96
+ if (this.middleware) {
97
+ this.middleware.invalidate(callback);
98
+ }
99
+ }
100
+ async start() {
101
+ this.setupApp();
102
+ this.createServer();
103
+ this.setupWatchStaticFiles();
104
+ this.createWebsocketServer();
105
+ this.setupDevMiddleware();
106
+ this.setupMiddlewares();
107
+ await new Promise(resolve => this.server.listen({
108
+ port: this.options.port,
109
+ host: "localhost"
110
+ }, () => {
111
+ console.log(`begin server at http://localhost:${this.options.port}`);
112
+ resolve({});
113
+ }));
114
+ }
115
+ startCallback(callback) {
116
+ throw new Error("Method not implemented.");
117
+ }
118
+ stopCallback(callback) {
119
+ throw new Error("Method not implemented.");
120
+ }
121
+ listen(port, hostname, fn) {
122
+ throw new Error("Method not implemented.");
123
+ }
124
+ close(callback) {
125
+ throw new Error("Method not implemented.");
126
+ }
127
+ async stop() {
128
+ await Promise.all(this.staticWatchers.map(watcher => watcher.close()));
129
+ this.middleware = null;
130
+ this.staticWatchers = [];
131
+ if (this.server) {
132
+ this.server.close();
133
+ }
134
+ if (this.webSocketServer) {
135
+ await new Promise(resolve => {
136
+ this.webSocketServer;
137
+ });
138
+ }
139
+ }
140
+ setupApp() {
141
+ this.app = (0, express_1.default)();
142
+ }
143
+ setupWatchStaticFiles() {
144
+ if (this.options.static.watch === false) {
145
+ return;
146
+ }
147
+ this.watchFiles(this.options.static.directory, this.options.static.watch);
148
+ }
149
+ setupDevMiddleware() {
150
+ this.middleware = (0, dev_middleware_1.rdm)(this.compiler, this.options.devMiddleware, this.webSocketServer);
151
+ }
152
+ createWebsocketServer() {
153
+ if (this.options.webSocketServer !== false) {
154
+ this.webSocketServer = (0, ws_1.createWebsocketServer)(this);
155
+ }
156
+ }
157
+ setupMiddlewares() {
158
+ const middlewares = [];
159
+ middlewares.push({
160
+ name: "rdm",
161
+ middleware: this.middleware
162
+ });
163
+ // Todo Add options
164
+ const connectHistoryApiFallback = require("connect-history-api-fallback");
165
+ middlewares.push({
166
+ name: "[connect-history-api-fallback]",
167
+ middleware: connectHistoryApiFallback({
168
+ verbose: true,
169
+ logger: console.log.bind(console)
170
+ })
171
+ });
172
+ middlewares.push({
173
+ name: "express-static",
174
+ middleware: express_1.default.static(this.options.static.directory)
175
+ });
176
+ middlewares.forEach(m => {
177
+ if (m.path) {
178
+ this.app.use(m.path, m.middleware);
179
+ }
180
+ else {
181
+ this.app.use(m.middleware);
182
+ }
183
+ });
184
+ }
185
+ createServer() {
186
+ this.server = http_1.default.createServer(this.app);
187
+ }
188
+ }
189
+ exports.RspackDevServer = RspackDevServer;
190
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/dist/ws.d.ts ADDED
@@ -0,0 +1,13 @@
1
+ import type { RspackDevServer } from "./server";
2
+ import WebSocket from "ws";
3
+ export declare type ClientConnection = WebSocket & {
4
+ isAlive?: boolean;
5
+ };
6
+ export interface WebSocketServer {
7
+ heartbeatInterval: number;
8
+ implementation: WebSocket.Server<WebSocket.WebSocket>;
9
+ server: RspackDevServer;
10
+ clients: ClientConnection[];
11
+ }
12
+ export declare function createWebsocketServer(server: RspackDevServer): WebSocketServer;
13
+ //# sourceMappingURL=ws.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../src/ws.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,SAAS,MAAM,IAAI,CAAC;AAG3B,oBAAY,gBAAgB,GAAG,SAAS,GAAG;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEjE,MAAM,WAAW,eAAe;IAC/B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,EAAE,eAAe,CAAC;IACxB,OAAO,EAAE,gBAAgB,EAAE,CAAC;CAC5B;AAED,wBAAgB,qBAAqB,CACpC,MAAM,EAAE,eAAe,GACrB,eAAe,CAEjB"}
package/dist/ws.js ADDED
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createWebsocketServer = void 0;
7
+ const WebsocketServer_1 = __importDefault(require("webpack-dev-server/lib/servers/WebsocketServer"));
8
+ function createWebsocketServer(server) {
9
+ return new WebsocketServer_1.default(server);
10
+ }
11
+ exports.createWebsocketServer = createWebsocketServer;
12
+ //# sourceMappingURL=ws.js.map
package/dist/ws.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ws.js","sourceRoot":"","sources":["../src/ws.ts"],"names":[],"mappings":";;;;;;AAEA,qGAA6E;AAW7E,SAAgB,qBAAqB,CACpC,MAAuB;IAEvB,OAAO,IAAI,yBAAe,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC;AAJD,sDAIC"}
package/jest.config.js ADDED
@@ -0,0 +1,7 @@
1
+ /** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */
2
+ module.exports = {
3
+ preset: "ts-jest",
4
+ testEnvironment: "node",
5
+ testMatch: ["<rootDir>/tests/*.test.ts"],
6
+ cache: false
7
+ };
package/package.json ADDED
@@ -0,0 +1,35 @@
1
+ {
2
+ "name": "@rspack/dev-server",
3
+ "description": "",
4
+ "version": "0.0.0-1bce45e7c0-20221109113710",
5
+ "main": "./dist/index.js",
6
+ "types": "./dist/index.d.ts",
7
+ "author": "",
8
+ "license": "ISC",
9
+ "devDependencies": {
10
+ "tsm": "^2.2.2",
11
+ "@rspack/core": "0.0.0-1bce45e7c0-20221109113710",
12
+ "typescript": "^4.7.4",
13
+ "@types/node": "16.11.7",
14
+ "@types/express": "4.17.14",
15
+ "@types/connect-history-api-fallback": "1.3.5"
16
+ },
17
+ "dependencies": {
18
+ "express": "4.18.1",
19
+ "chokidar": "3.5.3",
20
+ "ws": "8.8.1",
21
+ "@rspack/dev-client": "0.0.0-1bce45e7c0-20221109113710",
22
+ "@rspack/dev-middleware": "0.0.0-1bce45e7c0-20221109113710",
23
+ "@rspack/dev-server": "0.0.0-1bce45e7c0-20221109113710",
24
+ "webpack-dev-server": "4.11.1",
25
+ "connect-history-api-fallback": "2.0.0"
26
+ },
27
+ "peerDependencies": {
28
+ "@rspack/core": "0.0.0-1bce45e7c0-20221109113710"
29
+ },
30
+ "scripts": {
31
+ "build": "rm -rf lib/ && tsc",
32
+ "dev": "tsc -w",
33
+ "test": "jest --verbose"
34
+ }
35
+ }
package/src/config.ts ADDED
@@ -0,0 +1,68 @@
1
+ import type {
2
+ Dev,
3
+ WebSocketServerOptions,
4
+ RspackOptionsNormalized
5
+ } from "@rspack/core";
6
+ import type { WatchOptions } from "chokidar";
7
+ import path from "node:path";
8
+ import { resolveWatchOption } from "@rspack/core";
9
+
10
+ export interface ResolvedDev {
11
+ port: number;
12
+ static: {
13
+ directory: string;
14
+ watch: false | WatchOptions;
15
+ };
16
+ devMiddleware: {};
17
+ hot: boolean;
18
+ open: boolean;
19
+ liveReload: boolean;
20
+ webSocketServer: false | WebSocketServerOptions;
21
+ }
22
+
23
+ export function resolveDevOptions(
24
+ devConfig: Dev,
25
+ compilerOptions: RspackOptionsNormalized
26
+ ): ResolvedDev {
27
+ const port = Number(devConfig.port ?? 8080);
28
+
29
+ const open = true;
30
+ const hot = devConfig.hot ?? true;
31
+ // --- static
32
+ const directory =
33
+ devConfig.static?.directory ??
34
+ path.resolve(compilerOptions.context, "dist");
35
+ let watch: false | WatchOptions = {};
36
+ if (devConfig.static?.watch === false) {
37
+ watch = false;
38
+ } else if (devConfig.static?.watch === true) {
39
+ watch = resolveWatchOption({});
40
+ } else if (devConfig.static?.watch) {
41
+ watch = devConfig.static?.watch;
42
+ }
43
+ // ---
44
+ const devMiddleware = devConfig.devMiddleware ?? {};
45
+ const liveReload = devConfig.liveReload ?? true;
46
+
47
+ let webSocketServer: false | WebSocketServerOptions = {};
48
+ if (devConfig.webSocketServer === false) {
49
+ webSocketServer = false;
50
+ } else if (devConfig.webSocketServer === true) {
51
+ webSocketServer = {};
52
+ } else if (devConfig.webSocketServer) {
53
+ webSocketServer = devConfig.webSocketServer;
54
+ }
55
+
56
+ return {
57
+ port,
58
+ static: {
59
+ directory,
60
+ watch
61
+ },
62
+ devMiddleware,
63
+ open,
64
+ hot,
65
+ liveReload,
66
+ webSocketServer
67
+ };
68
+ }
package/src/index.ts ADDED
@@ -0,0 +1 @@
1
+ export { RspackDevServer } from "./server";
package/src/logger.ts ADDED
@@ -0,0 +1,30 @@
1
+ export interface Logger {
2
+ error(...args: any[]): void;
3
+ warn(...args: any[]): void;
4
+ info(...args: any[]): void;
5
+ }
6
+
7
+ const COLOR = {
8
+ RESET: "\x1b[0m",
9
+ //
10
+ RED: "\x1b[31m",
11
+ GREEN: "\x1b[32m",
12
+ YELLOW: "\x1b[33m"
13
+ };
14
+
15
+ export function createLogger(name: string): Logger {
16
+ if (!name.length) {
17
+ throw Error();
18
+ }
19
+ return {
20
+ error(...msgs: any[]) {
21
+ console.log("[", name, "]:", COLOR.RED, msgs, COLOR.RESET);
22
+ },
23
+ warn(...msgs: any[]) {
24
+ console.log("[", name, "]:", COLOR.YELLOW, msgs, COLOR.RESET);
25
+ },
26
+ info(...msgs: any[]) {
27
+ console.log("[", name, "]:", COLOR.GREEN, msgs, COLOR.RESET);
28
+ }
29
+ };
30
+ }
package/src/reload.ts ADDED
@@ -0,0 +1,31 @@
1
+ import type { RspackOptionsNormalized } from "@rspack/core";
2
+
3
+ interface Status {
4
+ isUnloading: boolean;
5
+ currentHash: string;
6
+ previousHash: string[];
7
+ }
8
+
9
+ export function reloadApp(
10
+ { liveReload, hot }: RspackOptionsNormalized["devServer"],
11
+ status: Status
12
+ ) {
13
+ if (status.isUnloading) {
14
+ return;
15
+ }
16
+
17
+ function applyReload(rootWindow: Window, intervalId: number) {
18
+ clearInterval(intervalId);
19
+ console.log("App update, Reloading...");
20
+ rootWindow.location.reload();
21
+ }
22
+
23
+ if (liveReload) {
24
+ let rootWindow = self;
25
+ const intervalId = self.setInterval(() => {
26
+ if (rootWindow.location.protocol !== "about:") {
27
+ applyReload(rootWindow, intervalId);
28
+ }
29
+ });
30
+ }
31
+ }
package/src/server.ts ADDED
@@ -0,0 +1,273 @@
1
+ import type { Compiler, Dev, RspackOptionsNormalized } from "@rspack/core";
2
+ import type { Logger } from "./logger";
3
+ import type { Socket } from "net";
4
+ import type { FSWatcher, WatchOptions } from "chokidar";
5
+ import type { WebSocketServer, ClientConnection } from "./ws";
6
+ import type { RspackDevMiddleware } from "@rspack/dev-middleware";
7
+ import type {
8
+ Application,
9
+ RequestHandler as ExpressRequestHandler,
10
+ ErrorRequestHandler as ExpressErrorRequestHandler
11
+ } from "express";
12
+ import type { Server } from "http";
13
+ import type { ResolvedDev } from "./config";
14
+
15
+ import chokidar from "chokidar";
16
+ import http from "http";
17
+ import { createLogger } from "./logger";
18
+ import WebpackDevServer from "webpack-dev-server";
19
+ import express from "express";
20
+ import { rdm } from "@rspack/dev-middleware";
21
+ import { createWebsocketServer } from "./ws";
22
+ import { resolveDevOptions } from "./config";
23
+
24
+ interface Middleware {
25
+ name?: string;
26
+ path?: string;
27
+ middleware: ExpressErrorRequestHandler | ExpressRequestHandler;
28
+ }
29
+ interface Listener {
30
+ name: string | Symbol;
31
+ listener: (...args: any) => void;
32
+ }
33
+ type Host = "local-ip" | "local-ipv4" | "local-ipv6" | string;
34
+ type Port = number | string | "auto";
35
+
36
+ // copy from webpack-dev-server
37
+ export class RspackDevServer {
38
+ options: ResolvedDev;
39
+ logger: Logger;
40
+ staticWatchers: FSWatcher[];
41
+ sockets: Socket[];
42
+ app: Application;
43
+ server: Server;
44
+ private listeners: Listener[];
45
+ private currentHash: string;
46
+ private middleware: RspackDevMiddleware | undefined;
47
+ // TODO: now only support 'ws'
48
+ webSocketServer: WebSocketServer | undefined;
49
+
50
+ constructor(public compiler: Compiler) {
51
+ this.logger = createLogger("rspack-dev-server");
52
+ this.staticWatchers = [];
53
+ this.listeners = [];
54
+ this.sockets = [];
55
+ this.currentHash = "";
56
+ this.options = this.normalizeOptions(compiler.options.devServer);
57
+ this.addAdditionEntires();
58
+ }
59
+
60
+ normalizeOptions(dev: Dev = {}) {
61
+ return resolveDevOptions(dev, this.compiler.options);
62
+ }
63
+
64
+ addAdditionEntires() {
65
+ const entries: string[] = [];
66
+
67
+ if (this.options.hot) {
68
+ const hotUpdateEntryPath = require.resolve(
69
+ "@rspack/dev-client/devServer"
70
+ );
71
+
72
+ entries.push(hotUpdateEntryPath);
73
+
74
+ if (this.compiler.options.builtins.react?.refresh) {
75
+ const reactRefreshEntryPath = require.resolve(
76
+ "@rspack/dev-client/react-refresh"
77
+ );
78
+ entries.push(reactRefreshEntryPath);
79
+ }
80
+ }
81
+
82
+ const devClientEntryPath = require.resolve("@rspack/dev-client");
83
+ entries.push(devClientEntryPath);
84
+ for (const key in this.compiler.options.entry) {
85
+ this.compiler.options.entry[key].unshift(...entries);
86
+ }
87
+ }
88
+
89
+ static isAbsoluteURL(URL: string): boolean {
90
+ return WebpackDevServer.isAbsoluteURL(URL);
91
+ }
92
+
93
+ static findIp(gateway: string): string | undefined {
94
+ return WebpackDevServer.findIp(gateway);
95
+ }
96
+
97
+ static async internalIP(family: "v6" | "v4"): Promise<string | undefined> {
98
+ return WebpackDevServer.internalIP(family);
99
+ }
100
+
101
+ static async internalIPSync(
102
+ family: "v6" | "v4"
103
+ ): Promise<string | undefined> {
104
+ return WebpackDevServer.internalIPSync(family);
105
+ }
106
+
107
+ static async getHostname(hostname: Host): Promise<string> {
108
+ return WebpackDevServer.getHostname(hostname);
109
+ }
110
+
111
+ static async getFreePort(port: Port, host: string): Promise<string | number> {
112
+ return WebpackDevServer.getFreePort(port, host);
113
+ }
114
+
115
+ static findCacheDir(): string {
116
+ // TODO: we need remove the `webpack-dev-server` tag in WebpackDevServer;
117
+ return "";
118
+ }
119
+
120
+ private getCompilerOptions(): RspackOptionsNormalized {
121
+ return this.compiler.options;
122
+ }
123
+
124
+ sendMessage(
125
+ clients: ClientConnection[],
126
+ type: string,
127
+ data?: any,
128
+ params?: any
129
+ ) {
130
+ for (const client of clients) {
131
+ if (client.readyState === 1) {
132
+ client.send(JSON.stringify({ type, data, params }));
133
+ }
134
+ }
135
+ }
136
+
137
+ watchFiles(watchPath: string | string[], watchOptions?: WatchOptions): void {
138
+ const watcher = chokidar.watch(watchPath, watchOptions);
139
+
140
+ // disabling refreshing on changing the content
141
+ if (this.options.liveReload) {
142
+ // TODO: remove this after we had memory filesystem
143
+ if (this.options.hot) {
144
+ return;
145
+ }
146
+
147
+ watcher.on("change", item => {
148
+ if (this.webSocketServer) {
149
+ this.sendMessage(
150
+ this.webSocketServer.clients,
151
+ "static-changed",
152
+ item
153
+ );
154
+ }
155
+ });
156
+ }
157
+
158
+ this.staticWatchers.push(watcher);
159
+ }
160
+
161
+ invalidate(callback = () => {}): void {
162
+ if (this.middleware) {
163
+ this.middleware.invalidate(callback);
164
+ }
165
+ }
166
+
167
+ async start(): Promise<void> {
168
+ this.setupApp();
169
+ this.createServer();
170
+ this.setupWatchStaticFiles();
171
+ this.createWebsocketServer();
172
+ this.setupDevMiddleware();
173
+ this.setupMiddlewares();
174
+ await new Promise(resolve =>
175
+ this.server.listen(
176
+ {
177
+ port: this.options.port,
178
+ host: "localhost"
179
+ },
180
+ () => {
181
+ console.log(`begin server at http://localhost:${this.options.port}`);
182
+ resolve({});
183
+ }
184
+ )
185
+ );
186
+ }
187
+
188
+ startCallback(callback?: (err?: Error) => void): void {
189
+ throw new Error("Method not implemented.");
190
+ }
191
+ stopCallback(callback?: (err?: Error) => void): void {
192
+ throw new Error("Method not implemented.");
193
+ }
194
+ listen(port: Port, hostname: string, fn: (err?: Error) => void): void {
195
+ throw new Error("Method not implemented.");
196
+ }
197
+ close(callback?: (err?: Error) => void): void {
198
+ throw new Error("Method not implemented.");
199
+ }
200
+
201
+ async stop(): Promise<void> {
202
+ await Promise.all(this.staticWatchers.map(watcher => watcher.close()));
203
+ this.middleware = null;
204
+ this.staticWatchers = [];
205
+ if (this.server) {
206
+ this.server.close();
207
+ }
208
+ if (this.webSocketServer) {
209
+ await new Promise(resolve => {
210
+ this.webSocketServer;
211
+ });
212
+ }
213
+ }
214
+
215
+ private setupApp() {
216
+ this.app = express();
217
+ }
218
+
219
+ private setupWatchStaticFiles() {
220
+ if (this.options.static.watch === false) {
221
+ return;
222
+ }
223
+ this.watchFiles(this.options.static.directory, this.options.static.watch);
224
+ }
225
+
226
+ private setupDevMiddleware() {
227
+ this.middleware = rdm(
228
+ this.compiler,
229
+ this.options.devMiddleware,
230
+ this.webSocketServer
231
+ );
232
+ }
233
+
234
+ private createWebsocketServer() {
235
+ if (this.options.webSocketServer !== false) {
236
+ this.webSocketServer = createWebsocketServer(this);
237
+ }
238
+ }
239
+
240
+ private setupMiddlewares() {
241
+ const middlewares: Middleware[] = [];
242
+ middlewares.push({
243
+ name: "rdm",
244
+ middleware: this.middleware
245
+ });
246
+
247
+ // Todo Add options
248
+ const connectHistoryApiFallback = require("connect-history-api-fallback");
249
+ middlewares.push({
250
+ name: "[connect-history-api-fallback]",
251
+ middleware: connectHistoryApiFallback({
252
+ verbose: true,
253
+ logger: console.log.bind(console)
254
+ })
255
+ });
256
+ middlewares.push({
257
+ name: "express-static",
258
+ middleware: express.static(this.options.static.directory)
259
+ });
260
+
261
+ middlewares.forEach(m => {
262
+ if (m.path) {
263
+ this.app.use(m.path, m.middleware);
264
+ } else {
265
+ this.app.use(m.middleware);
266
+ }
267
+ });
268
+ }
269
+
270
+ private createServer() {
271
+ this.server = http.createServer(this.app);
272
+ }
273
+ }
package/src/ws.ts ADDED
@@ -0,0 +1,18 @@
1
+ import type { RspackDevServer } from "./server";
2
+ import WebSocket from "ws";
3
+ import WebpackWsServer from "webpack-dev-server/lib/servers/WebsocketServer";
4
+
5
+ export type ClientConnection = WebSocket & { isAlive?: boolean };
6
+
7
+ export interface WebSocketServer {
8
+ heartbeatInterval: number;
9
+ implementation: WebSocket.Server<WebSocket.WebSocket>;
10
+ server: RspackDevServer;
11
+ clients: ClientConnection[];
12
+ }
13
+
14
+ export function createWebsocketServer(
15
+ server: RspackDevServer
16
+ ): WebSocketServer {
17
+ return new WebpackWsServer(server);
18
+ }
@@ -0,0 +1,52 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`normalize options snapshot additional entires should added 1`] = `
4
+ {
5
+ "main": [
6
+ "<prefix>/rspack-dev-client/dist/devServer.js",
7
+ "<prefix>/rspack-dev-client/dist/index.js",
8
+ "<prefix>/something",
9
+ ],
10
+ }
11
+ `;
12
+
13
+ exports[`normalize options snapshot no options 1`] = `
14
+ {
15
+ "devMiddleware": {},
16
+ "hot": true,
17
+ "liveReload": true,
18
+ "open": true,
19
+ "port": 8080,
20
+ "static": {
21
+ "directory": "<PROJECT_ROOT>/dist",
22
+ "watch": {},
23
+ },
24
+ "webSocketServer": {},
25
+ }
26
+ `;
27
+
28
+ exports[`normalize options snapshot port string 1`] = `
29
+ {
30
+ "devMiddleware": {},
31
+ "hot": true,
32
+ "liveReload": true,
33
+ "open": true,
34
+ "port": 9000,
35
+ "static": {
36
+ "directory": "<PROJECT_ROOT>/dist",
37
+ "watch": {},
38
+ },
39
+ "webSocketServer": {},
40
+ }
41
+ `;
42
+
43
+ exports[`normalize options snapshot react-refresh added when react/refresh enabled 1`] = `
44
+ {
45
+ "main": [
46
+ "<prefix>/rspack-dev-client/dist/devServer.js",
47
+ "<prefix>/rspack-dev-client/dist/reactRefresh.js",
48
+ "<prefix>/rspack-dev-client/dist/index.js",
49
+ "<prefix>/something",
50
+ ],
51
+ }
52
+ `;
@@ -0,0 +1,60 @@
1
+ import type { RspackOptions } from "@rspack/core";
2
+ import { RspackDevServer } from "@rspack/dev-server";
3
+ import { createCompiler } from "@rspack/core";
4
+ import serializer from "jest-serializer-path";
5
+ import os from "os";
6
+ expect.addSnapshotSerializer(serializer);
7
+
8
+ describe("normalize options snapshot", () => {
9
+ it("no options", () => {
10
+ match({});
11
+ });
12
+
13
+ it("port string", () => {
14
+ match({
15
+ devServer: {
16
+ port: "9000"
17
+ }
18
+ });
19
+ });
20
+
21
+ it("additional entires should added", () => {
22
+ matchAdditionEntries({
23
+ entry: ["something"]
24
+ });
25
+ });
26
+
27
+ it("react-refresh added when react/refresh enabled", () => {
28
+ matchAdditionEntries({
29
+ entry: ["something"],
30
+ builtins: {
31
+ react: {
32
+ refresh: true
33
+ }
34
+ }
35
+ });
36
+ });
37
+ });
38
+
39
+ function match(config: RspackOptions) {
40
+ const compiler = createCompiler(config);
41
+ const server = new RspackDevServer(compiler);
42
+ expect(server.options).toMatchSnapshot();
43
+ }
44
+
45
+ function matchAdditionEntries(config: RspackOptions) {
46
+ const compiler = createCompiler(config);
47
+ const server = new RspackDevServer(compiler);
48
+ const entires = Object.entries(compiler.options.entry);
49
+ // some hack for snapshot
50
+ const value = Object.fromEntries(
51
+ entires.map(([key, item]) => {
52
+ const replaced = item.map(entry => {
53
+ const array = entry.replace(/\\/g, "/").split("/");
54
+ return "<prefix>" + "/" + array.slice(-3).join("/");
55
+ });
56
+ return [key, replaced];
57
+ })
58
+ );
59
+ expect(value).toMatchSnapshot();
60
+ }
package/tsconfig.json ADDED
@@ -0,0 +1,15 @@
1
+ {
2
+ "extends": "../../tsconfig.base.json",
3
+ "include": [
4
+ "src"
5
+ ],
6
+ "compilerOptions": {
7
+ "outDir": "dist",
8
+ "rootDir": "src"
9
+ },
10
+ "references": [
11
+ {
12
+ "path": "../rspack-dev-middleware"
13
+ }
14
+ ]
15
+ }
@@ -0,0 +1 @@
1
+ {"program":{"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../node_modules/typescript/lib/lib.scripthost.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.full.d.ts","../../node_modules/tapable/tapable.d.ts","../../crates/node_binding/binding.d.ts","../rspack/dist/logging/logger.d.ts","../rspack/dist/config/watch.d.ts","../rspack/dist/config/context.d.ts","../../node_modules/@types/node/assert.d.ts","../../node_modules/@types/node/assert/strict.d.ts","../../node_modules/@types/node/globals.d.ts","../../node_modules/@types/node/async_hooks.d.ts","../../node_modules/@types/node/buffer.d.ts","../../node_modules/@types/node/child_process.d.ts","../../node_modules/@types/node/cluster.d.ts","../../node_modules/@types/node/console.d.ts","../../node_modules/@types/node/constants.d.ts","../../node_modules/@types/node/crypto.d.ts","../../node_modules/@types/node/dgram.d.ts","../../node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/@types/node/dns.d.ts","../../node_modules/@types/node/dns/promises.d.ts","../../node_modules/@types/node/domain.d.ts","../../node_modules/@types/node/events.d.ts","../../node_modules/@types/node/fs.d.ts","../../node_modules/@types/node/fs/promises.d.ts","../../node_modules/@types/node/http.d.ts","../../node_modules/@types/node/http2.d.ts","../../node_modules/@types/node/https.d.ts","../../node_modules/@types/node/inspector.d.ts","../../node_modules/@types/node/module.d.ts","../../node_modules/@types/node/net.d.ts","../../node_modules/@types/node/os.d.ts","../../node_modules/@types/node/path.d.ts","../../node_modules/@types/node/perf_hooks.d.ts","../../node_modules/@types/node/process.d.ts","../../node_modules/@types/node/punycode.d.ts","../../node_modules/@types/node/querystring.d.ts","../../node_modules/@types/node/readline.d.ts","../../node_modules/@types/node/readline/promises.d.ts","../../node_modules/@types/node/repl.d.ts","../../node_modules/@types/node/stream.d.ts","../../node_modules/@types/node/stream/promises.d.ts","../../node_modules/@types/node/stream/consumers.d.ts","../../node_modules/@types/node/stream/web.d.ts","../../node_modules/@types/node/string_decoder.d.ts","../../node_modules/@types/node/test.d.ts","../../node_modules/@types/node/timers.d.ts","../../node_modules/@types/node/timers/promises.d.ts","../../node_modules/@types/node/tls.d.ts","../../node_modules/@types/node/trace_events.d.ts","../../node_modules/@types/node/tty.d.ts","../../node_modules/@types/node/url.d.ts","../../node_modules/@types/node/util.d.ts","../../node_modules/@types/node/v8.d.ts","../../node_modules/@types/node/vm.d.ts","../../node_modules/@types/node/wasi.d.ts","../../node_modules/@types/node/worker_threads.d.ts","../../node_modules/@types/node/zlib.d.ts","../../node_modules/@types/node/globals.global.d.ts","../../node_modules/@types/node/index.d.ts","../../node_modules/anymatch/index.d.ts","../../node_modules/chokidar/types/index.d.ts","../rspack/dist/config/devserver.d.ts","../rspack/dist/config/entry.d.ts","../rspack/dist/config/external.d.ts","../rspack/dist/config/mode.d.ts","../rspack/dist/config/devtool.d.ts","../rspack/dist/config/module.d.ts","../rspack/dist/config/plugin.d.ts","../rspack/dist/config/target.d.ts","../rspack/dist/config/output.d.ts","../rspack/dist/config/resolve.d.ts","../rspack/dist/config/builtins.d.ts","../rspack/dist/config/rspackoptions.d.ts","../rspack/dist/config/stats.d.ts","../rspack/dist/config/index.d.ts","../rspack/dist/stats.d.ts","../../node_modules/@types/webpack-sources/node_modules/source-map/source-map.d.ts","../../node_modules/@types/webpack-sources/lib/source.d.ts","../../node_modules/@types/webpack-sources/lib/compatsource.d.ts","../../node_modules/@types/source-list-map/index.d.ts","../../node_modules/@types/webpack-sources/lib/concatsource.d.ts","../../node_modules/@types/webpack-sources/lib/originalsource.d.ts","../../node_modules/@types/webpack-sources/lib/prefixsource.d.ts","../../node_modules/@types/webpack-sources/lib/rawsource.d.ts","../../node_modules/@types/webpack-sources/lib/replacesource.d.ts","../../node_modules/@types/webpack-sources/lib/sizeonlysource.d.ts","../../node_modules/@types/webpack-sources/lib/sourcemapsource.d.ts","../../node_modules/@types/webpack-sources/lib/index.d.ts","../../node_modules/@types/webpack-sources/lib/cachedsource.d.ts","../../node_modules/@types/webpack-sources/index.d.ts","../rspack/dist/compilation.d.ts","../rspack/dist/compiler.d.ts","../rspack/dist/rspack.d.ts","../rspack/dist/index.d.ts","./src/config.ts","./src/logger.ts","../../node_modules/@types/ws/index.d.ts","./src/ws.ts","../../node_modules/@types/range-parser/index.d.ts","../../node_modules/@types/qs/index.d.ts","../../node_modules/@types/express-serve-static-core/index.d.ts","../../node_modules/@types/mime/mime.d.ts","../../node_modules/@types/mime/index.d.ts","../../node_modules/@types/serve-static/index.d.ts","../../node_modules/@types/connect/index.d.ts","../../node_modules/@types/body-parser/index.d.ts","../../node_modules/@types/express/index.d.ts","../rspack-dev-middleware/dist/index.d.ts","../../node_modules/webpack-dev-server/types/bin/process-arguments.d.ts","../../node_modules/@types/estree/index.d.ts","../../node_modules/@types/json-schema/index.d.ts","../../node_modules/schema-utils/declarations/validationerror.d.ts","../../node_modules/schema-utils/node_modules/ajv/lib/ajv.d.ts","../../node_modules/schema-utils/declarations/validate.d.ts","../../node_modules/schema-utils/declarations/index.d.ts","../../node_modules/webpack/types.d.ts","../../node_modules/webpack-dev-middleware/node_modules/schema-utils/declarations/validationerror.d.ts","../../node_modules/uri-js/dist/es5/uri.all.d.ts","../../node_modules/ajv/dist/compile/codegen/code.d.ts","../../node_modules/ajv/dist/compile/codegen/scope.d.ts","../../node_modules/ajv/dist/compile/codegen/index.d.ts","../../node_modules/ajv/dist/compile/rules.d.ts","../../node_modules/ajv/dist/compile/util.d.ts","../../node_modules/ajv/dist/compile/validate/subschema.d.ts","../../node_modules/ajv/dist/compile/errors.d.ts","../../node_modules/ajv/dist/compile/validate/index.d.ts","../../node_modules/ajv/dist/compile/validate/datatype.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/additionalitems.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/items2020.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/contains.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/dependencies.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/propertynames.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/additionalproperties.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/not.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/anyof.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/oneof.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/if.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/index.d.ts","../../node_modules/ajv/dist/vocabularies/validation/limitnumber.d.ts","../../node_modules/ajv/dist/vocabularies/validation/multipleof.d.ts","../../node_modules/ajv/dist/vocabularies/validation/pattern.d.ts","../../node_modules/ajv/dist/vocabularies/validation/required.d.ts","../../node_modules/ajv/dist/vocabularies/validation/uniqueitems.d.ts","../../node_modules/ajv/dist/vocabularies/validation/const.d.ts","../../node_modules/ajv/dist/vocabularies/validation/enum.d.ts","../../node_modules/ajv/dist/vocabularies/validation/index.d.ts","../../node_modules/ajv/dist/vocabularies/format/format.d.ts","../../node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedproperties.d.ts","../../node_modules/ajv/dist/vocabularies/unevaluated/unevaluateditems.d.ts","../../node_modules/ajv/dist/vocabularies/validation/dependentrequired.d.ts","../../node_modules/ajv/dist/vocabularies/discriminator/types.d.ts","../../node_modules/ajv/dist/vocabularies/discriminator/index.d.ts","../../node_modules/ajv/dist/vocabularies/errors.d.ts","../../node_modules/ajv/dist/types/json-schema.d.ts","../../node_modules/ajv/dist/types/jtd-schema.d.ts","../../node_modules/ajv/dist/runtime/validation_error.d.ts","../../node_modules/ajv/dist/compile/ref_error.d.ts","../../node_modules/ajv/dist/core.d.ts","../../node_modules/ajv/dist/compile/resolve.d.ts","../../node_modules/ajv/dist/compile/index.d.ts","../../node_modules/ajv/dist/types/index.d.ts","../../node_modules/ajv/dist/ajv.d.ts","../../node_modules/webpack-dev-middleware/node_modules/schema-utils/declarations/validate.d.ts","../../node_modules/webpack-dev-middleware/types/index.d.ts","../../node_modules/@types/connect-history-api-fallback/index.d.ts","../../node_modules/bonjour-service/dist/lib/keyvalue.d.ts","../../node_modules/bonjour-service/dist/lib/service.d.ts","../../node_modules/bonjour-service/dist/lib/browser.d.ts","../../node_modules/bonjour-service/dist/index.d.ts","../../node_modules/@types/sockjs/index.d.ts","../../node_modules/webpack-dev-server/node_modules/schema-utils/declarations/validate.d.ts","../../node_modules/@types/http-proxy/index.d.ts","../../node_modules/http-proxy-middleware/dist/types.d.ts","../../node_modules/http-proxy-middleware/dist/handlers/response-interceptor.d.ts","../../node_modules/http-proxy-middleware/dist/handlers/fix-request-body.d.ts","../../node_modules/http-proxy-middleware/dist/handlers/public.d.ts","../../node_modules/http-proxy-middleware/dist/handlers/index.d.ts","../../node_modules/http-proxy-middleware/dist/index.d.ts","../../node_modules/@types/serve-index/index.d.ts","../../node_modules/webpack-dev-server/node_modules/ipaddr.js/lib/ipaddr.js.d.ts","../../node_modules/open/index.d.ts","../../node_modules/webpack-dev-server/types/lib/server.d.ts","./src/server.ts","./src/index.ts","./src/reload.ts","../../node_modules/@babel/types/lib/index.d.ts","../../node_modules/@types/babel__generator/index.d.ts","../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../node_modules/@types/babel__template/index.d.ts","../../node_modules/@types/babel__traverse/index.d.ts","../../node_modules/@types/babel__core/index.d.ts","../../node_modules/@types/bonjour/index.d.ts","../../node_modules/@types/d3-timer/index.d.ts","../../node_modules/@types/eslint/helpers.d.ts","../../node_modules/@types/eslint/index.d.ts","../../node_modules/@types/eslint-scope/index.d.ts","../../node_modules/@types/geojson/index.d.ts","../../node_modules/@types/graceful-fs/index.d.ts","../../node_modules/@types/react/global.d.ts","../../node_modules/csstype/index.d.ts","../../node_modules/@types/prop-types/index.d.ts","../../node_modules/@types/scheduler/tracing.d.ts","../../node_modules/@types/react/index.d.ts","../../node_modules/@types/hoist-non-react-statics/index.d.ts","../../node_modules/ci-info/index.d.ts","../../node_modules/@types/is-ci/index.d.ts","../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../node_modules/@types/istanbul-lib-report/index.d.ts","../../node_modules/@types/istanbul-reports/index.d.ts","../../node_modules/@jest/expect-utils/build/index.d.ts","../../node_modules/chalk/index.d.ts","../../node_modules/@sinclair/typebox/typebox.d.ts","../../node_modules/@jest/schemas/build/index.d.ts","../../node_modules/pretty-format/build/index.d.ts","../../node_modules/jest-diff/build/index.d.ts","../../node_modules/jest-matcher-utils/build/index.d.ts","../../node_modules/expect/build/index.d.ts","../../node_modules/@types/jest/index.d.ts","../../node_modules/@types/less/index.d.ts","../../node_modules/@types/minimist/index.d.ts","../../node_modules/@types/normalize-package-data/index.d.ts","../../node_modules/@types/parse-json/index.d.ts","../../node_modules/@types/prettier/index.d.ts","../../node_modules/redux/index.d.ts","../../node_modules/@types/react-redux/index.d.ts","../../node_modules/@types/retry/index.d.ts","../../node_modules/@types/scheduler/index.d.ts","../../node_modules/@types/semver/index.d.ts","../../node_modules/@types/sinonjs__fake-timers/index.d.ts","../../node_modules/@types/sinon/index.d.ts","../../node_modules/@types/stack-utils/index.d.ts","../../node_modules/@types/webpack-bundle-analyzer/node_modules/webpack/types.d.ts","../../node_modules/@types/webpack-bundle-analyzer/index.d.ts","../../node_modules/@types/yargs-parser/index.d.ts","../../node_modules/@types/yargs/index.d.ts","./node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"f20c05dbfe50a208301d2a1da37b9931bce0466eb5a1f4fe240971b4ecc82b67","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9",{"version":"9b087de7268e4efc5f215347a62656663933d63c0b1d7b624913240367b999ea","affectsGlobalScope":true},{"version":"3260e3386d9535b804205bdddb5618a9a27735bd22927f48ad54363abcd23d45","affectsGlobalScope":true},{"version":"7fac8cb5fc820bc2a59ae11ef1c5b38d3832c6d0dfaec5acdb5569137d09a481","affectsGlobalScope":true},{"version":"097a57355ded99c68e6df1b738990448e0bf170e606707df5a7c0481ff2427cd","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"55f400eec64d17e888e278f4def2f254b41b89515d3b88ad75d5e05f019daddd","affectsGlobalScope":true},{"version":"181f1784c6c10b751631b24ce60c7f78b20665db4550b335be179217bacc0d5f","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"775d9c9fd150d5de79e0450f35bc8b8f94ae64e3eb5da12725ff2a649dccc777","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true},"32b8443be144970b813b9dd72dcdba2059fbdfdae4d3a50c4d8a158ed6057bbe","cd74c8275483d3fe0d07a9b4bba28845a8a611f0aa399e961dbd40e5d46dd9ad","e41a6d5608993526471148969f5ae7a4f0a885a9ec5bd1aaa7577ee0a59bc25b","aa85a7a89429b971305b0c77d3a2224564f86b82d1912b020ccb0d0d28d85aae","53f49f01e18acb429cffdfe96e6477e5091cd42bb92a74c25181dde62caa2447","163cb20ecab593f7a10da91d1ff8f031e1ec1d9a2c8997cf5d53521304c99a71","9122ed7070e054b73ebab37c2373a196def2d90e7d1a9a7fcd9d46b0e51fae78","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"77f0b5c6a193a699c9f7d7fb0578e64e562d271afa740783665d2a827104a873","affectsGlobalScope":true},"21a167fec8f933752fb8157f06d28fab6817af3ad9b0bdb1908a10762391eab9",{"version":"002d6d5f044365b3fbfba0ba9be3bb57cac09b81547c8df4b0795755d2081d90","affectsGlobalScope":true},"0c0cee62cb619aed81133b904f644515ba3064487002a7da83fd8aa07b1b4abd","5a94487653355b56018122d92392beb2e5f4a6c63ba5cef83bbe1c99775ef713",{"version":"d5135ad93b33adcce80b18f8065087934cdc1730d63db58562edcf017e1aad9b","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","55c428f339f80f4ede27cfed15aa1124cd583b43ac3feaf59da19c492c9cd6be","bb9c4ffa5e6290c6980b63c815cdd1625876dadb2efaf77edbe82984be93e55e","75ecef44f126e2ae018b4abbd85b6e8a2e2ba1638ebec56cc64274643ce3567b","f30bb836526d930a74593f7b0f5c1c46d10856415a8f69e5e2fc3db80371e362","14b5aa23c5d0ae1907bc696ac7b6915d88f7d85799cc0dc2dcf98fbce2c5a67c","5c439dafdc09abe4d6c260a96b822fa0ba5be7203c71a63ab1f1423cd9e838ea",{"version":"bae4ea23beb8397755b935cb84d3cdc6cdb0b1b4a329b90de9fc6c8774d71994","affectsGlobalScope":true},"cec36af22f514322f870e81d30675c78df82ae8bf4863f5fd4e4424c040c678d","df36874d9e56aff601e921c4b3971d37cf66d14f6455935ce821e6cad13b1823","aeee0090b38de0dd47ca9a79ad5c2d156e3e09d92306719b0b45a3e96098e564","acfbb5aaef964e1d441f961a1846197f03241dba3c63b1e4d1903684888ef465","09416dd69576b03a3f485adf329a02f043e4a481e060ef5b208194e488d31fd9","2c828a5405191d006115ab34e191b8474bc6c86ffdc401d1a9864b1b6e088a58",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"9499ba4dcd1ee0596d8c98d01341bc874840c5291156513bda667fecad54d5be","a907bf91df26df2400858ef75f749498fb5cf00062bf90a737ac3949cc07978d","cb92bc2e42b261e4299025756f1beb826b3d9666a3f0d46f8a7254ca512f57e4","cb4f3f03480e1727eae46400606cecaa97f550186ff8fa909ebc00db4180531b",{"version":"59104b2e80c588b813d03d3a45f57117ca4601ae3fc216c5ffbcbafc4effc1c5","affectsGlobalScope":true},"5153a2fd150e46ce57bb3f8db1318d33f6ad3261ed70ceeff92281c0608c74a3","d1a78a3c5708807e8de3e399f91df4797c62e44b02195eefc2209b2e713e54ee","36b03690b628eab08703d63f04eaa89c5df202e5f1edf3989f13ad389cd2c091","0effadd232a20498b11308058e334d3339cc5bf8c4c858393e38d9d4c0013dcf","25846d43937c672bab7e8195f3d881f93495df712ee901860effc109918938cc","556bf5c36deb62cffa1bf697c1789fe008ec82db0273025001db66732714e9d9","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff",{"version":"806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0","affectsGlobalScope":true},"44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","23b89798789dffbd437c0c423f5d02d11f9736aea73d6abf16db4f812ff36eda","653968fc1b35c5eb3d273d36fac1c1dc66f9537edf28f33485b8776bd956e23d",{"version":"970a90f76d4d219ad60819d61f5994514087ba94c985647a3474a5a3d12714ed","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","a381f079c4804442f179d742fdb2e495fe28d67a47cac673485f75ae2e77aeca","3c13ef48634e7b5012fcf7e8fce7496352c2d779a7201389ca96a2a81ee4314d","5d0a25ec910fa36595f85a67ac992d7a53dd4064a1ba6aea1c9f14ab73a023f2",{"version":"bfe39beb986d2a2e512c091cbe924f1c415bc65de54de0e2f6a0dc6f84c183d9","affectsGlobalScope":true},"2d526e6f21d8cc66ac11ada32874e95ae88d870c6c9d3d9d4e03b1d1f9ad7b8e","06d7c42d256f0ce6afe1b2b6cfbc97ab391f29dadb00dd0ae8e8f23f5bc916c3","ec4bd1b200670fb567920db572d6701ed42a9641d09c4ff6869768c8f81b404c","e59a892d87e72733e2a9ca21611b9beb52977be2696c7ba4b216cbbb9a48f5aa","d2ec52f565f0570e90b659811347bd689f8c6039b11eaaccd0f243759d46da6e","8a300fa9b698845a1f9c41ecbe2c5966634582a8e2020d51abcace9b55aa959e",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a12806a1bde5e9f137bb79728d87a4ceaedf04e95efc9967d3288a3c252d9a7b","4fb0b7d532aa6fb850b6cd2f1ee4f00802d877b5c66a51903bc1fb0624126349","a7e430e32eaefba6b1ebf23a94a4562bfe7051cc83558d33ddc8ff342f3c18e9","576626a0a8130c9841185f33600da8f9b073d6cb63a87bc3c6d99bcd8c4b90f9","c51274f7c526db0f3098086804704091f7e82abac306d5a2625c82069f6a1808","050e666c96dd61a73b635d13e08fe09ebf537622cb607a6afb96ec1f3d89c60d","8212ac0cca7c15c9d3b54c2b49e68e2e22eef9ddb5d6aa43b0a808a78bf3d2e5","0431720f61d5d6bedcbc40ce823fcb8a46b8cf4c653b42a374d751ac14486b29","eab0c3d645dc52308e6a6215744e162a5a52ba62fa9281def11a70683013051c","eaf599bf6dd86cdf567a5f6d66d120e56c9e0f5017edf0eb4c32d0a079e12547","eae92b11e3f007b6969694985c806d598817d039f9ea3daee4f40ba9dfaef330","6a10384532ffe72c178396a6ab80ce6078091f0b0373869d56a7b211e0068199","f7550a5e739aefd5b81cd47f449d24c2b209c85d7fcaa9442ca941dd73652352","c9c74e4c8368424f4a81b0871605c0310e63f60c2b81880bb2fe3a4938c73fde","38d86bed469d9a2a46f9b06a88620c83c50c0992f188241918f3b85fd9f9f814","56d58a47146fd9070a920779ba9c3d68b3984d488dda8f8997ca9e856c138420","6856a4ca83f082f6ce39a1315b9f3fbc7f7d85bcdf6a2922a61942c19270f713","c229de4bcb1493317b0d6261ff97d55819919426e1841120f31dfcdadf649c6f","b90c59ac4682368a01c83881b814738eb151de8a58f52eb7edadea2bcffb11b9","8560a87b2e9f8e2c3808c8f6172c9b7eb6c9b08cb9f937db71c285ecf292c81d","ffe3931ff864f28d80ae2f33bd11123ad3d7bad9896b910a1e61504cc093e1f5","67fc055eb86a0632e2e072838f889ffe1754083cb13c8c80a06a7d895d877aae","083c1bd82f8dc3a1ed6fc9e8eaddf141f7c05df418eca386598821e045253af9","274ebe605bd7f71ce161f9f5328febc7d547a2929f803f04b44ec4a7d8729517","6ca0207e70d985a24396583f55836b10dc181063ab6069733561bfde404d1bad","5908142efeaab38ffdf43927ee0af681ae77e0d7672b956dfb8b6c705dbfe106","f772b188b943549b5c5eb803133314b8aa7689eced80eed0b70e2f30ca07ab9c","0026b816ef05cfbf290e8585820eef0f13250438669107dfc44482bac007b14f","05d64cc1118031b29786632a9a0f6d7cf1dcacb303f27023a466cf3cdc860538","e0fff9119e1a5d2fdd46345734126cd6cb99c2d98a9debf0257047fe3937cc3f","d84398556ba4595ee6be554671da142cfe964cbdebb2f0c517a10f76f2b016c0","e275297155ec3251200abbb334c7f5641fecc68b2a9573e40eed50dff7584762","5b283e39541d35bd0bac4fdc294b255698648192ba9954cc6bf4fdf4c81b5d2e","e5f2f8ae0df49c1d1ba6459e90b90754211451db37ffb3c34c124f8258dd1669","65a3ee7b0391cb66af46d8f02ad67db3ea90e7a07bf4185b6e442c9e4054c18c","1808d4a759253973c4b42b99cc27b1645e16e661c500bced8dcbc6b1a0c95416",{"version":"4a1a37d7465c354272af285cb07e08e32a726610ede42e6c95bd6feb8e5589ff","signature":"35a02ab55e8cd2a0e7f52ab04fb0461e4dc0b9d7408e26709e363a675840d0bc"},{"version":"0849bbd7da30274246bea4072325cee47d71cab4d2f7bc51bbbeff34c3c0a66f","signature":"bcf09de7161dff4445849e3ba58a69458906fd4b86e46e69858fc0825f01adfd"},"b4358a89fcd9c579f84a6c68e2ce44ca91b07e4db3f8f403c2b7a72c1a1e04b6",{"version":"273ddf9a1b131d217453005236a061faeb128f91bfc200667b2b3f41f090f9a4","signature":"21b6790efb2b9632c49398973c5888c3670231b0509498862d6a9ab08a6d1c8d"},"16d51f964ec125ad2024cf03f0af444b3bc3ec3614d9345cc54d09bab45c9a4c","ba601641fac98c229ccd4a303f747de376d761babb33229bb7153bed9356c9cc",{"version":"ae3fe461989bbd951344efc1f1fe932360ce7392e6126bdb225a82a1bbaf15ee","affectsGlobalScope":true},"5b9ecf7da4d71cf3832dbb8336150fa924631811f488ad4690c2dfec2b4fb1d7","951c85f75aac041dddbedfedf565886a7b494e29ec1532e2a9b4a6180560b50e","f47887b61c6cf2f48746980390d6cb5b8013518951d912cfb37fe748071942be","6d829824ead8999f87b6df21200df3c6150391b894b4e80662caa462bd48d073","afc559c1b93df37c25aef6b3dfa2d64325b0e112e887ee18bf7e6f4ec383fc90","15c88bfd1b8dc7231ff828ae8df5d955bae5ebca4cf2bcb417af5821e52299ae","522b8e42e2511257d9fb02dc79f3b47cc8a11d9d5954841eff53353cd15ed088","e8b4abd837dd9867957c26acf78ebb4d3d34ca6c349282c9be0964c45a877cbd","a1c79f857f5c7754e14c93949dad8cfefcd7df2ecc0dc9dd79a30fd493e28449","f3e604694b624fa3f83f6684185452992088f5efb2cf136b62474aa106d6f1b6","dee5d387e2e6f3015cbf91fc0c13ed6f016f9c5c1f2ad9c62602f4fd398fa83a","67f129ed8b372622ff36b8b10e39d03e09e363a5ff7821105f92f085b8d1ccba","721124f5db1f4a42da2308dfa1414d2e99055d2dfc59de7bf2e0b6ac64356c0e","0d7569149194d622212c21d5d162b0715d5a6ca764cebae7145fdbaff1e07311","e09496173b22a2c0b21983b94b6ae6e30251370f1c5b8a3d30128884e533f25c","dee5d387e2e6f3015cbf91fc0c13ed6f016f9c5c1f2ad9c62602f4fd398fa83a","9f3c5498245c38c9016a369795ec5ef1768d09db63643c8dba9656e5ab294825","44a8d350600656882fd7462774e32e8d13788313ba2e36d2e8d5437ac91b98df","60bb0e47502bf8716d1230288b4e6387c1d34cded12752ab5338108e2e662e67","b8870b5155d11a273c75718a4f19026da49f91c548703858cd3400d06c3bd3b8","b3ae4ded82f27cabba780b9af9647f6e08c9a4cabe8fbb7a0cca69c7add9ef4b","8d26ae32e5c9c080e44aee4a67e5ef02b5fda0604e6fecbb7b753c537e5282d9","05c4e792dae38912ba333725cdf8c42d242337d006c0d887f4ce5a7787871a95","cd44995ee13d5d23df17a10213fed7b483fabfd5ea08f267ab52c07ce0b6b4da","58ce1486f851942bd2d3056b399079bc9cb978ec933fe9833ea417e33eab676e","1a23b521db8d7ec9e2b96c6fbd4c7e96d12f408b1e03661b3b9f7da7291103e6","d3d0d11d30c9878ada3356b9c36a2754b8c7b6204a41c86bfb1488c08ce263b0","a6493f1f479637ed89a3ebec03f6dc117e3b1851d7e938ac4c8501396b8639a8","ae0951e44973e928fe2e999b11960493835d094b16adac0b085a79cff181bcb9","9d00e3a59eff68fa8c40e89953083eeaad1c5b2580ed7da2304424b249ecb237","1609ad4d488c356ee91eba7d7aa87cc6fb59bc8ac05c1a8f08665285ba3b71ad","8add088f72326098d68d622ddb024c00ae56a912383efe96b03f0481db88f7c9","dd17fe6332567b8f13e33dd3ff8926553cdcea2ad32d4350ce0063a2addaa764","4091d56a4622480549350b8811ec64c7826cd41a70ce5d9c1cc20384bb144049","353c0125b9e50c2a71e18394d46be5ccb37161cc0f0e7c69216aa6932c8cdafb","9c5d5f167e86b6ddf7142559a17d13fd39c34e868ae947c40381db866eed6609","4430dea494b0ee77bf823d9a7c4850a539e1060d5d865316bb23fb393e4f01d7","aae698ceead4edad0695b9ea87e43f274e698bdb302c8cb5fd2cab4dc496ccf0","51631e9a0c041e12479ab01f5801d8a237327d19e9ee37d5f1f66be912631425","c9d5d8adb1455f49182751ce885745dcc5f9697e9c260388bc3ae9d1860d5d10","f64289e3fa8d5719eaf5ba1bb02dd32dbbf7c603dda75c16770a6bc6e9c6b6d9","b1aa0e2e3511a8d10990f35866405c64c9e576258ef99eeb9ebafed980fd7506","2d255a5287f2fb5295688cb25bd18e1cd59866179f795f3f1fd6b71b7f0edf8f","43c1dbb78d5277a5fdd8fddce8b257f84ffa2b4253f58b95c04a310710d19e97","6c669d7e080344c1574aa276a89e57c3b9f0e97fab96a09427e7dfb19ca261bf","b71ac126853867d8e64c910f47d46d05c5ea797987d2604f63d401507dc43b6d","9a37238558d28b7ee06d08599e92eab30b90704541cc85e6448009d6d55fffa9","120b14d66a061910309ff97e7b06b5c6c09444218178b80b687a92af4d22d5dc","3de958065e3a44cbe0bfa667813bc59c63e63c9ce522af8dc1b64714910fa9ba","66e655f7c43558bae6703242cbd6c0551a94d0a97204bd4c4bbf7e77f24d1f85","72f7b32e023814078046c036ed4b7ad92414be0aebb63e805c682e14103ae38a","a89d8e67966d085ff971c9900cfa1abdd9732bab66d9c1914ecc15befdf8623d","7dfd0308261bb91b058eb91802690fe3f09192b263e070a19df4d629df29e265","608eb9d411ac76e93a10e05f8aae92b3a5cefc87594219b737df7c8737ba2bd7","cde493e09daad4bb29922fe633f760be9f0e8e2f39cdca999cce3b8690b5e13a","3d7f9eb12aface876f7b535cc89dcd416daf77f0b3573333f16ec0a70bcf902a","93ba4ac36f570c70a12d588e21c10dda9f351fad3e77d416952acddb27bff01d","8750f9dc1e277ffff7446c95571bae61aca0984e8f99e40fc1e8cb7161ae0642","66408d81ba8962282b1a55da34c6bd767105141f54d0ba14dca330efe0c8f552","7481b9d93ca44eb1f689e0b939545ff00dead7bdb9daba401dfb74292d83f831","821e64ddbdfa10fac5f0aed1c1d4e1f275840400caa96357ddfd15d02e5afba1","1154651a6fbc1d60e448b903ec80f256f6771ced212ee1c3e5121168723621db","d82515baae7eb3ced1f56d61a40784585f450e1ff645dd46118e3eb8c40fd7fe","56cbe80e6c42d7e6e66b6f048add8b01c663797b843a074d9f19c4a3d63a269a","b9a9fd65a90941b07738158fe0ce563746887d4df44843a61bc69e388bb19ad6","59e23716db918fb164de91e495923a94f68ff0e3bf1601ae7a97c73046517068","638ce67b8ef1c3fe13ea078b3b0c56c1895c7815e4aa02c1c2f9c250edd170ea","130c7104c742f7ef7b85f9e741b5c451a1379b58822de5e88384cdca350dca42","82b1f9a6eefef7386aebe22ac49f23b806421e82dbf35c6e5b7132d79e4165da","1154651a6fbc1d60e448b903ec80f256f6771ced212ee1c3e5121168723621db","c1d5cc0286eef54f6246a972ec1720efbba6b7b0a53a303e1f2067ca229ecd16","43a4860173cec933ed8380e55f7a4473dd0df38b43e706b492f443cd8612bd87","f90d85d4cb38445499bdb7e7b013e4f64d99d157a6fa0843e998495ceb27b520","2e178a87e7bf03a067cfb1cf5573e7c4899fcbc9f462a0b0c67d238e39b794a4","901becb8779e1089442378fda5623e607ee4588762a32e7692436f1ea81cf848","8286d84d2567b713fd6a1fdfbb1a0abc8cfa668ee1e0e83d7dd4ade5761f2750","f28dffc6bf9bbd8b9dc156aadb74d11de7faabf547eb9f0aebb8cd03e8750a6c","acebfe99678cf7cddcddc3435222cf132052b1226e902daac9fbb495c321a9b5","9093a651687f1a876d696bc76b85ed9f0d920332b908f400f9ac03e1ed6edd34","ac0e45806dfb87684696b8a268697c8e789c50e29fd285fec047830e773f9832","8056361295dc5e312e45431662bf179bb11c3c02817be68c221823869df0371e",{"version":"57b110a5394c48da5b9106cd792f0fa0ce074981fb32f01006051d83dbb97309","signature":"04be2c71733b5f3b112425f580f3c6e26f95aef0418571d5abd463d33e81207c"},"d1ebe8a8d3f21e894f6006de3ea93c6443f846372876244e4135d24c7580b29f",{"version":"4fd14e1a46b9955b39150fcff69a1779e7b4e2aec642053031467b8dbd1b77e7","signature":"fcd75418bc37260d2c3d58d14fc6710e432a9a908c9e6070b969158376b2911d"},"c561efdf5ba0b62619745d4761fe2d9756f23db972e039367d15922fed67fd2f","cc957354aa3c94c9961ebf46282cfde1e81d107fc5785a61f62c67f1dd3ac2eb","7ec238b220ea991b6643e24191b1f552a65956d5f6de4c6144e700b9985265d8","93de1c6dab503f053efe8d304cb522bb3a89feab8c98f307a674a4fae04773e9","dae3d1adc67ac3dbd1cd471889301339ec439837b5df565982345be20c8fca9a","5426e62886b7be7806312d31a00e8f7dccd6fe63ba9bbefe99ee2eab29cc48a3","d78e5898c8de5e0f934eee83f680262de005caa268d137101b833fd932f95e07","ee96ecd663350ea2fc2129f0aa4a430e29a8f6f3b3016b15b18bbe309aca46a8",{"version":"64d4b35c5456adf258d2cf56c341e203a073253f229ef3208fc0d5020253b241","affectsGlobalScope":true},"c84d0f714fe122193c21c0f0917e873beb3a03fa3422ceb2fbd1ebc0558790a0","e050a0afcdbb269720a900c85076d18e0c1ab73e580202a2bf6964978181222a","8c2e6e491e1a08855b8bf70820184ff66ae0d43f7cf0311fc680e6d860af211c","3ebae8c00411116a66fca65b08228ea0cf0b72724701f9b854442100aab55aba",{"version":"bbdf156fea2fabed31a569445835aeedcc33643d404fcbaa54541f06c109df3f","affectsGlobalScope":true},"ba7617784f6b9aeac5e20c5eea869bbc3ef31b905f59c796b0fd401dae17c111","6a386ff939f180ae8ef064699d8b7b6e62bc2731a62d7fbf5e02589383838dea","f5a8b384f182b3851cec3596ccc96cb7464f8d3469f48c74bf2befb782a19de5",{"version":"515ee54ff10b6503aeabf3419cad1ed1f6e5e3c444f3d4f24279f17cb61be012","affectsGlobalScope":true},"bfe1b52cf71aea9bf8815810cc5d9490fa9617313e3d3c2ee3809a28b80d0bb4","e211731b72e875fa3eee84d1976ff2c0fcb4e2923af8ecd3516567299308b2c0","a3e5b8b86e7bd38d9afdc294875c4445c535319e288d3a13c1e2e41f9af934f2","8b06ac3faeacb8484d84ddb44571d8f410697f98d7bfa86c0fda60373a9f5215","7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee","f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0","763e521cf114b80e0dd0e21ca49b9f8ae62e8999555a5e7bade8ce36b33001c2","0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","124dfbdd53106f7f8803b9f33d2c040aed3ff906554a55d03983d4628db23358","427ce5854885cfc34387e09de05c1d5c1acf94c2143e1693f1d9ff54880573e7","bed2c4f96fab3348be4a34d88dcb12578c1b2475b07c6acd369e99e227718d81","e3ba509d3dce019b3190ceb2f3fc88e2610ab717122dabd91a9efaa37804040d","cda0cb09b995489b7f4c57f168cd31b83dcbaa7aad49612734fb3c9c73f6e4f2","3ad5991645bbea846d4efe615cd847e785ca30fff0205fdffb0f9a3ade3d13df",{"version":"c77e814973cb19583d7148a17e1784fb29641f1e958d33eaac4b24ea7dce0506","affectsGlobalScope":true},{"version":"63e4ad7de3875a4817db8260a5b56314774e84f3b08d784317afbfe928b9a807","affectsGlobalScope":true},"209e814e8e71aec74f69686a9506dd7610b97ab59dcee9446266446f72a76d05","6fa0008bf91a4cc9c8963bace4bba0bd6865cbfa29c3e3ccc461155660fb113a","2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b","93c4fc5b5237c09bc9ed65cb8f0dc1d89034406ab40500b89701341994897142",{"version":"fd624f7d7b264922476685870f08c5e1c6d6a0f05dee2429a9747b41f6b699d4","affectsGlobalScope":true},"1781e7a2a01c07c7295d3ce885d5d2905bec6449725937e3b8776c9b5ab4bf5b","199f9ead0daf25ae4c5632e3d1f42570af59685294a38123eef457407e13f365","74b0245c42990ed8a849df955db3f4362c81b13f799ebc981b7bec2d5b414a57","87352bb579421f6938177a53bb66e8514067b4872ccaa5fe08ddbca56364570c","f83b320cceccfc48457a818d18fc9a006ab18d0bdd727aa2c2e73dc1b4a45e98","354abbae08f72ea982b1a767a8908f1b3efe8bbe53955c64f9c0c249c8832d5d","b0d10e46cfe3f6c476b69af02eaa38e4ccc7430221ce3109ae84bb9fb8282298","e09496173b22a2c0b21983b94b6ae6e30251370f1c5b8a3d30128884e533f25c","c0b992907b4e59e9d3b5a9beba80f67b06de8408f305aeabe304b679926f50a3","70e9a18da08294f75bf23e46c7d69e67634c0765d355887b9b41f0d959e1426e","28288f5e5f8b7b895ed2abe6359c1da3e0d14a64b5aef985071285671f347c01"],"options":{"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"module":1,"outDir":"./dist","rootDir":"./src","sourceMap":true,"target":5},"fileIdsList":[[96],[96,230],[96,256],[96,230,231,232,233,234],[96,230,232],[69,96,103,149],[61,96,103],[95,96,103,145],[69,96,103],[96,154,239],[96,154,155,238],[66,69,96,103,143,144],[96,144,145,148,150],[67,96,103],[96,247],[66,69,71,74,84,95,96,103],[96,249],[96,251],[96,252],[96,258,261],[96,146],[96,147],[51,96],[54,96],[55,60,96],[56,66,67,74,84,95,96],[56,57,66,74,96],[58,96],[59,60,67,75,96],[60,84,92,96],[61,63,66,74,96],[62,96],[63,64,96],[65,66,96],[66,96],[66,67,68,84,95,96],[66,67,68,84,87,96],[96,100],[69,74,84,95,96],[66,67,69,70,74,84,92,95,96],[69,71,84,92,95,96],[51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102],[66,72,96],[73,95,96],[63,66,74,84,96],[75,96],[76,96],[54,77,96],[78,94,96,100],[79,96],[80,96],[66,81,82,96],[81,83,96,98],[66,84,85,86,87,96],[84,86,96],[84,85,96],[87,96],[88,96],[66,90,91,96],[90,91,96],[60,74,84,92,96],[93,96],[74,94,96],[55,69,80,95,96],[60,96],[84,96,97],[96,98],[96,99],[55,60,66,68,77,84,95,96,98,100],[84,96,101],[96,247,248,268],[96,243,244,245,246],[67,96,151],[69,96,103,147],[96,273],[69,74,96,103,160],[46,55,69,74,92,96,154,156,158,159],[96,103,122,123,125,126,127,128,129,130,131,132,133],[96,121,122,132],[96,122,132],[96,121,122,124,132],[96,121,122,123,125,126,127,128,129,130,131,133],[96,122],[60,96,121,132],[66,69,71,84,92,95,96,101,103],[96,278],[96,165,166,170,197,198,202,204,205],[96,163,164],[96,163],[96,165,205],[96,165,166,202,203,205],[96,205],[96,162,205,206],[96,165,166,204,205],[96,165,166,168,169,204,205],[96,165,166,167,204,205],[96,165,166,170,197,198,199,200,201,204,205],[96,162,165,166,170,202,204],[96,170,205],[96,172,173,174,175,176,177,178,179,180,181,205],[96,195,205],[96,171,182,190,191,192,193,194,196],[96,175,205],[96,183,184,185,186,187,188,189,205],[96,211,212],[66,96,211,280],[66,96,210,280],[66,67,96,103,104],[96,254,260],[69,96,280],[96,220],[96,218,219],[96,217,221],[69,74,95,96,151,216,280],[96,258],[96,255,259],[56,96],[96,257],[96,158],[96,155,156,157],[96,155,158],[96,155,161,206],[96,155,207],[67,69,96,160,207,280],[69,71,74,75,76,96,105,141,145,148,151,153,160,207,208,209,213,214,222,223,224,225,280],[96,138,151],[76,96,105,138],[96,227],[96,138],[69,74,96,105,138,139,140,142,151,152,226],[96,141,227],[46,47,96,119,134],[46,47,48,49,96,119,120,135],[47,96],[96,105],[49,50,96,106,107,108,109,110,111,112,113,114,115,116,117,118],[47,50,96,103,110],[96,103],[96,119,136,137],[96,119,120,136],[47,96,118],[105,138],[138],[69,74,105,138,139,140,142,151],[141,227]],"referencedMap":[[47,1],[232,2],[230,1],[254,1],[257,3],[256,1],[235,4],[231,2],[233,5],[234,2],[150,6],[236,7],[209,8],[149,9],[237,1],[240,10],[238,1],[239,11],[154,1],[145,12],[151,13],[241,1],[242,14],[248,15],[216,16],[250,17],[251,1],[252,18],[253,19],[262,20],[155,1],[263,1],[147,21],[146,22],[264,1],[51,23],[52,23],[54,24],[55,25],[56,26],[57,27],[58,28],[59,29],[60,30],[61,31],[62,32],[63,33],[64,33],[65,34],[66,35],[67,36],[68,37],[53,38],[102,1],[69,39],[70,40],[71,41],[103,42],[72,43],[73,44],[74,45],[75,46],[76,47],[77,48],[78,49],[79,50],[80,51],[81,52],[82,52],[83,53],[84,54],[86,55],[85,56],[87,57],[88,58],[89,1],[90,59],[91,60],[92,61],[93,62],[94,63],[95,64],[96,65],[97,66],[98,67],[99,68],[100,69],[101,70],[265,1],[266,1],[267,1],[245,1],[144,1],[143,1],[269,71],[243,1],[247,72],[270,1],[271,1],[246,1],[272,1],[223,73],[148,74],[274,75],[273,1],[214,9],[124,1],[275,1],[277,76],[276,77],[134,78],[133,79],[123,80],[125,81],[132,82],[126,81],[127,80],[128,80],[129,80],[130,83],[122,84],[131,79],[121,1],[141,85],[278,1],[279,86],[206,87],[163,1],[165,88],[164,89],[169,90],[204,91],[201,92],[203,93],[166,92],[167,94],[171,94],[170,95],[168,96],[202,97],[200,92],[205,98],[198,1],[199,1],[172,99],[177,92],[179,92],[174,92],[175,99],[181,92],[182,100],[173,92],[178,92],[180,92],[176,92],[196,101],[195,92],[197,102],[191,92],[193,92],[192,92],[188,92],[194,103],[189,92],[190,104],[183,92],[184,92],[185,92],[186,92],[187,92],[104,1],[213,105],[212,106],[210,1],[211,107],[255,1],[105,108],[249,1],[244,1],[261,109],[219,110],[221,111],[220,112],[218,110],[222,113],[217,114],[259,115],[260,116],[225,117],[258,118],[268,1],[159,119],[158,120],[156,121],[157,1],[46,1],[8,1],[9,1],[13,1],[12,1],[2,1],[14,1],[15,1],[16,1],[17,1],[18,1],[19,1],[20,1],[21,1],[3,1],[4,1],[25,1],[22,1],[23,1],[24,1],[26,1],[27,1],[28,1],[5,1],[45,1],[29,1],[30,1],[31,1],[32,1],[6,1],[33,1],[34,1],[35,1],[36,1],[7,1],[37,1],[42,1],[43,1],[38,1],[39,1],[40,1],[41,1],[1,1],[44,1],[11,1],[10,1],[162,1],[207,122],[161,123],[208,124],[224,1],[215,122],[153,1],[226,125],[160,77],[152,126],[139,127],[228,128],[140,1],[229,129],[227,130],[142,131],[135,132],[136,133],[116,134],[50,1],[106,135],[110,1],[107,1],[108,1],[119,136],[109,1],[111,137],[114,1],[112,129],[115,1],[117,138],[118,134],[113,1],[49,1],[138,139],[48,1],[137,140],[120,141]],"exportedModulesMap":[[47,1],[232,2],[230,1],[254,1],[257,3],[256,1],[235,4],[231,2],[233,5],[234,2],[150,6],[236,7],[209,8],[149,9],[237,1],[240,10],[238,1],[239,11],[154,1],[145,12],[151,13],[241,1],[242,14],[248,15],[216,16],[250,17],[251,1],[252,18],[253,19],[262,20],[155,1],[263,1],[147,21],[146,22],[264,1],[51,23],[52,23],[54,24],[55,25],[56,26],[57,27],[58,28],[59,29],[60,30],[61,31],[62,32],[63,33],[64,33],[65,34],[66,35],[67,36],[68,37],[53,38],[102,1],[69,39],[70,40],[71,41],[103,42],[72,43],[73,44],[74,45],[75,46],[76,47],[77,48],[78,49],[79,50],[80,51],[81,52],[82,52],[83,53],[84,54],[86,55],[85,56],[87,57],[88,58],[89,1],[90,59],[91,60],[92,61],[93,62],[94,63],[95,64],[96,65],[97,66],[98,67],[99,68],[100,69],[101,70],[265,1],[266,1],[267,1],[245,1],[144,1],[143,1],[269,71],[243,1],[247,72],[270,1],[271,1],[246,1],[272,1],[223,73],[148,74],[274,75],[273,1],[214,9],[124,1],[275,1],[277,76],[276,77],[134,78],[133,79],[123,80],[125,81],[132,82],[126,81],[127,80],[128,80],[129,80],[130,83],[122,84],[131,79],[121,1],[141,85],[278,1],[279,86],[206,87],[163,1],[165,88],[164,89],[169,90],[204,91],[201,92],[203,93],[166,92],[167,94],[171,94],[170,95],[168,96],[202,97],[200,92],[205,98],[198,1],[199,1],[172,99],[177,92],[179,92],[174,92],[175,99],[181,92],[182,100],[173,92],[178,92],[180,92],[176,92],[196,101],[195,92],[197,102],[191,92],[193,92],[192,92],[188,92],[194,103],[189,92],[190,104],[183,92],[184,92],[185,92],[186,92],[187,92],[104,1],[213,105],[212,106],[210,1],[211,107],[255,1],[105,108],[249,1],[244,1],[261,109],[219,110],[221,111],[220,112],[218,110],[222,113],[217,114],[259,115],[260,116],[225,117],[258,118],[268,1],[159,119],[158,120],[156,121],[157,1],[46,1],[8,1],[9,1],[13,1],[12,1],[2,1],[14,1],[15,1],[16,1],[17,1],[18,1],[19,1],[20,1],[21,1],[3,1],[4,1],[25,1],[22,1],[23,1],[24,1],[26,1],[27,1],[28,1],[5,1],[45,1],[29,1],[30,1],[31,1],[32,1],[6,1],[33,1],[34,1],[35,1],[36,1],[7,1],[37,1],[42,1],[43,1],[38,1],[39,1],[40,1],[41,1],[1,1],[44,1],[11,1],[10,1],[162,1],[207,122],[161,123],[208,124],[224,1],[215,122],[153,1],[226,125],[160,77],[152,126],[139,142],[228,128],[229,143],[227,144],[142,145],[135,132],[136,133],[116,134],[50,1],[106,135],[110,1],[107,1],[108,1],[119,136],[109,1],[111,137],[114,1],[112,129],[115,1],[117,138],[118,134],[113,1],[49,1],[138,139],[48,1],[137,140],[120,141]],"semanticDiagnosticsPerFile":[47,232,230,254,257,256,235,231,233,234,150,236,209,149,237,240,238,239,154,145,151,241,242,248,216,250,251,252,253,262,155,263,147,146,264,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,53,102,69,70,71,103,72,73,74,75,76,77,78,79,80,81,82,83,84,86,85,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,265,266,267,245,144,143,269,243,247,270,271,246,272,223,148,274,273,214,124,275,277,276,134,133,123,125,132,126,127,128,129,130,122,131,121,141,278,279,206,163,165,164,169,204,201,203,166,167,171,170,168,202,200,205,198,199,172,177,179,174,175,181,182,173,178,180,176,196,195,197,191,193,192,188,194,189,190,183,184,185,186,187,104,213,212,210,211,255,105,249,244,261,219,221,220,218,222,217,259,260,225,258,268,159,158,156,157,46,8,9,13,12,2,14,15,16,17,18,19,20,21,3,4,25,22,23,24,26,27,28,5,45,29,30,31,32,6,33,34,35,36,7,37,42,43,38,39,40,41,1,44,11,10,162,207,161,208,224,215,153,226,160,152,139,228,140,229,227,142,135,136,116,50,106,110,107,108,119,109,111,114,112,115,117,118,113,49,138,48,137,120],"latestChangedDtsFile":"./dist/reload.d.ts"},"version":"4.8.3"}