@budibase/cli 3.23.34 → 3.23.35
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/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1547,7 +1547,7 @@ ${e}
|
|
|
1547
1547
|
</style>
|
|
1548
1548
|
`;na.default.writeFileSync(e,n);let i=Iy.default.join(Iy.default.dirname(e),"Boundary.js");if(na.default.existsSync(i))try{na.default.unlinkSync(i)}catch(o){console.log("Failed to delete legacy Boundary.js:",o instanceof Error?o.message:o)}return{changed:!0,before:t,after:n,message:`Updated ${e} to use <svelte:boundary> and $$restProps.`}}s(lZu,"migrateWrapper");function fZu(){let e=Iy.default.join(process.cwd(),"package.json");if(!na.default.existsSync(e))return{changed:!1,message:"package.json not found"};let t=na.default.readFileSync(e,"utf8"),r;try{r=JSON.parse(t)}catch(f){return{changed:!1,message:`Invalid package.json: ${f?.message||"parse error"}`}}let n=JSON.stringify(r,null,2),i=typeof r.version=="string"?r.version.trim():void 0,o=_ts(i);r.dependencies||(r.dependencies={}),r.dependencies.svelte="^5.0.0",r.peerDependencies={...r.peerDependencies||{},svelte:"^5.0.0"};let a=r.devDependencies||{};a.rollup="^4.21.0",a["@rollup/plugin-commonjs"]="^25.0.7",a["@rollup/plugin-node-resolve"]="^15.2.3",a["rollup-plugin-svelte"]="^7.2.3",a["npm-run-all"]&&delete a["npm-run-all"],r.devDependencies=a,r.scripts||(r.scripts={}),r.scripts.build="rollup -c rollup.config.mjs",r.scripts.watch="rollup -cw rollup.config.mjs",o&&(r.version=o);let c=JSON.stringify(r,null,2);if(n===c)return{changed:!1,message:"package.json already appears Svelte 5 ready. Skipping."};na.default.writeFileSync(`${e}.pre-svelte5`,t),na.default.writeFileSync(e,`${c}
|
|
1549
1549
|
`);let u=i&&o?` (version ${i} -> ${o})`:"",l=o?`Updated package.json for Svelte 5, Rollup 4, scripts, and version bump${u}.`:"Updated package.json for Svelte 5, Rollup 4, and scripts.";return{changed:!0,before:n,after:c,message:l}}s(fZu,"migratePackageJson");function dZu(){let e=Iy.default.join(process.cwd(),"schema.json");if(!na.default.existsSync(e))return{changed:!1,message:"schema.json not found - skipping schema metadata migration."};let t=na.default.readFileSync(e,"utf8"),r;try{r=JSON.parse(t)}catch(u){return{changed:!1,message:`Invalid schema.json: ${u?.message||"parse error"}`}}let n=r&&typeof r.metadata=="object"&&!Array.isArray(r.metadata)?r.metadata:{};if(!(n?.svelteMajor!==5))return{changed:!1,message:"schema.json metadata already includes svelteMajor: 5. Skipping."};let o=JSON.stringify(r,null,2),a={...n,svelteMajor:5};r.metadata=a;let c=JSON.stringify(r,null,2);return na.default.writeFileSync(`${e}.pre-svelte5`,t),na.default.writeFileSync(e,`${c}
|
|
1550
|
-
`),{changed:!0,before:o,after:c,message:"Updated schema.json metadata to include svelteMajor: 5."}}s(dZu,"migrateSchemaJson");async function wts(){let e=[],t=na.default.readFileSync("package.json","utf8"),r=JSON.parse(t),n=r?.dependencies?.svelte?.startsWith("^5")||r?.peerDependencies?.svelte?.startsWith("^5"),i=typeof r?.version=="string"?r.version.trim():void 0,o=_ts(i);n?e.push("package.json appears to already depend on Svelte 5."):e.push("Will bump svelte to ^5.0.0 and align dev/peer dependencies."),o&&i&&o!==i&&e.push(`Will bump package.json version from ${i} to ${o}.`);let a=Ets(),c="unknown";if(a){let p=na.default.readFileSync(a,"utf8");bts(p)?(c="looks-new",e.push(`Rollup config ${a} already looks Svelte 5-ready.`)):(c="needs-migration",e.push("Will write Rollup 4 / Svelte 5 config and rename to rollup.config.mjs."))}else c="unknown",e.push("No rollup config found - will create rollup.config.mjs.");let u=Sts(),l="not-found";u?na.default.readFileSync(u,"utf8").includes("<svelte:boundary>")?(l="looks-new",e.push(`${u} already uses <svelte:boundary>.`)):(l="needs-migration",e.push(`Will update ${u} to use <svelte:boundary>, $$restProps, and error UI.`)):e.push("No wrapper.svelte found - skipping wrapper migration.");let f="unknown";if(na.default.existsSync("schema.json"))try{let p=na.default.readFileSync("schema.json","utf8"),h=JSON.parse(p);(h&&typeof h.metadata=="object"&&!Array.isArray(h.metadata)?h.metadata:{}).svelteMajor===5?(f="looks-new",e.push("schema.json metadata already declares svelteMajor: 5.")):(f="needs-migration",e.push("Will update schema.json metadata to set svelteMajor: 5."))}catch(p){f="unknown",e.push(`schema.json could not be parsed - please fix JSON before migration (${p?.message||"parse error"}).`)}else f="not-found",e.push("schema.json not found - cannot update metadata.");return{report:e,rollup:c,packageJson:n?"looks-new":"needs-migration",wrapper:l,schema:f,canBuildAfter:!0,rollupFile:a,wrapperFile:u,pkg:r}}s(wts,"analysePluginForSvelte5");async function Tts(){let e=fZu(),t=dZu(),r=await uZu(),n=lZu();return{pkgRes:e,schemaRes:t,rollupRes:r,wrapperRes:n}}s(Tts,"runSvelte5Migration");var Cts=require("child_process");var pZu=require("find-free-port");function xts(){if(!yH.default.existsSync("package.json"))throw new Error("Please run in a plugin directory - must contain package.json");if(!yH.default.existsSync("schema.json"))throw new Error("Please run in a plugin directory - must contain schema.json")}s(xts,"checkInPlugin");async function hZu(e){return yH.default.readdirSync(process.cwd()).find(r=>r===".git")?!1:(console.log(Ps(`By default the plugin will be created in the directory "${e}"`)),console.log(Ps("if you are already in an empty directory, such as a new Git repo, you can disable this functionality.")),JS("Create top level directory?"))}s(hZu,"askAboutTopLevel");async function mZu(e){let t=e.init||e;if(!t||!qZt.includes(t)){console.log(Bc("Please provide a type to init, either 'component', 'datasource' or 'automation'."));return}console.log(Ps("Lets get some details about your new plugin:"));let r=await oL("Name",`budibase-${t}`);if(yH.default.existsSync(r)){console.log(Bc("Directory by plugin name already exists, pick a new name."));return}let n=await oL("Description",`An amazing Budibase ${t}!`),i=await oL("Version","1.0.0"),o=await hZu(r);console.log(Ps("Retrieving project...")),await IGe(t,r),await pts(t,r,n,i),console.log(Ps("Installing dependencies...")),await x7("install",(0,RGe.join)(process.cwd(),r)),o?console.log(Ps(`Plugin created in directory "${r}"`)):(NVe(r,process.cwd()),console.log(Ps("Plugin created in current directory."))),Ahe(Cx.PluginInit,{type:t,name:r,description:n,version:i})}s(mZu,"init");async function MYt(){xts(),console.log(Ps("Verifying plugin..."));let e=yH.default.readFileSync("schema.json","utf8"),t=yH.default.readFileSync("package.json","utf8"),r,n;try{let i=JSON.parse(e),o=JSON.parse(t);if(!o.name||!o.version||!o.description)throw new Error("package.json is missing one of 'name', 'version' or 'description'.");return r=o.name,n=o.version,B2e.validate(i),{name:r,version:n}}catch(i){i&&i.message&&i.message.includes("not valid JSON")?console.log(Bc(`schema.json is not valid JSON: ${i.message}`)):console.log(Bc(`Invalid schema/package.json: ${i.message}`))}}s(MYt,"verify");async function gZu(){let e=await MYt();if(!e?.name)return;console.log(Mc("Verified!")),console.log(Ps("Building plugin...")),await x7("build");let t=(0,RGe.join)("dist",`${e.name}-${e.version}.tar.gz`);console.log(Mc(`Build complete - output in: ${t}`))}s(gZu,"build");async function AZu(){let e=await MYt();if(!e?.name)return;let t=(0,RGe.join)("dist",`${e.name}-${e.version}.tar.gz`);console.log(Ps(`Watching - build in: ${t}`));try{await x7("watch")}catch{console.log(Mc("Watch exited."))}}s(AZu,"watch");async function yZu(){let e=await oL("Directory to watch","./"),[t]=await pZu(1e4),r="admin";await vhe({init:"quick",single:!0,watchPluginDir:e,genUser:r,port:t,silent:!0}),await BH(),console.log(Mc("Configuration has been written to docker-compose.yaml")),console.log(Mc("Development environment started successfully - connect at: ")+Ps(`http://localhost:${t}`)),console.log(Mc("Use the following credentials to login:")),console.log(Mc("Email: ")+Ps(WVe)),console.log(Mc("Password: ")+Ps(r))}s(yZu,"dev");async function _Zu(){xts();let e=!1;try{e=!!(0,Cts.execSync)("git status --porcelain",{encoding:"utf8"}).trim()}catch{}if(e&&!process.argv.includes("--force")&&(console.log(Ps("Your git working directory is not clean. Commit or stash changes, or re-run with --force.")),!await JS("Proceed with migration anyway?"))){console.log(Ps("Migration aborted."));return}console.log(Ps("Analyzing plugin for Svelte 5 migration..."));let t=await wts();console.log(Ps("Proposed changes:"));for(let i of t.report)console.log(Ps(" - "+i));if(!process.argv.includes("--yes")&&!await JS("Apply these changes now?")){console.log(Ps("Migration aborted by user."));return}console.log(Ps("Applying migrations..."));let r=await Tts();if(r.pkgRes?.message&&console.log(Ps(r.pkgRes.message)),r.schemaRes?.message&&console.log(Ps(r.schemaRes.message)),r.rollupRes?.message&&console.log(Ps(r.rollupRes.message)),r.wrapperRes?.message&&console.log(Ps(r.wrapperRes.message)),console.log(Ps("Installing updated dependencies...")),await x7("install"),console.log(Ps("Re-verifying plugin...")),!(await MYt())?.name){console.log(Bc("Verification failed after migration."));return}console.log(Ps("Attempting build..."));try{await x7("build"),console.log(Mc("Migration completed. Your plugin was migrated to Svelte 5 and built successfully."))}catch(i){console.log(Bc(`Build failed after migration. Please review the errors above. ${i?.message||""}`))}}s(_Zu,"migrateSvelte5");var Its=new KS("plugins").addHelp("Custom plugins for Budibase, init, build and verify your components and datasources with this tool.").addSubOption("--init [type]","Init a new plugin project, with a type of either component or datasource.",mZu).addSubOption("--build","Build your plugin, this will verify and produce a final tarball for your project.",gZu).addSubOption("--watch","Automatically build any changes to your plugin.",AZu).addSubOption("--dev","Run a development environment which automatically watches the current directory.",yZu).addSubOption("--migrate-svelte5","Migrate this plugin to the Svelte 5-compatible Budibase plugin format.",_Zu);function Rts(){return[Ktr,Ttr,QYi,Its]}s(Rts,"getCommands");var kts=require("commander");Ud();var Ots="3.23.
|
|
1550
|
+
`),{changed:!0,before:o,after:c,message:"Updated schema.json metadata to include svelteMajor: 5."}}s(dZu,"migrateSchemaJson");async function wts(){let e=[],t=na.default.readFileSync("package.json","utf8"),r=JSON.parse(t),n=r?.dependencies?.svelte?.startsWith("^5")||r?.peerDependencies?.svelte?.startsWith("^5"),i=typeof r?.version=="string"?r.version.trim():void 0,o=_ts(i);n?e.push("package.json appears to already depend on Svelte 5."):e.push("Will bump svelte to ^5.0.0 and align dev/peer dependencies."),o&&i&&o!==i&&e.push(`Will bump package.json version from ${i} to ${o}.`);let a=Ets(),c="unknown";if(a){let p=na.default.readFileSync(a,"utf8");bts(p)?(c="looks-new",e.push(`Rollup config ${a} already looks Svelte 5-ready.`)):(c="needs-migration",e.push("Will write Rollup 4 / Svelte 5 config and rename to rollup.config.mjs."))}else c="unknown",e.push("No rollup config found - will create rollup.config.mjs.");let u=Sts(),l="not-found";u?na.default.readFileSync(u,"utf8").includes("<svelte:boundary>")?(l="looks-new",e.push(`${u} already uses <svelte:boundary>.`)):(l="needs-migration",e.push(`Will update ${u} to use <svelte:boundary>, $$restProps, and error UI.`)):e.push("No wrapper.svelte found - skipping wrapper migration.");let f="unknown";if(na.default.existsSync("schema.json"))try{let p=na.default.readFileSync("schema.json","utf8"),h=JSON.parse(p);(h&&typeof h.metadata=="object"&&!Array.isArray(h.metadata)?h.metadata:{}).svelteMajor===5?(f="looks-new",e.push("schema.json metadata already declares svelteMajor: 5.")):(f="needs-migration",e.push("Will update schema.json metadata to set svelteMajor: 5."))}catch(p){f="unknown",e.push(`schema.json could not be parsed - please fix JSON before migration (${p?.message||"parse error"}).`)}else f="not-found",e.push("schema.json not found - cannot update metadata.");return{report:e,rollup:c,packageJson:n?"looks-new":"needs-migration",wrapper:l,schema:f,canBuildAfter:!0,rollupFile:a,wrapperFile:u,pkg:r}}s(wts,"analysePluginForSvelte5");async function Tts(){let e=fZu(),t=dZu(),r=await uZu(),n=lZu();return{pkgRes:e,schemaRes:t,rollupRes:r,wrapperRes:n}}s(Tts,"runSvelte5Migration");var Cts=require("child_process");var pZu=require("find-free-port");function xts(){if(!yH.default.existsSync("package.json"))throw new Error("Please run in a plugin directory - must contain package.json");if(!yH.default.existsSync("schema.json"))throw new Error("Please run in a plugin directory - must contain schema.json")}s(xts,"checkInPlugin");async function hZu(e){return yH.default.readdirSync(process.cwd()).find(r=>r===".git")?!1:(console.log(Ps(`By default the plugin will be created in the directory "${e}"`)),console.log(Ps("if you are already in an empty directory, such as a new Git repo, you can disable this functionality.")),JS("Create top level directory?"))}s(hZu,"askAboutTopLevel");async function mZu(e){let t=e.init||e;if(!t||!qZt.includes(t)){console.log(Bc("Please provide a type to init, either 'component', 'datasource' or 'automation'."));return}console.log(Ps("Lets get some details about your new plugin:"));let r=await oL("Name",`budibase-${t}`);if(yH.default.existsSync(r)){console.log(Bc("Directory by plugin name already exists, pick a new name."));return}let n=await oL("Description",`An amazing Budibase ${t}!`),i=await oL("Version","1.0.0"),o=await hZu(r);console.log(Ps("Retrieving project...")),await IGe(t,r),await pts(t,r,n,i),console.log(Ps("Installing dependencies...")),await x7("install",(0,RGe.join)(process.cwd(),r)),o?console.log(Ps(`Plugin created in directory "${r}"`)):(NVe(r,process.cwd()),console.log(Ps("Plugin created in current directory."))),Ahe(Cx.PluginInit,{type:t,name:r,description:n,version:i})}s(mZu,"init");async function MYt(){xts(),console.log(Ps("Verifying plugin..."));let e=yH.default.readFileSync("schema.json","utf8"),t=yH.default.readFileSync("package.json","utf8"),r,n;try{let i=JSON.parse(e),o=JSON.parse(t);if(!o.name||!o.version||!o.description)throw new Error("package.json is missing one of 'name', 'version' or 'description'.");return r=o.name,n=o.version,B2e.validate(i),{name:r,version:n}}catch(i){i&&i.message&&i.message.includes("not valid JSON")?console.log(Bc(`schema.json is not valid JSON: ${i.message}`)):console.log(Bc(`Invalid schema/package.json: ${i.message}`))}}s(MYt,"verify");async function gZu(){let e=await MYt();if(!e?.name)return;console.log(Mc("Verified!")),console.log(Ps("Building plugin...")),await x7("build");let t=(0,RGe.join)("dist",`${e.name}-${e.version}.tar.gz`);console.log(Mc(`Build complete - output in: ${t}`))}s(gZu,"build");async function AZu(){let e=await MYt();if(!e?.name)return;let t=(0,RGe.join)("dist",`${e.name}-${e.version}.tar.gz`);console.log(Ps(`Watching - build in: ${t}`));try{await x7("watch")}catch{console.log(Mc("Watch exited."))}}s(AZu,"watch");async function yZu(){let e=await oL("Directory to watch","./"),[t]=await pZu(1e4),r="admin";await vhe({init:"quick",single:!0,watchPluginDir:e,genUser:r,port:t,silent:!0}),await BH(),console.log(Mc("Configuration has been written to docker-compose.yaml")),console.log(Mc("Development environment started successfully - connect at: ")+Ps(`http://localhost:${t}`)),console.log(Mc("Use the following credentials to login:")),console.log(Mc("Email: ")+Ps(WVe)),console.log(Mc("Password: ")+Ps(r))}s(yZu,"dev");async function _Zu(){xts();let e=!1;try{e=!!(0,Cts.execSync)("git status --porcelain",{encoding:"utf8"}).trim()}catch{}if(e&&!process.argv.includes("--force")&&(console.log(Ps("Your git working directory is not clean. Commit or stash changes, or re-run with --force.")),!await JS("Proceed with migration anyway?"))){console.log(Ps("Migration aborted."));return}console.log(Ps("Analyzing plugin for Svelte 5 migration..."));let t=await wts();console.log(Ps("Proposed changes:"));for(let i of t.report)console.log(Ps(" - "+i));if(!process.argv.includes("--yes")&&!await JS("Apply these changes now?")){console.log(Ps("Migration aborted by user."));return}console.log(Ps("Applying migrations..."));let r=await Tts();if(r.pkgRes?.message&&console.log(Ps(r.pkgRes.message)),r.schemaRes?.message&&console.log(Ps(r.schemaRes.message)),r.rollupRes?.message&&console.log(Ps(r.rollupRes.message)),r.wrapperRes?.message&&console.log(Ps(r.wrapperRes.message)),console.log(Ps("Installing updated dependencies...")),await x7("install"),console.log(Ps("Re-verifying plugin...")),!(await MYt())?.name){console.log(Bc("Verification failed after migration."));return}console.log(Ps("Attempting build..."));try{await x7("build"),console.log(Mc("Migration completed. Your plugin was migrated to Svelte 5 and built successfully."))}catch(i){console.log(Bc(`Build failed after migration. Please review the errors above. ${i?.message||""}`))}}s(_Zu,"migrateSvelte5");var Its=new KS("plugins").addHelp("Custom plugins for Budibase, init, build and verify your components and datasources with this tool.").addSubOption("--init [type]","Init a new plugin project, with a type of either component or datasource.",mZu).addSubOption("--build","Build your plugin, this will verify and produce a final tarball for your project.",gZu).addSubOption("--watch","Automatically build any changes to your plugin.",AZu).addSubOption("--dev","Run a development environment which automatically watches the current directory.",yZu).addSubOption("--migrate-svelte5","Migrate this plugin to the Svelte 5-compatible Budibase plugin format.",_Zu);function Rts(){return[Ktr,Ttr,QYi,Its]}s(Rts,"getCommands");var kts=require("commander");Ud();var Ots="3.23.35";async function bZu(){let e=new kts.Command().addHelpCommand("help",G7("Help with Budibase commands.")).helpOption(!1).version(Ots);for(let t of Rts())t.configure(e);await e.parseAsync(process.argv)}s(bZu,"init");var vZu=["exit","SIGINT","SIGUSR1","SIGUSR2","uncaughtException"];vZu.forEach(e=>{process.on(e,t=>{t&&!isNaN(t)||t&&(console.error(Bc("Failed to run CLI command - please report with the following message:")),console.error(Bc(t)))})});bZu().catch(e=>{console.error("Unexpected error - ",e)});
|
|
1551
1551
|
/*! Bundled license information:
|
|
1552
1552
|
|
|
1553
1553
|
lodash/lodash.js:
|