@tasenor/common-node 1.9.34 → 1.9.36

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.
@@ -1,4 +1,4 @@
1
- import { TasenorPlugin, PluginCatalog, FilePath } from '@tasenor/common';
1
+ import { TasenorPlugin, PluginCatalog, FilePath, DirectoryPath } from '@tasenor/common';
2
2
  interface PluginConfig {
3
3
  PLUGIN_PATH?: string;
4
4
  }
@@ -78,6 +78,10 @@ declare function updatePluginList(): Promise<TasenorPlugin[]>;
78
78
  * Convert full path from UI or backend index file to relative path inside the plugin.
79
79
  */
80
80
  declare function pluginLocalPath(indexFilePath: FilePath): string | undefined;
81
+ /**
82
+ * Go through repository URLs and install all missing plugin repositories.
83
+ */
84
+ declare function updateRepositories(repos: string[], src: DirectoryPath, dst: DirectoryPath): Promise<boolean>;
81
85
  /**
82
86
  * Collection of file system and API related plugin handling functions for fetching, building and scanning.
83
87
  */
@@ -97,5 +101,6 @@ export declare const plugins: {
97
101
  sortPlugins: typeof sortPlugins;
98
102
  updatePluginIndex: typeof updatePluginIndex;
99
103
  updatePluginList: typeof updatePluginList;
104
+ updateRepositories: typeof updateRepositories;
100
105
  };
101
106
  export {};
@@ -1,9 +1,10 @@
1
1
  import fs from 'fs';
2
2
  import glob from 'fast-glob';
3
3
  import path from 'path';
4
- import { net, note, log } from '@tasenor/common';
4
+ import { net, note, log, error } from '@tasenor/common';
5
5
  import { create } from 'ts-opaque';
6
6
  import { vault } from '../net';
7
+ import { systemPiped } from '..';
7
8
  const PLUGIN_FIELDS = ['code', 'title', 'version', 'icon', 'releaseDate', 'use', 'type', 'description'];
8
9
  // Internal configuration for the module.
9
10
  const config = {
@@ -269,6 +270,53 @@ function pluginLocalPath(indexFilePath) {
269
270
  return match[0].substring(1);
270
271
  }
271
272
  }
