rangutopia 0.0.0-experimental-d5da43c68

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 (214) hide show
  1. package/.editorconfig +10 -0
  2. package/.gitattributes +4 -0
  3. package/.yarnrc.yml +1 -0
  4. package/README.md +4 -0
  5. package/dist/commands/library/build/action.d.ts +4 -0
  6. package/dist/commands/library/build/action.d.ts.map +1 -0
  7. package/dist/commands/library/build/action.js +30 -0
  8. package/dist/commands/library/build/action.js.map +1 -0
  9. package/dist/commands/library/build/mod.d.ts +2 -0
  10. package/dist/commands/library/build/mod.d.ts.map +1 -0
  11. package/dist/commands/library/build/mod.js +2 -0
  12. package/dist/commands/library/build/mod.js.map +1 -0
  13. package/dist/commands/library/build/options.d.ts +23 -0
  14. package/dist/commands/library/build/options.d.ts.map +1 -0
  15. package/dist/commands/library/build/options.js +98 -0
  16. package/dist/commands/library/build/options.js.map +1 -0
  17. package/dist/commands/library/check/action.d.ts +2 -0
  18. package/dist/commands/library/check/action.d.ts.map +1 -0
  19. package/dist/commands/library/check/action.js +24 -0
  20. package/dist/commands/library/check/action.js.map +1 -0
  21. package/dist/commands/library/check/mod.d.ts +2 -0
  22. package/dist/commands/library/check/mod.d.ts.map +1 -0
  23. package/dist/commands/library/check/mod.js +2 -0
  24. package/dist/commands/library/check/mod.js.map +1 -0
  25. package/dist/commands/library/mod.d.ts +4 -0
  26. package/dist/commands/library/mod.d.ts.map +1 -0
  27. package/dist/commands/library/mod.js +33 -0
  28. package/dist/commands/library/mod.js.map +1 -0
  29. package/dist/commands/library/publish/action.d.ts +3 -0
  30. package/dist/commands/library/publish/action.d.ts.map +1 -0
  31. package/dist/commands/library/publish/action.js +132 -0
  32. package/dist/commands/library/publish/action.js.map +1 -0
  33. package/dist/commands/library/publish/configs.d.ts +6 -0
  34. package/dist/commands/library/publish/configs.d.ts.map +1 -0
  35. package/dist/commands/library/publish/configs.js +23 -0
  36. package/dist/commands/library/publish/configs.js.map +1 -0
  37. package/dist/commands/library/publish/constants.d.ts +3 -0
  38. package/dist/commands/library/publish/constants.d.ts.map +1 -0
  39. package/dist/commands/library/publish/constants.js +3 -0
  40. package/dist/commands/library/publish/constants.js.map +1 -0
  41. package/dist/commands/library/publish/errors.d.ts +41 -0
  42. package/dist/commands/library/publish/errors.d.ts.map +1 -0
  43. package/dist/commands/library/publish/errors.js +61 -0
  44. package/dist/commands/library/publish/errors.js.map +1 -0
  45. package/dist/commands/library/publish/features.d.ts +7 -0
  46. package/dist/commands/library/publish/features.d.ts.map +1 -0
  47. package/dist/commands/library/publish/features.js +29 -0
  48. package/dist/commands/library/publish/features.js.map +1 -0
  49. package/dist/commands/library/publish/graph.d.ts +15 -0
  50. package/dist/commands/library/publish/graph.d.ts.map +1 -0
  51. package/dist/commands/library/publish/graph.js +82 -0
  52. package/dist/commands/library/publish/graph.js.map +1 -0
  53. package/dist/commands/library/publish/helpers.d.ts +29 -0
  54. package/dist/commands/library/publish/helpers.d.ts.map +1 -0
  55. package/dist/commands/library/publish/helpers.js +624 -0
  56. package/dist/commands/library/publish/helpers.js.map +1 -0
  57. package/dist/commands/library/publish/mod.d.ts +2 -0
  58. package/dist/commands/library/publish/mod.d.ts.map +1 -0
  59. package/dist/commands/library/publish/mod.js +2 -0
  60. package/dist/commands/library/publish/mod.js.map +1 -0
  61. package/dist/commands/library/publish/options.d.ts +9 -0
  62. package/dist/commands/library/publish/options.d.ts.map +1 -0
  63. package/dist/commands/library/publish/options.js +8 -0
  64. package/dist/commands/library/publish/options.js.map +1 -0
  65. package/dist/commands/library/publish/state.d.ts +22 -0
  66. package/dist/commands/library/publish/state.d.ts.map +1 -0
  67. package/dist/commands/library/publish/state.js +44 -0
  68. package/dist/commands/library/publish/state.js.map +1 -0
  69. package/dist/commands/library/publish/types.d.ts +18 -0
  70. package/dist/commands/library/publish/types.d.ts.map +1 -0
  71. package/dist/commands/library/publish/types.js +2 -0
  72. package/dist/commands/library/publish/types.js.map +1 -0
  73. package/dist/commands/tools/husky/init/action.d.ts +4 -0
  74. package/dist/commands/tools/husky/init/action.d.ts.map +1 -0
  75. package/dist/commands/tools/husky/init/action.js +82 -0
  76. package/dist/commands/tools/husky/init/action.js.map +1 -0
  77. package/dist/commands/tools/husky/init/mod.d.ts +2 -0
  78. package/dist/commands/tools/husky/init/mod.d.ts.map +1 -0
  79. package/dist/commands/tools/husky/init/mod.js +2 -0
  80. package/dist/commands/tools/husky/init/mod.js.map +1 -0
  81. package/dist/commands/tools/husky/init/options.d.ts +10 -0
  82. package/dist/commands/tools/husky/init/options.d.ts.map +1 -0
  83. package/dist/commands/tools/husky/init/options.js +10 -0
  84. package/dist/commands/tools/husky/init/options.js.map +1 -0
  85. package/dist/commands/tools/husky/mod.d.ts +4 -0
  86. package/dist/commands/tools/husky/mod.d.ts.map +1 -0
  87. package/dist/commands/tools/husky/mod.js +12 -0
  88. package/dist/commands/tools/husky/mod.js.map +1 -0
  89. package/dist/commands/tools/lint/init/action.d.ts +2 -0
  90. package/dist/commands/tools/lint/init/action.d.ts.map +1 -0
  91. package/dist/commands/tools/lint/init/action.js +19 -0
  92. package/dist/commands/tools/lint/init/action.js.map +1 -0
  93. package/dist/commands/tools/lint/init/mod.d.ts +2 -0
  94. package/dist/commands/tools/lint/init/mod.d.ts.map +1 -0
  95. package/dist/commands/tools/lint/init/mod.js +2 -0
  96. package/dist/commands/tools/lint/init/mod.js.map +1 -0
  97. package/dist/commands/tools/lint/mod.d.ts +4 -0
  98. package/dist/commands/tools/lint/mod.d.ts.map +1 -0
  99. package/dist/commands/tools/lint/mod.js +11 -0
  100. package/dist/commands/tools/lint/mod.js.map +1 -0
  101. package/dist/commands/tools/mod.d.ts +4 -0
  102. package/dist/commands/tools/mod.d.ts.map +1 -0
  103. package/dist/commands/tools/mod.js +10 -0
  104. package/dist/commands/tools/mod.js.map +1 -0
  105. package/dist/configs.d.ts +8 -0
  106. package/dist/configs.d.ts.map +1 -0
  107. package/dist/configs.js +13 -0
  108. package/dist/configs.js.map +1 -0
  109. package/dist/constants.d.ts +6 -0
  110. package/dist/constants.d.ts.map +1 -0
  111. package/dist/constants.js +7 -0
  112. package/dist/constants.js.map +1 -0
  113. package/dist/main.d.ts +3 -0
  114. package/dist/main.d.ts.map +1 -0
  115. package/dist/main.js +12 -0
  116. package/dist/main.js.map +1 -0
  117. package/dist/modules/logger/logger.d.ts +19 -0
  118. package/dist/modules/logger/logger.d.ts.map +1 -0
  119. package/dist/modules/logger/logger.js +47 -0
  120. package/dist/modules/logger/logger.js.map +1 -0
  121. package/dist/modules/logger/mod.d.ts +2 -0
  122. package/dist/modules/logger/mod.d.ts.map +1 -0
  123. package/dist/modules/logger/mod.js +2 -0
  124. package/dist/modules/logger/mod.js.map +1 -0
  125. package/dist/modules/mod.d.ts +4 -0
  126. package/dist/modules/mod.d.ts.map +1 -0
  127. package/dist/modules/mod.js +4 -0
  128. package/dist/modules/mod.js.map +1 -0
  129. package/dist/modules/monorepoManager/mod.d.ts +6 -0
  130. package/dist/modules/monorepoManager/mod.d.ts.map +1 -0
  131. package/dist/modules/monorepoManager/mod.js +26 -0
  132. package/dist/modules/monorepoManager/mod.js.map +1 -0
  133. package/dist/modules/monorepoManager/monorepoManager.d.ts +12 -0
  134. package/dist/modules/monorepoManager/monorepoManager.d.ts.map +1 -0
  135. package/dist/modules/monorepoManager/monorepoManager.js +13 -0
  136. package/dist/modules/monorepoManager/monorepoManager.js.map +1 -0
  137. package/dist/modules/monorepoManager/nxAdapter.d.ts +9 -0
  138. package/dist/modules/monorepoManager/nxAdapter.d.ts.map +1 -0
  139. package/dist/modules/monorepoManager/nxAdapter.js +27 -0
  140. package/dist/modules/monorepoManager/nxAdapter.js.map +1 -0
  141. package/dist/modules/monorepoManager/turborepoAdapter.d.ts +9 -0
  142. package/dist/modules/monorepoManager/turborepoAdapter.d.ts.map +1 -0
  143. package/dist/modules/monorepoManager/turborepoAdapter.js +33 -0
  144. package/dist/modules/monorepoManager/turborepoAdapter.js.map +1 -0
  145. package/dist/modules/monorepoManager/types.d.ts +5 -0
  146. package/dist/modules/monorepoManager/types.d.ts.map +1 -0
  147. package/dist/modules/monorepoManager/types.js +2 -0
  148. package/dist/modules/monorepoManager/types.js.map +1 -0
  149. package/dist/modules/packageManager/helpers.d.ts +3 -0
  150. package/dist/modules/packageManager/helpers.d.ts.map +1 -0
  151. package/dist/modules/packageManager/helpers.js +22 -0
  152. package/dist/modules/packageManager/helpers.js.map +1 -0
  153. package/dist/modules/packageManager/mod.d.ts +5 -0
  154. package/dist/modules/packageManager/mod.d.ts.map +1 -0
  155. package/dist/modules/packageManager/mod.js +30 -0
  156. package/dist/modules/packageManager/mod.js.map +1 -0
  157. package/dist/modules/packageManager/packageManager.d.ts +16 -0
  158. package/dist/modules/packageManager/packageManager.d.ts.map +1 -0
  159. package/dist/modules/packageManager/packageManager.js +19 -0
  160. package/dist/modules/packageManager/packageManager.js.map +1 -0
  161. package/dist/modules/packageManager/types.d.ts +7 -0
  162. package/dist/modules/packageManager/types.d.ts.map +1 -0
  163. package/dist/modules/packageManager/types.js +2 -0
  164. package/dist/modules/packageManager/types.js.map +1 -0
  165. package/dist/modules/packageManager/yarnBerryAdapter.d.ts +9 -0
  166. package/dist/modules/packageManager/yarnBerryAdapter.d.ts.map +1 -0
  167. package/dist/modules/packageManager/yarnBerryAdapter.js +49 -0
  168. package/dist/modules/packageManager/yarnBerryAdapter.js.map +1 -0
  169. package/dist/modules/packageManager/yarnClassicAdapter.d.ts +8 -0
  170. package/dist/modules/packageManager/yarnClassicAdapter.d.ts.map +1 -0
  171. package/dist/modules/packageManager/yarnClassicAdapter.js +38 -0
  172. package/dist/modules/packageManager/yarnClassicAdapter.js.map +1 -0
  173. package/dist/setup.d.ts +3 -0
  174. package/dist/setup.d.ts.map +1 -0
  175. package/dist/setup.js +17 -0
  176. package/dist/setup.js.map +1 -0
  177. package/dist/utils/changelog.d.ts +8 -0
  178. package/dist/utils/changelog.d.ts.map +1 -0
  179. package/dist/utils/changelog.js +86 -0
  180. package/dist/utils/changelog.js.map +1 -0
  181. package/dist/utils/cli.d.ts +2 -0
  182. package/dist/utils/cli.d.ts.map +1 -0
  183. package/dist/utils/cli.js +18 -0
  184. package/dist/utils/cli.js.map +1 -0
  185. package/dist/utils/fs.d.ts +6 -0
  186. package/dist/utils/fs.d.ts.map +1 -0
  187. package/dist/utils/fs.js +36 -0
  188. package/dist/utils/fs.js.map +1 -0
  189. package/dist/utils/log.d.ts +7 -0
  190. package/dist/utils/log.d.ts.map +1 -0
  191. package/dist/utils/log.js +9 -0
  192. package/dist/utils/log.js.map +1 -0
  193. package/dist/utils/packageJson.d.ts +45 -0
  194. package/dist/utils/packageJson.d.ts.map +1 -0
  195. package/dist/utils/packageJson.js +135 -0
  196. package/dist/utils/packageJson.js.map +1 -0
  197. package/dist/utils/parse.d.ts +3 -0
  198. package/dist/utils/parse.d.ts.map +1 -0
  199. package/dist/utils/parse.js +15 -0
  200. package/dist/utils/parse.js.map +1 -0
  201. package/dist/utils/yarn.d.ts +16 -0
  202. package/dist/utils/yarn.d.ts.map +1 -0
  203. package/dist/utils/yarn.js +60 -0
  204. package/dist/utils/yarn.js.map +1 -0
  205. package/package.json +38 -0
  206. package/templates/format/.prettierrc.json +6 -0
  207. package/templates/husky/commit-msg +4 -0
  208. package/templates/husky/post-commit +9 -0
  209. package/templates/husky/pre-commit +4 -0
  210. package/templates/lint/.lintstagedrc.mjs +14 -0
  211. package/templates/lint/commitlint.config.js +5 -0
  212. package/templates/lint/eslint.config.mjs +3 -0
  213. package/tsconfig.json +14 -0
  214. package/vitest.config.ts +11 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"changelog.js","sourceRoot":"","sources":["../../src/utils/changelog.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function objectToCliParams(object: Record<string, unknown>): string[];
2
+ //# sourceMappingURL=cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/utils/cli.ts"],"names":[],"mappings":"AAAA,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE,CAe3E"}
@@ -0,0 +1,18 @@
1
+ export function objectToCliParams(object) {
2
+ const iterable = Object.entries(object);
3
+ const params = [];
4
+ iterable.forEach(([key, value]) => {
5
+ if (typeof value === "boolean") {
6
+ params.push(`--${key}`);
7
+ }
8
+ else if (typeof value === "string") {
9
+ params.push(`--${key}`);
10
+ params.push(value);
11
+ }
12
+ else {
13
+ throw new Error("Unhandled type. if you're maintainer, you should add the type to this function.");
14
+ }
15
+ });
16
+ return params;
17
+ }
18
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/utils/cli.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,iBAAiB,CAAC,MAA+B;IACzD,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAC1B,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;QAChC,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;aAAM,CAAC;YACA,MAAM,IAAI,KAAK,CAAC,iFAAiF,CAAC,CAAA;QAC1G,CAAC;IACT,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAA;AACrB,CAAC"}
@@ -0,0 +1,6 @@
1
+ export declare function findBinaryPath(binary: string): Promise<string | undefined>;
2
+ export declare function copy(src: string, dest: string): void;
3
+ export declare function copyDir(srcDir: string, destDir: string): void;
4
+ export declare function importJson<T>(filename: string): Promise<T>;
5
+ export declare const isFileExists: (filename: string) => boolean;
6
+ //# sourceMappingURL=fs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../src/utils/fs.ts"],"names":[],"mappings":"AAMA,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAShF;AAID,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAO7C;AAED,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,QAOtD;AAED,wBAAsB,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAIhE;AAED,eAAO,MAAM,YAAY,GAAI,UAAU,MAAM,YAAkD,CAAC"}
@@ -0,0 +1,36 @@
1
+ import { findUp, pathExists } from "find-up";
2
+ import path from "node:path";
3
+ import fs from "node:fs";
4
+ import { readFile } from "fs/promises";
5
+ import { ROOT_PATH } from "../constants.js";
6
+ export async function findBinaryPath(binary) {
7
+ const localBinPath = (directory) => path.join(directory, "node_modules", '.bin', binary);
8
+ const result = await findUp(async (directory) => {
9
+ const hasBinary = await pathExists(localBinPath(directory));
10
+ return hasBinary && directory;
11
+ }, { type: "directory" });
12
+ return result ? localBinPath(result) : undefined;
13
+ }
14
+ export function copy(src, dest) {
15
+ const stat = fs.statSync(src);
16
+ if (stat.isDirectory()) {
17
+ copyDir(src, dest);
18
+ }
19
+ else {
20
+ fs.copyFileSync(src, dest);
21
+ }
22
+ }
23
+ export function copyDir(srcDir, destDir) {
24
+ fs.mkdirSync(destDir, { recursive: true });
25
+ for (const file of fs.readdirSync(srcDir)) {
26
+ const srcFile = path.resolve(srcDir, file);
27
+ const destFile = path.resolve(destDir, file);
28
+ copy(srcFile, destFile);
29
+ }
30
+ }
31
+ export async function importJson(filename) {
32
+ const json = JSON.parse(await readFile(filename, 'utf-8'));
33
+ return json;
34
+ }
35
+ export const isFileExists = (filename) => fs.existsSync(path.join(ROOT_PATH, filename));
36
+ //# sourceMappingURL=fs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/utils/fs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAC,QAAQ,EAAC,MAAM,aAAa,CAAC;AACrC,OAAO,EAAC,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAE1C,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAc;IAC3C,MAAM,YAAY,GAAG,CAAC,SAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjG,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;QACxC,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;QAC5D,OAAO,SAAS,IAAI,SAAS,CAAC;IACtC,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAA;IAEzB,OAAO,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACzD,CAAC;AAID,MAAM,UAAU,IAAI,CAAC,GAAW,EAAE,IAAY;IACtC,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;IAC7B,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAC1B,CAAC;SAAM,CAAC;QACA,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAClC,CAAC;AACT,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,MAAc,EAAE,OAAe;IAC/C,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC1C,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QAC5C,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IAC/B,CAAC;AACT,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAI,QAAgB;IAChD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAM,CAAC;IAEhE,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ export declare function logErrorAndExit(message: string): never;
2
+ interface MessageContext {
3
+ task: "tsc" | "esbuild";
4
+ }
5
+ export declare function message(context: MessageContext, message: string): string;
6
+ export {};
7
+ //# sourceMappingURL=log.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log.d.ts","sourceRoot":"","sources":["../../src/utils/log.ts"],"names":[],"mappings":"AAEA,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAGtD;AAGD,UAAU,cAAc;IAChB,IAAI,EAAE,KAAK,GAAG,SAAS,CAAC;CAC/B;AAED,wBAAgB,OAAO,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,UAE/D"}
@@ -0,0 +1,9 @@
1
+ import { logger } from "../modules/mod.js";
2
+ export function logErrorAndExit(message) {
3
+ logger.error(message);
4
+ process.exit(1);
5
+ }
6
+ export function message(context, message) {
7
+ return `[${context.task}] ${message}`;
8
+ }
9
+ //# sourceMappingURL=log.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log.js","sourceRoot":"","sources":["../../src/utils/log.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,mBAAmB,CAAC;AAEzC,MAAM,UAAU,eAAe,CAAC,OAAe;IAC7C,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACtB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAOD,MAAM,UAAU,OAAO,CAAC,OAAuB,EAAE,OAAe;IACxD,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;AAC9C,CAAC"}
@@ -0,0 +1,45 @@
1
+ export declare function nearestPackageJsonPath(): Promise<string | undefined>;
2
+ export declare function lookupPackageJsonFilesToFindDependency(name: string, options?: {
3
+ checkDevDependency?: boolean;
4
+ }): Promise<string | undefined>;
5
+ /**
6
+ * Getting a package json and deserialize it to JS object.
7
+ *
8
+ * @param location it appends `package.json` if not exits in `location` string.
9
+ */
10
+ export declare function readPackageJson(location: string): Record<string, unknown>;
11
+ export declare function updatePackageJson(location: string, data: Record<string, unknown>): void;
12
+ export declare function readAndValidatePacakgeJson(path: string): {
13
+ [x: string]: unknown;
14
+ name: string;
15
+ version?: string;
16
+ type?: "module";
17
+ dependencies?: Record<string, string>;
18
+ devDependencies?: Record<string, string>;
19
+ peerDependencies?: Record<string, string>;
20
+ scripts?: Record<string, string>;
21
+ private?: boolean;
22
+ };
23
+ export declare function findMissingDependencies(requiredDependencies: string[]): Promise<any[]>;
24
+ /**
25
+ * Returns the full path of a package including the root path.
26
+ * If no package location is provided, returns the root path.
27
+ *
28
+ * @param {string} [packageLocation=''] - The relative path to the package from root
29
+ * @returns {string} The full path to the package directory
30
+ * @example
31
+ * // Returns root path
32
+ * packagePath()
33
+ *
34
+ */
35
+ export declare function packagePath(packageLocation?: string): string;
36
+ /**
37
+ * Returns the full path to the package.json file of a package.
38
+ * If no package location is provided, returns the root package.json path.
39
+ *
40
+ * // Returns './package.json'
41
+ * packageJsonPath()
42
+ *
43
+ */
44
+ export declare function packageJsonPath(packageLocation?: string): string;
45
+ //# sourceMappingURL=packageJson.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packageJson.d.ts","sourceRoot":"","sources":["../../src/utils/packageJson.ts"],"names":[],"mappings":"AASA,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAS1E;AAGD,wBAAsB,sCAAsC,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA6BlJ;AAGD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAyBzE;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAYvF;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM;;;;;;;;;;EAqBtD;AAGD,wBAAsB,uBAAuB,CAAC,oBAAoB,EAAE,MAAM,EAAE,kBAW3E;AAID;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,eAAe,SAAK,UAE/C;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,eAAe,SAAK,UAEnD"}
@@ -0,0 +1,135 @@
1
+ import { findUp, findUpMultiple } from "find-up";
2
+ import { closeSync, openSync, readFileSync, writeSync } from "node:fs";
3
+ import path, { dirname, join } from "node:path";
4
+ import { z } from "zod/v4";
5
+ import { validatedSchemaOrThrow } from "./parse.js";
6
+ import { logger } from "../modules/mod.js";
7
+ import { ROOT_PATH } from "../constants.js";
8
+ export async function nearestPackageJsonPath() {
9
+ const firstPackageJson = await findUp("package.json");
10
+ if (!firstPackageJson) {
11
+ return undefined;
12
+ }
13
+ const path = dirname(firstPackageJson);
14
+ return path;
15
+ }
16
+ export async function lookupPackageJsonFilesToFindDependency(name, options) {
17
+ const { checkDevDependency = true } = options || {};
18
+ const list = await findUpMultiple("package.json");
19
+ const pathIncludingThePackage = list.find(path => {
20
+ let json;
21
+ try {
22
+ json = readPackageJson(path);
23
+ }
24
+ catch (e) {
25
+ console.log({ e });
26
+ logger.warn(`Seems ${path} is not a valid json. this file will be skipped.`);
27
+ // Skiping this iterate
28
+ return false;
29
+ }
30
+ const isExistInDependencies = json.dependencies?.[name];
31
+ if (checkDevDependency) {
32
+ const isExistInDevDependencies = json.devDependencies?.[name];
33
+ return isExistInDependencies || isExistInDevDependencies;
34
+ }
35
+ return isExistInDependencies;
36
+ });
37
+ return pathIncludingThePackage;
38
+ }
39
+ /**
40
+ * Getting a package json and deserialize it to JS object.
41
+ *
42
+ * @param location it appends `package.json` if not exits in `location` string.
43
+ */
44
+ export function readPackageJson(location) {
45
+ let fullPath;
46
+ if (location.endsWith("package.json")) {
47
+ fullPath = location;
48
+ }
49
+ else {
50
+ fullPath = join(location, 'package.json');
51
+ }
52
+ let content;
53
+ try {
54
+ content = readFileSync(fullPath, {
55
+ encoding: "utf8"
56
+ });
57
+ }
58
+ catch (e) {
59
+ throw new Error(`An error occured during reading contents of ${fullPath}.`, { cause: e });
60
+ }
61
+ try {
62
+ return JSON.parse(content);
63
+ }
64
+ catch (e) {
65
+ throw new Error(`An error occured during paring ${location} file. maybe it's not a valid JSON `, {
66
+ cause: e
67
+ });
68
+ }
69
+ }
70
+ export function updatePackageJson(location, data) {
71
+ let jsonData;
72
+ try {
73
+ jsonData = JSON.stringify(data);
74
+ }
75
+ catch {
76
+ throw new Error("updating package json failed. your data may not be valid.", { cause: data });
77
+ }
78
+ const fd = openSync(location, "w");
79
+ writeSync(fd, jsonData);
80
+ closeSync(fd);
81
+ }
82
+ export function readAndValidatePacakgeJson(path) {
83
+ let packageJsonContent;
84
+ packageJsonContent = readPackageJson(path);
85
+ // @see https://nodejs.org/api/packages.html#nodejs-packagejson-field-definitions
86
+ // @see https://docs.npmjs.com/cli/v11/configuring-npm/package-json
87
+ const PackageJsonSchema = z.looseObject({
88
+ name: z.string(),
89
+ version: z.string().optional(),
90
+ type: z.literal(["module"]).optional(),
91
+ dependencies: z.record(z.string(), z.string()).optional(),
92
+ devDependencies: z.record(z.string(), z.string()).optional(),
93
+ peerDependencies: z.record(z.string(), z.string()).optional(),
94
+ scripts: z.record(z.string(), z.string()).optional(),
95
+ private: z.boolean().optional()
96
+ });
97
+ const output = validatedSchemaOrThrow(PackageJsonSchema, packageJsonContent);
98
+ return output;
99
+ }
100
+ export async function findMissingDependencies(requiredDependencies) {
101
+ const listRequiredPackages = await Promise.all(requiredDependencies.map(name => lookupPackageJsonFilesToFindDependency(name)));
102
+ const missingPackages = [];
103
+ listRequiredPackages.forEach((result, index) => {
104
+ if (!result) {
105
+ missingPackages.push(requiredDependencies[index]);
106
+ }
107
+ });
108
+ return missingPackages;
109
+ }
110
+ /**
111
+ * Returns the full path of a package including the root path.
112
+ * If no package location is provided, returns the root path.
113
+ *
114
+ * @param {string} [packageLocation=''] - The relative path to the package from root
115
+ * @returns {string} The full path to the package directory
116
+ * @example
117
+ * // Returns root path
118
+ * packagePath()
119
+ *
120
+ */
121
+ export function packagePath(packageLocation = '') {
122
+ return path.join(ROOT_PATH, packageLocation);
123
+ }
124
+ /**
125
+ * Returns the full path to the package.json file of a package.
126
+ * If no package location is provided, returns the root package.json path.
127
+ *
128
+ * // Returns './package.json'
129
+ * packageJsonPath()
130
+ *
131
+ */
132
+ export function packageJsonPath(packageLocation = '') {
133
+ return path.join(packagePath(packageLocation), 'package.json');
134
+ }
135
+ //# sourceMappingURL=packageJson.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packageJson.js","sourceRoot":"","sources":["../../src/utils/packageJson.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { z } from "zod/v4";
2
+ export declare function validatedSchemaOrThrow<T extends z.ZodTypeAny>(schema: T, data: unknown): z.output<T>;
3
+ //# sourceMappingURL=parse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../src/utils/parse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAY,MAAM,QAAQ,CAAA;AAEpC,wBAAgB,sBAAsB,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAapG"}
@@ -0,0 +1,15 @@
1
+ import { z, ZodError } from "zod/v4";
2
+ export function validatedSchemaOrThrow(schema, data) {
3
+ try {
4
+ const output = schema.parse(data);
5
+ return output;
6
+ }
7
+ catch (e) {
8
+ if (e instanceof ZodError) {
9
+ const message = e.issues.map(issue => `${issue.message} in ${issue.path.join(",")}`).join("\n");
10
+ throw Error(message, { cause: e });
11
+ }
12
+ throw e;
13
+ }
14
+ }
15
+ //# sourceMappingURL=parse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../src/utils/parse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAEpC,MAAM,UAAU,sBAAsB,CAAyB,MAAS,EAAE,IAAa;IAC/E,IAAI,CAAC;QACG,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,OAAO,MAAM,CAAC;IACtB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QAEL,IAAI,CAAC,YAAY,QAAQ,EAAE,CAAC;YACpB,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChG,MAAM,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;QAC1C,CAAC;QAED,MAAM,CAAC,CAAA;IACf,CAAC;AACT,CAAC"}
@@ -0,0 +1,16 @@
1
+ export declare const yarnCommands: {
2
+ add(packages: string[], type?: "dev"): import("nano-spawn").Subprocess;
3
+ getWorkspaces(json?: boolean): Promise<{
4
+ stdout: string;
5
+ stderr: string;
6
+ output: string;
7
+ command: string;
8
+ durationMs: number;
9
+ pipedFrom?: import("nano-spawn").Result | import("nano-spawn").SubprocessError;
10
+ }>;
11
+ bumpProductionVersion(packageName: string, releaseType: "patch" | "minor" | "major"): import("nano-spawn").Subprocess;
12
+ bumpPrereleaseVersion(packageName: string): import("nano-spawn").Subprocess;
13
+ bumpToVersion(packageName: string, newVersion: string): import("nano-spawn").Subprocess;
14
+ publish(pkgLocation: string, tag: string): import("nano-spawn").Subprocess;
15
+ };
16
+ //# sourceMappingURL=yarn.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yarn.d.ts","sourceRoot":"","sources":["../../src/utils/yarn.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY;kBACP,MAAM,EAAE,SAAS,KAAK;;;;;;;;;uCAWD,MAAM,eAAe,OAAO,GAAG,OAAO,GAAG,OAAO;uCAWhD,MAAM;+BAYd,MAAM,cAAc,MAAM;yBAYhC,MAAM,OAAO,MAAM;CAQ3C,CAAC"}
@@ -0,0 +1,60 @@
1
+ import { stripVTControlCharacters } from "node:util";
2
+ import spawn from "nano-spawn";
3
+ export const yarnCommands = {
4
+ add(packages, type) {
5
+ let args = ["add"];
6
+ if (type === "dev")
7
+ args.push("-D");
8
+ args = args.concat(packages);
9
+ return spawn("yarn", args);
10
+ },
11
+ async getWorkspaces(json = true) {
12
+ // --json flag guarantees that whether it is run with yarn or node, the output always has a consistent result.
13
+ const result = await spawn("yarn", ['--silent', 'workspaces', 'info', json ? '--json' : '']);
14
+ return { ...result, stdout: stripVTControlCharacters(result.stdout) };
15
+ },
16
+ bumpProductionVersion(packageName, releaseType) {
17
+ return spawn('yarn', [
18
+ '--silent',
19
+ 'workspace',
20
+ packageName,
21
+ 'version',
22
+ `--${releaseType}`,
23
+ '--no-git-tag-version',
24
+ '--json',
25
+ ]);
26
+ },
27
+ bumpPrereleaseVersion(packageName) {
28
+ return spawn('yarn', [
29
+ '--silent',
30
+ 'workspace',
31
+ packageName,
32
+ 'version',
33
+ '--preid=next',
34
+ '--prerelease',
35
+ '--no-git-tag-version',
36
+ '--json',
37
+ ]);
38
+ },
39
+ bumpToVersion(packageName, newVersion) {
40
+ return spawn('yarn', [
41
+ '--silent',
42
+ 'workspace',
43
+ packageName,
44
+ 'version',
45
+ '--new-version',
46
+ newVersion,
47
+ '--no-git-tag-version',
48
+ '--json',
49
+ ]);
50
+ },
51
+ publish(pkgLocation, tag) {
52
+ return spawn('yarn', [
53
+ 'publish',
54
+ pkgLocation,
55
+ '--tag',
56
+ tag,
57
+ ]);
58
+ },
59
+ };
60
+ //# sourceMappingURL=yarn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yarn.js","sourceRoot":"","sources":["../../src/utils/yarn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B,MAAM,CAAC,MAAM,YAAY,GAAG;IACxB,GAAG,CAAC,QAAkB,EAAE,IAAY;QAChC,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,CAAA;QAClB,IAAI,IAAI,KAAK,KAAK;YAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAC5B,OAAO,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAC9B,CAAC;IACD,KAAK,CAAC,aAAa,CAAC,IAAI,GAAG,IAAI;QAC3B,8GAA8G;QAC9G,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAC5F,OAAO,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,wBAAwB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAA;IACzE,CAAC;IACD,qBAAqB,CAAC,WAAmB,EAAE,WAAwC;QAC/E,OAAO,KAAK,CAAC,MAAM,EAAE;YACjB,UAAU;YACV,WAAW;YACX,WAAW;YACX,SAAS;YACT,KAAK,WAAW,EAAE;YAClB,sBAAsB;YACtB,QAAQ;SACX,CAAC,CAAA;IACN,CAAC;IACD,qBAAqB,CAAC,WAAmB;QACrC,OAAO,KAAK,CAAC,MAAM,EAAE;YACjB,UAAU;YACV,WAAW;YACX,WAAW;YACX,SAAS;YACT,cAAc;YACd,cAAc;YACd,sBAAsB;YACtB,QAAQ;SACX,CAAC,CAAA;IACN,CAAC;IACD,aAAa,CAAC,WAAmB,EAAE,UAAkB;QACjD,OAAO,KAAK,CAAC,MAAM,EAAE;YACjB,UAAU;YACV,WAAW;YACX,WAAW;YACX,SAAS;YACT,eAAe;YACf,UAAU;YACV,sBAAsB;YACtB,QAAQ;SACX,CAAC,CAAA;IACN,CAAC;IACD,OAAO,CAAC,WAAmB,EAAE,GAAW;QACpC,OAAO,KAAK,CAAC,MAAM,EAAE;YACjB,SAAS;YACT,WAAW;YACX,OAAO;YACP,GAAG;SACN,CAAC,CAAA;IACN,CAAC;CACJ,CAAC"}
package/package.json ADDED
@@ -0,0 +1,38 @@
1
+ {
2
+ "name": "rangutopia",
3
+ "type": "module",
4
+ "version": "0.0.0-experimental-d5da43c68",
5
+ "packageManager": "yarn@4.4.1",
6
+ "bin": "./dist/main.js",
7
+ "dependencies": {
8
+ "ci-info": "^4.4.0",
9
+ "commander": "^14.0.0",
10
+ "conventional-changelog": "^7.2.0",
11
+ "conventional-changelog-angular": "^8.3.1",
12
+ "conventional-recommended-bump": "^11.2.0",
13
+ "find-up": "^7.0.0",
14
+ "nano-spawn": "^2.1.0",
15
+ "ora": "^8.2.0",
16
+ "pino": "^10.3.1",
17
+ "pino-pretty": "^13.1.3",
18
+ "semver": "^7.7.4",
19
+ "zod": "^3.25.71"
20
+ },
21
+ "devDependencies": {
22
+ "@types/node": "^22.15.21",
23
+ "@types/semver": "^7",
24
+ "@vitest/coverage-v8": "^3.2.0",
25
+ "esbuild": "^0.25.4",
26
+ "esbuild-plugins-node-modules-polyfill": "^1.7.1",
27
+ "typescript": "^5.8.3",
28
+ "vitest": "^3.2.0"
29
+ },
30
+ "scripts": {
31
+ "build": "tsc",
32
+ "dev": "yarn build && node dist/main.js",
33
+ "test": "vitest run",
34
+ "test:watch": "vitest",
35
+ "test:coverage": "vitest run --coverage"
36
+ },
37
+ "stableVersion": "0.0.6"
38
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "semi": true,
3
+ "tabWidth": 2,
4
+ "singleQuote": true,
5
+ "jsxBracketSameLine": true
6
+ }
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env sh
2
+ . "$(dirname "$0")/_/husky.sh"
3
+
4
+ yarn commitlint $1
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env sh
2
+ . "$(dirname -- "$0")/_/husky.sh"
3
+
4
+ if [ -z "${GIT_COMMITTER_DATE:-}" ]; then
5
+ DATE="$(date -u +%Y-%m-%dT%H:%M:%S%z)";
6
+ export GIT_AUTHOR_DATE="$DATE";
7
+ export GIT_COMMITTER_DATE="$DATE"
8
+ git commit --amend --date "$DATE" --no-edit
9
+ fi
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env sh
2
+ . "$(dirname "$0")/_/husky.sh"
3
+
4
+ npx lint-staged
@@ -0,0 +1,14 @@
1
+ import micromatch from 'micromatch';
2
+
3
+ const eslintIgnoredFiles = ['**/global-wallets-env.d.ts'];
4
+
5
+ export default {
6
+ '*.{ts,tsx}': (files) => {
7
+ const match = micromatch.not(files, eslintIgnoredFiles);
8
+ return `eslint --fix --quiet ${match.join(' ')}`;
9
+ },
10
+
11
+ '*.{ts,tsx,json}': (files) => {
12
+ return `prettier --write ${files.join(' ')}`;
13
+ },
14
+ };
@@ -0,0 +1,5 @@
1
+ const Configuration = {
2
+ extends: ['@commitlint/config-conventional'],
3
+ };
4
+
5
+ module.exports = Configuration;
@@ -0,0 +1,3 @@
1
+ import rangoRules from 'eslint-config-rango';
2
+
3
+ export default [...rangoRules];
package/tsconfig.json ADDED
@@ -0,0 +1,14 @@
1
+ {
2
+ "include": ["src"],
3
+ "exclude": ["node_modules"],
4
+ "compilerOptions": {
5
+ "target": "es2022", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */
6
+ "module": "node16", /* Specify what module code is generated. */
7
+ "verbatimModuleSyntax": true,
8
+ "declaration": true,
9
+ "sourceMap": true,
10
+ "declarationMap": true,
11
+ "rootDir": "./src/",
12
+ "outDir": "dist"
13
+ }
14
+ }
@@ -0,0 +1,11 @@
1
+ import { defineConfig } from "vitest/config";
2
+
3
+ export default defineConfig({
4
+ test: {
5
+ globals: true,
6
+ include: ["tests/**/*.test.ts"],
7
+ environment: "node",
8
+ testTimeout: 60000,
9
+ hookTimeout: 60000,
10
+ },
11
+ });