@hyperfrontend/project-scope 0.2.1 → 0.2.2

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 (439) hide show
  1. package/CHANGELOG.md +7 -1
  2. package/README.md +3 -4
  3. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/array/index.cjs.js +7 -0
  4. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/array/index.esm.js +5 -0
  5. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/console/index.cjs.js +13 -0
  6. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/console/index.esm.js +8 -0
  7. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/date/index.cjs.js +10 -0
  8. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/date/index.esm.js +8 -0
  9. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/error/index.cjs.js +6 -0
  10. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/error/index.esm.js +5 -0
  11. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/json/index.cjs.js +7 -0
  12. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/json/index.esm.js +5 -0
  13. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/map/index.cjs.js +6 -0
  14. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/map/index.esm.js +5 -0
  15. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/math/index.cjs.js +9 -0
  16. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/math/index.esm.js +6 -0
  17. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/number/index.cjs.js +7 -0
  18. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/number/index.esm.js +7 -0
  19. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/object/index.cjs.js +15 -0
  20. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/object/index.esm.js +9 -0
  21. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/set/index.cjs.js +6 -0
  22. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/set/index.esm.js +5 -0
  23. package/_dependencies/@hyperfrontend/logging/index.cjs.js +191 -0
  24. package/_dependencies/@hyperfrontend/logging/index.d.ts +151 -0
  25. package/_dependencies/@hyperfrontend/logging/index.esm.js +186 -0
  26. package/_shared/core/cache/index.cjs.js +135 -0
  27. package/_shared/core/cache/index.esm.js +128 -0
  28. package/_shared/core/errors/structured-errors/index.cjs.js +28 -0
  29. package/_shared/core/errors/structured-errors/index.esm.js +23 -0
  30. package/_shared/core/fs/stat/index.cjs.js +46 -0
  31. package/_shared/core/fs/stat/index.esm.js +40 -0
  32. package/_shared/core/path/join/index.cjs.js +13 -0
  33. package/_shared/core/path/join/index.esm.js +10 -0
  34. package/_shared/core/path/normalize/index.cjs.js +37 -0
  35. package/_shared/core/path/normalize/index.esm.js +31 -0
  36. package/_shared/core/path/resolve/index.cjs.js +47 -0
  37. package/_shared/core/path/resolve/index.esm.js +41 -0
  38. package/_shared/core/path/segments/index.cjs.js +38 -0
  39. package/_shared/core/path/segments/index.esm.js +31 -0
  40. package/_shared/core/patterns/glob/index.cjs.js +145 -0
  41. package/_shared/core/patterns/glob/index.esm.js +136 -0
  42. package/_shared/core/platform/detect/index.cjs.js +103 -0
  43. package/_shared/core/platform/detect/index.esm.js +95 -0
  44. package/_shared/core/platform/line-endings/index.cjs.js +52 -0
  45. package/_shared/core/platform/line-endings/index.esm.js +44 -0
  46. package/_shared/project/config/patterns/index.cjs.js +172 -0
  47. package/_shared/project/config/patterns/index.esm.js +169 -0
  48. package/_shared/tech/monorepo/pnpm-workspaces/index.cjs.js +33 -0
  49. package/_shared/tech/monorepo/pnpm-workspaces/index.esm.js +31 -0
  50. package/_shared/tech/shared-utils/detector-helpers/index.cjs.js +48 -0
  51. package/_shared/tech/shared-utils/detector-helpers/index.esm.js +43 -0
  52. package/_shared/vfs/types/index.cjs.js +14 -0
  53. package/_shared/vfs/types/index.esm.js +12 -0
  54. package/cli/index.cjs.js +1702 -1910
  55. package/cli/index.d.ts +273 -7
  56. package/cli/index.d.ts.map +1 -1
  57. package/cli/index.esm.js +1586 -1794
  58. package/core/encoding/index.cjs.js +86 -401
  59. package/core/encoding/index.d.ts +186 -3
  60. package/core/encoding/index.d.ts.map +1 -1
  61. package/core/encoding/index.esm.js +78 -392
  62. package/core/fs/index.cjs.js +231 -581
  63. package/core/fs/index.d.ts +479 -6
  64. package/core/fs/index.d.ts.map +1 -1
  65. package/core/fs/index.esm.js +221 -571
  66. package/core/index.cjs.js +518 -1748
  67. package/core/index.d.ts +486 -9
  68. package/core/index.d.ts.map +1 -1
  69. package/core/index.esm.js +501 -1728
  70. package/core/path/index.cjs.js +6 -234
  71. package/core/path/index.d.ts +306 -5
  72. package/core/path/index.d.ts.map +1 -1
  73. package/core/path/index.esm.js +4 -232
  74. package/core/platform/index.cjs.js +5 -216
  75. package/core/platform/index.d.ts +185 -3
  76. package/core/platform/index.d.ts.map +1 -1
  77. package/core/platform/index.esm.js +3 -212
  78. package/heuristics/dependencies/index.cjs.js +95 -492
  79. package/heuristics/dependencies/index.d.ts +99 -2
  80. package/heuristics/dependencies/index.d.ts.map +1 -1
  81. package/heuristics/dependencies/index.esm.js +69 -466
  82. package/heuristics/entry-points/index.cjs.js +91 -795
  83. package/heuristics/entry-points/index.d.ts +123 -2
  84. package/heuristics/entry-points/index.d.ts.map +1 -1
  85. package/heuristics/entry-points/index.esm.js +72 -776
  86. package/heuristics/framework/index.cjs.js +1481 -1410
  87. package/heuristics/framework/index.d.ts +104 -2
  88. package/heuristics/framework/index.d.ts.map +1 -1
  89. package/heuristics/framework/index.esm.js +1417 -1346
  90. package/heuristics/index.cjs.js +3206 -3301
  91. package/heuristics/index.d.ts +4 -5
  92. package/heuristics/index.d.ts.map +1 -1
  93. package/heuristics/index.esm.js +3231 -3326
  94. package/heuristics/project-type/index.cjs.js +1487 -1437
  95. package/heuristics/project-type/index.d.ts +64 -2
  96. package/heuristics/project-type/index.d.ts.map +1 -1
  97. package/heuristics/project-type/index.esm.js +1416 -1366
  98. package/index.cjs.js +3044 -3533
  99. package/index.d.ts +44 -10
  100. package/index.d.ts.map +1 -1
  101. package/index.esm.js +2900 -3377
  102. package/models/index.cjs.js +0 -1
  103. package/models/index.d.ts +20 -14
  104. package/models/index.d.ts.map +1 -1
  105. package/models/index.esm.js +0 -1
  106. package/nx/index.cjs.js +163 -577
  107. package/nx/index.d.ts +279 -4
  108. package/nx/index.d.ts.map +1 -1
  109. package/nx/index.esm.js +145 -554
  110. package/package.json +13 -12
  111. package/project/config/index.cjs.js +122 -1062
  112. package/project/config/index.d.ts +202 -4
  113. package/project/config/index.d.ts.map +1 -1
  114. package/project/config/index.esm.js +105 -1043
  115. package/project/index.cjs.js +323 -1100
  116. package/project/index.d.ts +4 -5
  117. package/project/index.d.ts.map +1 -1
  118. package/project/index.esm.js +302 -1076
  119. package/project/package/index.cjs.js +191 -472
  120. package/project/package/index.d.ts +280 -3
  121. package/project/package/index.d.ts.map +1 -1
  122. package/project/package/index.esm.js +178 -458
  123. package/project/root/index.cjs.js +107 -416
  124. package/project/root/index.d.ts +83 -2
  125. package/project/root/index.d.ts.map +1 -1
  126. package/project/root/index.esm.js +96 -405
  127. package/project/traversal/index.cjs.js +94 -621
  128. package/project/traversal/index.d.ts +165 -3
  129. package/project/traversal/index.d.ts.map +1 -1
  130. package/project/traversal/index.esm.js +80 -607
  131. package/tech/backend/index.cjs.js +221 -507
  132. package/tech/backend/index.d.ts +205 -8
  133. package/tech/backend/index.d.ts.map +1 -1
  134. package/tech/backend/index.esm.js +200 -486
  135. package/tech/build/index.cjs.js +348 -635
  136. package/tech/build/index.d.ts +276 -10
  137. package/tech/build/index.d.ts.map +1 -1
  138. package/tech/build/index.esm.js +326 -613
  139. package/tech/frontend/index.cjs.js +505 -684
  140. package/tech/frontend/index.d.ts +379 -15
  141. package/tech/frontend/index.d.ts.map +1 -1
  142. package/tech/frontend/index.esm.js +481 -660
  143. package/tech/index.cjs.js +1580 -1420
  144. package/tech/index.d.ts +55 -32
  145. package/tech/index.d.ts.map +1 -1
  146. package/tech/index.esm.js +1513 -1353
  147. package/tech/legacy/index.cjs.js +97 -448
  148. package/tech/legacy/index.d.ts +125 -7
  149. package/tech/legacy/index.d.ts.map +1 -1
  150. package/tech/legacy/index.esm.js +79 -430
  151. package/tech/linting/index.cjs.js +136 -522
  152. package/tech/linting/index.d.ts +129 -7
  153. package/tech/linting/index.d.ts.map +1 -1
  154. package/tech/linting/index.esm.js +116 -502
  155. package/tech/monorepo/index.cjs.js +244 -572
  156. package/tech/monorepo/index.d.ts +241 -10
  157. package/tech/monorepo/index.d.ts.map +1 -1
  158. package/tech/monorepo/index.esm.js +224 -552
  159. package/tech/testing/index.cjs.js +214 -570
  160. package/tech/testing/index.d.ts +176 -8
  161. package/tech/testing/index.d.ts.map +1 -1
  162. package/tech/testing/index.esm.js +196 -552
  163. package/tech/types/index.cjs.js +121 -505
  164. package/tech/types/index.d.ts +120 -2
  165. package/tech/types/index.d.ts.map +1 -1
  166. package/tech/types/index.esm.js +99 -483
  167. package/vfs/index.cjs.js +647 -1142
  168. package/vfs/index.d.ts +360 -6
  169. package/vfs/index.d.ts.map +1 -1
  170. package/vfs/index.esm.js +672 -1167
  171. package/ARCHITECTURE.md +0 -370
  172. package/analyze.d.ts +0 -33
  173. package/analyze.d.ts.map +0 -1
  174. package/cli/commands/analyze.d.ts +0 -28
  175. package/cli/commands/analyze.d.ts.map +0 -1
  176. package/cli/commands/config.d.ts +0 -27
  177. package/cli/commands/config.d.ts.map +0 -1
  178. package/cli/commands/deps.d.ts +0 -24
  179. package/cli/commands/deps.d.ts.map +0 -1
  180. package/cli/commands/tree.d.ts +0 -36
  181. package/cli/commands/tree.d.ts.map +0 -1
  182. package/cli/index.cjs.js.map +0 -1
  183. package/cli/index.esm.js.map +0 -1
  184. package/cli/run.d.ts +0 -25
  185. package/cli/run.d.ts.map +0 -1
  186. package/cli/types.d.ts +0 -55
  187. package/cli/types.d.ts.map +0 -1
  188. package/core/cache.d.ts +0 -158
  189. package/core/cache.d.ts.map +0 -1
  190. package/core/encoding/convert.d.ts +0 -32
  191. package/core/encoding/convert.d.ts.map +0 -1
  192. package/core/encoding/detect.d.ts +0 -91
  193. package/core/encoding/detect.d.ts.map +0 -1
  194. package/core/encoding/index.cjs.js.map +0 -1
  195. package/core/encoding/index.esm.js.map +0 -1
  196. package/core/errors/structured-errors.d.ts +0 -66
  197. package/core/errors/structured-errors.d.ts.map +0 -1
  198. package/core/fs/directory.d.ts +0 -91
  199. package/core/fs/directory.d.ts.map +0 -1
  200. package/core/fs/index.cjs.js.map +0 -1
  201. package/core/fs/index.esm.js.map +0 -1
  202. package/core/fs/read.d.ts +0 -94
  203. package/core/fs/read.d.ts.map +0 -1
  204. package/core/fs/stat.d.ts +0 -58
  205. package/core/fs/stat.d.ts.map +0 -1
  206. package/core/fs/traversal.d.ts +0 -26
  207. package/core/fs/traversal.d.ts.map +0 -1
  208. package/core/fs/write.d.ts +0 -75
  209. package/core/fs/write.d.ts.map +0 -1
  210. package/core/index.cjs.js.map +0 -1
  211. package/core/index.esm.js.map +0 -1
  212. package/core/logger.d.ts +0 -111
  213. package/core/logger.d.ts.map +0 -1
  214. package/core/path/index.cjs.js.map +0 -1
  215. package/core/path/index.esm.js.map +0 -1
  216. package/core/path/join.d.ts +0 -17
  217. package/core/path/join.d.ts.map +0 -1
  218. package/core/path/normalize.d.ts +0 -37
  219. package/core/path/normalize.d.ts.map +0 -1
  220. package/core/path/resolve.d.ts +0 -52
  221. package/core/path/resolve.d.ts.map +0 -1
  222. package/core/path/segments.d.ts +0 -59
  223. package/core/path/segments.d.ts.map +0 -1
  224. package/core/patterns/glob.d.ts +0 -42
  225. package/core/patterns/glob.d.ts.map +0 -1
  226. package/core/platform/detect.d.ts +0 -66
  227. package/core/platform/detect.d.ts.map +0 -1
  228. package/core/platform/index.cjs.js.map +0 -1
  229. package/core/platform/index.esm.js.map +0 -1
  230. package/core/platform/line-endings.d.ts +0 -48
  231. package/core/platform/line-endings.d.ts.map +0 -1
  232. package/heuristics/dependencies/analyze.d.ts +0 -77
  233. package/heuristics/dependencies/analyze.d.ts.map +0 -1
  234. package/heuristics/dependencies/index.cjs.js.map +0 -1
  235. package/heuristics/dependencies/index.esm.js.map +0 -1
  236. package/heuristics/entry-points/discover.d.ts +0 -113
  237. package/heuristics/entry-points/discover.d.ts.map +0 -1
  238. package/heuristics/entry-points/index.cjs.js.map +0 -1
  239. package/heuristics/entry-points/index.esm.js.map +0 -1
  240. package/heuristics/framework/identify.d.ts +0 -84
  241. package/heuristics/framework/identify.d.ts.map +0 -1
  242. package/heuristics/framework/index.cjs.js.map +0 -1
  243. package/heuristics/framework/index.esm.js.map +0 -1
  244. package/heuristics/index.cjs.js.map +0 -1
  245. package/heuristics/index.esm.js.map +0 -1
  246. package/heuristics/project-type/detect.d.ts +0 -61
  247. package/heuristics/project-type/detect.d.ts.map +0 -1
  248. package/heuristics/project-type/index.cjs.js.map +0 -1
  249. package/heuristics/project-type/index.esm.js.map +0 -1
  250. package/index.cjs.js.map +0 -1
  251. package/index.esm.js.map +0 -1
  252. package/models/index.cjs.js.map +0 -1
  253. package/models/index.esm.js.map +0 -1
  254. package/nx/detect.d.ts +0 -105
  255. package/nx/detect.d.ts.map +0 -1
  256. package/nx/devkit-loader.d.ts +0 -62
  257. package/nx/devkit-loader.d.ts.map +0 -1
  258. package/nx/index.cjs.js.map +0 -1
  259. package/nx/index.esm.js.map +0 -1
  260. package/nx/project-config.d.ts +0 -111
  261. package/nx/project-config.d.ts.map +0 -1
  262. package/project/config/detect.d.ts +0 -77
  263. package/project/config/detect.d.ts.map +0 -1
  264. package/project/config/index.cjs.js.map +0 -1
  265. package/project/config/index.esm.js.map +0 -1
  266. package/project/config/parse.d.ts +0 -53
  267. package/project/config/parse.d.ts.map +0 -1
  268. package/project/config/patterns.d.ts +0 -31
  269. package/project/config/patterns.d.ts.map +0 -1
  270. package/project/index.cjs.js.map +0 -1
  271. package/project/index.esm.js.map +0 -1
  272. package/project/package/dependencies.d.ts +0 -101
  273. package/project/package/dependencies.d.ts.map +0 -1
  274. package/project/package/index.cjs.js.map +0 -1
  275. package/project/package/index.esm.js.map +0 -1
  276. package/project/package/read.d.ts +0 -67
  277. package/project/package/read.d.ts.map +0 -1
  278. package/project/root/detect.d.ts +0 -65
  279. package/project/root/detect.d.ts.map +0 -1
  280. package/project/root/index.cjs.js.map +0 -1
  281. package/project/root/index.esm.js.map +0 -1
  282. package/project/traversal/index.cjs.js.map +0 -1
  283. package/project/traversal/index.esm.js.map +0 -1
  284. package/project/traversal/search.d.ts +0 -59
  285. package/project/traversal/search.d.ts.map +0 -1
  286. package/project/traversal/walk.d.ts +0 -63
  287. package/project/traversal/walk.d.ts.map +0 -1
  288. package/tech/backend/detect-all.d.ts +0 -13
  289. package/tech/backend/detect-all.d.ts.map +0 -1
  290. package/tech/backend/express.d.ts +0 -11
  291. package/tech/backend/express.d.ts.map +0 -1
  292. package/tech/backend/fastify.d.ts +0 -11
  293. package/tech/backend/fastify.d.ts.map +0 -1
  294. package/tech/backend/hono.d.ts +0 -11
  295. package/tech/backend/hono.d.ts.map +0 -1
  296. package/tech/backend/index.cjs.js.map +0 -1
  297. package/tech/backend/index.esm.js.map +0 -1
  298. package/tech/backend/koa.d.ts +0 -11
  299. package/tech/backend/koa.d.ts.map +0 -1
  300. package/tech/backend/nestjs.d.ts +0 -11
  301. package/tech/backend/nestjs.d.ts.map +0 -1
  302. package/tech/backend/types.d.ts +0 -31
  303. package/tech/backend/types.d.ts.map +0 -1
  304. package/tech/build/babel.d.ts +0 -13
  305. package/tech/build/babel.d.ts.map +0 -1
  306. package/tech/build/detect-all.d.ts +0 -13
  307. package/tech/build/detect-all.d.ts.map +0 -1
  308. package/tech/build/esbuild.d.ts +0 -11
  309. package/tech/build/esbuild.d.ts.map +0 -1
  310. package/tech/build/index.cjs.js.map +0 -1
  311. package/tech/build/index.esm.js.map +0 -1
  312. package/tech/build/parcel.d.ts +0 -13
  313. package/tech/build/parcel.d.ts.map +0 -1
  314. package/tech/build/rollup.d.ts +0 -13
  315. package/tech/build/rollup.d.ts.map +0 -1
  316. package/tech/build/swc.d.ts +0 -13
  317. package/tech/build/swc.d.ts.map +0 -1
  318. package/tech/build/types.d.ts +0 -31
  319. package/tech/build/types.d.ts.map +0 -1
  320. package/tech/build/vite.d.ts +0 -13
  321. package/tech/build/vite.d.ts.map +0 -1
  322. package/tech/build/webpack.d.ts +0 -13
  323. package/tech/build/webpack.d.ts.map +0 -1
  324. package/tech/frontend/angular.d.ts +0 -11
  325. package/tech/frontend/angular.d.ts.map +0 -1
  326. package/tech/frontend/astro.d.ts +0 -11
  327. package/tech/frontend/astro.d.ts.map +0 -1
  328. package/tech/frontend/detect-all.d.ts +0 -13
  329. package/tech/frontend/detect-all.d.ts.map +0 -1
  330. package/tech/frontend/gatsby.d.ts +0 -11
  331. package/tech/frontend/gatsby.d.ts.map +0 -1
  332. package/tech/frontend/index.cjs.js.map +0 -1
  333. package/tech/frontend/index.esm.js.map +0 -1
  334. package/tech/frontend/nextjs.d.ts +0 -11
  335. package/tech/frontend/nextjs.d.ts.map +0 -1
  336. package/tech/frontend/nuxt.d.ts +0 -11
  337. package/tech/frontend/nuxt.d.ts.map +0 -1
  338. package/tech/frontend/qwik.d.ts +0 -11
  339. package/tech/frontend/qwik.d.ts.map +0 -1
  340. package/tech/frontend/react.d.ts +0 -11
  341. package/tech/frontend/react.d.ts.map +0 -1
  342. package/tech/frontend/remix.d.ts +0 -11
  343. package/tech/frontend/remix.d.ts.map +0 -1
  344. package/tech/frontend/solid.d.ts +0 -11
  345. package/tech/frontend/solid.d.ts.map +0 -1
  346. package/tech/frontend/svelte.d.ts +0 -11
  347. package/tech/frontend/svelte.d.ts.map +0 -1
  348. package/tech/frontend/sveltekit.d.ts +0 -11
  349. package/tech/frontend/sveltekit.d.ts.map +0 -1
  350. package/tech/frontend/types.d.ts +0 -35
  351. package/tech/frontend/types.d.ts.map +0 -1
  352. package/tech/frontend/vue.d.ts +0 -11
  353. package/tech/frontend/vue.d.ts.map +0 -1
  354. package/tech/index.cjs.js.map +0 -1
  355. package/tech/index.esm.js.map +0 -1
  356. package/tech/legacy/angularjs.d.ts +0 -12
  357. package/tech/legacy/angularjs.d.ts.map +0 -1
  358. package/tech/legacy/backbone.d.ts +0 -11
  359. package/tech/legacy/backbone.d.ts.map +0 -1
  360. package/tech/legacy/detect-all.d.ts +0 -13
  361. package/tech/legacy/detect-all.d.ts.map +0 -1
  362. package/tech/legacy/ember.d.ts +0 -11
  363. package/tech/legacy/ember.d.ts.map +0 -1
  364. package/tech/legacy/index.cjs.js.map +0 -1
  365. package/tech/legacy/index.esm.js.map +0 -1
  366. package/tech/legacy/jquery.d.ts +0 -11
  367. package/tech/legacy/jquery.d.ts.map +0 -1
  368. package/tech/legacy/types.d.ts +0 -33
  369. package/tech/legacy/types.d.ts.map +0 -1
  370. package/tech/linting/biome.d.ts +0 -11
  371. package/tech/linting/biome.d.ts.map +0 -1
  372. package/tech/linting/detect-all.d.ts +0 -13
  373. package/tech/linting/detect-all.d.ts.map +0 -1
  374. package/tech/linting/eslint.d.ts +0 -13
  375. package/tech/linting/eslint.d.ts.map +0 -1
  376. package/tech/linting/index.cjs.js.map +0 -1
  377. package/tech/linting/index.esm.js.map +0 -1
  378. package/tech/linting/prettier.d.ts +0 -13
  379. package/tech/linting/prettier.d.ts.map +0 -1
  380. package/tech/linting/stylelint.d.ts +0 -13
  381. package/tech/linting/stylelint.d.ts.map +0 -1
  382. package/tech/linting/types.d.ts +0 -31
  383. package/tech/linting/types.d.ts.map +0 -1
  384. package/tech/monorepo/detect-all.d.ts +0 -13
  385. package/tech/monorepo/detect-all.d.ts.map +0 -1
  386. package/tech/monorepo/index.cjs.js.map +0 -1
  387. package/tech/monorepo/index.esm.js.map +0 -1
  388. package/tech/monorepo/lerna.d.ts +0 -11
  389. package/tech/monorepo/lerna.d.ts.map +0 -1
  390. package/tech/monorepo/npm-workspaces.d.ts +0 -11
  391. package/tech/monorepo/npm-workspaces.d.ts.map +0 -1
  392. package/tech/monorepo/nx.d.ts +0 -11
  393. package/tech/monorepo/nx.d.ts.map +0 -1
  394. package/tech/monorepo/pnpm-workspaces.d.ts +0 -9
  395. package/tech/monorepo/pnpm-workspaces.d.ts.map +0 -1
  396. package/tech/monorepo/rush.d.ts +0 -11
  397. package/tech/monorepo/rush.d.ts.map +0 -1
  398. package/tech/monorepo/turborepo.d.ts +0 -11
  399. package/tech/monorepo/turborepo.d.ts.map +0 -1
  400. package/tech/monorepo/types.d.ts +0 -39
  401. package/tech/monorepo/types.d.ts.map +0 -1
  402. package/tech/monorepo/yarn-workspaces.d.ts +0 -11
  403. package/tech/monorepo/yarn-workspaces.d.ts.map +0 -1
  404. package/tech/shared-utils/detector-helpers.d.ts +0 -52
  405. package/tech/shared-utils/detector-helpers.d.ts.map +0 -1
  406. package/tech/shared-utils/types.d.ts +0 -41
  407. package/tech/shared-utils/types.d.ts.map +0 -1
  408. package/tech/testing/cypress.d.ts +0 -13
  409. package/tech/testing/cypress.d.ts.map +0 -1
  410. package/tech/testing/detect-all.d.ts +0 -13
  411. package/tech/testing/detect-all.d.ts.map +0 -1
  412. package/tech/testing/index.cjs.js.map +0 -1
  413. package/tech/testing/index.esm.js.map +0 -1
  414. package/tech/testing/jest.d.ts +0 -13
  415. package/tech/testing/jest.d.ts.map +0 -1
  416. package/tech/testing/mocha.d.ts +0 -13
  417. package/tech/testing/mocha.d.ts.map +0 -1
  418. package/tech/testing/playwright.d.ts +0 -13
  419. package/tech/testing/playwright.d.ts.map +0 -1
  420. package/tech/testing/types.d.ts +0 -35
  421. package/tech/testing/types.d.ts.map +0 -1
  422. package/tech/testing/vitest.d.ts +0 -13
  423. package/tech/testing/vitest.d.ts.map +0 -1
  424. package/tech/types/detectors.d.ts +0 -67
  425. package/tech/types/detectors.d.ts.map +0 -1
  426. package/tech/types/index.cjs.js.map +0 -1
  427. package/tech/types/index.esm.js.map +0 -1
  428. package/vfs/commit.d.ts +0 -32
  429. package/vfs/commit.d.ts.map +0 -1
  430. package/vfs/diff.d.ts +0 -73
  431. package/vfs/diff.d.ts.map +0 -1
  432. package/vfs/factory.d.ts +0 -37
  433. package/vfs/factory.d.ts.map +0 -1
  434. package/vfs/fs-tree.d.ts +0 -13
  435. package/vfs/fs-tree.d.ts.map +0 -1
  436. package/vfs/index.cjs.js.map +0 -1
  437. package/vfs/index.esm.js.map +0 -1
  438. package/vfs/types.d.ts +0 -179
  439. package/vfs/types.d.ts.map +0 -1
