@stryke/fs 0.33.19 → 0.33.21

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 (494) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/dist/{chunk-Bmb41Sf3.cjs → _virtual/rolldown_runtime.cjs} +1 -1
  3. package/dist/buffer.cjs +1 -1
  4. package/dist/buffer.d.cts +32 -2
  5. package/dist/buffer.d.cts.map +1 -0
  6. package/dist/buffer.d.mts +32 -2
  7. package/dist/buffer.d.mts.map +1 -0
  8. package/dist/buffer.mjs +2 -1
  9. package/dist/buffer.mjs.map +1 -0
  10. package/dist/chmod-x.cjs +1 -1
  11. package/dist/chmod-x.d.cts +44 -2
  12. package/dist/chmod-x.d.cts.map +1 -0
  13. package/dist/chmod-x.d.mts +44 -2
  14. package/dist/chmod-x.d.mts.map +1 -0
  15. package/dist/chmod-x.mjs +2 -1
  16. package/dist/chmod-x.mjs.map +1 -0
  17. package/dist/command-exists.cjs +1 -1
  18. package/dist/command-exists.d.cts +22 -2
  19. package/dist/command-exists.d.cts.map +1 -0
  20. package/dist/command-exists.d.mts +22 -2
  21. package/dist/command-exists.d.mts.map +1 -0
  22. package/dist/command-exists.mjs +2 -1
  23. package/dist/command-exists.mjs.map +1 -0
  24. package/dist/compress.cjs +1 -1
  25. package/dist/compress.d.cts +16 -2
  26. package/dist/compress.d.cts.map +1 -0
  27. package/dist/compress.d.mts +16 -2
  28. package/dist/compress.d.mts.map +1 -0
  29. package/dist/compress.mjs +2 -1
  30. package/dist/compress.mjs.map +1 -0
  31. package/dist/constants.d.cts +5 -2
  32. package/dist/constants.d.cts.map +1 -0
  33. package/dist/constants.d.mts +5 -2
  34. package/dist/constants.d.mts.map +1 -0
  35. package/dist/convert/src/array-buffer-to-string.cjs +1 -0
  36. package/dist/convert/src/array-buffer-to-string.mjs +2 -0
  37. package/dist/convert/src/array-buffer-to-string.mjs.map +1 -0
  38. package/dist/convert/src/to-array.cjs +1 -0
  39. package/dist/convert/src/to-array.mjs +2 -0
  40. package/dist/convert/src/to-array.mjs.map +1 -0
  41. package/dist/convert/src/uint8-array-to-string.cjs +1 -0
  42. package/dist/convert/src/uint8-array-to-string.mjs +2 -0
  43. package/dist/convert/src/uint8-array-to-string.mjs.map +1 -0
  44. package/dist/copy-file.cjs +1 -1
  45. package/dist/copy-file.d.cts +39 -2
  46. package/dist/copy-file.d.cts.map +1 -0
  47. package/dist/copy-file.d.mts +39 -2
  48. package/dist/copy-file.d.mts.map +1 -0
  49. package/dist/copy-file.mjs +2 -1
  50. package/dist/copy-file.mjs.map +1 -0
  51. package/dist/exists.cjs +1 -1
  52. package/dist/exists.d.cts +18 -2
  53. package/dist/exists.d.cts.map +1 -0
  54. package/dist/exists.d.mts +18 -2
  55. package/dist/exists.d.mts.map +1 -0
  56. package/dist/exists.mjs +2 -1
  57. package/dist/exists.mjs.map +1 -0
  58. package/dist/get-parent-path.cjs +1 -1
  59. package/dist/get-parent-path.d.cts +32 -2
  60. package/dist/get-parent-path.d.cts.map +1 -0
  61. package/dist/get-parent-path.d.mts +32 -2
  62. package/dist/get-parent-path.d.mts.map +1 -0
  63. package/dist/get-parent-path.mjs +2 -1
  64. package/dist/get-parent-path.mjs.map +1 -0
  65. package/dist/get-workspace-root.cjs +1 -1
  66. package/dist/get-workspace-root.d.cts +48 -2
  67. package/dist/get-workspace-root.d.cts.map +1 -0
  68. package/dist/get-workspace-root.d.mts +48 -2
  69. package/dist/get-workspace-root.d.mts.map +1 -0
  70. package/dist/get-workspace-root.mjs +2 -1
  71. package/dist/get-workspace-root.mjs.map +1 -0
  72. package/dist/helpers/src/get-unique.cjs +1 -0
  73. package/dist/helpers/src/get-unique.mjs +2 -0
  74. package/dist/helpers/src/get-unique.mjs.map +1 -0
  75. package/dist/helpers.cjs +1 -1
  76. package/dist/helpers.d.cts +50 -2
  77. package/dist/helpers.d.cts.map +1 -0
  78. package/dist/helpers.d.mts +50 -2
  79. package/dist/helpers.d.mts.map +1 -0
  80. package/dist/helpers.mjs +2 -1
  81. package/dist/helpers.mjs.map +1 -0
  82. package/dist/index.cjs +1 -1
  83. package/dist/index.d.cts +24 -24
  84. package/dist/index.d.mts +24 -24
  85. package/dist/index.mjs +1 -1
  86. package/dist/install.cjs +1 -1
  87. package/dist/install.d.cts +28 -2
  88. package/dist/install.d.cts.map +1 -0
  89. package/dist/install.d.mts +29 -2
  90. package/dist/install.d.mts.map +1 -0
  91. package/dist/install.mjs +2 -1
  92. package/dist/install.mjs.map +1 -0
  93. package/dist/is-file.cjs +1 -1
  94. package/dist/is-file.d.cts +36 -2
  95. package/dist/is-file.d.cts.map +1 -0
  96. package/dist/is-file.d.mts +36 -2
  97. package/dist/is-file.d.mts.map +1 -0
  98. package/dist/is-file.mjs +2 -1
  99. package/dist/is-file.mjs.map +1 -0
  100. package/dist/json/src/storm-json.cjs +1 -0
  101. package/dist/json/src/storm-json.mjs +2 -0
  102. package/dist/json/src/storm-json.mjs.map +1 -0
  103. package/dist/json/src/types.d.cts +33 -0
  104. package/dist/json/src/types.d.cts.map +1 -0
  105. package/dist/json/src/types.d.mts +33 -0
  106. package/dist/json/src/types.d.mts.map +1 -0
  107. package/dist/json/src/utils/code-frames.cjs +3 -0
  108. package/dist/json/src/utils/code-frames.mjs +4 -0
  109. package/dist/json/src/utils/code-frames.mjs.map +1 -0
  110. package/dist/json/src/utils/parse-error.cjs +1 -0
  111. package/dist/json/src/utils/parse-error.mjs +2 -0
  112. package/dist/json/src/utils/parse-error.mjs.map +1 -0
  113. package/dist/json/src/utils/parse.cjs +1 -0
  114. package/dist/json/src/utils/parse.mjs +2 -0
  115. package/dist/json/src/utils/parse.mjs.map +1 -0
  116. package/dist/json/src/utils/stringify.cjs +1 -0
  117. package/dist/json/src/utils/stringify.mjs +2 -0
  118. package/dist/json/src/utils/stringify.mjs.map +1 -0
  119. package/dist/json/src/utils/strip-comments.cjs +4 -0
  120. package/dist/json/src/utils/strip-comments.mjs +5 -0
  121. package/dist/json/src/utils/strip-comments.mjs.map +1 -0
  122. package/dist/json.cjs +1 -1
  123. package/dist/json.d.cts +54 -2
  124. package/dist/json.d.cts.map +1 -0
  125. package/dist/json.d.mts +54 -2
  126. package/dist/json.d.mts.map +1 -0
  127. package/dist/json.mjs +2 -1
  128. package/dist/json.mjs.map +1 -0
  129. package/dist/list-files.cjs +1 -1
  130. package/dist/list-files.d.cts +51 -2
  131. package/dist/list-files.d.cts.map +1 -0
  132. package/dist/list-files.d.mts +51 -2
  133. package/dist/list-files.d.mts.map +1 -0
  134. package/dist/list-files.mjs +2 -1
  135. package/dist/list-files.mjs.map +1 -0
  136. package/dist/package-fns.cjs +1 -1
  137. package/dist/package-fns.d.cts +95 -2
  138. package/dist/package-fns.d.cts.map +1 -0
  139. package/dist/package-fns.d.mts +95 -2
  140. package/dist/package-fns.d.mts.map +1 -0
  141. package/dist/package-fns.mjs +2 -1
  142. package/dist/package-fns.mjs.map +1 -0
  143. package/dist/path/src/append.cjs +1 -0
  144. package/dist/path/src/append.mjs +2 -0
  145. package/dist/path/src/append.mjs.map +1 -0
  146. package/dist/path/src/correct-path.cjs +1 -0
  147. package/dist/path/src/correct-path.mjs +2 -0
  148. package/dist/path/src/correct-path.mjs.map +1 -0
  149. package/dist/path/src/cwd.cjs +1 -0
  150. package/dist/path/src/cwd.mjs +2 -0
  151. package/dist/path/src/cwd.mjs.map +1 -0
  152. package/dist/path/src/file-path-fns.cjs +1 -0
  153. package/dist/path/src/file-path-fns.mjs +2 -0
  154. package/dist/path/src/file-path-fns.mjs.map +1 -0
  155. package/dist/path/src/is-parent-path.cjs +1 -0
  156. package/dist/path/src/is-parent-path.mjs +2 -0
  157. package/dist/path/src/is-parent-path.mjs.map +1 -0
  158. package/dist/path/src/is-root-dir.cjs +1 -0
  159. package/dist/path/src/is-root-dir.mjs +2 -0
  160. package/dist/path/src/is-root-dir.mjs.map +1 -0
  161. package/dist/path/src/is-type.cjs +1 -0
  162. package/dist/path/src/is-type.mjs +2 -0
  163. package/dist/path/src/is-type.mjs.map +1 -0
  164. package/dist/path/src/join-paths.cjs +1 -0
  165. package/dist/path/src/join-paths.mjs +2 -0
  166. package/dist/path/src/join-paths.mjs.map +1 -0
  167. package/dist/path/src/regex.cjs +1 -0
  168. package/dist/path/src/regex.mjs +2 -0
  169. package/dist/path/src/regex.mjs.map +1 -0
  170. package/dist/path/src/replace.cjs +1 -0
  171. package/dist/path/src/replace.mjs +2 -0
  172. package/dist/path/src/replace.mjs.map +1 -0
  173. package/dist/path/src/resolve-parent-path.cjs +1 -0
  174. package/dist/path/src/resolve-parent-path.mjs +2 -0
  175. package/dist/path/src/resolve-parent-path.mjs.map +1 -0
  176. package/dist/path/src/slash.cjs +1 -0
  177. package/dist/path/src/slash.mjs +2 -0
  178. package/dist/path/src/slash.mjs.map +1 -0
  179. package/dist/read-file.cjs +1 -1
  180. package/dist/read-file.d.cts +30 -2
  181. package/dist/read-file.d.cts.map +1 -0
  182. package/dist/read-file.d.mts +30 -2
  183. package/dist/read-file.d.mts.map +1 -0
  184. package/dist/read-file.mjs +2 -1
  185. package/dist/read-file.mjs.map +1 -0
  186. package/dist/registry.cjs +1 -1
  187. package/dist/registry.d.cts +53 -2
  188. package/dist/registry.d.cts.map +1 -0
  189. package/dist/registry.d.mts +53 -2
  190. package/dist/registry.d.mts.map +1 -0
  191. package/dist/registry.mjs +2 -1
  192. package/dist/registry.mjs.map +1 -0
  193. package/dist/remove-file.cjs +1 -1
  194. package/dist/remove-file.d.cts +16 -2
  195. package/dist/remove-file.d.cts.map +1 -0
  196. package/dist/remove-file.d.mts +16 -2
  197. package/dist/remove-file.d.mts.map +1 -0
  198. package/dist/remove-file.mjs +2 -1
  199. package/dist/remove-file.mjs.map +1 -0
  200. package/dist/resolve.cjs +3 -1
  201. package/dist/resolve.d.cts +106 -2
  202. package/dist/resolve.d.cts.map +1 -0
  203. package/dist/resolve.d.mts +106 -2
  204. package/dist/resolve.d.mts.map +1 -0
  205. package/dist/resolve.mjs +4 -1
  206. package/dist/resolve.mjs.map +1 -0
  207. package/dist/semver-fns.cjs +1 -1
  208. package/dist/semver-fns.d.cts +92 -2
  209. package/dist/semver-fns.d.cts.map +1 -0
  210. package/dist/semver-fns.d.mts +92 -2
  211. package/dist/semver-fns.d.mts.map +1 -0
  212. package/dist/semver-fns.mjs +2 -1
  213. package/dist/semver-fns.mjs.map +1 -0
  214. package/dist/string-format/src/package.cjs +1 -0
  215. package/dist/string-format/src/package.mjs +2 -0
  216. package/dist/string-format/src/package.mjs.map +1 -0
  217. package/dist/toml.cjs +3 -1
  218. package/dist/toml.d.cts +81 -2
  219. package/dist/toml.d.cts.map +1 -0
  220. package/dist/toml.d.mts +81 -2
  221. package/dist/toml.d.mts.map +1 -0
  222. package/dist/toml.mjs +4 -1
  223. package/dist/toml.mjs.map +1 -0
  224. package/dist/tsconfig.cjs +1 -1
  225. package/dist/tsconfig.d.cts +14 -2
  226. package/dist/tsconfig.d.cts.map +1 -0
  227. package/dist/tsconfig.d.mts +14 -2
  228. package/dist/tsconfig.d.mts.map +1 -0
  229. package/dist/tsconfig.mjs +2 -1
  230. package/dist/tsconfig.mjs.map +1 -0
  231. package/dist/type-checks/src/get-object-tag.cjs +1 -0
  232. package/dist/type-checks/src/get-object-tag.mjs +2 -0
  233. package/dist/type-checks/src/get-object-tag.mjs.map +1 -0
  234. package/dist/type-checks/src/index.cjs +1 -0
  235. package/dist/type-checks/src/index.mjs +1 -0
  236. package/dist/type-checks/src/is-buffer.cjs +1 -0
  237. package/dist/type-checks/src/is-buffer.mjs +2 -0
  238. package/dist/type-checks/src/is-buffer.mjs.map +1 -0
  239. package/dist/type-checks/src/is-collection.cjs +1 -0
  240. package/dist/type-checks/src/is-collection.mjs +1 -0
  241. package/dist/type-checks/src/is-empty.cjs +1 -0
  242. package/dist/type-checks/src/is-empty.mjs +2 -0
  243. package/dist/type-checks/src/is-empty.mjs.map +1 -0
  244. package/dist/type-checks/src/is-error.cjs +1 -0
  245. package/dist/type-checks/src/is-error.mjs +2 -0
  246. package/dist/type-checks/src/is-error.mjs.map +1 -0
  247. package/dist/type-checks/src/is-null.cjs +1 -0
  248. package/dist/type-checks/src/is-null.mjs +2 -0
  249. package/dist/type-checks/src/is-null.mjs.map +1 -0
  250. package/dist/type-checks/src/is-number.cjs +1 -0
  251. package/dist/type-checks/src/is-number.mjs +2 -0
  252. package/dist/type-checks/src/is-number.mjs.map +1 -0
  253. package/dist/type-checks/src/is-object.cjs +1 -0
  254. package/dist/type-checks/src/is-object.mjs +2 -0
  255. package/dist/type-checks/src/is-object.mjs.map +1 -0
  256. package/dist/type-checks/src/is-plain-object.cjs +1 -0
  257. package/dist/type-checks/src/is-plain-object.mjs +2 -0
  258. package/dist/type-checks/src/is-plain-object.mjs.map +1 -0
  259. package/dist/type-checks/src/is-set-string.cjs +1 -0
  260. package/dist/type-checks/src/is-set-string.mjs +2 -0
  261. package/dist/type-checks/src/is-set-string.mjs.map +1 -0
  262. package/dist/type-checks/src/is-set.cjs +1 -0
  263. package/dist/type-checks/src/is-set.mjs +2 -0
  264. package/dist/type-checks/src/is-set.mjs.map +1 -0
  265. package/dist/type-checks/src/is-string.cjs +1 -0
  266. package/dist/type-checks/src/is-string.mjs +2 -0
  267. package/dist/type-checks/src/is-string.mjs.map +1 -0
  268. package/dist/type-checks/src/is-undefined.cjs +1 -0
  269. package/dist/type-checks/src/is-undefined.mjs +2 -0
  270. package/dist/type-checks/src/is-undefined.mjs.map +1 -0
  271. package/dist/type-checks/src/type-detect.cjs +1 -0
  272. package/dist/type-checks/src/type-detect.mjs +2 -0
  273. package/dist/type-checks/src/type-detect.mjs.map +1 -0
  274. package/dist/types/src/base.cjs +1 -0
  275. package/dist/types/src/base.mjs +2 -0
  276. package/dist/types/src/base.mjs.map +1 -0
  277. package/dist/{file-D1uBqkpP.d.cts → types/src/file.d.cts} +2 -2
  278. package/dist/types/src/file.d.cts.map +1 -0
  279. package/dist/{file-DauFFmfh.d.mts → types/src/file.d.mts} +2 -2
  280. package/dist/types/src/file.d.mts.map +1 -0
  281. package/dist/{package-fns-CxokaGDY.d.mts → types/src/package-json.d.cts} +2 -95
  282. package/dist/types/src/package-json.d.cts.map +1 -0
  283. package/dist/{package-fns-BNRi_Rpc.d.cts → types/src/package-json.d.mts} +2 -95
  284. package/dist/types/src/package-json.d.mts.map +1 -0
  285. package/dist/types/src/package-manager.d.cts +5 -0
  286. package/dist/types/src/package-manager.d.cts.map +1 -0
  287. package/dist/types/src/package-manager.d.mts +5 -0
  288. package/dist/types/src/package-manager.d.mts.map +1 -0
  289. package/dist/{tsconfig-B13IMV_0.d.mts → types/src/tsconfig.d.cts} +3 -12
  290. package/dist/types/src/tsconfig.d.cts.map +1 -0
  291. package/dist/{tsconfig-C8ecu1-0.d.cts → types/src/tsconfig.d.mts} +3 -12
  292. package/dist/types/src/tsconfig.d.mts.map +1 -0
  293. package/dist/write-file.cjs +1 -1
  294. package/dist/write-file.d.cts +35 -2
  295. package/dist/write-file.d.cts.map +1 -0
  296. package/dist/write-file.d.mts +35 -2
  297. package/dist/write-file.d.mts.map +1 -0
  298. package/dist/write-file.mjs +2 -1
  299. package/dist/write-file.mjs.map +1 -0
  300. package/dist/yaml.cjs +1 -1
  301. package/dist/yaml.d.cts +23 -2
  302. package/dist/yaml.d.cts.map +1 -0
  303. package/dist/yaml.d.mts +23 -2
  304. package/dist/yaml.d.mts.map +1 -0
  305. package/dist/yaml.mjs +2 -1
  306. package/dist/yaml.mjs.map +1 -0
  307. package/package.json +11 -11
  308. package/dist/buffer-Ch164vki.cjs +0 -1
  309. package/dist/buffer-DDq-CW4J.mjs +0 -2
  310. package/dist/buffer-DDq-CW4J.mjs.map +0 -1
  311. package/dist/buffer-DgfUmhrc.d.mts +0 -32
  312. package/dist/buffer-DgfUmhrc.d.mts.map +0 -1
  313. package/dist/buffer-DvCjrjQH.d.cts +0 -32
  314. package/dist/buffer-DvCjrjQH.d.cts.map +0 -1
  315. package/dist/chmod-x-BPr4tt2-.d.cts +0 -44
  316. package/dist/chmod-x-BPr4tt2-.d.cts.map +0 -1
  317. package/dist/chmod-x-FOy3sak8.cjs +0 -1
  318. package/dist/chmod-x-QCk1GmQJ.d.mts +0 -44
  319. package/dist/chmod-x-QCk1GmQJ.d.mts.map +0 -1
  320. package/dist/chmod-x-q-TWdus7.mjs +0 -2
  321. package/dist/chmod-x-q-TWdus7.mjs.map +0 -1
  322. package/dist/command-exists-CuieR7rx.d.cts +0 -22
  323. package/dist/command-exists-CuieR7rx.d.cts.map +0 -1
  324. package/dist/command-exists-D1bV-wSk.cjs +0 -1
  325. package/dist/command-exists-Dzb2kKT4.mjs +0 -2
  326. package/dist/command-exists-Dzb2kKT4.mjs.map +0 -1
  327. package/dist/command-exists-dBdtR0xj.d.mts +0 -22
  328. package/dist/command-exists-dBdtR0xj.d.mts.map +0 -1
  329. package/dist/compress-BiTxso15.mjs +0 -2
  330. package/dist/compress-BiTxso15.mjs.map +0 -1
  331. package/dist/compress-BjGbQqs_.cjs +0 -1
  332. package/dist/compress-CLAaOwH3.d.mts +0 -16
  333. package/dist/compress-CLAaOwH3.d.mts.map +0 -1
  334. package/dist/compress-CQve2a6h.d.cts +0 -16
  335. package/dist/compress-CQve2a6h.d.cts.map +0 -1
  336. package/dist/constants-D58o2CiO.d.cts +0 -5
  337. package/dist/constants-D58o2CiO.d.cts.map +0 -1
  338. package/dist/constants-DZz9LJgo.d.mts +0 -5
  339. package/dist/constants-DZz9LJgo.d.mts.map +0 -1
  340. package/dist/copy-file-B5FJHiIK.d.mts +0 -39
  341. package/dist/copy-file-B5FJHiIK.d.mts.map +0 -1
  342. package/dist/copy-file-Bot2YNtT.mjs +0 -2
  343. package/dist/copy-file-Bot2YNtT.mjs.map +0 -1
  344. package/dist/copy-file-DjH2Ho5e.d.cts +0 -39
  345. package/dist/copy-file-DjH2Ho5e.d.cts.map +0 -1
  346. package/dist/copy-file-Y1ilzocZ.cjs +0 -1
  347. package/dist/cwd-YTg9Cx6C.mjs +0 -2
  348. package/dist/cwd-YTg9Cx6C.mjs.map +0 -1
  349. package/dist/cwd-o2vq8Tk9.cjs +0 -1
  350. package/dist/exists-175EN367.d.mts +0 -18
  351. package/dist/exists-175EN367.d.mts.map +0 -1
  352. package/dist/exists-B31lSRFp.cjs +0 -1
  353. package/dist/exists-CVlDImzc.d.cts +0 -18
  354. package/dist/exists-CVlDImzc.d.cts.map +0 -1
  355. package/dist/exists-Ci-9lYmi.mjs +0 -2
  356. package/dist/exists-Ci-9lYmi.mjs.map +0 -1
  357. package/dist/file-D1uBqkpP.d.cts.map +0 -1
  358. package/dist/file-DauFFmfh.d.mts.map +0 -1
  359. package/dist/file-path-fns-7aKacdLg.cjs +0 -1
  360. package/dist/file-path-fns-BDzC2SIV.mjs +0 -2
  361. package/dist/file-path-fns-BDzC2SIV.mjs.map +0 -1
  362. package/dist/get-parent-path-COkh6Pvl.d.mts +0 -32
  363. package/dist/get-parent-path-COkh6Pvl.d.mts.map +0 -1
  364. package/dist/get-parent-path-Cbqs2km7.d.cts +0 -32
  365. package/dist/get-parent-path-Cbqs2km7.d.cts.map +0 -1
  366. package/dist/get-parent-path-CfRkaB4R.cjs +0 -1
  367. package/dist/get-parent-path-DLFSyxSW.mjs +0 -2
  368. package/dist/get-parent-path-DLFSyxSW.mjs.map +0 -1
  369. package/dist/get-workspace-root-CCNjjZGY.cjs +0 -1
  370. package/dist/get-workspace-root-DQBvBd8X.d.mts +0 -48
  371. package/dist/get-workspace-root-DQBvBd8X.d.mts.map +0 -1
  372. package/dist/get-workspace-root-eTfm1jII.d.cts +0 -48
  373. package/dist/get-workspace-root-eTfm1jII.d.cts.map +0 -1
  374. package/dist/get-workspace-root-k66w-wLW.mjs +0 -2
  375. package/dist/get-workspace-root-k66w-wLW.mjs.map +0 -1
  376. package/dist/helpers-BSEQb1fp.mjs +0 -2
  377. package/dist/helpers-BSEQb1fp.mjs.map +0 -1
  378. package/dist/helpers-CYWFZ-Uv.d.mts +0 -50
  379. package/dist/helpers-CYWFZ-Uv.d.mts.map +0 -1
  380. package/dist/helpers-CgMOExPa.d.cts +0 -50
  381. package/dist/helpers-CgMOExPa.d.cts.map +0 -1
  382. package/dist/helpers-_MJ6PR-g.cjs +0 -1
  383. package/dist/install-B3bIjHoU.mjs +0 -2
  384. package/dist/install-B3bIjHoU.mjs.map +0 -1
  385. package/dist/install-CZ_S7NHm.cjs +0 -1
  386. package/dist/install-CxPsLO2t.d.cts +0 -28
  387. package/dist/install-CxPsLO2t.d.cts.map +0 -1
  388. package/dist/install-dYt7hlQn.d.mts +0 -29
  389. package/dist/install-dYt7hlQn.d.mts.map +0 -1
  390. package/dist/is-error-CjEyTRps.cjs +0 -1
  391. package/dist/is-error-CjVXmD_8.mjs +0 -2
  392. package/dist/is-error-CjVXmD_8.mjs.map +0 -1
  393. package/dist/is-file-BkFQev3M.cjs +0 -1
  394. package/dist/is-file-CNooe8Wz.mjs +0 -2
  395. package/dist/is-file-CNooe8Wz.mjs.map +0 -1
  396. package/dist/is-file-DjqOQrqY.d.mts +0 -36
  397. package/dist/is-file-DjqOQrqY.d.mts.map +0 -1
  398. package/dist/is-file-DoBi2FN9.d.cts +0 -36
  399. package/dist/is-file-DoBi2FN9.d.cts.map +0 -1
  400. package/dist/is-object-FBXmvehR.cjs +0 -1
  401. package/dist/is-object-UsKYhyC5.mjs +0 -2
  402. package/dist/is-object-UsKYhyC5.mjs.map +0 -1
  403. package/dist/is-set-string-CLeu8BKX.cjs +0 -1
  404. package/dist/is-set-string-Cj0g4gsG.mjs +0 -2
  405. package/dist/is-set-string-Cj0g4gsG.mjs.map +0 -1
  406. package/dist/is-string-91Z3dOKQ.mjs +0 -2
  407. package/dist/is-string-91Z3dOKQ.mjs.map +0 -1
  408. package/dist/is-string-DKgNS0jA.cjs +0 -1
  409. package/dist/join-paths-BHepkhAj.mjs +0 -2
  410. package/dist/join-paths-BHepkhAj.mjs.map +0 -1
  411. package/dist/join-paths-DUdaieID.cjs +0 -1
  412. package/dist/json-CYenVxvr.d.cts +0 -83
  413. package/dist/json-CYenVxvr.d.cts.map +0 -1
  414. package/dist/json-DH7Q6Ftp.d.mts +0 -83
  415. package/dist/json-DH7Q6Ftp.d.mts.map +0 -1
  416. package/dist/json-DKhqPjHB.cjs +0 -6
  417. package/dist/json-Dp4PSH2i.mjs +0 -7
  418. package/dist/json-Dp4PSH2i.mjs.map +0 -1
  419. package/dist/list-files-Cn_UVruo.cjs +0 -1
  420. package/dist/list-files-D3dQOljX.d.cts +0 -51
  421. package/dist/list-files-D3dQOljX.d.cts.map +0 -1
  422. package/dist/list-files-D3iJzEQw.d.mts +0 -51
  423. package/dist/list-files-D3iJzEQw.d.mts.map +0 -1
  424. package/dist/list-files-D__uh3tQ.mjs +0 -2
  425. package/dist/list-files-D__uh3tQ.mjs.map +0 -1
  426. package/dist/package-fns-BNRi_Rpc.d.cts.map +0 -1
  427. package/dist/package-fns-C7-MKgBR.mjs +0 -2
  428. package/dist/package-fns-C7-MKgBR.mjs.map +0 -1
  429. package/dist/package-fns-CxokaGDY.d.mts.map +0 -1
  430. package/dist/package-fns-YTCdMAXr.cjs +0 -1
  431. package/dist/read-file-B091zB64.mjs +0 -2
  432. package/dist/read-file-B091zB64.mjs.map +0 -1
  433. package/dist/read-file-BB2WzW-N.cjs +0 -1
  434. package/dist/read-file-Bxn1VHKv.d.cts +0 -30
  435. package/dist/read-file-Bxn1VHKv.d.cts.map +0 -1
  436. package/dist/read-file-CRVW-wcE.d.mts +0 -30
  437. package/dist/read-file-CRVW-wcE.d.mts.map +0 -1
  438. package/dist/registry-B1taIPKm.mjs +0 -2
  439. package/dist/registry-B1taIPKm.mjs.map +0 -1
  440. package/dist/registry-BQ3JXRFA.d.mts +0 -53
  441. package/dist/registry-BQ3JXRFA.d.mts.map +0 -1
  442. package/dist/registry-BYwvM92u.cjs +0 -1
  443. package/dist/registry-C2A0Kau7.d.cts +0 -53
  444. package/dist/registry-C2A0Kau7.d.cts.map +0 -1
  445. package/dist/remove-file-BM64Brdf.mjs +0 -2
  446. package/dist/remove-file-BM64Brdf.mjs.map +0 -1
  447. package/dist/remove-file-BqlkL_Df.d.mts +0 -16
  448. package/dist/remove-file-BqlkL_Df.d.mts.map +0 -1
  449. package/dist/remove-file-XHFKELQN.cjs +0 -1
  450. package/dist/remove-file-lQOlxDwr.d.cts +0 -16
  451. package/dist/remove-file-lQOlxDwr.d.cts.map +0 -1
  452. package/dist/resolve-C_YsCFne.mjs +0 -4
  453. package/dist/resolve-C_YsCFne.mjs.map +0 -1
  454. package/dist/resolve-D66oIwjf.d.mts +0 -106
  455. package/dist/resolve-D66oIwjf.d.mts.map +0 -1
  456. package/dist/resolve-DTkLQekH.cjs +0 -3
  457. package/dist/resolve-DubH-8qd.d.cts +0 -106
  458. package/dist/resolve-DubH-8qd.d.cts.map +0 -1
  459. package/dist/resolve-parent-path-CR8av8WP.mjs +0 -2
  460. package/dist/resolve-parent-path-CR8av8WP.mjs.map +0 -1
  461. package/dist/resolve-parent-path-D0AaW2PB.cjs +0 -1
  462. package/dist/semver-fns-B0e5zB6C.d.mts +0 -92
  463. package/dist/semver-fns-B0e5zB6C.d.mts.map +0 -1
  464. package/dist/semver-fns-Btrm1dIF.cjs +0 -1
  465. package/dist/semver-fns-DjhZXnUw.d.cts +0 -92
  466. package/dist/semver-fns-DjhZXnUw.d.cts.map +0 -1
  467. package/dist/semver-fns-F_rYnwDq.mjs +0 -2
  468. package/dist/semver-fns-F_rYnwDq.mjs.map +0 -1
  469. package/dist/toml-CIgLQmP3.mjs +0 -4
  470. package/dist/toml-CIgLQmP3.mjs.map +0 -1
  471. package/dist/toml-D3X2QoaL.d.cts +0 -81
  472. package/dist/toml-D3X2QoaL.d.cts.map +0 -1
  473. package/dist/toml-DgVyNp_y.cjs +0 -3
  474. package/dist/toml-Djau1M6n.d.mts +0 -81
  475. package/dist/toml-Djau1M6n.d.mts.map +0 -1
  476. package/dist/tsconfig-B13IMV_0.d.mts.map +0 -1
  477. package/dist/tsconfig-B6WtgD1c.cjs +0 -1
  478. package/dist/tsconfig-C8ecu1-0.d.cts.map +0 -1
  479. package/dist/tsconfig-CqvvSVuX.mjs +0 -2
  480. package/dist/tsconfig-CqvvSVuX.mjs.map +0 -1
  481. package/dist/write-file-BmvbsmMj.d.cts +0 -35
  482. package/dist/write-file-BmvbsmMj.d.cts.map +0 -1
  483. package/dist/write-file-CFByoJkN.mjs +0 -2
  484. package/dist/write-file-CFByoJkN.mjs.map +0 -1
  485. package/dist/write-file-CWTzQpb2.d.mts +0 -35
  486. package/dist/write-file-CWTzQpb2.d.mts.map +0 -1
  487. package/dist/write-file-CqokudVp.cjs +0 -1
  488. package/dist/yaml-6uuLoSfT.d.cts +0 -23
  489. package/dist/yaml-6uuLoSfT.d.cts.map +0 -1
  490. package/dist/yaml-CLMo56UG.mjs +0 -2
  491. package/dist/yaml-CLMo56UG.mjs.map +0 -1
  492. package/dist/yaml-Ddslc5NK.d.mts +0 -23
  493. package/dist/yaml-Ddslc5NK.d.mts.map +0 -1
  494. package/dist/yaml-q2k-BjIM.cjs +0 -1
