@dcl/sdk-commands 7.23.4-26106700711.commit-2afa13b → 7.23.4-26110424113.commit-4b40cec

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 (58) hide show
  1. package/dist/commands/start/index.js +0 -17
  2. package/dist/commands/start/index.js.map +1 -1
  3. package/dist/commands/start/server/routes.js +0 -2
  4. package/dist/commands/start/server/routes.js.map +1 -1
  5. package/dist/commands/start/types.d.ts +0 -3
  6. package/dist/commands/start/utils.d.ts +0 -34
  7. package/dist/commands/start/utils.js +0 -104
  8. package/dist/commands/start/utils.js.map +1 -1
  9. package/dist/components/analytics.d.ts +1 -70
  10. package/dist/components/analytics.js +2 -3
  11. package/dist/components/analytics.js.map +1 -1
  12. package/dist/logic/bundle.js +0 -31
  13. package/dist/logic/bundle.js.map +1 -1
  14. package/dist/logic/config.d.ts +0 -1
  15. package/dist/logic/config.js +0 -7
  16. package/dist/logic/config.js.map +1 -1
  17. package/dist/logic/error.d.ts +1 -1
  18. package/dist/logic/error.js.map +1 -1
  19. package/dist/logic/exec.d.ts +0 -1
  20. package/dist/logic/exec.js +2 -2
  21. package/dist/logic/exec.js.map +1 -1
  22. package/dist/logic/lang.js +1 -1
  23. package/dist/logic/scene-validations.d.ts +1 -8
  24. package/dist/logic/scene-validations.js.map +1 -1
  25. package/package.json +4 -4
  26. package/dist/commands/sdk-server-logs/index.d.ts +0 -24
  27. package/dist/commands/sdk-server-logs/index.js +0 -313
  28. package/dist/commands/sdk-server-logs/index.js.map +0 -1
  29. package/dist/commands/start/hammurabi-server.d.ts +0 -19
  30. package/dist/commands/start/hammurabi-server.js +0 -78
  31. package/dist/commands/start/hammurabi-server.js.map +0 -1
  32. package/dist/commands/start/server/runtime-env.d.ts +0 -71
  33. package/dist/commands/start/server/runtime-env.js +0 -226
  34. package/dist/commands/start/server/runtime-env.js.map +0 -1
  35. package/dist/commands/start/server/storage-service.d.ts +0 -8
  36. package/dist/commands/start/server/storage-service.js +0 -156
  37. package/dist/commands/start/server/storage-service.js.map +0 -1
  38. package/dist/commands/storage/env.d.ts +0 -5
  39. package/dist/commands/storage/env.js +0 -86
  40. package/dist/commands/storage/env.js.map +0 -1
  41. package/dist/commands/storage/index.d.ts +0 -26
  42. package/dist/commands/storage/index.js +0 -142
  43. package/dist/commands/storage/index.js.map +0 -1
  44. package/dist/commands/storage/player.d.ts +0 -5
  45. package/dist/commands/storage/player.js +0 -143
  46. package/dist/commands/storage/player.js.map +0 -1
  47. package/dist/commands/storage/scene.d.ts +0 -5
  48. package/dist/commands/storage/scene.js +0 -105
  49. package/dist/commands/storage/scene.js.map +0 -1
  50. package/dist/commands/storage/shared.d.ts +0 -62
  51. package/dist/commands/storage/shared.js +0 -249
  52. package/dist/commands/storage/shared.js.map +0 -1
  53. package/dist/commands/storage/types.d.ts +0 -56
  54. package/dist/commands/storage/types.js +0 -23
  55. package/dist/commands/storage/types.js.map +0 -1
  56. package/dist/logic/auth-chain-headers.d.ts +0 -11
  57. package/dist/logic/auth-chain-headers.js +0 -25
  58. package/dist/logic/auth-chain-headers.js.map +0 -1
