@hyperfrontend/project-scope 0.2.0 → 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 +13 -15
  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 +1699 -2040
  55. package/cli/index.d.ts +273 -7
  56. package/cli/index.d.ts.map +1 -1
  57. package/cli/index.esm.js +1603 -1944
  58. package/core/encoding/index.cjs.js +88 -424
  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 +80 -415
  62. package/core/fs/index.cjs.js +231 -595
  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 -585
  66. package/core/index.cjs.js +518 -1804
  67. package/core/index.d.ts +486 -9
  68. package/core/index.d.ts.map +1 -1
  69. package/core/index.esm.js +501 -1784
  70. package/core/path/index.cjs.js +6 -235
  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 -233
  74. package/core/platform/index.cjs.js +5 -226
  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 -222
  78. package/heuristics/dependencies/index.cjs.js +95 -509
  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 -483
  82. package/heuristics/entry-points/index.cjs.js +93 -825
  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 +74 -806
  86. package/heuristics/framework/index.cjs.js +1482 -1473
  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 +1418 -1409
  90. package/heuristics/index.cjs.js +3207 -3383
  91. package/heuristics/index.d.ts +4 -5
  92. package/heuristics/index.d.ts.map +1 -1
  93. package/heuristics/index.esm.js +3234 -3410
  94. package/heuristics/project-type/index.cjs.js +1488 -1500
  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 +1417 -1429
  98. package/index.cjs.js +3064 -3765
  99. package/index.d.ts +44 -10
  100. package/index.d.ts.map +1 -1
  101. package/index.esm.js +2923 -3612
  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 -606
  107. package/nx/index.d.ts +279 -4
  108. package/nx/index.d.ts.map +1 -1
  109. package/nx/index.esm.js +145 -583
  110. package/package.json +13 -12
  111. package/project/config/index.cjs.js +122 -1104
  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 -1085
  115. package/project/index.cjs.js +323 -1143
  116. package/project/index.d.ts +4 -5
  117. package/project/index.d.ts.map +1 -1
  118. package/project/index.esm.js +302 -1119
  119. package/project/package/index.cjs.js +191 -483
  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 -469
  123. package/project/root/index.cjs.js +107 -427
  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 -416
  127. package/project/traversal/index.cjs.js +94 -645
  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 -631
  131. package/tech/backend/index.cjs.js +221 -524
  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 -503
  135. package/tech/build/index.cjs.js +348 -647
  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 -625
  139. package/tech/frontend/index.cjs.js +505 -700
  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 -676
  143. package/tech/index.cjs.js +1580 -1482
  144. package/tech/index.d.ts +55 -32
  145. package/tech/index.d.ts.map +1 -1
  146. package/tech/index.esm.js +1513 -1415
  147. package/tech/legacy/index.cjs.js +97 -474
  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 -456
  151. package/tech/linting/index.cjs.js +136 -536
  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 -516
  155. package/tech/monorepo/index.cjs.js +244 -584
  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 -564
  159. package/tech/testing/index.cjs.js +214 -582
  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 -564
  163. package/tech/types/index.cjs.js +121 -532
  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 -510
  167. package/vfs/index.cjs.js +647 -1187
  168. package/vfs/index.d.ts +360 -6
  169. package/vfs/index.d.ts.map +1 -1
  170. package/vfs/index.esm.js +672 -1212
  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 -20
  175. package/cli/commands/analyze.d.ts.map +0 -1
  176. package/cli/commands/config.d.ts +0 -20
  177. package/cli/commands/config.d.ts.map +0 -1
  178. package/cli/commands/deps.d.ts +0 -18
  179. package/cli/commands/deps.d.ts.map +0 -1
  180. package/cli/commands/tree.d.ts +0 -24
  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 -157
  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 -86
  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 -64
  197. package/core/errors/structured-errors.d.ts.map +0 -1
  198. package/core/fs/directory.d.ts +0 -88
  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 -86
  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 -46
  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 -86
  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 -109
  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 -66
  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 -178
  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;