@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,475 @@
1
+ <script lang="ts">
2
+ import { MultiTabsRuntimeManifestMergedConfigManager, MultiTabType, translateValueByKey } from '@oinone/kunlun-engine';
3
+ import { DraggableDirection, DraggableMovedEvent, DraggableSendEvent, OioDraggable } from '@oinone/kunlun-vue-ui';
4
+ import {
5
+ ButtonType,
6
+ DividerType,
7
+ IconTypeEnum,
8
+ OioButton,
9
+ OioDivider,
10
+ OioDropdown,
11
+ OioDropdownTrigger,
12
+ OioIcon,
13
+ useScrollOperator
14
+ } from '@oinone/kunlun-vue-ui-antd';
15
+ import { Menu as AMenu, MenuItem as AMenuItem } from 'ant-design-vue';
16
+ import { debounce, isFunction, isNil } from 'lodash-es';
17
+ import {
18
+ computed,
19
+ createVNode,
20
+ defineComponent,
21
+ nextTick,
22
+ PropType,
23
+ VNode,
24
+ vShow,
25
+ watch,
26
+ withDirectives,
27
+ withModifiers
28
+ } from 'vue';
29
+ import { DEFAULT_APPLICATION_LOGO } from '../../typing';
30
+ import { MultiTabItem } from './typing';
31
+
32
+ type ClickTabFunction = (tab: MultiTabItem) => void;
33
+
34
+ type ClosableFunction = (tabs: MultiTabItem[], tab: MultiTabItem, index: number) => boolean;
35
+
36
+ type DisabledFunction = (tabs: MultiTabItem[], index: number) => boolean;
37
+
38
+ interface ToolbarItem {
39
+ key: string;
40
+ title: string;
41
+ disabled: DisabledFunction;
42
+ }
43
+
44
+ const tabsContainerId = 'k-layout-multi-tabs';
45
+
46
+ function generatorTabId(index: number) {
47
+ return `${tabsContainerId}-tab-${index}`;
48
+ }
49
+
50
+ const draggableIgnoredClassName = 'k-layout-multi-tabs-draggable-ignored';
51
+
52
+ const draggableFilter = `.${draggableIgnoredClassName}`;
53
+
54
+ export default defineComponent({
55
+ name: 'MultiTabs',
56
+ components: {
57
+ OioButton,
58
+ OioDraggable,
59
+ OioDropdown,
60
+ OioDivider,
61
+ AMenu,
62
+ AMenuItem
63
+ },
64
+ inheritAttrs: false,
65
+ props: {
66
+ tabs: {
67
+ type: Array as PropType<MultiTabItem[]>
68
+ },
69
+ homepageType: {
70
+ type: Number as PropType<MultiTabType>
71
+ },
72
+ inline: {
73
+ type: Boolean,
74
+ default: undefined
75
+ },
76
+ showModuleLogo: {
77
+ type: Boolean,
78
+ default: undefined
79
+ },
80
+ draggable: {
81
+ type: Boolean,
82
+ default: undefined
83
+ },
84
+ activeKey: {
85
+ type: String
86
+ },
87
+ invisible: {
88
+ type: Boolean,
89
+ default: undefined
90
+ },
91
+ tabThemeClass: {
92
+ type: String,
93
+ default: ''
94
+ },
95
+ closable: {
96
+ type: [Boolean, Function] as PropType<boolean | ClosableFunction>
97
+ },
98
+ onClickTab: {
99
+ type: Function as PropType<ClickTabFunction>
100
+ },
101
+ onRefreshTab: {
102
+ type: Function as PropType<ClickTabFunction>
103
+ },
104
+ onCloseTab: {
105
+ type: Function as PropType<ClickTabFunction>
106
+ },
107
+ onCloseOtherTabs: {
108
+ type: Function as PropType<ClickTabFunction>
109
+ },
110
+ onCloseLeftTabs: {
111
+ type: Function as PropType<ClickTabFunction>
112
+ },
113
+ onCloseRightTabs: {
114
+ type: Function as PropType<ClickTabFunction>
115
+ },
116
+ onOpenNewWindow: {
117
+ type: Function as PropType<ClickTabFunction>
118
+ },
119
+ onMoveToSelfCallback: {
120
+ type: Function as PropType<(dragTab: MultiTabItem, target: MultiTabItem) => boolean>
121
+ },
122
+ onMovedCallback: {
123
+ type: Function as PropType<ClickTabFunction>
124
+ }
125
+ },
126
+ setup(props) {
127
+ const ToolbarItems: ToolbarItem[] = [
128
+ {
129
+ key: 'onRefreshTab',
130
+ title: translateValueByKey('刷新当前标签页'),
131
+ disabled: () => {
132
+ return false;
133
+ }
134
+ },
135
+ {
136
+ key: 'onOpenNewWindow',
137
+ title: translateValueByKey('新窗口打开'),
138
+ disabled: () => {
139
+ return false;
140
+ }
141
+ },
142
+ {
143
+ key: 'onCloseTab',
144
+ title: translateValueByKey('关闭当前'),
145
+ disabled: (tabs, index) => {
146
+ if (
147
+ MultiTabsRuntimeManifestMergedConfigManager.isEnabledHomepage() ||
148
+ MultiTabsRuntimeManifestMergedConfigManager.isEnabledModuleHomepage()
149
+ ) {
150
+ return tabs.length === 1 || index === 0;
151
+ }
152
+ return tabs.length === 1;
153
+ }
154
+ },
155
+ {
156
+ key: 'onCloseOtherTabs',
157
+ title: translateValueByKey('关闭其他'),
158
+ disabled: (tabs) => {
159
+ if (
160
+ MultiTabsRuntimeManifestMergedConfigManager.isEnabledHomepage() ||
161
+ MultiTabsRuntimeManifestMergedConfigManager.isEnabledModuleHomepage()
162
+ ) {
163
+ return tabs.length <= 2;
164
+ }
165
+ return tabs.length <= 1;
166
+ }
167
+ },
168
+ {
169
+ key: 'onCloseLeftTabs',
170
+ title: translateValueByKey('关闭左侧'),
171
+ disabled: (tabs, index) => {
172
+ if (
173
+ MultiTabsRuntimeManifestMergedConfigManager.isEnabledHomepage() ||
174
+ MultiTabsRuntimeManifestMergedConfigManager.isEnabledModuleHomepage()
175
+ ) {
176
+ return index <= 1;
177
+ }
178
+ return index === 0;
179
+ }
180
+ },
181
+ {
182
+ key: 'onCloseRightTabs',
183
+ title: translateValueByKey('关闭右侧'),
184
+ disabled: (tabs, index) => {
185
+ return index === tabs.length - 1;
186
+ }
187
+ }
188
+ ];
189
+
190
+ const activeTab = computed<{ tab: MultiTabItem; index: number } | undefined>(() => {
191
+ const activeKey = props.activeKey;
192
+ if (!activeKey) {
193
+ return undefined;
194
+ }
195
+ const tabs = props.tabs || [];
196
+ for (let i = 0; i < tabs.length; i++) {
197
+ const tab = tabs[i];
198
+ if (tab.key === activeKey) {
199
+ return {
200
+ tab,
201
+ index: i
202
+ };
203
+ }
204
+ }
205
+ return undefined;
206
+ });
207
+
208
+ const closableFunction = computed<ClosableFunction>(() => {
209
+ let fn: ClosableFunction | undefined;
210
+ if (isNil(props.closable)) {
211
+ fn = () => false;
212
+ } else if (isFunction(props.closable)) {
213
+ fn = props.closable;
214
+ } else {
215
+ fn = () => props.closable as boolean;
216
+ }
217
+ return fn;
218
+ });
219
+
220
+ const computeToolbarItemDisabled = (item: ToolbarItem) => {
221
+ return !props.tabs || !activeTab.value || item.disabled(props.tabs, activeTab.value.index);
222
+ };
223
+
224
+ const onClickContextMenu = (key: string) => {
225
+ const item = ToolbarItems.find((v) => v.key === key);
226
+ if (!item) {
227
+ console.error('Invalid toolbar item key.');
228
+ return;
229
+ }
230
+ const clickTabFunction = props[item.key] as ClickTabFunction;
231
+ if (!clickTabFunction) {
232
+ console.error('Invalid click tab function.');
233
+ return;
234
+ }
235
+ if (computeToolbarItemDisabled(item)) {
236
+ return;
237
+ }
238
+ clickTabFunction(activeTab.value!.tab);
239
+ };
240
+
241
+ const moveToSelfCallback = (sendEvent: DraggableSendEvent<MultiTabItem>) => {
242
+ if (props.onMoveToSelfCallback) {
243
+ const dragTab = sendEvent.draggedContext.element;
244
+ const target = sendEvent.relatedContext.element;
245
+ if (dragTab && target) {
246
+ return props.onMoveToSelfCallback(dragTab, target);
247
+ }
248
+ return false;
249
+ }
250
+ return true;
251
+ };
252
+
253
+ const movedCallback = (moved: DraggableMovedEvent<MultiTabItem>) => {
254
+ props.onMovedCallback?.(moved.element);
255
+ };
256
+
257
+ const scrollIntoViewTab = debounce((index: number) => {
258
+ nextTick(() => {
259
+ const tabsContainerDom = document.getElementById(tabsContainerId);
260
+ const tabDom = document.getElementById(generatorTabId(index));
261
+ if (!tabsContainerDom || !tabDom) {
262
+ return;
263
+ }
264
+ useScrollOperator(tabsContainerDom, tabDom, { offset: 4 }).horizontal.updateScroll();
265
+ });
266
+ }, 80);
267
+
268
+ watch(activeTab, (val) => {
269
+ if (!val) {
270
+ return;
271
+ }
272
+ scrollIntoViewTab(val.index);
273
+ });
274
+
275
+ return {
276
+ activeTab,
277
+ closableFunction,
278
+ ToolbarItems,
279
+
280
+ computeToolbarItemDisabled,
281
+ onClickContextMenu,
282
+
283
+ moveToSelfCallback,
284
+ movedCallback
285
+ };
286
+ },
287
+ render() {
288
+ const {
289
+ tabs,
290
+ homepageType,
291
+ inline,
292
+ showModuleLogo,
293
+ draggable,
294
+ activeKey,
295
+ invisible,
296
+ ToolbarItems,
297
+ tabThemeClass,
298
+
299
+ closableFunction,
300
+
301
+ computeToolbarItemDisabled,
302
+ onClickContextMenu,
303
+
304
+ moveToSelfCallback,
305
+ movedCallback
306
+ } = this;
307
+ if (!tabs?.length) {
308
+ return [];
309
+ }
310
+
311
+ const createTabVNode = (tab: MultiTabItem, index: number): VNode => {
312
+ const { key, title } = tab;
313
+ const allowClosable = closableFunction(tabs, tab, index);
314
+ const isActive = key === activeKey;
315
+
316
+ const tabChildren: VNode[] = [];
317
+ const tabType = tab.instance.type;
318
+ const classNames = [
319
+ 'k-layout-multi-tabs-tab',
320
+ allowClosable && 'k-layout-multi-tabs-tab-closable',
321
+ isActive && 'k-layout-multi-tabs-tab-active'
322
+ ];
323
+
324
+ if (tabType === homepageType) {
325
+ classNames.push(draggableIgnoredClassName);
326
+ tabChildren.push(
327
+ createVNode('div', { class: 'k-layout-multi-tabs-homepage-icon' }, [
328
+ createVNode(OioIcon, { icon: 'oinone-shouye1', color: 'var(--oio-primary-color)', size: '16px' })
329
+ ])
330
+ );
331
+ } else if (showModuleLogo) {
332
+ const { logoIcon, logoUrl } = tab.instance;
333
+ if (logoIcon) {
334
+ tabChildren.push(
335
+ createVNode('div', { class: 'k-layout-multi-tabs-application-icon' }, [
336
+ createVNode(OioIcon, { icon: logoIcon, color: 'var(--oio-primary-color)', size: '16px' })
337
+ ])
338
+ );
339
+ } else {
340
+ tabChildren.push(
341
+ createVNode('div', { class: 'k-layout-multi-tabs-application-logo' }, [
342
+ createVNode('img', { src: logoUrl || DEFAULT_APPLICATION_LOGO() })
343
+ ])
344
+ );
345
+ }
346
+ }
347
+ tabChildren.push(
348
+ createVNode(
349
+ 'div',
350
+ {
351
+ class: 'k-layout-multi-tabs-tab-title',
352
+ title
353
+ },
354
+ title
355
+ )
356
+ );
357
+ tabChildren.push(
358
+ createVNode('div', { class: ['k-layout-multi-tabs-tab-close-btn'] }, [
359
+ createVNode(
360
+ OioButton,
361
+ {
362
+ type: ButtonType.link,
363
+ onClick: withModifiers(() => {
364
+ this.onCloseTab?.(tab);
365
+ }, ['stop', 'prevent'])
366
+ },
367
+ {
368
+ default: () => {
369
+ return [createVNode(OioIcon, { type: IconTypeEnum.unicode, icon: '&#xe7e2;', size: '16px' })];
370
+ }
371
+ }
372
+ )
373
+ ])
374
+ );
375
+ if (index !== tabs.length - 1) {
376
+ tabChildren.push(createVNode(OioDivider, { type: DividerType.vertical }));
377
+ }
378
+ return createVNode(
379
+ 'div',
380
+ {
381
+ id: generatorTabId(index),
382
+ class: classNames,
383
+ onClick: () => {
384
+ this.onClickTab?.(tab);
385
+ }
386
+ },
387
+ tabChildren
388
+ );
389
+ };
390
+ const tabsVNode = createVNode(
391
+ OioDraggable,
392
+ {
393
+ id: tabsContainerId,
394
+ class: 'k-layout-multi-tabs oio-scrollbar',
395
+ itemKey: 'key',
396
+ group: 'layout-multi-tabs',
397
+ list: tabs,
398
+ direction: DraggableDirection.HORIZONTAL,
399
+ swapThreshold: 0.6,
400
+ draggableFilter,
401
+ disabled: !draggable,
402
+ moveToSelfCallback,
403
+ movedCallback
404
+ },
405
+ {
406
+ item: ({ element, index }) => {
407
+ return createTabVNode(element, index);
408
+ }
409
+ }
410
+ );
411
+ const toolbarVNode = createVNode('div', { class: 'k-layout-multi-tabs-toolbar' }, [
412
+ createVNode(
413
+ OioDropdown,
414
+ {
415
+ trigger: [OioDropdownTrigger.click, OioDropdownTrigger.hover],
416
+ overlayClassName: 'k-layout-multi-tabs-toolbar-overlay'
417
+ },
418
+ {
419
+ default: () => {
420
+ return [createVNode(OioIcon, { icon: 'oinone-xiala2', size: '16px' })];
421
+ },
422
+ overlay: () => {
423
+ return createVNode(
424
+ AMenu,
425
+ {
426
+ onClick: ({ key }) => {
427
+ onClickContextMenu(key);
428
+ }
429
+ },
430
+ {
431
+ default: () => {
432
+ const children = [] as VNode[];
433
+ for (const item of ToolbarItems) {
434
+ children.push(
435
+ createVNode(
436
+ AMenuItem,
437
+ {
438
+ key: item.key,
439
+ disabled: computeToolbarItemDisabled(item)
440
+ },
441
+ {
442
+ default: () => item.title
443
+ }
444
+ )
445
+ );
446
+ }
447
+ return children;
448
+ }
449
+ }
450
+ );
451
+ }
452
+ }
453
+ )
454
+ ]);
455
+ const classNames = ['k-layout-multi-tabs-wrapper'];
456
+
457
+ if (tabThemeClass) {
458
+ classNames.push(`k-layout-multi-tabs-wrapper-${tabThemeClass}`);
459
+ }
460
+ if (inline) {
461
+ classNames.push('k-layout-multi-tabs-wrapper-inline');
462
+ }
463
+ return withDirectives(
464
+ createVNode(
465
+ 'div',
466
+ {
467
+ class: classNames
468
+ },
469
+ [tabsVNode, toolbarVNode]
470
+ ),
471
+ [[vShow, !invisible]]
472
+ );
473
+ }
474
+ });
475
+ </script>