@dcl/sdk-commands 7.22.6-25321038582.commit-63ddb3f → 7.22.6-25375246959.commit-ec25d50

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 (59) hide show
  1. package/dist/commands/start/index.d.ts +0 -1
  2. package/dist/commands/start/index.js +4 -23
  3. package/dist/commands/start/index.js.map +1 -1
  4. package/dist/commands/start/server/routes.js +0 -2
  5. package/dist/commands/start/server/routes.js.map +1 -1
  6. package/dist/commands/start/types.d.ts +0 -3
  7. package/dist/commands/start/utils.d.ts +0 -34
  8. package/dist/commands/start/utils.js +0 -104
  9. package/dist/commands/start/utils.js.map +1 -1
  10. package/dist/components/analytics.d.ts +1 -70
  11. package/dist/components/analytics.js +2 -3
  12. package/dist/components/analytics.js.map +1 -1
  13. package/dist/logic/bundle.js +0 -31
  14. package/dist/logic/bundle.js.map +1 -1
  15. package/dist/logic/config.d.ts +0 -1
  16. package/dist/logic/config.js +0 -7
  17. package/dist/logic/config.js.map +1 -1
  18. package/dist/logic/error.d.ts +1 -1
  19. package/dist/logic/error.js.map +1 -1
  20. package/dist/logic/exec.d.ts +0 -1
  21. package/dist/logic/exec.js +2 -2
  22. package/dist/logic/exec.js.map +1 -1
  23. package/dist/logic/lang.js +1 -1
  24. package/dist/logic/scene-validations.d.ts +1 -8
  25. package/dist/logic/scene-validations.js.map +1 -1
  26. package/package.json +4 -4
  27. package/dist/commands/sdk-server-logs/index.d.ts +0 -24
  28. package/dist/commands/sdk-server-logs/index.js +0 -313
  29. package/dist/commands/sdk-server-logs/index.js.map +0 -1
  30. package/dist/commands/start/hammurabi-server.d.ts +0 -19
  31. package/dist/commands/start/hammurabi-server.js +0 -78
  32. package/dist/commands/start/hammurabi-server.js.map +0 -1
  33. package/dist/commands/start/server/runtime-env.d.ts +0 -71
  34. package/dist/commands/start/server/runtime-env.js +0 -226
  35. package/dist/commands/start/server/runtime-env.js.map +0 -1
  36. package/dist/commands/start/server/storage-service.d.ts +0 -8
  37. package/dist/commands/start/server/storage-service.js +0 -156
  38. package/dist/commands/start/server/storage-service.js.map +0 -1
  39. package/dist/commands/storage/env.d.ts +0 -5
  40. package/dist/commands/storage/env.js +0 -86
  41. package/dist/commands/storage/env.js.map +0 -1
  42. package/dist/commands/storage/index.d.ts +0 -26
  43. package/dist/commands/storage/index.js +0 -142
  44. package/dist/commands/storage/index.js.map +0 -1
  45. package/dist/commands/storage/player.d.ts +0 -5
  46. package/dist/commands/storage/player.js +0 -143
  47. package/dist/commands/storage/player.js.map +0 -1
  48. package/dist/commands/storage/scene.d.ts +0 -5
  49. package/dist/commands/storage/scene.js +0 -105
  50. package/dist/commands/storage/scene.js.map +0 -1
  51. package/dist/commands/storage/shared.d.ts +0 -62
  52. package/dist/commands/storage/shared.js +0 -249
  53. package/dist/commands/storage/shared.js.map +0 -1
  54. package/dist/commands/storage/types.d.ts +0 -56
  55. package/dist/commands/storage/types.js +0 -23
  56. package/dist/commands/storage/types.js.map +0 -1
  57. package/dist/logic/auth-chain-headers.d.ts +0 -11
  58. package/dist/logic/auth-chain-headers.js +0 -25
  59. package/dist/logic/auth-chain-headers.js.map +0 -1
