@mtkruto/node 0.0.982 → 0.0.984

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 (145) hide show
  1. package/esm/client/3_client.d.ts +30 -1
  2. package/esm/client/3_client.js +89 -28
  3. package/esm/constants.d.ts +1 -1
  4. package/esm/constants.js +1 -1
  5. package/esm/deps.d.ts +2 -2
  6. package/esm/deps.js +2 -2
  7. package/esm/transport/2_transport_provider.d.ts +0 -4
  8. package/esm/transport/2_transport_provider.js +0 -35
  9. package/esm/types/3_message.d.ts +2 -0
  10. package/esm/types/3_message.js +2 -0
  11. package/package.json +1 -1
  12. package/script/client/3_client.d.ts +30 -1
  13. package/script/client/3_client.js +89 -28
  14. package/script/constants.d.ts +1 -1
  15. package/script/constants.js +1 -1
  16. package/script/deps.d.ts +2 -2
  17. package/script/deps.js +2 -2
  18. package/script/transport/2_transport_provider.d.ts +0 -4
  19. package/script/transport/2_transport_provider.js +1 -37
  20. package/script/types/3_message.d.ts +2 -0
  21. package/script/types/3_message.js +2 -0
  22. package/esm/connection/1_connection_http.d.ts +0 -16
  23. package/esm/connection/1_connection_http.js +0 -91
  24. package/esm/transport/1_transport_piped.d.ts +0 -10
  25. package/esm/transport/1_transport_piped.js +0 -23
  26. package/script/connection/1_connection_http.d.ts +0 -16
  27. package/script/connection/1_connection_http.js +0 -95
  28. package/script/transport/1_transport_piped.d.ts +0 -10
  29. package/script/transport/1_transport_piped.js +0 -27
  30. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/_util/diff.d.ts +0 -0
  31. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/_util/diff.js +0 -0
  32. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/_constants.d.ts +0 -0
  33. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/_constants.js +0 -0
  34. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/_format.d.ts +0 -0
  35. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/_format.js +0 -0
  36. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert.d.ts +0 -0
  37. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert.js +0 -0
  38. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_almost_equals.d.ts +0 -0
  39. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_almost_equals.js +0 -0
  40. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_array_includes.d.ts +0 -0
  41. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_array_includes.js +0 -0
  42. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_equals.d.ts +0 -0
  43. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_equals.js +0 -0
  44. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_exists.d.ts +0 -0
  45. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_exists.js +0 -0
  46. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_false.d.ts +0 -0
  47. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_false.js +0 -0
  48. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_instance_of.d.ts +0 -0
  49. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_instance_of.js +0 -0
  50. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_is_error.d.ts +0 -0
  51. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_is_error.js +0 -0
  52. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_match.d.ts +0 -0
  53. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_match.js +0 -0
  54. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_not_equals.d.ts +0 -0
  55. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_not_equals.js +0 -0
  56. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_not_instance_of.d.ts +0 -0
  57. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_not_instance_of.js +0 -0
  58. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_not_match.d.ts +0 -0
  59. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_not_match.js +0 -0
  60. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_not_strict_equals.d.ts +0 -0
  61. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_not_strict_equals.js +0 -0
  62. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_object_match.d.ts +0 -0
  63. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_object_match.js +0 -0
  64. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_rejects.d.ts +0 -0
  65. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_rejects.js +0 -0
  66. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_strict_equals.d.ts +0 -0
  67. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_strict_equals.js +0 -0
  68. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_string_includes.d.ts +0 -0
  69. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_string_includes.js +0 -0
  70. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_throws.d.ts +0 -0
  71. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_throws.js +0 -0
  72. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assertion_error.d.ts +0 -0
  73. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assertion_error.js +0 -0
  74. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/equal.d.ts +0 -0
  75. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/equal.js +0 -0
  76. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/fail.d.ts +0 -0
  77. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/fail.js +0 -0
  78. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/mod.d.ts +0 -0
  79. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/mod.js +0 -0
  80. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/unimplemented.d.ts +0 -0
  81. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/unimplemented.js +0 -0
  82. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/unreachable.d.ts +0 -0
  83. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/unreachable.js +0 -0
  84. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/encoding/base64.d.ts +0 -0
  85. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/encoding/base64.js +0 -0
  86. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/fmt/colors.d.ts +0 -0
  87. /package/esm/deps/deno.land/{std@0.198.0 → std@0.199.0}/fmt/colors.js +0 -0
  88. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/_util/diff.d.ts +0 -0
  89. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/_util/diff.js +0 -0
  90. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/_constants.d.ts +0 -0
  91. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/_constants.js +0 -0
  92. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/_format.d.ts +0 -0
  93. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/_format.js +0 -0
  94. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert.d.ts +0 -0
  95. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert.js +0 -0
  96. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_almost_equals.d.ts +0 -0
  97. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_almost_equals.js +0 -0
  98. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_array_includes.d.ts +0 -0
  99. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_array_includes.js +0 -0
  100. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_equals.d.ts +0 -0
  101. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_equals.js +0 -0
  102. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_exists.d.ts +0 -0
  103. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_exists.js +0 -0
  104. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_false.d.ts +0 -0
  105. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_false.js +0 -0
  106. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_instance_of.d.ts +0 -0
  107. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_instance_of.js +0 -0
  108. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_is_error.d.ts +0 -0
  109. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_is_error.js +0 -0
  110. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_match.d.ts +0 -0
  111. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_match.js +0 -0
  112. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_not_equals.d.ts +0 -0
  113. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_not_equals.js +0 -0
  114. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_not_instance_of.d.ts +0 -0
  115. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_not_instance_of.js +0 -0
  116. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_not_match.d.ts +0 -0
  117. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_not_match.js +0 -0
  118. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_not_strict_equals.d.ts +0 -0
  119. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_not_strict_equals.js +0 -0
  120. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_object_match.d.ts +0 -0
  121. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_object_match.js +0 -0
  122. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_rejects.d.ts +0 -0
  123. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_rejects.js +0 -0
  124. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_strict_equals.d.ts +0 -0
  125. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_strict_equals.js +0 -0
  126. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_string_includes.d.ts +0 -0
  127. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_string_includes.js +0 -0
  128. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_throws.d.ts +0 -0
  129. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assert_throws.js +0 -0
  130. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assertion_error.d.ts +0 -0
  131. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/assertion_error.js +0 -0
  132. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/equal.d.ts +0 -0
  133. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/equal.js +0 -0
  134. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/fail.d.ts +0 -0
  135. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/fail.js +0 -0
  136. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/mod.d.ts +0 -0
  137. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/mod.js +0 -0
  138. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/unimplemented.d.ts +0 -0
  139. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/unimplemented.js +0 -0
  140. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/unreachable.d.ts +0 -0
  141. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/assert/unreachable.js +0 -0
  142. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/encoding/base64.d.ts +0 -0
  143. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/encoding/base64.js +0 -0
  144. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/fmt/colors.d.ts +0 -0
  145. /package/script/deps/deno.land/{std@0.198.0 → std@0.199.0}/fmt/colors.js +0 -0
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.httpTransportProvider = exports.webSocketTransportProvider = void 0;
4
- const _1_connection_http_js_1 = require("../connection/1_connection_http.js");
3
+ exports.webSocketTransportProvider = void 0;
5
4
  const _1_connection_web_socket_js_1 = require("../connection/1_connection_web_socket.js");
