create-packer 1.26.4 → 1.28.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 (420) hide show
  1. package/.gitignore +30 -30
  2. package/LICENSE +21 -21
  3. package/README.md +22 -22
  4. package/package.json +4 -4
  5. package/template/cli/.eslintrc +35 -35
  6. package/template/cli/.gitignore +29 -29
  7. package/template/cli/.prettierignore +6 -6
  8. package/template/cli/.prettierrc.js +20 -20
  9. package/template/cli/LICENSE +21 -21
  10. package/template/cli/README.md +13 -13
  11. package/template/cli/commitlint.config.cjs +1 -1
  12. package/template/cli/package.json +50 -50
  13. package/template/cli/pnpm-workspace.yaml +2 -2
  14. package/template/cli/src/createTemp.ts +63 -63
  15. package/template/cli/src/index.ts +5 -5
  16. package/template/cli/src/utils/index.ts +49 -49
  17. package/template/cli/template/template-1/index.ts +1 -1
  18. package/template/cli/tsconfig.json +20 -20
  19. package/template/cli/utils/pub.js +43 -43
  20. package/template/docusaurus/.gitignore +35 -35
  21. package/template/docusaurus/README.md +41 -41
  22. package/template/docusaurus/babel.config.js +3 -3
  23. package/template/docusaurus/blog/2019-05-28-first-blog-post.md +12 -12
  24. package/template/docusaurus/blog/2019-05-29-long-blog-post.md +44 -44
  25. package/template/docusaurus/blog/2021-08-01-mdx-blog-post.mdx +20 -20
  26. package/template/docusaurus/blog/2021-08-26-welcome/index.md +25 -25
  27. package/template/docusaurus/blog/authors.yml +17 -17
  28. package/template/docusaurus/docs/intro.mdx +47 -47
  29. package/template/docusaurus/docs/tutorial-basics/_category_.json +8 -8
  30. package/template/docusaurus/docs/tutorial-basics/congratulations.md +23 -23
  31. package/template/docusaurus/docs/tutorial-basics/create-a-blog-post.md +34 -34
  32. package/template/docusaurus/docs/tutorial-basics/create-a-document.md +57 -57
  33. package/template/docusaurus/docs/tutorial-basics/create-a-page.md +43 -43
  34. package/template/docusaurus/docs/tutorial-basics/deploy-your-site.md +31 -31
  35. package/template/docusaurus/docs/tutorial-basics/markdown-features.mdx +150 -150
  36. package/template/docusaurus/docs/tutorial-extras/_category_.json +7 -7
  37. package/template/docusaurus/docs/tutorial-extras/manage-docs-versions.md +55 -55
  38. package/template/docusaurus/docs/tutorial-extras/translate-your-site.md +88 -88
  39. package/template/docusaurus/docusaurus.config.js +116 -116
  40. package/template/docusaurus/package.json +52 -52
  41. package/template/docusaurus/sidebars.js +19 -19
  42. package/template/docusaurus/src/components/HomepageFeatures/index.tsx +70 -70
  43. package/template/docusaurus/src/components/HomepageFeatures/styles.module.css +11 -11
  44. package/template/docusaurus/src/css/custom.css +30 -30
  45. package/template/docusaurus/src/pages/index.module.css +23 -23
  46. package/template/docusaurus/src/pages/index.tsx +40 -40
  47. package/template/docusaurus/src/pages/markdown-page.md +7 -7
  48. package/template/docusaurus/static/img/undraw_docusaurus_mountain.svg +171 -171
  49. package/template/docusaurus/static/img/undraw_docusaurus_react.svg +170 -170
  50. package/template/docusaurus/static/img/undraw_docusaurus_tree.svg +40 -40
  51. package/template/docusaurus/tsconfig.json +7 -7
  52. package/template/lib/react/.eslintrc +84 -84
  53. package/template/lib/react/.storybook/main.ts +23 -23
  54. package/template/lib/react/.storybook/preview.ts +16 -16
  55. package/template/lib/react/.stylelintrc +29 -23
  56. package/template/lib/react/global.d.ts +18 -18
  57. package/template/lib/react/package.json +51 -51
  58. package/template/lib/react/postcss.config.cjs +9 -9
  59. package/template/lib/react/src/Introduction.mdx +3 -3
  60. package/template/lib/react/src/button/button.css +30 -30
  61. package/template/lib/react/src/button/button.stories.ts +43 -43
  62. package/template/lib/react/src/button/button.tsx +50 -50
  63. package/template/lib/react/src/button/index.ts +1 -1
  64. package/template/lib/react/src/index.ts +1 -1
  65. package/template/lib/react/tailwind.config.cjs +11 -11
  66. package/template/lib/react/tsconfig.json +26 -26
  67. package/template/lib/ts/.eslintrc +73 -73
  68. package/template/lib/ts/package.json +29 -29
  69. package/template/lib/ts/src/index.ts +5 -5
  70. package/template/lib/ts/tsconfig.json +19 -19
  71. package/template/nest/.eslintrc.js +25 -25
  72. package/template/nest/.gitignore +34 -34
  73. package/template/nest/.husky/pre-commit +4 -4
  74. package/template/nest/.prettierrc +6 -6
  75. package/template/nest/README.md +73 -73
  76. package/template/nest/nest-cli.json +5 -5
  77. package/template/nest/package.json +84 -84
  78. package/template/nest/src/app.controller.spec.ts +22 -22
  79. package/template/nest/src/app.controller.ts +12 -12
  80. package/template/nest/src/app.module.ts +10 -10
  81. package/template/nest/src/app.service.ts +8 -8
  82. package/template/nest/src/main.ts +10 -10
  83. package/template/nest/src/utils/transform.interceptor.ts +26 -26
  84. package/template/nest/test/app.e2e-spec.ts +24 -24
  85. package/template/nest/test/jest-e2e.json +9 -9
  86. package/template/nest/tsconfig.build.json +5 -5
  87. package/template/nest/tsconfig.json +21 -21
  88. package/template/web-app/next/.eslintrc.json +8 -8
  89. package/template/web-app/next/.gitignore +36 -36
  90. package/template/web-app/next/.husky/commit-msg +4 -4
  91. package/template/web-app/next/.husky/pre-commit +4 -4
  92. package/template/web-app/next/.stylelintrc +29 -23
  93. package/template/web-app/next/README.md +34 -34
  94. package/template/web-app/next/app/globals.css +22 -22
  95. package/template/web-app/next/app/layout.tsx +18 -18
  96. package/template/web-app/next/app/page.tsx +113 -113
  97. package/template/web-app/next/commitlint.config.cjs +1 -1
  98. package/template/web-app/next/next-env.d.ts +5 -5
  99. package/template/web-app/next/next.config.js +5 -5
  100. package/template/web-app/next/package.json +47 -47
  101. package/template/web-app/next/postcss.config.js +6 -6
  102. package/template/web-app/next/tailwind.config.js +20 -20
  103. package/template/web-app/next/tsconfig.json +21 -21
  104. package/template/web-app/react/.env +2 -2
  105. package/template/web-app/react/.env.development +2 -2
  106. package/template/web-app/react/.eslintignore +4 -4
  107. package/template/web-app/react/.eslintrc +92 -92
  108. package/template/web-app/react/.gitignore +27 -27
  109. package/template/web-app/react/.husky/commit-msg +4 -4
  110. package/template/web-app/react/.husky/pre-commit +4 -4
  111. package/template/web-app/react/.prettierignore +6 -6
  112. package/template/web-app/react/.stylelintignore +4 -4
  113. package/template/web-app/react/.stylelintrc +29 -23
  114. package/template/web-app/react/README.md +14 -14
  115. package/template/web-app/react/commitlint.config.cjs +1 -1
  116. package/template/web-app/react/domain/app/app.model.ts +7 -7
  117. package/template/web-app/react/domain/app/components/app.tsx +23 -17
  118. package/template/web-app/react/domain/app/components/index.ts +1 -1
  119. package/template/web-app/react/domain/app/index.ts +2 -2
  120. package/template/web-app/react/{router → domain/router}/home/ids.ts +3 -3
  121. package/template/web-app/react/{router → domain/router}/home/index.ts +2 -2
  122. package/template/web-app/{react-webpack → react/domain}/router/home/routes.tsx +13 -13
  123. package/template/web-app/{react-webpack → react/domain}/router/ids.ts +6 -6
  124. package/template/web-app/react/{router → domain/router}/index.ts +3 -4
  125. package/template/web-app/react/domain/router/router.tsx +28 -0
  126. package/template/web-app/react/domain/router/router.types.ts +3 -0
  127. package/template/web-app/react/index.css +3 -3
  128. package/template/web-app/react/index.html +13 -13
  129. package/template/web-app/react/main.tsx +5 -11
  130. package/template/web-app/react/mockUtils.ts +6 -6
  131. package/template/web-app/react/package.json +78 -77
  132. package/template/web-app/react/pages/home/home.css +1 -1
  133. package/template/web-app/react/pages/home/home.mock.ts +16 -16
  134. package/template/web-app/react/pages/home/home.tsx +13 -13
  135. package/template/web-app/react/pages/home/index.ts +1 -1
  136. package/template/web-app/react/pages/index.tsx +22 -21
  137. package/template/web-app/react/pages/not-found.tsx +3 -3
  138. package/template/web-app/react/postcss.config.cjs +9 -9
  139. package/template/web-app/react/scripts/createChunks.ts +26 -26
  140. package/template/web-app/react/scripts/index.ts +1 -1
  141. package/template/web-app/react/shared/hooks/defineRouter/defineRouter.types.ts +30 -0
  142. package/template/web-app/react/shared/hooks/defineRouter/deineRouter.tsx +160 -0
  143. package/template/web-app/react/shared/hooks/defineRouter/index.ts +2 -0
  144. package/template/web-app/react/shared/hooks/index.ts +6 -5
  145. package/template/web-app/react/shared/hooks/useInterval.ts +26 -26
  146. package/template/web-app/react/shared/hooks/useLoadingAction.ts +27 -27
  147. package/template/web-app/react/shared/hooks/useLowPriorityState.ts +26 -26
  148. package/template/web-app/react/shared/hooks/useSyncState.ts +15 -15
  149. package/template/web-app/react/shared/hooks/useVisible.ts +27 -27
  150. package/template/web-app/react/shared/service/api.ts +1 -1
  151. package/template/web-app/react/shared/service/index.ts +2 -2
  152. package/template/web-app/react/shared/service/request.ts +7 -7
  153. package/template/web-app/react/shared/tools/componentInstance.tsx +80 -78
  154. package/template/web-app/react/shared/tools/index.ts +1 -1
  155. package/template/web-app/react/shared/types/index.ts +1 -1
  156. package/template/web-app/react/shared/types/utils.ts +2 -2
  157. package/template/web-app/react/tailwind.config.cjs +17 -17
  158. package/template/web-app/react/tsconfig.json +28 -27
  159. package/template/web-app/react/tsconfig.node.json +10 -10
  160. package/template/web-app/react/vite-env.d.ts +12 -12
  161. package/template/web-app/react/vite.config.ts +65 -76
  162. package/template/web-app/react-webpack/.editorconfig +13 -13
  163. package/template/web-app/react-webpack/.env +2 -2
  164. package/template/web-app/react-webpack/.env.dev +2 -2
  165. package/template/web-app/react-webpack/.eslintignore +4 -4
  166. package/template/web-app/react-webpack/.eslintrc +119 -91
  167. package/template/web-app/react-webpack/.gitignore +26 -26
  168. package/template/web-app/react-webpack/.husky/commit-msg +4 -4
  169. package/template/web-app/react-webpack/.husky/pre-commit +4 -4
  170. package/template/web-app/react-webpack/.prettierignore +6 -6
  171. package/template/web-app/react-webpack/.stylelintignore +4 -4
  172. package/template/web-app/react-webpack/.stylelintrc +29 -23
  173. package/template/web-app/react-webpack/README.md +13 -13
  174. package/template/web-app/react-webpack/commitlint.config.js +1 -1
  175. package/template/web-app/react-webpack/domain/app/app.model.ts +7 -7
  176. package/template/web-app/react-webpack/domain/app/components/app.tsx +23 -17
  177. package/template/web-app/react-webpack/domain/app/components/index.ts +1 -1
  178. package/template/web-app/react-webpack/domain/app/index.ts +2 -2
  179. package/template/web-app/react-webpack/{router → domain/router}/home/ids.ts +3 -3
  180. package/template/web-app/react-webpack/{router → domain/router}/home/index.ts +2 -2
  181. package/template/web-app/{react → react-webpack/domain}/router/home/routes.tsx +13 -13
  182. package/template/web-app/{react → react-webpack/domain}/router/ids.ts +6 -6
  183. package/template/web-app/react-webpack/{router → domain/router}/index.ts +3 -4
  184. package/template/web-app/react-webpack/domain/router/router.tsx +28 -0
  185. package/template/web-app/react-webpack/domain/router/router.types.ts +3 -0
  186. package/template/web-app/react-webpack/global.d.ts +17 -17
  187. package/template/web-app/react-webpack/index.css +3 -3
  188. package/template/web-app/react-webpack/index.html +12 -12
  189. package/template/web-app/react-webpack/main.tsx +5 -11
  190. package/template/web-app/react-webpack/package.json +86 -89
  191. package/template/web-app/react-webpack/pages/home/home.tsx +6 -6
  192. package/template/web-app/react-webpack/pages/home/index.ts +1 -1
  193. package/template/web-app/react-webpack/pages/index.tsx +22 -21
  194. package/template/web-app/react-webpack/pages/not-found.tsx +3 -3
  195. package/template/web-app/react-webpack/postcss.config.js +9 -9
  196. package/template/web-app/react-webpack/shared/hooks/defineRouter/defineRouter.types.ts +30 -0
  197. package/template/web-app/react-webpack/shared/hooks/defineRouter/deineRouter.tsx +160 -0
  198. package/template/web-app/react-webpack/shared/hooks/defineRouter/index.ts +2 -0
  199. package/template/web-app/react-webpack/shared/hooks/index.ts +6 -5
  200. package/template/web-app/react-webpack/shared/hooks/useInterval.ts +26 -26
  201. package/template/web-app/react-webpack/shared/hooks/useLoadingAction.ts +27 -27
  202. package/template/web-app/react-webpack/shared/hooks/useLowPriorityState.ts +26 -26
  203. package/template/web-app/react-webpack/shared/hooks/useSyncState.ts +15 -15
  204. package/template/web-app/react-webpack/shared/hooks/useVisible.ts +27 -27
  205. package/template/web-app/react-webpack/shared/service/index.ts +1 -1
  206. package/template/web-app/react-webpack/shared/service/request.ts +7 -7
  207. package/template/web-app/react-webpack/shared/tools/componentInstance.tsx +78 -78
  208. package/template/web-app/react-webpack/shared/tools/index.ts +1 -1
  209. package/template/web-app/react-webpack/shared/types/index.ts +1 -1
  210. package/template/web-app/react-webpack/shared/types/utils.ts +2 -2
  211. package/template/web-app/react-webpack/tailwind.config.js +17 -17
  212. package/template/web-app/react-webpack/tsconfig.json +38 -27
  213. package/template/web-app/react-webpack/tsconfig.node.json +9 -9
  214. package/template/web-app/react-webpack/webpack.config.mjs +162 -163
  215. package/template/web-app/react-webpack/webpack_config/constant.mjs +5 -5
  216. package/template/web-app/solid/.gitignore +1 -1
  217. package/template/web-app/solid/.stylelintrc +29 -23
  218. package/template/web-app/solid/README.md +34 -34
  219. package/template/web-app/solid/index.html +16 -16
  220. package/template/web-app/solid/package.json +51 -51
  221. package/template/web-app/solid/src/app.container.tsx +12 -12
  222. package/template/web-app/solid/src/index.css +15 -15
  223. package/template/web-app/solid/src/index.tsx +15 -15
  224. package/template/web-app/solid/src/layout/index.ts +1 -1
  225. package/template/web-app/solid/src/layout/layout.container.tsx +5 -5
  226. package/template/web-app/solid/src/pages/home/home.container.tsx +5 -5
  227. package/template/web-app/solid/src/pages/home/index.ts +1 -1
  228. package/template/web-app/solid/src/pages/notFound/index.ts +1 -1
  229. package/template/web-app/solid/src/pages/notFound/notFound.container.tsx +3 -3
  230. package/template/web-app/solid/src/router/home/index.ts +2 -2
  231. package/template/web-app/solid/src/router/home/paths.ts +3 -3
  232. package/template/web-app/solid/src/router/home/routes.tsx +12 -12
  233. package/template/web-app/solid/src/router/index.ts +2 -2
  234. package/template/web-app/solid/src/router/paths.ts +5 -5
  235. package/template/web-app/solid/src/router/routes.ts +16 -16
  236. package/template/web-app/solid/tsconfig.json +20 -20
  237. package/template/web-app/solid/vite.config.ts +23 -23
  238. package/template/web-app/svelte/.env +2 -2
  239. package/template/web-app/svelte/.env.development +2 -2
  240. package/template/web-app/svelte/.eslintignore +13 -13
  241. package/template/web-app/svelte/.eslintrc +76 -76
  242. package/template/web-app/svelte/.gitignore +27 -27
  243. package/template/web-app/svelte/.husky/commit-msg +4 -4
  244. package/template/web-app/svelte/.husky/pre-commit +4 -4
  245. package/template/web-app/svelte/.prettierignore +6 -6
  246. package/template/web-app/svelte/.prettierrc +14 -14
  247. package/template/web-app/svelte/.svelte-kit/ambient.d.ts +153 -153
  248. package/template/web-app/svelte/.svelte-kit/generated/client/app.js +18 -18
  249. package/template/web-app/svelte/.svelte-kit/generated/root.svelte +55 -55
  250. package/template/web-app/svelte/.svelte-kit/generated/server/internal.js +30 -30
  251. package/template/web-app/svelte/.svelte-kit/tsconfig.json +38 -38
  252. package/template/web-app/svelte/.svelte-kit/types/route_meta_data.json +2 -2
  253. package/template/web-app/svelte/.svelte-kit/types/src/routes/$types.d.ts +19 -19
  254. package/template/web-app/svelte/README.md +38 -38
  255. package/template/web-app/svelte/commitlint.config.cjs +1 -1
  256. package/template/web-app/svelte/package.json +51 -51
  257. package/template/web-app/svelte/scripts/createChunks.ts +26 -26
  258. package/template/web-app/svelte/scripts/index.ts +1 -1
  259. package/template/web-app/svelte/src/app.d.ts +12 -12
  260. package/template/web-app/svelte/src/app.html +12 -12
  261. package/template/web-app/svelte/src/routes/+page.svelte +2 -2
  262. package/template/web-app/svelte/svelte.config.js +18 -18
  263. package/template/web-app/svelte/tsconfig.json +21 -21
  264. package/template/web-app/svelte/vite-env.d.ts +12 -12
  265. package/template/web-app/svelte/vite.config.ts +49 -49
  266. package/template/web-app/vue/.env +2 -2
  267. package/template/web-app/vue/.env.development +2 -2
  268. package/template/web-app/vue/.eslintignore +4 -4
  269. package/template/web-app/vue/.eslintrc +104 -104
  270. package/template/web-app/vue/.gitignore +27 -27
  271. package/template/web-app/vue/.prettierignore +6 -6
  272. package/template/web-app/vue/.stylelintignore +4 -4
  273. package/template/web-app/vue/.stylelintrc +29 -23
  274. package/template/web-app/vue/README.md +13 -13
  275. package/template/web-app/vue/domain/app/app.ts +4 -4
  276. package/template/web-app/vue/domain/app/components/app.vue +18 -18
  277. package/template/web-app/vue/domain/app/components/index.ts +1 -1
  278. package/template/web-app/vue/domain/app/createComponentInstance.ts +44 -44
  279. package/template/web-app/vue/main.ts +6 -6
  280. package/template/web-app/vue/mockUtils.ts +6 -6
  281. package/template/web-app/vue/package.json +70 -68
  282. package/template/web-app/vue/pages/home/home.mock.ts +16 -16
  283. package/template/web-app/vue/pages/home/home.vue +13 -13
  284. package/template/web-app/vue/pages/home/index.ts +1 -1
  285. package/template/web-app/vue/pages/index.ts +1 -1
  286. package/template/web-app/vue/pages/index.vue +3 -3
  287. package/template/web-app/vue/pages/not-found.vue +3 -3
  288. package/template/web-app/vue/router/home/index.ts +2 -2
  289. package/template/web-app/vue/router/home/names.ts +3 -3
  290. package/template/web-app/vue/router/home/routes.ts +8 -8
  291. package/template/web-app/vue/router/index.ts +26 -26
  292. package/template/web-app/vue/router/names.ts +5 -5
  293. package/template/web-app/vue/scripts/createChunks.ts +26 -26
  294. package/template/web-app/vue/scripts/index.ts +1 -1
  295. package/template/web-app/vue/shared/hooks/index.ts +2 -2
  296. package/template/web-app/vue/shared/hooks/useList.ts +104 -104
  297. package/template/web-app/vue/shared/hooks/useVisible.ts +27 -27
  298. package/template/web-app/vue/shared/service/api.ts +1 -1
  299. package/template/web-app/vue/shared/service/index.ts +2 -2
  300. package/template/web-app/vue/shared/service/request.ts +7 -7
  301. package/template/web-app/vue/style.css +3 -3
  302. package/template/web-app/vue/tailwind.config.cjs +18 -18
  303. package/template/web-app/vue/tsconfig.json +24 -24
  304. package/template/web-app/vue/vite-env.d.ts +18 -18
  305. package/template/web-app/vue/vite.config.ts +68 -83
  306. package/template/web-extension/.env +1 -1
  307. package/template/web-extension/.env.development +1 -1
  308. package/template/web-extension/.eslintignore +4 -4
  309. package/template/web-extension/.eslintrc +94 -83
  310. package/template/web-extension/.gitignore +26 -26
  311. package/template/web-extension/.husky/commit-msg +4 -4
  312. package/template/web-extension/.husky/pre-commit +4 -4
  313. package/template/web-extension/.prettierignore +6 -6
  314. package/template/web-extension/.stylelintignore +4 -4
  315. package/template/web-extension/.stylelintrc +29 -23
  316. package/template/web-extension/.vscode/extensions.json +7 -7
  317. package/template/web-extension/README.md +14 -14
  318. package/template/web-extension/background/index.ts +0 -0
  319. package/template/web-extension/commitlint.config.cjs +1 -1
  320. package/template/web-extension/content_script/content.css +3 -3
  321. package/template/web-extension/content_script/content.tsx +5 -5
  322. package/template/web-extension/content_script/index.tsx +12 -12
  323. package/template/web-extension/defineManifest.ts +32 -27
  324. package/template/web-extension/package.json +76 -71
  325. package/template/web-extension/pnpm-lock.yaml +6220 -0
  326. package/template/web-extension/popup/index.tsx +9 -9
  327. package/template/web-extension/popup/popup.container.tsx +5 -5
  328. package/template/web-extension/popup/popup.css +3 -3
  329. package/template/web-extension/popup/popup.html +13 -13
  330. package/template/web-extension/postcss.config.cjs +9 -9
  331. package/template/web-extension/shared/background/index.ts +1 -0
  332. package/template/web-extension/shared/background/message.ts +11 -0
  333. package/template/web-extension/shared/constant/index.ts +0 -0
  334. package/template/web-extension/shared/content/index.ts +1 -0
  335. package/template/web-extension/shared/content/message.ts +15 -0
  336. package/template/web-extension/shared/hooks/index.ts +2 -2
  337. package/template/web-extension/shared/hooks/useSyncState.ts +15 -15
  338. package/template/web-extension/shared/hooks/useVisible.ts +27 -27
  339. package/template/web-extension/shared/popup/index.ts +1 -0
  340. package/template/web-extension/shared/popup/message.ts +12 -0
  341. package/template/web-extension/shared/service/index.ts +1 -1
  342. package/template/web-extension/shared/service/request.ts +5 -5
  343. package/template/web-extension/shared/service/tools/base.ts +33 -33
  344. package/template/web-extension/shared/service/tools/createRequestActions.ts +80 -58
  345. package/template/web-extension/shared/service/tools/createService.ts +45 -46
  346. package/template/web-extension/shared/service/tools/{createServiceHooks.ts → hooks.ts} +28 -26
  347. package/template/web-extension/shared/service/tools/index.ts +4 -4
  348. package/template/web-extension/shared/service/types.ts +46 -40
  349. package/template/web-extension/shared/tools/index.ts +1 -0
  350. package/template/web-extension/shared/tools/message.ts +80 -0
  351. package/template/web-extension/shared/types/index.ts +1 -1
  352. package/template/web-extension/shared/types/utils.ts +3 -19
  353. package/template/web-extension/tailwind.config.cjs +13 -13
  354. package/template/web-extension/tsconfig.json +28 -28
  355. package/template/web-extension/tsconfig.node.json +10 -10
  356. package/template/web-extension/vite-env.d.ts +10 -10
  357. package/template/web-extension/vite.config.ts +35 -40
  358. package/template/workspace/nx/.editorconfig +13 -13
  359. package/template/workspace/nx/.eslintignore +1 -1
  360. package/template/workspace/nx/.eslintrc.json +35 -35
  361. package/template/workspace/nx/.gitignore +41 -41
  362. package/template/workspace/nx/.husky/commit-msg +4 -4
  363. package/template/workspace/nx/.husky/pre-commit +4 -4
  364. package/template/workspace/nx/.prettierignore +2 -2
  365. package/template/workspace/nx/.prettierrc +18 -18
  366. package/template/workspace/nx/.stylelintrc.json +11 -11
  367. package/template/workspace/nx/.vscode/extensions.json +9 -9
  368. package/template/workspace/nx/README.md +17 -17
  369. package/template/workspace/nx/commitlint.config.cjs +1 -1
  370. package/template/workspace/nx/jest.config.ts +5 -5
  371. package/template/workspace/nx/jest.preset.js +3 -3
  372. package/template/workspace/nx/lerna.json +10 -10
  373. package/template/workspace/nx/nx.json +53 -53
  374. package/template/workspace/nx/package.json +130 -130
  375. package/template/workspace/nx/packages/vue-lib/.eslintrc.json +21 -21
  376. package/template/workspace/nx/packages/vue-lib/README.md +3 -3
  377. package/template/workspace/nx/packages/vue-lib/jest.config.ts +20 -20
  378. package/template/workspace/nx/packages/vue-lib/package.json +12 -12
  379. package/template/workspace/nx/packages/vue-lib/project.json +40 -40
  380. package/template/workspace/nx/packages/vue-lib/src/index.ts +2 -2
  381. package/template/workspace/nx/packages/vue-lib/src/lib/HelloWorld.vue +11 -11
  382. package/template/workspace/nx/packages/vue-lib/src/shims-vue.d.ts +6 -6
  383. package/template/workspace/nx/packages/vue-lib/tests/unit/example.spec.ts +9 -9
  384. package/template/workspace/nx/packages/vue-lib/tsconfig.json +20 -20
  385. package/template/workspace/nx/packages/vue-lib/tsconfig.lib.json +22 -22
  386. package/template/workspace/nx/packages/vue-lib/tsconfig.spec.json +19 -19
  387. package/template/workspace/nx/packages/vue-lib/vite.config.ts +49 -49
  388. package/template/workspace/nx/pnpm-workspace.yaml +2 -2
  389. package/template/workspace/nx/scripts/patch-nx-dep-graph.js +40 -40
  390. package/template/workspace/nx/tools/tsconfig.tools.json +12 -12
  391. package/template/workspace/nx/tsconfig.base.json +22 -22
  392. package/template/workspace/pnpm/.changeset/README.md +8 -8
  393. package/template/workspace/pnpm/.changeset/config.json +11 -11
  394. package/template/workspace/pnpm/.gitignore +36 -36
  395. package/template/workspace/pnpm/.prettierrc.js +21 -21
  396. package/template/workspace/pnpm/commitlint.config.cjs +1 -1
  397. package/template/workspace/pnpm/package.json +40 -40
  398. package/template/workspace/pnpm/packages/test/.eslintrc +73 -73
  399. package/template/workspace/pnpm/packages/test/package.json +23 -23
  400. package/template/workspace/pnpm/packages/test/src/index.ts +5 -5
  401. package/template/workspace/pnpm/packages/test/tsconfig.json +18 -18
  402. package/template/workspace/pnpm/pnpm-workspace.yaml +2 -2
  403. package/template/workspace/pnpm/scripts/build.ts +7 -7
  404. package/template/workspace/pnpm/tsconfig.json +18 -18
  405. package/template/web-app/react/router/router.controller.ts +0 -18
  406. package/template/web-app/react/router/router.tool.ts +0 -41
  407. package/template/web-app/react/router/router.tsx +0 -43
  408. package/template/web-app/react/router/router.types.ts +0 -6
  409. package/template/web-app/react-webpack/router/router.controller.ts +0 -18
  410. package/template/web-app/react-webpack/router/router.tool.ts +0 -41
  411. package/template/web-app/react-webpack/router/router.tsx +0 -43
  412. package/template/web-app/react-webpack/router/router.types.ts +0 -6
  413. package/template/web-extension/content_script/content.spec.tsx +0 -15
  414. package/template/workspace/nx/node_modules/.pnpm/minipass-fetch@3.0.3/node_modules/minipass-sized/.gitignore +0 -22
  415. package/template/workspace/nx/node_modules/.pnpm/minipass-sized@1.0.3/node_modules/minipass-sized/.gitignore +0 -22
  416. package/template/workspace/nx/node_modules/.pnpm/node_modules/minipass-sized/.gitignore +0 -22
  417. package/template/workspace/nx/node_modules/.pnpm/node_modules/npm-normalize-package-bin/.gitignore +0 -24
  418. package/template/workspace/nx/node_modules/.pnpm/npm-bundled@1.1.2/node_modules/npm-normalize-package-bin/.gitignore +0 -24
  419. package/template/workspace/nx/node_modules/.pnpm/npm-normalize-package-bin@1.0.1/node_modules/npm-normalize-package-bin/.gitignore +0 -24
  420. package/template/workspace/nx/node_modules/.pnpm/npm-packlist@5.1.1/node_modules/npm-normalize-package-bin/.gitignore +0 -24