@@ -1,71 +0,0 @@
1
- import { CliComponents } from '../../../components';
2
- /**
3
- * Structure for all server-side storage data.
4
- * Stored in sdk-commands package directory (hidden from users).
5
- */
6
- export interface ServerStorage {
7
- env: Record<string, string>;
8
- world: Record<string, unknown>;
9
- players: Record<string, Record<string, unknown>>;
10
- }
11
- /**
12
- * Loads all server-side storage data from server-storage.json.
13
- */
14
- export declare function loadServerStorage(components: Pick<CliComponents, 'fs' | 'logger'>): Promise<ServerStorage>;
15
- /**
16
- * Saves all server-side storage data to server-storage.json.
17
- */
18
- export declare function saveServerStorage(components: Pick<CliComponents, 'fs' | 'logger'>, data: ServerStorage): Promise<void>;
19
- /**
20
- * Loads environment variables from a .env file in the project directory.
21
- * Returns a Map of key-value pairs.
22
- */
23
- export declare function loadEnvFile(components: Pick<CliComponents, 'fs' | 'logger'>, projectDirectory: string): Promise<Map<string, string>>;
24
- /**
25
- * Gets runtime environment variables.
26
- */
27
- export declare function getEnvStorage(components: Pick<CliComponents, 'fs' | 'logger'>): Promise<Record<string, string>>;
28
- /**
29
- * Gets merged environment variables.
30
- * Runtime values (from server-storage.json) override .env values.
31
- */
32
- export declare function getMergedEnv(components: Pick<CliComponents, 'fs' | 'logger'>, projectDirectory: string): Promise<Map<string, string>>;
33
- /**
34
- * Sets a runtime environment variable.
35
- */
36
- export declare function setEnvValue(components: Pick<CliComponents, 'fs' | 'logger'>, key: string, value: string): Promise<void>;
37
- /**
38
- * Deletes a runtime environment variable.
39
- * Returns true if key existed and was deleted, false otherwise.
40
- */
41
- export declare function deleteEnvValue(components: Pick<CliComponents, 'fs' | 'logger'>, key: string): Promise<boolean>;
42
- /**
43
- * Gets all world storage data.
44
- */
45
- export declare function getWorldStorage(components: Pick<CliComponents, 'fs' | 'logger'>): Promise<Record<string, unknown>>;
46
- /**
47
- * Gets a value from world storage.
48
- */
49
- export declare function getWorldValue(components: Pick<CliComponents, 'fs' | 'logger'>, key: string): Promise<unknown | undefined>;
50
- /**
51
- * Sets a value in world storage.
52
- */
53
- export declare function setWorldValue(components: Pick<CliComponents, 'fs' | 'logger'>, key: string, value: unknown): Promise<void>;
54
- /**
55
- * Deletes a value from world storage.
56
- * Returns true if key existed and was deleted, false otherwise.
57
- */
58
- export declare function deleteWorldValue(components: Pick<CliComponents, 'fs' | 'logger'>, key: string): Promise<boolean>;
59
- /**
60
- * Gets a value from a player's storage.
61
- */
62
- export declare function getPlayerValue(components: Pick<CliComponents, 'fs' | 'logger'>, address: string, key: string): Promise<unknown | undefined>;
63
- /**
64
- * Sets a value in a player's storage.
65
- */
66
- export declare function setPlayerValue(components: Pick<CliComponents, 'fs' | 'logger'>, address: string, key: string, value: unknown): Promise<void>;
67
- /**
68
- * Deletes a value from a player's storage.
69
- * Returns true if key existed and was deleted, false otherwise.
70
- */
71
- export declare function deletePlayerValue(components: Pick<CliComponents, 'fs' | 'logger'>, address: string, key: string): Promise<boolean>;
@@ -1,226 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.loadServerStorage = loadServerStorage;
7
- exports.saveServerStorage = saveServerStorage;
8
- exports.loadEnvFile = loadEnvFile;
9
- exports.getEnvStorage = getEnvStorage;
10
- exports.getMergedEnv = getMergedEnv;
11
- exports.setEnvValue = setEnvValue;
12
- exports.deleteEnvValue = deleteEnvValue;
13
- exports.getWorldStorage = getWorldStorage;
14
- exports.getWorldValue = getWorldValue;
15
- exports.setWorldValue = setWorldValue;
16
- exports.deleteWorldValue = deleteWorldValue;
17
- exports.getPlayerValue = getPlayerValue;
18
- exports.setPlayerValue = setPlayerValue;
19
- exports.deletePlayerValue = deletePlayerValue;
20
- const path_1 = __importDefault(require("path"));
21
- // Find the sdk-commands package root by resolving its package.json
22
- const SDK_COMMANDS_ROOT = path_1.default.dirname(require.resolve('@dcl/sdk-commands/package.json'));
23
- const RUNTIME_DATA_DIR = path_1.default.join(SDK_COMMANDS_ROOT, '.runtime-data');
24
- const SERVER_STORAGE_FILE = 'server-storage.json';
25
- const DEFAULT_STORAGE = {
26
- env: {},
27
- world: {},
28
- players: {}
29
- };
30
- /**
31
- * Ensures the runtime data directory exists.
32
- */
33
- async function ensureRuntimeDir(components) {
34
- try {
35
- const exists = await components.fs.directoryExists(RUNTIME_DATA_DIR);
36
- if (!exists) {
37
- await components.fs.mkdir(RUNTIME_DATA_DIR, { recursive: true });
38
- }
39
- }
40
- catch (error) {
41
- components.logger.error(`Failed to create runtime data directory: ${error}`);
42
- }
43
- }
44
- /**
45
- * Loads all server-side storage data from server-storage.json.
46
- */
47
- async function loadServerStorage(components) {
48
- const storagePath = path_1.default.join(RUNTIME_DATA_DIR, SERVER_STORAGE_FILE);
49
- try {
50
- const exists = await components.fs.fileExists(storagePath);
51
- if (!exists) {
52
- return { ...DEFAULT_STORAGE };
53
- }
54
- const content = await components.fs.readFile(storagePath, 'utf-8');
55
- const parsed = JSON.parse(content);
56
- // Merge with defaults to ensure all keys exist
57
- return {
58
- env: parsed.env ?? {},
59
- world: parsed.world ?? {},
60
- players: parsed.players ?? {}
61
- };
62
- }
63
- catch (error) {
64
- components.logger.error(`Failed to load ${SERVER_STORAGE_FILE}: ${error}`);
65
- return { ...DEFAULT_STORAGE };
66
- }
67
- }
68
- /**
69
- * Saves all server-side storage data to server-storage.json.
70
- */
71
- async function saveServerStorage(components, data) {
72
- await ensureRuntimeDir(components);
73
- const storagePath = path_1.default.join(RUNTIME_DATA_DIR, SERVER_STORAGE_FILE);
74
- try {
75
- await components.fs.writeFile(storagePath, JSON.stringify(data, null, 2));
76
- }
77
- catch (error) {
78
- components.logger.error(`Failed to save ${SERVER_STORAGE_FILE}: ${error}`);
79
- throw error;
80
- }
81
- }
82
- /**
83
- * Loads environment variables from a .env file in the project directory.
84
- * Returns a Map of key-value pairs.
85
- */
86
- async function loadEnvFile(components, projectDirectory) {
87
- const envMap = new Map();
88
- const envPath = path_1.default.join(projectDirectory, '.env');
89
- try {
90
- const exists = await components.fs.fileExists(envPath);
91
- if (!exists) {
92
- return envMap;
93
- }
94
- const content = await components.fs.readFile(envPath, 'utf-8');
95
- const lines = content.split('\n');
96
- for (const line of lines) {
97
- const trimmed = line.trim();
98
- // Skip empty lines and comments
99
- if (!trimmed || trimmed.startsWith('#')) {
100
- continue;
101
- }
102
- const equalIndex = trimmed.indexOf('=');
103
- if (equalIndex > 0) {
104
- const key = trimmed.slice(0, equalIndex).trim();
105
- let value = trimmed.slice(equalIndex + 1).trim();
106
- // Remove surrounding quotes if present
107
- if ((value.startsWith('"') && value.endsWith('"')) || (value.startsWith("'") && value.endsWith("'"))) {
108
- value = value.slice(1, -1);
109
- }
110
- envMap.set(key, value);
111
- }
112
- }
113
- }
114
- catch (error) {
115
- components.logger.error(`Failed to load .env file: ${error}`);
116
- }
117
- return envMap;
118
- }
119
- /**
120
- * Gets runtime environment variables.
121
- */
122
- async function getEnvStorage(components) {
123
- const storage = await loadServerStorage(components);
124
- return storage.env;
125
- }
126
- /**
127
- * Gets merged environment variables.
128
- * Runtime values (from server-storage.json) override .env values.
129
- */
130
- async function getMergedEnv(components, projectDirectory) {
131
- const envFile = await loadEnvFile(components, projectDirectory);
132
- const runtimeEnv = await getEnvStorage(components);
133
- // Runtime overrides .env
134
- for (const [key, value] of Object.entries(runtimeEnv)) {
135
- envFile.set(key, value);
136
- }
137
- return envFile;
138
- }
139
- /**
140
- * Sets a runtime environment variable.
141
- */
142
- async function setEnvValue(components, key, value) {
143
- const storage = await loadServerStorage(components);
144
- storage.env[key] = value;
145
- await saveServerStorage(components, storage);
146
- }
147
- /**
148
- * Deletes a runtime environment variable.
149
- * Returns true if key existed and was deleted, false otherwise.
150
- */
151
- async function deleteEnvValue(components, key) {
152
- const storage = await loadServerStorage(components);
153
- if (!(key in storage.env)) {
154
- return false;
155
- }
156
- delete storage.env[key];
157
- await saveServerStorage(components, storage);
158
- return true;
159
- }
160
- /**
161
- * Gets all world storage data.
162
- */
163
- async function getWorldStorage(components) {
164
- const storage = await loadServerStorage(components);
165
- return storage.world;
166
- }
167
- /**
168
- * Gets a value from world storage.
169
- */
170
- async function getWorldValue(components, key) {
171
- const storage = await loadServerStorage(components);
172
- return storage.world[key];
173
- }
174
- /**
175
- * Sets a value in world storage.
176
- */
177
- async function setWorldValue(components, key, value) {
178
- const storage = await loadServerStorage(components);
179
- storage.world[key] = value;
180
- await saveServerStorage(components, storage);
181
- }
182
- /**
183
- * Deletes a value from world storage.
184
- * Returns true if key existed and was deleted, false otherwise.
185
- */
186
- async function deleteWorldValue(components, key) {
187
- const storage = await loadServerStorage(components);
188
- if (!(key in storage.world)) {
189
- return false;
190
- }
191
- delete storage.world[key];
192
- await saveServerStorage(components, storage);
193
- return true;
194
- }
195
- /**
196
- * Gets a value from a player's storage.
197
- */
198
- async function getPlayerValue(components, address, key) {
199
- const storage = await loadServerStorage(components);
200
- return storage.players[address]?.[key];
201
- }
202
- /**
203
- * Sets a value in a player's storage.
204
- */
205
- async function setPlayerValue(components, address, key, value) {
206
- const storage = await loadServerStorage(components);
207
- if (!storage.players[address]) {
208
- storage.players[address] = {};
209
- }
210
- storage.players[address][key] = value;
211
- await saveServerStorage(components, storage);
212
- }
213
- /**
214
- * Deletes a value from a player's storage.
215
- * Returns true if key existed and was deleted, false otherwise.
216
- */
217
- async function deletePlayerValue(components, address, key) {
218
- const storage = await loadServerStorage(components);
219
- if (!storage.players[address] || !(key in storage.players[address])) {
220
- return false;
221
- }
222
- delete storage.players[address][key];
223
- await saveServerStorage(components, storage);
224
- return true;
225
- }
226
- //# sourceMappingURL=runtime-env.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"runtime-env.js","sourceRoot":"","sources":["../../../../src/commands/start/server/runtime-env.ts"],"names":[],"mappings":";;;;;AAyCA,8CAsBC;AAKD,8CAaC;AAMD,kCAyCC;AAKD,sCAGC;AAMD,oCAaC;AAKD,kCAQC;AAMD,wCAQC;AAKD,0CAKC;AAKD,sCAMC;AAKD,sCAQC;AAMD,4CAWC;AAKD,wCAOC;AAKD,wCAYC;AAMD,8CAYC;AAxRD,gDAAuB;AAGvB,mEAAmE;AACnE,MAAM,iBAAiB,GAAG,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC,CAAA;AACzF,MAAM,gBAAgB,GAAG,cAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAA;AACtE,MAAM,mBAAmB,GAAG,qBAAqB,CAAA;AAYjD,MAAM,eAAe,GAAkB;IACrC,GAAG,EAAE,EAAE;IACP,KAAK,EAAE,EAAE;IACT,OAAO,EAAE,EAAE;CACZ,CAAA;AAED;;GAEG;AACH,KAAK,UAAU,gBAAgB,CAAC,UAAgD;IAC9E,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,EAAE,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAA;QACpE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC,gBAAgB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAClE,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,4CAA4C,KAAK,EAAE,CAAC,CAAA;IAC9E,CAAC;AACH,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,iBAAiB,CAAC,UAAgD;IACtF,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,CAAA;IAEpE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;QAC1D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,EAAE,GAAG,eAAe,EAAE,CAAA;QAC/B,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAA2B,CAAA;QAE5D,+CAA+C;QAC/C,OAAO;YACL,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI,EAAE;YACrB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,EAAE;YACzB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE;SAC9B,CAAA;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,mBAAmB,KAAK,KAAK,EAAE,CAAC,CAAA;QAC1E,OAAO,EAAE,GAAG,eAAe,EAAE,CAAA;IAC/B,CAAC;AACH,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,iBAAiB,CACrC,UAAgD,EAChD,IAAmB;IAEnB,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAA;IAClC,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,CAAA;IAEpE,IAAI,CAAC;QACH,MAAM,UAAU,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IAC3E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,mBAAmB,KAAK,KAAK,EAAE,CAAC,CAAA;QAC1E,MAAM,KAAK,CAAA;IACb,CAAC;AACH,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,WAAW,CAC/B,UAAgD,EAChD,gBAAwB;IAExB,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAA;IACxC,MAAM,OAAO,GAAG,cAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAA;IAEnD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QACtD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,MAAM,CAAA;QACf,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAC9D,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAEjC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;YAC3B,gCAAgC;YAChC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxC,SAAQ;YACV,CAAC;YAED,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;YACvC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;gBACnB,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,IAAI,EAAE,CAAA;gBAC/C,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;gBAEhD,uCAAuC;gBACvC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;oBACrG,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;gBAC5B,CAAC;gBAED,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;YACxB,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,KAAK,EAAE,CAAC,CAAA;IAC/D,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,aAAa,CAAC,UAAgD;IAClF,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAA;IACnD,OAAO,OAAO,CAAC,GAAG,CAAA;AACpB,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,YAAY,CAChC,UAAgD,EAChD,gBAAwB;IAExB,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAA;IAC/D,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,CAAA;IAElD,yBAAyB;IACzB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IACzB,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,WAAW,CAC/B,UAAgD,EAChD,GAAW,EACX,KAAa;IAEb,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAA;IACnD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IACxB,MAAM,iBAAiB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;AAC9C,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,cAAc,CAAC,UAAgD,EAAE,GAAW;IAChG,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAA;IACnD,IAAI,CAAC,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAA;IACd,CAAC;IACD,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACvB,MAAM,iBAAiB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAC5C,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,eAAe,CACnC,UAAgD;IAEhD,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAA;IACnD,OAAO,OAAO,CAAC,KAAK,CAAA;AACtB,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,aAAa,CACjC,UAAgD,EAChD,GAAW;IAEX,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAA;IACnD,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;AAC3B,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,aAAa,CACjC,UAAgD,EAChD,GAAW,EACX,KAAc;IAEd,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAA;IACnD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IAC1B,MAAM,iBAAiB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;AAC9C,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,gBAAgB,CACpC,UAAgD,EAChD,GAAW;IAEX,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAA;IACnD,IAAI,CAAC,CAAC,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAA;IACd,CAAC;IACD,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACzB,MAAM,iBAAiB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAC5C,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,cAAc,CAClC,UAAgD,EAChD,OAAe,EACf,GAAW;IAEX,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAA;IACnD,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;AACxC,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,cAAc,CAClC,UAAgD,EAChD,OAAe,EACf,GAAW,EACX,KAAc;IAEd,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAA;IACnD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,CAAA;IAC/B,CAAC;IACD,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;IACrC,MAAM,iBAAiB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;AAC9C,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,iBAAiB,CACrC,UAAgD,EAChD,OAAe,EACf,GAAW;IAEX,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAA;IACnD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QACpE,OAAO,KAAK,CAAA;IACd,CAAC;IACD,OAAO,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAA;IACpC,MAAM,iBAAiB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAC5C,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -1,8 +0,0 @@
1
- import { Router } from '@well-known-components/http-server';
2
- import { PreviewComponents } from '../types';
3
- import { CliComponents } from '../../../components';
4
- import { Workspace } from '../../../logic/workspace-validations';
5
- /**
6
- * Sets up storage-related endpoints for environment variables, scene storage, and player storage.
7
- */
8
- export declare function setupStorageEndpoints(components: CliComponents, router: Router<PreviewComponents>, workspace: Workspace): void;
@@ -1,156 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setupStorageEndpoints = setupStorageEndpoints;
4
- const runtime_env_1 = require("./runtime-env");
5
- /**
6
- * Sets up storage-related endpoints for environment variables, scene storage, and player storage.
7
- */
8
- function setupStorageEndpoints(components, router, workspace) {
9
- const withKeyValidation = async (ctx, next) => {
10
- if (!ctx.params.key) {
11
- return { status: 400, body: { message: 'Key is required' } };
12
- }
13
- return next();
14
- };
15
- const withAddressValidation = async (ctx, next) => {
16
- if (!ctx.params.address) {
17
- return { status: 400, body: { message: 'Address is required' } };
18
- }
19
- return next();
20
- };
21
- // Environment variables endpoints (/env/:key)
22
- router.get('/env/:key', withKeyValidation, async (ctx) => {
23
- const { key } = ctx.params;
24
- const envVars = await (0, runtime_env_1.getMergedEnv)(components, workspace.projects[0].workingDirectory);
25
- const value = envVars.get(key);
26
- if (value === undefined) {
27
- return { status: 404, body: { message: `Environment variable '${key}' not found` } };
28
- }
29
- return { body: JSON.stringify({ value }) };
30
- });
31
- router.put('/env/:key', withKeyValidation, async (ctx) => {
32
- const { key } = ctx.params;
33
- try {
34
- const bodyText = await ctx.request.text();
35
- const { value } = JSON.parse(bodyText);
36
- await (0, runtime_env_1.setEnvValue)(components, key, value);
37
- return { status: 204 };
38
- }
39
- catch (error) {
40
- components.logger.error(`Failed to set environment variable '${key}': ${error}`);
41
- return { status: 500, body: { message: `Failed to set environment variable '${key}'` } };
42
- }
43
- });
44
- router.delete('/env/:key', withKeyValidation, async (ctx) => {
45
- const { key } = ctx.params;
46
- try {
47
- await (0, runtime_env_1.deleteEnvValue)(components, key);
48
- return { status: 204 };
49
- }
50
- catch (error) {
51
- components.logger.error(`Failed to delete environment variable '${key}': ${error}`);
52
- return { status: 500, body: { message: `Failed to delete environment variable '${key}'` } };
53
- }
54
- });
55
- // Scene Storage list endpoint (GET /values, optional ?prefix=&limit=&offset=)
56
- router.get('/values', async (ctx) => {
57
- const prefix = ctx.url.searchParams.get('prefix');
58
- const limitParam = ctx.url.searchParams.get('limit');
59
- const offsetParam = ctx.url.searchParams.get('offset');
60
- const storage = await (0, runtime_env_1.loadServerStorage)(components);
61
- let entries = Object.entries(storage.world).map(([key, value]) => ({ key, value }));
62
- if (prefix !== null && prefix !== '') {
63
- entries = entries.filter((entry) => entry.key.startsWith(prefix));
64
- }
65
- const total = entries.length;
66
- const offset = offsetParam !== null ? Math.max(0, parseInt(offsetParam, 10) || 0) : 0;
67
- const limit = limitParam !== null ? Math.max(1, parseInt(limitParam, 10) || 0) : entries.length;
68
- const paginatedEntries = limit > 0 ? entries.slice(offset, offset + limit) : entries.slice(offset);
69
- return { body: JSON.stringify({ data: paginatedEntries, pagination: { offset, total } }) };
70
- });
71
- // Scene Storage endpoints (/values/:key)
72
- router.get('/values/:key', withKeyValidation, async (ctx) => {
73
- const { key } = ctx.params;
74
- const value = await (0, runtime_env_1.getWorldValue)(components, key);
75
- if (value === undefined) {
76
- return { status: 404, body: { message: `Storage key '${key}' not found` } };
77
- }
78
- return { body: JSON.stringify({ value }) };
79
- });
80
- router.put('/values/:key', withKeyValidation, async (ctx) => {
81
- const { key } = ctx.params;
82
- try {
83
- const bodyText = await ctx.request.text();
84
- const { value } = JSON.parse(bodyText);
85
- await (0, runtime_env_1.setWorldValue)(components, key, value);
86
- return { body: JSON.stringify({ value }) };
87
- }
88
- catch (error) {
89
- components.logger.error(`Failed to set storage value '${key}': ${error}`);
90
- return { status: 500, body: { message: `Failed to set storage value '${key}'` } };
91
- }
92
- });
93
- router.delete('/values/:key', withKeyValidation, async (ctx) => {
94
- const { key } = ctx.params;
95
- try {
96
- await (0, runtime_env_1.deleteWorldValue)(components, key);
97
- return { status: 204 };
98
- }
99
- catch (error) {
100
- components.logger.error(`Failed to delete storage value '${key}': ${error}`);
101
- return { status: 500, body: { message: `Failed to delete storage value '${key}'` } };
102
- }
103
- });
104
- // Player Storage list endpoint (GET /players/:address/values, optional ?prefix=&limit=&offset=)
105
- router.get('/players/:address/values', withAddressValidation, async (ctx) => {
106
- const { address } = ctx.params;
107
- const prefix = ctx.url.searchParams.get('prefix');
108
- const limitParam = ctx.url.searchParams.get('limit');
109
- const offsetParam = ctx.url.searchParams.get('offset');
110
- const storage = await (0, runtime_env_1.loadServerStorage)(components);
111
- const playerData = storage.players[address] ?? {};
112
- let entries = Object.entries(playerData).map(([key, value]) => ({ key, value }));
113
- if (prefix !== null && prefix !== '') {
114
- entries = entries.filter((entry) => entry.key.startsWith(prefix));
115
- }
116
- const total = entries.length;
117
- const offset = offsetParam !== null ? Math.max(0, parseInt(offsetParam, 10) || 0) : 0;
118
- const limit = limitParam !== null ? Math.max(1, parseInt(limitParam, 10) || 0) : entries.length;
119
- const paginatedEntries = limit > 0 ? entries.slice(offset, offset + limit) : entries.slice(offset);
120
- return { body: JSON.stringify({ data: paginatedEntries, pagination: { offset, total } }) };
121
- });
122
- // Player Storage endpoints (/players/:address/values/:key)
123
- router.get('/players/:address/values/:key', withAddressValidation, withKeyValidation, async (ctx) => {
124
- const { address, key } = ctx.params;
125
- const value = await (0, runtime_env_1.getPlayerValue)(components, address, key);
126
- if (value === undefined) {
127
- return { status: 404, body: { message: `Player storage key '${key}' not found for '${address}'` } };
128
- }
129
- return { body: JSON.stringify({ value }) };
130
- });
131
- router.put('/players/:address/values/:key', withAddressValidation, withKeyValidation, async (ctx) => {
132
- const { address, key } = ctx.params;
133
- try {
134
- const bodyText = await ctx.request.text();
135
- const { value } = JSON.parse(bodyText);
136
- await (0, runtime_env_1.setPlayerValue)(components, address, key, value);
137
- return { body: JSON.stringify({ value }) };
138
- }
139
- catch (error) {
140
- components.logger.error(`Failed to set player storage value '${key}' for '${address}': ${error}`);
141
- return { status: 500, body: { message: `Failed to set player storage value '${key}' for '${address}'` } };
142
- }
143
- });
144
- router.delete('/players/:address/values/:key', withAddressValidation, withKeyValidation, async (ctx) => {
145
- const { address, key } = ctx.params;
146
- try {
147
- await (0, runtime_env_1.deletePlayerValue)(components, address, key);
148
- return { status: 204 };
149
- }
150
- catch (error) {
151
- components.logger.error(`Failed to delete player storage value '${key}' for '${address}': ${error}`);
152
- return { status: 500, body: { message: `Failed to delete player storage value '${key}' for '${address}'` } };
153
- }
154
- });
155
- }
156
- //# sourceMappingURL=storage-service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"storage-service.js","sourceRoot":"","sources":["../../../../src/commands/start/server/storage-service.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import { Options } from './types';
2
- /**
3
- * Handles environment variable operations in the server-side storage service (set, delete, clear)
4
- */
5
- export declare const handleEnv: (action: string, key: string | undefined, options: Options) => Promise<void>;
@@ -1,86 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.handleEnv = void 0;
4
- const path_1 = require("path");
5
- const error_1 = require("../../logic/error");
6
- const beautiful_logs_1 = require("../../logic/beautiful-logs");
7
- const shared_1 = require("./shared");
8
- /**
9
- * Handles environment variable operations in the server-side storage service (set, delete, clear)
10
- */
11
- const handleEnv = async (action, key, options) => {
12
- const { logger, analytics } = options.components;
13
- const projectRoot = (0, path_1.resolve)(process.cwd(), options.args['--dir'] || '.');
14
- // Common setup: validate action, workspace, and world
15
- const { baseURL, worldName, baseParcel, parcels } = await (0, shared_1.setupStorageCommand)(options.components, projectRoot, action, options.args['--target'], ['set', 'delete', 'clear']);
16
- // Linker dApp options
17
- const linkOptions = (0, shared_1.getLinkerDappOptions)(options.args);
18
- // Handle actions
19
- if (action === 'set') {
20
- // SET operation
21
- if (!key) {
22
- throw new error_1.CliError('STORAGE_MISSING_KEY', 'Missing KEY argument. Usage: storage env set KEY --value VALUE');
23
- }
24
- const value = options.args['--value'];
25
- if (value === undefined) {
26
- throw new error_1.CliError('STORAGE_MISSING_VALUE', 'Missing --value option. Usage: storage env set KEY --value VALUE');
27
- }
28
- logger.info(`Setting environment variable '${key}' to ${baseURL}`);
29
- const url = `${baseURL}/env/${encodeURIComponent(key)}`;
30
- const info = (0, shared_1.createStorageInfo)('env', 'set', url, worldName, baseParcel, parcels, key, value);
31
- const result = await (0, shared_1.makeAuthenticatedRequest)(options.components, info, linkOptions, 'PUT', url, { value });
32
- if (result.success) {
33
- analytics.track('Storage Env Set Success', { key });
34
- (0, beautiful_logs_1.printSuccess)(logger, `Environment variable '${key}' set successfully!`, '');
35
- }
36
- else {
37
- analytics.track('Storage Env Set Failure', { key });
38
- (0, beautiful_logs_1.printError)(logger, `Failed to set environment variable '${key}':`, new Error(result.error || 'Unknown error'));
39
- }
40
- }
41
- else if (action === 'delete') {
42
- // DELETE operation
43
- if (!key) {
44
- throw new error_1.CliError('STORAGE_MISSING_KEY', 'Missing KEY argument. Usage: storage env delete KEY');
45
- }
46
- logger.info(`Deleting environment variable '${key}' from ${baseURL}`);
47
- const url = `${baseURL}/env/${encodeURIComponent(key)}`;
48
- const info = (0, shared_1.createStorageInfo)('env', 'delete', url, worldName, baseParcel, parcels, key);
49
- const result = await (0, shared_1.makeAuthenticatedRequest)(options.components, info, linkOptions, 'DELETE', url);
50
- if (result.success) {
51
- analytics.track('Storage Env Delete Success', { key });
52
- (0, beautiful_logs_1.printSuccess)(logger, `Environment variable '${key}' deleted successfully!`, '');
53
- }
54
- else {
55
- analytics.track('Storage Env Delete Failure', { key });
56
- (0, beautiful_logs_1.printError)(logger, `Failed to delete environment variable '${key}':`, new Error(result.error || 'Unknown error'));
57
- }
58
- }
59
- else if (action === 'clear') {
60
- // CLEAR operation
61
- const hasConfirm = options.args['--confirm'];
62
- if (!hasConfirm) {
63
- const confirmed = await (0, shared_1.confirmAction)('Are you sure you want to delete ALL environment variables? This cannot be undone.');
64
- if (!confirmed) {
65
- logger.info('Operation cancelled.');
66
- return;
67
- }
68
- }
69
- logger.info(`Clearing all environment variables from ${baseURL}`);
70
- const url = `${baseURL}/env`;
71
- const info = (0, shared_1.createStorageInfo)('env', 'clear', url, worldName, baseParcel, parcels);
72
- const result = await (0, shared_1.makeAuthenticatedRequest)(options.components, info, linkOptions, 'DELETE', url, undefined, {
73
- 'X-Confirm-Delete-All': 'true'
74
- });
75
- if (result.success) {
76
- analytics.track('Storage Env Clear Success', {});
77
- (0, beautiful_logs_1.printSuccess)(logger, 'All environment variables cleared successfully!', '');
78
- }
79
- else {
80
- analytics.track('Storage Env Clear Failure', {});
81
- (0, beautiful_logs_1.printError)(logger, 'Failed to clear environment variables:', new Error(result.error || 'Unknown error'));
82
- }
83
- }
84
- };
85
- exports.handleEnv = handleEnv;
86
- //# sourceMappingURL=env.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["../../../src/commands/storage/env.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- import { Result } from 'arg';
2
- import { CliComponents } from '../../components';
3
- export interface Options {
4
- args: Result<typeof args>;
5
- components: CliComponents;
6
- }
7
- export declare const args: {
8
- '--help': BooleanConstructor;
9
- '-h': string;
10
- '--dir': StringConstructor;
11
- '--target': StringConstructor;
12
- '-t': string;
13
- '--port': NumberConstructor;
14
- '-p': string;
15
- '--https': BooleanConstructor;
16
- '--no-browser': BooleanConstructor;
17
- '-b': string;
18
- '--value': StringConstructor;
19
- '-v': string;
20
- '--address': StringConstructor;
21
- '-a': string;
22
- '--confirm': BooleanConstructor;
23
- '-c': string;
24
- };
25
- export declare function help(options: Options): void;
26
- export declare function main(options: Options): Promise<void>;