@vxrn/vite-native-hmr 1.27.1 → 2.0.0-beta.101.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/cjs/devServerClient.cjs +113 -129
  2. package/dist/cjs/devServerClient.native.cjs +214 -0
  3. package/dist/cjs/devServerClient.native.js +184 -199
  4. package/dist/cjs/devServerClient.native.js.map +1 -1
  5. package/dist/cjs/getDevServerLocation.cjs +32 -43
  6. package/dist/cjs/getDevServerLocation.native.cjs +50 -0
  7. package/dist/cjs/getDevServerLocation.native.js +32 -42
  8. package/dist/cjs/getDevServerLocation.native.js.map +1 -1
  9. package/dist/cjs/hmr-client.cjs +155 -175
  10. package/dist/cjs/hmr-client.native.cjs +231 -0
  11. package/dist/cjs/hmr-client.native.js +210 -224
  12. package/dist/cjs/hmr-client.native.js.map +1 -1
  13. package/dist/cjs/index.cjs +14 -18
  14. package/dist/cjs/index.native.cjs +29 -0
  15. package/dist/cjs/index.native.js +14 -17
  16. package/dist/cjs/index.native.js.map +1 -1
  17. package/dist/esm/devServerClient.mjs +93 -100
  18. package/dist/esm/devServerClient.mjs.map +1 -1
  19. package/dist/esm/devServerClient.native.js +164 -171
  20. package/dist/esm/devServerClient.native.js.map +1 -1
  21. package/dist/esm/getDevServerLocation.mjs +17 -17
  22. package/dist/esm/getDevServerLocation.mjs.map +1 -1
  23. package/dist/esm/getDevServerLocation.native.js +17 -17
  24. package/dist/esm/getDevServerLocation.native.js.map +1 -1
  25. package/dist/esm/hmr-client.mjs +143 -157
  26. package/dist/esm/hmr-client.mjs.map +1 -1
  27. package/dist/esm/hmr-client.native.js +198 -207
  28. package/dist/esm/hmr-client.native.js.map +1 -1
  29. package/dist/esm/index.js +4 -1
  30. package/dist/esm/index.js.map +1 -1
  31. package/dist/esm/index.mjs +4 -1
  32. package/dist/esm/index.mjs.map +1 -1
  33. package/dist/esm/index.native.js +4 -1
  34. package/dist/esm/index.native.js.map +1 -1
  35. package/package.json +4 -4
  36. package/types/devServerClient.d.ts.map +1 -1
  37. package/types/index.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["prettyFormat","getDevServerLocation","loadHMRClient","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","DevServerClient","DevServerClient2","_this","initSocket","address","host","socket","WebSocket","onClose","event","console","warn","message","onclose","onerror","onopen","flushBuffer","process","env","NODE_ENV","send","level","data","_this_socket","JSON","stringify","type","map","item","escapeString","highlight","maxDepth","min","plugins","ReactElement","unused","_this_socket1","index","err","_this_socket2","unused2"],"sources":["../../src/devServerClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"devServerClient.native.js","names":[],"sources":["esm/devServerClient.native.js"],"sourcesContent":["import prettyFormat from \"pretty-format\";\nimport { getDevServerLocation } from \"./getDevServerLocation\";\nimport { loadHMRClient } from \"./hmr-client\";\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nloadHMRClient();\nvar DevServerClient = /* @__PURE__ */ (function() {\n \"use strict\";\n function DevServerClient2() {\n var _this = this;\n _class_call_check(this, DevServerClient2);\n _define_property(this, \"socket\", void 0);\n _define_property(this, \"buffer\", []);\n var initSocket = function() {\n var address = `ws://${getDevServerLocation().host}/__client`;\n _this.socket = new WebSocket(address);\n var onClose = function(event) {\n console.warn(\"Disconnected from the Dev Server:\", event.message);\n _this.socket = void 0;\n };\n _this.socket.onclose = onClose;\n _this.socket.onerror = onClose;\n _this.socket.onopen = function() {\n _this.flushBuffer();\n };\n };\n if (process.env.NODE_ENV === \"development\") {\n initSocket();\n }\n }\n _create_class(DevServerClient2, [\n {\n key: \"send\",\n value: function send(level, data) {\n try {\n var _this_socket;\n (_this_socket = this.socket) === null || _this_socket === void 0 ? void 0 : _this_socket.send(JSON.stringify({\n type: \"client-log\",\n level,\n data: data.map(function(item) {\n return typeof item === \"string\" ? item : prettyFormat(item, {\n escapeString: true,\n highlight: true,\n maxDepth: 3,\n min: true,\n plugins: [\n // @ts-expect-error\n prettyFormat.plugins.ReactElement\n ]\n });\n })\n }));\n } catch (unused) {\n try {\n var _this_socket1;\n (_this_socket1 = this.socket) === null || _this_socket1 === void 0 ? void 0 : _this_socket1.send(JSON.stringify({\n type: \"client-log\",\n level,\n data: data.map(function(item, index) {\n try {\n return typeof item === \"string\" ? item : JSON.stringify(item);\n } catch (err) {\n return `Error stringifying item at index ${index} - ${item} - ${err}`;\n }\n })\n }));\n } catch (err) {\n try {\n var _this_socket2;\n (_this_socket2 = this.socket) === null || _this_socket2 === void 0 ? void 0 : _this_socket2.send(JSON.stringify({\n type: \"client-log\",\n level: \"error\",\n data: [\n \"error sending client log: \" + err\n ]\n }));\n } catch (unused2) {\n }\n }\n }\n }\n },\n {\n // final err\n // Ignore error\n key: \"flushBuffer\",\n value: function flushBuffer() {\n var _this = this;\n if (globalThis[\"__vxrnTmpLogs\"]) {\n globalThis[\"__vxrnTmpLogs\"].forEach(function(param) {\n var { level: level2, data: data2 } = param;\n _this.buffer.push({\n level: level2,\n data: data2\n });\n });\n delete globalThis[\"__vxrnTmpLogs\"];\n }\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.buffer[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var { level, data } = _step.value;\n this.send(level, data);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n this.buffer = [];\n }\n },\n {\n key: \"log\",\n value: function log2(level, data) {\n if (level === \"groupEnd\") {\n return;\n }\n if (this.socket && this.socket.readyState === WebSocket.OPEN) {\n this.flushBuffer();\n this.send(level, data);\n } else {\n if (globalThis[\"__vxrnTmpLogs\"]) return;\n this.buffer.push({\n level,\n data\n });\n }\n }\n },\n {\n // Mock for React Native 0.79 to prevent native error \"getPropertyAsObject: property 'setup' is undefined, expected an Object\"\n key: \"setup\",\n value: function setup2() {\n }\n }\n ]);\n return DevServerClient2;\n})();\nvar client = new DevServerClient();\nvar setup = function() {\n};\nvar enable = function() {\n};\nvar disable = function() {\n};\nvar registerBundle = function() {\n};\nvar log = function(level, data) {\n client.log(level, data);\n};\nexport {\n client,\n disable,\n enable,\n log,\n registerBundle,\n setup\n};\n//# sourceMappingURL=devServerClient.js.map\n"],"mappings":"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"}
