@fireproof/core 0.21.0-dev-preview-6 → 0.21.0-dev-preview-7

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 (137) hide show
  1. package/blockstore/attachable-store.d.ts.map +1 -1
  2. package/blockstore/attachable-store.js +4 -5
  3. package/blockstore/attachable-store.js.map +1 -1
  4. package/blockstore/index.d.ts +2 -1
  5. package/blockstore/index.d.ts.map +1 -1
  6. package/blockstore/index.js +2 -1
  7. package/blockstore/index.js.map +1 -1
  8. package/blockstore/loader.d.ts +2 -1
  9. package/blockstore/loader.d.ts.map +1 -1
  10. package/blockstore/loader.js +41 -11
  11. package/blockstore/loader.js.map +1 -1
  12. package/blockstore/store.js +1 -1
  13. package/blockstore/store.js.map +1 -1
  14. package/blockstore/types.d.ts +0 -2
  15. package/blockstore/types.d.ts.map +1 -1
  16. package/blockstore/types.js.map +1 -1
  17. package/cli/main.js +112 -80
  18. package/database.d.ts +0 -1
  19. package/database.d.ts.map +1 -1
  20. package/database.js +0 -1
  21. package/database.js.map +1 -1
  22. package/deno.json +2 -2
  23. package/ledger.d.ts +3 -2
  24. package/ledger.d.ts.map +1 -1
  25. package/ledger.js +16 -19
  26. package/ledger.js.map +1 -1
  27. package/package.json +3 -4
  28. package/protocols/cloud/http-connection.d.ts +2 -1
  29. package/protocols/cloud/http-connection.d.ts.map +1 -1
  30. package/protocols/cloud/http-connection.js +1 -0
  31. package/protocols/cloud/http-connection.js.map +1 -1
  32. package/protocols/cloud/msg-types-data.d.ts +4 -4
  33. package/protocols/cloud/msg-types-data.d.ts.map +1 -1
  34. package/protocols/cloud/msg-types-data.js.map +1 -1
  35. package/protocols/cloud/msg-types-meta.d.ts +13 -13
  36. package/protocols/cloud/msg-types-meta.d.ts.map +1 -1
  37. package/protocols/cloud/msg-types-meta.js.map +1 -1
  38. package/protocols/cloud/msg-types-wal.d.ts +4 -4
  39. package/protocols/cloud/msg-types-wal.d.ts.map +1 -1
  40. package/protocols/cloud/msg-types-wal.js.map +1 -1
  41. package/protocols/cloud/msg-types.d.ts +33 -19
  42. package/protocols/cloud/msg-types.d.ts.map +1 -1
  43. package/protocols/cloud/msg-types.js +4 -1
  44. package/protocols/cloud/msg-types.js.map +1 -1
  45. package/protocols/cloud/msger.d.ts +54 -39
  46. package/protocols/cloud/msger.d.ts.map +1 -1
  47. package/protocols/cloud/msger.js +228 -107
  48. package/protocols/cloud/msger.js.map +1 -1
  49. package/protocols/cloud/ws-connection.d.ts +14 -3
  50. package/protocols/cloud/ws-connection.d.ts.map +1 -1
  51. package/protocols/cloud/ws-connection.js +73 -34
  52. package/protocols/cloud/ws-connection.js.map +1 -1
  53. package/protocols/dashboard/index.d.ts +4 -0
  54. package/protocols/dashboard/index.d.ts.map +1 -0
  55. package/protocols/dashboard/index.js +4 -0
  56. package/protocols/dashboard/index.js.map +1 -0
  57. package/protocols/dashboard/msg-api.d.ts +11 -0
  58. package/protocols/dashboard/msg-api.d.ts.map +1 -0
  59. package/protocols/dashboard/msg-api.js +55 -0
  60. package/protocols/dashboard/msg-api.js.map +1 -0
  61. package/protocols/dashboard/msg-is.d.ts +45 -0
  62. package/protocols/dashboard/msg-is.d.ts.map +1 -0
  63. package/protocols/dashboard/msg-is.js +63 -0
  64. package/protocols/dashboard/msg-is.js.map +1 -0
  65. package/protocols/dashboard/msg-types.d.ts +397 -0
  66. package/protocols/dashboard/msg-types.d.ts.map +1 -0
  67. package/protocols/dashboard/msg-types.js +4 -0
  68. package/protocols/dashboard/msg-types.js.map +1 -0
  69. package/protocols/index.d.ts +1 -0
  70. package/protocols/index.d.ts.map +1 -1
  71. package/protocols/index.js +1 -0
  72. package/protocols/index.js.map +1 -1
  73. package/react/types.d.ts +28 -8
  74. package/react/types.d.ts.map +1 -1
  75. package/react/use-attach.d.ts +9 -4
  76. package/react/use-attach.d.ts.map +1 -1
  77. package/react/use-attach.js +137 -43
  78. package/react/use-attach.js.map +1 -1
  79. package/react/use-fireproof.js +2 -2
  80. package/react/use-fireproof.js.map +1 -1
  81. package/runtime/gateways/cloud/gateway.d.ts +8 -8
  82. package/runtime/gateways/cloud/gateway.d.ts.map +1 -1
  83. package/runtime/gateways/cloud/gateway.js +17 -15
  84. package/runtime/gateways/cloud/gateway.js.map +1 -1
  85. package/runtime/gateways/cloud/to-cloud.d.ts +22 -9
  86. package/runtime/gateways/cloud/to-cloud.d.ts.map +1 -1
  87. package/runtime/gateways/cloud/to-cloud.js +75 -59
  88. package/runtime/gateways/cloud/to-cloud.js.map +1 -1
  89. package/runtime/gateways/file/key-bag-file.d.ts +1 -0
  90. package/runtime/gateways/file/key-bag-file.d.ts.map +1 -1
  91. package/runtime/gateways/file/key-bag-file.js +12 -0
  92. package/runtime/gateways/file/key-bag-file.js.map +1 -1
  93. package/runtime/gateways/indexeddb/gateway-impl.d.ts.map +1 -1
  94. package/runtime/gateways/indexeddb/gateway-impl.js.map +1 -1
  95. package/runtime/gateways/indexeddb/key-bag-indexeddb.d.ts +1 -0
  96. package/runtime/gateways/indexeddb/key-bag-indexeddb.d.ts.map +1 -1
  97. package/runtime/gateways/indexeddb/key-bag-indexeddb.js +6 -0
  98. package/runtime/gateways/indexeddb/key-bag-indexeddb.js.map +1 -1
  99. package/runtime/key-bag-memory.d.ts +1 -0
  100. package/runtime/key-bag-memory.d.ts.map +1 -1
  101. package/runtime/key-bag-memory.js +7 -0
  102. package/runtime/key-bag-memory.js.map +1 -1
  103. package/runtime/key-bag.d.ts +3 -0
  104. package/runtime/key-bag.d.ts.map +1 -1
  105. package/runtime/key-bag.js +6 -0
  106. package/runtime/key-bag.js.map +1 -1
  107. package/runtime/keyed-crypto.d.ts.map +1 -1
  108. package/runtime/keyed-crypto.js +5 -5
  109. package/runtime/keyed-crypto.js.map +1 -1
  110. package/tests/blockstore/keyed-crypto.test.ts +0 -150
  111. package/tests/blockstore/loader.test.ts +3 -2
  112. package/tests/blockstore/standalone.test.ts +1 -1
  113. package/tests/blockstore/transaction.test.ts +3 -3
  114. package/tests/fireproof/attachable.test.ts +1 -1
  115. package/tests/helpers.ts +7 -9
  116. package/tests/protocols/cloud/msger.test.ts +548 -0
  117. package/tests/react/use-all-docs.test.tsx +1 -2
  118. package/tests/react/use-fireproof-stability.test.tsx +1 -1
  119. package/types.d.ts +1 -2
  120. package/types.d.ts.map +1 -1
  121. package/use-fireproof/iframe-strategy.d.ts +5 -4
  122. package/use-fireproof/iframe-strategy.d.ts.map +1 -1
  123. package/use-fireproof/iframe-strategy.js +7 -11
  124. package/use-fireproof/iframe-strategy.js.map +1 -1
  125. package/use-fireproof/index.d.ts +6 -2
  126. package/use-fireproof/index.d.ts.map +1 -1
  127. package/use-fireproof/index.js +23 -3
  128. package/use-fireproof/index.js.map +1 -1
  129. package/use-fireproof/redirect-strategy.d.ts +11 -4
  130. package/use-fireproof/redirect-strategy.d.ts.map +1 -1
  131. package/use-fireproof/redirect-strategy.js +142 -20
  132. package/use-fireproof/redirect-strategy.js.map +1 -1
  133. package/utils.d.ts +5 -6
  134. package/utils.d.ts.map +1 -1
  135. package/utils.js +19 -67
  136. package/utils.js.map +1 -1
  137. package/tests/utils.test.ts +0 -192
