@stechquick/studio-cli 4.0.4-0 → 4.1.0-1

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.
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ICloudProviderStorage = void 0;
4
+ exports.ICloudProviderStorage = Symbol.for("ICloudProviderStorage");
5
+ //# sourceMappingURL=ICloudProviderStorage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ICloudProviderStorage.js","sourceRoot":"","sources":["../../../../../../common/clean/domain/useCases/ICloudProviderStorage.ts"],"names":[],"mappings":";;;AAqHa,QAAA,qBAAqB,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC"}
@@ -0,0 +1,392 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.S3Low = void 0;
4
+ const client_s3_1 = require("@aws-sdk/client-s3");
5
+ const https_1 = require("https");
6
+ class S3Low {
7
+ s3Client;
8
+ logger;
9
+ constructor(params, logger, options) {
10
+ this.logger = logger;
11
+ const s3ClientConfig = { credentials: params.credentials };
12
+ params.region && (s3ClientConfig.region = params.region);
13
+ params.endpoint && (s3ClientConfig.endpoint = params.endpoint);
14
+ const certs = this.loadCertificates(options.certs);
15
+ if (certs && certs.length > 0) {
16
+ const agent = new https_1.Agent({
17
+ rejectUnauthorized: true,
18
+ ca: certs
19
+ });
20
+ s3ClientConfig.requestHandler = {
21
+ httpAgent: agent,
22
+ httpsAgent: agent
23
+ };
24
+ }
25
+ s3ClientConfig.forcePathStyle = true;
26
+ this.logger.log({ level: "log", logCode: "S3-AO1", message: s3ClientConfig.endpoint ? `S3 Client initialized with custom endpoint: ${s3ClientConfig.endpoint}` : `S3 Client initialized with AWS endpoint for region: ${s3ClientConfig.region || "default"}` });
27
+ this.logger.log({ level: "log", logCode: "S3-AO2", message: options.certs.certType === "direct" ? `S3 Client initialized with direct certificates. Number of certificates: ${options.certs.certificates.length}` : `S3 Client initialized with environment variable for certificates: ${options.certs.certEnvName}` });
28
+ this.s3Client = new client_s3_1.S3Client(s3ClientConfig);
29
+ }
30
+ loadCertificates(certOptions) {
31
+ if (certOptions.certType === "direct") {
32
+ return certOptions.certificates;
33
+ }
34
+ const certs = [];
35
+ const certificateVariableName = certOptions.certEnvName || `S3_CERTIFICATE_${process.env["wfm_env"]}`;
36
+ const certificate = process.env?.[certificateVariableName]?.trim();
37
+ if (certificate) {
38
+ certs.push(certificate);
39
+ this.logger.log({ level: "log", logCode: "S3-L01", message: `Certificate loaded successfully.` });
40
+ }
41
+ else {
42
+ this.logger.log({ level: "error", logCode: "S3-L01", message: `Certificate not found. Please provide ${certificateVariableName} environment variable.` });
43
+ }
44
+ return certs;
45
+ }
46
+ generateBucketName() {
47
+ let bucketName = '';
48
+ const possibleCharacters = 'abcdefghijklmnopqrstuvwxyz0123456789';
49
+ for (let i = 0; i < 24; i++) {
50
+ bucketName += possibleCharacters.charAt(Math.floor(Math.random() * possibleCharacters.length));
51
+ }
52
+ return bucketName;
53
+ }
54
+ async getBucketPolicy(params) {
55
+ try {
56
+ const command = new client_s3_1.GetBucketPolicyCommand({
57
+ Bucket: params.Bucket
58
+ });
59
+ const response = await this.s3Client.send(command);
60
+ return { Policy: response.Policy };
61
+ }
62
+ catch (error) {
63
+ if (error.name === 'NoSuchBucketPolicy' || error.Code === 'NoSuchBucketPolicy') {
64
+ throw {
65
+ code: 'NoSuchBucketPolicy',
66
+ name: 'NoSuchBucketPolicy',
67
+ message: 'The bucket policy does not exist'
68
+ };
69
+ }
70
+ // Diğer hataları yukarı fırlat
71
+ throw error;
72
+ }
73
+ }
74
+ async createS3BucketPolicy(bucketName, params) {
75
+ const newS3BucketPolicy = {
76
+ Version: params.version || '2012-10-17',
77
+ Statement: params.statements.map(statement => ({
78
+ Sid: statement.sid,
79
+ Effect: statement.effect,
80
+ Principal: statement.principal,
81
+ Action: statement.action,
82
+ Resource: statement.resource
83
+ })),
84
+ };
85
+ const newPolicyStr = JSON.stringify(newS3BucketPolicy);
86
+ try {
87
+ const existingPolicy = await this.getBucketPolicy({ Bucket: bucketName });
88
+ const existingPolicyStr = existingPolicy.Policy;
89
+ // Sadece farklıysa güncelle
90
+ if (existingPolicyStr !== newPolicyStr) {
91
+ await this.uploadBucketPolicy({ Bucket: bucketName, Policy: newPolicyStr });
92
+ this.logger.log({ level: "log", logCode: "S3-L03", message: `Bucket(${bucketName}) policy updated` });
93
+ }
94
+ else {
95
+ this.logger.log({ level: "log", logCode: "S3-L03", message: `Bucket(${bucketName}) policy already exists.` });
96
+ }
97
+ }
98
+ catch (error) {
99
+ // Policy yoksa veya erişim hatası varsa, yeni policy'yi yükle
100
+ if (error.code === 'NoSuchBucketPolicy' || error.name === 'NoSuchBucketPolicy') {
101
+ await this.uploadBucketPolicy({ Bucket: bucketName, Policy: newPolicyStr });
102
+ this.logger.log({ level: "log", logCode: "S3-L03", message: `Bucket(${bucketName}) policy updated` });
103
+ }
104
+ else {
105
+ throw error;
106
+ }
107
+ }
108
+ }
109
+ async createBucket(params) {
110
+ const bucketName = this.generateBucketName();
111
+ try {
112
+ await this.s3Client.send(new client_s3_1.CreateBucketCommand({ Bucket: bucketName }));
113
+ this.logger.log({ level: "log", logCode: "S3-L02", message: `Bucket ${bucketName} created successfully.` });
114
+ return bucketName;
115
+ }
116
+ catch (error) {
117
+ if ((error.name === "BucketAlreadyExist" || error.name === "BucketAlreadyOwnedByYou") && params.retries > 0) {
118
+ this.logger.log({ level: "warning", logCode: "S3-W01", message: `Bucket ${bucketName} already exists. Retrying with a new name...` });
119
+ return await this.createBucket({ retries: params.retries - 1 });
120
+ }
121
+ else {
122
+ this.logger.log({ level: "error", logCode: "S3-E01", message: `Error occured when creating bucket: ${error.message}` });
123
+ throw new Error(`S3 Client returned message: ${error.message}`);
124
+ }
125
+ }
126
+ }
127
+ async deleteBucket(params) {
128
+ try {
129
+ await this.deleteStandardObjects({ bucket: params.bucket });
130
+ await this.deleteVersionedObjects({ bucket: params.bucket });
131
+ await this.s3Client.send(new client_s3_1.DeleteBucketCommand({ Bucket: params.bucket }));
132
+ this.logger.log({ level: "log", logCode: "S3-L11", message: `Bucket ${params.bucket} deleted successfully.` });
133
+ }
134
+ catch (err) {
135
+ const error = err;
136
+ this.logger.log({ level: "error", logCode: "S3-E09", message: `Error occurred when deleting bucket: ${error.message}` });
137
+ throw new Error(`S3 Client returned message: ${error.message}`);
138
+ }
139
+ }
140
+ async uploadStream(params) {
141
+ const { stream, bucket, key, contentType } = params;
142
+ const { UploadId } = await this.s3Client.send(new client_s3_1.CreateMultipartUploadCommand({ Bucket: bucket, Key: key, ContentType: contentType }));
143
+ this.logger.log({ level: "debug", logCode: "S3-L04", message: `Multipart upload initiated for ${bucket}/${key}.` });
144
+ const partProms = [];
145
+ let partNumber = 1; // Part numbers start at 1
146
+ for await (const chunk of stream) {
147
+ // NO AWAIT!! --> for await is awaiting body not s3.send
148
+ const part = this.s3Client.send(new client_s3_1.UploadPartCommand({
149
+ Bucket: bucket, Key: key, UploadId, Body: chunk, PartNumber: partNumber++
150
+ }));
151
+ partProms.push(part);
152
+ }
153
+ const Parts = await Promise.all(partProms);
154
+ await this.s3Client.send(new client_s3_1.CompleteMultipartUploadCommand({ Bucket: bucket, Key: key, UploadId, MultipartUpload: { Parts } }));
155
+ this.logger.log({ level: "debug", logCode: "S3-L06", message: `Multipart upload completed for ${bucket}/${key}.` });
156
+ }
157
+ async uploadFile(params) {
158
+ const MB = 1024 * 1024;
159
+ const fileSize = Buffer.byteLength(params.body, "utf-8");
160
+ try {
161
+ if (fileSize < 100 * MB) {
162
+ await this._uploadFile(params);
163
+ }
164
+ else {
165
+ await this.uploadLargeFile(fileSize, params);
166
+ }
167
+ return { success: true };
168
+ }
169
+ catch (error) {
170
+ return { success: false };
171
+ }
172
+ }
173
+ async _uploadFile(params) {
174
+ const uploadFileParams = {
175
+ Bucket: params.bucket,
176
+ Key: params.key,
177
+ Body: params.body,
178
+ ContentType: params.contentType
179
+ };
180
+ try {
181
+ await this.s3Client.send(new client_s3_1.PutObjectCommand(uploadFileParams));
182
+ this.logger.log({ level: "log", logCode: "S3-L03", message: `File uploaded successfully to ${params.bucket}/${params.key}` });
183
+ }
184
+ catch (error) {
185
+ this.logger.log({ level: "error", logCode: "S3-E02", message: `Error occured when uploading file: ${error.message}` });
186
+ throw new Error(`S3 Client returned message: ${error.message}`);
187
+ }
188
+ }
189
+ async uploadLargeFile(fileSize, params) {
190
+ const MB = 1024 * 1024, GB = 1024 * MB;
191
+ let chunkSize = 0;
192
+ if (fileSize < 1 * GB)
193
+ chunkSize = 5 * MB;
194
+ else if (fileSize < 5 * GB)
195
+ chunkSize = 50 * MB;
196
+ else if (fileSize < 10 * GB)
197
+ chunkSize = 100 * MB;
198
+ else
199
+ chunkSize = Math.max(Math.ceil(fileSize / 10000), 200 * MB);
200
+ const { UploadId } = await this.s3Client.send(new client_s3_1.CreateMultipartUploadCommand({
201
+ Bucket: params.bucket,
202
+ Key: params.key
203
+ }));
204
+ this.logger.log({ level: "log", logCode: "S3-L04", message: `Multipart upload initiated for ${params.bucket}/${params.key}.` });
205
+ const promises = [];
206
+ for (let start = 0, PartNumber = 1; start < fileSize; start += chunkSize, PartNumber++) {
207
+ const end = Math.min(start + chunkSize, fileSize);
208
+ const promise = this.s3Client.send(new client_s3_1.UploadPartCommand({
209
+ Bucket: params.bucket,
210
+ Key: params.key,
211
+ PartNumber,
212
+ UploadId,
213
+ Body: params.body.slice(start, end)
214
+ })).then(({ ETag }) => { return { ETag, PartNumber }; });
215
+ promises.push(promise);
216
+ }
217
+ const Parts = await Promise.all(promises);
218
+ await this.s3Client.send(new client_s3_1.CompleteMultipartUploadCommand({
219
+ Bucket: params.bucket,
220
+ Key: params.key,
221
+ UploadId,
222
+ MultipartUpload: { Parts }
223
+ }));
224
+ this.logger.log({ level: "log", logCode: "S3-L05", message: `All ${Parts.length} parts uploaded for ${params.bucket}/${params.key}.` });
225
+ }
226
+ async downloadFile(params) {
227
+ try {
228
+ const file = await this.s3Client.send(new client_s3_1.GetObjectCommand({ Bucket: params.bucket, Key: params.key }));
229
+ if (file.Body === undefined) {
230
+ throw new Error(`S3 Client File Body is empty`);
231
+ }
232
+ this.logger.log({ level: "log", logCode: "S3-L06", message: `File downloaded successfully from ${params.bucket}/${params.key}` });
233
+ return file;
234
+ }
235
+ catch (error) {
236
+ this.logger.log({ level: "error", logCode: "S3-E03", message: `Error occured when downloading file: ${error.message}` });
237
+ throw new Error(`S3 Client returned message: ${error.message}`);
238
+ }
239
+ }
240
+ async listObjectsInFolder(params) {
241
+ return await this.listObjects({ bucket: params.bucket, prefix: params.prefix });
242
+ }
243
+ async deleteFolder(params) {
244
+ try {
245
+ const standardDeleteResult = await this.deleteStandardObjects(params);
246
+ const versionedDeleteResult = await this.deleteVersionedObjects(params);
247
+ const success = standardDeleteResult.success && versionedDeleteResult.success;
248
+ const deletedCount = standardDeleteResult.deletedCount + versionedDeleteResult.deletedCount;
249
+ const fails = [];
250
+ if (!standardDeleteResult.success) {
251
+ standardDeleteResult.fails.forEach(fail => fails.push(fail));
252
+ }
253
+ if (!versionedDeleteResult.success) {
254
+ versionedDeleteResult.fails.forEach(fail => fails.push(fail));
255
+ }
256
+ this.logger.log({ level: "log", logCode: "S3-L12", message: `Folder ${params.prefix} deleted successfully from bucket ${params.bucket}. deleted: ${deletedCount} failed: ${fails.length}` });
257
+ if (fails.length > 0) {
258
+ this.logger.log({ level: "error", logCode: "S3-E11", message: `Failed to delete some objects in folder ${params.prefix} from bucket ${params.bucket}: ${fails.map(fail => fail.key + ": " + fail.reason).join(", ")}` });
259
+ }
260
+ return { success, deletedCount, fails };
261
+ }
262
+ catch (err) {
263
+ const error = err;
264
+ this.logger.log({ level: "error", logCode: "S3-E10", message: `Error occurred when deleting folder: ${error.message}` });
265
+ throw new Error(`S3 Client returned message: ${error.message}`);
266
+ }
267
+ }
268
+ async deleteFile(params) {
269
+ try {
270
+ await this.s3Client.send(new client_s3_1.DeleteObjectCommand({ Bucket: params.bucket, Key: params.key }));
271
+ this.logger.log({ level: "log", logCode: "S3-L07", message: `File deleted successfully from ${params.bucket}/${params.key}` });
272
+ }
273
+ catch (error) {
274
+ this.logger.log({ level: "error", logCode: "S3-E04", message: `Error occured when deleting file: ${error.message}` });
275
+ throw new Error(`S3 Client returned message: ${error.message}`);
276
+ }
277
+ }
278
+ async assertBucketExistence(Bucket) {
279
+ try {
280
+ await this.s3Client.send(new client_s3_1.HeadBucketCommand({ Bucket }));
281
+ this.logger.log({ level: "log", logCode: "S3-L08", message: `Found Bucket with name: ${Bucket}.` });
282
+ }
283
+ catch (error) {
284
+ if (error.name === "NotFound") {
285
+ this.logger.log({ level: "error", logCode: "S3-E05", message: `S3 Bucket not found with given bucket name: ${Bucket}` });
286
+ throw new Error(`S3 Bucket not found with given bucket name: ${Bucket}`);
287
+ }
288
+ this.logger.log({ level: "error", logCode: "S3-E06", message: `Error occured when asserting bucket existence: ${error.message}` });
289
+ throw new Error(`S3 Client returned message: ${error}`);
290
+ }
291
+ }
292
+ parseKeyHandle(key) {
293
+ const lastIndex = key.lastIndexOf("/");
294
+ const name = lastIndex === -1 ? key : key.substring(lastIndex + 1);
295
+ const path = lastIndex === -1 ? undefined : key.substring(0, lastIndex);
296
+ return { name, path };
297
+ }
298
+ parseStorageHandle(storageHandle) {
299
+ try {
300
+ const sepIndex = storageHandle.indexOf("/");
301
+ if (sepIndex === -1) {
302
+ throw new Error(`Invalid storage handle: ${storageHandle}`);
303
+ } // outer catch to handle
304
+ const bucket = storageHandle.substring(0, sepIndex);
305
+ const key = storageHandle.substring(sepIndex + 1);
306
+ this.logger.log({ level: "log", logCode: "S3-L09", message: `Storage handle splitted into: ${bucket} / ${key}` });
307
+ return { bucket, key };
308
+ }
309
+ catch (err) {
310
+ this.logger.log({ level: "error", logCode: "S3-E07", message: `Invalid storage handle: ${storageHandle}` });
311
+ throw new Error(`Invalid storage handle: ${storageHandle}`);
312
+ }
313
+ }
314
+ async uploadBucketPolicy(params) {
315
+ try {
316
+ await this.s3Client.send(new client_s3_1.PutBucketPolicyCommand({ Bucket: params.Bucket, Policy: params.Policy }));
317
+ this.logger.log({ level: "log", logCode: "S3-L10", message: `Bucket policy updated for bucket: ${params.Bucket}` });
318
+ }
319
+ catch (error) {
320
+ this.logger.log({ level: "error", logCode: "S3-E08", message: `Error occured when updating bucket policy: ${error.message}` });
321
+ throw new Error(`S3 Client returned message: ${error.message}`);
322
+ }
323
+ }
324
+ async deleteVersionedObjects(params) {
325
+ let keyMarker = undefined;
326
+ let versionIdMarker = undefined;
327
+ let success = true, deletedCount = 0, fails = [];
328
+ while (true) {
329
+ const listedVersions = await this.s3Client.send(new client_s3_1.ListObjectVersionsCommand({ Bucket: params.bucket, Prefix: params.prefix, KeyMarker: keyMarker, VersionIdMarker: versionIdMarker }));
330
+ const allObjects = [...(listedVersions.Versions || []), ...(listedVersions.DeleteMarkers || [])];
331
+ if (allObjects.length === 0) {
332
+ break;
333
+ }
334
+ const objects = allObjects.map(({ Key, VersionId }) => ({ Key, VersionId }));
335
+ const x = await this.s3Client.send(new client_s3_1.DeleteObjectsCommand({ Bucket: params.bucket, Delete: { Objects: objects } }));
336
+ if (x.Errors?.length) {
337
+ success = false;
338
+ x.Errors.forEach(err => fails.push({ key: err.Key, reason: [err.Code, err.Message].filter(i => i).join(" - ") }));
339
+ }
340
+ deletedCount += (x.Deleted?.length || 0);
341
+ if (!listedVersions.IsTruncated) {
342
+ break;
343
+ }
344
+ keyMarker = listedVersions.NextKeyMarker;
345
+ versionIdMarker = listedVersions.NextVersionIdMarker;
346
+ }
347
+ return { success, deletedCount, fails };
348
+ }
349
+ async deleteStandardObjects(params) {
350
+ let continuationToken = undefined;
351
+ let success = true, deletedCount = 0, fails = [];
352
+ while (true) {
353
+ const listedObjects = await this.s3Client.send(new client_s3_1.ListObjectsV2Command({ Bucket: params.bucket, Prefix: params.prefix, ContinuationToken: continuationToken }));
354
+ continuationToken = listedObjects.NextContinuationToken;
355
+ if (!listedObjects.Contents?.length) {
356
+ break;
357
+ }
358
+ const objects = listedObjects.Contents.map(({ Key }) => ({ Key }));
359
+ const x = await this.s3Client.send(new client_s3_1.DeleteObjectsCommand({ Bucket: params.bucket, Delete: { Objects: objects } }));
360
+ if (x.Errors?.length) {
361
+ success = false;
362
+ x.Errors.forEach(err => fails.push({ key: err.Key, reason: [err.Code, err.Message].filter(i => i).join(" - ") }));
363
+ }
364
+ deletedCount += (x.Deleted?.length || 0);
365
+ if (!listedObjects.IsTruncated) {
366
+ break;
367
+ }
368
+ }
369
+ return { success, deletedCount, fails };
370
+ }
371
+ async listObjects(params) {
372
+ let continuationToken = undefined;
373
+ const keys = [];
374
+ while (true) {
375
+ const listedObjects = await this.s3Client.send(new client_s3_1.ListObjectsV2Command({ Bucket: params.bucket, Prefix: params.prefix, ContinuationToken: continuationToken }));
376
+ continuationToken = listedObjects.NextContinuationToken;
377
+ if (!listedObjects.Contents?.length) {
378
+ break;
379
+ }
380
+ listedObjects.Contents.forEach(({ Key }) => { if (!Key) {
381
+ return;
382
+ } keys.push(Key); });
383
+ if (!listedObjects.IsTruncated) {
384
+ break;
385
+ }
386
+ }
387
+ return keys;
388
+ }
389
+ }
390
+ exports.S3Low = S3Low;
391
+ ;
392
+ //# sourceMappingURL=s3Low.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"s3Low.js","sourceRoot":"","sources":["../../../../../../common/clean/infrastructure/cloud/s3Low.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,144 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CloudProviderStorageCephImpl = void 0;
4
+ const s3Low_1 = require("../infrastructure/cloud/s3Low");
5
+ const stream_1 = require("stream");
6
+ class CloudProviderStorageCephImpl {
7
+ diContainer;
8
+ options;
9
+ type = "ceph";
10
+ constructor(diContainer, options) {
11
+ this.diContainer = diContainer;
12
+ this.options = options;
13
+ }
14
+ assertGetStorageHostUrl(options) {
15
+ const storage = options.organization.cloud?.storage;
16
+ if (storage?.type != "ceph") {
17
+ throw new Error("ceph storage is not configured!");
18
+ }
19
+ return storage.storageHostUrl;
20
+ }
21
+ assertOrgStorageConfigured(options) {
22
+ const storage = options.organization.cloud?.storage;
23
+ if (storage?.type != "ceph") {
24
+ throw new Error("ceph storage is not configured!");
25
+ }
26
+ if (!storage.bucketID) {
27
+ throw new Error("ceph storage bucketID is not configured!");
28
+ }
29
+ return storage;
30
+ }
31
+ async createOrganization(options) {
32
+ const s3Low = this.createS3Low();
33
+ const cloudExt = { cloud: options.organization.cloud || {}, changed: false };
34
+ try {
35
+ await this.createOrganizationBucket(s3Low, options, cloudExt);
36
+ }
37
+ finally {
38
+ await this.callUpdateOrganizationCloud(options.organization.organizationId, options.callbacks.updateOrganizationOnDBCallback, cloudExt, this.diContainer, { firstCloudCreation: true });
39
+ }
40
+ }
41
+ async deleteOrganization(options) {
42
+ const s3Low = this.createS3Low();
43
+ const storage = this.assertOrgStorageConfigured({ organization: options.organization });
44
+ await s3Low.deleteBucket({ bucket: storage.bucketID });
45
+ }
46
+ async uploadModelsToOrganizationStorage(options, files) {
47
+ const s3Low = this.createS3Low();
48
+ const storage = this.assertOrgStorageConfigured({ organization: options.organization });
49
+ return await this.uploadFilesToBucket(storage, files, s3Low, "models");
50
+ }
51
+ async uploadCdnFilesToOrganizationStorage(options, files) {
52
+ const s3Low = this.createS3Low();
53
+ const storage = this.assertOrgStorageConfigured({ organization: options.organization });
54
+ await this.uploadFilesToBucket(storage, files, s3Low, "web");
55
+ }
56
+ async deleteModel(options, modelId) {
57
+ const s3Low = this.createS3Low();
58
+ const storage = this.assertOrgStorageConfigured({ organization: options.organization });
59
+ return await s3Low.deleteFolder({ bucket: storage.bucketID, prefix: `models/${modelId}/` });
60
+ }
61
+ async streamToStorage(options) {
62
+ const s3Low = this.createS3Low();
63
+ const { container, pathToFile, stream, contentType } = options;
64
+ const bucketId = 'bucketId' in options ? options.bucketId : this.assertOrgStorageConfigured({ organization: options.organization }).bucketID;
65
+ const key = `${container}/${pathToFile}`;
66
+ await s3Low.uploadStream({ bucket: bucketId, key, stream, contentType });
67
+ }
68
+ async streamFromWebStorage(options) {
69
+ const s3Low = this.createS3Low();
70
+ const { container, pathToFile } = options;
71
+ const bucketId = 'bucketId' in options ? options.bucketId : this.assertOrgStorageConfigured({ organization: options.organization }).bucketID;
72
+ const key = `${container}/${pathToFile}`;
73
+ const file = await s3Low.downloadFile({ bucket: bucketId, key });
74
+ if (!(file.Body instanceof stream_1.Readable)) {
75
+ throw new Error(`Downloaded file Body is not a Readable stream: ${key}`);
76
+ }
77
+ return { stream: file.Body, contentType: file.ContentType, contentLength: file.ContentLength };
78
+ }
79
+ async readModel(options, path, fullName) {
80
+ const s3Low = this.createS3Low();
81
+ const storage = this.assertOrgStorageConfigured({ organization: options.organization });
82
+ const key = `models/${path}/${fullName}`;
83
+ const file = await s3Low.downloadFile({ bucket: storage.bucketID, key });
84
+ if (file.ContentLength === undefined || file.ContentLength === null) {
85
+ throw new Error(`Downloaded file has no contentLength: ${key}`);
86
+ }
87
+ const content = await file.Body.transformToString("utf-8");
88
+ return { path: path, file: { name: fullName, size: file.ContentLength, content, createDate: file.LastModified } };
89
+ }
90
+ async getModelsInPath(options, path) {
91
+ const s3Low = this.createS3Low();
92
+ const storage = this.assertOrgStorageConfigured({ organization: options.organization });
93
+ const prefix = `models/${path}/`;
94
+ const keys = await s3Low.listObjectsInFolder({ bucket: storage.bucketID, prefix });
95
+ const files = await Promise.all(keys.map(async (key) => {
96
+ const file = await s3Low.downloadFile({ bucket: storage.bucketID, key });
97
+ if (file.ContentLength === undefined || file.ContentLength === null) {
98
+ throw new Error(`Downloaded file has no contentLength: ${key}`);
99
+ }
100
+ const { name, path } = s3Low.parseKeyHandle(key);
101
+ const content = await file.Body.transformToString("utf-8");
102
+ return { name, content, size: file.ContentLength, createDate: file.LastModified };
103
+ }));
104
+ return { path, files };
105
+ }
106
+ async createOrganizationBucket(s3Low, options, cloudExt) {
107
+ if (cloudExt.cloud.storage?.type == "ceph" && cloudExt.cloud.storage.bucketID) {
108
+ this.diContainer.logger.log({ level: "info", message: `ceph Model storage exists: ${cloudExt.cloud.storage.bucketID}` });
109
+ return;
110
+ }
111
+ const bucketName = await s3Low.createBucket({ retries: 10 });
112
+ cloudExt.cloud.storage = { type: "ceph", storageHostUrl: `{{API_URL}}/storage/web/${bucketName}/`, bucketID: bucketName };
113
+ cloudExt.changed = true;
114
+ }
115
+ async uploadFilesToBucket(storage, files, s3Low, container) {
116
+ const { bucketID: bucket } = storage;
117
+ const fails = [];
118
+ const success = [];
119
+ await Promise.all(files.map(async (file) => {
120
+ const key = `${container}/${file.path}/${file.fullName}`;
121
+ const result = await s3Low.uploadFile({ bucket, key, body: file.data, contentType: file.contentType });
122
+ if (!result.success) {
123
+ fails.push(file.path);
124
+ }
125
+ else {
126
+ success.push(file.path + '.' + file.fullName);
127
+ }
128
+ }));
129
+ return { fails, success };
130
+ }
131
+ createS3Low() {
132
+ const { credentials, endpoint, certificates, region } = this.options;
133
+ return new s3Low_1.S3Low({ credentials, endpoint, region }, this.diContainer.logger, { certs: { certType: "direct", certificates } });
134
+ }
135
+ async callUpdateOrganizationCloud(orgId, updateOrganizationOnDBCallback, cloudExt, diContainer, updateOptions) {
136
+ if (!cloudExt.changed) {
137
+ return;
138
+ }
139
+ diContainer.logger.log({ level: "debug", message: `updateOrganization callback` });
140
+ await updateOrganizationOnDBCallback(orgId, { cloud: cloudExt.cloud }, updateOptions);
141
+ }
142
+ }
143
+ exports.CloudProviderStorageCephImpl = CloudProviderStorageCephImpl;
144
+ //# sourceMappingURL=cloudProviderStorageCephImpl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloudProviderStorageCephImpl.js","sourceRoot":"","sources":["../../../../../common/clean/useCases/cloudProviderStorageCephImpl.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AuthModelTypeTag = void 0;
4
+ exports.AuthModelTypeTag = "auth";
5
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../common/everything/authentication/types.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG,MAAM,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.VarsType = exports.ErrorType = exports.InfoType = exports.NotSetType = exports.LiteralType = exports.OutputType = exports.InputType = exports.ContextType = exports.allVariableTypes = exports.AnyType = exports.ConstantType = exports.DataSetType = exports.RoleType = exports.SwimlaneType = exports.DataType = exports.BooleanType = exports.EnumType = exports.DateTimeType = exports.NumberType = exports.StringType = exports.LivePreviewTag = exports.DecisionTableModelTypeTag = exports.CertificateModelTypeTag = exports.ConstantModelTypeTag = exports.JobSchedulerModelTypeTag = exports.DataTypeModelTypeTag = void 0;
3
+ exports.VarsType = exports.ErrorType = exports.InfoType = exports.NotSetType = exports.LiteralType = exports.OutputType = exports.InputType = exports.ContextType = exports.allVariableTypes = exports.AnyType = exports.ConstantType = exports.DataSetType = exports.RoleType = exports.SwimlaneType = exports.DataType = exports.BooleanType = exports.EnumType = exports.DateTimeType = exports.NumberType = exports.StringType = exports.LivePreviewTag = exports.DecisionTableModelTypeTag = exports.CertificateModelTypeTag = exports.ReportModelTypeTag = exports.ConstantModelTypeTag = exports.JobSchedulerModelTypeTag = exports.DataTypeModelTypeTag = void 0;
4
4
  const objectHelper_1 = require("../../../helpers/objectHelper");
