@ibgib/space-gib 0.0.1 → 0.0.2
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/dist/client/bootstrap.mjs +1 -1
- package/dist/client/bootstrap.mjs.map +1 -1
- package/dist/client/chunk-BL2SGXS4.mjs +18994 -0
- package/dist/client/chunk-RDTAT5G4.mjs +235 -0
- package/dist/client/chunk-RDTAT5G4.mjs.map +7 -0
- package/dist/client/chunk-RE7XSMHH.mjs +31 -0
- package/dist/client/chunk-RE7XSMHH.mjs.map +7 -0
- package/dist/client/chunk-YUSGN3J4.mjs +23119 -0
- package/dist/client/index.html +44 -8
- package/dist/client/index.mjs +1 -1
- package/dist/client/script.mjs +1 -1
- package/dist/client/style.css +26 -0
- package/dist/server/server.mjs +5323 -1011
- package/dist/server/server.mjs.map +4 -4
- package/package.json +1 -1
- package/src/client/AUTO-GENERATED-version.mts +1 -1
- package/src/client/api/space-gib-api-bridge.mts +84 -8
- package/src/client/dev-tools.mts +609 -24
- package/src/client/index.html +44 -8
- package/src/client/style.css +26 -0
- package/src/common/keystone-policies.json +64 -0
- package/src/common/keystone-policies.mts +39 -86
- package/src/server/serve-gib/handlers/api/debug/ws-echo.handler.mts +13 -12
- package/src/server/serve-gib/handlers/api/keystone/keystone-evolve.handler.mts +14 -167
- package/src/server/serve-gib/handlers/api/keystone/keystone-genesis.handler.mts +6 -6
- package/src/server/serve-gib/handlers/api/keystone/keystone-post.handler.mts +10 -25
- package/src/server/serve-gib/handlers/ws/sync-upgrade-handler-base.mts +201 -0
- package/src/server/serve-gib/handlers/ws/sync-upgrade.handler.mts +13 -487
- package/src/server/serve-gib/handlers/ws/ws-helper.mts +80 -3
- package/dist/client/chunk-CT47Z5WU.mjs +0 -21
- package/dist/client/chunk-CT47Z5WU.mjs.map +0 -7
- package/dist/client/chunk-RHEDTRKF.mjs +0 -235
- package/dist/client/chunk-RHEDTRKF.mjs.map +0 -7
- package/dist/respec-gib.node.mjs +0 -5
package/package.json
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import { extractErrorMsg } from "@ibgib/helper-gib/dist/helpers/utils-helper.mjs";
|
|
2
2
|
import { IbGib_V1 } from "@ibgib/ts-gib/dist/V1/types.mjs";
|
|
3
3
|
|
|
4
|
+
import { GLOBAL_LOG_A_LOT } from '../constants.mjs';
|
|
5
|
+
|
|
6
|
+
const logalot = GLOBAL_LOG_A_LOT;
|
|
7
|
+
|
|
4
8
|
/**
|
|
5
9
|
* Handles communication with the SpaceGib REST API.
|
|
6
10
|
*/
|
|
@@ -9,15 +13,15 @@ export class SpaceGibApiBridge {
|
|
|
9
13
|
|
|
10
14
|
/**
|
|
11
15
|
* Posts a single genesis keystone ibgib to the server to create a new domain.
|
|
12
|
-
*
|
|
16
|
+
*
|
|
13
17
|
* @param keystoneIbGib The genesis keystone ibgib.
|
|
14
18
|
* @returns Promise resolving to the server response containing the addr.
|
|
15
19
|
*/
|
|
16
20
|
public async postGenesisKeystone(keystoneIbGib: IbGib_V1): Promise<{ success: boolean; message?: string; addr?: string }> {
|
|
17
21
|
const lc = `${this.lc}[${this.postGenesisKeystone.name}]`;
|
|
18
22
|
try {
|
|
19
|
-
console.log(`${lc}
|
|
20
|
-
|
|
23
|
+
if (logalot) { console.log(`${lc} starting... (I: eecd082fc4a4381c8857928e8b090826)`); }
|
|
24
|
+
|
|
21
25
|
const response = await fetch('/api/keystone/genesis', {
|
|
22
26
|
method: 'POST',
|
|
23
27
|
headers: {
|
|
@@ -27,20 +31,22 @@ export class SpaceGibApiBridge {
|
|
|
27
31
|
});
|
|
28
32
|
|
|
29
33
|
const data = await response.json();
|
|
30
|
-
|
|
34
|
+
|
|
31
35
|
if (!response.ok) {
|
|
32
36
|
const errorMsg = data.message || data.error || 'Unknown error';
|
|
33
37
|
console.error(`${lc} [NAG][ibgib-paradigm] server rejected genesis keystone: ${errorMsg}`);
|
|
34
38
|
return { success: false, message: errorMsg, addr: data.addr };
|
|
35
39
|
}
|
|
36
40
|
|
|
37
|
-
console.log(`${lc}
|
|
41
|
+
if (logalot) { console.log(`${lc} genesis keystone posted successfully.`); }
|
|
38
42
|
return { success: true, addr: data.addr };
|
|
39
43
|
|
|
40
44
|
} catch (error) {
|
|
41
45
|
const errorMsg = extractErrorMsg(error);
|
|
42
|
-
console.error(`${lc}
|
|
46
|
+
console.error(`${lc} error: ${errorMsg}`);
|
|
43
47
|
return { success: false, message: errorMsg };
|
|
48
|
+
} finally {
|
|
49
|
+
if (logalot) { console.log(`${lc} complete.`); }
|
|
44
50
|
}
|
|
45
51
|
}
|
|
46
52
|
|
|
@@ -51,7 +57,7 @@ export class SpaceGibApiBridge {
|
|
|
51
57
|
const lc = `${this.lc}[${this.putEvolveKeystone.name}]`;
|
|
52
58
|
try {
|
|
53
59
|
console.log(`${lc} posting evolved keystone...`);
|
|
54
|
-
|
|
60
|
+
|
|
55
61
|
// Note: encodeURIComponent safely encodes the `^` if needed, though our regex handles both
|
|
56
62
|
const url = `/api/keystone/evolve/${encodeURIComponent(domainAddr)}`;
|
|
57
63
|
const response = await fetch(url, {
|
|
@@ -63,7 +69,7 @@ export class SpaceGibApiBridge {
|
|
|
63
69
|
});
|
|
64
70
|
|
|
65
71
|
const data = await response.json();
|
|
66
|
-
|
|
72
|
+
|
|
67
73
|
if (!response.ok) {
|
|
68
74
|
const errorMsg = data.message || data.error || 'Unknown error';
|
|
69
75
|
console.error(`${lc} server rejected keystone evolution: ${errorMsg}`);
|
|
@@ -79,6 +85,76 @@ export class SpaceGibApiBridge {
|
|
|
79
85
|
return { success: false, message: errorMsg };
|
|
80
86
|
}
|
|
81
87
|
}
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* GETs the keystone graph for a domain from the server.
|
|
91
|
+
*/
|
|
92
|
+
public async getKeystoneGraph(domainAddr: string): Promise<{ success: boolean; message?: string; graph?: Record<string, any> }> {
|
|
93
|
+
const lc = `${this.lc}[${this.getKeystoneGraph.name}]`;
|
|
94
|
+
try {
|
|
95
|
+
console.log(`${lc} fetching keystone graph...`);
|
|
96
|
+
|
|
97
|
+
const url = `/api/keystone/${encodeURIComponent(domainAddr)}?getLatest=true&getGraph=true`;
|
|
98
|
+
const response = await fetch(url, {
|
|
99
|
+
method: 'GET',
|
|
100
|
+
headers: {
|
|
101
|
+
'Accept': 'application/json',
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
|
|
105
|
+
const data = await response.json();
|
|
106
|
+
|
|
107
|
+
console.log(`${lc} fetch keystone graph complete.`);
|
|
108
|
+
|
|
109
|
+
if (!response.ok) {
|
|
110
|
+
const errorMsg = data.message || data.error || 'Unknown error';
|
|
111
|
+
console.error(`${lc} server rejected keystone graph get: ${errorMsg}`);
|
|
112
|
+
return { success: false, message: errorMsg };
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
return { success: true, graph: data.domainGraph };
|
|
116
|
+
|
|
117
|
+
} catch (error) {
|
|
118
|
+
const errorMsg = extractErrorMsg(error);
|
|
119
|
+
console.error(`${lc} fetch error: ${errorMsg}`);
|
|
120
|
+
return { success: false, message: errorMsg };
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* GETs a single ibGib frame from the server's domain-specific space.
|
|
126
|
+
*/
|
|
127
|
+
public async getIbGib(domainAddr: string, ibGibAddr: string, getLatest = false): Promise<{ success: boolean; message?: string; ibGib?: IbGib_V1 }> {
|
|
128
|
+
const lc = `${this.lc}[${this.getIbGib.name}]`;
|
|
129
|
+
try {
|
|
130
|
+
console.log(`${lc} fetching single ibGib frame...`);
|
|
131
|
+
|
|
132
|
+
const url = `/api/ibgib/${encodeURIComponent(domainAddr)}/${encodeURIComponent(ibGibAddr)}?getLatest=${getLatest}&getGraph=false`;
|
|
133
|
+
const response = await fetch(url, {
|
|
134
|
+
method: 'GET',
|
|
135
|
+
headers: {
|
|
136
|
+
'Accept': 'application/json',
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
|
|
140
|
+
const data = await response.json();
|
|
141
|
+
|
|
142
|
+
console.log(`${lc} fetching single ibGib frame complete.`);
|
|
143
|
+
|
|
144
|
+
if (!response.ok) {
|
|
145
|
+
const errorMsg = data.message || data.error || 'Unknown error';
|
|
146
|
+
console.error(`${lc} server rejected ibGib get: ${errorMsg}`);
|
|
147
|
+
return { success: false, message: errorMsg };
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
return { success: true, ibGib: data };
|
|
151
|
+
|
|
152
|
+
} catch (error) {
|
|
153
|
+
const errorMsg = extractErrorMsg(error);
|
|
154
|
+
console.error(`${lc} fetch error: ${errorMsg}`);
|
|
155
|
+
return { success: false, message: errorMsg };
|
|
156
|
+
}
|
|
157
|
+
}
|
|
82
158
|
}
|
|
83
159
|
|
|
84
160
|
/** Singleton instance for the bridge. */
|