create-packer 1.34.9 → 1.35.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 (1674) hide show
  1. package/README.md +4 -4
  2. package/package.json +1 -1
  3. package/template/web-app/react-rspack/.env +2 -0
  4. package/template/web-app/react-rspack/.env.development +2 -0
  5. package/template/web-app/react-rspack/.eslintrc +120 -0
  6. package/template/web-app/react-rspack/README.md +14 -0
  7. package/template/web-app/react-rspack/domain/router/router.tsx +28 -0
  8. package/template/web-app/react-rspack/env.d.ts +17 -0
  9. package/template/web-app/react-rspack/index.html +12 -0
  10. package/template/web-app/react-rspack/package.json +83 -0
  11. package/template/web-app/react-rspack/public/rsbuild-logo.svg +1 -0
  12. package/template/web-app/react-rspack/rsbuild.config.ts +78 -0
  13. package/template/web-app/react-rspack/shared/service/home.ts +8 -0
  14. package/template/web-app/react-rspack/shared/service/request.ts +5 -0
  15. package/template/web-app/react-rspack/tsconfig.node.json +14 -0
  16. package/template/web-app/react-vite/.editorconfig +14 -0
  17. package/template/web-app/react-vite/.eslintignore +4 -0
  18. package/template/web-app/react-vite/.gitignore +28 -0
  19. package/template/web-app/react-vite/.husky/commit-msg +4 -0
  20. package/template/web-app/react-vite/.husky/pre-commit +4 -0
  21. package/template/web-app/react-vite/.prettierignore +6 -0
  22. package/template/web-app/react-vite/.prettierrc +12 -0
  23. package/template/web-app/react-vite/.stylelintignore +4 -0
  24. package/template/web-app/react-vite/.stylelintrc +24 -0
  25. package/template/web-app/react-vite/.vscode/extensions.json +8 -0
  26. package/template/web-app/react-vite/.vscode/settings.json +18 -0
  27. package/template/web-app/react-vite/commitlint.config.cjs +1 -0
  28. package/template/web-app/react-vite/domain/app/app.model.ts +7 -0
  29. package/template/web-app/react-vite/domain/app/app.styled.ts +3 -0
  30. package/template/web-app/react-vite/domain/app/components/app-context.tsx +17 -0
  31. package/template/web-app/react-vite/domain/app/components/app.tsx +24 -0
  32. package/template/web-app/react-vite/domain/app/components/index.ts +1 -0
  33. package/template/web-app/react-vite/domain/app/index.ts +2 -0
  34. package/template/web-app/react-vite/domain/router/home/ids.ts +3 -0
  35. package/template/web-app/react-vite/domain/router/home/index.ts +2 -0
  36. package/template/web-app/react-vite/domain/router/home/routes.tsx +13 -0
  37. package/template/web-app/react-vite/domain/router/ids.ts +6 -0
  38. package/template/web-app/react-vite/domain/router/index.ts +3 -0
  39. package/template/web-app/react-vite/domain/router/router.types.ts +3 -0
  40. package/template/web-app/react-vite/main.tsx +4 -0
  41. package/template/web-app/react-vite/pages/home/home.styled.ts +7 -0
  42. package/template/web-app/react-vite/pages/home/home.tsx +10 -0
  43. package/template/web-app/react-vite/pages/home/index.ts +1 -0
  44. package/template/web-app/react-vite/pages/index.tsx +18 -0
  45. package/template/web-app/react-vite/pages/not-found.tsx +3 -0
  46. package/template/web-app/react-vite/postcss.config.cjs +7 -0
  47. package/template/web-app/react-vite/scripts/createChunks.ts +26 -0
  48. package/template/web-app/react-vite/scripts/index.ts +1 -0
  49. package/template/web-app/react-vite/shared/assets/react.svg +1 -0
  50. package/template/web-app/react-vite/shared/components/index.ts +0 -0
  51. package/template/web-app/react-vite/shared/constant/index.ts +0 -0
  52. package/template/web-app/react-vite/shared/hooks/defineRouter/defineRouter.types.ts +33 -0
  53. package/template/web-app/react-vite/shared/hooks/defineRouter/deineRouter.tsx +160 -0
  54. package/template/web-app/react-vite/shared/hooks/defineRouter/index.ts +2 -0
  55. package/template/web-app/react-vite/shared/hooks/index.ts +6 -0
  56. package/template/web-app/react-vite/shared/hooks/useInterval.ts +26 -0
  57. package/template/web-app/react-vite/shared/hooks/useLoadingAction.ts +27 -0
  58. package/template/web-app/react-vite/shared/hooks/useLowPriorityState.ts +26 -0
  59. package/template/web-app/react-vite/shared/hooks/useSyncState.ts +15 -0
  60. package/template/web-app/react-vite/shared/hooks/useVisible.ts +27 -0
  61. package/template/web-app/react-vite/shared/service/api.ts +1 -0
  62. package/template/web-app/react-vite/shared/service/index.ts +3 -0
  63. package/template/web-app/react-vite/shared/theme/index.ts +1 -0
  64. package/template/web-app/react-vite/shared/theme/theme.styled.ts +56 -0
  65. package/template/web-app/react-vite/shared/tools/componentInstance.tsx +80 -0
  66. package/template/web-app/react-vite/shared/tools/index.ts +1 -0
  67. package/template/web-app/react-vite/shared/types/index.ts +1 -0
  68. package/template/web-app/react-vite/shared/types/utils.ts +2 -0
  69. package/template/web-app/react-vite/tsconfig.json +44 -0
  70. package/template/web-app/react-webpack/webpack.config.mjs +4 -5
  71. package/template/lib/react/node_modules/.bin/acorn +0 -17
  72. package/template/lib/react/node_modules/.bin/acorn.CMD +0 -12
  73. package/template/lib/react/node_modules/.bin/acorn.ps1 +0 -41
  74. package/template/lib/react/node_modules/.bin/browserslist +0 -17
  75. package/template/lib/react/node_modules/.bin/browserslist.CMD +0 -12
  76. package/template/lib/react/node_modules/.bin/browserslist.ps1 +0 -41
  77. package/template/lib/react/node_modules/.bin/esbuild +0 -17
  78. package/template/lib/react/node_modules/.bin/esbuild.CMD +0 -12
  79. package/template/lib/react/node_modules/.bin/esbuild.ps1 +0 -41
  80. package/template/lib/react/node_modules/.bin/eslint +0 -17
  81. package/template/lib/react/node_modules/.bin/eslint.CMD +0 -12
  82. package/template/lib/react/node_modules/.bin/eslint.ps1 +0 -41
  83. package/template/lib/react/node_modules/.bin/prettier +0 -17
  84. package/template/lib/react/node_modules/.bin/prettier.CMD +0 -12
  85. package/template/lib/react/node_modules/.bin/prettier.ps1 +0 -41
  86. package/template/lib/react/node_modules/.bin/sb +0 -17
  87. package/template/lib/react/node_modules/.bin/sb.CMD +0 -12
  88. package/template/lib/react/node_modules/.bin/sb.ps1 +0 -41
  89. package/template/lib/react/node_modules/.bin/storybook +0 -17
  90. package/template/lib/react/node_modules/.bin/storybook.CMD +0 -12
  91. package/template/lib/react/node_modules/.bin/storybook.ps1 +0 -41
  92. package/template/lib/react/node_modules/.bin/stylelint +0 -17
  93. package/template/lib/react/node_modules/.bin/stylelint.CMD +0 -12
  94. package/template/lib/react/node_modules/.bin/stylelint.ps1 +0 -41
  95. package/template/lib/react/node_modules/.bin/tsc +0 -17
  96. package/template/lib/react/node_modules/.bin/tsc.CMD +0 -12
  97. package/template/lib/react/node_modules/.bin/tsc.ps1 +0 -41
  98. package/template/lib/react/node_modules/.bin/tsserver +0 -17
  99. package/template/lib/react/node_modules/.bin/tsserver.CMD +0 -12
  100. package/template/lib/react/node_modules/.bin/tsserver.ps1 +0 -41
  101. package/template/lib/react/node_modules/.bin/vite +0 -17
  102. package/template/lib/react/node_modules/.bin/vite.CMD +0 -12
  103. package/template/lib/react/node_modules/.bin/vite.ps1 +0 -41
  104. package/template/lib/react/node_modules/eslint/LICENSE +0 -19
  105. package/template/lib/react/node_modules/eslint/README.md +0 -304
  106. package/template/lib/react/node_modules/eslint/bin/eslint.js +0 -173
  107. package/template/lib/react/node_modules/eslint/conf/config-schema.js +0 -93
  108. package/template/lib/react/node_modules/eslint/conf/default-cli-options.js +0 -32
  109. package/template/lib/react/node_modules/eslint/conf/globals.js +0 -154
  110. package/template/lib/react/node_modules/eslint/conf/replacements.json +0 -22
  111. package/template/lib/react/node_modules/eslint/conf/rule-type-list.json +0 -28
  112. package/template/lib/react/node_modules/eslint/lib/api.js +0 -26
  113. package/template/lib/react/node_modules/eslint/lib/cli-engine/cli-engine.js +0 -1078
  114. package/template/lib/react/node_modules/eslint/lib/cli-engine/file-enumerator.js +0 -547
  115. package/template/lib/react/node_modules/eslint/lib/cli-engine/formatters/checkstyle.js +0 -60
  116. package/template/lib/react/node_modules/eslint/lib/cli-engine/formatters/compact.js +0 -60
  117. package/template/lib/react/node_modules/eslint/lib/cli-engine/formatters/formatters-meta.json +0 -46
  118. package/template/lib/react/node_modules/eslint/lib/cli-engine/formatters/html.js +0 -351
  119. package/template/lib/react/node_modules/eslint/lib/cli-engine/formatters/jslint-xml.js +0 -41
  120. package/template/lib/react/node_modules/eslint/lib/cli-engine/formatters/json-with-metadata.js +0 -16
  121. package/template/lib/react/node_modules/eslint/lib/cli-engine/formatters/json.js +0 -13
  122. package/template/lib/react/node_modules/eslint/lib/cli-engine/formatters/junit.js +0 -82
  123. package/template/lib/react/node_modules/eslint/lib/cli-engine/formatters/stylish.js +0 -101
  124. package/template/lib/react/node_modules/eslint/lib/cli-engine/formatters/tap.js +0 -95
  125. package/template/lib/react/node_modules/eslint/lib/cli-engine/formatters/unix.js +0 -58
  126. package/template/lib/react/node_modules/eslint/lib/cli-engine/formatters/visualstudio.js +0 -63
  127. package/template/lib/react/node_modules/eslint/lib/cli-engine/hash.js +0 -35
  128. package/template/lib/react/node_modules/eslint/lib/cli-engine/index.js +0 -7
  129. package/template/lib/react/node_modules/eslint/lib/cli-engine/lint-result-cache.js +0 -203
  130. package/template/lib/react/node_modules/eslint/lib/cli-engine/load-rules.js +0 -46
  131. package/template/lib/react/node_modules/eslint/lib/cli-engine/xml-escape.js +0 -34
  132. package/template/lib/react/node_modules/eslint/lib/cli.js +0 -471
  133. package/template/lib/react/node_modules/eslint/lib/config/default-config.js +0 -67
  134. package/template/lib/react/node_modules/eslint/lib/config/flat-config-array.js +0 -274
  135. package/template/lib/react/node_modules/eslint/lib/config/flat-config-helpers.js +0 -111
  136. package/template/lib/react/node_modules/eslint/lib/config/flat-config-schema.js +0 -583
  137. package/template/lib/react/node_modules/eslint/lib/config/rule-validator.js +0 -158
  138. package/template/lib/react/node_modules/eslint/lib/eslint/eslint-helpers.js +0 -902
  139. package/template/lib/react/node_modules/eslint/lib/eslint/eslint.js +0 -700
  140. package/template/lib/react/node_modules/eslint/lib/eslint/flat-eslint.js +0 -1142
  141. package/template/lib/react/node_modules/eslint/lib/eslint/index.js +0 -9
  142. package/template/lib/react/node_modules/eslint/lib/linter/apply-disable-directives.js +0 -465
  143. package/template/lib/react/node_modules/eslint/lib/linter/code-path-analysis/code-path-analyzer.js +0 -852
  144. package/template/lib/react/node_modules/eslint/lib/linter/code-path-analysis/code-path-segment.js +0 -263
  145. package/template/lib/react/node_modules/eslint/lib/linter/code-path-analysis/code-path-state.js +0 -2348
  146. package/template/lib/react/node_modules/eslint/lib/linter/code-path-analysis/code-path.js +0 -342
  147. package/template/lib/react/node_modules/eslint/lib/linter/code-path-analysis/debug-helpers.js +0 -203
  148. package/template/lib/react/node_modules/eslint/lib/linter/code-path-analysis/fork-context.js +0 -349
  149. package/template/lib/react/node_modules/eslint/lib/linter/code-path-analysis/id-generator.js +0 -45
  150. package/template/lib/react/node_modules/eslint/lib/linter/config-comment-parser.js +0 -185
  151. package/template/lib/react/node_modules/eslint/lib/linter/index.js +0 -13
  152. package/template/lib/react/node_modules/eslint/lib/linter/interpolate.js +0 -28
  153. package/template/lib/react/node_modules/eslint/lib/linter/linter.js +0 -2119
  154. package/template/lib/react/node_modules/eslint/lib/linter/node-event-generator.js +0 -354
  155. package/template/lib/react/node_modules/eslint/lib/linter/report-translator.js +0 -369
  156. package/template/lib/react/node_modules/eslint/lib/linter/rule-fixer.js +0 -140
  157. package/template/lib/react/node_modules/eslint/lib/linter/rules.js +0 -80
  158. package/template/lib/react/node_modules/eslint/lib/linter/safe-emitter.js +0 -52
  159. package/template/lib/react/node_modules/eslint/lib/linter/source-code-fixer.js +0 -152
  160. package/template/lib/react/node_modules/eslint/lib/linter/timing.js +0 -161
  161. package/template/lib/react/node_modules/eslint/lib/options.js +0 -398
  162. package/template/lib/react/node_modules/eslint/lib/rule-tester/flat-rule-tester.js +0 -1122
  163. package/template/lib/react/node_modules/eslint/lib/rule-tester/index.js +0 -5
  164. package/template/lib/react/node_modules/eslint/lib/rule-tester/rule-tester.js +0 -1206
  165. package/template/lib/react/node_modules/eslint/lib/rules/accessor-pairs.js +0 -346
  166. package/template/lib/react/node_modules/eslint/lib/rules/array-bracket-newline.js +0 -261
  167. package/template/lib/react/node_modules/eslint/lib/rules/array-bracket-spacing.js +0 -244
  168. package/template/lib/react/node_modules/eslint/lib/rules/array-callback-return.js +0 -446
  169. package/template/lib/react/node_modules/eslint/lib/rules/array-element-newline.js +0 -311
  170. package/template/lib/react/node_modules/eslint/lib/rules/arrow-body-style.js +0 -296
  171. package/template/lib/react/node_modules/eslint/lib/rules/arrow-parens.js +0 -186
  172. package/template/lib/react/node_modules/eslint/lib/rules/arrow-spacing.js +0 -164
  173. package/template/lib/react/node_modules/eslint/lib/rules/block-scoped-var.js +0 -135
  174. package/template/lib/react/node_modules/eslint/lib/rules/block-spacing.js +0 -174
  175. package/template/lib/react/node_modules/eslint/lib/rules/brace-style.js +0 -197
  176. package/template/lib/react/node_modules/eslint/lib/rules/callback-return.js +0 -187
  177. package/template/lib/react/node_modules/eslint/lib/rules/camelcase.js +0 -399
  178. package/template/lib/react/node_modules/eslint/lib/rules/capitalized-comments.js +0 -300
  179. package/template/lib/react/node_modules/eslint/lib/rules/class-methods-use-this.js +0 -187
  180. package/template/lib/react/node_modules/eslint/lib/rules/comma-dangle.js +0 -373
  181. package/template/lib/react/node_modules/eslint/lib/rules/comma-spacing.js +0 -192
  182. package/template/lib/react/node_modules/eslint/lib/rules/comma-style.js +0 -314
  183. package/template/lib/react/node_modules/eslint/lib/rules/complexity.js +0 -165
  184. package/template/lib/react/node_modules/eslint/lib/rules/computed-property-spacing.js +0 -208
  185. package/template/lib/react/node_modules/eslint/lib/rules/consistent-return.js +0 -210
  186. package/template/lib/react/node_modules/eslint/lib/rules/consistent-this.js +0 -153
  187. package/template/lib/react/node_modules/eslint/lib/rules/constructor-super.js +0 -446
  188. package/template/lib/react/node_modules/eslint/lib/rules/curly.js +0 -486
  189. package/template/lib/react/node_modules/eslint/lib/rules/default-case-last.js +0 -44
  190. package/template/lib/react/node_modules/eslint/lib/rules/default-case.js +0 -97
  191. package/template/lib/react/node_modules/eslint/lib/rules/default-param-last.js +0 -62
  192. package/template/lib/react/node_modules/eslint/lib/rules/dot-location.js +0 -108
  193. package/template/lib/react/node_modules/eslint/lib/rules/dot-notation.js +0 -176
  194. package/template/lib/react/node_modules/eslint/lib/rules/eol-last.js +0 -115
  195. package/template/lib/react/node_modules/eslint/lib/rules/eqeqeq.js +0 -174
  196. package/template/lib/react/node_modules/eslint/lib/rules/for-direction.js +0 -140
  197. package/template/lib/react/node_modules/eslint/lib/rules/func-call-spacing.js +0 -233
  198. package/template/lib/react/node_modules/eslint/lib/rules/func-name-matching.js +0 -253
  199. package/template/lib/react/node_modules/eslint/lib/rules/func-names.js +0 -191
  200. package/template/lib/react/node_modules/eslint/lib/rules/func-style.js +0 -98
  201. package/template/lib/react/node_modules/eslint/lib/rules/function-call-argument-newline.js +0 -125
  202. package/template/lib/react/node_modules/eslint/lib/rules/function-paren-newline.js +0 -292
  203. package/template/lib/react/node_modules/eslint/lib/rules/generator-star-spacing.js +0 -209
  204. package/template/lib/react/node_modules/eslint/lib/rules/getter-return.js +0 -204
  205. package/template/lib/react/node_modules/eslint/lib/rules/global-require.js +0 -90
  206. package/template/lib/react/node_modules/eslint/lib/rules/grouped-accessor-pairs.js +0 -215
  207. package/template/lib/react/node_modules/eslint/lib/rules/guard-for-in.js +0 -76
  208. package/template/lib/react/node_modules/eslint/lib/rules/handle-callback-err.js +0 -101
  209. package/template/lib/react/node_modules/eslint/lib/rules/id-blacklist.js +0 -246
  210. package/template/lib/react/node_modules/eslint/lib/rules/id-denylist.js +0 -228
  211. package/template/lib/react/node_modules/eslint/lib/rules/id-length.js +0 -177
  212. package/template/lib/react/node_modules/eslint/lib/rules/id-match.js +0 -299
  213. package/template/lib/react/node_modules/eslint/lib/rules/implicit-arrow-linebreak.js +0 -84
  214. package/template/lib/react/node_modules/eslint/lib/rules/indent-legacy.js +0 -1126
  215. package/template/lib/react/node_modules/eslint/lib/rules/indent.js +0 -1803
  216. package/template/lib/react/node_modules/eslint/lib/rules/index.js +0 -306
  217. package/template/lib/react/node_modules/eslint/lib/rules/init-declarations.js +0 -139
  218. package/template/lib/react/node_modules/eslint/lib/rules/jsx-quotes.js +0 -98
  219. package/template/lib/react/node_modules/eslint/lib/rules/key-spacing.js +0 -687
  220. package/template/lib/react/node_modules/eslint/lib/rules/keyword-spacing.js +0 -640
  221. package/template/lib/react/node_modules/eslint/lib/rules/line-comment-position.js +0 -122
  222. package/template/lib/react/node_modules/eslint/lib/rules/linebreak-style.js +0 -108
  223. package/template/lib/react/node_modules/eslint/lib/rules/lines-around-comment.js +0 -471
  224. package/template/lib/react/node_modules/eslint/lib/rules/lines-around-directive.js +0 -201
  225. package/template/lib/react/node_modules/eslint/lib/rules/lines-between-class-members.js +0 -269
  226. package/template/lib/react/node_modules/eslint/lib/rules/logical-assignment-operators.js +0 -504
  227. package/template/lib/react/node_modules/eslint/lib/rules/max-classes-per-file.js +0 -89
  228. package/template/lib/react/node_modules/eslint/lib/rules/max-depth.js +0 -156
  229. package/template/lib/react/node_modules/eslint/lib/rules/max-len.js +0 -440
  230. package/template/lib/react/node_modules/eslint/lib/rules/max-lines-per-function.js +0 -213
  231. package/template/lib/react/node_modules/eslint/lib/rules/max-lines.js +0 -193
  232. package/template/lib/react/node_modules/eslint/lib/rules/max-nested-callbacks.js +0 -117
  233. package/template/lib/react/node_modules/eslint/lib/rules/max-params.js +0 -102
  234. package/template/lib/react/node_modules/eslint/lib/rules/max-statements-per-line.js +0 -199
  235. package/template/lib/react/node_modules/eslint/lib/rules/max-statements.js +0 -184
  236. package/template/lib/react/node_modules/eslint/lib/rules/multiline-comment-style.js +0 -474
  237. package/template/lib/react/node_modules/eslint/lib/rules/multiline-ternary.js +0 -174
  238. package/template/lib/react/node_modules/eslint/lib/rules/new-cap.js +0 -276
  239. package/template/lib/react/node_modules/eslint/lib/rules/new-parens.js +0 -93
  240. package/template/lib/react/node_modules/eslint/lib/rules/newline-after-var.js +0 -253
  241. package/template/lib/react/node_modules/eslint/lib/rules/newline-before-return.js +0 -217
  242. package/template/lib/react/node_modules/eslint/lib/rules/newline-per-chained-call.js +0 -126
  243. package/template/lib/react/node_modules/eslint/lib/rules/no-alert.js +0 -138
  244. package/template/lib/react/node_modules/eslint/lib/rules/no-array-constructor.js +0 -133
  245. package/template/lib/react/node_modules/eslint/lib/rules/no-async-promise-executor.js +0 -39
  246. package/template/lib/react/node_modules/eslint/lib/rules/no-await-in-loop.js +0 -106
  247. package/template/lib/react/node_modules/eslint/lib/rules/no-bitwise.js +0 -119
  248. package/template/lib/react/node_modules/eslint/lib/rules/no-buffer-constructor.js +0 -50
  249. package/template/lib/react/node_modules/eslint/lib/rules/no-caller.js +0 -46
  250. package/template/lib/react/node_modules/eslint/lib/rules/no-case-declarations.js +0 -64
  251. package/template/lib/react/node_modules/eslint/lib/rules/no-catch-shadow.js +0 -82
  252. package/template/lib/react/node_modules/eslint/lib/rules/no-class-assign.js +0 -63
  253. package/template/lib/react/node_modules/eslint/lib/rules/no-compare-neg-zero.js +0 -60
  254. package/template/lib/react/node_modules/eslint/lib/rules/no-cond-assign.js +0 -159
  255. package/template/lib/react/node_modules/eslint/lib/rules/no-confusing-arrow.js +0 -92
  256. package/template/lib/react/node_modules/eslint/lib/rules/no-console.js +0 -207
  257. package/template/lib/react/node_modules/eslint/lib/rules/no-const-assign.js +0 -56
  258. package/template/lib/react/node_modules/eslint/lib/rules/no-constant-binary-expression.js +0 -509
  259. package/template/lib/react/node_modules/eslint/lib/rules/no-constant-condition.js +0 -150
  260. package/template/lib/react/node_modules/eslint/lib/rules/no-constructor-return.js +0 -62
  261. package/template/lib/react/node_modules/eslint/lib/rules/no-continue.js +0 -39
  262. package/template/lib/react/node_modules/eslint/lib/rules/no-control-regex.js +0 -138
  263. package/template/lib/react/node_modules/eslint/lib/rules/no-debugger.js +0 -43
  264. package/template/lib/react/node_modules/eslint/lib/rules/no-delete-var.js +0 -42
  265. package/template/lib/react/node_modules/eslint/lib/rules/no-div-regex.js +0 -53
  266. package/template/lib/react/node_modules/eslint/lib/rules/no-dupe-args.js +0 -82
  267. package/template/lib/react/node_modules/eslint/lib/rules/no-dupe-class-members.js +0 -104
  268. package/template/lib/react/node_modules/eslint/lib/rules/no-dupe-else-if.js +0 -122
  269. package/template/lib/react/node_modules/eslint/lib/rules/no-dupe-keys.js +0 -142
  270. package/template/lib/react/node_modules/eslint/lib/rules/no-duplicate-case.js +0 -71
  271. package/template/lib/react/node_modules/eslint/lib/rules/no-duplicate-imports.js +0 -290
  272. package/template/lib/react/node_modules/eslint/lib/rules/no-else-return.js +0 -405
  273. package/template/lib/react/node_modules/eslint/lib/rules/no-empty-character-class.js +0 -76
  274. package/template/lib/react/node_modules/eslint/lib/rules/no-empty-function.js +0 -167
  275. package/template/lib/react/node_modules/eslint/lib/rules/no-empty-pattern.js +0 -78
  276. package/template/lib/react/node_modules/eslint/lib/rules/no-empty-static-block.js +0 -47
  277. package/template/lib/react/node_modules/eslint/lib/rules/no-empty.js +0 -103
  278. package/template/lib/react/node_modules/eslint/lib/rules/no-eq-null.js +0 -46
  279. package/template/lib/react/node_modules/eslint/lib/rules/no-eval.js +0 -286
  280. package/template/lib/react/node_modules/eslint/lib/rules/no-ex-assign.js +0 -54
  281. package/template/lib/react/node_modules/eslint/lib/rules/no-extend-native.js +0 -179
  282. package/template/lib/react/node_modules/eslint/lib/rules/no-extra-bind.js +0 -213
  283. package/template/lib/react/node_modules/eslint/lib/rules/no-extra-boolean-cast.js +0 -317
  284. package/template/lib/react/node_modules/eslint/lib/rules/no-extra-label.js +0 -149
  285. package/template/lib/react/node_modules/eslint/lib/rules/no-extra-parens.js +0 -1322
  286. package/template/lib/react/node_modules/eslint/lib/rules/no-extra-semi.js +0 -147
  287. package/template/lib/react/node_modules/eslint/lib/rules/no-fallthrough.js +0 -196
  288. package/template/lib/react/node_modules/eslint/lib/rules/no-floating-decimal.js +0 -73
  289. package/template/lib/react/node_modules/eslint/lib/rules/no-func-assign.js +0 -78
  290. package/template/lib/react/node_modules/eslint/lib/rules/no-global-assign.js +0 -95
  291. package/template/lib/react/node_modules/eslint/lib/rules/no-implicit-coercion.js +0 -380
  292. package/template/lib/react/node_modules/eslint/lib/rules/no-implicit-globals.js +0 -146
  293. package/template/lib/react/node_modules/eslint/lib/rules/no-implied-eval.js +0 -132
  294. package/template/lib/react/node_modules/eslint/lib/rules/no-import-assign.js +0 -241
  295. package/template/lib/react/node_modules/eslint/lib/rules/no-inline-comments.js +0 -110
  296. package/template/lib/react/node_modules/eslint/lib/rules/no-inner-declarations.js +0 -110
  297. package/template/lib/react/node_modules/eslint/lib/rules/no-invalid-regexp.js +0 -194
  298. package/template/lib/react/node_modules/eslint/lib/rules/no-invalid-this.js +0 -150
  299. package/template/lib/react/node_modules/eslint/lib/rules/no-irregular-whitespace.js +0 -276
  300. package/template/lib/react/node_modules/eslint/lib/rules/no-iterator.js +0 -52
  301. package/template/lib/react/node_modules/eslint/lib/rules/no-label-var.js +0 -80
  302. package/template/lib/react/node_modules/eslint/lib/rules/no-labels.js +0 -149
  303. package/template/lib/react/node_modules/eslint/lib/rules/no-lone-blocks.js +0 -136
  304. package/template/lib/react/node_modules/eslint/lib/rules/no-lonely-if.js +0 -88
  305. package/template/lib/react/node_modules/eslint/lib/rules/no-loop-func.js +0 -206
  306. package/template/lib/react/node_modules/eslint/lib/rules/no-loss-of-precision.js +0 -214
  307. package/template/lib/react/node_modules/eslint/lib/rules/no-magic-numbers.js +0 -243
  308. package/template/lib/react/node_modules/eslint/lib/rules/no-misleading-character-class.js +0 -300
  309. package/template/lib/react/node_modules/eslint/lib/rules/no-mixed-operators.js +0 -229
  310. package/template/lib/react/node_modules/eslint/lib/rules/no-mixed-requires.js +0 -238
  311. package/template/lib/react/node_modules/eslint/lib/rules/no-mixed-spaces-and-tabs.js +0 -116
  312. package/template/lib/react/node_modules/eslint/lib/rules/no-multi-assign.js +0 -67
  313. package/template/lib/react/node_modules/eslint/lib/rules/no-multi-spaces.js +0 -141
  314. package/template/lib/react/node_modules/eslint/lib/rules/no-multi-str.js +0 -65
  315. package/template/lib/react/node_modules/eslint/lib/rules/no-multiple-empty-lines.js +0 -154
  316. package/template/lib/react/node_modules/eslint/lib/rules/no-native-reassign.js +0 -98
  317. package/template/lib/react/node_modules/eslint/lib/rules/no-negated-condition.js +0 -95
  318. package/template/lib/react/node_modules/eslint/lib/rules/no-negated-in-lhs.js +0 -46
  319. package/template/lib/react/node_modules/eslint/lib/rules/no-nested-ternary.js +0 -44
  320. package/template/lib/react/node_modules/eslint/lib/rules/no-new-func.js +0 -87
  321. package/template/lib/react/node_modules/eslint/lib/rules/no-new-native-nonconstructor.js +0 -66
  322. package/template/lib/react/node_modules/eslint/lib/rules/no-new-object.js +0 -67
  323. package/template/lib/react/node_modules/eslint/lib/rules/no-new-require.js +0 -50
  324. package/template/lib/react/node_modules/eslint/lib/rules/no-new-symbol.js +0 -56
  325. package/template/lib/react/node_modules/eslint/lib/rules/no-new-wrappers.js +0 -60
  326. package/template/lib/react/node_modules/eslint/lib/rules/no-new.js +0 -43
  327. package/template/lib/react/node_modules/eslint/lib/rules/no-nonoctal-decimal-escape.js +0 -148
  328. package/template/lib/react/node_modules/eslint/lib/rules/no-obj-calls.js +0 -86
  329. package/template/lib/react/node_modules/eslint/lib/rules/no-object-constructor.js +0 -117
  330. package/template/lib/react/node_modules/eslint/lib/rules/no-octal-escape.js +0 -56
  331. package/template/lib/react/node_modules/eslint/lib/rules/no-octal.js +0 -45
  332. package/template/lib/react/node_modules/eslint/lib/rules/no-param-reassign.js +0 -230
  333. package/template/lib/react/node_modules/eslint/lib/rules/no-path-concat.js +0 -64
  334. package/template/lib/react/node_modules/eslint/lib/rules/no-plusplus.js +0 -105
  335. package/template/lib/react/node_modules/eslint/lib/rules/no-process-env.js +0 -51
  336. package/template/lib/react/node_modules/eslint/lib/rules/no-process-exit.js +0 -47
  337. package/template/lib/react/node_modules/eslint/lib/rules/no-promise-executor-return.js +0 -263
  338. package/template/lib/react/node_modules/eslint/lib/rules/no-proto.js +0 -48
  339. package/template/lib/react/node_modules/eslint/lib/rules/no-prototype-builtins.js +0 -159
  340. package/template/lib/react/node_modules/eslint/lib/rules/no-redeclare.js +0 -174
  341. package/template/lib/react/node_modules/eslint/lib/rules/no-regex-spaces.js +0 -197
  342. package/template/lib/react/node_modules/eslint/lib/rules/no-restricted-exports.js +0 -193
  343. package/template/lib/react/node_modules/eslint/lib/rules/no-restricted-globals.js +0 -124
  344. package/template/lib/react/node_modules/eslint/lib/rules/no-restricted-imports.js +0 -410
  345. package/template/lib/react/node_modules/eslint/lib/rules/no-restricted-modules.js +0 -213
  346. package/template/lib/react/node_modules/eslint/lib/rules/no-restricted-properties.js +0 -168
  347. package/template/lib/react/node_modules/eslint/lib/rules/no-restricted-syntax.js +0 -70
  348. package/template/lib/react/node_modules/eslint/lib/rules/no-return-assign.js +0 -80
  349. package/template/lib/react/node_modules/eslint/lib/rules/no-return-await.js +0 -135
  350. package/template/lib/react/node_modules/eslint/lib/rules/no-script-url.js +0 -61
  351. package/template/lib/react/node_modules/eslint/lib/rules/no-self-assign.js +0 -183
  352. package/template/lib/react/node_modules/eslint/lib/rules/no-self-compare.js +0 -60
  353. package/template/lib/react/node_modules/eslint/lib/rules/no-sequences.js +0 -138
  354. package/template/lib/react/node_modules/eslint/lib/rules/no-setter-return.js +0 -226
  355. package/template/lib/react/node_modules/eslint/lib/rules/no-shadow-restricted-names.js +0 -65
  356. package/template/lib/react/node_modules/eslint/lib/rules/no-shadow.js +0 -336
  357. package/template/lib/react/node_modules/eslint/lib/rules/no-spaced-func.js +0 -83
  358. package/template/lib/react/node_modules/eslint/lib/rules/no-sparse-arrays.js +0 -50
  359. package/template/lib/react/node_modules/eslint/lib/rules/no-sync.js +0 -64
  360. package/template/lib/react/node_modules/eslint/lib/rules/no-tabs.js +0 -81
  361. package/template/lib/react/node_modules/eslint/lib/rules/no-template-curly-in-string.js +0 -44
  362. package/template/lib/react/node_modules/eslint/lib/rules/no-ternary.js +0 -41
  363. package/template/lib/react/node_modules/eslint/lib/rules/no-this-before-super.js +0 -331
  364. package/template/lib/react/node_modules/eslint/lib/rules/no-throw-literal.js +0 -51
  365. package/template/lib/react/node_modules/eslint/lib/rules/no-trailing-spaces.js +0 -193
  366. package/template/lib/react/node_modules/eslint/lib/rules/no-undef-init.js +0 -75
  367. package/template/lib/react/node_modules/eslint/lib/rules/no-undef.js +0 -79
  368. package/template/lib/react/node_modules/eslint/lib/rules/no-undefined.js +0 -86
  369. package/template/lib/react/node_modules/eslint/lib/rules/no-underscore-dangle.js +0 -335
  370. package/template/lib/react/node_modules/eslint/lib/rules/no-unexpected-multiline.js +0 -120
  371. package/template/lib/react/node_modules/eslint/lib/rules/no-unmodified-loop-condition.js +0 -360
  372. package/template/lib/react/node_modules/eslint/lib/rules/no-unneeded-ternary.js +0 -166
  373. package/template/lib/react/node_modules/eslint/lib/rules/no-unreachable-loop.js +0 -185
  374. package/template/lib/react/node_modules/eslint/lib/rules/no-unreachable.js +0 -293
  375. package/template/lib/react/node_modules/eslint/lib/rules/no-unsafe-finally.js +0 -111
  376. package/template/lib/react/node_modules/eslint/lib/rules/no-unsafe-negation.js +0 -128
  377. package/template/lib/react/node_modules/eslint/lib/rules/no-unsafe-optional-chaining.js +0 -205
  378. package/template/lib/react/node_modules/eslint/lib/rules/no-unused-expressions.js +0 -186
  379. package/template/lib/react/node_modules/eslint/lib/rules/no-unused-labels.js +0 -143
  380. package/template/lib/react/node_modules/eslint/lib/rules/no-unused-private-class-members.js +0 -195
  381. package/template/lib/react/node_modules/eslint/lib/rules/no-unused-vars.js +0 -718
  382. package/template/lib/react/node_modules/eslint/lib/rules/no-use-before-define.js +0 -348
  383. package/template/lib/react/node_modules/eslint/lib/rules/no-useless-backreference.js +0 -194
  384. package/template/lib/react/node_modules/eslint/lib/rules/no-useless-call.js +0 -90
  385. package/template/lib/react/node_modules/eslint/lib/rules/no-useless-catch.js +0 -57
  386. package/template/lib/react/node_modules/eslint/lib/rules/no-useless-computed-key.js +0 -168
  387. package/template/lib/react/node_modules/eslint/lib/rules/no-useless-concat.js +0 -115
  388. package/template/lib/react/node_modules/eslint/lib/rules/no-useless-constructor.js +0 -189
  389. package/template/lib/react/node_modules/eslint/lib/rules/no-useless-escape.js +0 -333
  390. package/template/lib/react/node_modules/eslint/lib/rules/no-useless-rename.js +0 -172
  391. package/template/lib/react/node_modules/eslint/lib/rules/no-useless-return.js +0 -364
  392. package/template/lib/react/node_modules/eslint/lib/rules/no-var.js +0 -334
  393. package/template/lib/react/node_modules/eslint/lib/rules/no-void.js +0 -64
  394. package/template/lib/react/node_modules/eslint/lib/rules/no-warning-comments.js +0 -201
  395. package/template/lib/react/node_modules/eslint/lib/rules/no-whitespace-before-property.js +0 -116
  396. package/template/lib/react/node_modules/eslint/lib/rules/no-with.js +0 -39
  397. package/template/lib/react/node_modules/eslint/lib/rules/nonblock-statement-body-position.js +0 -127
  398. package/template/lib/react/node_modules/eslint/lib/rules/object-curly-newline.js +0 -324
  399. package/template/lib/react/node_modules/eslint/lib/rules/object-curly-spacing.js +0 -311
  400. package/template/lib/react/node_modules/eslint/lib/rules/object-property-newline.js +0 -102
  401. package/template/lib/react/node_modules/eslint/lib/rules/object-shorthand.js +0 -520
  402. package/template/lib/react/node_modules/eslint/lib/rules/one-var-declaration-per-line.js +0 -95
  403. package/template/lib/react/node_modules/eslint/lib/rules/one-var.js +0 -567
  404. package/template/lib/react/node_modules/eslint/lib/rules/operator-assignment.js +0 -209
  405. package/template/lib/react/node_modules/eslint/lib/rules/operator-linebreak.js +0 -253
  406. package/template/lib/react/node_modules/eslint/lib/rules/padded-blocks.js +0 -310
  407. package/template/lib/react/node_modules/eslint/lib/rules/padding-line-between-statements.js +0 -590
  408. package/template/lib/react/node_modules/eslint/lib/rules/prefer-arrow-callback.js +0 -381
  409. package/template/lib/react/node_modules/eslint/lib/rules/prefer-const.js +0 -501
  410. package/template/lib/react/node_modules/eslint/lib/rules/prefer-destructuring.js +0 -301
  411. package/template/lib/react/node_modules/eslint/lib/rules/prefer-exponentiation-operator.js +0 -191
  412. package/template/lib/react/node_modules/eslint/lib/rules/prefer-named-capture-group.js +0 -178
  413. package/template/lib/react/node_modules/eslint/lib/rules/prefer-numeric-literals.js +0 -148
  414. package/template/lib/react/node_modules/eslint/lib/rules/prefer-object-has-own.js +0 -114
  415. package/template/lib/react/node_modules/eslint/lib/rules/prefer-object-spread.js +0 -298
  416. package/template/lib/react/node_modules/eslint/lib/rules/prefer-promise-reject-errors.js +0 -132
  417. package/template/lib/react/node_modules/eslint/lib/rules/prefer-reflect.js +0 -127
  418. package/template/lib/react/node_modules/eslint/lib/rules/prefer-regex-literals.js +0 -507
  419. package/template/lib/react/node_modules/eslint/lib/rules/prefer-rest-params.js +0 -118
  420. package/template/lib/react/node_modules/eslint/lib/rules/prefer-spread.js +0 -87
  421. package/template/lib/react/node_modules/eslint/lib/rules/prefer-template.js +0 -275
  422. package/template/lib/react/node_modules/eslint/lib/rules/quote-props.js +0 -310
  423. package/template/lib/react/node_modules/eslint/lib/rules/quotes.js +0 -350
  424. package/template/lib/react/node_modules/eslint/lib/rules/radix.js +0 -198
  425. package/template/lib/react/node_modules/eslint/lib/rules/require-atomic-updates.js +0 -331
  426. package/template/lib/react/node_modules/eslint/lib/rules/require-await.js +0 -113
  427. package/template/lib/react/node_modules/eslint/lib/rules/require-jsdoc.js +0 -122
  428. package/template/lib/react/node_modules/eslint/lib/rules/require-unicode-regexp.js +0 -129
  429. package/template/lib/react/node_modules/eslint/lib/rules/require-yield.js +0 -77
  430. package/template/lib/react/node_modules/eslint/lib/rules/rest-spread-spacing.js +0 -123
  431. package/template/lib/react/node_modules/eslint/lib/rules/semi-spacing.js +0 -248
  432. package/template/lib/react/node_modules/eslint/lib/rules/semi-style.js +0 -158
  433. package/template/lib/react/node_modules/eslint/lib/rules/semi.js +0 -438
  434. package/template/lib/react/node_modules/eslint/lib/rules/sort-imports.js +0 -241
  435. package/template/lib/react/node_modules/eslint/lib/rules/sort-keys.js +0 -230
  436. package/template/lib/react/node_modules/eslint/lib/rules/sort-vars.js +0 -104
  437. package/template/lib/react/node_modules/eslint/lib/rules/space-before-blocks.js +0 -204
  438. package/template/lib/react/node_modules/eslint/lib/rules/space-before-function-paren.js +0 -167
  439. package/template/lib/react/node_modules/eslint/lib/rules/space-in-parens.js +0 -285
  440. package/template/lib/react/node_modules/eslint/lib/rules/space-infix-ops.js +0 -198
  441. package/template/lib/react/node_modules/eslint/lib/rules/space-unary-ops.js +0 -324
  442. package/template/lib/react/node_modules/eslint/lib/rules/spaced-comment.js +0 -385
  443. package/template/lib/react/node_modules/eslint/lib/rules/strict.js +0 -277
  444. package/template/lib/react/node_modules/eslint/lib/rules/switch-colon-spacing.js +0 -132
  445. package/template/lib/react/node_modules/eslint/lib/rules/symbol-description.js +0 -73
  446. package/template/lib/react/node_modules/eslint/lib/rules/template-curly-spacing.js +0 -144
  447. package/template/lib/react/node_modules/eslint/lib/rules/template-tag-spacing.js +0 -93
  448. package/template/lib/react/node_modules/eslint/lib/rules/unicode-bom.js +0 -73
  449. package/template/lib/react/node_modules/eslint/lib/rules/use-isnan.js +0 -141
  450. package/template/lib/react/node_modules/eslint/lib/rules/utils/ast-utils.js +0 -2282
  451. package/template/lib/react/node_modules/eslint/lib/rules/utils/fix-tracker.js +0 -114
  452. package/template/lib/react/node_modules/eslint/lib/rules/utils/keywords.js +0 -67
  453. package/template/lib/react/node_modules/eslint/lib/rules/utils/lazy-loading-rule-map.js +0 -115
  454. package/template/lib/react/node_modules/eslint/lib/rules/utils/patterns/letters.js +0 -36
  455. package/template/lib/react/node_modules/eslint/lib/rules/utils/regular-expressions.js +0 -42
  456. package/template/lib/react/node_modules/eslint/lib/rules/utils/unicode/index.js +0 -11
  457. package/template/lib/react/node_modules/eslint/lib/rules/utils/unicode/is-combining-character.js +0 -13
  458. package/template/lib/react/node_modules/eslint/lib/rules/utils/unicode/is-emoji-modifier.js +0 -13
  459. package/template/lib/react/node_modules/eslint/lib/rules/utils/unicode/is-regional-indicator-symbol.js +0 -13
  460. package/template/lib/react/node_modules/eslint/lib/rules/utils/unicode/is-surrogate-pair.js +0 -14
  461. package/template/lib/react/node_modules/eslint/lib/rules/valid-jsdoc.js +0 -516
  462. package/template/lib/react/node_modules/eslint/lib/rules/valid-typeof.js +0 -127
  463. package/template/lib/react/node_modules/eslint/lib/rules/vars-on-top.js +0 -157
  464. package/template/lib/react/node_modules/eslint/lib/rules/wrap-iife.js +0 -207
  465. package/template/lib/react/node_modules/eslint/lib/rules/wrap-regex.js +0 -61
  466. package/template/lib/react/node_modules/eslint/lib/rules/yield-star-spacing.js +0 -130
  467. package/template/lib/react/node_modules/eslint/lib/rules/yoda.js +0 -353
  468. package/template/lib/react/node_modules/eslint/lib/shared/ajv.js +0 -34
  469. package/template/lib/react/node_modules/eslint/lib/shared/ast-utils.js +0 -29
  470. package/template/lib/react/node_modules/eslint/lib/shared/config-validator.js +0 -347
  471. package/template/lib/react/node_modules/eslint/lib/shared/deprecation-warnings.js +0 -58
  472. package/template/lib/react/node_modules/eslint/lib/shared/directives.js +0 -15
  473. package/template/lib/react/node_modules/eslint/lib/shared/logging.js +0 -30
  474. package/template/lib/react/node_modules/eslint/lib/shared/relative-module-resolver.js +0 -50
  475. package/template/lib/react/node_modules/eslint/lib/shared/runtime-info.js +0 -167
  476. package/template/lib/react/node_modules/eslint/lib/shared/severity.js +0 -49
  477. package/template/lib/react/node_modules/eslint/lib/shared/string-utils.js +0 -60
  478. package/template/lib/react/node_modules/eslint/lib/shared/traverser.js +0 -195
  479. package/template/lib/react/node_modules/eslint/lib/shared/types.js +0 -216
  480. package/template/lib/react/node_modules/eslint/lib/source-code/index.js +0 -5
  481. package/template/lib/react/node_modules/eslint/lib/source-code/source-code.js +0 -1055
  482. package/template/lib/react/node_modules/eslint/lib/source-code/token-store/backward-token-comment-cursor.js +0 -57
  483. package/template/lib/react/node_modules/eslint/lib/source-code/token-store/backward-token-cursor.js +0 -58
  484. package/template/lib/react/node_modules/eslint/lib/source-code/token-store/cursor.js +0 -76
  485. package/template/lib/react/node_modules/eslint/lib/source-code/token-store/cursors.js +0 -90
  486. package/template/lib/react/node_modules/eslint/lib/source-code/token-store/decorative-cursor.js +0 -39
  487. package/template/lib/react/node_modules/eslint/lib/source-code/token-store/filter-cursor.js +0 -43
  488. package/template/lib/react/node_modules/eslint/lib/source-code/token-store/forward-token-comment-cursor.js +0 -57
  489. package/template/lib/react/node_modules/eslint/lib/source-code/token-store/forward-token-cursor.js +0 -63
  490. package/template/lib/react/node_modules/eslint/lib/source-code/token-store/index.js +0 -627
  491. package/template/lib/react/node_modules/eslint/lib/source-code/token-store/limit-cursor.js +0 -40
  492. package/template/lib/react/node_modules/eslint/lib/source-code/token-store/padded-token-cursor.js +0 -38
  493. package/template/lib/react/node_modules/eslint/lib/source-code/token-store/skip-cursor.js +0 -42
  494. package/template/lib/react/node_modules/eslint/lib/source-code/token-store/utils.js +0 -107
  495. package/template/lib/react/node_modules/eslint/lib/unsupported-api.js +0 -30
  496. package/template/lib/react/node_modules/eslint/messages/all-files-ignored.js +0 -16
  497. package/template/lib/react/node_modules/eslint/messages/eslintrc-incompat.js +0 -98
  498. package/template/lib/react/node_modules/eslint/messages/eslintrc-plugins.js +0 -24
  499. package/template/lib/react/node_modules/eslint/messages/extend-config-missing.js +0 -13
  500. package/template/lib/react/node_modules/eslint/messages/failed-to-read-json.js +0 -11
  501. package/template/lib/react/node_modules/eslint/messages/file-not-found.js +0 -10
  502. package/template/lib/react/node_modules/eslint/messages/invalid-rule-options.js +0 -17
  503. package/template/lib/react/node_modules/eslint/messages/invalid-rule-severity.js +0 -13
  504. package/template/lib/react/node_modules/eslint/messages/no-config-found.js +0 -15
  505. package/template/lib/react/node_modules/eslint/messages/plugin-conflict.js +0 -22
  506. package/template/lib/react/node_modules/eslint/messages/plugin-invalid.js +0 -16
  507. package/template/lib/react/node_modules/eslint/messages/plugin-missing.js +0 -19
  508. package/template/lib/react/node_modules/eslint/messages/print-config-with-directory-path.js +0 -8
  509. package/template/lib/react/node_modules/eslint/messages/shared.js +0 -18
  510. package/template/lib/react/node_modules/eslint/messages/whitespace-found.js +0 -11
  511. package/template/lib/react/node_modules/eslint/node_modules/.bin/eslint +0 -17
  512. package/template/lib/react/node_modules/eslint/node_modules/.bin/eslint.CMD +0 -12
  513. package/template/lib/react/node_modules/eslint/node_modules/.bin/eslint.ps1 +0 -41
  514. package/template/lib/react/node_modules/eslint/node_modules/.bin/js-yaml +0 -17
  515. package/template/lib/react/node_modules/eslint/node_modules/.bin/js-yaml.CMD +0 -12
  516. package/template/lib/react/node_modules/eslint/node_modules/.bin/js-yaml.ps1 +0 -41
  517. package/template/lib/react/node_modules/eslint/package.json +0 -179
  518. package/template/lib/react/node_modules/eslint-import-resolver-typescript/LICENSE +0 -5
  519. package/template/lib/react/node_modules/eslint-import-resolver-typescript/README.md +0 -232
  520. package/template/lib/react/node_modules/eslint-import-resolver-typescript/lib/index.cjs +0 -278
  521. package/template/lib/react/node_modules/eslint-import-resolver-typescript/lib/index.d.ts +0 -20
  522. package/template/lib/react/node_modules/eslint-import-resolver-typescript/lib/index.es2020.mjs +0 -251
  523. package/template/lib/react/node_modules/eslint-import-resolver-typescript/lib/index.js +0 -252
  524. package/template/lib/react/node_modules/eslint-import-resolver-typescript/lib/index.js.map +0 -1
  525. package/template/lib/react/node_modules/eslint-import-resolver-typescript/node_modules/.bin/eslint +0 -17
  526. package/template/lib/react/node_modules/eslint-import-resolver-typescript/node_modules/.bin/eslint.CMD +0 -12
  527. package/template/lib/react/node_modules/eslint-import-resolver-typescript/node_modules/.bin/eslint.ps1 +0 -41
  528. package/template/lib/react/node_modules/eslint-import-resolver-typescript/package.json +0 -108
  529. package/template/lib/react/node_modules/eslint-import-resolver-typescript/shim.d.ts +0 -4
  530. package/template/lib/react/node_modules/eslint-plugin-import/CHANGELOG.md +0 -1925
  531. package/template/lib/react/node_modules/eslint-plugin-import/CONTRIBUTING.md +0 -84
  532. package/template/lib/react/node_modules/eslint-plugin-import/LICENSE +0 -22
  533. package/template/lib/react/node_modules/eslint-plugin-import/README.md +0 -500
  534. package/template/lib/react/node_modules/eslint-plugin-import/RELEASE.md +0 -54
  535. package/template/lib/react/node_modules/eslint-plugin-import/SECURITY.md +0 -11
  536. package/template/lib/react/node_modules/eslint-plugin-import/config/electron.js +0 -8
  537. package/template/lib/react/node_modules/eslint-plugin-import/config/errors.js +0 -14
  538. package/template/lib/react/node_modules/eslint-plugin-import/config/react-native.js +0 -13
  539. package/template/lib/react/node_modules/eslint-plugin-import/config/react.js +0 -18
  540. package/template/lib/react/node_modules/eslint-plugin-import/config/recommended.js +0 -28
  541. package/template/lib/react/node_modules/eslint-plugin-import/config/stage-0.js +0 -12
  542. package/template/lib/react/node_modules/eslint-plugin-import/config/typescript.js +0 -34
  543. package/template/lib/react/node_modules/eslint-plugin-import/config/warnings.js +0 -12
  544. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/consistent-type-specifier-style.md +0 -91
  545. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/default.md +0 -72
  546. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/dynamic-import-chunkname.md +0 -92
  547. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/export.md +0 -37
  548. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/exports-last.md +0 -51
  549. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/extensions.md +0 -174
  550. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/first.md +0 -75
  551. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/group-exports.md +0 -118
  552. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/imports-first.md +0 -9
  553. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/max-dependencies.md +0 -70
  554. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/named.md +0 -102
  555. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/namespace.md +0 -106
  556. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/newline-after-import.md +0 -167
  557. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md +0 -54
  558. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-amd.md +0 -37
  559. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-anonymous-default-export.md +0 -83
  560. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-commonjs.md +0 -96
  561. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-cycle.md +0 -111
  562. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-default-export.md +0 -65
  563. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-deprecated.md +0 -62
  564. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-duplicates.md +0 -109
  565. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-dynamic-require.md +0 -25
  566. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-empty-named-blocks.md +0 -49
  567. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-extraneous-dependencies.md +0 -139
  568. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-import-module-exports.md +0 -81
  569. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-internal-modules.md +0 -136
  570. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-mutable-exports.md +0 -54
  571. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-named-as-default-member.md +0 -52
  572. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-named-as-default.md +0 -53
  573. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-named-default.md +0 -36
  574. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-named-export.md +0 -79
  575. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-namespace.md +0 -44
  576. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-nodejs-modules.md +0 -42
  577. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-relative-packages.md +0 -70
  578. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-relative-parent-imports.md +0 -123
  579. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-restricted-paths.md +0 -198
  580. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-self-import.md +0 -32
  581. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-unassigned-import.md +0 -60
  582. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-unresolved.md +0 -110
  583. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-unused-modules.md +0 -125
  584. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-useless-path-segments.md +0 -85
  585. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/no-webpack-loader-syntax.md +0 -39
  586. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/order.md +0 -365
  587. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/prefer-default-export.md +0 -185
  588. package/template/lib/react/node_modules/eslint-plugin-import/docs/rules/unambiguous.md +0 -57
  589. package/template/lib/react/node_modules/eslint-plugin-import/lib/ExportMap.js +0 -856
  590. package/template/lib/react/node_modules/eslint-plugin-import/lib/core/importType.js +0 -129
  591. package/template/lib/react/node_modules/eslint-plugin-import/lib/core/packagePath.js +0 -22
  592. package/template/lib/react/node_modules/eslint-plugin-import/lib/core/staticRequire.js +0 -11
  593. package/template/lib/react/node_modules/eslint-plugin-import/lib/docsUrl.js +0 -8
  594. package/template/lib/react/node_modules/eslint-plugin-import/lib/importDeclaration.js +0 -5
  595. package/template/lib/react/node_modules/eslint-plugin-import/lib/index.js +0 -71
  596. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/consistent-type-specifier-style.js +0 -221
  597. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/default.js +0 -40
  598. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/dynamic-import-chunkname.js +0 -120
  599. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/export.js +0 -250
  600. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/exports-last.js +0 -40
  601. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/extensions.js +0 -193
  602. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/first.js +0 -144
  603. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/group-exports.js +0 -155
  604. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/imports-first.js +0 -16
  605. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/max-dependencies.js +0 -60
  606. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/named.js +0 -143
  607. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/namespace.js +0 -218
  608. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/newline-after-import.js +0 -237
  609. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-absolute-path.js +0 -40
  610. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-amd.js +0 -47
  611. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-anonymous-default-export.js +0 -103
  612. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-commonjs.js +0 -141
  613. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-cycle.js +0 -158
  614. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-default-export.js +0 -43
  615. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-deprecated.js +0 -138
  616. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-duplicates.js +0 -354
  617. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-dynamic-require.js +0 -77
  618. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-empty-named-blocks.js +0 -105
  619. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-extraneous-dependencies.js +0 -301
  620. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-import-module-exports.js +0 -85
  621. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-internal-modules.js +0 -144
  622. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-mutable-exports.js +0 -59
  623. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-named-as-default-member.js +0 -96
  624. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-named-as-default.js +0 -45
  625. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-named-default.js +0 -31
  626. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-named-export.js +0 -39
  627. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-namespace.js +0 -175
  628. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-nodejs-modules.js +0 -44
  629. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-relative-packages.js +0 -71
  630. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-relative-parent-imports.js +0 -48
  631. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-restricted-paths.js +0 -245
  632. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-self-import.js +0 -39
  633. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-unassigned-import.js +0 -79
  634. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-unresolved.js +0 -60
  635. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-unused-modules.js +0 -945
  636. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-useless-path-segments.js +0 -147
  637. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/no-webpack-loader-syntax.js +0 -26
  638. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/order.js +0 -785
  639. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/prefer-default-export.js +0 -116
  640. package/template/lib/react/node_modules/eslint-plugin-import/lib/rules/unambiguous.js +0 -38
  641. package/template/lib/react/node_modules/eslint-plugin-import/memo-parser/LICENSE +0 -22
  642. package/template/lib/react/node_modules/eslint-plugin-import/memo-parser/README.md +0 -21
  643. package/template/lib/react/node_modules/eslint-plugin-import/memo-parser/index.js +0 -41
  644. package/template/lib/react/node_modules/eslint-plugin-import/node_modules/.bin/eslint +0 -17
  645. package/template/lib/react/node_modules/eslint-plugin-import/node_modules/.bin/eslint.CMD +0 -12
  646. package/template/lib/react/node_modules/eslint-plugin-import/node_modules/.bin/eslint.ps1 +0 -41
  647. package/template/lib/react/node_modules/eslint-plugin-import/node_modules/.bin/semver +0 -17
  648. package/template/lib/react/node_modules/eslint-plugin-import/node_modules/.bin/semver.CMD +0 -12
  649. package/template/lib/react/node_modules/eslint-plugin-import/node_modules/.bin/semver.ps1 +0 -41
  650. package/template/lib/react/node_modules/eslint-plugin-import/package.json +0 -124
  651. package/template/lib/react/node_modules/eslint-plugin-prettier/LICENSE.md +0 -24
  652. package/template/lib/react/node_modules/eslint-plugin-prettier/README.md +0 -202
  653. package/template/lib/react/node_modules/eslint-plugin-prettier/eslint-plugin-prettier.d.ts +0 -5
  654. package/template/lib/react/node_modules/eslint-plugin-prettier/eslint-plugin-prettier.js +0 -254
  655. package/template/lib/react/node_modules/eslint-plugin-prettier/node_modules/.bin/eslint +0 -17
  656. package/template/lib/react/node_modules/eslint-plugin-prettier/node_modules/.bin/eslint-config-prettier +0 -17
  657. package/template/lib/react/node_modules/eslint-plugin-prettier/node_modules/.bin/eslint-config-prettier.CMD +0 -12
  658. package/template/lib/react/node_modules/eslint-plugin-prettier/node_modules/.bin/eslint-config-prettier.ps1 +0 -41
  659. package/template/lib/react/node_modules/eslint-plugin-prettier/node_modules/.bin/eslint.CMD +0 -12
  660. package/template/lib/react/node_modules/eslint-plugin-prettier/node_modules/.bin/eslint.ps1 +0 -41
  661. package/template/lib/react/node_modules/eslint-plugin-prettier/node_modules/.bin/prettier +0 -17
  662. package/template/lib/react/node_modules/eslint-plugin-prettier/node_modules/.bin/prettier.CMD +0 -12
  663. package/template/lib/react/node_modules/eslint-plugin-prettier/node_modules/.bin/prettier.ps1 +0 -41
  664. package/template/lib/react/node_modules/eslint-plugin-prettier/package.json +0 -101
  665. package/template/lib/react/node_modules/eslint-plugin-prettier/recommended.d.ts +0 -5
  666. package/template/lib/react/node_modules/eslint-plugin-prettier/recommended.js +0 -17
  667. package/template/lib/react/node_modules/eslint-plugin-prettier/worker.js +0 -181
  668. package/template/lib/react/node_modules/eslint-plugin-react/LICENSE +0 -22
  669. package/template/lib/react/node_modules/eslint-plugin-react/README.md +0 -420
  670. package/template/lib/react/node_modules/eslint-plugin-react/configs/all.js +0 -39
  671. package/template/lib/react/node_modules/eslint-plugin-react/configs/jsx-runtime.js +0 -18
  672. package/template/lib/react/node_modules/eslint-plugin-react/configs/recommended.js +0 -34
  673. package/template/lib/react/node_modules/eslint-plugin-react/index.js +0 -31
  674. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/boolean-prop-naming.js +0 -400
  675. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/button-has-type.js +0 -163
  676. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/default-props-match-prop-types.js +0 -108
  677. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/destructuring-assignment.js +0 -280
  678. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/display-name.js +0 -283
  679. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/forbid-component-props.js +0 -134
  680. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/forbid-dom-props.js +0 -121
  681. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/forbid-elements.js +0 -114
  682. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/forbid-foreign-prop-types.js +0 -134
  683. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/forbid-prop-types.js +0 -293
  684. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/function-component-definition.js +0 -284
  685. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/hook-use-state.js +0 -203
  686. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/iframe-missing-sandbox.js +0 -142
  687. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/index.js +0 -106
  688. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-boolean-value.js +0 -159
  689. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-child-element-spacing.js +0 -116
  690. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-closing-bracket-location.js +0 -308
  691. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-closing-tag-location.js +0 -73
  692. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-curly-brace-presence.js +0 -414
  693. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-curly-newline.js +0 -184
  694. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-curly-spacing.js +0 -430
  695. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-equals-spacing.js +0 -110
  696. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-filename-extension.js +0 -110
  697. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-first-prop-new-line.js +0 -80
  698. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-fragments.js +0 -209
  699. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-handler-names.js +0 -171
  700. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-indent-props.js +0 -213
  701. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-indent.js +0 -441
  702. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-key.js +0 -293
  703. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-max-depth.js +0 -162
  704. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-max-props-per-line.js +0 -154
  705. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-newline.js +0 -168
  706. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-no-bind.js +0 -208
  707. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-no-comment-textnodes.js +0 -64
  708. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-no-constructed-context-values.js +0 -225
  709. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-no-duplicate-props.js +0 -76
  710. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-no-leaked-render.js +0 -186
  711. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-no-literals.js +0 -195
  712. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-no-script-url.js +0 -97
  713. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-no-target-blank.js +0 -283
  714. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-no-undef.js +0 -115
  715. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-no-useless-fragment.js +0 -257
  716. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-one-expression-per-line.js +0 -233
  717. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-pascal-case.js +0 -163
  718. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-props-no-multi-spaces.js +0 -134
  719. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-props-no-spreading.js +0 -141
  720. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-sort-default-props.js +0 -188
  721. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-sort-props.js +0 -530
  722. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-space-before-closing.js +0 -96
  723. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-tag-spacing.js +0 -323
  724. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-uses-react.js +0 -46
  725. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-uses-vars.js +0 -60
  726. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/jsx-wrap-multilines.js +0 -260
  727. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-access-state-in-setstate.js +0 -187
  728. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-adjacent-inline-elements.js +0 -125
  729. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-array-index-key.js +0 -288
  730. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-arrow-function-lifecycle.js +0 -144
  731. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-children-prop.js +0 -119
  732. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-danger-with-children.js +0 -155
  733. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-danger.js +0 -74
  734. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-deprecated.js +0 -258
  735. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-did-mount-set-state.js +0 -10
  736. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-did-update-set-state.js +0 -10
  737. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-direct-mutation-state.js +0 -154
  738. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-find-dom-node.js +0 -50
  739. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-invalid-html-attribute.js +0 -639
  740. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-is-mounted.js +0 -55
  741. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-multi-comp.js +0 -80
  742. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-namespace.js +0 -61
  743. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-object-type-as-default-prop.js +0 -103
  744. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-redundant-should-component-update.js +0 -87
  745. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-render-return-value.js +0 -81
  746. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-set-state.js +0 -88
  747. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-string-refs.js +0 -119
  748. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-this-in-sfc.js +0 -46
  749. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-typos.js +0 -257
  750. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-unescaped-entities.js +0 -133
  751. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-unknown-property.js +0 -609
  752. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-unsafe.js +0 -153
  753. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-unstable-nested-components.js +0 -491
  754. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-unused-class-component-methods.js +0 -257
  755. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-unused-prop-types.js +0 -173
  756. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-unused-state.js +0 -522
  757. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/no-will-update-set-state.js +0 -14
  758. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/prefer-es6-class.js +0 -57
  759. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/prefer-exact-props.js +0 -161
  760. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/prefer-read-only-props.js +0 -116
  761. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/prefer-stateless-function.js +0 -390
  762. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/prop-types.js +0 -201
  763. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/react-in-jsx-scope.js +0 -56
  764. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/require-default-props.js +0 -193
  765. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/require-optimization.js +0 -239
  766. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/require-render-return.js +0 -104
  767. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/self-closing-comp.js +0 -103
  768. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/sort-comp.js +0 -446
  769. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/sort-default-props.js +0 -174
  770. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/sort-prop-types.js +0 -266
  771. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/state-in-constructor.js +0 -67
  772. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/static-property-placement.js +0 -187
  773. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/style-prop-object.js +0 -137
  774. package/template/lib/react/node_modules/eslint-plugin-react/lib/rules/void-dom-elements-no-children.js +0 -165
  775. package/template/lib/react/node_modules/eslint-plugin-react/lib/types.d.ts +0 -28
  776. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/Components.js +0 -946
  777. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/annotations.js +0 -32
  778. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/ast.js +0 -461
  779. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/componentUtil.js +0 -182
  780. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/defaultProps.js +0 -268
  781. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/docsUrl.js +0 -7
  782. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/error.js +0 -14
  783. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/getTokenBeforeClosingBracket.js +0 -16
  784. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/isCreateContext.js +0 -53
  785. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/isCreateElement.js +0 -33
  786. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/isDestructuredFromPragmaImport.js +0 -79
  787. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/isFirstLetterCapitalized.js +0 -16
  788. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/jsx.js +0 -196
  789. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/lifecycleMethods.js +0 -30
  790. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/linkComponents.js +0 -49
  791. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/log.js +0 -14
  792. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/makeNoMethodSetStateRule.js +0 -119
  793. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/message.js +0 -8
  794. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/pragma.js +0 -72
  795. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/propTypes.js +0 -1248
  796. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/propTypesSort.js +0 -211
  797. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/propWrapper.js +0 -61
  798. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/props.js +0 -103
  799. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/report.js +0 -12
  800. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/usedPropTypes.js +0 -569
  801. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/variable.js +0 -94
  802. package/template/lib/react/node_modules/eslint-plugin-react/lib/util/version.js +0 -161
  803. package/template/lib/react/node_modules/eslint-plugin-react/node_modules/.bin/eslint +0 -17
  804. package/template/lib/react/node_modules/eslint-plugin-react/node_modules/.bin/eslint.CMD +0 -12
  805. package/template/lib/react/node_modules/eslint-plugin-react/node_modules/.bin/eslint.ps1 +0 -41
  806. package/template/lib/react/node_modules/eslint-plugin-react/node_modules/.bin/resolve +0 -17
  807. package/template/lib/react/node_modules/eslint-plugin-react/node_modules/.bin/resolve.CMD +0 -12
  808. package/template/lib/react/node_modules/eslint-plugin-react/node_modules/.bin/resolve.ps1 +0 -41
  809. package/template/lib/react/node_modules/eslint-plugin-react/node_modules/.bin/semver +0 -17
  810. package/template/lib/react/node_modules/eslint-plugin-react/node_modules/.bin/semver.CMD +0 -12
  811. package/template/lib/react/node_modules/eslint-plugin-react/node_modules/.bin/semver.ps1 +0 -41
  812. package/template/lib/react/node_modules/eslint-plugin-react/package.json +0 -106
  813. package/template/lib/react/node_modules/eslint-plugin-react-hooks/LICENSE +0 -21
  814. package/template/lib/react/node_modules/eslint-plugin-react-hooks/README.md +0 -75
  815. package/template/lib/react/node_modules/eslint-plugin-react-hooks/cjs/eslint-plugin-react-hooks.development.js +0 -2458
  816. package/template/lib/react/node_modules/eslint-plugin-react-hooks/cjs/eslint-plugin-react-hooks.production.min.js +0 -63
  817. package/template/lib/react/node_modules/eslint-plugin-react-hooks/index.js +0 -9
  818. package/template/lib/react/node_modules/eslint-plugin-react-hooks/node_modules/.bin/eslint +0 -17
  819. package/template/lib/react/node_modules/eslint-plugin-react-hooks/node_modules/.bin/eslint.CMD +0 -12
  820. package/template/lib/react/node_modules/eslint-plugin-react-hooks/node_modules/.bin/eslint.ps1 +0 -41
  821. package/template/lib/react/node_modules/eslint-plugin-react-hooks/package.json +0 -39
  822. package/template/lib/react/node_modules/prettier/LICENSE +0 -4857
  823. package/template/lib/react/node_modules/prettier/README.md +0 -109
  824. package/template/lib/react/node_modules/prettier/bin/prettier.cjs +0 -68
  825. package/template/lib/react/node_modules/prettier/doc.d.ts +0 -243
  826. package/template/lib/react/node_modules/prettier/doc.js +0 -1328
  827. package/template/lib/react/node_modules/prettier/doc.mjs +0 -1300
  828. package/template/lib/react/node_modules/prettier/index.cjs +0 -648
  829. package/template/lib/react/node_modules/prettier/index.d.ts +0 -940
  830. package/template/lib/react/node_modules/prettier/index.mjs +0 -24255
  831. package/template/lib/react/node_modules/prettier/internal/cli.mjs +0 -7089
  832. package/template/lib/react/node_modules/prettier/node_modules/.bin/prettier +0 -17
  833. package/template/lib/react/node_modules/prettier/node_modules/.bin/prettier.CMD +0 -12
  834. package/template/lib/react/node_modules/prettier/node_modules/.bin/prettier.ps1 +0 -41
  835. package/template/lib/react/node_modules/prettier/package.json +0 -198
  836. package/template/lib/react/node_modules/prettier/plugins/acorn.d.ts +0 -6
  837. package/template/lib/react/node_modules/prettier/plugins/acorn.js +0 -13
  838. package/template/lib/react/node_modules/prettier/plugins/acorn.mjs +0 -13
  839. package/template/lib/react/node_modules/prettier/plugins/angular.d.ts +0 -8
  840. package/template/lib/react/node_modules/prettier/plugins/angular.js +0 -1
  841. package/template/lib/react/node_modules/prettier/plugins/angular.mjs +0 -1
  842. package/template/lib/react/node_modules/prettier/plugins/babel.d.ts +0 -18
  843. package/template/lib/react/node_modules/prettier/plugins/babel.js +0 -16
  844. package/template/lib/react/node_modules/prettier/plugins/babel.mjs +0 -16
  845. package/template/lib/react/node_modules/prettier/plugins/estree.d.ts +0 -1
  846. package/template/lib/react/node_modules/prettier/plugins/estree.js +0 -36
  847. package/template/lib/react/node_modules/prettier/plugins/estree.mjs +0 -36
  848. package/template/lib/react/node_modules/prettier/plugins/flow.d.ts +0 -5
  849. package/template/lib/react/node_modules/prettier/plugins/flow.js +0 -21
  850. package/template/lib/react/node_modules/prettier/plugins/flow.mjs +0 -21
  851. package/template/lib/react/node_modules/prettier/plugins/glimmer.d.ts +0 -5
  852. package/template/lib/react/node_modules/prettier/plugins/glimmer.js +0 -30
  853. package/template/lib/react/node_modules/prettier/plugins/glimmer.mjs +0 -30
  854. package/template/lib/react/node_modules/prettier/plugins/graphql.d.ts +0 -5
  855. package/template/lib/react/node_modules/prettier/plugins/graphql.js +0 -29
  856. package/template/lib/react/node_modules/prettier/plugins/graphql.mjs +0 -29
  857. package/template/lib/react/node_modules/prettier/plugins/html.d.ts +0 -8
  858. package/template/lib/react/node_modules/prettier/plugins/html.js +0 -19
  859. package/template/lib/react/node_modules/prettier/plugins/html.mjs +0 -19
  860. package/template/lib/react/node_modules/prettier/plugins/markdown.d.ts +0 -7
  861. package/template/lib/react/node_modules/prettier/plugins/markdown.js +0 -59
  862. package/template/lib/react/node_modules/prettier/plugins/markdown.mjs +0 -59
  863. package/template/lib/react/node_modules/prettier/plugins/meriyah.d.ts +0 -5
  864. package/template/lib/react/node_modules/prettier/plugins/meriyah.js +0 -5
  865. package/template/lib/react/node_modules/prettier/plugins/meriyah.mjs +0 -5
  866. package/template/lib/react/node_modules/prettier/plugins/postcss.d.ts +0 -7
  867. package/template/lib/react/node_modules/prettier/plugins/postcss.js +0 -49
  868. package/template/lib/react/node_modules/prettier/plugins/postcss.mjs +0 -49
  869. package/template/lib/react/node_modules/prettier/plugins/typescript.d.ts +0 -5
  870. package/template/lib/react/node_modules/prettier/plugins/typescript.js +0 -25
  871. package/template/lib/react/node_modules/prettier/plugins/typescript.mjs +0 -25
  872. package/template/lib/react/node_modules/prettier/plugins/yaml.d.ts +0 -5
  873. package/template/lib/react/node_modules/prettier/plugins/yaml.js +0 -161
  874. package/template/lib/react/node_modules/prettier/plugins/yaml.mjs +0 -161
  875. package/template/lib/react/node_modules/prettier/standalone.d.ts +0 -33
  876. package/template/lib/react/node_modules/prettier/standalone.js +0 -34
  877. package/template/lib/react/node_modules/prettier/standalone.mjs +0 -34
  878. package/template/lib/react/node_modules/prop-types/LICENSE +0 -21
  879. package/template/lib/react/node_modules/prop-types/README.md +0 -302
  880. package/template/lib/react/node_modules/prop-types/checkPropTypes.js +0 -103
  881. package/template/lib/react/node_modules/prop-types/factory.js +0 -19
  882. package/template/lib/react/node_modules/prop-types/factoryWithThrowingShims.js +0 -65
  883. package/template/lib/react/node_modules/prop-types/factoryWithTypeCheckers.js +0 -610
  884. package/template/lib/react/node_modules/prop-types/index.js +0 -19
  885. package/template/lib/react/node_modules/prop-types/lib/ReactPropTypesSecret.js +0 -12
  886. package/template/lib/react/node_modules/prop-types/lib/has.js +0 -1
  887. package/template/lib/react/node_modules/prop-types/node_modules/.bin/loose-envify +0 -17
  888. package/template/lib/react/node_modules/prop-types/node_modules/.bin/loose-envify.CMD +0 -12
  889. package/template/lib/react/node_modules/prop-types/node_modules/.bin/loose-envify.ps1 +0 -41
  890. package/template/lib/react/node_modules/prop-types/package.json +0 -60
  891. package/template/lib/react/node_modules/prop-types/prop-types.js +0 -1315
  892. package/template/lib/react/node_modules/prop-types/prop-types.min.js +0 -1
  893. package/template/lib/react/node_modules/react/LICENSE +0 -21
  894. package/template/lib/react/node_modules/react/README.md +0 -37
  895. package/template/lib/react/node_modules/react/cjs/react-jsx-dev-runtime.development.js +0 -1296
  896. package/template/lib/react/node_modules/react/cjs/react-jsx-dev-runtime.production.min.js +0 -10
  897. package/template/lib/react/node_modules/react/cjs/react-jsx-dev-runtime.profiling.min.js +0 -10
  898. package/template/lib/react/node_modules/react/cjs/react-jsx-runtime.development.js +0 -1314
  899. package/template/lib/react/node_modules/react/cjs/react-jsx-runtime.production.min.js +0 -11
  900. package/template/lib/react/node_modules/react/cjs/react-jsx-runtime.profiling.min.js +0 -11
  901. package/template/lib/react/node_modules/react/cjs/react.development.js +0 -2739
  902. package/template/lib/react/node_modules/react/cjs/react.production.min.js +0 -26
  903. package/template/lib/react/node_modules/react/cjs/react.shared-subset.development.js +0 -20
  904. package/template/lib/react/node_modules/react/cjs/react.shared-subset.production.min.js +0 -10
  905. package/template/lib/react/node_modules/react/index.js +0 -7
  906. package/template/lib/react/node_modules/react/jsx-dev-runtime.js +0 -7
  907. package/template/lib/react/node_modules/react/jsx-runtime.js +0 -7
  908. package/template/lib/react/node_modules/react/node_modules/.bin/loose-envify +0 -17
  909. package/template/lib/react/node_modules/react/node_modules/.bin/loose-envify.CMD +0 -12
  910. package/template/lib/react/node_modules/react/node_modules/.bin/loose-envify.ps1 +0 -41
  911. package/template/lib/react/node_modules/react/package.json +0 -47
  912. package/template/lib/react/node_modules/react/react.shared-subset.js +0 -7
  913. package/template/lib/react/node_modules/react/umd/react.development.js +0 -3342
  914. package/template/lib/react/node_modules/react/umd/react.production.min.js +0 -31
  915. package/template/lib/react/node_modules/react/umd/react.profiling.min.js +0 -31
  916. package/template/lib/react/node_modules/react-dom/LICENSE +0 -21
  917. package/template/lib/react/node_modules/react-dom/README.md +0 -60
  918. package/template/lib/react/node_modules/react-dom/cjs/react-dom-server-legacy.browser.development.js +0 -7018
  919. package/template/lib/react/node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.min.js +0 -93
  920. package/template/lib/react/node_modules/react-dom/cjs/react-dom-server-legacy.node.development.js +0 -7078
  921. package/template/lib/react/node_modules/react-dom/cjs/react-dom-server-legacy.node.production.min.js +0 -101
  922. package/template/lib/react/node_modules/react-dom/cjs/react-dom-server.browser.development.js +0 -7003
  923. package/template/lib/react/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js +0 -96
  924. package/template/lib/react/node_modules/react-dom/cjs/react-dom-server.node.development.js +0 -7059
  925. package/template/lib/react/node_modules/react-dom/cjs/react-dom-server.node.production.min.js +0 -102
  926. package/template/lib/react/node_modules/react-dom/cjs/react-dom-test-utils.development.js +0 -1741
  927. package/template/lib/react/node_modules/react-dom/cjs/react-dom-test-utils.production.min.js +0 -40
  928. package/template/lib/react/node_modules/react-dom/cjs/react-dom.development.js +0 -29868
  929. package/template/lib/react/node_modules/react-dom/cjs/react-dom.production.min.js +0 -323
  930. package/template/lib/react/node_modules/react-dom/cjs/react-dom.profiling.min.js +0 -367
  931. package/template/lib/react/node_modules/react-dom/client.js +0 -25
  932. package/template/lib/react/node_modules/react-dom/index.js +0 -38
  933. package/template/lib/react/node_modules/react-dom/node_modules/.bin/loose-envify +0 -17
  934. package/template/lib/react/node_modules/react-dom/node_modules/.bin/loose-envify.CMD +0 -12
  935. package/template/lib/react/node_modules/react-dom/node_modules/.bin/loose-envify.ps1 +0 -41
  936. package/template/lib/react/node_modules/react-dom/package.json +0 -62
  937. package/template/lib/react/node_modules/react-dom/profiling.js +0 -38
  938. package/template/lib/react/node_modules/react-dom/server.browser.js +0 -17
  939. package/template/lib/react/node_modules/react-dom/server.js +0 -3
  940. package/template/lib/react/node_modules/react-dom/server.node.js +0 -17
  941. package/template/lib/react/node_modules/react-dom/test-utils.js +0 -7
  942. package/template/lib/react/node_modules/react-dom/umd/react-dom-server-legacy.browser.development.js +0 -7015
  943. package/template/lib/react/node_modules/react-dom/umd/react-dom-server-legacy.browser.production.min.js +0 -75
  944. package/template/lib/react/node_modules/react-dom/umd/react-dom-server.browser.development.js +0 -7000
  945. package/template/lib/react/node_modules/react-dom/umd/react-dom-server.browser.production.min.js +0 -76
  946. package/template/lib/react/node_modules/react-dom/umd/react-dom-test-utils.development.js +0 -1737
  947. package/template/lib/react/node_modules/react-dom/umd/react-dom-test-utils.production.min.js +0 -33
  948. package/template/lib/react/node_modules/react-dom/umd/react-dom.development.js +0 -29869
  949. package/template/lib/react/node_modules/react-dom/umd/react-dom.production.min.js +0 -267
  950. package/template/lib/react/node_modules/react-dom/umd/react-dom.profiling.min.js +0 -285
  951. package/template/lib/react/node_modules/stylelint-config-standard-scss/LICENSE +0 -21
  952. package/template/lib/react/node_modules/stylelint-config-standard-scss/README.md +0 -50
  953. package/template/lib/react/node_modules/stylelint-config-standard-scss/index.js +0 -67
  954. package/template/lib/react/node_modules/stylelint-config-standard-scss/node_modules/.bin/stylelint +0 -17
  955. package/template/lib/react/node_modules/stylelint-config-standard-scss/node_modules/.bin/stylelint.CMD +0 -12
  956. package/template/lib/react/node_modules/stylelint-config-standard-scss/node_modules/.bin/stylelint.ps1 +0 -41
  957. package/template/lib/react/node_modules/stylelint-config-standard-scss/package.json +0 -58
  958. package/template/lib/ts/node_modules/.bin/acorn +0 -17
  959. package/template/lib/ts/node_modules/.bin/acorn.CMD +0 -12
  960. package/template/lib/ts/node_modules/.bin/acorn.ps1 +0 -41
  961. package/template/lib/ts/node_modules/.bin/eslint +0 -17
  962. package/template/lib/ts/node_modules/.bin/eslint.CMD +0 -12
  963. package/template/lib/ts/node_modules/.bin/eslint.ps1 +0 -41
  964. package/template/lib/ts/node_modules/.bin/prettier +0 -17
  965. package/template/lib/ts/node_modules/.bin/prettier.CMD +0 -12
  966. package/template/lib/ts/node_modules/.bin/prettier.ps1 +0 -41
  967. package/template/lib/ts/node_modules/.bin/stylelint +0 -17
  968. package/template/lib/ts/node_modules/.bin/stylelint.CMD +0 -12
  969. package/template/lib/ts/node_modules/.bin/stylelint.ps1 +0 -41
  970. package/template/lib/ts/node_modules/.bin/tsc +0 -17
  971. package/template/lib/ts/node_modules/.bin/tsc.CMD +0 -12
  972. package/template/lib/ts/node_modules/.bin/tsc.ps1 +0 -41
  973. package/template/lib/ts/node_modules/.bin/tsserver +0 -17
  974. package/template/lib/ts/node_modules/.bin/tsserver.CMD +0 -12
  975. package/template/lib/ts/node_modules/.bin/tsserver.ps1 +0 -41
  976. package/template/lib/ts/node_modules/.bin/vitest +0 -17
  977. package/template/lib/ts/node_modules/.bin/vitest.CMD +0 -12
  978. package/template/lib/ts/node_modules/.bin/vitest.ps1 +0 -41
  979. package/template/lib/ts/node_modules/eslint/LICENSE +0 -19
  980. package/template/lib/ts/node_modules/eslint/README.md +0 -304
  981. package/template/lib/ts/node_modules/eslint/bin/eslint.js +0 -173
  982. package/template/lib/ts/node_modules/eslint/conf/config-schema.js +0 -93
  983. package/template/lib/ts/node_modules/eslint/conf/default-cli-options.js +0 -32
  984. package/template/lib/ts/node_modules/eslint/conf/globals.js +0 -154
  985. package/template/lib/ts/node_modules/eslint/conf/replacements.json +0 -22
  986. package/template/lib/ts/node_modules/eslint/conf/rule-type-list.json +0 -28
  987. package/template/lib/ts/node_modules/eslint/lib/api.js +0 -26
  988. package/template/lib/ts/node_modules/eslint/lib/cli-engine/cli-engine.js +0 -1078
  989. package/template/lib/ts/node_modules/eslint/lib/cli-engine/file-enumerator.js +0 -547
  990. package/template/lib/ts/node_modules/eslint/lib/cli-engine/formatters/checkstyle.js +0 -60
  991. package/template/lib/ts/node_modules/eslint/lib/cli-engine/formatters/compact.js +0 -60
  992. package/template/lib/ts/node_modules/eslint/lib/cli-engine/formatters/formatters-meta.json +0 -46
  993. package/template/lib/ts/node_modules/eslint/lib/cli-engine/formatters/html.js +0 -351
  994. package/template/lib/ts/node_modules/eslint/lib/cli-engine/formatters/jslint-xml.js +0 -41
  995. package/template/lib/ts/node_modules/eslint/lib/cli-engine/formatters/json-with-metadata.js +0 -16
  996. package/template/lib/ts/node_modules/eslint/lib/cli-engine/formatters/json.js +0 -13
  997. package/template/lib/ts/node_modules/eslint/lib/cli-engine/formatters/junit.js +0 -82
  998. package/template/lib/ts/node_modules/eslint/lib/cli-engine/formatters/stylish.js +0 -101
  999. package/template/lib/ts/node_modules/eslint/lib/cli-engine/formatters/tap.js +0 -95
  1000. package/template/lib/ts/node_modules/eslint/lib/cli-engine/formatters/unix.js +0 -58
  1001. package/template/lib/ts/node_modules/eslint/lib/cli-engine/formatters/visualstudio.js +0 -63
  1002. package/template/lib/ts/node_modules/eslint/lib/cli-engine/hash.js +0 -35
  1003. package/template/lib/ts/node_modules/eslint/lib/cli-engine/index.js +0 -7
  1004. package/template/lib/ts/node_modules/eslint/lib/cli-engine/lint-result-cache.js +0 -203
  1005. package/template/lib/ts/node_modules/eslint/lib/cli-engine/load-rules.js +0 -46
  1006. package/template/lib/ts/node_modules/eslint/lib/cli-engine/xml-escape.js +0 -34
  1007. package/template/lib/ts/node_modules/eslint/lib/cli.js +0 -471
  1008. package/template/lib/ts/node_modules/eslint/lib/config/default-config.js +0 -67
  1009. package/template/lib/ts/node_modules/eslint/lib/config/flat-config-array.js +0 -274
  1010. package/template/lib/ts/node_modules/eslint/lib/config/flat-config-helpers.js +0 -111
  1011. package/template/lib/ts/node_modules/eslint/lib/config/flat-config-schema.js +0 -583
  1012. package/template/lib/ts/node_modules/eslint/lib/config/rule-validator.js +0 -158
  1013. package/template/lib/ts/node_modules/eslint/lib/eslint/eslint-helpers.js +0 -902
  1014. package/template/lib/ts/node_modules/eslint/lib/eslint/eslint.js +0 -700
  1015. package/template/lib/ts/node_modules/eslint/lib/eslint/flat-eslint.js +0 -1142
  1016. package/template/lib/ts/node_modules/eslint/lib/eslint/index.js +0 -9
  1017. package/template/lib/ts/node_modules/eslint/lib/linter/apply-disable-directives.js +0 -465
  1018. package/template/lib/ts/node_modules/eslint/lib/linter/code-path-analysis/code-path-analyzer.js +0 -852
  1019. package/template/lib/ts/node_modules/eslint/lib/linter/code-path-analysis/code-path-segment.js +0 -263
  1020. package/template/lib/ts/node_modules/eslint/lib/linter/code-path-analysis/code-path-state.js +0 -2348
  1021. package/template/lib/ts/node_modules/eslint/lib/linter/code-path-analysis/code-path.js +0 -342
  1022. package/template/lib/ts/node_modules/eslint/lib/linter/code-path-analysis/debug-helpers.js +0 -203
  1023. package/template/lib/ts/node_modules/eslint/lib/linter/code-path-analysis/fork-context.js +0 -349
  1024. package/template/lib/ts/node_modules/eslint/lib/linter/code-path-analysis/id-generator.js +0 -45
  1025. package/template/lib/ts/node_modules/eslint/lib/linter/config-comment-parser.js +0 -185
  1026. package/template/lib/ts/node_modules/eslint/lib/linter/index.js +0 -13
  1027. package/template/lib/ts/node_modules/eslint/lib/linter/interpolate.js +0 -28
  1028. package/template/lib/ts/node_modules/eslint/lib/linter/linter.js +0 -2119
  1029. package/template/lib/ts/node_modules/eslint/lib/linter/node-event-generator.js +0 -354
  1030. package/template/lib/ts/node_modules/eslint/lib/linter/report-translator.js +0 -369
  1031. package/template/lib/ts/node_modules/eslint/lib/linter/rule-fixer.js +0 -140
  1032. package/template/lib/ts/node_modules/eslint/lib/linter/rules.js +0 -80
  1033. package/template/lib/ts/node_modules/eslint/lib/linter/safe-emitter.js +0 -52
  1034. package/template/lib/ts/node_modules/eslint/lib/linter/source-code-fixer.js +0 -152
  1035. package/template/lib/ts/node_modules/eslint/lib/linter/timing.js +0 -161
  1036. package/template/lib/ts/node_modules/eslint/lib/options.js +0 -398
  1037. package/template/lib/ts/node_modules/eslint/lib/rule-tester/flat-rule-tester.js +0 -1122
  1038. package/template/lib/ts/node_modules/eslint/lib/rule-tester/index.js +0 -5
  1039. package/template/lib/ts/node_modules/eslint/lib/rule-tester/rule-tester.js +0 -1206
  1040. package/template/lib/ts/node_modules/eslint/lib/rules/accessor-pairs.js +0 -346
  1041. package/template/lib/ts/node_modules/eslint/lib/rules/array-bracket-newline.js +0 -261
  1042. package/template/lib/ts/node_modules/eslint/lib/rules/array-bracket-spacing.js +0 -244
  1043. package/template/lib/ts/node_modules/eslint/lib/rules/array-callback-return.js +0 -446
  1044. package/template/lib/ts/node_modules/eslint/lib/rules/array-element-newline.js +0 -311
  1045. package/template/lib/ts/node_modules/eslint/lib/rules/arrow-body-style.js +0 -296
  1046. package/template/lib/ts/node_modules/eslint/lib/rules/arrow-parens.js +0 -186
  1047. package/template/lib/ts/node_modules/eslint/lib/rules/arrow-spacing.js +0 -164
  1048. package/template/lib/ts/node_modules/eslint/lib/rules/block-scoped-var.js +0 -135
  1049. package/template/lib/ts/node_modules/eslint/lib/rules/block-spacing.js +0 -174
  1050. package/template/lib/ts/node_modules/eslint/lib/rules/brace-style.js +0 -197
  1051. package/template/lib/ts/node_modules/eslint/lib/rules/callback-return.js +0 -187
  1052. package/template/lib/ts/node_modules/eslint/lib/rules/camelcase.js +0 -399
  1053. package/template/lib/ts/node_modules/eslint/lib/rules/capitalized-comments.js +0 -300
  1054. package/template/lib/ts/node_modules/eslint/lib/rules/class-methods-use-this.js +0 -187
  1055. package/template/lib/ts/node_modules/eslint/lib/rules/comma-dangle.js +0 -373
  1056. package/template/lib/ts/node_modules/eslint/lib/rules/comma-spacing.js +0 -192
  1057. package/template/lib/ts/node_modules/eslint/lib/rules/comma-style.js +0 -314
  1058. package/template/lib/ts/node_modules/eslint/lib/rules/complexity.js +0 -165
  1059. package/template/lib/ts/node_modules/eslint/lib/rules/computed-property-spacing.js +0 -208
  1060. package/template/lib/ts/node_modules/eslint/lib/rules/consistent-return.js +0 -210
  1061. package/template/lib/ts/node_modules/eslint/lib/rules/consistent-this.js +0 -153
  1062. package/template/lib/ts/node_modules/eslint/lib/rules/constructor-super.js +0 -446
  1063. package/template/lib/ts/node_modules/eslint/lib/rules/curly.js +0 -486
  1064. package/template/lib/ts/node_modules/eslint/lib/rules/default-case-last.js +0 -44
  1065. package/template/lib/ts/node_modules/eslint/lib/rules/default-case.js +0 -97
  1066. package/template/lib/ts/node_modules/eslint/lib/rules/default-param-last.js +0 -62
  1067. package/template/lib/ts/node_modules/eslint/lib/rules/dot-location.js +0 -108
  1068. package/template/lib/ts/node_modules/eslint/lib/rules/dot-notation.js +0 -176
  1069. package/template/lib/ts/node_modules/eslint/lib/rules/eol-last.js +0 -115
  1070. package/template/lib/ts/node_modules/eslint/lib/rules/eqeqeq.js +0 -174
  1071. package/template/lib/ts/node_modules/eslint/lib/rules/for-direction.js +0 -140
  1072. package/template/lib/ts/node_modules/eslint/lib/rules/func-call-spacing.js +0 -233
  1073. package/template/lib/ts/node_modules/eslint/lib/rules/func-name-matching.js +0 -253
  1074. package/template/lib/ts/node_modules/eslint/lib/rules/func-names.js +0 -191
  1075. package/template/lib/ts/node_modules/eslint/lib/rules/func-style.js +0 -98
  1076. package/template/lib/ts/node_modules/eslint/lib/rules/function-call-argument-newline.js +0 -125
  1077. package/template/lib/ts/node_modules/eslint/lib/rules/function-paren-newline.js +0 -292
  1078. package/template/lib/ts/node_modules/eslint/lib/rules/generator-star-spacing.js +0 -209
  1079. package/template/lib/ts/node_modules/eslint/lib/rules/getter-return.js +0 -204
  1080. package/template/lib/ts/node_modules/eslint/lib/rules/global-require.js +0 -90
  1081. package/template/lib/ts/node_modules/eslint/lib/rules/grouped-accessor-pairs.js +0 -215
  1082. package/template/lib/ts/node_modules/eslint/lib/rules/guard-for-in.js +0 -76
  1083. package/template/lib/ts/node_modules/eslint/lib/rules/handle-callback-err.js +0 -101
  1084. package/template/lib/ts/node_modules/eslint/lib/rules/id-blacklist.js +0 -246
  1085. package/template/lib/ts/node_modules/eslint/lib/rules/id-denylist.js +0 -228
  1086. package/template/lib/ts/node_modules/eslint/lib/rules/id-length.js +0 -177
  1087. package/template/lib/ts/node_modules/eslint/lib/rules/id-match.js +0 -299
  1088. package/template/lib/ts/node_modules/eslint/lib/rules/implicit-arrow-linebreak.js +0 -84
  1089. package/template/lib/ts/node_modules/eslint/lib/rules/indent-legacy.js +0 -1126
  1090. package/template/lib/ts/node_modules/eslint/lib/rules/indent.js +0 -1803
  1091. package/template/lib/ts/node_modules/eslint/lib/rules/index.js +0 -306
  1092. package/template/lib/ts/node_modules/eslint/lib/rules/init-declarations.js +0 -139
  1093. package/template/lib/ts/node_modules/eslint/lib/rules/jsx-quotes.js +0 -98
  1094. package/template/lib/ts/node_modules/eslint/lib/rules/key-spacing.js +0 -687
  1095. package/template/lib/ts/node_modules/eslint/lib/rules/keyword-spacing.js +0 -640
  1096. package/template/lib/ts/node_modules/eslint/lib/rules/line-comment-position.js +0 -122
  1097. package/template/lib/ts/node_modules/eslint/lib/rules/linebreak-style.js +0 -108
  1098. package/template/lib/ts/node_modules/eslint/lib/rules/lines-around-comment.js +0 -471
  1099. package/template/lib/ts/node_modules/eslint/lib/rules/lines-around-directive.js +0 -201
  1100. package/template/lib/ts/node_modules/eslint/lib/rules/lines-between-class-members.js +0 -269
  1101. package/template/lib/ts/node_modules/eslint/lib/rules/logical-assignment-operators.js +0 -504
  1102. package/template/lib/ts/node_modules/eslint/lib/rules/max-classes-per-file.js +0 -89
  1103. package/template/lib/ts/node_modules/eslint/lib/rules/max-depth.js +0 -156
  1104. package/template/lib/ts/node_modules/eslint/lib/rules/max-len.js +0 -440
  1105. package/template/lib/ts/node_modules/eslint/lib/rules/max-lines-per-function.js +0 -213
  1106. package/template/lib/ts/node_modules/eslint/lib/rules/max-lines.js +0 -193
  1107. package/template/lib/ts/node_modules/eslint/lib/rules/max-nested-callbacks.js +0 -117
  1108. package/template/lib/ts/node_modules/eslint/lib/rules/max-params.js +0 -102
  1109. package/template/lib/ts/node_modules/eslint/lib/rules/max-statements-per-line.js +0 -199
  1110. package/template/lib/ts/node_modules/eslint/lib/rules/max-statements.js +0 -184
  1111. package/template/lib/ts/node_modules/eslint/lib/rules/multiline-comment-style.js +0 -474
  1112. package/template/lib/ts/node_modules/eslint/lib/rules/multiline-ternary.js +0 -174
  1113. package/template/lib/ts/node_modules/eslint/lib/rules/new-cap.js +0 -276
  1114. package/template/lib/ts/node_modules/eslint/lib/rules/new-parens.js +0 -93
  1115. package/template/lib/ts/node_modules/eslint/lib/rules/newline-after-var.js +0 -253
  1116. package/template/lib/ts/node_modules/eslint/lib/rules/newline-before-return.js +0 -217
  1117. package/template/lib/ts/node_modules/eslint/lib/rules/newline-per-chained-call.js +0 -126
  1118. package/template/lib/ts/node_modules/eslint/lib/rules/no-alert.js +0 -138
  1119. package/template/lib/ts/node_modules/eslint/lib/rules/no-array-constructor.js +0 -133
  1120. package/template/lib/ts/node_modules/eslint/lib/rules/no-async-promise-executor.js +0 -39
  1121. package/template/lib/ts/node_modules/eslint/lib/rules/no-await-in-loop.js +0 -106
  1122. package/template/lib/ts/node_modules/eslint/lib/rules/no-bitwise.js +0 -119
  1123. package/template/lib/ts/node_modules/eslint/lib/rules/no-buffer-constructor.js +0 -50
  1124. package/template/lib/ts/node_modules/eslint/lib/rules/no-caller.js +0 -46
  1125. package/template/lib/ts/node_modules/eslint/lib/rules/no-case-declarations.js +0 -64
  1126. package/template/lib/ts/node_modules/eslint/lib/rules/no-catch-shadow.js +0 -82
  1127. package/template/lib/ts/node_modules/eslint/lib/rules/no-class-assign.js +0 -63
  1128. package/template/lib/ts/node_modules/eslint/lib/rules/no-compare-neg-zero.js +0 -60
  1129. package/template/lib/ts/node_modules/eslint/lib/rules/no-cond-assign.js +0 -159
  1130. package/template/lib/ts/node_modules/eslint/lib/rules/no-confusing-arrow.js +0 -92
  1131. package/template/lib/ts/node_modules/eslint/lib/rules/no-console.js +0 -207
  1132. package/template/lib/ts/node_modules/eslint/lib/rules/no-const-assign.js +0 -56
  1133. package/template/lib/ts/node_modules/eslint/lib/rules/no-constant-binary-expression.js +0 -509
  1134. package/template/lib/ts/node_modules/eslint/lib/rules/no-constant-condition.js +0 -150
  1135. package/template/lib/ts/node_modules/eslint/lib/rules/no-constructor-return.js +0 -62
  1136. package/template/lib/ts/node_modules/eslint/lib/rules/no-continue.js +0 -39
  1137. package/template/lib/ts/node_modules/eslint/lib/rules/no-control-regex.js +0 -138
  1138. package/template/lib/ts/node_modules/eslint/lib/rules/no-debugger.js +0 -43
  1139. package/template/lib/ts/node_modules/eslint/lib/rules/no-delete-var.js +0 -42
  1140. package/template/lib/ts/node_modules/eslint/lib/rules/no-div-regex.js +0 -53
  1141. package/template/lib/ts/node_modules/eslint/lib/rules/no-dupe-args.js +0 -82
  1142. package/template/lib/ts/node_modules/eslint/lib/rules/no-dupe-class-members.js +0 -104
  1143. package/template/lib/ts/node_modules/eslint/lib/rules/no-dupe-else-if.js +0 -122
  1144. package/template/lib/ts/node_modules/eslint/lib/rules/no-dupe-keys.js +0 -142
  1145. package/template/lib/ts/node_modules/eslint/lib/rules/no-duplicate-case.js +0 -71
  1146. package/template/lib/ts/node_modules/eslint/lib/rules/no-duplicate-imports.js +0 -290
  1147. package/template/lib/ts/node_modules/eslint/lib/rules/no-else-return.js +0 -405
  1148. package/template/lib/ts/node_modules/eslint/lib/rules/no-empty-character-class.js +0 -76
  1149. package/template/lib/ts/node_modules/eslint/lib/rules/no-empty-function.js +0 -167
  1150. package/template/lib/ts/node_modules/eslint/lib/rules/no-empty-pattern.js +0 -78
  1151. package/template/lib/ts/node_modules/eslint/lib/rules/no-empty-static-block.js +0 -47
  1152. package/template/lib/ts/node_modules/eslint/lib/rules/no-empty.js +0 -103
  1153. package/template/lib/ts/node_modules/eslint/lib/rules/no-eq-null.js +0 -46
  1154. package/template/lib/ts/node_modules/eslint/lib/rules/no-eval.js +0 -286
  1155. package/template/lib/ts/node_modules/eslint/lib/rules/no-ex-assign.js +0 -54
  1156. package/template/lib/ts/node_modules/eslint/lib/rules/no-extend-native.js +0 -179
  1157. package/template/lib/ts/node_modules/eslint/lib/rules/no-extra-bind.js +0 -213
  1158. package/template/lib/ts/node_modules/eslint/lib/rules/no-extra-boolean-cast.js +0 -317
  1159. package/template/lib/ts/node_modules/eslint/lib/rules/no-extra-label.js +0 -149
  1160. package/template/lib/ts/node_modules/eslint/lib/rules/no-extra-parens.js +0 -1322
  1161. package/template/lib/ts/node_modules/eslint/lib/rules/no-extra-semi.js +0 -147
  1162. package/template/lib/ts/node_modules/eslint/lib/rules/no-fallthrough.js +0 -196
  1163. package/template/lib/ts/node_modules/eslint/lib/rules/no-floating-decimal.js +0 -73
  1164. package/template/lib/ts/node_modules/eslint/lib/rules/no-func-assign.js +0 -78
  1165. package/template/lib/ts/node_modules/eslint/lib/rules/no-global-assign.js +0 -95
  1166. package/template/lib/ts/node_modules/eslint/lib/rules/no-implicit-coercion.js +0 -380
  1167. package/template/lib/ts/node_modules/eslint/lib/rules/no-implicit-globals.js +0 -146
  1168. package/template/lib/ts/node_modules/eslint/lib/rules/no-implied-eval.js +0 -132
  1169. package/template/lib/ts/node_modules/eslint/lib/rules/no-import-assign.js +0 -241
  1170. package/template/lib/ts/node_modules/eslint/lib/rules/no-inline-comments.js +0 -110
  1171. package/template/lib/ts/node_modules/eslint/lib/rules/no-inner-declarations.js +0 -110
  1172. package/template/lib/ts/node_modules/eslint/lib/rules/no-invalid-regexp.js +0 -194
  1173. package/template/lib/ts/node_modules/eslint/lib/rules/no-invalid-this.js +0 -150
  1174. package/template/lib/ts/node_modules/eslint/lib/rules/no-irregular-whitespace.js +0 -276
  1175. package/template/lib/ts/node_modules/eslint/lib/rules/no-iterator.js +0 -52
  1176. package/template/lib/ts/node_modules/eslint/lib/rules/no-label-var.js +0 -80
  1177. package/template/lib/ts/node_modules/eslint/lib/rules/no-labels.js +0 -149
  1178. package/template/lib/ts/node_modules/eslint/lib/rules/no-lone-blocks.js +0 -136
  1179. package/template/lib/ts/node_modules/eslint/lib/rules/no-lonely-if.js +0 -88
  1180. package/template/lib/ts/node_modules/eslint/lib/rules/no-loop-func.js +0 -206
  1181. package/template/lib/ts/node_modules/eslint/lib/rules/no-loss-of-precision.js +0 -214
  1182. package/template/lib/ts/node_modules/eslint/lib/rules/no-magic-numbers.js +0 -243
  1183. package/template/lib/ts/node_modules/eslint/lib/rules/no-misleading-character-class.js +0 -300
  1184. package/template/lib/ts/node_modules/eslint/lib/rules/no-mixed-operators.js +0 -229
  1185. package/template/lib/ts/node_modules/eslint/lib/rules/no-mixed-requires.js +0 -238
  1186. package/template/lib/ts/node_modules/eslint/lib/rules/no-mixed-spaces-and-tabs.js +0 -116
  1187. package/template/lib/ts/node_modules/eslint/lib/rules/no-multi-assign.js +0 -67
  1188. package/template/lib/ts/node_modules/eslint/lib/rules/no-multi-spaces.js +0 -141
  1189. package/template/lib/ts/node_modules/eslint/lib/rules/no-multi-str.js +0 -65
  1190. package/template/lib/ts/node_modules/eslint/lib/rules/no-multiple-empty-lines.js +0 -154
  1191. package/template/lib/ts/node_modules/eslint/lib/rules/no-native-reassign.js +0 -98
  1192. package/template/lib/ts/node_modules/eslint/lib/rules/no-negated-condition.js +0 -95
  1193. package/template/lib/ts/node_modules/eslint/lib/rules/no-negated-in-lhs.js +0 -46
  1194. package/template/lib/ts/node_modules/eslint/lib/rules/no-nested-ternary.js +0 -44
  1195. package/template/lib/ts/node_modules/eslint/lib/rules/no-new-func.js +0 -87
  1196. package/template/lib/ts/node_modules/eslint/lib/rules/no-new-native-nonconstructor.js +0 -66
  1197. package/template/lib/ts/node_modules/eslint/lib/rules/no-new-object.js +0 -67
  1198. package/template/lib/ts/node_modules/eslint/lib/rules/no-new-require.js +0 -50
  1199. package/template/lib/ts/node_modules/eslint/lib/rules/no-new-symbol.js +0 -56
  1200. package/template/lib/ts/node_modules/eslint/lib/rules/no-new-wrappers.js +0 -60
  1201. package/template/lib/ts/node_modules/eslint/lib/rules/no-new.js +0 -43
  1202. package/template/lib/ts/node_modules/eslint/lib/rules/no-nonoctal-decimal-escape.js +0 -148
  1203. package/template/lib/ts/node_modules/eslint/lib/rules/no-obj-calls.js +0 -86
  1204. package/template/lib/ts/node_modules/eslint/lib/rules/no-object-constructor.js +0 -117
  1205. package/template/lib/ts/node_modules/eslint/lib/rules/no-octal-escape.js +0 -56
  1206. package/template/lib/ts/node_modules/eslint/lib/rules/no-octal.js +0 -45
  1207. package/template/lib/ts/node_modules/eslint/lib/rules/no-param-reassign.js +0 -230
  1208. package/template/lib/ts/node_modules/eslint/lib/rules/no-path-concat.js +0 -64
  1209. package/template/lib/ts/node_modules/eslint/lib/rules/no-plusplus.js +0 -105
  1210. package/template/lib/ts/node_modules/eslint/lib/rules/no-process-env.js +0 -51
  1211. package/template/lib/ts/node_modules/eslint/lib/rules/no-process-exit.js +0 -47
  1212. package/template/lib/ts/node_modules/eslint/lib/rules/no-promise-executor-return.js +0 -263
  1213. package/template/lib/ts/node_modules/eslint/lib/rules/no-proto.js +0 -48
  1214. package/template/lib/ts/node_modules/eslint/lib/rules/no-prototype-builtins.js +0 -159
  1215. package/template/lib/ts/node_modules/eslint/lib/rules/no-redeclare.js +0 -174
  1216. package/template/lib/ts/node_modules/eslint/lib/rules/no-regex-spaces.js +0 -197
  1217. package/template/lib/ts/node_modules/eslint/lib/rules/no-restricted-exports.js +0 -193
  1218. package/template/lib/ts/node_modules/eslint/lib/rules/no-restricted-globals.js +0 -124
  1219. package/template/lib/ts/node_modules/eslint/lib/rules/no-restricted-imports.js +0 -410
  1220. package/template/lib/ts/node_modules/eslint/lib/rules/no-restricted-modules.js +0 -213
  1221. package/template/lib/ts/node_modules/eslint/lib/rules/no-restricted-properties.js +0 -168
  1222. package/template/lib/ts/node_modules/eslint/lib/rules/no-restricted-syntax.js +0 -70
  1223. package/template/lib/ts/node_modules/eslint/lib/rules/no-return-assign.js +0 -80
  1224. package/template/lib/ts/node_modules/eslint/lib/rules/no-return-await.js +0 -135
  1225. package/template/lib/ts/node_modules/eslint/lib/rules/no-script-url.js +0 -61
  1226. package/template/lib/ts/node_modules/eslint/lib/rules/no-self-assign.js +0 -183
  1227. package/template/lib/ts/node_modules/eslint/lib/rules/no-self-compare.js +0 -60
  1228. package/template/lib/ts/node_modules/eslint/lib/rules/no-sequences.js +0 -138
  1229. package/template/lib/ts/node_modules/eslint/lib/rules/no-setter-return.js +0 -226
  1230. package/template/lib/ts/node_modules/eslint/lib/rules/no-shadow-restricted-names.js +0 -65
  1231. package/template/lib/ts/node_modules/eslint/lib/rules/no-shadow.js +0 -336
  1232. package/template/lib/ts/node_modules/eslint/lib/rules/no-spaced-func.js +0 -83
  1233. package/template/lib/ts/node_modules/eslint/lib/rules/no-sparse-arrays.js +0 -50
  1234. package/template/lib/ts/node_modules/eslint/lib/rules/no-sync.js +0 -64
  1235. package/template/lib/ts/node_modules/eslint/lib/rules/no-tabs.js +0 -81
  1236. package/template/lib/ts/node_modules/eslint/lib/rules/no-template-curly-in-string.js +0 -44
  1237. package/template/lib/ts/node_modules/eslint/lib/rules/no-ternary.js +0 -41
  1238. package/template/lib/ts/node_modules/eslint/lib/rules/no-this-before-super.js +0 -331
  1239. package/template/lib/ts/node_modules/eslint/lib/rules/no-throw-literal.js +0 -51
  1240. package/template/lib/ts/node_modules/eslint/lib/rules/no-trailing-spaces.js +0 -193
  1241. package/template/lib/ts/node_modules/eslint/lib/rules/no-undef-init.js +0 -75
  1242. package/template/lib/ts/node_modules/eslint/lib/rules/no-undef.js +0 -79
  1243. package/template/lib/ts/node_modules/eslint/lib/rules/no-undefined.js +0 -86
  1244. package/template/lib/ts/node_modules/eslint/lib/rules/no-underscore-dangle.js +0 -335
  1245. package/template/lib/ts/node_modules/eslint/lib/rules/no-unexpected-multiline.js +0 -120
  1246. package/template/lib/ts/node_modules/eslint/lib/rules/no-unmodified-loop-condition.js +0 -360
  1247. package/template/lib/ts/node_modules/eslint/lib/rules/no-unneeded-ternary.js +0 -166
  1248. package/template/lib/ts/node_modules/eslint/lib/rules/no-unreachable-loop.js +0 -185
  1249. package/template/lib/ts/node_modules/eslint/lib/rules/no-unreachable.js +0 -293
  1250. package/template/lib/ts/node_modules/eslint/lib/rules/no-unsafe-finally.js +0 -111
  1251. package/template/lib/ts/node_modules/eslint/lib/rules/no-unsafe-negation.js +0 -128
  1252. package/template/lib/ts/node_modules/eslint/lib/rules/no-unsafe-optional-chaining.js +0 -205
  1253. package/template/lib/ts/node_modules/eslint/lib/rules/no-unused-expressions.js +0 -186
  1254. package/template/lib/ts/node_modules/eslint/lib/rules/no-unused-labels.js +0 -143
  1255. package/template/lib/ts/node_modules/eslint/lib/rules/no-unused-private-class-members.js +0 -195
  1256. package/template/lib/ts/node_modules/eslint/lib/rules/no-unused-vars.js +0 -718
  1257. package/template/lib/ts/node_modules/eslint/lib/rules/no-use-before-define.js +0 -348
  1258. package/template/lib/ts/node_modules/eslint/lib/rules/no-useless-backreference.js +0 -194
  1259. package/template/lib/ts/node_modules/eslint/lib/rules/no-useless-call.js +0 -90
  1260. package/template/lib/ts/node_modules/eslint/lib/rules/no-useless-catch.js +0 -57
  1261. package/template/lib/ts/node_modules/eslint/lib/rules/no-useless-computed-key.js +0 -168
  1262. package/template/lib/ts/node_modules/eslint/lib/rules/no-useless-concat.js +0 -115
  1263. package/template/lib/ts/node_modules/eslint/lib/rules/no-useless-constructor.js +0 -189
  1264. package/template/lib/ts/node_modules/eslint/lib/rules/no-useless-escape.js +0 -333
  1265. package/template/lib/ts/node_modules/eslint/lib/rules/no-useless-rename.js +0 -172
  1266. package/template/lib/ts/node_modules/eslint/lib/rules/no-useless-return.js +0 -364
  1267. package/template/lib/ts/node_modules/eslint/lib/rules/no-var.js +0 -334
  1268. package/template/lib/ts/node_modules/eslint/lib/rules/no-void.js +0 -64
  1269. package/template/lib/ts/node_modules/eslint/lib/rules/no-warning-comments.js +0 -201
  1270. package/template/lib/ts/node_modules/eslint/lib/rules/no-whitespace-before-property.js +0 -116
  1271. package/template/lib/ts/node_modules/eslint/lib/rules/no-with.js +0 -39
  1272. package/template/lib/ts/node_modules/eslint/lib/rules/nonblock-statement-body-position.js +0 -127
  1273. package/template/lib/ts/node_modules/eslint/lib/rules/object-curly-newline.js +0 -324
  1274. package/template/lib/ts/node_modules/eslint/lib/rules/object-curly-spacing.js +0 -311
  1275. package/template/lib/ts/node_modules/eslint/lib/rules/object-property-newline.js +0 -102
  1276. package/template/lib/ts/node_modules/eslint/lib/rules/object-shorthand.js +0 -520
  1277. package/template/lib/ts/node_modules/eslint/lib/rules/one-var-declaration-per-line.js +0 -95
  1278. package/template/lib/ts/node_modules/eslint/lib/rules/one-var.js +0 -567
  1279. package/template/lib/ts/node_modules/eslint/lib/rules/operator-assignment.js +0 -209
  1280. package/template/lib/ts/node_modules/eslint/lib/rules/operator-linebreak.js +0 -253
  1281. package/template/lib/ts/node_modules/eslint/lib/rules/padded-blocks.js +0 -310
  1282. package/template/lib/ts/node_modules/eslint/lib/rules/padding-line-between-statements.js +0 -590
  1283. package/template/lib/ts/node_modules/eslint/lib/rules/prefer-arrow-callback.js +0 -381
  1284. package/template/lib/ts/node_modules/eslint/lib/rules/prefer-const.js +0 -501
  1285. package/template/lib/ts/node_modules/eslint/lib/rules/prefer-destructuring.js +0 -301
  1286. package/template/lib/ts/node_modules/eslint/lib/rules/prefer-exponentiation-operator.js +0 -191
  1287. package/template/lib/ts/node_modules/eslint/lib/rules/prefer-named-capture-group.js +0 -178
  1288. package/template/lib/ts/node_modules/eslint/lib/rules/prefer-numeric-literals.js +0 -148
  1289. package/template/lib/ts/node_modules/eslint/lib/rules/prefer-object-has-own.js +0 -114
  1290. package/template/lib/ts/node_modules/eslint/lib/rules/prefer-object-spread.js +0 -298
  1291. package/template/lib/ts/node_modules/eslint/lib/rules/prefer-promise-reject-errors.js +0 -132
  1292. package/template/lib/ts/node_modules/eslint/lib/rules/prefer-reflect.js +0 -127
  1293. package/template/lib/ts/node_modules/eslint/lib/rules/prefer-regex-literals.js +0 -507
  1294. package/template/lib/ts/node_modules/eslint/lib/rules/prefer-rest-params.js +0 -118
  1295. package/template/lib/ts/node_modules/eslint/lib/rules/prefer-spread.js +0 -87
  1296. package/template/lib/ts/node_modules/eslint/lib/rules/prefer-template.js +0 -275
  1297. package/template/lib/ts/node_modules/eslint/lib/rules/quote-props.js +0 -310
  1298. package/template/lib/ts/node_modules/eslint/lib/rules/quotes.js +0 -350
  1299. package/template/lib/ts/node_modules/eslint/lib/rules/radix.js +0 -198
  1300. package/template/lib/ts/node_modules/eslint/lib/rules/require-atomic-updates.js +0 -331
  1301. package/template/lib/ts/node_modules/eslint/lib/rules/require-await.js +0 -113
  1302. package/template/lib/ts/node_modules/eslint/lib/rules/require-jsdoc.js +0 -122
  1303. package/template/lib/ts/node_modules/eslint/lib/rules/require-unicode-regexp.js +0 -129
  1304. package/template/lib/ts/node_modules/eslint/lib/rules/require-yield.js +0 -77
  1305. package/template/lib/ts/node_modules/eslint/lib/rules/rest-spread-spacing.js +0 -123
  1306. package/template/lib/ts/node_modules/eslint/lib/rules/semi-spacing.js +0 -248
  1307. package/template/lib/ts/node_modules/eslint/lib/rules/semi-style.js +0 -158
  1308. package/template/lib/ts/node_modules/eslint/lib/rules/semi.js +0 -438
  1309. package/template/lib/ts/node_modules/eslint/lib/rules/sort-imports.js +0 -241
  1310. package/template/lib/ts/node_modules/eslint/lib/rules/sort-keys.js +0 -230
  1311. package/template/lib/ts/node_modules/eslint/lib/rules/sort-vars.js +0 -104
  1312. package/template/lib/ts/node_modules/eslint/lib/rules/space-before-blocks.js +0 -204
  1313. package/template/lib/ts/node_modules/eslint/lib/rules/space-before-function-paren.js +0 -167
  1314. package/template/lib/ts/node_modules/eslint/lib/rules/space-in-parens.js +0 -285
  1315. package/template/lib/ts/node_modules/eslint/lib/rules/space-infix-ops.js +0 -198
  1316. package/template/lib/ts/node_modules/eslint/lib/rules/space-unary-ops.js +0 -324
  1317. package/template/lib/ts/node_modules/eslint/lib/rules/spaced-comment.js +0 -385
  1318. package/template/lib/ts/node_modules/eslint/lib/rules/strict.js +0 -277
  1319. package/template/lib/ts/node_modules/eslint/lib/rules/switch-colon-spacing.js +0 -132
  1320. package/template/lib/ts/node_modules/eslint/lib/rules/symbol-description.js +0 -73
  1321. package/template/lib/ts/node_modules/eslint/lib/rules/template-curly-spacing.js +0 -144
  1322. package/template/lib/ts/node_modules/eslint/lib/rules/template-tag-spacing.js +0 -93
  1323. package/template/lib/ts/node_modules/eslint/lib/rules/unicode-bom.js +0 -73
  1324. package/template/lib/ts/node_modules/eslint/lib/rules/use-isnan.js +0 -141
  1325. package/template/lib/ts/node_modules/eslint/lib/rules/utils/ast-utils.js +0 -2282
  1326. package/template/lib/ts/node_modules/eslint/lib/rules/utils/fix-tracker.js +0 -114
  1327. package/template/lib/ts/node_modules/eslint/lib/rules/utils/keywords.js +0 -67
  1328. package/template/lib/ts/node_modules/eslint/lib/rules/utils/lazy-loading-rule-map.js +0 -115
  1329. package/template/lib/ts/node_modules/eslint/lib/rules/utils/patterns/letters.js +0 -36
  1330. package/template/lib/ts/node_modules/eslint/lib/rules/utils/regular-expressions.js +0 -42
  1331. package/template/lib/ts/node_modules/eslint/lib/rules/utils/unicode/index.js +0 -11
  1332. package/template/lib/ts/node_modules/eslint/lib/rules/utils/unicode/is-combining-character.js +0 -13
  1333. package/template/lib/ts/node_modules/eslint/lib/rules/utils/unicode/is-emoji-modifier.js +0 -13
  1334. package/template/lib/ts/node_modules/eslint/lib/rules/utils/unicode/is-regional-indicator-symbol.js +0 -13
  1335. package/template/lib/ts/node_modules/eslint/lib/rules/utils/unicode/is-surrogate-pair.js +0 -14
  1336. package/template/lib/ts/node_modules/eslint/lib/rules/valid-jsdoc.js +0 -516
  1337. package/template/lib/ts/node_modules/eslint/lib/rules/valid-typeof.js +0 -127
  1338. package/template/lib/ts/node_modules/eslint/lib/rules/vars-on-top.js +0 -157
  1339. package/template/lib/ts/node_modules/eslint/lib/rules/wrap-iife.js +0 -207
  1340. package/template/lib/ts/node_modules/eslint/lib/rules/wrap-regex.js +0 -61
  1341. package/template/lib/ts/node_modules/eslint/lib/rules/yield-star-spacing.js +0 -130
  1342. package/template/lib/ts/node_modules/eslint/lib/rules/yoda.js +0 -353
  1343. package/template/lib/ts/node_modules/eslint/lib/shared/ajv.js +0 -34
  1344. package/template/lib/ts/node_modules/eslint/lib/shared/ast-utils.js +0 -29
  1345. package/template/lib/ts/node_modules/eslint/lib/shared/config-validator.js +0 -347
  1346. package/template/lib/ts/node_modules/eslint/lib/shared/deprecation-warnings.js +0 -58
  1347. package/template/lib/ts/node_modules/eslint/lib/shared/directives.js +0 -15
  1348. package/template/lib/ts/node_modules/eslint/lib/shared/logging.js +0 -30
  1349. package/template/lib/ts/node_modules/eslint/lib/shared/relative-module-resolver.js +0 -50
  1350. package/template/lib/ts/node_modules/eslint/lib/shared/runtime-info.js +0 -167
  1351. package/template/lib/ts/node_modules/eslint/lib/shared/severity.js +0 -49
  1352. package/template/lib/ts/node_modules/eslint/lib/shared/string-utils.js +0 -60
  1353. package/template/lib/ts/node_modules/eslint/lib/shared/traverser.js +0 -195
  1354. package/template/lib/ts/node_modules/eslint/lib/shared/types.js +0 -216
  1355. package/template/lib/ts/node_modules/eslint/lib/source-code/index.js +0 -5
  1356. package/template/lib/ts/node_modules/eslint/lib/source-code/source-code.js +0 -1055
  1357. package/template/lib/ts/node_modules/eslint/lib/source-code/token-store/backward-token-comment-cursor.js +0 -57
  1358. package/template/lib/ts/node_modules/eslint/lib/source-code/token-store/backward-token-cursor.js +0 -58
  1359. package/template/lib/ts/node_modules/eslint/lib/source-code/token-store/cursor.js +0 -76
  1360. package/template/lib/ts/node_modules/eslint/lib/source-code/token-store/cursors.js +0 -90
  1361. package/template/lib/ts/node_modules/eslint/lib/source-code/token-store/decorative-cursor.js +0 -39
  1362. package/template/lib/ts/node_modules/eslint/lib/source-code/token-store/filter-cursor.js +0 -43
  1363. package/template/lib/ts/node_modules/eslint/lib/source-code/token-store/forward-token-comment-cursor.js +0 -57
  1364. package/template/lib/ts/node_modules/eslint/lib/source-code/token-store/forward-token-cursor.js +0 -63
  1365. package/template/lib/ts/node_modules/eslint/lib/source-code/token-store/index.js +0 -627
  1366. package/template/lib/ts/node_modules/eslint/lib/source-code/token-store/limit-cursor.js +0 -40
  1367. package/template/lib/ts/node_modules/eslint/lib/source-code/token-store/padded-token-cursor.js +0 -38
  1368. package/template/lib/ts/node_modules/eslint/lib/source-code/token-store/skip-cursor.js +0 -42
  1369. package/template/lib/ts/node_modules/eslint/lib/source-code/token-store/utils.js +0 -107
  1370. package/template/lib/ts/node_modules/eslint/lib/unsupported-api.js +0 -30
  1371. package/template/lib/ts/node_modules/eslint/messages/all-files-ignored.js +0 -16
  1372. package/template/lib/ts/node_modules/eslint/messages/eslintrc-incompat.js +0 -98
  1373. package/template/lib/ts/node_modules/eslint/messages/eslintrc-plugins.js +0 -24
  1374. package/template/lib/ts/node_modules/eslint/messages/extend-config-missing.js +0 -13
  1375. package/template/lib/ts/node_modules/eslint/messages/failed-to-read-json.js +0 -11
  1376. package/template/lib/ts/node_modules/eslint/messages/file-not-found.js +0 -10
  1377. package/template/lib/ts/node_modules/eslint/messages/invalid-rule-options.js +0 -17
  1378. package/template/lib/ts/node_modules/eslint/messages/invalid-rule-severity.js +0 -13
  1379. package/template/lib/ts/node_modules/eslint/messages/no-config-found.js +0 -15
  1380. package/template/lib/ts/node_modules/eslint/messages/plugin-conflict.js +0 -22
  1381. package/template/lib/ts/node_modules/eslint/messages/plugin-invalid.js +0 -16
  1382. package/template/lib/ts/node_modules/eslint/messages/plugin-missing.js +0 -19
  1383. package/template/lib/ts/node_modules/eslint/messages/print-config-with-directory-path.js +0 -8
  1384. package/template/lib/ts/node_modules/eslint/messages/shared.js +0 -18
  1385. package/template/lib/ts/node_modules/eslint/messages/whitespace-found.js +0 -11
  1386. package/template/lib/ts/node_modules/eslint/node_modules/.bin/eslint +0 -17
  1387. package/template/lib/ts/node_modules/eslint/node_modules/.bin/eslint.CMD +0 -12
  1388. package/template/lib/ts/node_modules/eslint/node_modules/.bin/eslint.ps1 +0 -41
  1389. package/template/lib/ts/node_modules/eslint/node_modules/.bin/js-yaml +0 -17
  1390. package/template/lib/ts/node_modules/eslint/node_modules/.bin/js-yaml.CMD +0 -12
  1391. package/template/lib/ts/node_modules/eslint/node_modules/.bin/js-yaml.ps1 +0 -41
  1392. package/template/lib/ts/node_modules/eslint/package.json +0 -179
  1393. package/template/lib/ts/node_modules/eslint-import-resolver-typescript/LICENSE +0 -5
  1394. package/template/lib/ts/node_modules/eslint-import-resolver-typescript/README.md +0 -232
  1395. package/template/lib/ts/node_modules/eslint-import-resolver-typescript/lib/index.cjs +0 -278
  1396. package/template/lib/ts/node_modules/eslint-import-resolver-typescript/lib/index.d.ts +0 -20
  1397. package/template/lib/ts/node_modules/eslint-import-resolver-typescript/lib/index.es2020.mjs +0 -251
  1398. package/template/lib/ts/node_modules/eslint-import-resolver-typescript/lib/index.js +0 -252
  1399. package/template/lib/ts/node_modules/eslint-import-resolver-typescript/lib/index.js.map +0 -1
  1400. package/template/lib/ts/node_modules/eslint-import-resolver-typescript/node_modules/.bin/eslint +0 -17
  1401. package/template/lib/ts/node_modules/eslint-import-resolver-typescript/node_modules/.bin/eslint.CMD +0 -12
  1402. package/template/lib/ts/node_modules/eslint-import-resolver-typescript/node_modules/.bin/eslint.ps1 +0 -41
  1403. package/template/lib/ts/node_modules/eslint-import-resolver-typescript/package.json +0 -108
  1404. package/template/lib/ts/node_modules/eslint-import-resolver-typescript/shim.d.ts +0 -4
  1405. package/template/lib/ts/node_modules/eslint-plugin-import/CHANGELOG.md +0 -1925
  1406. package/template/lib/ts/node_modules/eslint-plugin-import/CONTRIBUTING.md +0 -84
  1407. package/template/lib/ts/node_modules/eslint-plugin-import/LICENSE +0 -22
  1408. package/template/lib/ts/node_modules/eslint-plugin-import/README.md +0 -500
  1409. package/template/lib/ts/node_modules/eslint-plugin-import/RELEASE.md +0 -54
  1410. package/template/lib/ts/node_modules/eslint-plugin-import/SECURITY.md +0 -11
  1411. package/template/lib/ts/node_modules/eslint-plugin-import/config/electron.js +0 -8
  1412. package/template/lib/ts/node_modules/eslint-plugin-import/config/errors.js +0 -14
  1413. package/template/lib/ts/node_modules/eslint-plugin-import/config/react-native.js +0 -13
  1414. package/template/lib/ts/node_modules/eslint-plugin-import/config/react.js +0 -18
  1415. package/template/lib/ts/node_modules/eslint-plugin-import/config/recommended.js +0 -28
  1416. package/template/lib/ts/node_modules/eslint-plugin-import/config/stage-0.js +0 -12
  1417. package/template/lib/ts/node_modules/eslint-plugin-import/config/typescript.js +0 -34
  1418. package/template/lib/ts/node_modules/eslint-plugin-import/config/warnings.js +0 -12
  1419. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/consistent-type-specifier-style.md +0 -91
  1420. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/default.md +0 -72
  1421. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/dynamic-import-chunkname.md +0 -92
  1422. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/export.md +0 -37
  1423. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/exports-last.md +0 -51
  1424. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/extensions.md +0 -174
  1425. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/first.md +0 -75
  1426. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/group-exports.md +0 -118
  1427. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/imports-first.md +0 -9
  1428. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/max-dependencies.md +0 -70
  1429. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/named.md +0 -102
  1430. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/namespace.md +0 -106
  1431. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/newline-after-import.md +0 -167
  1432. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-absolute-path.md +0 -54
  1433. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-amd.md +0 -37
  1434. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-anonymous-default-export.md +0 -83
  1435. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-commonjs.md +0 -96
  1436. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-cycle.md +0 -111
  1437. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-default-export.md +0 -65
  1438. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-deprecated.md +0 -62
  1439. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-duplicates.md +0 -109
  1440. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-dynamic-require.md +0 -25
  1441. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-empty-named-blocks.md +0 -49
  1442. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-extraneous-dependencies.md +0 -139
  1443. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-import-module-exports.md +0 -81
  1444. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-internal-modules.md +0 -136
  1445. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-mutable-exports.md +0 -54
  1446. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-named-as-default-member.md +0 -52
  1447. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-named-as-default.md +0 -53
  1448. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-named-default.md +0 -36
  1449. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-named-export.md +0 -79
  1450. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-namespace.md +0 -44
  1451. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-nodejs-modules.md +0 -42
  1452. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-relative-packages.md +0 -70
  1453. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-relative-parent-imports.md +0 -123
  1454. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-restricted-paths.md +0 -198
  1455. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-self-import.md +0 -32
  1456. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-unassigned-import.md +0 -60
  1457. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-unresolved.md +0 -110
  1458. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-unused-modules.md +0 -125
  1459. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-useless-path-segments.md +0 -85
  1460. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/no-webpack-loader-syntax.md +0 -39
  1461. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/order.md +0 -365
  1462. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/prefer-default-export.md +0 -185
  1463. package/template/lib/ts/node_modules/eslint-plugin-import/docs/rules/unambiguous.md +0 -57
  1464. package/template/lib/ts/node_modules/eslint-plugin-import/lib/ExportMap.js +0 -856
  1465. package/template/lib/ts/node_modules/eslint-plugin-import/lib/core/importType.js +0 -129
  1466. package/template/lib/ts/node_modules/eslint-plugin-import/lib/core/packagePath.js +0 -22
  1467. package/template/lib/ts/node_modules/eslint-plugin-import/lib/core/staticRequire.js +0 -11
  1468. package/template/lib/ts/node_modules/eslint-plugin-import/lib/docsUrl.js +0 -8
  1469. package/template/lib/ts/node_modules/eslint-plugin-import/lib/importDeclaration.js +0 -5
  1470. package/template/lib/ts/node_modules/eslint-plugin-import/lib/index.js +0 -71
  1471. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/consistent-type-specifier-style.js +0 -221
  1472. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/default.js +0 -40
  1473. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/dynamic-import-chunkname.js +0 -120
  1474. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/export.js +0 -250
  1475. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/exports-last.js +0 -40
  1476. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/extensions.js +0 -193
  1477. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/first.js +0 -144
  1478. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/group-exports.js +0 -155
  1479. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/imports-first.js +0 -16
  1480. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/max-dependencies.js +0 -60
  1481. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/named.js +0 -143
  1482. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/namespace.js +0 -218
  1483. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/newline-after-import.js +0 -237
  1484. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-absolute-path.js +0 -40
  1485. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-amd.js +0 -47
  1486. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-anonymous-default-export.js +0 -103
  1487. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-commonjs.js +0 -141
  1488. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-cycle.js +0 -158
  1489. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-default-export.js +0 -43
  1490. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-deprecated.js +0 -138
  1491. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-duplicates.js +0 -354
  1492. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-dynamic-require.js +0 -77
  1493. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-empty-named-blocks.js +0 -105
  1494. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-extraneous-dependencies.js +0 -301
  1495. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-import-module-exports.js +0 -85
  1496. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-internal-modules.js +0 -144
  1497. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-mutable-exports.js +0 -59
  1498. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-named-as-default-member.js +0 -96
  1499. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-named-as-default.js +0 -45
  1500. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-named-default.js +0 -31
  1501. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-named-export.js +0 -39
  1502. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-namespace.js +0 -175
  1503. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-nodejs-modules.js +0 -44
  1504. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-relative-packages.js +0 -71
  1505. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-relative-parent-imports.js +0 -48
  1506. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-restricted-paths.js +0 -245
  1507. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-self-import.js +0 -39
  1508. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-unassigned-import.js +0 -79
  1509. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-unresolved.js +0 -60
  1510. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-unused-modules.js +0 -945
  1511. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-useless-path-segments.js +0 -147
  1512. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/no-webpack-loader-syntax.js +0 -26
  1513. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/order.js +0 -785
  1514. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/prefer-default-export.js +0 -116
  1515. package/template/lib/ts/node_modules/eslint-plugin-import/lib/rules/unambiguous.js +0 -38
  1516. package/template/lib/ts/node_modules/eslint-plugin-import/memo-parser/LICENSE +0 -22
  1517. package/template/lib/ts/node_modules/eslint-plugin-import/memo-parser/README.md +0 -21
  1518. package/template/lib/ts/node_modules/eslint-plugin-import/memo-parser/index.js +0 -41
  1519. package/template/lib/ts/node_modules/eslint-plugin-import/node_modules/.bin/eslint +0 -17
  1520. package/template/lib/ts/node_modules/eslint-plugin-import/node_modules/.bin/eslint.CMD +0 -12
  1521. package/template/lib/ts/node_modules/eslint-plugin-import/node_modules/.bin/eslint.ps1 +0 -41
  1522. package/template/lib/ts/node_modules/eslint-plugin-import/node_modules/.bin/semver +0 -17
  1523. package/template/lib/ts/node_modules/eslint-plugin-import/node_modules/.bin/semver.CMD +0 -12
  1524. package/template/lib/ts/node_modules/eslint-plugin-import/node_modules/.bin/semver.ps1 +0 -41
  1525. package/template/lib/ts/node_modules/eslint-plugin-import/package.json +0 -124
  1526. package/template/lib/ts/node_modules/eslint-plugin-prettier/LICENSE.md +0 -24
  1527. package/template/lib/ts/node_modules/eslint-plugin-prettier/README.md +0 -202
  1528. package/template/lib/ts/node_modules/eslint-plugin-prettier/eslint-plugin-prettier.d.ts +0 -5
  1529. package/template/lib/ts/node_modules/eslint-plugin-prettier/eslint-plugin-prettier.js +0 -254
  1530. package/template/lib/ts/node_modules/eslint-plugin-prettier/node_modules/.bin/eslint +0 -17
  1531. package/template/lib/ts/node_modules/eslint-plugin-prettier/node_modules/.bin/eslint-config-prettier +0 -17
  1532. package/template/lib/ts/node_modules/eslint-plugin-prettier/node_modules/.bin/eslint-config-prettier.CMD +0 -12
  1533. package/template/lib/ts/node_modules/eslint-plugin-prettier/node_modules/.bin/eslint-config-prettier.ps1 +0 -41
  1534. package/template/lib/ts/node_modules/eslint-plugin-prettier/node_modules/.bin/eslint.CMD +0 -12
  1535. package/template/lib/ts/node_modules/eslint-plugin-prettier/node_modules/.bin/eslint.ps1 +0 -41
  1536. package/template/lib/ts/node_modules/eslint-plugin-prettier/node_modules/.bin/prettier +0 -17
  1537. package/template/lib/ts/node_modules/eslint-plugin-prettier/node_modules/.bin/prettier.CMD +0 -12
  1538. package/template/lib/ts/node_modules/eslint-plugin-prettier/node_modules/.bin/prettier.ps1 +0 -41
  1539. package/template/lib/ts/node_modules/eslint-plugin-prettier/package.json +0 -101
  1540. package/template/lib/ts/node_modules/eslint-plugin-prettier/recommended.d.ts +0 -5
  1541. package/template/lib/ts/node_modules/eslint-plugin-prettier/recommended.js +0 -17
  1542. package/template/lib/ts/node_modules/eslint-plugin-prettier/worker.js +0 -181
  1543. package/template/lib/ts/node_modules/prettier/LICENSE +0 -4857
  1544. package/template/lib/ts/node_modules/prettier/README.md +0 -109
  1545. package/template/lib/ts/node_modules/prettier/bin/prettier.cjs +0 -68
  1546. package/template/lib/ts/node_modules/prettier/doc.d.ts +0 -243
  1547. package/template/lib/ts/node_modules/prettier/doc.js +0 -1328
  1548. package/template/lib/ts/node_modules/prettier/doc.mjs +0 -1300
  1549. package/template/lib/ts/node_modules/prettier/index.cjs +0 -648
  1550. package/template/lib/ts/node_modules/prettier/index.d.ts +0 -940
  1551. package/template/lib/ts/node_modules/prettier/index.mjs +0 -24255
  1552. package/template/lib/ts/node_modules/prettier/internal/cli.mjs +0 -7089
  1553. package/template/lib/ts/node_modules/prettier/node_modules/.bin/prettier +0 -17
  1554. package/template/lib/ts/node_modules/prettier/node_modules/.bin/prettier.CMD +0 -12
  1555. package/template/lib/ts/node_modules/prettier/node_modules/.bin/prettier.ps1 +0 -41
  1556. package/template/lib/ts/node_modules/prettier/package.json +0 -198
  1557. package/template/lib/ts/node_modules/prettier/plugins/acorn.d.ts +0 -6
  1558. package/template/lib/ts/node_modules/prettier/plugins/acorn.js +0 -13
  1559. package/template/lib/ts/node_modules/prettier/plugins/acorn.mjs +0 -13
  1560. package/template/lib/ts/node_modules/prettier/plugins/angular.d.ts +0 -8
  1561. package/template/lib/ts/node_modules/prettier/plugins/angular.js +0 -1
  1562. package/template/lib/ts/node_modules/prettier/plugins/angular.mjs +0 -1
  1563. package/template/lib/ts/node_modules/prettier/plugins/babel.d.ts +0 -18
  1564. package/template/lib/ts/node_modules/prettier/plugins/babel.js +0 -16
  1565. package/template/lib/ts/node_modules/prettier/plugins/babel.mjs +0 -16
  1566. package/template/lib/ts/node_modules/prettier/plugins/estree.d.ts +0 -1
  1567. package/template/lib/ts/node_modules/prettier/plugins/estree.js +0 -36
  1568. package/template/lib/ts/node_modules/prettier/plugins/estree.mjs +0 -36
  1569. package/template/lib/ts/node_modules/prettier/plugins/flow.d.ts +0 -5
  1570. package/template/lib/ts/node_modules/prettier/plugins/flow.js +0 -21
  1571. package/template/lib/ts/node_modules/prettier/plugins/flow.mjs +0 -21
  1572. package/template/lib/ts/node_modules/prettier/plugins/glimmer.d.ts +0 -5
  1573. package/template/lib/ts/node_modules/prettier/plugins/glimmer.js +0 -30
  1574. package/template/lib/ts/node_modules/prettier/plugins/glimmer.mjs +0 -30
  1575. package/template/lib/ts/node_modules/prettier/plugins/graphql.d.ts +0 -5
  1576. package/template/lib/ts/node_modules/prettier/plugins/graphql.js +0 -29
  1577. package/template/lib/ts/node_modules/prettier/plugins/graphql.mjs +0 -29
  1578. package/template/lib/ts/node_modules/prettier/plugins/html.d.ts +0 -8
  1579. package/template/lib/ts/node_modules/prettier/plugins/html.js +0 -19
  1580. package/template/lib/ts/node_modules/prettier/plugins/html.mjs +0 -19
  1581. package/template/lib/ts/node_modules/prettier/plugins/markdown.d.ts +0 -7
  1582. package/template/lib/ts/node_modules/prettier/plugins/markdown.js +0 -59
  1583. package/template/lib/ts/node_modules/prettier/plugins/markdown.mjs +0 -59
  1584. package/template/lib/ts/node_modules/prettier/plugins/meriyah.d.ts +0 -5
  1585. package/template/lib/ts/node_modules/prettier/plugins/meriyah.js +0 -5
  1586. package/template/lib/ts/node_modules/prettier/plugins/meriyah.mjs +0 -5
  1587. package/template/lib/ts/node_modules/prettier/plugins/postcss.d.ts +0 -7
  1588. package/template/lib/ts/node_modules/prettier/plugins/postcss.js +0 -49
  1589. package/template/lib/ts/node_modules/prettier/plugins/postcss.mjs +0 -49
  1590. package/template/lib/ts/node_modules/prettier/plugins/typescript.d.ts +0 -5
  1591. package/template/lib/ts/node_modules/prettier/plugins/typescript.js +0 -25
  1592. package/template/lib/ts/node_modules/prettier/plugins/typescript.mjs +0 -25
  1593. package/template/lib/ts/node_modules/prettier/plugins/yaml.d.ts +0 -5
  1594. package/template/lib/ts/node_modules/prettier/plugins/yaml.js +0 -161
  1595. package/template/lib/ts/node_modules/prettier/plugins/yaml.mjs +0 -161
  1596. package/template/lib/ts/node_modules/prettier/standalone.d.ts +0 -33
  1597. package/template/lib/ts/node_modules/prettier/standalone.js +0 -34
  1598. package/template/lib/ts/node_modules/prettier/standalone.mjs +0 -34
  1599. package/template/lib/ts/node_modules/stylelint-config-standard-scss/LICENSE +0 -21
  1600. package/template/lib/ts/node_modules/stylelint-config-standard-scss/README.md +0 -50
  1601. package/template/lib/ts/node_modules/stylelint-config-standard-scss/index.js +0 -67
  1602. package/template/lib/ts/node_modules/stylelint-config-standard-scss/node_modules/.bin/stylelint +0 -17
  1603. package/template/lib/ts/node_modules/stylelint-config-standard-scss/node_modules/.bin/stylelint.CMD +0 -12
  1604. package/template/lib/ts/node_modules/stylelint-config-standard-scss/node_modules/.bin/stylelint.ps1 +0 -41
  1605. package/template/lib/ts/node_modules/stylelint-config-standard-scss/package.json +0 -58
  1606. /package/template/web-app/{react → react-rspack}/.editorconfig +0 -0
  1607. /package/template/web-app/{react → react-rspack}/.eslintignore +0 -0
  1608. /package/template/web-app/{react → react-rspack}/.gitignore +0 -0
  1609. /package/template/web-app/{react → react-rspack}/.husky/commit-msg +0 -0
  1610. /package/template/web-app/{react → react-rspack}/.husky/pre-commit +0 -0
  1611. /package/template/web-app/{react → react-rspack}/.prettierignore +0 -0
  1612. /package/template/web-app/{react → react-rspack}/.prettierrc +0 -0
  1613. /package/template/web-app/{react → react-rspack}/.stylelintignore +0 -0
  1614. /package/template/web-app/{react → react-rspack}/.stylelintrc +0 -0
  1615. /package/template/web-app/{react → react-rspack}/.vscode/extensions.json +0 -0
  1616. /package/template/web-app/{react → react-rspack}/.vscode/settings.json +0 -0
  1617. /package/template/web-app/{react → react-rspack}/commitlint.config.cjs +0 -0
  1618. /package/template/web-app/{react → react-rspack}/domain/app/app.model.ts +0 -0
  1619. /package/template/web-app/{react → react-rspack}/domain/app/app.styled.ts +0 -0
  1620. /package/template/web-app/{react → react-rspack}/domain/app/components/app-context.tsx +0 -0
  1621. /package/template/web-app/{react → react-rspack}/domain/app/components/app.tsx +0 -0
  1622. /package/template/web-app/{react → react-rspack}/domain/app/components/index.ts +0 -0
  1623. /package/template/web-app/{react → react-rspack}/domain/app/index.ts +0 -0
  1624. /package/template/web-app/{react → react-rspack}/domain/router/home/ids.ts +0 -0
  1625. /package/template/web-app/{react → react-rspack}/domain/router/home/index.ts +0 -0
  1626. /package/template/web-app/{react → react-rspack}/domain/router/home/routes.tsx +0 -0
  1627. /package/template/web-app/{react → react-rspack}/domain/router/ids.ts +0 -0
  1628. /package/template/web-app/{react → react-rspack}/domain/router/index.ts +0 -0
  1629. /package/template/web-app/{react → react-rspack}/domain/router/router.types.ts +0 -0
  1630. /package/template/web-app/{react → react-rspack}/main.tsx +0 -0
  1631. /package/template/web-app/{react → react-rspack}/pages/home/home.styled.ts +0 -0
  1632. /package/template/web-app/{react → react-rspack}/pages/home/home.tsx +0 -0
  1633. /package/template/web-app/{react → react-rspack}/pages/home/index.ts +0 -0
  1634. /package/template/web-app/{react → react-rspack}/pages/index.tsx +0 -0
  1635. /package/template/web-app/{react → react-rspack}/pages/not-found.tsx +0 -0
  1636. /package/template/web-app/{react → react-rspack}/postcss.config.cjs +0 -0
  1637. /package/template/web-app/{react → react-rspack}/scripts/createChunks.ts +0 -0
  1638. /package/template/web-app/{react → react-rspack}/scripts/index.ts +0 -0
  1639. /package/template/web-app/{react → react-rspack}/shared/assets/react.svg +0 -0
  1640. /package/template/web-app/{react → react-rspack}/shared/components/index.ts +0 -0
  1641. /package/template/web-app/{react → react-rspack}/shared/constant/index.ts +0 -0
  1642. /package/template/web-app/{react → react-rspack}/shared/hooks/defineRouter/defineRouter.types.ts +0 -0
  1643. /package/template/web-app/{react → react-rspack}/shared/hooks/defineRouter/deineRouter.tsx +0 -0
  1644. /package/template/web-app/{react → react-rspack}/shared/hooks/defineRouter/index.ts +0 -0
  1645. /package/template/web-app/{react → react-rspack}/shared/hooks/index.ts +0 -0
  1646. /package/template/web-app/{react → react-rspack}/shared/hooks/useInterval.ts +0 -0
  1647. /package/template/web-app/{react → react-rspack}/shared/hooks/useLoadingAction.ts +0 -0
  1648. /package/template/web-app/{react → react-rspack}/shared/hooks/useLowPriorityState.ts +0 -0
  1649. /package/template/web-app/{react → react-rspack}/shared/hooks/useSyncState.ts +0 -0
  1650. /package/template/web-app/{react → react-rspack}/shared/hooks/useVisible.ts +0 -0
  1651. /package/template/web-app/{react → react-rspack}/shared/service/api.ts +0 -0
  1652. /package/template/web-app/{react → react-rspack}/shared/service/index.ts +0 -0
  1653. /package/template/web-app/{react → react-rspack}/shared/theme/index.ts +0 -0
  1654. /package/template/web-app/{react → react-rspack}/shared/theme/theme.styled.ts +0 -0
  1655. /package/template/web-app/{react → react-rspack}/shared/tools/componentInstance.tsx +0 -0
  1656. /package/template/web-app/{react → react-rspack}/shared/tools/index.ts +0 -0
  1657. /package/template/web-app/{react → react-rspack}/shared/types/index.ts +0 -0
  1658. /package/template/web-app/{react → react-rspack}/shared/types/utils.ts +0 -0
  1659. /package/template/web-app/{react → react-rspack}/tsconfig.json +0 -0
  1660. /package/template/web-app/{react → react-vite}/.env +0 -0
  1661. /package/template/web-app/{react → react-vite}/.env.development +0 -0
  1662. /package/template/web-app/{react → react-vite}/.eslintrc +0 -0
  1663. /package/template/web-app/{react → react-vite}/README.md +0 -0
  1664. /package/template/web-app/{react → react-vite}/domain/router/router.tsx +0 -0
  1665. /package/template/web-app/{react → react-vite}/index.html +0 -0
  1666. /package/template/web-app/{react → react-vite}/mockUtils.ts +0 -0
  1667. /package/template/web-app/{react → react-vite}/package.json +0 -0
  1668. /package/template/web-app/{react → react-vite}/pages/home/home.mock.ts +0 -0
  1669. /package/template/web-app/{react → react-vite}/public/vite.svg +0 -0
  1670. /package/template/web-app/{react → react-vite}/shared/service/home.ts +0 -0
  1671. /package/template/web-app/{react → react-vite}/shared/service/request.ts +0 -0
  1672. /package/template/web-app/{react → react-vite}/tsconfig.node.json +0 -0
  1673. /package/template/web-app/{react → react-vite}/vite-env.d.ts +0 -0
  1674. /package/template/web-app/{react → react-vite}/vite.config.ts +0 -0