6
- const _1_transport_piped_js_1 = require("./1_transport_piped.js");
7
5
  const _1_transport_intermediate_js_1 = require("./1_transport_intermediate.js");
8
6
  const dcToNameMap = {
9
7
  "1": "pluto",
@@ -33,37 +31,3 @@ const webSocketTransportProvider = ({ initialDc, wss }) => {
33
31
  };
34
32
  };
35
33
  exports.webSocketTransportProvider = webSocketTransportProvider;
36
- const dcToIPv4Map = {
37
- "1": "149.154.175.50",
38
- "1-test": "149.154.175.10",
39
- "2": "149.154.167.51",
40
- "2-test": "149.154.167.40",
41
- "3": "149.154.175.100",
42
- "3-test": "149.154.175.117",
43
- "4": "149.154.167.91",
44
- "5": "149.154.171.5",
45
- };
46
- const dcToIPv6Map = {
47
- "1": "[2001:b28:f23d:f001::a]",
48
- "1-test": "[2001:b28:f23d:f001::e]",
49
- "2": "[2001:67c:4e8:f002::a]",
50
- "2-test": "[2001:67c:4e8:f002::e]",
51
- "3": "[2001:b28:f23d:f003::a]",
52
- "3-test": "[2001:b28:f23d:f003::e]",
53
- "4": "[2001:67c:4e8:f004::a]",
54
- "5": "[2001:b28:f23f:f005::a]",
55
- };
56
- const httpTransportProvider = ({ initialDc, secure, v6 }) => {
57
- return {
58
- initialDc,
59
- createTransport({ dc, cdn }) {
60
- dc ??= initialDc;
61
- const url = secure ? `https://${dcToNameMap[dc]}${cdn ? "-1" : ""}.web.telegram.org/${dc.endsWith("-test") ? "apiw1_test" : "apiw1"}` : `http://${(v6 ? dcToIPv6Map : dcToIPv4Map)[dc]}/${dc.endsWith("-test") ? "api_test" : "api"}`;
62
- const connection = new _1_connection_http_js_1.ConnectionHTTP(url);
63
- const transport = new _1_transport_piped_js_1.TransportPiped(connection);
64
- const dcId = getDcId(dc, cdn);
65
- return { connection, transport, dcId };
66
- },
67
- };
68
- };
69
- exports.httpTransportProvider = httpTransportProvider;
@@ -22,6 +22,8 @@ import { Venue } from "./0_venue.js";
22
22
  import { Location } from "./0_location.js";
