Added extension functionality
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
import { cpSync, rmSync, existsSync } from 'fs'
|
||||
import { join } from 'path'
|
||||
|
||||
const root = process.cwd()
|
||||
const extensions = ['receipt-ocr', 'ai-categorization', 'ai-chat', 'push-notifications', 'enable-banking', 'example-logger']
|
||||
|
||||
for (const ext of extensions) {
|
||||
const src = join(root, 'extensions', ext)
|
||||
const dest = join(root, 'extensions', 'general', ext)
|
||||
|
||||
if (!existsSync(src)) {
|
||||
console.log(`SKIP: ${src} does not exist`)
|
||||
continue
|
||||
}
|
||||
|
||||
if (existsSync(dest)) {
|
||||
console.log(`CLEAN: ${dest} already exists, removing`)
|
||||
rmSync(dest, { recursive: true, force: true })
|
||||
}
|
||||
|
||||
console.log(`COPY: ${src} -> ${dest}`)
|
||||
cpSync(src, dest, { recursive: true })
|
||||
}
|
||||
|
||||
console.log('Done copying extensions to general/')
|
||||
|
||||
// Now remove the old directories
|
||||
for (const ext of extensions) {
|
||||
const src = join(root, 'extensions', ext)
|
||||
if (existsSync(src)) {
|
||||
console.log(`REMOVE: ${src}`)
|
||||
rmSync(src, { recursive: true, force: true })
|
||||
}
|
||||
}
|
||||
|
||||
console.log('Done removing old extension directories')
|
||||
@@ -0,0 +1,33 @@
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
|
||||
const root = path.resolve(__dirname, '..');
|
||||
const extsDir = path.join(root, 'extensions');
|
||||
const generalDir = path.join(extsDir, 'general');
|
||||
|
||||
const dirs = [
|
||||
'receipt-ocr',
|
||||
'ai-categorization',
|
||||
'ai-chat',
|
||||
'push-notifications',
|
||||
'enable-banking',
|
||||
'example-logger',
|
||||
];
|
||||
|
||||
if (!fs.existsSync(generalDir)) {
|
||||
fs.mkdirSync(generalDir, { recursive: true });
|
||||
}
|
||||
|
||||
for (const ext of dirs) {
|
||||
const src = path.join(extsDir, ext);
|
||||
const dest = path.join(generalDir, ext);
|
||||
if (fs.existsSync(src)) {
|
||||
fs.cpSync(src, dest, { recursive: true });
|
||||
fs.rmSync(src, { recursive: true, force: true });
|
||||
console.log('Done: ' + ext);
|
||||
} else {
|
||||
console.log('Skip: ' + ext);
|
||||
}
|
||||
}
|
||||
|
||||
console.log('All done.');
|
||||
@@ -0,0 +1 @@
|
||||
const fs=require('fs'),p=require('path'),r=p.resolve(__dirname,'..'),b=p.join(r,'extensions'),t=p.join(b,'general'),d=['receipt-ocr','ai-categorization','ai-chat','push-notifications','enable-banking','example-logger'];fs.mkdirSync(t,{recursive:!0});d.forEach(n=>{const s=p.join(b,n),e=p.join(t,n);fs.existsSync(s)?(fs.cpSync(s,e,{recursive:!0}),fs.rmSync(s,{recursive:!0,force:!0}),console.log(n)):console.log('!'+n)});
|
||||
Reference in New Issue
Block a user