@flex-development/mlly 1.0.0-alpha.1 → 1.0.0-alpha.11

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 (380) hide show
  1. package/CHANGELOG.md +431 -3
  2. package/README.md +6 -4
  3. package/changelog.config.ts +404 -0
  4. package/dist/enums/assert-type.d.mts +21 -0
  5. package/dist/enums/assert-type.mjs +10 -0
  6. package/dist/enums/assert-type.mjs.map +6 -0
  7. package/dist/enums/format.d.mts +17 -0
  8. package/dist/enums/format.mjs +13 -0
  9. package/dist/enums/format.mjs.map +6 -0
  10. package/dist/enums/index.d.mts +10 -0
  11. package/dist/enums/index.mjs +15 -0
  12. package/dist/enums/index.mjs.map +6 -0
  13. package/dist/enums/kind-specifier-syntax.d.mts +14 -0
  14. package/dist/enums/kind-specifier-syntax.mjs +10 -0
  15. package/dist/enums/kind-specifier-syntax.mjs.map +6 -0
  16. package/dist/enums/kind-specifier.d.mts +17 -0
  17. package/dist/enums/kind-specifier.mjs +11 -0
  18. package/dist/enums/kind-specifier.mjs.map +6 -0
  19. package/dist/enums/kind-statement-syntax.d.mts +22 -0
  20. package/dist/enums/kind-statement-syntax.mjs +18 -0
  21. package/dist/enums/kind-statement-syntax.mjs.map +6 -0
  22. package/dist/enums/kind-statement.d.mts +15 -0
  23. package/dist/enums/kind-statement.mjs +11 -0
  24. package/dist/enums/kind-statement.mjs.map +6 -0
  25. package/dist/index.d.mts +2 -2
  26. package/dist/index.mjs +3 -2
  27. package/dist/index.mjs.map +6 -0
  28. package/dist/interfaces/import-assertions.d.mts +20 -0
  29. package/dist/interfaces/import-dynamic.d.mts +26 -6
  30. package/dist/interfaces/import-static.d.mts +22 -4
  31. package/dist/interfaces/index.d.mts +12 -0
  32. package/dist/interfaces/index.mjs +1 -0
  33. package/dist/interfaces/index.mjs.map +6 -0
  34. package/dist/interfaces/options-fill-module.d.mts +23 -0
  35. package/dist/interfaces/options-find-subpath.d.mts +49 -0
  36. package/dist/interfaces/options-get-format.d.mts +83 -0
  37. package/dist/interfaces/options-get-source.d.mts +63 -0
  38. package/dist/interfaces/options-parse-module-id.d.mts +33 -0
  39. package/dist/interfaces/options-parse-subpath.d.mts +31 -0
  40. package/dist/interfaces/options-resolve-alias.d.mts +26 -42
  41. package/dist/interfaces/options-resolve-module.d.mts +64 -0
  42. package/dist/interfaces/options-resolve.d.mts +7 -52
  43. package/dist/interfaces/package-scope.d.mts +25 -0
  44. package/dist/interfaces/parsed-data-url.d.mts +56 -0
  45. package/dist/interfaces/parsed-module-id.d.mts +80 -0
  46. package/dist/interfaces/parsed-subpath.d.mts +40 -0
  47. package/dist/interfaces/statement-export.d.mts +22 -9
  48. package/dist/interfaces/statement-import.d.mts +15 -4
  49. package/dist/interfaces/statement-require.d.mts +15 -4
  50. package/dist/interfaces/statement.d.mts +24 -8
  51. package/dist/internal/escape-reg-exp.d.mts +16 -0
  52. package/dist/internal/escape-reg-exp.mjs +10 -0
  53. package/dist/internal/escape-reg-exp.mjs.map +6 -0
  54. package/dist/internal/format-type-map.d.mts +17 -0
  55. package/dist/internal/format-type-map.mjs +13 -0
  56. package/dist/internal/format-type-map.mjs.map +6 -0
  57. package/dist/internal/get-specifier-kind.d.mts +17 -0
  58. package/dist/internal/get-specifier-kind.mjs +14 -0
  59. package/dist/internal/get-specifier-kind.mjs.map +6 -0
  60. package/dist/internal/get-subpaths.d.mts +25 -0
  61. package/dist/internal/get-subpaths.mjs +10 -0
  62. package/dist/internal/get-subpaths.mjs.map +6 -0
  63. package/dist/internal/is-array-index.d.mts +15 -0
  64. package/dist/internal/is-array-index.mjs +9 -0
  65. package/dist/internal/is-array-index.mjs.map +6 -0
  66. package/dist/internal/is-directory.d.mts +13 -0
  67. package/dist/internal/is-directory.mjs +16 -0
  68. package/dist/internal/is-directory.mjs.map +6 -0
  69. package/dist/internal/is-file.d.mts +13 -0
  70. package/dist/internal/is-file.mjs +16 -0
  71. package/dist/internal/is-file.mjs.map +6 -0
  72. package/dist/internal/is-function.d.mts +12 -0
  73. package/dist/internal/is-function.mjs +8 -0
  74. package/dist/internal/is-function.mjs.map +6 -0
  75. package/dist/internal/regex-encoded-sep.d.mts +13 -0
  76. package/dist/internal/regex-encoded-sep.mjs +6 -0
  77. package/dist/internal/regex-encoded-sep.mjs.map +6 -0
  78. package/dist/internal/regex-internal-specifier.d.mts +14 -0
  79. package/dist/internal/regex-internal-specifier.mjs +6 -0
  80. package/dist/internal/regex-internal-specifier.mjs.map +6 -0
  81. package/dist/internal/regex-package-name.d.mts +13 -0
  82. package/dist/internal/regex-package-name.mjs +6 -0
  83. package/dist/internal/regex-package-name.mjs.map +6 -0
  84. package/dist/internal/regex-package-path.d.mts +15 -0
  85. package/dist/internal/regex-package-path.mjs +6 -0
  86. package/dist/internal/regex-package-path.mjs.map +6 -0
  87. package/dist/internal/resolver.d.mts +130 -0
  88. package/dist/internal/resolver.mjs +500 -0
  89. package/dist/internal/resolver.mjs.map +6 -0
  90. package/dist/internal/validate-boolean.d.mts +20 -0
  91. package/dist/internal/validate-boolean.mjs +11 -0
  92. package/dist/internal/validate-boolean.mjs.map +6 -0
  93. package/dist/internal/validate-object.d.mts +23 -0
  94. package/dist/internal/validate-object.mjs +11 -0
  95. package/dist/internal/validate-object.mjs.map +6 -0
  96. package/dist/internal/validate-set.d.mts +23 -0
  97. package/dist/internal/validate-set.mjs +11 -0
  98. package/dist/internal/validate-set.mjs.map +6 -0
  99. package/dist/internal/validate-string.d.mts +20 -0
  100. package/dist/internal/validate-string.mjs +11 -0
  101. package/dist/internal/validate-string.mjs.map +6 -0
  102. package/dist/internal/validate-url-string.d.mts +22 -0
  103. package/dist/internal/validate-url-string.mjs +12 -0
  104. package/dist/internal/validate-url-string.mjs.map +6 -0
  105. package/dist/types/declaration.d.mts +1 -1
  106. package/dist/types/fn-change-ext.d.mts +28 -0
  107. package/dist/types/index.d.mts +8 -4
  108. package/dist/types/index.mjs +1 -0
  109. package/dist/types/index.mjs.map +6 -0
  110. package/dist/types/mime-type.d.mts +7 -5
  111. package/dist/types/module-id.d.mts +13 -0
  112. package/dist/types/module-specifier-type.d.mts +11 -0
  113. package/dist/types/protocol.d.mts +14 -0
  114. package/dist/types/syntax-kind-export.d.mts +12 -0
  115. package/dist/types/syntax-kind-import.d.mts +12 -0
  116. package/dist/types/syntax-kind-require.d.mts +12 -0
  117. package/dist/utils/compare-subpaths.d.mts +25 -0
  118. package/dist/utils/compare-subpaths.mjs +24 -0
  119. package/dist/utils/compare-subpaths.mjs.map +6 -0
  120. package/dist/utils/conditions.d.mts +13 -0
  121. package/dist/utils/conditions.mjs +6 -0
  122. package/dist/utils/conditions.mjs.map +6 -0
  123. package/dist/{lib → utils}/detect-syntax.d.mts +4 -4
  124. package/dist/{lib → utils}/detect-syntax.mjs +1 -0
  125. package/dist/utils/detect-syntax.mjs.map +6 -0
  126. package/dist/utils/extension-format-map.d.mts +16 -0
  127. package/dist/utils/extension-format-map.mjs +22 -0
  128. package/dist/utils/extension-format-map.mjs.map +6 -0
  129. package/dist/utils/extract-statements.d.mts +21 -0
  130. package/dist/{lib → utils}/extract-statements.mjs +4 -1
  131. package/dist/utils/extract-statements.mjs.map +6 -0
  132. package/dist/utils/fill-modules.d.mts +23 -0
  133. package/dist/utils/fill-modules.mjs +64 -0
  134. package/dist/utils/fill-modules.mjs.map +6 -0
  135. package/dist/utils/find-dynamic-imports.d.mts +18 -0
  136. package/dist/utils/find-dynamic-imports.mjs +39 -0
  137. package/dist/utils/find-dynamic-imports.mjs.map +6 -0
  138. package/dist/utils/find-exports.d.mts +21 -0
  139. package/dist/utils/find-exports.mjs +95 -0
  140. package/dist/utils/find-exports.mjs.map +6 -0
  141. package/dist/utils/find-requires.d.mts +18 -0
  142. package/dist/utils/find-requires.mjs +32 -0
  143. package/dist/utils/find-requires.mjs.map +6 -0
  144. package/dist/utils/find-static-imports.d.mts +18 -0
  145. package/dist/utils/find-static-imports.mjs +34 -0
  146. package/dist/utils/find-static-imports.mjs.map +6 -0
  147. package/dist/utils/find-subpath.d.mts +30 -0
  148. package/dist/utils/find-subpath.mjs +106 -0
  149. package/dist/utils/find-subpath.mjs.map +6 -0
  150. package/dist/utils/get-format.d.mts +24 -0
  151. package/dist/utils/get-format.mjs +111 -0
  152. package/dist/utils/get-format.mjs.map +6 -0
  153. package/dist/utils/get-source.d.mts +22 -0
  154. package/dist/utils/get-source.mjs +63 -0
  155. package/dist/utils/get-source.mjs.map +6 -0
  156. package/dist/{lib → utils}/has-cjs-syntax.d.mts +5 -2
  157. package/dist/utils/has-cjs-syntax.mjs +11 -0
  158. package/dist/utils/has-cjs-syntax.mjs.map +6 -0
  159. package/dist/{lib → utils}/has-esm-syntax.d.mts +5 -2
  160. package/dist/utils/has-esm-syntax.mjs +11 -0
  161. package/dist/utils/has-esm-syntax.mjs.map +6 -0
  162. package/dist/utils/index.d.mts +42 -0
  163. package/dist/utils/index.mjs +79 -0
  164. package/dist/utils/index.mjs.map +6 -0
  165. package/dist/utils/is-absolute-specifier.d.mts +19 -0
  166. package/dist/utils/is-absolute-specifier.mjs +25 -0
  167. package/dist/utils/is-absolute-specifier.mjs.map +6 -0
  168. package/dist/utils/is-bare-specifier.d.mts +19 -0
  169. package/dist/utils/is-bare-specifier.mjs +10 -0
  170. package/dist/utils/is-bare-specifier.mjs.map +6 -0
  171. package/dist/utils/is-exports-sugar.d.mts +25 -0
  172. package/dist/utils/is-exports-sugar.mjs +26 -0
  173. package/dist/utils/is-exports-sugar.mjs.map +6 -0
  174. package/dist/utils/is-relative-specifier.d.mts +20 -0
  175. package/dist/utils/is-relative-specifier.mjs +11 -0
  176. package/dist/utils/is-relative-specifier.mjs.map +6 -0
  177. package/dist/utils/lookup-package-scope.d.mts +26 -0
  178. package/dist/utils/lookup-package-scope.mjs +38 -0
  179. package/dist/utils/lookup-package-scope.mjs.map +6 -0
  180. package/dist/utils/parse-data-url.d.mts +25 -0
  181. package/dist/utils/parse-data-url.mjs +25 -0
  182. package/dist/utils/parse-data-url.mjs.map +6 -0
  183. package/dist/utils/parse-module-id.d.mts +22 -0
  184. package/dist/utils/parse-module-id.mjs +122 -0
  185. package/dist/utils/parse-module-id.mjs.map +6 -0
  186. package/dist/utils/parse-subpath.d.mts +35 -0
  187. package/dist/utils/parse-subpath.mjs +54 -0
  188. package/dist/utils/parse-subpath.mjs.map +6 -0
  189. package/dist/utils/pattern-character.d.mts +11 -0
  190. package/dist/utils/pattern-character.mjs +6 -0
  191. package/dist/utils/pattern-character.mjs.map +6 -0
  192. package/dist/utils/read-package-json.d.mts +26 -0
  193. package/dist/utils/read-package-json.mjs +43 -0
  194. package/dist/utils/read-package-json.mjs.map +6 -0
  195. package/dist/utils/resolve-alias.d.mts +20 -0
  196. package/dist/utils/resolve-alias.mjs +106 -0
  197. package/dist/utils/resolve-alias.mjs.map +6 -0
  198. package/dist/utils/resolve-aliases.d.mts +19 -0
  199. package/dist/utils/resolve-aliases.mjs +28 -0
  200. package/dist/utils/resolve-aliases.mjs.map +6 -0
  201. package/dist/utils/resolve-extensions.d.mts +14 -0
  202. package/dist/utils/resolve-extensions.mjs +22 -0
  203. package/dist/utils/resolve-extensions.mjs.map +6 -0
  204. package/dist/utils/resolve-module.d.mts +39 -0
  205. package/dist/utils/resolve-module.mjs +64 -0
  206. package/dist/utils/resolve-module.mjs.map +6 -0
  207. package/dist/utils/resolve-modules.d.mts +25 -0
  208. package/dist/{lib → utils}/resolve-modules.mjs +7 -10
  209. package/dist/utils/resolve-modules.mjs.map +6 -0
  210. package/dist/{lib → utils}/to-absolute-specifier.d.mts +6 -6
  211. package/dist/utils/to-absolute-specifier.mjs +8 -0
  212. package/dist/utils/to-absolute-specifier.mjs.map +6 -0
  213. package/dist/utils/to-bare-specifier.d.mts +42 -0
  214. package/dist/utils/to-bare-specifier.mjs +90 -0
  215. package/dist/utils/to-bare-specifier.mjs.map +6 -0
  216. package/dist/{lib → utils}/to-data-url.d.mts +6 -5
  217. package/dist/{lib → utils}/to-data-url.mjs +4 -0
  218. package/dist/utils/to-data-url.mjs.map +6 -0
  219. package/dist/utils/to-node-url.d.mts +19 -0
  220. package/dist/utils/to-node-url.mjs +10 -0
  221. package/dist/utils/to-node-url.mjs.map +6 -0
  222. package/dist/{lib → utils}/to-relative-specifier.d.mts +6 -6
  223. package/dist/{lib → utils}/to-relative-specifier.mjs +7 -3
  224. package/dist/utils/to-relative-specifier.mjs.map +6 -0
  225. package/dist/utils/to-url.d.mts +22 -0
  226. package/dist/utils/to-url.mjs +12 -0
  227. package/dist/utils/to-url.mjs.map +6 -0
  228. package/dist/utils/validate-assertions.d.mts +23 -0
  229. package/dist/utils/validate-assertions.mjs +52 -0
  230. package/dist/utils/validate-assertions.mjs.map +6 -0
  231. package/dist/utils/validate-exports.d.mts +24 -0
  232. package/dist/utils/validate-exports.mjs +72 -0
  233. package/dist/utils/validate-exports.mjs.map +6 -0
  234. package/package.json +106 -83
  235. package/src/enums/assert-type.ts +23 -0
  236. package/src/enums/format.ts +19 -0
  237. package/src/enums/index.ts +11 -0
  238. package/src/enums/kind-specifier-syntax.ts +16 -0
  239. package/src/enums/kind-specifier.ts +19 -0
  240. package/src/enums/kind-statement-syntax.ts +24 -0
  241. package/src/enums/kind-statement.ts +17 -0
  242. package/src/index.ts +9 -0
  243. package/src/interfaces/import-assertions.ts +24 -0
  244. package/src/interfaces/import-dynamic.ts +48 -0
  245. package/src/interfaces/import-static.ts +50 -0
  246. package/src/interfaces/index.ts +25 -0
  247. package/src/interfaces/options-fill-module.ts +26 -0
  248. package/src/interfaces/options-find-subpath.ts +56 -0
  249. package/src/interfaces/options-get-format.ts +92 -0
  250. package/src/interfaces/options-get-source.ts +70 -0
  251. package/src/interfaces/options-parse-module-id.ts +38 -0
  252. package/src/interfaces/options-parse-subpath.ts +36 -0
  253. package/src/interfaces/options-resolve-alias.ts +59 -0
  254. package/src/interfaces/options-resolve-module.ts +72 -0
  255. package/src/interfaces/options-resolve.ts +17 -0
  256. package/src/interfaces/package-scope.ts +30 -0
  257. package/src/interfaces/parsed-data-url.ts +63 -0
  258. package/src/interfaces/parsed-module-id.ts +90 -0
  259. package/src/interfaces/parsed-subpath.ts +47 -0
  260. package/src/interfaces/statement-export.ts +52 -0
  261. package/src/interfaces/statement-import.ts +45 -0
  262. package/src/interfaces/statement-require.ts +45 -0
  263. package/src/interfaces/statement.ts +64 -0
  264. package/src/internal/escape-reg-exp.ts +24 -0
  265. package/src/internal/format-type-map.ts +26 -0
  266. package/src/internal/get-specifier-kind.ts +38 -0
  267. package/src/internal/get-subpaths.ts +41 -0
  268. package/src/internal/is-array-index.ts +28 -0
  269. package/src/internal/is-directory.ts +25 -0
  270. package/src/internal/is-file.ts +25 -0
  271. package/src/internal/is-function.ts +16 -0
  272. package/src/internal/regex-encoded-sep.ts +15 -0
  273. package/src/internal/regex-internal-specifier.ts +17 -0
  274. package/src/internal/regex-package-name.ts +16 -0
  275. package/src/internal/regex-package-path.ts +18 -0
  276. package/src/internal/resolver.ts +783 -0
  277. package/src/internal/validate-boolean.ts +27 -0
  278. package/src/internal/validate-object.ts +30 -0
  279. package/src/internal/validate-set.ts +33 -0
  280. package/src/internal/validate-string.ts +27 -0
  281. package/src/internal/validate-url-string.ts +31 -0
  282. package/src/types/declaration.ts +22 -0
  283. package/src/types/fn-change-ext.ts +33 -0
  284. package/src/types/index.ts +14 -0
  285. package/src/types/mime-type.ts +19 -0
  286. package/src/types/module-id.ts +15 -0
  287. package/src/types/module-specifier-type.ts +13 -0
  288. package/src/types/protocol.ts +40 -0
  289. package/src/types/syntax-kind-export.ts +20 -0
  290. package/src/types/syntax-kind-import.ts +22 -0
  291. package/src/types/syntax-kind-require.ts +15 -0
  292. package/src/utils/compare-subpaths.ts +100 -0
  293. package/src/utils/conditions.ts +15 -0
  294. package/src/utils/detect-syntax.ts +40 -0
  295. package/src/utils/extension-format-map.ts +34 -0
  296. package/src/utils/extract-statements.ts +42 -0
  297. package/src/utils/fill-modules.ts +116 -0
  298. package/src/utils/find-dynamic-imports.ts +75 -0
  299. package/src/utils/find-exports.ts +164 -0
  300. package/src/utils/find-requires.ts +75 -0
  301. package/src/utils/find-static-imports.ts +89 -0
  302. package/src/utils/find-subpath.ts +241 -0
  303. package/src/utils/get-format.ts +222 -0
  304. package/src/utils/get-source.ts +129 -0
  305. package/src/utils/has-cjs-syntax.ts +44 -0
  306. package/src/utils/has-esm-syntax.ts +40 -0
  307. package/src/utils/index.ts +43 -0
  308. package/src/utils/is-absolute-specifier.ts +48 -0
  309. package/src/utils/is-bare-specifier.ts +30 -0
  310. package/src/utils/is-exports-sugar.ts +74 -0
  311. package/src/utils/is-relative-specifier.ts +34 -0
  312. package/src/utils/lookup-package-scope.ts +97 -0
  313. package/src/utils/parse-data-url.ts +71 -0
  314. package/src/utils/parse-module-id.ts +186 -0
  315. package/src/utils/parse-subpath.ts +173 -0
  316. package/src/utils/pattern-character.ts +13 -0
  317. package/src/utils/read-package-json.ts +101 -0
  318. package/src/utils/resolve-alias.ts +219 -0
  319. package/src/utils/resolve-aliases.ts +58 -0
  320. package/src/utils/resolve-extensions.ts +33 -0
  321. package/src/utils/resolve-module.ts +153 -0
  322. package/src/utils/resolve-modules.ts +62 -0
  323. package/src/utils/to-absolute-specifier.ts +30 -0
  324. package/src/utils/to-bare-specifier.ts +201 -0
  325. package/src/utils/to-data-url.ts +42 -0
  326. package/src/utils/to-node-url.ts +27 -0
  327. package/src/utils/to-relative-specifier.ts +47 -0
  328. package/src/utils/to-url.ts +31 -0
  329. package/src/utils/validate-assertions.ts +119 -0
  330. package/src/utils/validate-exports.ts +124 -0
  331. package/changelog.config.cts +0 -204
  332. package/dist/constants.d.mts +0 -19
  333. package/dist/constants.mjs +0 -24
  334. package/dist/interfaces/import-dynamic.mjs +0 -0
  335. package/dist/interfaces/import-static.mjs +0 -0
  336. package/dist/interfaces/options-resolve-alias.mjs +0 -0
  337. package/dist/interfaces/options-resolve.mjs +0 -0
  338. package/dist/interfaces/statement-export.mjs +0 -0
  339. package/dist/interfaces/statement-import.mjs +0 -0
  340. package/dist/interfaces/statement-require.mjs +0 -0
  341. package/dist/interfaces/statement.mjs +0 -0
  342. package/dist/internal/compiler-options-json.d.mts +0 -111
  343. package/dist/internal/compiler-options-json.mjs +0 -0
  344. package/dist/internal/constants.d.mts +0 -70
  345. package/dist/internal/constants.mjs +0 -18
  346. package/dist/internal/get-compiler-options.d.mts +0 -21
  347. package/dist/internal/get-compiler-options.mjs +0 -14
  348. package/dist/internal/index.d.mts +0 -7
  349. package/dist/internal/index.mjs +0 -5
  350. package/dist/lib/extract-statements.d.mts +0 -21
  351. package/dist/lib/find-dynamic-imports.d.mts +0 -15
  352. package/dist/lib/find-dynamic-imports.mjs +0 -20
  353. package/dist/lib/find-exports.d.mts +0 -15
  354. package/dist/lib/find-exports.mjs +0 -53
  355. package/dist/lib/find-requires.d.mts +0 -17
  356. package/dist/lib/find-requires.mjs +0 -19
  357. package/dist/lib/find-static-imports.d.mts +0 -15
  358. package/dist/lib/find-static-imports.mjs +0 -20
  359. package/dist/lib/has-cjs-syntax.mjs +0 -6
  360. package/dist/lib/has-esm-syntax.mjs +0 -6
  361. package/dist/lib/index.d.mts +0 -20
  362. package/dist/lib/index.mjs +0 -34
  363. package/dist/lib/resolve-alias.d.mts +0 -20
  364. package/dist/lib/resolve-alias.mjs +0 -41
  365. package/dist/lib/resolve-aliases.d.mts +0 -17
  366. package/dist/lib/resolve-aliases.mjs +0 -34
  367. package/dist/lib/resolve-module.d.mts +0 -31
  368. package/dist/lib/resolve-module.mjs +0 -74
  369. package/dist/lib/resolve-modules.d.mts +0 -19
  370. package/dist/lib/to-absolute-specifier.mjs +0 -20
  371. package/dist/lib/to-bare-specifier.d.mts +0 -28
  372. package/dist/lib/to-bare-specifier.mjs +0 -78
  373. package/dist/types/declaration.mjs +0 -0
  374. package/dist/types/ext.d.mts +0 -9
  375. package/dist/types/ext.mjs +0 -0
  376. package/dist/types/mime-type.mjs +0 -0
  377. package/dist/types/specifier-type.d.mts +0 -11
  378. package/dist/types/specifier-type.mjs +0 -0
  379. package/dist/types/statement-type.d.mts +0 -9
  380. package/dist/types/statement-type.mjs +0 -0
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @file Internal - isDirectory
3
+ * @module mlly/internal/isDirectory
4
+ */
5
+ import type { ModuleId } from '../types/index.mjs';
6
+ /**
7
+ * Checks if a directory exists at the given module `id`.
8
+ *
9
+ * @param {ModuleId} id - Module id to evaluate
10
+ * @return {boolean} `true` if directory exists at `id`
11
+ */
12
+ declare const isDirectory: (id: ModuleId) => boolean;
13
+ export default isDirectory;
@@ -0,0 +1,16 @@
1
+ import fs from "node:fs";
2
+ import validateURLString from "./validate-url-string.mjs";
3
+ const isDirectory = (id) => {
4
+ var _a;
5
+ try {
6
+ validateURLString(id, "id");
7
+ return ((_a = fs.statSync(id, { throwIfNoEntry: false })) == null ? void 0 : _a.isDirectory()) ?? false;
8
+ } catch {
9
+ return false;
10
+ }
11
+ };
12
+ var is_directory_default = isDirectory;
13
+ export {
14
+ is_directory_default as default
15
+ };
16
+ //# sourceMappingURL=is-directory.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/internal/is-directory.ts"],
4
+ "mappings": "AAMA,OAAO,QAAQ;AACf,OAAO,uBAAuB;AAQ9B,MAAM,cAAc,CAAC,OAA0B;AAf/C;AAgBE,MAAI;AACF,sBAAkB,IAAI,IAAI;AAC1B,aAAO,QAAG,SAAS,IAAI,EAAE,gBAAgB,MAAM,CAAC,MAAzC,mBAA4C,kBAAiB;AAAA,EACtE,QAAE;AACA,WAAO;AAAA,EACT;AACF;AAEA,IAAO,uBAAQ;",
5
+ "names": []
6
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @file Internal - isFile
3
+ * @module mlly/internal/isFile
4
+ */
5
+ import type { ModuleId } from '../types/index.mjs';
6
+ /**
7
+ * Checks if a file exists at the given module `id`.
8
+ *
9
+ * @param {ModuleId} id - Module id to evaluate
10
+ * @return {boolean} `true` if file exists at `id`
11
+ */
12
+ declare const isFile: (id: ModuleId) => boolean;
13
+ export default isFile;
@@ -0,0 +1,16 @@
1
+ import fs from "node:fs";
2
+ import validateURLString from "./validate-url-string.mjs";
3
+ const isFile = (id) => {
4
+ var _a;
5
+ try {
6
+ validateURLString(id, "id");
7
+ return ((_a = fs.statSync(id, { throwIfNoEntry: false })) == null ? void 0 : _a.isFile()) ?? false;
8
+ } catch {
9
+ return false;
10
+ }
11
+ };
12
+ var is_file_default = isFile;
13
+ export {
14
+ is_file_default as default
15
+ };
16
+ //# sourceMappingURL=is-file.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/internal/is-file.ts"],
4
+ "mappings": "AAMA,OAAO,QAAQ;AACf,OAAO,uBAAuB;AAQ9B,MAAM,SAAS,CAAC,OAA0B;AAf1C;AAgBE,MAAI;AACF,sBAAkB,IAAI,IAAI;AAC1B,aAAO,QAAG,SAAS,IAAI,EAAE,gBAAgB,MAAM,CAAC,MAAzC,mBAA4C,aAAY;AAAA,EACjE,QAAE;AACA,WAAO;AAAA,EACT;AACF;AAEA,IAAO,kBAAQ;",
5
+ "names": []
6
+ }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @file Internal - isFunction
3
+ * @module mlly/internal/isFunction
4
+ */
5
+ /**
6
+ * Checks if the given `value` is a function.
7
+ *
8
+ * @param {unknown} value - Value to check
9
+ * @return {value is (...args: any[]) => any} `true` if `value` is a unction
10
+ */
11
+ declare const isFunction: (value: unknown) => value is (...args: any[]) => any;
12
+ export default isFunction;
@@ -0,0 +1,8 @@
1
+ const isFunction = (value) => {
2
+ return typeof value === "function";
3
+ };
4
+ var is_function_default = isFunction;
5
+ export {
6
+ is_function_default as default
7
+ };
8
+ //# sourceMappingURL=is-function.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/internal/is-function.ts"],
4
+ "mappings": "AAWA,MAAM,aAAa,CAAC,UAAqD;AACvE,SAAO,OAAO,UAAU;AAC1B;AAEA,IAAO,sBAAQ;",
5
+ "names": []
6
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @file Internal - ENCODED_SEP_REGEX
3
+ * @module mlly/internal/ENCODED_SEP_REGEX
4
+ */
5
+ /**
6
+ * Regex pattern matching encoded path separators (e.g `/`, `\\`).
7
+ *
8
+ * @see https://regex101.com/r/XV7HzM
9
+ *
10
+ * @const {RegExp} ENCODED_SEP_REGEX
11
+ */
12
+ declare const ENCODED_SEP_REGEX: RegExp;
13
+ export default ENCODED_SEP_REGEX;
@@ -0,0 +1,6 @@
1
+ const ENCODED_SEP_REGEX = /%2f|%5c/i;
2
+ var regex_encoded_sep_default = ENCODED_SEP_REGEX;
3
+ export {
4
+ regex_encoded_sep_default as default
5
+ };
6
+ //# sourceMappingURL=regex-encoded-sep.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/internal/regex-encoded-sep.ts"],
4
+ "mappings": "AAYA,MAAM,oBAA4B;AAElC,IAAO,4BAAQ;",
5
+ "names": []
6
+ }
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @file Internal - INTERNAL_SPECIFIER_REGEX
3
+ * @module mlly/internal/INTERNAL_SPECIFIER_REGEX
4
+ */
5
+ /**
6
+ * Regex pattern matching subpath imports.
7
+ *
8
+ * @see https://regex101.com/r/ppVRw7
9
+ * @see https://nodejs.org/api/packages.html#subpath-imports
10
+ *
11
+ * @const {RegExp} INTERNAL_SPECIFIER_REGEX
12
+ */
13
+ declare const INTERNAL_SPECIFIER_REGEX: RegExp;
14
+ export default INTERNAL_SPECIFIER_REGEX;
@@ -0,0 +1,6 @@
1
+ const INTERNAL_SPECIFIER_REGEX = /^(?!.*(?:%2[Ff]|%5[Cc]))(?<root>#[^\s/]+?(?=\s|$|\/))(?<path>\/.+[^/](?=\s|$))?(?!\/)/;
2
+ var regex_internal_specifier_default = INTERNAL_SPECIFIER_REGEX;
3
+ export {
4
+ regex_internal_specifier_default as default
5
+ };
6
+ //# sourceMappingURL=regex-internal-specifier.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/internal/regex-internal-specifier.ts"],
4
+ "mappings": "AAaA,MAAM,2BACJ;AAEF,IAAO,mCAAQ;",
5
+ "names": []
6
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @file Internal - PACKAGE_NAME_REGEX
3
+ * @module mlly/internal/PACKAGE_NAME_REGEX
4
+ */
5
+ /**
6
+ * Regex pattern matching package names.
7
+ *
8
+ * @see https://regex101.com/r/BHcJfc
9
+ *
10
+ * @const {RegExp} PACKAGE_NAME_REGEX
11
+ */
12
+ declare const PACKAGE_NAME_REGEX: RegExp;
13
+ export default PACKAGE_NAME_REGEX;
@@ -0,0 +1,6 @@
1
+ const PACKAGE_NAME_REGEX = /^(?:(?<scope>@[\d*a-z~-][\w*.~-]*)\/)?[\da-z~-][\w.~-]*$/;
2
+ var regex_package_name_default = PACKAGE_NAME_REGEX;
3
+ export {
4
+ regex_package_name_default as default
5
+ };
6
+ //# sourceMappingURL=regex-package-name.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/internal/regex-package-name.ts"],
4
+ "mappings": "AAYA,MAAM,qBACJ;AAEF,IAAO,6BAAQ;",
5
+ "names": []
6
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @file Internal - PACKAGE_PATH_REGEX
3
+ * @module mlly/internal/PACKAGE_PATH_REGEX
4
+ */
5
+ /**
6
+ * Regex pattern matching bare specifiers beginning with valid package names.
7
+ *
8
+ * **Note**: Does **not** match specifiers beginning with `'node_modules'`.
9
+ *
10
+ * @see https://regex101.com/r/z0MPgj
11
+ *
12
+ * @const {RegExp} PACKAGE_PATH_REGEX
13
+ */
14
+ declare const PACKAGE_PATH_REGEX: RegExp;
15
+ export default PACKAGE_PATH_REGEX;
@@ -0,0 +1,6 @@
1
+ const PACKAGE_PATH_REGEX = /^(?!\S+:|node_modules)(?<pkg>(?:(?:(?<scope>@[\d*a-z~-][\w*.~-]*)\/)?[\da-z~-][\w.~-]*))@?(?<version_prefix>v)?(?<version>(?:(?:0|[1-9]\d*)\.){2}(?:0|[1-9]\d*)(?:-(?:0|[1-9]\d*|\d*[a-z-][\da-z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-z-][\da-z-]*))*)?(?:\+[\da-z-]+(?:\.[\da-z-]+)*)?)?(?<subpath>\/.*)?(?<!.*(?:%2[Ff]|%5[Cc]))/;
2
+ var regex_package_path_default = PACKAGE_PATH_REGEX;
3
+ export {
4
+ regex_package_path_default as default
5
+ };
6
+ //# sourceMappingURL=regex-package-path.mjs.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/internal/regex-package-path.ts"],
4
+ "mappings": "AAcA,MAAM,qBACJ;AAEF,IAAO,6BAAQ;",
5
+ "names": []
6
+ }
@@ -0,0 +1,130 @@
1
+ /**
2
+ * @file Internal - Resolver
3
+ * @module mlly/internal/Resolver
4
+ */
5
+ /// <reference types="node" />
6
+ import type { ModuleId } from '../types/index.mjs';
7
+ import type { Exports, PackageJson } from '@flex-development/pkg-types';
8
+ import { type Nullable } from '@flex-development/tutils';
9
+ import { URL } from 'node:url';
10
+ /**
11
+ * ECMAScript (ES) module resolver.
12
+ *
13
+ * @see https://nodejs.org/api/esm.html#resolver-algorithm
14
+ *
15
+ * @class
16
+ */
17
+ declare class Resolver {
18
+ /**
19
+ * Resolves `specifier` according to the [ESM Resolver algorithm][1].
20
+ *
21
+ * [1]: https://nodejs.org/api/esm.html#esm_resolver_algorithm
22
+ *
23
+ * @public
24
+ *
25
+ * @param {string} specifier - Module specifier to resolve
26
+ * @param {ModuleId} parent - URL of module to resolve from
27
+ * @param {string?} [condition='default'] - Export condition to apply
28
+ * @param {Set<string>?} [conditions=CONDITIONS] - Export conditions
29
+ * @param {boolean?} [preserveSymlinks=false] - Skip resolving symlinks
30
+ * @return {URL} Resolved module URL
31
+ * @throws {NodeError}
32
+ */
33
+ resolveModule(specifier: string, parent: ModuleId, condition?: string, conditions?: Set<string>, preserveSymlinks?: boolean): URL;
34
+ /**
35
+ * Resolves a package path using a combination of the following algorithms:
36
+ *
37
+ * - `PACKAGE_RESOLVE`
38
+ * - `PACKAGE_SELF_RESOLVE`
39
+ *
40
+ * @see https://nodejs.org/api/esm.html#resolver-algorithm-specification
41
+ *
42
+ * @public
43
+ *
44
+ * @param {string} specifier - Module specifier to resolve
45
+ * @param {ModuleId} parent - URL of module to resolve from
46
+ * @param {string?} [condition='default'] - Export condition to apply
47
+ * @param {Set<string>?} [conditions=CONDITIONS] - Export conditions
48
+ * @return {URL} Resolved package path URL
49
+ * @throws {NodeError}
50
+ */
51
+ resolvePackage(specifier: string, parent: ModuleId, condition?: string, conditions?: Set<string>): URL;
52
+ /**
53
+ * Resolves a subpath export according to the `PACKAGE_EXPORTS_RESOLVE`
54
+ * algorithm.
55
+ *
56
+ * @see https://nodejs.org/api/esm.html#resolver-algorithm-specification
57
+ * @see https://nodejs.org/api/packages.html#subpath-exports
58
+ *
59
+ * @public
60
+ *
61
+ * @param {string} specifier - Module specifier containing subpath
62
+ * @param {ModuleId} pkg - URL of relevant `package.json` file
63
+ * @param {ModuleId} parent - URL of module to resolve from
64
+ * @param {string?} [condition='default'] - Export condition to apply
65
+ * @param {Set<string>?} [conditions=CONDITIONS] - Export conditions
66
+ * @return {URL} Resolved package export URL
67
+ * @throws {NodeError<Error | TypeError>}
68
+ */
69
+ resolvePackageExport(specifier: string, pkg: ModuleId, parent: ModuleId, condition?: string, conditions?: Set<string>): URL;
70
+ /**
71
+ * Resolves a subpath import according to the `PACKAGE_IMPORTS_RESOLVE`
72
+ * algorithm.
73
+ *
74
+ * @see https://nodejs.org/api/esm.html#resolver-algorithm-specification
75
+ * @see https://nodejs.org/api/packages.html#subpath-imports
76
+ *
77
+ * @public
78
+ *
79
+ * @param {string} specifier - Module specifier containing subpath
80
+ * @param {ModuleId} parent - URL of module to resolve from
81
+ * @param {string?} [condition='default'] - Export condition to apply
82
+ * @param {Set<string>?} [conditions=CONDITIONS] - Export conditions
83
+ * @return {URL} Resolved package import URL
84
+ * @throws {NodeError<Error | TypeError>}
85
+ */
86
+ resolvePackageImport(specifier: string, parent: ModuleId, condition?: string, conditions?: Set<string>): URL;
87
+ /**
88
+ * Resolves a package entry point using the legacy CommonJS `main` resolution
89
+ * alogirthm:
90
+ *
91
+ * 1. let M = pkgdir `pkgjson.main`
92
+ * 2. TRY(M, M.js, M.json, M.node, M/index.js, M/index.json, M/index.node)
93
+ * 4. TRY(pkgdir/index.js, pkgdir/index.json, pkgdir/index.node)
94
+ * 5. ERR_MODULE_NOT_FOUND
95
+ *
96
+ * @todo emit deprecation messages
97
+ *
98
+ * @public
99
+ *
100
+ * @param {ModuleId} pkg - URL of relevant `package.json` file
101
+ * @param {PackageJson} pkgjson - Relevant `package.json` object
102
+ * @param {ModuleId} parent - URL of module to resolve from
103
+ * @return {URL} Package entry point URL
104
+ * @throws {NodeError} If package entry point is not found
105
+ */
106
+ resolvePackageMain(pkg: ModuleId, pkgjson: PackageJson, parent: ModuleId): URL;
107
+ /**
108
+ * Resolves a package target according to the `PACKAGE_TARGET_RESOLVE`
109
+ * algorithm.
110
+ *
111
+ * @see https://nodejs.org/api/esm.html#resolver-algorithm-specification
112
+ *
113
+ * @todo emit deprecation messages
114
+ *
115
+ * @public
116
+ *
117
+ * @param {ModuleId} dir - URL of directory containing relevant `package.json`
118
+ * @param {Exports | undefined} target - Package `exports` or `imports` target
119
+ * @param {string} subpath - Package subpath without entry prefix (`key`)
120
+ * @param {string} key - Subpath defined in relevant `package.json` file
121
+ * @param {ModuleId} parent - URL of module to resolve from
122
+ * @param {boolean?} [internal=false] - Package `imports` hint
123
+ * @param {string?} [condition='default'] - Export condition to apply
124
+ * @param {Set<string>?} [conditions=CONDITIONS] - Export conditions
125
+ * @return {Nullable<URL>} Resolved package target URL or `null`
126
+ * @throws {NodeError<Error | TypeError>}
127
+ */
128
+ resolvePackageTarget(dir: ModuleId, target: Exports | undefined, subpath: string, key: string, parent: ModuleId, internal?: boolean, condition?: string, conditions?: Set<string>): Nullable<URL>;
129
+ }
130
+ export default Resolver;