23
23
  /** This object represents a message. */
24
24
  export interface Message {
25
+ /** Whether the message is outgoing */
26
+ out: boolean;
25
27
  /** Unique message identifier inside this chat */
26
28
  id: number;
27
29
  /** Unique identifier of a message thread to which the message belongs; for supergroups only */
@@ -90,6 +90,7 @@ async function getReply(message_, chat, getMessage) {
90
90
  }
91
91
  async function constructServiceMessage(message_, chat, getEntity, getMessage) {
92
92
  const message = {
93
+ out: message_.out ?? false,
93
94
  id: message_.id,
94
95
  chat: chat,
95
96
  date: new Date(message_.date * 1000),
@@ -244,6 +245,7 @@ async function constructMessage(message_, getEntity, getMessage, getStickerSetNa
244
245
  return await constructServiceMessage(message_, chat_, getEntity, getMessage);
245
246
  }
246
247
  const message = {
248
+ out: message_.out ?? false,
247
249
  id: message_.id,
248
250
  chat: chat_,
249
251
  date: new Date(message_.date * 1000),
@@ -1,16 +0,0 @@
1
- import { ConnectionFramed } from "./0_connection.js";
2
- export declare class ConnectionHTTP extends ConnectionFramed implements ConnectionFramed {
3
- private readonly url;
4
- private rMutex;
5
- private wMutex;
6
- private resolveCanRead;
7
- private canRead;
8
- private buffers;
9
- constructor(url: string | URL);
10
- private resetCanRead;
11
- get connected(): boolean;
12
- open(): Promise<void>;
13
- read(): Promise<Uint8Array>;
14
- write(buffer: Uint8Array): Promise<void>;
15
- close(): void;
16
- }
@@ -1,91 +0,0 @@
1
- import { Mutex } from "../deps.js";
2
- import { UNREACHABLE } from "../utilities/0_control.js";
3
- import { ConnectionFramed } from "./0_connection.js";
4
- export class ConnectionHTTP extends ConnectionFramed {
5
- constructor(url) {
6
- super();
7
- Object.defineProperty(this, "url", {
8
- enumerable: true,
9
- configurable: true,
10
- writable: true,
11
- value: url
12
- });
13
- Object.defineProperty(this, "rMutex", {
14
- enumerable: true,
15
- configurable: true,
16
- writable: true,
17
- value: new Mutex()
18
- });
19
- Object.defineProperty(this, "wMutex", {
20
- enumerable: true,
21
- configurable: true,
22
- writable: true,
23
- value: new Mutex()
24
- });
25
- Object.defineProperty(this, "resolveCanRead", {
26
- enumerable: true,
27
- configurable: true,
28
- writable: true,
29
- value: () => { }
30
- });
31
- Object.defineProperty(this, "canRead", {
32
- enumerable: true,
33
- configurable: true,
34
- writable: true,
35
- value: Promise.resolve()
36
- });
37
- Object.defineProperty(this, "buffers", {
38
- enumerable: true,
39
- configurable: true,
40
- writable: true,
41
- value: new Array()
42
- });
43
- this.resetCanRead();
44
- }
45
- resetCanRead() {
46
- this.canRead = new Promise((r) => this.resolveCanRead = r);
47
- }
48
- get connected() {
49
- return true;
50
- }
51
- async open() {
52
- }
53
- async read() {
54
- await this.canRead;
55
- const release = await this.rMutex.acquire();
56
- try {
57
- const buffer = this.buffers.pop();
58
- if (buffer === undefined) {
59
- throw UNREACHABLE();
60
- }
61
- else {
62
- return buffer;
63
- }
64
- }
65
- finally {
66
- if (this.buffers.length == 0) {
67
- this.resetCanRead();
68
- }
69
- release();
70
- }
71
- }
72
- async write(buffer) {
73
- const release = await this.wMutex.acquire();
74
- try {
75
- const res = await fetch(this.url, {
76
- mode: "cors",
77
- method: "POST",
78
- body: buffer,
79
- });
80
- this.buffers.push(new Uint8Array(await res.arrayBuffer()));
81
- }
82
- finally {
83
- if (this.buffers.length == 1) {
84
- this.resolveCanRead();
85
- }
86
- release();
87
- }
88
- }
89
- close() {
90
- }
91
- }
@@ -1,10 +0,0 @@
1
- import { ConnectionFramed } from "../connection/0_connection.js";
2
- import { Transport } from "./0_transport.js";
3
- export declare class TransportPiped extends Transport implements Transport {
4
- private readonly connection;
5
- constructor(connection: ConnectionFramed);
6
- initialize(): Promise<void>;
7
- receive(): import("../utilities/0_types.js").MaybePromise<Uint8Array>;
8
- send(buffer: Uint8Array): import("../utilities/0_types.js").MaybePromise<void>;
9
- deinitialize(): void;
10
- }
@@ -1,23 +0,0 @@
1
- import { Transport } from "./0_transport.js";
2
- export class TransportPiped extends Transport {
3
- constructor(connection) {
4
- super();
5
- Object.defineProperty(this, "connection", {
6
- enumerable: true,
7
- configurable: true,
8
- writable: true,
9
- value: connection
10
- });
11
- }
12
- async initialize() {
13
- }
14
- receive() {
15
- return this.connection.read();
16
- }
17
- send(buffer) {
18
- return this.connection.write(buffer);
19
- }
20
- deinitialize() {
21
- this.initialized = false;
22
- }
23
- }
@@ -1,16 +0,0 @@
1
- import { ConnectionFramed } from "./0_connection.js";
2
- export declare class ConnectionHTTP extends ConnectionFramed implements ConnectionFramed {
3
- private readonly url;
4
- private rMutex;
5
- private wMutex;
6
- private resolveCanRead;
7
- private canRead;
8
- private buffers;
9
- constructor(url: string | URL);
10
- private resetCanRead;
11
- get connected(): boolean;
12
- open(): Promise<void>;
13
- read(): Promise<Uint8Array>;
14
- write(buffer: Uint8Array): Promise<void>;
15
- close(): void;
16
- }
@@ -1,95 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ConnectionHTTP = void 0;
4
- const deps_js_1 = require("../deps.js");
5
- const _0_control_js_1 = require("../utilities/0_control.js");
6
- const _0_connection_js_1 = require("./0_connection.js");
7
- class ConnectionHTTP extends _0_connection_js_1.ConnectionFramed {
8
- constructor(url) {
9
- super();
10
- Object.defineProperty(this, "url", {
11
- enumerable: true,
12
- configurable: true,
13
- writable: true,
14
- value: url
15
- });
16
- Object.defineProperty(this, "rMutex", {
17
- enumerable: true,
18
- configurable: true,
19
- writable: true,
20
- value: new deps_js_1.Mutex()
21
- });
22
- Object.defineProperty(this, "wMutex", {
23
- enumerable: true,
24
- configurable: true,
25
- writable: true,
26
- value: new deps_js_1.Mutex()
27
- });
28
- Object.defineProperty(this, "resolveCanRead", {
29
- enumerable: true,
30
- configurable: true,
31
- writable: true,
32
- value: () => { }
33
- });
34
- Object.defineProperty(this, "canRead", {
35
- enumerable: true,
36
- configurable: true,
37
- writable: true,
38
- value: Promise.resolve()
39
- });
40
- Object.defineProperty(this, "buffers", {
41
- enumerable: true,
42
- configurable: true,
43
- writable: true,
44
- value: new Array()
45
- });
46
- this.resetCanRead();
47
- }
48
- resetCanRead() {
49
- this.canRead = new Promise((r) => this.resolveCanRead = r);
50
- }
51
- get connected() {
52
- return true;
53
- }
54
- async open() {
55
- }
56
- async read() {
57
- await this.canRead;
58
- const release = await this.rMutex.acquire();
59
- try {
60
- const buffer = this.buffers.pop();
61
- if (buffer === undefined) {
62
- throw (0, _0_control_js_1.UNREACHABLE)();
63
- }
64
- else {
65
- return buffer;
66
- }
67
- }
68
- finally {
69
- if (this.buffers.length == 0) {
70
- this.resetCanRead();
71
- }
72
- release();
73
- }
74
- }
75
- async write(buffer) {
76
- const release = await this.wMutex.acquire();
77
- try {
78
- const res = await fetch(this.url, {
79
- mode: "cors",
80
- method: "POST",
81
- body: buffer,
82
- });
83
- this.buffers.push(new Uint8Array(await res.arrayBuffer()));
84
- }
85
- finally {
86
- if (this.buffers.length == 1) {
87
- this.resolveCanRead();
88
- }
89
- release();
90
- }
91
- }
92
- close() {
93
- }
94
- }
95
- exports.ConnectionHTTP = ConnectionHTTP;
@@ -1,10 +0,0 @@
1
- import { ConnectionFramed } from "../connection/0_connection.js";
2
- import { Transport } from "./0_transport.js";
3
- export declare class TransportPiped extends Transport implements Transport {
4
- private readonly connection;
5
- constructor(connection: ConnectionFramed);
6
- initialize(): Promise<void>;
7
- receive(): import("../utilities/0_types.js").MaybePromise<Uint8Array>;
8
- send(buffer: Uint8Array): import("../utilities/0_types.js").MaybePromise<void>;
9
- deinitialize(): void;
10
- }
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TransportPiped = void 0;
4
- const _0_transport_js_1 = require("./0_transport.js");
5
- class TransportPiped extends _0_transport_js_1.Transport {
6
- constructor(connection) {
7
- super();
8
- Object.defineProperty(this, "connection", {
9
- enumerable: true,
10
- configurable: true,
11
- writable: true,
12
- value: connection
13
- });
14
- }
15
- async initialize() {
16
- }
17
- receive() {
18
- return this.connection.read();
19
- }
20
- send(buffer) {
21
- return this.connection.write(buffer);
22
- }
23
- deinitialize() {
24
- this.initialized = false;
25
- }
26
- }
27
- exports.TransportPiped = TransportPiped;