@vef-framework/starter 1.0.135 → 2.0.2

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 (600) hide show
  1. package/README +15 -0
  2. package/dist/cjs/components/access-denied/access-denied-icon.cjs +210 -0
  3. package/dist/cjs/components/access-denied/index.cjs +47 -0
  4. package/dist/cjs/components/app/index.cjs +47 -0
  5. package/dist/cjs/components/app/props.cjs +3 -0
  6. package/dist/cjs/components/base-layout/index.cjs +45 -0
  7. package/dist/cjs/components/base-layout/props.cjs +3 -0
  8. package/dist/cjs/components/base-layout/styles.cjs +57 -0
  9. package/dist/cjs/components/base-layout/use-base-layout.cjs +41 -0
  10. package/dist/cjs/components/crud/components/action-button-group.cjs +20 -0
  11. package/dist/cjs/components/crud/components/index.cjs +20 -0
  12. package/dist/cjs/components/crud/components/main.cjs +57 -0
  13. package/dist/cjs/components/crud/components/mutation-holder.cjs +40 -0
  14. package/dist/cjs/components/crud/components/operation-button-group.cjs +22 -0
  15. package/dist/cjs/components/crud/components/scene-form.cjs +84 -0
  16. package/dist/cjs/components/crud/components/selection-indicator.cjs +83 -0
  17. package/dist/cjs/components/crud/components/toolbar-actions.cjs +19 -0
  18. package/dist/cjs/components/crud/components/toolbar.cjs +38 -0
  19. package/dist/cjs/components/crud/event.cjs +12 -0
  20. package/dist/cjs/components/crud/helpers.cjs +26 -0
  21. package/dist/cjs/components/crud/hooks/index.cjs +14 -0
  22. package/dist/cjs/components/crud/hooks/use-query-observer.cjs +37 -0
  23. package/dist/cjs/components/crud/hooks/use-search-values.cjs +12 -0
  24. package/dist/cjs/components/crud/hooks/use-selected-rows.cjs +12 -0
  25. package/dist/cjs/components/crud/index.cjs +46 -0
  26. package/dist/cjs/components/crud/props.cjs +3 -0
  27. package/dist/cjs/components/crud/store.cjs +93 -0
  28. package/dist/cjs/components/crud/styles.cjs +34 -0
  29. package/dist/cjs/components/crud-page/index.cjs +19 -0
  30. package/dist/cjs/components/crud-page/props.cjs +3 -0
  31. package/dist/cjs/components/error/error-icon.cjs +179 -0
  32. package/dist/cjs/components/error/index.cjs +69 -0
  33. package/dist/cjs/components/flex-card/index.cjs +18 -0
  34. package/dist/cjs/components/flex-card/props.cjs +3 -0
  35. package/dist/cjs/components/flex-card/styles.cjs +26 -0
  36. package/dist/cjs/components/form-drawer/components/form-actions.cjs +38 -0
  37. package/dist/cjs/components/form-drawer/components/index.cjs +10 -0
  38. package/dist/cjs/components/form-drawer/index.cjs +112 -0
  39. package/dist/cjs/components/form-modal/components/form-actions.cjs +38 -0
  40. package/dist/cjs/components/form-modal/components/index.cjs +10 -0
  41. package/dist/cjs/components/form-modal/index.cjs +88 -0
  42. package/dist/cjs/components/index.cjs +45 -0
  43. package/dist/cjs/components/layout/components/footer.cjs +27 -0
  44. package/dist/cjs/components/layout/components/header/boy-icon.cjs +20 -0
  45. package/dist/cjs/components/layout/components/header/breadcrumb-navigation.cjs +90 -0
  46. package/dist/cjs/components/layout/components/header/color-scheme.cjs +40 -0
  47. package/dist/cjs/components/layout/components/header/fullscreen.cjs +23 -0
  48. package/dist/cjs/components/layout/components/header/girl-icon.cjs +21 -0
  49. package/dist/cjs/components/layout/components/header/index.cjs +88 -0
  50. package/dist/cjs/components/layout/components/header/menu-burger.cjs +24 -0
  51. package/dist/cjs/components/layout/components/header/menu-fold-left-icon.cjs +20 -0
  52. package/dist/cjs/components/layout/components/header/menu-unfold-left-icon.cjs +20 -0
  53. package/dist/cjs/components/layout/components/header/search.cjs +22 -0
  54. package/dist/cjs/components/layout/components/header/theme-config.cjs +23 -0
  55. package/dist/cjs/components/layout/components/header/user-avatar.cjs +86 -0
  56. package/dist/cjs/components/layout/components/honeycomb-pattern.cjs +39 -0
  57. package/dist/cjs/components/layout/components/index.cjs +20 -0
  58. package/dist/cjs/components/layout/components/logo.cjs +60 -0
  59. package/dist/cjs/components/layout/components/menu.cjs +95 -0
  60. package/dist/cjs/components/layout/components/search/index.cjs +79 -0
  61. package/dist/cjs/components/layout/components/search/keyboard-arrow-down-icon.cjs +15 -0
  62. package/dist/cjs/components/layout/components/search/keyboard-arrow-up-icon.cjs +15 -0
  63. package/dist/cjs/components/layout/components/search/keyboard-control-icon.cjs +15 -0
  64. package/dist/cjs/components/layout/components/search/keyboard-esc-icon.cjs +15 -0
  65. package/dist/cjs/components/layout/components/search/keyboard-help.cjs +46 -0
  66. package/dist/cjs/components/layout/components/search/keyboard-return-icon.cjs +15 -0
  67. package/dist/cjs/components/layout/components/search/keyboard-shift-icon.cjs +15 -0
  68. package/dist/cjs/components/layout/components/search/keyboard.cjs +32 -0
  69. package/dist/cjs/components/layout/components/search/letter-s-icon.cjs +15 -0
  70. package/dist/cjs/components/layout/components/search/search-result-item.cjs +69 -0
  71. package/dist/cjs/components/layout/components/search/search-result.cjs +135 -0
  72. package/dist/cjs/components/layout/components/sidebar.cjs +54 -0
  73. package/dist/cjs/components/layout/components/tabs/context-menu.cjs +96 -0
  74. package/dist/cjs/components/layout/components/tabs/index.cjs +40 -0
  75. package/dist/cjs/components/layout/components/tabs/main-content-maximum.cjs +23 -0
  76. package/dist/cjs/components/layout/components/tabs/reload.cjs +21 -0
  77. package/dist/cjs/components/layout/components/tabs/tab-item.cjs +84 -0
  78. package/dist/cjs/components/layout/components/tabs/tab-list.cjs +91 -0
  79. package/dist/cjs/components/layout/components/tabs/tabs-container.cjs +85 -0
  80. package/dist/cjs/components/layout/components/theme-config/color-scheme-switcher.cjs +49 -0
  81. package/dist/cjs/components/layout/components/theme-config/color-scheme.cjs +57 -0
  82. package/dist/cjs/components/layout/components/theme-config/config-item.cjs +27 -0
  83. package/dist/cjs/components/layout/components/theme-config/index.cjs +59 -0
  84. package/dist/cjs/components/layout/components/theme-config/menu-layout-card.cjs +75 -0
  85. package/dist/cjs/components/layout/components/theme-config/menu-layout.cjs +33 -0
  86. package/dist/cjs/components/layout/components/theme-config/operations.cjs +22 -0
  87. package/dist/cjs/components/layout/components/theme-config/theme-color-picker.cjs +33 -0
  88. package/dist/cjs/components/layout/components/theme-config/theme-colors.cjs +29 -0
  89. package/dist/cjs/components/layout/hooks/index.cjs +14 -0
  90. package/dist/cjs/components/layout/hooks/use-color-scheme-updater.cjs +72 -0
  91. package/dist/cjs/components/layout/hooks/use-menu-navigate.cjs +29 -0
  92. package/dist/cjs/components/layout/hooks/use-tab-navigate.cjs +39 -0
  93. package/dist/cjs/components/layout/index.cjs +81 -0
  94. package/dist/cjs/components/layout/props.cjs +3 -0
  95. package/dist/cjs/components/layout/store.cjs +23 -0
  96. package/dist/cjs/components/layout/styles.cjs +16 -0
  97. package/dist/cjs/components/login/icon-login.cjs +149 -0
  98. package/dist/cjs/components/login/index.cjs +162 -0
  99. package/dist/cjs/components/login/payload.cjs +3 -0
  100. package/dist/cjs/components/login/props.cjs +3 -0
  101. package/dist/cjs/components/login/styles.cjs +97 -0
  102. package/dist/cjs/components/login/welcome-messages.cjs +135 -0
  103. package/dist/cjs/components/logo-icon/index.cjs +22 -0
  104. package/dist/cjs/components/logo-icon/props.cjs +3 -0
  105. package/dist/cjs/components/n-progress/components/bar.cjs +53 -0
  106. package/dist/cjs/components/n-progress/components/container.cjs +25 -0
  107. package/dist/cjs/components/n-progress/components/index.cjs +12 -0
  108. package/dist/cjs/components/n-progress/event.cjs +10 -0
  109. package/dist/cjs/components/n-progress/index.cjs +34 -0
  110. package/dist/cjs/components/not-found/index.cjs +47 -0
  111. package/dist/cjs/components/not-found/not-found-icon.cjs +205 -0
  112. package/dist/cjs/components/page/index.cjs +58 -0
  113. package/dist/cjs/components/page/props.cjs +3 -0
  114. package/dist/cjs/components/page/scroll-content.cjs +65 -0
  115. package/dist/cjs/components/page/styles.cjs +86 -0
  116. package/dist/cjs/components/page/use-page-key.cjs +22 -0
  117. package/dist/cjs/components/page/viewport-context.cjs +19 -0
  118. package/dist/cjs/components/pro-search/components/advanced-search-toggler.cjs +23 -0
  119. package/dist/cjs/components/pro-search/components/advanced-search.cjs +30 -0
  120. package/dist/cjs/components/pro-search/components/index.cjs +14 -0
  121. package/dist/cjs/components/pro-search/components/search-actions.cjs +36 -0
  122. package/dist/cjs/components/pro-search/index.cjs +70 -0
  123. package/dist/cjs/components/pro-search/styles.cjs +65 -0
  124. package/dist/cjs/components/pro-table/components/index.cjs +17 -0
  125. package/dist/cjs/components/pro-table/components/operation-button-group.cjs +22 -0
  126. package/dist/cjs/components/pro-table/components/ref.cjs +24 -0
  127. package/dist/cjs/components/pro-table/components/table-subscriber.cjs +25 -0
  128. package/dist/cjs/components/pro-table/components/table-summary.cjs +15 -0
  129. package/dist/cjs/components/pro-table/components/table-title.cjs +15 -0
  130. package/dist/cjs/components/pro-table/components/table.cjs +132 -0
  131. package/dist/cjs/components/pro-table/context.cjs +15 -0
  132. package/dist/cjs/components/pro-table/event.cjs +12 -0
  133. package/dist/cjs/components/pro-table/hooks/index.cjs +12 -0
  134. package/dist/cjs/components/pro-table/hooks/use-row-selection.cjs +43 -0
  135. package/dist/cjs/components/pro-table/hooks/use-table-columns.cjs +60 -0
  136. package/dist/cjs/components/pro-table/index.cjs +53 -0
  137. package/dist/cjs/components/pro-table/store.cjs +40 -0
  138. package/dist/cjs/components/router-provider/context.cjs +15 -0
  139. package/dist/cjs/components/router-provider/index.cjs +29 -0
  140. package/dist/cjs/components/router-provider/props.cjs +3 -0
  141. package/dist/cjs/components/theme-config-provider/global-style.cjs +20 -0
  142. package/dist/cjs/components/theme-config-provider/index.cjs +19 -0
  143. package/dist/cjs/components/theme-config-provider/use-color-mode-effect.cjs +35 -0
  144. package/dist/cjs/components/theme-config-provider/use-theme-config.cjs +73 -0
  145. package/dist/cjs/constants/event.cjs +8 -0
  146. package/dist/cjs/constants/index.cjs +23 -0
  147. package/dist/cjs/constants/router.cjs +18 -0
  148. package/dist/cjs/constants/storage.cjs +10 -0
  149. package/dist/cjs/constants/symbols.cjs +10 -0
  150. package/dist/cjs/helpers/api.cjs +50 -0
  151. package/dist/cjs/helpers/app-version.cjs +227 -0
  152. package/dist/cjs/helpers/app.cjs +37 -0
  153. package/dist/cjs/helpers/auth.cjs +24 -0
  154. package/dist/cjs/helpers/event.cjs +24 -0
  155. package/dist/cjs/helpers/index.cjs +25 -0
  156. package/dist/cjs/helpers/query.cjs +27 -0
  157. package/dist/cjs/helpers/router.cjs +110 -0
  158. package/dist/cjs/hooks/index.cjs +10 -0
  159. package/dist/cjs/hooks/use-route-full-path.cjs +32 -0
  160. package/dist/cjs/index.cjs +83 -0
  161. package/dist/cjs/routes/access-denied.cjs +31 -0
  162. package/dist/cjs/routes/index.cjs +16 -0
  163. package/dist/cjs/routes/layout.cjs +140 -0
  164. package/dist/cjs/routes/login.cjs +41 -0
  165. package/dist/cjs/routes/root.cjs +35 -0
  166. package/dist/cjs/stores/app.cjs +25 -0
  167. package/dist/cjs/stores/index.cjs +14 -0
  168. package/dist/cjs/stores/tab.cjs +101 -0
  169. package/dist/cjs/stores/theme.cjs +32 -0
  170. package/dist/es/components/access-denied/access-denied-icon.js +206 -0
  171. package/dist/es/components/access-denied/index.js +43 -0
  172. package/dist/es/components/app/index.js +43 -0
  173. package/dist/es/components/app/props.js +1 -0
  174. package/dist/es/components/base-layout/index.js +41 -0
  175. package/dist/es/components/base-layout/props.js +1 -0
  176. package/dist/es/components/base-layout/styles.js +47 -0
  177. package/dist/es/components/base-layout/use-base-layout.js +37 -0
  178. package/dist/es/components/crud/components/action-button-group.js +16 -0
  179. package/dist/es/components/crud/components/index.js +7 -0
  180. package/dist/es/components/crud/components/main.js +53 -0
  181. package/dist/es/components/crud/components/mutation-holder.js +36 -0
  182. package/dist/es/components/crud/components/operation-button-group.js +18 -0
  183. package/dist/es/components/crud/components/scene-form.js +80 -0
  184. package/dist/es/components/crud/components/selection-indicator.js +79 -0
  185. package/dist/es/components/crud/components/toolbar-actions.js +15 -0
  186. package/dist/es/components/crud/components/toolbar.js +34 -0
  187. package/dist/es/components/crud/event.js +8 -0
  188. package/dist/es/components/crud/helpers.js +22 -0
  189. package/dist/es/components/crud/hooks/index.js +4 -0
  190. package/dist/es/components/crud/hooks/use-query-observer.js +33 -0
  191. package/dist/es/components/crud/hooks/use-search-values.js +8 -0
  192. package/dist/es/components/crud/hooks/use-selected-rows.js +8 -0
  193. package/dist/es/components/crud/index.js +41 -0
  194. package/dist/es/components/crud/props.js +1 -0
  195. package/dist/es/components/crud/store.js +87 -0
  196. package/dist/es/components/crud/styles.js +28 -0
  197. package/dist/es/components/crud-page/index.js +15 -0
  198. package/dist/es/components/crud-page/props.js +1 -0
  199. package/dist/es/components/error/error-icon.js +175 -0
  200. package/dist/es/components/error/index.js +65 -0
  201. package/dist/es/components/flex-card/index.js +14 -0
  202. package/dist/es/components/flex-card/props.js +1 -0
  203. package/dist/es/components/flex-card/styles.js +22 -0
  204. package/dist/es/components/form-drawer/components/form-actions.js +34 -0
  205. package/dist/es/components/form-drawer/components/index.js +2 -0
  206. package/dist/es/components/form-drawer/index.js +108 -0
  207. package/dist/es/components/form-modal/components/form-actions.js +34 -0
  208. package/dist/es/components/form-modal/components/index.js +2 -0
  209. package/dist/es/components/form-modal/index.js +84 -0
  210. package/dist/es/components/index.js +20 -0
  211. package/dist/es/components/layout/components/footer.js +23 -0
  212. package/dist/es/components/layout/components/header/boy-icon.js +16 -0
  213. package/dist/es/components/layout/components/header/breadcrumb-navigation.js +86 -0
  214. package/dist/es/components/layout/components/header/color-scheme.js +36 -0
  215. package/dist/es/components/layout/components/header/fullscreen.js +19 -0
  216. package/dist/es/components/layout/components/header/girl-icon.js +17 -0
  217. package/dist/es/components/layout/components/header/index.js +84 -0
  218. package/dist/es/components/layout/components/header/menu-burger.js +20 -0
  219. package/dist/es/components/layout/components/header/menu-fold-left-icon.js +16 -0
  220. package/dist/es/components/layout/components/header/menu-unfold-left-icon.js +16 -0
  221. package/dist/es/components/layout/components/header/search.js +18 -0
  222. package/dist/es/components/layout/components/header/theme-config.js +19 -0
  223. package/dist/es/components/layout/components/header/user-avatar.js +82 -0
  224. package/dist/es/components/layout/components/honeycomb-pattern.js +35 -0
  225. package/dist/es/components/layout/components/index.js +7 -0
  226. package/dist/es/components/layout/components/logo.js +56 -0
  227. package/dist/es/components/layout/components/menu.js +91 -0
  228. package/dist/es/components/layout/components/search/index.js +75 -0
  229. package/dist/es/components/layout/components/search/keyboard-arrow-down-icon.js +11 -0
  230. package/dist/es/components/layout/components/search/keyboard-arrow-up-icon.js +11 -0
  231. package/dist/es/components/layout/components/search/keyboard-control-icon.js +11 -0
  232. package/dist/es/components/layout/components/search/keyboard-esc-icon.js +11 -0
  233. package/dist/es/components/layout/components/search/keyboard-help.js +42 -0
  234. package/dist/es/components/layout/components/search/keyboard-return-icon.js +11 -0
  235. package/dist/es/components/layout/components/search/keyboard-shift-icon.js +11 -0
  236. package/dist/es/components/layout/components/search/keyboard.js +28 -0
  237. package/dist/es/components/layout/components/search/letter-s-icon.js +11 -0
  238. package/dist/es/components/layout/components/search/search-result-item.js +65 -0
  239. package/dist/es/components/layout/components/search/search-result.js +131 -0
  240. package/dist/es/components/layout/components/sidebar.js +50 -0
  241. package/dist/es/components/layout/components/tabs/context-menu.js +92 -0
  242. package/dist/es/components/layout/components/tabs/index.js +36 -0
  243. package/dist/es/components/layout/components/tabs/main-content-maximum.js +19 -0
  244. package/dist/es/components/layout/components/tabs/reload.js +17 -0
  245. package/dist/es/components/layout/components/tabs/tab-item.js +80 -0
  246. package/dist/es/components/layout/components/tabs/tab-list.js +87 -0
  247. package/dist/es/components/layout/components/tabs/tabs-container.js +81 -0
  248. package/dist/es/components/layout/components/theme-config/color-scheme-switcher.js +45 -0
  249. package/dist/es/components/layout/components/theme-config/color-scheme.js +53 -0
  250. package/dist/es/components/layout/components/theme-config/config-item.js +23 -0
  251. package/dist/es/components/layout/components/theme-config/index.js +55 -0
  252. package/dist/es/components/layout/components/theme-config/menu-layout-card.js +71 -0
  253. package/dist/es/components/layout/components/theme-config/menu-layout.js +29 -0
  254. package/dist/es/components/layout/components/theme-config/operations.js +18 -0
  255. package/dist/es/components/layout/components/theme-config/theme-color-picker.js +29 -0
  256. package/dist/es/components/layout/components/theme-config/theme-colors.js +25 -0
  257. package/dist/es/components/layout/hooks/index.js +4 -0
  258. package/dist/es/components/layout/hooks/use-color-scheme-updater.js +68 -0
  259. package/dist/es/components/layout/hooks/use-menu-navigate.js +25 -0
  260. package/dist/es/components/layout/hooks/use-tab-navigate.js +35 -0
  261. package/dist/es/components/layout/index.js +77 -0
  262. package/dist/es/components/layout/props.js +1 -0
  263. package/dist/es/components/layout/store.js +18 -0
  264. package/dist/es/components/layout/styles.js +12 -0
  265. package/dist/es/components/login/icon-login.js +145 -0
  266. package/dist/es/components/login/index.js +158 -0
  267. package/dist/es/components/login/payload.js +1 -0
  268. package/dist/es/components/login/props.js +1 -0
  269. package/dist/es/components/login/styles.js +85 -0
  270. package/dist/es/components/login/welcome-messages.js +130 -0
  271. package/dist/es/components/logo-icon/index.js +18 -0
  272. package/dist/es/components/logo-icon/props.js +1 -0
  273. package/dist/es/components/n-progress/components/bar.js +49 -0
  274. package/dist/es/components/n-progress/components/container.js +21 -0
  275. package/dist/es/components/n-progress/components/index.js +3 -0
  276. package/dist/es/components/n-progress/event.js +6 -0
  277. package/dist/es/components/n-progress/index.js +29 -0
  278. package/dist/es/components/not-found/index.js +43 -0
  279. package/dist/es/components/not-found/not-found-icon.js +201 -0
  280. package/dist/es/components/page/index.js +53 -0
  281. package/dist/es/components/page/props.js +1 -0
  282. package/dist/es/components/page/scroll-content.js +61 -0
  283. package/dist/es/components/page/styles.js +73 -0
  284. package/dist/es/components/page/use-page-key.js +18 -0
  285. package/dist/es/components/page/viewport-context.js +14 -0
  286. package/dist/es/components/pro-search/components/advanced-search-toggler.js +19 -0
  287. package/dist/es/components/pro-search/components/advanced-search.js +26 -0
  288. package/dist/es/components/pro-search/components/index.js +4 -0
  289. package/dist/es/components/pro-search/components/search-actions.js +32 -0
  290. package/dist/es/components/pro-search/index.js +66 -0
  291. package/dist/es/components/pro-search/styles.js +57 -0
  292. package/dist/es/components/pro-table/components/index.js +5 -0
  293. package/dist/es/components/pro-table/components/operation-button-group.js +18 -0
  294. package/dist/es/components/pro-table/components/ref.js +20 -0
  295. package/dist/es/components/pro-table/components/table-subscriber.js +21 -0
  296. package/dist/es/components/pro-table/components/table-summary.js +11 -0
  297. package/dist/es/components/pro-table/components/table-title.js +11 -0
  298. package/dist/es/components/pro-table/components/table.js +127 -0
  299. package/dist/es/components/pro-table/context.js +10 -0
  300. package/dist/es/components/pro-table/event.js +8 -0
  301. package/dist/es/components/pro-table/hooks/index.js +3 -0
  302. package/dist/es/components/pro-table/hooks/use-row-selection.js +39 -0
  303. package/dist/es/components/pro-table/hooks/use-table-columns.js +56 -0
  304. package/dist/es/components/pro-table/index.js +49 -0
  305. package/dist/es/components/pro-table/store.js +34 -0
  306. package/dist/es/components/router-provider/context.js +10 -0
  307. package/dist/es/components/router-provider/index.js +25 -0
  308. package/dist/es/components/router-provider/props.js +1 -0
  309. package/dist/es/components/theme-config-provider/global-style.js +16 -0
  310. package/dist/es/components/theme-config-provider/index.js +15 -0
  311. package/dist/es/components/theme-config-provider/use-color-mode-effect.js +31 -0
  312. package/dist/es/components/theme-config-provider/use-theme-config.js +69 -0
  313. package/dist/es/constants/event.js +4 -0
  314. package/dist/es/constants/index.js +5 -0
  315. package/dist/es/constants/router.js +9 -0
  316. package/dist/es/constants/storage.js +5 -0
  317. package/dist/es/constants/symbols.js +5 -0
  318. package/dist/es/helpers/api.js +46 -0
  319. package/dist/es/helpers/app-version.js +223 -0
  320. package/dist/es/helpers/app.js +33 -0
  321. package/dist/es/helpers/auth.js +20 -0
  322. package/dist/es/helpers/event.js +18 -0
  323. package/dist/es/helpers/index.js +8 -0
  324. package/dist/es/helpers/query.js +22 -0
  325. package/dist/es/helpers/router.js +106 -0
  326. package/dist/es/hooks/index.js +2 -0
  327. package/dist/es/hooks/use-route-full-path.js +28 -0
  328. package/dist/es/index.js +36 -0
  329. package/dist/es/routes/access-denied.js +27 -0
  330. package/dist/es/routes/index.js +5 -0
  331. package/dist/es/routes/layout.js +136 -0
  332. package/dist/es/routes/login.js +37 -0
  333. package/dist/es/routes/root.js +31 -0
  334. package/dist/es/stores/app.js +21 -0
  335. package/dist/es/stores/index.js +4 -0
  336. package/dist/es/stores/tab.js +97 -0
  337. package/dist/es/stores/theme.js +28 -0
  338. package/dist/types/components/access-denied/access-denied-icon.d.ts +2 -0
  339. package/dist/types/components/access-denied/index.d.ts +1 -0
  340. package/dist/types/components/app/index.d.ts +4 -0
  341. package/dist/types/components/app/props.d.ts +21 -0
  342. package/dist/types/components/base-layout/index.d.ts +3 -0
  343. package/dist/types/components/base-layout/props.d.ts +70 -0
  344. package/dist/types/components/base-layout/styles.d.ts +8 -0
  345. package/dist/types/components/base-layout/use-base-layout.d.ts +9 -0
  346. package/dist/types/components/crud/components/action-button-group.d.ts +8 -0
  347. package/dist/types/components/crud/components/index.d.ts +6 -0
  348. package/dist/types/components/crud/components/main.d.ts +6 -0
  349. package/dist/types/components/crud/components/mutation-holder.d.ts +10 -0
  350. package/dist/types/components/crud/components/operation-button-group.d.ts +8 -0
  351. package/dist/types/components/crud/components/scene-form.d.ts +7 -0
  352. package/dist/types/components/crud/components/selection-indicator.d.ts +6 -0
  353. package/dist/types/components/crud/components/toolbar-actions.d.ts +6 -0
  354. package/dist/types/components/crud/components/toolbar.d.ts +8 -0
  355. package/dist/types/components/crud/event.d.ts +3 -0
  356. package/dist/types/components/crud/helpers.d.ts +18 -0
  357. package/dist/types/components/crud/hooks/index.d.ts +3 -0
  358. package/dist/types/components/crud/hooks/use-query-observer.d.ts +11 -0
  359. package/dist/types/components/crud/hooks/use-search-values.d.ts +2 -0
  360. package/dist/types/components/crud/hooks/use-selected-rows.d.ts +2 -0
  361. package/dist/types/components/crud/index.d.ts +7 -0
  362. package/dist/types/components/crud/props.d.ts +153 -0
  363. package/dist/types/components/crud/store.d.ts +145 -0
  364. package/dist/types/components/crud/styles.d.ts +4 -0
  365. package/dist/types/components/crud/types.d.ts +48 -0
  366. package/dist/types/components/crud-page/index.d.ts +3 -0
  367. package/dist/types/components/crud-page/props.d.ts +20 -0
  368. package/dist/types/components/error/error-icon.d.ts +2 -0
  369. package/dist/types/components/error/index.d.ts +2 -0
  370. package/dist/types/components/error/props.d.ts +6 -0
  371. package/dist/types/components/flex-card/index.d.ts +3 -0
  372. package/dist/types/components/flex-card/props.d.ts +3 -0
  373. package/dist/types/components/flex-card/styles.d.ts +2 -0
  374. package/dist/types/components/form-drawer/components/form-actions.d.ts +18 -0
  375. package/dist/types/components/form-drawer/components/index.d.ts +1 -0
  376. package/dist/types/components/form-drawer/index.d.ts +5 -0
  377. package/dist/types/components/form-drawer/props.d.ts +70 -0
  378. package/dist/types/components/form-modal/components/form-actions.d.ts +18 -0
  379. package/dist/types/components/form-modal/components/index.d.ts +1 -0
  380. package/dist/types/components/form-modal/index.d.ts +5 -0
  381. package/dist/types/components/form-modal/props.d.ts +66 -0
  382. package/dist/types/components/index.d.ts +19 -0
  383. package/dist/types/components/layout/components/footer.d.ts +1 -0
  384. package/dist/types/components/layout/components/header/boy-icon.d.ts +2 -0
  385. package/dist/types/components/layout/components/header/breadcrumb-navigation.d.ts +2 -0
  386. package/dist/types/components/layout/components/header/color-scheme.d.ts +5 -0
  387. package/dist/types/components/layout/components/header/fullscreen.d.ts +5 -0
  388. package/dist/types/components/layout/components/header/girl-icon.d.ts +2 -0
  389. package/dist/types/components/layout/components/header/index.d.ts +5 -0
  390. package/dist/types/components/layout/components/header/menu-burger.d.ts +5 -0
  391. package/dist/types/components/layout/components/header/menu-fold-left-icon.d.ts +2 -0
  392. package/dist/types/components/layout/components/header/menu-unfold-left-icon.d.ts +2 -0
  393. package/dist/types/components/layout/components/header/search.d.ts +5 -0
  394. package/dist/types/components/layout/components/header/theme-config.d.ts +5 -0
  395. package/dist/types/components/layout/components/header/user-avatar.d.ts +6 -0
  396. package/dist/types/components/layout/components/honeycomb-pattern.d.ts +1 -0
  397. package/dist/types/components/layout/components/index.d.ts +6 -0
  398. package/dist/types/components/layout/components/logo.d.ts +8 -0
  399. package/dist/types/components/layout/components/menu.d.ts +7 -0
  400. package/dist/types/components/layout/components/search/index.d.ts +1 -0
  401. package/dist/types/components/layout/components/search/keyboard-arrow-down-icon.d.ts +2 -0
  402. package/dist/types/components/layout/components/search/keyboard-arrow-up-icon.d.ts +2 -0
  403. package/dist/types/components/layout/components/search/keyboard-control-icon.d.ts +2 -0
  404. package/dist/types/components/layout/components/search/keyboard-esc-icon.d.ts +2 -0
  405. package/dist/types/components/layout/components/search/keyboard-help.d.ts +1 -0
  406. package/dist/types/components/layout/components/search/keyboard-return-icon.d.ts +2 -0
  407. package/dist/types/components/layout/components/search/keyboard-shift-icon.d.ts +2 -0
  408. package/dist/types/components/layout/components/search/keyboard.d.ts +6 -0
  409. package/dist/types/components/layout/components/search/letter-s-icon.d.ts +2 -0
  410. package/dist/types/components/layout/components/search/search-result-item.d.ts +8 -0
  411. package/dist/types/components/layout/components/search/search-result.d.ts +5 -0
  412. package/dist/types/components/layout/components/sidebar.d.ts +6 -0
  413. package/dist/types/components/layout/components/tabs/context-menu.d.ts +6 -0
  414. package/dist/types/components/layout/components/tabs/index.d.ts +1 -0
  415. package/dist/types/components/layout/components/tabs/main-content-maximum.d.ts +5 -0
  416. package/dist/types/components/layout/components/tabs/reload.d.ts +5 -0
  417. package/dist/types/components/layout/components/tabs/tab-item.d.ts +10 -0
  418. package/dist/types/components/layout/components/tabs/tab-list.d.ts +1 -0
  419. package/dist/types/components/layout/components/tabs/tabs-container.d.ts +1 -0
  420. package/dist/types/components/layout/components/theme-config/color-scheme-switcher.d.ts +1 -0
  421. package/dist/types/components/layout/components/theme-config/color-scheme.d.ts +1 -0
  422. package/dist/types/components/layout/components/theme-config/config-item.d.ts +7 -0
  423. package/dist/types/components/layout/components/theme-config/index.d.ts +1 -0
  424. package/dist/types/components/layout/components/theme-config/menu-layout-card.d.ts +7 -0
  425. package/dist/types/components/layout/components/theme-config/menu-layout.d.ts +1 -0
  426. package/dist/types/components/layout/components/theme-config/operations.d.ts +1 -0
  427. package/dist/types/components/layout/components/theme-config/theme-color-picker.d.ts +6 -0
  428. package/dist/types/components/layout/components/theme-config/theme-colors.d.ts +1 -0
  429. package/dist/types/components/layout/hooks/index.d.ts +3 -0
  430. package/dist/types/components/layout/hooks/use-color-scheme-updater.d.ts +13 -0
  431. package/dist/types/components/layout/hooks/use-menu-navigate.d.ts +7 -0
  432. package/dist/types/components/layout/hooks/use-tab-navigate.d.ts +11 -0
  433. package/dist/types/components/layout/index.d.ts +3 -0
  434. package/dist/types/components/layout/props.d.ts +28 -0
  435. package/dist/types/components/layout/store.d.ts +17 -0
  436. package/dist/types/components/layout/styles.d.ts +2 -0
  437. package/dist/types/components/login/icon-login.d.ts +2 -0
  438. package/dist/types/components/login/index.d.ts +4 -0
  439. package/dist/types/components/login/payload.d.ts +45 -0
  440. package/dist/types/components/login/props.d.ts +27 -0
  441. package/dist/types/components/login/styles.d.ts +10 -0
  442. package/dist/types/components/login/welcome-messages.d.ts +11 -0
  443. package/dist/types/components/logo-icon/index.d.ts +3 -0
  444. package/dist/types/components/logo-icon/props.d.ts +10 -0
  445. package/dist/types/components/n-progress/components/bar.d.ts +5 -0
  446. package/dist/types/components/n-progress/components/container.d.ts +7 -0
  447. package/dist/types/components/n-progress/components/index.d.ts +2 -0
  448. package/dist/types/components/n-progress/event.d.ts +7 -0
  449. package/dist/types/components/n-progress/index.d.ts +2 -0
  450. package/dist/types/components/not-found/index.d.ts +1 -0
  451. package/dist/types/components/not-found/not-found-icon.d.ts +2 -0
  452. package/dist/types/components/page/index.d.ts +4 -0
  453. package/dist/types/components/page/props.d.ts +51 -0
  454. package/dist/types/components/page/scroll-content.d.ts +8 -0
  455. package/dist/types/components/page/styles.d.ts +11 -0
  456. package/dist/types/components/page/use-page-key.d.ts +1 -0
  457. package/dist/types/components/page/viewport-context.d.ts +7 -0
  458. package/dist/types/components/pro-search/components/advanced-search-toggler.d.ts +7 -0
  459. package/dist/types/components/pro-search/components/advanced-search.d.ts +6 -0
  460. package/dist/types/components/pro-search/components/index.d.ts +3 -0
  461. package/dist/types/components/pro-search/components/search-actions.d.ts +22 -0
  462. package/dist/types/components/pro-search/index.d.ts +5 -0
  463. package/dist/types/components/pro-search/props.d.ts +66 -0
  464. package/dist/types/components/pro-search/styles.d.ts +6 -0
  465. package/dist/types/components/pro-table/components/index.d.ts +4 -0
  466. package/dist/types/components/pro-table/components/operation-button-group.d.ts +7 -0
  467. package/dist/types/components/pro-table/components/ref.d.ts +3 -0
  468. package/dist/types/components/pro-table/components/table-subscriber.d.ts +9 -0
  469. package/dist/types/components/pro-table/components/table-summary.d.ts +7 -0
  470. package/dist/types/components/pro-table/components/table-title.d.ts +7 -0
  471. package/dist/types/components/pro-table/components/table.d.ts +6 -0
  472. package/dist/types/components/pro-table/context.d.ts +3 -0
  473. package/dist/types/components/pro-table/event.d.ts +16 -0
  474. package/dist/types/components/pro-table/hooks/index.d.ts +2 -0
  475. package/dist/types/components/pro-table/hooks/use-row-selection.d.ts +12 -0
  476. package/dist/types/components/pro-table/hooks/use-table-columns.d.ts +11 -0
  477. package/dist/types/components/pro-table/index.d.ts +11 -0
  478. package/dist/types/components/pro-table/props.d.ts +118 -0
  479. package/dist/types/components/pro-table/store.d.ts +35 -0
  480. package/dist/types/components/pro-table/types.d.ts +86 -0
  481. package/dist/types/components/router-provider/context.d.ts +6 -0
  482. package/dist/types/components/router-provider/index.d.ts +5 -0
  483. package/dist/types/components/router-provider/props.d.ts +7 -0
  484. package/dist/types/components/theme-config-provider/global-style.d.ts +2 -0
  485. package/dist/types/components/theme-config-provider/index.d.ts +2 -0
  486. package/dist/types/components/theme-config-provider/use-color-mode-effect.d.ts +1 -0
  487. package/dist/types/components/theme-config-provider/use-theme-config.d.ts +2 -0
  488. package/dist/types/constants/event.d.ts +4 -0
  489. package/dist/types/constants/index.d.ts +4 -0
  490. package/dist/types/constants/router.d.ts +24 -0
  491. package/dist/types/constants/storage.d.ts +8 -0
  492. package/dist/types/constants/symbols.d.ts +8 -0
  493. package/dist/types/helpers/api.d.ts +9 -0
  494. package/dist/types/helpers/app-version.d.ts +88 -0
  495. package/dist/types/helpers/app.d.ts +24 -0
  496. package/dist/types/helpers/auth.d.ts +7 -0
  497. package/dist/types/helpers/event.d.ts +16 -0
  498. package/dist/types/helpers/index.d.ts +7 -0
  499. package/dist/types/helpers/query.d.ts +33 -0
  500. package/dist/types/helpers/router.d.ts +28 -0
  501. package/dist/types/hooks/index.d.ts +1 -0
  502. package/dist/types/hooks/use-route-full-path.d.ts +6 -0
  503. package/dist/types/index.d.ts +6 -0
  504. package/dist/types/models/index.d.ts +1 -0
  505. package/dist/types/routes/access-denied.d.ts +13 -0
  506. package/dist/types/routes/index.d.ts +4 -0
  507. package/dist/types/routes/layout.d.ts +25 -0
  508. package/dist/types/routes/login.d.ts +18 -0
  509. package/dist/types/routes/root.d.ts +13 -0
  510. package/dist/types/stores/app.d.ts +38 -0
  511. package/dist/types/stores/index.d.ts +6 -0
  512. package/dist/types/stores/tab.d.ts +73 -0
  513. package/dist/types/stores/theme.d.ts +46 -0
  514. package/dist/types/types/api.d.ts +67 -0
  515. package/dist/types/types/common.d.ts +81 -0
  516. package/dist/types/types/index.d.ts +3 -0
  517. package/dist/types/types/router.d.ts +9 -0
  518. package/package.json +60 -44
  519. package/README.md +0 -25
  520. package/cjs/api.cjs +0 -2
  521. package/cjs/app.cjs +0 -2
  522. package/cjs/components/index.cjs +0 -2
  523. package/cjs/components/vef-access-denied-page/index.cjs +0 -2
  524. package/cjs/components/vef-access-denied-page/props.cjs +0 -2
  525. package/cjs/components/vef-app/index.cjs +0 -2
  526. package/cjs/components/vef-app/props.cjs +0 -2
  527. package/cjs/components/vef-dev-assistant/index.cjs +0 -31
  528. package/cjs/components/vef-dev-assistant/props.cjs +0 -2
  529. package/cjs/components/vef-error-page/index.cjs +0 -2
  530. package/cjs/components/vef-error-page/props.cjs +0 -2
  531. package/cjs/components/vef-login-page/index.cjs +0 -2
  532. package/cjs/components/vef-login-page/props.cjs +0 -2
  533. package/cjs/components/vef-not-found-page/index.cjs +0 -2
  534. package/cjs/components/vef-not-found-page/props.cjs +0 -2
  535. package/cjs/components/vef-router-provider/index.cjs +0 -2
  536. package/cjs/components/vef-router-provider/props.cjs +0 -2
  537. package/cjs/constants.cjs +0 -2
  538. package/cjs/helper.cjs +0 -2
  539. package/cjs/index.cjs +0 -2
  540. package/cjs/router.cjs +0 -2
  541. package/cjs/routes/access-denied.cjs +0 -2
  542. package/cjs/routes/index.cjs +0 -2
  543. package/cjs/routes/layout.cjs +0 -2
  544. package/cjs/routes/login.cjs +0 -2
  545. package/cjs/routes/root.cjs +0 -2
  546. package/cjs/store.cjs +0 -2
  547. package/esm/api.js +0 -2
  548. package/esm/app.js +0 -2
  549. package/esm/components/index.js +0 -2
  550. package/esm/components/vef-access-denied-page/index.js +0 -2
  551. package/esm/components/vef-access-denied-page/props.js +0 -2
  552. package/esm/components/vef-app/index.js +0 -2
  553. package/esm/components/vef-app/props.js +0 -2
  554. package/esm/components/vef-dev-assistant/index.js +0 -31
  555. package/esm/components/vef-dev-assistant/props.js +0 -2
  556. package/esm/components/vef-error-page/index.js +0 -2
  557. package/esm/components/vef-error-page/props.js +0 -2
  558. package/esm/components/vef-login-page/index.js +0 -2
  559. package/esm/components/vef-login-page/props.js +0 -2
  560. package/esm/components/vef-not-found-page/index.js +0 -2
  561. package/esm/components/vef-not-found-page/props.js +0 -2
  562. package/esm/components/vef-router-provider/index.js +0 -2
  563. package/esm/components/vef-router-provider/props.js +0 -2
  564. package/esm/constants.js +0 -2
  565. package/esm/helper.js +0 -2
  566. package/esm/index.js +0 -2
  567. package/esm/router.js +0 -2
  568. package/esm/routes/access-denied.js +0 -2
  569. package/esm/routes/index.js +0 -2
  570. package/esm/routes/layout.js +0 -2
  571. package/esm/routes/login.js +0 -2
  572. package/esm/routes/root.js +0 -2
  573. package/esm/store.js +0 -2
  574. package/types/api.d.ts +0 -9
  575. package/types/app.d.ts +0 -15
  576. package/types/components/index.d.ts +0 -7
  577. package/types/components/vef-access-denied-page/index.d.ts +0 -4
  578. package/types/components/vef-access-denied-page/props.d.ts +0 -5
  579. package/types/components/vef-app/index.d.ts +0 -4
  580. package/types/components/vef-app/props.d.ts +0 -7
  581. package/types/components/vef-dev-assistant/index.d.ts +0 -4
  582. package/types/components/vef-dev-assistant/props.d.ts +0 -5
  583. package/types/components/vef-error-page/index.d.ts +0 -4
  584. package/types/components/vef-error-page/props.d.ts +0 -6
  585. package/types/components/vef-login-page/index.d.ts +0 -4
  586. package/types/components/vef-login-page/props.d.ts +0 -7
  587. package/types/components/vef-not-found-page/index.d.ts +0 -4
  588. package/types/components/vef-not-found-page/props.d.ts +0 -6
  589. package/types/components/vef-router-provider/index.d.ts +0 -4
  590. package/types/components/vef-router-provider/props.d.ts +0 -16
  591. package/types/constants.d.ts +0 -24
  592. package/types/helper.d.ts +0 -9
  593. package/types/index.d.ts +0 -8
  594. package/types/router.d.ts +0 -23
  595. package/types/routes/access-denied.d.ts +0 -9
  596. package/types/routes/index.d.ts +0 -4
  597. package/types/routes/layout.d.ts +0 -33
  598. package/types/routes/login.d.ts +0 -27
  599. package/types/routes/root.d.ts +0 -7
  600. package/types/store.d.ts +0 -34
