@scrypted/server 0.102.0 → 0.103.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.
@@ -46,7 +46,7 @@ function httpFetchParseIncomingMessage(readable, responseType) {
46
46
  }
47
47
  exports.httpFetchParseIncomingMessage = httpFetchParseIncomingMessage;
48
48
  async function httpFetch(options) {
49
- const headers = new Headers(options.headers);
49
+ const headers = (0, _1.createHeadersArray)(options.headers);
50
50
  (0, _1.setDefaultHttpFetchAccept)(headers, options.responseType);
51
51
  const { once } = require('events');
52
52
  const { PassThrough, Readable } = require('stream');
@@ -61,15 +61,6 @@ async function httpFetch(options) {
61
61
  newBody.end();
62
62
  body = newBody;
63
63
  }
64
- const nodeHeaders = {};
65
- for (const [k, v] of headers) {
66
- if (nodeHeaders[k]) {
67
- nodeHeaders[k].push(v);
68
- }
69
- else {
70
- nodeHeaders[k] = [v];
71
- }
72
- }
73
64
  let controller;
74
65
  let timeout;
75
66
  if (options.timeout) {
@@ -79,6 +70,15 @@ async function httpFetch(options) {
79
70
  }
80
71
  const signal = controller?.signal || options.signal;
81
72
  signal?.addEventListener('abort', () => request.destroy(new Error('abort')));
73
+ const nodeHeaders = {};
74
+ for (const [k, v] of headers) {
75
+ if (nodeHeaders[k]) {
76
+ nodeHeaders[k].push(v);
77
+ }
78
+ else {
79
+ nodeHeaders[k] = [v];
80
+ }
81
+ }
82
82
  const request = proto.request(url, {
83
83
  method: (0, _1.getFetchMethod)(options),
84
84
  rejectUnauthorized: options.rejectUnauthorized,
@@ -1 +1 @@
1
- {"version":3,"file":"http-fetch.js","sourceRoot":"","sources":["../../src/fetch/http-fetch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-fetch.js","sourceRoot":"","sources":["../../src/fetch/http-fetch.ts"],"names":[],"mappings":"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"}
@@ -38,7 +38,17 @@ export interface HttpFetchResponse<T> {
38
38
  }
39
39
  export type fetcher<B, M> = <T extends HttpFetchOptions<B>>(options: T) => Promise<HttpFetchResponse<T extends HttpFetchBufferOptions<B> ? Buffer : T extends HttpFetchTextOptions<B> ? string : T extends HttpFetchReadableOptions<B> ? M : T extends HttpFetchJsonOptions<B> ? any : Buffer>>;
40
40
  export declare function getHttpFetchAccept(responseType: HttpFetchResponseType): "application/json" | "text/plain";
41
- export declare function setDefaultHttpFetchAccept(headers: Headers, responseType: HttpFetchResponseType): void;
42
- export declare function createStringOrBufferBody(headers: Headers, body: any): any;
41
+ export declare function hasHeader(headers: [string, string][], key: string): [string, string];
42
+ export declare function removeHeader(headers: [string, string][], key: string): void;
43
+ export declare function setHeader(headers: [string, string][], key: string, value: string): void;
44
+ export declare function setDefaultHttpFetchAccept(headers: [string, string][], responseType: HttpFetchResponseType): void;
45
+ export declare function createHeadersArray(headers: HeadersInit): [string, string][];
46
+ /**
47
+ *
48
+ * @param headers
49
+ * @param body
50
+ * @returns Returns the body and Content-Type header that was set.
51
+ */
52
+ export declare function createStringOrBufferBody(headers: [string, string][], body: any): any;
43
53
  export declare function domFetchParseIncomingMessage(response: Response, responseType: HttpFetchResponseType): Promise<any>;
44
54
  export declare function domFetch<T extends HttpFetchOptions<BodyInit>>(options: T): Promise<HttpFetchResponse<T extends HttpFetchBufferOptions<BodyInit> ? Buffer : T extends HttpFetchTextOptions<BodyInit> ? string : T extends HttpFetchReadableOptions<BodyInit> ? Response : T extends HttpFetchJsonOptions<BodyInit> ? any : Buffer>>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.domFetch = exports.domFetchParseIncomingMessage = exports.createStringOrBufferBody = exports.setDefaultHttpFetchAccept = exports.getHttpFetchAccept = exports.getFetchMethod = exports.checkStatus = exports.fetchStatusCodeOk = void 0;
3
+ exports.domFetch = exports.domFetchParseIncomingMessage = exports.createStringOrBufferBody = exports.createHeadersArray = exports.setDefaultHttpFetchAccept = exports.setHeader = exports.removeHeader = exports.hasHeader = exports.getHttpFetchAccept = exports.getFetchMethod = exports.checkStatus = exports.fetchStatusCodeOk = void 0;
4
4
  function fetchStatusCodeOk(statusCode) {
5
5
  return statusCode >= 200 && statusCode <= 299;
6
6
  }
@@ -25,14 +25,60 @@ function getHttpFetchAccept(responseType) {
25
25
  return;
26
26
  }
27
27
  exports.getHttpFetchAccept = getHttpFetchAccept;
28
+ function hasHeader(headers, key) {
29
+ key = key.toLowerCase();
30
+ return headers.find(([k]) => k.toLowerCase() === key);
31
+ }
32
+ exports.hasHeader = hasHeader;
33
+ function removeHeader(headers, key) {
34
+ key = key.toLowerCase();
35
+ const filteredHeaders = headers.filter(([headerKey, _]) => headerKey.toLowerCase() !== key);
36
+ headers.length = 0;
37
+ filteredHeaders.forEach(header => headers.push(header));
38
+ }
39
+ exports.removeHeader = removeHeader;
40
+ function setHeader(headers, key, value) {
41
+ removeHeader(headers, key);
42
+ headers.push([key, value]);
43
+ }
44
+ exports.setHeader = setHeader;
28
45
  function setDefaultHttpFetchAccept(headers, responseType) {
29
- if (headers.has('Accept'))
46
+ if (hasHeader(headers, 'Accept'))
30
47
  return;
31
48
  const accept = getHttpFetchAccept(responseType);
32
49
  if (accept)
33
- headers.set('Accept', accept);
50
+ setHeader(headers, 'Accept', accept);
34
51
  }
35
52
  exports.setDefaultHttpFetchAccept = setDefaultHttpFetchAccept;
53
+ function createHeadersArray(headers) {
54
+ const headersArray = [];
55
+ if (!headers)
56
+ return headersArray;
57
+ if (headers instanceof Headers) {
58
+ for (const [k, v] of headers.entries()) {
59
+ headersArray.push([k, v]);
60
+ }
61
+ return headersArray;
62
+ }
63
+ if (headers instanceof Array) {
64
+ for (const [k, v] of headers) {
65
+ headersArray.push([k, v]);
66
+ }
67
+ return headersArray;
68
+ }
69
+ for (const k of Object.keys(headers)) {
70
+ const v = headers[k];
71
+ headersArray.push([k, v]);
72
+ }
73
+ return headersArray;
74
+ }
75
+ exports.createHeadersArray = createHeadersArray;
76
+ /**
77
+ *
78
+ * @param headers
79
+ * @param body
80
+ * @returns Returns the body and Content-Type header that was set.
81
+ */
36
82
  function createStringOrBufferBody(headers, body) {
37
83
  let contentType;
38
84
  if (typeof body === 'object') {
@@ -42,8 +88,8 @@ function createStringOrBufferBody(headers, body) {
42
88
  else if (typeof body === 'string') {
43
89
  contentType = 'text/plain';
44
90
  }
45
- if (!headers.has('Content-Type'))
46
- headers.set('Content-Type', contentType);
91
+ if (!hasHeader(headers, 'Content-Type'))
92
+ setHeader(headers, 'Content-Type', contentType);
47
93
  return body;
48
94
  }
49
95
  exports.createStringOrBufferBody = createStringOrBufferBody;
@@ -60,7 +106,7 @@ async function domFetchParseIncomingMessage(response, responseType) {
60
106
  }
61
107
  exports.domFetchParseIncomingMessage = domFetchParseIncomingMessage;
62
108
  async function domFetch(options) {
63
- const headers = new Headers(options.headers);
109
+ const headers = createHeadersArray(options.headers);
64
110
  setDefaultHttpFetchAccept(headers, options.responseType);
65
111
  let { body } = options;
66
112
  if (body && !(body instanceof ReadableStream)) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fetch/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fetch/index.ts"],"names":[],"mappings":"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"}
@@ -92,6 +92,7 @@ class PythonRuntimeWorker extends child_process_worker_1.ChildProcessWorker {
92
92
  PYTHONPATH,
93
93
  }, gstEnv, process.env, env),
94
94
  });
95
+ this.setupWorker();
95
96
  this.worker.stdout.pipe(this.stdout);
96
97
  this.worker.stderr.pipe(this.stderr);
97
98
  };
@@ -103,7 +104,6 @@ class PythonRuntimeWorker extends child_process_worker_1.ChildProcessWorker {
103
104
  setup();
104
105
  this.peerin = this.worker.stdio[3];
105
106
  this.peerout = this.worker.stdio[4];
106
- this.setupWorker();
107
107
  return;
108
108
  }
109
109
  const strippedPythonVersion = pluginPythonVersion.replace('.', '');
@@ -113,7 +113,6 @@ class PythonRuntimeWorker extends child_process_worker_1.ChildProcessWorker {
113
113
  setup();
114
114
  this.peerin = this.worker.stdio[3];
115
115
  this.peerout = this.worker.stdio[4];
116
- this.setupWorker();
117
116
  return;
118
117
  }
119
118
  const peerin = this.peerin = new stream_1.PassThrough();
@@ -1 +1 @@
1
- {"version":3,"file":"python-worker.js","sourceRoot":"","sources":["../../../src/plugin/runtime/python-worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"python-worker.js","sourceRoot":"","sources":["../../../src/plugin/runtime/python-worker.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,7 @@ export declare class PluginComponent {
28
28
  }>;
29
29
  getPluginInfo(pluginId: string): Promise<{
30
30
  pid: number;
31
+ clientsCount: number;
31
32
  stats: {
32
33
  cpuUsage: NodeJS.CpuUsage;
33
34
  memoryUsage: NodeJS.MemoryUsage;
@@ -40,6 +41,7 @@ export declare class PluginComponent {
40
41
  };
41
42
  id: string;
42
43
  }>;
44
+ disconnectClients(pluginId: string): Promise<void>;
43
45
  installNpm(pkg: string, version?: string): Promise<void>;
44
46
  npmInfo(endpoint: string): Promise<any>;
45
47
  updatePlugins(): Promise<void>;
@@ -7,10 +7,10 @@ exports.PluginComponent = exports.getNpmPackageInfo = void 0;
7
7
  const types_1 = require("@scrypted/types");
8
8
  const semver_1 = __importDefault(require("semver"));
9
9
  const db_types_1 = require("../db-types");
10
+ const http_fetch_1 = require("../fetch/http-fetch");
10
11
  const mixin_cycle_1 = require("../mixin/mixin-cycle");
11
12
  const sleep_1 = require("../sleep");
12
13
  const state_1 = require("../state");
13
- const http_fetch_1 = require("../fetch/http-fetch");
14
14
  async function getNpmPackageInfo(pkg) {
15
15
  const { body } = await (0, http_fetch_1.httpFetch)({
16
16
  url: `https://registry.npmjs.org/${pkg}`,
@@ -112,6 +112,7 @@ class PluginComponent {
112
112
  }
113
113
  return {
114
114
  pid: host?.worker?.pid,
115
+ clientsCount: host?.io?.clientsCount,
115
116
  stats: host?.stats,
116
117
  rpcObjects,
117
118
  packageJson,
@@ -120,6 +121,15 @@ class PluginComponent {
120
121
  id: this.scrypted.findPluginDevice(pluginId)._id,
121
122
  };
122
123
  }
124
+ async disconnectClients(pluginId) {
125
+ const host = this.scrypted.plugins[pluginId];
126
+ if (!host)
127
+ return;
128
+ const { clients } = host.io;
129
+ for (const client of Object.values(clients)) {
130
+ client.close();
131
+ }
132
+ }
123
133
  async installNpm(pkg, version) {
124
134
  await this.scrypted.installNpm(pkg, version);
125
135
  }
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/services/plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/services/plugin.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scrypted/server",
3
- "version": "0.102.0",
3
+ "version": "0.103.1",
4
4
  "description": "",
5
5
  "dependencies": {
6
6
  "@mapbox/node-pre-gyp": "^1.0.11",
@@ -23,7 +23,7 @@
23
23
  "node-gyp": "^10.1.0",
24
24
  "py": "npm:@bjia56/portable-python@^0.1.31",
25
25
  "router": "^1.3.8",
26
- "semver": "^7.6.0",
26
+ "semver": "^7.6.2",
27
27
  "sharp": "^0.33.3",
28
28
  "source-map-support": "^0.5.21",
29
29
  "tar": "^7.1.0",
@@ -45,10 +45,8 @@
45
45
  "@types/semver": "^7.5.8",
46
46
  "@types/source-map-support": "^0.5.10",
47
47
  "@types/whatwg-mimetype": "^3.0.2",
48
- "@types/ws": "^8.5.10"
49
- },
50
- "optionalDependencies": {
51
- "@scrypted/node-pty": "^1.0.9"
48
+ "@types/ws": "^8.5.10",
49
+ "@scrypted/node-pty": "^1.0.10"
52
50
  },
53
51
  "bin": {
54
52
  "scrypted-serve": "bin/scrypted-serve"
@@ -1,9 +1,9 @@
1
1
  import type events from 'events';
2
- import type stream from 'stream';
3
2
  import type followRedirects from 'follow-redirects';
4
3
  import type { IncomingMessage } from 'http';
4
+ import type stream from 'stream';
5
5
  import type { Readable } from 'stream';
6
- import { HttpFetchBufferOptions, HttpFetchJsonOptions, HttpFetchOptions, HttpFetchReadableOptions, HttpFetchResponse, HttpFetchResponseType, HttpFetchTextOptions, checkStatus, createStringOrBufferBody, getFetchMethod, setDefaultHttpFetchAccept } from '.';
6
+ import { HttpFetchBufferOptions, HttpFetchJsonOptions, HttpFetchOptions, HttpFetchReadableOptions, HttpFetchResponse, HttpFetchResponseType, HttpFetchTextOptions, checkStatus, createHeadersArray, createStringOrBufferBody, getFetchMethod, setDefaultHttpFetchAccept } from '.';
7
7
  export type { HttpFetchBufferOptions, HttpFetchJsonOptions, HttpFetchOptions, HttpFetchReadableOptions, HttpFetchResponse, HttpFetchResponseType, HttpFetchTextOptions, checkStatus, setDefaultHttpFetchAccept } from '.';
8
8
 
9
9
  async function readMessageBuffer(response: IncomingMessage) {
@@ -64,7 +64,7 @@ export async function httpFetch<T extends HttpFetchOptions<Readable>>(options: T
64
64
  : T extends HttpFetchReadableOptions<Readable> ? IncomingMessage
65
65
  : T extends HttpFetchJsonOptions<Readable> ? any : Buffer
66
66
  >> {
67
- const headers = new Headers(options.headers);
67
+ const headers = createHeadersArray(options.headers);
68
68
  setDefaultHttpFetchAccept(headers, options.responseType);
69
69
 
70
70
  const { once } = require('events') as typeof events;
@@ -83,16 +83,6 @@ export async function httpFetch<T extends HttpFetchOptions<Readable>>(options: T
83
83
  body = newBody;
84
84
  }
85
85
 
86
- const nodeHeaders: Record<string, string[]> = {};
87
- for (const [k, v] of headers) {
88
- if (nodeHeaders[k]) {
89
- nodeHeaders[k].push(v);
90
- }
91
- else {
92
- nodeHeaders[k] = [v];
93
- }
94
- }
95
-
96
86
  let controller: AbortController;
97
87
  let timeout: NodeJS.Timeout;
98
88
  if (options.timeout) {
@@ -105,6 +95,16 @@ export async function httpFetch<T extends HttpFetchOptions<Readable>>(options: T
105
95
  const signal = controller?.signal || options.signal;
106
96
  signal?.addEventListener('abort', () => request.destroy(new Error('abort')));
107
97
 
98
+ const nodeHeaders: Record<string, string[]> = {};
99
+ for (const [k, v] of headers) {
100
+ if (nodeHeaders[k]) {
101
+ nodeHeaders[k].push(v);
102
+ }
103
+ else {
104
+ nodeHeaders[k] = [v];
105
+ }
106
+ }
107
+
108
108
  const request = proto.request(url, {
109
109
  method: getFetchMethod(options),
110
110
  rejectUnauthorized: options.rejectUnauthorized,
@@ -1,4 +1,3 @@
1
-
2
1
  export type HttpFetchResponseType = 'json' | 'text' | 'buffer' | 'readable';
3
2
  export interface HttpFetchOptionsBase<B> {
4
3
  url: string | URL;
@@ -73,15 +72,64 @@ export function getHttpFetchAccept(responseType: HttpFetchResponseType) {
73
72
  return;
74
73
  }
75
74
 
76
- export function setDefaultHttpFetchAccept(headers: Headers, responseType: HttpFetchResponseType) {
77
- if (headers.has('Accept'))
75
+ export function hasHeader(headers: [string, string][], key: string) {
76
+ key = key.toLowerCase();
77
+ return headers.find(([k]) => k.toLowerCase() === key);
78
+ }
79
+
80
+ export function removeHeader(headers: [string, string][], key: string) {
81
+ key = key.toLowerCase();
82
+ const filteredHeaders = headers.filter(([headerKey, _]) => headerKey.toLowerCase() !== key);
83
+ headers.length = 0;
84
+ filteredHeaders.forEach(header => headers.push(header));
85
+ }
86
+
87
+ export function setHeader(headers: [string, string][], key: string, value: string) {
88
+ removeHeader(headers, key);
89
+ headers.push([key, value]);
90
+ }
91
+
92
+ export function setDefaultHttpFetchAccept(headers: [string, string][], responseType: HttpFetchResponseType) {
93
+ if (hasHeader(headers, 'Accept'))
78
94
  return;
79
95
  const accept = getHttpFetchAccept(responseType);
80
96
  if (accept)
81
- headers.set('Accept', accept);
97
+ setHeader(headers, 'Accept', accept);
98
+ }
99
+
100
+ export function createHeadersArray(headers: HeadersInit): [string, string][] {
101
+ const headersArray: [string, string][] = [];
102
+ if (!headers)
103
+ return headersArray;
104
+ if (headers instanceof Headers) {
105
+ for (const [k, v] of headers.entries()) {
106
+ headersArray.push([k, v]);
107
+ }
108
+ return headersArray;
109
+ }
110
+
111
+ if (headers instanceof Array) {
112
+ for (const [k, v] of headers) {
113
+ headersArray.push([k, v]);
114
+ }
115
+ return headersArray;
116
+ }
117
+
118
+ for (const k of Object.keys(headers)) {
119
+ const v = headers[k];
120
+ headersArray.push([k, v]);
121
+ }
122
+
123
+ return headersArray;
82
124
  }
83
125
 
84
- export function createStringOrBufferBody(headers: Headers, body: any) {
126
+ /**
127
+ *
128
+ * @param headers
129
+ * @param body
130
+ * @returns Returns the body and Content-Type header that was set.
131
+ */
132
+ export function createStringOrBufferBody(headers: [string, string][], body: any) {
85
133
  let contentType: string;
86
134
  if (typeof body === 'object') {
87
135
  body = JSON.stringify(body);
@@ -91,9 +139,8 @@ export function createStringOrBufferBody(headers: Headers, body: any) {
91
139
  contentType = 'text/plain';
92
140
  }
93
141
 
94
- if (!headers.has('Content-Type'))
95
- headers.set('Content-Type', contentType);
96
-
142
+ if (!hasHeader(headers, 'Content-Type'))
143
+ setHeader(headers, 'Content-Type', contentType);
97
144
  return body;
98
145
  }
99
146
 
@@ -116,7 +163,7 @@ export async function domFetch<T extends HttpFetchOptions<BodyInit>>(options: T)
116
163
  : T extends HttpFetchReadableOptions<BodyInit> ? Response
117
164
  : T extends HttpFetchJsonOptions<BodyInit> ? any : Buffer
118
165
  >> {
119
- const headers = new Headers(options.headers);
166
+ const headers = createHeadersArray(options.headers);
120
167
  setDefaultHttpFetchAccept(headers, options.responseType);
121
168
 
122
169
  let { body } = options;
@@ -110,6 +110,7 @@ export class PythonRuntimeWorker extends ChildProcessWorker {
110
110
  PYTHONPATH,
111
111
  }, gstEnv, process.env, env),
112
112
  });
113
+ this.setupWorker();
113
114
 
114
115
  this.worker.stdout.pipe(this.stdout);
115
116
  this.worker.stderr.pipe(this.stderr);
@@ -124,7 +125,6 @@ export class PythonRuntimeWorker extends ChildProcessWorker {
124
125
  setup();
125
126
  this.peerin = this.worker.stdio[3] as Writable;
126
127
  this.peerout = this.worker.stdio[4] as Readable;
127
- this.setupWorker();
128
128
  return;
129
129
  }
130
130
 
@@ -135,7 +135,6 @@ export class PythonRuntimeWorker extends ChildProcessWorker {
135
135
  setup();
136
136
  this.peerin = this.worker.stdio[3] as Writable;
137
137
  this.peerout = this.worker.stdio[4] as Readable;
138
- this.setupWorker();
139
138
  return;
140
139
  }
141
140
 
@@ -1,11 +1,11 @@
1
1
  import { ScryptedInterfaceProperty, ScryptedNativeId } from "@scrypted/types";
2
2
  import semver from 'semver';
3
3
  import { Plugin } from '../db-types';
4
+ import { httpFetch } from "../fetch/http-fetch";
4
5
  import { hasMixinCycle } from "../mixin/mixin-cycle";
5
6
  import { ScryptedRuntime } from "../runtime";
6
7
  import { sleep } from "../sleep";
7
8
  import { getState } from "../state";
8
- import { httpFetch } from "../fetch/http-fetch";
9
9
 
10
10
 
11
11
  export async function getNpmPackageInfo(pkg: string) {
@@ -114,6 +114,7 @@ export class PluginComponent {
114
114
  }
115
115
  return {
116
116
  pid: host?.worker?.pid,
117
+ clientsCount: host?.io?.clientsCount,
117
118
  stats: host?.stats,
118
119
  rpcObjects,
119
120
  packageJson,
@@ -123,6 +124,16 @@ export class PluginComponent {
123
124
  }
124
125
  }
125
126
 
127
+ async disconnectClients(pluginId: string) {
128
+ const host = this.scrypted.plugins[pluginId];
129
+ if (!host)
130
+ return;
131
+ const { clients } = host.io as any;
132
+ for (const client of Object.values(clients)) {
133
+ (client as any).close()
134
+ }
135
+ }
136
+
126
137
  async installNpm(pkg: string, version?: string) {
127
138
  await this.scrypted.installNpm(pkg, version);
128
139
  }