@digital-herd/content-hub-cli 1.1.3 → 1.1.5

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/lib/bin.js CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});let commander_1=require("commander"),modules_1=__importDefault(require("./modules")),program=new commander_1.Command;program.name("content-hub-tools").description("ContentHub build & utility CLI").version("1.0.0");for(let o of modules_1.default)for(let e of o.commands)program.addCommand(e);program.parse(process.argv);
2
+ var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});let commander_1=require("commander"),modules_1=__importDefault(require("./modules")),program=new commander_1.Command;program.name("content-hub-tools").description("ContentHub build & utility CLI").version("1.1.5");for(let o of modules_1.default)for(let e of o.commands)program.addCommand(e);program.parse(process.argv);
@@ -1 +1 @@
1
- var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.buildExternalComponentCommand=void 0;let commander_1=require("commander"),globalCommandConfig_js_1=require("../../../utils/globalCommandConfig.js"),ExternalComponentBuildService_js_1=__importDefault(require("../services/ExternalComponentBuildService.js")),ExternalComponentPublishService_js_1=__importDefault(require("../services/ExternalComponentPublishService.js"));exports.buildExternalComponentCommand=(0,globalCommandConfig_js_1.setGlobalConfig)(new commander_1.Command("build")).option("-c, --components <comp>","component list to build").option("-d, --deprecated","build with deprecated tsconfig").option("-p, --publish","Deploy the compoonent to the environment").description("Build External component(s)").action(async e=>{process.env.NODE_ENV="production";var o,{config:n,contenthubService:t}=await(0,globalCommandConfig_js_1.globalCommandConfig)(e),i=e.deprecated?"tsconfig.deprecated.json":void 0,i=new ExternalComponentBuildService_js_1.default(n,i);let l=[];l=e.components?(o=e.components.split(",").map(e=>e.trim()),await i.build(o)):await i.buildAll(),e.publish&&await new ExternalComponentPublishService_js_1.default(t,n).publishToPortalAsset(l)});
1
+ var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.buildExternalComponentCommand=void 0;let commander_1=require("commander"),globalCommandConfig_js_1=require("../../../utils/globalCommandConfig.js"),ExternalComponentBuildService_js_1=__importDefault(require("../services/ExternalComponentBuildService.js")),ExternalComponentPublishService_js_1=__importDefault(require("../services/ExternalComponentPublishService.js")),logger_js_1=__importDefault(require("../../../utils/logger.js"));exports.buildExternalComponentCommand=(0,globalCommandConfig_js_1.setGlobalConfig)(new commander_1.Command("build")).option("-c, --components <comp>","component list to build").option("-d, --deprecated","build with deprecated tsconfig").option("-p, --publish","Deploy the compoonent to the environment").description("Build External component(s)").action(async e=>{process.env.NODE_ENV="production";var o,{config:t,contenthubService:n}=await(0,globalCommandConfig_js_1.globalCommandConfig)(e),i=e.deprecated?"tsconfig.deprecated.json":void 0,i=(e.deprecated&&logger_js_1.default.info("Work with Deprecated tsconfig"),new ExternalComponentBuildService_js_1.default(t,i));let l=[];l=e.components?(o=e.components.split(",").map(e=>e.trim()),await i.build(o)):await i.buildAll(),e.publish&&await new ExternalComponentPublishService_js_1.default(n,t).publishToPortalAsset(l)});
@@ -1 +1 @@
1
- var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});let FileService_1=__importDefault(require("../../../services/FileService")),vite_1=require("vite"),path_1=__importDefault(require("path")),lodash_1=require("lodash"),array_1=require("../../../utils/array"),logger_1=__importDefault(require("../../..//utils/logger")),TypeCheckService_1=__importDefault(require("./TypeCheckService")),tempDirectory_1=require("../../../config/tempDirectory"),fs_1=__importDefault(require("fs")),zlib_1=require("zlib");class ExternalComponentBuildService{fileService;typeCheck;constructor(e,i){this.fileService=new FileService_1.default(e),this.typeCheck=new TypeCheckService_1.default(e,i)}async buildAll(){var e=this.fileService.getAllComponentNames(),i=await this.getViteConfigs(e),t=(await this.typeCheck.all(),(0,array_1.arrayToChunks)(i,5));for(let e=0;e<t.length;e++)logger_1.default.info(`Building batch ${e+1}/${t.length}...`),await Promise.all(t[e].map(e=>(0,vite_1.build)(e))),this.logBuildSizes(t[e].map(e=>e.build.lib.fileName)),logger_1.default.info(`Batch ${e+1}/${t.length} finished`);return logger_1.default.info(`All ${e.length} components built successfully`),e}async build(e){e=Array.isArray(e)?e:[e];let i=this.fileService.getAllComponentNames();var t=e.filter(e=>!i.includes(e)),t=(t.length&&(logger_1.default.error(t.join(", ")+" components not found"),process.exit(-1)),await this.typeCheck.specificComponents(e),await this.getViteConfigs(e)),l=(0,array_1.arrayToChunks)(t,5);for(let e=0;e<l.length;e++)logger_1.default.info(`Building component batch ${e+1}/${l.length}...`),await Promise.all(l[e].map(e=>(0,vite_1.build)(e))),this.logBuildSizes(l[e].map(e=>e.build.lib.fileName)),logger_1.default.info(`Component Batch ${e+1}/${l.length} finished`);return logger_1.default.info(e.length+" component(s) built successfully"),e}async getViteConfigs(e){var i=path_1.default.resolve(process.cwd(),"vite.config.js");let l=await(0,vite_1.loadConfigFromFile)({command:"build",mode:"production"},i);if(l)return e.map(e=>{var i=this.fileService.getEntryOfComponent(e),t=(0,lodash_1.cloneDeep)(l.config);return t.build.lib={formats:["es"],fileName:e,entry:i},t.build.outDir=tempDirectory_1.BUILD_DIRECTORY,t.build.emptyOutDir=!1,t.mode="production",t.logLevel="warn",t});throw new Error("Vite config not found")}logBuildSizes(e){e.forEach(e=>{var i,t,l=path_1.default.join(tempDirectory_1.BUILD_DIRECTORY,e+".js");fs_1.default.existsSync(l)&&(i=(l=fs_1.default.readFileSync(l)).length,l=(0,zlib_1.gzipSync)(l).length,t=e=>e<1024?e+" B":e<1048576?(e/1024).toFixed(2)+" KB":(e/1048576).toFixed(2)+" MB",logger_1.default.info(` ${e}.js: ${t(i)} (gzip: ${t(l)})`))})}}exports.default=ExternalComponentBuildService;
1
+ var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});let FileService_1=__importDefault(require("../../../services/FileService")),vite_1=require("vite"),path_1=__importDefault(require("path")),lodash_1=require("lodash"),array_1=require("../../../utils/array"),logger_1=__importDefault(require("../../..//utils/logger")),TypeCheckService_1=__importDefault(require("./TypeCheckService")),tempDirectory_1=require("../../../config/tempDirectory"),fs_1=__importDefault(require("fs")),zlib_1=require("zlib");class ExternalComponentBuildService{fileService;typeCheck;constructor(e,i){this.fileService=new FileService_1.default(e),this.typeCheck=new TypeCheckService_1.default(e,i)}async buildAll(){var e=this.fileService.getAllComponentNames(),i=await this.getViteConfigs(e),t=(await this.typeCheck.all(),(0,array_1.arrayToChunks)(i,5));for(let e=0;e<t.length;e++)logger_1.default.info(`Building batch ${e+1}/${t.length}...`),await Promise.all(t[e].map(e=>(0,vite_1.build)(e))),this.logBuildSizes(t[e].map(e=>e.build.lib.fileName)),logger_1.default.info(`Batch ${e+1}/${t.length} finished`);return logger_1.default.info(`All ${e.length} components built successfully`),e}async build(e){e=Array.isArray(e)?e:[e];let i=this.fileService.getAllComponentNames();console.log(i);var t=e.filter(e=>!i.includes(e)),t=(t.length&&(logger_1.default.error(t.join(", ")+" components not found"),process.exit(-1)),await this.typeCheck.specificComponents(e),await this.getViteConfigs(e)),l=(0,array_1.arrayToChunks)(t,5);for(let e=0;e<l.length;e++)logger_1.default.info(`Building component batch ${e+1}/${l.length}...`),await Promise.all(l[e].map(e=>(0,vite_1.build)(e))),this.logBuildSizes(l[e].map(e=>e.build.lib.fileName)),logger_1.default.info(`Component Batch ${e+1}/${l.length} finished`);return logger_1.default.info(e.length+" component(s) built successfully"),e}async getViteConfigs(e){var i=path_1.default.resolve(process.cwd(),"vite.config.js");let l=await(0,vite_1.loadConfigFromFile)({command:"build",mode:"production"},i);if(l)return e.map(e=>{var i=this.fileService.getEntryOfComponent(e),t=(0,lodash_1.cloneDeep)(l.config);return t.build.lib={formats:["es"],fileName:e,entry:i},t.build.outDir=tempDirectory_1.BUILD_DIRECTORY,t.build.emptyOutDir=!1,t.mode="production",t.logLevel="warn",t});throw new Error("Vite config not found")}logBuildSizes(e){e.forEach(e=>{var i,t,l=path_1.default.join(tempDirectory_1.BUILD_DIRECTORY,e+".js");fs_1.default.existsSync(l)&&(i=(l=fs_1.default.readFileSync(l)).length,l=(0,zlib_1.gzipSync)(l).length,t=e=>e<1024?e+" B":e<1048576?(e/1024).toFixed(2)+" KB":(e/1048576).toFixed(2)+" MB",logger_1.default.info(` ${e}.js: ${t(i)} (gzip: ${t(l)})`))})}}exports.default=ExternalComponentBuildService;
@@ -1,2 +1,2 @@
1
- var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&("get"in o?t.__esModule:!o.writable&&!o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,o)}:function(e,t,r,i){e[i=void 0===i?r:i]=t[r]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||(()=>{var o=function(e){return(o=Object.getOwnPropertyNames||function(e){var t,r=[];for(t in e)Object.prototype.hasOwnProperty.call(e,t)&&(r[r.length]=t);return r})(e)};return function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r=o(e),i=0;i<r.length;i++)"default"!==r[i]&&__createBinding(t,e,r[i]);return __setModuleDefault(t,e),t}})(),__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});let FileService_1=__importDefault(require("../../../services/FileService")),vite_1=require("vite"),path_1=__importDefault(require("path")),lodash_1=require("lodash"),fs_1=__importDefault(require("fs")),https_1=__importDefault(require("https")),connect_1=__importDefault(require("connect")),child_process_1=require("child_process"),util_1=require("util"),chokidar_1=require("chokidar"),logger_1=__importDefault(require("../../../utils/logger")),TypeCheckService_1=__importDefault(require("./TypeCheckService")),ExternalComponentPublishService_1=__importDefault(require("./ExternalComponentPublishService")),execPromise=(0,util_1.promisify)(child_process_1.exec);class ExternalComponentWatchService{config;fileService;typeCheck;publishService;componentBuilds=new Map;componentWatchers=new Map;constructor(e,t,r){this.config=t,this.fileService=new FileService_1.default(t),this.typeCheck=new TypeCheckService_1.default(t,r),this.publishService=new ExternalComponentPublishService_1.default(e,t)}async watchAll(){logger_1.default.info("In watch all mode, it does not update the external components to local path");var e=this.fileService.getAllComponentNames();await this.watchComponents(e,!1)}async watchSingleComponent(e){await this.watchComponents([e])}async getOrCreateCertificate(){var e=path_1.default.resolve(process.cwd(),".vite-certs"),t=path_1.default.join(e,"key.pem"),r=path_1.default.join(e,"cert.pem");if(fs_1.default.existsSync(t)&&fs_1.default.existsSync(r))return{key:fs_1.default.readFileSync(t,"utf-8"),cert:fs_1.default.readFileSync(r,"utf-8")};fs_1.default.existsSync(e)||fs_1.default.mkdirSync(e,{recursive:!0});e=`openssl req -x509 -newkey rsa:2048 -keyout "${t}" -out "${r}" -days 365 -nodes -subj "/CN=localhost"`;try{return await execPromise(e),{key:fs_1.default.readFileSync(t,"utf-8"),cert:fs_1.default.readFileSync(r,"utf-8")}}catch(e){throw logger_1.default.error("Failed to generate certificate:",e),new Error("Failed to generate self-signed certificate. Make sure OpenSSL is installed.")}}setupFileWatcher(e,t){var r;this.componentWatchers.has(e)||(r=this.fileService.getEntryOfComponent(e),r=path_1.default.dirname(r),(r=(0,chokidar_1.watch)(r,{ignored:/(node_modules|\.git|\.vite-cache)/,awaitWriteFinish:{stabilityThreshold:100,pollInterval:100}})).on("change",()=>{logger_1.default.info(`
2
- šŸ“ File changed in ${e}, rebuilding`),this.componentBuilds.delete(e),this.buildComponent(e,t)}),this.componentWatchers.set(e,r))}async watchComponents(o,e=!0){let t=this.fileService.getAllComponentNames();var r=o.filter(e=>!t.includes(e)),r=(r.length&&(logger_1.default.error("Some components does not exists: "+r.join(", ")),process.exit(-1)),await Promise.resolve().then(()=>__importStar(require("vite")))).loadConfigFromFile,r=await r({command:"serve",mode:"development"},path_1.default.resolve(process.cwd(),"vite.config.js"));if(!r)throw new Error("Vite config not found");var i=this.config.port||4e3;e&&await this.publishService.publishToLocalPath("https://localhost:"+i,o);let n=(0,lodash_1.cloneDeep)(r.config),a=await(0,vite_1.createServer)({...n,server:{middlewareMode:!0}});e=(0,connect_1.default)(),e.use(async(t,r,e)=>{t=t.url.match(/^\/([a-zA-Z0-9_]+)\.js$/);if(t){t=t[1];if(!o.includes(t))return r.statusCode=404,void r.end("Component not found");try{this.setupFileWatcher(t,n);var i=await this.buildComponent(t,n);return r.setHeader("Content-Type","application/javascript"),r.setHeader("Access-Control-Allow-Origin","*"),r.setHeader("Cache-Control","no-cache, no-store, must-revalidate"),void r.end(i)}catch(e){return logger_1.default.error(`Error building ${t}:`,e),r.statusCode=500,void r.end("Error building component: "+e)}}e()}),e.use(a.middlewares),r=await this.getOrCreateCertificate();let l=https_1.default.createServer(r,e);l.listen(i,()=>{logger_1.default.info("\nāœ“ Dev server ready at https://localhost:4000"),logger_1.default.info("\nAvailable components:"),o.forEach(e=>{logger_1.default.info(` • https://localhost:4000/${e}.js`)})}),process.on("SIGINT",async()=>{logger_1.default.info("\nShutting down dev server...");for(var e of this.componentWatchers.values())await e.close();await a.close(),l.close(),process.exit(0)})}async buildComponent(t,e){if(this.componentBuilds.has(t))return this.componentBuilds.get(t);await this.typeCheck.specificComponents(t);var r=this.fileService.getEntryOfComponent(t),e=(0,lodash_1.cloneDeep)(e),r=(e.build={...e.build,lib:{formats:["es"],fileName:t,entry:r},outDir:path_1.default.resolve(process.cwd(),".vite-cache",t),emptyOutDir:!1,minify:!1},e.mode="development",e.logLevel="warn",logger_1.default.info(`Building ${t}...`),(0,vite_1.build)(e).then(()=>{var e=path_1.default.resolve(process.cwd(),".vite-cache",t,t+".js");return logger_1.default.info(t+" build finished"),fs_1.default.readFileSync(e,"utf-8")}));return this.componentBuilds.set(t,r),r}}exports.default=ExternalComponentWatchService;
1
+ var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var o=Object.getOwnPropertyDescriptor(t,r);o&&("get"in o?t.__esModule:!o.writable&&!o.configurable)||(o={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,o)}:function(e,t,r,i){e[i=void 0===i?r:i]=t[r]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||(()=>{var o=function(e){return(o=Object.getOwnPropertyNames||function(e){var t,r=[];for(t in e)Object.prototype.hasOwnProperty.call(e,t)&&(r[r.length]=t);return r})(e)};return function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r=o(e),i=0;i<r.length;i++)"default"!==r[i]&&__createBinding(t,e,r[i]);return __setModuleDefault(t,e),t}})(),__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});let FileService_1=__importDefault(require("../../../services/FileService")),vite_1=require("vite"),path_1=__importDefault(require("path")),lodash_1=require("lodash"),fs_1=__importDefault(require("fs")),https_1=__importDefault(require("https")),connect_1=__importDefault(require("connect")),chokidar_1=require("chokidar"),selfsigned_1=__importDefault(require("selfsigned")),logger_1=__importDefault(require("../../../utils/logger")),TypeCheckService_1=__importDefault(require("./TypeCheckService")),ExternalComponentPublishService_1=__importDefault(require("./ExternalComponentPublishService"));class ExternalComponentWatchService{config;fileService;typeCheck;publishService;componentBuilds=new Map;componentWatchers=new Map;constructor(e,t,r){this.config=t,this.fileService=new FileService_1.default(t),this.typeCheck=new TypeCheckService_1.default(t,r),this.publishService=new ExternalComponentPublishService_1.default(e,t)}async watchAll(){logger_1.default.info("In watch all mode, it does not update the external components to local path");var e=this.fileService.getAllComponentNames();await this.watchComponents(e,!1)}async watchSingleComponent(e){await this.watchComponents([e])}async getOrCreateCertificate(){var e=path_1.default.resolve(process.cwd(),".vite-certs"),t=path_1.default.join(e,"key.pem"),r=path_1.default.join(e,"cert.pem");if(fs_1.default.existsSync(t)&&fs_1.default.existsSync(r))return{key:fs_1.default.readFileSync(t,"utf-8"),cert:fs_1.default.readFileSync(r,"utf-8")};fs_1.default.existsSync(e)||fs_1.default.mkdirSync(e,{recursive:!0});try{var i=[{name:"commonName",value:"localhost"}],o=selfsigned_1.default.generate(i,{keySize:2048,days:365,algorithm:"sha256",extensions:[{name:"subjectAltName",altNames:[{type:2,value:"localhost"},{type:7,ip:"127.0.0.1"}]}]});return fs_1.default.writeFileSync(t,o.private),fs_1.default.writeFileSync(r,o.cert),{key:o.private,cert:o.cert}}catch(e){throw logger_1.default.error("Failed to generate certificate:",e),new Error("Failed to generate self-signed certificate.")}}setupFileWatcher(e,t){var r;this.componentWatchers.has(e)||(r=this.fileService.getEntryOfComponent(e),r=path_1.default.dirname(r),(r=(0,chokidar_1.watch)(r,{ignored:/(node_modules|\.git|\.vite-cache)/,awaitWriteFinish:{stabilityThreshold:100,pollInterval:100}})).on("change",()=>{logger_1.default.info(`
2
+ šŸ“ File changed in ${e}, rebuilding`),this.componentBuilds.delete(e),this.buildComponent(e,t)}),this.componentWatchers.set(e,r))}async watchComponents(o,e=!0){let t=this.fileService.getAllComponentNames();var r=o.filter(e=>!t.includes(e)),r=(r.length&&(logger_1.default.error("Some components does not exists: "+r.join(", ")),process.exit(-1)),await Promise.resolve().then(()=>__importStar(require("vite")))).loadConfigFromFile,r=await r({command:"serve",mode:"development"},path_1.default.resolve(process.cwd(),"vite.config.js"));if(!r)throw new Error("Vite config not found");var i=this.config.port||4e3;e&&await this.publishService.publishToLocalPath("https://localhost:"+i,o);let a=(0,lodash_1.cloneDeep)(r.config),n=await(0,vite_1.createServer)({...a,server:{middlewareMode:!0}});e=(0,connect_1.default)(),e.use(async(t,r,e)=>{t=t.url.match(/^\/([a-zA-Z0-9_]+)\.js$/);if(t){t=t[1];if(!o.includes(t))return r.statusCode=404,void r.end("Component not found");try{this.setupFileWatcher(t,a);var i=await this.buildComponent(t,a);return r.setHeader("Content-Type","application/javascript"),r.setHeader("Access-Control-Allow-Origin","*"),r.setHeader("Cache-Control","no-cache, no-store, must-revalidate"),void r.end(i)}catch(e){return logger_1.default.error(`Error building ${t}:`,e),r.statusCode=500,void r.end("Error building component: "+e)}}e()}),e.use(n.middlewares),r=await this.getOrCreateCertificate();let l=https_1.default.createServer(r,e);l.listen(i,()=>{logger_1.default.info("\nāœ“ Dev server ready at https://localhost:4000"),logger_1.default.info("\nAvailable components:"),o.forEach(e=>{logger_1.default.info(` • https://localhost:4000/${e}.js`)})}),process.on("SIGINT",async()=>{logger_1.default.info("\nShutting down dev server...");for(var e of this.componentWatchers.values())await e.close();await n.close(),l.close(),process.exit(0)})}async buildComponent(t,e){if(this.componentBuilds.has(t))return this.componentBuilds.get(t);await this.typeCheck.specificComponents(t);var r=this.fileService.getEntryOfComponent(t),e=(0,lodash_1.cloneDeep)(e),r=(e.build={...e.build,lib:{formats:["es"],fileName:t,entry:r},outDir:path_1.default.resolve(process.cwd(),".vite-cache",t),emptyOutDir:!1,minify:!1},e.mode="development",e.logLevel="warn",logger_1.default.info(`Building ${t}...`),(0,vite_1.build)(e).then(()=>{var e=path_1.default.resolve(process.cwd(),".vite-cache",t,t+".js");return logger_1.default.info(t+" build finished"),fs_1.default.readFileSync(e,"utf-8")}));return this.componentBuilds.set(t,r),r}}exports.default=ExternalComponentWatchService;
@@ -1 +1 @@
1
- Object.defineProperty(exports,"__esModule",{value:!0}),exports.moveComponent=void 0;let fs_1=require("fs"),moveComponent=(e,o)=>{var n;e.endsWith(o)||((0,fs_1.existsSync)(o)||(0,fs_1.mkdirSync)(o),n=e.split("/").pop(),(0,fs_1.renameSync)(e,o+"/"+n))};exports.moveComponent=moveComponent;
1
+ var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.moveComponent=void 0;let fs_1=require("fs"),path_1=__importDefault(require("path")),moveComponent=(e,t)=>{var o;e.endsWith(t)||((0,fs_1.existsSync)(t)||(0,fs_1.mkdirSync)(t),o=e.split(path_1.default.sep).pop(),(0,fs_1.renameSync)(e,""+t+path_1.default.sep+o))};exports.moveComponent=moveComponent;
@@ -1,4 +1,4 @@
1
- var __importDefault=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(exports,"__esModule",{value:!0});let glob_1=require("glob"),path_1=__importDefault(require("path")),prettier_1=__importDefault(require("prettier")),tempDirectory_js_1=require("../config/tempDirectory.js"),api_1=require("tsx/esm/api"),fs_1=require("fs");class FileService{config;constructor(t){this.config=t}getAllComponentPaths(t="*.config.ts"){return(0,glob_1.sync)(this.config.componentDir+"/**/"+t)}getAllComponentNames(t="*.config.ts"){return this.getAllComponentPaths(t).map(t=>{t=t.split("/");return t[t.length-2]})}getDirectoryOfComponent(t){var t=(0,glob_1.sync)(this.config.componentDir+`/**/${t}/*.tsx`)[0];return t?((t=t.split("/")).pop(),t.join("/")):null}getComponentConfig(t){return(0,glob_1.sync)(this.config.componentDir+`/**/${t}/*.config.ts`)[0]}getComponentBuild(t,e=!0){t=(0,glob_1.sync)(tempDirectory_js_1.BUILD_DIRECTORY+`/${t}.js`)[0];return e?t&&this.getAbsolutePath(t):t}getEntryOfComponent(t){return(0,glob_1.sync)(this.config.componentDir+`/**/${t}/*.tsx`)[0]}getScriptConfig(t){return(0,glob_1.sync)(this.config.scriptDir+`/${t}/*.config.ts`)[0]}getScriptContent(t){return(0,glob_1.sync)(this.config.scriptDir+`/${t}/*.cs`)[0]}getAbsolutePath(t){return path_1.default.isAbsolute(t)?t:path_1.default.resolve(process.cwd(),t)}async tsFileImport(t,e){t=this.getAbsolutePath(t),e=e?this.getAbsolutePath(e):void 0;return(await(0,api_1.tsImport)(t,t,{tsconfig:e})).default}async writeScript(t,e,i){var r=this.config.scriptDir+"/"+t,o=((0,fs_1.existsSync)(r)||(0,fs_1.mkdirSync)(r,{recursive:!0}),r+`/${t}.config.ts`);(0,fs_1.writeFileSync)(o,`
1
+ var __importDefault=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(exports,"__esModule",{value:!0});let glob_1=require("glob"),path_1=__importDefault(require("path")),url_1=require("url"),prettier_1=__importDefault(require("prettier")),tempDirectory_js_1=require("../config/tempDirectory.js"),api_1=require("tsx/esm/api"),fs_1=require("fs");class FileService{config;constructor(t){this.config=t}getAllComponentPaths(t="*.config.ts"){return(0,glob_1.sync)(this.config.componentDir+"/**/"+t)}getAllComponentNames(t="*.config.ts"){return this.getAllComponentPaths(t).map(t=>{t=t.split(path_1.default.sep),console.log(t),t=t[t.length-2];return t})}getDirectoryOfComponent(t){var t=(0,glob_1.sync)(this.config.componentDir+`/**/${t}/*.tsx`)[0];return t?((t=t.split(path_1.default.sep)).pop(),t.join(path_1.default.sep)):null}getComponentConfig(t){return(0,glob_1.sync)(this.config.componentDir+`/**/${t}/*.config.ts`)[0]}getComponentBuild(t,e=!0){t=(0,glob_1.sync)(tempDirectory_js_1.BUILD_DIRECTORY+`/${t}.js`)[0];return e?t&&this.getAbsolutePath(t):t}getEntryOfComponent(t){return(0,glob_1.sync)(this.config.componentDir+`/**/${t}/*.tsx`)[0]}getScriptConfig(t){return(0,glob_1.sync)(this.config.scriptDir+`/${t}/*.config.ts`)[0]}getScriptContent(t){return(0,glob_1.sync)(this.config.scriptDir+`/${t}/*.cs`)[0]}getAbsolutePath(t){return path_1.default.isAbsolute(t)?t:path_1.default.resolve(process.cwd(),t)}async tsFileImport(t,e){t=this.getAbsolutePath(t),e=e?this.getAbsolutePath(e):void 0,t=(0,url_1.pathToFileURL)(t).href,e=e?(0,url_1.pathToFileURL)(e).href:void 0;return(await(0,api_1.tsImport)(t,t,{tsconfig:e})).default}async writeScript(t,e,i){var r=this.config.scriptDir+"/"+t,o=((0,fs_1.existsSync)(r)||(0,fs_1.mkdirSync)(r,{recursive:!0}),r+`/${t}.config.ts`);(0,fs_1.writeFileSync)(o,`
2
2
  import { type ActionScriptConfig } from "@digital-herd/content-hub-cli";
3
3
  export default {
4
4
  identifier: "${i.identifier}",
@@ -1 +1 @@
1
- var __importDefault=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.getCliConfig=getCliConfig;let path_1=__importDefault(require("path")),api_1=require("tsx/esm/api"),logger_js_1=__importDefault(require("./logger.js"));async function getCliConfig(e="contenthubConfig.build.config.ts"){e=path_1.default.isAbsolute(e)?e:path_1.default.resolve(process.cwd(),e);try{var t=(await(0,api_1.tsImport)(e,e)).default;return t.default?t.default:t}catch(t){throw logger_js_1.default.error("Failed to load config at "+e),t}}
1
+ var __importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0}),exports.getCliConfig=getCliConfig;let path_1=__importDefault(require("path")),url_1=require("url"),api_1=require("tsx/esm/api"),logger_js_1=__importDefault(require("./logger.js"));async function getCliConfig(t="contenthubConfig.build.config.ts"){t=path_1.default.isAbsolute(t)?t:path_1.default.resolve(process.cwd(),t);try{var e=(0,url_1.pathToFileURL)(t).href,r=(await(0,api_1.tsImport)(e,e)).default;return r.default?r.default:r}catch(e){throw logger_js_1.default.error("Failed to load config at "+t),e}}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@digital-herd/content-hub-cli",
3
3
  "description": "CLI tools for managing Sitecore Content Hub external components and scripts",
4
- "version": "1.1.3",
4
+ "version": "1.1.5",
5
5
  "type": "commonjs",
6
6
  "main": "./lib/index.js",
7
7
  "types": "./lib/index.d.ts",
@@ -33,16 +33,17 @@
33
33
  "glob": "^13.0.0",
34
34
  "lodash": "^4.17.21",
35
35
  "prettier": "^3.8.1",
36
+ "selfsigned": "^2.4.1",
36
37
  "tslog": "^4.10.2",
37
38
  "tsx": "^4.7.0",
38
- "uglify-js": "^3.19.3",
39
39
  "vite": "^7.3.1"
40
40
  },
41
41
  "devDependencies": {
42
42
  "@types/connect": "^3.4.38",
43
43
  "@types/lodash": "^4.17.23",
44
44
  "ts-node": "^10.9.2",
45
- "typescript": "^5.3.3"
45
+ "typescript": "^5.3.3",
46
+ "uglify-js": "^3.19.3"
46
47
  },
47
48
  "peerDependencies": {
48
49
  "@sitecore/sc-contenthub-webclient-sdk": "^1.2.96"