@@ -0,0 +1,81 @@
1
+ import { LiteralUnion, MaybeNull } from '@vef-framework/shared';
2
+ /**
3
+ * The gender of the user.
4
+ */
5
+ export type Gender = "male" | "female" | "unknown";
6
+ /**
7
+ * The type of the menu.
8
+ */
9
+ export type UserMenuType = LiteralUnion<"directory" | "menu" | "view" | "report", string>;
10
+ /**
11
+ * The user menu.
12
+ */
13
+ export interface UserMenu {
14
+ /**
15
+ * The type of the menu.
16
+ */
17
+ type: UserMenuType;
18
+ /**
19
+ * The path of the menu.
20
+ */
21
+ path: string;
22
+ /**
23
+ * The name of the menu.
24
+ */
25
+ name: string;
26
+ /**
27
+ * The icon of the menu.
28
+ */
29
+ icon?: MaybeNull<string>;
30
+ /**
31
+ * The metadata of the menu.
32
+ */
33
+ meta?: MaybeNull<Record<string, unknown>>;
34
+ /**
35
+ * The children of the menu.
36
+ */
37
+ children?: MaybeNull<UserMenu[]>;
38
+ }
39
+ /**
40
+ * The info of the user.
41
+ */
42
+ export interface UserInfo {
43
+ /**
44
+ * The id of the user.
45
+ */
46
+ id: string;
47
+ /**
48
+ * The name of the user.
49
+ */
50
+ name: string;
51
+ /**
52
+ * The gender of the user.
53
+ */
54
+ gender: Gender;
55
+ /**
56
+ * The avatar of the user.
57
+ */
58
+ avatar?: MaybeNull<string>;
59
+ /**
60
+ * The authorized permission tokens of the user.
61
+ */
62
+ permTokens: string[];
63
+ /**
64
+ * The authorized menus of the user.
65
+ */
66
+ menus: UserMenu[];
67
+ }
68
+ /**
69
+ * Represents an ordering specification for a single column.
70
+ * It encapsulates all the information needed to generate the ORDER BY clause for one item.
71
+ */
72
+ export interface OrderSpec {
73
+ /**
74
+ * The column name to order by
75
+ */
76
+ column: string;
77
+ /**
78
+ * The ordering direction
79
+ */
80
+ direction: "asc" | "desc";
81
+ }
@@ -0,0 +1,3 @@
1
+ export type * from './api';
2
+ export type * from './common';
3
+ export type * from './router';
@@ -0,0 +1,9 @@
1
+ /**
2
+ * The context of the router.
3
+ */
4
+ export interface RouterContext {
5
+ /**
6
+ * The title of the route.
7
+ */
8
+ routeTitle?: string;
9
+ }
package/package.json CHANGED
@@ -1,61 +1,77 @@
1
1
  {
2
2
  "name": "@vef-framework/starter",
3
3
  "type": "module",
4
- "version": "1.0.135",
4
+ "version": "2.0.2",
5
5
  "private": false,
6
- "description": "The starter of the VEF framework",
7
- "author": "Venus",
6
+ "description": "Starter for VEF framework",
7
+ "author": {
8
+ "name": "Venus",
9
+ "email": "iweixiaopeng@163.com",
10
+ "url": "https://github.com/ilxqx"
11
+ },
12
+ "license": "Apache-2.0",
13
+ "homepage": "https://vef.ilxqx.com",
8
14
  "keywords": [
9
15
  "vef",
10
- "vef-framework",
11
- "vef-starter"
16
+ "framework",
17
+ "react",
18
+ "starter"
12
19
  ],
13
20
  "sideEffects": false,
14
- "main": "cjs/index.cjs",
15
- "types": "types/index.d.ts",
16
- "files": [
17
- "*"
18
- ],
19
- "engines": {
20
- "node": ">=20"
21
- },
22
- "peerDependencies": {
23
- "react": "18.3.1",
24
- "react-dom": "18.3.1",
25
- "@tanstack/react-router": "^1.116.0"
26
- },
27
- "dependencies": {
28
- "@emotion/cache": "11.14.0",
29
- "@emotion/react": "11.14.0",
30
- "@emotion/styled": "11.14.0",
31
- "antd": "5.24.7",
32
- "use-sync-external-store": "^1.5.0",
33
- "@tanstack/react-query-devtools": "5.74.3",
34
- "@tanstack/router-devtools": "^1.116.0",
35
- "@vef-framework/components": "1.0.135",
36
- "@vef-framework/core": "1.0.135",
37
- "@vef-framework/hooks": "1.0.135",
38
- "@vef-framework/shared": "1.0.135",
39
- "lucide-react": "0.488.0",
40
- "motion": "12.7.3",
41
- "nprogress": "^0.2.0"
42
- },
43
- "publishConfig": {
44
- "access": "public"
45
- },
46
21
  "exports": {
47
22
  ".": {
23
+ "source": "./src/index.ts",
48
24
  "import": {
49
- "types": "./types/index.d.ts",
50
- "default": "./esm/index.js"
25
+ "types": "./dist/types/index.d.ts",
26
+ "default": "./dist/es/index.js"
51
27
  },
52
28
  "require": {
53
- "types": "./types/index.d.ts",
54
- "default": "./cjs/index.cjs"
29
+ "types": "./dist/types/index.d.ts",
30
+ "default": "./dist/cjs/index.cjs"
55
31
  }
56
32
  },
57
33
  "./package.json": "./package.json"
58
34
  },
59
- "module": "esm/index.js",
60
- "packageManager": "pnpm@10.8.1"
61
- }
35
+ "main": "dist/cjs/index.cjs",
36
+ "module": "dist/es/index.js",
37
+ "types": "dist/types/index.d.ts",
38
+ "files": [
39
+ "dist"
40
+ ],
41
+ "engines": {
42
+ "node": ">=22.x"
43
+ },
44
+ "publishConfig": {
45
+ "access": "public"
46
+ },
47
+ "peerDependencies": {
48
+ "@tanstack/react-router": ">=1",
49
+ "@vef-framework/components": ">=2",
50
+ "@vef-framework/core": ">=2",
51
+ "@vef-framework/hooks": ">=2",
52
+ "@vef-framework/shared": ">=2",
53
+ "react": ">=19",
54
+ "react-dom": ">=19"
55
+ },
56
+ "dependencies": {
57
+ "@emotion/react": "^11.14.0",
58
+ "@tanem/react-nprogress": "^5.0.56",
59
+ "antd": "^6.0.0",
60
+ "compare-versions": "^6.1.1",
61
+ "lucide-react": "^0.554.0"
62
+ },
63
+ "devDependencies": {
64
+ "@tanstack/react-router": "^1.139.3",
65
+ "react": "^19.2.0",
66
+ "react-dom": "^19.2.0",
67
+ "@vef-framework/components": "2.0.2",
68
+ "@vef-framework/core": "2.0.2",
69
+ "@vef-framework/hooks": "2.0.2",
70
+ "@vef-framework/shared": "2.0.2"
71
+ },
72
+ "scripts": {
73
+ "clean": "rimraf dist",
74
+ "typecheck": "tsc --noEmit",
75
+ "build": "vite build"
76
+ }
77
+ }
package/README.md DELETED
@@ -1,25 +0,0 @@
1
- # The Starter of VEF Framework
2
-
3
- VEF framework made by Venus is built on top of React, and it provides a set of components that are essential for building a modern web application. These components are designed to be highly customizable and reusable, allowing developers to build complex and dynamic user interfaces with ease.
4
-
5
- ## Installation
6
-
7
- To install the VEF framework starter, you can use pnpm or any other package manager you like:
8
-
9
- ```bash
10
- pnpm add @vef-framework/starter
11
- ```
12
-
13
- ## Usage
14
-
15
- To use the VEF framework starter in your project, you can import them from the package, for example:
16
-
17
- ```ts
18
- import { xxx } from "@vef-framework/starter";
19
-
20
- // ...
21
- ```
22
-
23
- ## Documentation
24
-
25
- For more details on how to use the VEF framework starter, please refer to the [official documentation](https://vef.ilxqx.com/docs).
package/cjs/api.cjs DELETED
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";var e=require("@vef-framework/components"),s=require("@vef-framework/core"),n=require("./store.cjs");function t(r){return s.createApiClient({...r,getAccessToken(){return n.useAppStore.getState().token?.accessToken},onInfoMessage:e.showInfoMessage,onWarningMessage:e.showWarningMessage,onErrorMessage:e.showErrorMessage})}exports.createApiClient=t;
package/cjs/app.cjs DELETED
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";var t=require("react"),n=require("react-dom/client");require("./components/index.cjs");var u=require("./components/vef-app/index.cjs");function i(){const e=n.createRoot(document.getElementById("root"),{identifierPrefix:"vef-"});return{render:r=>{e.render(t.createElement(u.default,r))},unmount:()=>e.unmount()}}exports.createApp=i;
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";var e=require("./vef-access-denied-page/index.cjs"),r=require("./vef-app/index.cjs"),i=require("./vef-dev-assistant/index.cjs"),a=require("./vef-error-page/index.cjs"),u=require("./vef-login-page/index.cjs"),d=require("./vef-not-found-page/index.cjs"),t=require("./vef-router-provider/index.cjs");exports.VefAccessDeniedPage=e.default,exports.VefApp=r.default,exports.VefDevAssistant=i.default,exports.VefErrorPage=a.default,exports.VefLoginPage=u.default,exports.VefNotFoundPage=d.default,exports.VefRouterProvider=t.default;
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var o=require("@emotion/react/jsx-runtime"),e=require("@tanstack/react-router"),s=require("@vef-framework/components"),c=require("react"),n=require("../../constants.cjs");function v(t){const{pathname:a}=e.useLocation(),{redirect:u}=e.useRouterState(),r=e.useNavigate(),i=c.useCallback(()=>r({to:n.INDEX_PAGE_PATH,replace:!0}),[r]);return o.jsx(s.VefAccessDenied,{uri:u?._fromLocation?.pathname??a,onNavigateHome:i,...t})}exports.default=v;
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@emotion/react/jsx-runtime"),i=require("@vef-framework/components"),u=require("react"),n=require("../vef-router-provider/index.cjs");function o({router:r,...t}){return e.jsx(u.StrictMode,{children:e.jsx(i.VefConfigProvider,{...t,children:e.jsx(n.default,{router:r})})})}exports.default=o;
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";
@@ -1,31 +0,0 @@
1
- "use strict";
2
- "use strict";var v=Object.create;var u=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var g=Object.getPrototypeOf,b=Object.prototype.hasOwnProperty;var k=(t,s,a,n)=>{if(s&&typeof s=="object"||typeof s=="function")for(let r of y(s))!b.call(t,r)&&r!==a&&u(t,r,{get:()=>s[r],enumerable:!(n=m(s,r))||n.enumerable});return t};var h=(t,s,a)=>(a=t!=null?v(g(t)):{},k(s||!t||!t.__esModule?u(a,"default",{value:t,enumerable:!0}):a,t));Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@emotion/react/jsx-runtime"),w=require("@emotion/react"),i=require("@vef-framework/components"),q=require("@vef-framework/hooks"),c=require("@vef-framework/shared"),f=require("lucide-react"),d=require("motion/react"),o=require("react");const p=w.css`
3
- position: fixed;
4
- bottom: 0;
5
- width: 100%;
6
- height: 600px;
7
- z-index: 2;
8
-
9
- .tsqd-text-logo-container {
10
- display: none;
11
- }
12
-
13
- .TanStackRouterDevtoolsPanel {
14
- > button {
15
- display: none;
16
- }
17
-
18
- > div:first-of-type {
19
- > div:first-of-type {
20
- display: none;
21
- }
22
- }
23
-
24
- > div {
25
- padding: ${c.themeVariables.paddingSm};
26
- scrollbar-width: thin;
27
- scrollbar-color: #334155 transparent;
28
- box-shadow: ${c.themeVariables.boxShadowDrawerDown};
29
- }
30
- }
31
- `;function C(t){return e.jsxs("svg",{height:24,viewBox:"0 0 24 24",width:24,xmlns:"http://www.w3.org/2000/svg",...t,children:[e.jsx("path",{d:"M17 14v4c0 1.66 -1.34 3 -3 3h-6c-1.66 0 -3 -1.34 -3 -3v-4Z",fill:"currentColor",fillOpacity:0,children:e.jsx("animate",{attributeName:"fill-opacity",begin:"0.8s",dur:"0.5s",fill:"freeze",values:"0;1"})}),e.jsxs("g",{fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,children:[e.jsx("path",{d:"M17 9v9c0 1.66 -1.34 3 -3 3h-6c-1.66 0 -3 -1.34 -3 -3v-9Z",strokeDasharray:48,strokeDashoffset:48,children:e.jsx("animate",{attributeName:"stroke-dashoffset",dur:"0.6s",fill:"freeze",values:"48;0"})}),e.jsx("path",{d:"M17 9h3c0.55 0 1 0.45 1 1v3c0 0.55 -0.45 1 -1 1h-3",strokeDasharray:14,strokeDashoffset:14,children:e.jsx("animate",{attributeName:"stroke-dashoffset",begin:"0.6s",dur:"0.2s",fill:"freeze",values:"14;0"})}),e.jsx("mask",{id:"lineMdCoffeeHalfEmptyFilledLoop0",children:e.jsx("path",{d:"M8 0c0 2-2 2-2 4s2 2 2 4-2 2-2 4 2 2 2 4M12 0c0 2-2 2-2 4s2 2 2 4-2 2-2 4 2 2 2 4M16 0c0 2-2 2-2 4s2 2 2 4-2 2-2 4 2 2 2 4",stroke:"#fff",children:e.jsx("animateMotion",{calcMode:"linear",dur:"3s",path:"M0 0v-8",repeatCount:"indefinite"})})}),e.jsxs("rect",{fill:"currentColor",height:0,mask:"url(#lineMdCoffeeHalfEmptyFilledLoop0)",width:24,y:7,children:[e.jsx("animate",{attributeName:"y",begin:"0.8s",dur:"0.6s",fill:"freeze",values:"7;2"}),e.jsx("animate",{attributeName:"height",begin:"0.8s",dur:"0.6s",fill:"freeze",values:"0;5"})]})]})]})}const x=process.env.NODE_ENV==="development",M=x?o.lazy(()=>import("@tanstack/router-devtools").then(t=>({default:t.TanStackRouterDevtoolsPanel}))):()=>null,P=x?o.lazy(()=>import("@tanstack/react-query-devtools").then(t=>({default:t.ReactQueryDevtoolsPanel}))):()=>null,j={opened:{opacity:1,y:0,transition:{type:"spring",bounce:0,duration:.2}},closed:{opacity:0,y:"50%"}};function V(){const[t,s]=o.useState(null),a=o.useCallback(r=>{r.stopPropagation(),s(l=>l==="query"?null:"query")},[]),n=o.useCallback(r=>{r.stopPropagation(),s(l=>l==="router"?null:"router")},[]);return q.useKeyPress("esc",()=>{t&&s(null)}),e.jsxs(e.Fragment,{children:[e.jsxs(i.VefFloatButtonGroup,{collapsable:!0,shape:"square",icon:e.jsx(i.VefIcon,{size:"huge",children:e.jsx(C,{})}),onClick:r=>r.stopPropagation(),children:[e.jsx(i.VefFloatButton,{tip:"API调试控制台",icon:e.jsx(i.VefIcon,{children:e.jsx(f.CompassIcon,{})}),onClick:a}),e.jsx(i.VefFloatButton,{tip:"路由调试控制台",icon:e.jsx(i.VefIcon,{children:e.jsx(f.SendIcon,{})}),onClick:n})]}),e.jsxs(d.AnimatePresence,{mode:"wait",children:[t==="query"&&e.jsx(d.motion.div,{animate:"opened",css:p,exit:"closed",initial:"closed",variants:j,children:e.jsx(o.Suspense,{fallback:e.jsx(i.VefLoadingPlaceholder,{}),children:e.jsx(P,{style:{height:"100%"}})})}),t==="router"&&e.jsx(d.motion.div,{animate:"opened",css:p,exit:"closed",initial:"closed",variants:j,children:e.jsx(o.Suspense,{fallback:e.jsx(i.VefLoadingPlaceholder,{}),children:e.jsx(M,{isOpen:t==="router",setIsOpen:c.noop,style:{height:"100%"}})})})]})]})}exports.default=V;
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var u=require("@emotion/react/jsx-runtime"),s=require("@vef-framework/components"),n=require("@vef-framework/core"),c=require("react");function a({error:r,info:t,reset:o}){const{reset:e}=n.useQueryErrorResetBoundary();return c.useEffect(()=>{e()},[e]),u.jsx(s.VefError,{componentStack:t?.componentStack,error:r,reset:o})}exports.default=a;
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var c=require("@emotion/react/jsx-runtime"),e=require("@tanstack/react-router"),n=require("@vef-framework/components"),i=require("../../constants.cjs"),f=require("../../store.cjs");function v(r){const t=e.useRouter(),s=e.useNavigate(),{redirect:a}=e.useSearch({from:i.LOGIN_PAGE_ROUTE});return c.jsx(n.VefLogin,{onLoginSuccess:async({accessToken:o,refreshToken:u})=>{f.useAppStore.setState({isAuthenticated:!0,token:Object.freeze({accessToken:o,refreshToken:u})}),await t.invalidate(),await s({to:a,replace:!0})},...r})}exports.default=v;
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var u=require("@emotion/react/jsx-runtime"),r=require("@tanstack/react-router"),o=require("@vef-framework/components"),i=require("react"),n=require("../../constants.cjs");function s(){const e=r.useNavigate(),t=i.useCallback(()=>e({to:n.INDEX_PAGE_PATH,replace:!0}),[e]),{pathname:a}=r.useLocation();return u.jsx(o.VefNotFound,{uri:a,onNavigateHome:t})}exports.default=s;
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var u=require("@emotion/react/jsx-runtime"),i=require("@tanstack/react-router"),o=require("@vef-framework/core"),c=require("react");function s({router:r}){const{fetchAuthenticatedUserApi:e}=o.useApiContext(),t=c.useMemo(()=>({fetchAuthenticatedUserApi:e}),[e]);return u.jsx(i.RouterProvider,{context:t,router:r})}exports.default=s;
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";
package/cjs/constants.cjs DELETED
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";const E="/login",_="/_common/login",A="/",P="/_layout",G="/access-denied",D="/_common/access-denied";exports.ACCESS_DENIED_PAGE_PATH=G,exports.ACCESS_DENIED_PAGE_ROUTE=D,exports.INDEX_PAGE_PATH=A,exports.INDEX_PAGE_ROUTE=P,exports.LOGIN_PAGE_PATH=E,exports.LOGIN_PAGE_ROUTE=_;
package/cjs/helper.cjs DELETED
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";var a=require("./constants.cjs"),i=require("./store.cjs");async function n(t,e){await e.invalidateQueries(),i.useAppStore.setState({isAuthenticated:!1},!0),await t.invalidate(),await t.navigate({to:a.LOGIN_PAGE_PATH})}exports.handleClientLogout=n;
package/cjs/index.cjs DELETED
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";var r=require("./api.cjs"),t=require("./app.cjs");require("./components/index.cjs");var e=require("./constants.cjs"),a=require("./helper.cjs"),i=require("./router.cjs");require("./routes/index.cjs");var u=require("./store.cjs"),o=require("./components/vef-access-denied-page/index.cjs"),E=require("./components/vef-app/index.cjs"),A=require("./components/vef-dev-assistant/index.cjs"),n=require("./components/vef-error-page/index.cjs"),_=require("./components/vef-login-page/index.cjs"),s=require("./components/vef-not-found-page/index.cjs"),c=require("./components/vef-router-provider/index.cjs"),P=require("./routes/access-denied.cjs"),d=require("./routes/layout.cjs"),p=require("./routes/login.cjs"),q=require("./routes/root.cjs");exports.createApiClient=r.createApiClient,exports.createApp=t.createApp,exports.ACCESS_DENIED_PAGE_PATH=e.ACCESS_DENIED_PAGE_PATH,exports.ACCESS_DENIED_PAGE_ROUTE=e.ACCESS_DENIED_PAGE_ROUTE,exports.INDEX_PAGE_PATH=e.INDEX_PAGE_PATH,exports.INDEX_PAGE_ROUTE=e.INDEX_PAGE_ROUTE,exports.LOGIN_PAGE_PATH=e.LOGIN_PAGE_PATH,exports.LOGIN_PAGE_ROUTE=e.LOGIN_PAGE_ROUTE,exports.handleClientLogout=a.handleClientLogout,exports.createRouter=i.createRouter,exports.useAppStore=u.useAppStore,exports.VefAccessDeniedPage=o.default,exports.VefApp=E.default,exports.VefDevAssistant=A.default,exports.VefErrorPage=n.default,exports.VefLoginPage=_.default,exports.VefNotFoundPage=s.default,exports.VefRouterProvider=c.default,exports.createAccessDeniedRouteOptions=P.createAccessDeniedRouteOptions,exports.createLayoutRouteOptions=d.createLayoutRouteOptions,exports.createLoginRouteOptions=p.createLoginRouteOptions,exports.createRootRoute=q.createRootRoute;
package/cjs/router.cjs DELETED
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";var r=require("@tanstack/react-router"),t=require("@vef-framework/components"),a=require("react");const o=10*60*1e3;function c({routeTree:n,history:l}){return r.createRouter({routeTree:n,trailingSlash:"never",caseSensitive:!0,history:l==="hash"?r.createHashHistory():r.createBrowserHistory(),search:{strict:!0},notFoundMode:"root",defaultPendingComponent:()=>a.createElement(t.VefLoadingPlaceholder,{size:"large"}),defaultPendingMs:500,defaultPendingMinMs:300,defaultSsr:!1,defaultStructuralSharing:!0,defaultHashScrollIntoView:{behavior:"smooth",block:"start",inline:"center"},defaultPreload:"intent",defaultPreloadDelay:50,defaultPreloadGcTime:o,defaultGcTime:o,defaultOnCatch(e,i){t.showErrorNotification(e.message||e.name,a.createElement(t.VefText,{color:"error",children:a.createElement("pre",{style:{maxHeight:"480px",overflowY:"auto",scrollbarWidth:"thin",scrollbarColor:"rgba(0, 0, 0, 0.2) transparent"},children:e.stack||i.componentStack||"No stack trace available"})}))}})}exports.createRouter=c;
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";require("../components/index.cjs");var e=require("../components/vef-access-denied-page/index.cjs");function t(){return{component:e.default}}exports.createAccessDeniedRouteOptions=t;
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";var e=require("./access-denied.cjs"),t=require("./layout.cjs"),o=require("./login.cjs"),r=require("./root.cjs");exports.createAccessDeniedRouteOptions=e.createAccessDeniedRouteOptions,exports.createLayoutRouteOptions=t.createLayoutRouteOptions,exports.createLoginRouteOptions=o.createLoginRouteOptions,exports.createRootRoute=r.createRootRoute;
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";var o=require("@emotion/react/jsx-runtime"),a=require("@tanstack/react-router"),m=require("@vef-framework/components"),S=require("@vef-framework/core"),_=require("@vef-framework/shared"),w=require("lucide-react"),h=require("react"),p=require("../constants.cjs"),L=require("../helper.cjs"),A=require("../store.cjs");const x={key:p.INDEX_PAGE_PATH,label:o.jsx(m.VefIcon,{children:o.jsx(w.HomeIcon,{})})};function R({title:v,logo:y,getUserDescription:M,userMenuItems:C,onUserMenuClick:P}){function k(){const r=a.useRouter(),n=a.useNavigate(),{pathname:t}=a.useLocation(),[i,s,u]=A.useAppStore(e=>[e.menus,e.user,e.routeParentMenusMappings]),c=u?.get(t)?.[1].map(e=>e.key),E=h.useMemo(()=>{const e=u?.get(t);if(!e)return[];const[q,O]=e;return[x,...O.map(d=>({key:d.key,label:d.label,dropdownItems:d.children.filter(l=>l.type!=="divider").map(l=>({key:l.key,label:l.label}))})),{label:q.label}]},[t,u]),{logoutApi:I,fetchAuthenticatedUserApi:f}=S.useApiContext(),{mutate:g}=I.useMutation(),j=h.useCallback(async()=>{await g(),await L.handleClientLogout(r,f)},[g,r,f]),b=h.useCallback(e=>{n({to:e})},[n]);return o.jsx(m.VefLayout,{activeMenuKey:t,breadcrumbItems:E,defaultOpenedMenuKeys:c,logo:y,menuItems:i,title:v,userAvatar:s?.avatar,userDescription:M?.(s),userGender:s?.gender,userMenuItems:C,userName:s?.name,onActiveMenuKeyChange:b,onBreadcrumbClick:b,onLogout:j,onUserMenuClick:P,children:o.jsx(a.Outlet,{})})}return{beforeLoad:({location:r})=>{const{isAuthenticated:n,routeParentMenusMappings:t}=A.useAppStore.getState();if(!n)throw a.redirect({to:p.LOGIN_PAGE_PATH,search:{redirect:r.href}});if(t&&!t.has(r.pathname))throw a.redirect({to:p.ACCESS_DENIED_PAGE_PATH,replace:!0})},loader:async({context:r,location:n})=>{const{fetchAuthenticatedUserApi:t}=r,{menus:i,permissions:s,...u}=await t.fetchQuery(),c=Object.freeze(_.buildRouteParentMenusMappings(i));if(A.useAppStore.setState({user:Object.freeze(u),menus:Object.freeze(i),permissions:Object.freeze(new Set(s)),routeParentMenusMappings:c}),!c.has(n.pathname))throw a.redirect({to:p.ACCESS_DENIED_PAGE_PATH,replace:!0})},pendingComponent:()=>o.jsx(m.VefLoadingPlaceholder,{size:"large",tip:"系统加载中,请稍后..."}),component:k,staleTime:1/0,gcTime:0,shouldReload:!1}}exports.createLayoutRouteOptions=R;
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";var o=require("@emotion/react/jsx-runtime"),c=require("@tanstack/react-router"),e=require("@vef-framework/shared");require("../components/index.cjs");var r=require("../constants.cjs"),u=require("../store.cjs"),n=require("../components/vef-login-page/index.cjs");function s(t){return{validateSearch:e.z.object({redirect:e.z.string().optional().default(r.INDEX_PAGE_PATH).catch(r.INDEX_PAGE_PATH)}),beforeLoad:({search:i})=>{if(u.useAppStore.getState().isAuthenticated){const{redirect:a}=i;throw c.redirect({to:a,replace:!0})}},component:()=>o.jsx(n.default,{...t})}}exports.createLoginRouteOptions=s;
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";var e=require("@emotion/react/jsx-runtime"),r=require("@tanstack/react-router");require("../components/index.cjs");var t=require("../components/vef-not-found-page/index.cjs"),o=require("../components/vef-error-page/index.cjs"),n=require("../components/vef-dev-assistant/index.cjs");function u(){return r.createRootRouteWithContext()({component:()=>e.jsxs(e.Fragment,{children:[e.jsx(r.Outlet,{}),process.env.NODE_ENV==="development"&&e.jsx(n.default,{})]}),errorComponent:o.default,notFoundComponent:t.default,ssr:!1})}exports.createRootRoute=u;
package/cjs/store.cjs DELETED
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";var t=require("@vef-framework/shared");const s=t.createStore(()=>({isAuthenticated:!1}),{name:"APP",storage:"session",selector:e=>({isAuthenticated:e.isAuthenticated,token:e.token})});exports.useAppStore=s;
package/esm/api.js DELETED
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import{showErrorMessage as r,showWarningMessage as s,showInfoMessage as o}from"@vef-framework/components";import{createApiClient as t}from"@vef-framework/core";import{useAppStore as n}from"./store.js";function a(e){return t({...e,getAccessToken(){return n.getState().token?.accessToken},onInfoMessage:o,onWarningMessage:s,onErrorMessage:r})}export{a as createApiClient};
package/esm/app.js DELETED
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import{createElement as r}from"react";import{createRoot as o}from"react-dom/client";import"./components/index.js";import n from"./components/vef-app/index.js";function m(){const e=o(document.getElementById("root"),{identifierPrefix:"vef-"});return{render:t=>{e.render(r(n,t))},unmount:()=>e.unmount()}}export{m as createApp};
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import{default as r}from"./vef-access-denied-page/index.js";import{default as t}from"./vef-app/index.js";import{default as s}from"./vef-dev-assistant/index.js";import{default as u}from"./vef-error-page/index.js";import{default as l}from"./vef-login-page/index.js";import{default as x}from"./vef-not-found-page/index.js";import{default as g}from"./vef-router-provider/index.js";export{r as VefAccessDeniedPage,t as VefApp,s as VefDevAssistant,u as VefErrorPage,l as VefLoginPage,x as VefNotFoundPage,g as VefRouterProvider};
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import{jsx as m}from"@emotion/react/jsx-runtime";import{useLocation as i,useRouterState as s,useNavigate as c}from"@tanstack/react-router";import{VefAccessDenied as n}from"@vef-framework/components";import{useCallback as u}from"react";import{INDEX_PAGE_PATH as f}from"../../constants.js";function p(t){const{pathname:o}=i(),{redirect:r}=s(),e=c(),a=u(()=>e({to:f,replace:!0}),[e]);return m(n,{uri:r?._fromLocation?.pathname??o,onNavigateHome:a,...t})}export{p as default};
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import{jsx as r}from"@emotion/react/jsx-runtime";import{VefConfigProvider as i}from"@vef-framework/components";import{StrictMode as e}from"react";import f from"../vef-router-provider/index.js";function m({router:o,...t}){return r(e,{children:r(i,{...t,children:r(f,{router:o})})})}export{m as default};
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";
@@ -1,31 +0,0 @@
1
- "use strict";
2
- import{jsxs as o,jsx as e,Fragment as b}from"@emotion/react/jsx-runtime";import{css as k}from"@emotion/react";import{VefFloatButtonGroup as w,VefFloatButton as l,VefIcon as a,VefLoadingPlaceholder as s}from"@vef-framework/components";import{useKeyPress as x}from"@vef-framework/hooks";import{themeVariables as d,noop as C}from"@vef-framework/shared";import{CompassIcon as M,SendIcon as D}from"lucide-react";import{AnimatePresence as P,motion as c}from"motion/react";import{lazy as h,useState as z,useCallback as p,Suspense as u}from"react";const f=k`
3
- position: fixed;
4
- bottom: 0;
5
- width: 100%;
6
- height: 600px;
7
- z-index: 2;
8
-
9
- .tsqd-text-logo-container {
10
- display: none;
11
- }
12
-
13
- .TanStackRouterDevtoolsPanel {
14
- > button {
15
- display: none;
16
- }
17
-
18
- > div:first-of-type {
19
- > div:first-of-type {
20
- display: none;
21
- }
22
- }
23
-
24
- > div {
25
- padding: ${d.paddingSm};
26
- scrollbar-width: thin;
27
- scrollbar-color: #334155 transparent;
28
- box-shadow: ${d.boxShadowDrawerDown};
29
- }
30
- }
31
- `;function N(t){return o("svg",{height:24,viewBox:"0 0 24 24",width:24,xmlns:"http://www.w3.org/2000/svg",...t,children:[e("path",{d:"M17 14v4c0 1.66 -1.34 3 -3 3h-6c-1.66 0 -3 -1.34 -3 -3v-4Z",fill:"currentColor",fillOpacity:0,children:e("animate",{attributeName:"fill-opacity",begin:"0.8s",dur:"0.5s",fill:"freeze",values:"0;1"})}),o("g",{fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,children:[e("path",{d:"M17 9v9c0 1.66 -1.34 3 -3 3h-6c-1.66 0 -3 -1.34 -3 -3v-9Z",strokeDasharray:48,strokeDashoffset:48,children:e("animate",{attributeName:"stroke-dashoffset",dur:"0.6s",fill:"freeze",values:"48;0"})}),e("path",{d:"M17 9h3c0.55 0 1 0.45 1 1v3c0 0.55 -0.45 1 -1 1h-3",strokeDasharray:14,strokeDashoffset:14,children:e("animate",{attributeName:"stroke-dashoffset",begin:"0.6s",dur:"0.2s",fill:"freeze",values:"14;0"})}),e("mask",{id:"lineMdCoffeeHalfEmptyFilledLoop0",children:e("path",{d:"M8 0c0 2-2 2-2 4s2 2 2 4-2 2-2 4 2 2 2 4M12 0c0 2-2 2-2 4s2 2 2 4-2 2-2 4 2 2 2 4M16 0c0 2-2 2-2 4s2 2 2 4-2 2-2 4 2 2 2 4",stroke:"#fff",children:e("animateMotion",{calcMode:"linear",dur:"3s",path:"M0 0v-8",repeatCount:"indefinite"})})}),o("rect",{fill:"currentColor",height:0,mask:"url(#lineMdCoffeeHalfEmptyFilledLoop0)",width:24,y:7,children:[e("animate",{attributeName:"y",begin:"0.8s",dur:"0.6s",fill:"freeze",values:"7;2"}),e("animate",{attributeName:"height",begin:"0.8s",dur:"0.6s",fill:"freeze",values:"0;5"})]})]})]})}const m=process.env.NODE_ENV==="development",S=m?h(()=>import("@tanstack/router-devtools").then(t=>({default:t.TanStackRouterDevtoolsPanel}))):()=>null,I=m?h(()=>import("@tanstack/react-query-devtools").then(t=>({default:t.ReactQueryDevtoolsPanel}))):()=>null,v={opened:{opacity:1,y:0,transition:{type:"spring",bounce:0,duration:.2}},closed:{opacity:0,y:"50%"}};function V(){const[t,r]=z(null),y=p(i=>{i.stopPropagation(),r(n=>n==="query"?null:"query")},[]),g=p(i=>{i.stopPropagation(),r(n=>n==="router"?null:"router")},[]);return x("esc",()=>{t&&r(null)}),o(b,{children:[o(w,{collapsable:!0,shape:"square",icon:e(a,{size:"huge",children:e(N,{})}),onClick:i=>i.stopPropagation(),children:[e(l,{tip:"API调试控制台",icon:e(a,{children:e(M,{})}),onClick:y}),e(l,{tip:"路由调试控制台",icon:e(a,{children:e(D,{})}),onClick:g})]}),o(P,{mode:"wait",children:[t==="query"&&e(c.div,{animate:"opened",css:f,exit:"closed",initial:"closed",variants:v,children:e(u,{fallback:e(s,{}),children:e(I,{style:{height:"100%"}})})}),t==="router"&&e(c.div,{animate:"opened",css:f,exit:"closed",initial:"closed",variants:v,children:e(u,{fallback:e(s,{}),children:e(S,{isOpen:t==="router",setIsOpen:C,style:{height:"100%"}})})})]})]})}export{V as default};
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import{jsx as m}from"@emotion/react/jsx-runtime";import{VefError as s}from"@vef-framework/components";import{useQueryErrorResetBoundary as f}from"@vef-framework/core";import{useEffect as n}from"react";function c({error:e,info:o,reset:t}){const{reset:r}=f();return n(()=>{r()},[r]),m(s,{componentStack:o?.componentStack,error:e,reset:t})}export{c as default};
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import{jsx as i}from"@emotion/react/jsx-runtime";import{useRouter as c,useNavigate as n,useSearch as f}from"@tanstack/react-router";import{VefLogin as m}from"@vef-framework/components";import{LOGIN_PAGE_ROUTE as u}from"../../constants.js";import{useAppStore as p}from"../../store.js";function k(e){const t=c(),r=n(),{redirect:o}=f({from:u});return i(m,{onLoginSuccess:async({accessToken:s,refreshToken:a})=>{p.setState({isAuthenticated:!0,token:Object.freeze({accessToken:s,refreshToken:a})}),await t.invalidate(),await r({to:o,replace:!0})},...e})}export{k as default};
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import{jsx as e}from"@emotion/react/jsx-runtime";import{useNavigate as m,useLocation as a}from"@tanstack/react-router";import{VefNotFound as i}from"@vef-framework/components";import{useCallback as u}from"react";import{INDEX_PAGE_PATH as f}from"../../constants.js";function n(){const o=m(),t=u(()=>o({to:f,replace:!0}),[o]),{pathname:r}=a();return e(i,{uri:r,onNavigateHome:t})}export{n as default};
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import{jsx as o}from"@emotion/react/jsx-runtime";import{RouterProvider as i}from"@tanstack/react-router";import{useApiContext as u}from"@vef-framework/core";import{useMemo as f}from"react";function m({router:e}){const{fetchAuthenticatedUserApi:t}=u(),r=f(()=>({fetchAuthenticatedUserApi:t}),[t]);return o(i,{context:r,router:e})}export{m as default};
@@ -1,2 +0,0 @@
1
- "use strict";
2
- "use strict";
package/esm/constants.js DELETED
@@ -1,2 +0,0 @@
1
- "use strict";
2
- const E="/login",_="/_common/login",A="/",o="/_layout",P="/access-denied",c="/_common/access-denied";export{P as ACCESS_DENIED_PAGE_PATH,c as ACCESS_DENIED_PAGE_ROUTE,A as INDEX_PAGE_PATH,o as INDEX_PAGE_ROUTE,E as LOGIN_PAGE_PATH,_ as LOGIN_PAGE_ROUTE};
package/esm/helper.js DELETED
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import{LOGIN_PAGE_PATH as i}from"./constants.js";import{useAppStore as e}from"./store.js";async function o(t,a){await a.invalidateQueries(),e.setState({isAuthenticated:!1},!0),await t.invalidate(),await t.navigate({to:i})}export{o as handleClientLogout};
package/esm/index.js DELETED
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import{createApiClient as f}from"./api.js";import{createApp as a}from"./app.js";import"./components/index.js";import{ACCESS_DENIED_PAGE_PATH as m,ACCESS_DENIED_PAGE_ROUTE as u,INDEX_PAGE_PATH as A,INDEX_PAGE_ROUTE as E,LOGIN_PAGE_PATH as x,LOGIN_PAGE_ROUTE as i}from"./constants.js";import{handleClientLogout as _}from"./helper.js";import{createRouter as d}from"./router.js";import"./routes/index.js";import{useAppStore as l}from"./store.js";import{default as D}from"./components/vef-access-denied-page/index.js";import{default as O}from"./components/vef-app/index.js";import{default as N}from"./components/vef-dev-assistant/index.js";import{default as C}from"./components/vef-error-page/index.js";import{default as L}from"./components/vef-login-page/index.js";import{default as S}from"./components/vef-not-found-page/index.js";import{default as U}from"./components/vef-router-provider/index.js";import{createAccessDeniedRouteOptions as X}from"./routes/access-denied.js";import{createLayoutRouteOptions as y}from"./routes/layout.js";import{createLoginRouteOptions as b}from"./routes/login.js";import{createRootRoute as k}from"./routes/root.js";export{m as ACCESS_DENIED_PAGE_PATH,u as ACCESS_DENIED_PAGE_ROUTE,A as INDEX_PAGE_PATH,E as INDEX_PAGE_ROUTE,x as LOGIN_PAGE_PATH,i as LOGIN_PAGE_ROUTE,D as VefAccessDeniedPage,O as VefApp,N as VefDevAssistant,C as VefErrorPage,L as VefLoginPage,S as VefNotFoundPage,U as VefRouterProvider,X as createAccessDeniedRouteOptions,f as createApiClient,a as createApp,y as createLayoutRouteOptions,b as createLoginRouteOptions,k as createRootRoute,d as createRouter,_ as handleClientLogout,l as useAppStore};
package/esm/router.js DELETED
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import{createRouter as i,createHashHistory as n,createBrowserHistory as s}from"@tanstack/react-router";import{showErrorNotification as c,VefText as d,VefLoadingPlaceholder as u}from"@vef-framework/components";import{createElement as r}from"react";const t=10*60*1e3;function f({routeTree:a,history:o}){return i({routeTree:a,trailingSlash:"never",caseSensitive:!0,history:o==="hash"?n():s(),search:{strict:!0},notFoundMode:"root",defaultPendingComponent:()=>r(u,{size:"large"}),defaultPendingMs:500,defaultPendingMinMs:300,defaultSsr:!1,defaultStructuralSharing:!0,defaultHashScrollIntoView:{behavior:"smooth",block:"start",inline:"center"},defaultPreload:"intent",defaultPreloadDelay:50,defaultPreloadGcTime:t,defaultGcTime:t,defaultOnCatch(e,l){c(e.message||e.name,r(d,{color:"error",children:r("pre",{style:{maxHeight:"480px",overflowY:"auto",scrollbarWidth:"thin",scrollbarColor:"rgba(0, 0, 0, 0.2) transparent"},children:e.stack||l.componentStack||"No stack trace available"})}))}})}export{f as createRouter};
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import"../components/index.js";import t from"../components/vef-access-denied-page/index.js";function e(){return{component:t}}export{e as createAccessDeniedRouteOptions};
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import{createAccessDeniedRouteOptions as t}from"./access-denied.js";import{createLayoutRouteOptions as c}from"./layout.js";import{createLoginRouteOptions as s}from"./login.js";import{createRootRoute as u}from"./root.js";export{t as createAccessDeniedRouteOptions,c as createLayoutRouteOptions,s as createLoginRouteOptions,u as createRootRoute};
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import{jsx as i}from"@emotion/react/jsx-runtime";import{useRouter as E,useNavigate as _,useLocation as S,Outlet as j,redirect as l}from"@tanstack/react-router";import{VefIcon as z,VefLayout as D,VefLoadingPlaceholder as G}from"@vef-framework/components";import{useApiContext as N}from"@vef-framework/core";import{buildRouteParentMenusMappings as T}from"@vef-framework/shared";import{HomeIcon as U}from"lucide-react";import{useMemo as x,useCallback as g}from"react";import{INDEX_PAGE_PATH as H,ACCESS_DENIED_PAGE_PATH as b,LOGIN_PAGE_PATH as K}from"../constants.js";import{handleClientLogout as R}from"../helper.js";import{useAppStore as p}from"../store.js";const V={key:H,label:i(z,{children:i(U,{})})};function B({title:A,logo:M,getUserDescription:y,userMenuItems:P,onUserMenuClick:k}){function C(){const r=E(),o=_(),{pathname:t}=S(),[s,n,a]=p(e=>[e.menus,e.user,e.routeParentMenusMappings]),u=a?.get(t)?.[1].map(e=>e.key),I=x(()=>{const e=a?.get(t);if(!e)return[];const[L,v]=e;return[V,...v.map(c=>({key:c.key,label:c.label,dropdownItems:c.children.filter(m=>m.type!=="divider").map(m=>({key:m.key,label:m.label}))})),{label:L.label}]},[t,a]),{logoutApi:w,fetchAuthenticatedUserApi:f}=N(),{mutate:d}=w.useMutation(),O=g(async()=>{await d(),await R(r,f)},[d,r,f]),h=g(e=>{o({to:e})},[o]);return i(D,{activeMenuKey:t,breadcrumbItems:I,defaultOpenedMenuKeys:u,logo:M,menuItems:s,title:A,userAvatar:n?.avatar,userDescription:y?.(n),userGender:n?.gender,userMenuItems:P,userName:n?.name,onActiveMenuKeyChange:h,onBreadcrumbClick:h,onLogout:O,onUserMenuClick:k,children:i(j,{})})}return{beforeLoad:({location:r})=>{const{isAuthenticated:o,routeParentMenusMappings:t}=p.getState();if(!o)throw l({to:K,search:{redirect:r.href}});if(t&&!t.has(r.pathname))throw l({to:b,replace:!0})},loader:async({context:r,location:o})=>{const{fetchAuthenticatedUserApi:t}=r,{menus:s,permissions:n,...a}=await t.fetchQuery(),u=Object.freeze(T(s));if(p.setState({user:Object.freeze(a),menus:Object.freeze(s),permissions:Object.freeze(new Set(n)),routeParentMenusMappings:u}),!u.has(o.pathname))throw l({to:b,replace:!0})},pendingComponent:()=>i(G,{size:"large",tip:"系统加载中,请稍后..."}),component:C,staleTime:1/0,gcTime:0,shouldReload:!1}}export{B as createLayoutRouteOptions};
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import{jsx as c}from"@emotion/react/jsx-runtime";import{redirect as m}from"@tanstack/react-router";import{z as t}from"@vef-framework/shared";import"../components/index.js";import{INDEX_PAGE_PATH as r}from"../constants.js";import{useAppStore as p}from"../store.js";import a from"../components/vef-login-page/index.js";function n(o){return{validateSearch:t.object({redirect:t.string().optional().default(r).catch(r)}),beforeLoad:({search:e})=>{if(p.getState().isAuthenticated){const{redirect:i}=e;throw m({to:i,replace:!0})}},component:()=>c(a,{...o})}}export{n as createLoginRouteOptions};
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import{jsxs as t,Fragment as r,jsx as o}from"@emotion/react/jsx-runtime";import{createRootRouteWithContext as e,Outlet as m}from"@tanstack/react-router";import"../components/index.js";import n from"../components/vef-not-found-page/index.js";import p from"../components/vef-error-page/index.js";import i from"../components/vef-dev-assistant/index.js";function s(){return e()({component:()=>t(r,{children:[o(m,{}),process.env.NODE_ENV==="development"&&o(i,{})]}),errorComponent:p,notFoundComponent:n,ssr:!1})}export{s as createRootRoute};
package/esm/store.js DELETED
@@ -1,2 +0,0 @@
1
- "use strict";
2
- import{createStore as e}from"@vef-framework/shared";const s=e(()=>({isAuthenticated:!1}),{name:"APP",storage:"session",selector:t=>({isAuthenticated:t.isAuthenticated,token:t.token})});export{s as useAppStore};
package/types/api.d.ts DELETED
@@ -1,9 +0,0 @@
1
- import type { ApiClientOptions } from "@vef-framework/core";
2
- import type { Except } from "@vef-framework/shared";
3
- /**
4
- * Create a new API client.
5
- *
6
- * @param options The options of the API client.
7
- * @returns The API client.
8
- */
9
- export declare function createApiClient(options: Except<ApiClientOptions, "getAccessToken" | "onInfoMessage" | "onWarningMessage" | "onErrorMessage">): Readonly<import("@vef-framework/core").ApiClient>;
package/types/app.d.ts DELETED
@@ -1,15 +0,0 @@
1
- import type { VefAppProps } from "./components";
2
- /**
3
- * The options for the VefApp.
4
- */
5
- export interface AppOptions {
6
- }
7
- /**
8
- * Create a VefApp instance.
9
- *
10
- * @returns The VefApp instance.
11
- */
12
- export declare function createApp(): {
13
- render: (props: VefAppProps) => void;
14
- unmount: () => void;
15
- };