@pkcprotocol/pkc-js 0.0.44 → 0.0.46

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 (148) hide show
  1. package/README.md +41 -0
  2. package/dist/browser/clients/rpc-client/pkc-rpc-client.d.ts +2 -1
  3. package/dist/browser/clients/rpc-client/pkc-rpc-client.js +5 -1
  4. package/dist/browser/clients/rpc-client/pkc-rpc-client.js.map +1 -1
  5. package/dist/browser/clients/rpc-client/rpc-schema-util.d.ts +96 -0
  6. package/dist/browser/clients/rpc-client/rpc-schema-util.js +4 -1
  7. package/dist/browser/clients/rpc-client/rpc-schema-util.js.map +1 -1
  8. package/dist/browser/clients/rpc-client/schema.d.ts +89 -2
  9. package/dist/browser/clients/rpc-client/schema.js +10 -1
  10. package/dist/browser/clients/rpc-client/schema.js.map +1 -1
  11. package/dist/browser/clients/rpc-client/types.d.ts +3 -1
  12. package/dist/browser/community/remote-community.d.ts +5 -1
  13. package/dist/browser/community/remote-community.js +6 -0
  14. package/dist/browser/community/remote-community.js.map +1 -1
  15. package/dist/browser/community/rpc-local-community.d.ts +5 -1
  16. package/dist/browser/community/rpc-local-community.js +3 -0
  17. package/dist/browser/community/rpc-local-community.js.map +1 -1
  18. package/dist/browser/community/schema.d.ts +28 -18
  19. package/dist/browser/community/schema.js +8 -0
  20. package/dist/browser/community/schema.js.map +1 -1
  21. package/dist/browser/community/types.d.ts +2 -1
  22. package/dist/browser/generated-version.d.ts +1 -1
  23. package/dist/browser/generated-version.js +1 -1
  24. package/dist/browser/index-with-compile-cache.d.ts +254 -0
  25. package/dist/browser/index-with-compile-cache.js +25 -0
  26. package/dist/browser/index-with-compile-cache.js.map +1 -0
  27. package/dist/browser/pages/schema.d.ts +5 -5
  28. package/dist/browser/pkc/pkc.d.ts +3 -4
  29. package/dist/browser/pkc/pkc.js +16 -19
  30. package/dist/browser/pkc/pkc.js.map +1 -1
  31. package/dist/browser/publications/comment/schema.d.ts +2 -2
  32. package/dist/browser/publications/comment/schema.js +7 -1
  33. package/dist/browser/publications/comment/schema.js.map +1 -1
  34. package/dist/browser/rpc/src/index.d.ts +2 -1
  35. package/dist/browser/rpc/src/index.js +30 -2
  36. package/dist/browser/rpc/src/index.js.map +1 -1
  37. package/dist/browser/runtime/browser/compile-cache.d.ts +1 -0
  38. package/dist/browser/runtime/browser/compile-cache.js +7 -0
  39. package/dist/browser/runtime/browser/compile-cache.js.map +1 -0
  40. package/dist/browser/runtime/browser/setup-kubo-http-routers.d.ts +1 -0
  41. package/dist/browser/runtime/browser/setup-kubo-http-routers.js +4 -0
  42. package/dist/browser/runtime/browser/setup-kubo-http-routers.js.map +1 -0
  43. package/dist/browser/runtime/node/community/db-handler.d.ts +4 -2
  44. package/dist/browser/runtime/node/community/db-handler.js +30 -1
  45. package/dist/browser/runtime/node/community/db-handler.js.map +1 -1
  46. package/dist/browser/runtime/node/community/db-row-parser.d.ts +2 -0
  47. package/dist/browser/runtime/node/community/db-row-parser.js +6 -0
  48. package/dist/browser/runtime/node/community/db-row-parser.js.map +1 -1
  49. package/dist/browser/runtime/node/community/local-community.d.ts +5 -1
  50. package/dist/browser/runtime/node/community/local-community.js +12 -0
  51. package/dist/browser/runtime/node/community/local-community.js.map +1 -1
  52. package/dist/browser/runtime/node/compile-cache.d.ts +1 -0
  53. package/dist/browser/runtime/node/compile-cache.js +29 -0
  54. package/dist/browser/runtime/node/compile-cache.js.map +1 -0
  55. package/dist/browser/runtime/node/setup-kubo-http-routers.d.ts +2 -0
  56. package/dist/browser/runtime/node/{setup-kubo-address-rewriter-and-http-router.js → setup-kubo-http-routers.js} +10 -79
  57. package/dist/browser/runtime/node/setup-kubo-http-routers.js.map +1 -0
  58. package/dist/bundled/bundle-manifest.json +1288 -0
  59. package/dist/bundled/challenges.js +1 -0
  60. package/dist/bundled/chunks/helia-for-pkc-uRINWDzG.js +281 -0
  61. package/dist/bundled/chunks/local-community-CCSP8e6_.js +2 -0
  62. package/dist/bundled/chunks/local-community-iVvgerOY.js +7218 -0
  63. package/dist/bundled/chunks/node-DMNVMYGv.js +7567 -0
  64. package/dist/bundled/chunks/rpc-local-community-DG6G0xL6.js +128945 -0
  65. package/dist/bundled/chunks/schema-Bo3XK8Oe.js +34342 -0
  66. package/dist/bundled/chunks/util-I3gVOp6w.js +200 -0
  67. package/dist/bundled/index-with-compile-cache.js +19 -0
  68. package/dist/bundled/index.js +2 -0
  69. package/dist/bundled/rpc/src/index.js +1473 -0
  70. package/dist/node/clients/rpc-client/pkc-rpc-client.d.ts +2 -1
  71. package/dist/node/clients/rpc-client/pkc-rpc-client.js +5 -1
  72. package/dist/node/clients/rpc-client/pkc-rpc-client.js.map +1 -1
  73. package/dist/node/clients/rpc-client/rpc-schema-util.d.ts +96 -0
  74. package/dist/node/clients/rpc-client/rpc-schema-util.js +4 -1
  75. package/dist/node/clients/rpc-client/rpc-schema-util.js.map +1 -1
  76. package/dist/node/clients/rpc-client/schema.d.ts +89 -2
  77. package/dist/node/clients/rpc-client/schema.js +10 -1
  78. package/dist/node/clients/rpc-client/schema.js.map +1 -1
  79. package/dist/node/clients/rpc-client/types.d.ts +3 -1
  80. package/dist/node/community/remote-community.d.ts +5 -1
  81. package/dist/node/community/remote-community.js +6 -0
  82. package/dist/node/community/remote-community.js.map +1 -1
  83. package/dist/node/community/rpc-local-community.d.ts +5 -1
  84. package/dist/node/community/rpc-local-community.js +3 -0
  85. package/dist/node/community/rpc-local-community.js.map +1 -1
  86. package/dist/node/community/schema.d.ts +28 -18
  87. package/dist/node/community/schema.js +8 -0
  88. package/dist/node/community/schema.js.map +1 -1
  89. package/dist/node/community/types.d.ts +2 -1
  90. package/dist/node/generated-version.d.ts +1 -1
  91. package/dist/node/generated-version.js +1 -1
  92. package/dist/node/index-with-compile-cache.d.ts +254 -0
  93. package/dist/node/index-with-compile-cache.js +25 -0
  94. package/dist/node/index-with-compile-cache.js.map +1 -0
  95. package/dist/node/pages/schema.d.ts +5 -5
  96. package/dist/node/pkc/pkc.d.ts +3 -4
  97. package/dist/node/pkc/pkc.js +16 -19
  98. package/dist/node/pkc/pkc.js.map +1 -1
  99. package/dist/node/publications/comment/schema.d.ts +2 -2
  100. package/dist/node/publications/comment/schema.js +7 -1
  101. package/dist/node/publications/comment/schema.js.map +1 -1
  102. package/dist/node/rpc/src/index.d.ts +2 -1
  103. package/dist/node/rpc/src/index.js +30 -2
  104. package/dist/node/rpc/src/index.js.map +1 -1
  105. package/dist/node/runtime/browser/compile-cache.d.ts +1 -0
  106. package/dist/node/runtime/browser/compile-cache.js +7 -0
  107. package/dist/node/runtime/browser/compile-cache.js.map +1 -0
  108. package/dist/node/runtime/browser/setup-kubo-http-routers.d.ts +1 -0
  109. package/dist/node/runtime/browser/setup-kubo-http-routers.js +4 -0
  110. package/dist/node/runtime/browser/setup-kubo-http-routers.js.map +1 -0
  111. package/dist/node/runtime/node/community/db-handler.d.ts +4 -2
  112. package/dist/node/runtime/node/community/db-handler.js +30 -1
  113. package/dist/node/runtime/node/community/db-handler.js.map +1 -1
  114. package/dist/node/runtime/node/community/db-row-parser.d.ts +2 -0
  115. package/dist/node/runtime/node/community/db-row-parser.js +6 -0
  116. package/dist/node/runtime/node/community/db-row-parser.js.map +1 -1
  117. package/dist/node/runtime/node/community/local-community.d.ts +5 -1
  118. package/dist/node/runtime/node/community/local-community.js +12 -0
  119. package/dist/node/runtime/node/community/local-community.js.map +1 -1
  120. package/dist/node/runtime/node/compile-cache.d.ts +1 -0
  121. package/dist/node/runtime/node/compile-cache.js +29 -0
  122. package/dist/node/runtime/node/compile-cache.js.map +1 -0
  123. package/dist/node/runtime/node/setup-kubo-http-routers.d.ts +2 -0
  124. package/dist/node/runtime/node/{setup-kubo-address-rewriter-and-http-router.js → setup-kubo-http-routers.js} +10 -79
  125. package/dist/node/runtime/node/setup-kubo-http-routers.js.map +1 -0
  126. package/package.json +18 -9
  127. package/dist/browser/runtime/browser/setup-kubo-address-rewriter-and-http-router.d.ts +0 -1
  128. package/dist/browser/runtime/browser/setup-kubo-address-rewriter-and-http-router.js +0 -4
  129. package/dist/browser/runtime/browser/setup-kubo-address-rewriter-and-http-router.js.map +0 -1
  130. package/dist/browser/runtime/node/address-rewriter-db.d.ts +0 -31
  131. package/dist/browser/runtime/node/address-rewriter-db.js +0 -156
  132. package/dist/browser/runtime/node/address-rewriter-db.js.map +0 -1
  133. package/dist/browser/runtime/node/addresses-rewriter-proxy-server.d.ts +0 -45
  134. package/dist/browser/runtime/node/addresses-rewriter-proxy-server.js +0 -493
  135. package/dist/browser/runtime/node/addresses-rewriter-proxy-server.js.map +0 -1
  136. package/dist/browser/runtime/node/setup-kubo-address-rewriter-and-http-router.d.ts +0 -4
  137. package/dist/browser/runtime/node/setup-kubo-address-rewriter-and-http-router.js.map +0 -1
  138. package/dist/node/runtime/browser/setup-kubo-address-rewriter-and-http-router.d.ts +0 -1
  139. package/dist/node/runtime/browser/setup-kubo-address-rewriter-and-http-router.js +0 -4
  140. package/dist/node/runtime/browser/setup-kubo-address-rewriter-and-http-router.js.map +0 -1
  141. package/dist/node/runtime/node/address-rewriter-db.d.ts +0 -31
  142. package/dist/node/runtime/node/address-rewriter-db.js +0 -156
  143. package/dist/node/runtime/node/address-rewriter-db.js.map +0 -1
  144. package/dist/node/runtime/node/addresses-rewriter-proxy-server.d.ts +0 -45
  145. package/dist/node/runtime/node/addresses-rewriter-proxy-server.js +0 -493
  146. package/dist/node/runtime/node/addresses-rewriter-proxy-server.js.map +0 -1
  147. package/dist/node/runtime/node/setup-kubo-address-rewriter-and-http-router.d.ts +0 -4
  148. package/dist/node/runtime/node/setup-kubo-address-rewriter-and-http-router.js.map +0 -1
