@lilaquadrat/studio 10.0.0-beta.11 → 10.0.0-beta.13

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 (112) hide show
  1. package/eslint.config.js +146 -0
  2. package/lib/helpers.d.ts +5 -2
  3. package/lib/helpers.js +8 -2
  4. package/lib/helpers.js.map +1 -1
  5. package/lib/main.d.ts +1 -3
  6. package/lib/main.js +7 -3
  7. package/lib/main.js.map +1 -1
  8. package/lib/services.d.ts +2 -6
  9. package/lib/services.js +19 -7
  10. package/lib/services.js.map +1 -1
  11. package/lib/src/ShareClientFactory.class.d.ts +1 -3
  12. package/lib/src/ShareClientFactory.class.js +1 -9
  13. package/lib/src/ShareClientFactory.class.js.map +1 -1
  14. package/lib/src/classes/models.class.js.map +1 -1
  15. package/lib/src/classes/mongo.class.js +4 -14
  16. package/lib/src/classes/mongo.class.js.map +1 -1
  17. package/lib/src/functions/handleError.d.ts +2 -3
  18. package/lib/src/functions/handleError.js +3 -16
  19. package/lib/src/functions/handleError.js.map +1 -1
  20. package/lib/src/functions/optionsHelper.d.ts +4 -4
  21. package/lib/src/functions/optionsHelper.js +5 -4
  22. package/lib/src/functions/optionsHelper.js.map +1 -1
  23. package/lib/src/helpers/ControllerHelper.d.ts +73 -0
  24. package/lib/src/helpers/ControllerHelper.js +242 -0
  25. package/lib/src/helpers/ControllerHelper.js.map +1 -0
  26. package/lib/src/helpers/EnvMapper.d.ts +0 -0
  27. package/lib/src/helpers/EnvMapper.js +1 -0
  28. package/lib/src/helpers/EnvMapper.js.map +1 -0
  29. package/lib/src/helpers/authPlugin.d.ts +29 -0
  30. package/lib/src/helpers/authPlugin.js +72 -0
  31. package/lib/src/helpers/authPlugin.js.map +1 -0
  32. package/lib/src/helpers/createSasToken.d.ts +0 -2
  33. package/lib/src/helpers/createSasToken.js +35 -32
  34. package/lib/src/helpers/createSasToken.js.map +1 -1
  35. package/lib/src/helpers/getSecrets.d.ts +1 -1
  36. package/lib/src/helpers/getSecrets.js +10 -12
  37. package/lib/src/helpers/getSecrets.js.map +1 -1
  38. package/lib/src/helpers/queryAssertionPlugin.d.ts +3 -0
  39. package/lib/src/helpers/queryAssertionPlugin.js +20 -0
  40. package/lib/src/helpers/queryAssertionPlugin.js.map +1 -0
  41. package/lib/src/helpers/safeObjectId.d.ts +1 -1
  42. package/lib/src/helpers/safeObjectId.js +5 -1
  43. package/lib/src/helpers/safeObjectId.js.map +1 -1
  44. package/lib/src/helpers/studioAppPlugin.d.ts +3 -0
  45. package/lib/src/helpers/studioAppPlugin.js +16 -0
  46. package/lib/src/helpers/studioAppPlugin.js.map +1 -0
  47. package/lib/src/logger.js +40 -2
  48. package/lib/src/logger.js.map +1 -1
  49. package/lib/src/models/certificate-action.model.js +0 -1
  50. package/lib/src/models/certificate-action.model.js.map +1 -1
  51. package/lib/src/models/customers.model.js +3 -0
  52. package/lib/src/models/customers.model.js.map +1 -1
  53. package/lib/src/models/editor.model.js +7 -0
  54. package/lib/src/models/editor.model.js.map +1 -1
  55. package/lib/src/models/project.model.js +2 -4
  56. package/lib/src/models/project.model.js.map +1 -1
  57. package/lib/src/services/access.service.d.ts +0 -37
  58. package/lib/src/services/access.service.js +119 -108
  59. package/lib/src/services/access.service.js.map +1 -1
  60. package/lib/src/services/auth.service.d.ts +9 -0
  61. package/lib/src/services/auth.service.js +61 -0
  62. package/lib/src/services/auth.service.js.map +1 -0
  63. package/lib/src/services/editor.service.d.ts +4 -0
  64. package/lib/src/services/editor.service.js +28 -0
  65. package/lib/src/services/editor.service.js.map +1 -1
  66. package/lib/src/services/editorBase.service.d.ts +0 -46
  67. package/lib/src/services/editorBase.service.js +184 -160
  68. package/lib/src/services/editorBase.service.js.map +1 -1
  69. package/lib/src/services/hosting.service.js +1 -1
  70. package/lib/src/services/hosting.service.js.map +1 -1
  71. package/lib/src/services/import.service.d.ts +5 -21
  72. package/lib/src/services/import.service.js +63 -65
  73. package/lib/src/services/import.service.js.map +1 -1
  74. package/lib/src/services/listParticipants.service.d.ts +0 -3
  75. package/lib/src/services/listParticipants.service.js +16 -14
  76. package/lib/src/services/listParticipants.service.js.map +1 -1
  77. package/lib/src/services/me.service.d.ts +17 -7
  78. package/lib/src/services/me.service.js +48 -86
  79. package/lib/src/services/me.service.js.map +1 -1
  80. package/lib/src/services/publish.service.d.ts +0 -4
  81. package/lib/src/services/publish.service.js +33 -32
  82. package/lib/src/services/publish.service.js.map +1 -1
  83. package/lib/src/services/publishData.service.d.ts +10 -7
  84. package/lib/src/services/publishData.service.js +32 -75
  85. package/lib/src/services/publishData.service.js.map +1 -1
  86. package/lib/src/services/storage.service.js +4 -4
  87. package/lib/src/services/storage.service.js.map +1 -1
  88. package/package.json +21 -23
  89. package/lib/src/AzureBlobStorage.share.d.ts +0 -19
  90. package/lib/src/AzureBlobStorage.share.js +0 -162
  91. package/lib/src/AzureBlobStorage.share.js.map +0 -1
  92. package/lib/src/AzureFileStorage.share.d.ts +0 -22
  93. package/lib/src/AzureFileStorage.share.js +0 -139
  94. package/lib/src/AzureFileStorage.share.js.map +0 -1
  95. package/lib/src/AzureVault.d.ts +0 -14
  96. package/lib/src/AzureVault.js +0 -28
  97. package/lib/src/AzureVault.js.map +0 -1
  98. package/lib/src/dns.challenge.class.d.ts +0 -17
  99. package/lib/src/dns.challenge.class.js +0 -41
  100. package/lib/src/dns.challenge.class.js.map +0 -1
  101. package/lib/src/http.challenge.class.d.ts +0 -33
  102. package/lib/src/http.challenge.class.js +0 -58
  103. package/lib/src/http.challenge.class.js.map +0 -1
  104. package/lib/src/services/handleFile.service.d.ts +0 -9
  105. package/lib/src/services/handleFile.service.js +0 -45
  106. package/lib/src/services/handleFile.service.js.map +0 -1
  107. package/lib/src/services/media.service.d.ts +0 -35
  108. package/lib/src/services/media.service.js +0 -418
  109. package/lib/src/services/media.service.js.map +0 -1
  110. package/lib/src/services/share.service.d.ts +0 -6
  111. package/lib/src/services/share.service.js +0 -4
  112. package/lib/src/services/share.service.js.map +0 -1
