@omujs/omu 0.8.1 → 0.8.3
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 +19 -0
- package/dist/dts/extension/permission/permission-extension.d.ts.map +1 -1
- package/dist/dts/extension/plugin/index.d.ts +1 -1
- package/dist/dts/extension/plugin/index.d.ts.map +1 -1
- package/dist/dts/extension/plugin/plugin-extension.d.ts +23 -0
- package/dist/dts/extension/plugin/plugin-extension.d.ts.map +1 -1
- package/dist/dts/extension/table/index.d.ts +1 -1
- package/dist/dts/extension/table/index.d.ts.map +1 -1
- package/dist/dts/extension/table/table-extension.d.ts +1 -0
- package/dist/dts/extension/table/table-extension.d.ts.map +1 -1
- package/dist/dts/network/network.d.ts +7 -0
- package/dist/dts/network/network.d.ts.map +1 -1
- package/dist/dts/version.d.ts +1 -1
- package/dist/esm/extension/permission/permission-extension.js +8 -8
- package/dist/esm/extension/permission/permission-extension.js.map +1 -1
- package/dist/esm/extension/plugin/index.js +1 -1
- package/dist/esm/extension/plugin/index.js.map +1 -1
- package/dist/esm/extension/plugin/plugin-extension.js +35 -0
- package/dist/esm/extension/plugin/plugin-extension.js.map +1 -1
- package/dist/esm/extension/table/index.js +1 -1
- package/dist/esm/extension/table/index.js.map +1 -1
- package/dist/esm/extension/table/table-extension.js +4 -1
- package/dist/esm/extension/table/table-extension.js.map +1 -1
- package/dist/esm/network/network.js +27 -2
- package/dist/esm/network/network.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/package.json +1 -1
- package/src/extension/permission/permission-extension.ts +10 -7
- package/src/extension/plugin/index.ts +3 -1
- package/src/extension/plugin/plugin-extension.ts +49 -0
- package/src/extension/table/index.ts +1 -1
- package/src/extension/table/table-extension.ts +4 -1
- package/src/network/network.ts +36 -10
- package/src/version.ts +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,25 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## 0.8.3 (2025-01-19)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @omujs/omu
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## 0.8.2 (2024-12-31)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* **dash:** サーバー再起動時に管理画面を再読み込みするように ([7373a1b](https://github.com/OMUAPPS/omuapps/commit/7373a1bcefdc66ca535c10e75ff844f103d549da))
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
6
25
|
## 0.8.1 (2024-12-28)
|
|
7
26
|
|
|
8
27
|
**Note:** Version bump only for package @omujs/omu
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permission-extension.d.ts","sourceRoot":"","sources":["../../../../src/extension/permission/permission-extension.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAgC,MAAM,qBAAqB,CAAC;AAM/E,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,eAAO,MAAM,yBAAyB,KAGrC,CAAC;AAwBF,qBAAa,mBAAmB;IAMhB,OAAO,CAAC,QAAQ,CAAC,MAAM;IALnC,SAAgB,IAAI,MAA6B;IACjD,OAAO,CAAC,WAAW,CAAuC;IAC1D,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAuC;IAC7E,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAuB;gBAE9B,MAAM,EAAE,MAAM;IAc3C,OAAO,CAAC,MAAM;IAeP,QAAQ,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI;IAO1C,OAAO,CAAC,GAAG,aAAa,EAAE,CAAC,UAAU,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"permission-extension.d.ts","sourceRoot":"","sources":["../../../../src/extension/permission/permission-extension.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAgC,MAAM,qBAAqB,CAAC;AAM/E,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,eAAO,MAAM,yBAAyB,KAGrC,CAAC;AAwBF,qBAAa,mBAAmB;IAMhB,OAAO,CAAC,QAAQ,CAAC,MAAM;IALnC,SAAgB,IAAI,MAA6B;IACjD,OAAO,CAAC,WAAW,CAAuC;IAC1D,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAuC;IAC7E,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAuB;gBAE9B,MAAM,EAAE,MAAM;IAc3C,OAAO,CAAC,MAAM;IAeP,QAAQ,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI;IAO1C,OAAO,CAAC,GAAG,aAAa,EAAE,CAAC,UAAU,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI;IAgBlD,OAAO,CAAC,GAAG,aAAa,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5D,GAAG,CAAC,oBAAoB,EAAE,UAAU,GAAG,OAAO;CAGxD"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { PLUGIN_EXTENSION_TYPE, PluginExtension } from './plugin-extension.js';
|
|
1
|
+
export { PLUGIN_EXTENSION_TYPE, PLUGIN_MANAGE_PACKAGE_PERMISSION_ID, PLUGIN_READ_PACKAGE_PERMISSION_ID, PluginExtension } from './plugin-extension.js';
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/extension/plugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/extension/plugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,qBAAqB,EAAE,mCAAmC,EAAE,iCAAiC,EAAE,eAAe,EACjH,MAAM,uBAAuB,CAAC"}
|
|
@@ -1,11 +1,34 @@
|
|
|
1
1
|
import type { Client } from '../../client.js';
|
|
2
|
+
import { Table } from '../table/table.js';
|
|
2
3
|
export declare const PLUGIN_EXTENSION_TYPE: any;
|
|
3
4
|
export declare class PluginExtension {
|
|
4
5
|
private readonly client;
|
|
5
6
|
readonly type: any;
|
|
6
7
|
private readonly requiredPlugins;
|
|
7
8
|
constructor(client: Client);
|
|
9
|
+
getAllowedPackages(): Table<PluginPackageInfo>;
|
|
10
|
+
reload(options: ReloadOptions): void;
|
|
8
11
|
private onTask;
|
|
9
12
|
require(plugins: Record<string, string | null>): void;
|
|
10
13
|
}
|
|
14
|
+
export declare class PluginPackageInfo {
|
|
15
|
+
package: string;
|
|
16
|
+
version: string;
|
|
17
|
+
constructor(_package: string, version: string);
|
|
18
|
+
static fromJson(json: {
|
|
19
|
+
package: string;
|
|
20
|
+
version: string;
|
|
21
|
+
}): PluginPackageInfo;
|
|
22
|
+
toJson(): {
|
|
23
|
+
package: string;
|
|
24
|
+
version: string;
|
|
25
|
+
};
|
|
26
|
+
key(): string;
|
|
27
|
+
}
|
|
28
|
+
export declare const PLUGIN_READ_PACKAGE_PERMISSION_ID: any;
|
|
29
|
+
export declare const PLUGIN_MANAGE_PACKAGE_PERMISSION_ID: any;
|
|
30
|
+
type ReloadOptions = {
|
|
31
|
+
packages: string[] | null;
|
|
32
|
+
};
|
|
33
|
+
export {};
|
|
11
34
|
//# sourceMappingURL=plugin-extension.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-extension.d.ts","sourceRoot":"","sources":["../../../../src/extension/plugin/plugin-extension.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAI9C,eAAO,MAAM,qBAAqB,KAGjC,CAAC;AAEF,qBAAa,eAAe;IAIZ,OAAO,CAAC,QAAQ,CAAC,MAAM;IAHnC,SAAgB,IAAI,MAAyB;IAC7C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAyC;gBAE5C,MAAM,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"plugin-extension.d.ts","sourceRoot":"","sources":["../../../../src/extension/plugin/plugin-extension.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAI9C,OAAO,EAAE,KAAK,EAAa,MAAM,mBAAmB,CAAC;AAErD,eAAO,MAAM,qBAAqB,KAGjC,CAAC;AAEF,qBAAa,eAAe;IAIZ,OAAO,CAAC,QAAQ,CAAC,MAAM;IAHnC,SAAgB,IAAI,MAAyB;IAC7C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAyC;gBAE5C,MAAM,EAAE,MAAM;IAKpC,kBAAkB,IAAI,KAAK,CAAC,iBAAiB,CAAC;IAI9C,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;YAI7B,MAAM;IAIb,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI;CAQ/D;AAQD,qBAAa,iBAAiB;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;gBAEX,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;WAK/B,QAAQ,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,iBAAiB;IAI9E,MAAM,IAAI;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAI9C,GAAG,IAAI,MAAM;CAGvB;AAED,eAAO,MAAM,iCAAiC,KAAgD,CAAA;AAC9F,eAAO,MAAM,mCAAmC,KAAkD,CAAA;AAMlG,KAAK,aAAa,GAAG;IACjB,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CAC7B,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { TABLE_EXTENSION_TYPE, TableExtension } from './table-extension.js';
|
|
1
|
+
export { TABLE_EXTENSION_TYPE, TABLE_PERMISSION_ID, TableExtension } from './table-extension.js';
|
|
2
2
|
export { Table, TableConfig, TableType } from './table.js';
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/extension/table/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/extension/table/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACjG,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -7,6 +7,7 @@ import { ExtensionType } from '../extension.js';
|
|
|
7
7
|
import type { Table } from './table.js';
|
|
8
8
|
import { TableType } from './table.js';
|
|
9
9
|
export declare const TABLE_EXTENSION_TYPE: ExtensionType<TableExtension>;
|
|
10
|
+
export declare const TABLE_PERMISSION_ID: Identifier;
|
|
10
11
|
export declare class TableExtension implements Extension {
|
|
11
12
|
private readonly client;
|
|
12
13
|
readonly type: ExtensionType<TableExtension>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-extension.d.ts","sourceRoot":"","sources":["../../../../src/extension/table/table-extension.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAG9C,OAAO,EAAE,UAAU,EAAiB,MAAM,qBAAqB,CAAC;AAChE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAK5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAYhD,OAAO,KAAK,EAAE,KAAK,EAA8C,MAAM,YAAY,CAAC;AACpF,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,eAAO,MAAM,oBAAoB,EAAE,aAAa,CAAC,cAAc,CAG9D,CAAC;
|
|
1
|
+
{"version":3,"file":"table-extension.d.ts","sourceRoot":"","sources":["../../../../src/extension/table/table-extension.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAG9C,OAAO,EAAE,UAAU,EAAiB,MAAM,qBAAqB,CAAC;AAChE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAK5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAYhD,OAAO,KAAK,EAAE,KAAK,EAA8C,MAAM,YAAY,CAAC;AACpF,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,eAAO,MAAM,oBAAoB,EAAE,aAAa,CAAC,cAAc,CAG9D,CAAC;AACF,eAAO,MAAM,mBAAmB,YAA0C,CAAC;AAwH3E,qBAAa,cAAe,YAAW,SAAS;IAIhC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAHnC,SAAgB,IAAI,gCAAwB;IAC5C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuC;gBAEnC,MAAM,EAAE,MAAM;IAcpC,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IAU5C,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IAOpC,KAAK,CAAC,CAAC,SAAS,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,EAClD,UAAU,EAAE,UAAU,EACtB,EACI,IAAI,EACJ,KAAK,GACR,EAAE;QACC,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE;YAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAA;SAAE,CAAC;KACnC,GACF,KAAK,CAAC,CAAC,CAAC;IAQJ,GAAG,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO;CAG9C"}
|
|
@@ -12,6 +12,12 @@ type StatusType<T> = {
|
|
|
12
12
|
export type NetworkStatus = StatusType<'disconnected'> | StatusType<'connecting'> | StatusType<'connected'> | StatusType<'ready'> | {
|
|
13
13
|
type: 'error';
|
|
14
14
|
error: OmuError;
|
|
15
|
+
} | {
|
|
16
|
+
type: 'reconnecting';
|
|
17
|
+
attempt: number;
|
|
18
|
+
timeout: number;
|
|
19
|
+
date: Date;
|
|
20
|
+
cancel: () => void;
|
|
15
21
|
} | StatusType<'closed'>;
|
|
16
22
|
export declare class Network {
|
|
17
23
|
private readonly client;
|
|
@@ -32,6 +38,7 @@ export declare class Network {
|
|
|
32
38
|
setConnection(connection: Connection): void;
|
|
33
39
|
registerPacket(...packetTypes: PacketType<unknown>[]): void;
|
|
34
40
|
addPacketHandler<T>(type: PacketType<T>, handler: (packet: T) => void): void;
|
|
41
|
+
private scheduleReconnect;
|
|
35
42
|
connect(recconect?: boolean): Promise<void>;
|
|
36
43
|
private isState;
|
|
37
44
|
disconnect(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../../../src/network/network.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAS7C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../../../src/network/network.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAS7C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAO7D,KAAK,UAAU,CAAC,CAAC,IAAI;IACjB,IAAI,EAAE,CAAC,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,cAAc,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG;IAChI,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,QAAQ,CAAC;CACnB,GAAG;IACA,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,EAAE,MAAM,IAAI,CAAC;CACtB,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;AAEzB,qBAAa,OAAO;IAaZ,OAAO,CAAC,QAAQ,CAAC,MAAM;aACP,OAAO,EAAE,OAAO;IAChC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,UAAU;IAff,MAAM,EAAE,aAAa,CAA0B;IACtD,SAAgB,KAAK;;;;;MAKnB;IACF,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyC;IAC/D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsB;IACnD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA+C;gBAGzD,MAAM,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,EACf,aAAa,EAAE,aAAa,EACrC,UAAU,EAAE,UAAU;IA8C3B,aAAa,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAO3C,cAAc,CAAC,GAAG,WAAW,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI;IAU3D,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI;YAQrE,iBAAiB;IAmBlB,OAAO,CAAC,SAAS,UAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAwDrD,OAAO,CAAC,OAAO;IAIR,UAAU,IAAI,IAAI;IASlB,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;YAOnB,MAAM;YAUN,cAAc;IASrB,OAAO,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI;IAO/C,UAAU,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI;YAI3C,aAAa;YAMb,SAAS;CAO1B"}
|
package/dist/dts/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "0.8.
|
|
1
|
+
export declare const VERSION = "0.8.2";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
|
@@ -52,16 +52,16 @@ export class PermissionExtension {
|
|
|
52
52
|
this.registeredPermissions.set(permission.id, permission);
|
|
53
53
|
}
|
|
54
54
|
require(...permissionIds) {
|
|
55
|
+
const ids = permissionIds.map((id) => typeof id === 'string' ? Identifier.fromKey(id) : id);
|
|
56
|
+
const missing = ids.filter((id) => !this.permissions.has(id));
|
|
55
57
|
if (this.client.running) {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
for (const permissionId of permissionIds) {
|
|
59
|
-
if (typeof permissionId === 'string') {
|
|
60
|
-
this.requiredPermissions.add(Identifier.fromKey(permissionId));
|
|
61
|
-
}
|
|
62
|
-
else {
|
|
63
|
-
this.requiredPermissions.add(permissionId);
|
|
58
|
+
if (missing.length > 0) {
|
|
59
|
+
throw new Error('Permissions must be registered before the client starts');
|
|
64
60
|
}
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
for (const id of ids) {
|
|
64
|
+
this.requiredPermissions.add(id);
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
67
|
async request(...permissionIds) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permission-extension.js","sourceRoot":"","sources":["../../../../src/extension/permission/permission-extension.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"permission-extension.js","sourceRoot":"","sources":["../../../../src/extension/permission/permission-extension.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { PLUGIN_EXTENSION_TYPE, PluginExtension } from './plugin-extension.js';
|
|
1
|
+
export { PLUGIN_EXTENSION_TYPE, PLUGIN_MANAGE_PACKAGE_PERMISSION_ID, PLUGIN_READ_PACKAGE_PERMISSION_ID, PluginExtension } from './plugin-extension.js';
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/extension/plugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/extension/plugin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,qBAAqB,EAAE,mCAAmC,EAAE,iCAAiC,EAAE,eAAe,EACjH,MAAM,uBAAuB,CAAC"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { PacketType } from '../../network/packet/packet.js';
|
|
2
|
+
import { EndpointType } from '../endpoint/endpoint.js';
|
|
2
3
|
import { ExtensionType } from '../extension.js';
|
|
4
|
+
import { TableType } from '../table/table.js';
|
|
3
5
|
export const PLUGIN_EXTENSION_TYPE = new ExtensionType('plugin', (client) => new PluginExtension(client));
|
|
4
6
|
export class PluginExtension {
|
|
5
7
|
client;
|
|
@@ -10,6 +12,12 @@ export class PluginExtension {
|
|
|
10
12
|
client.network.registerPacket(PLUGIN_REQUIRE_PACKET);
|
|
11
13
|
client.network.addTask(() => this.onTask());
|
|
12
14
|
}
|
|
15
|
+
getAllowedPackages() {
|
|
16
|
+
return this.client.tables.get(PLUGIN_ALLOWED_PACKAGE_TABLE);
|
|
17
|
+
}
|
|
18
|
+
reload(options) {
|
|
19
|
+
this.client.endpoints.call(PLUGIN_RELOAD_ENDPOINT_TYPE, options);
|
|
20
|
+
}
|
|
13
21
|
async onTask() {
|
|
14
22
|
this.client.send(PLUGIN_REQUIRE_PACKET, Object.fromEntries(this.requiredPlugins));
|
|
15
23
|
}
|
|
@@ -25,4 +33,31 @@ export class PluginExtension {
|
|
|
25
33
|
const PLUGIN_REQUIRE_PACKET = PacketType.createJson(PLUGIN_EXTENSION_TYPE, {
|
|
26
34
|
name: 'require',
|
|
27
35
|
});
|
|
36
|
+
export class PluginPackageInfo {
|
|
37
|
+
package;
|
|
38
|
+
version;
|
|
39
|
+
constructor(_package, version) {
|
|
40
|
+
this.package = _package;
|
|
41
|
+
this.version = version;
|
|
42
|
+
}
|
|
43
|
+
static fromJson(json) {
|
|
44
|
+
return new PluginPackageInfo(json.package, json.version);
|
|
45
|
+
}
|
|
46
|
+
toJson() {
|
|
47
|
+
return { package: this.package, version: this.version };
|
|
48
|
+
}
|
|
49
|
+
key() {
|
|
50
|
+
return this.package;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
export const PLUGIN_READ_PACKAGE_PERMISSION_ID = PLUGIN_EXTENSION_TYPE.join('package', 'read');
|
|
54
|
+
export const PLUGIN_MANAGE_PACKAGE_PERMISSION_ID = PLUGIN_EXTENSION_TYPE.join('package', 'manage');
|
|
55
|
+
const PLUGIN_ALLOWED_PACKAGE_TABLE = TableType.createModel(PLUGIN_EXTENSION_TYPE, {
|
|
56
|
+
name: 'allowed_package',
|
|
57
|
+
model: PluginPackageInfo,
|
|
58
|
+
});
|
|
59
|
+
const PLUGIN_RELOAD_ENDPOINT_TYPE = EndpointType.createJson(PLUGIN_EXTENSION_TYPE, {
|
|
60
|
+
name: 'reload',
|
|
61
|
+
permissionId: PLUGIN_MANAGE_PACKAGE_PERMISSION_ID,
|
|
62
|
+
});
|
|
28
63
|
//# sourceMappingURL=plugin-extension.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-extension.js","sourceRoot":"","sources":["../../../../src/extension/plugin/plugin-extension.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"plugin-extension.js","sourceRoot":"","sources":["../../../../src/extension/plugin/plugin-extension.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/extension/table/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/extension/table/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACjG,OAAO,EAAsB,SAAS,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -7,7 +7,7 @@ import { ExtensionType } from '../extension.js';
|
|
|
7
7
|
import { SetConfigPacket, SetPermissionPacket, TableFetchPacket, TableFetchRangePacket, TableItemsPacket, TableKeysPacket, TablePacket, TableProxyPacket, } from './packets.js';
|
|
8
8
|
import { TableType } from './table.js';
|
|
9
9
|
export const TABLE_EXTENSION_TYPE = new ExtensionType('table', (client) => new TableExtension(client));
|
|
10
|
-
const TABLE_PERMISSION_ID = TABLE_EXTENSION_TYPE.join('permission');
|
|
10
|
+
export const TABLE_PERMISSION_ID = TABLE_EXTENSION_TYPE.join('permission');
|
|
11
11
|
const TABLE_SET_PERMISSION_PACKET = PacketType.createSerialized(TABLE_EXTENSION_TYPE, {
|
|
12
12
|
name: 'set_permission',
|
|
13
13
|
serializer: SetPermissionPacket,
|
|
@@ -407,6 +407,9 @@ class TableImpl {
|
|
|
407
407
|
break;
|
|
408
408
|
}
|
|
409
409
|
yield* items.values();
|
|
410
|
+
if (cursor !== undefined) {
|
|
411
|
+
items.delete(cursor);
|
|
412
|
+
}
|
|
410
413
|
const cursorItem = backward ? items.values().next().value : [...items.values()].pop();
|
|
411
414
|
if (!cursorItem) {
|
|
412
415
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table-extension.js","sourceRoot":"","sources":["../../../../src/extension/table/table-extension.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"table-extension.js","sourceRoot":"","sources":["../../../../src/extension/table/table-extension.ts"],"names":[],"mappings":"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"}
|
|
@@ -84,20 +84,43 @@ export class Network {
|
|
|
84
84
|
}
|
|
85
85
|
listeners.event.listen(handler);
|
|
86
86
|
}
|
|
87
|
+
async scheduleReconnect(attempt) {
|
|
88
|
+
const timeout = Math.min(30000, 2000 * Math.pow(2, attempt));
|
|
89
|
+
const date = new Date();
|
|
90
|
+
let cancelled = false;
|
|
91
|
+
await this.setStatus({
|
|
92
|
+
type: 'reconnecting',
|
|
93
|
+
attempt,
|
|
94
|
+
timeout,
|
|
95
|
+
date,
|
|
96
|
+
cancel: () => { cancelled = true; }
|
|
97
|
+
});
|
|
98
|
+
if (cancelled) {
|
|
99
|
+
return false;
|
|
100
|
+
}
|
|
101
|
+
const remaining = timeout - (new Date().getTime() - date.getTime());
|
|
102
|
+
await new Promise((resolve) => setTimeout(resolve, remaining));
|
|
103
|
+
return true;
|
|
104
|
+
}
|
|
87
105
|
async connect(recconect = true) {
|
|
88
106
|
if (!this.isState('disconnected')) {
|
|
89
107
|
throw new Error(`Cannot connect while ${this.status.type}`);
|
|
90
108
|
}
|
|
109
|
+
let attempt = 0;
|
|
91
110
|
while (true) {
|
|
111
|
+
attempt++;
|
|
92
112
|
try {
|
|
93
113
|
try {
|
|
94
114
|
await this.connection.connect();
|
|
115
|
+
attempt = 0;
|
|
95
116
|
}
|
|
96
117
|
catch (error) {
|
|
97
118
|
if (!recconect) {
|
|
98
119
|
throw error;
|
|
99
120
|
}
|
|
100
|
-
|
|
121
|
+
if (!await this.scheduleReconnect(attempt)) {
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
101
124
|
continue;
|
|
102
125
|
}
|
|
103
126
|
await this.setStatus({ type: 'connecting' });
|
|
@@ -129,7 +152,9 @@ export class Network {
|
|
|
129
152
|
if (!recconect) {
|
|
130
153
|
break;
|
|
131
154
|
}
|
|
132
|
-
|
|
155
|
+
if (!await this.scheduleReconnect(attempt)) {
|
|
156
|
+
break;
|
|
157
|
+
}
|
|
133
158
|
}
|
|
134
159
|
}
|
|
135
160
|
isState(state) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network.js","sourceRoot":"","sources":["../../../src/network/network.ts"],"names":[],"mappings":"AAGA,OAAO,EACH,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,cAAc,EACd,gBAAgB,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAGxC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"network.js","sourceRoot":"","sources":["../../../src/network/network.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const VERSION = '0.8.
|
|
1
|
+
export const VERSION = '0.8.2';
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
package/package.json
CHANGED
|
@@ -77,15 +77,18 @@ export class PermissionExtension {
|
|
|
77
77
|
}
|
|
78
78
|
|
|
79
79
|
public require(...permissionIds: (Identifier | string)[]): void {
|
|
80
|
+
const ids: Identifier[] = permissionIds.map((id) =>
|
|
81
|
+
typeof id === 'string' ? Identifier.fromKey(id) : id,
|
|
82
|
+
);
|
|
83
|
+
const missing = ids.filter((id) => !this.permissions.has(id));
|
|
80
84
|
if (this.client.running) {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
for (const permissionId of permissionIds) {
|
|
84
|
-
if (typeof permissionId === 'string') {
|
|
85
|
-
this.requiredPermissions.add(Identifier.fromKey(permissionId));
|
|
86
|
-
} else {
|
|
87
|
-
this.requiredPermissions.add(permissionId);
|
|
85
|
+
if (missing.length > 0) {
|
|
86
|
+
throw new Error('Permissions must be registered before the client starts');
|
|
88
87
|
}
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
for (const id of ids) {
|
|
91
|
+
this.requiredPermissions.add(id);
|
|
89
92
|
}
|
|
90
93
|
}
|
|
91
94
|
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { Client } from '../../client.js';
|
|
2
2
|
import { PacketType } from '../../network/packet/packet.js';
|
|
3
|
+
import { EndpointType } from '../endpoint/endpoint.js';
|
|
3
4
|
import { ExtensionType } from '../extension.js';
|
|
5
|
+
import { Table, TableType } from '../table/table.js';
|
|
4
6
|
|
|
5
7
|
export const PLUGIN_EXTENSION_TYPE = new ExtensionType(
|
|
6
8
|
'plugin',
|
|
@@ -16,6 +18,14 @@ export class PluginExtension {
|
|
|
16
18
|
client.network.addTask(() => this.onTask());
|
|
17
19
|
}
|
|
18
20
|
|
|
21
|
+
public getAllowedPackages(): Table<PluginPackageInfo> {
|
|
22
|
+
return this.client.tables.get(PLUGIN_ALLOWED_PACKAGE_TABLE);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
public reload(options: ReloadOptions): void {
|
|
26
|
+
this.client.endpoints.call(PLUGIN_RELOAD_ENDPOINT_TYPE, options);
|
|
27
|
+
}
|
|
28
|
+
|
|
19
29
|
private async onTask(): Promise<void> {
|
|
20
30
|
this.client.send(PLUGIN_REQUIRE_PACKET, Object.fromEntries(this.requiredPlugins));
|
|
21
31
|
}
|
|
@@ -36,3 +46,42 @@ const PLUGIN_REQUIRE_PACKET = PacketType.createJson<Record<string, string | null
|
|
|
36
46
|
name: 'require',
|
|
37
47
|
},
|
|
38
48
|
);
|
|
49
|
+
export class PluginPackageInfo {
|
|
50
|
+
public package: string;
|
|
51
|
+
public version: string;
|
|
52
|
+
|
|
53
|
+
constructor(_package: string, version: string) {
|
|
54
|
+
this.package = _package;
|
|
55
|
+
this.version = version;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
public static fromJson(json: { package: string, version: string }): PluginPackageInfo {
|
|
59
|
+
return new PluginPackageInfo(json.package, json.version);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
public toJson(): { package: string, version: string } {
|
|
63
|
+
return { package: this.package, version: this.version };
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
public key(): string {
|
|
67
|
+
return this.package;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
export const PLUGIN_READ_PACKAGE_PERMISSION_ID = PLUGIN_EXTENSION_TYPE.join('package', 'read')
|
|
72
|
+
export const PLUGIN_MANAGE_PACKAGE_PERMISSION_ID = PLUGIN_EXTENSION_TYPE.join('package', 'manage')
|
|
73
|
+
|
|
74
|
+
const PLUGIN_ALLOWED_PACKAGE_TABLE = TableType.createModel(PLUGIN_EXTENSION_TYPE, {
|
|
75
|
+
name: 'allowed_package',
|
|
76
|
+
model: PluginPackageInfo,
|
|
77
|
+
});
|
|
78
|
+
type ReloadOptions = {
|
|
79
|
+
packages: string[] | null,
|
|
80
|
+
};
|
|
81
|
+
type ReloadResult = {
|
|
82
|
+
packages: Record<string, string>,
|
|
83
|
+
};
|
|
84
|
+
const PLUGIN_RELOAD_ENDPOINT_TYPE = EndpointType.createJson<ReloadOptions, ReloadResult>(PLUGIN_EXTENSION_TYPE, {
|
|
85
|
+
name: 'reload',
|
|
86
|
+
permissionId: PLUGIN_MANAGE_PACKAGE_PERMISSION_ID,
|
|
87
|
+
});
|
|
@@ -28,7 +28,7 @@ export const TABLE_EXTENSION_TYPE: ExtensionType<TableExtension> = new Extension
|
|
|
28
28
|
'table',
|
|
29
29
|
(client) => new TableExtension(client),
|
|
30
30
|
);
|
|
31
|
-
const TABLE_PERMISSION_ID = TABLE_EXTENSION_TYPE.join('permission');
|
|
31
|
+
export const TABLE_PERMISSION_ID = TABLE_EXTENSION_TYPE.join('permission');
|
|
32
32
|
|
|
33
33
|
const TABLE_SET_PERMISSION_PACKET = PacketType.createSerialized<SetPermissionPacket>(
|
|
34
34
|
TABLE_EXTENSION_TYPE,
|
|
@@ -536,6 +536,9 @@ class TableImpl<T> implements Table<T> {
|
|
|
536
536
|
break;
|
|
537
537
|
}
|
|
538
538
|
yield* items.values();
|
|
539
|
+
if (cursor !== undefined) {
|
|
540
|
+
items.delete(cursor);
|
|
541
|
+
}
|
|
539
542
|
const cursorItem = backward ? items.values().next().value : [...items.values()].pop();
|
|
540
543
|
if (!cursorItem) {
|
|
541
544
|
break;
|
package/src/network/network.ts
CHANGED
|
@@ -25,20 +25,19 @@ type PacketHandler<T> = {
|
|
|
25
25
|
event: EventEmitter<[T]>;
|
|
26
26
|
};
|
|
27
27
|
|
|
28
|
-
// export enum NetworkStatus {
|
|
29
|
-
// DISCONNECTED = 'disconnected',
|
|
30
|
-
// CONNECTING = 'connecting',
|
|
31
|
-
// CONNECTED = 'connected',
|
|
32
|
-
// READY = 'ready',
|
|
33
|
-
// ERROR = 'error',
|
|
34
|
-
// CLOSED = 'closed',
|
|
35
|
-
// }
|
|
36
28
|
type StatusType<T> = {
|
|
37
29
|
type: T,
|
|
38
30
|
};
|
|
31
|
+
|
|
39
32
|
export type NetworkStatus = StatusType<'disconnected'> | StatusType<'connecting'> | StatusType<'connected'> | StatusType<'ready'> | {
|
|
40
33
|
type: 'error',
|
|
41
34
|
error: OmuError,
|
|
35
|
+
} | {
|
|
36
|
+
type: 'reconnecting',
|
|
37
|
+
attempt: number,
|
|
38
|
+
timeout: number,
|
|
39
|
+
date: Date,
|
|
40
|
+
cancel: () => void,
|
|
42
41
|
} | StatusType<'closed'>;
|
|
43
42
|
|
|
44
43
|
export class Network {
|
|
@@ -128,20 +127,45 @@ export class Network {
|
|
|
128
127
|
listeners.event.listen(handler as (packet: unknown) => void);
|
|
129
128
|
}
|
|
130
129
|
|
|
130
|
+
private async scheduleReconnect(attempt: number): Promise<boolean> {
|
|
131
|
+
const timeout = Math.min(30000, 2000 * Math.pow(2, attempt));
|
|
132
|
+
const date = new Date();
|
|
133
|
+
let cancelled = false;
|
|
134
|
+
await this.setStatus({
|
|
135
|
+
type: 'reconnecting',
|
|
136
|
+
attempt,
|
|
137
|
+
timeout,
|
|
138
|
+
date,
|
|
139
|
+
cancel: () => {cancelled = true;}
|
|
140
|
+
});
|
|
141
|
+
if (cancelled) {
|
|
142
|
+
return false;
|
|
143
|
+
}
|
|
144
|
+
const remaining = timeout - (new Date().getTime() - date.getTime());
|
|
145
|
+
await new Promise((resolve) => setTimeout(resolve, remaining));
|
|
146
|
+
return true;
|
|
147
|
+
}
|
|
148
|
+
|
|
131
149
|
public async connect(recconect = true): Promise<void> {
|
|
132
150
|
if (!this.isState('disconnected')) {
|
|
133
151
|
throw new Error(`Cannot connect while ${this.status.type}`);
|
|
134
152
|
}
|
|
135
153
|
|
|
154
|
+
let attempt = 0;
|
|
155
|
+
|
|
136
156
|
while (true) {
|
|
157
|
+
attempt++;
|
|
137
158
|
try {
|
|
138
159
|
try {
|
|
139
160
|
await this.connection.connect();
|
|
161
|
+
attempt = 0;
|
|
140
162
|
} catch (error) {
|
|
141
163
|
if (!recconect) {
|
|
142
164
|
throw error;
|
|
143
165
|
}
|
|
144
|
-
|
|
166
|
+
if (!await this.scheduleReconnect(attempt)) {
|
|
167
|
+
return;
|
|
168
|
+
}
|
|
145
169
|
continue;
|
|
146
170
|
}
|
|
147
171
|
await this.setStatus({type: 'connecting'});
|
|
@@ -172,7 +196,9 @@ export class Network {
|
|
|
172
196
|
if (!recconect) {
|
|
173
197
|
break;
|
|
174
198
|
}
|
|
175
|
-
|
|
199
|
+
if (!await this.scheduleReconnect(attempt)) {
|
|
200
|
+
break;
|
|
201
|
+
}
|
|
176
202
|
}
|
|
177
203
|
}
|
|
178
204
|
|
package/src/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const VERSION = '0.8.
|
|
1
|
+
export const VERSION = '0.8.2';
|