@oinone/kunlun-vue-admin-layout 6.2.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 (355) hide show
  1. package/README.md +1 -0
  2. package/dist/oinone-kunlun-vue-admin-layout.css +1 -0
  3. package/dist/oinone-kunlun-vue-admin-layout.esm.js +12049 -0
  4. package/dist/oinone-kunlun-vue-admin-layout.scss +1 -0
  5. package/dist/types/index.d.ts +1 -0
  6. package/dist/types/src/basic/MaskWidget.d.ts +17 -0
  7. package/dist/types/src/basic/index.d.ts +2 -0
  8. package/dist/types/src/basic/register/index.d.ts +1 -0
  9. package/dist/types/src/basic/register/manager.d.ts +7 -0
  10. package/dist/types/src/basic/token/BaseMaskWidget.d.ts +55 -0
  11. package/dist/types/src/basic/token/index.d.ts +1 -0
  12. package/dist/types/src/component/app-switcher/AppSwitcher.vue.d.ts +84 -0
  13. package/dist/types/src/component/app-switcher/AppSwitcherMask.vue.d.ts +61 -0
  14. package/dist/types/src/component/app-switcher/AppSwitcherWidget.d.ts +33 -0
  15. package/dist/types/src/component/app-switcher/index.d.ts +3 -0
  16. package/dist/types/src/component/breadcrumb/BreadcrumbWidget.d.ts +33 -0
  17. package/dist/types/src/component/breadcrumb/DefaultBreadcrumb.vue.d.ts +58 -0
  18. package/dist/types/src/component/breadcrumb/index.d.ts +2 -0
  19. package/dist/types/src/component/debug/Debug.vue.d.ts +11 -0
  20. package/dist/types/src/component/debug/DebugWidget.d.ts +8 -0
  21. package/dist/types/src/component/debug/constants.d.ts +2 -0
  22. package/dist/types/src/component/debug/index.d.ts +6 -0
  23. package/dist/types/src/component/debug/spi/DebugMaskEditor.d.ts +6 -0
  24. package/dist/types/src/component/debug/spi/DebugRouterInitializeService.d.ts +4 -0
  25. package/dist/types/src/component/debug/spi/index.d.ts +1 -0
  26. package/dist/types/src/component/debug/typing.d.ts +159 -0
  27. package/dist/types/src/component/debug/view/DebugMainView.vue.d.ts +28 -0
  28. package/dist/types/src/component/debug/view/DebugMainViewWidget.d.ts +9 -0
  29. package/dist/types/src/component/debug/view/components/DebugDefaultInfo.vue.d.ts +22 -0
  30. package/dist/types/src/component/debug/view/components/DebugJsonView.vue.d.ts +26 -0
  31. package/dist/types/src/component/debug/view/components/DebugRequestInfoPanel.vue.d.ts +22 -0
  32. package/dist/types/src/component/debug/view/components/DebugResponsePanel.vue.d.ts +12 -0
  33. package/dist/types/src/component/debug/view/debug-api/DebugApi.vue.d.ts +52 -0
  34. package/dist/types/src/component/debug/view/debug-api/DebugApiWidget.d.ts +32 -0
  35. package/dist/types/src/component/debug/view/debug-utils.d.ts +44 -0
  36. package/dist/types/src/component/debug/view/debug-view/DebugView.vue.d.ts +78 -0
  37. package/dist/types/src/component/debug/view/debug-view/DebugViewWidget.d.ts +26 -0
  38. package/dist/types/src/component/debug/view/index.d.ts +5 -0
  39. package/dist/types/src/component/debug/view/service/DebugRuntimeContextService.d.ts +18 -0
  40. package/dist/types/src/component/debug/view/service/DebugStackInfoService.d.ts +27 -0
  41. package/dist/types/src/component/debug/view/service/impl/runtime-context/DebugDefaultRuntimeContextService.d.ts +6 -0
  42. package/dist/types/src/component/debug/view/service/impl/runtime-context/DebugRuntimeActionService.d.ts +7 -0
  43. package/dist/types/src/component/debug/view/service/impl/runtime-context/DebugRuntimeDslService.d.ts +6 -0
  44. package/dist/types/src/component/debug/view/service/impl/runtime-context/DebugRuntimeFieldService.d.ts +7 -0
  45. package/dist/types/src/component/debug/view/service/impl/runtime-context/DebugRuntimeLayoutService.d.ts +6 -0
  46. package/dist/types/src/component/debug/view/service/impl/runtime-context/DebugRuntimeMaskService.d.ts +6 -0
  47. package/dist/types/src/component/debug/view/service/impl/runtime-context/DebugRuntimeTemplateService.d.ts +6 -0
  48. package/dist/types/src/component/debug/view/service/impl/runtime-context/DebugRuntimeViewService.d.ts +6 -0
  49. package/dist/types/src/component/debug/view/service/impl/stack-info/DebugBizStackService.d.ts +6 -0
  50. package/dist/types/src/component/debug/view/service/impl/stack-info/DebugConfigureService.d.ts +4 -0
  51. package/dist/types/src/component/debug/view/service/impl/stack-info/DebugDefaultStackInfoService.d.ts +8 -0
  52. package/dist/types/src/component/debug/view/service/impl/stack-info/DebugExceptionStackService.d.ts +6 -0
  53. package/dist/types/src/component/debug/view/service/impl/stack-info/DebugFunctionService.d.ts +4 -0
  54. package/dist/types/src/component/debug/view/service/impl/stack-info/DebugHalfBizStackService.d.ts +6 -0
  55. package/dist/types/src/component/debug/view/service/impl/stack-info/DebugModelService.d.ts +4 -0
  56. package/dist/types/src/component/debug/view/service/impl/stack-info/DebugPureBizStackService.d.ts +6 -0
  57. package/dist/types/src/component/debug/view/service/impl/stack-info/DebugStacktraceGqlRequestContextService.d.ts +6 -0
  58. package/dist/types/src/component/debug/view/service/impl/stack-info/DebugStacktraceSceneAnalysisService.d.ts +7 -0
  59. package/dist/types/src/component/debug/view/service/impl/stack-info/DebugStacktraceSessionService.d.ts +6 -0
  60. package/dist/types/src/component/debug/view/service/index.d.ts +20 -0
  61. package/dist/types/src/component/debug/view/storage.d.ts +19 -0
  62. package/dist/types/src/component/debug/view/useDebugRequestInfo.d.ts +7 -0
  63. package/dist/types/src/component/divider/Divider.vue.d.ts +2 -0
  64. package/dist/types/src/component/divider/DividerWidget.d.ts +4 -0
  65. package/dist/types/src/component/divider/index.d.ts +1 -0
  66. package/dist/types/src/component/index.d.ts +14 -0
  67. package/dist/types/src/component/language/DefaultLanguage.vue.d.ts +34 -0
  68. package/dist/types/src/component/language/LanguageWidget.d.ts +16 -0
  69. package/dist/types/src/component/language/index.d.ts +1 -0
  70. package/dist/types/src/component/layout/BaseMaskLayoutWidget.d.ts +4 -0
  71. package/dist/types/src/component/layout/MaskBlock.vue.d.ts +24 -0
  72. package/dist/types/src/component/layout/block/MaskBlockWidget.d.ts +4 -0
  73. package/dist/types/src/component/layout/block/index.d.ts +1 -0
  74. package/dist/types/src/component/layout/container/MaskContainerWidget.d.ts +4 -0
  75. package/dist/types/src/component/layout/container/index.d.ts +1 -0
  76. package/dist/types/src/component/layout/content/MaskContentWidget.d.ts +7 -0
  77. package/dist/types/src/component/layout/content/index.d.ts +1 -0
  78. package/dist/types/src/component/layout/grid/Grid.vue.d.ts +2 -0
  79. package/dist/types/src/component/layout/grid/GridWidget.d.ts +9 -0
  80. package/dist/types/src/component/layout/grid/index.d.ts +1 -0
  81. package/dist/types/src/component/layout/header/MaskHeaderWidget.d.ts +4 -0
  82. package/dist/types/src/component/layout/header/index.d.ts +1 -0
  83. package/dist/types/src/component/layout/index.d.ts +9 -0
  84. package/dist/types/src/component/layout/mask/MaskRootWidget.d.ts +4 -0
  85. package/dist/types/src/component/layout/mask/index.d.ts +1 -0
  86. package/dist/types/src/component/layout/sidebar/MaskSidebarWidget.d.ts +10 -0
  87. package/dist/types/src/component/layout/sidebar/index.d.ts +1 -0
  88. package/dist/types/src/component/layout/widget/MaskCommonWidget.d.ts +14 -0
  89. package/dist/types/src/component/layout/widget/index.d.ts +1 -0
  90. package/dist/types/src/component/menu/DefaultMenu.vue.d.ts +115 -0
  91. package/dist/types/src/component/menu/DefaultSubMenu.vue.d.ts +17 -0
  92. package/dist/types/src/component/menu/MenuWidget.d.ts +71 -0
  93. package/dist/types/src/component/menu/index.d.ts +3 -0
  94. package/dist/types/src/component/multi-tabs/MultiTabs.vue.d.ts +151 -0
  95. package/dist/types/src/component/multi-tabs/MultiTabsWidget.d.ts +60 -0
  96. package/dist/types/src/component/multi-tabs/index.d.ts +2 -0
  97. package/dist/types/src/component/multi-tabs/typing.d.ts +6 -0
  98. package/dist/types/src/component/notification/DefaultNotification.vue.d.ts +61 -0
  99. package/dist/types/src/component/notification/NotificationWidget.d.ts +139 -0
  100. package/dist/types/src/component/notification/index.d.ts +2 -0
  101. package/dist/types/src/component/order-statistic/OrderStatistic.vue.d.ts +8 -0
  102. package/dist/types/src/component/order-statistic/index.d.ts +14 -0
  103. package/dist/types/src/component/partner-switcher/PartnerSwitcher.vue.d.ts +28 -0
  104. package/dist/types/src/component/partner-switcher/PartnerSwitcherWidget.d.ts +15 -0
  105. package/dist/types/src/component/partner-switcher/index.d.ts +6 -0
  106. package/dist/types/src/component/partner-switcher/service/PartnerSwitcherService.d.ts +17 -0
  107. package/dist/types/src/component/partner-switcher/service/impl/PartnerSwitcherServiceImpl.d.ts +17 -0
  108. package/dist/types/src/component/partner-switcher/service/index.d.ts +2 -0
  109. package/dist/types/src/component/partner-switcher/session/PartnerInfoSession.d.ts +26 -0
  110. package/dist/types/src/component/partner-switcher/session/impl/DefaultPartnerInfoSession.d.ts +15 -0
  111. package/dist/types/src/component/partner-switcher/session/index.d.ts +2 -0
  112. package/dist/types/src/component/partner-switcher/spi/PartnerSwitcherMaskEditor.d.ts +6 -0
  113. package/dist/types/src/component/partner-switcher/spi/index.d.ts +1 -0
  114. package/dist/types/src/component/partner-switcher/typing/index.d.ts +1 -0
  115. package/dist/types/src/component/partner-switcher/typing/partner.d.ts +20 -0
  116. package/dist/types/src/component/quick-search/QuickSearch.vue.d.ts +29 -0
  117. package/dist/types/src/component/quick-search/index.d.ts +24 -0
  118. package/dist/types/src/component/user/DefaultUser.vue.d.ts +39 -0
  119. package/dist/types/src/component/user/UserWidget.d.ts +16 -0
  120. package/dist/types/src/component/user/index.d.ts +1 -0
  121. package/dist/types/src/config/DebugConfig.d.ts +16 -0
  122. package/dist/types/src/config/PartnerSwitcherConfig.d.ts +16 -0
  123. package/dist/types/src/config/index.d.ts +2 -0
  124. package/dist/types/src/index.d.ts +10 -0
  125. package/dist/types/src/service/index.d.ts +5 -0
  126. package/dist/types/src/service/menu-service.d.ts +12 -0
  127. package/dist/types/src/service/message-service.d.ts +16 -0
  128. package/dist/types/src/service/module-service.d.ts +7 -0
  129. package/dist/types/src/service/top-bar-service.d.ts +10 -0
  130. package/dist/types/src/service/user-service.d.ts +4 -0
  131. package/dist/types/src/spi/index.d.ts +1 -0
  132. package/dist/types/src/spi/mask-editor.d.ts +54 -0
  133. package/dist/types/src/tags/Block.vue.d.ts +5 -0
  134. package/dist/types/src/tags/Breadcrumb.vue.d.ts +5 -0
  135. package/dist/types/src/tags/Container.vue.d.ts +5 -0
  136. package/dist/types/src/tags/Content.vue.d.ts +5 -0
  137. package/dist/types/src/tags/Header.vue.d.ts +5 -0
  138. package/dist/types/src/tags/Mask.vue.d.ts +5 -0
  139. package/dist/types/src/tags/MultiTabs.vue.d.ts +5 -0
  140. package/dist/types/src/tags/Sidebar.vue.d.ts +5 -0
  141. package/dist/types/src/tags/Widget.vue.d.ts +5 -0
  142. package/dist/types/src/tags/context/context.d.ts +8 -0
  143. package/dist/types/src/tags/context/index.d.ts +1 -0
  144. package/dist/types/src/tags/index.d.ts +6 -0
  145. package/dist/types/src/tags/mixin/MaskWidgetTagMixin.d.ts +2 -0
  146. package/dist/types/src/tags/mixin/index.d.ts +3 -0
  147. package/dist/types/src/tags/mixin/typing.d.ts +6 -0
  148. package/dist/types/src/tags/mixin/use-mask-widget-tag.d.ts +38 -0
  149. package/dist/types/src/tags/register/index.d.ts +1 -0
  150. package/dist/types/src/tags/register/manager.d.ts +9 -0
  151. package/dist/types/src/tags/resolve/index.d.ts +2 -0
  152. package/dist/types/src/tags/resolve/internal/index.d.ts +2 -0
  153. package/dist/types/src/tags/resolve/internal/typing.d.ts +5 -0
  154. package/dist/types/src/tags/resolve/internal/widget-resolve.d.ts +3 -0
  155. package/dist/types/src/tags/resolve/typing.d.ts +26 -0
  156. package/dist/types/src/tags/resolve/widget-resolve.d.ts +5 -0
  157. package/dist/types/src/template/default-mask.d.ts +2 -0
  158. package/dist/types/src/template/index.d.ts +6 -0
  159. package/dist/types/src/theme/index.d.ts +1 -0
  160. package/dist/types/src/typing/constant.d.ts +1 -0
  161. package/dist/types/src/typing/index.d.ts +3 -0
  162. package/dist/types/src/typing/menu.d.ts +12 -0
  163. package/dist/types/src/typing/stream-symble.d.ts +12 -0
  164. package/dist/types/src/util/HomepageUtils.d.ts +3 -0
  165. package/dist/types/src/util/MenuUtil.d.ts +5 -0
  166. package/dist/types/src/util/index.d.ts +3 -0
  167. package/dist/types/src/util/unauthorized-action.d.ts +14 -0
  168. package/dist/types/src/utils.d.ts +86 -0
  169. package/index.ts +1 -0
  170. package/package.json +47 -0
  171. package/rollup.config.js +33 -0
  172. package/src/basic/MaskWidget.ts +74 -0
  173. package/src/basic/index.ts +2 -0
  174. package/src/basic/register/index.ts +1 -0
  175. package/src/basic/register/manager.ts +17 -0
  176. package/src/basic/token/BaseMaskWidget.ts +187 -0
  177. package/src/basic/token/index.ts +1 -0
  178. package/src/component/app-switcher/AppSwitcher.vue +133 -0
  179. package/src/component/app-switcher/AppSwitcherMask.vue +237 -0
  180. package/src/component/app-switcher/AppSwitcherWidget.ts +152 -0
  181. package/src/component/app-switcher/index.ts +3 -0
  182. package/src/component/breadcrumb/BreadcrumbWidget.ts +167 -0
  183. package/src/component/breadcrumb/DefaultBreadcrumb.vue +95 -0
  184. package/src/component/breadcrumb/index.ts +2 -0
  185. package/src/component/debug/Debug.vue +28 -0
  186. package/src/component/debug/DebugWidget.ts +38 -0
  187. package/src/component/debug/constants.ts +3 -0
  188. package/src/component/debug/index.ts +6 -0
  189. package/src/component/debug/spi/DebugMaskEditor.ts +19 -0
  190. package/src/component/debug/spi/DebugRouterInitializeService.ts +21 -0
  191. package/src/component/debug/spi/index.ts +1 -0
  192. package/src/component/debug/typing.ts +191 -0
  193. package/src/component/debug/view/DebugMainView.vue +206 -0
  194. package/src/component/debug/view/DebugMainViewWidget.ts +42 -0
  195. package/src/component/debug/view/components/DebugDefaultInfo.vue +31 -0
  196. package/src/component/debug/view/components/DebugJsonView.vue +107 -0
  197. package/src/component/debug/view/components/DebugRequestInfoPanel.vue +129 -0
  198. package/src/component/debug/view/components/DebugResponsePanel.vue +66 -0
  199. package/src/component/debug/view/components/runtime-context/DebugRuntimeFieldComponent.vue +29 -0
  200. package/src/component/debug/view/debug-api/DebugApi.vue +225 -0
  201. package/src/component/debug/view/debug-api/DebugApiWidget.ts +400 -0
  202. package/src/component/debug/view/debug-utils.ts +114 -0
  203. package/src/component/debug/view/debug-view/DebugView.vue +331 -0
  204. package/src/component/debug/view/debug-view/DebugViewWidget.ts +181 -0
  205. package/src/component/debug/view/index.ts +6 -0
  206. package/src/component/debug/view/service/DebugRuntimeContextService.ts +21 -0
  207. package/src/component/debug/view/service/DebugStackInfoService.ts +33 -0
  208. package/src/component/debug/view/service/impl/runtime-context/DebugDefaultRuntimeContextService.ts +16 -0
  209. package/src/component/debug/view/service/impl/runtime-context/DebugRuntimeActionService.ts +28 -0
  210. package/src/component/debug/view/service/impl/runtime-context/DebugRuntimeDslService.ts +16 -0
  211. package/src/component/debug/view/service/impl/runtime-context/DebugRuntimeFieldService.ts +33 -0
  212. package/src/component/debug/view/service/impl/runtime-context/DebugRuntimeLayoutService.ts +16 -0
  213. package/src/component/debug/view/service/impl/runtime-context/DebugRuntimeMaskService.ts +30 -0
  214. package/src/component/debug/view/service/impl/runtime-context/DebugRuntimeTemplateService.ts +16 -0
  215. package/src/component/debug/view/service/impl/runtime-context/DebugRuntimeViewService.ts +16 -0
  216. package/src/component/debug/view/service/impl/stack-info/DebugBizStackService.ts +19 -0
  217. package/src/component/debug/view/service/impl/stack-info/DebugConfigureService.ts +6 -0
  218. package/src/component/debug/view/service/impl/stack-info/DebugDefaultStackInfoService.ts +62 -0
  219. package/src/component/debug/view/service/impl/stack-info/DebugExceptionStackService.ts +19 -0
  220. package/src/component/debug/view/service/impl/stack-info/DebugFunctionService.ts +6 -0
  221. package/src/component/debug/view/service/impl/stack-info/DebugHalfBizStackService.ts +19 -0
  222. package/src/component/debug/view/service/impl/stack-info/DebugModelService.ts +6 -0
  223. package/src/component/debug/view/service/impl/stack-info/DebugPureBizStackService.ts +19 -0
  224. package/src/component/debug/view/service/impl/stack-info/DebugStacktraceGqlRequestContextService.ts +22 -0
  225. package/src/component/debug/view/service/impl/stack-info/DebugStacktraceSceneAnalysisService.ts +35 -0
  226. package/src/component/debug/view/service/impl/stack-info/DebugStacktraceSessionService.ts +19 -0
  227. package/src/component/debug/view/service/index.ts +22 -0
  228. package/src/component/debug/view/storage.ts +35 -0
  229. package/src/component/debug/view/useDebugRequestInfo.ts +17 -0
  230. package/src/component/divider/Divider.vue +15 -0
  231. package/src/component/divider/DividerWidget.ts +12 -0
  232. package/src/component/divider/index.ts +1 -0
  233. package/src/component/index.ts +15 -0
  234. package/src/component/language/DefaultLanguage.vue +111 -0
  235. package/src/component/language/LanguageWidget.ts +72 -0
  236. package/src/component/language/index.ts +1 -0
  237. package/src/component/layout/BaseMaskLayoutWidget.ts +12 -0
  238. package/src/component/layout/MaskBlock.vue +31 -0
  239. package/src/component/layout/block/MaskBlockWidget.ts +17 -0
  240. package/src/component/layout/block/index.ts +1 -0
  241. package/src/component/layout/container/MaskContainerWidget.ts +13 -0
  242. package/src/component/layout/container/index.ts +1 -0
  243. package/src/component/layout/content/MaskContentWidget.ts +41 -0
  244. package/src/component/layout/content/index.ts +1 -0
  245. package/src/component/layout/grid/Grid.vue +10 -0
  246. package/src/component/layout/grid/GridWidget.ts +62 -0
  247. package/src/component/layout/grid/index.ts +1 -0
  248. package/src/component/layout/header/MaskHeaderWidget.ts +13 -0
  249. package/src/component/layout/header/index.ts +1 -0
  250. package/src/component/layout/index.ts +9 -0
  251. package/src/component/layout/mask/MaskRootWidget.ts +13 -0
  252. package/src/component/layout/mask/index.ts +1 -0
  253. package/src/component/layout/sidebar/MaskSidebarWidget.ts +31 -0
  254. package/src/component/layout/sidebar/index.ts +1 -0
  255. package/src/component/layout/widget/MaskCommonWidget.ts +95 -0
  256. package/src/component/layout/widget/index.ts +1 -0
  257. package/src/component/menu/DefaultMenu.vue +252 -0
  258. package/src/component/menu/DefaultSubMenu.vue +68 -0
  259. package/src/component/menu/MenuWidget.ts +349 -0
  260. package/src/component/menu/index.ts +3 -0
  261. package/src/component/menu/style/common.scss +411 -0
  262. package/src/component/menu/style/index.scss +2 -0
  263. package/src/component/menu/style/menu-theme/index.scss +5 -0
  264. package/src/component/menu/style/menu-theme/theme2.scss +37 -0
  265. package/src/component/menu/style/menu-theme/theme3.scss +59 -0
  266. package/src/component/menu/style/menu-theme/theme4.scss +56 -0
  267. package/src/component/menu/style/menu-theme/theme5.scss +45 -0
  268. package/src/component/menu/style/menu-theme/theme6.scss +45 -0
  269. package/src/component/menu/style/mixin.scss +23 -0
  270. package/src/component/multi-tabs/MultiTabs.vue +475 -0
  271. package/src/component/multi-tabs/MultiTabsWidget.ts +450 -0
  272. package/src/component/multi-tabs/index.ts +2 -0
  273. package/src/component/multi-tabs/style/index.scss +217 -0
  274. package/src/component/multi-tabs/style/mixin.scss +13 -0
  275. package/src/component/multi-tabs/style/parameters.scss +2 -0
  276. package/src/component/multi-tabs/style/theme1.scss +92 -0
  277. package/src/component/multi-tabs/style/theme2.scss +89 -0
  278. package/src/component/multi-tabs/style/theme3.scss +60 -0
  279. package/src/component/multi-tabs/style/theme4.scss +85 -0
  280. package/src/component/multi-tabs/typing.ts +7 -0
  281. package/src/component/notification/DefaultNotification.vue +455 -0
  282. package/src/component/notification/NotificationWidget.ts +332 -0
  283. package/src/component/notification/index.ts +2 -0
  284. package/src/component/order-statistic/OrderStatistic.vue +12 -0
  285. package/src/component/order-statistic/index.ts +146 -0
  286. package/src/component/partner-switcher/PartnerSwitcher.vue +75 -0
  287. package/src/component/partner-switcher/PartnerSwitcherWidget.ts +70 -0
  288. package/src/component/partner-switcher/index.ts +6 -0
  289. package/src/component/partner-switcher/service/PartnerSwitcherService.ts +20 -0
  290. package/src/component/partner-switcher/service/impl/PartnerSwitcherServiceImpl.ts +48 -0
  291. package/src/component/partner-switcher/service/index.ts +2 -0
  292. package/src/component/partner-switcher/session/PartnerInfoSession.ts +32 -0
  293. package/src/component/partner-switcher/session/impl/DefaultPartnerInfoSession.ts +46 -0
  294. package/src/component/partner-switcher/session/index.ts +2 -0
  295. package/src/component/partner-switcher/spi/PartnerSwitcherMaskEditor.ts +24 -0
  296. package/src/component/partner-switcher/spi/index.ts +1 -0
  297. package/src/component/partner-switcher/typing/index.ts +1 -0
  298. package/src/component/partner-switcher/typing/partner.ts +22 -0
  299. package/src/component/quick-search/QuickSearch.vue +34 -0
  300. package/src/component/quick-search/index.ts +237 -0
  301. package/src/component/style/index.scss +4 -0
  302. package/src/component/style/layout.scss +229 -0
  303. package/src/component/user/DefaultUser.vue +92 -0
  304. package/src/component/user/UserWidget.ts +129 -0
  305. package/src/component/user/index.ts +1 -0
  306. package/src/config/DebugConfig.ts +30 -0
  307. package/src/config/PartnerSwitcherConfig.ts +30 -0
  308. package/src/config/index.ts +2 -0
  309. package/src/index.ts +11 -0
  310. package/src/service/index.ts +5 -0
  311. package/src/service/menu-service.ts +105 -0
  312. package/src/service/message-service.ts +65 -0
  313. package/src/service/module-service.ts +69 -0
  314. package/src/service/top-bar-service.ts +144 -0
  315. package/src/service/user-service.ts +10 -0
  316. package/src/shim-translate.d.ts +7 -0
  317. package/src/shim-vue.d.ts +6 -0
  318. package/src/spi/index.ts +1 -0
  319. package/src/spi/mask-editor.ts +102 -0
  320. package/src/tags/Block.vue +16 -0
  321. package/src/tags/Breadcrumb.vue +16 -0
  322. package/src/tags/Container.vue +16 -0
  323. package/src/tags/Content.vue +16 -0
  324. package/src/tags/Header.vue +16 -0
  325. package/src/tags/Mask.vue +16 -0
  326. package/src/tags/MultiTabs.vue +16 -0
  327. package/src/tags/Sidebar.vue +16 -0
  328. package/src/tags/Widget.vue +16 -0
  329. package/src/tags/context/context.ts +24 -0
  330. package/src/tags/context/index.ts +1 -0
  331. package/src/tags/index.ts +48 -0
  332. package/src/tags/mixin/MaskWidgetTagMixin.ts +79 -0
  333. package/src/tags/mixin/index.ts +3 -0
  334. package/src/tags/mixin/typing.ts +8 -0
  335. package/src/tags/mixin/use-mask-widget-tag.ts +172 -0
  336. package/src/tags/register/index.ts +1 -0
  337. package/src/tags/register/manager.ts +43 -0
  338. package/src/tags/resolve/index.ts +2 -0
  339. package/src/tags/resolve/internal/index.ts +2 -0
  340. package/src/tags/resolve/internal/typing.ts +6 -0
  341. package/src/tags/resolve/internal/widget-resolve.ts +57 -0
  342. package/src/tags/resolve/typing.ts +39 -0
  343. package/src/tags/resolve/widget-resolve.ts +64 -0
  344. package/src/template/default-mask.ts +51 -0
  345. package/src/template/index.ts +26 -0
  346. package/src/theme/index.ts +1 -0
  347. package/src/typing/constant.ts +3 -0
  348. package/src/typing/index.ts +3 -0
  349. package/src/typing/menu.ts +15 -0
  350. package/src/typing/stream-symble.ts +14 -0
  351. package/src/util/HomepageUtils.ts +41 -0
  352. package/src/util/MenuUtil.ts +18 -0
  353. package/src/util/index.ts +3 -0
  354. package/src/util/unauthorized-action.ts +98 -0
  355. package/src/utils.ts +716 -0