@@ -0,0 +1,47 @@
1
+ 'use strict';
2
+
3
+ const { exists } = require('../../fs/stat/index.cjs.js');
4
+ const { normalizePath } = require('../normalize/index.cjs.js');
5
+ const node_path = require('node:path');
6
+ const node_fs = require('node:fs');
7
+
8
+ function resolvePath(...segments) {
9
+ return normalizePath(node_path.resolve(...segments));
10
+ }
11
+ function resolveFromWorkspace(workspaceRoot, ...segments) {
12
+ return normalizePath(node_path.resolve(workspaceRoot, ...segments));
13
+ }
14
+ function resolveRealPath(filePath) {
15
+ if (!exists(filePath)) {
16
+ return null;
17
+ }
18
+ try {
19
+ return normalizePath(node_fs.realpathSync(filePath));
20
+ }
21
+ catch {
22
+ return null;
23
+ }
24
+ }
25
+ function relativePath(from, to) {
26
+ return normalizePath(node_path.relative(from, to));
27
+ }
28
+ function joinPath(...segments) {
29
+ return normalizePath(node_path.join(...segments));
30
+ }
31
+ function isAbsolute(filePath) {
32
+ return node_path.isAbsolute(filePath);
33
+ }
34
+ function offsetFromRoot(filePath) {
35
+ const segments = normalizePath(filePath).split('/').filter(Boolean);
36
+ if (segments.length === 0)
37
+ return '';
38
+ return segments.map(() => '..').join('/') + '/';
39
+ }
40
+
41
+ exports.resolvePath = resolvePath;
42
+ exports.resolveFromWorkspace = resolveFromWorkspace;
43
+ exports.resolveRealPath = resolveRealPath;
44
+ exports.relativePath = relativePath;
45
+ exports.joinPath = joinPath;
46
+ exports.isAbsolute = isAbsolute;
47
+ exports.offsetFromRoot = offsetFromRoot;
@@ -0,0 +1,41 @@
1
+ import { exists } from '../../fs/stat/index.esm.js';
2
+ import { join as join$1 } from '../join/index.esm.js';
3
+ import { normalizePath } from '../normalize/index.esm.js';
4
+ import { from } from '../../../../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/array/index.esm.js';
5
+ import { realpathSync } from 'node:fs';
6
+ import { resolve, relative } from 'node:path';
7
+
8
+ function resolvePath(...segments) {
9
+ return normalizePath(resolve(...segments));
10
+ }
11
+ function resolveFromWorkspace(workspaceRoot, ...segments) {
12
+ return normalizePath(resolve(workspaceRoot, ...segments));
13
+ }
14
+ function resolveRealPath(filePath) {
15
+ if (!exists(filePath)) {
16
+ return null;
17
+ }
18
+ try {
19
+ return normalizePath(realpathSync(filePath));
20
+ }
21
+ catch {
22
+ return null;
23
+ }
24
+ }
25
+ function relativePath(from, to) {
26
+ return normalizePath(relative(from, to));
27
+ }
28
+ function joinPath(...segments) {
29
+ return normalizePath(join$1(...segments));
30
+ }
31
+ function isAbsolute(filePath) {
32
+ return isAbsolute$1(filePath);
33
+ }
34
+ function offsetFromRoot(filePath) {
35
+ const segments = normalizePath(filePath).split('/').filter(Boolean);
36
+ if (segments.length === 0)
37
+ return '';
38
+ return segments.map(() => '..').join('/') + '/';
39
+ }
40
+
41
+ export { resolvePath, resolveFromWorkspace, resolveRealPath, relativePath, joinPath, isAbsolute, offsetFromRoot };
@@ -0,0 +1,38 @@
1
+ 'use strict';
2
+
3
+ const { normalizePath } = require('../normalize/index.cjs.js');
4
+ const node_path = require('node:path');
5
+
6
+ function pathSegments(filePath) {
7
+ return filePath.split(/[/\\]/).filter((segment) => segment.length > 0);
8
+ }
9
+ function getBasename(filePath, ext) {
10
+ return node_path.basename(filePath, ext);
11
+ }
12
+ function getDirname(filePath) {
13
+ return normalizePath(node_path.dirname(filePath));
14
+ }
15
+ function getExtension(filePath) {
16
+ return node_path.extname(filePath);
17
+ }
18
+ function getFileNameWithoutExtension(filePath) {
19
+ const parsed = node_path.parse(filePath);
20
+ return parsed.name;
21
+ }
22
+ function parsePath(filePath) {
23
+ const parsed = node_path.parse(filePath);
24
+ return {
25
+ root: parsed.root,
26
+ dir: normalizePath(parsed.dir),
27
+ base: parsed.base,
28
+ ext: parsed.ext,
29
+ name: parsed.name,
30
+ };
31
+ }
32
+
33
+ exports.pathSegments = pathSegments;
34
+ exports.getBasename = getBasename;
35
+ exports.getDirname = getDirname;
36
+ exports.getExtension = getExtension;
37
+ exports.getFileNameWithoutExtension = getFileNameWithoutExtension;
38
+ exports.parsePath = parsePath;
@@ -0,0 +1,31 @@
1
+ import { normalizePath } from '../normalize/index.esm.js';
2
+ import { basename, dirname, extname, parse as parse$1 } from 'node:path';
3
+
4
+ function pathSegments(filePath) {
5
+ return filePath.split(/[/\\]/).filter((segment) => segment.length > 0);
6
+ }
7
+ function getBasename(filePath, ext) {
8
+ return basename(filePath, ext);
9
+ }
10
+ function getDirname(filePath) {
11
+ return normalizePath(dirname(filePath));
12
+ }
13
+ function getExtension(filePath) {
14
+ return extname(filePath);
15
+ }
16
+ function getFileNameWithoutExtension(filePath) {
17
+ const parsed = parse$1(filePath);
18
+ return parsed.name;
19
+ }
20
+ function parsePath(filePath) {
21
+ const parsed = parse$1(filePath);
22
+ return {
23
+ root: parsed.root,
24
+ dir: normalizePath(parsed.dir),
25
+ base: parsed.base,
26
+ ext: parsed.ext,
27
+ name: parsed.name,
28
+ };
29
+ }
30
+
31
+ export { pathSegments, getBasename, getDirname, getExtension, getFileNameWithoutExtension, parsePath };
@@ -0,0 +1,145 @@
1
+ 'use strict';
2
+
3
+ function matchGlobPattern(path, pattern) {
4
+ return matchSegments(path.split('/'), pattern.split('/'), 0, 0);
5
+ }
6
+ function matchSegments(pathParts, patternParts, pathIdx, patternIdx) {
7
+ if (pathIdx === pathParts.length && patternIdx === patternParts.length) {
8
+ return true;
9
+ }
10
+ if (patternIdx >= patternParts.length) {
11
+ return false;
12
+ }
13
+ const patternPart = patternParts[patternIdx];
14
+ if (patternPart === '**') {
15
+ for (let i = pathIdx; i <= pathParts.length; i++) {
16
+ if (matchSegments(pathParts, patternParts, i, patternIdx + 1)) {
17
+ return true;
18
+ }
19
+ }
20
+ return false;
21
+ }
22
+ if (pathIdx >= pathParts.length) {
23
+ return false;
24
+ }
25
+ const pathPart = pathParts[pathIdx];
26
+ if (matchSegment(pathPart, patternPart)) {
27
+ return matchSegments(pathParts, patternParts, pathIdx + 1, patternIdx + 1);
28
+ }
29
+ return false;
30
+ }
31
+ function matchSegment(text, pattern) {
32
+ let textIdx = 0;
33
+ let patternIdx = 0;
34
+ while (patternIdx < pattern.length) {
35
+ const char = pattern[patternIdx];
36
+ if (char === '*') {
37
+ patternIdx++;
38
+ if (patternIdx === pattern.length) {
39
+ return true;
40
+ }
41
+ for (let i = textIdx; i <= text.length; i++) {
42
+ if (matchSegmentFrom(text, i, pattern, patternIdx)) {
43
+ return true;
44
+ }
45
+ }
46
+ return false;
47
+ }
48
+ else if (char === '?') {
49
+ if (textIdx >= text.length) {
50
+ return false;
51
+ }
52
+ textIdx++;
53
+ patternIdx++;
54
+ }
55
+ else if (char === '{') {
56
+ const closeIdx = findClosingBrace(pattern, patternIdx);
57
+ if (closeIdx === -1) {
58
+ if (textIdx >= text.length || text[textIdx] !== char) {
59
+ return false;
60
+ }
61
+ textIdx++;
62
+ patternIdx++;
63
+ }
64
+ else {
65
+ const alternatives = extractAlternatives(pattern.slice(patternIdx + 1, closeIdx));
66
+ for (const alt of alternatives) {
67
+ if (matchSegmentFrom(text, textIdx, text.slice(0, textIdx) + alt + pattern.slice(closeIdx + 1), textIdx)) {
68
+ return true;
69
+ }
70
+ }
71
+ return false;
72
+ }
73
+ }
74
+ else {
75
+ if (textIdx >= text.length || text[textIdx] !== char) {
76
+ return false;
77
+ }
78
+ textIdx++;
79
+ patternIdx++;
80
+ }
81
+ }
82
+ return textIdx === text.length;
83
+ }
84
+ function matchSegmentFrom(text, textIdx, pattern, patternIdx) {
85
+ const remainingText = text.slice(textIdx);
86
+ const remainingPattern = pattern.slice(patternIdx);
87
+ return matchSegment(remainingText, remainingPattern);
88
+ }
89
+ function findClosingBrace(pattern, startIdx) {
90
+ let depth = 0;
91
+ for (let i = startIdx; i < pattern.length; i++) {
92
+ if (pattern[i] === '{') {
93
+ depth++;
94
+ }
95
+ else if (pattern[i] === '}') {
96
+ depth--;
97
+ if (depth === 0) {
98
+ return i;
99
+ }
100
+ }
101
+ }
102
+ return -1;
103
+ }
104
+ function extractAlternatives(content) {
105
+ const alternatives = [];
106
+ let current = '';
107
+ let depth = 0;
108
+ for (let i = 0; i < content.length; i++) {
109
+ const char = content[i];
110
+ if (char === '{') {
111
+ depth++;
112
+ current += char;
113
+ }
114
+ else if (char === '}') {
115
+ depth--;
116
+ current += char;
117
+ }
118
+ else if (char === ',' && depth === 0) {
119
+ alternatives.push(current);
120
+ current = '';
121
+ }
122
+ else {
123
+ current += char;
124
+ }
125
+ }
126
+ if (current) {
127
+ alternatives.push(current);
128
+ }
129
+ return alternatives;
130
+ }
131
+ function matchesAnyPattern(path, patterns) {
132
+ return patterns.some((pattern) => matchGlobPattern(path, pattern));
133
+ }
134
+ function matchesExact(path, pattern) {
135
+ return path === pattern;
136
+ }
137
+
138
+ exports.matchGlobPattern = matchGlobPattern;
139
+ exports.matchSegments = matchSegments;
140
+ exports.matchSegment = matchSegment;
141
+ exports.matchSegmentFrom = matchSegmentFrom;
142
+ exports.findClosingBrace = findClosingBrace;
143
+ exports.extractAlternatives = extractAlternatives;
144
+ exports.matchesAnyPattern = matchesAnyPattern;
145
+ exports.matchesExact = matchesExact;
@@ -0,0 +1,136 @@
1
+ function matchGlobPattern(path, pattern) {
2
+ return matchSegments(path.split('/'), pattern.split('/'), 0, 0);
3
+ }
4
+ function matchSegments(pathParts, patternParts, pathIdx, patternIdx) {
5
+ if (pathIdx === pathParts.length && patternIdx === patternParts.length) {
6
+ return true;
7
+ }
8
+ if (patternIdx >= patternParts.length) {
9
+ return false;
10
+ }
11
+ const patternPart = patternParts[patternIdx];
12
+ if (patternPart === '**') {
13
+ for (let i = pathIdx; i <= pathParts.length; i++) {
14
+ if (matchSegments(pathParts, patternParts, i, patternIdx + 1)) {
15
+ return true;
16
+ }
17
+ }
18
+ return false;
19
+ }
20
+ if (pathIdx >= pathParts.length) {
21
+ return false;
22
+ }
23
+ const pathPart = pathParts[pathIdx];
24
+ if (matchSegment(pathPart, patternPart)) {
25
+ return matchSegments(pathParts, patternParts, pathIdx + 1, patternIdx + 1);
26
+ }
27
+ return false;
28
+ }
29
+ function matchSegment(text, pattern) {
30
+ let textIdx = 0;
31
+ let patternIdx = 0;
32
+ while (patternIdx < pattern.length) {
33
+ const char = pattern[patternIdx];
34
+ if (char === '*') {
35
+ patternIdx++;
36
+ if (patternIdx === pattern.length) {
37
+ return true;
38
+ }
39
+ for (let i = textIdx; i <= text.length; i++) {
40
+ if (matchSegmentFrom(text, i, pattern, patternIdx)) {
41
+ return true;
42
+ }
43
+ }
44
+ return false;
45
+ }
46
+ else if (char === '?') {
47
+ if (textIdx >= text.length) {
48
+ return false;
49
+ }
50
+ textIdx++;
51
+ patternIdx++;
52
+ }
53
+ else if (char === '{') {
54
+ const closeIdx = findClosingBrace(pattern, patternIdx);
55
+ if (closeIdx === -1) {
56
+ if (textIdx >= text.length || text[textIdx] !== char) {
57
+ return false;
58
+ }
59
+ textIdx++;
60
+ patternIdx++;
61
+ }
62
+ else {
63
+ const alternatives = extractAlternatives(pattern.slice(patternIdx + 1, closeIdx));
64
+ for (const alt of alternatives) {
65
+ if (matchSegmentFrom(text, textIdx, text.slice(0, textIdx) + alt + pattern.slice(closeIdx + 1), textIdx)) {
66
+ return true;
67
+ }
68
+ }
69
+ return false;
70
+ }
71
+ }
72
+ else {
73
+ if (textIdx >= text.length || text[textIdx] !== char) {
74
+ return false;
75
+ }
76
+ textIdx++;
77
+ patternIdx++;
78
+ }
79
+ }
80
+ return textIdx === text.length;
81
+ }
82
+ function matchSegmentFrom(text, textIdx, pattern, patternIdx) {
83
+ const remainingText = text.slice(textIdx);
84
+ const remainingPattern = pattern.slice(patternIdx);
85
+ return matchSegment(remainingText, remainingPattern);
86
+ }
87
+ function findClosingBrace(pattern, startIdx) {
88
+ let depth = 0;
89
+ for (let i = startIdx; i < pattern.length; i++) {
90
+ if (pattern[i] === '{') {
91
+ depth++;
92
+ }
93
+ else if (pattern[i] === '}') {
94
+ depth--;
95
+ if (depth === 0) {
96
+ return i;
97
+ }
98
+ }
99
+ }
100
+ return -1;
101
+ }
102
+ function extractAlternatives(content) {
103
+ const alternatives = [];
104
+ let current = '';
105
+ let depth = 0;
106
+ for (let i = 0; i < content.length; i++) {
107
+ const char = content[i];
108
+ if (char === '{') {
109
+ depth++;
110
+ current += char;
111
+ }
112
+ else if (char === '}') {
113
+ depth--;
114
+ current += char;
115
+ }
116
+ else if (char === ',' && depth === 0) {
117
+ alternatives.push(current);
118
+ current = '';
119
+ }
120
+ else {
121
+ current += char;
122
+ }
123
+ }
124
+ if (current) {
125
+ alternatives.push(current);
126
+ }
127
+ return alternatives;
128
+ }
129
+ function matchesAnyPattern(path, patterns) {
130
+ return patterns.some((pattern) => matchGlobPattern(path, pattern));
131
+ }
132
+ function matchesExact(path, pattern) {
133
+ return path === pattern;
134
+ }
135
+
136
+ export { matchGlobPattern, matchSegments, matchSegment, matchSegmentFrom, findClosingBrace, extractAlternatives, matchesAnyPattern, matchesExact };
@@ -0,0 +1,103 @@
1
+ 'use strict';
2
+
3
+ const node_fs = require('node:fs');
4
+ const node_path = require('node:path');
5
+ const node_os = require('node:os');
6
+
7
+ let cachedPlatformInfo = null;
8
+ let cachedCaseSensitive = null;
9
+ function detectCaseSensitivity() {
10
+ if (cachedCaseSensitive !== null) {
11
+ return cachedCaseSensitive;
12
+ }
13
+ if (process.platform === 'win32') {
14
+ cachedCaseSensitive = false;
15
+ return false;
16
+ }
17
+ if (process.platform === 'darwin') {
18
+ cachedCaseSensitive = false;
19
+ return false;
20
+ }
21
+ let secureTestDir = null;
22
+ try {
23
+ secureTestDir = node_fs.mkdtempSync(node_path.join(node_os.tmpdir(), 'case-sensitivity-test-'));
24
+ const testFile = node_path.join(secureTestDir, 'A');
25
+ const testFileLower = node_path.join(secureTestDir, 'a');
26
+ node_fs.writeFileSync(testFile, '');
27
+ cachedCaseSensitive = !node_fs.existsSync(testFileLower);
28
+ node_fs.unlinkSync(testFile);
29
+ }
30
+ catch {
31
+ cachedCaseSensitive = true;
32
+ }
33
+ finally {
34
+ if (secureTestDir) {
35
+ try {
36
+ node_fs.rmdirSync(secureTestDir);
37
+ }
38
+ catch {
39
+ // Ignore cleanup errors
40
+ }
41
+ }
42
+ }
43
+ return cachedCaseSensitive;
44
+ }
45
+ function isCaseSensitiveFs() {
46
+ return detectCaseSensitivity();
47
+ }
48
+ function getPlatformInfo() {
49
+ if (cachedPlatformInfo) {
50
+ return cachedPlatformInfo;
51
+ }
52
+ const os = node_os.platform();
53
+ const archInfo = node_os.arch();
54
+ let osName;
55
+ switch (os) {
56
+ case 'win32':
57
+ osName = 'win32';
58
+ break;
59
+ case 'darwin':
60
+ osName = 'darwin';
61
+ break;
62
+ case 'linux':
63
+ osName = 'linux';
64
+ break;
65
+ case 'freebsd':
66
+ osName = 'freebsd';
67
+ break;
68
+ case 'sunos':
69
+ osName = 'sunos';
70
+ break;
71
+ case 'aix':
72
+ osName = 'aix';
73
+ break;
74
+ default:
75
+ osName = 'other';
76
+ }
77
+ cachedPlatformInfo = {
78
+ os: osName,
79
+ arch: archInfo,
80
+ nodeVersion: process.versions.node,
81
+ isWindows: osName === 'win32',
82
+ isMac: osName === 'darwin',
83
+ isLinux: osName === 'linux',
84
+ caseSensitive: detectCaseSensitivity(),
85
+ pathSeparator: osName === 'win32' ? '\\' : '/',
86
+ lineEnding: osName === 'win32' ? '\r\n' : '\n',
87
+ };
88
+ return cachedPlatformInfo;
89
+ }
90
+ function detectPlatform() {
91
+ return getPlatformInfo();
92
+ }
93
+ function isWindows() {
94
+ return process.platform === 'win32';
95
+ }
96
+
97
+ exports.cachedPlatformInfo = cachedPlatformInfo;
98
+ exports.cachedCaseSensitive = cachedCaseSensitive;
99
+ exports.detectCaseSensitivity = detectCaseSensitivity;
100
+ exports.isCaseSensitiveFs = isCaseSensitiveFs;
101
+ exports.getPlatformInfo = getPlatformInfo;
102
+ exports.detectPlatform = detectPlatform;
103
+ exports.isWindows = isWindows;
@@ -0,0 +1,95 @@
1
+ import { join as join$1 } from '../../path/join/index.esm.js';
2
+ import { mkdtempSync, writeFileSync, existsSync, unlinkSync, rmdirSync } from 'node:fs';
3
+ import { tmpdir, platform, arch } from 'node:os';
4
+
5
+ let cachedPlatformInfo = null;
6
+ let cachedCaseSensitive = null;
7
+ function detectCaseSensitivity() {
8
+ if (cachedCaseSensitive !== null) {
9
+ return cachedCaseSensitive;
10
+ }
11
+ if (process.platform === 'win32') {
12
+ cachedCaseSensitive = false;
13
+ return false;
14
+ }
15
+ if (process.platform === 'darwin') {
16
+ cachedCaseSensitive = false;
17
+ return false;
18
+ }
19
+ let secureTestDir = null;
20
+ try {
21
+ secureTestDir = mkdtempSync(join$1(tmpdir(), 'case-sensitivity-test-'));
22
+ const testFile = join$1(secureTestDir, 'A');
23
+ const testFileLower = join$1(secureTestDir, 'a');
24
+ writeFileSync(testFile, '');
25
+ cachedCaseSensitive = !existsSync(testFileLower);
26
+ unlinkSync(testFile);
27
+ }
28
+ catch {
29
+ cachedCaseSensitive = true;
30
+ }
31
+ finally {
32
+ if (secureTestDir) {
33
+ try {
34
+ rmdirSync(secureTestDir);
35
+ }
36
+ catch {
37
+ // Ignore cleanup errors
38
+ }
39
+ }
40
+ }
41
+ return cachedCaseSensitive;
42
+ }
43
+ function isCaseSensitiveFs() {
44
+ return detectCaseSensitivity();
45
+ }
46
+ function getPlatformInfo() {
47
+ if (cachedPlatformInfo) {
48
+ return cachedPlatformInfo;
49
+ }
50
+ const os = platform();
51
+ const archInfo = arch();
52
+ let osName;
53
+ switch (os) {
54
+ case 'win32':
55
+ osName = 'win32';
56
+ break;
57
+ case 'darwin':
58
+ osName = 'darwin';
59
+ break;
60
+ case 'linux':
61
+ osName = 'linux';
62
+ break;
63
+ case 'freebsd':
64
+ osName = 'freebsd';
65
+ break;
66
+ case 'sunos':
67
+ osName = 'sunos';
68
+ break;
69
+ case 'aix':
70
+ osName = 'aix';
71
+ break;
72
+ default:
73
+ osName = 'other';
74
+ }
75
+ cachedPlatformInfo = {
76
+ os: osName,
77
+ arch: archInfo,
78
+ nodeVersion: process.versions.node,
79
+ isWindows: osName === 'win32',
80
+ isMac: osName === 'darwin',
81
+ isLinux: osName === 'linux',
82
+ caseSensitive: detectCaseSensitivity(),
83
+ pathSeparator: osName === 'win32' ? '\\' : '/',
84
+ lineEnding: osName === 'win32' ? '\r\n' : '\n',
85
+ };
86
+ return cachedPlatformInfo;
87
+ }
88
+ function detectPlatform() {
89
+ return getPlatformInfo();
90
+ }
91
+ function isWindows() {
92
+ return process.platform === 'win32';
93
+ }
94
+
95
+ export { cachedPlatformInfo, cachedCaseSensitive, detectCaseSensitivity, isCaseSensitiveFs, getPlatformInfo, detectPlatform, isWindows };
@@ -0,0 +1,52 @@
1
+ 'use strict';
2
+
3
+ const { isWindows, detectCaseSensitivity } = require('../detect/index.cjs.js');
4
+
5
+ const LF = '\n';
6
+ const CRLF = '\r\n';
7
+ function getLineEnding() {
8
+ return isWindows() ? CRLF : LF;
9
+ }
10
+ function getPathSeparator() {
11
+ return isWindows() ? '\\' : '/';
12
+ }
13
+ function normalizeLineEndings(content, style = 'lf') {
14
+ let target;
15
+ if (style === 'auto') {
16
+ target = isWindows() ? CRLF : LF;
17
+ }
18
+ else {
19
+ target = style === 'crlf' ? CRLF : LF;
20
+ }
21
+ const normalized = content.replace(/\r\n/g, LF).replace(/\r/g, LF);
22
+ if (target === LF) {
23
+ return normalized;
24
+ }
25
+ return normalized.replace(/\n/g, target);
26
+ }
27
+ function detectLineEnding(content) {
28
+ const hasCRLF = content.includes(CRLF);
29
+ const hasLFOnly = content.includes('\n') && content.replace(/\r\n/g, '').includes('\n');
30
+ if (hasCRLF && hasLFOnly)
31
+ return 'mixed';
32
+ if (hasCRLF)
33
+ return 'crlf';
34
+ if (content.includes('\n'))
35
+ return 'lf';
36
+ return 'none';
37
+ }
38
+ function pathsEqual(path1, path2) {
39
+ const caseSensitive = detectCaseSensitivity();
40
+ if (caseSensitive) {
41
+ return path1 === path2;
42
+ }
43
+ return path1.toLowerCase() === path2.toLowerCase();
44
+ }
45
+
46
+ exports.LF = LF;
47
+ exports.CRLF = CRLF;
48
+ exports.getLineEnding = getLineEnding;
49
+ exports.getPathSeparator = getPathSeparator;
50
+ exports.normalizeLineEndings = normalizeLineEndings;
51
+ exports.detectLineEnding = detectLineEnding;
52
+ exports.pathsEqual = pathsEqual;