@@ -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":"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"}
@@ -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":";;;AAAA,+BAA8B;AAE9B,6CAA4C;AAC5C,+DAAqE;AACrE,qCAMiB;AAEjB;;GAEG;AACI,MAAM,SAAS,GAAG,KAAK,EAAE,MAAc,EAAE,GAAuB,EAAE,OAAgB,EAAiB,EAAE;IAC1G,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,UAAU,CAAA;IAChD,MAAM,WAAW,GAAG,IAAA,cAAO,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAA;IAExE,sDAAsD;IACtD,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,MAAM,IAAA,4BAAmB,EAC3E,OAAO,CAAC,UAAU,EAClB,WAAW,EACX,MAAM,EACN,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,EACxB,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAC3B,CAAA;IAED,sBAAsB;IACtB,MAAM,WAAW,GAAG,IAAA,6BAAoB,EAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAEtD,iBAAiB;IACjB,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACrB,gBAAgB;QAChB,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,gBAAQ,CAAC,qBAAqB,EAAE,gEAAgE,CAAC,CAAA;QAC7G,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACrC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,gBAAQ,CAAC,uBAAuB,EAAE,kEAAkE,CAAC,CAAA;QACjH,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,iCAAiC,GAAG,QAAQ,OAAO,EAAE,CAAC,CAAA;QAElE,MAAM,GAAG,GAAG,GAAG,OAAO,QAAQ,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAA;QACvD,MAAM,IAAI,GAAG,IAAA,0BAAiB,EAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;QAE7F,MAAM,MAAM,GAAG,MAAM,IAAA,iCAAwB,EAAC,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QAE3G,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,SAAS,CAAC,KAAK,CAAC,yBAAyB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YACnD,IAAA,6BAAY,EAAC,MAAM,EAAE,yBAAyB,GAAG,qBAAqB,EAAE,EAAE,CAAC,CAAA;QAC7E,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,KAAK,CAAC,yBAAyB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YACnD,IAAA,2BAAU,EAAC,MAAM,EAAE,uCAAuC,GAAG,IAAI,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,eAAe,CAAC,CAAC,CAAA;QAChH,CAAC;IACH,CAAC;SAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,mBAAmB;QACnB,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,gBAAQ,CAAC,qBAAqB,EAAE,qDAAqD,CAAC,CAAA;QAClG,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,kCAAkC,GAAG,UAAU,OAAO,EAAE,CAAC,CAAA;QAErE,MAAM,GAAG,GAAG,GAAG,OAAO,QAAQ,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAA;QACvD,MAAM,IAAI,GAAG,IAAA,0BAAiB,EAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,CAAC,CAAA;QAEzF,MAAM,MAAM,GAAG,MAAM,IAAA,iCAAwB,EAAC,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAA;QAEnG,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,SAAS,CAAC,KAAK,CAAC,4BAA4B,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YACtD,IAAA,6BAAY,EAAC,MAAM,EAAE,yBAAyB,GAAG,yBAAyB,EAAE,EAAE,CAAC,CAAA;QACjF,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,KAAK,CAAC,4BAA4B,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YACtD,IAAA,2BAAU,EAAC,MAAM,EAAE,0CAA0C,GAAG,IAAI,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,eAAe,CAAC,CAAC,CAAA;QACnH,CAAC;IACH,CAAC;SAAM,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QAC9B,kBAAkB;QAClB,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAE5C,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,SAAS,GAAG,MAAM,IAAA,sBAAa,EACnC,mFAAmF,CACpF,CAAA;YACD,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;gBACnC,OAAM;YACR,CAAC;QACH,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,2CAA2C,OAAO,EAAE,CAAC,CAAA;QAEjE,MAAM,GAAG,GAAG,GAAG,OAAO,MAAM,CAAA;QAC5B,MAAM,IAAI,GAAG,IAAA,0BAAiB,EAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;QAEnF,MAAM,MAAM,GAAG,MAAM,IAAA,iCAAwB,EAAC,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE;YAC7G,sBAAsB,EAAE,MAAM;SAC/B,CAAC,CAAA;QAEF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,SAAS,CAAC,KAAK,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAA;YAChD,IAAA,6BAAY,EAAC,MAAM,EAAE,iDAAiD,EAAE,EAAE,CAAC,CAAA;QAC7E,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,KAAK,CAAC,2BAA2B,EAAE,EAAE,CAAC,CAAA;YAChD,IAAA,2BAAU,EAAC,MAAM,EAAE,wCAAwC,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,IAAI,eAAe,CAAC,CAAC,CAAA;QAC1G,CAAC;IACH,CAAC;AACH,CAAC,CAAA;AA7FY,QAAA,SAAS,aA6FrB"}
@@ -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>;