@@ -432,7 +432,7 @@ export class StorageService extends Immutable {
432
432
  { $sort: { _id: -1 } },
433
433
  { $skip: limit?.skip || 0 },
434
434
  { $limit: limit?.limit || 50 },
435
- { $project: { path: 0, app: 0 } },
435
+ { $project: { path: 0 } },
436
436
  { $addFields: { type: 'file' } },
437
437
  ],
438
438
  },
@@ -474,7 +474,7 @@ export class StorageService extends Immutable {
474
474
  { $sort: { _id: -1 } },
475
475
  { $skip: limit?.skip || 0 },
476
476
  { $limit: limit?.limit || 50 },
477
- { $project: { path: 0, app: 0 } },
477
+ { $project: { path: 0 } },
478
478
  { $addFields: { type: 'file' } },
479
479
  ],
480
480
  },
@@ -526,7 +526,7 @@ export class StorageService extends Immutable {
526
526
  { $sort: { _id: -1 } },
527
527
  { $skip: limit?.skip || 0 },
528
528
  { $limit: limit?.limit || 50 },
529
- { $project: { path: 0, app: 0, immediateSubfolder: 0 } },
529
+ { $project: { path: 0, immediateSubfolder: 0 } },
530
530
  { $addFields: { type: 'file' } },
531
531
  ],