@@ -1,23 +1,23 @@
1
1
  import getDevServer from "react-native/Libraries/Core/Devtools/getDevServer";
2
+
2
3
  let location;
3
4
  function getDevServerLocation() {
4
- if (!location) {
5
- const {
6
- url
7
- } = getDevServer();
8
- const origin = url.replace(/\/$/, "");
9
- const host = origin.replace(/https?:\/\//, "");
10
- location = {
11
- host,
12
- hostname: host.split(":")[0],
13
- href: url,
14
- origin,
15
- pathname: url.split(host)[1],
16
- port: host.split(":")[1],
17
- protocol: (url.match(/^([a-z])+:\/\//) || [void 0, void 0])[1]
18
- };
19
- }
20
- return location;
5
+ if (!location) {
6
+ const { url } = getDevServer();
7
+ const origin = url.replace(/\/$/, "");
8
+ const host = origin.replace(/https?:\/\//, "");
9
+ location = {
10
+ host,
11
+ hostname: host.split(":")[0],
12
+ href: url,
13
+ origin,
14
+ pathname: url.split(host)[1],
15
+ port: host.split(":")[1],
16
+ protocol: (url.match(/^([a-z])+:\/\//) || [void 0, void 0])[1]
17
+ };
18
+ }
19
+ return location;
21
20
  }
21
+
22
22
  export { getDevServerLocation };
23
23
  //# sourceMappingURL=getDevServerLocation.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["getDevServer","location","getDevServerLocation","url","origin","replace","host","hostname","split","href","pathname","port","protocol","match"],"sources":["../../src/getDevServerLocation.ts"],"sourcesContent":[null],"mappings":"AACA,OAAOA,YAAA,MAAkB;AAYzB,IAAIC,QAAA;AAEG,SAASC,qBAAA,EAA0C;EACxD,IAAI,CAACD,QAAA,EAAU;IACb,MAAM;MAAEE;IAAI,IAAIH,YAAA,CAAa;IAC7B,MAAMI,MAAA,GAASD,GAAA,CAAIE,OAAA,CAAQ,OAAO,EAAE;IACpC,MAAMC,IAAA,GAAOF,MAAA,CAAOC,OAAA,CAAQ,eAAe,EAAE;IAC7CJ,QAAA,GAAW;MACTK,IAAA;MACAC,QAAA,EAAUD,IAAA,CAAKE,KAAA,CAAM,GAAG,EAAE,CAAC;MAC3BC,IAAA,EAAMN,GAAA;MACNC,MAAA;MACAM,QAAA,EAAUP,GAAA,CAAIK,KAAA,CAAMF,IAAI,EAAE,CAAC;MAC3BK,IAAA,EAAML,IAAA,CAAKE,KAAA,CAAM,GAAG,EAAE,CAAC;MACvBI,QAAA,GAAWT,GAAA,CAAIU,KAAA,CAAM,gBAAgB,KAAK,CAAC,QAAW,MAAS,GAAG,CAAC;IACrE;EACF;EAEA,OAAOZ,QAAA;AACT","ignoreList":[]}
1
+ {"version":3,"file":"getDevServerLocation.js","names":[],"sources":["esm/getDevServerLocation.js"],"sourcesContent":["import getDevServer from \"react-native/Libraries/Core/Devtools/getDevServer\";\nlet location;\nfunction getDevServerLocation() {\n if (!location) {\n const { url } = getDevServer();\n const origin = url.replace(/\\/$/, \"\");\n const host = origin.replace(/https?:\\/\\//, \"\");\n location = {\n host,\n hostname: host.split(\":\")[0],\n href: url,\n origin,\n pathname: url.split(host)[1],\n port: host.split(\":\")[1],\n protocol: (url.match(/^([a-z])+:\\/\\//) || [void 0, void 0])[1]\n };\n }\n return location;\n}\nexport {\n getDevServerLocation\n};\n//# sourceMappingURL=getDevServerLocation.js.map\n"],"mappings":";;;AACA,IAAI;AACJ,SAAS,uBAAuB;CAC9B,IAAI,CAAC,UAAU;EACb,MAAM,EAAE,QAAQ,aAAa;EAC7B,MAAM,SAAS,IAAI,QAAQ,OAAO,EAAE;EACpC,MAAM,OAAO,OAAO,QAAQ,eAAe,EAAE;EAC7C,WAAW;GACT;GACA,UAAU,KAAK,MAAM,GAAG,CAAC,CAAC;GAC1B,MAAM;GACN;GACA,UAAU,IAAI,MAAM,IAAI,CAAC,CAAC;GAC1B,MAAM,KAAK,MAAM,GAAG,CAAC,CAAC;GACtB,WAAW,IAAI,MAAM,gBAAgB,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,EAAC,CAAE;EAC9D;CACF;CACA,OAAO;AACT"}
@@ -1,23 +1,23 @@
1
1
  import getDevServer from "react-native/Libraries/Core/Devtools/getDevServer";
2
+
2
3
  var location;
3
4
  function getDevServerLocation() {
4
- if (!location) {
5
- var {
6
- url
7
- } = getDevServer();
8
- var origin = url.replace(/\/$/, "");
9
- var host = origin.replace(/https?:\/\//, "");
10
- location = {
11
- host,
12
- hostname: host.split(":")[0],
13
- href: url,
14
- origin,
15
- pathname: url.split(host)[1],
16
- port: host.split(":")[1],
17
- protocol: (url.match(/^([a-z])+:\/\//) || [void 0, void 0])[1]
18
- };
19
- }
20
- return location;
5
+ if (!location) {
6
+ var { url } = getDevServer();
7
+ var origin = url.replace(/\/$/, "");
8
+ var host = origin.replace(/https?:\/\//, "");
9
+ location = {
10
+ host,
11
+ hostname: host.split(":")[0],
12
+ href: url,
13
+ origin,
14
+ pathname: url.split(host)[1],
15
+ port: host.split(":")[1],
16
+ protocol: (url.match(/^([a-z])+:\/\//) || [void 0, void 0])[1]
17
+ };
18
+ }
19
+ return location;
21
20
  }
21
+
22
22
  export { getDevServerLocation };
23
23
  //# sourceMappingURL=getDevServerLocation.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getDevServer","location","getDevServerLocation","url","origin","replace","host","hostname","split","href","pathname","port","protocol","match"],"sources":["../../src/getDevServerLocation.ts"],"sourcesContent":[null],"mappings":"AACA,OAAOA,YAAA,MAAkB;AAYzB,IAAIC,QAAA;AAEG,SAASC,qBAAA,EAA0C;EACxD,IAAI,CAACD,QAAA,EAAU;IACb;MAAME;IAAE,IAAIH,YAAI;IAChB,IAAAI,MAAM,GAAAD,GAAS,CAAAE,OAAI,MAAQ,IAAO;IAClC,IAAAC,IAAM,GAAAF,MAAO,CAAAC,OAAO,cAAQ,IAAe;IAC3CJ,QAAA,GAAW;MACTK,IAAA;MACAC,QAAA,EAAUD,IAAA,CAAKE,KAAA,CAAM,GAAG,EAAE,CAAC;MAC3BC,IAAA,EAAMN,GAAA;MACNC,MAAA;MACAM,QAAA,EAAUP,GAAA,CAAIK,KAAA,CAAMF,IAAI,EAAE,CAAC;MAC3BK,IAAA,EAAML,IAAA,CAAKE,KAAA,CAAM,GAAG,EAAE,CAAC;MACvBI,QAAA,GAAWT,GAAA,CAAIU,KAAA,CAAM,gBAAgB,KAAK,CAC5C,QACF,OAEA,EAAO;IACT","ignoreList":[]}
1
+ {"version":3,"file":"getDevServerLocation.native.js","names":[],"sources":["esm/getDevServerLocation.native.js"],"sourcesContent":["import getDevServer from \"react-native/Libraries/Core/Devtools/getDevServer\";\nvar location;\nfunction getDevServerLocation() {\n if (!location) {\n var { url } = getDevServer();\n var origin = url.replace(/\\/$/, \"\");\n var host = origin.replace(/https?:\\/\\//, \"\");\n location = {\n host,\n hostname: host.split(\":\")[0],\n href: url,\n origin,\n pathname: url.split(host)[1],\n port: host.split(\":\")[1],\n protocol: (url.match(/^([a-z])+:\\/\\//) || [\n void 0,\n void 0\n ])[1]\n };\n }\n return location;\n}\nexport {\n getDevServerLocation\n};\n//# sourceMappingURL=getDevServerLocation.js.map\n"],"mappings":";;;AACA,IAAI;AACJ,SAAS,uBAAuB;CAC9B,IAAI,CAAC,UAAU;EACb,IAAI,EAAE,QAAQ,aAAa;EAC3B,IAAI,SAAS,IAAI,QAAQ,OAAO,EAAE;EAClC,IAAI,OAAO,OAAO,QAAQ,eAAe,EAAE;EAC3C,WAAW;GACT;GACA,UAAU,KAAK,MAAM,GAAG,CAAC,CAAC;GAC1B,MAAM;GACN;GACA,UAAU,IAAI,MAAM,IAAI,CAAC,CAAC;GAC1B,MAAM,KAAK,MAAM,GAAG,CAAC,CAAC;GACtB,WAAW,IAAI,MAAM,gBAAgB,KAAK,CACxC,KAAK,GACL,KAAK,CACP,EAAC,CAAE;EACL;CACF;CACA,OAAO;AACT"}
@@ -1,162 +1,148 @@
1
1
  import { getDevServerLocation } from "./getDevServerLocation.mjs";
2
- class HMRClient {
3
- constructor(app) {
4
- this.app = app;
5
- const port = process.env.REACT_NATIVE_SERVER_PUBLIC_PORT || 8081;
6
- this.url = `ws://${getDevServerLocation().hostname}:${port}/__hmr?platform=${process.env.REACT_NATIVE_PLATFORM || "ios"}`;
7
- this.socket = new WebSocket(this.url);
8
- console.info(" \u24F5 [hmr] connecting...");
9
- this.socket.onopen = () => {
10
- console.info(" \u24F5 [hmr] connected");
11
- };
12
- this.socket.onclose = () => {
13
- console.info(` \u24F5 [hmr] disconnected ${this.url}`);
14
- };
15
- this.socket.onerror = event => {
16
- console.error(" \u24F5 [hmr] error", event);
17
- };
18
- this.socket.onmessage = event => {
19
- try {
20
- const data = JSON.parse(event.data.toString());
21
- this.processMessage(data);
22
- } catch (error) {
23
- console.warn(" \u24F5 [hmr] invalid message", error);
24
- }
25
- };
26
- }
27
- app;
28
- url;
29
- socket;
30
- lastHash = "";
31
- upToDate(hash) {
32
- if (hash) {
33
- this.lastHash = hash;
34
- }
35
- return this.lastHash === __webpack_hash__;
36
- }
37
- processMessage(message) {
38
- switch (message.action) {
39
- case "building":
40
- this.app.LoadingView.showMessage("Rebuilding...", "refresh");
41
- console.info(" \u24F5 [hmr] bundle rebuilding", {
42
- name: message.body?.name
43
- });
44
- break;
45
- // biome-ignore lint/suspicious/noFallthroughSwitchClause: <explanation>
46
- case "built":
47
- console.info(" \u24F5 [hmr] bundle rebuilt", {
48
- name: message.body?.name,
49
- time: message.body?.time
50
- });
51
- // Fall through
52
- case "sync":
53
- if (!message.body) {
54
- console.warn(" \u24F5 [hmr] message body is empty");
55
- return;
56
- }
57
- if (message.body.errors?.length) {
58
- message.body.errors.forEach(error => {
59
- console.error("Cannot apply update due to error:", error);
60
- });
61
- this.app.LoadingView.hide();
62
- return;
63
- }
64
- if (message.body.warnings?.length) {
65
- message.body.warnings.forEach(warning => {
66
- console.warn(" \u24F5 [hmr] bundle contains warnings:", warning);
67
- });
68
- }
69
- this.applyUpdate(message.body);
70
- }
71
- }
72
- applyUpdate(update) {
73
- if (!module.hot) {
74
- throw new Error(" \u24F5 [hmr] hot Module Replacement is disabled.");
75
- }
76
- if (!this.upToDate(update.hash) && module.hot.status() === "idle") {
77
- console.info(" \u24F5 [hmr] checking for updates on the server...");
78
- this.checkUpdates(update);
79
- }
80
- }
81
- checkUpdates(update) {
82
- try {
83
- this.app.LoadingView.showMessage("Refreshing...", "refresh");
84
- module.hot?.check(false).then(updatedModules => {
85
- if (!updatedModules) {
86
- console.warn(" \u24F5 [hmr] cannot find update - full reload needed");
87
- this.app.reload();
88
- return;
89
- }
90
- module.hot?.apply({
91
- ignoreDeclined: true,
92
- ignoreUnaccepted: false,
93
- ignoreErrored: false,
94
- onDeclined: data => {
95
- console.warn(" \u24F5 [hmr] ignored an update due to declined module", {
96
- chain: data.chain
97
- });
98
- }
99
- }).then(renewedModules => {
100
- if (!this.upToDate()) {
101
- this.checkUpdates(update);
102
- }
103
- const unacceptedModules = updatedModules.filter(moduleId => {
104
- return renewedModules && renewedModules.indexOf(moduleId) < 0;
105
- });
106
- if (unacceptedModules.length) {
107
- console.warn(" \u24F5 [hmr] not every module was accepted - full reload needed", {
108
- unacceptedModules
109
- });
110
- this.app.reload();
111
- } else {
112
- console.info(" \u24F5 [hmr] renewed modules - app is up to date", {
113
- renewedModules
114
- });
115
- this.app.dismissErrors();
116
- }
117
- });
118
- });
119
- } catch (error) {
120
- if (module.hot?.status() === "fail" || module.hot?.status() === "abort") {
121
- console.warn(" \u24F5 [hmr] cannot check for update - full reload needed");
122
- console.warn("[hmr]", error);
123
- this.app.reload();
124
- } else {
125
- console.warn(" \u24F5 [hmr] update check failed", {
126
- error
127
- });
128
- }
129
- } finally {
130
- this.app.LoadingView.hide();
131
- }
132
- }
133
- }
2
+
3
+ var HMRClient = class {
4
+ constructor(app) {
5
+ this.app = app;
6
+ const port = process.env.REACT_NATIVE_SERVER_PUBLIC_PORT || 8081;
7
+ this.url = `ws://${getDevServerLocation().hostname}:${port}/__hmr?platform=${process.env.REACT_NATIVE_PLATFORM || "ios"}`;
8
+ this.socket = new WebSocket(this.url);
9
+ console.info(" ⓵ [hmr] connecting...");
10
+ this.socket.onopen = () => {
11
+ console.info(" ⓵ [hmr] connected");
12
+ };
13
+ this.socket.onclose = () => {
14
+ console.info(` \u24F5 [hmr] disconnected ${this.url}`);
15
+ };
16
+ this.socket.onerror = (event) => {
17
+ console.error(" ⓵ [hmr] error", event);
18
+ };
19
+ this.socket.onmessage = (event) => {
20
+ try {
21
+ const data = JSON.parse(event.data.toString());
22
+ this.processMessage(data);
23
+ } catch (error) {
24
+ console.warn(" ⓵ [hmr] invalid message", error);
25
+ }
26
+ };
27
+ }
28
+ app;
29
+ url;
30
+ socket;
31
+ lastHash = "";
32
+ upToDate(hash) {
33
+ if (hash) {
34
+ this.lastHash = hash;
35
+ }
36
+ return this.lastHash === __webpack_hash__;
37
+ }
38
+ processMessage(message) {
39
+ switch (message.action) {
40
+ case "building":
41
+ this.app.LoadingView.showMessage("Rebuilding...", "refresh");
42
+ console.info(" ⓵ [hmr] bundle rebuilding", { name: message.body?.name });
43
+ break;
44
+ case "built": console.info(" ⓵ [hmr] bundle rebuilt", {
45
+ name: message.body?.name,
46
+ time: message.body?.time
47
+ });
48
+ case "sync":
49
+ if (!message.body) {
50
+ console.warn(" ⓵ [hmr] message body is empty");
51
+ return;
52
+ }
53
+ if (message.body.errors?.length) {
54
+ message.body.errors.forEach((error) => {
55
+ console.error("Cannot apply update due to error:", error);
56
+ });
57
+ this.app.LoadingView.hide();
58
+ return;
59
+ }
60
+ if (message.body.warnings?.length) {
61
+ message.body.warnings.forEach((warning) => {
62
+ console.warn(" ⓵ [hmr] bundle contains warnings:", warning);
63
+ });
64
+ }
65
+ this.applyUpdate(message.body);
66
+ }
67
+ }
68
+ applyUpdate(update) {
69
+ if (!module.hot) {
70
+ throw new Error(" ⓵ [hmr] hot Module Replacement is disabled.");
71
+ }
72
+ if (!this.upToDate(update.hash) && module.hot.status() === "idle") {
73
+ console.info(" ⓵ [hmr] checking for updates on the server...");
74
+ this.checkUpdates(update);
75
+ }
76
+ }
77
+ checkUpdates(update) {
78
+ try {
79
+ this.app.LoadingView.showMessage("Refreshing...", "refresh");
80
+ module.hot?.check(false).then((updatedModules) => {
81
+ if (!updatedModules) {
82
+ console.warn(" ⓵ [hmr] cannot find update - full reload needed");
83
+ this.app.reload();
84
+ return;
85
+ }
86
+ module.hot?.apply({
87
+ ignoreDeclined: true,
88
+ ignoreUnaccepted: false,
89
+ ignoreErrored: false,
90
+ onDeclined: (data) => {
91
+ console.warn(" ⓵ [hmr] ignored an update due to declined module", { chain: data.chain });
92
+ }
93
+ }).then((renewedModules) => {
94
+ if (!this.upToDate()) {
95
+ this.checkUpdates(update);
96
+ }
97
+ const unacceptedModules = updatedModules.filter((moduleId) => {
98
+ return renewedModules && renewedModules.indexOf(moduleId) < 0;
99
+ });
100
+ if (unacceptedModules.length) {
101
+ console.warn(" ⓵ [hmr] not every module was accepted - full reload needed", { unacceptedModules });
102
+ this.app.reload();
103
+ } else {
104
+ console.info(" ⓵ [hmr] renewed modules - app is up to date", { renewedModules });
105
+ this.app.dismissErrors();
106
+ }
107
+ });
108
+ });
109
+ } catch (error) {
110
+ if (module.hot?.status() === "fail" || module.hot?.status() === "abort") {
111
+ console.warn(" ⓵ [hmr] cannot check for update - full reload needed");
112
+ console.warn("[hmr]", error);
113
+ this.app.reload();
114
+ } else {
115
+ console.warn(" ⓵ [hmr] update check failed", { error });
116
+ }
117
+ } finally {
118
+ this.app.LoadingView.hide();
119
+ }
120
+ }
121
+ };
134
122
  const loadHMRClient = () => {
135
- const {
136
- DevSettings,
137
- Platform
138
- } = require("react-native");
139
- const LoadingView = {
140
- showMessage: () => {},
141
- hide: () => {}
142
- };
143
- const reload = () => DevSettings.reload();
144
- const dismissErrors = () => {
145
- if (Platform.OS === "ios") {
146
- const NativeRedBox = require("react-native/Libraries/NativeModules/specs/NativeRedBox").default;
147
- NativeRedBox?.dismiss?.();
148
- } else {
149
- const NativeExceptionsManager = require("react-native/Libraries/Core/NativeExceptionsManager").default;
150
- NativeExceptionsManager?.dismissRedbox();
151
- }
152
- const LogBoxData = require("react-native/Libraries/LogBox/Data/LogBoxData");
153
- LogBoxData.clear();
154
- };
155
- new HMRClient({
156
- reload,
157
- dismissErrors,
158
- LoadingView
159
- });
123
+ const { DevSettings, Platform } = require("react-native");
124
+ const LoadingView = {
125
+ showMessage: () => {},
126
+ hide: () => {}
127
+ };
128
+ const reload = () => DevSettings.reload();
129
+ const dismissErrors = () => {
130
+ if (Platform.OS === "ios") {
131
+ const NativeRedBox = require("react-native/Libraries/NativeModules/specs/NativeRedBox").default;
132
+ NativeRedBox?.dismiss?.();
133
+ } else {
134
+ const NativeExceptionsManager = require("react-native/Libraries/Core/NativeExceptionsManager").default;
135
+ NativeExceptionsManager?.dismissRedbox();
136
+ }
137
+ const LogBoxData = require("react-native/Libraries/LogBox/Data/LogBoxData");
138
+ LogBoxData.clear();
139
+ };
140
+ new HMRClient({
141
+ reload,
142
+ dismissErrors,
143
+ LoadingView
144
+ });
160
145
  };
146
+
161
147
  export { loadHMRClient };
162
148
  //# sourceMappingURL=hmr-client.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["getDevServerLocation","HMRClient","constructor","app","port","process","env","REACT_NATIVE_SERVER_PUBLIC_PORT","url","hostname","REACT_NATIVE_PLATFORM","socket","WebSocket","console","info","onopen","onclose","onerror","event","error","onmessage","data","JSON","parse","toString","processMessage","warn","lastHash","upToDate","hash","__webpack_hash__","message","action","LoadingView","showMessage","name","body","time","errors","length","forEach","hide","warnings","warning","applyUpdate","update","module","hot","Error","status","checkUpdates","check","then","updatedModules","reload","apply","ignoreDeclined","ignoreUnaccepted","ignoreErrored","onDeclined","chain","renewedModules","unacceptedModules","filter","moduleId","indexOf","dismissErrors","loadHMRClient","DevSettings","Platform","require","OS","NativeRedBox","default","dismiss","NativeExceptionsManager","dismissRedbox","LogBoxData","clear"],"sources":["../../src/hmr-client.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"hmr-client.js","names":[],"sources":["esm/hmr-client.js"],"sourcesContent":["import { getDevServerLocation } from \"./getDevServerLocation\";\nclass HMRClient {\n constructor(app) {\n this.app = app;\n const port = process.env.REACT_NATIVE_SERVER_PUBLIC_PORT || 8081;\n this.url = `ws://${getDevServerLocation().hostname}:${port}/__hmr?platform=${process.env.REACT_NATIVE_PLATFORM || \"ios\"}`;\n this.socket = new WebSocket(this.url);\n console.info(\" \\u24F5 [hmr] connecting...\");\n this.socket.onopen = () => {\n console.info(\" \\u24F5 [hmr] connected\");\n };\n this.socket.onclose = () => {\n console.info(` \\u24F5 [hmr] disconnected ${this.url}`);\n };\n this.socket.onerror = (event) => {\n console.error(\" \\u24F5 [hmr] error\", event);\n };\n this.socket.onmessage = (event) => {\n try {\n const data = JSON.parse(event.data.toString());\n this.processMessage(data);\n } catch (error) {\n console.warn(\" \\u24F5 [hmr] invalid message\", error);\n }\n };\n }\n app;\n url;\n socket;\n lastHash = \"\";\n upToDate(hash) {\n if (hash) {\n this.lastHash = hash;\n }\n return this.lastHash === __webpack_hash__;\n }\n processMessage(message) {\n switch (message.action) {\n case \"building\":\n this.app.LoadingView.showMessage(\"Rebuilding...\", \"refresh\");\n console.info(\" \\u24F5 [hmr] bundle rebuilding\", {\n name: message.body?.name\n });\n break;\n // biome-ignore lint/suspicious/noFallthroughSwitchClause: <explanation>\n case \"built\":\n console.info(\" \\u24F5 [hmr] bundle rebuilt\", {\n name: message.body?.name,\n time: message.body?.time\n });\n // Fall through\n case \"sync\":\n if (!message.body) {\n console.warn(\" \\u24F5 [hmr] message body is empty\");\n return;\n }\n if (message.body.errors?.length) {\n message.body.errors.forEach((error) => {\n console.error(\"Cannot apply update due to error:\", error);\n });\n this.app.LoadingView.hide();\n return;\n }\n if (message.body.warnings?.length) {\n message.body.warnings.forEach((warning) => {\n console.warn(\" \\u24F5 [hmr] bundle contains warnings:\", warning);\n });\n }\n this.applyUpdate(message.body);\n }\n }\n applyUpdate(update) {\n if (!module.hot) {\n throw new Error(\" \\u24F5 [hmr] hot Module Replacement is disabled.\");\n }\n if (!this.upToDate(update.hash) && module.hot.status() === \"idle\") {\n console.info(\" \\u24F5 [hmr] checking for updates on the server...\");\n this.checkUpdates(update);\n }\n }\n checkUpdates(update) {\n try {\n this.app.LoadingView.showMessage(\"Refreshing...\", \"refresh\");\n module.hot?.check(false).then((updatedModules) => {\n if (!updatedModules) {\n console.warn(\" \\u24F5 [hmr] cannot find update - full reload needed\");\n this.app.reload();\n return;\n }\n module.hot?.apply({\n ignoreDeclined: true,\n ignoreUnaccepted: false,\n ignoreErrored: false,\n onDeclined: (data) => {\n console.warn(\" \\u24F5 [hmr] ignored an update due to declined module\", {\n chain: data.chain\n });\n }\n }).then((renewedModules) => {\n if (!this.upToDate()) {\n this.checkUpdates(update);\n }\n const unacceptedModules = updatedModules.filter((moduleId) => {\n return renewedModules && renewedModules.indexOf(moduleId) < 0;\n });\n if (unacceptedModules.length) {\n console.warn(\n \" \\u24F5 [hmr] not every module was accepted - full reload needed\",\n {\n unacceptedModules\n }\n );\n this.app.reload();\n } else {\n console.info(\" \\u24F5 [hmr] renewed modules - app is up to date\", {\n renewedModules\n });\n this.app.dismissErrors();\n }\n });\n });\n } catch (error) {\n if (module.hot?.status() === \"fail\" || module.hot?.status() === \"abort\") {\n console.warn(\" \\u24F5 [hmr] cannot check for update - full reload needed\");\n console.warn(\"[hmr]\", error);\n this.app.reload();\n } else {\n console.warn(\" \\u24F5 [hmr] update check failed\", { error });\n }\n } finally {\n this.app.LoadingView.hide();\n }\n }\n}\nconst loadHMRClient = () => {\n const { DevSettings, Platform } = require(\"react-native\");\n const LoadingView = {\n showMessage: () => {\n },\n hide: () => {\n }\n };\n const reload = () => DevSettings.reload();\n const dismissErrors = () => {\n if (Platform.OS === \"ios\") {\n const NativeRedBox = require(\"react-native/Libraries/NativeModules/specs/NativeRedBox\").default;\n NativeRedBox?.dismiss?.();\n } else {\n const NativeExceptionsManager = require(\"react-native/Libraries/Core/NativeExceptionsManager\").default;\n NativeExceptionsManager?.dismissRedbox();\n }\n const LogBoxData = require(\"react-native/Libraries/LogBox/Data/LogBoxData\");\n LogBoxData.clear();\n };\n new HMRClient({ reload, dismissErrors, LoadingView });\n};\nexport {\n loadHMRClient\n};\n//# sourceMappingURL=hmr-client.js.map\n"],"mappings":";;;;;;;;;;AACA,IAAM,YAAN,MAAgB;CACd,YAAY,KAAK;EACf,KAAK,MAAM;EACX,MAAM,OAAO,QAAQ,IAAI,mCAAmC;EAC5D,KAAK,MAAM,QAAQ,qBAAqB,CAAC,CAAC,SAAS,GAAG,KAAK,kBAAkB,QAAQ,IAAI,yBAAyB;EAClH,KAAK,SAAS,IAAI,UAAU,KAAK,GAAG;EACpC,QAAQ,KAAK,wBAA6B;EAC1C,KAAK,OAAO,eAAe;GACzB,QAAQ,KAAK,oBAAyB;EACxC;EACA,KAAK,OAAO,gBAAgB;GAC1B,QAAQ,KAAK,8BAA8B,KAAK,KAAK;EACvD;EACA,KAAK,OAAO,WAAW,UAAU;GAC/B,QAAQ,MAAM,kBAAuB,KAAK;EAC5C;EACA,KAAK,OAAO,aAAa,UAAU;GACjC,IAAI;IACF,MAAM,OAAO,KAAK,MAAM,MAAM,KAAK,SAAS,CAAC;IAC7C,KAAK,eAAe,IAAI;GAC1B,SAAS,OAAO;IACd,QAAQ,KAAK,4BAAiC,KAAK;GACrD;EACF;CACF;CACA;CACA;CACA;CACA,WAAW;CACX,SAAS,MAAM;EACb,IAAI,MAAM;GACR,KAAK,WAAW;EAClB;EACA,OAAO,KAAK,aAAa;CAC3B;CACA,eAAe,SAAS;EACtB,QAAQ,QAAQ,QAAhB;GACE,KAAK;IACH,KAAK,IAAI,YAAY,YAAY,iBAAiB,SAAS;IAC3D,QAAQ,KAAK,8BAAmC,EAC9C,MAAM,QAAQ,MAAM,KACtB,CAAC;IACD;GAEF,KAAK,SACH,QAAQ,KAAK,2BAAgC;IAC3C,MAAM,QAAQ,MAAM;IACpB,MAAM,QAAQ,MAAM;GACtB,CAAC;GAEH,KAAK;IACH,IAAI,CAAC,QAAQ,MAAM;KACjB,QAAQ,KAAK,gCAAqC;KAClD;IACF;IACA,IAAI,QAAQ,KAAK,QAAQ,QAAQ;KAC/B,QAAQ,KAAK,OAAO,SAAS,UAAU;MACrC,QAAQ,MAAM,qCAAqC,KAAK;KAC1D,CAAC;KACD,KAAK,IAAI,YAAY,KAAK;KAC1B;IACF;IACA,IAAI,QAAQ,KAAK,UAAU,QAAQ;KACjC,QAAQ,KAAK,SAAS,SAAS,YAAY;MACzC,QAAQ,KAAK,sCAA2C,OAAO;KACjE,CAAC;IACH;IACA,KAAK,YAAY,QAAQ,IAAI;EACjC;CACF;CACA,YAAY,QAAQ;EAClB,IAAI,CAAC,OAAO,KAAK;GACf,MAAM,IAAI,MAAM,8CAAmD;EACrE;EACA,IAAI,CAAC,KAAK,SAAS,OAAO,IAAI,KAAK,OAAO,IAAI,OAAO,MAAM,QAAQ;GACjE,QAAQ,KAAK,gDAAqD;GAClE,KAAK,aAAa,MAAM;EAC1B;CACF;CACA,aAAa,QAAQ;EACnB,IAAI;GACF,KAAK,IAAI,YAAY,YAAY,iBAAiB,SAAS;GAC3D,OAAO,KAAK,MAAM,KAAK,CAAC,CAAC,MAAM,mBAAmB;IAChD,IAAI,CAAC,gBAAgB;KACnB,QAAQ,KAAK,kDAAuD;KACpE,KAAK,IAAI,OAAO;KAChB;IACF;IACA,OAAO,KAAK,MAAM;KAChB,gBAAgB;KAChB,kBAAkB;KAClB,eAAe;KACf,aAAa,SAAS;MACpB,QAAQ,KAAK,qDAA0D,EACrE,OAAO,KAAK,MACd,CAAC;KACH;IACF,CAAC,CAAC,CAAC,MAAM,mBAAmB;KAC1B,IAAI,CAAC,KAAK,SAAS,GAAG;MACpB,KAAK,aAAa,MAAM;KAC1B;KACA,MAAM,oBAAoB,eAAe,QAAQ,aAAa;MAC5D,OAAO,kBAAkB,eAAe,QAAQ,QAAQ,IAAI;KAC9D,CAAC;KACD,IAAI,kBAAkB,QAAQ;MAC5B,QAAQ,KACN,+DACA,EACE,kBACF,CACF;MACA,KAAK,IAAI,OAAO;KAClB,OAAO;MACL,QAAQ,KAAK,gDAAqD,EAChE,eACF,CAAC;MACD,KAAK,IAAI,cAAc;KACzB;IACF,CAAC;GACH,CAAC;EACH,SAAS,OAAO;GACd,IAAI,OAAO,KAAK,OAAO,MAAM,UAAU,OAAO,KAAK,OAAO,MAAM,SAAS;IACvE,QAAQ,KAAK,uDAA4D;IACzE,QAAQ,KAAK,SAAS,KAAK;IAC3B,KAAK,IAAI,OAAO;GAClB,OAAO;IACL,QAAQ,KAAK,gCAAqC,EAAE,MAAM,CAAC;GAC7D;EACF,UAAU;GACR,KAAK,IAAI,YAAY,KAAK;EAC5B;CACF;AACF;AACA,MAAM,sBAAsB;CAC1B,MAAM,EAAE,aAAa,uBAAqB,cAAc;CACxD,MAAM,cAAc;EAClB,mBAAmB,CACnB;EACA,YAAY,CACZ;CACF;CACA,MAAM,eAAe,YAAY,OAAO;CACxC,MAAM,sBAAsB;EAC1B,IAAI,SAAS,OAAO,OAAO;GACzB,MAAM,yBAAuB,yDAAyD,CAAC,CAAC;GACxF,cAAc,UAAU;EAC1B,OAAO;GACL,MAAM,oCAAkC,qDAAqD,CAAC,CAAC;GAC/F,yBAAyB,cAAc;EACzC;EACA,MAAM,uBAAqB,+CAA+C;EAC1E,WAAW,MAAM;CACnB;CACA,IAAI,UAAU;EAAE;EAAQ;EAAe;CAAY,CAAC;AACtD"}