5
5
  const types_1 = require("../../accessmanager/types");
6
6
  const types_2 = require("../../dataSet/runtimemodels/types");
@@ -8,6 +8,7 @@ const types_3 = require("../../accessmanager/types");
8
8
  exports.DataTypeModelTypeTag = "dataType"; // Used in model itself
9
9
  exports.JobSchedulerModelTypeTag = "jobScheduler"; // Used in model itself
10
10
  exports.ConstantModelTypeTag = "constant";
11
+ exports.ReportModelTypeTag = "report";
11
12
  exports.CertificateModelTypeTag = "certificate";
12
13
  exports.DecisionTableModelTypeTag = "decisionTable"; // Used in model itself
13
14
  exports.LivePreviewTag = "livepreview";
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../common/everything/dataType/runtimemodels/types.ts"],"names":[],"mappings":";;;AAAA,gEAA2D;AAC3D,qDAA4E;AAC5E,6DAAwE;AACxE,qDAAiE;AAGpD,QAAA,oBAAoB,GAAG,UAAU,CAAC,CAAC,uBAAuB;AAG1D,QAAA,wBAAwB,GAAG,cAAc,CAAC,CAAC,uBAAuB;AAGlE,QAAA,oBAAoB,GAAG,UAAU,CAAC;AAGlC,QAAA,uBAAuB,GAAG,aAAa,CAAC;AAGxC,QAAA,yBAAyB,GAAG,eAAe,CAAC,CAAC,uBAAuB;AAGpE,QAAA,cAAc,GAAG,aAAa,CAAC;AAE/B,QAAA,UAAU,GAAG,QAAQ,CAAC;AACtB,QAAA,UAAU,GAAG,QAAQ,CAAC;AACtB,QAAA,YAAY,GAAG,UAAU,CAAC;AAC1B,QAAA,QAAQ,GAAG,MAAM,CAAC;AAClB,QAAA,WAAW,GAAG,SAAS,CAAC;AACxB,QAAA,QAAQ,GAAG,4BAAoB,CAAC,CAAC,6CAA6C;AAE9E,QAAA,YAAY,GAAG,4BAAoB,CAAC;AACpC,QAAA,QAAQ,GAAG,wBAAgB,CAAC;AAC5B,QAAA,WAAW,GAAG,2BAAmB,CAAA;AACjC,QAAA,YAAY,GAAG,UAAU,CAAC;AAC1B,QAAA,OAAO,GAAG,KAAK,CAAC;AAgB7B,MAAM,mBAAmB,GAAmC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;AACvL,QAAA,gBAAgB,GAAG,IAAA,yBAAU,EAAC,mBAAmB,CAAC,CAAC;AAEnD,QAAA,WAAW,GAAG,SAAS,CAAC;AACxB,QAAA,SAAS,GAAG,OAAO,CAAC;AACpB,QAAA,UAAU,GAAG,QAAQ,CAAC;AACtB,QAAA,WAAW,GAAG,SAAS,CAAC;AACxB,QAAA,UAAU,GAAG,QAAQ,CAAC;AACtB,QAAA,QAAQ,GAAG,MAAM,CAAC;AAClB,QAAA,SAAS,GAAG,OAAO,CAAC;AACpB,QAAA,QAAQ,GAAG,MAAM,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../common/everything/dataType/runtimemodels/types.ts"],"names":[],"mappings":";;;AAAA,gEAA2D;AAC3D,qDAA4E;AAC5E,6DAAwE;AACxE,qDAAiE;AAGpD,QAAA,oBAAoB,GAAG,UAAU,CAAC,CAAC,uBAAuB;AAG1D,QAAA,wBAAwB,GAAG,cAAc,CAAC,CAAC,uBAAuB;AAGlE,QAAA,oBAAoB,GAAG,UAAU,CAAC;AAGlC,QAAA,kBAAkB,GAAG,QAAQ,CAAC;AAG9B,QAAA,uBAAuB,GAAG,aAAa,CAAC;AAGxC,QAAA,yBAAyB,GAAG,eAAe,CAAC,CAAC,uBAAuB;AAGpE,QAAA,cAAc,GAAG,aAAa,CAAC;AAE/B,QAAA,UAAU,GAAG,QAAQ,CAAC;AACtB,QAAA,UAAU,GAAG,QAAQ,CAAC;AACtB,QAAA,YAAY,GAAG,UAAU,CAAC;AAC1B,QAAA,QAAQ,GAAG,MAAM,CAAC;AAClB,QAAA,WAAW,GAAG,SAAS,CAAC;AACxB,QAAA,QAAQ,GAAG,4BAAoB,CAAC,CAAC,6CAA6C;AAE9E,QAAA,YAAY,GAAG,4BAAoB,CAAC;AACpC,QAAA,QAAQ,GAAG,wBAAgB,CAAC;AAC5B,QAAA,WAAW,GAAG,2BAAmB,CAAA;AACjC,QAAA,YAAY,GAAG,UAAU,CAAC;AAC1B,QAAA,OAAO,GAAG,KAAK,CAAC;AAgB7B,MAAM,mBAAmB,GAAmC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;AACvL,QAAA,gBAAgB,GAAG,IAAA,yBAAU,EAAC,mBAAmB,CAAC,CAAC;AAEnD,QAAA,WAAW,GAAG,SAAS,CAAC;AACxB,QAAA,SAAS,GAAG,OAAO,CAAC;AACpB,QAAA,UAAU,GAAG,QAAQ,CAAC;AACtB,QAAA,WAAW,GAAG,SAAS,CAAC;AACxB,QAAA,UAAU,GAAG,QAAQ,CAAC;AACtB,QAAA,QAAQ,GAAG,MAAM,CAAC;AAClB,QAAA,SAAS,GAAG,OAAO,CAAC;AACpB,QAAA,QAAQ,GAAG,MAAM,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ // architecture.md §5 — Report model type tag
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.ReportModelTypeTag = void 0;
5
+ exports.ReportModelTypeTag = "report"; // Used in model itself
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../common/everything/report/runtimemodels/types.ts"],"names":[],"mappings":";AAAA,6CAA6C;;;AAEhC,QAAA,kBAAkB,GAAG,QAAQ,CAAC,CAAC,uBAAuB"}
@@ -0,0 +1,29 @@
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.ESModuleHelper = void 0;
7
+ const path_1 = __importDefault(require("path"));
8
+ const url_1 = require("url");
9
+ class ESModuleHelper {
10
+ static toProtocolPath(normalPath) {
11
+ // return normalPath.startsWith("/") ? "file://" + normalPath : "file:///" + normalPath;
12
+ return (0, url_1.pathToFileURL)(normalPath).href;
13
+ }
14
+ static __filename(import_meta, relativePath) {
15
+ const fileName = (0, url_1.fileURLToPath)(import_meta.url);
16
+ if (!relativePath) {
17
+ return fileName;
18
+ }
19
+ const __dirname = path_1.default.dirname(fileName);
20
+ return path_1.default.join(__dirname, relativePath);
21
+ }
22
+ static __dirname(import_meta, relativePath) {
23
+ const fileName = ESModuleHelper.__filename(import_meta);
24
+ const __dirname = path_1.default.dirname(fileName);
25
+ return relativePath ? path_1.default.join(__dirname, relativePath) : __dirname;
26
+ }
27
+ }
28
+ exports.ESModuleHelper = ESModuleHelper;
29
+ //# sourceMappingURL=esModuleHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"esModuleHelper.js","sourceRoot":"","sources":["../../../../common/helpers/esModuleHelper.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,6BAAmD;AAEnD,MAAa,cAAc;IAChB,MAAM,CAAC,cAAc,CAAC,UAAkB;QAC3C,wFAAwF;QACxF,OAAO,IAAA,mBAAa,EAAC,UAAU,CAAC,CAAC,IAAI,CAAC;IAC1C,CAAC;IACM,MAAM,CAAC,UAAU,CAAC,WAAuB,EAAE,YAAqB;QACnE,MAAM,QAAQ,GAAG,IAAA,mBAAa,EAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAChD,IAAI,CAAC,YAAY,EAAE;YAAE,OAAO,QAAQ,CAAC;SAAE;QACvC,MAAM,SAAS,GAAG,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACzC,OAAO,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAC9C,CAAC;IACM,MAAM,CAAC,SAAS,CAAC,WAAuB,EAAE,YAAqB;QAClE,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QACxD,MAAM,SAAS,GAAG,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACzC,OAAO,YAAY,CAAC,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACzE,CAAC;CACJ;AAhBD,wCAgBC"}
@@ -0,0 +1,141 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.EnvLoader = exports.process = exports.once = void 0;
30
+ const esModuleHelper_1 = require("../esModuleHelper");
31
+ const path_1 = __importDefault(require("path"));
32
+ const node_process_1 = __importDefault(require("node:process"));
33
+ const url_1 = require("url");
34
+ // what is memoized , why not memorized ?
35
+ // answer: https://stackoverflow.com/questions/10730362/what-is-the-correct-spelling-of-memoize-memorize
36
+ const once = (cb) => {
37
+ let cache;
38
+ return () => {
39
+ if (cache) {
40
+ return cache;
41
+ }
42
+ return cache = cb();
43
+ };
44
+ };
45
+ exports.once = once;
46
+ exports.process = {
47
+ env: {
48
+ must(key, options) {
49
+ const value = node_process_1.default.env[key];
50
+ if (!value) {
51
+ throw new Error(`Environment variable ${key} is missing${options?.reason ? ` reason: ${options.reason}` : ""}`);
52
+ }
53
+ return value;
54
+ },
55
+ mustValid(key, validValues, options) {
56
+ const value = exports.process.env.must(key);
57
+ if (validValues.indexOf(value) < 0) {
58
+ throw new Error(`Environment variable ${key} has invalid value: ${value}. Valid values are: ${validValues.join(", ")}${options?.reason ? ` reason: ${options.reason}` : ""}`);
59
+ }
60
+ return value;
61
+ },
62
+ can(key) {
63
+ return node_process_1.default.env[key];
64
+ },
65
+ canValid(key, validValues) {
66
+ const value = exports.process.env.can(key);
67
+ if (!value) {
68
+ return undefined;
69
+ }
70
+ if (validValues.indexOf(value) < 0) {
71
+ throw new Error(`Environment variable ${key} has invalid value: ${value}. Valid values are: ${validValues.join(", ")}`);
72
+ }
73
+ return value;
74
+ },
75
+ }
76
+ };
77
+ class EnvLoader {
78
+ async loadEnvFile(relativeEnvFilePath, options) {
79
+ relativeEnvFilePath = this.fixOutsideAppPath(relativeEnvFilePath, options);
80
+ const items = await ("import_meta" in options
81
+ ? this.tryIt(() => this.loadMockFileEsmodule(options.import_meta, relativeEnvFilePath))
82
+ : this.tryIt(() => this.loadMockFileCjs(options.__filename, relativeEnvFilePath)));
83
+ if (!items) {
84
+ return;
85
+ }
86
+ Object.entries(items).forEach(([key, value]) => {
87
+ if (value === undefined || value === null) {
88
+ delete node_process_1.default.env[key];
89
+ }
90
+ else {
91
+ node_process_1.default.env[key] = Array.isArray(value) ? value.join(';') : value;
92
+ }
93
+ });
94
+ }
95
+ async tryIt(cb) {
96
+ try {
97
+ return await cb();
98
+ }
99
+ catch (err) {
100
+ if (err.code === "ERR_MODULE_NOT_FOUND" || err.code === "MODULE_NOT_FOUND") {
101
+ return undefined;
102
+ }
103
+ throw err; // If file exists but has syntax/runtime errors → crash
104
+ }
105
+ }
106
+ fixOutsideAppPath(relativeEnvFilePath, options) {
107
+ if (!options.pathOutsideApp) {
108
+ return relativeEnvFilePath;
109
+ }
110
+ const sep = path_1.default.sep;
111
+ const appRootFolderName = path_1.default.basename(node_process_1.default.cwd());
112
+ const importingFilePath = this.getFilePath(options);
113
+ const index = importingFilePath.lastIndexOf(appRootFolderName + sep) + appRootFolderName.length + 1;
114
+ const importingFilePath2AppRoot = importingFilePath.slice(index).split(sep).length - 1;
115
+ const appRoot2RepoRoot = (relativeEnvFilePath.split("../").length - 1) - importingFilePath2AppRoot;
116
+ const dist2AppRoot = 1, joinGap = 1;
117
+ const dist2RepoRoot = appRoot2RepoRoot + dist2AppRoot + joinGap;
118
+ const dist2RepoRootPrefix = Array.from(new Array(dist2RepoRoot)).join("../");
119
+ return path_1.default.join(dist2RepoRootPrefix, relativeEnvFilePath);
120
+ }
121
+ getFilePath(options) {
122
+ if ("import_meta" in options) {
123
+ return esModuleHelper_1.ESModuleHelper.__filename(options.import_meta);
124
+ }
125
+ else {
126
+ return path_1.default.resolve(options.__filename);
127
+ }
128
+ }
129
+ async loadMockFileCjs(__filename, mockFilePath) {
130
+ const mockFile = path_1.default.resolve(path_1.default.dirname(__filename), mockFilePath);
131
+ return eval("require")(mockFile);
132
+ }
133
+ async loadMockFileEsmodule(meta, mockFilePath) {
134
+ var _a;
135
+ const mockFile = esModuleHelper_1.ESModuleHelper.__filename(meta, mockFilePath);
136
+ const fileUrl = (0, url_1.pathToFileURL)(mockFile).href;
137
+ return (await (_a = fileUrl, Promise.resolve().then(() => __importStar(require(_a))))).default;
138
+ }
139
+ }
140
+ exports.EnvLoader = EnvLoader;
141
+ //# sourceMappingURL=envLoader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"envLoader.js","sourceRoot":"","sources":["../../../../../common/helpers/server/envLoader.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,8 @@ const types_8 = require("../everything/befunc/runtimeModels/types");
12
12
  const types_9 = require("../everything/endpoint/runtimeModels/types");