@@ -1,156 +0,0 @@
1
- import path from "node:path";
2
- import fs from "node:fs/promises";
3
- import Database from "better-sqlite3";
4
- import Logger from "../../logger.js";
5
- const debug = Logger("pkc-js:address-rewriter-db");
6
- export class AddressRewriterDatabase {
7
- constructor(dataPath, kuboConfig, proxyTarget) {
8
- this._db = null;
9
- this._dbPath = this._initializeDbPath(dataPath, kuboConfig, proxyTarget);
10
- }
11
- _initializeDbPath(dataPath, kuboConfig, proxyTarget) {
12
- if (!dataPath) {
13
- throw new Error("dataPath must be defined for request logging");
14
- }
15
- // Get kubo client hostname:port
16
- let kuboIdentifier = "unknown";
17
- if (kuboConfig && typeof kuboConfig === "object" && "host" in kuboConfig && "port" in kuboConfig) {
18
- kuboIdentifier = `${kuboConfig.host}_${kuboConfig.port}`;
19
- }
20
- // Get proxy target hostname:port
21
- const proxyIdentifier = `${proxyTarget.hostname}_${proxyTarget.port || (proxyTarget.protocol === "https:" ? "443" : "80")}`;
22
- const fileName = `address_rewriter_${kuboIdentifier}_${proxyIdentifier}.db`;
23
- return path.join(dataPath, ".address-rewriter", fileName);
24
- }
25
- async initialize() {
26
- try {
27
- // Ensure directory exists
28
- const dbDir = path.dirname(this._dbPath);
29
- await fs.mkdir(dbDir, { recursive: true });
30
- // Initialize SQLite database
31
- this._db = new Database(this._dbPath);
32
- // Create request logs table - logs HTTP requests through the proxy
33
- this._db.exec(`
34
- CREATE TABLE IF NOT EXISTS request_logs (
35
- id INTEGER PRIMARY KEY AUTOINCREMENT,
36
- keys TEXT NOT NULL,
37
- received_at INTEGER NOT NULL,
38
- transmitted_at INTEGER,
39
- success INTEGER NOT NULL,
40
- status_code INTEGER,
41
- method TEXT NOT NULL,
42
- url TEXT NOT NULL,
43
- error TEXT,
44
- retry_count INTEGER DEFAULT 0,
45
- body_preview TEXT,
46
- created_at DATETIME DEFAULT CURRENT_TIMESTAMP
47
- )
48
- `);
49
- // Create reprovide logs table - logs kubo routing.provide() attempts
50
- this._db.exec(`
51
- CREATE TABLE IF NOT EXISTS reprovide_logs (
52
- id INTEGER PRIMARY KEY AUTOINCREMENT,
53
- key TEXT NOT NULL,
54
- timestamp INTEGER NOT NULL,
55
- success INTEGER NOT NULL,
56
- error TEXT,
57
- block_not_local INTEGER DEFAULT 0,
58
- created_at DATETIME DEFAULT CURRENT_TIMESTAMP
59
- )
60
- `);
61
- // Create failed keys table
62
- this._db.exec(`
63
- CREATE TABLE IF NOT EXISTS failed_keys (
64
- key TEXT PRIMARY KEY,
65
- added_at INTEGER NOT NULL,
66
- created_at DATETIME DEFAULT CURRENT_TIMESTAMP
67
- )
68
- `);
69
- // Create indexes
70
- this._db.exec(`
71
- CREATE INDEX IF NOT EXISTS idx_request_logs_received_at ON request_logs(received_at);
72
- CREATE INDEX IF NOT EXISTS idx_reprovide_logs_timestamp ON reprovide_logs(timestamp);
73
- CREATE INDEX IF NOT EXISTS idx_reprovide_logs_key ON reprovide_logs(key);
74
- `);
75
- try {
76
- this._db.exec("ALTER TABLE request_logs ADD COLUMN body_preview TEXT");
77
- }
78
- catch (error) {
79
- const message = error instanceof Error ? error.message : String(error);
80
- if (!message.toLowerCase().includes("duplicate column name")) {
81
- throw error;
82
- }
83
- }
84
- debug(`Initialized SQLite database at ${this._dbPath}`);
85
- }
86
- catch (error) {
87
- debug.error(`Failed to initialize database at ${this._dbPath}:`, error);
88
- throw error;
89
- }
90
- }
91
- close() {
92
- if (this._db) {
93
- this._db.close();
94
- this._db = null;
95
- }
96
- }
97
- insertRequestLogs(logs) {
98
- if (!this._db) {
99
- throw new Error("Database not initialized");
100
- }
101
- const insertStmt = this._db.prepare(`
102
- INSERT INTO request_logs (
103
- keys, received_at, transmitted_at, success, status_code,
104
- method, url, error, retry_count, body_preview
105
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
106
- `);
107
- const transaction = this._db.transaction(() => {
108
- for (const log of logs) {
109
- insertStmt.run(JSON.stringify(log.keys), log.receivedAt, log.transmittedAt || null, log.success ? 1 : 0, log.statusCode || null, log.method, log.url, log.error || null, log.retryCount || 0, log.bodyPreview || null);
110
- }
111
- });
112
- transaction();
113
- }
114
- insertReprovideLog(key, success, error, blockNotLocal) {
115
- if (!this._db) {
116
- throw new Error("Database not initialized");
117
- }
118
- const insertStmt = this._db.prepare(`
119
- INSERT INTO reprovide_logs (key, timestamp, success, error, block_not_local)
120
- VALUES (?, ?, ?, ?, ?)
121
- `);
122
- insertStmt.run(key, Date.now(), success ? 1 : 0, error || null, blockNotLocal ? 1 : 0);
123
- }
124
- loadFailedKeys() {
125
- if (!this._db) {
126
- return [];
127
- }
128
- try {
129
- const stmt = this._db.prepare("SELECT key FROM failed_keys");
130
- const rows = stmt.all();
131
- return rows.map((row) => row.key);
132
- }
133
- catch (error) {
134
- debug.error("Failed to load failed keys from database:", error);
135
- return [];
136
- }
137
- }
138
- saveFailedKeys(keys) {
139
- if (!this._db) {
140
- throw new Error("Database not initialized");
141
- }
142
- // Clear existing failed keys and insert current ones
143
- const transaction = this._db.transaction(() => {
144
- this._db.exec("DELETE FROM failed_keys");
145
- if (keys.length > 0) {
146
- const insertStmt = this._db.prepare("INSERT INTO failed_keys (key, added_at) VALUES (?, ?)");
147
- const now = Date.now();
148
- for (const key of keys) {
149
- insertStmt.run(key, now);
150
- }
151
- }
152
- });
153
- transaction();
154
- }
155
- }
156
- //# sourceMappingURL=address-rewriter-db.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"address-rewriter-db.js","sourceRoot":"","sources":["../../../../src/runtime/node/address-rewriter-db.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAErC,MAAM,KAAK,GAAG,MAAM,CAAC,4BAA4B,CAAC,CAAC;AAuBnD,MAAM,OAAO,uBAAuB;IAIhC,YAAY,QAAgB,EAAE,UAAe,EAAE,WAAgB;QAHvD,QAAG,GAA6B,IAAI,CAAC;QAIzC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;IAC7E,CAAC;IAEO,iBAAiB,CAAC,QAAgB,EAAE,UAAe,EAAE,WAAgB;QACzE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QACpE,CAAC;QAED,gCAAgC;QAChC,IAAI,cAAc,GAAG,SAAS,CAAC;QAC/B,IAAI,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,MAAM,IAAI,UAAU,IAAI,MAAM,IAAI,UAAU,EAAE,CAAC;YAC/F,cAAc,GAAG,GAAG,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;QAC7D,CAAC;QAED,iCAAiC;QACjC,MAAM,eAAe,GAAG,GAAG,WAAW,CAAC,QAAQ,IAAI,WAAW,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QAE5H,MAAM,QAAQ,GAAG,oBAAoB,cAAc,IAAI,eAAe,KAAK,CAAC;QAC5E,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,mBAAmB,EAAE,QAAQ,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,UAAU;QACZ,IAAI,CAAC;YACD,0BAA0B;YAC1B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzC,MAAM,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAE3C,6BAA6B;YAC7B,IAAI,CAAC,GAAG,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEtC,mEAAmE;YACnE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;aAeb,CAAC,CAAC;YAEH,qEAAqE;YACrE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;;;;;;;;;;aAUb,CAAC,CAAC;YAEH,2BAA2B;YAC3B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;;;;;;aAMb,CAAC,CAAC;YAEH,iBAAiB;YACjB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;;;;aAIb,CAAC,CAAC;YAEH,IAAI,CAAC;gBACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;YAC3E,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,CAAC;oBAC3D,MAAM,KAAK,CAAC;gBAChB,CAAC;YACL,CAAC;YAED,KAAK,CAAC,kCAAkC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,KAAK,CAAC,KAAK,CAAC,oCAAoC,IAAI,CAAC,OAAO,GAAG,EAAE,KAAK,CAAC,CAAC;YACxE,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;IAED,KAAK;QACD,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACX,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YACjB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;QACpB,CAAC;IACL,CAAC;IAED,iBAAiB,CAAC,IAAuB;QACrC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;;;;;SAKnC,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE;YAC1C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACrB,UAAU,CAAC,GAAG,CACV,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EACxB,GAAG,CAAC,UAAU,EACd,GAAG,CAAC,aAAa,IAAI,IAAI,EACzB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACnB,GAAG,CAAC,UAAU,IAAI,IAAI,EACtB,GAAG,CAAC,MAAM,EACV,GAAG,CAAC,GAAG,EACP,GAAG,CAAC,KAAK,IAAI,IAAI,EACjB,GAAG,CAAC,UAAU,IAAI,CAAC,EACnB,GAAG,CAAC,WAAW,IAAI,IAAI,CAC1B,CAAC;YACN,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,WAAW,EAAE,CAAC;IAClB,CAAC;IAED,kBAAkB,CAAC,GAAW,EAAE,OAAgB,EAAE,KAAc,EAAE,aAAuB;QACrF,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;;;SAGnC,CAAC,CAAC;QAEH,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3F,CAAC;IAED,cAAc;QACV,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACZ,OAAO,EAAE,CAAC;QACd,CAAC;QAED,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;YAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAuB,CAAC;YAC7C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACtC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,KAAK,CAAC,KAAK,CAAC,2CAA2C,EAAE,KAAK,CAAC,CAAC;YAChE,OAAO,EAAE,CAAC;QACd,CAAC;IACL,CAAC;IAED,cAAc,CAAC,IAAc;QACzB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAChD,CAAC;QAED,qDAAqD;QACrD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE;YAC1C,IAAI,CAAC,GAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YAE1C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAI,CAAC,OAAO,CAAC,uDAAuD,CAAC,CAAC;gBAC9F,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACvB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;oBACrB,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAC7B,CAAC;YACL,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,WAAW,EAAE,CAAC;IAClB,CAAC;CACJ"}
@@ -1,45 +0,0 @@
1
- import http from "node:http";
2
- import { PKC } from "../../pkc/pkc.js";
3
- type AddressesRewriterOptions = {
4
- kuboClients: PKC["clients"]["kuboRpcClients"][string]["_client"][];
5
- port: number;
6
- hostname: string | undefined;
7
- proxyTargetUrl: string;
8
- pkc: Pick<PKC, "_storage" | "dataPath">;
9
- };
10
- export declare class AddressesRewriterProxyServer {
11
- addresses: Record<string, string[]>;
12
- kuboClients: AddressesRewriterOptions["kuboClients"];
13
- port: number;
14
- hostname: string;
15
- proxyTarget: URL;
16
- server: ReturnType<(typeof http)["createServer"]>;
17
- _storageKeyName: string;
18
- _pkc: Pick<PKC, "_storage" | "dataPath">;
19
- private _db;
20
- private _logWriteInterval?;
21
- private _requestLogBuffer;
22
- private _isWritingLogs;
23
- private _loggingEnabled;
24
- private _failedKeys;
25
- private _retryInterval?;
26
- private _updateAddressesInterval?;
27
- private _httpAgent;
28
- private _httpsAgent;
29
- constructor({ kuboClients: kuboClient, port, hostname, proxyTargetUrl, pkc }: AddressesRewriterOptions);
30
- listen(callback?: () => void): Promise<void>;
31
- destroy(): Promise<void>;
32
- _proxyRequestRewrite(req: Parameters<http.RequestListener>[0], res: Parameters<http.RequestListener>[1]): void;
33
- private _proxyRequest;
34
- _startUpdateAddressesLoop(): Promise<void>;
35
- private _extractKeysFromRequestBody;
36
- private _createBodyPreview;
37
- private _writeRequestLogs;
38
- private _startRequestLogging;
39
- private _startFailedKeysRetry;
40
- private _loadFailedKeysFromDatabase;
41
- private _saveFailedKeysToDatabase;
42
- private _retryFailedKeys;
43
- private _logReprovideAttempt;
44
- }
45
- export {};