@@ -1,6 +1,6 @@
1
1
  import { CoerceURI, Logger, Result, URI } from "@adviser/cement";
2
- import { EnDeCoder, Gestalt, MsgBase, MsgerParams, RequestOpts, MsgWithError, MsgWithConnAuth, QSId, AuthFactory, AuthType, FPJWKCloudAuthType } from "./msg-types.js";
3
- import { SuperThis } from "../../types.js";
2
+ import { EnDeCoder, Gestalt, MsgBase, MsgerParams, RequestOpts, MsgWithError, QSId, FPJWKCloudAuthType, MsgWithConn, ReqOpenConn, MsgWithOptionalConn } from "./msg-types.js";
3
+ import type { SuperThis } from "../../types.js";
4
4
  export declare function selectRandom<T>(arr: T[]): T;
5
5
  export declare function timeout<T>(ms: number, promise: Promise<T>): Promise<T>;
6
6
  export type OnMsgFn<T extends MsgBase = MsgBase> = (msg: MsgWithError<T>) => void;
@@ -10,25 +10,23 @@ export interface ExchangedGestalt {
10
10
  readonly remote: Gestalt;
11
11
  }
12
12
  export type OnErrorFn = (msg: Partial<MsgBase>, err: Error) => Partial<MsgBase>;