273
+ /**
274
+ * Go through repository URLs and install all missing plugin repositories.
275
+ */
276
+ async function updateRepositories(repos, src, dst) {
277
+ let changes = false;
278
+ for (const repo of repos) {
279
+ log(`Checking plugin repo ${repo}.`);
280
+ if (repo.startsWith('file://')) {
281
+ // Handle local file.
282
+ const source = path.join(src, repo.substring(7));
283
+ const target = path.join(dst, path.basename(repo));
284
+ if (fs.existsSync(src)) {
285
+ if (!fs.existsSync(target)) {
286
+ log(` Linking repo ${source} => ${target}.`);
287
+ const cmd = `ln -sf "${source}" "${target}"`;
288
+ await systemPiped(cmd);
289
+ changes = true;
290
+ }
291
+ }
292
+ else {
293
+ error(`A plugin repository ${repo} not found.`);
294
+ }
295
+ }
296
+ else if (repo.startsWith('npm://')) {
297
+ const npm = repo.substring(6);
298
+ const source = path.join(dst, 'package');
299
+ const target = path.join(dst, npm.replace(/@/g, '').replace(/[^a-zA-Z0-9]/g, '-'));
300
+ if (!fs.existsSync(target)) {
301
+ log(` Downloading NPM ${npm}.`);
302
+ const cmd = `cd "${dst}" && rm -fr "${source}" && npm view ${npm} dist.tarball | xargs curl -s | tar xz && mv "${source}" "${target}"`;
303
+ await systemPiped(cmd);
304
+ changes = true;
305
+ }
306
+ }
307
+ else {
308
+ // By default, assume git repo.
309
+ const target = path.join(dst, repo.replace(/.*\//, '').replace('.git', ''));
310
+ if (!fs.existsSync(target)) {
311
+ log(` Fetching plugin repo ${repo} to ${target}.`);
312
+ const cmd = `cd "${dst}" && git clone "${repo}"`;
313
+ await systemPiped(cmd);
314
+ changes = true;
315
+ }
316
+ }
317
+ }
318
+ return changes;
319
+ }
272
320
  /**
273
321
  * Collection of file system and API related plugin handling functions for fetching, building and scanning.
274
322
  */
@@ -287,6 +335,7 @@ export const plugins = {
287
335
  setConfig,
288
336
  sortPlugins,
289
337
  updatePluginIndex,
290
- updatePluginList
338
+ updatePluginList,
339
+ updateRepositories
291
340
  };
292
341
  //# sourceMappingURL=plugins.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.js","sourceRoot":"","sources":["../../../src/plugins/plugins.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugins.js","sourceRoot":"","sources":["../../../src/plugins/plugins.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tasenor/common-node",
3
- "version": "1.9.34",
3
+ "version": "1.9.36",
4
4
  "description": "Common Node-parts of Tasenor project",
5
5
  "main": "src/index.ts",
6
6
  "types": "src/index.ts",
@@ -36,7 +36,7 @@
36
36
  "sqlite3": "^5.1.6",
37
37
  "tar": "^6.1.15",
38
38
  "ts-opaque": "^3.0.1",
39
- "@tasenor/common": "1.9.34"
39
+ "@tasenor/common": "1.9.36"
40
40
  },
41
41
  "devDependencies": {
42
42
  "@jest/globals": "^29.6.1",
@@ -1,9 +1,10 @@
1
1
  import fs from 'fs'
2
2
  import glob from 'fast-glob'
3
3
  import path from 'path'
4
- import { TasenorPlugin, PluginCatalog, FilePath, net, Url, note, log } from '@tasenor/common'
4
+ import { TasenorPlugin, PluginCatalog, FilePath, net, Url, note, log, DirectoryPath, error } from '@tasenor/common'
5
5
  import { create } from 'ts-opaque'
6
6
  import { vault } from '../net'
7
+ import { systemPiped } from '..'
7
8
 
8
9
  const PLUGIN_FIELDS = ['code', 'title', 'version', 'icon', 'releaseDate', 'use', 'type', 'description']
9
10
 
@@ -323,6 +324,52 @@ function pluginLocalPath(indexFilePath: FilePath): string | undefined {
323
324
  }
324
325
  }
325
326
 
327
+ /**
328
+ * Go through repository URLs and install all missing plugin repositories.
329
+ */
330
+ async function updateRepositories(repos: string[], src: DirectoryPath, dst: DirectoryPath): Promise<boolean> {
331
+ let changes = false
332
+ for (const repo of repos) {
333
+ log(`Checking plugin repo ${repo}.`)
334
+ if (repo.startsWith('file://')) {
335
+ // Handle local file.
336
+ const source = path.join(src, repo.substring(7))
337
+ const target = path.join(dst, path.basename(repo))
338
+ if (fs.existsSync(src)) {
339
+ if (!fs.existsSync(target)) {
340
+ log(` Linking repo ${source} => ${target}.`)
341
+ const cmd = `ln -sf "${source}" "${target}"`
342
+ await systemPiped(cmd)
343
+ changes = true
344
+ }
345
+ } else {
346
+ error(`A plugin repository ${repo} not found.`)
347
+ }
348
+ } else if (repo.startsWith('npm://')) {
349
+ const npm = repo.substring(6)
350
+ const source = path.join(dst, 'package')
351
+ const target = path.join(dst, npm.replace(/@/g, '').replace(/[^a-zA-Z0-9]/g, '-'))
352
+ if (!fs.existsSync(target)) {
353
+ log(` Downloading NPM ${npm}.`)
354
+ const cmd = `cd "${dst}" && rm -fr "${source}" && npm view ${npm} dist.tarball | xargs curl -s | tar xz && mv "${source}" "${target}"`
355
+ await systemPiped(cmd)
356
+ changes = true
357
+ }
358
+ } else {
359
+ // By default, assume git repo.
360
+ const target = path.join(dst, repo.replace(/.*\//, '').replace('.git', ''))
361
+ if (!fs.existsSync(target)) {
362
+ log(` Fetching plugin repo ${repo} to ${target}.`)
363
+ const cmd = `cd "${dst}" && git clone "${repo}"`
364
+ await systemPiped(cmd)
365
+ changes = true
366
+ }
367
+ }
368
+ }
369
+
370
+ return changes
371
+ }
372
+
326
373
  /**
327
374
  * Collection of file system and API related plugin handling functions for fetching, building and scanning.
328
375
  */
@@ -341,5 +388,6 @@ export const plugins = {
341
388
  setConfig,
342
389
  sortPlugins,
343
390
  updatePluginIndex,
344
- updatePluginList
391
+ updatePluginList,
392
+ updateRepositories
345
393
  }