@cmflow/cli 3.4.0-alpha.1 → 3.4.0-alpha.3

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.
Files changed (209) hide show
  1. package/README.md +102 -298
  2. package/dist/bin/cm.mjs +9985 -1348
  3. package/dist/bin/cmrelease.mjs +3875 -1193
  4. package/dist/{cli-truncate-CXNquMRK.mjs → cli-truncate-Bi2MjGwF.mjs} +177 -6
  5. package/dist/cli-truncate-DMcpM5Q7.mjs +2 -0
  6. package/dist/cli-truncate-DMcpM5Q7.mjs.map +1 -0
  7. package/dist/{cli-truncate-BmHD4ngn.mjs → cli-truncate-DsW0mgI_.mjs} +177 -6
  8. package/dist/{common-CwPbT3So.mjs → common-BdfXquG0.mjs} +31 -36
  9. package/dist/common-BdfXquG0.mjs.map +1 -0
  10. package/dist/compile-packages-BB08_q2B.mjs +2 -0
  11. package/dist/compile-packages-BB08_q2B.mjs.map +1 -0
  12. package/dist/docker-Cc30aRzl.mjs +34 -0
  13. package/dist/docker-Cc30aRzl.mjs.map +1 -0
  14. package/dist/docker-clean-tags-EvFdWykP.mjs +2 -0
  15. package/dist/docker-clean-tags-EvFdWykP.mjs.map +1 -0
  16. package/dist/docker-publish-CG0aN9se.mjs +2 -0
  17. package/dist/docker-publish-CG0aN9se.mjs.map +1 -0
  18. package/dist/find-packages-611B-66T.mjs +42 -0
  19. package/dist/find-packages-611B-66T.mjs.map +1 -0
  20. package/dist/get-config-8ivgd1KC.mjs +9 -0
  21. package/dist/get-config-8ivgd1KC.mjs.map +1 -0
  22. package/dist/get-east-asian-width-Tfn8qoqd.mjs.map +1 -1
  23. package/dist/{get-east-asian-width-eFfEkHwo.mjs → get-east-asian-width-wiVWCFXf.mjs} +4 -4
  24. package/dist/log-update-CLbF3iV6.mjs +6 -0
  25. package/dist/log-update-CLbF3iV6.mjs.map +1 -0
  26. package/dist/{log-update-B2GqeeDd.mjs → log-update-CTXRtajW.mjs} +185 -14
  27. package/dist/{log-update-BldA9lkm.mjs → log-update-Dy1vPMGY.mjs} +185 -14
  28. package/dist/npm-VM_GgazT.mjs +2 -0
  29. package/dist/npm-VM_GgazT.mjs.map +1 -0
  30. package/dist/{semver-D8gwMSFO.mjs → semver-DFjVbN1S.mjs} +2 -2
  31. package/dist/semver-DFjVbN1S.mjs.map +1 -0
  32. package/dist/source-CwLcYLzI.mjs +7 -0
  33. package/dist/source-CwLcYLzI.mjs.map +1 -0
  34. package/dist/{wrap-ansi-DsMb4WnZ.mjs → wrap-ansi-9ugahFCy.mjs} +2 -2
  35. package/dist/wrap-ansi-9ugahFCy.mjs.map +1 -0
  36. package/dist/{wrap-ansi-CWIezXNl.mjs → wrap-ansi-BRr0GA6g.mjs} +5 -5
  37. package/dist/{wrap-ansi-T0rz0Urp.mjs → wrap-ansi-Cupoo4Yg.mjs} +5 -5
  38. package/dist/wrap-ansi-dwgEjNWf.mjs +2 -0
  39. package/dist/write-package-cxki9d3K.mjs +8 -0
  40. package/dist/write-package-cxki9d3K.mjs.map +1 -0
  41. package/dist/write-packages-CxCAl_AG.mjs +10 -0
  42. package/dist/write-packages-CxCAl_AG.mjs.map +1 -0
  43. package/package.json +9 -41
  44. package/tsdown.config.ts +5 -14
  45. package/.oxfmtrc.json +0 -11
  46. package/.yarn/install-state.gz +0 -0
  47. package/.yarn/releases/yarn-4.18.0.cjs +0 -1000
  48. package/.yarnrc.yml +0 -10
  49. package/bin/cm-checkfeatures.ts +0 -10
  50. package/bin/cm-clean.ts +0 -10
  51. package/bin/cm-config.ts +0 -10
  52. package/bin/cm-deploy.ts +0 -10
  53. package/bin/cm-expedit.ts +0 -19
  54. package/bin/cm-fetch.ts +0 -10
  55. package/bin/cm-finish.ts +0 -10
  56. package/bin/cm-jira-releases.ts +0 -10
  57. package/bin/cm-merge.ts +0 -10
  58. package/bin/cm-publish.ts +0 -10
  59. package/bin/cm-pull.ts +0 -8
  60. package/bin/cm-push.ts +0 -10
  61. package/bin/cm-rebase.ts +0 -10
  62. package/bin/cm-release.ts +0 -5
  63. package/bin/cm-republish.ts +0 -10
  64. package/bin/cm-start.ts +0 -10
  65. package/bin/cm.ts +0 -40
  66. package/dist/cli-truncate-DbOyuy2e.mjs +0 -2
  67. package/dist/cli-truncate-DbOyuy2e.mjs.map +0 -1
  68. package/dist/common-CwPbT3So.mjs.map +0 -1
  69. package/dist/docker-clean-tags-Cd-E8IqJ.mjs +0 -2
  70. package/dist/docker-clean-tags-Cd-E8IqJ.mjs.map +0 -1
  71. package/dist/docker-publish-B0E0qYYB.mjs +0 -2
  72. package/dist/docker-publish-B0E0qYYB.mjs.map +0 -1
  73. package/dist/get-config-DoOyLztI.mjs +0 -41
  74. package/dist/get-config-DoOyLztI.mjs.map +0 -1
  75. package/dist/log-update-By8Z-mak.mjs +0 -6
  76. package/dist/log-update-By8Z-mak.mjs.map +0 -1
  77. package/dist/semver-D8gwMSFO.mjs.map +0 -1
  78. package/dist/src/index.mjs +0 -18
  79. package/dist/src/index.mjs.map +0 -1
  80. package/dist/src/semantic/core/analyze-commits.mjs +0 -2
  81. package/dist/src/semantic/core/analyze-commits.mjs.map +0 -1
  82. package/dist/src/semantic/core/conditional.mjs +0 -2
  83. package/dist/src/semantic/core/conditional.mjs.map +0 -1
  84. package/dist/src/semantic/core/exit.mjs +0 -2
  85. package/dist/src/semantic/core/exit.mjs.map +0 -1
  86. package/dist/src/semantic/core/prepare/bump-version.mjs +0 -48
  87. package/dist/src/semantic/core/prepare/bump-version.mjs.map +0 -1
  88. package/dist/src/semantic/core/prepare/commit.mjs +0 -2
  89. package/dist/src/semantic/core/prepare/commit.mjs.map +0 -1
  90. package/dist/src/semantic/core/prepare/release-info.mjs +0 -2
  91. package/dist/src/semantic/core/prepare/release-info.mjs.map +0 -1
  92. package/dist/src/semantic/core/run.mjs +0 -2
  93. package/dist/src/semantic/core/run.mjs.map +0 -1
  94. package/dist/src/semantic/core/sync-repository.mjs +0 -2
  95. package/dist/src/semantic/core/sync-repository.mjs.map +0 -1
  96. package/dist/src/semantic/core/verify-conditions.mjs +0 -2
  97. package/dist/src/semantic/core/verify-conditions.mjs.map +0 -1
  98. package/dist/src/semantic/core/verify-release.mjs +0 -2
  99. package/dist/src/semantic/core/verify-release.mjs.map +0 -1
  100. package/dist/src/semantic/docker/publish.mjs +0 -2
  101. package/dist/src/semantic/docker/publish.mjs.map +0 -1
  102. package/dist/src/semantic/docker/success.mjs +0 -2
  103. package/dist/src/semantic/docker/success.mjs.map +0 -1
  104. package/dist/strip-ansi-Aeu5cmZe.mjs +0 -174
  105. package/dist/strip-ansi-Cl0pRo-s.mjs +0 -2
  106. package/dist/strip-ansi-Cl0pRo-s.mjs.map +0 -1
  107. package/dist/wrap-ansi-BeIjar2W.mjs +0 -2
  108. package/dist/wrap-ansi-DsMb4WnZ.mjs.map +0 -1
  109. package/mise.toml +0 -2
  110. package/oxlint.json +0 -25
  111. package/release.config.mjs +0 -39
  112. package/src/commands/checkfeatures.ts +0 -39
  113. package/src/commands/clean.ts +0 -36
  114. package/src/commands/config.ts +0 -31
  115. package/src/commands/deploy.ts +0 -39
  116. package/src/commands/fetch.ts +0 -30
  117. package/src/commands/finish.ts +0 -50
  118. package/src/commands/index.ts +0 -13
  119. package/src/commands/jira-releases.ts +0 -97
  120. package/src/commands/merge.ts +0 -58
  121. package/src/commands/prompts/branches.ts +0 -46
  122. package/src/commands/pull.ts +0 -44
  123. package/src/commands/push.ts +0 -48
  124. package/src/commands/rebase.ts +0 -56
  125. package/src/commands/release.ts +0 -21
  126. package/src/commands/republish.ts +0 -34
  127. package/src/commands/start.ts +0 -123
  128. package/src/commands/tasks/merge-branch.ts +0 -80
  129. package/src/commands/tasks/push-branch.ts +0 -19
  130. package/src/commands/tasks/rebase-all-branches.ts +0 -37
  131. package/src/commands/tasks/refresh-repository.ts +0 -38
  132. package/src/commands/tasks/run-test.ts +0 -28
  133. package/src/commands/tasks/update-branch.ts +0 -49
  134. package/src/commands/tasks/update-dependencies.ts +0 -43
  135. package/src/commands/utils/check-install.ts +0 -31
  136. package/src/common/back/directus/directus-flow.test.ts +0 -63
  137. package/src/common/back/directus/directus-flow.ts +0 -48
  138. package/src/common/back/http/http-proxy.ts +0 -21
  139. package/src/common/back/http/http-request.spec.ts +0 -50
  140. package/src/common/back/http/http-request.ts +0 -74
  141. package/src/common/back/jira/get-sorted-releases.ts +0 -40
  142. package/src/common/back/jira/interfaces/JiraIIssue.d.ts +0 -100
  143. package/src/common/back/jira/jira-releases.ts +0 -47
  144. package/src/common/back/jira/jira-request.spec.ts +0 -59
  145. package/src/common/back/jira/jira-request.ts +0 -29
  146. package/src/common/back/jira/jira-search.spec.ts +0 -44
  147. package/src/common/back/jira/jira-search.ts +0 -17
  148. package/src/common/cli/bun.test.ts +0 -58
  149. package/src/common/cli/bun.ts +0 -33
  150. package/src/common/cli/cli.ts +0 -127
  151. package/src/common/cli/docker.test.ts +0 -141
  152. package/src/common/cli/docker.ts +0 -66
  153. package/src/common/cli/git.test.ts +0 -215
  154. package/src/common/cli/git.ts +0 -121
  155. package/src/common/cli/lerna.test.ts +0 -58
  156. package/src/common/cli/lerna.ts +0 -25
  157. package/src/common/cli/npm.test.ts +0 -58
  158. package/src/common/cli/npm.ts +0 -33
  159. package/src/common/cli/pnpm.test.ts +0 -58
  160. package/src/common/cli/pnpm.ts +0 -34
  161. package/src/common/cli/yarn.test.ts +0 -58
  162. package/src/common/cli/yarn.ts +0 -33
  163. package/src/common/configure-git-workspace.ts +0 -39
  164. package/src/common/get-config.ts +0 -159
  165. package/src/common/get-package-json.ts +0 -15
  166. package/src/common/get-package-manager.ts +0 -13
  167. package/src/common/get-release-config.ts +0 -9
  168. package/src/common/index.ts +0 -14
  169. package/src/common/run-command.test.ts +0 -66
  170. package/src/common/run-command.ts +0 -67
  171. package/src/common/types.ts +0 -26
  172. package/src/common/vendor.d.ts +0 -4
  173. package/src/index.ts +0 -14
  174. package/src/semantic/core/analyze-commits.ts +0 -21
  175. package/src/semantic/core/conditional.ts +0 -62
  176. package/src/semantic/core/exit.ts +0 -15
  177. package/src/semantic/core/prepare/bump-version.ts +0 -41
  178. package/src/semantic/core/prepare/commit.ts +0 -30
  179. package/src/semantic/core/prepare/release-info.ts +0 -6
  180. package/src/semantic/core/run.ts +0 -23
  181. package/src/semantic/core/sync-repository.ts +0 -55
  182. package/src/semantic/core/verify-conditions.ts +0 -41
  183. package/src/semantic/core/verify-release.ts +0 -10
  184. package/src/semantic/define-config.ts +0 -42
  185. package/src/semantic/docker/publish.ts +0 -6
  186. package/src/semantic/docker/success.ts +0 -10
  187. package/src/semantic/utils/__mock__/test1/package.json +0 -7
  188. package/src/semantic/utils/__mock__/test1/packages/a/package.json +0 -9
  189. package/src/semantic/utils/__mock__/test1/packages/b/package.json +0 -7
  190. package/src/semantic/utils/__mock__/test2/package.json +0 -4
  191. package/src/semantic/utils/__mock__/test2/packages/a/package.json +0 -7
  192. package/src/semantic/utils/__mock__/test2/packages/b/package.json +0 -5
  193. package/src/semantic/utils/bump-packages-version.test.ts +0 -76
  194. package/src/semantic/utils/bump-packages-version.ts +0 -53
  195. package/src/semantic/utils/calculate-snapshot-version.test.ts +0 -69
  196. package/src/semantic/utils/calculate-snapshot-version.ts +0 -17
  197. package/src/semantic/utils/display-package-info.ts +0 -12
  198. package/src/semantic/utils/display-release-info.ts +0 -13
  199. package/src/semantic/utils/docker-clean-tags.test.ts +0 -62
  200. package/src/semantic/utils/docker-clean-tags.ts +0 -58
  201. package/src/semantic/utils/docker-publish.test.ts +0 -45
  202. package/src/semantic/utils/docker-publish.ts +0 -24
  203. package/src/semantic/utils/log-section.ts +0 -9
  204. package/src/semantic/utils/release-rules.ts +0 -15
  205. package/src/semantic/utils/transform-writer.ts +0 -101
  206. package/src/workflow/index.ts +0 -42
  207. package/tsconfig.build.json +0 -29
  208. package/tsconfig.json +0 -30
  209. package/vitest.config.mts +0 -9
