elm-pages 3.0.0-beta.20 → 3.0.0-beta.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (433) hide show
  1. package/README.md +1 -1
  2. package/codegen/elm-pages-codegen.cjs +111 -99
  3. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/dependencies.75364bef27ac5a049b87c3325f846fc6dbda23b8ed7187ed06748b96bb6a50a7.json +1 -0
  4. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Console-Text.elmi +0 -0
  5. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Console-Text.elmo +0 -0
  6. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmi +0 -0
  7. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmo +0 -0
  8. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateDataTest.elmi +0 -0
  9. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateDataTest.elmo +0 -0
  10. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Generated-Main.elmi +0 -0
  11. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Generated-Main.elmo +0 -0
  12. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format-Color.elmi +0 -0
  13. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format-Color.elmo +0 -0
  14. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format-Monochrome.elmi +0 -0
  15. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format-Monochrome.elmo +0 -0
  16. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format.elmi +0 -0
  17. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format.elmo +0 -0
  18. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console.elmi +0 -0
  19. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console.elmo +0 -0
  20. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Highlightable.elmi +0 -0
  21. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Highlightable.elmo +0 -0
  22. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-JUnit.elmi +0 -0
  23. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-JUnit.elmo +0 -0
  24. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Json.elmi +0 -0
  25. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Json.elmo +0 -0
  26. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Reporter.elmi +0 -0
  27. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Reporter.elmo +0 -0
  28. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-TestResults.elmi +0 -0
  29. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-TestResults.elmo +0 -0
  30. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-JsMessage.elmi +0 -0
  31. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-JsMessage.elmo +0 -0
  32. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node-Vendor-Console.elmi +0 -0
  33. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node-Vendor-Console.elmo +0 -0
  34. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node-Vendor-Diff.elmi +0 -0
  35. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node-Vendor-Diff.elmo +0 -0
  36. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node.elmi +0 -0
  37. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node.elmo +0 -0
  38. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/d.dat +0 -0
  39. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/i.dat +0 -0
  40. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/lock +0 -0
  41. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/o.dat +0 -0
  42. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm.json +38 -0
  43. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elmTestOutput.js +29673 -0
  44. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/package.json +1 -0
  45. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/src/Test/Generated/Main.elm +27 -0
  46. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmi +0 -0
  47. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmo +0 -0
  48. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateDataTest.elmo +0 -0
  49. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/d.dat +0 -0
  50. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/Reporter.elm.js +1 -1
  51. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/Runner.elm.js +37 -107
  52. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/node_runner.js +1 -1
  53. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/node_supervisor.js +4 -4
  54. package/generator/dead-code-review/node_modules/.package-lock.json +484 -0
  55. package/generator/dead-code-review/node_modules/ansi-styles/index.d.ts +345 -0
  56. package/generator/dead-code-review/node_modules/ansi-styles/index.js +163 -0
  57. package/generator/dead-code-review/node_modules/ansi-styles/license +9 -0
  58. package/generator/dead-code-review/node_modules/ansi-styles/package.json +56 -0
  59. package/generator/dead-code-review/node_modules/ansi-styles/readme.md +152 -0
  60. package/generator/dead-code-review/node_modules/anymatch/LICENSE +15 -0
  61. package/generator/dead-code-review/node_modules/anymatch/README.md +87 -0
  62. package/generator/dead-code-review/node_modules/anymatch/index.d.ts +20 -0
  63. package/generator/dead-code-review/node_modules/anymatch/index.js +104 -0
  64. package/generator/dead-code-review/node_modules/anymatch/package.json +48 -0
  65. package/generator/dead-code-review/node_modules/balanced-match/.github/FUNDING.yml +2 -0
  66. package/generator/dead-code-review/node_modules/balanced-match/LICENSE.md +21 -0
  67. package/generator/dead-code-review/node_modules/balanced-match/README.md +97 -0
  68. package/generator/dead-code-review/node_modules/balanced-match/index.js +62 -0
  69. package/generator/dead-code-review/node_modules/balanced-match/package.json +48 -0
  70. package/generator/dead-code-review/node_modules/binary-extensions/binary-extensions.json +260 -0
  71. package/generator/dead-code-review/node_modules/binary-extensions/binary-extensions.json.d.ts +3 -0
  72. package/generator/dead-code-review/node_modules/binary-extensions/index.d.ts +14 -0
  73. package/generator/dead-code-review/node_modules/binary-extensions/index.js +1 -0
  74. package/generator/dead-code-review/node_modules/binary-extensions/license +9 -0
  75. package/generator/dead-code-review/node_modules/binary-extensions/package.json +38 -0
  76. package/generator/dead-code-review/node_modules/binary-extensions/readme.md +41 -0
  77. package/generator/dead-code-review/node_modules/brace-expansion/.github/FUNDING.yml +2 -0
  78. package/generator/dead-code-review/node_modules/brace-expansion/LICENSE +21 -0
  79. package/generator/dead-code-review/node_modules/brace-expansion/README.md +135 -0
  80. package/generator/dead-code-review/node_modules/brace-expansion/index.js +203 -0
  81. package/generator/dead-code-review/node_modules/brace-expansion/package.json +46 -0
  82. package/generator/dead-code-review/node_modules/braces/CHANGELOG.md +184 -0
  83. package/generator/dead-code-review/node_modules/braces/LICENSE +21 -0
  84. package/generator/dead-code-review/node_modules/braces/README.md +593 -0
  85. package/generator/dead-code-review/node_modules/braces/index.js +170 -0
  86. package/generator/dead-code-review/node_modules/braces/lib/compile.js +57 -0
  87. package/generator/dead-code-review/node_modules/braces/lib/constants.js +57 -0
  88. package/generator/dead-code-review/node_modules/braces/lib/expand.js +113 -0
  89. package/generator/dead-code-review/node_modules/braces/lib/parse.js +333 -0
  90. package/generator/dead-code-review/node_modules/braces/lib/stringify.js +32 -0
  91. package/generator/dead-code-review/node_modules/braces/lib/utils.js +112 -0
  92. package/generator/dead-code-review/node_modules/braces/package.json +77 -0
  93. package/generator/dead-code-review/node_modules/chalk/index.d.ts +415 -0
  94. package/generator/dead-code-review/node_modules/chalk/license +9 -0
  95. package/generator/dead-code-review/node_modules/chalk/package.json +68 -0
  96. package/generator/dead-code-review/node_modules/chalk/readme.md +341 -0
  97. package/generator/dead-code-review/node_modules/chalk/source/index.js +229 -0
  98. package/generator/dead-code-review/node_modules/chalk/source/templates.js +134 -0
  99. package/generator/dead-code-review/node_modules/chalk/source/util.js +39 -0
  100. package/generator/dead-code-review/node_modules/chokidar/LICENSE +21 -0
  101. package/generator/dead-code-review/node_modules/chokidar/README.md +308 -0
  102. package/generator/dead-code-review/node_modules/chokidar/index.js +973 -0
  103. package/generator/dead-code-review/node_modules/chokidar/lib/constants.js +65 -0
  104. package/generator/dead-code-review/node_modules/chokidar/lib/fsevents-handler.js +524 -0
  105. package/generator/dead-code-review/node_modules/chokidar/lib/nodefs-handler.js +654 -0
  106. package/generator/dead-code-review/node_modules/chokidar/package.json +85 -0
  107. package/generator/dead-code-review/node_modules/chokidar/types/index.d.ts +188 -0
  108. package/generator/dead-code-review/node_modules/color-convert/CHANGELOG.md +54 -0
  109. package/generator/dead-code-review/node_modules/color-convert/LICENSE +21 -0
  110. package/generator/dead-code-review/node_modules/color-convert/README.md +68 -0
  111. package/generator/dead-code-review/node_modules/color-convert/conversions.js +839 -0
  112. package/generator/dead-code-review/node_modules/color-convert/index.js +81 -0
  113. package/generator/dead-code-review/node_modules/color-convert/package.json +48 -0
  114. package/generator/dead-code-review/node_modules/color-convert/route.js +97 -0
  115. package/generator/dead-code-review/node_modules/color-name/LICENSE +8 -0
  116. package/generator/dead-code-review/node_modules/color-name/README.md +11 -0
  117. package/generator/dead-code-review/node_modules/color-name/index.js +152 -0
  118. package/generator/dead-code-review/node_modules/color-name/package.json +28 -0
  119. package/generator/dead-code-review/node_modules/commander/LICENSE +22 -0
  120. package/generator/dead-code-review/node_modules/commander/Readme.md +1118 -0
  121. package/generator/dead-code-review/node_modules/commander/esm.mjs +16 -0
  122. package/generator/dead-code-review/node_modules/commander/index.js +27 -0
  123. package/generator/dead-code-review/node_modules/commander/lib/argument.js +147 -0
  124. package/generator/dead-code-review/node_modules/commander/lib/command.js +2160 -0
  125. package/generator/dead-code-review/node_modules/commander/lib/error.js +45 -0
  126. package/generator/dead-code-review/node_modules/commander/lib/help.js +406 -0
  127. package/generator/dead-code-review/node_modules/commander/lib/option.js +326 -0
  128. package/generator/dead-code-review/node_modules/commander/lib/suggestSimilar.js +100 -0
  129. package/generator/dead-code-review/node_modules/commander/package-support.json +16 -0
  130. package/generator/dead-code-review/node_modules/commander/package.json +80 -0
  131. package/generator/dead-code-review/node_modules/commander/typings/index.d.ts +881 -0
  132. package/generator/dead-code-review/node_modules/cross-spawn/CHANGELOG.md +130 -0
  133. package/generator/dead-code-review/node_modules/cross-spawn/LICENSE +21 -0
  134. package/generator/dead-code-review/node_modules/cross-spawn/README.md +96 -0
  135. package/generator/dead-code-review/node_modules/cross-spawn/index.js +39 -0
  136. package/generator/dead-code-review/node_modules/cross-spawn/lib/enoent.js +59 -0
  137. package/generator/dead-code-review/node_modules/cross-spawn/lib/parse.js +91 -0
  138. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/escape.js +45 -0
  139. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/readShebang.js +23 -0
  140. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/resolveCommand.js +52 -0
  141. package/generator/dead-code-review/node_modules/cross-spawn/package.json +73 -0
  142. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/LICENSE +373 -0
  143. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/README.md +64 -0
  144. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm.d.ts +22 -0
  145. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm.js +419 -0
  146. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm_bg.wasm +0 -0
  147. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/package.json +27 -0
  148. package/generator/dead-code-review/node_modules/elm-test/LICENSE +27 -0
  149. package/generator/dead-code-review/node_modules/elm-test/README.md +192 -0
  150. package/generator/dead-code-review/node_modules/elm-test/bin/elm-test +3 -0
  151. package/generator/dead-code-review/node_modules/elm-test/elm/elm.json +25 -0
  152. package/generator/dead-code-review/node_modules/elm-test/elm/src/Console/Text.elm +217 -0
  153. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format/Color.elm +30 -0
  154. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format/Monochrome.elm +39 -0
  155. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format.elm +212 -0
  156. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console.elm +207 -0
  157. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Highlightable.elm +48 -0
  158. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/JUnit.elm +161 -0
  159. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Json.elm +158 -0
  160. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Reporter.elm +53 -0
  161. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/TestResults.elm +113 -0
  162. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/JsMessage.elm +38 -0
  163. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node/Vendor/Console.elm +230 -0
  164. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node/Vendor/Diff.elm +326 -0
  165. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node.elm +440 -0
  166. package/generator/dead-code-review/node_modules/elm-test/lib/Compile.js +110 -0
  167. package/generator/dead-code-review/node_modules/elm-test/lib/DependencyProvider.js +343 -0
  168. package/generator/dead-code-review/node_modules/elm-test/lib/ElmCompiler.js +109 -0
  169. package/generator/dead-code-review/node_modules/elm-test/lib/ElmHome.js +47 -0
  170. package/generator/dead-code-review/node_modules/elm-test/lib/ElmJson.js +194 -0
  171. package/generator/dead-code-review/node_modules/elm-test/lib/FindTests.js +276 -0
  172. package/generator/dead-code-review/node_modules/elm-test/lib/Generate.js +294 -0
  173. package/generator/dead-code-review/node_modules/elm-test/lib/Install.js +290 -0
  174. package/generator/dead-code-review/node_modules/elm-test/lib/Parser.js +941 -0
  175. package/generator/dead-code-review/node_modules/elm-test/lib/Project.js +117 -0
  176. package/generator/dead-code-review/node_modules/elm-test/lib/Report.js +23 -0
  177. package/generator/dead-code-review/node_modules/elm-test/lib/RunTests.js +322 -0
  178. package/generator/dead-code-review/node_modules/elm-test/lib/Solve.js +76 -0
  179. package/generator/dead-code-review/node_modules/elm-test/lib/Supervisor.js +294 -0
  180. package/generator/dead-code-review/node_modules/elm-test/lib/SyncGet.js +45 -0
  181. package/generator/dead-code-review/node_modules/elm-test/lib/SyncGetWorker.js +36 -0
  182. package/generator/dead-code-review/node_modules/elm-test/lib/elm-test.js +318 -0
  183. package/generator/dead-code-review/node_modules/elm-test/package.json +69 -0
  184. package/generator/dead-code-review/node_modules/elm-test/templates/after.js +29 -0
  185. package/generator/dead-code-review/node_modules/elm-test/templates/before.js +58 -0
  186. package/generator/dead-code-review/node_modules/elm-test/templates/tests/Example.elm +10 -0
  187. package/generator/dead-code-review/node_modules/fill-range/LICENSE +21 -0
  188. package/generator/dead-code-review/node_modules/fill-range/README.md +237 -0
  189. package/generator/dead-code-review/node_modules/fill-range/index.js +249 -0
  190. package/generator/dead-code-review/node_modules/fill-range/package.json +69 -0
  191. package/generator/dead-code-review/node_modules/fs.realpath/LICENSE +43 -0
  192. package/generator/dead-code-review/node_modules/fs.realpath/README.md +33 -0
  193. package/generator/dead-code-review/node_modules/fs.realpath/index.js +66 -0
  194. package/generator/dead-code-review/node_modules/fs.realpath/old.js +303 -0
  195. package/generator/dead-code-review/node_modules/fs.realpath/package.json +26 -0
  196. package/generator/dead-code-review/node_modules/fsevents/LICENSE +22 -0
  197. package/generator/dead-code-review/node_modules/fsevents/README.md +83 -0
  198. package/generator/dead-code-review/node_modules/fsevents/fsevents.d.ts +46 -0
  199. package/generator/dead-code-review/node_modules/fsevents/fsevents.js +82 -0
  200. package/generator/dead-code-review/node_modules/fsevents/fsevents.node +0 -0
  201. package/generator/dead-code-review/node_modules/fsevents/package.json +62 -0
  202. package/generator/dead-code-review/node_modules/glob/LICENSE +15 -0
  203. package/generator/dead-code-review/node_modules/glob/README.md +378 -0
  204. package/generator/dead-code-review/node_modules/glob/common.js +240 -0
  205. package/generator/dead-code-review/node_modules/glob/glob.js +790 -0
  206. package/generator/dead-code-review/node_modules/glob/package.json +55 -0
  207. package/generator/dead-code-review/node_modules/glob/sync.js +486 -0
  208. package/generator/dead-code-review/node_modules/glob-parent/CHANGELOG.md +110 -0
  209. package/generator/dead-code-review/node_modules/glob-parent/LICENSE +15 -0
  210. package/generator/dead-code-review/node_modules/glob-parent/README.md +137 -0
  211. package/generator/dead-code-review/node_modules/glob-parent/index.js +42 -0
  212. package/generator/dead-code-review/node_modules/glob-parent/package.json +48 -0
  213. package/generator/dead-code-review/node_modules/graceful-fs/LICENSE +15 -0
  214. package/generator/dead-code-review/node_modules/graceful-fs/README.md +143 -0
  215. package/generator/dead-code-review/node_modules/graceful-fs/clone.js +23 -0
  216. package/generator/dead-code-review/node_modules/graceful-fs/graceful-fs.js +448 -0
  217. package/generator/dead-code-review/node_modules/graceful-fs/legacy-streams.js +118 -0
  218. package/generator/dead-code-review/node_modules/graceful-fs/package.json +50 -0
  219. package/generator/dead-code-review/node_modules/graceful-fs/polyfills.js +355 -0
  220. package/generator/dead-code-review/node_modules/has-flag/index.d.ts +39 -0
  221. package/generator/dead-code-review/node_modules/has-flag/index.js +8 -0
  222. package/generator/dead-code-review/node_modules/has-flag/license +9 -0
  223. package/generator/dead-code-review/node_modules/has-flag/package.json +46 -0
  224. package/generator/dead-code-review/node_modules/has-flag/readme.md +89 -0
  225. package/generator/dead-code-review/node_modules/inflight/LICENSE +15 -0
  226. package/generator/dead-code-review/node_modules/inflight/README.md +37 -0
  227. package/generator/dead-code-review/node_modules/inflight/inflight.js +54 -0
  228. package/generator/dead-code-review/node_modules/inflight/package.json +29 -0
  229. package/generator/dead-code-review/node_modules/inherits/LICENSE +16 -0
  230. package/generator/dead-code-review/node_modules/inherits/README.md +42 -0
  231. package/generator/dead-code-review/node_modules/inherits/inherits.js +9 -0
  232. package/generator/dead-code-review/node_modules/inherits/inherits_browser.js +27 -0
  233. package/generator/dead-code-review/node_modules/inherits/package.json +29 -0
  234. package/generator/dead-code-review/node_modules/is-binary-path/index.d.ts +17 -0
  235. package/generator/dead-code-review/node_modules/is-binary-path/index.js +7 -0
  236. package/generator/dead-code-review/node_modules/is-binary-path/license +9 -0
  237. package/generator/dead-code-review/node_modules/is-binary-path/package.json +40 -0
  238. package/generator/dead-code-review/node_modules/is-binary-path/readme.md +34 -0
  239. package/generator/dead-code-review/node_modules/is-extglob/LICENSE +21 -0
  240. package/generator/dead-code-review/node_modules/is-extglob/README.md +107 -0
  241. package/generator/dead-code-review/node_modules/is-extglob/index.js +20 -0
  242. package/generator/dead-code-review/node_modules/is-extglob/package.json +69 -0
  243. package/generator/dead-code-review/node_modules/is-glob/LICENSE +21 -0
  244. package/generator/dead-code-review/node_modules/is-glob/README.md +206 -0
  245. package/generator/dead-code-review/node_modules/is-glob/index.js +150 -0
  246. package/generator/dead-code-review/node_modules/is-glob/package.json +81 -0
  247. package/generator/dead-code-review/node_modules/is-number/LICENSE +21 -0
  248. package/generator/dead-code-review/node_modules/is-number/README.md +187 -0
  249. package/generator/dead-code-review/node_modules/is-number/index.js +18 -0
  250. package/generator/dead-code-review/node_modules/is-number/package.json +82 -0
  251. package/generator/dead-code-review/node_modules/isexe/LICENSE +15 -0
  252. package/generator/dead-code-review/node_modules/isexe/README.md +51 -0
  253. package/generator/dead-code-review/node_modules/isexe/index.js +57 -0
  254. package/generator/dead-code-review/node_modules/isexe/mode.js +41 -0
  255. package/generator/dead-code-review/node_modules/isexe/package.json +31 -0
  256. package/generator/dead-code-review/node_modules/isexe/test/basic.js +221 -0
  257. package/generator/dead-code-review/node_modules/isexe/windows.js +42 -0
  258. package/generator/dead-code-review/node_modules/minimatch/LICENSE +15 -0
  259. package/generator/dead-code-review/node_modules/minimatch/README.md +259 -0
  260. package/generator/dead-code-review/node_modules/minimatch/lib/path.js +4 -0
  261. package/generator/dead-code-review/node_modules/minimatch/minimatch.js +906 -0
  262. package/generator/dead-code-review/node_modules/minimatch/package.json +32 -0
  263. package/generator/dead-code-review/node_modules/normalize-path/LICENSE +21 -0
  264. package/generator/dead-code-review/node_modules/normalize-path/README.md +127 -0
  265. package/generator/dead-code-review/node_modules/normalize-path/index.js +35 -0
  266. package/generator/dead-code-review/node_modules/normalize-path/package.json +77 -0
  267. package/generator/dead-code-review/node_modules/once/LICENSE +15 -0
  268. package/generator/dead-code-review/node_modules/once/README.md +79 -0
  269. package/generator/dead-code-review/node_modules/once/once.js +42 -0
  270. package/generator/dead-code-review/node_modules/once/package.json +33 -0
  271. package/generator/dead-code-review/node_modules/path-key/index.d.ts +40 -0
  272. package/generator/dead-code-review/node_modules/path-key/index.js +16 -0
  273. package/generator/dead-code-review/node_modules/path-key/license +9 -0
  274. package/generator/dead-code-review/node_modules/path-key/package.json +39 -0
  275. package/generator/dead-code-review/node_modules/path-key/readme.md +61 -0
  276. package/generator/dead-code-review/node_modules/picomatch/CHANGELOG.md +136 -0
  277. package/generator/dead-code-review/node_modules/picomatch/LICENSE +21 -0
  278. package/generator/dead-code-review/node_modules/picomatch/README.md +708 -0
  279. package/generator/dead-code-review/node_modules/picomatch/index.js +3 -0
  280. package/generator/dead-code-review/node_modules/picomatch/lib/constants.js +179 -0
  281. package/generator/dead-code-review/node_modules/picomatch/lib/parse.js +1091 -0
  282. package/generator/dead-code-review/node_modules/picomatch/lib/picomatch.js +342 -0
  283. package/generator/dead-code-review/node_modules/picomatch/lib/scan.js +391 -0
  284. package/generator/dead-code-review/node_modules/picomatch/lib/utils.js +64 -0
  285. package/generator/dead-code-review/node_modules/picomatch/package.json +81 -0
  286. package/generator/dead-code-review/node_modules/readdirp/LICENSE +21 -0
  287. package/generator/dead-code-review/node_modules/readdirp/README.md +122 -0
  288. package/generator/dead-code-review/node_modules/readdirp/index.d.ts +43 -0
  289. package/generator/dead-code-review/node_modules/readdirp/index.js +287 -0
  290. package/generator/dead-code-review/node_modules/readdirp/package.json +122 -0
  291. package/generator/dead-code-review/node_modules/shebang-command/index.js +19 -0
  292. package/generator/dead-code-review/node_modules/shebang-command/license +9 -0
  293. package/generator/dead-code-review/node_modules/shebang-command/package.json +34 -0
  294. package/generator/dead-code-review/node_modules/shebang-command/readme.md +34 -0
  295. package/generator/dead-code-review/node_modules/shebang-regex/index.d.ts +22 -0
  296. package/generator/dead-code-review/node_modules/shebang-regex/index.js +2 -0
  297. package/generator/dead-code-review/node_modules/shebang-regex/license +9 -0
  298. package/generator/dead-code-review/node_modules/shebang-regex/package.json +35 -0
  299. package/generator/dead-code-review/node_modules/shebang-regex/readme.md +33 -0
  300. package/generator/dead-code-review/node_modules/split/.travis.yml +3 -0
  301. package/generator/dead-code-review/node_modules/split/LICENCE +22 -0
  302. package/generator/dead-code-review/node_modules/split/examples/pretty.js +26 -0
  303. package/generator/dead-code-review/node_modules/split/index.js +63 -0
  304. package/generator/dead-code-review/node_modules/split/package.json +30 -0
  305. package/generator/dead-code-review/node_modules/split/readme.markdown +72 -0
  306. package/generator/dead-code-review/node_modules/split/test/options.asynct.js +46 -0
  307. package/generator/dead-code-review/node_modules/split/test/partitioned_unicode.js +34 -0
  308. package/generator/dead-code-review/node_modules/split/test/split.asynct.js +137 -0
  309. package/generator/dead-code-review/node_modules/split/test/try_catch.asynct.js +51 -0
  310. package/generator/dead-code-review/node_modules/supports-color/browser.js +5 -0
  311. package/generator/dead-code-review/node_modules/supports-color/index.js +135 -0
  312. package/generator/dead-code-review/node_modules/supports-color/license +9 -0
  313. package/generator/dead-code-review/node_modules/supports-color/package.json +53 -0
  314. package/generator/dead-code-review/node_modules/supports-color/readme.md +76 -0
  315. package/generator/dead-code-review/node_modules/through/.travis.yml +5 -0
  316. package/generator/dead-code-review/node_modules/through/LICENSE.APACHE2 +15 -0
  317. package/generator/dead-code-review/node_modules/through/LICENSE.MIT +24 -0
  318. package/generator/dead-code-review/node_modules/through/index.js +108 -0
  319. package/generator/dead-code-review/node_modules/through/package.json +36 -0
  320. package/generator/dead-code-review/node_modules/through/readme.markdown +64 -0
  321. package/generator/dead-code-review/node_modules/through/test/async.js +28 -0
  322. package/generator/dead-code-review/node_modules/through/test/auto-destroy.js +30 -0
  323. package/generator/dead-code-review/node_modules/through/test/buffering.js +71 -0
  324. package/generator/dead-code-review/node_modules/through/test/end.js +45 -0
  325. package/generator/dead-code-review/node_modules/through/test/index.js +133 -0
  326. package/generator/dead-code-review/node_modules/to-regex-range/LICENSE +21 -0
  327. package/generator/dead-code-review/node_modules/to-regex-range/README.md +305 -0
  328. package/generator/dead-code-review/node_modules/to-regex-range/index.js +288 -0
  329. package/generator/dead-code-review/node_modules/to-regex-range/package.json +88 -0
  330. package/generator/dead-code-review/node_modules/which/CHANGELOG.md +166 -0
  331. package/generator/dead-code-review/node_modules/which/LICENSE +15 -0
  332. package/generator/dead-code-review/node_modules/which/README.md +54 -0
  333. package/generator/dead-code-review/node_modules/which/bin/node-which +52 -0
  334. package/generator/dead-code-review/node_modules/which/package.json +43 -0
  335. package/generator/dead-code-review/node_modules/which/which.js +125 -0
  336. package/generator/dead-code-review/node_modules/wrappy/LICENSE +15 -0
  337. package/generator/dead-code-review/node_modules/wrappy/README.md +36 -0
  338. package/generator/dead-code-review/node_modules/wrappy/package.json +29 -0
  339. package/generator/dead-code-review/node_modules/wrappy/wrappy.js +33 -0
  340. package/generator/dead-code-review/node_modules/xmlbuilder/.nycrc +6 -0
  341. package/generator/dead-code-review/node_modules/xmlbuilder/.vscode/launch.json +23 -0
  342. package/generator/dead-code-review/node_modules/xmlbuilder/CHANGELOG.md +593 -0
  343. package/generator/dead-code-review/node_modules/xmlbuilder/LICENSE +21 -0
  344. package/generator/dead-code-review/node_modules/xmlbuilder/README.md +103 -0
  345. package/generator/dead-code-review/node_modules/xmlbuilder/lib/Derivation.js +10 -0
  346. package/generator/dead-code-review/node_modules/xmlbuilder/lib/DocumentPosition.js +12 -0
  347. package/generator/dead-code-review/node_modules/xmlbuilder/lib/NodeType.js +25 -0
  348. package/generator/dead-code-review/node_modules/xmlbuilder/lib/OperationType.js +11 -0
  349. package/generator/dead-code-review/node_modules/xmlbuilder/lib/Utility.js +88 -0
  350. package/generator/dead-code-review/node_modules/xmlbuilder/lib/WriterState.js +10 -0
  351. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLAttribute.js +130 -0
  352. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLCData.js +41 -0
  353. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLCharacterData.js +86 -0
  354. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLComment.js +41 -0
  355. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMConfiguration.js +80 -0
  356. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMErrorHandler.js +20 -0
  357. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMImplementation.js +55 -0
  358. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMStringList.js +44 -0
  359. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDAttList.js +66 -0
  360. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDElement.js +44 -0
  361. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDEntity.js +115 -0
  362. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDNotation.js +66 -0
  363. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDeclaration.js +51 -0
  364. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocType.js +235 -0
  365. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocument.js +282 -0
  366. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocumentCB.js +650 -0
  367. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocumentFragment.js +21 -0
  368. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDummy.js +39 -0
  369. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLElement.js +334 -0
  370. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNamedNodeMap.js +77 -0
  371. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNode.js +999 -0
  372. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNodeFilter.js +51 -0
  373. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNodeList.js +45 -0
  374. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLProcessingInstruction.js +56 -0
  375. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLRaw.js +40 -0
  376. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStreamWriter.js +209 -0
  377. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStringWriter.js +40 -0
  378. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStringifier.js +291 -0
  379. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLText.js +82 -0
  380. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLTypeInfo.js +23 -0
  381. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLUserDataHandler.js +27 -0
  382. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLWriterBase.js +485 -0
  383. package/generator/dead-code-review/node_modules/xmlbuilder/lib/index.js +120 -0
  384. package/generator/dead-code-review/node_modules/xmlbuilder/package.json +51 -0
  385. package/generator/dead-code-review/node_modules/xmlbuilder/perf/basic/escaping.coffee +244 -0
  386. package/generator/dead-code-review/node_modules/xmlbuilder/perf/basic/object.coffee +21 -0
  387. package/generator/dead-code-review/node_modules/xmlbuilder/perf/index.coffee +161 -0
  388. package/generator/dead-code-review/node_modules/xmlbuilder/perf/perf.list +11 -0
  389. package/generator/dead-code-review/node_modules/xmlbuilder/typings/index.d.ts +1771 -0
  390. package/generator/review/elm-stuff/0.19.1/d.dat +0 -0
  391. package/generator/review/elm-stuff/0.19.1/i.dat +0 -0
  392. package/generator/review/elm-stuff/0.19.1/o.dat +0 -0
  393. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm-stuff/0.19.1/d.dat +0 -0
  394. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm-stuff/0.19.1/i.dat +0 -0
  395. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm-stuff/0.19.1/o.dat +0 -0
  396. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm.json +25 -0
  397. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm-stuff/0.19.1/d.dat +0 -0
  398. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm-stuff/0.19.1/i.dat +0 -0
  399. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm-stuff/0.19.1/o.dat +0 -0
  400. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm.json +41 -0
  401. package/generator/review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/d.dat +0 -0
  402. package/generator/review/elm-stuff/tests-0.19.1/js/Reporter.elm.js +1 -1
  403. package/generator/review/elm-stuff/tests-0.19.1/js/Runner.elm.js +1 -1
  404. package/generator/review/elm-stuff/tests-0.19.1/js/node_runner.js +1 -1
  405. package/generator/review/elm-stuff/tests-0.19.1/js/node_supervisor.js +4 -4
  406. package/generator/src/cli.js +15 -7
  407. package/generator/src/compatibility-key.js +3 -1
  408. package/generator/src/dev-server.js +0 -13
  409. package/generator/src/pre-render-html.js +4 -6
  410. package/generator/src/render-worker.js +4 -1
  411. package/generator/src/request-cache.js +59 -8
  412. package/generator/template/app/Api.elm +4 -3
  413. package/generator/template/app/Effect.elm +123 -0
  414. package/generator/template/app/ErrorPage.elm +37 -6
  415. package/generator/template/app/Route/Index.elm +14 -7
  416. package/generator/template/app/Shared.elm +23 -46
  417. package/generator/template/app/Site.elm +11 -3
  418. package/generator/template/app/View.elm +1 -8
  419. package/generator/template/elm-tooling.json +0 -3
  420. package/generator/template/elm.json +34 -25
  421. package/generator/template/package.json +10 -4
  422. package/package.json +1 -1
  423. package/src/BackendTask/Custom.elm +110 -6
  424. package/src/Form/Field.elm +21 -9
  425. package/src/Form/FieldView.elm +14 -4
  426. package/src/Form.elm +61 -53
  427. package/src/Pages/Internal/Platform/Cli.elm +262 -235
  428. package/src/Pages/Internal/Platform/CompatibilityKey.elm +1 -1
  429. package/src/Pages/Internal/Platform.elm +56 -35
  430. package/src/Result/Extra.elm +6 -1
  431. package/src/Scaffold/Form.elm +474 -0
  432. package/src/{Pages/Generate.elm → Scaffold/Route.elm} +35 -5
  433. package/src/Test/Html/Internal/ElmHtml/ToString.elm +8 -9
