@iebh/tera-fy 2.2.4 → 2.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/api.md +550 -532
- package/dist/lib/projectFile.d.ts +8 -0
- package/dist/lib/projectFile.js +26 -2
- package/dist/lib/projectFile.js.map +1 -1
- package/dist/plugin.vue2.es2019.js +5 -5
- package/dist/terafy.es2019.js +2 -2
- package/dist/terafy.js +2 -2
- package/lib/projectFile.ts +37 -2
- package/package.json +2 -2
|
@@ -116,6 +116,14 @@ export default class ProjectFile {
|
|
|
116
116
|
* @type {Object}
|
|
117
117
|
*/
|
|
118
118
|
meta: Record<string, any>;
|
|
119
|
+
/**
|
|
120
|
+
* Whether this is a folder or not
|
|
121
|
+
*/
|
|
122
|
+
isFolder: boolean;
|
|
123
|
+
/**
|
|
124
|
+
* If it is a folder, it will have an array of files in the folder
|
|
125
|
+
*/
|
|
126
|
+
files?: ProjectFile[];
|
|
119
127
|
/**
|
|
120
128
|
* ProjectFile constructor
|
|
121
129
|
* Takes the input basic file type from Supabase and adds additional formatted fields
|
package/dist/lib/projectFile.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { filesize } from 'filesize';
|
|
2
|
-
import { pick } from 'lodash-es';
|
|
2
|
+
import { pick, omit } from 'lodash-es';
|
|
3
3
|
;
|
|
4
4
|
/**
|
|
5
5
|
* A project file fetched from TERA
|
|
@@ -22,7 +22,11 @@ export default class ProjectFile {
|
|
|
22
22
|
// Note: baseFile.tera is assumed to exist based on the check below and the SupabaseFile type definition above
|
|
23
23
|
if (!baseFile.tera)
|
|
24
24
|
throw new Error('Basic file requires a `tera` key to access the Tera instance');
|
|
25
|
-
Object.assign(this, baseFile);
|
|
25
|
+
Object.assign(this, omit(baseFile, 'encodeIdFunction')); // don't copy encodeIdFunction
|
|
26
|
+
// Check whether encodeIdFunction exists and if it does then parse the id
|
|
27
|
+
if (baseFile.encodeIdFunction && typeof baseFile.encodeIdFunction === 'function') {
|
|
28
|
+
this.id = baseFile.encodeIdFunction(this.id);
|
|
29
|
+
}
|
|
26
30
|
// Translate baseFile.tera -> this._tera (non-enumerable, non-configurable)
|
|
27
31
|
const tera = this.tera;
|
|
28
32
|
Object.defineProperty(this, '_tera', {
|
|
@@ -34,6 +38,26 @@ export default class ProjectFile {
|
|
|
34
38
|
},
|
|
35
39
|
});
|
|
36
40
|
delete this.tera; // Remove original ref we merged above
|
|
41
|
+
if (this.isFolder) {
|
|
42
|
+
// Process all files in the folder
|
|
43
|
+
this.files = this.files?.map(file => {
|
|
44
|
+
let path = file.path.split(/\//).slice(3).join('/');
|
|
45
|
+
let url = this.url + '/' + file.name; // Add file name to url
|
|
46
|
+
// Parse url to show library instead of download if reflib file
|
|
47
|
+
if (file.meta.reflib) {
|
|
48
|
+
url = url.replace(/\/project\/download\//, '/project/library/');
|
|
49
|
+
}
|
|
50
|
+
return new ProjectFile({
|
|
51
|
+
tera: this._tera,
|
|
52
|
+
...file,
|
|
53
|
+
sbId: file.id, // Sash the original Supabase ID under sbId
|
|
54
|
+
id: file.path,
|
|
55
|
+
encodeIdFunction: baseFile.encodeIdFunction,
|
|
56
|
+
path,
|
|
57
|
+
url,
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
}
|
|
37
61
|
// Calculate `teraUrl` from URL
|
|
38
62
|
// Assuming this.url is always defined after Object.assign
|
|
39
63
|
this.teraUrl = this.url.replace(/^https?:\/\/(?:.+?)\/projects\/(?:.+?)\/project\/(.+)$/, '/project/$1');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projectFile.js","sourceRoot":"","sources":["../../lib/projectFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"projectFile.js","sourceRoot":"","sources":["../../lib/projectFile.ts"],"names":[],"mappings":"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"}
|