532
532
  folders: [
@@ -599,7 +599,7 @@ export class StorageService extends Immutable {
599
599
  { $sort: { _id: -1 } },
600
600
  { $skip: limit?.skip || 0 },
601
601
  { $limit: limit?.limit || 50 },
602
- { $project: { path: 0, app: 0, immediateSubfolder: 0 } },
602
+ { $project: { path: 0, immediateSubfolder: 0 } },
603
603
  { $addFields: { type: 'file' } },
604
604
  ],
605
605
  folders: [
@@ -1 +1 @@
1
- {"version":3,"file":"storage.service.js","sourceRoot":"","sources":["../../../src/services/storage.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storage.service.js","sourceRoot":"","sources":["../../../src/services/storage.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lilaquadrat/studio",
3
- "version": "10.0.0-beta.11",
3
+ "version": "10.0.0-beta.13",
4
4
  "description": "classes and tools for STUDIO",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -18,7 +18,8 @@
18
18
  "release": "standard-version"
19
19
  },
20
20
  "files": [
21
- "lib/**/*"
21
+ "lib/**/*",
22
+ "eslint.config.js"
22
23
  ],
23
24
  "main": "./lib/main.js",
24
25
  "types": "./lib/main.d.ts",
@@ -57,21 +58,27 @@
57
58
  "types": "./lib/frontend.d.ts",
58
59
  "import": "./lib/frontend.js",
59
60
  "default": "./lib/frontend.js"
61
+ },
62
+ "./eslint-config": {
63
+ "import": "./eslint.config.js",
64
+ "default": "./eslint.config.js"
65
+ },
66
+ "./eslint.config.js": {
67
+ "import": "./eslint.config.js",
68
+ "default": "./eslint.config.js"
60
69
  }
61
70
  },
62
71
  "engines": {
63
72
  "node": ">=22.0.0"
64
73
  },
65
74
  "devDependencies": {
75
+ "@fastify/jwt": "^10.0.0",
66
76
  "@fastify/multipart": "^9.3.0",
67
77
  "@fastify/type-provider-typebox": "^6.1.0",
68
- "@types/express": "^4.17.21",
69
78
  "@types/jest": "^29.5.10",
70
79
  "@types/json-schema": "^7.0.15",
71
- "@types/multer": "^1.4.11",
72
80
  "@types/node": "^22.10.0",
73
81
  "@types/object-path": "^0.11.1",
74
- "@types/unzipper": "^0.10.4",
75
82
  "@typescript-eslint/eslint-plugin": "^8.49.0",
76
83
  "@typescript-eslint/parser": "^8.49.0",
77
84
  "commitizen": "^4.3.1",
@@ -80,46 +87,37 @@
80
87
  "eslint-import-resolver-typescript": "^4.4.4",
81
88
  "eslint-plugin-import": "^2.32.0",
82
89
  "eslint-plugin-promise": "^7.2.1",
83
- "express": "^4.17.1",
84
90
  "fastify": "^5.0.0",
85
91
  "jest": "^29.5.0",
92
+ "jwks-rsa": "^3.2.0",
86
93
  "mongo-mock": "^4.2.0",
87
- "multer": "^1.4.5-lts.1",
88
94
  "standard-version": "^9.5.0",
89
95
  "ts-jest": "^29.0.5",
90
96
  "typebox": "^1.0.13",
91
97
  "typescript-eslint": "^8.49.0"
92
98
  },
93
99
  "peerDependencies": {
100
+ "@fastify/jwt": "^10.0.0",
94
101
  "@fastify/multipart": "^8.0.0 || ^9.0.0",
95
- "express": "^4.17.1",
96
102
  "fastify": "^4.0.0 || ^5.0.0",
97
- "multer": "^1.4.5-lts.1"
103
+ "jwks-rsa": "^3.2.0"
98
104
  },
99
105
  "peerDependenciesMeta": {
100
106
  "@fastify/multipart": {
101
107
  "optional": true
102
108
  },
103
- "express": {
109
+ "@fastify/jwt": {
104
110
  "optional": true
105
111
  },
106
- "fastify": {
112
+ "jwks-rsa": {
107
113
  "optional": true
108
114
  },
109
- "multer": {
115
+ "fastify": {
110
116
  "optional": true
111
117
  }
112
118
  },
113
119
  "dependencies": {
114
- "@azure/arm-dns": "^5.0.0",
115
- "@azure/identity": "^4.5.0",
116
- "@azure/keyvault-certificates": "^4.4.0",
117
- "@azure/keyvault-keys": "^4.7.2",
118
- "@azure/keyvault-secrets": "^4.4.0",
119
- "@azure/storage-blob": "^12.17.0",
120
- "@azure/storage-file-share": "^12.17.0",
121
- "@azure/storage-queue": "^12.28.1",
122
- "@lilaquadrat/interfaces": "^1.32.0",
120
+ "@lilaquadrat/interfaces": "^1.33.0",
123
121
  "@nats-io/jetstream": "^3.2.0",
124
122
  "@nats-io/transport-node": "^3.2.0",
125
123
  "ajv": "^8.8.2",
@@ -133,15 +131,15 @@
133
131
  "i18n-iso-countries": "^7.13.0",
134
132
  "mime-types": "^2.1.32",
135
133
  "mongo-connection-string": "^0.1.5",
136
- "mongodb": "^6.16.0",
134
+ "mongodb": "^7.0.0",
137
135
  "node-fetch": "^2",
138
136
  "object-path": "^0.11.8",
139
137
  "openai": "^4.85.3",
140
138
  "optional-require": "^1.1.0",
141
139
  "prettyjson": "^1.2.1",
140
+ "query-string": "^9.3.1",
142
141
  "stripe": "^17.7.0",
143
142
  "typescript": "^5.3.3",
144
- "unzipper": "^0.10.11",
145
143
  "winston": "^3.10.0"
146
144
  },
147
145
  "config": {
@@ -1,19 +0,0 @@
1
- import { ContainerClient } from '@azure/storage-blob';
2
- import { ShareClientInterface, ShareClientOptions } from '@lilaquadrat/interfaces';
3
- export default class AzureBlobClient implements ShareClientInterface {
4
- client: ContainerClient;
5
- constructor(options: ShareClientOptions);
6
- createFolder(basePath: string, folder: string): Promise<boolean>;
7
- removeFolder(): Promise<boolean>;
8
- mimetype(filePath?: string, buffer?: Buffer, mimeHint?: string): Promise<string>;
9
- add(destination: string, filename: string, filePath: string, mimeHint?: string): Promise<boolean>;
10
- remove(folder: string, file: string): Promise<boolean>;
11
- create(destination: string, filename: string, data: string | Buffer, mimeHint?: string): Promise<boolean>;
12
- update(folder: string, filename: string, data: Buffer): Promise<boolean>;
13
- list(folder: string, filter: RegExp, options?: {
14
- fullPath?: boolean;
15
- }): Promise<string[]>;
16
- get(folder: string, filename: string): Promise<Buffer>;
17
- copy(files: string[], sourceFolder: string, destinationFolder: string): Promise<boolean>;
18
- getDownloadUrl(path: string, lifetimeInSeconds?: number): Promise<string>;
19
- }
@@ -1,162 +0,0 @@
1
- import { BlobServiceClient, BlobSASPermissions } from '@azure/storage-blob';
2
- import FileType from 'file-type';
3
- import logger from './logger.js';
4
- import { DefaultAzureCredential } from '@azure/identity';
5
- export default class AzureBlobClient {
6
- constructor(options) {
7
- if (options.sharedKeyCredentials) {
8
- const serviceClient = new BlobServiceClient(`https://${options.accountName}.blob.core.windows.net`, options.sharedKeyCredentials);
9
- this.client = serviceClient.getContainerClient(options.container || 'main');
10
- }
11
- else if (options.accountName) {
12
- logger.info('storage.blob.use.storage_account');
13
- const credentials = new DefaultAzureCredential();
14
- const serviceClient = new BlobServiceClient(`https://${options.accountName}.blob.core.windows.net`, credentials);
15
- this.client = serviceClient.getContainerClient(options.container || 'main');
16
- }
17
- else if (options.connectionString) {
18
- logger.info('storage.blob.use.connection_string');
19
- const serviceClient = new BlobServiceClient(options.connectionString);
20
- this.client = serviceClient.getContainerClient(options.container || 'main');
21
- }
22
- }
23
- createFolder(basePath, folder) {
24
- return new Promise((resolve, reject) => resolve(true));
25
- }
26
- removeFolder() {
27
- return new Promise((resolve, reject) => resolve(true));
28
- }
29
- async mimetype(filePath, buffer, mimeHint) {
30
- let mime = null;
31
- let detectMime;
32
- if (!mimeHint) {
33
- if (filePath) {
34
- detectMime = await FileType.fromFile(filePath);
35
- }
36
- if (buffer) {
37
- detectMime = await FileType.fromBuffer(buffer);
38
- }
39
- if (!detectMime) {
40
- if (filePath) {
41
- const ext = filePath.match(/\.([a-z]+)$/i);
42
- if (ext) {
43
- if (ext[1]) {
44
- mime = `text/${ext[1]}`;
45
- }
46
- }
47
- }
48
- }
49
- else {
50
- mime = detectMime.mime;
51
- }
52
- }
53
- else {
54
- mime = mimeHint;
55
- }
56
- if (!mime)
57
- mime = 'text/plain';
58
- return mime;
59
- }
60
- async add(destination, filename, filePath, mimeHint) {
61
- const blockBlobClient = this.client.getBlockBlobClient(`${destination}/${filename}`);
62
- return blockBlobClient.uploadFile(filePath, { blobHTTPHeaders: { blobContentType: await this.mimetype(filePath, undefined, mimeHint) } })
63
- .then(() => true)
64
- .catch((e) => {
65
- logger.error(e);
66
- return false;
67
- });
68
- }
69
- remove(folder, file) {
70
- const blockBlobClient = this.client.getBlockBlobClient(`${folder}/${file}`);
71
- return blockBlobClient.delete()
72
- .then((response) => {
73
- logger.debug(`upated - ${folder}/${file}`, response);
74
- return true;
75
- })
76
- .catch((e) => {
77
- logger.error(e);
78
- return false;
79
- });
80
- }
81
- async create(destination, filename, data, mimeHint) {
82
- const bytes = Buffer.byteLength(data);
83
- const blockBlobClient = this.client.getBlockBlobClient(`${destination}/${filename}`);
84
- return blockBlobClient.upload(data, bytes, { blobHTTPHeaders: { blobContentType: await this.mimetype(undefined, Buffer.from(data), mimeHint) } })
85
- .then(() => {
86
- return true;
87
- })
88
- .catch((e) => {
89
- logger.error(e);
90
- return false;
91
- });
92
- }
93
- update(folder, filename, data) {
94
- const bytes = Buffer.byteLength(data);
95
- const blockBlobClient = this.client.getBlockBlobClient(`${folder}/${filename}`);
96
- return blockBlobClient.upload(data, bytes)
97
- .then((response) => {
98
- logger.debug(`upated - ${folder}/${filename}`, response);
99
- return true;
100
- })
101
- .catch((e) => {
102
- logger.error(e);
103
- return false;
104
- });
105
- }
106
- async list(folder, filter, options) {
107
- const files = [];
108
- for await (const blob of this.client.listBlobsFlat({ prefix: folder })) {
109
- const matched = blob.name.match(filter);
110
- if (matched) {
111
- if (options?.fullPath) {
112
- files.push(blob.name);
113
- }
114
- else {
115
- files.push(blob.name.substring(blob.name.lastIndexOf('/') + 1));
116
- }
117
- }
118
- }
119
- return new Promise((resolve, reject) => resolve(files));
120
- }
121
- async get(folder, filename) {
122
- const bundleClient = this.client.getBlockBlobClient(`${folder}/${filename}`);
123
- const bundleClientResponse = await bundleClient.download(0);
124
- return new Promise((resolve, reject) => {
125
- const stream = bundleClientResponse.readableStreamBody;
126
- const chunks = []; // Use Buffer[], not any[]
127
- stream?.on('data', (chunk) => {
128
- chunks.push(chunk); // Push buffers directly
129
- });
130
- stream?.on('end', () => {
131
- resolve(Buffer.concat(chunks)); // Correctly merge buffers
132
- });
133
- stream?.on('error', (err) => {
134
- logger.error(`Error loading blob ${filename}: ${err.message}`);
135
- reject(new Error(`Error loading blob ${filename}`));
136
- });
137
- });
138
- }
139
- copy(files, sourceFolder, destinationFolder) {
140
- const PROMISEARRAY = files.map((file) => {
141
- const targetClient = this.client.getBlockBlobClient(`${destinationFolder}/${file}`);
142
- const sourceClient = this.client.getBlockBlobClient(`${sourceFolder}/${file}`);
143
- return targetClient.beginCopyFromURL(sourceClient.url);
144
- });
145
- return Promise.all(PROMISEARRAY)
146
- .then(() => true)
147
- .catch((error) => {
148
- logger.error(error);
149
- return false;
150
- });
151
- }
152
- async getDownloadUrl(path, lifetimeInSeconds = 3600) {
153
- const blockBlobClient = this.client.getBlockBlobClient(path);
154
- const expiresOn = new Date(new Date().valueOf() + lifetimeInSeconds * 1000);
155
- return blockBlobClient.generateSasUrl({
156
- permissions: BlobSASPermissions.parse('r'),
157
- startsOn: new Date(),
158
- expiresOn: expiresOn,
159
- });
160
- }
161
- }
162
- //# sourceMappingURL=AzureBlobStorage.share.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AzureBlobStorage.share.js","sourceRoot":"","sources":["../../src/AzureBlobStorage.share.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- import { ShareClient } from '@azure/storage-file-share';
2
- import { ShareClientInterface, ShareClientOptions } from '@lilaquadrat/interfaces';
3
- export default class AzureStorageClient implements ShareClientInterface {
4
- client: ShareClient;
5
- constructor(options: ShareClientOptions);
6
- /**
7
- * creates all folders bases upon the pathArray
8
- *
9
- * ``['test', 'test1', 'test2']`` will result in ``/test/test1/test2``
10
- */
11
- private createSingleFolder;
12
- createFolder(basePath: string, folder?: string): Promise<boolean>;
13
- removeFolder(folder: string): Promise<boolean>;
14
- add(destination: string, filename: string, filePath: string): Promise<boolean>;
15
- remove(folder: string, file: string): Promise<boolean>;
16
- create(destination: string, filename: string, data: string | Buffer): Promise<boolean>;
17
- update(folder: string, filename: string, data: Buffer): Promise<boolean>;
18
- get(folder: string, filename: string): Promise<Buffer<ArrayBufferLike>>;
19
- list(folder: string, filter: RegExp): Promise<string[]>;
20
- copy(files: string[], sourceFolder: string, destinationFolder: string): Promise<boolean>;
21
- getDownloadUrl(path: string, lifetimeInSeconds?: number): Promise<string>;
22
- }
@@ -1,139 +0,0 @@
1
- import { ShareServiceClient } from '@azure/storage-file-share';
2
- import logger from './logger.js';
3
- import { DefaultAzureCredential } from '@azure/identity';
4
- export default class AzureStorageClient {
5
- constructor(options) {
6
- if (options.accountName) {
7
- logger.info('storage.file.use.storage_account');
8
- const credentials = new DefaultAzureCredential();
9
- const serviceClient = new ShareServiceClient(`https://${options.accountName}.file.core.windows.net`, credentials);
10
- this.client = serviceClient.getShareClient(options.shareName);
11
- }
12
- else if (options.connectionString) {
13
- logger.info('storage.file.use.connection_string');
14
- const serviceClient = ShareServiceClient.fromConnectionString(options.connectionString);
15
- this.client = serviceClient.getShareClient(options.shareName);
16
- }
17
- }
18
- /**
19
- * creates all folders bases upon the pathArray
20
- *
21
- * ``['test', 'test1', 'test2']`` will result in ``/test/test1/test2``
22
- */
23
- async createSingleFolder(pathArray, base) {
24
- let delimiter;
25
- let folderToCreate;
26
- /**
27
- * removes the first part of the array and uses it as the folder name
28
- *
29
- */
30
- const folder = pathArray.shift() || '';
31
- if (base) {
32
- /**
33
- * if the last character of base is a slash, no delimiter is necessary
34
- * this prevents the generation of paths with double slashes
35
- */
36
- delimiter = base?.lastIndexOf('/') === base?.length - 1
37
- ? ''
38
- : '/';
39
- folderToCreate = `${base}${delimiter}${folder}`;
40
- }
41
- else {
42
- folderToCreate = folder;
43
- }
44
- const directoryClient = this.client.getDirectoryClient(folderToCreate);
45
- if (!await directoryClient.exists()) {
46
- await directoryClient.create();
47
- }
48
- if (pathArray.length) {
49
- return this.createSingleFolder(pathArray, folderToCreate);
50
- }
51
- return true;
52
- }
53
- createFolder(basePath, folder) {
54
- let pathArray = [];
55
- /**
56
- * if the base path starts with a slash, add it to the pathArray
57
- */
58
- if (basePath.indexOf('/') === 0) {
59
- pathArray.push('/');
60
- }
61
- pathArray.push(...basePath.split('/'));
62
- if (folder)
63
- pathArray.push(...folder.split('/'));
64
- pathArray = pathArray.filter((single) => single.length);
65
- return this.createSingleFolder(pathArray);
66
- }
67
- async removeFolder(folder) {
68
- const directoryClient = this.client.getDirectoryClient(folder);
69
- directoryClient.listFilesAndDirectories();
70
- for await (const entity of directoryClient.listFilesAndDirectories()) {
71
- if (entity.kind === 'file') {
72
- await directoryClient.getFileClient(entity.name)
73
- .delete();
74
- }
75
- if (entity.kind === 'directory') {
76
- await this.removeFolder(`${folder}/${entity.name}`);
77
- }
78
- }
79
- return directoryClient.delete()
80
- .then(() => true);
81
- }
82
- add(destination, filename, filePath) {
83
- const fileClient = this.client.getDirectoryClient(destination).getFileClient(filename);
84
- return fileClient.uploadFile(filePath)
85
- .then(() => true);
86
- }
87
- remove(folder, file) {
88
- return this.client.getDirectoryClient(folder).deleteFile(file)
89
- .then(() => true);
90
- }
91
- async create(destination, filename, data) {
92
- const bytes = Buffer.byteLength(data);
93
- await this.createFolder(destination);
94
- return this.client.getDirectoryClient(destination).createFile(filename, bytes)
95
- .then((response) => response.fileClient.uploadRange(data, 0, bytes))
96
- .then(() => true)
97
- .catch((e) => {
98
- logger.error(e.message);
99
- throw new Error(`StatusCode ${e.statusCode} - ${e.request.url}`);
100
- });
101
- }
102
- update(folder, filename, data) {
103
- return this.client.getDirectoryClient(folder).getFileClient(filename).uploadData(data)
104
- .then(() => true);
105
- }
106
- get(folder, filename) {
107
- return this.client.getDirectoryClient(folder).getFileClient(filename).downloadToBuffer()
108
- .catch((e) => {
109
- throw new Error(`StatusCode ${e.statusCode} - ${e.errorCode} - ${e.request.url}`);
110
- });
111
- }
112
- async list(folder, filter) {
113
- const files = [];
114
- const directoryClient = this.client.getDirectoryClient(folder);
115
- directoryClient.listFilesAndDirectories();
116
- for await (const entity of directoryClient.listFilesAndDirectories()) {
117
- if (entity.kind === 'file' && entity.name.match(filter))
118
- files.push(entity.name);
119
- }
120
- return new Promise((resolve, reject) => resolve(files));
121
- }
122
- async copy(files, sourceFolder, destinationFolder) {
123
- const PROMISEARRAY = files.map((file) => {
124
- const targetClient = this.client.getDirectoryClient(destinationFolder).getFileClient(file);
125
- const sourceClient = this.client.getDirectoryClient(sourceFolder).getFileClient(file);
126
- return targetClient.startCopyFromURL(sourceClient.url);
127
- });
128
- return Promise.all(PROMISEARRAY)
129
- .then(() => true)
130
- .catch((error) => {
131
- logger.error(error);
132
- return false;
133
- });
134
- }
135
- getDownloadUrl(path, lifetimeInSeconds) {
136
- return Promise.resolve('NOT_IMPLEMENTED');
137
- }
138
- }
139
- //# sourceMappingURL=AzureFileStorage.share.js.map