@@ -0,0 +1,45 @@
1
+ // @ts-check
2
+
3
+ /**
4
+ * CommanderError class
5
+ * @class
6
+ */
7
+ class CommanderError extends Error {
8
+ /**
9
+ * Constructs the CommanderError class
10
+ * @param {number} exitCode suggested exit code which could be used with process.exit
11
+ * @param {string} code an id string representing the error
12
+ * @param {string} message human-readable description of the error
13
+ * @constructor
14
+ */
15
+ constructor(exitCode, code, message) {
16
+ super(message);
17
+ // properly capture stack trace in Node.js
18
+ Error.captureStackTrace(this, this.constructor);
19
+ this.name = this.constructor.name;
20
+ this.code = code;
21
+ this.exitCode = exitCode;
22
+ this.nestedError = undefined;
23
+ }
24
+ }
25
+
26
+ /**
27
+ * InvalidArgumentError class
28
+ * @class
29
+ */
30
+ class InvalidArgumentError extends CommanderError {
31
+ /**
32
+ * Constructs the InvalidArgumentError class
33
+ * @param {string} [message] explanation of why argument is invalid
34
+ * @constructor
35
+ */
36
+ constructor(message) {
37
+ super(1, 'commander.invalidArgument', message);
38
+ // properly capture stack trace in Node.js
39
+ Error.captureStackTrace(this, this.constructor);
40
+ this.name = this.constructor.name;
41
+ }
42
+ }
43
+
44
+ exports.CommanderError = CommanderError;
45
+ exports.InvalidArgumentError = InvalidArgumentError;
@@ -0,0 +1,406 @@
1
+ const { humanReadableArgName } = require('./argument.js');
2
+
3
+ /**
4
+ * TypeScript import types for JSDoc, used by Visual Studio Code IntelliSense and `npm run typescript-checkJS`
5
+ * https://www.typescriptlang.org/docs/handbook/jsdoc-supported-types.html#import-types
6
+ * @typedef { import("./argument.js").Argument } Argument
7
+ * @typedef { import("./command.js").Command } Command
8
+ * @typedef { import("./option.js").Option } Option
9
+ */
10
+
11
+ // @ts-check
12
+
13
+ // Although this is a class, methods are static in style to allow override using subclass or just functions.
14
+ class Help {
15
+ constructor() {
16
+ this.helpWidth = undefined;
17
+ this.sortSubcommands = false;
18
+ this.sortOptions = false;
19
+ }
20
+
21
+ /**
22
+ * Get an array of the visible subcommands. Includes a placeholder for the implicit help command, if there is one.
23
+ *
24
+ * @param {Command} cmd
25
+ * @returns {Command[]}
26
+ */
27
+
28
+ visibleCommands(cmd) {
29
+ const visibleCommands = cmd.commands.filter(cmd => !cmd._hidden);
30
+ if (cmd._hasImplicitHelpCommand()) {
31
+ // Create a command matching the implicit help command.
32
+ const [, helpName, helpArgs] = cmd._helpCommandnameAndArgs.match(/([^ ]+) *(.*)/);
33
+ const helpCommand = cmd.createCommand(helpName)
34
+ .helpOption(false);
35
+ helpCommand.description(cmd._helpCommandDescription);
36
+ if (helpArgs) helpCommand.arguments(helpArgs);
37
+ visibleCommands.push(helpCommand);
38
+ }
39
+ if (this.sortSubcommands) {
40
+ visibleCommands.sort((a, b) => {
41
+ // @ts-ignore: overloaded return type
42
+ return a.name().localeCompare(b.name());
43
+ });
44
+ }
45
+ return visibleCommands;
46
+ }
47
+
48
+ /**
49
+ * Get an array of the visible options. Includes a placeholder for the implicit help option, if there is one.
50
+ *
51
+ * @param {Command} cmd
52
+ * @returns {Option[]}
53
+ */
54
+
55
+ visibleOptions(cmd) {
56
+ const visibleOptions = cmd.options.filter((option) => !option.hidden);
57
+ // Implicit help
58
+ const showShortHelpFlag = cmd._hasHelpOption && cmd._helpShortFlag && !cmd._findOption(cmd._helpShortFlag);
59
+ const showLongHelpFlag = cmd._hasHelpOption && !cmd._findOption(cmd._helpLongFlag);
60
+ if (showShortHelpFlag || showLongHelpFlag) {
61
+ let helpOption;
62
+ if (!showShortHelpFlag) {
63
+ helpOption = cmd.createOption(cmd._helpLongFlag, cmd._helpDescription);
64
+ } else if (!showLongHelpFlag) {
65
+ helpOption = cmd.createOption(cmd._helpShortFlag, cmd._helpDescription);
66
+ } else {
67
+ helpOption = cmd.createOption(cmd._helpFlags, cmd._helpDescription);
68
+ }
69
+ visibleOptions.push(helpOption);
70
+ }
71
+ if (this.sortOptions) {
72
+ const getSortKey = (option) => {
73
+ // WYSIWYG for order displayed in help with short before long, no special handling for negated.
74
+ return option.short ? option.short.replace(/^-/, '') : option.long.replace(/^--/, '');
75
+ };
76
+ visibleOptions.sort((a, b) => {
77
+ return getSortKey(a).localeCompare(getSortKey(b));
78
+ });
79
+ }
80
+ return visibleOptions;
81
+ }
82
+
83
+ /**
84
+ * Get an array of the arguments if any have a description.
85
+ *
86
+ * @param {Command} cmd
87
+ * @returns {Argument[]}
88
+ */
89
+
90
+ visibleArguments(cmd) {
91
+ // Side effect! Apply the legacy descriptions before the arguments are displayed.
92
+ if (cmd._argsDescription) {
93
+ cmd._args.forEach(argument => {
94
+ argument.description = argument.description || cmd._argsDescription[argument.name()] || '';
95
+ });
96
+ }
97
+
98
+ // If there are any arguments with a description then return all the arguments.
99
+ if (cmd._args.find(argument => argument.description)) {
100
+ return cmd._args;
101
+ }
102
+ return [];
103
+ }
104
+
105
+ /**
106
+ * Get the command term to show in the list of subcommands.
107
+ *
108
+ * @param {Command} cmd
109
+ * @returns {string}
110
+ */
111
+
112
+ subcommandTerm(cmd) {
113
+ // Legacy. Ignores custom usage string, and nested commands.
114
+ const args = cmd._args.map(arg => humanReadableArgName(arg)).join(' ');
115
+ return cmd._name +
116
+ (cmd._aliases[0] ? '|' + cmd._aliases[0] : '') +
117
+ (cmd.options.length ? ' [options]' : '') + // simplistic check for non-help option
118
+ (args ? ' ' + args : '');
119
+ }
120
+
121
+ /**
122
+ * Get the option term to show in the list of options.
123
+ *
124
+ * @param {Option} option
125
+ * @returns {string}
126
+ */
127
+
128
+ optionTerm(option) {
129
+ return option.flags;
130
+ }
131
+
132
+ /**
133
+ * Get the argument term to show in the list of arguments.
134
+ *
135
+ * @param {Argument} argument
136
+ * @returns {string}
137
+ */
138
+
139
+ argumentTerm(argument) {
140
+ return argument.name();
141
+ }
142
+
143
+ /**
144
+ * Get the longest command term length.
145
+ *
146
+ * @param {Command} cmd
147
+ * @param {Help} helper
148
+ * @returns {number}
149
+ */
150
+
151
+ longestSubcommandTermLength(cmd, helper) {
152
+ return helper.visibleCommands(cmd).reduce((max, command) => {
153
+ return Math.max(max, helper.subcommandTerm(command).length);
154
+ }, 0);
155
+ }
156
+
157
+ /**
158
+ * Get the longest option term length.
159
+ *
160
+ * @param {Command} cmd
161
+ * @param {Help} helper
162
+ * @returns {number}
163
+ */
164
+
165
+ longestOptionTermLength(cmd, helper) {
166
+ return helper.visibleOptions(cmd).reduce((max, option) => {
167
+ return Math.max(max, helper.optionTerm(option).length);
168
+ }, 0);
169
+ }
170
+
171
+ /**
172
+ * Get the longest argument term length.
173
+ *
174
+ * @param {Command} cmd
175
+ * @param {Help} helper
176
+ * @returns {number}
177
+ */
178
+
179
+ longestArgumentTermLength(cmd, helper) {
180
+ return helper.visibleArguments(cmd).reduce((max, argument) => {
181
+ return Math.max(max, helper.argumentTerm(argument).length);
182
+ }, 0);
183
+ }
184
+
185
+ /**
186
+ * Get the command usage to be displayed at the top of the built-in help.
187
+ *
188
+ * @param {Command} cmd
189
+ * @returns {string}
190
+ */
191
+
192
+ commandUsage(cmd) {
193
+ // Usage
194
+ let cmdName = cmd._name;
195
+ if (cmd._aliases[0]) {
196
+ cmdName = cmdName + '|' + cmd._aliases[0];
197
+ }
198
+ let parentCmdNames = '';
199
+ for (let parentCmd = cmd.parent; parentCmd; parentCmd = parentCmd.parent) {
200
+ parentCmdNames = parentCmd.name() + ' ' + parentCmdNames;
201
+ }
202
+ return parentCmdNames + cmdName + ' ' + cmd.usage();
203
+ }
204
+
205
+ /**
206
+ * Get the description for the command.
207
+ *
208
+ * @param {Command} cmd
209
+ * @returns {string}
210
+ */
211
+
212
+ commandDescription(cmd) {
213
+ // @ts-ignore: overloaded return type
214
+ return cmd.description();
215
+ }
216
+
217
+ /**
218
+ * Get the subcommand summary to show in the list of subcommands.
219
+ * (Fallback to description for backwards compatiblity.)
220
+ *
221
+ * @param {Command} cmd
222
+ * @returns {string}
223
+ */
224
+
225
+ subcommandDescription(cmd) {
226
+ // @ts-ignore: overloaded return type
227
+ return cmd.summary() || cmd.description();
228
+ }
229
+
230
+ /**
231
+ * Get the option description to show in the list of options.
232
+ *
233
+ * @param {Option} option
234
+ * @return {string}
235
+ */
236
+
237
+ optionDescription(option) {
238
+ const extraInfo = [];
239
+
240
+ if (option.argChoices) {
241
+ extraInfo.push(
242
+ // use stringify to match the display of the default value
243
+ `choices: ${option.argChoices.map((choice) => JSON.stringify(choice)).join(', ')}`);
244
+ }
245
+ if (option.defaultValue !== undefined) {
246
+ // default for boolean and negated more for programmer than end user,
247
+ // but show true/false for boolean option as may be for hand-rolled env or config processing.
248
+ const showDefault = option.required || option.optional ||
249
+ (option.isBoolean() && typeof option.defaultValue === 'boolean');
250
+ if (showDefault) {
251
+ extraInfo.push(`default: ${option.defaultValueDescription || JSON.stringify(option.defaultValue)}`);
252
+ }
253
+ }
254
+ // preset for boolean and negated are more for programmer than end user
255
+ if (option.presetArg !== undefined && option.optional) {
256
+ extraInfo.push(`preset: ${JSON.stringify(option.presetArg)}`);
257
+ }
258
+ if (option.envVar !== undefined) {
259
+ extraInfo.push(`env: ${option.envVar}`);
260
+ }
261
+ if (extraInfo.length > 0) {
262
+ return `${option.description} (${extraInfo.join(', ')})`;
263
+ }
264
+
265
+ return option.description;
266
+ }
267
+
268
+ /**
269
+ * Get the argument description to show in the list of arguments.
270
+ *
271
+ * @param {Argument} argument
272
+ * @return {string}
273
+ */
274
+
275
+ argumentDescription(argument) {
276
+ const extraInfo = [];
277
+ if (argument.argChoices) {
278
+ extraInfo.push(
279
+ // use stringify to match the display of the default value
280
+ `choices: ${argument.argChoices.map((choice) => JSON.stringify(choice)).join(', ')}`);
281
+ }
282
+ if (argument.defaultValue !== undefined) {
283
+ extraInfo.push(`default: ${argument.defaultValueDescription || JSON.stringify(argument.defaultValue)}`);
284
+ }
285
+ if (extraInfo.length > 0) {
286
+ const extraDescripton = `(${extraInfo.join(', ')})`;
287
+ if (argument.description) {
288
+ return `${argument.description} ${extraDescripton}`;
289
+ }
290
+ return extraDescripton;
291
+ }
292
+ return argument.description;
293
+ }
294
+
295
+ /**
296
+ * Generate the built-in help text.
297
+ *
298
+ * @param {Command} cmd
299
+ * @param {Help} helper
300
+ * @returns {string}
301
+ */
302
+
303
+ formatHelp(cmd, helper) {
304
+ const termWidth = helper.padWidth(cmd, helper);
305
+ const helpWidth = helper.helpWidth || 80;
306
+ const itemIndentWidth = 2;
307
+ const itemSeparatorWidth = 2; // between term and description
308
+ function formatItem(term, description) {
309
+ if (description) {
310
+ const fullText = `${term.padEnd(termWidth + itemSeparatorWidth)}${description}`;
311
+ return helper.wrap(fullText, helpWidth - itemIndentWidth, termWidth + itemSeparatorWidth);
312
+ }
313
+ return term;
314
+ }
315
+ function formatList(textArray) {
316
+ return textArray.join('\n').replace(/^/gm, ' '.repeat(itemIndentWidth));
317
+ }
318
+
319
+ // Usage
320
+ let output = [`Usage: ${helper.commandUsage(cmd)}`, ''];
321
+
322
+ // Description
323
+ const commandDescription = helper.commandDescription(cmd);
324
+ if (commandDescription.length > 0) {
325
+ output = output.concat([commandDescription, '']);
326
+ }
327
+
328
+ // Arguments
329
+ const argumentList = helper.visibleArguments(cmd).map((argument) => {
330
+ return formatItem(helper.argumentTerm(argument), helper.argumentDescription(argument));
331
+ });
332
+ if (argumentList.length > 0) {
333
+ output = output.concat(['Arguments:', formatList(argumentList), '']);
334
+ }
335
+
336
+ // Options
337
+ const optionList = helper.visibleOptions(cmd).map((option) => {
338
+ return formatItem(helper.optionTerm(option), helper.optionDescription(option));
339
+ });
340
+ if (optionList.length > 0) {
341
+ output = output.concat(['Options:', formatList(optionList), '']);
342
+ }
343
+
344
+ // Commands
345
+ const commandList = helper.visibleCommands(cmd).map((cmd) => {
346
+ return formatItem(helper.subcommandTerm(cmd), helper.subcommandDescription(cmd));
347
+ });
348
+ if (commandList.length > 0) {
349
+ output = output.concat(['Commands:', formatList(commandList), '']);
350
+ }
351
+
352
+ return output.join('\n');
353
+ }
354
+
355
+ /**
356
+ * Calculate the pad width from the maximum term length.
357
+ *
358
+ * @param {Command} cmd
359
+ * @param {Help} helper
360
+ * @returns {number}
361
+ */
362
+
363
+ padWidth(cmd, helper) {
364
+ return Math.max(
365
+ helper.longestOptionTermLength(cmd, helper),
366
+ helper.longestSubcommandTermLength(cmd, helper),
367
+ helper.longestArgumentTermLength(cmd, helper)
368
+ );
369
+ }
370
+
371
+ /**
372
+ * Wrap the given string to width characters per line, with lines after the first indented.
373
+ * Do not wrap if insufficient room for wrapping (minColumnWidth), or string is manually formatted.
374
+ *
375
+ * @param {string} str
376
+ * @param {number} width
377
+ * @param {number} indent
378
+ * @param {number} [minColumnWidth=40]
379
+ * @return {string}
380
+ *
381
+ */
382
+
383
+ wrap(str, width, indent, minColumnWidth = 40) {
384
+ // Detect manually wrapped and indented strings by searching for line breaks
385
+ // followed by multiple spaces/tabs.
386
+ if (str.match(/[\n]\s+/)) return str;
387
+ // Do not wrap if not enough room for a wrapped column of text (as could end up with a word per line).
388
+ const columnWidth = width - indent;
389
+ if (columnWidth < minColumnWidth) return str;
390
+
391
+ const leadingStr = str.slice(0, indent);
392
+ const columnText = str.slice(indent);
393
+
394
+ const indentString = ' '.repeat(indent);
395
+ const regex = new RegExp('.{1,' + (columnWidth - 1) + '}([\\s\u200B]|$)|[^\\s\u200B]+?([\\s\u200B]|$)', 'g');
396
+ const lines = columnText.match(regex) || [];
397
+ return leadingStr + lines.map((line, i) => {
398
+ if (line.slice(-1) === '\n') {
399
+ line = line.slice(0, line.length - 1);
400
+ }
401
+ return ((i > 0) ? indentString : '') + line.trimRight();
402
+ }).join('\n');
403
+ }
404
+ }
405
+
406
+ exports.Help = Help;