@@ -1,45 +0,0 @@
1
- // @ts-nocheck
2
- import { docker } from "../../common/cli/docker.js";
3
- import { getConfig } from "../../common/get-config.js";
4
- import { dockerPublish } from "./docker-publish.js";
5
-
6
- vi.mock("../../common/cli/docker.js", () => {
7
- return {
8
- docker: {
9
- login: vi.fn(),
10
- tag: vi.fn(),
11
- push: vi.fn()
12
- }
13
- };
14
- });
15
-
16
- vi.mock("../../common/get-config.js", () => {
17
- return {
18
- getConfig: vi.fn()
19
- };
20
- });
21
-
22
- describe("dockerPublish", () => {
23
- it("should publish docker image", async () => {
24
- getConfig.mockReturnValue({
25
- PRODUCTION_BRANCH: "production",
26
- DOCKER_REPOSITORY: "owner",
27
- DOCKER_HUB_ID: "login",
28
- DOCKER_HUB_PWD: "password"
29
- });
30
- const context = {
31
- logger: {
32
- info: vi.fn(),
33
- warn: vi.fn()
34
- },
35
- branch: {
36
- name: "branch-name"
37
- }
38
- };
39
- await dockerPublish(context);
40
-
41
- expect(docker.login).toHaveBeenCalledWith("-u", "login", "-p", "password");
42
- expect(docker.tag).toHaveBeenCalledWith("owner:latest", "owner:branch-name");
43
- expect(docker.push).toHaveBeenCalledWith("owner:branch-name");
44
- });
45
- });
@@ -1,24 +0,0 @@
1
- import { docker } from "../../common/cli/docker.js";
2
- import { getConfig } from "../../common/get-config.js";
3
- import type { SemanticContext } from "../../common/types.js";
4
-
5
- export async function dockerPublish(context: SemanticContext) {
6
- context.config = getConfig();
7
- const {
8
- logger,
9
- config: { PRODUCTION_BRANCH, DOCKER_REPOSITORY, DOCKER_HUB_ID, DOCKER_HUB_PWD }
10
- } = context;
11
-
12
- docker.login("-u", DOCKER_HUB_ID as string, "-p", DOCKER_HUB_PWD as string);
13
-
14
- const image =
15
- PRODUCTION_BRANCH === context.branch.name
16
- ? `${DOCKER_REPOSITORY}:${context.nextRelease?.version}`
17
- : `${DOCKER_REPOSITORY}:${context.branch.name}`;
18
- logger.info("context.branch.name : ", context.branch.name);
19
- logger.info("context.nextRelease.version : ", context.nextRelease && context.nextRelease.version);
20
- logger.info("PRODUCTION_BRANCH : ", PRODUCTION_BRANCH);
21
- docker.tag(`${DOCKER_REPOSITORY}:latest`, image);
22
-
23
- await docker.push(image);
24
- }
@@ -1,9 +0,0 @@
1
- interface LogContext {
2
- logger: { info: (...args: unknown[]) => void };
3
- }
4
-
5
- export function logSection(title: string, context: LogContext) {
6
- context.logger.info("-----------------------------------");
7
- context.logger.info(`--- ${title}`);
8
- context.logger.info("-----------------------------------");
9
- }
@@ -1,15 +0,0 @@
1
- import omit from "lodash/omit.js";
2
-
3
- import { WORKFLOW_CONFIGURATION } from "../../workflow/index.js";
4
-
5
- export const releaseRules = [
6
- {
7
- breaking: true,
8
- release: "major"
9
- },
10
- {
11
- revert: true,
12
- release: "patch"
13
- },
14
- ...WORKFLOW_CONFIGURATION.map((props) => omit(props, ["label"]))
15
- ];
@@ -1,101 +0,0 @@
1
- import { WORKFLOW_CONFIGURATION } from "../../workflow/index.js";
2
-
3
- type CommitTypeMapping = Record<string, string>;
4
-
5
- const commitTypeMapping: CommitTypeMapping = WORKFLOW_CONFIGURATION.reduce(
6
- (obj: CommitTypeMapping, { type, label }: { type: string; label: string }) => {
7
- return {
8
- ...obj,
9
- [type]: label
10
- };
11
- },
12
- {} as CommitTypeMapping
13
- );
14
-
15
- interface Commit {
16
- type: string;
17
- message?: string;
18
- subject?: string;
19
- scope?: string;
20
- hash?: string;
21
- shortHash?: string;
22
- notes: Array<{ title: string }>;
23
- references: Array<{ issue: string }>;
24
- [key: string]: unknown;
25
- }
26
-
27
- interface TransformContext {
28
- repository?: string;
29
- host?: string;
30
- owner?: string;
31
- repoUrl?: string;
32
- }
33
-
34
- const transformCommitType = (commit: Commit): string => {
35
- if (commitTypeMapping[commit.type]) {
36
- return commitTypeMapping[commit.type];
37
- }
38
-
39
- return commitTypeMapping["default"] ?? commit.type;
40
- };
41
-
42
- export function transformWriter(commit: Commit, context: TransformContext) {
43
- commit = { ...commit };
44
-
45
- const issues: string[] = [];
46
-
47
- commit.notes.forEach((note) => {
48
- note.title = "BREAKING CHANGES";
49
- });
50
-
51
- commit.type = transformCommitType(commit);
52
-
53
- if (commit.message && commit.message.match(/^[\w-]+$/i)) {
54
- return;
55
- }
56
-
57
- if (commit.subject) {
58
- commit.subject = commit.subject.replace("[MEP]", "");
59
- }
60
-
61
- if (commit.scope === "*") {
62
- commit.scope = "";
63
- }
64
-
65
- if (typeof commit.hash === "string") {
66
- commit.shortHash = commit.hash.substring(0, 7);
67
- }
68
-
69
- if (typeof commit.subject === "string") {
70
- let url = context.repository ? `${context.host}/${context.owner}/${context.repository}` : context.repoUrl;
71
- if (url) {
72
- url = `${url}/issues/`;
73
- // Issue URLs.
74
- commit.subject = commit.subject.replace(/#([0-9]+)/g, (_, issue: string) => {
75
- issues.push(issue);
76
- return `[#${issue}](${url}${issue})`;
77
- });
78
- }
79
- if (context.host) {
80
- // User URLs.
81
- commit.subject = commit.subject.replace(/\B@([a-z0-9](?:-?[a-z0-9/]){0,38})/g, (_, username: string) => {
82
- if (username.includes("/")) {
83
- return `@${username}`;
84
- }
85
-
86
- return `[@${username}](${context.host}/${username})`;
87
- });
88
- }
89
- }
90
-
91
- // remove references that already appear in the subject
92
- commit.references = commit.references.filter((reference) => {
93
- if (issues.indexOf(reference.issue) === -1) {
94
- return true;
95
- }
96
-
97
- return false;
98
- });
99
-
100
- return commit;
101
- }
@@ -1,42 +0,0 @@
1
- export const WORKFLOW_CONFIGURATION = [
2
- {
3
- type: "feat",
4
- label: "Features",
5
- release: "minor"
6
- },
7
- {
8
- type: "fix",
9
- label: "Bug Fixes",
10
- release: "patch"
11
- },
12
- {
13
- type: "chore",
14
- label: "Chores",
15
- release: false
16
- },
17
- {
18
- type: "ci",
19
- label: "CI",
20
- release: false
21
- },
22
- {
23
- type: "docs",
24
- label: "Documentation",
25
- release: "patch"
26
- },
27
- {
28
- type: "tech",
29
- label: "Technical Improvements",
30
- release: "patch"
31
- },
32
- {
33
- type: "refactor",
34
- label: "Technical Improvements",
35
- release: "patch"
36
- },
37
- {
38
- type: "default",
39
- label: "Miscellaneous",
40
- release: false
41
- }
42
- ];
@@ -1,29 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "baseUrl": ".",
4
- "target": "ESNext",
5
- "module": "Preserve",
6
- "moduleResolution": "Bundler",
7
- "sourceMap": true,
8
- "declaration": false,
9
- "skipLibCheck": true,
10
- "skipDefaultLibCheck": true,
11
- "isolatedModules": true,
12
- "noImplicitAny": true,
13
- "strictNullChecks": true,
14
- "strictPropertyInitialization": false,
15
- "noUnusedLocals": false,
16
- "noUnusedParameters": false,
17
- "allowSyntheticDefaultImports": true,
18
- "newLine": "LF",
19
- "esModuleInterop": true,
20
- "resolveJsonModule": true,
21
- "useDefineForClassFields": false,
22
- "lib": ["ESNext"],
23
- "preserveConstEnums": true,
24
- "verbatimModuleSyntax": false,
25
- "types": ["node"]
26
- },
27
- "include": ["bin/**/*", "src/**/*"],
28
- "exclude": ["node_modules", "dist"]
29
- }
package/tsconfig.json DELETED
@@ -1,30 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "ESNext",
4
- "module": "Preserve",
5
- "moduleResolution": "Bundler",
6
- "sourceMap": true,
7
- "declaration": false,
8
- "skipLibCheck": true,
9
- "skipDefaultLibCheck": true,
10
- "isolatedModules": false,
11
- "noImplicitAny": true,
12
- "strictNullChecks": true,
13
- "strict": true,
14
- "strictPropertyInitialization": false,
15
- "noUnusedLocals": false,
16
- "noUnusedParameters": false,
17
- "allowSyntheticDefaultImports": true,
18
- "newLine": "LF",
19
- "noEmit": true,
20
- "esModuleInterop": true,
21
- "resolveJsonModule": true,
22
- "useDefineForClassFields": false,
23
- "lib": ["ESNext"],
24
- "preserveConstEnums": true,
25
- "verbatimModuleSyntax": true,
26
- "types": ["vitest/globals", "vitest/importMeta", "node", "vitest"]
27
- },
28
- "include": ["vitest.config.mts", "tsdown.config.ts", "bin/*.ts", "./src/**/*"],
29
- "exclude": ["node_modules", "dist"]
30
- }
package/vitest.config.mts DELETED
@@ -1,9 +0,0 @@
1
- import { defineConfig } from "vitest/config";
2
-
3
- export default defineConfig({
4
- test: {
5
- globals: true,
6
- environment: "node",
7
- include: ["src/**/*.{spec,test}.{js,ts}", "bin/**/*.{spec,test}.{js,ts}"]
8
- }
9
- });