@@ -1,21 +1,21 @@
1
- // 配置文档: https://prettier.io/docs/en/options.html
2
- // ----------------------------------------------------------------------
3
- module.exports = {
4
- overrides: [
5
- {
6
- files: '.prettierrc',
7
- options: { parser: 'json' }
8
- }
9
- ],
10
- printWidth: 100,
11
- tabWidth: 4,
12
- useTabs: false,
13
- semi: false,
14
- singleQuote: true,
15
- trailingComma: 'none',
16
- bracketSpacing: true,
17
- jsxBracketSameLine: true,
18
- arrowParens: 'avoid',
19
- rangeStart: 0,
20
- Parser: 'none'
21
- }
1
+ // 配置文档: https://prettier.io/docs/en/options.html
2
+ // ----------------------------------------------------------------------
3
+ module.exports = {
4
+ overrides: [
5
+ {
6
+ files: '.prettierrc',
7
+ options: { parser: 'json' }
8
+ }
9
+ ],
10
+ printWidth: 100,
11
+ tabWidth: 4,
12
+ useTabs: false,
13
+ semi: false,
14
+ singleQuote: true,
15
+ trailingComma: 'none',
16
+ bracketSpacing: true,
17
+ jsxBracketSameLine: true,
18
+ arrowParens: 'avoid',
19
+ rangeStart: 0,
20
+ Parser: 'none'
21
+ }
@@ -1 +1 @@
1
- module.exports = { extends: ['@commitlint/config-conventional'] }
1
+ module.exports = { extends: ['@commitlint/config-conventional'] }
@@ -1,40 +1,40 @@
1
- {
2
- "name": "my-lib",
3
- "version": "1.0.0",
4
- "description": "",
5
- "private": true,
6
- "main": "index.js",
7
- "scripts": {
8
- "build": "pnpm run clean:dist && ts-node ./scripts/build.ts",
9
- "changeVersion": "pnpm changeset && pnpm changeset version && pnpm run clear:changelog",
10
- "clear:changelog": "pnpm -r exec rimraf CHANGELOG.md",
11
- "commit": "git add . && cz",
12
- "push": "pnpm run commit && git push",
13
- "login": "npm login --registry https://registry.npmjs.org",
14
- "clean:dist": "pnpm -r exec rimraf dist",
15
- "pub": "pnpm run build && pnpm run changeVersion && pnpm run push && pnpm -r publish --registry https://registry.npmjs.org"
16
- },
17
- "keywords": [],
18
- "author": "kevily",
19
- "license": "ISC",
20
- "config": {
21
- "commitizen": {
22
- "path": "@commitlint/cz-commitlint"
23
- }
24
- },
25
- "dependencies": {
26
- "1k-tasks": "3.6.0",
27
- "@commitlint/config-conventional": "17.6.6",
28
- "@commitlint/cz-commitlint": "17.5.0",
29
- "commitizen": "4.3.0",
30
- "rimraf": "5.0.1"
31
- },
32
- "devDependencies": {
33
- "@changesets/cli": "2.26.2",
34
- "@types/node": "20.3.2",
35
- "inquirer": "8",
36
- "prettier": "2.8.8",
37
- "ts-node": "10.9.1",
38
- "typescript": "5.1.3"
39
- }
40
- }
1
+ {
2
+ "name": "my-lib",
3
+ "version": "1.0.0",
4
+ "description": "",
5
+ "private": true,
6
+ "main": "index.js",
7
+ "scripts": {
8
+ "build": "pnpm run clean:dist && ts-node ./scripts/build.ts",
9
+ "changeVersion": "pnpm changeset && pnpm changeset version && pnpm run clear:changelog",
10
+ "clear:changelog": "pnpm -r exec rimraf CHANGELOG.md",
11
+ "commit": "git add . && cz",
12
+ "push": "pnpm run commit && git push",
13
+ "login": "npm login --registry https://registry.npmjs.org",
14
+ "clean:dist": "pnpm -r exec rimraf dist",
15
+ "pub": "pnpm run build && pnpm run changeVersion && pnpm run push && pnpm -r publish --registry https://registry.npmjs.org"
16
+ },
17
+ "keywords": [],
18
+ "author": "kevily",
19
+ "license": "ISC",
20
+ "config": {
21
+ "commitizen": {
22
+ "path": "@commitlint/cz-commitlint"
23
+ }
24
+ },
25
+ "dependencies": {
26
+ "1k-tasks": "3.6.0",
27
+ "@commitlint/config-conventional": "17.6.6",
28
+ "@commitlint/cz-commitlint": "17.5.0",
29
+ "commitizen": "4.3.0",
30
+ "rimraf": "5.0.1"
31
+ },
32
+ "devDependencies": {
33
+ "@changesets/cli": "2.26.2",
34
+ "@types/node": "20.3.2",
35
+ "inquirer": "8",
36
+ "prettier": "2.8.8",
37
+ "ts-node": "10.9.1",
38
+ "typescript": "5.1.3"
39
+ }
40
+ }
@@ -1,73 +1,73 @@
1
- {
2
- "root": true,
3
- "parser": "@typescript-eslint/parser",
4
- "plugins": ["prettier"],
5
- "extends": [
6
- "eslint:recommended",
7
- "plugin:@typescript-eslint/recommended",
8
- "plugin:import/recommended",
9
- "plugin:import/typescript"
10
- ],
11
- "settings": {
12
- "import/resolver": {
13
- "typescript": true,
14
- "node": true
15
- }
16
- },
17
- "env": {
18
- "browser": true,
19
- "node": true,
20
- "es6": true,
21
- "jest": true
22
- },
23
- "parserOptions": {
24
- "ecmaVersion": 2018,
25
- "sourceType": "module",
26
- "ecmaFeatures": {
27
- "jsx": true
28
- },
29
- "useJSXTextNode": true
30
- },
31
- "rules": {
32
- "import/export": "off",
33
- "import/namespace": "off",
34
- "import/order": [
35
- "error",
36
- {
37
- "groups": [
38
- "builtin",
39
- "external",
40
- "internal",
41
- "parent",
42
- "sibling",
43
- "index",
44
- "object",
45
- "type"
46
- ]
47
- }
48
- ],
49
- "@typescript-eslint/no-var-requires": 0,
50
- "@typescript-eslint/explicit-function-return-type": "off",
51
- "@typescript-eslint/no-explicit-any": 0,
52
- "@typescript-eslint/no-non-null-assertion": "off",
53
- "@typescript-eslint/no-inferrable-types": [
54
- "warn",
55
- {
56
- "ignoreParameters": true
57
- }
58
- ],
59
- "@typescript-eslint/no-unused-vars": ["warn", { "argsIgnorePattern": "^_" }],
60
- "@typescript-eslint/member-delimiter-style": 0,
61
- "@typescript-eslint/class-name-casing": 0,
62
- "@typescript-eslint/explicit-module-boundary-types": "off",
63
- "@typescript-eslint/ban-ts-comment": "off",
64
- "@typescript-eslint/no-empty-interface": "off",
65
- "prettier/prettier": [
66
- "error",
67
- {
68
- "endOfLine": "auto"
69
- }
70
- ],
71
- "no-constant-condition": "off"
72
- }
73
- }
1
+ {
2
+ "root": true,
3
+ "parser": "@typescript-eslint/parser",
4
+ "plugins": ["prettier"],
5
+ "extends": [
6
+ "eslint:recommended",
7
+ "plugin:@typescript-eslint/recommended",
8
+ "plugin:import/recommended",
9
+ "plugin:import/typescript"
10
+ ],
11
+ "settings": {
12
+ "import/resolver": {
13
+ "typescript": true,
14
+ "node": true
15
+ }
16
+ },
17
+ "env": {
18
+ "browser": true,
19
+ "node": true,
20
+ "es6": true,
21
+ "jest": true
22
+ },
23
+ "parserOptions": {
24
+ "ecmaVersion": 2018,
25
+ "sourceType": "module",
26
+ "ecmaFeatures": {
27
+ "jsx": true
28
+ },
29
+ "useJSXTextNode": true
30
+ },
31
+ "rules": {
32
+ "import/export": "off",
33
+ "import/namespace": "off",
34
+ "import/order": [
35
+ "error",
36
+ {
37
+ "groups": [
38
+ "builtin",
39
+ "external",
40
+ "internal",
41
+ "parent",
42
+ "sibling",
43
+ "index",
44
+ "object",
45
+ "type"
46
+ ]
47
+ }
48
+ ],
49
+ "@typescript-eslint/no-var-requires": 0,
50
+ "@typescript-eslint/explicit-function-return-type": "off",
51
+ "@typescript-eslint/no-explicit-any": 0,
52
+ "@typescript-eslint/no-non-null-assertion": "off",
53
+ "@typescript-eslint/no-inferrable-types": [
54
+ "warn",
55
+ {
56
+ "ignoreParameters": true
57
+ }
58
+ ],
59
+ "@typescript-eslint/no-unused-vars": ["warn", { "argsIgnorePattern": "^_" }],
60
+ "@typescript-eslint/member-delimiter-style": 0,
61
+ "@typescript-eslint/class-name-casing": 0,
62
+ "@typescript-eslint/explicit-module-boundary-types": "off",
63
+ "@typescript-eslint/ban-ts-comment": "off",
64
+ "@typescript-eslint/no-empty-interface": "off",
65
+ "prettier/prettier": [
66
+ "error",
67
+ {
68
+ "endOfLine": "auto"
69
+ }
70
+ ],
71
+ "no-constant-condition": "off"
72
+ }
73
+ }
@@ -1,23 +1,23 @@
1
- {
2
- "name": "test",
3
- "version": "1.0.0",
4
- "description": "",
5
- "main": "dist/index.js",
6
- "types": "dist/index.d.ts",
7
- "scripts": {
8
- "build": "tsc"
9
- },
10
- "license": "ISC",
11
- "devDependencies": {
12
- "@typescript-eslint/eslint-plugin": "5.60.1",
13
- "@typescript-eslint/parser": "5.60.1",
14
- "eslint": "8.43.0",
15
- "eslint-import-resolver-typescript": "3.5.5",
16
- "eslint-plugin-import": "2.27.5",
17
- "eslint-plugin-prettier": "4.2.1",
18
- "prettier": "2.8.8",
19
- "stylelint": "15.9.0",
20
- "stylelint-config-standard": "33.0.0",
21
- "typescript": "5.1.3"
22
- }
23
- }
1
+ {
2
+ "name": "test",
3
+ "version": "1.0.0",
4
+ "description": "",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "scripts": {
8
+ "build": "tsc"
9
+ },
10
+ "license": "ISC",
11
+ "devDependencies": {
12
+ "@typescript-eslint/eslint-plugin": "5.60.1",
13
+ "@typescript-eslint/parser": "5.60.1",
14
+ "eslint": "8.43.0",
15
+ "eslint-import-resolver-typescript": "3.5.5",
16
+ "eslint-plugin-import": "2.27.5",
17
+ "eslint-plugin-prettier": "4.2.1",
18
+ "prettier": "2.8.8",
19
+ "stylelint": "15.9.0",
20
+ "stylelint-config-standard-scss": "13.0.0",
21
+ "typescript": "5.1.3"
22
+ }
23
+ }
@@ -1,5 +1,5 @@
1
- function run() {
2
- console.log(1)
3
- }
4
-
5
- run()
1
+ function run() {
2
+ console.log(1)
3
+ }
4
+
5
+ run()
@@ -1,18 +1,18 @@
1
- {
2
- "compilerOptions": {
3
- "module": "ESNext",
4
- "esModuleInterop": true,
5
- "allowSyntheticDefaultImports": true,
6
- "allowJs": true,
7
- "strictNullChecks": true,
8
- "target": "ESNext",
9
- "noImplicitAny": false,
10
- "moduleResolution": "node",
11
- "sourceMap": false,
12
- "declaration": true,
13
- "outDir": "dist",
14
- "baseUrl": "."
15
- },
16
- "include": ["src/**/*"],
17
- "exclude": ["node_modules/**/*"]
18
- }
1
+ {
2
+ "compilerOptions": {
3
+ "module": "ESNext",
4
+ "esModuleInterop": true,
5
+ "allowSyntheticDefaultImports": true,
6
+ "allowJs": true,
7
+ "strictNullChecks": true,
8
+ "target": "ESNext",
9
+ "noImplicitAny": false,
10
+ "moduleResolution": "node",
11
+ "sourceMap": false,
12
+ "declaration": true,
13
+ "outDir": "dist",
14
+ "baseUrl": "."
15
+ },
16
+ "include": ["src/**/*"],
17
+ "exclude": ["node_modules/**/*"]
18
+ }
@@ -1,2 +1,2 @@
1
- packages:
2
- - 'packages/**/*'
1
+ packages:
2
+ - 'packages/**/*'
@@ -1,7 +1,7 @@
1
- import { Engine, babel } from '1k-tasks'
2
- import * as path from 'path'
3
-
4
- const reactTask = new Engine({ root: path.join(process.cwd(), 'packages/test') })
5
- reactTask.registry('babel', babel)
6
-
7
- reactTask.run()
1
+ import { Engine, babel } from '1k-tasks'
2
+ import * as path from 'path'
3
+
4
+ const reactTask = new Engine({ root: path.join(process.cwd(), 'packages/test') })
5
+ reactTask.registry('babel', babel)
6
+
7
+ reactTask.run()
@@ -1,18 +1,18 @@
1
- {
2
- "compilerOptions": {
3
- "module": "CommonJS",
4
- "esModuleInterop": true,
5
- "allowSyntheticDefaultImports": true,
6
- "allowJs": true,
7
- "strictNullChecks": true,
8
- "target": "ESNext",
9
- "noImplicitAny": false,
10
- "moduleResolution": "node",
11
- "sourceMap": false,
12
- "declaration": true,
13
- "outDir": "lib",
14
- "baseUrl": "."
15
- },
16
- "include": ["tasks/**/*"],
17
- "exclude": ["node_modules/**/*"]
18
- }
1
+ {
2
+ "compilerOptions": {
3
+ "module": "CommonJS",
4
+ "esModuleInterop": true,
5
+ "allowSyntheticDefaultImports": true,
6
+ "allowJs": true,
7
+ "strictNullChecks": true,
8
+ "target": "ESNext",
9
+ "noImplicitAny": false,
10
+ "moduleResolution": "node",
11
+ "sourceMap": false,
12
+ "declaration": true,
13
+ "outDir": "lib",
14
+ "baseUrl": "."
15
+ },
16
+ "include": ["tasks/**/*"],
17
+ "exclude": ["node_modules/**/*"]
18
+ }
@@ -1,18 +0,0 @@
1
- import { useMemo } from 'react'
2
- import { useMatches, useSearchParams } from 'react-router-dom'
3
- import { parse } from 'qs'
4
- import { map } from 'lodash-es'
5
- import { getRoute } from '@/router/router.tool'
6
- import { routeType } from '@/router/router.types'
7
-
8
- export function useQuery<Q extends Record<string, any>>() {
9
- const [params] = useSearchParams()
10
- const query = parse(params.toString())
11
-
12
- return query as Q
13
- }
14
-
15
- export function useMatchesRoute(): routeType[] {
16
- const matches = useMatches()
17
- return useMemo(() => map(matches, o => getRoute(o.id)), [matches])
18
- }
@@ -1,41 +0,0 @@
1
- import { NavigateOptions } from 'react-router-dom'
2
- import { get } from 'lodash-es'
3
- import { stringify } from 'qs'
4
- import { routeType } from '@/router/router.types'
5
- import { router, routesById } from './router'
6
-
7
- export function getRoute(id: routeType['id'], path?: string | string[]) {
8
- const route = routesById[id]
9
- if (path) {
10
- return get(route, path)
11
- }
12
- return route
13
- }
14
-
15
- export function genRouteUrl(id: routeType['id'], query?: Record<string, any>) {
16
- const path = getRoute(id, 'path')
17
- if (path) {
18
- const { origin } = window.location
19
- let url = origin + import.meta.env.VITE_BASE_URL + path
20
- url += query ? `?${stringify(query)}` : ''
21
- return url
22
- }
23
- return void 0
24
- }
25
-
26
- export function openRoute(id: routeType['id'], query?: Record<string, any>) {
27
- const url = genRouteUrl(id, query)
28
- if (url) {
29
- window.open(url)
30
- }
31
- }
32
-
33
- export function navigate(
34
- to: { id: routeType['id']; query?: Record<string, any> },
35
- opts?: NavigateOptions
36
- ) {
37
- return router.navigate(
38
- { pathname: getRoute(to.id, 'path'), search: to.query ? stringify(to.query) : '' },
39
- opts
40
- )
41
- }
@@ -1,43 +0,0 @@
1
- import { lazy } from 'react'
2
- import { createBrowserRouter } from 'react-router-dom'
3
- import { assign, isArray, reduce } from 'lodash-es'
4
- import ids from './ids'
5
- import * as home from './home'
6
- import type { routeType } from './router.types'
7
-
8
- const routes: routeType[] = [
9
- {
10
- path: '/',
11
- id: ids.root,
12
- Component: lazy(() => import('@/pages')),
13
- children: [
14
- ...home.routes,
15
- {
16
- path: '*',
17
- id: ids.notFound,
18
- Component: lazy(() => import('@/pages/not-found'))
19
- }
20
- ]
21
- }
22
- ]
23
-
24
- export const routesById = (function flat(routes: routeType[], parentRoute?: routeType) {
25
- return reduce(
26
- routes,
27
- (result, route) => {
28
- if (parentRoute) {
29
- route.path = `${parentRoute.path === '/' ? '' : parentRoute.path}/${route.path}`
30
- }
31
- result[route.id] = route
32
- if (isArray(route.children)) {
33
- assign(result, flat(route.children, route))
34
- }
35
- return result
36
- },
37
- {} as Record<routeType['id'], routeType>
38
- )
39
- })(routes)
40
-
41
- export const router = createBrowserRouter(routes as never, {
42
- basename: import.meta.env.VITE_BASE_URL
43
- })
@@ -1,6 +0,0 @@
1
- import { RouteObject } from 'react-router-dom'
2
-
3
- export type routeType = Omit<RouteObject, 'children' | 'id'> & {
4
- id: string
5
- children?: routeType[]
6
- }
@@ -1,18 +0,0 @@
1
- import { useMemo } from 'react'
2
- import { useMatches, useSearchParams } from 'react-router-dom'
3
- import { parse } from 'qs'
4
- import { map } from 'lodash-es'
5
- import { getRoute } from '@/router/router.tool'
6
- import { routeType } from '@/router/router.types'
7
-
8
- export function useQuery<Q extends Record<string, any>>() {
9
- const [params] = useSearchParams()
10
- const query = parse(params.toString())
11
-
12
- return query as Q
13
- }
14
-
15
- export function useMatchesRoute(): routeType[] {
16
- const matches = useMatches()
17
- return useMemo(() => map(matches, o => getRoute(o.id)), [matches])
18
- }
@@ -1,41 +0,0 @@
1
- import { NavigateOptions } from 'react-router-dom'
2
- import { get } from 'lodash-es'
3
- import { stringify } from 'qs'
4
- import { routeType } from '@/router/router.types'
5
- import { router, routesById } from './router'
6
-
7
- export function getRoute(id: routeType['id'], path?: string | string[]) {
8
- const route = routesById[id]
9
- if (path) {
10
- return get(route, path)
11
- }
12
- return route
13
- }
14
-
15
- export function genRouteUrl(id: routeType['id'], query?: Record<string, any>) {
16
- const path = getRoute(id, 'path')
17
- if (path) {
18
- const { origin } = window.location
19
- let url = origin + ENV_BASE_URL + path
20
- url += query ? `?${stringify(query)}` : ''
21
- return url
22
- }
23
- return void 0
24
- }
25
-
26
- export function openRoute(id: routeType['id'], query?: Record<string, any>) {
27
- const url = genRouteUrl(id, query)
28
- if (url) {
29
- window.open(url)
30
- }
31
- }
32
-
33
- export function navigate(
34
- to: { id: routeType['id']; query?: Record<string, any> },
35
- opts?: NavigateOptions
36
- ) {
37
- return router.navigate(
38
- { pathname: getRoute(to.id, 'path'), search: to.query ? stringify(to.query) : '' },
39
- opts
40
- )
41
- }
@@ -1,43 +0,0 @@
1
- import { lazy } from 'react'
2
- import { createBrowserRouter } from 'react-router-dom'
3
- import { assign, isArray, reduce } from 'lodash-es'
4
- import ids from './ids'
5
- import * as home from './home'
6
- import type { routeType } from './router.types'
7
-
8
- const routes: routeType[] = [
9
- {
10
- path: '/',
11
- id: ids.root,
12
- Component: lazy(() => import('@/pages')),
13
- children: [
14
- ...home.routes,
15
- {
16
- path: '*',
17
- id: ids.notFound,
18
- Component: lazy(() => import('@/pages/not-found'))
19
- }
20
- ]
21
- }
22
- ]
23
-
24
- export const routesById = (function flat(routes: routeType[], parentRoute?: routeType) {
25
- return reduce(
26
- routes,
27
- (result, route) => {
28
- if (parentRoute) {
29
- route.path = `${parentRoute.path === '/' ? '' : parentRoute.path}/${route.path}`
30
- }
31
- result[route.id] = route
32
- if (isArray(route.children)) {
33
- assign(result, flat(route.children, route))
34
- }
35
- return result
36
- },
37
- {} as Record<routeType['id'], routeType>
38
- )
39
- })(routes)
40
-
41
- export const router = createBrowserRouter(routes as never, {
42
- basename: ENV_BASE_URL
43
- })
@@ -1,6 +0,0 @@
1
- import { RouteObject } from 'react-router-dom'
2
-
3
- export type routeType = Omit<RouteObject, 'children' | 'id'> & {
4
- id: string
5
- children?: routeType[]
6
- }