nitro 2.2.28 → 3.0.0-alpha.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 (306) hide show
  1. package/LICENSE +2 -2
  2. package/README.md +11 -259
  3. package/dist/_chunks/app.mjs +19797 -0
  4. package/dist/_chunks/build.mjs +84 -0
  5. package/dist/_chunks/build2.mjs +318 -0
  6. package/dist/_chunks/build3.mjs +6452 -0
  7. package/dist/_chunks/detect-acorn.mjs +503 -0
  8. package/dist/_chunks/index.mjs +22242 -0
  9. package/dist/_chunks/index2.mjs +297 -0
  10. package/dist/_chunks/index3.mjs +1058 -0
  11. package/dist/_chunks/index4.mjs +1206 -0
  12. package/dist/_chunks/info.mjs +11157 -0
  13. package/dist/_chunks/json5.mjs +68 -0
  14. package/dist/_chunks/jsonc.mjs +51 -0
  15. package/dist/_chunks/pathe.M-eThtNZ.mjs +204 -0
  16. package/dist/_chunks/plugin.mjs +960 -0
  17. package/dist/_chunks/server.mjs +254 -0
  18. package/dist/_chunks/snapshot.mjs +284 -0
  19. package/dist/_chunks/toml.mjs +259 -0
  20. package/dist/_chunks/yaml.mjs +86 -0
  21. package/dist/cli/build.mjs +54 -0
  22. package/dist/cli/common.mjs +13 -0
  23. package/dist/cli/dev.mjs +95 -0
  24. package/dist/cli/index.d.mts +1 -0
  25. package/dist/cli/index.mjs +477 -0
  26. package/dist/cli/index2.mjs +17 -0
  27. package/dist/cli/list.mjs +34 -0
  28. package/dist/cli/prepare.mjs +24 -0
  29. package/dist/cli/run.mjs +60 -0
  30. package/dist/index.d.mts +52 -0
  31. package/dist/index.mjs +55 -0
  32. package/dist/node_modules/@poppinss/colors/build/index.js +169 -0
  33. package/dist/node_modules/@poppinss/colors/package.json +116 -0
  34. package/dist/node_modules/@poppinss/dumper/build/chunk-26HALFTP.js +602 -0
  35. package/dist/node_modules/@poppinss/dumper/build/formatters/console/main.js +441 -0
  36. package/dist/node_modules/@poppinss/dumper/build/formatters/html/main.js +717 -0
  37. package/dist/node_modules/@poppinss/dumper/package.json +122 -0
  38. package/dist/node_modules/@poppinss/exception/build/index.js +63 -0
  39. package/dist/node_modules/@poppinss/exception/package.json +106 -0
  40. package/dist/node_modules/@sindresorhus/is/distribution/index.js +1313 -0
  41. package/dist/node_modules/@sindresorhus/is/distribution/utilities.js +3 -0
  42. package/dist/node_modules/@sindresorhus/is/package.json +81 -0
  43. package/dist/node_modules/@speed-highlight/core/dist/index.js +4 -0
  44. package/dist/node_modules/@speed-highlight/core/dist/terminal.js +2 -0
  45. package/dist/node_modules/@speed-highlight/core/package.json +90 -0
  46. package/dist/node_modules/cookie/dist/index.js +239 -0
  47. package/dist/node_modules/cookie/package.json +42 -0
  48. package/dist/node_modules/croner/dist/croner.js +1 -0
  49. package/dist/node_modules/croner/package.json +63 -0
  50. package/dist/node_modules/defu/dist/defu.mjs +69 -0
  51. package/dist/node_modules/defu/package.json +43 -0
  52. package/dist/node_modules/destr/dist/index.mjs +72 -0
  53. package/dist/node_modules/destr/package.json +47 -0
  54. package/dist/node_modules/error-stack-parser-es/dist/index.mjs +38 -0
  55. package/dist/node_modules/error-stack-parser-es/dist/lite.mjs +167 -0
  56. package/dist/node_modules/error-stack-parser-es/package.json +83 -0
  57. package/dist/node_modules/get-port-please/dist/index.mjs +430 -0
  58. package/dist/node_modules/get-port-please/package.json +39 -0
  59. package/dist/node_modules/hookable/dist/index.mjs +290 -0
  60. package/dist/node_modules/hookable/package.json +49 -0
  61. package/dist/node_modules/kleur/index.js +110 -0
  62. package/dist/node_modules/kleur/index.mjs +110 -0
  63. package/dist/node_modules/kleur/package.json +51 -0
  64. package/dist/node_modules/klona/dist/index.mjs +81 -0
  65. package/dist/node_modules/klona/full/index.mjs +53 -0
  66. package/dist/node_modules/klona/package.json +74 -0
  67. package/dist/node_modules/scule/dist/index.mjs +80 -0
  68. package/dist/node_modules/scule/package.json +43 -0
  69. package/dist/node_modules/source-map/lib/array-set.js +100 -0
  70. package/dist/node_modules/source-map/lib/base64-vlq.js +94 -0
  71. package/dist/node_modules/source-map/lib/base64.js +19 -0
  72. package/dist/node_modules/source-map/lib/binary-search.js +113 -0
  73. package/dist/node_modules/source-map/lib/mapping-list.js +83 -0
  74. package/dist/node_modules/source-map/lib/mappings.wasm +0 -0
  75. package/dist/node_modules/source-map/lib/read-wasm.js +27 -0
  76. package/dist/node_modules/source-map/lib/source-map-consumer.js +1081 -0
  77. package/dist/node_modules/source-map/lib/source-map-generator.js +439 -0
  78. package/dist/node_modules/source-map/lib/source-node.js +430 -0
  79. package/dist/node_modules/source-map/lib/url.js +13 -0
  80. package/dist/node_modules/source-map/lib/util.js +444 -0
  81. package/dist/node_modules/source-map/lib/wasm.js +138 -0
  82. package/dist/node_modules/source-map/package.json +79 -0
  83. package/dist/node_modules/source-map/source-map.js +10 -0
  84. package/dist/node_modules/std-env/dist/index.mjs +1 -0
  85. package/dist/node_modules/std-env/package.json +46 -0
  86. package/dist/node_modules/supports-color/index.js +202 -0
  87. package/dist/node_modules/supports-color/package.json +64 -0
  88. package/dist/node_modules/ufo/dist/index.mjs +638 -0
  89. package/dist/node_modules/ufo/package.json +47 -0
  90. package/dist/node_modules/unctx/dist/index.mjs +131 -0
  91. package/dist/node_modules/unctx/package.json +67 -0
  92. package/dist/node_modules/youch/build/chunk-4L7RY2JA.js +42 -0
  93. package/dist/node_modules/youch/build/chunk-4XB2BYKC.js +85 -0
  94. package/dist/node_modules/youch/build/chunk-4YEN7HVQ.js +61 -0
  95. package/dist/node_modules/youch/build/chunk-EUJBVOYB.js +83 -0
  96. package/dist/node_modules/youch/build/chunk-HFSXRSKS.js +85 -0
  97. package/dist/node_modules/youch/build/chunk-JAN2TFI2.js +222 -0
  98. package/dist/node_modules/youch/build/chunk-OSUFJZHZ.js +6 -0
  99. package/dist/node_modules/youch/build/chunk-PINJDICN.js +72 -0
  100. package/dist/node_modules/youch/build/chunk-PUHGL6HA.js +41 -0
  101. package/dist/node_modules/youch/build/chunk-VE4LENUR.js +45 -0
  102. package/dist/node_modules/youch/build/index.js +352 -0
  103. package/dist/node_modules/youch/build/public/error_cause/style.css +5 -0
  104. package/dist/node_modules/youch/build/public/error_info/script.js +13 -0
  105. package/dist/node_modules/youch/build/public/error_info/style.css +144 -0
  106. package/dist/node_modules/youch/build/public/error_stack/script.js +74 -0
  107. package/dist/node_modules/youch/build/public/error_stack/style.css +220 -0
  108. package/dist/node_modules/youch/build/public/error_stack_source/style.css +123 -0
  109. package/dist/node_modules/youch/build/public/header/script.js +16 -0
  110. package/dist/node_modules/youch/build/public/header/style.css +56 -0
  111. package/dist/node_modules/youch/build/public/layout/script.js +20 -0
  112. package/dist/node_modules/youch/build/public/layout/style.css +431 -0
  113. package/dist/node_modules/youch/package.json +133 -0
  114. package/dist/node_modules/youch-core/build/index.js +316 -0
  115. package/dist/node_modules/youch-core/package.json +124 -0
  116. package/dist/presets/_nitro/runtime/nitro-dev.d.mts +1 -0
  117. package/dist/presets/_nitro/runtime/nitro-dev.mjs +62 -0
  118. package/dist/presets/_nitro/runtime/nitro-prerenderer.d.mts +3 -0
  119. package/dist/presets/_nitro/runtime/nitro-prerenderer.mjs +18 -0
  120. package/dist/presets/_nitro/runtime/service-worker.d.mts +1 -0
  121. package/dist/presets/_nitro/runtime/service-worker.mjs +21 -0
  122. package/dist/presets/aws-amplify/runtime/aws-amplify.d.mts +1 -0
  123. package/dist/presets/aws-amplify/runtime/aws-amplify.mjs +13 -0
  124. package/dist/presets/aws-lambda/runtime/_utils.d.mts +18 -0
  125. package/dist/presets/aws-lambda/runtime/_utils.mjs +102 -0
  126. package/dist/presets/aws-lambda/runtime/aws-lambda-streaming.d.mts +3 -0
  127. package/dist/presets/aws-lambda/runtime/aws-lambda-streaming.mjs +33 -0
  128. package/dist/presets/aws-lambda/runtime/aws-lambda.d.mts +3 -0
  129. package/dist/presets/aws-lambda/runtime/aws-lambda.mjs +13 -0
  130. package/dist/presets/azure/runtime/_utils.d.mts +2 -0
  131. package/dist/presets/azure/runtime/_utils.mjs +50 -0
  132. package/dist/presets/azure/runtime/azure-swa.d.mts +5 -0
  133. package/dist/presets/azure/runtime/azure-swa.mjs +28 -0
  134. package/dist/presets/bun/runtime/bun.d.mts +1 -0
  135. package/dist/presets/bun/runtime/bun.mjs +27 -0
  136. package/dist/presets/cloudflare/runtime/_module-handler.d.mts +13 -0
  137. package/dist/presets/cloudflare/runtime/_module-handler.mjs +93 -0
  138. package/dist/presets/cloudflare/runtime/cloudflare-durable.d.mts +19 -0
  139. package/dist/presets/cloudflare/runtime/cloudflare-durable.mjs +74 -0
  140. package/dist/presets/cloudflare/runtime/cloudflare-module.d.mts +9 -0
  141. package/dist/presets/cloudflare/runtime/cloudflare-module.mjs +20 -0
  142. package/dist/presets/cloudflare/runtime/cloudflare-pages.d.mts +20 -0
  143. package/dist/presets/cloudflare/runtime/cloudflare-pages.mjs +47 -0
  144. package/dist/presets/cloudflare/runtime/plugin.dev.d.mts +3 -0
  145. package/dist/presets/cloudflare/runtime/plugin.dev.mjs +89 -0
  146. package/dist/presets/deno/runtime/deno-deploy.d.mts +1 -0
  147. package/dist/presets/deno/runtime/deno-deploy.mjs +17 -0
  148. package/dist/presets/deno/runtime/deno-server.d.mts +6 -0
  149. package/dist/presets/deno/runtime/deno-server.mjs +59 -0
  150. package/dist/presets/netlify/runtime/netlify-edge.d.mts +3 -0
  151. package/dist/presets/netlify/runtime/netlify-edge.mjs +17 -0
  152. package/dist/presets/netlify/runtime/netlify.d.mts +3 -0
  153. package/dist/presets/netlify/runtime/netlify.mjs +24 -0
  154. package/dist/presets/node/runtime/node-cluster.d.mts +1 -0
  155. package/dist/presets/node/runtime/node-cluster.mjs +58 -0
  156. package/dist/presets/node/runtime/node-middleware.d.mts +4 -0
  157. package/dist/presets/node/runtime/node-middleware.mjs +14 -0
  158. package/dist/presets/node/runtime/node-server.d.mts +3 -0
  159. package/dist/presets/node/runtime/node-server.mjs +44 -0
  160. package/dist/presets/standard/runtime/server.d.mts +5 -0
  161. package/dist/presets/standard/runtime/server.mjs +6 -0
  162. package/dist/presets/stormkit/runtime/stormkit.d.mts +21 -0
  163. package/dist/presets/stormkit/runtime/stormkit.mjs +28 -0
  164. package/dist/presets/vercel/runtime/vercel.d.mts +8 -0
  165. package/dist/presets/vercel/runtime/vercel.mjs +17 -0
  166. package/dist/presets/winterjs/runtime/winterjs.d.mts +1 -0
  167. package/dist/presets/winterjs/runtime/winterjs.mjs +87 -0
  168. package/dist/presets/zeabur/runtime/zeabur.d.mts +3 -0
  169. package/dist/presets/zeabur/runtime/zeabur.mjs +4 -0
  170. package/dist/presets.mjs +2460 -0
  171. package/dist/runtime/index.d.mts +11 -0
  172. package/dist/runtime/index.mjs +17 -0
  173. package/dist/runtime/internal/app.d.mts +2 -0
  174. package/dist/runtime/internal/app.mjs +153 -0
  175. package/dist/runtime/internal/cache.d.mts +7 -0
  176. package/dist/runtime/internal/cache.mjs +236 -0
  177. package/dist/runtime/internal/context.d.mts +12 -0
  178. package/dist/runtime/internal/context.mjs +17 -0
  179. package/dist/runtime/internal/database.d.mts +2 -0
  180. package/dist/runtime/internal/database.mjs +14 -0
  181. package/dist/runtime/internal/debug.d.mts +2 -0
  182. package/dist/runtime/internal/debug.mjs +5 -0
  183. package/dist/runtime/internal/empty.d.mts +0 -0
  184. package/dist/runtime/internal/empty.mjs +0 -0
  185. package/dist/runtime/internal/error/dev.d.mts +9 -0
  186. package/dist/runtime/internal/error/dev.mjs +122 -0
  187. package/dist/runtime/internal/error/prod.d.mts +8 -0
  188. package/dist/runtime/internal/error/prod.mjs +62 -0
  189. package/dist/runtime/internal/error/utils.d.mts +8 -0
  190. package/dist/runtime/internal/error/utils.mjs +3 -0
  191. package/dist/runtime/internal/index.d.mts +3 -0
  192. package/dist/runtime/internal/index.mjs +3 -0
  193. package/dist/runtime/internal/lib/http-graceful-shutdown.d.mts +16 -0
  194. package/dist/runtime/internal/lib/http-graceful-shutdown.mjs +213 -0
  195. package/dist/runtime/internal/meta.d.mts +2 -0
  196. package/dist/runtime/internal/meta.mjs +3 -0
  197. package/dist/runtime/internal/plugin.d.mts +3 -0
  198. package/dist/runtime/internal/plugin.mjs +4 -0
  199. package/dist/runtime/internal/renderer.d.mts +3 -0
  200. package/dist/runtime/internal/renderer.mjs +36 -0
  201. package/dist/runtime/internal/route-rules.d.mts +8 -0
  202. package/dist/runtime/internal/route-rules.mjs +62 -0
  203. package/dist/runtime/internal/routes/dev-tasks.d.mts +3 -0
  204. package/dist/runtime/internal/routes/dev-tasks.mjs +23 -0
  205. package/dist/runtime/internal/routes/openapi.d.mts +3 -0
  206. package/dist/runtime/internal/routes/openapi.mjs +100 -0
  207. package/dist/runtime/internal/routes/renderer-template.d.mts +2 -0
  208. package/dist/runtime/internal/routes/renderer-template.dev.d.mts +3 -0
  209. package/dist/runtime/internal/routes/renderer-template.dev.mjs +21 -0
  210. package/dist/runtime/internal/routes/renderer-template.mjs +4 -0
  211. package/dist/runtime/internal/routes/scalar.d.mts +3 -0
  212. package/dist/runtime/internal/routes/scalar.mjs +194 -0
  213. package/dist/runtime/internal/routes/swagger.d.mts +3 -0
  214. package/dist/runtime/internal/routes/swagger.mjs +44 -0
  215. package/dist/runtime/internal/runtime-config.d.mts +9 -0
  216. package/dist/runtime/internal/runtime-config.mjs +49 -0
  217. package/dist/runtime/internal/shutdown.d.mts +9 -0
  218. package/dist/runtime/internal/shutdown.mjs +34 -0
  219. package/dist/runtime/internal/static.d.mts +3 -0
  220. package/dist/runtime/internal/static.mjs +77 -0
  221. package/dist/runtime/internal/storage.d.mts +2 -0
  222. package/dist/runtime/internal/storage.mjs +6 -0
  223. package/dist/runtime/internal/task.d.mts +17 -0
  224. package/dist/runtime/internal/task.mjs +73 -0
  225. package/dist/runtime/internal/utils.d.mts +1 -0
  226. package/dist/runtime/internal/utils.mjs +15 -0
  227. package/dist/runtime/internal/vite/dev-entry.d.mts +1 -0
  228. package/dist/runtime/internal/vite/dev-entry.mjs +6 -0
  229. package/dist/runtime/internal/vite/dev-worker.d.mts +1 -0
  230. package/dist/runtime/internal/vite/dev-worker.mjs +362 -0
  231. package/dist/runtime/internal/vite/prod-setup.d.mts +4 -0
  232. package/dist/runtime/internal/vite/prod-setup.mjs +55 -0
  233. package/dist/runtime/internal/vite/ssr-renderer.d.mts +4 -0
  234. package/dist/runtime/internal/vite/ssr-renderer.mjs +4 -0
  235. package/dist/types/index.d.mts +2810 -0
  236. package/dist/types/index.mjs +1 -0
  237. package/dist/vite.d.mts +59 -0
  238. package/dist/vite.mjs +68 -0
  239. package/lib/config.d.mts +9 -0
  240. package/lib/config.mjs +5 -0
  241. package/lib/deps/h3.d.mts +1 -0
  242. package/lib/deps/h3.mjs +1 -0
  243. package/lib/deps/ofetch.mjs +1 -0
  244. package/lib/deps/ofetch.mts +1 -0
  245. package/lib/meta.d.mts +5 -0
  246. package/lib/meta.mjs +21 -0
  247. package/lib/runtime-meta.d.mts +5 -0
  248. package/lib/runtime-meta.mjs +38 -0
  249. package/package.json +190 -36
  250. package/.editorconfig +0 -12
  251. package/.eslintrc.js +0 -34
  252. package/.travis.yml +0 -7
  253. package/Dockerfile +0 -12
  254. package/Makefile +0 -37
  255. package/bin/nitro +0 -55
  256. package/lib/auto-require.js +0 -44
  257. package/lib/class-file.js +0 -105
  258. package/lib/class-files.js +0 -212
  259. package/lib/color.js +0 -89
  260. package/lib/cwd.js +0 -27
  261. package/lib/dir-expand.js +0 -80
  262. package/lib/dir.js +0 -130
  263. package/lib/file.js +0 -80
  264. package/lib/join-paths.js +0 -60
  265. package/lib/livereload/livereload.js +0 -55
  266. package/lib/livereload.js +0 -86
  267. package/lib/nitro.js +0 -161
  268. package/lib/package.js +0 -211
  269. package/lib/presets/autoprefixer.js +0 -11
  270. package/lib/presets/babel.js +0 -33
  271. package/lib/presets/browserify.js +0 -106
  272. package/lib/presets/coffee-script.js +0 -29
  273. package/lib/presets/cssnano.js +0 -11
  274. package/lib/presets/eslint.js +0 -67
  275. package/lib/presets/jshint.js +0 -51
  276. package/lib/presets/less.js +0 -45
  277. package/lib/presets/log.js +0 -11
  278. package/lib/presets/ng-annotate.js +0 -34
  279. package/lib/presets/noop.js +0 -7
  280. package/lib/presets/postcss/auto-postcss.js +0 -46
  281. package/lib/presets/postcss/autoprefixer-options.js +0 -9
  282. package/lib/presets/postcss.js +0 -40
  283. package/lib/presets/rollup.js +0 -56
  284. package/lib/presets/sass.js +0 -64
  285. package/lib/presets/sitemap.js +0 -101
  286. package/lib/presets/sitemap.xml +0 -12
  287. package/lib/presets/svg-symbols.js +0 -22
  288. package/lib/presets/svgo.js +0 -21
  289. package/lib/presets/uglify.js +0 -72
  290. package/lib/presets/webpack.js +0 -66
  291. package/lib/processors.js +0 -84
  292. package/lib/promisify.js +0 -16
  293. package/lib/server.js +0 -224
  294. package/lib/tasks.js +0 -114
  295. package/lib/watch.js +0 -81
  296. package/test.js +0 -59
  297. package/tests/cwd-tests.js +0 -25
  298. package/tests/dir-tests.js +0 -80
  299. package/tests/dummy/dummy.coffee +0 -7
  300. package/tests/dummy/dummy.js +0 -8
  301. package/tests/dummy/dummy.less +0 -6
  302. package/tests/dummy/dummy.sass +0 -5
  303. package/tests/file-tests.js +0 -17
  304. package/tests/join-paths-tests.js +0 -86
  305. package/tests/tasks-tests.js +0 -65
  306. package/wercker.yml +0 -25