@@ -0,0 +1,68 @@
1
+ <template>
2
+ <a-sub-menu
3
+ popupClassName="inline-menu-popup"
4
+ :class="['oio-scrollbar', 'root-sub-menu-' + treeNode.level, treeNode.level === 1 ? 'root-menu' : 'not-root-menu']"
5
+ :key="treeNode.key"
6
+ >
7
+ <template #title>
8
+ <oio-icon
9
+ v-if="treeNode.level === 1"
10
+ color="var(--oio-menu-default-icon-color)"
11
+ size="14"
12
+ :icon="treeNode.value.icon || DEFAULT_MENU_ICON"
13
+ />
14
+ <span :title="treeNode.value.title">{{ treeNode.value.title }}</span>
15
+ </template>
16
+ <template v-for="item in treeNode.children" :key="item.key">
17
+ <template v-if="!item.children || !item.children.length">
18
+ <a-menu-item class="oio-sub-menu-menu-item" :key="item.key" :title="item.value.title">
19
+ {{ item.value.title }}
20
+ </a-menu-item>
21
+ </template>
22
+ <template v-else>
23
+ <default-sub-menu :tree-node="item" :key="item.key" />
24
+ </template>
25
+ </template>
26
+ <template #expandIcon="{ isOpen }">
27
+ <oio-icon
28
+ v-if="treeNode.children"
29
+ icon="oinone-menu-caidanxiala"
30
+ color="var(--oio-menu-root-title-hover-color)"
31
+ :style="{
32
+ transform: isOpen ? 'rotate(360deg)' : 'rotate(270deg)',
33
+ transition: 'all 0.3s ease'
34
+ }"
35
+ />
36
+ </template>
37
+ </a-sub-menu>
38
+ </template>
39
+ <script lang="ts">
40
+ import { IMenu } from '@oinone/kunlun-meta';
41
+ import { TreeNode } from '@oinone/kunlun-shared';
42
+ import { OioIcon } from '@oinone/kunlun-vue-ui-antd';
43
+ import { MenuItem as AMenuItem, SubMenu as ASubMenu } from 'ant-design-vue';
44
+ import { defineComponent, PropType } from 'vue';
45
+
46
+ export default defineComponent({
47
+ name: 'DefaultSubMenu',
48
+ components: {
49
+ OioIcon,
50
+ ASubMenu,
51
+ AMenuItem
52
+ },
53
+ inheritAttrs: false,
54
+ props: {
55
+ treeNode: {
56
+ type: Object as PropType<TreeNode<IMenu>>,
57
+ required: true
58
+ }
59
+ },
60
+ setup() {
61
+ const DEFAULT_MENU_ICON = 'oinone-menu-caidanmoren';
62
+
63
+ return {
64
+ DEFAULT_MENU_ICON
65
+ };
66
+ }
67
+ });
68
+ </script>
@@ -0,0 +1,349 @@
1
+ import {
2
+ $systemMajorConfig,
3
+ executeUrlAction,
4
+ MultiTabsRuntimeManifestMergedConfigManager,
5
+ OioProvider,
6
+ ReloadMaskCallChainingParameters,
7
+ SideBarTheme,
8
+ systemMajorConfig,
9
+ translateValueByKey
10
+ } from '@oinone/kunlun-engine';
11
+ import { Expression, ExpressionRunParam } from '@oinone/kunlun-expression';
12
+ import { ActionType, IServerAction, IURLAction, IViewAction, ViewActionTarget } from '@oinone/kunlun-meta';
13
+ import { Router, useMatched } from '@oinone/kunlun-router';
14
+ import { callFunction } from '@oinone/kunlun-service';
15
+ import { SPI } from '@oinone/kunlun-spi';
16
+ import { Subscription } from '@oinone/kunlun-state';
17
+ import { useRouter } from '@oinone/kunlun-vue-router';
18
+ import { OioMessage, TreeNode } from '@oinone/kunlun-vue-ui-antd';
19
+ import { Widget, WidgetBehaviorSubjection } from '@oinone/kunlun-vue-widget';
20
+ import { MaskWidget } from '../../basic';
21
+ import { MenuService } from '../../service';
22
+ import { MenuCollapsedSymbol, MenuUrlParameters, RuntimeMenu } from '../../typing';
23
+ import { maskCollapsed } from '../../util';
24
+ import DefaultMenu from './DefaultMenu.vue';
25
+
26
+ @SPI.ClassFactory(MaskWidget.Token({ widget: 'nav-menu' }))
27
+ export class MenuWidget extends MaskWidget {
28
+ public initialize(props) {
29
+ super.initialize(props);
30
+ this.setComponent(DefaultMenu);
31
+ return this;
32
+ }
33
+
34
+ protected router!: Router;
35
+
36
+ protected $systemMajorConfig!: Subscription;
37
+
38
+ @Widget.Reactive()
39
+ protected menuClassList = {
40
+ [SideBarTheme.side1]: '',
41
+ [SideBarTheme.side2]: 'oinone-menu-theme2',
42
+ [SideBarTheme.side3]: 'oinone-menu-theme3',
43
+ [SideBarTheme.side4]: 'oinone-menu-theme4',
44
+ [SideBarTheme.side5]: 'oinone-menu-theme5',
45
+ [SideBarTheme.side6]: 'oinone-menu-theme6'
46
+ };
47
+
48
+ @Widget.Reactive()
49
+ protected menuTheme = systemMajorConfig.sideBarTheme || OioProvider.getConfig().sideBarTheme!;
50
+
51
+ @Widget.Reactive()
52
+ protected get menuThemeClass() {
53
+ return this.menuClassList[this.menuTheme?.theme || SideBarTheme.side1];
54
+ }
55
+
56
+ @Widget.Reactive()
57
+ protected moduleName: string | undefined;
58
+
59
+ @Widget.Reactive()
60
+ protected mode: 'horizontal' | 'inline' = 'inline';
61
+
62
+ @Widget.Reactive()
63
+ protected collapsed = false;
64
+
65
+ @Widget.BehaviorSubContext(MenuCollapsedSymbol, false)
66
+ protected collapsed$!: WidgetBehaviorSubjection<boolean>;
67
+
68
+ @Widget.Reactive()
69
+ protected menus: RuntimeMenu[] = [];
70
+
71
+ @Widget.Reactive()
72
+ protected treeNodes: TreeNode<RuntimeMenu>[] = [];
73
+
74
+ @Widget.Reactive()
75
+ protected selectedKeys: string[] | undefined;
76
+
77
+ @Widget.Reactive()
78
+ protected openKeys: string[] | undefined;
79
+
80
+ /**
81
+ * 在模块发生改变时调用
82
+ * @param moduleName 模块名称
83
+ * @protected
84
+ */
85
+ protected async onModuleChange(moduleName: string) {
86
+ if (moduleName === this.moduleName) {
87
+ return;
88
+ }
89
+ this.moduleName = moduleName;
90
+
91
+ const { menus, treeNodes } = await this.fetchMenus(moduleName);
92
+ this.menus = menus;
93
+ this.treeNodes = treeNodes;
94
+ }
95
+
96
+ /**
97
+ * 根据模块名称获取菜单
98
+ * @param moduleName 模块名称
99
+ * @protected
100
+ */
101
+ protected async fetchMenus(
102
+ moduleName: string
103
+ ): Promise<{ menus: RuntimeMenu[]; treeNodes: TreeNode<RuntimeMenu>[] }> {
104
+ const menus = (await MenuService.queryMenus(moduleName)) as RuntimeMenu[];
105
+ const treeNodes = MenuService.convert(menus);
106
+ MenuService.sort(treeNodes);
107
+ return {
108
+ menus,
109
+ treeNodes
110
+ };
111
+ }
112
+
113
+ @Widget.Method()
114
+ protected onOpenChange(openKeys: string[]) {
115
+ const latestOpenKey = openKeys.find((key) => this.openKeys?.indexOf(key) === -1);
116
+ if (this.treeNodes.findIndex((v) => v.key === latestOpenKey) === -1) {
117
+ this.openKeys = openKeys;
118
+ } else {
119
+ this.openKeys = latestOpenKey ? [latestOpenKey] : [];
120
+ }
121
+ }
122
+
123
+ /**
124
+ * 当菜单折叠/展开时
125
+ * @param collapsed
126
+ * @protected
127
+ */
128
+ @Widget.Method()
129
+ protected onCollapsedChange(collapsed: boolean) {
130
+ this.collapsed = collapsed;
131
+ maskCollapsed(collapsed);
132
+ this.collapsed$.subject.next(collapsed);
133
+ }
134
+
135
+ /**
136
+ * 点击菜单时
137
+ * @param node 当前菜单项
138
+ * @private
139
+ */
140
+ @Widget.Method()
141
+ protected async onClick(node: TreeNode<RuntimeMenu>) {
142
+ const menu = node.value;
143
+ if (!menu) {
144
+ return;
145
+ }
146
+ this.selectedKeys = [node.key];
147
+
148
+ const { viewAction, serverAction, urlAction, actionType } = menu;
149
+ if (!viewAction && !serverAction && !urlAction) {
150
+ OioMessage.warning(translateValueByKey('该菜单未配置页面或动作'));
151
+ return;
152
+ }
153
+ switch (actionType as ActionType) {
154
+ case ActionType.Server:
155
+ if (serverAction) {
156
+ await this.executeServerAction(menu, serverAction);
157
+ }
158
+ break;
159
+ case ActionType.View:
160
+ if (viewAction) {
161
+ this.executeViewAction(menu, viewAction);
162
+ }
163
+ break;
164
+ case ActionType.URL:
165
+ if (urlAction) {
166
+ this.executeUrlAction(menu, urlAction);
167
+ }
168
+ break;
169
+ default:
170
+ OioMessage.error(translateValueByKey('无法识别的动作类型'));
171
+ break;
172
+ }
173
+ }
174
+
175
+ @Widget.Method()
176
+ protected async onSelect(node: TreeNode<RuntimeMenu>) {
177
+ const menu = node.value;
178
+ if (!menu) {
179
+ return;
180
+ }
181
+ const { openKeys } = MenuService.generatorMenuUrlParameters(node);
182
+ this.openKeys = openKeys;
183
+
184
+ await this.onClick(node);
185
+ }
186
+
187
+ protected executeViewAction(menu: RuntimeMenu, viewAction: IViewAction) {
188
+ const { model, name, target } = viewAction;
189
+ const viewType = viewAction.resView?.type || viewAction.viewType;
190
+ const {
191
+ page: { language = '' }
192
+ } = useMatched().matched.segmentParams;
193
+ const menuUrlParameters: MenuUrlParameters = {
194
+ selectedKeys: this.selectedKeys || [],
195
+ openKeys: this.openKeys || []
196
+ };
197
+ const moduleName = viewAction.resModuleName || this.moduleName;
198
+ const parameters: Record<string, string | undefined> = {
199
+ module: moduleName,
200
+ viewType,
201
+ model,
202
+ action: name,
203
+ scene: name,
204
+ target,
205
+ menu: JSON.stringify(menuUrlParameters)
206
+ };
207
+ if (MultiTabsRuntimeManifestMergedConfigManager.isEnabled(moduleName)) {
208
+ parameters.target = ViewActionTarget.OpenWindow;
209
+ } else {
210
+ parameters.random = Date.now().toString();
211
+ }
212
+ if (language) {
213
+ parameters.language = language;
214
+ }
215
+ this.router.push({
216
+ segments: [
217
+ {
218
+ path: 'page',
219
+ extra: { preserveParameter: false },
220
+ parameters
221
+ }
222
+ ]
223
+ });
224
+ }
225
+
226
+ protected async executeServerAction(menu: RuntimeMenu, serverAction: IServerAction) {
227
+ const requestMapping = menu.mapping || {};
228
+ const menuContext = menu.context || {};
229
+ const requestParam = this.handleMenuMapping(requestMapping);
230
+ const requestVariables = this.handleMenuMapping(menuContext);
231
+ await callFunction(serverAction.model, serverAction, requestParam, undefined, requestVariables, { maxDepth: 1 });
232
+ }
233
+
234
+ protected executeUrlAction(menu: RuntimeMenu, urlAction: IURLAction) {
235
+ executeUrlAction(urlAction);
236
+ }
237
+
238
+ protected handleMenuMapping(mapping: Record<string, unknown>) {
239
+ const { page } = useMatched().matched.segmentParams;
240
+ const paramResult = {};
241
+
242
+ for (const key of Object.keys(mapping)) {
243
+ paramResult[key] = Expression.run(
244
+ {
245
+ activeRecords: [page || {}],
246
+ rootRecord: page || {},
247
+ openerRecord: {},
248
+ scene: page.scene
249
+ } as ExpressionRunParam,
250
+ mapping[key] as string,
251
+ mapping[key]
252
+ );
253
+ }
254
+ return paramResult;
255
+ }
256
+
257
+ private arePropertiesEqual<T extends object>(pre: T | undefined, next: T | undefined) {
258
+ if (pre && next) {
259
+ return JSON.stringify(pre) === JSON.stringify(next);
260
+ }
261
+
262
+ return false;
263
+ }
264
+
265
+ private needUpdateKeys(selectedKeys: string[], openKeys: string[]) {
266
+ if (this.arePropertiesEqual(this.selectedKeys, selectedKeys) && this.arePropertiesEqual(this.openKeys, openKeys)) {
267
+ return false;
268
+ }
269
+
270
+ return true;
271
+ }
272
+
273
+ protected refreshMenuUrlParameters(model: string, action: string) {
274
+ const selectedMenuItem = MenuService.findSelectedMenuItemByAction(this.treeNodes, action);
275
+ if (!selectedMenuItem) {
276
+ return;
277
+ }
278
+ const { selectedKeys, openKeys } = MenuService.generatorMenuUrlParameters(selectedMenuItem);
279
+ this.selectedKeys = selectedKeys;
280
+ this.openKeys = openKeys;
281
+ // const menuUrlParameters: MenuUrlParameters = {
282
+ // selectedKeys: this.selectedKeys || [],
283
+ // openKeys: this.openKeys || []
284
+ // };
285
+ // this.router.push({
286
+ // segments: [
287
+ // {
288
+ // path: 'page',
289
+ // extra: { preserveParameter: true },
290
+ // parameters: {
291
+ // menu: JSON.stringify(menuUrlParameters)
292
+ // }
293
+ // }
294
+ // ]
295
+ // });
296
+ }
297
+
298
+ protected async reloadMaskProcess(reloadParameters: ReloadMaskCallChainingParameters) {
299
+ const { module, model, action, currentPage } = reloadParameters;
300
+ let menuUrlParameters: MenuUrlParameters | undefined;
301
+ const menu = currentPage?.menu as string;
302
+ if (menu) {
303
+ menuUrlParameters = JSON.parse(menu);
304
+ }
305
+ let isRefreshMenuUrlParameters = false;
306
+ if (menuUrlParameters) {
307
+ const { selectedKeys, openKeys } = menuUrlParameters;
308
+
309
+ if (this.needUpdateKeys(selectedKeys, openKeys)) {
310
+ this.selectedKeys = selectedKeys;
311
+ this.openKeys = openKeys;
312
+ }
313
+ } else {
314
+ isRefreshMenuUrlParameters = true;
315
+ }
316
+
317
+ if (module === this.moduleName && !isRefreshMenuUrlParameters) {
318
+ return;
319
+ }
320
+
321
+ await this.load(async () => {
322
+ await this.onModuleChange(module);
323
+ if (isRefreshMenuUrlParameters || !this.selectedKeys?.length || !this.openKeys?.length) {
324
+ this.refreshMenuUrlParameters(model, action);
325
+ }
326
+ });
327
+ }
328
+
329
+ protected created(): void {
330
+ super.created();
331
+ this.$systemMajorConfig = $systemMajorConfig.subscribe((config) => {
332
+ if (config.sideBarTheme) {
333
+ this.menuTheme = config.sideBarTheme!;
334
+ }
335
+ });
336
+ }
337
+
338
+ protected mounted() {
339
+ super.mounted();
340
+ this.router = useRouter().router;
341
+ }
342
+
343
+ protected beforeUnmount(): void {
344
+ super.beforeUnmount();
345
+
346
+ // eslint-disable-next-line @typescript-eslint/no-unused-expressions
347
+ this.$systemMajorConfig && this.$systemMajorConfig.unsubscribe();
348
+ }
349
+ }
@@ -0,0 +1,3 @@
1
+ export { default as DefaultMenu } from './DefaultMenu.vue';
2
+ export { default as DefaultSubMenu } from './DefaultSubMenu.vue';
3
+ export * from './MenuWidget';