13
13
  const types_10 = require("../everything/accessmanager/types");
14
14
  const types_11 = require("../everything/action/types");
15
- exports.DEPENDED_MODEL_KEYS = ["qjson", "named", "img", "woff", "woff2", "ttf", "otf", "lottie", types_2.DataTypeModelTypeTag, "flow", types_5.RestServiceModelTypeTag, types_4.SoapServiceModelTypeTag, types_3.WorkflowModelTypeTag, types_2.ConstantModelTypeTag, types_4.SoapServiceV2ModelTypeTag, "wsdl", types_6.SlaModelTypeTag, types_7.DataSetModelTypeTag, types_8.BackendFunctionModelTypeTag, types_9.EndpointModelTypeTag, types_1.DecisionTableModelTypeTag, types_10.SwimlaneModelTypeTag, types_10.RoleModelTypeTag, types_10.PrivilegeModelTypeTag, types_11.ActionModelTypeTag];
15
+ const types_12 = require("../everything/authentication/types");
16
+ exports.DEPENDED_MODEL_KEYS = ["qjson", "named", "img", "woff", "woff2", "ttf", "otf", "lottie", types_2.DataTypeModelTypeTag, "flow", types_5.RestServiceModelTypeTag, types_4.SoapServiceModelTypeTag, types_3.WorkflowModelTypeTag, types_2.ConstantModelTypeTag, types_4.SoapServiceV2ModelTypeTag, "wsdl", types_6.SlaModelTypeTag, types_7.DataSetModelTypeTag, types_8.BackendFunctionModelTypeTag, types_9.EndpointModelTypeTag, types_1.DecisionTableModelTypeTag, types_10.SwimlaneModelTypeTag, types_10.RoleModelTypeTag, types_10.PrivilegeModelTypeTag, types_11.ActionModelTypeTag, types_12.AuthModelTypeTag];
16
17
  exports.DEPENDED_IMAGE_KEYS = ["png", "jpg", "jpeg", "svg", "gif"];
