@form8ion/github-workflows-core 5.5.0 → 5.7.0

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/index.js CHANGED
@@ -6,7 +6,7 @@ var node_fs = require('node:fs');
6
6
  function setupNode({versionDeterminedBy}) {
7
7
  return {
8
8
  name: 'Setup node',
9
- uses: 'actions/setup-node@v4.2.0',
9
+ uses: 'actions/setup-node@v6.1.0',
10
10
  with: {
11
11
  ...'nvmrc' === versionDeterminedBy && {'node-version-file': '.nvmrc'},
12
12
  // eslint-disable-next-line no-template-curly-in-string
@@ -23,12 +23,13 @@ function executeVerification() {
23
23
  function installDependencies() {
24
24
  return [
25
25
  {run: 'npm clean-install'},
26
+ {run: 'npm install --global corepack@latest'},
26
27
  {run: 'corepack npm audit signatures'}
27
28
  ];
28
29
  }
29
30
 
30
31
  function checkout() {
31
- return {uses: 'actions/checkout@v4.2.2'};
32
+ return {uses: 'actions/checkout@v6.0.1'};
32
33
  }
33
34
 
34
35
  function existenceChecker ({projectRoot, name}) {
@@ -54,7 +55,24 @@ function tester ({projectRoot}) {
54
55
  return core.directoryExists(`${projectRoot}/.github/workflows`);
55
56
  }
56
57
 
58
+ function removeActionFromSteps(steps, actionName) {
59
+ return steps.filter(step => !step.uses?.includes(actionName));
60
+ }
61
+
62
+ function removeActionFromJobs(jobs, actionName) {
63
+ return Object.fromEntries(
64
+ Object.entries(jobs).map(([jobName, job]) => ([
65
+ jobName,
66
+ {
67
+ ...job,
68
+ .../* job.steps && */{steps: removeActionFromSteps(job.steps, actionName)}
69
+ }
70
+ ]))
71
+ );
72
+ }
73
+
57
74
  exports.loadWorkflowFile = loader;
75
+ exports.removeActionFromJobs = removeActionFromJobs;
58
76
  exports.renameWorkflowFile = renamer;
59
77
  exports.scaffoldCheckoutStep = checkout;
60
78
  exports.scaffoldDependencyInstallationStep = installDependencies;
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/steps/scaffolders.js","../src/workflow-file/existence-checker.js","../src/workflow-file/loader.js","../src/workflow-file/writer.js","../src/workflow-file/renamer.js","../src/tester.js"],"sourcesContent":["export function setupNode({versionDeterminedBy}) {\n return {\n name: 'Setup node',\n uses: 'actions/setup-node@v4.2.0',\n with: {\n ...'nvmrc' === versionDeterminedBy && {'node-version-file': '.nvmrc'},\n // eslint-disable-next-line no-template-curly-in-string\n ...'matrix' === versionDeterminedBy && {'node-version': '${{ matrix.node }}'},\n cache: 'npm'\n }\n };\n}\n\nexport function executeVerification() {\n return {run: 'npm test'};\n}\n\nexport function installDependencies() {\n return [\n {run: 'npm clean-install'},\n {run: 'corepack npm audit signatures'}\n ];\n}\n\nexport function checkout() {\n return {uses: 'actions/checkout@v4.2.2'};\n}\n","import {fileExists} from '@form8ion/core';\n\nexport default function ({projectRoot, name}) {\n return fileExists(`${projectRoot}/.github/workflows/${name}.yml`);\n}\n","import {fileTypes, loadConfigFile} from '@form8ion/core';\n\nexport default function ({projectRoot, name}) {\n return loadConfigFile({path: `${projectRoot}/.github/workflows`, name, format: fileTypes.YAML});\n}\n","import {fileTypes, writeConfigFile} from '@form8ion/core';\n\nexport default function ({projectRoot, name, config}) {\n return writeConfigFile({path: `${projectRoot}/.github/workflows`, name, config, format: fileTypes.YAML});\n}\n","import {promises as fs} from 'node:fs';\n\nexport default function ({projectRoot, oldName, newName}) {\n return fs.rename(\n `${projectRoot}/.github/workflows/${oldName}.yml`,\n `${projectRoot}/.github/workflows/${newName}.yml`\n );\n}\n","import {directoryExists} from '@form8ion/core';\n\nexport default function ({projectRoot}) {\n return directoryExists(`${projectRoot}/.github/workflows`);\n}\n"],"names":["fileExists","loadConfigFile","fileTypes","writeConfigFile","fs","directoryExists"],"mappings":";;;;;AAAO,SAAS,SAAS,CAAC,CAAC,mBAAmB,CAAC,EAAE;AACjD,EAAE,OAAO;AACT,IAAI,IAAI,EAAE,YAAY;AACtB,IAAI,IAAI,EAAE,2BAA2B;AACrC,IAAI,IAAI,EAAE;AACV,MAAM,GAAG,OAAO,KAAK,mBAAmB,IAAI,CAAC,mBAAmB,EAAE,QAAQ,CAAC;AAC3E;AACA,MAAM,GAAG,QAAQ,KAAK,mBAAmB,IAAI,CAAC,cAAc,EAAE,oBAAoB,CAAC;AACnF,MAAM,KAAK,EAAE;AACb;AACA,GAAG;AACH;;AAEO,SAAS,mBAAmB,GAAG;AACtC,EAAE,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC;AAC1B;;AAEO,SAAS,mBAAmB,GAAG;AACtC,EAAE,OAAO;AACT,IAAI,CAAC,GAAG,EAAE,mBAAmB,CAAC;AAC9B,IAAI,CAAC,GAAG,EAAE,+BAA+B;AACzC,GAAG;AACH;;AAEO,SAAS,QAAQ,GAAG;AAC3B,EAAE,OAAO,CAAC,IAAI,EAAE,yBAAyB,CAAC;AAC1C;;ACxBe,yBAAQ,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE;AAC9C,EAAE,OAAOA,eAAU,CAAC,CAAC,EAAE,WAAW,CAAC,mBAAmB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;AACnE;;ACFe,eAAQ,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE;AAC9C,EAAE,OAAOC,mBAAc,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAEC,cAAS,CAAC,IAAI,CAAC,CAAC;AACjG;;ACFe,eAAQ,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACtD,EAAE,OAAOC,oBAAe,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAED,cAAS,CAAC,IAAI,CAAC,CAAC;AAC1G;;ACFe,gBAAQ,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;AAC1D,EAAE,OAAOE,gBAAE,CAAC,MAAM;AAClB,IAAI,CAAC,EAAE,WAAW,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,CAAC;AACrD,IAAI,CAAC,EAAE,WAAW,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI;AACpD,GAAG;AACH;;ACLe,eAAQ,EAAE,CAAC,WAAW,CAAC,EAAE;AACxC,EAAE,OAAOC,oBAAe,CAAC,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAAC;AAC5D;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../src/steps/scaffolders.js","../src/workflow-file/existence-checker.js","../src/workflow-file/loader.js","../src/workflow-file/writer.js","../src/workflow-file/renamer.js","../src/tester.js","../src/steps/remover.js","../src/jobs/remover.js"],"sourcesContent":["export function setupNode({versionDeterminedBy}) {\n return {\n name: 'Setup node',\n uses: 'actions/setup-node@v6.1.0',\n with: {\n ...'nvmrc' === versionDeterminedBy && {'node-version-file': '.nvmrc'},\n // eslint-disable-next-line no-template-curly-in-string\n ...'matrix' === versionDeterminedBy && {'node-version': '${{ matrix.node }}'},\n cache: 'npm'\n }\n };\n}\n\nexport function executeVerification() {\n return {run: 'npm test'};\n}\n\nexport function installDependencies() {\n return [\n {run: 'npm clean-install'},\n {run: 'npm install --global corepack@latest'},\n {run: 'corepack npm audit signatures'}\n ];\n}\n\nexport function checkout() {\n return {uses: 'actions/checkout@v6.0.1'};\n}\n","import {fileExists} from '@form8ion/core';\n\nexport default function ({projectRoot, name}) {\n return fileExists(`${projectRoot}/.github/workflows/${name}.yml`);\n}\n","import {fileTypes, loadConfigFile} from '@form8ion/core';\n\nexport default function ({projectRoot, name}) {\n return loadConfigFile({path: `${projectRoot}/.github/workflows`, name, format: fileTypes.YAML});\n}\n","import {fileTypes, writeConfigFile} from '@form8ion/core';\n\nexport default function ({projectRoot, name, config}) {\n return writeConfigFile({path: `${projectRoot}/.github/workflows`, name, config, format: fileTypes.YAML});\n}\n","import {promises as fs} from 'node:fs';\n\nexport default function ({projectRoot, oldName, newName}) {\n return fs.rename(\n `${projectRoot}/.github/workflows/${oldName}.yml`,\n `${projectRoot}/.github/workflows/${newName}.yml`\n );\n}\n","import {directoryExists} from '@form8ion/core';\n\nexport default function ({projectRoot}) {\n return directoryExists(`${projectRoot}/.github/workflows`);\n}\n","export function removeActionFromSteps(steps, actionName) {\n return steps.filter(step => !step.uses?.includes(actionName));\n}\n","import {removeActionFromSteps} from '../steps/remover.js';\n\nexport function removeActionFromJobs(jobs, actionName) {\n return Object.fromEntries(\n Object.entries(jobs).map(([jobName, job]) => ([\n jobName,\n {\n ...job,\n .../* job.steps && */{steps: removeActionFromSteps(job.steps, actionName)}\n }\n ]))\n );\n}\n"],"names":["fileExists","loadConfigFile","fileTypes","writeConfigFile","fs","directoryExists"],"mappings":";;;;;AAAO,SAAS,SAAS,CAAC,CAAC,mBAAmB,CAAC,EAAE;AACjD,EAAE,OAAO;AACT,IAAI,IAAI,EAAE,YAAY;AACtB,IAAI,IAAI,EAAE,2BAA2B;AACrC,IAAI,IAAI,EAAE;AACV,MAAM,GAAG,OAAO,KAAK,mBAAmB,IAAI,CAAC,mBAAmB,EAAE,QAAQ,CAAC;AAC3E;AACA,MAAM,GAAG,QAAQ,KAAK,mBAAmB,IAAI,CAAC,cAAc,EAAE,oBAAoB,CAAC;AACnF,MAAM,KAAK,EAAE;AACb;AACA,GAAG;AACH;;AAEO,SAAS,mBAAmB,GAAG;AACtC,EAAE,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC;AAC1B;;AAEO,SAAS,mBAAmB,GAAG;AACtC,EAAE,OAAO;AACT,IAAI,CAAC,GAAG,EAAE,mBAAmB,CAAC;AAC9B,IAAI,CAAC,GAAG,EAAE,sCAAsC,CAAC;AACjD,IAAI,CAAC,GAAG,EAAE,+BAA+B;AACzC,GAAG;AACH;;AAEO,SAAS,QAAQ,GAAG;AAC3B,EAAE,OAAO,CAAC,IAAI,EAAE,yBAAyB,CAAC;AAC1C;;ACzBe,yBAAQ,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE;AAC9C,EAAE,OAAOA,eAAU,CAAC,CAAC,EAAE,WAAW,CAAC,mBAAmB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;AACnE;;ACFe,eAAQ,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE;AAC9C,EAAE,OAAOC,mBAAc,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAEC,cAAS,CAAC,IAAI,CAAC,CAAC;AACjG;;ACFe,eAAQ,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACtD,EAAE,OAAOC,oBAAe,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAED,cAAS,CAAC,IAAI,CAAC,CAAC;AAC1G;;ACFe,gBAAQ,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;AAC1D,EAAE,OAAOE,gBAAE,CAAC,MAAM;AAClB,IAAI,CAAC,EAAE,WAAW,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,CAAC;AACrD,IAAI,CAAC,EAAE,WAAW,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI;AACpD,GAAG;AACH;;ACLe,eAAQ,EAAE,CAAC,WAAW,CAAC,EAAE;AACxC,EAAE,OAAOC,oBAAe,CAAC,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAAC;AAC5D;;ACJO,SAAS,qBAAqB,CAAC,KAAK,EAAE,UAAU,EAAE;AACzD,EAAE,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;AAC/D;;ACAO,SAAS,oBAAoB,CAAC,IAAI,EAAE,UAAU,EAAE;AACvD,EAAE,OAAO,MAAM,CAAC,WAAW;AAC3B,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM;AAClD,MAAM,OAAO;AACb,MAAM;AACN,QAAQ,GAAG,GAAG;AACd,QAAQ,sBAAsB,CAAC,KAAK,EAAE,qBAAqB,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC;AAClF;AACA,KAAK,CAAC;AACN,GAAG;AACH;;;;;;;;;;;;;"}
package/lib/index.mjs CHANGED
@@ -4,7 +4,7 @@ import { promises } from 'node:fs';
4
4
  function setupNode({versionDeterminedBy}) {
5
5
  return {
6
6
  name: 'Setup node',
7
- uses: 'actions/setup-node@v4.2.0',
7
+ uses: 'actions/setup-node@v6.1.0',
8
8
  with: {
9
9
  ...'nvmrc' === versionDeterminedBy && {'node-version-file': '.nvmrc'},
10
10
  // eslint-disable-next-line no-template-curly-in-string
@@ -21,12 +21,13 @@ function executeVerification() {
21
21
  function installDependencies() {
22
22
  return [
23
23
  {run: 'npm clean-install'},
24
+ {run: 'npm install --global corepack@latest'},
24
25
  {run: 'corepack npm audit signatures'}
25
26
  ];
26
27
  }
27
28
 
28
29
  function checkout() {
29
- return {uses: 'actions/checkout@v4.2.2'};
30
+ return {uses: 'actions/checkout@v6.0.1'};
30
31
  }
31
32
 
32
33
  function existenceChecker ({projectRoot, name}) {
@@ -52,5 +53,21 @@ function tester ({projectRoot}) {
52
53
  return directoryExists(`${projectRoot}/.github/workflows`);
53
54
  }
54
55
 
55
- export { loader as loadWorkflowFile, renamer as renameWorkflowFile, checkout as scaffoldCheckoutStep, installDependencies as scaffoldDependencyInstallationStep, setupNode as scaffoldNodeSetupStep, executeVerification as scaffoldVerificationStep, tester as test, existenceChecker as workflowFileExists, writer as writeWorkflowFile };
56
+ function removeActionFromSteps(steps, actionName) {
57
+ return steps.filter(step => !step.uses?.includes(actionName));
58
+ }
59
+
60
+ function removeActionFromJobs(jobs, actionName) {
61
+ return Object.fromEntries(
62
+ Object.entries(jobs).map(([jobName, job]) => ([
63
+ jobName,
64
+ {
65
+ ...job,
66
+ .../* job.steps && */{steps: removeActionFromSteps(job.steps, actionName)}
67
+ }
68
+ ]))
69
+ );
70
+ }
71
+
72
+ export { loader as loadWorkflowFile, removeActionFromJobs, renamer as renameWorkflowFile, checkout as scaffoldCheckoutStep, installDependencies as scaffoldDependencyInstallationStep, setupNode as scaffoldNodeSetupStep, executeVerification as scaffoldVerificationStep, tester as test, existenceChecker as workflowFileExists, writer as writeWorkflowFile };
56
73
  //# sourceMappingURL=index.mjs.map
package/lib/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../src/steps/scaffolders.js","../src/workflow-file/existence-checker.js","../src/workflow-file/loader.js","../src/workflow-file/writer.js","../src/workflow-file/renamer.js","../src/tester.js"],"sourcesContent":["export function setupNode({versionDeterminedBy}) {\n return {\n name: 'Setup node',\n uses: 'actions/setup-node@v4.2.0',\n with: {\n ...'nvmrc' === versionDeterminedBy && {'node-version-file': '.nvmrc'},\n // eslint-disable-next-line no-template-curly-in-string\n ...'matrix' === versionDeterminedBy && {'node-version': '${{ matrix.node }}'},\n cache: 'npm'\n }\n };\n}\n\nexport function executeVerification() {\n return {run: 'npm test'};\n}\n\nexport function installDependencies() {\n return [\n {run: 'npm clean-install'},\n {run: 'corepack npm audit signatures'}\n ];\n}\n\nexport function checkout() {\n return {uses: 'actions/checkout@v4.2.2'};\n}\n","import {fileExists} from '@form8ion/core';\n\nexport default function ({projectRoot, name}) {\n return fileExists(`${projectRoot}/.github/workflows/${name}.yml`);\n}\n","import {fileTypes, loadConfigFile} from '@form8ion/core';\n\nexport default function ({projectRoot, name}) {\n return loadConfigFile({path: `${projectRoot}/.github/workflows`, name, format: fileTypes.YAML});\n}\n","import {fileTypes, writeConfigFile} from '@form8ion/core';\n\nexport default function ({projectRoot, name, config}) {\n return writeConfigFile({path: `${projectRoot}/.github/workflows`, name, config, format: fileTypes.YAML});\n}\n","import {promises as fs} from 'node:fs';\n\nexport default function ({projectRoot, oldName, newName}) {\n return fs.rename(\n `${projectRoot}/.github/workflows/${oldName}.yml`,\n `${projectRoot}/.github/workflows/${newName}.yml`\n );\n}\n","import {directoryExists} from '@form8ion/core';\n\nexport default function ({projectRoot}) {\n return directoryExists(`${projectRoot}/.github/workflows`);\n}\n"],"names":["fs"],"mappings":";;;AAAO,SAAS,SAAS,CAAC,CAAC,mBAAmB,CAAC,EAAE;AACjD,EAAE,OAAO;AACT,IAAI,IAAI,EAAE,YAAY;AACtB,IAAI,IAAI,EAAE,2BAA2B;AACrC,IAAI,IAAI,EAAE;AACV,MAAM,GAAG,OAAO,KAAK,mBAAmB,IAAI,CAAC,mBAAmB,EAAE,QAAQ,CAAC;AAC3E;AACA,MAAM,GAAG,QAAQ,KAAK,mBAAmB,IAAI,CAAC,cAAc,EAAE,oBAAoB,CAAC;AACnF,MAAM,KAAK,EAAE;AACb;AACA,GAAG;AACH;;AAEO,SAAS,mBAAmB,GAAG;AACtC,EAAE,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC;AAC1B;;AAEO,SAAS,mBAAmB,GAAG;AACtC,EAAE,OAAO;AACT,IAAI,CAAC,GAAG,EAAE,mBAAmB,CAAC;AAC9B,IAAI,CAAC,GAAG,EAAE,+BAA+B;AACzC,GAAG;AACH;;AAEO,SAAS,QAAQ,GAAG;AAC3B,EAAE,OAAO,CAAC,IAAI,EAAE,yBAAyB,CAAC;AAC1C;;ACxBe,yBAAQ,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE;AAC9C,EAAE,OAAO,UAAU,CAAC,CAAC,EAAE,WAAW,CAAC,mBAAmB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;AACnE;;ACFe,eAAQ,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE;AAC9C,EAAE,OAAO,cAAc,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;AACjG;;ACFe,eAAQ,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACtD,EAAE,OAAO,eAAe,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;AAC1G;;ACFe,gBAAQ,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;AAC1D,EAAE,OAAOA,QAAE,CAAC,MAAM;AAClB,IAAI,CAAC,EAAE,WAAW,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,CAAC;AACrD,IAAI,CAAC,EAAE,WAAW,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI;AACpD,GAAG;AACH;;ACLe,eAAQ,EAAE,CAAC,WAAW,CAAC,EAAE;AACxC,EAAE,OAAO,eAAe,CAAC,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAAC;AAC5D;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../src/steps/scaffolders.js","../src/workflow-file/existence-checker.js","../src/workflow-file/loader.js","../src/workflow-file/writer.js","../src/workflow-file/renamer.js","../src/tester.js","../src/steps/remover.js","../src/jobs/remover.js"],"sourcesContent":["export function setupNode({versionDeterminedBy}) {\n return {\n name: 'Setup node',\n uses: 'actions/setup-node@v6.1.0',\n with: {\n ...'nvmrc' === versionDeterminedBy && {'node-version-file': '.nvmrc'},\n // eslint-disable-next-line no-template-curly-in-string\n ...'matrix' === versionDeterminedBy && {'node-version': '${{ matrix.node }}'},\n cache: 'npm'\n }\n };\n}\n\nexport function executeVerification() {\n return {run: 'npm test'};\n}\n\nexport function installDependencies() {\n return [\n {run: 'npm clean-install'},\n {run: 'npm install --global corepack@latest'},\n {run: 'corepack npm audit signatures'}\n ];\n}\n\nexport function checkout() {\n return {uses: 'actions/checkout@v6.0.1'};\n}\n","import {fileExists} from '@form8ion/core';\n\nexport default function ({projectRoot, name}) {\n return fileExists(`${projectRoot}/.github/workflows/${name}.yml`);\n}\n","import {fileTypes, loadConfigFile} from '@form8ion/core';\n\nexport default function ({projectRoot, name}) {\n return loadConfigFile({path: `${projectRoot}/.github/workflows`, name, format: fileTypes.YAML});\n}\n","import {fileTypes, writeConfigFile} from '@form8ion/core';\n\nexport default function ({projectRoot, name, config}) {\n return writeConfigFile({path: `${projectRoot}/.github/workflows`, name, config, format: fileTypes.YAML});\n}\n","import {promises as fs} from 'node:fs';\n\nexport default function ({projectRoot, oldName, newName}) {\n return fs.rename(\n `${projectRoot}/.github/workflows/${oldName}.yml`,\n `${projectRoot}/.github/workflows/${newName}.yml`\n );\n}\n","import {directoryExists} from '@form8ion/core';\n\nexport default function ({projectRoot}) {\n return directoryExists(`${projectRoot}/.github/workflows`);\n}\n","export function removeActionFromSteps(steps, actionName) {\n return steps.filter(step => !step.uses?.includes(actionName));\n}\n","import {removeActionFromSteps} from '../steps/remover.js';\n\nexport function removeActionFromJobs(jobs, actionName) {\n return Object.fromEntries(\n Object.entries(jobs).map(([jobName, job]) => ([\n jobName,\n {\n ...job,\n .../* job.steps && */{steps: removeActionFromSteps(job.steps, actionName)}\n }\n ]))\n );\n}\n"],"names":["fs"],"mappings":";;;AAAO,SAAS,SAAS,CAAC,CAAC,mBAAmB,CAAC,EAAE;AACjD,EAAE,OAAO;AACT,IAAI,IAAI,EAAE,YAAY;AACtB,IAAI,IAAI,EAAE,2BAA2B;AACrC,IAAI,IAAI,EAAE;AACV,MAAM,GAAG,OAAO,KAAK,mBAAmB,IAAI,CAAC,mBAAmB,EAAE,QAAQ,CAAC;AAC3E;AACA,MAAM,GAAG,QAAQ,KAAK,mBAAmB,IAAI,CAAC,cAAc,EAAE,oBAAoB,CAAC;AACnF,MAAM,KAAK,EAAE;AACb;AACA,GAAG;AACH;;AAEO,SAAS,mBAAmB,GAAG;AACtC,EAAE,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC;AAC1B;;AAEO,SAAS,mBAAmB,GAAG;AACtC,EAAE,OAAO;AACT,IAAI,CAAC,GAAG,EAAE,mBAAmB,CAAC;AAC9B,IAAI,CAAC,GAAG,EAAE,sCAAsC,CAAC;AACjD,IAAI,CAAC,GAAG,EAAE,+BAA+B;AACzC,GAAG;AACH;;AAEO,SAAS,QAAQ,GAAG;AAC3B,EAAE,OAAO,CAAC,IAAI,EAAE,yBAAyB,CAAC;AAC1C;;ACzBe,yBAAQ,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE;AAC9C,EAAE,OAAO,UAAU,CAAC,CAAC,EAAE,WAAW,CAAC,mBAAmB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;AACnE;;ACFe,eAAQ,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE;AAC9C,EAAE,OAAO,cAAc,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;AACjG;;ACFe,eAAQ,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE;AACtD,EAAE,OAAO,eAAe,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;AAC1G;;ACFe,gBAAQ,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;AAC1D,EAAE,OAAOA,QAAE,CAAC,MAAM;AAClB,IAAI,CAAC,EAAE,WAAW,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI,CAAC;AACrD,IAAI,CAAC,EAAE,WAAW,CAAC,mBAAmB,EAAE,OAAO,CAAC,IAAI;AACpD,GAAG;AACH;;ACLe,eAAQ,EAAE,CAAC,WAAW,CAAC,EAAE;AACxC,EAAE,OAAO,eAAe,CAAC,CAAC,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAAC;AAC5D;;ACJO,SAAS,qBAAqB,CAAC,KAAK,EAAE,UAAU,EAAE;AACzD,EAAE,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;AAC/D;;ACAO,SAAS,oBAAoB,CAAC,IAAI,EAAE,UAAU,EAAE;AACvD,EAAE,OAAO,MAAM,CAAC,WAAW;AAC3B,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM;AAClD,MAAM,OAAO;AACb,MAAM;AACN,QAAQ,GAAG,GAAG;AACd,QAAQ,sBAAsB,CAAC,KAAK,EAAE,qBAAqB,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC;AAClF;AACA,KAAK,CAAC;AACN,GAAG;AACH;;;;"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@form8ion/github-workflows-core",
3
3
  "description": "core functionality for form8ion plugins that manage github workflows",
4
4
  "license": "MIT",
5
- "version": "5.5.0",
5
+ "version": "5.7.0",
6
6
  "type": "commonjs",
7
7
  "engines": {
8
8
  "node": "^18.17 || >=20.6.1"
@@ -20,7 +20,8 @@
20
20
  "module": "lib/index.mjs",
21
21
  "sideEffects": false,
22
22
  "scripts": {
23
- "test": "npm-run-all --print-label build --parallel lint:* --parallel test:*",
23
+ "pretest": "run-s build",
24
+ "test": "npm-run-all --print-label --parallel lint:* --parallel test:*",
24
25
  "pretest:integration:base": "run-s build",
25
26
  "lint:gherkin": "gherkin-lint",
26
27
  "test:integration": "run-s 'test:integration:base -- --profile noWip'",
@@ -57,39 +58,41 @@
57
58
  "access": "public",
58
59
  "provenance": true
59
60
  },
60
- "packageManager": "npm@11.1.0+sha512.acf301ad9b9ddba948fcb72341e2f0fcae477f56a95cc2a092934d133a7461062633cefbf93d5934a3dc0768674e2edee9f04dcfcc4bb4c327ff0e3a7d552a1b",
61
+ "packageManager": "npm@11.7.0+sha512.c22099a6fff8d5b2286c2a09df5352b4858a7c0c716320f58989d60ad8b29ecf2ce6fdfe97ccb41c23ffb1272e1fa079f868487dd6b81d02a2a9e199c095a117",
61
62
  "dependencies": {
62
63
  "@form8ion/core": "^4.7.1"
63
64
  },
64
65
  "devDependencies": {
65
- "@babel/register": "7.25.9",
66
- "@cucumber/cucumber": "10.9.0",
67
- "@form8ion/babel-preset": "1.6.141",
68
- "@form8ion/commitlint-config": "2.0.3",
69
- "@form8ion/eslint-config": "7.0.12",
66
+ "@babel/register": "7.28.3",
67
+ "@cucumber/cucumber": "11.3.0",
68
+ "@form8ion/babel-preset": "1.6.150",
69
+ "@form8ion/commitlint-config": "2.0.8",
70
+ "@form8ion/eslint-config": "7.0.13",
70
71
  "@form8ion/eslint-config-cucumber": "1.4.1",
71
72
  "@form8ion/eslint-config-mocha": "3.0.6",
72
- "@form8ion/remark-lint-preset": "6.0.6",
73
- "@rollup/plugin-babel": "6.0.4",
74
- "@travi/any": "3.1.2",
75
- "ban-sensitive-files": "1.10.7",
73
+ "@form8ion/eslint-config-vitest": "1.0.0",
74
+ "@form8ion/remark-lint-preset": "6.0.7",
75
+ "@rollup/plugin-babel": "6.1.0",
76
+ "@travi/any": "3.1.3",
77
+ "ban-sensitive-files": "1.10.11",
76
78
  "c8": "10.1.3",
77
- "cross-env": "7.0.3",
79
+ "cross-env": "10.1.0",
78
80
  "cz-conventional-changelog": "3.3.0",
79
81
  "gherkin-lint": "4.2.4",
80
82
  "husky": "9.1.7",
81
- "jest-when": "3.7.0",
82
- "lockfile-lint": "4.14.0",
83
- "ls-engines": "0.9.3",
84
- "mock-fs": "5.4.1",
85
- "npm-run-all2": "7.0.2",
86
- "publint": "0.3.2",
83
+ "lockfile-lint": "4.14.1",
84
+ "lodash.zip": "4.2.0",
85
+ "ls-engines": "0.9.4",
86
+ "mock-fs": "5.5.0",
87
+ "npm-run-all2": "8.0.4",
88
+ "publint": "0.3.16",
87
89
  "remark-cli": "12.0.1",
88
90
  "remark-toc": "9.0.0",
89
91
  "remark-usage": "11.0.1",
90
- "rimraf": "6.0.1",
91
- "rollup": "4.32.1",
92
+ "rimraf": "6.1.2",
93
+ "rollup": "4.54.0",
92
94
  "rollup-plugin-auto-external": "2.0.0",
93
- "vitest": "3.0.4"
95
+ "vitest": "4.0.16",
96
+ "vitest-when": "0.10.0"
94
97
  }
95
98
  }