@@ -1,51 +0,0 @@
1
- import { t as AssetGlob } from "./file-DauFFmfh.mjs";
2
- import { GlobOptions, Path } from "glob";
3
-
4
- //#region src/list-files.d.ts
5
- type ListOptions = GlobOptions;
6
- type InferListReturnType<TOptions extends GlobOptions> = TOptions["withFileTypes"] extends true ? Path[] : string[];
7
- /**
8
- * A files and directories listing helper function
9
- *
10
- * @param filesGlob - A glob pattern to match files
11
- * @returns A list of file paths
12
- */
13
- declare function list<TOptions extends ListOptions>(filesGlob: string | Omit<AssetGlob, "output">, options?: TOptions): Promise<InferListReturnType<TOptions>>;
14
- /**
15
- * A synchronous files and directories listing helper function
16
- *
17
- * @param filesGlob - A glob pattern to match files
18
- * @returns A list of file paths
19
- */
20
- declare function listSync<TOptions extends ListOptions>(filesGlob: string | Omit<AssetGlob, "output">, options?: TOptions): InferListReturnType<TOptions>;
21
- /**
22
- * A file listing helper function
23
- *
24
- * @param filesGlob - A glob pattern to match files
25
- * @returns A list of file paths
26
- */
27
- declare function listFiles<TOptions extends ListOptions>(filesGlob: string | Omit<AssetGlob, "output">, options?: TOptions): Promise<InferListReturnType<TOptions>>;
28
- /**
29
- * A synchronous file listing helper function
30
- *
31
- * @param filesGlob - A glob pattern to match files
32
- * @returns A list of file paths
33
- */
34
- declare function listFilesSync<TOptions extends ListOptions>(filesGlob: string | Omit<AssetGlob, "output">, options?: TOptions): InferListReturnType<TOptions>;
35
- /**
36
- * A directories listing helper function
37
- *
38
- * @param filesGlob - A glob pattern to match files
39
- * @returns A list of file paths
40
- */
41
- declare function listDirectories<TOptions extends ListOptions>(filesGlob: string | Omit<AssetGlob, "output">, options?: TOptions): Promise<InferListReturnType<TOptions>>;
42
- /**
43
- * A synchronous directories listing helper function
44
- *
45
- * @param filesGlob - A glob pattern to match files
46
- * @returns A list of file paths
47
- */
48
- declare function listDirectoriesSync<TOptions extends ListOptions>(filesGlob: string | Omit<AssetGlob, "output">, options?: TOptions): InferListReturnType<TOptions>;
49
- //#endregion
50
- export { listDirectoriesSync as a, listSync as c, listDirectories as i, ListOptions as n, listFiles as o, list as r, listFilesSync as s, InferListReturnType as t };
51
- //# sourceMappingURL=list-files-D3iJzEQw.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"list-files-D3iJzEQw.d.mts","names":[],"sources":["../src/list-files.ts"],"sourcesContent":[],"mappings":";;;;KAyBY,WAAA,GAAc;KACd,qCAAqC,eAC/C,yCAAyC;AAF3C;AACA;;;;;AAasB,iBAAA,IAAI,CAAA,iBAAkB,WAAlB,CAAA,CAAA,SAAA,EAAA,MAAA,GACJ,IADI,CACC,SADD,EAAA,QAAA,CAAA,EAAA,OAAA,CAAA,EAEd,QAFc,CAAA,EAGvB,OAHuB,CAGf,mBAHe,CAGK,QAHL,CAAA,CAAA;;;;;;;AAGvB,iBAyBa,QAzBb,CAAA,iBAyBuC,WAzBvC,CAAA,CAAA,SAAA,EAAA,MAAA,GA0BmB,IA1BnB,CA0BwB,SA1BxB,EAAA,QAAA,CAAA,EAAA,OAAA,CAAA,EA2BS,QA3BT,CAAA,EA4BA,mBA5BA,CA4BoB,QA5BpB,CAAA;;AAyBH;;;;;AAGuB,iBAyBD,SAzBC,CAAA,iBAyB0B,WAzB1B,CAAA,CAAA,SAAA,EAAA,MAAA,GA0BD,IA1BC,CA0BI,SA1BJ,EAAA,QAAA,CAAA,EAAA,OAAA,CAAA,EA2BX,QA3BW,CAAA,EA2BH,OA3BG,CA2BH,mBA3BG,CA2BH,QA3BG,CAAA,CAAA;;;AAyBvB;;;;AAEY,iBAwBI,aAxBJ,CAAA,iBAwBmC,WAxBnC,CAAA,CAAA,SAAA,EAAA,MAAA,GAyBU,IAzBV,CAyBe,SAzBf,EAAA,QAAA,CAAA,EAAA,OAAA,CAAA,EA0BA,QA1BA,CAAA,EA0BQ,mBA1BR,CA0BQ,QA1BR,CAAA;;;;;AAwBZ;;AAC2B,iBAoBL,eApBK,CAAA,iBAoB4B,WApB5B,CAAA,CAAA,SAAA,EAAA,MAAA,GAqBL,IArBK,CAqBA,SArBA,EAAA,QAAA,CAAA,EAAA,OAAA,CAAA,EAsBf,QAtBe,CAAA,EAsBP,OAtBO,CAsBP,mBAtBO,CAsBP,QAtBO,CAAA,CAAA;;;;;;AAoB3B;AAAuD,iBA0BvC,mBA1BuC,CAAA,iBA0BF,WA1BE,CAAA,CAAA,SAAA,EAAA,MAAA,GA2BjC,IA3BiC,CA2B5B,SA3B4B,EAAA,QAAA,CAAA,EAAA,OAAA,CAAA,EA4B3C,QA5B2C,CAAA,EA4BnC,mBA5BmC,CA4BnC,QA5BmC,CAAA"}
@@ -1,2 +0,0 @@
1
- import{t as e}from"./join-paths-BHepkhAj.mjs";import{t}from"./is-string-91Z3dOKQ.mjs";import n from"defu";import{glob as r}from"glob";typeof Buffer<`u`&&Buffer.isBuffer.bind(Buffer),(e=>(typeof globalThis==`object`||Object.defineProperty(e,`typeDetectGlobalObject`,{get(){return this},configurable:!0}),globalThis))(Object.prototype);const i={dot:!0};async function a(a,o){return r(t(a)?a.includes(`*`)?a:e(a,`**/*`):a.input?e(a.input,a.glob):a.glob,n(t(a)?{}:{dot:a.dot,ignore:a.ignore},o??{},i))}function o(a,o){return r.sync(t(a)?a.includes(`*`)?a:e(a,`**/*`):a.input?e(a.input,a.glob):a.glob,n(t(a)?{}:{dot:a.dot,ignore:a.ignore},o??{},i))}async function s(e,t){let r=(await a(e,n({withFileTypes:!0},t??{}))).filter(e=>e.isFile());return t?.withFileTypes?r:r.map(e=>e.fullpath())}function c(e,t){let r=o(e,n({withFileTypes:!0},t??{})).filter(e=>e.isFile());return t?.withFileTypes?r:r.map(e=>e.fullpath())}async function l(e,t){let r=(await a(e,n({withFileTypes:!0},t??{}))).filter(e=>e.isDirectory());return t?.withFileTypes?r:r.map(e=>e.fullpath())}function u(e,t){let r=o(e,n({withFileTypes:!0},t??{})).filter(e=>e.isDirectory());return t?.withFileTypes?r:r.map(e=>e.fullpath())}export{c as a,s as i,l as n,o,u as r,a as t};
2
- //# sourceMappingURL=list-files-D__uh3tQ.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"list-files-D__uh3tQ.mjs","names":["isBuffer: typeof Buffer.isBuffer","isBuffer","DEFAULT_OPTIONS: ListOptions"],"sources":["../../type-checks/src/is-buffer.ts","../../type-checks/src/type-detect.ts","../src/list-files.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nexport const isBufferExists = typeof Buffer !== \"undefined\";\n\n/**\n * Check if the provided value's type is `Buffer`\n */\nexport const isBuffer: typeof Buffer.isBuffer = isBufferExists\n ? Buffer.isBuffer.bind(Buffer)\n : /**\n * Check if the provided value's type is `Buffer`\n\n * @param value - The value to type check\n * @returns An indicator specifying if the value provided is of type `Buffer`\n */\n function isBuffer(\n value: Parameters<typeof Buffer.isBuffer>[0]\n ): value is Buffer {\n return false;\n };\n","/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { isBuffer } from \"./is-buffer\";\n\nconst globalObject = (Obj => {\n if (typeof globalThis === \"object\") {\n return globalThis;\n }\n Object.defineProperty(Obj, \"typeDetectGlobalObject\", {\n get() {\n return this;\n },\n configurable: true\n });\n\n // // biome-ignore lint/correctness/noUndeclaredVariables: <explanation>\n // const global = typeDetectGlobalObject;\n\n // // biome-ignore lint/performance/noDelete: <explanation>\n // delete Obj.typeDetectGlobalObject;\n return globalThis;\n})(Object.prototype);\n\nexport function typeDetect(obj: unknown): string {\n // NOTE: isBuffer must execute before type-detect,\n // because type-detect returns 'Uint8Array'.\n if (isBuffer(obj)) {\n return \"Buffer\";\n }\n\n const typeofObj = typeof obj;\n if (typeofObj !== \"object\") {\n return typeofObj;\n }\n\n if (obj === null) {\n return \"null\";\n }\n\n if (obj === globalObject) {\n return \"global\";\n }\n\n if (\n Array.isArray(obj) &&\n (Symbol.toStringTag === undefined || !(Symbol.toStringTag in obj))\n ) {\n return \"Array\";\n }\n\n // https://html.spec.whatwg.org/multipage/browsers.html#location\n if (typeof globalThis === \"object\" && globalThis !== null) {\n if (\n typeof (globalThis as any).location === \"object\" &&\n obj === (globalThis as any).location\n ) {\n return \"Location\";\n }\n\n // https://html.spec.whatwg.org/#document\n if (\n typeof (globalThis as any).document === \"object\" &&\n obj === (globalThis as any).document\n ) {\n return \"Document\";\n }\n\n // https://html.spec.whatwg.org/multipage/webappapis.html#mimetypearray\n if (typeof (globalThis as any).navigator === \"object\") {\n if (\n typeof (globalThis as any).navigator.mimeTypes === \"object\" &&\n obj === (globalThis as any).navigator.mimeTypes\n ) {\n return \"MimeTypeArray\";\n }\n\n // https://html.spec.whatwg.org/multipage/webappapis.html#pluginarray\n if (\n typeof (globalThis as any).navigator.plugins === \"object\" &&\n obj === (globalThis as any).navigator.plugins\n ) {\n return \"PluginArray\";\n }\n }\n\n // https://html.spec.whatwg.org/multipage/webappapis.html#pluginarray\n if (\n (typeof (globalThis as any).HTMLElement === \"function\" ||\n typeof (globalThis as any).HTMLElement === \"object\") &&\n obj instanceof (globalThis as any).HTMLElement\n ) {\n if ((obj as any).tagName === \"BLOCKQUOTE\") {\n return \"HTMLQuoteElement\";\n }\n\n // https://html.spec.whatwg.org/#htmltabledatacellelement\n if ((obj as any).tagName === \"TD\") {\n return \"HTMLTableDataCellElement\";\n }\n\n // https://html.spec.whatwg.org/#htmltableheadercellelement\n if ((obj as any).tagName === \"TH\") {\n return \"HTMLTableHeaderCellElement\";\n }\n }\n }\n\n const stringTag =\n Symbol.toStringTag !== undefined && (obj as any)[Symbol.toStringTag];\n if (typeof stringTag === \"string\") {\n return stringTag;\n }\n\n const objPrototype = Object.getPrototypeOf(obj);\n if (objPrototype === RegExp.prototype) {\n return \"RegExp\";\n }\n\n if (objPrototype === Date.prototype) {\n return \"Date\";\n }\n\n // http://www.ecma-international.org/ecma-262/6.0/index.html#sec-promise.prototype-@@tostringtag\n if (typeof Promise !== \"undefined\" && objPrototype === Promise.prototype) {\n return \"Promise\";\n }\n\n if (typeof Set !== \"undefined\" && objPrototype === Set.prototype) {\n return \"Set\";\n }\n\n if (typeof Map !== \"undefined\" && objPrototype === Map.prototype) {\n return \"Map\";\n }\n\n if (typeof WeakSet !== \"undefined\" && objPrototype === WeakSet.prototype) {\n return \"WeakSet\";\n }\n\n if (typeof WeakMap !== \"undefined\" && objPrototype === WeakMap.prototype) {\n return \"WeakMap\";\n }\n\n // http://www.ecma-international.org/ecma-262/6.0/index.html#sec-dataview.prototype-@@tostringtag\n if (typeof DataView !== \"undefined\" && objPrototype === DataView.prototype) {\n return \"DataView\";\n }\n\n // http://www.ecma-international.org/ecma-262/6.0/index.html#sec-%mapiteratorprototype%-@@tostringtag\n if (\n typeof Map !== \"undefined\" &&\n objPrototype === Object.getPrototypeOf(new Map().entries())\n ) {\n return \"Map Iterator\";\n }\n\n // http://www.ecma-international.org/ecma-262/6.0/index.html#sec-%setiteratorprototype%-@@tostringtag\n if (\n typeof Set !== \"undefined\" &&\n objPrototype === Object.getPrototypeOf(new Set().entries())\n ) {\n return \"Set Iterator\";\n }\n\n // http://www.ecma-international.org/ecma-262/6.0/index.html#sec-%arrayiteratorprototype%-@@tostringtag\n if (\n typeof Array.prototype[Symbol.iterator] === \"function\" &&\n objPrototype === Object.getPrototypeOf([][Symbol.iterator]())\n ) {\n return \"Array Iterator\";\n }\n\n // http://www.ecma-international.org/ecma-262/6.0/index.html#sec-%stringiteratorprototype%-@@tostringtag\n if (\n Symbol.iterator !== undefined &&\n typeof String.prototype[Symbol.iterator] === \"function\" &&\n Object.getPrototypeOf(\"\"[Symbol.iterator]()) &&\n objPrototype === Object.getPrototypeOf(\"\"[Symbol.iterator]())\n ) {\n return \"String Iterator\";\n }\n\n if (objPrototype === null) {\n return \"Object\";\n }\n\n return Object.prototype.toString.call(obj).slice(8, -1);\n}\n","/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { joinPaths } from \"@stryke/path\";\nimport { isString } from \"@stryke/type-checks\";\nimport type { AssetGlob } from \"@stryke/types/file\";\nimport defu from \"defu\";\nimport type { GlobOptions, GlobOptionsWithFileTypesTrue, Path } from \"glob\";\nimport { glob } from \"glob\";\n\nexport type ListOptions = GlobOptions;\nexport type InferListReturnType<TOptions extends GlobOptions> =\n TOptions[\"withFileTypes\"] extends true ? Path[] : string[];\n\nconst DEFAULT_OPTIONS: ListOptions = {\n dot: true\n};\n\n/**\n * A files and directories listing helper function\n *\n * @param filesGlob - A glob pattern to match files\n * @returns A list of file paths\n */\nexport async function list<TOptions extends ListOptions>(\n filesGlob: string | Omit<AssetGlob, \"output\">,\n options?: TOptions\n): Promise<InferListReturnType<TOptions>> {\n return glob(\n isString(filesGlob)\n ? filesGlob.includes(\"*\")\n ? filesGlob\n : joinPaths(filesGlob, \"**/*\")\n : filesGlob.input\n ? joinPaths(filesGlob.input, filesGlob.glob)\n : filesGlob.glob,\n defu(\n isString(filesGlob)\n ? {}\n : { dot: filesGlob.dot, ignore: filesGlob.ignore },\n options ?? {},\n DEFAULT_OPTIONS\n )\n ) as Promise<InferListReturnType<TOptions>>;\n}\n\n/**\n * A synchronous files and directories listing helper function\n *\n * @param filesGlob - A glob pattern to match files\n * @returns A list of file paths\n */\nexport function listSync<TOptions extends ListOptions>(\n filesGlob: string | Omit<AssetGlob, \"output\">,\n options?: TOptions\n): InferListReturnType<TOptions> {\n return glob.sync(\n isString(filesGlob)\n ? filesGlob.includes(\"*\")\n ? filesGlob\n : joinPaths(filesGlob, \"**/*\")\n : filesGlob.input\n ? joinPaths(filesGlob.input, filesGlob.glob)\n : filesGlob.glob,\n defu(\n isString(filesGlob)\n ? {}\n : { dot: filesGlob.dot, ignore: filesGlob.ignore },\n options ?? {},\n DEFAULT_OPTIONS\n )\n ) as InferListReturnType<TOptions>;\n}\n\n/**\n * A file listing helper function\n *\n * @param filesGlob - A glob pattern to match files\n * @returns A list of file paths\n */\nexport async function listFiles<TOptions extends ListOptions>(\n filesGlob: string | Omit<AssetGlob, \"output\">,\n options?: TOptions\n) {\n const result = (\n await list(\n filesGlob,\n defu(\n { withFileTypes: true },\n options ?? {}\n ) as GlobOptionsWithFileTypesTrue\n )\n ).filter(ret => ret.isFile());\n if (!options?.withFileTypes) {\n return result.map(file => file.fullpath()) as InferListReturnType<TOptions>;\n }\n\n return result as InferListReturnType<TOptions>;\n}\n\n/**\n * A synchronous file listing helper function\n *\n * @param filesGlob - A glob pattern to match files\n * @returns A list of file paths\n */\nexport function listFilesSync<TOptions extends ListOptions>(\n filesGlob: string | Omit<AssetGlob, \"output\">,\n options?: TOptions\n) {\n const result = listSync(\n filesGlob,\n defu({ withFileTypes: true }, options ?? {}) as GlobOptionsWithFileTypesTrue\n ).filter(ret => ret.isFile());\n if (!options?.withFileTypes) {\n return result.map(file => file.fullpath()) as InferListReturnType<TOptions>;\n }\n\n return result as InferListReturnType<TOptions>;\n}\n\n/**\n * A directories listing helper function\n *\n * @param filesGlob - A glob pattern to match files\n * @returns A list of file paths\n */\nexport async function listDirectories<TOptions extends ListOptions>(\n filesGlob: string | Omit<AssetGlob, \"output\">,\n options?: TOptions\n) {\n const result = (\n await list(\n filesGlob,\n defu(\n { withFileTypes: true },\n options ?? {}\n ) as GlobOptionsWithFileTypesTrue\n )\n ).filter(ret => ret.isDirectory());\n if (!options?.withFileTypes) {\n return result.map(file => file.fullpath()) as InferListReturnType<TOptions>;\n }\n\n return result as InferListReturnType<TOptions>;\n}\n\n/**\n * A synchronous directories listing helper function\n *\n * @param filesGlob - A glob pattern to match files\n * @returns A list of file paths\n */\nexport function listDirectoriesSync<TOptions extends ListOptions>(\n filesGlob: string | Omit<AssetGlob, \"output\">,\n options?: TOptions\n) {\n const result = listSync(\n filesGlob,\n defu({ withFileTypes: true }, options ?? {}) as GlobOptionsWithFileTypesTrue\n ).filter(ret => ret.isDirectory());\n if (!options?.withFileTypes) {\n return result.map(file => file.fullpath()) as InferListReturnType<TOptions>;\n }\n\n return result as InferListReturnType<TOptions>;\n}\n"],"mappings":"sIAkB8B,OAAO,OAAW,KAM5C,OAAO,SAAS,KAAK,OAAO,ECJV,IAChB,OAAO,YAAe,UAG1B,OAAO,eAAe,EAAK,yBAA0B,CACnD,KAAM,CACJ,OAAO,MAET,aAAc,GACf,CAAC,CAPO,aAeR,OAAO,UAAU,CCRpB,MAAME,EAA+B,CACnC,IAAK,GACN,CAQD,eAAsB,EACpB,EACA,EACwC,CACxC,OAAO,EACL,EAAS,EAAU,CACf,EAAU,SAAS,IAAI,CACrB,EACA,EAAU,EAAW,OAAO,CAC9B,EAAU,MACR,EAAU,EAAU,MAAO,EAAU,KAAK,CAC1C,EAAU,KAChB,EACE,EAAS,EAAU,CACf,EAAE,CACF,CAAE,IAAK,EAAU,IAAK,OAAQ,EAAU,OAAQ,CACpD,GAAW,EAAE,CACb,EACD,CACF,CASH,SAAgB,EACd,EACA,EAC+B,CAC/B,OAAO,EAAK,KACV,EAAS,EAAU,CACf,EAAU,SAAS,IAAI,CACrB,EACA,EAAU,EAAW,OAAO,CAC9B,EAAU,MACR,EAAU,EAAU,MAAO,EAAU,KAAK,CAC1C,EAAU,KAChB,EACE,EAAS,EAAU,CACf,EAAE,CACF,CAAE,IAAK,EAAU,IAAK,OAAQ,EAAU,OAAQ,CACpD,GAAW,EAAE,CACb,EACD,CACF,CASH,eAAsB,EACpB,EACA,EACA,CACA,IAAM,GACJ,MAAM,EACJ,EACA,EACE,CAAE,cAAe,GAAM,CACvB,GAAW,EAAE,CACd,CACF,EACD,OAAO,GAAO,EAAI,QAAQ,CAAC,CAK7B,OAJK,GAAS,cAIP,EAHE,EAAO,IAAI,GAAQ,EAAK,UAAU,CAAC,CAY9C,SAAgB,EACd,EACA,EACA,CACA,IAAM,EAAS,EACb,EACA,EAAK,CAAE,cAAe,GAAM,CAAE,GAAW,EAAE,CAAC,CAC7C,CAAC,OAAO,GAAO,EAAI,QAAQ,CAAC,CAK7B,OAJK,GAAS,cAIP,EAHE,EAAO,IAAI,GAAQ,EAAK,UAAU,CAAC,CAY9C,eAAsB,EACpB,EACA,EACA,CACA,IAAM,GACJ,MAAM,EACJ,EACA,EACE,CAAE,cAAe,GAAM,CACvB,GAAW,EAAE,CACd,CACF,EACD,OAAO,GAAO,EAAI,aAAa,CAAC,CAKlC,OAJK,GAAS,cAIP,EAHE,EAAO,IAAI,GAAQ,EAAK,UAAU,CAAC,CAY9C,SAAgB,EACd,EACA,EACA,CACA,IAAM,EAAS,EACb,EACA,EAAK,CAAE,cAAe,GAAM,CAAE,GAAW,EAAE,CAAC,CAC7C,CAAC,OAAO,GAAO,EAAI,aAAa,CAAC,CAKlC,OAJK,GAAS,cAIP,EAHE,EAAO,IAAI,GAAQ,EAAK,UAAU,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"package-fns-BNRi_Rpc.d.cts","names":[],"sources":["../../types/src/package-json.ts","../../types/src/package-manager.ts","../src/package-fns.ts"],"sourcesContent":[],"mappings":";;;;;;;UAqBiB,WAAA,SAAoB;EAApB;;;;;;;;EA2GQ,IAAA,CAAA,EAAA,MAAA;EAIJ;;;EAoCT,OAAA,CAAA,EAAA,MAAA;EAYqB;;;EA+E3B,WAAA,CAAA,EAAA,MAAA;EA9O+B;;AAoQpC;EAaI,QAAA,CAAA,EAAA,MAAA,EAAA;EAUA;;;EAIgB,QAAA,CAAA,EAAA,MAAA;EAAf;;AAAK;EAKP,IAAA,CAAA,EAAA,MAAA,GAAA;IACe,GAAA,CAAA,EAAA,MAAA;IAAf,KAAA,CAAA,EAAA,MAAA;EAAK,CAAA;;;;ECxSG,OAAA,CAAA,EAAA,MAAA;;;;ACsBZ;EAwEsB,UAAA,CAAA,EAAA,MAAc,GAAA;IAEzB,IAAA,EAAA,MAAA;;IAAmB;;AAwB9B;IAciB,SAAA,CAAA,EAAA,MAAA;EAOA,CAAA;EAcK;AAYtB;AAkCA;EAYsB,OAAA,CAAA,EF1JV,ME0JU,CAAA,MAAiB,EAAA,MAAA,CAAA;EAEb;;;EAChB,OAAA,CAAA,EAAA,OAAA;EAwCY;AAwBtB;;WFrNW;;;;iBAIM;;;;;;;;;;;;;;qBAcI;;;;;;;;iBAQJ;;;;;;;;iBAQA;;;;;oBAKG;;;;yBAIK;;;;qBAIJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA+BT;;;;;YAKA,wBAAwB;;;;;;;;;;;;kBAYlB,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA+E3B,KACF;;;;;;;;;;;;KA0BC,iBAAA;;;;;KAQA,oBAAA;KAUA,wBAAA,WACG,iCAEF,2BACA,eAAe;KAGhB,kBAAA,YAED,2BACA,eAAe;;;KCxSP,cAAA;;;ADGZ;;;;;;AAkGiB,iBE/ED,iBAAA,CF+EC,GAAA,CAAA,EAAA,MAAA,CAAA,EE/E4C,cF+E5C;;;;;;;;AA6DC,iBEpEI,cAAA,CFoEJ,IAAA,EAAA,MAAA,EAAA,OAAA,CAAA,EElEP,cFkEO,CAAA,EElEY,OFkEZ,CAAA;EAgFd,IAAA,EAAA,MAAA;EADE,OAAA,EAAA,MAAA,GAAA,SAAA;EA9O+B,QAAA,EAAA,MAAA;EAAM,eAAA,EAAA,MAAA;EAyQtC,WAAA,aAAiB;AAAA,CAAA,GAQjB,SAAA,CAAA;AAAoB;;;;;;AAiBpB,iBE7KiB,eAAA,CF6KC,GAAA,CAAA,EAAA,MAAA,CAAA,EE3KpB,OF2KoB,CE3KZ,WF2KY,GAAA,IAAA,CAAA;AAEnB,UEjKa,oBAAA,CFiKb;EACe;;;;;UE3JF,qBAAA,SAA8B;ED7InC;;;qBCiJS;AA3HrB;AAwEA;;;;;AA0BA;AAcA;AAOiB,iBAcK,eAAA,CAVD,IAAA,EAAA,MAJ0B,EAAA,GAAA,CAAA,EAAA,MAAA,CAAA,EAiB5C,OAjBgE,CAAA,OAAA,CAAA;AAcnE;AAYA;AAkCA;AAYA;;;;AAGU,iBAjDY,eAAA,CAiDZ,IAAA,EAAA,MAAA,EAAA,OAAA,CAAA,EA/CE,oBA+CF,CAAA,EA9CP,OA8CO,CAAA,OAAA,CAAA;AAwCY,UAvDL,uBAAA,CA2Dd;EAoBa,OAAA,EAAA,MAAA;;;;;;;;;;iBAnEM,iBAAA,uCAEI,uBACvB,QAAQ;;;;;;;;;iBAwCW,gBAAA,+CAInB;;;;;;;;iBAoBa,eAAA,yBAAuC"}
@@ -1,2 +0,0 @@
1
- import{t as e}from"./join-paths-BHepkhAj.mjs";import{n as t,r as n}from"./file-path-fns-BDzC2SIV.mjs";import{t as r}from"./is-string-91Z3dOKQ.mjs";import{i}from"./get-workspace-root-k66w-wLW.mjs";import{t as a}from"./exists-Ci-9lYmi.mjs";import{t as o}from"./get-parent-path-DLFSyxSW.mjs";import{s}from"./resolve-C_YsCFne.mjs";import{t as c}from"./json-Dp4PSH2i.mjs";import{existsSync as l}from"node:fs";import{subset as u}from"semver";function d(e){return/^.[^\n\r@\u2028\u2029]*@.*$/.test(e)}function f(e){return d(e)?e.substring(0,e.lastIndexOf(`@`)):e}function p(e){return/^[^\n\r/\u2028\u2029]*\/.[^\n\r/\u2028\u2029]*\/.*$/.test(e)?e.substring(0,e.lastIndexOf(`/`)):f(e)}function m(e=i()){let n=o([`package-lock.json`,`yarn.lock`,`pnpm-lock.yaml`,`bun.lock`],e,{includeNameInResults:!0});if(!n)return`pnpm`;switch(t(n)){case`yarn.lock`:return`yarn`;case`pnpm-lock.yaml`:return`pnpm`;case`bun.lock`:return`bun`;default:return`npm`}}async function h(t){let r;for(;;){if(!t)return;let i=n(t);if(i===t)return;if(t=i,r=e(t,`package.json`),await a(r))break}return r}async function g(e,t={}){let n=await s(e,t);if(n)return h(n)}async function _(e,t={}){let r=await g(e,t);if(!r)return;let i=await c(r);return{name:e,version:i.version,rootPath:n(r),packageJsonPath:r,packageJson:i}}async function v(e=i()){let t=o(`package.json`,e,{skipCwd:!1,includeNameInResults:!0});return!t||!l(t)?null:c(t)}async function y(e,t){let n=p(e),i=await v(r(t)?t:t?.cwd);return i?!!(i.dependencies&&n in i.dependencies&&i.dependencies[n]||i.devDependencies&&n in i.devDependencies&&i.devDependencies[n]):!1}async function b(e,t){let n=p(e),i=await v(r(t)?t:t?.cwd);if(!i)return;let a=i.dependencies&&n in i.dependencies?i.dependencies[n]:i.devDependencies&&n in i.devDependencies?i.devDependencies[n]:void 0,o=(i.dependencies&&n in i.dependencies?`dependencies`:i.devDependencies&&n in i.devDependencies?`devDependencies`:void 0)||void 0;return a&&o?{version:a,type:o}:void 0}async function x(e,t,n){let r=await b(e,{cwd:n});return r?r.version.startsWith(`catalog:`)||r.version.startsWith(`workspace:`)||u(r.version,t):!1}function S(e,t={}){return!!s(e,t)}export{S as a,m as i,_ as n,y as o,b as r,v as s,x as t};
2
- //# sourceMappingURL=package-fns-C7-MKgBR.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"package-fns-C7-MKgBR.mjs","names":[],"sources":["../../string-format/src/package.ts","../src/package-fns.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\n/**\n * Check if a package name has a version\n *\n * @example\n * ```typescript\n * hasPackageVersion(\"lodash@4.17.21\");\n * // => true\n * hasPackageVersion(\"@stryke/core@4.17.21\");\n * // => true\n * hasPackageVersion(\"lodash\");\n * // => false\n * hasPackageVersion(\"@stryke/core\");\n * // => false\n * hasPackageVersion(\"lodash/module\");\n * // => false\n * hasPackageVersion(\"@stryke/core/module\");\n * // => false\n * hasPackageVersion(\"lodash/module@4.17.21\");\n * // => true\n * hasPackageVersion(\"@stryke/core/module@4.17.21\");\n * // => true\n * ```\n *\n * @param value - The package name with version\n * @returns Whether the package name has a version\n */\nexport function hasPackageVersion(value: string): boolean {\n return /^.[^\\n\\r@\\u2028\\u2029]*@.*$/.test(value);\n}\n\n/**\n * Remove the version from a package name (if it exists)\n *\n * @example\n * ```typescript\n * removePackageVersion(\"lodash@4.17.21\");\n * // => \"lodash\"\n * removePackageVersion(\"@stryke/core@4.17.21\");\n * // => \"@stryke/core\"\n * removePackageVersion(\"lodash\");\n * // => \"lodash\"\n * removePackageVersion(\"@stryke/core\");\n * // => \"@stryke/core\"\n * getPackageName(\"lodash/module\");\n * // => \"lodash/module\"\n * getPackageName(\"@stryke/core/module\");\n * // => \"@stryke/core/module\"\n * getPackageName(\"lodash/module@4.17.21\");\n * // => \"lodash/module\"\n * getPackageName(\"@stryke/core/module@4.17.21\");\n * // => \"@stryke/core/module\"\n * ```\n *\n * @param value - The package name with version\n * @returns The package name without version\n */\nexport function removePackageVersion(value: string) {\n return hasPackageVersion(value)\n ? value.substring(0, value.lastIndexOf(\"@\"))\n : value;\n}\n\n/**\n * Get the package name from a scoped package string\n *\n * @example\n * ```typescript\n * getPackageName(\"lodash@4.17.21\");\n * // => \"lodash\"\n * getPackageName(\"@stryke/core@4.17.21\");\n * // => \"@stryke/core\"\n * getPackageName(\"lodash\");\n * // => \"lodash\"\n * getPackageName(\"@stryke/core\");\n * // => \"@stryke/core\"\n * getPackageName(\"lodash/module\");\n * // => \"lodash\"\n * getPackageName(\"@stryke/core/module\");\n * // => \"@stryke/core\"\n * getPackageName(\"lodash/module@4.17.21\");\n * // => \"lodash\"\n * getPackageName(\"@stryke/core/module@4.17.21\");\n * // => \"@stryke/core\"\n * ```\n *\n * @param value - The scoped package string\n * @returns The package name without the scope\n */\nexport function getPackageName(value: string) {\n return /^[^\\n\\r/\\u2028\\u2029]*\\/.[^\\n\\r/\\u2028\\u2029]*\\/.*$/.test(value)\n ? value.substring(0, value.lastIndexOf(\"/\"))\n : removePackageVersion(value);\n}\n\n/**\n * Get the package version from a scoped package string\n *\n * @example\n * ```typescript\n * getPackageName(\"lodash@4.17.21\");\n * // => \"4.17.21\"\n * getPackageName(\"@stryke/core@4.17.21\");\n * // => \"4.17.21\"\n * getPackageName(\"lodash\");\n * // => undefined\n * getPackageName(\"@stryke/core\");\n * // => undefined\n * getPackageName(\"lodash/module\");\n * // => undefined\n * getPackageName(\"@stryke/core/module\");\n * // => undefined\n * getPackageName(\"lodash/module@4.17.21\");\n * // => \"4.17.21\"\n * getPackageName(\"@stryke/core/module@4.17.21\");\n * // => \"4.17.21\"\n * ```\n *\n * @param value - The scoped package string\n * @returns The package version without the package name if it exists. If not, returns undefined.\n */\nexport function getPackageVersion(value: string): string | undefined {\n return hasPackageVersion(value) ? value.replace(/^.+@/, \"\") : undefined;\n}\n","/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { findFileName, findFilePath } from \"@stryke/path/file-path-fns\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport { getPackageName } from \"@stryke/string-format/package\";\nimport { isString } from \"@stryke/type-checks/is-string\";\nimport type { PackageJson } from \"@stryke/types/package-json\";\nimport type { PackageManager } from \"@stryke/types/package-manager\";\nimport { existsSync } from \"node:fs\";\nimport type { Range } from \"semver\";\nimport { subset } from \"semver\";\nimport { exists } from \"./exists\";\nimport { getParentPath } from \"./get-parent-path\";\nimport { getWorkspaceRoot } from \"./get-workspace-root\";\nimport { readJsonFile } from \"./json\";\nimport type { ResolveOptions } from \"./resolve\";\nimport { resolvePackage } from \"./resolve\";\n\n/**\n * Get the package manager used in the project\n *\n * @param dir - The path to the project\n * @returns The package manager used in the project\n */\nexport function getPackageManager(dir = getWorkspaceRoot()): PackageManager {\n const lockFile = getParentPath(\n [\"package-lock.json\", \"yarn.lock\", \"pnpm-lock.yaml\", \"bun.lock\"],\n dir,\n {\n includeNameInResults: true\n }\n );\n\n if (!lockFile) {\n // default use pnpm\n return \"pnpm\";\n }\n\n switch (findFileName(lockFile)) {\n case \"yarn.lock\": {\n return \"yarn\";\n }\n case \"pnpm-lock.yaml\": {\n return \"pnpm\";\n }\n case \"bun.lock\": {\n return \"bun\";\n }\n default: {\n return \"npm\";\n }\n }\n}\n\n// Much of the below code comes from https://github.com/antfu-collective/local-pkg with some modifications\n\nasync function searchPackageJson(dir: string) {\n let packageJsonPath;\n\n while (true) {\n if (!dir) {\n return;\n }\n const newDir = findFilePath(dir);\n\n if (newDir === dir) {\n return;\n }\n\n dir = newDir;\n packageJsonPath = joinPaths(dir, \"package.json\");\n\n if (await exists(packageJsonPath)) {\n break;\n }\n }\n\n return packageJsonPath;\n}\n\nasync function getPackageJsonPath(name: string, options: ResolveOptions = {}) {\n const entry = await resolvePackage(name, options);\n if (!entry) {\n return;\n }\n\n return searchPackageJson(entry);\n}\n\n/**\n * Get package info\n *\n * @param name - The name of the package\n * @param options - The options to use when resolving the package\n * @returns The package info\n */\nexport async function getPackageInfo(\n name: string,\n options: ResolveOptions = {}\n) {\n const packageJsonPath = await getPackageJsonPath(name, options);\n if (!packageJsonPath) {\n return;\n }\n\n const packageJson = await readJsonFile<PackageJson>(packageJsonPath);\n\n return {\n name,\n version: packageJson.version,\n rootPath: findFilePath(packageJsonPath),\n packageJsonPath,\n packageJson\n };\n}\n\n/**\n * Get the package info from the package.json file\n *\n * @param cwd - The current working directory\n * @returns The package info\n */\nexport async function loadPackageJson(\n cwd = getWorkspaceRoot()\n): Promise<PackageJson | null> {\n const path = getParentPath(\"package.json\", cwd, {\n skipCwd: false,\n includeNameInResults: true\n });\n if (!path || !existsSync(path)) {\n return null;\n }\n\n return readJsonFile<PackageJson>(path);\n}\n\nexport interface PackageExistsOptions {\n /**\n * The current working directory\n */\n cwd?: string;\n}\n\nexport interface PackageMatchesOptions extends PackageExistsOptions {\n /**\n * The version range of the package to check\n */\n version?: string | Range;\n}\n\n/**\n * Check if a package is listed in the package.json file\n *\n * @param name - The name of the package\n * @param cwd - The current working directory\n * @returns An indicator specifying if the package is listed\n */\nexport async function isPackageListed(\n name: string,\n cwd?: string\n): Promise<boolean>;\n\n/**\n * Check if a package is listed in the package.json file\n *\n * @param name - The name of the package\n * @param options - The options to use when checking if the package is listed\n * @returns An indicator specifying if the package is listed\n */\nexport async function isPackageListed(\n name: string,\n options?: PackageExistsOptions\n): Promise<boolean>;\n\n/**\n * Check if a package is listed in the package.json file\n *\n * @param name - The name of the package\n * @param cwdOrOptions - The current working directory or options to use when checking if the package is listed\n * @returns An indicator specifying if the package is listed\n */\nexport async function isPackageListed(\n name: string,\n cwdOrOptions?: string | PackageExistsOptions\n): Promise<boolean> {\n const packageName = getPackageName(name);\n const cwd = isString(cwdOrOptions) ? cwdOrOptions : cwdOrOptions?.cwd;\n\n const packageJson = await loadPackageJson(cwd);\n if (!packageJson) {\n return false;\n }\n\n return Boolean(\n (packageJson.dependencies &&\n packageName in packageJson.dependencies &&\n packageJson.dependencies[packageName]) ||\n (packageJson.devDependencies &&\n packageName in packageJson.devDependencies &&\n packageJson.devDependencies[packageName])\n );\n}\n\nexport interface GetPackageListingReturn {\n version: string;\n type: \"dependencies\" | \"devDependencies\";\n}\n\n/**\n * Return the package version and dependency type listed in the package.json file\n *\n * @param name - The name of the package\n * @param cwdOrOptions - The current working directory or options to use when checking if the package is listed\n * @returns The version and type of the package if listed, otherwise undefined\n */\nexport async function getPackageListing(\n name: string,\n cwdOrOptions?: string | PackageExistsOptions\n): Promise<GetPackageListingReturn | undefined> {\n const packageName = getPackageName(name);\n const cwd = isString(cwdOrOptions) ? cwdOrOptions : cwdOrOptions?.cwd;\n\n const packageJson = await loadPackageJson(cwd);\n if (!packageJson) {\n return undefined;\n }\n\n const version =\n packageJson.dependencies && packageName in packageJson.dependencies\n ? packageJson.dependencies[packageName]\n : packageJson.devDependencies &&\n packageName in packageJson.devDependencies\n ? packageJson.devDependencies[packageName]\n : undefined;\n const type =\n (packageJson.dependencies && packageName in packageJson.dependencies\n ? \"dependencies\"\n : packageJson.devDependencies &&\n packageName in packageJson.devDependencies\n ? \"devDependencies\"\n : undefined) || undefined;\n\n return version && type\n ? {\n version,\n type\n }\n : undefined;\n}\n\n/**\n * Check if a package version matches a specific version range\n *\n * @param name - The name of the package\n * @param version - The version to check against\n * @param cwd - The current working directory\n * @returns An indicator specifying if the package version matches the range\n */\nexport async function doesPackageMatch(\n name: string,\n version: string,\n cwd?: string\n): Promise<boolean> {\n const pkg = await getPackageListing(name, { cwd });\n if (!pkg) {\n return false;\n }\n\n return (\n pkg.version.startsWith(\"catalog:\") ||\n pkg.version.startsWith(\"workspace:\") ||\n subset(pkg.version, version)\n );\n}\n\n/**\n * Check if a package exists\n *\n * @param name - The name of the package\n * @param options - The options to use when resolving the package\n * @returns An indicator specifying if the package exists\n */\nexport function isPackageExists(name: string, options: ResolveOptions = {}) {\n return Boolean(resolvePackage(name, options));\n}\n"],"mappings":"obA4CA,SAAgB,EAAkB,EAAwB,CACxD,MAAO,8BAA8B,KAAK,EAAM,CA6BlD,SAAgB,EAAqB,EAAe,CAClD,OAAO,EAAkB,EAAM,CAC3B,EAAM,UAAU,EAAG,EAAM,YAAY,IAAI,CAAC,CAC1C,EA6BN,SAAgB,EAAe,EAAe,CAC5C,MAAO,sDAAsD,KAAK,EAAM,CACpE,EAAM,UAAU,EAAG,EAAM,YAAY,IAAI,CAAC,CAC1C,EAAqB,EAAM,CCrEjC,SAAgB,EAAkB,EAAM,GAAkB,CAAkB,CAC1E,IAAM,EAAW,EACf,CAAC,oBAAqB,YAAa,iBAAkB,WAAW,CAChE,EACA,CACE,qBAAsB,GACvB,CACF,CAED,GAAI,CAAC,EAEH,MAAO,OAGT,OAAQ,EAAa,EAAS,CAA9B,CACE,IAAK,YACH,MAAO,OAET,IAAK,iBACH,MAAO,OAET,IAAK,WACH,MAAO,MAET,QACE,MAAO,OAOb,eAAe,EAAkB,EAAa,CAC5C,IAAI,EAEJ,OAAa,CACX,GAAI,CAAC,EACH,OAEF,IAAM,EAAS,EAAa,EAAI,CAEhC,GAAI,IAAW,EACb,OAMF,GAHA,EAAM,EACN,EAAkB,EAAU,EAAK,eAAe,CAE5C,MAAM,EAAO,EAAgB,CAC/B,MAIJ,OAAO,EAGT,eAAe,EAAmB,EAAc,EAA0B,EAAE,CAAE,CAC5E,IAAM,EAAQ,MAAM,EAAe,EAAM,EAAQ,CAC5C,KAIL,OAAO,EAAkB,EAAM,CAUjC,eAAsB,EACpB,EACA,EAA0B,EAAE,CAC5B,CACA,IAAM,EAAkB,MAAM,EAAmB,EAAM,EAAQ,CAC/D,GAAI,CAAC,EACH,OAGF,IAAM,EAAc,MAAM,EAA0B,EAAgB,CAEpE,MAAO,CACL,OACA,QAAS,EAAY,QACrB,SAAU,EAAa,EAAgB,CACvC,kBACA,cACD,CASH,eAAsB,EACpB,EAAM,GAAkB,CACK,CAC7B,IAAM,EAAO,EAAc,eAAgB,EAAK,CAC9C,QAAS,GACT,qBAAsB,GACvB,CAAC,CAKF,MAJI,CAAC,GAAQ,CAAC,EAAW,EAAK,CACrB,KAGF,EAA0B,EAAK,CAgDxC,eAAsB,EACpB,EACA,EACkB,CAClB,IAAM,EAAc,EAAe,EAAK,CAGlC,EAAc,MAAM,EAFd,EAAS,EAAa,CAAG,EAAe,GAAc,IAEpB,CAK9C,OAJK,EAIE,GACJ,EAAY,cACX,KAAe,EAAY,cAC3B,EAAY,aAAa,IAC1B,EAAY,iBACX,KAAe,EAAY,iBAC3B,EAAY,gBAAgB,IATvB,GAyBX,eAAsB,EACpB,EACA,EAC8C,CAC9C,IAAM,EAAc,EAAe,EAAK,CAGlC,EAAc,MAAM,EAFd,EAAS,EAAa,CAAG,EAAe,GAAc,IAEpB,CAC9C,GAAI,CAAC,EACH,OAGF,IAAM,EACJ,EAAY,cAAgB,KAAe,EAAY,aACnD,EAAY,aAAa,GACzB,EAAY,iBACV,KAAe,EAAY,gBAC3B,EAAY,gBAAgB,GAC5B,IAAA,GACF,GACH,EAAY,cAAgB,KAAe,EAAY,aACpD,eACA,EAAY,iBACV,KAAe,EAAY,gBAC3B,kBACA,IAAA,KAAc,IAAA,GAEtB,OAAO,GAAW,EACd,CACE,UACA,OACD,CACD,IAAA,GAWN,eAAsB,EACpB,EACA,EACA,EACkB,CAClB,IAAM,EAAM,MAAM,EAAkB,EAAM,CAAE,MAAK,CAAC,CAKlD,OAJK,EAKH,EAAI,QAAQ,WAAW,WAAW,EAClC,EAAI,QAAQ,WAAW,aAAa,EACpC,EAAO,EAAI,QAAS,EAAQ,CANrB,GAiBX,SAAgB,EAAgB,EAAc,EAA0B,EAAE,CAAE,CAC1E,MAAO,EAAQ,EAAe,EAAM,EAAQ"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"package-fns-CxokaGDY.d.mts","names":[],"sources":["../../types/src/package-json.ts","../../types/src/package-manager.ts","../src/package-fns.ts"],"sourcesContent":[],"mappings":";;;;;;;UAqBiB,WAAA,SAAoB;EAApB;;;;;;;;EA2GQ,IAAA,CAAA,EAAA,MAAA;EAIJ;;;EAoCT,OAAA,CAAA,EAAA,MAAA;EAYqB;;;EA+E3B,WAAA,CAAA,EAAA,MAAA;EA9O+B;;AAoQpC;EAaI,QAAA,CAAA,EAAA,MAAA,EAAA;EAUA;;;EAIgB,QAAA,CAAA,EAAA,MAAA;EAAf;;AAAK;EAKP,IAAA,CAAA,EAAA,MAAA,GAAA;IACe,GAAA,CAAA,EAAA,MAAA;IAAf,KAAA,CAAA,EAAA,MAAA;EAAK,CAAA;;;;ECxSG,OAAA,CAAA,EAAA,MAAA;;;;ACsBZ;EAwEsB,UAAA,CAAA,EAAA,MAAc,GAAA;IAEzB,IAAA,EAAA,MAAA;;IAAmB;;AAwB9B;IAciB,SAAA,CAAA,EAAA,MAAA;EAOA,CAAA;EAcK;AAYtB;AAkCA;EAYsB,OAAA,CAAA,EF1JV,ME0JU,CAAA,MAAiB,EAAA,MAAA,CAAA;EAEb;;;EAChB,OAAA,CAAA,EAAA,OAAA;EAwCY;AAwBtB;;WFrNW;;;;iBAIM;;;;;;;;;;;;;;qBAcI;;;;;;;;iBAQJ;;;;;;;;iBAQA;;;;;oBAKG;;;;yBAIK;;;;qBAIJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA+BT;;;;;YAKA,wBAAwB;;;;;;;;;;;;kBAYlB,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA+E3B,KACF;;;;;;;;;;;;KA0BC,iBAAA;;;;;KAQA,oBAAA;KAUA,wBAAA,WACG,iCAEF,2BACA,eAAe;KAGhB,kBAAA,YAED,2BACA,eAAe;;;KCxSP,cAAA;;;ADGZ;;;;;;AAkGiB,iBE/ED,iBAAA,CF+EC,GAAA,CAAA,EAAA,MAAA,CAAA,EE/E4C,cF+E5C;;;;;;;;AA6DC,iBEpEI,cAAA,CFoEJ,IAAA,EAAA,MAAA,EAAA,OAAA,CAAA,EElEP,cFkEO,CAAA,EElEY,OFkEZ,CAAA;EAgFd,IAAA,EAAA,MAAA;EADE,OAAA,EAAA,MAAA,GAAA,SAAA;EA9O+B,QAAA,EAAA,MAAA;EAAM,eAAA,EAAA,MAAA;EAyQtC,WAAA,aAAiB;AAAA,CAAA,GAQjB,SAAA,CAAA;AAAoB;;;;;;AAiBpB,iBE7KiB,eAAA,CF6KC,GAAA,CAAA,EAAA,MAAA,CAAA,EE3KpB,OF2KoB,CE3KZ,WF2KY,GAAA,IAAA,CAAA;AAEnB,UEjKa,oBAAA,CFiKb;EACe;;;;;UE3JF,qBAAA,SAA8B;ED7InC;;;qBCiJS;AA3HrB;AAwEA;;;;;AA0BA;AAcA;AAOiB,iBAcK,eAAA,CAVD,IAAA,EAAA,MAJ0B,EAAA,GAAA,CAAA,EAAA,MAAA,CAAA,EAiB5C,OAjBgE,CAAA,OAAA,CAAA;AAcnE;AAYA;AAkCA;AAYA;;;;AAGU,iBAjDY,eAAA,CAiDZ,IAAA,EAAA,MAAA,EAAA,OAAA,CAAA,EA/CE,oBA+CF,CAAA,EA9CP,OA8CO,CAAA,OAAA,CAAA;AAwCY,UAvDL,uBAAA,CA2Dd;EAoBa,OAAA,EAAA,MAAA;;;;;;;;;;iBAnEM,iBAAA,uCAEI,uBACvB,QAAQ;;;;;;;;;iBAwCW,gBAAA,+CAInB;;;;;;;;iBAoBa,eAAA,yBAAuC"}
@@ -1 +0,0 @@
1
- const e=require(`./chunk-Bmb41Sf3.cjs`),t=require(`./join-paths-DUdaieID.cjs`),n=require(`./file-path-fns-7aKacdLg.cjs`),r=require(`./is-string-DKgNS0jA.cjs`),i=require(`./get-workspace-root-CCNjjZGY.cjs`),a=require(`./exists-B31lSRFp.cjs`),o=require(`./get-parent-path-CfRkaB4R.cjs`),s=require(`./resolve-DTkLQekH.cjs`),c=require(`./json-DKhqPjHB.cjs`);let l=require(`node:fs`),u=require(`semver`);function d(e){return/^.[^\n\r@\u2028\u2029]*@.*$/.test(e)}function f(e){return d(e)?e.substring(0,e.lastIndexOf(`@`)):e}function p(e){return/^[^\n\r/\u2028\u2029]*\/.[^\n\r/\u2028\u2029]*\/.*$/.test(e)?e.substring(0,e.lastIndexOf(`/`)):f(e)}function m(e=i.i()){let t=o.t([`package-lock.json`,`yarn.lock`,`pnpm-lock.yaml`,`bun.lock`],e,{includeNameInResults:!0});if(!t)return`pnpm`;switch(n.n(t)){case`yarn.lock`:return`yarn`;case`pnpm-lock.yaml`:return`pnpm`;case`bun.lock`:return`bun`;default:return`npm`}}async function h(e){let r;for(;;){if(!e)return;let i=n.r(e);if(i===e)return;if(e=i,r=t.t(e,`package.json`),await a.t(r))break}return r}async function g(e,t={}){let n=await s.s(e,t);if(n)return h(n)}async function _(e,t={}){let r=await g(e,t);if(!r)return;let i=await c.t(r);return{name:e,version:i.version,rootPath:n.r(r),packageJsonPath:r,packageJson:i}}async function v(e=i.i()){let t=o.t(`package.json`,e,{skipCwd:!1,includeNameInResults:!0});return!t||!(0,l.existsSync)(t)?null:c.t(t)}async function y(e,t){let n=p(e),i=await v(r.t(t)?t:t?.cwd);return i?!!(i.dependencies&&n in i.dependencies&&i.dependencies[n]||i.devDependencies&&n in i.devDependencies&&i.devDependencies[n]):!1}async function b(e,t){let n=p(e),i=await v(r.t(t)?t:t?.cwd);if(!i)return;let a=i.dependencies&&n in i.dependencies?i.dependencies[n]:i.devDependencies&&n in i.devDependencies?i.devDependencies[n]:void 0,o=(i.dependencies&&n in i.dependencies?`dependencies`:i.devDependencies&&n in i.devDependencies?`devDependencies`:void 0)||void 0;return a&&o?{version:a,type:o}:void 0}async function x(e,t,n){let r=await b(e,{cwd:n});return r?r.version.startsWith(`catalog:`)||r.version.startsWith(`workspace:`)||(0,u.subset)(r.version,t):!1}function S(e,t={}){return!!s.s(e,t)}Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return x}});
@@ -1,2 +0,0 @@
1
- import{existsSync as e,readFileSync as t}from"node:fs";import{readFile as n}from"node:fs/promises";const r=e=>{if(!e)throw Error(`No file path provided to read data`);return t(e,{encoding:`utf8`})},i=async e=>{if(!e)throw Error(`No file path provided to read data`);return n(e,{encoding:`utf8`})};function a(t){return e(t)?r(t):``}async function o(t){return e(t)?i(t):``}export{r as i,o as n,a as r,i as t};
2
- //# sourceMappingURL=read-file-B091zB64.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"read-file-B091zB64.mjs","names":["readFileSync","readFileSyncFs","readFile","readFileFs"],"sources":["../src/read-file.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { existsSync, readFileSync as readFileSyncFs } from \"node:fs\";\nimport { readFile as readFileFs } from \"node:fs/promises\";\n\n/**\n * Read the given content to the given file path\n *\n * @param filePath - The file path to write to\n */\nexport const readFileSync = (filePath: string): string => {\n if (!filePath) {\n throw new Error(\"No file path provided to read data\");\n }\n\n return readFileSyncFs(filePath, { encoding: \"utf8\" });\n};\n\n/**\n * Read the given content to the given file path\n *\n * @param filePath - The file path to read to\n */\nexport const readFile = async (filePath: string): Promise<string> => {\n if (!filePath) {\n throw new Error(\"No file path provided to read data\");\n }\n\n return readFileFs(filePath, { encoding: \"utf8\" });\n};\n\n/**\n * Reads a file if it exists, otherwise returns an empty string.\n *\n * @param path - The path to the file to read.\n * @returns The content of the file if it exists, otherwise an empty string.\n */\nexport function readFileIfExistingSync(path: string) {\n return existsSync(path) ? readFileSync(path) : \"\";\n}\n\n/**\n * Reads a file if it exists, otherwise returns an empty string.\n *\n * @param path - The path to the file to read.\n * @returns The content of the file if it exists, otherwise an empty string.\n */\nexport async function readFileIfExisting(path: string) {\n return existsSync(path) ? readFile(path) : \"\";\n}\n"],"mappings":"mGA0BA,MAAaA,EAAgB,GAA6B,CACxD,GAAI,CAAC,EACH,MAAU,MAAM,qCAAqC,CAGvD,OAAOC,EAAe,EAAU,CAAE,SAAU,OAAQ,CAAC,EAQ1CC,EAAW,KAAO,IAAsC,CACnE,GAAI,CAAC,EACH,MAAU,MAAM,qCAAqC,CAGvD,OAAOC,EAAW,EAAU,CAAE,SAAU,OAAQ,CAAC,EASnD,SAAgB,EAAuB,EAAc,CACnD,OAAO,EAAW,EAAK,CAAGH,EAAa,EAAK,CAAG,GASjD,eAAsB,EAAmB,EAAc,CACrD,OAAO,EAAW,EAAK,CAAGE,EAAS,EAAK,CAAG"}
@@ -1 +0,0 @@
1
- const e=require(`./chunk-Bmb41Sf3.cjs`);let t=require(`node:fs`),n=require(`node:fs/promises`);const r=e=>{if(!e)throw Error(`No file path provided to read data`);return(0,t.readFileSync)(e,{encoding:`utf8`})},i=async e=>{if(!e)throw Error(`No file path provided to read data`);return(0,n.readFile)(e,{encoding:`utf8`})};function a(e){return(0,t.existsSync)(e)?r(e):``}async function o(e){return(0,t.existsSync)(e)?i(e):``}Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return i}});
@@ -1,30 +0,0 @@
1
- //#region src/read-file.d.ts
2
- /**
3
- * Read the given content to the given file path
4
- *
5
- * @param filePath - The file path to write to
6
- */
7
- declare const readFileSync: (filePath: string) => string;
8
- /**
9
- * Read the given content to the given file path
10
- *
11
- * @param filePath - The file path to read to
12
- */
13
- declare const readFile: (filePath: string) => Promise<string>;
14
- /**
15
- * Reads a file if it exists, otherwise returns an empty string.
16
- *
17
- * @param path - The path to the file to read.
18
- * @returns The content of the file if it exists, otherwise an empty string.
19
- */
20
- declare function readFileIfExistingSync(path: string): string;
21
- /**
22
- * Reads a file if it exists, otherwise returns an empty string.
23
- *
24
- * @param path - The path to the file to read.
25
- * @returns The content of the file if it exists, otherwise an empty string.
26
- */
27
- declare function readFileIfExisting(path: string): Promise<string>;
28
- //#endregion
29
- export { readFileSync as i, readFileIfExisting as n, readFileIfExistingSync as r, readFile as t };
30
- //# sourceMappingURL=read-file-Bxn1VHKv.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"read-file-Bxn1VHKv.d.cts","names":[],"sources":["../src/read-file.ts"],"sourcesContent":[],"mappings":";;AA0BA;AAaA;AAcA;AAUA;cArCa;;;;;;cAaA,gCAAqC;;;;;;;iBAclC,sBAAA;;;;;;;iBAUM,kBAAA,gBAA+B"}
@@ -1,30 +0,0 @@
1
- //#region src/read-file.d.ts
2
- /**
3
- * Read the given content to the given file path
4
- *
5
- * @param filePath - The file path to write to
6
- */
7
- declare const readFileSync: (filePath: string) => string;
8
- /**
9
- * Read the given content to the given file path
10
- *
11
- * @param filePath - The file path to read to
12
- */
13
- declare const readFile: (filePath: string) => Promise<string>;
14
- /**
15
- * Reads a file if it exists, otherwise returns an empty string.
16
- *
17
- * @param path - The path to the file to read.
18
- * @returns The content of the file if it exists, otherwise an empty string.
19
- */
20
- declare function readFileIfExistingSync(path: string): string;
21
- /**
22
- * Reads a file if it exists, otherwise returns an empty string.
23
- *
24
- * @param path - The path to the file to read.
25
- * @returns The content of the file if it exists, otherwise an empty string.
26
- */
27
- declare function readFileIfExisting(path: string): Promise<string>;
28
- //#endregion
29
- export { readFileSync as i, readFileIfExisting as n, readFileIfExistingSync as r, readFile as t };
30
- //# sourceMappingURL=read-file-CRVW-wcE.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"read-file-CRVW-wcE.d.mts","names":[],"sources":["../src/read-file.ts"],"sourcesContent":[],"mappings":";;AA0BA;AAaA;AAcA;AAUA;cArCa;;;;;;cAaA,gCAAqC;;;;;;;iBAclC,sBAAA;;;;;;;iBAUM,kBAAA,gBAA+B"}
@@ -1,2 +0,0 @@
1
- import{i as e}from"./get-workspace-root-k66w-wLW.mjs";import{execSync as t}from"node:child_process";import{detectPackageManager as n}from"@antfu/install-pkg";import{parseArgs as r}from"node:util";const i=e=>{let{values:t,tokens:n}=r({args:e,strict:!1,tokens:!0}),i=null;for(let e=0;e<n.length;e++){let r=n[e];if(r.kind===`option-terminator`)break;if(r.kind===`option`){i=r.value===void 0?r:null;continue}if(r.kind!==`positional`){i=null;continue}i&&(i.name in t&&typeof t[i.name]==`string`?t[i.name]+=` ${r.value}`:t[i.name]=r.value)}return t},a=e=>{let t=[],n=!1,r=!0;for(let i=0;i<e.length;i++){let a=e[i];if(a===`\\`&&n){if(e.length===i+1)throw Error(`Invalid escape character at the end.`);a=e[++i]}else if(a===` `&&!n){r=!0;continue}else if(a===`"`){n=!n;continue}r?(t.push(a),r=!1):t[t.length-1]+=a}if(n)throw Error(`Unterminated string`);return t},o=()=>process.env.NODE_OPTIONS?a(process.env.NODE_OPTIONS):[];function s(e){return Object.entries(e).map(([e,t])=>t===!0?`--${e}`:t?`--${e}=${t.includes(` `)&&!t.startsWith(`"`)?JSON.stringify(t):t}`:null).filter(e=>e!==null).join(` `)}function c(){let e=o();if(e.length===0)return{};let t=i(e);return delete t.inspect,delete t[`inspect-brk`],delete t.inspect_brk,t}function l(){let e=c();return Object.keys(e).length===0?``:s(e)}async function u(r){let i=await n(e(r)),a=i===`npm`?`--no-workspaces`:``,o=`https://registry.npmjs.org/`;try{let e=t(`${i} config get registry ${a}`,{env:{...process.env,NODE_OPTIONS:l()}}).toString().trim();e.startsWith(`http`)&&(o=e.endsWith(`/`)?e:`${e}/`)}catch(e){throw Error(`Failed to get registry from "${i}".`,{cause:e})}return o}export{a,u as i,l as n,c as r,s as t};
2
- //# sourceMappingURL=registry-B1taIPKm.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry-B1taIPKm.mjs","names":["orphan: NodeOptionsToken | null | undefined","args: string[]"],"sources":["../src/registry.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { detectPackageManager } from \"@antfu/install-pkg\";\nimport { execSync } from \"node:child_process\";\nimport { parseArgs } from \"node:util\";\nimport { getWorkspaceRoot } from \"./get-workspace-root\";\n\nexport interface NodeOptionsToken {\n kind: \"option\";\n index: number;\n name: string;\n rawName: string;\n value: undefined;\n inlineValue: undefined;\n}\n\nconst parseNodeArgs = (args: string[]) => {\n const { values, tokens } = parseArgs({ args, strict: false, tokens: true });\n\n // For the `NODE_OPTIONS`, we support arguments with values without the `=`\n // sign. We need to parse them manually.\n let orphan: NodeOptionsToken | null | undefined = null;\n for (let i = 0; i < tokens.length; i++) {\n const token = tokens[i]!;\n\n if (token.kind === \"option-terminator\") {\n break;\n }\n\n // When we encounter an option, if it's value is undefined, we should check\n // to see if the following tokens are positional parameters. If they are,\n // then the option is orphaned, and we can assign it.\n if (token.kind === \"option\") {\n orphan = typeof token.value === \"undefined\" ? token : null;\n continue;\n }\n\n // If the token isn't a positional one, then we can't assign it to the found\n // orphaned option.\n if (token.kind !== \"positional\") {\n orphan = null;\n continue;\n }\n\n // If we don't have an orphan, then we can skip this token.\n if (!orphan) {\n continue;\n }\n\n // If the token is a positional one, and it has a value, so add it to the\n // values object. If it already exists, append it with a space.\n if (orphan.name in values && typeof values[orphan.name] === \"string\") {\n values[orphan.name] += ` ${token.value}`;\n } else {\n values[orphan.name] = token.value;\n }\n }\n\n return values;\n};\n\n/**\n * Tokenizes the arguments string into an array of strings, supporting quoted\n * values and escaped characters.\n * Converted from: https://github.com/nodejs/node/blob/c29d53c5cfc63c5a876084e788d70c9e87bed880/src/node_options.cc#L1401\n *\n * @param input - The arguments string to be tokenized.\n * @returns An array of strings with the tokenized arguments.\n */\nexport const tokenizeArgs = (input: string): string[] => {\n const args: string[] = [];\n let isInString = false;\n let willStartNewArg = true;\n\n for (let i = 0; i < input.length; i++) {\n let char = input[i]!;\n\n // Skip any escaped characters in strings.\n if (char === \"\\\\\" && isInString) {\n // Ensure we don't have an escape character at the end.\n if (input.length === i + 1) {\n throw new Error(\"Invalid escape character at the end.\");\n }\n\n // Skip the next character.\n char = input[++i]!;\n }\n // If we find a space outside of a string, we should start a new argument.\n else if (char === \" \" && !isInString) {\n willStartNewArg = true;\n continue;\n }\n\n // If we find a quote, we should toggle the string flag.\n else if (char === '\"') {\n isInString = !isInString;\n continue;\n }\n\n // If we're starting a new argument, we should add it to the array.\n if (willStartNewArg) {\n args.push(char);\n willStartNewArg = false;\n }\n // Otherwise, add it to the last argument.\n else {\n args[args.length - 1] += char;\n }\n }\n\n if (isInString) {\n throw new Error(\"Unterminated string\");\n }\n\n return args;\n};\n\n/**\n * Get the node options from the environment variable `NODE_OPTIONS` and returns\n * them as an array of strings.\n *\n * @returns An array of strings with the node options.\n */\nconst getNodeOptionsArgs = () => {\n if (!process.env.NODE_OPTIONS) return [];\n\n return tokenizeArgs(process.env.NODE_OPTIONS);\n};\n\n/**\n * Stringify the arguments to be used in a command line. It will ignore any\n * argument that has a value of `undefined`.\n *\n * @param args - The arguments to be stringified.\n * @returns A string with the arguments.\n */\nexport function formatNodeOptions(\n args: Record<string, string | boolean | undefined>\n): string {\n return Object.entries(args)\n .map(([key, value]) => {\n if (value === true) {\n return `--${key}`;\n }\n\n if (value) {\n return `--${key}=${\n // Values with spaces need to be quoted. We use JSON.stringify to\n // also escape any nested quotes.\n value.includes(\" \") && !value.startsWith('\"')\n ? JSON.stringify(value)\n : value\n }`;\n }\n\n return null;\n })\n .filter(arg => arg !== null)\n .join(\" \");\n}\n\n/**\n * Get the node options from the `NODE_OPTIONS` environment variable and parse\n * them into an object without the inspect options.\n *\n * @returns An object with the parsed node options.\n */\nexport function getParsedNodeOptionsWithoutInspect() {\n const args = getNodeOptionsArgs();\n if (args.length === 0) return {};\n\n const parsed = parseNodeArgs(args);\n\n // Remove inspect options.\n delete parsed.inspect;\n delete parsed[\"inspect-brk\"];\n delete parsed.inspect_brk;\n\n return parsed;\n}\n\n/**\n * Get the node options from the `NODE_OPTIONS` environment variable and format\n * them into a string without the inspect options.\n *\n * @returns A string with the formatted node options.\n */\nexport function getFormattedNodeOptionsWithoutInspect() {\n const args = getParsedNodeOptionsWithoutInspect();\n if (Object.keys(args).length === 0) return \"\";\n\n return formatNodeOptions(args);\n}\n\n/**\n * Returns the package registry using the user's package manager. The URL will have a trailing slash.\n *\n * @param baseDir - The base directory to detect the package manager from.\n * @returns The package registry URL with a trailing slash.\n * @throws Will throw an error if the package manager cannot be detected or if the registry cannot be retrieved.\n */\nexport async function getRegistry(baseDir?: string) {\n const workspaceRoot = getWorkspaceRoot(baseDir);\n const pkgManager = await detectPackageManager(workspaceRoot);\n\n // Since `npm config` command fails in npm workspace to prevent workspace config conflicts,\n // add `--no-workspaces` flag to run under the context of the root project only.\n // Safe for non-workspace projects as it's equivalent to default `--workspaces=false`.\n // x-ref: https://github.com/vercel/next.js/issues/47121#issuecomment-1499044345\n // x-ref: https://github.com/npm/statusboard/issues/371#issue-920669998\n const resolvedFlags = pkgManager === \"npm\" ? \"--no-workspaces\" : \"\";\n let registry = `https://registry.npmjs.org/`;\n\n try {\n const output = execSync(\n `${pkgManager} config get registry ${resolvedFlags}`,\n {\n env: {\n ...process.env,\n NODE_OPTIONS: getFormattedNodeOptionsWithoutInspect()\n }\n }\n )\n .toString()\n .trim();\n\n if (output.startsWith(\"http\")) {\n registry = output.endsWith(\"/\") ? output : `${output}/`;\n }\n } catch (err) {\n throw new Error(`Failed to get registry from \"${pkgManager}\".`, {\n cause: err\n });\n }\n\n return registry;\n}\n"],"mappings":"oMAgCA,MAAM,EAAiB,GAAmB,CACxC,GAAM,CAAE,SAAQ,UAAW,EAAU,CAAE,OAAM,OAAQ,GAAO,OAAQ,GAAM,CAAC,CAIvEA,EAA8C,KAClD,IAAK,IAAI,EAAI,EAAG,EAAI,EAAO,OAAQ,IAAK,CACtC,IAAM,EAAQ,EAAO,GAErB,GAAI,EAAM,OAAS,oBACjB,MAMF,GAAI,EAAM,OAAS,SAAU,CAC3B,EAAgB,EAAM,QAAU,OAAc,EAAQ,KACtD,SAKF,GAAI,EAAM,OAAS,aAAc,CAC/B,EAAS,KACT,SAIG,IAMD,EAAO,QAAQ,GAAU,OAAO,EAAO,EAAO,OAAU,SAC1D,EAAO,EAAO,OAAS,IAAI,EAAM,QAEjC,EAAO,EAAO,MAAQ,EAAM,OAIhC,OAAO,GAWI,EAAgB,GAA4B,CACvD,IAAMC,EAAiB,EAAE,CACrB,EAAa,GACb,EAAkB,GAEtB,IAAK,IAAI,EAAI,EAAG,EAAI,EAAM,OAAQ,IAAK,CACrC,IAAI,EAAO,EAAM,GAGjB,GAAI,IAAS,MAAQ,EAAY,CAE/B,GAAI,EAAM,SAAW,EAAI,EACvB,MAAU,MAAM,uCAAuC,CAIzD,EAAO,EAAM,EAAE,WAGR,IAAS,KAAO,CAAC,EAAY,CACpC,EAAkB,GAClB,iBAIO,IAAS,IAAK,CACrB,EAAa,CAAC,EACd,SAIE,GACF,EAAK,KAAK,EAAK,CACf,EAAkB,IAIlB,EAAK,EAAK,OAAS,IAAM,EAI7B,GAAI,EACF,MAAU,MAAM,sBAAsB,CAGxC,OAAO,GASH,MACC,QAAQ,IAAI,aAEV,EAAa,QAAQ,IAAI,aAAa,CAFP,EAAE,CAY1C,SAAgB,EACd,EACQ,CACR,OAAO,OAAO,QAAQ,EAAK,CACxB,KAAK,CAAC,EAAK,KACN,IAAU,GACL,KAAK,IAGV,EACK,KAAK,EAAI,GAGd,EAAM,SAAS,IAAI,EAAI,CAAC,EAAM,WAAW,IAAI,CACzC,KAAK,UAAU,EAAM,CACrB,IAID,KACP,CACD,OAAO,GAAO,IAAQ,KAAK,CAC3B,KAAK,IAAI,CASd,SAAgB,GAAqC,CACnD,IAAM,EAAO,GAAoB,CACjC,GAAI,EAAK,SAAW,EAAG,MAAO,EAAE,CAEhC,IAAM,EAAS,EAAc,EAAK,CAOlC,OAJA,OAAO,EAAO,QACd,OAAO,EAAO,eACd,OAAO,EAAO,YAEP,EAST,SAAgB,GAAwC,CACtD,IAAM,EAAO,GAAoC,CAGjD,OAFI,OAAO,KAAK,EAAK,CAAC,SAAW,EAAU,GAEpC,EAAkB,EAAK,CAUhC,eAAsB,EAAY,EAAkB,CAElD,IAAM,EAAa,MAAM,EADH,EAAiB,EAAQ,CACa,CAOtD,EAAgB,IAAe,MAAQ,kBAAoB,GAC7D,EAAW,8BAEf,GAAI,CACF,IAAM,EAAS,EACb,GAAG,EAAW,uBAAuB,IACrC,CACE,IAAK,CACH,GAAG,QAAQ,IACX,aAAc,GAAuC,CACtD,CACF,CACF,CACE,UAAU,CACV,MAAM,CAEL,EAAO,WAAW,OAAO,GAC3B,EAAW,EAAO,SAAS,IAAI,CAAG,EAAS,GAAG,EAAO,UAEhD,EAAK,CACZ,MAAU,MAAM,gCAAgC,EAAW,IAAK,CAC9D,MAAO,EACR,CAAC,CAGJ,OAAO"}
@@ -1,53 +0,0 @@
1
- //#region src/registry.d.ts
2
- interface NodeOptionsToken {
3
- kind: "option";
4
- index: number;
5
- name: string;
6
- rawName: string;
7
- value: undefined;
8
- inlineValue: undefined;
9
- }
10
- /**
11
- * Tokenizes the arguments string into an array of strings, supporting quoted
12
- * values and escaped characters.
13
- * Converted from: https://github.com/nodejs/node/blob/c29d53c5cfc63c5a876084e788d70c9e87bed880/src/node_options.cc#L1401
14
- *
15
- * @param input - The arguments string to be tokenized.
16
- * @returns An array of strings with the tokenized arguments.
17
- */
18
- declare const tokenizeArgs: (input: string) => string[];
19
- /**
20
- * Stringify the arguments to be used in a command line. It will ignore any
21
- * argument that has a value of `undefined`.
22
- *
23
- * @param args - The arguments to be stringified.
24
- * @returns A string with the arguments.
25
- */
26
- declare function formatNodeOptions(args: Record<string, string | boolean | undefined>): string;
27
- /**
28
- * Get the node options from the `NODE_OPTIONS` environment variable and parse
29
- * them into an object without the inspect options.
30
- *
31
- * @returns An object with the parsed node options.
32
- */
33
- declare function getParsedNodeOptionsWithoutInspect(): {
34
- [longOption: string]: string | boolean | undefined;
35
- };
36
- /**
37
- * Get the node options from the `NODE_OPTIONS` environment variable and format
38
- * them into a string without the inspect options.
39
- *
40
- * @returns A string with the formatted node options.
41
- */
42
- declare function getFormattedNodeOptionsWithoutInspect(): string;
43
- /**
44
- * Returns the package registry using the user's package manager. The URL will have a trailing slash.
45
- *
46
- * @param baseDir - The base directory to detect the package manager from.
47
- * @returns The package registry URL with a trailing slash.
48
- * @throws Will throw an error if the package manager cannot be detected or if the registry cannot be retrieved.
49
- */
50
- declare function getRegistry(baseDir?: string): Promise<string>;
51
- //#endregion
52
- export { getRegistry as a, getParsedNodeOptionsWithoutInspect as i, formatNodeOptions as n, tokenizeArgs as o, getFormattedNodeOptionsWithoutInspect as r, NodeOptionsToken as t };
53
- //# sourceMappingURL=registry-BQ3JXRFA.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry-BQ3JXRFA.d.mts","names":[],"sources":["../src/registry.ts"],"sourcesContent":[],"mappings":";UAuBiB,gBAAA;EAAA,IAAA,EAAA,QAAA;EA8DJ,KAAA,EAAA,MAAA;EAmEG,IAAA,EAAA,MAAA;EA+BA,OAAA,EAAA,MAAA;EAoBA,KAAA,EAAA,SAAA;EAcM,WAAA,EAAA,SAAW;;;;;;;;;;cApIpB;;;;;;;;iBAmEG,iBAAA,OACR;;;;;;;iBA8BQ,kCAAA,CAAA;;;;;;;;;iBAoBA,qCAAA,CAAA;;;;;;;;iBAcM,WAAA,oBAA4B"}
@@ -1 +0,0 @@
1
- const e=require(`./chunk-Bmb41Sf3.cjs`),t=require(`./get-workspace-root-CCNjjZGY.cjs`);let n=require(`node:child_process`),r=require(`@antfu/install-pkg`),i=require(`node:util`);const a=e=>{let{values:t,tokens:n}=(0,i.parseArgs)({args:e,strict:!1,tokens:!0}),r=null;for(let e=0;e<n.length;e++){let i=n[e];if(i.kind===`option-terminator`)break;if(i.kind===`option`){r=i.value===void 0?i:null;continue}if(i.kind!==`positional`){r=null;continue}r&&(r.name in t&&typeof t[r.name]==`string`?t[r.name]+=` ${i.value}`:t[r.name]=i.value)}return t},o=e=>{let t=[],n=!1,r=!0;for(let i=0;i<e.length;i++){let a=e[i];if(a===`\\`&&n){if(e.length===i+1)throw Error(`Invalid escape character at the end.`);a=e[++i]}else if(a===` `&&!n){r=!0;continue}else if(a===`"`){n=!n;continue}r?(t.push(a),r=!1):t[t.length-1]+=a}if(n)throw Error(`Unterminated string`);return t},s=()=>process.env.NODE_OPTIONS?o(process.env.NODE_OPTIONS):[];function c(e){return Object.entries(e).map(([e,t])=>t===!0?`--${e}`:t?`--${e}=${t.includes(` `)&&!t.startsWith(`"`)?JSON.stringify(t):t}`:null).filter(e=>e!==null).join(` `)}function l(){let e=s();if(e.length===0)return{};let t=a(e);return delete t.inspect,delete t[`inspect-brk`],delete t.inspect_brk,t}function u(){let e=l();return Object.keys(e).length===0?``:c(e)}async function d(e){let i=await(0,r.detectPackageManager)(t.i(e)),a=i===`npm`?`--no-workspaces`:``,o=`https://registry.npmjs.org/`;try{let e=(0,n.execSync)(`${i} config get registry ${a}`,{env:{...process.env,NODE_OPTIONS:u()}}).toString().trim();e.startsWith(`http`)&&(o=e.endsWith(`/`)?e:`${e}/`)}catch(e){throw Error(`Failed to get registry from "${i}".`,{cause:e})}return o}Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return c}});
@@ -1,53 +0,0 @@
1
- //#region src/registry.d.ts
2
- interface NodeOptionsToken {
3
- kind: "option";
4
- index: number;
5
- name: string;
6
- rawName: string;
7
- value: undefined;
8
- inlineValue: undefined;
9
- }
10
- /**
11
- * Tokenizes the arguments string into an array of strings, supporting quoted
12
- * values and escaped characters.
13
- * Converted from: https://github.com/nodejs/node/blob/c29d53c5cfc63c5a876084e788d70c9e87bed880/src/node_options.cc#L1401
14
- *
15
- * @param input - The arguments string to be tokenized.
16
- * @returns An array of strings with the tokenized arguments.
17
- */
18
- declare const tokenizeArgs: (input: string) => string[];
19
- /**
20
- * Stringify the arguments to be used in a command line. It will ignore any
21
- * argument that has a value of `undefined`.
22
- *
23
- * @param args - The arguments to be stringified.
24
- * @returns A string with the arguments.
25
- */
26
- declare function formatNodeOptions(args: Record<string, string | boolean | undefined>): string;
27
- /**
28
- * Get the node options from the `NODE_OPTIONS` environment variable and parse
29
- * them into an object without the inspect options.
30
- *
31
- * @returns An object with the parsed node options.
32
- */
33
- declare function getParsedNodeOptionsWithoutInspect(): {
34
- [longOption: string]: string | boolean | undefined;
35
- };
36
- /**
37
- * Get the node options from the `NODE_OPTIONS` environment variable and format
38
- * them into a string without the inspect options.
39
- *
40
- * @returns A string with the formatted node options.
41
- */
42
- declare function getFormattedNodeOptionsWithoutInspect(): string;
43
- /**
44
- * Returns the package registry using the user's package manager. The URL will have a trailing slash.
45
- *
46
- * @param baseDir - The base directory to detect the package manager from.
47
- * @returns The package registry URL with a trailing slash.
48
- * @throws Will throw an error if the package manager cannot be detected or if the registry cannot be retrieved.
49
- */
50
- declare function getRegistry(baseDir?: string): Promise<string>;
51
- //#endregion
52
- export { getRegistry as a, getParsedNodeOptionsWithoutInspect as i, formatNodeOptions as n, tokenizeArgs as o, getFormattedNodeOptionsWithoutInspect as r, NodeOptionsToken as t };
53
- //# sourceMappingURL=registry-C2A0Kau7.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry-C2A0Kau7.d.cts","names":[],"sources":["../src/registry.ts"],"sourcesContent":[],"mappings":";UAuBiB,gBAAA;EAAA,IAAA,EAAA,QAAA;EA8DJ,KAAA,EAAA,MAAA;EAmEG,IAAA,EAAA,MAAA;EA+BA,OAAA,EAAA,MAAA;EAoBA,KAAA,EAAA,SAAA;EAcM,WAAA,EAAA,SAAW;;;;;;;;;;cApIpB;;;;;;;;iBAmEG,iBAAA,OACR;;;;;;;iBA8BQ,kCAAA,CAAA;;;;;;;;;iBAoBA,qCAAA,CAAA;;;;;;;;iBAcM,WAAA,oBAA4B"}
@@ -1,2 +0,0 @@
1
- import{existsSync as e,rmSync as t}from"node:fs";import{rm as n}from"node:fs/promises";const r=n=>{!n||!e(n)||t(n)},i=async t=>{if(!(!t||!e(t)))return n(t)};export{r as n,i as t};
2
- //# sourceMappingURL=remove-file-BM64Brdf.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"remove-file-BM64Brdf.mjs","names":[],"sources":["../src/remove-file.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { existsSync, rmSync } from \"node:fs\";\nimport { rm } from \"node:fs/promises\";\n\n/**\n * Remove the given content to the given file path\n *\n * @param filePath - The file path to remove to\n */\nexport const removeFileSync = (filePath: string): void => {\n if (!filePath || !existsSync(filePath)) {\n return;\n }\n\n rmSync(filePath);\n};\n\n/**\n * Remove the given content to the given file path\n *\n * @param filePath - The file path to read to\n */\nexport const removeFile = async (filePath: string): Promise<void> => {\n if (!filePath || !existsSync(filePath)) {\n return;\n }\n\n return rm(filePath);\n};\n"],"mappings":"uFA0BA,MAAa,EAAkB,GAA2B,CACpD,CAAC,GAAY,CAAC,EAAW,EAAS,EAItC,EAAO,EAAS,EAQL,EAAa,KAAO,IAAoC,CAC/D,MAAC,GAAY,CAAC,EAAW,EAAS,EAItC,OAAO,EAAG,EAAS"}
@@ -1,16 +0,0 @@
1
- //#region src/remove-file.d.ts
2
- /**
3
- * Remove the given content to the given file path
4
- *
5
- * @param filePath - The file path to remove to
6
- */
7
- declare const removeFileSync: (filePath: string) => void;
8
- /**
9
- * Remove the given content to the given file path
10
- *
11
- * @param filePath - The file path to read to
12
- */
13
- declare const removeFile: (filePath: string) => Promise<void>;
14
- //#endregion
15
- export { removeFileSync as n, removeFile as t };
16
- //# sourceMappingURL=remove-file-BqlkL_Df.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"remove-file-BqlkL_Df.d.mts","names":[],"sources":["../src/remove-file.ts"],"sourcesContent":[],"mappings":";;AA0BA;AAaA;;;cAba;;;;;;cAaA,kCAAuC"}
@@ -1 +0,0 @@
1
- const e=require(`./chunk-Bmb41Sf3.cjs`);let t=require(`node:fs`),n=require(`node:fs/promises`);const r=e=>{!e||!(0,t.existsSync)(e)||(0,t.rmSync)(e)},i=async e=>{if(!(!e||!(0,t.existsSync)(e)))return(0,n.rm)(e)};Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return i}});
@@ -1,16 +0,0 @@
1
- //#region src/remove-file.d.ts
2
- /**
3
- * Remove the given content to the given file path
4
- *
5
- * @param filePath - The file path to remove to
6
- */
7
- declare const removeFileSync: (filePath: string) => void;
8
- /**
9
- * Remove the given content to the given file path
10
- *
11
- * @param filePath - The file path to read to
12
- */
13
- declare const removeFile: (filePath: string) => Promise<void>;
14
- //#endregion
15
- export { removeFileSync as n, removeFile as t };
16
- //# sourceMappingURL=remove-file-lQOlxDwr.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"remove-file-lQOlxDwr.d.cts","names":[],"sources":["../src/remove-file.ts"],"sourcesContent":[],"mappings":";;AA0BA;AAaA;;;cAba;;;;;;cAaA,kCAAuC"}
@@ -1,4 +0,0 @@
1
- import{t as e}from"./cwd-YTg9Cx6C.mjs";import{a as t,i as n,t as r}from"./join-paths-BHepkhAj.mjs";import{c as i,d as a,i as o,n as s,r as c,t as l,u}from"./file-path-fns-BDzC2SIV.mjs";import{i as d}from"./get-workspace-root-k66w-wLW.mjs";import{n as f}from"./exists-Ci-9lYmi.mjs";import{interopDefault as p,resolvePath as m,resolvePathSync as h}from"mlly";const g=e=>[...new Set(e)],_=[`js`,`jsx`,`mjs`,`cjs`,`ts`,`tsx`,`mts`,`cts`,`json`,`jsonc`,`json5`,`node`];function v(t=[]){let r=t;r.includes(e())||r.push(e());let a=d();return r.includes(a)||r.push(a),r=g(r.filter(Boolean).map(e=>i(e)).reduce((t,r,i,o)=>(t.push(r),n(r)||(t.push(u(r,e())),t.push(u(r,a)),o.forEach(e=>{t.push(u(r,e))})),t),[])),r}function y(e=[]){return g(e.reduce((e,t)=>(o(t)===`node_modules`&&e.push(i(t)),f(r(t,`node_modules`))&&e.push(i(r(t,`node_modules`))),e),[]))}function b(e,n={}){let o=v(n.paths);t(e)?o=y(o):o.push(...y(o));let c=n.extensions??_,u=o.map(t=>r(t,e));return s(e,{withExtension:!1})!==`index`&&(u=u.reduce((e,t)=>(e.push(t),e.push(r(t,`index`)),e),[])),l(e)||(u=u.reduce((e,t)=>(e.push(t),c.forEach(n=>{e.push(a(t,n))}),e),[])),g(u.filter(Boolean)).map(e=>i(e))}async function x(e,n={}){let r=v(n.paths);t(e)?r=y(r):r.push(...y(r));let a,o;try{a=await m(e,{url:r,extensions:n.extensions??_,conditions:n.conditions})}catch(e){o=e}if(!a)throw Error(`Unable to resolve module "${e}". The following import paths were tried: \n${r.join(`
2
- `)}`,{cause:o});return i(a)}function S(e,n={}){let r=v(n.paths);t(e)?r=y(r):r.push(...y(r));let a,o;try{a=h(e,{url:r,extensions:n.extensions??_,conditions:n.conditions})}catch(e){o=e}if(!a)throw Error(`Unable to resolve module "${e}". The following import paths were tried: \n${r.join(`
3
- `)}`,{cause:o});return i(a)}async function C(e,t={}){try{return await x(e,t)}catch{return}}function w(e,t={}){try{return S(e,t)}catch{return}}async function T(e){let t=await import(e);return t&&p(t)}async function E(e,t={}){let n=await C(r(e,`package.json`),t);return n||(n=await C(r(e,`index.js`),t),n||=await C(e,t)),n?c(n):void 0}function D(e,t={}){let n=w(r(e,`package.json`),t);return n||(n=w(r(e,`index.js`),t),n||=w(e,t)),n?c(n):void 0}export{T as a,D as c,S as d,v as i,C as l,y as n,x as o,b as r,E as s,_ as t,w as u};
4
- //# sourceMappingURL=resolve-C_YsCFne.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolve-C_YsCFne.mjs","names":["result: string | undefined","error: Error | undefined","result!: string"],"sources":["../../helpers/src/get-unique.ts","../src/resolve.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\n/**\n * Returns an array of unique values from the given array.\n *\n * @param arr - The array to get unique values from.\n * @returns An array of unique values.\n */\nexport const getUnique = <T = any>(arr: T[]): T[] => {\n return [...new Set(arr)];\n};\n\n/**\n * Returns a new array containing only the unique elements from the original array,\n * based on the values returned by the mapper function.\n *\n * @example\n * ```ts\n * uniqBy([1.2, 1.5, 2.1, 3.2, 5.7, 5.3, 7.19], Math.floor);\n * // [1.2, 2.1, 3.2, 5.7, 7.19]\n * ```\n *\n * @param arr - The array to process.\n * @param mapper - The function used to convert the array elements.\n * @returns A new array containing only the unique elements from the original array, based on the values returned by the mapper function.\n */\nexport function getUniqueBy<T, U>(\n arr: readonly T[],\n mapper: (item: T) => U = item => item as unknown as U\n): T[] {\n const map = new Map<U, T>();\n\n for (const item of arr) {\n const key = mapper(item);\n\n if (!map.has(key)) {\n map.set(key, item);\n }\n }\n\n return [...map.values()];\n}\n","/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { getUnique } from \"@stryke/helpers/get-unique\";\nimport { appendExtension } from \"@stryke/path\";\nimport { correctPath, toAbsolutePath } from \"@stryke/path/correct-path\";\nimport { cwd } from \"@stryke/path/cwd\";\nimport {\n findFileExtension,\n findFileName,\n findFilePath,\n findFolderName\n} from \"@stryke/path/file-path-fns\";\nimport { isAbsolutePath, isNpmScopedPackage } from \"@stryke/path/is-type\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport { interopDefault, resolvePath, resolvePathSync } from \"mlly\";\nimport { existsSync } from \"./exists\";\nimport { getWorkspaceRoot } from \"./get-workspace-root\";\n\nexport const DEFAULT_EXTENSIONS = [\n \"js\",\n \"jsx\",\n \"mjs\",\n \"cjs\",\n \"ts\",\n \"tsx\",\n \"mts\",\n \"cts\",\n \"json\",\n \"jsonc\",\n \"json5\",\n \"node\"\n];\n\nexport interface ResolveOptions {\n /**\n * Paths to resolve the package from\n */\n paths?: string[];\n\n /**\n * File extensions to consider when resolving the module\n *\n * @remarks\n * Extensions can be provided with or without the leading dot. The resolver utilities will handle both cases.\n *\n * @defaultValue [\"js\", \"jsx\", \"mjs\", \"cjs\", \"ts\", \"tsx\", \"mts\", \"cts\", \"json\", \"jsonc\", \"json5\", \"node\", \"wasm\"]\n */\n extensions?: string[];\n\n /**\n * Conditions to consider when resolving package exports.\n */\n conditions?: string[];\n}\n\n/**\n * Get the resolution paths based on the provided paths, current working directory, and workspace root.\n *\n * @param paths - An array of paths to include in the resolution.\n * @returns An array of unique, corrected resolution paths.\n */\nexport function getResolutionPaths(paths: string[] = []) {\n let resolutionPaths = paths;\n if (!resolutionPaths.includes(cwd())) {\n resolutionPaths.push(cwd());\n }\n\n const workspaceRoot = getWorkspaceRoot();\n if (!resolutionPaths.includes(workspaceRoot)) {\n resolutionPaths.push(workspaceRoot);\n }\n\n resolutionPaths = getUnique(\n resolutionPaths\n .filter(Boolean)\n .map(path => correctPath(path))\n .reduce((ret, path, _, arr) => {\n ret.push(path);\n if (!isAbsolutePath(path)) {\n ret.push(toAbsolutePath(path, cwd()));\n ret.push(toAbsolutePath(path, workspaceRoot));\n\n arr.forEach(existing => {\n ret.push(toAbsolutePath(path, existing));\n });\n }\n\n return ret;\n }, [] as string[])\n );\n\n return resolutionPaths;\n}\n\n/**\n * Get the node_modules resolution paths based on the provided paths.\n *\n * @param paths - An array of paths to include in the resolution.\n * @returns An array of unique, corrected node_modules resolution paths.\n */\nexport function getNodeModulesPaths(paths: string[] = []) {\n return getUnique(\n paths.reduce((ret, path) => {\n if (findFolderName(path) === \"node_modules\") {\n ret.push(correctPath(path));\n }\n\n if (existsSync(joinPaths(path, \"node_modules\"))) {\n ret.push(correctPath(joinPaths(path, \"node_modules\")));\n }\n\n return ret;\n }, [] as string[])\n );\n}\n\n/**\n * Get all combinations of resolution paths for a given path and options.\n *\n * @param path - The base path to combine with resolution paths.\n * @param options - The options containing resolution paths.\n * @returns An array of unique, corrected resolution paths.\n */\nexport function getResolutionCombinations(\n path: string,\n options: ResolveOptions = {}\n) {\n let paths = getResolutionPaths(options.paths);\n if (isNpmScopedPackage(path)) {\n paths = getNodeModulesPaths(paths);\n } else {\n paths.push(...getNodeModulesPaths(paths));\n }\n\n const extensions = options.extensions ?? DEFAULT_EXTENSIONS;\n\n let combinations = paths.map(base => joinPaths(base, path));\n if (findFileName(path, { withExtension: false }) !== \"index\") {\n combinations = combinations.reduce((ret, combination) => {\n ret.push(combination);\n ret.push(joinPaths(combination, \"index\"));\n\n return ret;\n }, [] as string[]);\n }\n\n if (!findFileExtension(path)) {\n combinations = combinations.reduce((ret, combination) => {\n ret.push(combination);\n extensions.forEach(ext => {\n ret.push(appendExtension(combination, ext));\n });\n\n return ret;\n }, [] as string[]);\n }\n\n return getUnique(combinations.filter(Boolean)).map(p => correctPath(p));\n}\n\n/**\n * Resolve the path to a specified module\n *\n * @param path - The path to the module\n * @param options - The options to use when resolving the module\n * @returns A promise for the path to the module\n */\nexport async function resolve(\n path: string,\n options: ResolveOptions = {}\n): Promise<string> {\n let paths = getResolutionPaths(options.paths);\n if (isNpmScopedPackage(path)) {\n paths = getNodeModulesPaths(paths);\n } else {\n paths.push(...getNodeModulesPaths(paths));\n }\n\n let result: string | undefined;\n let error: Error | undefined;\n\n try {\n result = await resolvePath(path, {\n url: paths,\n extensions: options.extensions ?? DEFAULT_EXTENSIONS,\n conditions: options.conditions\n });\n } catch (err) {\n error = err as Error;\n }\n\n // if (!result) {\n // for (let i = 0; i < paths.length && !result; i++) {\n // try {\n // result = await resolvePath(replacePath(path, paths[i]), {\n // url: paths,\n // extensions: options.extensions ?? DEFAULT_EXTENSIONS,\n // conditions: options.conditions\n // });\n // } catch (err) {\n // error = err as Error;\n // }\n // }\n // }\n\n if (!result) {\n throw new Error(\n `Unable to resolve module \"${\n path\n }\". The following import paths were tried: \\n${paths.join(\"\\n\")}`,\n {\n cause: error\n }\n );\n }\n\n return correctPath(result);\n}\n\n/**\n * Resolve the path to a specified module\n *\n * @param path - The path to the module\n * @param options - The options to use when resolving the module\n * @returns The path to the module or undefined\n */\nexport function resolveSync(path: string, options: ResolveOptions = {}) {\n let paths = getResolutionPaths(options.paths);\n if (isNpmScopedPackage(path)) {\n paths = getNodeModulesPaths(paths);\n } else {\n paths.push(...getNodeModulesPaths(paths));\n }\n\n let result!: string;\n let error: Error | undefined;\n\n try {\n result = resolvePathSync(path, {\n url: paths,\n extensions: options.extensions ?? DEFAULT_EXTENSIONS,\n conditions: options.conditions\n });\n } catch (err) {\n error = err as Error;\n }\n\n // if (!result) {\n // for (let i = 0; i < paths.length && !result; i++) {\n // try {\n // result = resolvePathSync(replacePath(path, paths[i]), {\n // url: paths,\n // extensions: options.extensions ?? DEFAULT_EXTENSIONS,\n // conditions: options.conditions\n // });\n // } catch (err) {\n // error = err as Error;\n // }\n // }\n // }\n\n // if (!result && findFileName(path, { withExtension: false }) !== \"index\") {\n // try {\n // result = resolveSync(joinPaths(path, \"index\"), {\n // ...options,\n // paths\n // });\n // if (result) {\n // // Remove the previously added index file from the path\n // result = findFilePath(result);\n // }\n // } catch (err) {\n // error = err as Error;\n // }\n // }\n\n if (!result) {\n throw new Error(\n `Unable to resolve module \"${\n path\n }\". The following import paths were tried: \\n${paths.join(\"\\n\")}`,\n {\n cause: error\n }\n );\n }\n\n return correctPath(result);\n}\n\n/**\n * Resolve the path to a specified module with error handling\n *\n * @param name - The name of the module\n * @param options - The options to use when resolving the module\n * @returns A promise for the path to the module\n */\nexport async function resolveSafe(name: string, options: ResolveOptions = {}) {\n try {\n return await resolve(name, options);\n } catch {\n return undefined;\n }\n}\n\n/**\n * Resolve the path to a specified module with error handling\n *\n * @param name - The name of the module\n * @param options - The options to use when resolving the module\n * @returns The path to the module or undefined\n */\nexport function resolveSafeSync(name: string, options: ResolveOptions = {}) {\n try {\n return resolveSync(name, options);\n } catch {\n return undefined;\n }\n}\n\n/**\n * Import a module from a specified path\n *\n * @param path - The path to the module\n * @returns The module\n */\nexport async function importModule<T = any>(path: string): Promise<T> {\n const i = await import(path);\n\n if (i) {\n return interopDefault(i);\n }\n\n return i;\n}\n\n/**\n * Resolve the path to a specified package asynchronously\n *\n * @remarks\n * This path points to the root of the package, which is usually the directory containing the `package.json` file. Please note: this path does not include the `package.json` file itself.\n *\n * @param name - The name of the module\n * @returns A promise for the module or undefined\n */\nexport async function resolvePackage(\n name: string,\n options: ResolveOptions = {}\n) {\n let result = await resolveSafe(joinPaths(name, \"package.json\"), options);\n if (!result) {\n result = await resolveSafe(joinPaths(name, \"index.js\"), options);\n if (!result) {\n result = await resolveSafe(name, options);\n }\n }\n\n return result ? findFilePath(result) : undefined;\n}\n\n/**\n * Resolve the path to a specified package synchronously\n *\n * @remarks\n * This path points to the root of the package, which is usually the directory containing the `package.json` file. Please note: this path does not include the `package.json` file itself.\n *\n * @param name - The name of the module\n * @param options - The options to use when resolving the module\n * @returns The module or undefined\n */\nexport function resolvePackageSync(name: string, options: ResolveOptions = {}) {\n let result = resolveSafeSync(joinPaths(name, \"package.json\"), options);\n if (!result) {\n result = resolveSafeSync(joinPaths(name, \"index.js\"), options);\n if (!result) {\n result = resolveSafeSync(name, options);\n }\n }\n\n return result ? findFilePath(result) : undefined;\n}\n"],"mappings":"qWAwBA,MAAa,EAAsB,GAC1B,CAAC,GAAG,IAAI,IAAI,EAAI,CAAC,CCSb,EAAqB,CAChC,KACA,MACA,MACA,MACA,KACA,MACA,MACA,MACA,OACA,QACA,QACA,OACD,CA8BD,SAAgB,EAAmB,EAAkB,EAAE,CAAE,CACvD,IAAI,EAAkB,EACjB,EAAgB,SAAS,GAAK,CAAC,EAClC,EAAgB,KAAK,GAAK,CAAC,CAG7B,IAAM,EAAgB,GAAkB,CAwBxC,OAvBK,EAAgB,SAAS,EAAc,EAC1C,EAAgB,KAAK,EAAc,CAGrC,EAAkB,EAChB,EACG,OAAO,QAAQ,CACf,IAAI,GAAQ,EAAY,EAAK,CAAC,CAC9B,QAAQ,EAAK,EAAM,EAAG,KACrB,EAAI,KAAK,EAAK,CACT,EAAe,EAAK,GACvB,EAAI,KAAK,EAAe,EAAM,GAAK,CAAC,CAAC,CACrC,EAAI,KAAK,EAAe,EAAM,EAAc,CAAC,CAE7C,EAAI,QAAQ,GAAY,CACtB,EAAI,KAAK,EAAe,EAAM,EAAS,CAAC,EACxC,EAGG,GACN,EAAE,CAAa,CACrB,CAEM,EAST,SAAgB,EAAoB,EAAkB,EAAE,CAAE,CACxD,OAAO,EACL,EAAM,QAAQ,EAAK,KACb,EAAe,EAAK,GAAK,gBAC3B,EAAI,KAAK,EAAY,EAAK,CAAC,CAGzB,EAAW,EAAU,EAAM,eAAe,CAAC,EAC7C,EAAI,KAAK,EAAY,EAAU,EAAM,eAAe,CAAC,CAAC,CAGjD,GACN,EAAE,CAAa,CACnB,CAUH,SAAgB,EACd,EACA,EAA0B,EAAE,CAC5B,CACA,IAAI,EAAQ,EAAmB,EAAQ,MAAM,CACzC,EAAmB,EAAK,CAC1B,EAAQ,EAAoB,EAAM,CAElC,EAAM,KAAK,GAAG,EAAoB,EAAM,CAAC,CAG3C,IAAM,EAAa,EAAQ,YAAc,EAErC,EAAe,EAAM,IAAI,GAAQ,EAAU,EAAM,EAAK,CAAC,CAqB3D,OApBI,EAAa,EAAM,CAAE,cAAe,GAAO,CAAC,GAAK,UACnD,EAAe,EAAa,QAAQ,EAAK,KACvC,EAAI,KAAK,EAAY,CACrB,EAAI,KAAK,EAAU,EAAa,QAAQ,CAAC,CAElC,GACN,EAAE,CAAa,EAGf,EAAkB,EAAK,GAC1B,EAAe,EAAa,QAAQ,EAAK,KACvC,EAAI,KAAK,EAAY,CACrB,EAAW,QAAQ,GAAO,CACxB,EAAI,KAAK,EAAgB,EAAa,EAAI,CAAC,EAC3C,CAEK,GACN,EAAE,CAAa,EAGb,EAAU,EAAa,OAAO,QAAQ,CAAC,CAAC,IAAI,GAAK,EAAY,EAAE,CAAC,CAUzE,eAAsB,EACpB,EACA,EAA0B,EAAE,CACX,CACjB,IAAI,EAAQ,EAAmB,EAAQ,MAAM,CACzC,EAAmB,EAAK,CAC1B,EAAQ,EAAoB,EAAM,CAElC,EAAM,KAAK,GAAG,EAAoB,EAAM,CAAC,CAG3C,IAAIA,EACAC,EAEJ,GAAI,CACF,EAAS,MAAM,EAAY,EAAM,CAC/B,IAAK,EACL,WAAY,EAAQ,YAAc,EAClC,WAAY,EAAQ,WACrB,CAAC,OACK,EAAK,CACZ,EAAQ,EAiBV,GAAI,CAAC,EACH,MAAU,MACR,6BACE,EACD,8CAA8C,EAAM,KAAK;EAAK,GAC/D,CACE,MAAO,EACR,CACF,CAGH,OAAO,EAAY,EAAO,CAU5B,SAAgB,EAAY,EAAc,EAA0B,EAAE,CAAE,CACtE,IAAI,EAAQ,EAAmB,EAAQ,MAAM,CACzC,EAAmB,EAAK,CAC1B,EAAQ,EAAoB,EAAM,CAElC,EAAM,KAAK,GAAG,EAAoB,EAAM,CAAC,CAG3C,IAAIC,EACAD,EAEJ,GAAI,CACF,EAAS,EAAgB,EAAM,CAC7B,IAAK,EACL,WAAY,EAAQ,YAAc,EAClC,WAAY,EAAQ,WACrB,CAAC,OACK,EAAK,CACZ,EAAQ,EAgCV,GAAI,CAAC,EACH,MAAU,MACR,6BACE,EACD,8CAA8C,EAAM,KAAK;EAAK,GAC/D,CACE,MAAO,EACR,CACF,CAGH,OAAO,EAAY,EAAO,CAU5B,eAAsB,EAAY,EAAc,EAA0B,EAAE,CAAE,CAC5E,GAAI,CACF,OAAO,MAAM,EAAQ,EAAM,EAAQ,MAC7B,CACN,QAWJ,SAAgB,EAAgB,EAAc,EAA0B,EAAE,CAAE,CAC1E,GAAI,CACF,OAAO,EAAY,EAAM,EAAQ,MAC3B,CACN,QAUJ,eAAsB,EAAsB,EAA0B,CACpE,IAAM,EAAI,MAAM,OAAO,GAMvB,OAJI,GACK,EAAe,EAAE,CAe5B,eAAsB,EACpB,EACA,EAA0B,EAAE,CAC5B,CACA,IAAI,EAAS,MAAM,EAAY,EAAU,EAAM,eAAe,CAAE,EAAQ,CAQxE,OAPK,IACH,EAAS,MAAM,EAAY,EAAU,EAAM,WAAW,CAAE,EAAQ,CAChE,AACE,IAAS,MAAM,EAAY,EAAM,EAAQ,EAItC,EAAS,EAAa,EAAO,CAAG,IAAA,GAazC,SAAgB,EAAmB,EAAc,EAA0B,EAAE,CAAE,CAC7E,IAAI,EAAS,EAAgB,EAAU,EAAM,eAAe,CAAE,EAAQ,CAQtE,OAPK,IACH,EAAS,EAAgB,EAAU,EAAM,WAAW,CAAE,EAAQ,CAC9D,AACE,IAAS,EAAgB,EAAM,EAAQ,EAIpC,EAAS,EAAa,EAAO,CAAG,IAAA"}