17
18
  exports.APP_ITEM_CONTENT_TYPES = ["qjson", "css", "png", "jpg", "jpeg", "svg", "gif", "lottie", "json", "woff", "woff2", "ttf", "otf"];
18
19
  exports.UISettingsType = {
@@ -1 +1 @@
1
- {"version":3,"file":"quickCloud.js","sourceRoot":"","sources":["../../../../common/qCloudTemp/quickCloud.ts"],"names":[],"mappings":";;;AAAA,sEAAiG;AAIjG,sEAAwG;AACxG,sEAAkF;AAElF,yEAAmH;AACnH,yEAAwF;AACxF,iEAAwE;AAIxE,qEAAgF;AAChF,oEAAuF;AACvF,sEAAkF;AAClF,8DAAkH;AAClH,uDAAgE;AAEnD,QAAA,mBAAmB,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAG,4BAAoB,EAAE,MAAM,EAAE,+BAAuB,EAAE,+BAAuB,EAAE,4BAAoB,EAAE,4BAAoB,EAAE,iCAAyB,EAAE,MAAM,EAAE,uBAAe,EAAE,2BAAmB,EAAE,mCAA2B,EAAE,4BAAoB,EAAE,iCAAyB,EAAE,6BAAoB,EAAE,yBAAgB,EAAE,8BAAqB,EAAE,2BAAkB,CAAE,CAAC;AACjc,QAAA,mBAAmB,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC3D,QAAA,sBAAsB,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AA2B/H,QAAA,cAAc,GAAG;IAC1B,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,UAAU,EAAE,YAAY;IACxB,OAAO,EAAE,mBAAmB;IAC5B,cAAc,EAAE,sBAAsB;IACtC,GAAG,EAAE,OAAO;IACZ,QAAQ,EAAE,eAAe;IACzB,kBAAkB,EAAE,oBAAoB;IACxC,SAAS,EAAE,YAAY;IACvB,WAAW,EAAE,cAAc;IAC3B,KAAK,EAAE,OAAO;IACd,SAAS,EAAE,WAAW;CAChB,CAAC"}
1
+ {"version":3,"file":"quickCloud.js","sourceRoot":"","sources":["../../../../common/qCloudTemp/quickCloud.ts"],"names":[],"mappings":";;;AAAA,sEAAiG;AAIjG,sEAAwG;AACxG,sEAAkF;AAElF,yEAAmH;AACnH,yEAAwF;AACxF,iEAAwE;AAIxE,qEAAgF;AAChF,oEAAuF;AACvF,sEAAkF;AAClF,8DAAkH;AAClH,uDAAgE;AAChE,+DAAsE;AAEzD,QAAA,mBAAmB,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAG,4BAAoB,EAAE,MAAM,EAAE,+BAAuB,EAAE,+BAAuB,EAAE,4BAAoB,EAAE,4BAAoB,EAAE,iCAAyB,EAAE,MAAM,EAAE,uBAAe,EAAE,2BAAmB,EAAE,mCAA2B,EAAE,4BAAoB,EAAE,iCAAyB,EAAE,6BAAoB,EAAE,yBAAgB,EAAE,8BAAqB,EAAE,2BAAkB,EAAE,yBAAgB,CAAE,CAAC;AACnd,QAAA,mBAAmB,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC3D,QAAA,sBAAsB,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AA2B/H,QAAA,cAAc,GAAG;IAC1B,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,UAAU,EAAE,YAAY;IACxB,OAAO,EAAE,mBAAmB;IAC5B,cAAc,EAAE,sBAAsB;IACtC,GAAG,EAAE,OAAO;IACZ,QAAQ,EAAE,eAAe;IACzB,kBAAkB,EAAE,oBAAoB;IACxC,SAAS,EAAE,YAAY;IACvB,WAAW,EAAE,cAAc;IAC3B,KAAK,EAAE,OAAO;IACd,SAAS,EAAE,WAAW;CAChB,CAAC"}
@@ -5,4 +5,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
5
5
  ;
6
6
  ;
7
7
  ;
8
+ ;
8
9
  //# sourceMappingURL=symDtoObjects.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"symDtoObjects.js","sourceRoot":"","sources":["../../../../common/qCloudTemp/symDtoObjects.ts"],"names":[],"mappings":";;AAuDmE,CAAC;AAInE,CAAC;AAmHD,CAAC;AA0cD,CAAC;AAuCD,CAAC"}
1
+ {"version":3,"file":"symDtoObjects.js","sourceRoot":"","sources":["../../../../common/qCloudTemp/symDtoObjects.ts"],"names":[],"mappings":";;AA0DmE,CAAC;AAInE,CAAC;AAmHD,CAAC;AA2cD,CAAC;AAMD,CAAC;AAuCD,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=whatsNew.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"whatsNew.js","sourceRoot":"","sources":["../../../../common/qCloudTemp/whatsNew.ts"],"names":[],"mappings":""}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VERSION = void 0;
4
4
  // This file is auto-generated by scripts/update-version.js — do not edit manually.
5
- exports.VERSION = "4.0.3-2";
5
+ exports.VERSION = "4.1.0-0";
6
6
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stechquick/studio-cli",
3
- "version": "4.0.4-0",
3
+ "version": "4.1.0-1",
4
4
  "description": "Agentic bridge CLI between local files and the Studio web app",
5
5
  "bin": {
6
6
  "studio": "dist/studio-cli/src/index.js"