13
- export interface ActiveStream<S extends MsgBase, Q extends MsgBase> {
13
+ export interface ActiveStream {
14
14
  readonly id: string;
15
15
  readonly bind: {
16
- readonly msg: Q;
16
+ readonly msg: MsgBase;
17
17
  readonly opts: RequestOpts;
18
18
  };
19
19
  timeout?: unknown;
20
- controller?: ReadableStreamDefaultController<MsgWithError<S>>;
20
+ controller?: ReadableStreamDefaultController<MsgWithError<MsgBase>>;
21
21
  }
22
22
  export interface MsgRawConnection<T extends MsgBase = MsgBase> {
23
23
  readonly sthis: SuperThis;
24
- readonly exchangedGestalt: ExchangedGestalt;
25
- readonly activeBinds: Map<string, ActiveStream<T, MsgBase>>;
24
+ isReady: boolean;
26
25
  bind<S extends T, Q extends T>(req: Q, opts: RequestOpts): ReadableStream<MsgWithError<S>>;
27
26
  request<S extends T, Q extends T>(req: Q, opts: RequestOpts): Promise<MsgWithError<S>>;
28
27
  send<S extends T, Q extends T>(msg: Q): Promise<MsgWithError<S>>;
29
28
  start(): Promise<Result<void>>;
30
29
  close(o: T): Promise<Result<void>>;
31
- onMsg(msg: OnMsgFn<T>): UnReg;
32
30
  }
33
31
  export declare function jsonEnDe(sthis: SuperThis): EnDeCoder;
34
32
  export type MsgerParamsWithEnDe = MsgerParams & {
@@ -40,40 +38,57 @@ export interface OpenParams {
40
38
  }
41
39
  export declare function applyStart(prC: Promise<Result<MsgRawConnection>>): Promise<Result<MsgRawConnection>>;
42
40
  export declare function authTypeFromUri(logger: Logger, curi: CoerceURI): Promise<Result<FPJWKCloudAuthType>>;
43
- export declare class MsgConnected {
44
- static connect(auth: AuthType, mrc: Result<MsgRawConnection> | MsgRawConnection, conn?: Partial<QSId>): Promise<Result<MsgConnected>>;
45
- readonly sthis: SuperThis;
46
- readonly conn: QSId;
47
- readonly raw: MsgRawConnection;
48
- readonly exchangedGestalt: ExchangedGestalt;
49
- readonly activeBinds: Map<string, ActiveStream<MsgWithConnAuth, MsgBase>>;
50
- readonly id: string;
41
+ export interface MsgerConnectParams {
42
+ readonly msgerParam: Partial<MsgerParamsWithEnDe>;
43
+ readonly conn: Partial<ReqOpenConn>;
44
+ readonly mowh: MsgOpenWSAndHttp;
45
+ }
46
+ export declare class Msger {
47
+ static connect(sthis: SuperThis, curl: CoerceURI, mParam: Partial<MsgerConnectParams>): Promise<Result<VirtualConnected>>;
51
48
  private constructor();
52
- attachAuth(auth: AuthFactory): MsgConnectedAuth;
53
49
  }
54
- export declare class MsgConnectedAuth implements MsgRawConnection<MsgWithConnAuth> {
50
+ export declare class MsgOpenWSAndHttp {
51
+ openHttp(vc: SuperThis, urls: URI[], msgP: MsgerParamsWithEnDe, exGestalt: ExchangedGestalt): Promise<Result<MsgRawConnection>>;
52
+ openWS(vc: SuperThis, url: URI, msgP: MsgerParamsWithEnDe, exGestalt: ExchangedGestalt): Promise<Result<MsgRawConnection>>;
53
+ }
54
+ interface RetryItem {
55
+ readonly retryCount: number;
56
+ }
57
+ export interface VirtualConnectedOptionals {
58
+ readonly retryCount: number;
59
+ readonly retryDelay: number;
60
+ readonly openWSorHttp: MsgOpenWSAndHttp;
61
+ readonly conn: Partial<ReqOpenConn>;
62
+ }
63
+ export interface VirtualConnectedRequired {
64
+ readonly curl: CoerceURI;
65
+ readonly msgerParams: Partial<MsgerParamsWithEnDe>;
66
+ }
67
+ export type VirtualConnectedOpts = Partial<VirtualConnectedOptionals> & Required<VirtualConnectedRequired>;
68
+ export declare class VirtualConnected {
55
69
  readonly sthis: SuperThis;
56
- readonly conn: QSId;
57
- readonly raw: MsgRawConnection;
58
- readonly exchangedGestalt: ExchangedGestalt;
59
- readonly activeBinds: Map<string, ActiveStream<MsgWithConnAuth, MsgBase>>;
70
+ readonly opts: VirtualConnectedOptionals & VirtualConnectedRequired;
71
+ readonly mowh: MsgOpenWSAndHttp;
72
+ readonly logger: Logger;
60
73
  readonly id: string;
61
- readonly authFactory: AuthFactory;
62
- constructor(conn: MsgConnected, authFactory: AuthFactory);
63
- bind<S extends MsgWithConnAuth, Q extends MsgWithConnAuth>(req: Q, opts: RequestOpts): ReadableStream<MsgWithError<S>>;
64
- authType(): Promise<Result<AuthType>>;
65
- msgConnAuth(): Promise<Result<MsgWithConnAuth>>;
66
- request<S extends MsgWithConnAuth, Q extends MsgWithConnAuth>(req: Q, opts: RequestOpts): Promise<MsgWithError<S>>;
67
- send<S extends MsgWithConnAuth, Q extends MsgWithConnAuth>(msg: Q): Promise<MsgWithError<S>>;
68
- start(): Promise<Result<void>>;
69
- close(t: MsgWithConnAuth): Promise<Result<void>>;
70
- onMsg(msgFn: OnMsgFn<MsgWithConnAuth>): UnReg;
71
- }
72
- export declare class Msger {
73
- static openHttp(sthis: SuperThis, urls: URI[], msgP: MsgerParamsWithEnDe, exGestalt: ExchangedGestalt): Promise<Result<MsgRawConnection>>;
74
- static openWS(sthis: SuperThis, url: URI, msgP: MsgerParamsWithEnDe, exGestalt: ExchangedGestalt): Promise<Result<MsgRawConnection>>;
75
- static open(sthis: SuperThis, auth: AuthType, curl: CoerceURI, imsgP?: Partial<MsgerParamsWithEnDe>): Promise<Result<MsgRawConnection>>;
76
- static connect(sthis: SuperThis, auth: AuthType, curl: CoerceURI, imsgP?: Partial<MsgerParamsWithEnDe>, conn?: Partial<QSId>): Promise<Result<MsgConnected>>;
77
- private constructor();
74
+ exchangedGestalt?: ExchangedGestalt;
75
+ realConn?: MsgRawConnection;
76
+ retries: RetryItem[];
77
+ virtualConn?: QSId;
78
+ constructor(sthis: SuperThis, opts: VirtualConnectedOpts);
79
+ get conn(): QSId;
80
+ readonly activeBinds: Map<string, ActiveStream>;
81
+ private handleBindRealConn;
82
+ private ensureOpts;
83
+ bind<S extends MsgWithConn, Q extends MsgWithOptionalConn>(req: Q, iopts: RequestOpts): ReadableStream<MsgWithError<S>>;
84
+ request<S extends MsgWithConn, Q extends MsgWithOptionalConn>(req: Q, iopts: RequestOpts): Promise<MsgWithError<S>>;
85
+ send<S extends MsgWithConn, Q extends MsgWithOptionalConn>(msg: Q): Promise<MsgWithError<S>>;
86
+ close(t: MsgWithOptionalConn): Promise<Result<void>>;
87
+ onMsg(msgFn: OnMsgFn<MsgWithConn>): UnReg;
88
+ private connect;
89
+ private getQSIdWithSideEffect;
90
+ private mutex;
91
+ private getRealConn;
78
92
  }
93
+ export {};
79
94
  //# sourceMappingURL=msger.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"msger.d.ts","sourceRoot":"","sources":["../../../../../src/protocols/cloud/msger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"msger.d.ts","sourceRoot":"","sources":["../../../../../src/protocols/cloud/msger.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  import { BuildURI, Result, runtimeFn, URI } from "@adviser/cement";
2
- import { buildReqGestalt, defaultGestalt, MsgIsResGestalt, buildReqOpen, MsgIsConnected, MsgIsError, MsgIsResOpen, MsgIsTid, buildReqClose, MsgIsResClose, } from "./msg-types.js";
2
+ import { buildReqGestalt, defaultGestalt, MsgIsResGestalt, MsgIsError, buildReqOpen, MsgIsResOpen, MsgIsConnected, MsgIsWithConn, } from "./msg-types.js";
3
3
  import { ensurePath, HttpConnection } from "./http-connection.js";
4
4
  import { WSConnection } from "./ws-connection.js";
5
+ import { ensureLogger, sleep } from "../../utils.js";
6
+ import pLimit from "@fireproof/vendor/p-limit";
5
7
  export function selectRandom(arr) {
6
8
  return arr[Math.floor(Math.random() * arr.length)];
7
9
  }
@@ -56,91 +58,6 @@ export async function authTypeFromUri(logger, curi) {
56
58
  },
57
59
  });
58
60
  }
59
- export class MsgConnected {
60
- static async connect(auth, mrc, conn = {}) {
61
- if (Result.Is(mrc)) {
62
- if (mrc.isErr()) {
63
- return Result.Err(mrc.Err());
64
- }
65
- mrc = mrc.Ok();
66
- }
67
- const res = await mrc.request(buildReqOpen(mrc.sthis, auth, conn), { waitFor: MsgIsResOpen });
68
- if (MsgIsError(res) || !MsgIsResOpen(res)) {
69
- return mrc.sthis.logger.Error().Err(res).Msg("unexpected response").ResultError();
70
- }
71
- return Result.Ok(new MsgConnected(mrc, res.conn));
72
- }
73
- constructor(raw, conn) {
74
- this.sthis = raw.sthis;
75
- this.raw = raw;
76
- this.exchangedGestalt = raw.exchangedGestalt;
77
- this.conn = conn;
78
- this.activeBinds = raw.activeBinds;
79
- this.id = this.sthis.nextId().str;
80
- }
81
- attachAuth(auth) {
82
- return new MsgConnectedAuth(this, auth);
83
- }
84
- }
85
- export class MsgConnectedAuth {
86
- constructor(conn, authFactory) {
87
- this.id = conn.id;
88
- this.raw = conn.raw;
89
- this.conn = conn.conn;
90
- this.sthis = conn.sthis;
91
- this.authFactory = authFactory;
92
- this.exchangedGestalt = conn.exchangedGestalt;
93
- this.activeBinds = conn.activeBinds;
94
- }
95
- bind(req, opts) {
96
- const stream = this.raw.bind({ ...req, conn: req.conn || this.conn }, opts);
97
- const ts = new TransformStream({
98
- transform: (chunk, controller) => {
99
- if (!MsgIsTid(chunk, req.tid)) {
100
- return;
101
- }
102
- if (MsgIsConnected(chunk, this.conn)) {
103
- if (opts.waitFor?.(chunk) || MsgIsError(chunk)) {
104
- controller.enqueue(chunk);
105
- }
106
- }
107
- },
108
- });
109
- stream.pipeThrough(ts);
110
- return ts.readable;
111
- }
112
- authType() {
113
- return this.authFactory();
114
- }
115
- msgConnAuth() {
116
- return this.authType().then((r) => {
117
- if (r.isErr()) {
118
- return Result.Err(r);
119
- }
120
- return Result.Ok({ conn: this.conn, auth: r.Ok() });
121
- });
122
- }
123
- request(req, opts) {
124
- return this.raw.request({ ...req, conn: req.conn || this.conn }, opts);
125
- }
126
- send(msg) {
127
- return this.raw.send({ ...msg, conn: msg.conn || this.conn });
128
- }
129
- start() {
130
- return this.raw.start();
131
- }
132
- async close(t) {
133
- await this.request(buildReqClose(this.sthis, t.auth, this.conn), { waitFor: MsgIsResClose });
134
- return await this.raw.close(t);
135
- }
136
- onMsg(msgFn) {
137
- return this.raw.onMsg((msg) => {
138
- if (MsgIsConnected(msg, this.conn)) {
139
- msgFn(msg);
140
- }
141
- });
142
- }
143
- }
144
61
  function initialFPUri(curl) {
145
62
  let gestaltUrl = URI.from(curl);
146
63
  if (["", "/"].includes(gestaltUrl.pathname)) {
@@ -149,50 +66,254 @@ function initialFPUri(curl) {
149
66
  return gestaltUrl;
150
67
  }
151
68
  export class Msger {
152
- static async openHttp(sthis, urls, msgP, exGestalt) {
153
- return Result.Ok(new HttpConnection(sthis, urls, msgP, exGestalt));
69
+ static connect(sthis, curl, mParam) {
70
+ const vc = new VirtualConnected(sthis, {
71
+ curl,
72
+ conn: mParam.conn,
73
+ openWSorHttp: mParam.mowh,
74
+ msgerParams: mParam.msgerParam ?? {},
75
+ });
76
+ return Promise.resolve(Result.Ok(vc));
77
+ }
78
+ constructor() {
79
+ }
80
+ }
81
+ export class MsgOpenWSAndHttp {
82
+ async openHttp(vc, urls, msgP, exGestalt) {
83
+ return Result.Ok(new HttpConnection(vc, urls, msgP, exGestalt));
154
84
  }
155
- static async openWS(sthis, url, msgP, exGestalt) {
156
- let ws;
157
- url = url.build().setParam("random", sthis.nextId().str).URI();
85
+ async openWS(vc, url, msgP, exGestalt) {
86
+ url = url.build().defParam("random", vc.nextId().str).URI();
158
87
  const wsUrl = ensurePath(url, "ws");
88
+ let wsFactory;
159
89
  if (runtimeFn().isNodeIsh) {
160
90
  const { WebSocket } = await import("ws");
161
- ws = new WebSocket(wsUrl);
91
+ wsFactory = () => new WebSocket(wsUrl);
162
92
  }
163
93
  else {
164
- ws = new WebSocket(wsUrl);
94
+ wsFactory = () => new WebSocket(wsUrl);
95
+ }
96
+ const wsc = new WSConnection(vc, wsFactory(), msgP, exGestalt);
97
+ return Result.Ok(wsc);
98
+ }
99
+ }
100
+ export class VirtualConnected {
101
+ constructor(sthis, opts) {
102
+ this.retries = [];
103
+ this.activeBinds = new Map();
104
+ this.mutex = pLimit(1);
105
+ this.sthis = sthis;
106
+ this.id = sthis.nextId().str;
107
+ this.logger = ensureLogger(sthis, "VirtualConnected");
108
+ this.opts = {
109
+ ...opts,
110
+ openWSorHttp: opts.openWSorHttp || new MsgOpenWSAndHttp(),
111
+ retryCount: opts.retryCount || 3,
112
+ retryDelay: opts.retryDelay || 500,
113
+ conn: { reqId: sthis.nextId().str, ...opts.conn },
114
+ };
115
+ this.mowh = this.opts.openWSorHttp;
116
+ }
117
+ get conn() {
118
+ if (!this.virtualConn) {
119
+ throw new Error("conn is not set");
165
120
  }
166
- return Result.Ok(new WSConnection(sthis, ws, msgP, exGestalt));
121
+ return this.virtualConn;
122
+ }
123
+ async handleBindRealConn(realConn, req, as) {
124
+ const conn = { ...this.conn, ...req.conn };
125
+ const stream = realConn.bind({ ...as.bind.msg, auth: req.auth, conn }, as.bind.opts);
126
+ for await (const msg of stream) {
127
+ try {
128
+ if (MsgIsConnected(msg, this.conn) || MsgIsConnected(msg, conn)) {
129
+ as.controller?.enqueue(msg);
130
+ }
131
+ }
132
+ catch (err) {
133
+ this.sthis.logger.Error().Err(err).Any({ msg }).Msg("Error in handleBindRealConn callback[ignored]");
134
+ }
135
+ }
136
+ }
137
+ ensureOpts(opts) {
138
+ return {
139
+ ...opts,
140
+ timeout: opts.timeout ?? this.opts.msgerParams.timeout ?? 3000,
141
+ };
142
+ }
143
+ bind(req, iopts) {
144
+ const opts = this.ensureOpts(iopts);
145
+ const id = this.sthis.nextId().str;
146
+ return new ReadableStream({
147
+ cancel: (err) => {
148
+ this.sthis.logger.Debug().Msg("vc-bind-cancel", id, err);
149
+ this.activeBinds.delete(id);
150
+ },
151
+ start: (ctl) => {
152
+ this.getRealConn(req, opts, async (realConn) => {
153
+ const as = {
154
+ id,
155
+ bind: {
156
+ msg: req,
157
+ opts,
158
+ },
159
+ controller: ctl,
160
+ };
161
+ this.activeBinds.set(id, as);
162
+ this.handleBindRealConn(realConn, req, as);
163
+ return Result.Ok(undefined);
164
+ }).catch((err) => {
165
+ ctl.error({
166
+ type: "error",
167
+ src: "VirtualConnection:bind",
168
+ message: err.message,
169
+ tid: req.tid,
170
+ version: req.version,
171
+ auth: req.auth,
172
+ stack: [],
173
+ });
174
+ });
175
+ },
176
+ });
177
+ }
178
+ request(req, iopts) {
179
+ const opts = this.ensureOpts(iopts);
180
+ return this.getRealConn(req, opts, (realConn) => realConn.request({
181
+ ...req,
182
+ conn: { ...this.virtualConn, ...req.conn },
183
+ }, opts));
184
+ }
185
+ send(msg) {
186
+ return this.getRealConn(msg, {
187
+ waitFor: () => true,
188
+ }, async (realConn) => {
189
+ const ret = await realConn.send({
190
+ ...msg,
191
+ conn: { ...this.conn, ...msg.conn },
192
+ });
193
+ return ret;
194
+ });
195
+ }
196
+ close(t) {
197
+ return this.getRealConn(t, {
198
+ waitFor: () => true,
199
+ noRetry: true,
200
+ }, (realConn) => realConn.close(t));
201
+ }
202
+ onMsg(msgFn) {
203
+ throw new Error("Method not implemented.");
167
204
  }
168
- static async open(sthis, auth, curl, imsgP = {}) {
169
- const jsMsgP = defaultMsgParams(sthis, { ...imsgP, mime: "application/json", ende: jsonEnDe(sthis) });
205
+ async connect(auth, curl, imsgP = {}) {
206
+ const jsMsgP = defaultMsgParams(this.sthis, { ...imsgP, mime: "application/json", ende: jsonEnDe(this.sthis) });
170
207
  const gestaltUrl = initialFPUri(curl);
171
- const gs = defaultGestalt(defaultMsgParams(sthis, imsgP), { id: "FP-Universal-Client" });
172
- const rHC = await Msger.openHttp(sthis, [gestaltUrl], jsMsgP, { my: gs, remote: gs });
208
+ const gs = defaultGestalt(defaultMsgParams(this.sthis, imsgP), { id: "FP-Universal-Client" });
209
+ const rHC = await this.mowh.openHttp(this.sthis, [gestaltUrl], jsMsgP, { my: gs, remote: gs });
173
210
  if (rHC.isErr()) {
174
211
  return rHC;
175
212
  }
176
213
  const hc = rHC.Ok();
177
- const resGestalt = await hc.request(buildReqGestalt(sthis, auth, gs), {
214
+ const resGestalt = await hc.request(buildReqGestalt(this.sthis, auth, gs), {
178
215
  waitFor: MsgIsResGestalt,
216
+ noConn: true,
179
217
  });
180
218
  if (!MsgIsResGestalt(resGestalt)) {
181
- return sthis.logger.Error().Any({ resGestalt }).Msg("should be ResGestalt").ResultError();
219
+ return this.logger.Error().Any({ resGestalt }).Msg("should be ResGestalt").ResultError();
182
220
  }
183
221
  await hc.close(resGestalt);
184
222
  const exGt = { my: gs, remote: resGestalt.gestalt };
185
- const msgP = defaultMsgParams(sthis, imsgP);
223
+ const msgP = defaultMsgParams(this.sthis, imsgP);
224
+ this.exchangedGestalt = exGt;
225
+ let rRealConn;
186
226
  if (exGt.remote.protocolCapabilities.includes("reqRes") && !exGt.remote.protocolCapabilities.includes("stream")) {
187
- return applyStart(Msger.openHttp(sthis, exGt.remote.httpEndpoints.map((i) => BuildURI.from(curl).resolve(i).URI()), msgP, exGt));
227
+ rRealConn = await this.mowh.openHttp(this.sthis, exGt.remote.httpEndpoints.map((i) => BuildURI.from(curl).resolve(i).URI()), msgP, exGt);
228
+ }
229
+ else {
230
+ const wsUrl = BuildURI.from(gestaltUrl).resolve(selectRandom(exGt.remote.wsEndpoints)).URI();
231
+ rRealConn = await this.mowh.openWS(this.sthis, wsUrl, msgP, exGt);
232
+ }
233
+ if (rRealConn.isErr()) {
234
+ return rRealConn;
235
+ }
236
+ const realConn = rRealConn.Ok();
237
+ const rStart = await realConn.start();
238
+ if (rStart.isErr()) {
239
+ return Result.Err(rStart);
188
240
  }
189
- const wsUrl = BuildURI.from(gestaltUrl).resolve(selectRandom(exGt.remote.wsEndpoints)).URI();
190
- return applyStart(Msger.openWS(sthis, wsUrl, msgP, exGt));
241
+ return rRealConn;
191
242
  }
192
- static connect(sthis, auth, curl, imsgP = {}, conn = {}) {
193
- return Msger.open(sthis, auth, curl, imsgP).then((srv) => MsgConnected.connect(auth, srv, conn));
243
+ async getQSIdWithSideEffect(msg, conn) {
244
+ const mOpen = await this.request(buildReqOpen(this.sthis, msg.auth, conn), {
245
+ waitFor: MsgIsResOpen,
246
+ noConn: true,
247
+ });
248
+ if (MsgIsError(mOpen)) {
249
+ return mOpen;
250
+ }
251
+ this.virtualConn = mOpen.conn;
252
+ return mOpen;
194
253
  }
195
- constructor() {
254
+ async getRealConn(msg, iopts, action) {
255
+ const opts = this.ensureOpts(iopts);
256
+ if (!this.realConn) {
257
+ await this.mutex(async () => {
258
+ if (this.retries.length >= this.opts.retryCount) {
259
+ return Promise.resolve({
260
+ type: "error",
261
+ src: "VirtualConnection:getRealConn",
262
+ message: "retry count exceeded",
263
+ tid: msg.tid,
264
+ version: msg.version,
265
+ auth: msg.auth,
266
+ stack: [],
267
+ });
268
+ }
269
+ const rConn = await this.connect(msg.auth, this.opts.curl, this.opts.msgerParams);
270
+ if (rConn.isErr()) {
271
+ this.retries.push({ retryCount: this.retries.length + 1 });
272
+ await sleep(this.opts.retryDelay * this.retries.length);
273
+ return this.getRealConn(msg, opts, action);
274
+ }
275
+ this.realConn = rConn.Ok();
276
+ const mQSid = await this.getQSIdWithSideEffect(msg, {
277
+ reqId: this.sthis.nextId().str,
278
+ ...this.virtualConn,
279
+ ...this.opts.conn,
280
+ });
281
+ if (MsgIsError(mQSid)) {
282
+ return {
283
+ ...mQSid,
284
+ tid: msg.tid,
285
+ };
286
+ }
287
+ for (const as of this.activeBinds.values()) {
288
+ void this.handleBindRealConn(this.realConn, msg, as);
289
+ }
290
+ });
291
+ const ret = await this.getRealConn(msg, opts, action);
292
+ return ret;
293
+ }
294
+ else {
295
+ if (!this.realConn.isReady) {
296
+ await this.realConn.close(msg);
297
+ this.realConn = undefined;
298
+ this.retries = [];
299
+ return this.getRealConn(msg, opts, action);
300
+ }
301
+ if (!opts.noConn && !this.virtualConn) {
302
+ const conn = MsgIsWithConn(msg) ? { conn: msg.conn } : {};
303
+ return {
304
+ type: "error",
305
+ src: msg,
306
+ message: "virtualConn is not set",
307
+ tid: msg.tid,
308
+ ...conn,
309
+ version: msg.version,
310
+ auth: msg.auth,
311
+ stack: [],
312
+ };
313
+ }
314
+ const ret = await action(this.realConn);
315
+ return ret;
316
+ }
196
317
  }
197
318
  }
198
319
  //# sourceMappingURL=msger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"msger.js","sourceRoot":"","sources":["../../../../../src/protocols/cloud/msger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"msger.js","sourceRoot":"","sources":["../../../../../src/protocols/cloud/msger.ts"],"names":[],"mappings":"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"}
@@ -7,14 +7,24 @@ export interface WSReqOpen {
7
7
  readonly reqOpen: ReqOpen;
8
8
  readonly ws: WebSocket;
9
9
  }
10
+ interface WaitForTidItem {
11
+ readonly opts: WaitForTid;
12
+ readonly timeout?: ReturnType<typeof setTimeout>;
13
+ }
14
+ declare class WaitForTids {
15
+ readonly waitForTids: Map<string, WaitForTidItem>;
16
+ start(sthis: SuperThis, logger: Logger, waitFor: WaitForTid): void;
17
+ stop(tid: string): void;
18
+ resolve(msg: MsgBase): WaitForTidItem | undefined;
19
+ }
10
20
  export declare class WSConnection extends MsgRawConnectionBase implements MsgRawConnection {
11
21
  #private;
12
22
  readonly logger: Logger;
13
23
  readonly msgP: MsgerParamsWithEnDe;
14
24
  readonly ws: WebSocket;
15
- readonly waitForTid: Map<string, WaitForTid>;
16
- opened: boolean;
25
+ readonly waitForTid: WaitForTids;
17
26
  readonly id: string;
27
+ isReady: boolean;
18
28
  constructor(sthis: SuperThis, ws: WebSocket, msgP: MsgerParamsWithEnDe, exGestalt: ExchangedGestalt);
19
29
  start(): Promise<Result<void>>;
20
30
  close(): Promise<Result<void>>;
@@ -22,8 +32,9 @@ export declare class WSConnection extends MsgRawConnectionBase implements MsgRaw
22
32
  send<Q extends MsgBase, S extends MsgBase>(msg: Q): Promise<S>;
23
33
  onMsg<S extends MsgBase>(fn: OnMsgFn<S>): UnReg;
24
34
  onClose(fn: UnReg): UnReg;
25
- readonly activeBinds: Map<string, ActiveStream<MsgBase, MsgBase>>;
35
+ readonly activeBinds: Map<string, ActiveStream>;
26
36
  bind<Q extends MsgBase, S extends MsgBase>(req: Q, opts: RequestOpts): ReadableStream<MsgWithError<S>>;
27
37
  request<Q extends MsgBase, S extends MsgBase>(req: Q, opts: RequestOpts): Promise<MsgWithError<S>>;
28
38
  }
39
+ export {};
29
40
  //# sourceMappingURL=ws-connection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ws-connection.d.ts","sourceRoot":"","sources":["../../../../../src/protocols/cloud/ws-connection.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,MAAM,EAAE,MAAM,EAAa,MAAM,iBAAiB,CAAC;AACtF,OAAO,EAAE,OAAO,EAA6B,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAY,MAAM,gBAAgB,CAAC;AAC9H,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnH,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG3C,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;CACxB;AAED,qBAAa,YAAa,SAAQ,oBAAqB,YAAW,gBAAgB;;IAChF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;IAMvB,QAAQ,CAAC,UAAU,0BAAiC;IAEpD,MAAM,UAAS;IAEf,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;gBAER,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAE,gBAAgB;IAS7F,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IA+E9B,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAQpC,KAAK,CAAC,CAAC,SAAS,OAAO,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC;IAK/D,IAAI,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAM9D,KAAK,CAAC,CAAC,SAAS,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK;IAM/C,OAAO,CAAC,EAAE,EAAE,KAAK,GAAG,KAAK;IAMzB,QAAQ,CAAC,WAAW,8CAAqD;IACzE,IAAI,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IA2ChG,OAAO,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;CAczG"}
1
+ {"version":3,"file":"ws-connection.d.ts","sourceRoot":"","sources":["../../../../../src/protocols/cloud/ws-connection.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,MAAM,EAAE,MAAM,EAAa,MAAM,iBAAiB,CAAC;AACtF,OAAO,EAAE,OAAO,EAA6B,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACpH,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnH,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG3C,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;CACxB;AAED,UAAU,cAAc;IACtB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;CAClD;AAED,cAAM,WAAW;IACf,QAAQ,CAAC,WAAW,8BAAqC;IAEzD,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU;IAuB3D,IAAI,CAAC,GAAG,EAAE,MAAM;IAWhB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,cAAc,GAAG,SAAS;CAalD;AAID,qBAAa,YAAa,SAAQ,oBAAqB,YAAW,gBAAgB;;IAChF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;IAMvB,QAAQ,CAAC,UAAU,cAAqB;IAExC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,OAAO,UAAS;gBAEJ,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,mBAAmB,EAAE,SAAS,EAAE,gBAAgB;IAS7F,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAmE9B,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IASpC,KAAK,CAAC,CAAC,SAAS,OAAO,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC;IAK/D,IAAI,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAM9D,KAAK,CAAC,CAAC,SAAS,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK;IAM/C,OAAO,CAAC,EAAE,EAAE,KAAK,GAAG,KAAK;IAMzB,QAAQ,CAAC,WAAW,4BAAmC;IACvD,IAAI,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IA+ChG,OAAO,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,SAAS,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;CAgBzG"}