@@ -0,0 +1,441 @@
1
+ import {
2
+ Parser,
3
+ wordWrap
4
+ } from "../../chunk-26HALFTP.js";
5
+
6
+ // formatters/console/themes.ts
7
+ import useColors from "@poppinss/colors";
8
+ import supportsColor from "supports-color";
9
+ var colors = supportsColor.stdout ? useColors.ansi() : useColors.silent();
10
+ var themes = {
11
+ default: {
12
+ braces: (value) => colors.yellow(value),
13
+ brackets: (value) => colors.yellow(value),
14
+ number: (value) => colors.yellow(value),
15
+ bigInt: (value) => colors.yellow().bold(value),
16
+ boolean: (value) => colors.yellow().italic(value),
17
+ string: (value) => colors.green(value),
18
+ null: (value) => colors.dim(value),
19
+ undefined: (value) => colors.dim(value),
20
+ prototypeLabel: (value) => colors.dim(value),
21
+ symbol: (value) => colors.magenta(value),
22
+ regex: (value) => colors.red(value),
23
+ date: (value) => colors.magenta(value),
24
+ buffer: (value) => colors.magenta(value),
25
+ functionLabel: (value) => colors.cyan().italic(value),
26
+ arrayLabel: (value) => colors.cyan(value),
27
+ objectLabel: (value) => colors.cyan(value),
28
+ mapLabel: (value) => colors.cyan(value),
29
+ setLabel: (value) => colors.cyan(value),
30
+ objectKey: (value) => colors.blue(value),
31
+ objectKeyPrefix: (value) => colors.dim(value),
32
+ classLabel: (value) => colors.cyan(value),
33
+ weakSetLabel: (value) => colors.cyan(value),
34
+ weakRefLabel: (value) => colors.cyan(value),
35
+ collapseLabel: (value) => colors.dim(value),
36
+ circularLabel: (value) => colors.cyan(value),
37
+ getterLabel: (value) => colors.cyan(value),
38
+ weakMapLabel: (value) => colors.cyan(value),
39
+ observableLabel: (value) => colors.cyan(value),
40
+ promiseLabel: (value) => colors.blue(value),
41
+ generatorLabel: (value) => colors.cyan(value),
42
+ blobLabel: (value) => colors.magenta(value),
43
+ unknownLabel: (value) => colors.magenta(value)
44
+ }
45
+ };
46
+
47
+ // formatters/console/printers/main.ts
48
+ function openingBrace(formatter) {
49
+ return formatter.styles.braces("{");
50
+ }
51
+ function closingBrace(formatter) {
52
+ return formatter.styles.braces("}");
53
+ }
54
+ function openingBrackets(formatter) {
55
+ return formatter.styles.brackets("[");
56
+ }
57
+ function closingBrackets(formatter) {
58
+ return formatter.styles.brackets("]");
59
+ }
60
+ var ConsolePrinters = {
61
+ "collapse": (token, formatter) => {
62
+ const styles = token.token.type === "object-start" ? formatter.styles.objectLabel : formatter.styles.arrayLabel;
63
+ const collpaseStyles = formatter.styles.collapseLabel;
64
+ return `${styles(token.name)} ` + (token.token.type === "object-start" ? openingBrace(formatter) : openingBrackets(formatter)) + ` ${collpaseStyles("collpased")} ` + (token.token.type === "object-start" ? closingBrace(formatter) : closingBrackets(formatter));
65
+ },
66
+ "object-start": (token, formatter) => {
67
+ formatter.indentation.increment();
68
+ const styles = formatter.styles.objectLabel;
69
+ const label = formatter.context.isStaticMember && formatter.context.staticDepth === 0 || token.constructorName === "Object" ? "" : styles(`${token.constructorName || "Object [null]"}`) + " ";
70
+ return label + openingBrace(formatter);
71
+ },
72
+ "object-end": (_, formatter) => {
73
+ formatter.indentation.decrement();
74
+ const indent = `${formatter.newLine}${formatter.indentation.getSpaces()}`;
75
+ return indent + closingBrace(formatter);
76
+ },
77
+ "object-key": (token, formatter) => {
78
+ formatter.context.isStack = token.value === "stack";
79
+ const styles = formatter.styles.objectKey;
80
+ const indent = `${formatter.newLine}${formatter.indentation.getSpaces()}`;
81
+ let value = token.value;
82
+ if (token.isSymbol) {
83
+ value = `[${value}]`;
84
+ }
85
+ let prefix = "";
86
+ if (formatter.context.isStaticMember) {
87
+ formatter.context.staticDepth++;
88
+ if (formatter.context.staticDepth === 1) {
89
+ const prefixStyles = formatter.styles.objectKeyPrefix;
90
+ prefix = `${prefixStyles("static")} `;
91
+ }
92
+ }
93
+ return indent + prefix + styles(value) + ": ";
94
+ },
95
+ "object-circular-ref": (_, formatter) => {
96
+ const styles = formatter.styles.circularLabel;
97
+ return styles("[*Circular]");
98
+ },
99
+ "object-max-depth-ref": (_, formatter) => {
100
+ const styles = formatter.styles.objectLabel;
101
+ return styles("[Object]");
102
+ },
103
+ "object-value-getter": (_, formatter) => {
104
+ const styles = formatter.styles.getterLabel;
105
+ return styles("[Getter]");
106
+ },
107
+ "object-value-start": () => {
108
+ return "";
109
+ },
110
+ "object-value-end": (_, formatter) => {
111
+ if (formatter.context.isStaticMember) {
112
+ formatter.context.staticDepth--;
113
+ }
114
+ return `,`;
115
+ },
116
+ "array-start": (token, formatter) => {
117
+ formatter.indentation.increment();
118
+ const styles = formatter.styles.arrayLabel;
119
+ const label = token.name !== "Array" ? styles(`${token.name}`) + " " : "";
120
+ return label + openingBrackets(formatter);
121
+ },
122
+ "array-end": (_, formatter) => {
123
+ formatter.indentation.decrement();
124
+ const indent = `${formatter.newLine}${formatter.indentation.getSpaces()}`;
125
+ return indent + closingBrackets(formatter);
126
+ },
127
+ "array-value-start": (_, formatter) => {
128
+ const indent = `${formatter.newLine}${formatter.indentation.getSpaces()}`;
129
+ return indent;
130
+ },
131
+ "array-value-hole": (_, formatter) => {
132
+ const indent = `${formatter.newLine}${formatter.indentation.getSpaces()}`;
133
+ const styles = formatter.styles.undefined;
134
+ return indent + styles("<hole>") + ",";
135
+ },
136
+ "array-value-end": () => {
137
+ return `,`;
138
+ },
139
+ "array-circular-ref": (_, formatter) => {
140
+ const styles = formatter.styles.circularLabel;
141
+ return styles("[*Circular]");
142
+ },
143
+ "array-max-depth-ref": (_, formatter) => {
144
+ const styles = formatter.styles.arrayLabel;
145
+ return styles("[Array]");
146
+ },
147
+ "array-max-length-ref": (token, formatter) => {
148
+ const indent = `${formatter.newLine}${formatter.indentation.getSpaces()}`;
149
+ const styles = formatter.styles.arrayLabel;
150
+ const itemsLeft = token.size - token.limit;
151
+ if (itemsLeft <= 0) {
152
+ return "";
153
+ }
154
+ const label = itemsLeft === 1 ? `1 more item` : `${itemsLeft} more items`;
155
+ return indent + styles(`[...${label}]`);
156
+ },
157
+ "prototype-start": (_, formatter) => {
158
+ const indent = `${formatter.newLine}${formatter.indentation.getSpaces()}`;
159
+ formatter.indentation.increment();
160
+ const styles = formatter.styles.prototypeLabel;
161
+ const label = "[[Prototype]] ";
162
+ return indent + styles(label) + openingBrace(formatter);
163
+ },
164
+ "prototype-end": (_, formatter) => {
165
+ formatter.indentation.decrement();
166
+ const indent = `${formatter.newLine}${formatter.indentation.getSpaces()}`;
167
+ return indent + closingBrace(formatter);
168
+ },
169
+ "map-start": (token, formatter) => {
170
+ formatter.indentation.increment();
171
+ const styles = formatter.styles.mapLabel;
172
+ const label = `Map(${token.size}) `;
173
+ return styles(label) + openingBrace(formatter);
174
+ },
175
+ "map-end": (_, formatter) => {
176
+ formatter.indentation.decrement();
177
+ const indent = `${formatter.newLine}${formatter.indentation.getSpaces()}`;
178
+ return indent + closingBrace(formatter);
179
+ },
180
+ "map-row-start": (_, formatter) => {
181
+ const indent = `${formatter.newLine}${formatter.indentation.getSpaces()}`;
182
+ formatter.indentation.increment();
183
+ return indent + openingBrackets(formatter);
184
+ },
185
+ "map-row-end": (_, formatter) => {
186
+ formatter.indentation.decrement();
187
+ const indent = `${formatter.newLine}${formatter.indentation.getSpaces()}`;
188
+ return indent + closingBrackets(formatter) + `,`;
189
+ },
190
+ "map-key-start": (_, formatter) => {
191
+ const styles = formatter.styles.objectKey;
192
+ const indent = `${formatter.newLine}${formatter.indentation.getSpaces()}`;
193
+ return indent + styles("key") + ": ";
194
+ },
195
+ "map-key-end": function() {
196
+ return ",";
197
+ },
198
+ "map-value-start": (_, formatter) => {
199
+ const styles = formatter.styles.objectKey;
200
+ const indent = `${formatter.newLine}${formatter.indentation.getSpaces()}`;
201
+ return indent + styles("value") + ": ";
202
+ },
203
+ "map-value-end": function() {
204
+ return ",";
205
+ },
206
+ "map-circular-ref": (_, formatter) => {
207
+ const styles = formatter.styles.circularLabel;
208
+ return styles("[*Circular]");
209
+ },
210
+ "map-max-depth-ref": (_, formatter) => {
211
+ const styles = formatter.styles.mapLabel;
212
+ return styles("[Map]");
213
+ },
214
+ "map-max-length-ref": (token, formatter) => {
215
+ const styles = formatter.styles.mapLabel;
216
+ const itemsLeft = token.size - token.limit;
217
+ if (itemsLeft <= 0) {
218
+ return "";
219
+ }
220
+ const label = itemsLeft === 1 ? `1 more item` : `${itemsLeft} more items`;
221
+ return styles(`[...${label}]`);
222
+ },
223
+ "set-start": (token, formatter) => {
224
+ formatter.indentation.increment();
225
+ const styles = formatter.styles.setLabel;
226
+ const label = `Set(${token.size}) `;
227
+ return styles(label) + openingBrackets(formatter);
228
+ },
229
+ "set-end": (_, formatter) => {
230
+ formatter.indentation.decrement();
231
+ const indent = `${formatter.newLine}${formatter.indentation.getSpaces()}`;
232
+ return indent + closingBrackets(formatter);
233
+ },
234
+ "set-value-start": (_, formatter) => {
235
+ const indent = `${formatter.newLine}${formatter.indentation.getSpaces()}`;
236
+ return indent;
237
+ },
238
+ "set-value-end": () => {
239
+ return `,`;
240
+ },
241
+ "set-circular-ref": (_, formatter) => {
242
+ const styles = formatter.styles.circularLabel;
243
+ return styles("[*Circular]");
244
+ },
245
+ "set-max-depth-ref": (_, formatter) => {
246
+ const styles = formatter.styles.setLabel;
247
+ return styles("[Set]");
248
+ },
249
+ "set-max-length-ref": (token, formatter) => {
250
+ const indent = `${formatter.newLine}${formatter.indentation.getSpaces()}`;
251
+ const styles = formatter.styles.setLabel;
252
+ const itemsLeft = token.size - token.limit;
253
+ if (itemsLeft <= 0) {
254
+ return "";
255
+ }
256
+ const label = itemsLeft === 1 ? `1 more item` : `${itemsLeft} more items`;
257
+ return indent + styles(`[...${label}]`);
258
+ },
259
+ "string": (token, formatter) => {
260
+ let value = token.value;
261
+ const indent = formatter.indentation.getSpaces();
262
+ if (formatter.context.isStack) {
263
+ value = token.value.split("\n").map((row, index) => {
264
+ let rowValue = row.trim();
265
+ if (index > 0) {
266
+ rowValue = `${indent}${rowValue}`;
267
+ }
268
+ return rowValue;
269
+ }).join("\n");
270
+ } else {
271
+ value = wordWrap(token.value, {
272
+ newLine: formatter.newLine,
273
+ indent: formatter.indentation.getSpaces(),
274
+ width: 70,
275
+ escape: (line) => line
276
+ });
277
+ }
278
+ const styles = formatter.styles.string;
279
+ return styles(value);
280
+ },
281
+ "boolean": (token, formatter) => {
282
+ const styles = formatter.styles.boolean;
283
+ return styles(String(token.value));
284
+ },
285
+ "number": (token, formatter) => {
286
+ const styles = formatter.styles.number;
287
+ return styles(String(token.value));
288
+ },
289
+ "bigInt": (token, formatter) => {
290
+ const styles = formatter.styles.bigInt;
291
+ return styles(token.value);
292
+ },
293
+ "undefined": (_, formatter) => {
294
+ const styles = formatter.styles.undefined;
295
+ return styles("undefined");
296
+ },
297
+ "null": (_, formatter) => {
298
+ const styles = formatter.styles.null;
299
+ return styles("null");
300
+ },
301
+ "symbol": (token, formatter) => {
302
+ const styles = formatter.styles.symbol;
303
+ return styles(token.value);
304
+ },
305
+ "function": (token, formatter) => {
306
+ const styles = token.isClass ? formatter.styles.classLabel : formatter.styles.functionLabel;
307
+ const async = token.isAsync ? `async ` : "";
308
+ const generator = token.isGenerator ? `*` : "";
309
+ const label = token.isClass ? `[class ${token.name}]` : `[${async}${generator}function ${token.name}]`;
310
+ return styles(label);
311
+ },
312
+ "date": function(token, formatter) {
313
+ const styles = formatter.styles.date;
314
+ return styles(token.value);
315
+ },
316
+ "buffer": function(token, formatter) {
317
+ const styles = formatter.styles.buffer;
318
+ return styles(token.value);
319
+ },
320
+ "regexp": function(token, formatter) {
321
+ const styles = formatter.styles.regex;
322
+ return styles(token.value);
323
+ },
324
+ "unknown": function(token, formatter) {
325
+ const styles = formatter.styles.unknownLabel;
326
+ return styles(String(token.value));
327
+ },
328
+ "weak-set": function(_, formatter) {
329
+ const styles = formatter.styles.weakSetLabel;
330
+ return styles("[WeakSet]");
331
+ },
332
+ "weak-ref": function(_, formatter) {
333
+ const styles = formatter.styles.weakRefLabel;
334
+ return styles("[WeakRef]");
335
+ },
336
+ "weak-map": function(_, formatter) {
337
+ const styles = formatter.styles.weakMapLabel;
338
+ return styles("[WeakMap]");
339
+ },
340
+ "observable": function(_, formatter) {
341
+ const styles = formatter.styles.observableLabel;
342
+ return styles("[Observable]");
343
+ },
344
+ "blob": function(token, formatter) {
345
+ const styles = formatter.styles.objectLabel;
346
+ const sizeProp = formatter.styles.objectKey("size: ");
347
+ const sizeValue = formatter.styles.number(`${token.size}`);
348
+ const typeProp = token.contentType ? `, ${formatter.styles.objectKey("type: ")}` : "";
349
+ const typeValue = token.contentType ? formatter.styles.string(`${token.contentType}`) : "";
350
+ return styles("[Blob]") + " " + openingBrace(formatter) + `${sizeProp}${sizeValue}${typeProp}${typeValue}` + closingBrace(formatter);
351
+ },
352
+ "promise": function(token, formatter) {
353
+ const styles = formatter.styles.promiseLabel;
354
+ const label = token.isFulfilled ? "resolved" : "pending";
355
+ return styles(`[Promise${`<${label}>`}]`);
356
+ },
357
+ "generator": function(token, formatter) {
358
+ const styles = formatter.styles.generatorLabel;
359
+ const label = token.isAsync ? "[AsyncGenerator] {}" : "[Generator] {}";
360
+ return styles(label);
361
+ },
362
+ "static-members-start": function(_, formatter) {
363
+ formatter.context.isStaticMember = true;
364
+ formatter.context.staticDepth = 0;
365
+ return " ";
366
+ },
367
+ "static-members-end": function(_, formatter) {
368
+ formatter.context.isStaticMember = false;
369
+ formatter.context.staticDepth = 0;
370
+ return "";
371
+ }
372
+ };
373
+
374
+ // formatters/console/formatter.ts
375
+ var ConsoleFormatter = class {
376
+ /**
377
+ * Styles for output elements
378
+ */
379
+ styles;
380
+ /**
381
+ * Context maintained through out the printing
382
+ * phase. Each instance has its own context
383
+ * that gets mutated internally.
384
+ */
385
+ context;
386
+ /**
387
+ * Value for the newline character
388
+ */
389
+ newLine = "\n";
390
+ /**
391
+ * Utility to manage indentation
392
+ */
393
+ indentation = {
394
+ counter: 0,
395
+ /**
396
+ * Increment the identation by 1 step
397
+ */
398
+ increment() {
399
+ this.counter++;
400
+ },
401
+ /**
402
+ * Decrement the identation by 1 step
403
+ */
404
+ decrement() {
405
+ this.counter--;
406
+ },
407
+ /**
408
+ * Get the identation spaces as per the current
409
+ * identation level
410
+ */
411
+ getSpaces() {
412
+ return new Array(this.counter * 2 + 1).join(" ");
413
+ }
414
+ };
415
+ constructor(config, context) {
416
+ this.context = context || {};
417
+ this.styles = Object.freeze({ ...themes.default, ...config?.styles });
418
+ }
419
+ /**
420
+ * Format a collection of tokens to ANSI output
421
+ */
422
+ format(tokens) {
423
+ return tokens.map((token) => {
424
+ const formatter = ConsolePrinters[token.type];
425
+ return formatter(token, this) || "";
426
+ }).join("");
427
+ }
428
+ };
429
+
430
+ // formatters/console/main.ts
431
+ function dump(value, config) {
432
+ const parser = new Parser(config);
433
+ parser.parse(value);
434
+ return new ConsoleFormatter(config).format(parser.flush());
435
+ }
436
+ export {
437
+ ConsoleFormatter,
438
+ ConsolePrinters,
439
+ dump,
440
+ themes
441
+ };