@noodleseed/one 0.5.0 → 0.6.0

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 (279) hide show
  1. package/dist/cli.js +5 -0
  2. package/dist/cli.js.map +1 -1
  3. package/dist/commands/shared.d.ts +1 -1
  4. package/dist/commands/shared.d.ts.map +1 -1
  5. package/dist/commands/shared.js +2 -2
  6. package/dist/commands/shared.js.map +1 -1
  7. package/dist/react-widget-build.js +20 -1
  8. package/dist/react-widget-build.js.map +1 -1
  9. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.d.ts.map +1 -1
  10. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js +1 -0
  11. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js.map +1 -1
  12. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.d.ts.map +1 -1
  13. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js +1 -0
  14. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js.map +1 -1
  15. package/node_modules/@noodle-borg/agent-kit/package.json +1 -1
  16. package/package.json +2 -20
  17. package/node_modules/@oxc-project/types/LICENSE +0 -22
  18. package/node_modules/@oxc-project/types/README.md +0 -3
  19. package/node_modules/@oxc-project/types/package.json +0 -26
  20. package/node_modules/@oxc-project/types/types.d.ts +0 -1912
  21. package/node_modules/@rolldown/binding-linux-x64-gnu/README.md +0 -3
  22. package/node_modules/@rolldown/binding-linux-x64-gnu/package.json +0 -40
  23. package/node_modules/@rolldown/binding-linux-x64-gnu/rolldown-binding.linux-x64-gnu.node +0 -0
  24. package/node_modules/@rolldown/pluginutils/LICENSE +0 -21
  25. package/node_modules/@rolldown/pluginutils/README.md +0 -145
  26. package/node_modules/@rolldown/pluginutils/dist/filter/index.d.mts +0 -194
  27. package/node_modules/@rolldown/pluginutils/dist/filter/index.mjs +0 -2
  28. package/node_modules/@rolldown/pluginutils/dist/filter-B_mD-HGz.mjs +0 -323
  29. package/node_modules/@rolldown/pluginutils/dist/index.d.mts +0 -2
  30. package/node_modules/@rolldown/pluginutils/dist/index.mjs +0 -2
  31. package/node_modules/@rolldown/pluginutils/package.json +0 -40
  32. package/node_modules/@vitejs/plugin-react/LICENSE +0 -21
  33. package/node_modules/@vitejs/plugin-react/README.md +0 -169
  34. package/node_modules/@vitejs/plugin-react/dist/index.d.ts +0 -48
  35. package/node_modules/@vitejs/plugin-react/dist/index.js +0 -200
  36. package/node_modules/@vitejs/plugin-react/dist/refresh-runtime.js +0 -663
  37. package/node_modules/@vitejs/plugin-react/package.json +0 -87
  38. package/node_modules/@vitejs/plugin-react/types/optionalTypes.d.ts +0 -12
  39. package/node_modules/@vitejs/plugin-react/types/preamble.d.ts +0 -1
  40. package/node_modules/detect-libc/LICENSE +0 -201
  41. package/node_modules/detect-libc/README.md +0 -163
  42. package/node_modules/detect-libc/index.d.ts +0 -14
  43. package/node_modules/detect-libc/lib/detect-libc.js +0 -313
  44. package/node_modules/detect-libc/lib/elf.js +0 -39
  45. package/node_modules/detect-libc/lib/filesystem.js +0 -51
  46. package/node_modules/detect-libc/lib/process.js +0 -24
  47. package/node_modules/detect-libc/package.json +0 -44
  48. package/node_modules/fdir/LICENSE +0 -7
  49. package/node_modules/fdir/README.md +0 -91
  50. package/node_modules/fdir/dist/index.cjs +0 -588
  51. package/node_modules/fdir/dist/index.d.cts +0 -155
  52. package/node_modules/fdir/dist/index.d.mts +0 -155
  53. package/node_modules/fdir/dist/index.mjs +0 -570
  54. package/node_modules/fdir/package.json +0 -103
  55. package/node_modules/lightningcss/LICENSE +0 -373
  56. package/node_modules/lightningcss/README.md +0 -105
  57. package/node_modules/lightningcss/node/ast.d.ts +0 -9892
  58. package/node_modules/lightningcss/node/ast.js.flow +0 -10539
  59. package/node_modules/lightningcss/node/browserslistToTargets.js +0 -48
  60. package/node_modules/lightningcss/node/composeVisitors.js +0 -450
  61. package/node_modules/lightningcss/node/flags.js +0 -28
  62. package/node_modules/lightningcss/node/index.d.ts +0 -494
  63. package/node_modules/lightningcss/node/index.js +0 -59
  64. package/node_modules/lightningcss/node/index.js.flow +0 -843
  65. package/node_modules/lightningcss/node/index.mjs +0 -4
  66. package/node_modules/lightningcss/node/targets.d.ts +0 -40
  67. package/node_modules/lightningcss/node/targets.js.flow +0 -39
  68. package/node_modules/lightningcss/package.json +0 -110
  69. package/node_modules/lightningcss-linux-x64-gnu/LICENSE +0 -373
  70. package/node_modules/lightningcss-linux-x64-gnu/README.md +0 -1
  71. package/node_modules/lightningcss-linux-x64-gnu/lightningcss.linux-x64-gnu.node +0 -0
  72. package/node_modules/lightningcss-linux-x64-gnu/package.json +0 -37
  73. package/node_modules/nanoid/.claude/settings.local.json +0 -14
  74. package/node_modules/nanoid/LICENSE +0 -20
  75. package/node_modules/nanoid/README.md +0 -39
  76. package/node_modules/nanoid/async/index.browser.cjs +0 -69
  77. package/node_modules/nanoid/async/index.browser.js +0 -34
  78. package/node_modules/nanoid/async/index.cjs +0 -71
  79. package/node_modules/nanoid/async/index.d.ts +0 -56
  80. package/node_modules/nanoid/async/index.js +0 -35
  81. package/node_modules/nanoid/async/index.native.js +0 -26
  82. package/node_modules/nanoid/async/package.json +0 -12
  83. package/node_modules/nanoid/bin/nanoid.cjs +0 -55
  84. package/node_modules/nanoid/index.browser.cjs +0 -72
  85. package/node_modules/nanoid/index.browser.js +0 -34
  86. package/node_modules/nanoid/index.cjs +0 -86
  87. package/node_modules/nanoid/index.d.cts +0 -91
  88. package/node_modules/nanoid/index.d.ts +0 -91
  89. package/node_modules/nanoid/index.js +0 -46
  90. package/node_modules/nanoid/nanoid.js +0 -1
  91. package/node_modules/nanoid/non-secure/index.cjs +0 -34
  92. package/node_modules/nanoid/non-secure/index.d.ts +0 -33
  93. package/node_modules/nanoid/non-secure/index.js +0 -21
  94. package/node_modules/nanoid/non-secure/package.json +0 -6
  95. package/node_modules/nanoid/package.json +0 -89
  96. package/node_modules/nanoid/url-alphabet/index.cjs +0 -7
  97. package/node_modules/nanoid/url-alphabet/index.js +0 -3
  98. package/node_modules/nanoid/url-alphabet/package.json +0 -6
  99. package/node_modules/picocolors/LICENSE +0 -15
  100. package/node_modules/picocolors/README.md +0 -21
  101. package/node_modules/picocolors/package.json +0 -25
  102. package/node_modules/picocolors/picocolors.browser.js +0 -4
  103. package/node_modules/picocolors/picocolors.d.ts +0 -5
  104. package/node_modules/picocolors/picocolors.js +0 -75
  105. package/node_modules/picocolors/types.d.ts +0 -51
  106. package/node_modules/picomatch/LICENSE +0 -21
  107. package/node_modules/picomatch/README.md +0 -749
  108. package/node_modules/picomatch/index.js +0 -17
  109. package/node_modules/picomatch/lib/constants.js +0 -184
  110. package/node_modules/picomatch/lib/parse.js +0 -1386
  111. package/node_modules/picomatch/lib/picomatch.js +0 -349
  112. package/node_modules/picomatch/lib/scan.js +0 -391
  113. package/node_modules/picomatch/lib/utils.js +0 -72
  114. package/node_modules/picomatch/package.json +0 -82
  115. package/node_modules/picomatch/posix.js +0 -3
  116. package/node_modules/postcss/LICENSE +0 -20
  117. package/node_modules/postcss/README.md +0 -28
  118. package/node_modules/postcss/lib/at-rule.d.ts +0 -139
  119. package/node_modules/postcss/lib/at-rule.js +0 -25
  120. package/node_modules/postcss/lib/comment.d.ts +0 -67
  121. package/node_modules/postcss/lib/comment.js +0 -13
  122. package/node_modules/postcss/lib/container.d.ts +0 -478
  123. package/node_modules/postcss/lib/container.js +0 -447
  124. package/node_modules/postcss/lib/css-syntax-error.d.ts +0 -247
  125. package/node_modules/postcss/lib/css-syntax-error.js +0 -133
  126. package/node_modules/postcss/lib/declaration.d.ts +0 -150
  127. package/node_modules/postcss/lib/declaration.js +0 -24
  128. package/node_modules/postcss/lib/document.d.ts +0 -68
  129. package/node_modules/postcss/lib/document.js +0 -33
  130. package/node_modules/postcss/lib/fromJSON.d.ts +0 -9
  131. package/node_modules/postcss/lib/fromJSON.js +0 -54
  132. package/node_modules/postcss/lib/input.d.ts +0 -226
  133. package/node_modules/postcss/lib/input.js +0 -273
  134. package/node_modules/postcss/lib/lazy-result.d.ts +0 -189
  135. package/node_modules/postcss/lib/lazy-result.js +0 -563
  136. package/node_modules/postcss/lib/list.d.ts +0 -60
  137. package/node_modules/postcss/lib/list.js +0 -58
  138. package/node_modules/postcss/lib/map-generator.js +0 -376
  139. package/node_modules/postcss/lib/no-work-result.d.ts +0 -45
  140. package/node_modules/postcss/lib/no-work-result.js +0 -137
  141. package/node_modules/postcss/lib/node.d.ts +0 -555
  142. package/node_modules/postcss/lib/node.js +0 -449
  143. package/node_modules/postcss/lib/parse.d.ts +0 -9
  144. package/node_modules/postcss/lib/parse.js +0 -42
  145. package/node_modules/postcss/lib/parser.js +0 -618
  146. package/node_modules/postcss/lib/postcss.d.mts +0 -66
  147. package/node_modules/postcss/lib/postcss.d.ts +0 -461
  148. package/node_modules/postcss/lib/postcss.js +0 -101
  149. package/node_modules/postcss/lib/postcss.mjs +0 -30
  150. package/node_modules/postcss/lib/previous-map.d.ts +0 -80
  151. package/node_modules/postcss/lib/previous-map.js +0 -161
  152. package/node_modules/postcss/lib/processor.d.ts +0 -114
  153. package/node_modules/postcss/lib/processor.js +0 -67
  154. package/node_modules/postcss/lib/result.d.ts +0 -204
  155. package/node_modules/postcss/lib/result.js +0 -42
  156. package/node_modules/postcss/lib/root.d.ts +0 -86
  157. package/node_modules/postcss/lib/root.js +0 -61
  158. package/node_modules/postcss/lib/rule.d.ts +0 -126
  159. package/node_modules/postcss/lib/rule.js +0 -27
  160. package/node_modules/postcss/lib/stringifier.d.ts +0 -45
  161. package/node_modules/postcss/lib/stringifier.js +0 -374
  162. package/node_modules/postcss/lib/stringify.d.ts +0 -9
  163. package/node_modules/postcss/lib/stringify.js +0 -11
  164. package/node_modules/postcss/lib/symbols.js +0 -5
  165. package/node_modules/postcss/lib/terminal-highlight.js +0 -70
  166. package/node_modules/postcss/lib/tokenize.js +0 -270
  167. package/node_modules/postcss/lib/warn-once.js +0 -13
  168. package/node_modules/postcss/lib/warning.d.ts +0 -146
  169. package/node_modules/postcss/lib/warning.js +0 -37
  170. package/node_modules/postcss/package.json +0 -88
  171. package/node_modules/rolldown/LICENSE +0 -25
  172. package/node_modules/rolldown/README.md +0 -11
  173. package/node_modules/rolldown/bin/cli.mjs +0 -2
  174. package/node_modules/rolldown/dist/cli.d.mts +0 -1
  175. package/node_modules/rolldown/dist/cli.mjs +0 -1202
  176. package/node_modules/rolldown/dist/config.d.mts +0 -14
  177. package/node_modules/rolldown/dist/config.mjs +0 -4
  178. package/node_modules/rolldown/dist/experimental-index.d.mts +0 -280
  179. package/node_modules/rolldown/dist/experimental-index.mjs +0 -330
  180. package/node_modules/rolldown/dist/experimental-runtime-types.d.ts +0 -107
  181. package/node_modules/rolldown/dist/filter-index.d.mts +0 -195
  182. package/node_modules/rolldown/dist/filter-index.mjs +0 -380
  183. package/node_modules/rolldown/dist/get-log-filter.d.mts +0 -3
  184. package/node_modules/rolldown/dist/get-log-filter.mjs +0 -68
  185. package/node_modules/rolldown/dist/index.d.mts +0 -4
  186. package/node_modules/rolldown/dist/index.mjs +0 -50
  187. package/node_modules/rolldown/dist/parallel-plugin-worker.d.mts +0 -1
  188. package/node_modules/rolldown/dist/parallel-plugin-worker.mjs +0 -28
  189. package/node_modules/rolldown/dist/parallel-plugin.d.mts +0 -13
  190. package/node_modules/rolldown/dist/parallel-plugin.mjs +0 -6
  191. package/node_modules/rolldown/dist/parse-ast-index.d.mts +0 -32
  192. package/node_modules/rolldown/dist/parse-ast-index.mjs +0 -60
  193. package/node_modules/rolldown/dist/plugins-index.d.mts +0 -33
  194. package/node_modules/rolldown/dist/plugins-index.mjs +0 -40
  195. package/node_modules/rolldown/dist/shared/binding-B1q9aYT-.d.mts +0 -1947
  196. package/node_modules/rolldown/dist/shared/binding-Dh6LYCIB.mjs +0 -589
  197. package/node_modules/rolldown/dist/shared/bindingify-input-options-CzVhGygm.mjs +0 -2240
  198. package/node_modules/rolldown/dist/shared/constructors-688OwP2q.mjs +0 -65
  199. package/node_modules/rolldown/dist/shared/constructors-awZ1VNvg.d.mts +0 -36
  200. package/node_modules/rolldown/dist/shared/define-config-Demdg3_4.mjs +0 -6
  201. package/node_modules/rolldown/dist/shared/define-config-sxBscJ3M.d.mts +0 -3901
  202. package/node_modules/rolldown/dist/shared/error-B68YLzl3.mjs +0 -85
  203. package/node_modules/rolldown/dist/shared/get-log-filter-BpNVNJ5-.d.mts +0 -35
  204. package/node_modules/rolldown/dist/shared/load-config-BvPPEM7l.mjs +0 -120
  205. package/node_modules/rolldown/dist/shared/logging-BSNejiLS.d.mts +0 -50
  206. package/node_modules/rolldown/dist/shared/logs-aMKUxRpj.mjs +0 -180
  207. package/node_modules/rolldown/dist/shared/misc-CoQm4NHO.mjs +0 -21
  208. package/node_modules/rolldown/dist/shared/normalize-string-or-regex-BpXHYeN4.mjs +0 -68
  209. package/node_modules/rolldown/dist/shared/parse-CTgsjpo8.mjs +0 -74
  210. package/node_modules/rolldown/dist/shared/prompt-B1Yc1NPt.mjs +0 -847
  211. package/node_modules/rolldown/dist/shared/resolve-tsconfig-BkhP9bkX.mjs +0 -124
  212. package/node_modules/rolldown/dist/shared/rolldown-Brph2NSU.mjs +0 -40
  213. package/node_modules/rolldown/dist/shared/rolldown-build-DR0wzp0V.mjs +0 -3264
  214. package/node_modules/rolldown/dist/shared/transform-CEmFsvJW.d.mts +0 -149
  215. package/node_modules/rolldown/dist/shared/watch-FrHSqg24.mjs +0 -374
  216. package/node_modules/rolldown/dist/utils-index.d.mts +0 -376
  217. package/node_modules/rolldown/dist/utils-index.mjs +0 -2414
  218. package/node_modules/rolldown/package.json +0 -153
  219. package/node_modules/source-map-js/LICENSE +0 -28
  220. package/node_modules/source-map-js/README.md +0 -765
  221. package/node_modules/source-map-js/lib/array-set.js +0 -121
  222. package/node_modules/source-map-js/lib/base64-vlq.js +0 -140
  223. package/node_modules/source-map-js/lib/base64.js +0 -67
  224. package/node_modules/source-map-js/lib/binary-search.js +0 -111
  225. package/node_modules/source-map-js/lib/mapping-list.js +0 -79
  226. package/node_modules/source-map-js/lib/quick-sort.js +0 -132
  227. package/node_modules/source-map-js/lib/source-map-consumer.d.ts +0 -1
  228. package/node_modules/source-map-js/lib/source-map-consumer.js +0 -1188
  229. package/node_modules/source-map-js/lib/source-map-generator.d.ts +0 -1
  230. package/node_modules/source-map-js/lib/source-map-generator.js +0 -444
  231. package/node_modules/source-map-js/lib/source-node.d.ts +0 -1
  232. package/node_modules/source-map-js/lib/source-node.js +0 -413
  233. package/node_modules/source-map-js/lib/util.js +0 -594
  234. package/node_modules/source-map-js/package.json +0 -71
  235. package/node_modules/source-map-js/source-map.d.ts +0 -104
  236. package/node_modules/source-map-js/source-map.js +0 -8
  237. package/node_modules/tinyglobby/LICENSE +0 -21
  238. package/node_modules/tinyglobby/README.md +0 -25
  239. package/node_modules/tinyglobby/dist/index.cjs +0 -335
  240. package/node_modules/tinyglobby/dist/index.d.cts +0 -148
  241. package/node_modules/tinyglobby/dist/index.d.mts +0 -148
  242. package/node_modules/tinyglobby/dist/index.mjs +0 -307
  243. package/node_modules/tinyglobby/package.json +0 -70
  244. package/node_modules/vite/LICENSE.md +0 -2287
  245. package/node_modules/vite/README.md +0 -20
  246. package/node_modules/vite/bin/openChrome.js +0 -68
  247. package/node_modules/vite/bin/vite.js +0 -79
  248. package/node_modules/vite/client.d.ts +0 -285
  249. package/node_modules/vite/dist/client/client.mjs +0 -1269
  250. package/node_modules/vite/dist/client/env.mjs +0 -18
  251. package/node_modules/vite/dist/node/chunks/build.js +0 -5371
  252. package/node_modules/vite/dist/node/chunks/dist.js +0 -6784
  253. package/node_modules/vite/dist/node/chunks/lib.js +0 -371
  254. package/node_modules/vite/dist/node/chunks/logger.js +0 -364
  255. package/node_modules/vite/dist/node/chunks/moduleRunnerTransport.d.ts +0 -96
  256. package/node_modules/vite/dist/node/chunks/node.js +0 -35770
  257. package/node_modules/vite/dist/node/chunks/postcss-import.js +0 -467
  258. package/node_modules/vite/dist/node/cli.js +0 -836
  259. package/node_modules/vite/dist/node/index.d.ts +0 -4010
  260. package/node_modules/vite/dist/node/index.js +0 -3
  261. package/node_modules/vite/dist/node/internal.d.ts +0 -2
  262. package/node_modules/vite/dist/node/internal.js +0 -2
  263. package/node_modules/vite/dist/node/module-runner.d.ts +0 -314
  264. package/node_modules/vite/dist/node/module-runner.js +0 -1274
  265. package/node_modules/vite/misc/false.js +0 -1
  266. package/node_modules/vite/misc/true.js +0 -1
  267. package/node_modules/vite/package.json +0 -194
  268. package/node_modules/vite/types/customEvent.d.ts +0 -79
  269. package/node_modules/vite/types/hmrPayload.d.ts +0 -80
  270. package/node_modules/vite/types/hot.d.ts +0 -39
  271. package/node_modules/vite/types/import-meta.d.ts +0 -5
  272. package/node_modules/vite/types/importGlob.d.ts +0 -131
  273. package/node_modules/vite/types/importMeta.d.ts +0 -30
  274. package/node_modules/vite/types/internal/cssPreprocessorOptions.d.ts +0 -44
  275. package/node_modules/vite/types/internal/esbuildOptions.d.ts +0 -28
  276. package/node_modules/vite/types/internal/lightningcssOptions.d.ts +0 -18
  277. package/node_modules/vite/types/internal/rollupTypeCompat.d.ts +0 -24
  278. package/node_modules/vite/types/internal/terserOptions.d.ts +0 -11
  279. package/node_modules/vite/types/metadata.d.ts +0 -47
