@vxrn/utils 2.0.0-beta.33.1 → 2.0.0-beta.46.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.
- package/dist/cjs/createMessageSocket.cjs +115 -121
- package/dist/cjs/createMessageSocket.native.cjs +166 -0
- package/dist/cjs/createMessageSocket.native.js +152 -166
- package/dist/cjs/createMessageSocket.native.js.map +1 -1
- package/dist/cjs/detectPackageManager.cjs +76 -72
- package/dist/cjs/detectPackageManager.native.cjs +106 -0
- package/dist/cjs/detectPackageManager.native.js +82 -77
- package/dist/cjs/detectPackageManager.native.js.map +1 -1
- package/dist/cjs/exec.cjs +43 -45
- package/dist/cjs/exec.native.cjs +65 -0
- package/dist/cjs/exec.native.js +48 -49
- package/dist/cjs/exec.native.js.map +1 -1
- package/dist/cjs/index.cjs +9 -11
- package/dist/cjs/index.native.cjs +25 -0
- package/dist/cjs/index.native.js +9 -10
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/mustReplace.cjs +27 -35
- package/dist/cjs/mustReplace.native.cjs +60 -0
- package/dist/cjs/mustReplace.native.js +44 -60
- package/dist/cjs/mustReplace.native.js.map +1 -1
- package/dist/esm/createMessageSocket.mjs +103 -103
- package/dist/esm/createMessageSocket.mjs.map +1 -1
- package/dist/esm/createMessageSocket.native.js +139 -148
- package/dist/esm/createMessageSocket.native.js.map +1 -1
- package/dist/esm/detectPackageManager.mjs +65 -55
- package/dist/esm/detectPackageManager.mjs.map +1 -1
- package/dist/esm/detectPackageManager.native.js +71 -61
- package/dist/esm/detectPackageManager.native.js.map +1 -1
- package/dist/esm/exec.mjs +29 -27
- package/dist/esm/exec.mjs.map +1 -1
- package/dist/esm/exec.native.js +34 -32
- package/dist/esm/exec.native.js.map +1 -1
- package/dist/esm/index.js +11 -7
- package/dist/esm/index.mjs +11 -7
- package/dist/esm/index.native.js +11 -7
- package/dist/esm/mustReplace.mjs +15 -17
- package/dist/esm/mustReplace.mjs.map +1 -1
- package/dist/esm/mustReplace.native.js +32 -43
- package/dist/esm/mustReplace.native.js.map +1 -1
- package/package.json +4 -4
- package/types/createMessageSocket.d.ts +1 -1
- package/types/createMessageSocket.d.ts.map +1 -1
- package/types/detectPackageManager.d.ts.map +1 -1
- package/types/exec.d.ts.map +1 -1
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/index.mjs.map +0 -1
- package/dist/esm/index.native.js.map +0 -1
|
@@ -5,178 +5,164 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
7
|
var __export = (target, all) => {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
12
|
};
|
|
13
13
|
var __copyProps = (to, from, except, desc) => {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
+
get: () => from[key],
|
|
17
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
21
|
};
|
|
22
|
-
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
23
|
-
value: true
|
|
24
|
-
}), mod);
|
|
22
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
25
23
|
var createMessageSocket_exports = {};
|
|
26
|
-
__export(createMessageSocket_exports, {
|
|
27
|
-
createMessageSocket: () => createMessageSocket
|
|
28
|
-
});
|
|
24
|
+
__export(createMessageSocket_exports, { createMessageSocket: () => createMessageSocket });
|
|
29
25
|
module.exports = __toCommonJS(createMessageSocket_exports);
|
|
30
26
|
var import_ws = require("ws");
|
|
31
|
-
function _type_of(obj) {
|
|
32
|
-
"@swc/helpers - typeof";
|
|
33
|
-
|
|
34
|
-
return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
|
|
35
|
-
}
|
|
36
27
|
function createMessageSocket() {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
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
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
} catch (unused) {}
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
});
|
|
179
|
-
});
|
|
180
|
-
return wss;
|
|
28
|
+
var PROTOCOL_VERSION = 2;
|
|
29
|
+
var wss = new import_ws.WebSocketServer({ noServer: true });
|
|
30
|
+
var clients = /* @__PURE__ */ new Map();
|
|
31
|
+
var nextClientId = 0;
|
|
32
|
+
function broadcast(broadcasterId, message) {
|
|
33
|
+
var forwarded = JSON.stringify({
|
|
34
|
+
version: PROTOCOL_VERSION,
|
|
35
|
+
method: message.method,
|
|
36
|
+
params: message.params
|
|
37
|
+
});
|
|
38
|
+
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
|
|
39
|
+
try {
|
|
40
|
+
for (var _iterator = clients[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
41
|
+
var [otherId, other] = _step.value;
|
|
42
|
+
if (otherId !== broadcasterId) {
|
|
43
|
+
try {
|
|
44
|
+
other.ws.send(forwarded);
|
|
45
|
+
} catch (unused) {}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
} catch (err) {
|
|
49
|
+
_didIteratorError = true;
|
|
50
|
+
_iteratorError = err;
|
|
51
|
+
} finally {
|
|
52
|
+
try {
|
|
53
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
54
|
+
_iterator.return();
|
|
55
|
+
}
|
|
56
|
+
} finally {
|
|
57
|
+
if (_didIteratorError) {
|
|
58
|
+
throw _iteratorError;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
wss.on("connection", function(clientWs, req) {
|
|
64
|
+
var clientId = `client#${nextClientId++}`;
|
|
65
|
+
var query = Object.fromEntries(new URL((req === null || req === void 0 ? void 0 : req.url) || "/", "http://localhost").searchParams);
|
|
66
|
+
clients.set(clientId, {
|
|
67
|
+
ws: clientWs,
|
|
68
|
+
query
|
|
69
|
+
});
|
|
70
|
+
var remove = function() {
|
|
71
|
+
return clients.delete(clientId);
|
|
72
|
+
};
|
|
73
|
+
clientWs.on("close", remove);
|
|
74
|
+
clientWs.on("error", remove);
|
|
75
|
+
clientWs.on("message", function(data, isBinary) {
|
|
76
|
+
if (isBinary) return;
|
|
77
|
+
var message;
|
|
78
|
+
try {
|
|
79
|
+
message = JSON.parse(data.toString());
|
|
80
|
+
} catch (unused) {
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
if ((message === null || message === void 0 ? void 0 : message.version) !== PROTOCOL_VERSION) return;
|
|
84
|
+
try {
|
|
85
|
+
var _message_id, _message_id1;
|
|
86
|
+
var isBroadcastMsg = typeof message.method === "string" && message.id === void 0 && message.target === void 0;
|
|
87
|
+
var isRequest = typeof message.method === "string" && typeof message.target === "string";
|
|
88
|
+
var isResponse = typeof message.id === "object" && ((_message_id = message.id) === null || _message_id === void 0 ? void 0 : _message_id.requestId) !== void 0 && typeof ((_message_id1 = message.id) === null || _message_id1 === void 0 ? void 0 : _message_id1.clientId) === "string" && (message.result !== void 0 || message.error !== void 0);
|
|
89
|
+
if (isBroadcastMsg) {
|
|
90
|
+
broadcast(clientId, message);
|
|
91
|
+
} else if (isRequest) {
|
|
92
|
+
if (message.target === "server") {
|
|
93
|
+
var result;
|
|
94
|
+
if (message.method === "getid") {
|
|
95
|
+
result = clientId;
|
|
96
|
+
} else if (message.method === "getpeers") {
|
|
97
|
+
var peers = {};
|
|
98
|
+
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
|
|
99
|
+
try {
|
|
100
|
+
for (var _iterator = clients[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
101
|
+
var [otherId, other] = _step.value;
|
|
102
|
+
if (otherId !== clientId) peers[otherId] = other.query;
|
|
103
|
+
}
|
|
104
|
+
} catch (err) {
|
|
105
|
+
_didIteratorError = true;
|
|
106
|
+
_iteratorError = err;
|
|
107
|
+
} finally {
|
|
108
|
+
try {
|
|
109
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
110
|
+
_iterator.return();
|
|
111
|
+
}
|
|
112
|
+
} finally {
|
|
113
|
+
if (_didIteratorError) {
|
|
114
|
+
throw _iteratorError;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
result = peers;
|
|
119
|
+
} else {
|
|
120
|
+
throw new Error(`unknown method: ${message.method}`);
|
|
121
|
+
}
|
|
122
|
+
clientWs.send(JSON.stringify({
|
|
123
|
+
version: PROTOCOL_VERSION,
|
|
124
|
+
result,
|
|
125
|
+
id: message.id
|
|
126
|
+
}));
|
|
127
|
+
} else {
|
|
128
|
+
var target = clients.get(message.target);
|
|
129
|
+
if (!target) {
|
|
130
|
+
throw new Error(`could not find id "${message.target}" while forwarding request`);
|
|
131
|
+
}
|
|
132
|
+
target.ws.send(JSON.stringify({
|
|
133
|
+
version: PROTOCOL_VERSION,
|
|
134
|
+
method: message.method,
|
|
135
|
+
params: message.params,
|
|
136
|
+
id: message.id === void 0 ? void 0 : {
|
|
137
|
+
requestId: message.id,
|
|
138
|
+
clientId
|
|
139
|
+
}
|
|
140
|
+
}));
|
|
141
|
+
}
|
|
142
|
+
} else if (isResponse) {
|
|
143
|
+
if (!message.id) return;
|
|
144
|
+
var target1 = clients.get(message.id.clientId);
|
|
145
|
+
target1 === null || target1 === void 0 ? void 0 : target1.ws.send(JSON.stringify({
|
|
146
|
+
version: PROTOCOL_VERSION,
|
|
147
|
+
result: message.result,
|
|
148
|
+
error: message.error,
|
|
149
|
+
id: message.id.requestId
|
|
150
|
+
}));
|
|
151
|
+
}
|
|
152
|
+
} catch (err) {
|
|
153
|
+
if (message.id !== void 0) {
|
|
154
|
+
try {
|
|
155
|
+
clientWs.send(JSON.stringify({
|
|
156
|
+
version: PROTOCOL_VERSION,
|
|
157
|
+
error: String(err),
|
|
158
|
+
id: message.id
|
|
159
|
+
}));
|
|
160
|
+
} catch (unused) {}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
});
|
|
164
|
+
});
|
|
165
|
+
return wss;
|
|
181
166
|
}
|
|
167
|
+
|
|
182
168
|
//# sourceMappingURL=createMessageSocket.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createMessageSocket_exports","__export","createMessageSocket","module","exports","import_ws","require","_type_of","obj","Symbol","constructor","PROTOCOL_VERSION","wss","WebSocketServer","noServer","clients","Map","nextClientId","broadcast","broadcasterId","message","forwarded","JSON","stringify","version","method","params","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","next","done","otherId","other","ws","send","unused","err","return","on","clientWs","req","clientId","query","Object","fromEntries","URL","url","searchParams","set","remove","delete","data","isBinary","parse","toString","_message_id","_message_id1","isBroadcastMsg","id","target","isRequest","isResponse","requestId","result","error","peers","Error"],"sources":["../../src/createMessageSocket.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"createMessageSocket.native.js","names":[],"sources":["cjs/createMessageSocket.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar createMessageSocket_exports = {};\n__export(createMessageSocket_exports, {\n createMessageSocket: () => createMessageSocket\n});\nmodule.exports = __toCommonJS(createMessageSocket_exports);\nvar import_ws = require(\"ws\");\nfunction createMessageSocket() {\n var PROTOCOL_VERSION = 2;\n var wss = new import_ws.WebSocketServer({\n noServer: true\n });\n var clients = /* @__PURE__ */ new Map();\n var nextClientId = 0;\n function broadcast(broadcasterId, message) {\n var forwarded = JSON.stringify({\n version: PROTOCOL_VERSION,\n method: message.method,\n params: message.params\n });\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = clients[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [otherId, other] = _step.value;\n if (otherId !== broadcasterId) {\n try {\n other.ws.send(forwarded);\n } catch (unused) {\n }\n }\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 }\n wss.on(\"connection\", function(clientWs, req) {\n var clientId = `client#${nextClientId++}`;\n var query = Object.fromEntries(new URL((req === null || req === void 0 ? void 0 : req.url) || \"/\", \"http://localhost\").searchParams);\n clients.set(clientId, {\n ws: clientWs,\n query\n });\n var remove = function() {\n return clients.delete(clientId);\n };\n clientWs.on(\"close\", remove);\n clientWs.on(\"error\", remove);\n clientWs.on(\"message\", function(data, isBinary) {\n if (isBinary) return;\n var message;\n try {\n message = JSON.parse(data.toString());\n } catch (unused) {\n return;\n }\n if ((message === null || message === void 0 ? void 0 : message.version) !== PROTOCOL_VERSION) return;\n try {\n var _message_id, _message_id1;\n var isBroadcastMsg = typeof message.method === \"string\" && message.id === void 0 && message.target === void 0;\n var isRequest = typeof message.method === \"string\" && typeof message.target === \"string\";\n var isResponse = typeof message.id === \"object\" && ((_message_id = message.id) === null || _message_id === void 0 ? void 0 : _message_id.requestId) !== void 0 && typeof ((_message_id1 = message.id) === null || _message_id1 === void 0 ? void 0 : _message_id1.clientId) === \"string\" && (message.result !== void 0 || message.error !== void 0);\n if (isBroadcastMsg) {\n broadcast(clientId, message);\n } else if (isRequest) {\n if (message.target === \"server\") {\n var result;\n if (message.method === \"getid\") {\n result = clientId;\n } else if (message.method === \"getpeers\") {\n var peers = {};\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = clients[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [otherId, other] = _step.value;\n if (otherId !== clientId) peers[otherId] = other.query;\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 result = peers;\n } else {\n throw new Error(`unknown method: ${message.method}`);\n }\n clientWs.send(JSON.stringify({\n version: PROTOCOL_VERSION,\n result,\n id: message.id\n }));\n } else {\n var target = clients.get(message.target);\n if (!target) {\n throw new Error(`could not find id \"${message.target}\" while forwarding request`);\n }\n target.ws.send(JSON.stringify({\n version: PROTOCOL_VERSION,\n method: message.method,\n params: message.params,\n id: message.id === void 0 ? void 0 : {\n requestId: message.id,\n clientId\n }\n }));\n }\n } else if (isResponse) {\n if (!message.id) return;\n var target1 = clients.get(message.id.clientId);\n target1 === null || target1 === void 0 ? void 0 : target1.ws.send(JSON.stringify({\n version: PROTOCOL_VERSION,\n result: message.result,\n error: message.error,\n id: message.id.requestId\n }));\n }\n } catch (err) {\n if (message.id !== void 0) {\n try {\n clientWs.send(JSON.stringify({\n version: PROTOCOL_VERSION,\n error: String(err),\n id: message.id\n }));\n } catch (unused) {\n }\n }\n }\n });\n });\n return wss;\n}\n//# sourceMappingURL=createMessageSocket.js.map\n"],"mappings":"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"}
|
|
@@ -3,91 +3,95 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
5
|
var __export = (target, all) => {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
for (var name in all) __defProp(target, name, {
|
|
7
|
+
get: all[name],
|
|
8
|
+
enumerable: true
|
|
9
|
+
});
|
|
10
10
|
};
|
|
11
11
|
var __copyProps = (to, from, except, desc) => {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
14
|
+
get: () => from[key],
|
|
15
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
19
|
};
|
|
20
|
-
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
21
|
-
value: true
|
|
22
|
-
}), mod);
|
|
20
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
23
21
|
var detectPackageManager_exports = {};
|
|
24
|
-
__export(detectPackageManager_exports, {
|
|
25
|
-
detectPackageManager: () => detectPackageManager
|
|
26
|
-
});
|
|
22
|
+
__export(detectPackageManager_exports, { detectPackageManager: () => detectPackageManager });
|
|
27
23
|
module.exports = __toCommonJS(detectPackageManager_exports);
|
|
28
24
|
var import_node_fs = require("node:fs");
|
|
29
25
|
var import_node_path = require("node:path");
|
|
30
26
|
var import_exec = require("./exec.cjs");
|
|
31
27
|
async function pathExists(p) {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
28
|
+
try {
|
|
29
|
+
await import_node_fs.promises.access(p);
|
|
30
|
+
return true;
|
|
31
|
+
} catch {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
38
34
|
}
|
|
39
35
|
async function hasGlobal(pm) {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
36
|
+
try {
|
|
37
|
+
const command = process.platform === "win32" ? `where ${pm}` : `which ${pm}`;
|
|
38
|
+
const res = (0, import_exec.exec)(command);
|
|
39
|
+
return !!res.length;
|
|
40
|
+
} catch {
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
47
43
|
}
|
|
48
44
|
async function getFromLockfile(cwd = ".") {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
45
|
+
const [yarn, npm, pnpm, bun] = await Promise.all([
|
|
46
|
+
pathExists((0, import_node_path.resolve)(cwd, "yarn.lock")),
|
|
47
|
+
pathExists((0, import_node_path.resolve)(cwd, "package-lock.json")),
|
|
48
|
+
pathExists((0, import_node_path.resolve)(cwd, "pnpm-lock.yaml")),
|
|
49
|
+
pathExists((0, import_node_path.resolve)(cwd, "bun.lockb"))
|
|
50
|
+
]);
|
|
51
|
+
return {
|
|
52
|
+
bun,
|
|
53
|
+
yarn,
|
|
54
|
+
pnpm,
|
|
55
|
+
npm
|
|
56
|
+
};
|
|
56
57
|
}
|
|
57
58
|
async function getFromPackage(cwd = ".") {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
59
|
+
if (await pathExists((0, import_node_path.resolve)(cwd, "package.json"))) {
|
|
60
|
+
const json = JSON.parse(await import_node_fs.promises.readFile((0, import_node_path.resolve)(cwd, "package.json"), "utf-8"));
|
|
61
|
+
if (json.packageManager) {
|
|
62
|
+
const yarn = !!json.packageManager.startsWith("yarn");
|
|
63
|
+
const pnpm = !!json.packageManager.startsWith("pnpm");
|
|
64
|
+
const bun = !!json.packageManager.startsWith("bun");
|
|
65
|
+
const npm = !!json.packageManager.startsWith("npm");
|
|
66
|
+
return {
|
|
67
|
+
bun,
|
|
68
|
+
yarn,
|
|
69
|
+
pnpm,
|
|
70
|
+
npm
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
}
|
|
73
74
|
}
|
|
74
|
-
const foundSome = obj => Object.keys(obj).some(k => !!obj[k]);
|
|
75
|
-
const detectPackageManager = async ({
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
75
|
+
const foundSome = (obj) => Object.keys(obj).some((k) => !!obj[k]);
|
|
76
|
+
const detectPackageManager = async ({ cwd } = {}) => {
|
|
77
|
+
const fromLockfile = await getFromLockfile(cwd);
|
|
78
|
+
if (foundSome(fromLockfile)) {
|
|
79
|
+
return fromLockfile;
|
|
80
|
+
}
|
|
81
|
+
const fromPackageJson = await getFromPackage(cwd);
|
|
82
|
+
if (fromPackageJson && foundSome(fromPackageJson)) {
|
|
83
|
+
return fromPackageJson;
|
|
84
|
+
}
|
|
85
|
+
const [npm, yarn, pnpm, bun] = await Promise.all([
|
|
86
|
+
hasGlobal("npm"),
|
|
87
|
+
hasGlobal("yarn"),
|
|
88
|
+
hasGlobal("pnpm"),
|
|
89
|
+
hasGlobal("bun")
|
|
90
|
+
]);
|
|
91
|
+
return {
|
|
92
|
+
bun,
|
|
93
|
+
yarn,
|
|
94
|
+
pnpm,
|
|
95
|
+
npm
|
|
96
|
+
};
|
|
97
|
+
};
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
+
get: () => from[key],
|
|
17
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
23
|
+
var detectPackageManager_exports = {};
|
|
24
|
+
__export(detectPackageManager_exports, { detectPackageManager: () => detectPackageManager });
|
|
25
|
+
module.exports = __toCommonJS(detectPackageManager_exports);
|
|
26
|
+
var import_fs = require("fs");
|
|
27
|
+
var import_path = require("path");
|
|
28
|
+
var import_exec = require("./exec.native.js");
|
|
29
|
+
async function pathExists(p) {
|
|
30
|
+
try {
|
|
31
|
+
await import_fs.promises.access(p);
|
|
32
|
+
return true;
|
|
33
|
+
} catch (unused) {
|
|
34
|
+
return false;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
async function hasGlobal(pm) {
|
|
38
|
+
try {
|
|
39
|
+
var command = process.platform === "win32" ? `where ${pm}` : `which ${pm}`;
|
|
40
|
+
var res = (0, import_exec.exec)(command);
|
|
41
|
+
return !!res.length;
|
|
42
|
+
} catch (unused) {
|
|
43
|
+
return false;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
async function getFromLockfile() {
|
|
47
|
+
var cwd = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : ".";
|
|
48
|
+
var [yarn, npm, pnpm, bun] = await Promise.all([
|
|
49
|
+
pathExists((0, import_path.resolve)(cwd, "yarn.lock")),
|
|
50
|
+
pathExists((0, import_path.resolve)(cwd, "package-lock.json")),
|
|
51
|
+
pathExists((0, import_path.resolve)(cwd, "pnpm-lock.yaml")),
|
|
52
|
+
pathExists((0, import_path.resolve)(cwd, "bun.lockb"))
|
|
53
|
+
]);
|
|
54
|
+
return {
|
|
55
|
+
bun,
|
|
56
|
+
yarn,
|
|
57
|
+
pnpm,
|
|
58
|
+
npm
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
async function getFromPackage() {
|
|
62
|
+
var cwd = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : ".";
|
|
63
|
+
if (await pathExists((0, import_path.resolve)(cwd, "package.json"))) {
|
|
64
|
+
var json = JSON.parse(await import_fs.promises.readFile((0, import_path.resolve)(cwd, "package.json"), "utf-8"));
|
|
65
|
+
if (json.packageManager) {
|
|
66
|
+
var yarn = !!json.packageManager.startsWith("yarn");
|
|
67
|
+
var pnpm = !!json.packageManager.startsWith("pnpm");
|
|
68
|
+
var bun = !!json.packageManager.startsWith("bun");
|
|
69
|
+
var npm = !!json.packageManager.startsWith("npm");
|
|
70
|
+
return {
|
|
71
|
+
bun,
|
|
72
|
+
yarn,
|
|
73
|
+
pnpm,
|
|
74
|
+
npm
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
var foundSome = function(obj) {
|
|
80
|
+
return Object.keys(obj).some(function(k) {
|
|
81
|
+
return !!obj[k];
|
|
82
|
+
});
|
|
83
|
+
};
|
|
84
|
+
var detectPackageManager = async function() {
|
|
85
|
+
var { cwd } = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
86
|
+
var fromLockfile = await getFromLockfile(cwd);
|
|
87
|
+
if (foundSome(fromLockfile)) {
|
|
88
|
+
return fromLockfile;
|
|
89
|
+
}
|
|
90
|
+
var fromPackageJson = await getFromPackage(cwd);
|
|
91
|
+
if (fromPackageJson && foundSome(fromPackageJson)) {
|
|
92
|
+
return fromPackageJson;
|
|
93
|
+
}
|
|
94
|
+
var [npm, yarn, pnpm, bun] = await Promise.all([
|
|
95
|
+
hasGlobal("npm"),
|
|
96
|
+
hasGlobal("yarn"),
|
|
97
|
+
hasGlobal("pnpm"),
|
|
98
|
+
hasGlobal("bun")
|
|
99
|
+
]);
|
|
100
|
+
return {
|
|
101
|
+
bun,
|
|
102
|
+
yarn,
|
|
103
|
+
pnpm,
|
|
104
|
+
npm
|
|
105
|
+
};
|
|
106
|
+
};
|