@cmflow/cli 3.4.0-beta.3 → 3.4.0-beta.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/dist/common-DvEL7rzl.mjs +2 -0
- package/dist/{common-Dm4NPnuV.mjs.map → common-DvEL7rzl.mjs.map} +1 -1
- package/dist/{compile-packages-C3W4j84x.mjs → compile-packages-Cd19TaUb.mjs} +2 -2
- package/dist/{compile-packages-C3W4j84x.mjs.map → compile-packages-Cd19TaUb.mjs.map} +1 -1
- package/dist/{docker-clean-tags-BM66YJe3.mjs → docker-clean-tags-C8fsKmA7.mjs} +2 -2
- package/dist/{docker-clean-tags-BM66YJe3.mjs.map → docker-clean-tags-C8fsKmA7.mjs.map} +1 -1
- package/dist/docker-nm7ubWPx.mjs +34 -0
- package/dist/docker-nm7ubWPx.mjs.map +1 -0
- package/dist/{docker-publish-DCVRkc5l.mjs → docker-publish-CwInm1oK.mjs} +2 -2
- package/dist/{docker-publish-DCVRkc5l.mjs.map → docker-publish-CwInm1oK.mjs.map} +1 -1
- package/dist/{find-packages-MKlLERHA.mjs → find-packages-CCoDSkVV.mjs} +10 -10
- package/dist/{find-packages-MKlLERHA.mjs.map → find-packages-CCoDSkVV.mjs.map} +1 -1
- package/dist/get-config-D9xSS1Lq.mjs +9 -0
- package/dist/{get-config-sVSMVDr6.mjs.map → get-config-D9xSS1Lq.mjs.map} +1 -1
- package/dist/index-MmHuVKDa.d.mts +266 -0
- package/dist/index.d.mts +2066 -0
- package/dist/index.mjs +32 -0
- package/dist/index.mjs.map +1 -0
- package/dist/{npm-DHki_SHg.mjs → npm-BKRyPuCX.mjs} +2 -2
- package/dist/{npm-DHki_SHg.mjs.map → npm-BKRyPuCX.mjs.map} +1 -1
- package/dist/rolldown-runtime-Csi-cuKc.mjs +1 -0
- package/dist/semantic/core/analyze-commits.d.mts +6 -0
- package/dist/semantic/core/analyze-commits.mjs +2 -0
- package/dist/semantic/core/analyze-commits.mjs.map +1 -0
- package/dist/semantic/core/conditional.d.mts +15 -0
- package/dist/semantic/core/conditional.mjs +2 -0
- package/dist/semantic/core/conditional.mjs.map +1 -0
- package/dist/semantic/core/exit.d.mts +6 -0
- package/dist/semantic/core/exit.mjs +2 -0
- package/dist/semantic/core/exit.mjs.map +1 -0
- package/dist/semantic/core/prepare/artifacts.d.mts +6 -0
- package/dist/semantic/core/prepare/artifacts.mjs +2 -0
- package/dist/semantic/core/prepare/artifacts.mjs.map +1 -0
- package/dist/semantic/core/prepare/bump-version.d.mts +6 -0
- package/dist/semantic/core/prepare/bump-version.mjs +2 -0
- package/dist/semantic/core/prepare/bump-version.mjs.map +1 -0
- package/dist/semantic/core/prepare/commit.d.mts +6 -0
- package/dist/semantic/core/prepare/commit.mjs +2 -0
- package/dist/semantic/core/prepare/commit.mjs.map +1 -0
- package/dist/semantic/core/prepare/release-info.d.mts +8 -0
- package/dist/semantic/core/prepare/release-info.mjs +2 -0
- package/dist/semantic/core/prepare/release-info.mjs.map +1 -0
- package/dist/semantic/core/publish-packages.d.mts +10 -0
- package/dist/semantic/core/publish-packages.mjs +5 -0
- package/dist/semantic/core/publish-packages.mjs.map +1 -0
- package/dist/semantic/core/push-release.d.mts +7 -0
- package/dist/semantic/core/push-release.mjs +2 -0
- package/dist/semantic/core/push-release.mjs.map +1 -0
- package/dist/semantic/core/run.d.mts +13 -0
- package/dist/semantic/core/run.mjs +2 -0
- package/dist/semantic/core/run.mjs.map +1 -0
- package/dist/semantic/core/sync-repository.d.mts +6 -0
- package/dist/semantic/core/sync-repository.mjs +2 -0
- package/dist/semantic/core/sync-repository.mjs.map +1 -0
- package/dist/semantic/core/verify-conditions.d.mts +6 -0
- package/dist/semantic/core/verify-conditions.mjs +2 -0
- package/dist/semantic/core/verify-conditions.mjs.map +1 -0
- package/dist/semantic/core/verify-release.d.mts +6 -0
- package/dist/semantic/core/verify-release.mjs +2 -0
- package/dist/semantic/core/verify-release.mjs.map +1 -0
- package/dist/semantic/docker/publish.d.mts +6 -0
- package/dist/semantic/docker/publish.mjs +2 -0
- package/dist/semantic/docker/publish.mjs.map +1 -0
- package/dist/semantic/docker/success.d.mts +6 -0
- package/dist/semantic/docker/success.mjs +2 -0
- package/dist/semantic/docker/success.mjs.map +1 -0
- package/dist/semver-Bgw8dAW8.mjs +2 -0
- package/dist/{semver-DfG5T6W4.mjs.map → semver-Bgw8dAW8.mjs.map} +1 -1
- package/dist/source-CHDdP5eQ.mjs +7 -0
- package/dist/{source-CZqdi7bj.mjs.map → source-CHDdP5eQ.mjs.map} +1 -1
- package/dist/{write-package-DiCHz3W9.mjs → write-package-z7IDmENp.mjs} +6 -6
- package/dist/{write-package-DiCHz3W9.mjs.map → write-package-z7IDmENp.mjs.map} +1 -1
- package/dist/{write-packages-CR0XLQhM.mjs → write-packages--jWqJCd-.mjs} +4 -4
- package/dist/{write-packages-CR0XLQhM.mjs.map → write-packages--jWqJCd-.mjs.map} +1 -1
- package/package.json +12 -5
- package/dist/common-Dm4NPnuV.mjs +0 -2
- package/dist/docker-DIPmaasN.mjs +0 -34
- package/dist/docker-DIPmaasN.mjs.map +0 -1
- package/dist/get-config-sVSMVDr6.mjs +0 -9
- package/dist/semver-DfG5T6W4.mjs +0 -2
- package/dist/source-CZqdi7bj.mjs +0 -7
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{i as e}from"./rolldown-runtime-Csi-cuKc.mjs";import{S as t,T as n,n as r,w as i}from"./get-config-D9xSS1Lq.mjs";import"./docker-nm7ubWPx.mjs";import{t as a}from"./npm-BKRyPuCX.mjs";import{t as o}from"./source-CHDdP5eQ.mjs";import{existsSync as s}from"node:fs";import{dirname as c,join as l,resolve as u}from"node:path";import{cancel as d,isCancel as f,log as p,spinner as m}from"@clack/prompts";import{pathToFileURL as h}from"node:url";const g=new class extends i{constructor(){super(`bun`)}newVersion(e){return this.pm(`version`,`--no-git-tag-version`,e)}pm(...e){return this.sync(`pm`,...e)}run(...e){return super.run(`run`,...e)}install(...e){return super.run(`install`,...e)}restore(){return super.run(`install`,`--frozen-lockfile`)}},_=new class extends i{constructor(){super(`lerna`)}newVersion(e){return this.version(e,`--exact`,`--yes`,`--no-git-tag-version`,`--no-push`)}version(...e){return this.sync(`version`,...e)}run(...e){return super.run(`run`,...e)}install(...e){return super.run(`install`,...e)}},v=new class extends i{constructor(){super(`pnpm`)}newVersion(e){return this.version(`--no-git-tag-version`,e)}version(...e){return this.sync(`version`,...e)}run(...e){return super.run(`run`,...e)}install(...e){return super.run(`install`,...e)}restore(){return super.run(`install`,`--frozen-lockfile`)}},y=new class extends i{constructor(){super(`yarn`)}newVersion(e){return this.version(`--no-git-tag-version`,`--new-version`,e)}version(...e){return this.sync(`version`,...e)}run(...e){return super.run(...e)}install(...e){return super.run(`install`,...e)}restore(){return super.run(`install`,`--immutable`)}};function b(e){let{logger:n,config:{SCM_TOKEN:r,REPOSITORY_URL:i,ORIGIN:a,GIT_USER_NAME:o,GIT_USER_EMAIL:s,GIT_DISABLE_SSL:c}}=e;if(o&&s&&(t.config(`--global`,`user.name`,`"${o}"`),t.config(`--global`,`user.email`,`"${s}"`)),c&&(n.info(`Disable SSL verification`),t.config(`--global`,`http.sslVerify`,`false`)),r){let e=(i??``).replace(`https://`,``);n.info(`Configure remote repository ${e}`),t.remote(`remove`,a??`origin`).sync(),t.remote(`add`,a??`origin`,`https://${r}@${e}`).sync()}}function x(e){return e===`bun`?g:e===`yarn`?y:e===`pnpm`?v:a}var S=n(),C=e(o(),1);function w(e=process.cwd()){let t=u(e);for(;;){let e=l(t,`release.config.mjs`);if(s(e))return e;let n=c(t);if(n===t)return;t=n}}async function T(e){let t=w(e);if(!t)return{};try{let e=await import(h(t).href);return e.default??e}catch(e){return console.error(`Error while loading release.config.mjs`,e),{}}}async function E(e,t){if(e.enabled&&!e.enabled())return;if(t.dryRun){p.info(`Dry run: ${e.title}`);return}let n=e.skip?.();if(n){p.info(`${e.title} ${typeof n==`string`?`(${n})`:`(skipped)`}`);return}let r=e.task();if(Array.isArray(r)){for(let e of r)await E(e,t);return}let i=m();i.start(e.title);try{(0,S.isObservable)(r)?await new Promise((e,t)=>r.subscribe({complete:e,error:t})):await r,i.stop(e.title)}catch(t){throw i.stop(`${e.title} failed`),t}}async function D(e,t){for(let n of e)await E(n,t)}async function O(e,t){try{let n=r(),i={...await T(),...n,branch:{name:n.BRANCH_NAME},config:n,dryRun:t.dryRun,logger:console,verbose:t.verbose},a=new e;if(a.mapContext&&(i=a.mapContext(t,i)),a.prompt){let e=await a.prompt(i);if(f(e)){d(`Operation cancelled.`);return}i={...i,...e}}a.verifyConditions?.(i),await D(a.getTasks(i),i),a.success?.(i)}catch(e){p.error(C.default.red(String(e))),t.verbose&&console.error(String(e.stack??``).replace(String(e),``)),process.exit(-1)}}process.on(`unhandledRejection`,()=>{});export{v as a,y as i,x as n,_ as o,b as r,g as s,O as t};
|
|
2
|
+
//# sourceMappingURL=common-DvEL7rzl.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common-Dm4NPnuV.mjs","names":["isObservable","chalk"],"sources":["../src/common/cli/bun.ts","../src/common/cli/lerna.ts","../src/common/cli/pnpm.ts","../src/common/cli/yarn.ts","../src/common/configure-git-workspace.ts","../src/common/get-package-manager.ts","../src/common/get-release-config.ts","../src/common/run-command.ts"],"sourcesContent":["import { Cli } from \"./cli.js\";\n\nclass BunCli extends Cli {\n constructor() {\n super(\"bun\");\n }\n\n newVersion(version: string) {\n return this.pm(\"version\", \"--no-git-tag-version\", version);\n }\n\n pm(...args: string[]) {\n return this.sync(\"pm\", ...args);\n }\n\n run(...args: string[]) {\n return super.run(\"run\", ...args);\n }\n\n install(...args: string[]) {\n return super.run(\"install\", ...args);\n }\n\n /**\n * Reinstall dependencies without bun.lock mutation\n * @returns {Promise<unknown>}\n */\n restore() {\n return super.run(\"install\", \"--frozen-lockfile\");\n }\n}\n\nexport const bun = new BunCli();\n","import { Cli } from \"./cli.js\";\n\nclass LernaCli extends Cli {\n constructor() {\n super(\"lerna\");\n }\n\n newVersion(version: string) {\n return this.version(version, \"--exact\", \"--yes\", \"--no-git-tag-version\", \"--no-push\");\n }\n\n version(...args: string[]) {\n return this.sync(\"version\", ...args);\n }\n\n run(...args: string[]) {\n return super.run(\"run\", ...args);\n }\n\n install(...args: string[]) {\n return super.run(\"install\", ...args);\n }\n}\n\nexport const lerna = new LernaCli();\n","import { Cli } from \"./cli.js\";\n\nclass PnpmCli extends Cli {\n constructor() {\n super(\"pnpm\");\n }\n\n newVersion(version: string) {\n // pnpm follows npm's version CLI semantics\n return this.version(\"--no-git-tag-version\", version);\n }\n\n version(...args: string[]) {\n return this.sync(\"version\", ...args);\n }\n\n run(...args: string[]) {\n return super.run(\"run\", ...args);\n }\n\n install(...args: string[]) {\n return super.run(\"install\", ...args);\n }\n\n /**\n * Reinstall dependencies without pnpm-lock.yaml mutation\n * @returns {Promise<unknown>}\n */\n restore() {\n return super.run(\"install\", \"--frozen-lockfile\");\n }\n}\n\nexport const pnpm = new PnpmCli();\n","import { Cli } from \"./cli.js\";\n\nclass YarnCli extends Cli {\n constructor() {\n super(\"yarn\");\n }\n\n newVersion(version: string) {\n return this.version(\"--no-git-tag-version\", \"--new-version\", version);\n }\n\n version(...args: string[]) {\n return this.sync(\"version\", ...args);\n }\n\n run(...args: string[]) {\n return super.run(...args);\n }\n\n install(...args: string[]) {\n return super.run(\"install\", ...args);\n }\n\n /**\n * Reinstall dependencies without yarn.lock mutation\n * @returns {Promise<unknown>}\n */\n restore() {\n return super.run(\"install\", \"--immutable\");\n }\n}\n\nexport const yarn = new YarnCli();\n","import { git } from \"./cli/git.js\";\nimport type { CmContext } from \"./interfaces\";\n\nexport function configureGitWorkspace(context: CmContext) {\n const {\n logger,\n config: { SCM_TOKEN, REPOSITORY_URL, ORIGIN, GIT_USER_NAME, GIT_USER_EMAIL, GIT_DISABLE_SSL }\n } = context;\n\n if (GIT_USER_NAME && GIT_USER_EMAIL) {\n git.config(\"--global\", \"user.name\", `\"${GIT_USER_NAME}\"`);\n git.config(\"--global\", \"user.email\", `\"${GIT_USER_EMAIL}\"`);\n }\n\n if (GIT_DISABLE_SSL) {\n logger.info(\"Disable SSL verification\");\n git.config(\"--global\", \"http.sslVerify\", \"false\");\n }\n\n if (SCM_TOKEN) {\n const repository = (REPOSITORY_URL ?? \"\").replace(\"https://\", \"\");\n\n logger.info(`Configure remote repository ${repository}`);\n git.remote(\"remove\", ORIGIN ?? \"origin\").sync();\n git.remote(\"add\", ORIGIN ?? \"origin\", `https://${SCM_TOKEN}@${repository}`).sync();\n }\n}\n","import { bun } from \"./cli/bun.js\";\nimport { npm } from \"./cli/npm.js\";\nimport { pnpm } from \"./cli/pnpm.js\";\nimport { yarn } from \"./cli/yarn.js\";\n\nexport function getPackageManager(pkgManager: string) {\n if (pkgManager === \"bun\") {\n return bun;\n }\n\n return pkgManager === \"yarn\" ? yarn : pkgManager === \"pnpm\" ? pnpm : npm;\n}\n","import { existsSync } from \"node:fs\";\nimport { dirname, join, resolve } from \"node:path\";\nimport { pathToFileURL } from \"node:url\";\n\nexport function findReleaseConfig(cwd = process.cwd()): string | undefined {\n let directory = resolve(cwd);\n\n while (true) {\n const configPath = join(directory, \"release.config.mjs\");\n if (existsSync(configPath)) return configPath;\n\n const parentDirectory = dirname(directory);\n if (parentDirectory === directory) return undefined;\n directory = parentDirectory;\n }\n}\n\nexport async function getReleaseConfig(cwd?: string): Promise<Record<string, unknown>> {\n const configPath = findReleaseConfig(cwd);\n if (!configPath) return {};\n\n try {\n const module = await import(pathToFileURL(configPath).href);\n return module.default ?? module;\n } catch (error) {\n console.error(\"Error while loading release.config.mjs\", error);\n return {};\n }\n}\n","import chalk from \"chalk\";\nimport { cancel, isCancel, log, spinner } from \"@clack/prompts\";\nimport { isObservable } from \"rxjs\";\n\nimport type { CmContext, CmTask, CommandConstructor } from \"./interfaces/index.js\";\nimport { getConfig } from \"./get-config.js\";\nimport { getReleaseConfig } from \"./get-release-config.js\";\n\nasync function runTask(task: CmTask, context: CmContext): Promise<void> {\n if (task.enabled && !task.enabled()) return;\n\n if (context.dryRun) {\n log.info(`Dry run: ${task.title}`);\n return;\n }\n\n const skipped = task.skip?.();\n if (skipped) {\n log.info(`${task.title} ${typeof skipped === \"string\" ? `(${skipped})` : \"(skipped)\"}`);\n return;\n }\n\n const result = task.task();\n if (Array.isArray(result)) {\n for (const child of result) await runTask(child as CmTask, context);\n return;\n }\n\n const progress = spinner();\n progress.start(task.title);\n try {\n if (isObservable(result)) {\n await new Promise<void>((resolve, reject) => result.subscribe({ complete: resolve, error: reject }));\n } else {\n await result;\n }\n progress.stop(task.title);\n } catch (error) {\n progress.stop(`${task.title} failed`);\n throw error;\n }\n}\n\nasync function createTasksRunner(tasks: CmTask[], context: CmContext): Promise<void> {\n for (const task of tasks) await runTask(task, context);\n}\n\nexport async function runCommand(\n klass: CommandConstructor,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n opts: Record<string, any>\n): Promise<void> {\n try {\n const config = getConfig();\n\n let context = {\n ...(await getReleaseConfig()),\n ...config,\n branch: { name: config.BRANCH_NAME as string },\n config,\n dryRun: opts.dryRun as boolean | undefined,\n logger: console,\n verbose: opts.verbose as number | undefined\n } as unknown as CmContext;\n\n const command = new klass();\n\n if (command.mapContext) {\n context = command.mapContext(opts as Record<string, unknown>, context);\n }\n\n if (command.prompt) {\n const answers = await command.prompt(context);\n if (isCancel(answers)) {\n cancel(\"Operation cancelled.\");\n return;\n }\n context = {\n ...context,\n ...answers\n };\n }\n\n command.verifyConditions?.(context);\n\n const tasks = command.getTasks(context);\n\n await createTasksRunner(tasks, context);\n\n command.success?.(context);\n } catch (er) {\n log.error(chalk.red(String(er)));\n if (opts.verbose) {\n console.error(String((er as Error).stack ?? \"\").replace(String(er), \"\"));\n }\n process.exit(-1);\n }\n}\n\nprocess.on(\"unhandledRejection\", () => {\n // avoid extra promise rejection when using toObservable\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"common-DvEL7rzl.mjs","names":["isObservable","chalk"],"sources":["../src/common/cli/bun.ts","../src/common/cli/lerna.ts","../src/common/cli/pnpm.ts","../src/common/cli/yarn.ts","../src/common/configure-git-workspace.ts","../src/common/get-package-manager.ts","../src/common/get-release-config.ts","../src/common/run-command.ts"],"sourcesContent":["import { Cli } from \"./cli.js\";\n\nclass BunCli extends Cli {\n constructor() {\n super(\"bun\");\n }\n\n newVersion(version: string) {\n return this.pm(\"version\", \"--no-git-tag-version\", version);\n }\n\n pm(...args: string[]) {\n return this.sync(\"pm\", ...args);\n }\n\n run(...args: string[]) {\n return super.run(\"run\", ...args);\n }\n\n install(...args: string[]) {\n return super.run(\"install\", ...args);\n }\n\n /**\n * Reinstall dependencies without bun.lock mutation\n * @returns {Promise<unknown>}\n */\n restore() {\n return super.run(\"install\", \"--frozen-lockfile\");\n }\n}\n\nexport const bun = new BunCli();\n","import { Cli } from \"./cli.js\";\n\nclass LernaCli extends Cli {\n constructor() {\n super(\"lerna\");\n }\n\n newVersion(version: string) {\n return this.version(version, \"--exact\", \"--yes\", \"--no-git-tag-version\", \"--no-push\");\n }\n\n version(...args: string[]) {\n return this.sync(\"version\", ...args);\n }\n\n run(...args: string[]) {\n return super.run(\"run\", ...args);\n }\n\n install(...args: string[]) {\n return super.run(\"install\", ...args);\n }\n}\n\nexport const lerna = new LernaCli();\n","import { Cli } from \"./cli.js\";\n\nclass PnpmCli extends Cli {\n constructor() {\n super(\"pnpm\");\n }\n\n newVersion(version: string) {\n // pnpm follows npm's version CLI semantics\n return this.version(\"--no-git-tag-version\", version);\n }\n\n version(...args: string[]) {\n return this.sync(\"version\", ...args);\n }\n\n run(...args: string[]) {\n return super.run(\"run\", ...args);\n }\n\n install(...args: string[]) {\n return super.run(\"install\", ...args);\n }\n\n /**\n * Reinstall dependencies without pnpm-lock.yaml mutation\n * @returns {Promise<unknown>}\n */\n restore() {\n return super.run(\"install\", \"--frozen-lockfile\");\n }\n}\n\nexport const pnpm = new PnpmCli();\n","import { Cli } from \"./cli.js\";\n\nclass YarnCli extends Cli {\n constructor() {\n super(\"yarn\");\n }\n\n newVersion(version: string) {\n return this.version(\"--no-git-tag-version\", \"--new-version\", version);\n }\n\n version(...args: string[]) {\n return this.sync(\"version\", ...args);\n }\n\n run(...args: string[]) {\n return super.run(...args);\n }\n\n install(...args: string[]) {\n return super.run(\"install\", ...args);\n }\n\n /**\n * Reinstall dependencies without yarn.lock mutation\n * @returns {Promise<unknown>}\n */\n restore() {\n return super.run(\"install\", \"--immutable\");\n }\n}\n\nexport const yarn = new YarnCli();\n","import { git } from \"./cli/git.js\";\nimport type { CmContext } from \"./interfaces\";\n\nexport function configureGitWorkspace(context: CmContext) {\n const {\n logger,\n config: { SCM_TOKEN, REPOSITORY_URL, ORIGIN, GIT_USER_NAME, GIT_USER_EMAIL, GIT_DISABLE_SSL }\n } = context;\n\n if (GIT_USER_NAME && GIT_USER_EMAIL) {\n git.config(\"--global\", \"user.name\", `\"${GIT_USER_NAME}\"`);\n git.config(\"--global\", \"user.email\", `\"${GIT_USER_EMAIL}\"`);\n }\n\n if (GIT_DISABLE_SSL) {\n logger.info(\"Disable SSL verification\");\n git.config(\"--global\", \"http.sslVerify\", \"false\");\n }\n\n if (SCM_TOKEN) {\n const repository = (REPOSITORY_URL ?? \"\").replace(\"https://\", \"\");\n\n logger.info(`Configure remote repository ${repository}`);\n git.remote(\"remove\", ORIGIN ?? \"origin\").sync();\n git.remote(\"add\", ORIGIN ?? \"origin\", `https://${SCM_TOKEN}@${repository}`).sync();\n }\n}\n","import { bun } from \"./cli/bun.js\";\nimport { npm } from \"./cli/npm.js\";\nimport { pnpm } from \"./cli/pnpm.js\";\nimport { yarn } from \"./cli/yarn.js\";\n\nexport function getPackageManager(pkgManager: string) {\n if (pkgManager === \"bun\") {\n return bun;\n }\n\n return pkgManager === \"yarn\" ? yarn : pkgManager === \"pnpm\" ? pnpm : npm;\n}\n","import { existsSync } from \"node:fs\";\nimport { dirname, join, resolve } from \"node:path\";\nimport { pathToFileURL } from \"node:url\";\n\nexport function findReleaseConfig(cwd = process.cwd()): string | undefined {\n let directory = resolve(cwd);\n\n while (true) {\n const configPath = join(directory, \"release.config.mjs\");\n if (existsSync(configPath)) return configPath;\n\n const parentDirectory = dirname(directory);\n if (parentDirectory === directory) return undefined;\n directory = parentDirectory;\n }\n}\n\nexport async function getReleaseConfig(cwd?: string): Promise<Record<string, unknown>> {\n const configPath = findReleaseConfig(cwd);\n if (!configPath) return {};\n\n try {\n const module = await import(pathToFileURL(configPath).href);\n return module.default ?? module;\n } catch (error) {\n console.error(\"Error while loading release.config.mjs\", error);\n return {};\n }\n}\n","import chalk from \"chalk\";\nimport { cancel, isCancel, log, spinner } from \"@clack/prompts\";\nimport { isObservable } from \"rxjs\";\n\nimport type { CmContext, CmTask, CommandConstructor } from \"./interfaces/index.js\";\nimport { getConfig } from \"./get-config.js\";\nimport { getReleaseConfig } from \"./get-release-config.js\";\n\nasync function runTask(task: CmTask, context: CmContext): Promise<void> {\n if (task.enabled && !task.enabled()) return;\n\n if (context.dryRun) {\n log.info(`Dry run: ${task.title}`);\n return;\n }\n\n const skipped = task.skip?.();\n if (skipped) {\n log.info(`${task.title} ${typeof skipped === \"string\" ? `(${skipped})` : \"(skipped)\"}`);\n return;\n }\n\n const result = task.task();\n if (Array.isArray(result)) {\n for (const child of result) await runTask(child as CmTask, context);\n return;\n }\n\n const progress = spinner();\n progress.start(task.title);\n try {\n if (isObservable(result)) {\n await new Promise<void>((resolve, reject) => result.subscribe({ complete: resolve, error: reject }));\n } else {\n await result;\n }\n progress.stop(task.title);\n } catch (error) {\n progress.stop(`${task.title} failed`);\n throw error;\n }\n}\n\nasync function createTasksRunner(tasks: CmTask[], context: CmContext): Promise<void> {\n for (const task of tasks) await runTask(task, context);\n}\n\nexport async function runCommand(\n klass: CommandConstructor,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n opts: Record<string, any>\n): Promise<void> {\n try {\n const config = getConfig();\n\n let context = {\n ...(await getReleaseConfig()),\n ...config,\n branch: { name: config.BRANCH_NAME as string },\n config,\n dryRun: opts.dryRun as boolean | undefined,\n logger: console,\n verbose: opts.verbose as number | undefined\n } as unknown as CmContext;\n\n const command = new klass();\n\n if (command.mapContext) {\n context = command.mapContext(opts as Record<string, unknown>, context);\n }\n\n if (command.prompt) {\n const answers = await command.prompt(context);\n if (isCancel(answers)) {\n cancel(\"Operation cancelled.\");\n return;\n }\n context = {\n ...context,\n ...answers\n };\n }\n\n command.verifyConditions?.(context);\n\n const tasks = command.getTasks(context);\n\n await createTasksRunner(tasks, context);\n\n command.success?.(context);\n } catch (er) {\n log.error(chalk.red(String(er)));\n if (opts.verbose) {\n console.error(String((er as Error).stack ?? \"\").replace(String(er), \"\"));\n }\n process.exit(-1);\n }\n}\n\nprocess.on(\"unhandledRejection\", () => {\n // avoid extra promise rejection when using toObservable\n});\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{n as e}from"./common-
|
|
2
|
-
//# sourceMappingURL=compile-packages-
|
|
1
|
+
import{n as e}from"./common-DvEL7rzl.mjs";import{join as t}from"node:path";import n from"node:fs/promises";async function r(e){let{rootDir:r=process.cwd(),outputDir:i=`dist`}=e.config;await n.rm(t(r,i),{recursive:!0,force:!0})}async function i(t){let{config:{PACKAGE_MANAGER:n,buildCmd:r,pkg:i}}=t;i?.scripts?.[r]&&await e(n).run(r)}export{r as n,i as t};
|
|
2
|
+
//# sourceMappingURL=compile-packages-Cd19TaUb.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compile-packages-
|
|
1
|
+
{"version":3,"file":"compile-packages-Cd19TaUb.mjs","names":[],"sources":["../src/common/packages/clean-packages.ts","../src/common/packages/compile-packages.ts"],"sourcesContent":["import fs from \"node:fs/promises\";\nimport { join } from \"node:path\";\nimport type { CmContext } from \"../interfaces/index.js\";\n\nexport async function cleanPackages(context: CmContext): Promise<void> {\n const { rootDir = process.cwd(), outputDir = \"dist\" } = context.config;\n await fs.rm(join(rootDir, outputDir), { recursive: true, force: true });\n}\n","import { getPackageManager } from \"../get-package-manager.js\";\nimport type { CmContext } from \"../interfaces/index.js\";\n\nexport async function compilePackages(context: CmContext) {\n const {\n config: { PACKAGE_MANAGER, buildCmd, pkg }\n } = context;\n if (pkg?.scripts?.[buildCmd]) {\n await getPackageManager(PACKAGE_MANAGER).run(buildCmd);\n }\n}\n"],"mappings":"2GAIA,eAAsB,EAAc,EAAmC,CACrE,GAAM,CAAE,UAAU,QAAQ,IAAI,EAAG,YAAY,QAAW,EAAQ,OAChE,MAAM,EAAG,GAAG,EAAK,EAAS,CAAS,EAAG,CAAE,UAAW,GAAM,MAAO,EAAK,CAAC,CACxE,CCJA,eAAsB,EAAgB,EAAoB,CACxD,GAAM,CACJ,OAAQ,CAAE,kBAAiB,WAAU,QACnC,EACA,GAAK,UAAU,IACjB,MAAM,EAAkB,CAAe,CAAC,CAAC,IAAI,CAAQ,CAEzD"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import"./common-
|
|
2
|
-
//# sourceMappingURL=docker-clean-tags-
|
|
1
|
+
import"./common-DvEL7rzl.mjs";import{t as e}from"./docker-nm7ubWPx.mjs";function t(e){let t=e.map(e=>({name:e.name,date:new Date(e.last_updated).getTime()})).sort((e,t)=>t.date-e.date),n=!1;return t.reduce((e,t)=>(t.name.match(/\d+\.\d+\.\d+/)?n=!0:n&&e.push(t),e),[])}async function n(n){let{logger:r,config:{DOCKER_HUB_ID:i,DOCKER_HUB_PWD:a,DOCKER_REPOSITORY:o}}=n;if(i&&a){r.info(`Start clean Docker Hub...`);let n={token:await e.getToken(i,a),repository:o},s=t(await e.getTags(n));await Promise.all(s.map(async t=>{await e.deleteTag(t.name,n),r.info(`TAG : ${t.name} deleted`)})),r.info(`Docker Hub Clean !`)}}export{n as t};
|
|
2
|
+
//# sourceMappingURL=docker-clean-tags-C8fsKmA7.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docker-clean-tags-
|
|
1
|
+
{"version":3,"file":"docker-clean-tags-C8fsKmA7.mjs","names":[],"sources":["../src/semantic/utils/docker-clean-tags.ts"],"sourcesContent":["import { docker } from \"../../common/index.js\";\nimport type { CmContext } from \"../../common/interfaces/index.js\";\n\ninterface DockerTag {\n name: string;\n last_updated: string | Date;\n date?: number;\n}\n\nfunction mapTags(tags: DockerTag[]) {\n const mapped = tags\n .map((tag) => {\n return {\n name: tag.name,\n date: new Date(tag.last_updated).getTime()\n };\n })\n .sort((a, b) => b.date - a.date);\n\n let tagFound = false;\n\n return mapped.reduce((result: typeof mapped, tag) => {\n if (tag.name.match(/\\d+\\.\\d+\\.\\d+/)) {\n tagFound = true;\n } else if (tagFound) {\n result.push(tag);\n }\n return result;\n }, []);\n}\n\nexport async function dockerCleanTags(context: CmContext) {\n const {\n logger,\n config: { DOCKER_HUB_ID, DOCKER_HUB_PWD, DOCKER_REPOSITORY }\n } = context;\n\n if (DOCKER_HUB_ID && DOCKER_HUB_PWD) {\n logger.info(\"Start clean Docker Hub...\");\n\n const token = await docker.getToken(DOCKER_HUB_ID, DOCKER_HUB_PWD);\n const options = {\n token,\n repository: DOCKER_REPOSITORY\n };\n\n const tags = mapTags(await docker.getTags(options));\n\n await Promise.all(\n tags.map(async (tag) => {\n await docker.deleteTag(tag.name, options);\n logger.info(`TAG : ${tag.name} deleted`);\n })\n );\n\n logger.info(\"Docker Hub Clean !\");\n }\n}\n"],"mappings":"wEASA,SAAS,EAAQ,EAAmB,CAClC,IAAM,EAAS,EACZ,IAAK,IACG,CACL,KAAM,EAAI,KACV,KAAM,IAAI,KAAK,EAAI,YAAY,CAAC,CAAC,QAAQ,CAC3C,EACD,CAAC,CACD,MAAM,EAAG,IAAM,EAAE,KAAO,EAAE,IAAI,EAE7B,EAAW,GAEf,OAAO,EAAO,QAAQ,EAAuB,KACvC,EAAI,KAAK,MAAM,eAAe,EAChC,EAAW,GACF,GACT,EAAO,KAAK,CAAG,EAEV,GACN,CAAC,CAAC,CACP,CAEA,eAAsB,EAAgB,EAAoB,CACxD,GAAM,CACJ,SACA,OAAQ,CAAE,gBAAe,iBAAgB,sBACvC,EAEJ,GAAI,GAAiB,EAAgB,CACnC,EAAO,KAAK,2BAA2B,EAGvC,IAAM,EAAU,CACd,MAAA,MAFkB,EAAO,SAAS,EAAe,CAAc,EAG/D,WAAY,CACd,EAEM,EAAO,EAAQ,MAAM,EAAO,QAAQ,CAAO,CAAC,EAElD,MAAM,QAAQ,IACZ,EAAK,IAAI,KAAO,IAAQ,CACtB,MAAM,EAAO,UAAU,EAAI,KAAM,CAAO,EACxC,EAAO,KAAK,SAAS,EAAI,KAAK,SAAS,CACzC,CAAC,CACH,EAEA,EAAO,KAAK,oBAAoB,CAClC,CACF"}
|