@@ -1,588 +0,0 @@
1
- //#region rolldown:runtime
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __copyProps = (to, from, except, desc) => {
9
- if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
10
- key = keys[i];
11
- if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
12
- get: ((k) => from[k]).bind(null, key),
13
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
14
- });
15
- }
16
- return to;
17
- };
18
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
19
- value: mod,
20
- enumerable: true
21
- }) : target, mod));
22
-
23
- //#endregion
24
- const path = __toESM(require("path"));
25
- const fs = __toESM(require("fs"));
26
-
27
- //#region src/utils.ts
28
- function cleanPath(path$1) {
29
- let normalized = (0, path.normalize)(path$1);
30
- if (normalized.length > 1 && normalized[normalized.length - 1] === path.sep) normalized = normalized.substring(0, normalized.length - 1);
31
- return normalized;
32
- }
33
- const SLASHES_REGEX = /[\\/]/g;
34
- function convertSlashes(path$1, separator) {
35
- return path$1.replace(SLASHES_REGEX, separator);
36
- }
37
- const WINDOWS_ROOT_DIR_REGEX = /^[a-z]:[\\/]$/i;
38
- function isRootDirectory(path$1) {
39
- return path$1 === "/" || WINDOWS_ROOT_DIR_REGEX.test(path$1);
40
- }
41
- function normalizePath(path$1, options) {
42
- const { resolvePaths, normalizePath: normalizePath$1, pathSeparator } = options;
43
- const pathNeedsCleaning = process.platform === "win32" && path$1.includes("/") || path$1.startsWith(".");
44
- if (resolvePaths) path$1 = (0, path.resolve)(path$1);
45
- if (normalizePath$1 || pathNeedsCleaning) path$1 = cleanPath(path$1);
46
- if (path$1 === ".") return "";
47
- const needsSeperator = path$1[path$1.length - 1] !== pathSeparator;
48
- return convertSlashes(needsSeperator ? path$1 + pathSeparator : path$1, pathSeparator);
49
- }
50
-
51
- //#endregion
52
- //#region src/api/functions/join-path.ts
53
- function joinPathWithBasePath(filename, directoryPath) {
54
- return directoryPath + filename;
55
- }
56
- function joinPathWithRelativePath(root, options) {
57
- return function(filename, directoryPath) {
58
- const sameRoot = directoryPath.startsWith(root);
59
- if (sameRoot) return directoryPath.slice(root.length) + filename;
60
- else return convertSlashes((0, path.relative)(root, directoryPath), options.pathSeparator) + options.pathSeparator + filename;
61
- };
62
- }
63
- function joinPath(filename) {
64
- return filename;
65
- }
66
- function joinDirectoryPath(filename, directoryPath, separator) {
67
- return directoryPath + filename + separator;
68
- }
69
- function build$7(root, options) {
70
- const { relativePaths, includeBasePath } = options;
71
- return relativePaths && root ? joinPathWithRelativePath(root, options) : includeBasePath ? joinPathWithBasePath : joinPath;
72
- }
73
-
74
- //#endregion
75
- //#region src/api/functions/push-directory.ts
76
- function pushDirectoryWithRelativePath(root) {
77
- return function(directoryPath, paths) {
78
- paths.push(directoryPath.substring(root.length) || ".");
79
- };
80
- }
81
- function pushDirectoryFilterWithRelativePath(root) {
82
- return function(directoryPath, paths, filters) {
83
- const relativePath = directoryPath.substring(root.length) || ".";
84
- if (filters.every((filter) => filter(relativePath, true))) paths.push(relativePath);
85
- };
86
- }
87
- const pushDirectory = (directoryPath, paths) => {
88
- paths.push(directoryPath || ".");
89
- };
90
- const pushDirectoryFilter = (directoryPath, paths, filters) => {
91
- const path$1 = directoryPath || ".";
92
- if (filters.every((filter) => filter(path$1, true))) paths.push(path$1);
93
- };
94
- const empty$2 = () => {};
95
- function build$6(root, options) {
96
- const { includeDirs, filters, relativePaths } = options;
97
- if (!includeDirs) return empty$2;
98
- if (relativePaths) return filters && filters.length ? pushDirectoryFilterWithRelativePath(root) : pushDirectoryWithRelativePath(root);
99
- return filters && filters.length ? pushDirectoryFilter : pushDirectory;
100
- }
101
-
102
- //#endregion
103
- //#region src/api/functions/push-file.ts
104
- const pushFileFilterAndCount = (filename, _paths, counts, filters) => {
105
- if (filters.every((filter) => filter(filename, false))) counts.files++;
106
- };
107
- const pushFileFilter = (filename, paths, _counts, filters) => {
108
- if (filters.every((filter) => filter(filename, false))) paths.push(filename);
109
- };
110
- const pushFileCount = (_filename, _paths, counts, _filters) => {
111
- counts.files++;
112
- };
113
- const pushFile = (filename, paths) => {
114
- paths.push(filename);
115
- };
116
- const empty$1 = () => {};
117
- function build$5(options) {
118
- const { excludeFiles, filters, onlyCounts } = options;
119
- if (excludeFiles) return empty$1;
120
- if (filters && filters.length) return onlyCounts ? pushFileFilterAndCount : pushFileFilter;
121
- else if (onlyCounts) return pushFileCount;
122
- else return pushFile;
123
- }
124
-
125
- //#endregion
126
- //#region src/api/functions/get-array.ts
127
- const getArray = (paths) => {
128
- return paths;
129
- };
130
- const getArrayGroup = () => {
131
- return [""].slice(0, 0);
132
- };
133
- function build$4(options) {
134
- return options.group ? getArrayGroup : getArray;
135
- }
136
-
137
- //#endregion
138
- //#region src/api/functions/group-files.ts
139
- const groupFiles = (groups, directory, files) => {
140
- groups.push({
141
- directory,
142
- files,
143
- dir: directory
144
- });
145
- };
146
- const empty = () => {};
147
- function build$3(options) {
148
- return options.group ? groupFiles : empty;
149
- }
150
-
151
- //#endregion
152
- //#region src/api/functions/resolve-symlink.ts
153
- const resolveSymlinksAsync = function(path$1, state, callback$1) {
154
- const { queue, fs: fs$1, options: { suppressErrors } } = state;
155
- queue.enqueue();
156
- fs$1.realpath(path$1, (error, resolvedPath) => {
157
- if (error) return queue.dequeue(suppressErrors ? null : error, state);
158
- fs$1.stat(resolvedPath, (error$1, stat) => {
159
- if (error$1) return queue.dequeue(suppressErrors ? null : error$1, state);
160
- if (stat.isDirectory() && isRecursive(path$1, resolvedPath, state)) return queue.dequeue(null, state);
161
- callback$1(stat, resolvedPath);
162
- queue.dequeue(null, state);
163
- });
164
- });
165
- };
166
- const resolveSymlinks = function(path$1, state, callback$1) {
167
- const { queue, fs: fs$1, options: { suppressErrors } } = state;
168
- queue.enqueue();
169
- try {
170
- const resolvedPath = fs$1.realpathSync(path$1);
171
- const stat = fs$1.statSync(resolvedPath);
172
- if (stat.isDirectory() && isRecursive(path$1, resolvedPath, state)) return;
173
- callback$1(stat, resolvedPath);
174
- } catch (e) {
175
- if (!suppressErrors) throw e;
176
- }
177
- };
178
- function build$2(options, isSynchronous) {
179
- if (!options.resolveSymlinks || options.excludeSymlinks) return null;
180
- return isSynchronous ? resolveSymlinks : resolveSymlinksAsync;
181
- }
182
- function isRecursive(path$1, resolved, state) {
183
- if (state.options.useRealPaths) return isRecursiveUsingRealPaths(resolved, state);
184
- let parent = (0, path.dirname)(path$1);
185
- let depth = 1;
186
- while (parent !== state.root && depth < 2) {
187
- const resolvedPath = state.symlinks.get(parent);
188
- const isSameRoot = !!resolvedPath && (resolvedPath === resolved || resolvedPath.startsWith(resolved) || resolved.startsWith(resolvedPath));
189
- if (isSameRoot) depth++;
190
- else parent = (0, path.dirname)(parent);
191
- }
192
- state.symlinks.set(path$1, resolved);
193
- return depth > 1;
194
- }
195
- function isRecursiveUsingRealPaths(resolved, state) {
196
- return state.visited.includes(resolved + state.options.pathSeparator);
197
- }
198
-
199
- //#endregion
200
- //#region src/api/functions/invoke-callback.ts
201
- const onlyCountsSync = (state) => {
202
- return state.counts;
203
- };
204
- const groupsSync = (state) => {
205
- return state.groups;
206
- };
207
- const defaultSync = (state) => {
208
- return state.paths;
209
- };
210
- const limitFilesSync = (state) => {
211
- return state.paths.slice(0, state.options.maxFiles);
212
- };
213
- const onlyCountsAsync = (state, error, callback$1) => {
214
- report(error, callback$1, state.counts, state.options.suppressErrors);
215
- return null;
216
- };
217
- const defaultAsync = (state, error, callback$1) => {
218
- report(error, callback$1, state.paths, state.options.suppressErrors);
219
- return null;
220
- };
221
- const limitFilesAsync = (state, error, callback$1) => {
222
- report(error, callback$1, state.paths.slice(0, state.options.maxFiles), state.options.suppressErrors);
223
- return null;
224
- };
225
- const groupsAsync = (state, error, callback$1) => {
226
- report(error, callback$1, state.groups, state.options.suppressErrors);
227
- return null;
228
- };
229
- function report(error, callback$1, output, suppressErrors) {
230
- if (error && !suppressErrors) callback$1(error, output);
231
- else callback$1(null, output);
232
- }
233
- function build$1(options, isSynchronous) {
234
- const { onlyCounts, group, maxFiles } = options;
235
- if (onlyCounts) return isSynchronous ? onlyCountsSync : onlyCountsAsync;
236
- else if (group) return isSynchronous ? groupsSync : groupsAsync;
237
- else if (maxFiles) return isSynchronous ? limitFilesSync : limitFilesAsync;
238
- else return isSynchronous ? defaultSync : defaultAsync;
239
- }
240
-
241
- //#endregion
242
- //#region src/api/functions/walk-directory.ts
243
- const readdirOpts = { withFileTypes: true };
244
- const walkAsync = (state, crawlPath, directoryPath, currentDepth, callback$1) => {
245
- state.queue.enqueue();
246
- if (currentDepth < 0) return state.queue.dequeue(null, state);
247
- const { fs: fs$1 } = state;
248
- state.visited.push(crawlPath);
249
- state.counts.directories++;
250
- fs$1.readdir(crawlPath || ".", readdirOpts, (error, entries = []) => {
251
- callback$1(entries, directoryPath, currentDepth);
252
- state.queue.dequeue(state.options.suppressErrors ? null : error, state);
253
- });
254
- };
255
- const walkSync = (state, crawlPath, directoryPath, currentDepth, callback$1) => {
256
- const { fs: fs$1 } = state;
257
- if (currentDepth < 0) return;
258
- state.visited.push(crawlPath);
259
- state.counts.directories++;
260
- let entries = [];
261
- try {
262
- entries = fs$1.readdirSync(crawlPath || ".", readdirOpts);
263
- } catch (e) {
264
- if (!state.options.suppressErrors) throw e;
265
- }
266
- callback$1(entries, directoryPath, currentDepth);
267
- };
268
- function build(isSynchronous) {
269
- return isSynchronous ? walkSync : walkAsync;
270
- }
271
-
272
- //#endregion
273
- //#region src/api/queue.ts
274
- /**
275
- * This is a custom stateless queue to track concurrent async fs calls.
276
- * It increments a counter whenever a call is queued and decrements it
277
- * as soon as it completes. When the counter hits 0, it calls onQueueEmpty.
278
- */
279
- var Queue = class {
280
- count = 0;
281
- constructor(onQueueEmpty) {
282
- this.onQueueEmpty = onQueueEmpty;
283
- }
284
- enqueue() {
285
- this.count++;
286
- return this.count;
287
- }
288
- dequeue(error, output) {
289
- if (this.onQueueEmpty && (--this.count <= 0 || error)) {
290
- this.onQueueEmpty(error, output);
291
- if (error) {
292
- output.controller.abort();
293
- this.onQueueEmpty = void 0;
294
- }
295
- }
296
- }
297
- };
298
-
299
- //#endregion
300
- //#region src/api/counter.ts
301
- var Counter = class {
302
- _files = 0;
303
- _directories = 0;
304
- set files(num) {
305
- this._files = num;
306
- }
307
- get files() {
308
- return this._files;
309
- }
310
- set directories(num) {
311
- this._directories = num;
312
- }
313
- get directories() {
314
- return this._directories;
315
- }
316
- /**
317
- * @deprecated use `directories` instead
318
- */
319
- /* c8 ignore next 3 */
320
- get dirs() {
321
- return this._directories;
322
- }
323
- };
324
-
325
- //#endregion
326
- //#region src/api/aborter.ts
327
- /**
328
- * AbortController is not supported on Node 14 so we use this until we can drop
329
- * support for Node 14.
330
- */
331
- var Aborter = class {
332
- aborted = false;
333
- abort() {
334
- this.aborted = true;
335
- }
336
- };
337
-
338
- //#endregion
339
- //#region src/api/walker.ts
340
- var Walker = class {
341
- root;
342
- isSynchronous;
343
- state;
344
- joinPath;
345
- pushDirectory;
346
- pushFile;
347
- getArray;
348
- groupFiles;
349
- resolveSymlink;
350
- walkDirectory;
351
- callbackInvoker;
352
- constructor(root, options, callback$1) {
353
- this.isSynchronous = !callback$1;
354
- this.callbackInvoker = build$1(options, this.isSynchronous);
355
- this.root = normalizePath(root, options);
356
- this.state = {
357
- root: isRootDirectory(this.root) ? this.root : this.root.slice(0, -1),
358
- paths: [""].slice(0, 0),
359
- groups: [],
360
- counts: new Counter(),
361
- options,
362
- queue: new Queue((error, state) => this.callbackInvoker(state, error, callback$1)),
363
- symlinks: /* @__PURE__ */ new Map(),
364
- visited: [""].slice(0, 0),
365
- controller: new Aborter(),
366
- fs: options.fs || fs
367
- };
368
- this.joinPath = build$7(this.root, options);
369
- this.pushDirectory = build$6(this.root, options);
370
- this.pushFile = build$5(options);
371
- this.getArray = build$4(options);
372
- this.groupFiles = build$3(options);
373
- this.resolveSymlink = build$2(options, this.isSynchronous);
374
- this.walkDirectory = build(this.isSynchronous);
375
- }
376
- start() {
377
- this.pushDirectory(this.root, this.state.paths, this.state.options.filters);
378
- this.walkDirectory(this.state, this.root, this.root, this.state.options.maxDepth, this.walk);
379
- return this.isSynchronous ? this.callbackInvoker(this.state, null) : null;
380
- }
381
- walk = (entries, directoryPath, depth) => {
382
- const { paths, options: { filters, resolveSymlinks: resolveSymlinks$1, excludeSymlinks, exclude, maxFiles, signal, useRealPaths, pathSeparator }, controller } = this.state;
383
- if (controller.aborted || signal && signal.aborted || maxFiles && paths.length > maxFiles) return;
384
- const files = this.getArray(this.state.paths);
385
- for (let i = 0; i < entries.length; ++i) {
386
- const entry = entries[i];
387
- if (entry.isFile() || entry.isSymbolicLink() && !resolveSymlinks$1 && !excludeSymlinks) {
388
- const filename = this.joinPath(entry.name, directoryPath);
389
- this.pushFile(filename, files, this.state.counts, filters);
390
- } else if (entry.isDirectory()) {
391
- let path$1 = joinDirectoryPath(entry.name, directoryPath, this.state.options.pathSeparator);
392
- if (exclude && exclude(entry.name, path$1)) continue;
393
- this.pushDirectory(path$1, paths, filters);
394
- this.walkDirectory(this.state, path$1, path$1, depth - 1, this.walk);
395
- } else if (this.resolveSymlink && entry.isSymbolicLink()) {
396
- let path$1 = joinPathWithBasePath(entry.name, directoryPath);
397
- this.resolveSymlink(path$1, this.state, (stat, resolvedPath) => {
398
- if (stat.isDirectory()) {
399
- resolvedPath = normalizePath(resolvedPath, this.state.options);
400
- if (exclude && exclude(entry.name, useRealPaths ? resolvedPath : path$1 + pathSeparator)) return;
401
- this.walkDirectory(this.state, resolvedPath, useRealPaths ? resolvedPath : path$1 + pathSeparator, depth - 1, this.walk);
402
- } else {
403
- resolvedPath = useRealPaths ? resolvedPath : path$1;
404
- const filename = (0, path.basename)(resolvedPath);
405
- const directoryPath$1 = normalizePath((0, path.dirname)(resolvedPath), this.state.options);
406
- resolvedPath = this.joinPath(filename, directoryPath$1);
407
- this.pushFile(resolvedPath, files, this.state.counts, filters);
408
- }
409
- });
410
- }
411
- }
412
- this.groupFiles(this.state.groups, directoryPath, files);
413
- };
414
- };
415
-
416
- //#endregion
417
- //#region src/api/async.ts
418
- function promise(root, options) {
419
- return new Promise((resolve$1, reject) => {
420
- callback(root, options, (err, output) => {
421
- if (err) return reject(err);
422
- resolve$1(output);
423
- });
424
- });
425
- }
426
- function callback(root, options, callback$1) {
427
- let walker = new Walker(root, options, callback$1);
428
- walker.start();
429
- }
430
-
431
- //#endregion
432
- //#region src/api/sync.ts
433
- function sync(root, options) {
434
- const walker = new Walker(root, options);
435
- return walker.start();
436
- }
437
-
438
- //#endregion
439
- //#region src/builder/api-builder.ts
440
- var APIBuilder = class {
441
- constructor(root, options) {
442
- this.root = root;
443
- this.options = options;
444
- }
445
- withPromise() {
446
- return promise(this.root, this.options);
447
- }
448
- withCallback(cb) {
449
- callback(this.root, this.options, cb);
450
- }
451
- sync() {
452
- return sync(this.root, this.options);
453
- }
454
- };
455
-
456
- //#endregion
457
- //#region src/builder/index.ts
458
- let pm = null;
459
- /* c8 ignore next 6 */
460
- try {
461
- require.resolve("picomatch");
462
- pm = require("picomatch");
463
- } catch {}
464
- var Builder = class {
465
- globCache = {};
466
- options = {
467
- maxDepth: Infinity,
468
- suppressErrors: true,
469
- pathSeparator: path.sep,
470
- filters: []
471
- };
472
- globFunction;
473
- constructor(options) {
474
- this.options = {
475
- ...this.options,
476
- ...options
477
- };
478
- this.globFunction = this.options.globFunction;
479
- }
480
- group() {
481
- this.options.group = true;
482
- return this;
483
- }
484
- withPathSeparator(separator) {
485
- this.options.pathSeparator = separator;
486
- return this;
487
- }
488
- withBasePath() {
489
- this.options.includeBasePath = true;
490
- return this;
491
- }
492
- withRelativePaths() {
493
- this.options.relativePaths = true;
494
- return this;
495
- }
496
- withDirs() {
497
- this.options.includeDirs = true;
498
- return this;
499
- }
500
- withMaxDepth(depth) {
501
- this.options.maxDepth = depth;
502
- return this;
503
- }
504
- withMaxFiles(limit) {
505
- this.options.maxFiles = limit;
506
- return this;
507
- }
508
- withFullPaths() {
509
- this.options.resolvePaths = true;
510
- this.options.includeBasePath = true;
511
- return this;
512
- }
513
- withErrors() {
514
- this.options.suppressErrors = false;
515
- return this;
516
- }
517
- withSymlinks({ resolvePaths = true } = {}) {
518
- this.options.resolveSymlinks = true;
519
- this.options.useRealPaths = resolvePaths;
520
- return this.withFullPaths();
521
- }
522
- withAbortSignal(signal) {
523
- this.options.signal = signal;
524
- return this;
525
- }
526
- normalize() {
527
- this.options.normalizePath = true;
528
- return this;
529
- }
530
- filter(predicate) {
531
- this.options.filters.push(predicate);
532
- return this;
533
- }
534
- onlyDirs() {
535
- this.options.excludeFiles = true;
536
- this.options.includeDirs = true;
537
- return this;
538
- }
539
- exclude(predicate) {
540
- this.options.exclude = predicate;
541
- return this;
542
- }
543
- onlyCounts() {
544
- this.options.onlyCounts = true;
545
- return this;
546
- }
547
- crawl(root) {
548
- return new APIBuilder(root || ".", this.options);
549
- }
550
- withGlobFunction(fn) {
551
- this.globFunction = fn;
552
- return this;
553
- }
554
- /**
555
- * @deprecated Pass options using the constructor instead:
556
- * ```ts
557
- * new fdir(options).crawl("/path/to/root");
558
- * ```
559
- * This method will be removed in v7.0
560
- */
561
- /* c8 ignore next 4 */
562
- crawlWithOptions(root, options) {
563
- this.options = {
564
- ...this.options,
565
- ...options
566
- };
567
- return new APIBuilder(root || ".", this.options);
568
- }
569
- glob(...patterns) {
570
- if (this.globFunction) return this.globWithOptions(patterns);
571
- return this.globWithOptions(patterns, ...[{ dot: true }]);
572
- }
573
- globWithOptions(patterns, ...options) {
574
- const globFn = this.globFunction || pm;
575
- /* c8 ignore next 5 */
576
- if (!globFn) throw new Error("Please specify a glob function to use glob matching.");
577
- var isMatch = this.globCache[patterns.join("\0")];
578
- if (!isMatch) {
579
- isMatch = globFn(patterns, ...options);
580
- this.globCache[patterns.join("\0")] = isMatch;
581
- }
582
- this.options.filters.push((path$1) => isMatch(path$1));
583
- return this;
584
- }
585
- };
586
-
587
- //#endregion
588
- exports.fdir = Builder;