@@ -1,945 +0,0 @@
1
- 'use strict';var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) {return typeof obj;} : function (obj) {return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;};
2
-
3
-
4
-
5
-
6
-
7
- var _ignore = require('eslint-module-utils/ignore');
8
- var _resolve = require('eslint-module-utils/resolve');var _resolve2 = _interopRequireDefault(_resolve);
9
- var _visit = require('eslint-module-utils/visit');var _visit2 = _interopRequireDefault(_visit);
10
- var _path = require('path');
11
- var _readPkgUp2 = require('eslint-module-utils/readPkgUp');var _readPkgUp3 = _interopRequireDefault(_readPkgUp2);
12
- var _object = require('object.values');var _object2 = _interopRequireDefault(_object);
13
- var _arrayIncludes = require('array-includes');var _arrayIncludes2 = _interopRequireDefault(_arrayIncludes);
14
- var _arrayPrototype = require('array.prototype.flatmap');var _arrayPrototype2 = _interopRequireDefault(_arrayPrototype);
15
-
16
- var _ExportMap = require('../ExportMap');var _ExportMap2 = _interopRequireDefault(_ExportMap);
17
- var _docsUrl = require('../docsUrl');var _docsUrl2 = _interopRequireDefault(_docsUrl);function _interopRequireDefault(obj) {return obj && obj.__esModule ? obj : { 'default': obj };}function _toConsumableArray(arr) {if (Array.isArray(arr)) {for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) {arr2[i] = arr[i];}return arr2;} else {return Array.from(arr);}} /**
18
- * @fileOverview Ensures that modules contain exports and/or all
19
- * modules are consumed within other modules.
20
- * @author René Fermann
21
- */var FileEnumerator = void 0;var listFilesToProcess = void 0;
22
- try {var _require =
23
- require('eslint/use-at-your-own-risk');FileEnumerator = _require.FileEnumerator;
24
- } catch (e) {
25
- try {var _require2 =
26
-
27
- require('eslint/lib/cli-engine/file-enumerator'); // has been moved to eslint/lib/cli-engine/file-enumerator in version 6
28
- FileEnumerator = _require2.FileEnumerator;} catch (e) {
29
- try {
30
- // eslint/lib/util/glob-util has been moved to eslint/lib/util/glob-utils with version 5.3
31
- var _require3 = require('eslint/lib/util/glob-utils'),originalListFilesToProcess = _require3.listFilesToProcess;
32
-
33
- // Prevent passing invalid options (extensions array) to old versions of the function.
34
- // https://github.com/eslint/eslint/blob/v5.16.0/lib/util/glob-utils.js#L178-L280
35
- // https://github.com/eslint/eslint/blob/v5.2.0/lib/util/glob-util.js#L174-L269
36
- listFilesToProcess = function listFilesToProcess(src, extensions) {
37
- return originalListFilesToProcess(src, {
38
- extensions: extensions });
39
-
40
- };
41
- } catch (e) {var _require4 =
42
- require('eslint/lib/util/glob-util'),_originalListFilesToProcess = _require4.listFilesToProcess;
43
-
44
- listFilesToProcess = function listFilesToProcess(src, extensions) {
45
- var patterns = src.concat((0, _arrayPrototype2['default'])(src, function (pattern) {return extensions.map(function (extension) {return (/\*\*|\*\./.test(pattern) ? pattern : String(pattern) + '/**/*' + String(extension));});}));
46
-
47
- return _originalListFilesToProcess(patterns);
48
- };
49
- }
50
- }
51
- }
52
-
53
- if (FileEnumerator) {
54
- listFilesToProcess = function listFilesToProcess(src, extensions) {
55
- var e = new FileEnumerator({
56
- extensions: extensions });
57
-
58
-
59
- return Array.from(e.iterateFiles(src), function (_ref) {var filePath = _ref.filePath,ignored = _ref.ignored;return {
60
- ignored: ignored,
61
- filename: filePath };});
62
-
63
- };
64
- }
65
-
66
- var EXPORT_DEFAULT_DECLARATION = 'ExportDefaultDeclaration';
67
- var EXPORT_NAMED_DECLARATION = 'ExportNamedDeclaration';
68
- var EXPORT_ALL_DECLARATION = 'ExportAllDeclaration';
69
- var IMPORT_DECLARATION = 'ImportDeclaration';
70
- var IMPORT_NAMESPACE_SPECIFIER = 'ImportNamespaceSpecifier';
71
- var IMPORT_DEFAULT_SPECIFIER = 'ImportDefaultSpecifier';
72
- var VARIABLE_DECLARATION = 'VariableDeclaration';
73
- var FUNCTION_DECLARATION = 'FunctionDeclaration';
74
- var CLASS_DECLARATION = 'ClassDeclaration';
75
- var IDENTIFIER = 'Identifier';
76
- var OBJECT_PATTERN = 'ObjectPattern';
77
- var ARRAY_PATTERN = 'ArrayPattern';
78
- var TS_INTERFACE_DECLARATION = 'TSInterfaceDeclaration';
79
- var TS_TYPE_ALIAS_DECLARATION = 'TSTypeAliasDeclaration';
80
- var TS_ENUM_DECLARATION = 'TSEnumDeclaration';
81
- var DEFAULT = 'default';
82
-
83
- function forEachDeclarationIdentifier(declaration, cb) {
84
- if (declaration) {
85
- if (
86
- declaration.type === FUNCTION_DECLARATION ||
87
- declaration.type === CLASS_DECLARATION ||
88
- declaration.type === TS_INTERFACE_DECLARATION ||
89
- declaration.type === TS_TYPE_ALIAS_DECLARATION ||
90
- declaration.type === TS_ENUM_DECLARATION)
91
- {
92
- cb(declaration.id.name);
93
- } else if (declaration.type === VARIABLE_DECLARATION) {
94
- declaration.declarations.forEach(function (_ref2) {var id = _ref2.id;
95
- if (id.type === OBJECT_PATTERN) {
96
- (0, _ExportMap.recursivePatternCapture)(id, function (pattern) {
97
- if (pattern.type === IDENTIFIER) {
98
- cb(pattern.name);
99
- }
100
- });
101
- } else if (id.type === ARRAY_PATTERN) {
102
- id.elements.forEach(function (_ref3) {var name = _ref3.name;
103
- cb(name);
104
- });
105
- } else {
106
- cb(id.name);
107
- }
108
- });
109
- }
110
- }
111
- }
112
-
113
- /**
114
- * List of imports per file.
115
- *
116
- * Represented by a two-level Map to a Set of identifiers. The upper-level Map
117
- * keys are the paths to the modules containing the imports, while the
118
- * lower-level Map keys are the paths to the files which are being imported
119
- * from. Lastly, the Set of identifiers contains either names being imported
120
- * or a special AST node name listed above (e.g ImportDefaultSpecifier).
121
- *
122
- * For example, if we have a file named foo.js containing:
123
- *
124
- * import { o2 } from './bar.js';
125
- *
126
- * Then we will have a structure that looks like:
127
- *
128
- * Map { 'foo.js' => Map { 'bar.js' => Set { 'o2' } } }
129
- *
130
- * @type {Map<string, Map<string, Set<string>>>}
131
- */
132
- var importList = new Map();
133
-
134
- /**
135
- * List of exports per file.
136
- *
137
- * Represented by a two-level Map to an object of metadata. The upper-level Map
138
- * keys are the paths to the modules containing the exports, while the
139
- * lower-level Map keys are the specific identifiers or special AST node names
140
- * being exported. The leaf-level metadata object at the moment only contains a
141
- * `whereUsed` property, which contains a Set of paths to modules that import
142
- * the name.
143
- *
144
- * For example, if we have a file named bar.js containing the following exports:
145
- *
146
- * const o2 = 'bar';
147
- * export { o2 };
148
- *
149
- * And a file named foo.js containing the following import:
150
- *
151
- * import { o2 } from './bar.js';
152
- *
153
- * Then we will have a structure that looks like:
154
- *
155
- * Map { 'bar.js' => Map { 'o2' => { whereUsed: Set { 'foo.js' } } } }
156
- *
157
- * @type {Map<string, Map<string, object>>}
158
- */
159
- var exportList = new Map();
160
-
161
- var visitorKeyMap = new Map();
162
-
163
- var ignoredFiles = new Set();
164
- var filesOutsideSrc = new Set();
165
-
166
- var isNodeModule = function isNodeModule(path) {return (/\/(node_modules)\//.test(path));};
167
-
168
- /**
169
- * read all files matching the patterns in src and ignoreExports
170
- *
171
- * return all files matching src pattern, which are not matching the ignoreExports pattern
172
- */
173
- var resolveFiles = function resolveFiles(src, ignoreExports, context) {
174
- var extensions = Array.from((0, _ignore.getFileExtensions)(context.settings));
175
-
176
- var srcFileList = listFilesToProcess(src, extensions);
177
-
178
- // prepare list of ignored files
179
- var ignoredFilesList = listFilesToProcess(ignoreExports, extensions);
180
- ignoredFilesList.forEach(function (_ref4) {var filename = _ref4.filename;return ignoredFiles.add(filename);});
181
-
182
- // prepare list of source files, don't consider files from node_modules
183
-
184
- return new Set(
185
- (0, _arrayPrototype2['default'])(srcFileList, function (_ref5) {var filename = _ref5.filename;return isNodeModule(filename) ? [] : filename;}));
186
-
187
- };
188
-
189
- /**
190
- * parse all source files and build up 2 maps containing the existing imports and exports
191
- */
192
- var prepareImportsAndExports = function prepareImportsAndExports(srcFiles, context) {
193
- var exportAll = new Map();
194
- srcFiles.forEach(function (file) {
195
- var exports = new Map();
196
- var imports = new Map();
197
- var currentExports = _ExportMap2['default'].get(file, context);
198
- if (currentExports) {var
199
-
200
- dependencies =
201
-
202
-
203
-
204
-
205
- currentExports.dependencies,reexports = currentExports.reexports,localImportList = currentExports.imports,namespace = currentExports.namespace,visitorKeys = currentExports.visitorKeys;
206
-
207
- visitorKeyMap.set(file, visitorKeys);
208
- // dependencies === export * from
209
- var currentExportAll = new Set();
210
- dependencies.forEach(function (getDependency) {
211
- var dependency = getDependency();
212
- if (dependency === null) {
213
- return;
214
- }
215
-
216
- currentExportAll.add(dependency.path);
217
- });
218
- exportAll.set(file, currentExportAll);
219
-
220
- reexports.forEach(function (value, key) {
221
- if (key === DEFAULT) {
222
- exports.set(IMPORT_DEFAULT_SPECIFIER, { whereUsed: new Set() });
223
- } else {
224
- exports.set(key, { whereUsed: new Set() });
225
- }
226
- var reexport = value.getImport();
227
- if (!reexport) {
228
- return;
229
- }
230
- var localImport = imports.get(reexport.path);
231
- var currentValue = void 0;
232
- if (value.local === DEFAULT) {
233
- currentValue = IMPORT_DEFAULT_SPECIFIER;
234
- } else {
235
- currentValue = value.local;
236
- }
237
- if (typeof localImport !== 'undefined') {
238
- localImport = new Set([].concat(_toConsumableArray(localImport), [currentValue]));
239
- } else {
240
- localImport = new Set([currentValue]);
241
- }
242
- imports.set(reexport.path, localImport);
243
- });
244
-
245
- localImportList.forEach(function (value, key) {
246
- if (isNodeModule(key)) {
247
- return;
248
- }
249
- var localImport = imports.get(key) || new Set();
250
- value.declarations.forEach(function (_ref6) {var importedSpecifiers = _ref6.importedSpecifiers;
251
- importedSpecifiers.forEach(function (specifier) {
252
- localImport.add(specifier);
253
- });
254
- });
255
- imports.set(key, localImport);
256
- });
257
- importList.set(file, imports);
258
-
259
- // build up export list only, if file is not ignored
260
- if (ignoredFiles.has(file)) {
261
- return;
262
- }
263
- namespace.forEach(function (value, key) {
264
- if (key === DEFAULT) {
265
- exports.set(IMPORT_DEFAULT_SPECIFIER, { whereUsed: new Set() });
266
- } else {
267
- exports.set(key, { whereUsed: new Set() });
268
- }
269
- });
270
- }
271
- exports.set(EXPORT_ALL_DECLARATION, { whereUsed: new Set() });
272
- exports.set(IMPORT_NAMESPACE_SPECIFIER, { whereUsed: new Set() });
273
- exportList.set(file, exports);
274
- });
275
- exportAll.forEach(function (value, key) {
276
- value.forEach(function (val) {
277
- var currentExports = exportList.get(val);
278
- if (currentExports) {
279
- var currentExport = currentExports.get(EXPORT_ALL_DECLARATION);
280
- currentExport.whereUsed.add(key);
281
- }
282
- });
283
- });
284
- };
285
-
286
- /**
287
- * traverse through all imports and add the respective path to the whereUsed-list
288
- * of the corresponding export
289
- */
290
- var determineUsage = function determineUsage() {
291
- importList.forEach(function (listValue, listKey) {
292
- listValue.forEach(function (value, key) {
293
- var exports = exportList.get(key);
294
- if (typeof exports !== 'undefined') {
295
- value.forEach(function (currentImport) {
296
- var specifier = void 0;
297
- if (currentImport === IMPORT_NAMESPACE_SPECIFIER) {
298
- specifier = IMPORT_NAMESPACE_SPECIFIER;
299
- } else if (currentImport === IMPORT_DEFAULT_SPECIFIER) {
300
- specifier = IMPORT_DEFAULT_SPECIFIER;
301
- } else {
302
- specifier = currentImport;
303
- }
304
- if (typeof specifier !== 'undefined') {
305
- var exportStatement = exports.get(specifier);
306
- if (typeof exportStatement !== 'undefined') {var
307
- whereUsed = exportStatement.whereUsed;
308
- whereUsed.add(listKey);
309
- exports.set(specifier, { whereUsed: whereUsed });
310
- }
311
- }
312
- });
313
- }
314
- });
315
- });
316
- };
317
-
318
- var getSrc = function getSrc(src) {
319
- if (src) {
320
- return src;
321
- }
322
- return [process.cwd()];
323
- };
324
-
325
- /**
326
- * prepare the lists of existing imports and exports - should only be executed once at
327
- * the start of a new eslint run
328
- */
329
- var srcFiles = void 0;
330
- var lastPrepareKey = void 0;
331
- var doPreparation = function doPreparation(src, ignoreExports, context) {
332
- var prepareKey = JSON.stringify({
333
- src: (src || []).sort(),
334
- ignoreExports: (ignoreExports || []).sort(),
335
- extensions: Array.from((0, _ignore.getFileExtensions)(context.settings)).sort() });
336
-
337
- if (prepareKey === lastPrepareKey) {
338
- return;
339
- }
340
-
341
- importList.clear();
342
- exportList.clear();
343
- ignoredFiles.clear();
344
- filesOutsideSrc.clear();
345
-
346
- srcFiles = resolveFiles(getSrc(src), ignoreExports, context);
347
- prepareImportsAndExports(srcFiles, context);
348
- determineUsage();
349
- lastPrepareKey = prepareKey;
350
- };
351
-
352
- var newNamespaceImportExists = function newNamespaceImportExists(specifiers) {return specifiers.some(function (_ref7) {var type = _ref7.type;return type === IMPORT_NAMESPACE_SPECIFIER;});};
353
-
354
- var newDefaultImportExists = function newDefaultImportExists(specifiers) {return specifiers.some(function (_ref8) {var type = _ref8.type;return type === IMPORT_DEFAULT_SPECIFIER;});};
355
-
356
- var fileIsInPkg = function fileIsInPkg(file) {var _readPkgUp =
357
- (0, _readPkgUp3['default'])({ cwd: file }),path = _readPkgUp.path,pkg = _readPkgUp.pkg;
358
- var basePath = (0, _path.dirname)(path);
359
-
360
- var checkPkgFieldString = function checkPkgFieldString(pkgField) {
361
- if ((0, _path.join)(basePath, pkgField) === file) {
362
- return true;
363
- }
364
- };
365
-
366
- var checkPkgFieldObject = function checkPkgFieldObject(pkgField) {
367
- var pkgFieldFiles = (0, _arrayPrototype2['default'])((0, _object2['default'])(pkgField), function (value) {return typeof value === 'boolean' ? [] : (0, _path.join)(basePath, value);});
368
-
369
- if ((0, _arrayIncludes2['default'])(pkgFieldFiles, file)) {
370
- return true;
371
- }
372
- };
373
-
374
- var checkPkgField = function checkPkgField(pkgField) {
375
- if (typeof pkgField === 'string') {
376
- return checkPkgFieldString(pkgField);
377
- }
378
-
379
- if ((typeof pkgField === 'undefined' ? 'undefined' : _typeof(pkgField)) === 'object') {
380
- return checkPkgFieldObject(pkgField);
381
- }
382
- };
383
-
384
- if (pkg['private'] === true) {
385
- return false;
386
- }
387
-
388
- if (pkg.bin) {
389
- if (checkPkgField(pkg.bin)) {
390
- return true;
391
- }
392
- }
393
-
394
- if (pkg.browser) {
395
- if (checkPkgField(pkg.browser)) {
396
- return true;
397
- }
398
- }
399
-
400
- if (pkg.main) {
401
- if (checkPkgFieldString(pkg.main)) {
402
- return true;
403
- }
404
- }
405
-
406
- return false;
407
- };
408
-
409
- module.exports = {
410
- meta: {
411
- type: 'suggestion',
412
- docs: {
413
- category: 'Helpful warnings',
414
- description: 'Forbid modules without exports, or exports without matching import in another module.',
415
- url: (0, _docsUrl2['default'])('no-unused-modules') },
416
-
417
- schema: [{
418
- properties: {
419
- src: {
420
- description: 'files/paths to be analyzed (only for unused exports)',
421
- type: 'array',
422
- uniqueItems: true,
423
- items: {
424
- type: 'string',
425
- minLength: 1 } },
426
-
427
-
428
- ignoreExports: {
429
- description: 'files/paths for which unused exports will not be reported (e.g module entry points)',
430
- type: 'array',
431
- uniqueItems: true,
432
- items: {
433
- type: 'string',
434
- minLength: 1 } },
435
-
436
-
437
- missingExports: {
438
- description: 'report modules without any exports',
439
- type: 'boolean' },
440
-
441
- unusedExports: {
442
- description: 'report exports without any usage',
443
- type: 'boolean' } },
444
-
445
-
446
- anyOf: [
447
- {
448
- properties: {
449
- unusedExports: { 'enum': [true] },
450
- src: {
451
- minItems: 1 } },
452
-
453
-
454
- required: ['unusedExports'] },
455
-
456
- {
457
- properties: {
458
- missingExports: { 'enum': [true] } },
459
-
460
- required: ['missingExports'] }] }] },
461
-
462
-
463
-
464
-
465
-
466
- create: function () {function create(context) {var _ref9 =
467
-
468
-
469
-
470
-
471
-
472
- context.options[0] || {},src = _ref9.src,_ref9$ignoreExports = _ref9.ignoreExports,ignoreExports = _ref9$ignoreExports === undefined ? [] : _ref9$ignoreExports,missingExports = _ref9.missingExports,unusedExports = _ref9.unusedExports;
473
-
474
- if (unusedExports) {
475
- doPreparation(src, ignoreExports, context);
476
- }
477
-
478
- var file = context.getPhysicalFilename ? context.getPhysicalFilename() : context.getFilename();
479
-
480
- var checkExportPresence = function () {function checkExportPresence(node) {
481
- if (!missingExports) {
482
- return;
483
- }
484
-
485
- if (ignoredFiles.has(file)) {
486
- return;
487
- }
488
-
489
- var exportCount = exportList.get(file);
490
- var exportAll = exportCount.get(EXPORT_ALL_DECLARATION);
491
- var namespaceImports = exportCount.get(IMPORT_NAMESPACE_SPECIFIER);
492
-
493
- exportCount['delete'](EXPORT_ALL_DECLARATION);
494
- exportCount['delete'](IMPORT_NAMESPACE_SPECIFIER);
495
- if (exportCount.size < 1) {
496
- // node.body[0] === 'undefined' only happens, if everything is commented out in the file
497
- // being linted
498
- context.report(node.body[0] ? node.body[0] : node, 'No exports found');
499
- }
500
- exportCount.set(EXPORT_ALL_DECLARATION, exportAll);
501
- exportCount.set(IMPORT_NAMESPACE_SPECIFIER, namespaceImports);
502
- }return checkExportPresence;}();
503
-
504
- var checkUsage = function () {function checkUsage(node, exportedValue) {
505
- if (!unusedExports) {
506
- return;
507
- }
508
-
509
- if (ignoredFiles.has(file)) {
510
- return;
511
- }
512
-
513
- if (fileIsInPkg(file)) {
514
- return;
515
- }
516
-
517
- if (filesOutsideSrc.has(file)) {
518
- return;
519
- }
520
-
521
- // make sure file to be linted is included in source files
522
- if (!srcFiles.has(file)) {
523
- srcFiles = resolveFiles(getSrc(src), ignoreExports, context);
524
- if (!srcFiles.has(file)) {
525
- filesOutsideSrc.add(file);
526
- return;
527
- }
528
- }
529
-
530
- exports = exportList.get(file);
531
-
532
- // special case: export * from
533
- var exportAll = exports.get(EXPORT_ALL_DECLARATION);
534
- if (typeof exportAll !== 'undefined' && exportedValue !== IMPORT_DEFAULT_SPECIFIER) {
535
- if (exportAll.whereUsed.size > 0) {
536
- return;
537
- }
538
- }
539
-
540
- // special case: namespace import
541
- var namespaceImports = exports.get(IMPORT_NAMESPACE_SPECIFIER);
542
- if (typeof namespaceImports !== 'undefined') {
543
- if (namespaceImports.whereUsed.size > 0) {
544
- return;
545
- }
546
- }
547
-
548
- // exportsList will always map any imported value of 'default' to 'ImportDefaultSpecifier'
549
- var exportsKey = exportedValue === DEFAULT ? IMPORT_DEFAULT_SPECIFIER : exportedValue;
550
-
551
- var exportStatement = exports.get(exportsKey);
552
-
553
- var value = exportsKey === IMPORT_DEFAULT_SPECIFIER ? DEFAULT : exportsKey;
554
-
555
- if (typeof exportStatement !== 'undefined') {
556
- if (exportStatement.whereUsed.size < 1) {
557
- context.report(
558
- node, 'exported declaration \'' +
559
- value + '\' not used within other modules');
560
-
561
- }
562
- } else {
563
- context.report(
564
- node, 'exported declaration \'' +
565
- value + '\' not used within other modules');
566
-
567
- }
568
- }return checkUsage;}();
569
-
570
- /**
571
- * only useful for tools like vscode-eslint
572
- *
573
- * update lists of existing exports during runtime
574
- */
575
- var updateExportUsage = function () {function updateExportUsage(node) {
576
- if (ignoredFiles.has(file)) {
577
- return;
578
- }
579
-
580
- var exports = exportList.get(file);
581
-
582
- // new module has been created during runtime
583
- // include it in further processing
584
- if (typeof exports === 'undefined') {
585
- exports = new Map();
586
- }
587
-
588
- var newExports = new Map();
589
- var newExportIdentifiers = new Set();
590
-
591
- node.body.forEach(function (_ref10) {var type = _ref10.type,declaration = _ref10.declaration,specifiers = _ref10.specifiers;
592
- if (type === EXPORT_DEFAULT_DECLARATION) {
593
- newExportIdentifiers.add(IMPORT_DEFAULT_SPECIFIER);
594
- }
595
- if (type === EXPORT_NAMED_DECLARATION) {
596
- if (specifiers.length > 0) {
597
- specifiers.forEach(function (specifier) {
598
- if (specifier.exported) {
599
- newExportIdentifiers.add(specifier.exported.name || specifier.exported.value);
600
- }
601
- });
602
- }
603
- forEachDeclarationIdentifier(declaration, function (name) {
604
- newExportIdentifiers.add(name);
605
- });
606
- }
607
- });
608
-
609
- // old exports exist within list of new exports identifiers: add to map of new exports
610
- exports.forEach(function (value, key) {
611
- if (newExportIdentifiers.has(key)) {
612
- newExports.set(key, value);
613
- }
614
- });
615
-
616
- // new export identifiers added: add to map of new exports
617
- newExportIdentifiers.forEach(function (key) {
618
- if (!exports.has(key)) {
619
- newExports.set(key, { whereUsed: new Set() });
620
- }
621
- });
622
-
623
- // preserve information about namespace imports
624
- var exportAll = exports.get(EXPORT_ALL_DECLARATION);
625
- var namespaceImports = exports.get(IMPORT_NAMESPACE_SPECIFIER);
626
-
627
- if (typeof namespaceImports === 'undefined') {
628
- namespaceImports = { whereUsed: new Set() };
629
- }
630
-
631
- newExports.set(EXPORT_ALL_DECLARATION, exportAll);
632
- newExports.set(IMPORT_NAMESPACE_SPECIFIER, namespaceImports);
633
- exportList.set(file, newExports);
634
- }return updateExportUsage;}();
635
-
636
- /**
637
- * only useful for tools like vscode-eslint
638
- *
639
- * update lists of existing imports during runtime
640
- */
641
- var updateImportUsage = function () {function updateImportUsage(node) {
642
- if (!unusedExports) {
643
- return;
644
- }
645
-
646
- var oldImportPaths = importList.get(file);
647
- if (typeof oldImportPaths === 'undefined') {
648
- oldImportPaths = new Map();
649
- }
650
-
651
- var oldNamespaceImports = new Set();
652
- var newNamespaceImports = new Set();
653
-
654
- var oldExportAll = new Set();
655
- var newExportAll = new Set();
656
-
657
- var oldDefaultImports = new Set();
658
- var newDefaultImports = new Set();
659
-
660
- var oldImports = new Map();
661
- var newImports = new Map();
662
- oldImportPaths.forEach(function (value, key) {
663
- if (value.has(EXPORT_ALL_DECLARATION)) {
664
- oldExportAll.add(key);
665
- }
666
- if (value.has(IMPORT_NAMESPACE_SPECIFIER)) {
667
- oldNamespaceImports.add(key);
668
- }
669
- if (value.has(IMPORT_DEFAULT_SPECIFIER)) {
670
- oldDefaultImports.add(key);
671
- }
672
- value.forEach(function (val) {
673
- if (
674
- val !== IMPORT_NAMESPACE_SPECIFIER &&
675
- val !== IMPORT_DEFAULT_SPECIFIER)
676
- {
677
- oldImports.set(val, key);
678
- }
679
- });
680
- });
681
-
682
- function processDynamicImport(source) {
683
- if (source.type !== 'Literal') {
684
- return null;
685
- }
686
- var p = (0, _resolve2['default'])(source.value, context);
687
- if (p == null) {
688
- return null;
689
- }
690
- newNamespaceImports.add(p);
691
- }
692
-
693
- (0, _visit2['default'])(node, visitorKeyMap.get(file), {
694
- ImportExpression: function () {function ImportExpression(child) {
695
- processDynamicImport(child.source);
696
- }return ImportExpression;}(),
697
- CallExpression: function () {function CallExpression(child) {
698
- if (child.callee.type === 'Import') {
699
- processDynamicImport(child.arguments[0]);
700
- }
701
- }return CallExpression;}() });
702
-
703
-
704
- node.body.forEach(function (astNode) {
705
- var resolvedPath = void 0;
706
-
707
- // support for export { value } from 'module'
708
- if (astNode.type === EXPORT_NAMED_DECLARATION) {
709
- if (astNode.source) {
710
- resolvedPath = (0, _resolve2['default'])(astNode.source.raw.replace(/('|")/g, ''), context);
711
- astNode.specifiers.forEach(function (specifier) {
712
- var name = specifier.local.name || specifier.local.value;
713
- if (name === DEFAULT) {
714
- newDefaultImports.add(resolvedPath);
715
- } else {
716
- newImports.set(name, resolvedPath);
717
- }
718
- });
719
- }
720
- }
721
-
722
- if (astNode.type === EXPORT_ALL_DECLARATION) {
723
- resolvedPath = (0, _resolve2['default'])(astNode.source.raw.replace(/('|")/g, ''), context);
724
- newExportAll.add(resolvedPath);
725
- }
726
-
727
- if (astNode.type === IMPORT_DECLARATION) {
728
- resolvedPath = (0, _resolve2['default'])(astNode.source.raw.replace(/('|")/g, ''), context);
729
- if (!resolvedPath) {
730
- return;
731
- }
732
-
733
- if (isNodeModule(resolvedPath)) {
734
- return;
735
- }
736
-
737
- if (newNamespaceImportExists(astNode.specifiers)) {
738
- newNamespaceImports.add(resolvedPath);
739
- }
740
-
741
- if (newDefaultImportExists(astNode.specifiers)) {
742
- newDefaultImports.add(resolvedPath);
743
- }
744
-
745
- astNode.specifiers.
746
- filter(function (specifier) {return specifier.type !== IMPORT_DEFAULT_SPECIFIER && specifier.type !== IMPORT_NAMESPACE_SPECIFIER;}).
747
- forEach(function (specifier) {
748
- newImports.set(specifier.imported.name || specifier.imported.value, resolvedPath);
749
- });
750
- }
751
- });
752
-
753
- newExportAll.forEach(function (value) {
754
- if (!oldExportAll.has(value)) {
755
- var imports = oldImportPaths.get(value);
756
- if (typeof imports === 'undefined') {
757
- imports = new Set();
758
- }
759
- imports.add(EXPORT_ALL_DECLARATION);
760
- oldImportPaths.set(value, imports);
761
-
762
- var _exports = exportList.get(value);
763
- var currentExport = void 0;
764
- if (typeof _exports !== 'undefined') {
765
- currentExport = _exports.get(EXPORT_ALL_DECLARATION);
766
- } else {
767
- _exports = new Map();
768
- exportList.set(value, _exports);
769
- }
770
-
771
- if (typeof currentExport !== 'undefined') {
772
- currentExport.whereUsed.add(file);
773
- } else {
774
- var whereUsed = new Set();
775
- whereUsed.add(file);
776
- _exports.set(EXPORT_ALL_DECLARATION, { whereUsed: whereUsed });
777
- }
778
- }
779
- });
780
-
781
- oldExportAll.forEach(function (value) {
782
- if (!newExportAll.has(value)) {
783
- var imports = oldImportPaths.get(value);
784
- imports['delete'](EXPORT_ALL_DECLARATION);
785
-
786
- var _exports2 = exportList.get(value);
787
- if (typeof _exports2 !== 'undefined') {
788
- var currentExport = _exports2.get(EXPORT_ALL_DECLARATION);
789
- if (typeof currentExport !== 'undefined') {
790
- currentExport.whereUsed['delete'](file);
791
- }
792
- }
793
- }
794
- });
795
-
796
- newDefaultImports.forEach(function (value) {
797
- if (!oldDefaultImports.has(value)) {
798
- var imports = oldImportPaths.get(value);
799
- if (typeof imports === 'undefined') {
800
- imports = new Set();
801
- }
802
- imports.add(IMPORT_DEFAULT_SPECIFIER);
803
- oldImportPaths.set(value, imports);
804
-
805
- var _exports3 = exportList.get(value);
806
- var currentExport = void 0;
807
- if (typeof _exports3 !== 'undefined') {
808
- currentExport = _exports3.get(IMPORT_DEFAULT_SPECIFIER);
809
- } else {
810
- _exports3 = new Map();
811
- exportList.set(value, _exports3);
812
- }
813
-
814
- if (typeof currentExport !== 'undefined') {
815
- currentExport.whereUsed.add(file);
816
- } else {
817
- var whereUsed = new Set();
818
- whereUsed.add(file);
819
- _exports3.set(IMPORT_DEFAULT_SPECIFIER, { whereUsed: whereUsed });
820
- }
821
- }
822
- });
823
-
824
- oldDefaultImports.forEach(function (value) {
825
- if (!newDefaultImports.has(value)) {
826
- var imports = oldImportPaths.get(value);
827
- imports['delete'](IMPORT_DEFAULT_SPECIFIER);
828
-
829
- var _exports4 = exportList.get(value);
830
- if (typeof _exports4 !== 'undefined') {
831
- var currentExport = _exports4.get(IMPORT_DEFAULT_SPECIFIER);
832
- if (typeof currentExport !== 'undefined') {
833
- currentExport.whereUsed['delete'](file);
834
- }
835
- }
836
- }
837
- });
838
-
839
- newNamespaceImports.forEach(function (value) {
840
- if (!oldNamespaceImports.has(value)) {
841
- var imports = oldImportPaths.get(value);
842
- if (typeof imports === 'undefined') {
843
- imports = new Set();
844
- }
845
- imports.add(IMPORT_NAMESPACE_SPECIFIER);
846
- oldImportPaths.set(value, imports);
847
-
848
- var _exports5 = exportList.get(value);
849
- var currentExport = void 0;
850
- if (typeof _exports5 !== 'undefined') {
851
- currentExport = _exports5.get(IMPORT_NAMESPACE_SPECIFIER);
852
- } else {
853
- _exports5 = new Map();
854
- exportList.set(value, _exports5);
855
- }
856
-
857
- if (typeof currentExport !== 'undefined') {
858
- currentExport.whereUsed.add(file);
859
- } else {
860
- var whereUsed = new Set();
861
- whereUsed.add(file);
862
- _exports5.set(IMPORT_NAMESPACE_SPECIFIER, { whereUsed: whereUsed });
863
- }
864
- }
865
- });
866
-
867
- oldNamespaceImports.forEach(function (value) {
868
- if (!newNamespaceImports.has(value)) {
869
- var imports = oldImportPaths.get(value);
870
- imports['delete'](IMPORT_NAMESPACE_SPECIFIER);
871
-
872
- var _exports6 = exportList.get(value);
873
- if (typeof _exports6 !== 'undefined') {
874
- var currentExport = _exports6.get(IMPORT_NAMESPACE_SPECIFIER);
875
- if (typeof currentExport !== 'undefined') {
876
- currentExport.whereUsed['delete'](file);
877
- }
878
- }
879
- }
880
- });
881
-
882
- newImports.forEach(function (value, key) {
883
- if (!oldImports.has(key)) {
884
- var imports = oldImportPaths.get(value);
885
- if (typeof imports === 'undefined') {
886
- imports = new Set();
887
- }
888
- imports.add(key);
889
- oldImportPaths.set(value, imports);
890
-
891
- var _exports7 = exportList.get(value);
892
- var currentExport = void 0;
893
- if (typeof _exports7 !== 'undefined') {
894
- currentExport = _exports7.get(key);
895
- } else {
896
- _exports7 = new Map();
897
- exportList.set(value, _exports7);
898
- }
899
-
900
- if (typeof currentExport !== 'undefined') {
901
- currentExport.whereUsed.add(file);
902
- } else {
903
- var whereUsed = new Set();
904
- whereUsed.add(file);
905
- _exports7.set(key, { whereUsed: whereUsed });
906
- }
907
- }
908
- });
909
-
910
- oldImports.forEach(function (value, key) {
911
- if (!newImports.has(key)) {
912
- var imports = oldImportPaths.get(value);
913
- imports['delete'](key);
914
-
915
- var _exports8 = exportList.get(value);
916
- if (typeof _exports8 !== 'undefined') {
917
- var currentExport = _exports8.get(key);
918
- if (typeof currentExport !== 'undefined') {
919
- currentExport.whereUsed['delete'](file);
920
- }
921
- }
922
- }
923
- });
924
- }return updateImportUsage;}();
925
-
926
- return {
927
- 'Program:exit': function () {function ProgramExit(node) {
928
- updateExportUsage(node);
929
- updateImportUsage(node);
930
- checkExportPresence(node);
931
- }return ProgramExit;}(),
932
- ExportDefaultDeclaration: function () {function ExportDefaultDeclaration(node) {
933
- checkUsage(node, IMPORT_DEFAULT_SPECIFIER);
934
- }return ExportDefaultDeclaration;}(),
935
- ExportNamedDeclaration: function () {function ExportNamedDeclaration(node) {
936
- node.specifiers.forEach(function (specifier) {
937
- checkUsage(specifier, specifier.exported.name || specifier.exported.value);
938
- });
939
- forEachDeclarationIdentifier(node.declaration, function (name) {
940
- checkUsage(node, name);
941
- });
942
- }return ExportNamedDeclaration;}() };
943
-
944
- }return create;}() };
945
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ydWxlcy9uby11bnVzZWQtbW9kdWxlcy5qcyJdLCJuYW1lcyI6WyJGaWxlRW51bWVyYXRvciIsImxpc3RGaWxlc1RvUHJvY2VzcyIsInJlcXVpcmUiLCJlIiwib3JpZ2luYWxMaXN0RmlsZXNUb1Byb2Nlc3MiLCJzcmMiLCJleHRlbnNpb25zIiwicGF0dGVybnMiLCJjb25jYXQiLCJwYXR0ZXJuIiwibWFwIiwiZXh0ZW5zaW9uIiwidGVzdCIsIkFycmF5IiwiZnJvbSIsIml0ZXJhdGVGaWxlcyIsImZpbGVQYXRoIiwiaWdub3JlZCIsImZpbGVuYW1lIiwiRVhQT1JUX0RFRkFVTFRfREVDTEFSQVRJT04iLCJFWFBPUlRfTkFNRURfREVDTEFSQVRJT04iLCJFWFBPUlRfQUxMX0RFQ0xBUkFUSU9OIiwiSU1QT1JUX0RFQ0xBUkFUSU9OIiwiSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIiLCJJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIiLCJWQVJJQUJMRV9ERUNMQVJBVElPTiIsIkZVTkNUSU9OX0RFQ0xBUkFUSU9OIiwiQ0xBU1NfREVDTEFSQVRJT04iLCJJREVOVElGSUVSIiwiT0JKRUNUX1BBVFRFUk4iLCJBUlJBWV9QQVRURVJOIiwiVFNfSU5URVJGQUNFX0RFQ0xBUkFUSU9OIiwiVFNfVFlQRV9BTElBU19ERUNMQVJBVElPTiIsIlRTX0VOVU1fREVDTEFSQVRJT04iLCJERUZBVUxUIiwiZm9yRWFjaERlY2xhcmF0aW9uSWRlbnRpZmllciIsImRlY2xhcmF0aW9uIiwiY2IiLCJ0eXBlIiwiaWQiLCJuYW1lIiwiZGVjbGFyYXRpb25zIiwiZm9yRWFjaCIsImVsZW1lbnRzIiwiaW1wb3J0TGlzdCIsIk1hcCIsImV4cG9ydExpc3QiLCJ2aXNpdG9yS2V5TWFwIiwiaWdub3JlZEZpbGVzIiwiU2V0IiwiZmlsZXNPdXRzaWRlU3JjIiwiaXNOb2RlTW9kdWxlIiwicGF0aCIsInJlc29sdmVGaWxlcyIsImlnbm9yZUV4cG9ydHMiLCJjb250ZXh0Iiwic2V0dGluZ3MiLCJzcmNGaWxlTGlzdCIsImlnbm9yZWRGaWxlc0xpc3QiLCJhZGQiLCJwcmVwYXJlSW1wb3J0c0FuZEV4cG9ydHMiLCJzcmNGaWxlcyIsImV4cG9ydEFsbCIsImZpbGUiLCJleHBvcnRzIiwiaW1wb3J0cyIsImN1cnJlbnRFeHBvcnRzIiwiRXhwb3J0cyIsImdldCIsImRlcGVuZGVuY2llcyIsInJlZXhwb3J0cyIsImxvY2FsSW1wb3J0TGlzdCIsIm5hbWVzcGFjZSIsInZpc2l0b3JLZXlzIiwic2V0IiwiY3VycmVudEV4cG9ydEFsbCIsImdldERlcGVuZGVuY3kiLCJkZXBlbmRlbmN5IiwidmFsdWUiLCJrZXkiLCJ3aGVyZVVzZWQiLCJyZWV4cG9ydCIsImdldEltcG9ydCIsImxvY2FsSW1wb3J0IiwiY3VycmVudFZhbHVlIiwibG9jYWwiLCJpbXBvcnRlZFNwZWNpZmllcnMiLCJzcGVjaWZpZXIiLCJoYXMiLCJ2YWwiLCJjdXJyZW50RXhwb3J0IiwiZGV0ZXJtaW5lVXNhZ2UiLCJsaXN0VmFsdWUiLCJsaXN0S2V5IiwiY3VycmVudEltcG9ydCIsImV4cG9ydFN0YXRlbWVudCIsImdldFNyYyIsInByb2Nlc3MiLCJjd2QiLCJsYXN0UHJlcGFyZUtleSIsImRvUHJlcGFyYXRpb24iLCJwcmVwYXJlS2V5IiwiSlNPTiIsInN0cmluZ2lmeSIsInNvcnQiLCJjbGVhciIsIm5ld05hbWVzcGFjZUltcG9ydEV4aXN0cyIsInNwZWNpZmllcnMiLCJzb21lIiwibmV3RGVmYXVsdEltcG9ydEV4aXN0cyIsImZpbGVJc0luUGtnIiwicGtnIiwiYmFzZVBhdGgiLCJjaGVja1BrZ0ZpZWxkU3RyaW5nIiwicGtnRmllbGQiLCJjaGVja1BrZ0ZpZWxkT2JqZWN0IiwicGtnRmllbGRGaWxlcyIsImNoZWNrUGtnRmllbGQiLCJiaW4iLCJicm93c2VyIiwibWFpbiIsIm1vZHVsZSIsIm1ldGEiLCJkb2NzIiwiY2F0ZWdvcnkiLCJkZXNjcmlwdGlvbiIsInVybCIsInNjaGVtYSIsInByb3BlcnRpZXMiLCJ1bmlxdWVJdGVtcyIsIml0ZW1zIiwibWluTGVuZ3RoIiwibWlzc2luZ0V4cG9ydHMiLCJ1bnVzZWRFeHBvcnRzIiwiYW55T2YiLCJtaW5JdGVtcyIsInJlcXVpcmVkIiwiY3JlYXRlIiwib3B0aW9ucyIsImdldFBoeXNpY2FsRmlsZW5hbWUiLCJnZXRGaWxlbmFtZSIsImNoZWNrRXhwb3J0UHJlc2VuY2UiLCJub2RlIiwiZXhwb3J0Q291bnQiLCJuYW1lc3BhY2VJbXBvcnRzIiwic2l6ZSIsInJlcG9ydCIsImJvZHkiLCJjaGVja1VzYWdlIiwiZXhwb3J0ZWRWYWx1ZSIsImV4cG9ydHNLZXkiLCJ1cGRhdGVFeHBvcnRVc2FnZSIsIm5ld0V4cG9ydHMiLCJuZXdFeHBvcnRJZGVudGlmaWVycyIsImxlbmd0aCIsImV4cG9ydGVkIiwidXBkYXRlSW1wb3J0VXNhZ2UiLCJvbGRJbXBvcnRQYXRocyIsIm9sZE5hbWVzcGFjZUltcG9ydHMiLCJuZXdOYW1lc3BhY2VJbXBvcnRzIiwib2xkRXhwb3J0QWxsIiwibmV3RXhwb3J0QWxsIiwib2xkRGVmYXVsdEltcG9ydHMiLCJuZXdEZWZhdWx0SW1wb3J0cyIsIm9sZEltcG9ydHMiLCJuZXdJbXBvcnRzIiwicHJvY2Vzc0R5bmFtaWNJbXBvcnQiLCJzb3VyY2UiLCJwIiwiSW1wb3J0RXhwcmVzc2lvbiIsImNoaWxkIiwiQ2FsbEV4cHJlc3Npb24iLCJjYWxsZWUiLCJhcmd1bWVudHMiLCJhc3ROb2RlIiwicmVzb2x2ZWRQYXRoIiwicmF3IiwicmVwbGFjZSIsImZpbHRlciIsImltcG9ydGVkIiwiRXhwb3J0RGVmYXVsdERlY2xhcmF0aW9uIiwiRXhwb3J0TmFtZWREZWNsYXJhdGlvbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBTUE7QUFDQSxzRDtBQUNBLGtEO0FBQ0E7QUFDQSwyRDtBQUNBLHVDO0FBQ0EsK0M7QUFDQSx5RDs7QUFFQSx5QztBQUNBLHFDLDJVQWhCQTs7OzttWEFrQkEsSUFBSUEsdUJBQUosQ0FDQSxJQUFJQywyQkFBSjtBQUVBLElBQUk7QUFD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QmpFLE9BQWhCLENBQXdCLFVBQUM2QyxTQUFELEVBQWU7QUFDckM2RCx5QkFBVzdELFNBQVgsRUFBc0JBLFVBQVVvRSxRQUFWLENBQW1CbkgsSUFBbkIsSUFBMkIrQyxVQUFVb0UsUUFBVixDQUFtQjdFLEtBQXBFO0FBQ0QsYUFGRDtBQUdBM0MseUNBQTZCMkcsS0FBSzFHLFdBQWxDLEVBQStDLFVBQUNJLElBQUQsRUFBVTtBQUN2RDRHLHlCQUFXTixJQUFYLEVBQWlCdEcsSUFBakI7QUFDRCxhQUZEO0FBR0QsV0FoQkksbUNBQVA7O0FBa0JELEtBdmhCYyxtQkFBakIiLCJmaWxlIjoibm8tdW51c2VkLW1vZHVsZXMuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBmaWxlT3ZlcnZpZXcgRW5zdXJlcyB0aGF0IG1vZHVsZXMgY29udGFpbiBleHBvcnRzIGFuZC9vciBhbGxcbiAqIG1vZHVsZXMgYXJlIGNvbnN1bWVkIHdpdGhpbiBvdGhlciBtb2R1bGVzLlxuICogQGF1dGhvciBSZW7DqSBGZXJtYW5uXG4gKi9cblxuaW1wb3J0IHsgZ2V0RmlsZUV4dGVuc2lvbnMgfSBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL2lnbm9yZSc7XG5pbXBvcnQgcmVzb2x2ZSBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL3Jlc29sdmUnO1xuaW1wb3J0IHZpc2l0IGZyb20gJ2VzbGludC1tb2R1bGUtdXRpbHMvdmlzaXQnO1xuaW1wb3J0IHsgZGlybmFtZSwgam9pbiB9IGZyb20gJ3BhdGgnO1xuaW1wb3J0IHJlYWRQa2dVcCBmcm9tICdlc2xpbnQtbW9kdWxlLXV0aWxzL3JlYWRQa2dVcCc7XG5pbXBvcnQgdmFsdWVzIGZyb20gJ29iamVjdC52YWx1ZXMnO1xuaW1wb3J0IGluY2x1ZGVzIGZyb20gJ2FycmF5LWluY2x1ZGVzJztcbmltcG9ydCBmbGF0TWFwIGZyb20gJ2FycmF5LnByb3RvdHlwZS5mbGF0bWFwJztcblxuaW1wb3J0IEV4cG9ydHMsIHsgcmVjdXJzaXZlUGF0dGVybkNhcHR1cmUgfSBmcm9tICcuLi9FeHBvcnRNYXAnO1xuaW1wb3J0IGRvY3NVcmwgZnJvbSAnLi4vZG9jc1VybCc7XG5cbmxldCBGaWxlRW51bWVyYXRvcjtcbmxldCBsaXN0RmlsZXNUb1Byb2Nlc3M7XG5cbnRyeSB7XG4gICh7IEZpbGVFbnVtZXJhdG9yIH0gPSByZXF1aXJlKCdlc2xpbnQvdXNlLWF0LXlvdXItb3duLXJpc2snKSk7XG59IGNhdGNoIChlKSB7XG4gIHRyeSB7XG4gICAgLy8gaGFzIGJlZW4gbW92ZWQgdG8gZXNsaW50L2xpYi9jbGktZW5naW5lL2ZpbGUtZW51bWVyYXRvciBpbiB2ZXJzaW9uIDZcbiAgICAoeyBGaWxlRW51bWVyYXRvciB9ID0gcmVxdWlyZSgnZXNsaW50L2xpYi9jbGktZW5naW5lL2ZpbGUtZW51bWVyYXRvcicpKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHRyeSB7XG4gICAgICAvLyBlc2xpbnQvbGliL3V0aWwvZ2xvYi11dGlsIGhhcyBiZWVuIG1vdmVkIHRvIGVzbGludC9saWIvdXRpbC9nbG9iLXV0aWxzIHdpdGggdmVyc2lvbiA1LjNcbiAgICAgIGNvbnN0IHsgbGlzdEZpbGVzVG9Qcm9jZXNzOiBvcmlnaW5hbExpc3RGaWxlc1RvUHJvY2VzcyB9ID0gcmVxdWlyZSgnZXNsaW50L2xpYi91dGlsL2dsb2ItdXRpbHMnKTtcblxuICAgICAgLy8gUHJldmVudCBwYXNzaW5nIGludmFsaWQgb3B0aW9ucyAoZXh0ZW5zaW9ucyBhcnJheSkgdG8gb2xkIHZlcnNpb25zIG9mIHRoZSBmdW5jdGlvbi5cbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9lc2xpbnQvZXNsaW50L2Jsb2IvdjUuMTYuMC9saWIvdXRpbC9nbG9iLXV0aWxzLmpzI0wxNzgtTDI4MFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2VzbGludC9lc2xpbnQvYmxvYi92NS4yLjAvbGliL3V0aWwvZ2xvYi11dGlsLmpzI0wxNzQtTDI2OVxuICAgICAgbGlzdEZpbGVzVG9Qcm9jZXNzID0gZnVuY3Rpb24gKHNyYywgZXh0ZW5zaW9ucykge1xuICAgICAgICByZXR1cm4gb3JpZ2luYWxMaXN0RmlsZXNUb1Byb2Nlc3Moc3JjLCB7XG4gICAgICAgICAgZXh0ZW5zaW9ucyxcbiAgICAgICAgfSk7XG4gICAgICB9O1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnN0IHsgbGlzdEZpbGVzVG9Qcm9jZXNzOiBvcmlnaW5hbExpc3RGaWxlc1RvUHJvY2VzcyB9ID0gcmVxdWlyZSgnZXNsaW50L2xpYi91dGlsL2dsb2ItdXRpbCcpO1xuXG4gICAgICBsaXN0RmlsZXNUb1Byb2Nlc3MgPSBmdW5jdGlvbiAoc3JjLCBleHRlbnNpb25zKSB7XG4gICAgICAgIGNvbnN0IHBhdHRlcm5zID0gc3JjLmNvbmNhdChmbGF0TWFwKHNyYywgKHBhdHRlcm4pID0+IGV4dGVuc2lvbnMubWFwKChleHRlbnNpb24pID0+ICgvXFwqXFwqfFxcKlxcLi8pLnRlc3QocGF0dGVybikgPyBwYXR0ZXJuIDogYCR7cGF0dGVybn0vKiovKiR7ZXh0ZW5zaW9ufWApKSk7XG5cbiAgICAgICAgcmV0dXJuIG9yaWdpbmFsTGlzdEZpbGVzVG9Qcm9jZXNzKHBhdHRlcm5zKTtcbiAgICAgIH07XG4gICAgfVxuICB9XG59XG5cbmlmIChGaWxlRW51bWVyYXRvcikge1xuICBsaXN0RmlsZXNUb1Byb2Nlc3MgPSBmdW5jdGlvbiAoc3JjLCBleHRlbnNpb25zKSB7XG4gICAgY29uc3QgZSA9IG5ldyBGaWxlRW51bWVyYXRvcih7XG4gICAgICBleHRlbnNpb25zLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIEFycmF5LmZyb20oZS5pdGVyYXRlRmlsZXMoc3JjKSwgKHsgZmlsZVBhdGgsIGlnbm9yZWQgfSkgPT4gKHtcbiAgICAgIGlnbm9yZWQsXG4gICAgICBmaWxlbmFtZTogZmlsZVBhdGgsXG4gICAgfSkpO1xuICB9O1xufVxuXG5jb25zdCBFWFBPUlRfREVGQVVMVF9ERUNMQVJBVElPTiA9ICdFeHBvcnREZWZhdWx0RGVjbGFyYXRpb24nO1xuY29uc3QgRVhQT1JUX05BTUVEX0RFQ0xBUkFUSU9OID0gJ0V4cG9ydE5hbWVkRGVjbGFyYXRpb24nO1xuY29uc3QgRVhQT1JUX0FMTF9ERUNMQVJBVElPTiA9ICdFeHBvcnRBbGxEZWNsYXJhdGlvbic7XG5jb25zdCBJTVBPUlRfREVDTEFSQVRJT04gPSAnSW1wb3J0RGVjbGFyYXRpb24nO1xuY29uc3QgSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIgPSAnSW1wb3J0TmFtZXNwYWNlU3BlY2lmaWVyJztcbmNvbnN0IElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUiA9ICdJbXBvcnREZWZhdWx0U3BlY2lmaWVyJztcbmNvbnN0IFZBUklBQkxFX0RFQ0xBUkFUSU9OID0gJ1ZhcmlhYmxlRGVjbGFyYXRpb24nO1xuY29uc3QgRlVOQ1RJT05fREVDTEFSQVRJT04gPSAnRnVuY3Rpb25EZWNsYXJhdGlvbic7XG5jb25zdCBDTEFTU19ERUNMQVJBVElPTiA9ICdDbGFzc0RlY2xhcmF0aW9uJztcbmNvbnN0IElERU5USUZJRVIgPSAnSWRlbnRpZmllcic7XG5jb25zdCBPQkpFQ1RfUEFUVEVSTiA9ICdPYmplY3RQYXR0ZXJuJztcbmNvbnN0IEFSUkFZX1BBVFRFUk4gPSAnQXJyYXlQYXR0ZXJuJztcbmNvbnN0IFRTX0lOVEVSRkFDRV9ERUNMQVJBVElPTiA9ICdUU0ludGVyZmFjZURlY2xhcmF0aW9uJztcbmNvbnN0IFRTX1RZUEVfQUxJQVNfREVDTEFSQVRJT04gPSAnVFNUeXBlQWxpYXNEZWNsYXJhdGlvbic7XG5jb25zdCBUU19FTlVNX0RFQ0xBUkFUSU9OID0gJ1RTRW51bURlY2xhcmF0aW9uJztcbmNvbnN0IERFRkFVTFQgPSAnZGVmYXVsdCc7XG5cbmZ1bmN0aW9uIGZvckVhY2hEZWNsYXJhdGlvbklkZW50aWZpZXIoZGVjbGFyYXRpb24sIGNiKSB7XG4gIGlmIChkZWNsYXJhdGlvbikge1xuICAgIGlmIChcbiAgICAgIGRlY2xhcmF0aW9uLnR5cGUgPT09IEZVTkNUSU9OX0RFQ0xBUkFUSU9OXG4gICAgICB8fCBkZWNsYXJhdGlvbi50eXBlID09PSBDTEFTU19ERUNMQVJBVElPTlxuICAgICAgfHwgZGVjbGFyYXRpb24udHlwZSA9PT0gVFNfSU5URVJGQUNFX0RFQ0xBUkFUSU9OXG4gICAgICB8fCBkZWNsYXJhdGlvbi50eXBlID09PSBUU19UWVBFX0FMSUFTX0RFQ0xBUkFUSU9OXG4gICAgICB8fCBkZWNsYXJhdGlvbi50eXBlID09PSBUU19FTlVNX0RFQ0xBUkFUSU9OXG4gICAgKSB7XG4gICAgICBjYihkZWNsYXJhdGlvbi5pZC5uYW1lKTtcbiAgICB9IGVsc2UgaWYgKGRlY2xhcmF0aW9uLnR5cGUgPT09IFZBUklBQkxFX0RFQ0xBUkFUSU9OKSB7XG4gICAgICBkZWNsYXJhdGlvbi5kZWNsYXJhdGlvbnMuZm9yRWFjaCgoeyBpZCB9KSA9PiB7XG4gICAgICAgIGlmIChpZC50eXBlID09PSBPQkpFQ1RfUEFUVEVSTikge1xuICAgICAgICAgIHJlY3Vyc2l2ZVBhdHRlcm5DYXB0dXJlKGlkLCAocGF0dGVybikgPT4ge1xuICAgICAgICAgICAgaWYgKHBhdHRlcm4udHlwZSA9PT0gSURFTlRJRklFUikge1xuICAgICAgICAgICAgICBjYihwYXR0ZXJuLm5hbWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2UgaWYgKGlkLnR5cGUgPT09IEFSUkFZX1BBVFRFUk4pIHtcbiAgICAgICAgICBpZC5lbGVtZW50cy5mb3JFYWNoKCh7IG5hbWUgfSkgPT4ge1xuICAgICAgICAgICAgY2IobmFtZSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY2IoaWQubmFtZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIExpc3Qgb2YgaW1wb3J0cyBwZXIgZmlsZS5cbiAqXG4gKiBSZXByZXNlbnRlZCBieSBhIHR3by1sZXZlbCBNYXAgdG8gYSBTZXQgb2YgaWRlbnRpZmllcnMuIFRoZSB1cHBlci1sZXZlbCBNYXBcbiAqIGtleXMgYXJlIHRoZSBwYXRocyB0byB0aGUgbW9kdWxlcyBjb250YWluaW5nIHRoZSBpbXBvcnRzLCB3aGlsZSB0aGVcbiAqIGxvd2VyLWxldmVsIE1hcCBrZXlzIGFyZSB0aGUgcGF0aHMgdG8gdGhlIGZpbGVzIHdoaWNoIGFyZSBiZWluZyBpbXBvcnRlZFxuICogZnJvbS4gTGFzdGx5LCB0aGUgU2V0IG9mIGlkZW50aWZpZXJzIGNvbnRhaW5zIGVpdGhlciBuYW1lcyBiZWluZyBpbXBvcnRlZFxuICogb3IgYSBzcGVjaWFsIEFTVCBub2RlIG5hbWUgbGlzdGVkIGFib3ZlIChlLmcgSW1wb3J0RGVmYXVsdFNwZWNpZmllcikuXG4gKlxuICogRm9yIGV4YW1wbGUsIGlmIHdlIGhhdmUgYSBmaWxlIG5hbWVkIGZvby5qcyBjb250YWluaW5nOlxuICpcbiAqICAgaW1wb3J0IHsgbzIgfSBmcm9tICcuL2Jhci5qcyc7XG4gKlxuICogVGhlbiB3ZSB3aWxsIGhhdmUgYSBzdHJ1Y3R1cmUgdGhhdCBsb29rcyBsaWtlOlxuICpcbiAqICAgTWFwIHsgJ2Zvby5qcycgPT4gTWFwIHsgJ2Jhci5qcycgPT4gU2V0IHsgJ28yJyB9IH0gfVxuICpcbiAqIEB0eXBlIHtNYXA8c3RyaW5nLCBNYXA8c3RyaW5nLCBTZXQ8c3RyaW5nPj4+fVxuICovXG5jb25zdCBpbXBvcnRMaXN0ID0gbmV3IE1hcCgpO1xuXG4vKipcbiAqIExpc3Qgb2YgZXhwb3J0cyBwZXIgZmlsZS5cbiAqXG4gKiBSZXByZXNlbnRlZCBieSBhIHR3by1sZXZlbCBNYXAgdG8gYW4gb2JqZWN0IG9mIG1ldGFkYXRhLiBUaGUgdXBwZXItbGV2ZWwgTWFwXG4gKiBrZXlzIGFyZSB0aGUgcGF0aHMgdG8gdGhlIG1vZHVsZXMgY29udGFpbmluZyB0aGUgZXhwb3J0cywgd2hpbGUgdGhlXG4gKiBsb3dlci1sZXZlbCBNYXAga2V5cyBhcmUgdGhlIHNwZWNpZmljIGlkZW50aWZpZXJzIG9yIHNwZWNpYWwgQVNUIG5vZGUgbmFtZXNcbiAqIGJlaW5nIGV4cG9ydGVkLiBUaGUgbGVhZi1sZXZlbCBtZXRhZGF0YSBvYmplY3QgYXQgdGhlIG1vbWVudCBvbmx5IGNvbnRhaW5zIGFcbiAqIGB3aGVyZVVzZWRgIHByb3BlcnR5LCB3aGljaCBjb250YWlucyBhIFNldCBvZiBwYXRocyB0byBtb2R1bGVzIHRoYXQgaW1wb3J0XG4gKiB0aGUgbmFtZS5cbiAqXG4gKiBGb3IgZXhhbXBsZSwgaWYgd2UgaGF2ZSBhIGZpbGUgbmFtZWQgYmFyLmpzIGNvbnRhaW5pbmcgdGhlIGZvbGxvd2luZyBleHBvcnRzOlxuICpcbiAqICAgY29uc3QgbzIgPSAnYmFyJztcbiAqICAgZXhwb3J0IHsgbzIgfTtcbiAqXG4gKiBBbmQgYSBmaWxlIG5hbWVkIGZvby5qcyBjb250YWluaW5nIHRoZSBmb2xsb3dpbmcgaW1wb3J0OlxuICpcbiAqICAgaW1wb3J0IHsgbzIgfSBmcm9tICcuL2Jhci5qcyc7XG4gKlxuICogVGhlbiB3ZSB3aWxsIGhhdmUgYSBzdHJ1Y3R1cmUgdGhhdCBsb29rcyBsaWtlOlxuICpcbiAqICAgTWFwIHsgJ2Jhci5qcycgPT4gTWFwIHsgJ28yJyA9PiB7IHdoZXJlVXNlZDogU2V0IHsgJ2Zvby5qcycgfSB9IH0gfVxuICpcbiAqIEB0eXBlIHtNYXA8c3RyaW5nLCBNYXA8c3RyaW5nLCBvYmplY3Q+Pn1cbiAqL1xuY29uc3QgZXhwb3J0TGlzdCA9IG5ldyBNYXAoKTtcblxuY29uc3QgdmlzaXRvcktleU1hcCA9IG5ldyBNYXAoKTtcblxuY29uc3QgaWdub3JlZEZpbGVzID0gbmV3IFNldCgpO1xuY29uc3QgZmlsZXNPdXRzaWRlU3JjID0gbmV3IFNldCgpO1xuXG5jb25zdCBpc05vZGVNb2R1bGUgPSAocGF0aCkgPT4gKC9cXC8obm9kZV9tb2R1bGVzKVxcLy8pLnRlc3QocGF0aCk7XG5cbi8qKlxuICogcmVhZCBhbGwgZmlsZXMgbWF0Y2hpbmcgdGhlIHBhdHRlcm5zIGluIHNyYyBhbmQgaWdub3JlRXhwb3J0c1xuICpcbiAqIHJldHVybiBhbGwgZmlsZXMgbWF0Y2hpbmcgc3JjIHBhdHRlcm4sIHdoaWNoIGFyZSBub3QgbWF0Y2hpbmcgdGhlIGlnbm9yZUV4cG9ydHMgcGF0dGVyblxuICovXG5jb25zdCByZXNvbHZlRmlsZXMgPSAoc3JjLCBpZ25vcmVFeHBvcnRzLCBjb250ZXh0KSA9PiB7XG4gIGNvbnN0IGV4dGVuc2lvbnMgPSBBcnJheS5mcm9tKGdldEZpbGVFeHRlbnNpb25zKGNvbnRleHQuc2V0dGluZ3MpKTtcblxuICBjb25zdCBzcmNGaWxlTGlzdCA9IGxpc3RGaWxlc1RvUHJvY2VzcyhzcmMsIGV4dGVuc2lvbnMpO1xuXG4gIC8vIHByZXBhcmUgbGlzdCBvZiBpZ25vcmVkIGZpbGVzXG4gIGNvbnN0IGlnbm9yZWRGaWxlc0xpc3QgPSBsaXN0RmlsZXNUb1Byb2Nlc3MoaWdub3JlRXhwb3J0cywgZXh0ZW5zaW9ucyk7XG4gIGlnbm9yZWRGaWxlc0xpc3QuZm9yRWFjaCgoeyBmaWxlbmFtZSB9KSA9PiBpZ25vcmVkRmlsZXMuYWRkKGZpbGVuYW1lKSk7XG5cbiAgLy8gcHJlcGFyZSBsaXN0IG9mIHNvdXJjZSBmaWxlcywgZG9uJ3QgY29uc2lkZXIgZmlsZXMgZnJvbSBub2RlX21vZHVsZXNcblxuICByZXR1cm4gbmV3IFNldChcbiAgICBmbGF0TWFwKHNyY0ZpbGVMaXN0LCAoeyBmaWxlbmFtZSB9KSA9PiBpc05vZGVNb2R1bGUoZmlsZW5hbWUpID8gW10gOiBmaWxlbmFtZSksXG4gICk7XG59O1xuXG4vKipcbiAqIHBhcnNlIGFsbCBzb3VyY2UgZmlsZXMgYW5kIGJ1aWxkIHVwIDIgbWFwcyBjb250YWluaW5nIHRoZSBleGlzdGluZyBpbXBvcnRzIGFuZCBleHBvcnRzXG4gKi9cbmNvbnN0IHByZXBhcmVJbXBvcnRzQW5kRXhwb3J0cyA9IChzcmNGaWxlcywgY29udGV4dCkgPT4ge1xuICBjb25zdCBleHBvcnRBbGwgPSBuZXcgTWFwKCk7XG4gIHNyY0ZpbGVzLmZvckVhY2goKGZpbGUpID0+IHtcbiAgICBjb25zdCBleHBvcnRzID0gbmV3IE1hcCgpO1xuICAgIGNvbnN0IGltcG9ydHMgPSBuZXcgTWFwKCk7XG4gICAgY29uc3QgY3VycmVudEV4cG9ydHMgPSBFeHBvcnRzLmdldChmaWxlLCBjb250ZXh0KTtcbiAgICBpZiAoY3VycmVudEV4cG9ydHMpIHtcbiAgICAgIGNvbnN0IHtcbiAgICAgICAgZGVwZW5kZW5jaWVzLFxuICAgICAgICByZWV4cG9ydHMsXG4gICAgICAgIGltcG9ydHM6IGxvY2FsSW1wb3J0TGlzdCxcbiAgICAgICAgbmFtZXNwYWNlLFxuICAgICAgICB2aXNpdG9yS2V5cyxcbiAgICAgIH0gPSBjdXJyZW50RXhwb3J0cztcblxuICAgICAgdmlzaXRvcktleU1hcC5zZXQoZmlsZSwgdmlzaXRvcktleXMpO1xuICAgICAgLy8gZGVwZW5kZW5jaWVzID09PSBleHBvcnQgKiBmcm9tXG4gICAgICBjb25zdCBjdXJyZW50RXhwb3J0QWxsID0gbmV3IFNldCgpO1xuICAgICAgZGVwZW5kZW5jaWVzLmZvckVhY2goKGdldERlcGVuZGVuY3kpID0+IHtcbiAgICAgICAgY29uc3QgZGVwZW5kZW5jeSA9IGdldERlcGVuZGVuY3koKTtcbiAgICAgICAgaWYgKGRlcGVuZGVuY3kgPT09IG51bGwpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjdXJyZW50RXhwb3J0QWxsLmFkZChkZXBlbmRlbmN5LnBhdGgpO1xuICAgICAgfSk7XG4gICAgICBleHBvcnRBbGwuc2V0KGZpbGUsIGN1cnJlbnRFeHBvcnRBbGwpO1xuXG4gICAgICByZWV4cG9ydHMuZm9yRWFjaCgodmFsdWUsIGtleSkgPT4ge1xuICAgICAgICBpZiAoa2V5ID09PSBERUZBVUxUKSB7XG4gICAgICAgICAgZXhwb3J0cy5zZXQoSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSLCB7IHdoZXJlVXNlZDogbmV3IFNldCgpIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGV4cG9ydHMuc2V0KGtleSwgeyB3aGVyZVVzZWQ6IG5ldyBTZXQoKSB9KTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCByZWV4cG9ydCA9ICB2YWx1ZS5nZXRJbXBvcnQoKTtcbiAgICAgICAgaWYgKCFyZWV4cG9ydCkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBsZXQgbG9jYWxJbXBvcnQgPSBpbXBvcnRzLmdldChyZWV4cG9ydC5wYXRoKTtcbiAgICAgICAgbGV0IGN1cnJlbnRWYWx1ZTtcbiAgICAgICAgaWYgKHZhbHVlLmxvY2FsID09PSBERUZBVUxUKSB7XG4gICAgICAgICAgY3VycmVudFZhbHVlID0gSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGN1cnJlbnRWYWx1ZSA9IHZhbHVlLmxvY2FsO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0eXBlb2YgbG9jYWxJbXBvcnQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgbG9jYWxJbXBvcnQgPSBuZXcgU2V0KFsuLi5sb2NhbEltcG9ydCwgY3VycmVudFZhbHVlXSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbG9jYWxJbXBvcnQgPSBuZXcgU2V0KFtjdXJyZW50VmFsdWVdKTtcbiAgICAgICAgfVxuICAgICAgICBpbXBvcnRzLnNldChyZWV4cG9ydC5wYXRoLCBsb2NhbEltcG9ydCk7XG4gICAgICB9KTtcblxuICAgICAgbG9jYWxJbXBvcnRMaXN0LmZvckVhY2goKHZhbHVlLCBrZXkpID0+IHtcbiAgICAgICAgaWYgKGlzTm9kZU1vZHVsZShrZXkpKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGxvY2FsSW1wb3J0ID0gaW1wb3J0cy5nZXQoa2V5KSB8fCBuZXcgU2V0KCk7XG4gICAgICAgIHZhbHVlLmRlY2xhcmF0aW9ucy5mb3JFYWNoKCh7IGltcG9ydGVkU3BlY2lmaWVycyB9KSA9PiB7XG4gICAgICAgICAgaW1wb3J0ZWRTcGVjaWZpZXJzLmZvckVhY2goKHNwZWNpZmllcikgPT4ge1xuICAgICAgICAgICAgbG9jYWxJbXBvcnQuYWRkKHNwZWNpZmllcik7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgICBpbXBvcnRzLnNldChrZXksIGxvY2FsSW1wb3J0KTtcbiAgICAgIH0pO1xuICAgICAgaW1wb3J0TGlzdC5zZXQoZmlsZSwgaW1wb3J0cyk7XG5cbiAgICAgIC8vIGJ1aWxkIHVwIGV4cG9ydCBsaXN0IG9ubHksIGlmIGZpbGUgaXMgbm90IGlnbm9yZWRcbiAgICAgIGlmIChpZ25vcmVkRmlsZXMuaGFzKGZpbGUpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIG5hbWVzcGFjZS5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB7XG4gICAgICAgIGlmIChrZXkgPT09IERFRkFVTFQpIHtcbiAgICAgICAgICBleHBvcnRzLnNldChJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIsIHsgd2hlcmVVc2VkOiBuZXcgU2V0KCkgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZXhwb3J0cy5zZXQoa2V5LCB7IHdoZXJlVXNlZDogbmV3IFNldCgpIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgZXhwb3J0cy5zZXQoRVhQT1JUX0FMTF9ERUNMQVJBVElPTiwgeyB3aGVyZVVzZWQ6IG5ldyBTZXQoKSB9KTtcbiAgICBleHBvcnRzLnNldChJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUiwgeyB3aGVyZVVzZWQ6IG5ldyBTZXQoKSB9KTtcbiAgICBleHBvcnRMaXN0LnNldChmaWxlLCBleHBvcnRzKTtcbiAgfSk7XG4gIGV4cG9ydEFsbC5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB7XG4gICAgdmFsdWUuZm9yRWFjaCgodmFsKSA9PiB7XG4gICAgICBjb25zdCBjdXJyZW50RXhwb3J0cyA9IGV4cG9ydExpc3QuZ2V0KHZhbCk7XG4gICAgICBpZiAoY3VycmVudEV4cG9ydHMpIHtcbiAgICAgICAgY29uc3QgY3VycmVudEV4cG9ydCA9IGN1cnJlbnRFeHBvcnRzLmdldChFWFBPUlRfQUxMX0RFQ0xBUkFUSU9OKTtcbiAgICAgICAgY3VycmVudEV4cG9ydC53aGVyZVVzZWQuYWRkKGtleSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xufTtcblxuLyoqXG4gKiB0cmF2ZXJzZSB0aHJvdWdoIGFsbCBpbXBvcnRzIGFuZCBhZGQgdGhlIHJlc3BlY3RpdmUgcGF0aCB0byB0aGUgd2hlcmVVc2VkLWxpc3RcbiAqIG9mIHRoZSBjb3JyZXNwb25kaW5nIGV4cG9ydFxuICovXG5jb25zdCBkZXRlcm1pbmVVc2FnZSA9ICgpID0+IHtcbiAgaW1wb3J0TGlzdC5mb3JFYWNoKChsaXN0VmFsdWUsIGxpc3RLZXkpID0+IHtcbiAgICBsaXN0VmFsdWUuZm9yRWFjaCgodmFsdWUsIGtleSkgPT4ge1xuICAgICAgY29uc3QgZXhwb3J0cyA9IGV4cG9ydExpc3QuZ2V0KGtleSk7XG4gICAgICBpZiAodHlwZW9mIGV4cG9ydHMgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIHZhbHVlLmZvckVhY2goKGN1cnJlbnRJbXBvcnQpID0+IHtcbiAgICAgICAgICBsZXQgc3BlY2lmaWVyO1xuICAgICAgICAgIGlmIChjdXJyZW50SW1wb3J0ID09PSBJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUikge1xuICAgICAgICAgICAgc3BlY2lmaWVyID0gSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVI7XG4gICAgICAgICAgfSBlbHNlIGlmIChjdXJyZW50SW1wb3J0ID09PSBJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIpIHtcbiAgICAgICAgICAgIHNwZWNpZmllciA9IElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUjtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc3BlY2lmaWVyID0gY3VycmVudEltcG9ydDtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHR5cGVvZiBzcGVjaWZpZXIgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBjb25zdCBleHBvcnRTdGF0ZW1lbnQgPSBleHBvcnRzLmdldChzcGVjaWZpZXIpO1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBleHBvcnRTdGF0ZW1lbnQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICAgIGNvbnN0IHsgd2hlcmVVc2VkIH0gPSBleHBvcnRTdGF0ZW1lbnQ7XG4gICAgICAgICAgICAgIHdoZXJlVXNlZC5hZGQobGlzdEtleSk7XG4gICAgICAgICAgICAgIGV4cG9ydHMuc2V0KHNwZWNpZmllciwgeyB3aGVyZVVzZWQgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSk7XG59O1xuXG5jb25zdCBnZXRTcmMgPSAoc3JjKSA9PiB7XG4gIGlmIChzcmMpIHtcbiAgICByZXR1cm4gc3JjO1xuICB9XG4gIHJldHVybiBbcHJvY2Vzcy5jd2QoKV07XG59O1xuXG4vKipcbiAqIHByZXBhcmUgdGhlIGxpc3RzIG9mIGV4aXN0aW5nIGltcG9ydHMgYW5kIGV4cG9ydHMgLSBzaG91bGQgb25seSBiZSBleGVjdXRlZCBvbmNlIGF0XG4gKiB0aGUgc3RhcnQgb2YgYSBuZXcgZXNsaW50IHJ1blxuICovXG5sZXQgc3JjRmlsZXM7XG5sZXQgbGFzdFByZXBhcmVLZXk7XG5jb25zdCBkb1ByZXBhcmF0aW9uID0gKHNyYywgaWdub3JlRXhwb3J0cywgY29udGV4dCkgPT4ge1xuICBjb25zdCBwcmVwYXJlS2V5ID0gSlNPTi5zdHJpbmdpZnkoe1xuICAgIHNyYzogKHNyYyB8fCBbXSkuc29ydCgpLFxuICAgIGlnbm9yZUV4cG9ydHM6IChpZ25vcmVFeHBvcnRzIHx8IFtdKS5zb3J0KCksXG4gICAgZXh0ZW5zaW9uczogQXJyYXkuZnJvbShnZXRGaWxlRXh0ZW5zaW9ucyhjb250ZXh0LnNldHRpbmdzKSkuc29ydCgpLFxuICB9KTtcbiAgaWYgKHByZXBhcmVLZXkgPT09IGxhc3RQcmVwYXJlS2V5KSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgaW1wb3J0TGlzdC5jbGVhcigpO1xuICBleHBvcnRMaXN0LmNsZWFyKCk7XG4gIGlnbm9yZWRGaWxlcy5jbGVhcigpO1xuICBmaWxlc091dHNpZGVTcmMuY2xlYXIoKTtcblxuICBzcmNGaWxlcyA9IHJlc29sdmVGaWxlcyhnZXRTcmMoc3JjKSwgaWdub3JlRXhwb3J0cywgY29udGV4dCk7XG4gIHByZXBhcmVJbXBvcnRzQW5kRXhwb3J0cyhzcmNGaWxlcywgY29udGV4dCk7XG4gIGRldGVybWluZVVzYWdlKCk7XG4gIGxhc3RQcmVwYXJlS2V5ID0gcHJlcGFyZUtleTtcbn07XG5cbmNvbnN0IG5ld05hbWVzcGFjZUltcG9ydEV4aXN0cyA9IChzcGVjaWZpZXJzKSA9PiBzcGVjaWZpZXJzLnNvbWUoKHsgdHlwZSB9KSA9PiB0eXBlID09PSBJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUik7XG5cbmNvbnN0IG5ld0RlZmF1bHRJbXBvcnRFeGlzdHMgPSAoc3BlY2lmaWVycykgPT4gc3BlY2lmaWVycy5zb21lKCh7IHR5cGUgfSkgPT4gdHlwZSA9PT0gSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSKTtcblxuY29uc3QgZmlsZUlzSW5Qa2cgPSAoZmlsZSkgPT4ge1xuICBjb25zdCB7IHBhdGgsIHBrZyB9ID0gcmVhZFBrZ1VwKHsgY3dkOiBmaWxlIH0pO1xuICBjb25zdCBiYXNlUGF0aCA9IGRpcm5hbWUocGF0aCk7XG5cbiAgY29uc3QgY2hlY2tQa2dGaWVsZFN0cmluZyA9IChwa2dGaWVsZCkgPT4ge1xuICAgIGlmIChqb2luKGJhc2VQYXRoLCBwa2dGaWVsZCkgPT09IGZpbGUpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBjaGVja1BrZ0ZpZWxkT2JqZWN0ID0gKHBrZ0ZpZWxkKSA9PiB7XG4gICAgY29uc3QgcGtnRmllbGRGaWxlcyA9IGZsYXRNYXAodmFsdWVzKHBrZ0ZpZWxkKSwgKHZhbHVlKSA9PiB0eXBlb2YgdmFsdWUgPT09ICdib29sZWFuJyA/IFtdIDogam9pbihiYXNlUGF0aCwgdmFsdWUpKTtcblxuICAgIGlmIChpbmNsdWRlcyhwa2dGaWVsZEZpbGVzLCBmaWxlKSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGNoZWNrUGtnRmllbGQgPSAocGtnRmllbGQpID0+IHtcbiAgICBpZiAodHlwZW9mIHBrZ0ZpZWxkID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIGNoZWNrUGtnRmllbGRTdHJpbmcocGtnRmllbGQpO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgcGtnRmllbGQgPT09ICdvYmplY3QnKSB7XG4gICAgICByZXR1cm4gY2hlY2tQa2dGaWVsZE9iamVjdChwa2dGaWVsZCk7XG4gICAgfVxuICB9O1xuXG4gIGlmIChwa2cucHJpdmF0ZSA9PT0gdHJ1ZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGlmIChwa2cuYmluKSB7XG4gICAgaWYgKGNoZWNrUGtnRmllbGQocGtnLmJpbikpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIGlmIChwa2cuYnJvd3Nlcikge1xuICAgIGlmIChjaGVja1BrZ0ZpZWxkKHBrZy5icm93c2VyKSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG5cbiAgaWYgKHBrZy5tYWluKSB7XG4gICAgaWYgKGNoZWNrUGtnRmllbGRTdHJpbmcocGtnLm1haW4pKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gZmFsc2U7XG59O1xuXG5tb2R1bGUuZXhwb3J0cyA9IHtcbiAgbWV0YToge1xuICAgIHR5cGU6ICdzdWdnZXN0aW9uJyxcbiAgICBkb2NzOiB7XG4gICAgICBjYXRlZ29yeTogJ0hlbHBmdWwgd2FybmluZ3MnLFxuICAgICAgZGVzY3JpcHRpb246ICdGb3JiaWQgbW9kdWxlcyB3aXRob3V0IGV4cG9ydHMsIG9yIGV4cG9ydHMgd2l0aG91dCBtYXRjaGluZyBpbXBvcnQgaW4gYW5vdGhlciBtb2R1bGUuJyxcbiAgICAgIHVybDogZG9jc1VybCgnbm8tdW51c2VkLW1vZHVsZXMnKSxcbiAgICB9LFxuICAgIHNjaGVtYTogW3tcbiAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgc3JjOiB7XG4gICAgICAgICAgZGVzY3JpcHRpb246ICdmaWxlcy9wYXRocyB0byBiZSBhbmFseXplZCAob25seSBmb3IgdW51c2VkIGV4cG9ydHMpJyxcbiAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgIHVuaXF1ZUl0ZW1zOiB0cnVlLFxuICAgICAgICAgIGl0ZW1zOiB7XG4gICAgICAgICAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICAgICAgICAgIG1pbkxlbmd0aDogMSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBpZ25vcmVFeHBvcnRzOiB7XG4gICAgICAgICAgZGVzY3JpcHRpb246ICdmaWxlcy9wYXRocyBmb3Igd2hpY2ggdW51c2VkIGV4cG9ydHMgd2lsbCBub3QgYmUgcmVwb3J0ZWQgKGUuZyBtb2R1bGUgZW50cnkgcG9pbnRzKScsXG4gICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICB1bmlxdWVJdGVtczogdHJ1ZSxcbiAgICAgICAgICBpdGVtczoge1xuICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICBtaW5MZW5ndGg6IDEsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgbWlzc2luZ0V4cG9ydHM6IHtcbiAgICAgICAgICBkZXNjcmlwdGlvbjogJ3JlcG9ydCBtb2R1bGVzIHdpdGhvdXQgYW55IGV4cG9ydHMnLFxuICAgICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgfSxcbiAgICAgICAgdW51c2VkRXhwb3J0czoge1xuICAgICAgICAgIGRlc2NyaXB0aW9uOiAncmVwb3J0IGV4cG9ydHMgd2l0aG91dCBhbnkgdXNhZ2UnLFxuICAgICAgICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBhbnlPZjogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgICAgdW51c2VkRXhwb3J0czogeyBlbnVtOiBbdHJ1ZV0gfSxcbiAgICAgICAgICAgIHNyYzoge1xuICAgICAgICAgICAgICBtaW5JdGVtczogMSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICByZXF1aXJlZDogWyd1bnVzZWRFeHBvcnRzJ10sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICBtaXNzaW5nRXhwb3J0czogeyBlbnVtOiBbdHJ1ZV0gfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHJlcXVpcmVkOiBbJ21pc3NpbmdFeHBvcnRzJ10sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH1dLFxuICB9LFxuXG4gIGNyZWF0ZShjb250ZXh0KSB7XG4gICAgY29uc3Qge1xuICAgICAgc3JjLFxuICAgICAgaWdub3JlRXhwb3J0cyA9IFtdLFxuICAgICAgbWlzc2luZ0V4cG9ydHMsXG4gICAgICB1bnVzZWRFeHBvcnRzLFxuICAgIH0gPSBjb250ZXh0Lm9wdGlvbnNbMF0gfHwge307XG5cbiAgICBpZiAodW51c2VkRXhwb3J0cykge1xuICAgICAgZG9QcmVwYXJhdGlvbihzcmMsIGlnbm9yZUV4cG9ydHMsIGNvbnRleHQpO1xuICAgIH1cblxuICAgIGNvbnN0IGZpbGUgPSBjb250ZXh0LmdldFBoeXNpY2FsRmlsZW5hbWUgPyBjb250ZXh0LmdldFBoeXNpY2FsRmlsZW5hbWUoKSA6IGNvbnRleHQuZ2V0RmlsZW5hbWUoKTtcblxuICAgIGNvbnN0IGNoZWNrRXhwb3J0UHJlc2VuY2UgPSAobm9kZSkgPT4ge1xuICAgICAgaWYgKCFtaXNzaW5nRXhwb3J0cykge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmIChpZ25vcmVkRmlsZXMuaGFzKGZpbGUpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZXhwb3J0Q291bnQgPSBleHBvcnRMaXN0LmdldChmaWxlKTtcbiAgICAgIGNvbnN0IGV4cG9ydEFsbCA9IGV4cG9ydENvdW50LmdldChFWFBPUlRfQUxMX0RFQ0xBUkFUSU9OKTtcbiAgICAgIGNvbnN0IG5hbWVzcGFjZUltcG9ydHMgPSBleHBvcnRDb3VudC5nZXQoSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIpO1xuXG4gICAgICBleHBvcnRDb3VudC5kZWxldGUoRVhQT1JUX0FMTF9ERUNMQVJBVElPTik7XG4gICAgICBleHBvcnRDb3VudC5kZWxldGUoSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIpO1xuICAgICAgaWYgKGV4cG9ydENvdW50LnNpemUgPCAxKSB7XG4gICAgICAgIC8vIG5vZGUuYm9keVswXSA9PT0gJ3VuZGVmaW5lZCcgb25seSBoYXBwZW5zLCBpZiBldmVyeXRoaW5nIGlzIGNvbW1lbnRlZCBvdXQgaW4gdGhlIGZpbGVcbiAgICAgICAgLy8gYmVpbmcgbGludGVkXG4gICAgICAgIGNvbnRleHQucmVwb3J0KG5vZGUuYm9keVswXSA/IG5vZGUuYm9keVswXSA6IG5vZGUsICdObyBleHBvcnRzIGZvdW5kJyk7XG4gICAgICB9XG4gICAgICBleHBvcnRDb3VudC5zZXQoRVhQT1JUX0FMTF9ERUNMQVJBVElPTiwgZXhwb3J0QWxsKTtcbiAgICAgIGV4cG9ydENvdW50LnNldChJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUiwgbmFtZXNwYWNlSW1wb3J0cyk7XG4gICAgfTtcblxuICAgIGNvbnN0IGNoZWNrVXNhZ2UgPSAobm9kZSwgZXhwb3J0ZWRWYWx1ZSkgPT4ge1xuICAgICAgaWYgKCF1bnVzZWRFeHBvcnRzKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKGlnbm9yZWRGaWxlcy5oYXMoZmlsZSkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAoZmlsZUlzSW5Qa2coZmlsZSkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAoZmlsZXNPdXRzaWRlU3JjLmhhcyhmaWxlKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIC8vIG1ha2Ugc3VyZSBmaWxlIHRvIGJlIGxpbnRlZCBpcyBpbmNsdWRlZCBpbiBzb3VyY2UgZmlsZXNcbiAgICAgIGlmICghc3JjRmlsZXMuaGFzKGZpbGUpKSB7XG4gICAgICAgIHNyY0ZpbGVzID0gcmVzb2x2ZUZpbGVzKGdldFNyYyhzcmMpLCBpZ25vcmVFeHBvcnRzLCBjb250ZXh0KTtcbiAgICAgICAgaWYgKCFzcmNGaWxlcy5oYXMoZmlsZSkpIHtcbiAgICAgICAgICBmaWxlc091dHNpZGVTcmMuYWRkKGZpbGUpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBleHBvcnRzID0gZXhwb3J0TGlzdC5nZXQoZmlsZSk7XG5cbiAgICAgIC8vIHNwZWNpYWwgY2FzZTogZXhwb3J0ICogZnJvbVxuICAgICAgY29uc3QgZXhwb3J0QWxsID0gZXhwb3J0cy5nZXQoRVhQT1JUX0FMTF9ERUNMQVJBVElPTik7XG4gICAgICBpZiAodHlwZW9mIGV4cG9ydEFsbCAhPT0gJ3VuZGVmaW5lZCcgJiYgZXhwb3J0ZWRWYWx1ZSAhPT0gSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSKSB7XG4gICAgICAgIGlmIChleHBvcnRBbGwud2hlcmVVc2VkLnNpemUgPiAwKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIHNwZWNpYWwgY2FzZTogbmFtZXNwYWNlIGltcG9ydFxuICAgICAgY29uc3QgbmFtZXNwYWNlSW1wb3J0cyA9IGV4cG9ydHMuZ2V0KElNUE9SVF9OQU1FU1BBQ0VfU1BFQ0lGSUVSKTtcbiAgICAgIGlmICh0eXBlb2YgbmFtZXNwYWNlSW1wb3J0cyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgaWYgKG5hbWVzcGFjZUltcG9ydHMud2hlcmVVc2VkLnNpemUgPiAwKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIGV4cG9ydHNMaXN0IHdpbGwgYWx3YXlzIG1hcCBhbnkgaW1wb3J0ZWQgdmFsdWUgb2YgJ2RlZmF1bHQnIHRvICdJbXBvcnREZWZhdWx0U3BlY2lmaWVyJ1xuICAgICAgY29uc3QgZXhwb3J0c0tleSA9IGV4cG9ydGVkVmFsdWUgPT09IERFRkFVTFQgPyBJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIgOiBleHBvcnRlZFZhbHVlO1xuXG4gICAgICBjb25zdCBleHBvcnRTdGF0ZW1lbnQgPSBleHBvcnRzLmdldChleHBvcnRzS2V5KTtcblxuICAgICAgY29uc3QgdmFsdWUgPSBleHBvcnRzS2V5ID09PSBJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIgPyBERUZBVUxUIDogZXhwb3J0c0tleTtcblxuICAgICAgaWYgKHR5cGVvZiBleHBvcnRTdGF0ZW1lbnQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIGlmIChleHBvcnRTdGF0ZW1lbnQud2hlcmVVc2VkLnNpemUgPCAxKSB7XG4gICAgICAgICAgY29udGV4dC5yZXBvcnQoXG4gICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgYGV4cG9ydGVkIGRlY2xhcmF0aW9uICcke3ZhbHVlfScgbm90IHVzZWQgd2l0aGluIG90aGVyIG1vZHVsZXNgLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnRleHQucmVwb3J0KFxuICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgYGV4cG9ydGVkIGRlY2xhcmF0aW9uICcke3ZhbHVlfScgbm90IHVzZWQgd2l0aGluIG90aGVyIG1vZHVsZXNgLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBvbmx5IHVzZWZ1bCBmb3IgdG9vbHMgbGlrZSB2c2NvZGUtZXNsaW50XG4gICAgICpcbiAgICAgKiB1cGRhdGUgbGlzdHMgb2YgZXhpc3RpbmcgZXhwb3J0cyBkdXJpbmcgcnVudGltZVxuICAgICAqL1xuICAgIGNvbnN0IHVwZGF0ZUV4cG9ydFVzYWdlID0gKG5vZGUpID0+IHtcbiAgICAgIGlmIChpZ25vcmVkRmlsZXMuaGFzKGZpbGUpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgbGV0IGV4cG9ydHMgPSBleHBvcnRMaXN0LmdldChmaWxlKTtcblxuICAgICAgLy8gbmV3IG1vZHVsZSBoYXMgYmVlbiBjcmVhdGVkIGR1cmluZyBydW50aW1lXG4gICAgICAvLyBpbmNsdWRlIGl0IGluIGZ1cnRoZXIgcHJvY2Vzc2luZ1xuICAgICAgaWYgKHR5cGVvZiBleHBvcnRzID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICBleHBvcnRzID0gbmV3IE1hcCgpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBuZXdFeHBvcnRzID0gbmV3IE1hcCgpO1xuICAgICAgY29uc3QgbmV3RXhwb3J0SWRlbnRpZmllcnMgPSBuZXcgU2V0KCk7XG5cbiAgICAgIG5vZGUuYm9keS5mb3JFYWNoKCh7IHR5cGUsIGRlY2xhcmF0aW9uLCBzcGVjaWZpZXJzIH0pID0+IHtcbiAgICAgICAgaWYgKHR5cGUgPT09IEVYUE9SVF9ERUZBVUxUX0RFQ0xBUkFUSU9OKSB7XG4gICAgICAgICAgbmV3RXhwb3J0SWRlbnRpZmllcnMuYWRkKElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUik7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGUgPT09IEVYUE9SVF9OQU1FRF9ERUNMQVJBVElPTikge1xuICAgICAgICAgIGlmIChzcGVjaWZpZXJzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHNwZWNpZmllcnMuZm9yRWFjaCgoc3BlY2lmaWVyKSA9PiB7XG4gICAgICAgICAgICAgIGlmIChzcGVjaWZpZXIuZXhwb3J0ZWQpIHtcbiAgICAgICAgICAgICAgICBuZXdFeHBvcnRJZGVudGlmaWVycy5hZGQoc3BlY2lmaWVyLmV4cG9ydGVkLm5hbWUgfHwgc3BlY2lmaWVyLmV4cG9ydGVkLnZhbHVlKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGZvckVhY2hEZWNsYXJhdGlvbklkZW50aWZpZXIoZGVjbGFyYXRpb24sIChuYW1lKSA9PiB7XG4gICAgICAgICAgICBuZXdFeHBvcnRJZGVudGlmaWVycy5hZGQobmFtZSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICAvLyBvbGQgZXhwb3J0cyBleGlzdCB3aXRoaW4gbGlzdCBvZiBuZXcgZXhwb3J0cyBpZGVudGlmaWVyczogYWRkIHRvIG1hcCBvZiBuZXcgZXhwb3J0c1xuICAgICAgZXhwb3J0cy5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB7XG4gICAgICAgIGlmIChuZXdFeHBvcnRJZGVudGlmaWVycy5oYXMoa2V5KSkge1xuICAgICAgICAgIG5ld0V4cG9ydHMuc2V0KGtleSwgdmFsdWUpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgLy8gbmV3IGV4cG9ydCBpZGVudGlmaWVycyBhZGRlZDogYWRkIHRvIG1hcCBvZiBuZXcgZXhwb3J0c1xuICAgICAgbmV3RXhwb3J0SWRlbnRpZmllcnMuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICAgIGlmICghZXhwb3J0cy5oYXMoa2V5KSkge1xuICAgICAgICAgIG5ld0V4cG9ydHMuc2V0KGtleSwgeyB3aGVyZVVzZWQ6IG5ldyBTZXQoKSB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIC8vIHByZXNlcnZlIGluZm9ybWF0aW9uIGFib3V0IG5hbWVzcGFjZSBpbXBvcnRzXG4gICAgICBjb25zdCBleHBvcnRBbGwgPSBleHBvcnRzLmdldChFWFBPUlRfQUxMX0RFQ0xBUkFUSU9OKTtcbiAgICAgIGxldCBuYW1lc3BhY2VJbXBvcnRzID0gZXhwb3J0cy5nZXQoSU1QT1JUX05BTUVTUEFDRV9TUEVDSUZJRVIpO1xuXG4gICAgICBpZiAodHlwZW9mIG5hbWVzcGFjZUltcG9ydHMgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIG5hbWVzcGFjZUltcG9ydHMgPSB7IHdoZXJlVXNlZDogbmV3IFNldCgpIH07XG4gICAgICB9XG5cbiAgICAgIG5ld0V4cG9ydHMuc2V0KEVYUE9SVF9BTExfREVDTEFSQVRJT04sIGV4cG9ydEFsbCk7XG4gICAgICBuZXdFeHBvcnRzLnNldChJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUiwgbmFtZXNwYWNlSW1wb3J0cyk7XG4gICAgICBleHBvcnRMaXN0LnNldChmaWxlLCBuZXdFeHBvcnRzKTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogb25seSB1c2VmdWwgZm9yIHRvb2xzIGxpa2UgdnNjb2RlLWVzbGludFxuICAgICAqXG4gICAgICogdXBkYXRlIGxpc3RzIG9mIGV4aXN0aW5nIGltcG9ydHMgZHVyaW5nIHJ1bnRpbWVcbiAgICAgKi9cbiAgICBjb25zdCB1cGRhdGVJbXBvcnRVc2FnZSA9IChub2RlKSA9PiB7XG4gICAgICBpZiAoIXVudXNlZEV4cG9ydHMpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBsZXQgb2xkSW1wb3J0UGF0aHMgPSBpbXBvcnRMaXN0LmdldChmaWxlKTtcbiAgICAgIGlmICh0eXBlb2Ygb2xkSW1wb3J0UGF0aHMgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIG9sZEltcG9ydFBhdGhzID0gbmV3IE1hcCgpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBvbGROYW1lc3BhY2VJbXBvcnRzID0gbmV3IFNldCgpO1xuICAgICAgY29uc3QgbmV3TmFtZXNwYWNlSW1wb3J0cyA9IG5ldyBTZXQoKTtcblxuICAgICAgY29uc3Qgb2xkRXhwb3J0QWxsID0gbmV3IFNldCgpO1xuICAgICAgY29uc3QgbmV3RXhwb3J0QWxsID0gbmV3IFNldCgpO1xuXG4gICAgICBjb25zdCBvbGREZWZhdWx0SW1wb3J0cyA9IG5ldyBTZXQoKTtcbiAgICAgIGNvbnN0IG5ld0RlZmF1bHRJbXBvcnRzID0gbmV3IFNldCgpO1xuXG4gICAgICBjb25zdCBvbGRJbXBvcnRzID0gbmV3IE1hcCgpO1xuICAgICAgY29uc3QgbmV3SW1wb3J0cyA9IG5ldyBNYXAoKTtcbiAgICAgIG9sZEltcG9ydFBhdGhzLmZvckVhY2goKHZhbHVlLCBrZXkpID0+IHtcbiAgICAgICAgaWYgKHZhbHVlLmhhcyhFWFBPUlRfQUxMX0RFQ0xBUkFUSU9OKSkge1xuICAgICAgICAgIG9sZEV4cG9ydEFsbC5hZGQoa2V5KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodmFsdWUuaGFzKElNUE9SVF9OQU1FU1BBQ0VfU1BFQ0lGSUVSKSkge1xuICAgICAgICAgIG9sZE5hbWVzcGFjZUltcG9ydHMuYWRkKGtleSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHZhbHVlLmhhcyhJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIpKSB7XG4gICAgICAgICAgb2xkRGVmYXVsdEltcG9ydHMuYWRkKGtleSk7XG4gICAgICAgIH1cbiAgICAgICAgdmFsdWUuZm9yRWFjaCgodmFsKSA9PiB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgdmFsICE9PSBJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUlxuICAgICAgICAgICAgJiYgdmFsICE9PSBJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVJcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIG9sZEltcG9ydHMuc2V0KHZhbCwga2V5KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSk7XG5cbiAgICAgIGZ1bmN0aW9uIHByb2Nlc3NEeW5hbWljSW1wb3J0KHNvdXJjZSkge1xuICAgICAgICBpZiAoc291cmNlLnR5cGUgIT09ICdMaXRlcmFsJykge1xuICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHAgPSByZXNvbHZlKHNvdXJjZS52YWx1ZSwgY29udGV4dCk7XG4gICAgICAgIGlmIChwID09IG51bGwpIHtcbiAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBuZXdOYW1lc3BhY2VJbXBvcnRzLmFkZChwKTtcbiAgICAgIH1cblxuICAgICAgdmlzaXQobm9kZSwgdmlzaXRvcktleU1hcC5nZXQoZmlsZSksIHtcbiAgICAgICAgSW1wb3J0RXhwcmVzc2lvbihjaGlsZCkge1xuICAgICAgICAgIHByb2Nlc3NEeW5hbWljSW1wb3J0KGNoaWxkLnNvdXJjZSk7XG4gICAgICAgIH0sXG4gICAgICAgIENhbGxFeHByZXNzaW9uKGNoaWxkKSB7XG4gICAgICAgICAgaWYgKGNoaWxkLmNhbGxlZS50eXBlID09PSAnSW1wb3J0Jykge1xuICAgICAgICAgICAgcHJvY2Vzc0R5bmFtaWNJbXBvcnQoY2hpbGQuYXJndW1lbnRzWzBdKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICB9KTtcblxuICAgICAgbm9kZS5ib2R5LmZvckVhY2goKGFzdE5vZGUpID0+IHtcbiAgICAgICAgbGV0IHJlc29sdmVkUGF0aDtcblxuICAgICAgICAvLyBzdXBwb3J0IGZvciBleHBvcnQgeyB2YWx1ZSB9IGZyb20gJ21vZHVsZSdcbiAgICAgICAgaWYgKGFzdE5vZGUudHlwZSA9PT0gRVhQT1JUX05BTUVEX0RFQ0xBUkFUSU9OKSB7XG4gICAgICAgICAgaWYgKGFzdE5vZGUuc291cmNlKSB7XG4gICAgICAgICAgICByZXNvbHZlZFBhdGggPSByZXNvbHZlKGFzdE5vZGUuc291cmNlLnJhdy5yZXBsYWNlKC8oJ3xcIikvZywgJycpLCBjb250ZXh0KTtcbiAgICAgICAgICAgIGFzdE5vZGUuc3BlY2lmaWVycy5mb3JFYWNoKChzcGVjaWZpZXIpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgbmFtZSA9IHNwZWNpZmllci5sb2NhbC5uYW1lIHx8IHNwZWNpZmllci5sb2NhbC52YWx1ZTtcbiAgICAgICAgICAgICAgaWYgKG5hbWUgPT09IERFRkFVTFQpIHtcbiAgICAgICAgICAgICAgICBuZXdEZWZhdWx0SW1wb3J0cy5hZGQocmVzb2x2ZWRQYXRoKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBuZXdJbXBvcnRzLnNldChuYW1lLCByZXNvbHZlZFBhdGgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoYXN0Tm9kZS50eXBlID09PSBFWFBPUlRfQUxMX0RFQ0xBUkFUSU9OKSB7XG4gICAgICAgICAgcmVzb2x2ZWRQYXRoID0gcmVzb2x2ZShhc3ROb2RlLnNvdXJjZS5yYXcucmVwbGFjZSgvKCd8XCIpL2csICcnKSwgY29udGV4dCk7XG4gICAgICAgICAgbmV3RXhwb3J0QWxsLmFkZChyZXNvbHZlZFBhdGgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGFzdE5vZGUudHlwZSA9PT0gSU1QT1JUX0RFQ0xBUkFUSU9OKSB7XG4gICAgICAgICAgcmVzb2x2ZWRQYXRoID0gcmVzb2x2ZShhc3ROb2RlLnNvdXJjZS5yYXcucmVwbGFjZSgvKCd8XCIpL2csICcnKSwgY29udGV4dCk7XG4gICAgICAgICAgaWYgKCFyZXNvbHZlZFBhdGgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoaXNOb2RlTW9kdWxlKHJlc29sdmVkUGF0aCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAobmV3TmFtZXNwYWNlSW1wb3J0RXhpc3RzKGFzdE5vZGUuc3BlY2lmaWVycykpIHtcbiAgICAgICAgICAgIG5ld05hbWVzcGFjZUltcG9ydHMuYWRkKHJlc29sdmVkUGF0aCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKG5ld0RlZmF1bHRJbXBvcnRFeGlzdHMoYXN0Tm9kZS5zcGVjaWZpZXJzKSkge1xuICAgICAgICAgICAgbmV3RGVmYXVsdEltcG9ydHMuYWRkKHJlc29sdmVkUGF0aCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYXN0Tm9kZS5zcGVjaWZpZXJzXG4gICAgICAgICAgICAuZmlsdGVyKChzcGVjaWZpZXIpID0+IHNwZWNpZmllci50eXBlICE9PSBJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIgJiYgc3BlY2lmaWVyLnR5cGUgIT09IElNUE9SVF9OQU1FU1BBQ0VfU1BFQ0lGSUVSKVxuICAgICAgICAgICAgLmZvckVhY2goKHNwZWNpZmllcikgPT4ge1xuICAgICAgICAgICAgICBuZXdJbXBvcnRzLnNldChzcGVjaWZpZXIuaW1wb3J0ZWQubmFtZSB8fCBzcGVjaWZpZXIuaW1wb3J0ZWQudmFsdWUsIHJlc29sdmVkUGF0aCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIG5ld0V4cG9ydEFsbC5mb3JFYWNoKCh2YWx1ZSkgPT4ge1xuICAgICAgICBpZiAoIW9sZEV4cG9ydEFsbC5oYXModmFsdWUpKSB7XG4gICAgICAgICAgbGV0IGltcG9ydHMgPSBvbGRJbXBvcnRQYXRocy5nZXQodmFsdWUpO1xuICAgICAgICAgIGlmICh0eXBlb2YgaW1wb3J0cyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIGltcG9ydHMgPSBuZXcgU2V0KCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGltcG9ydHMuYWRkKEVYUE9SVF9BTExfREVDTEFSQVRJT04pO1xuICAgICAgICAgIG9sZEltcG9ydFBhdGhzLnNldCh2YWx1ZSwgaW1wb3J0cyk7XG5cbiAgICAgICAgICBsZXQgZXhwb3J0cyA9IGV4cG9ydExpc3QuZ2V0KHZhbHVlKTtcbiAgICAgICAgICBsZXQgY3VycmVudEV4cG9ydDtcbiAgICAgICAgICBpZiAodHlwZW9mIGV4cG9ydHMgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBjdXJyZW50RXhwb3J0ID0gZXhwb3J0cy5nZXQoRVhQT1JUX0FMTF9ERUNMQVJBVElPTik7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGV4cG9ydHMgPSBuZXcgTWFwKCk7XG4gICAgICAgICAgICBleHBvcnRMaXN0LnNldCh2YWx1ZSwgZXhwb3J0cyk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHR5cGVvZiBjdXJyZW50RXhwb3J0ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY3VycmVudEV4cG9ydC53aGVyZVVzZWQuYWRkKGZpbGUpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCB3aGVyZVVzZWQgPSBuZXcgU2V0KCk7XG4gICAgICAgICAgICB3aGVyZVVzZWQuYWRkKGZpbGUpO1xuICAgICAgICAgICAgZXhwb3J0cy5zZXQoRVhQT1JUX0FMTF9ERUNMQVJBVElPTiwgeyB3aGVyZVVzZWQgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgb2xkRXhwb3J0QWxsLmZvckVhY2goKHZhbHVlKSA9PiB7XG4gICAgICAgIGlmICghbmV3RXhwb3J0QWxsLmhhcyh2YWx1ZSkpIHtcbiAgICAgICAgICBjb25zdCBpbXBvcnRzID0gb2xkSW1wb3J0UGF0aHMuZ2V0KHZhbHVlKTtcbiAgICAgICAgICBpbXBvcnRzLmRlbGV0ZShFWFBPUlRfQUxMX0RFQ0xBUkFUSU9OKTtcblxuICAgICAgICAgIGNvbnN0IGV4cG9ydHMgPSBleHBvcnRMaXN0LmdldCh2YWx1ZSk7XG4gICAgICAgICAgaWYgKHR5cGVvZiBleHBvcnRzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudEV4cG9ydCA9IGV4cG9ydHMuZ2V0KEVYUE9SVF9BTExfREVDTEFSQVRJT04pO1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBjdXJyZW50RXhwb3J0ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgICBjdXJyZW50RXhwb3J0LndoZXJlVXNlZC5kZWxldGUoZmlsZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgbmV3RGVmYXVsdEltcG9ydHMuZm9yRWFjaCgodmFsdWUpID0+IHtcbiAgICAgICAgaWYgKCFvbGREZWZhdWx0SW1wb3J0cy5oYXModmFsdWUpKSB7XG4gICAgICAgICAgbGV0IGltcG9ydHMgPSBvbGRJbXBvcnRQYXRocy5nZXQodmFsdWUpO1xuICAgICAgICAgIGlmICh0eXBlb2YgaW1wb3J0cyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIGltcG9ydHMgPSBuZXcgU2V0KCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGltcG9ydHMuYWRkKElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUik7XG4gICAgICAgICAgb2xkSW1wb3J0UGF0aHMuc2V0KHZhbHVlLCBpbXBvcnRzKTtcblxuICAgICAgICAgIGxldCBleHBvcnRzID0gZXhwb3J0TGlzdC5nZXQodmFsdWUpO1xuICAgICAgICAgIGxldCBjdXJyZW50RXhwb3J0O1xuICAgICAgICAgIGlmICh0eXBlb2YgZXhwb3J0cyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIGN1cnJlbnRFeHBvcnQgPSBleHBvcnRzLmdldChJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBleHBvcnRzID0gbmV3IE1hcCgpO1xuICAgICAgICAgICAgZXhwb3J0TGlzdC5zZXQodmFsdWUsIGV4cG9ydHMpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh0eXBlb2YgY3VycmVudEV4cG9ydCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIGN1cnJlbnRFeHBvcnQud2hlcmVVc2VkLmFkZChmaWxlKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3Qgd2hlcmVVc2VkID0gbmV3IFNldCgpO1xuICAgICAgICAgICAgd2hlcmVVc2VkLmFkZChmaWxlKTtcbiAgICAgICAgICAgIGV4cG9ydHMuc2V0KElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUiwgeyB3aGVyZVVzZWQgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgb2xkRGVmYXVsdEltcG9ydHMuZm9yRWFjaCgodmFsdWUpID0+IHtcbiAgICAgICAgaWYgKCFuZXdEZWZhdWx0SW1wb3J0cy5oYXModmFsdWUpKSB7XG4gICAgICAgICAgY29uc3QgaW1wb3J0cyA9IG9sZEltcG9ydFBhdGhzLmdldCh2YWx1ZSk7XG4gICAgICAgICAgaW1wb3J0cy5kZWxldGUoSU1QT1JUX0RFRkFVTFRfU1BFQ0lGSUVSKTtcblxuICAgICAgICAgIGNvbnN0IGV4cG9ydHMgPSBleHBvcnRMaXN0LmdldCh2YWx1ZSk7XG4gICAgICAgICAgaWYgKHR5cGVvZiBleHBvcnRzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudEV4cG9ydCA9IGV4cG9ydHMuZ2V0KElNUE9SVF9ERUZBVUxUX1NQRUNJRklFUik7XG4gICAgICAgICAgICBpZiAodHlwZW9mIGN1cnJlbnRFeHBvcnQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICAgIGN1cnJlbnRFeHBvcnQud2hlcmVVc2VkLmRlbGV0ZShmaWxlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICBuZXdOYW1lc3BhY2VJbXBvcnRzLmZvckVhY2goKHZhbHVlKSA9PiB7XG4gICAgICAgIGlmICghb2xkTmFtZXNwYWNlSW1wb3J0cy5oYXModmFsdWUpKSB7XG4gICAgICAgICAgbGV0IGltcG9ydHMgPSBvbGRJbXBvcnRQYXRocy5nZXQodmFsdWUpO1xuICAgICAgICAgIGlmICh0eXBlb2YgaW1wb3J0cyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIGltcG9ydHMgPSBuZXcgU2V0KCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGltcG9ydHMuYWRkKElNUE9SVF9OQU1FU1BBQ0VfU1BFQ0lGSUVSKTtcbiAgICAgICAgICBvbGRJbXBvcnRQYXRocy5zZXQodmFsdWUsIGltcG9ydHMpO1xuXG4gICAgICAgICAgbGV0IGV4cG9ydHMgPSBleHBvcnRMaXN0LmdldCh2YWx1ZSk7XG4gICAgICAgICAgbGV0IGN1cnJlbnRFeHBvcnQ7XG4gICAgICAgICAgaWYgKHR5cGVvZiBleHBvcnRzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY3VycmVudEV4cG9ydCA9IGV4cG9ydHMuZ2V0KElNUE9SVF9OQU1FU1BBQ0VfU1BFQ0lGSUVSKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZXhwb3J0cyA9IG5ldyBNYXAoKTtcbiAgICAgICAgICAgIGV4cG9ydExpc3Quc2V0KHZhbHVlLCBleHBvcnRzKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodHlwZW9mIGN1cnJlbnRFeHBvcnQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICBjdXJyZW50RXhwb3J0LndoZXJlVXNlZC5hZGQoZmlsZSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IHdoZXJlVXNlZCA9IG5ldyBTZXQoKTtcbiAgICAgICAgICAgIHdoZXJlVXNlZC5hZGQoZmlsZSk7XG4gICAgICAgICAgICBleHBvcnRzLnNldChJTVBPUlRfTkFNRVNQQUNFX1NQRUNJRklFUiwgeyB3aGVyZVVzZWQgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgb2xkTmFtZXNwYWNlSW1wb3J0cy5mb3JFYWNoKCh2YWx1ZSkgPT4ge1xuICAgICAgICBpZiAoIW5ld05hbWVzcGFjZUltcG9ydHMuaGFzKHZhbHVlKSkge1xuICAgICAgICAgIGNvbnN0IGltcG9ydHMgPSBvbGRJbXBvcnRQYXRocy5nZXQodmFsdWUpO1xuICAgICAgICAgIGltcG9ydHMuZGVsZXRlKElNUE9SVF9OQU1FU1BBQ0VfU1BFQ0lGSUVSKTtcblxuICAgICAgICAgIGNvbnN0IGV4cG9ydHMgPSBleHBvcnRMaXN0LmdldCh2YWx1ZSk7XG4gICAgICAgICAgaWYgKHR5cGVvZiBleHBvcnRzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudEV4cG9ydCA9IGV4cG9ydHMuZ2V0KElNUE9SVF9OQU1FU1BBQ0VfU1BFQ0lGSUVSKTtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgY3VycmVudEV4cG9ydCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgICAgY3VycmVudEV4cG9ydC53aGVyZVVzZWQuZGVsZXRlKGZpbGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIG5ld0ltcG9ydHMuZm9yRWFjaCgodmFsdWUsIGtleSkgPT4ge1xuICAgICAgICBpZiAoIW9sZEltcG9ydHMuaGFzKGtleSkpIHtcbiAgICAgICAgICBsZXQgaW1wb3J0cyA9IG9sZEltcG9ydFBhdGhzLmdldCh2YWx1ZSk7XG4gICAgICAgICAgaWYgKHR5cGVvZiBpbXBvcnRzID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgaW1wb3J0cyA9IG5ldyBTZXQoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaW1wb3J0cy5hZGQoa2V5KTtcbiAgICAgICAgICBvbGRJbXBvcnRQYXRocy5zZXQodmFsdWUsIGltcG9ydHMpO1xuXG4gICAgICAgICAgbGV0IGV4cG9ydHMgPSBleHBvcnRMaXN0LmdldCh2YWx1ZSk7XG4gICAgICAgICAgbGV0IGN1cnJlbnRFeHBvcnQ7XG4gICAgICAgICAgaWYgKHR5cGVvZiBleHBvcnRzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY3VycmVudEV4cG9ydCA9IGV4cG9ydHMuZ2V0KGtleSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGV4cG9ydHMgPSBuZXcgTWFwKCk7XG4gICAgICAgICAgICBleHBvcnRMaXN0LnNldCh2YWx1ZSwgZXhwb3J0cyk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHR5cGVvZiBjdXJyZW50RXhwb3J0ICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY3VycmVudEV4cG9ydC53aGVyZVVzZWQuYWRkKGZpbGUpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zdCB3aGVyZVVzZWQgPSBuZXcgU2V0KCk7XG4gICAgICAgICAgICB3aGVyZVVzZWQuYWRkKGZpbGUpO1xuICAgICAgICAgICAgZXhwb3J0cy5zZXQoa2V5LCB7IHdoZXJlVXNlZCB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICBvbGRJbXBvcnRzLmZvckVhY2goKHZhbHVlLCBrZXkpID0+IHtcbiAgICAgICAgaWYgKCFuZXdJbXBvcnRzLmhhcyhrZXkpKSB7XG4gICAgICAgICAgY29uc3QgaW1wb3J0cyA9IG9sZEltcG9ydFBhdGhzLmdldCh2YWx1ZSk7XG4gICAgICAgICAgaW1wb3J0cy5kZWxldGUoa2V5KTtcblxuICAgICAgICAgIGNvbnN0IGV4cG9ydHMgPSBleHBvcnRMaXN0LmdldCh2YWx1ZSk7XG4gICAgICAgICAgaWYgKHR5cGVvZiBleHBvcnRzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudEV4cG9ydCA9IGV4cG9ydHMuZ2V0KGtleSk7XG4gICAgICAgICAgICBpZiAodHlwZW9mIGN1cnJlbnRFeHBvcnQgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICAgIGN1cnJlbnRFeHBvcnQud2hlcmVVc2VkLmRlbGV0ZShmaWxlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICByZXR1cm4ge1xuICAgICAgJ1Byb2dyYW06ZXhpdCcobm9kZSkge1xuICAgICAgICB1cGRhdGVFeHBvcnRVc2FnZShub2RlKTtcbiAgICAgICAgdXBkYXRlSW1wb3J0VXNhZ2Uobm9kZSk7XG4gICAgICAgIGNoZWNrRXhwb3J0UHJlc2VuY2Uobm9kZSk7XG4gICAgICB9LFxuICAgICAgRXhwb3J0RGVmYXVsdERlY2xhcmF0aW9uKG5vZGUpIHtcbiAgICAgICAgY2hlY2tVc2FnZShub2RlLCBJTVBPUlRfREVGQVVMVF9TUEVDSUZJRVIpO1xuICAgICAgfSxcbiAgICAgIEV4cG9ydE5hbWVkRGVjbGFyYXRpb24obm9kZSkge1xuICAgICAgICBub2RlLnNwZWNpZmllcnMuZm9yRWFjaCgoc3BlY2lmaWVyKSA9PiB7XG4gICAgICAgICAgY2hlY2tVc2FnZShzcGVjaWZpZXIsIHNwZWNpZmllci5leHBvcnRlZC5uYW1lIHx8IHNwZWNpZmllci5leHBvcnRlZC52YWx1ZSk7XG4gICAgICAgIH0pO1xuICAgICAgICBmb3JFYWNoRGVjbGFyYXRpb25JZGVudGlmaWVyKG5vZGUuZGVjbGFyYXRpb24sIChuYW1lKSA9PiB7XG4gICAgICAgICAgY2hlY2tVc2FnZShub2RlLCBuYW1lKTtcbiAgICAgICAgfSk7XG4gICAgICB9LFxuICAgIH07XG4gIH0sXG59O1xuIl19