@pubinfo/core 2.0.12 → 2.0.13

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 (376) hide show
  1. package/dist/{AppSetting-B3jGWi0s.js → AppSetting-Df8mPhxN.js} +34 -34
  2. package/dist/{HCheckList.vue_vue_type_script_setup_true_lang-D2OA6DQk.js → HCheckList.vue_vue_type_script_setup_true_lang-CD2VmdPG.js} +7 -6
  3. package/dist/{HToggle-wdIhtmUo.js → HToggle-CcxWxVmB.js} +1 -1
  4. package/dist/HeaderThinMenu-BMjyPDYS.js +4 -0
  5. package/dist/{PreferencesContent-BKKNflrp.js → PreferencesContent-Bu8-g2qs.js} +117 -117
  6. package/dist/{SettingBreadcrumb-DugZlP9x.js → SettingBreadcrumb-CTLEf4nt.js} +7 -7
  7. package/dist/{SettingCopyright-D6WXUaya.js → SettingCopyright-B_ZS9FXO.js} +5 -5
  8. package/dist/{SettingEnableTransition-Cl7uPofT.js → SettingEnableTransition-DgZyY8Rh.js} +16 -16
  9. package/dist/{SettingHome-Cbzfn9ko.js → SettingHome-BN6WzWxX.js} +10 -10
  10. package/dist/{SettingMenu-BfHW7kFB.js → SettingMenu-CNgEpRN_.js} +14 -14
  11. package/dist/{SettingMode-D4UfX577.js → SettingMode-B_Sf7CqN.js} +4 -4
  12. package/dist/{SettingNavSearch-B9_82zYn.js → SettingNavSearch-SQuD6lr7.js} +8 -8
  13. package/dist/{SettingOther-BcCr5K4d.js → SettingOther-CrgOHNra.js} +16 -16
  14. package/dist/{SettingPage-T9eoEZks.js → SettingPage-B4hfRME8.js} +4 -4
  15. package/dist/{SettingTabbar-DAnxa039.js → SettingTabbar-7EcsmyZo.js} +12 -12
  16. package/dist/{SettingThemes-D7JBXPTs.js → SettingThemes-CVjQoEk4.js} +9 -9
  17. package/dist/{SettingToolbar-DMiyIQkh.js → SettingToolbar-Bls_SdlL.js} +12 -12
  18. package/dist/{SettingTopbar-BX1DcBp9.js → SettingTopbar-jqUqG5vW.js} +10 -10
  19. package/dist/{SettingWidthMode-h2-4_TUO.js → SettingWidthMode-8LFo6UKy.js} +9 -9
  20. package/dist/abap-Y8Dl9g_6.js +6 -0
  21. package/dist/actionscript-3-DZzbMeqX.js +6 -0
  22. package/dist/ada-vP6ak0IW.js +6 -0
  23. package/dist/andromeeda-BIpZ7gaU.js +4 -0
  24. package/dist/angular-html-BmadGEgW.js +32 -0
  25. package/dist/angular-ts-D-QQnnGT.js +21 -0
  26. package/dist/apache-BUjz-sD2.js +6 -0
  27. package/dist/apex-D_wPycVx.js +6 -0
  28. package/dist/apl-sitt7C8I.js +16 -0
  29. package/dist/applescript-BPx7YFFu.js +6 -0
  30. package/dist/ara-Z2fSOxSw.js +6 -0
  31. package/dist/asciidoc-B-pCoB3G.js +6 -0
  32. package/dist/asm-BTWLY5ym.js +6 -0
  33. package/dist/astro-DHnp0xIo.js +18 -0
  34. package/dist/aurora-x-BwoVEUWZ.js +4 -0
  35. package/dist/awk-Fb0P9dkn.js +6 -0
  36. package/dist/ayu-dark-CxPZkpb2.js +4 -0
  37. package/dist/ballerina-oZK-YekG.js +6 -0
  38. package/dist/bat-0FvbqU9S.js +6 -0
  39. package/dist/beancount-DEfTbbFX.js +6 -0
  40. package/dist/berry-PwsHPR_K.js +6 -0
  41. package/dist/bibtex-EULQRLY5.js +6 -0
  42. package/dist/bicep-DFU2oTl7.js +6 -0
  43. package/dist/blade-OPzGcV14.js +20 -0
  44. package/dist/bsl-NkNNwerW.js +8 -0
  45. package/dist/built-in/layout-component/components/ui/HDialog.vue.d.ts +2 -2
  46. package/dist/built-in/layout-component/components/ui/HSlideover.vue.d.ts +2 -2
  47. package/dist/c-eeMepfLm.js +6 -0
  48. package/dist/cadence-DMRWHJp4.js +6 -0
  49. package/dist/cairo-DM6WF2e3.js +8 -0
  50. package/dist/catppuccin-frappe-5udUqgsX.js +4 -0
  51. package/dist/catppuccin-latte-ufkS-HWv.js +4 -0
  52. package/dist/catppuccin-macchiato-DzL2LPek.js +4 -0
  53. package/dist/catppuccin-mocha-DDDDwkUT.js +4 -0
  54. package/dist/clarity-BseSxcHx.js +6 -0
  55. package/dist/clojure-CXJfHrL3.js +6 -0
  56. package/dist/cmake-BJz8BOTU.js +6 -0
  57. package/dist/cobol-R4Vn9a46.js +10 -0
  58. package/dist/codeowners-Bt9yU6NX.js +6 -0
  59. package/dist/codeql-DHkodjjI.js +6 -0
  60. package/dist/coffee-Dl27lzbd.js +8 -0
  61. package/dist/common-lisp-EVqT9Zhp.js +6 -0
  62. package/dist/coq-B0L9upzn.js +6 -0
  63. package/dist/core/ctx.d.ts +1 -0
  64. package/dist/core/interface.d.ts +4 -2
  65. package/dist/cpp-Cj177cuW.js +18 -0
  66. package/dist/crystal-ymVvJzbZ.js +18 -0
  67. package/dist/csharp-DmxfTLWR.js +6 -0
  68. package/dist/css-CECN5uSL.js +6 -0
  69. package/dist/csv-CmYOceLb.js +6 -0
  70. package/dist/cue-ZzumE7IT.js +6 -0
  71. package/dist/cypher-jpdmjtA6.js +6 -0
  72. package/dist/d-CBagWSwH.js +6 -0
  73. package/dist/dark-plus-pUHDTVV0.js +4 -0
  74. package/dist/dart-6ObCrKr9.js +6 -0
  75. package/dist/dax-CcDT-8dH.js +6 -0
  76. package/dist/desktop-B93p9R9O.js +6 -0
  77. package/dist/diff-BxzP2J8R.js +6 -0
  78. package/dist/docker-CsHqm9tx.js +6 -0
  79. package/dist/dotenv-BMjVjUL1.js +6 -0
  80. package/dist/dracula-BtZx2Kac.js +4 -0
  81. package/dist/dracula-soft-BKa-aqBv.js +4 -0
  82. package/dist/dream-maker-PAx17jaB.js +6 -0
  83. package/dist/edge-_LvgTcmu.js +12 -0
  84. package/dist/elixir-BTCUAmQk.js +8 -0
  85. package/dist/elm-BtNbw_Cd.js +8 -0
  86. package/dist/emacs-lisp-Cfxdx5D-.js +6 -0
  87. package/dist/erb-D0PIpZCP.js +10 -0
  88. package/dist/erlang-DNcDT8Hi.js +8 -0
  89. package/dist/everforest-dark-DMCBqXCK.js +4 -0
  90. package/dist/everforest-light-BbXl82Em.js +4 -0
  91. package/dist/features/components/PartyLogin/MethodSelect.vue.d.ts +10 -0
  92. package/dist/features/components/PartyLogin/Modal.vue.d.ts +31 -0
  93. package/dist/features/components/PartyLogin/ParamsItem.vue.d.ts +94 -0
  94. package/dist/features/components/PartyLogin/ParamsPanel.vue.d.ts +13 -0
  95. package/dist/features/components/PartyLogin/RequestFieldSelector.vue.d.ts +18 -0
  96. package/dist/features/components/PartyLogin/SystemFieldSelector.vue.d.ts +15 -0
  97. package/dist/features/components/PartyLogin/steps/One.vue.d.ts +28 -0
  98. package/dist/features/components/PartyLogin/steps/Two.vue.d.ts +14 -0
  99. package/dist/features/components/PartyLogin/type.d.ts +37 -0
  100. package/dist/features/components/PartyLogin/usePartyRequest.d.ts +21 -0
  101. package/dist/features/components/PubinfoIcon/props.d.ts +7 -0
  102. package/dist/features/components/index.d.ts +1 -0
  103. package/dist/features/composables/partyLogin.d.ts +13 -0
  104. package/dist/features/stores/modules/menu.d.ts +1 -0
  105. package/dist/features/stores/modules/route.d.ts +9 -0
  106. package/dist/features/stores/utils/routerHelper.d.ts +2 -1
  107. package/dist/fennel-N4WcXuKx.js +6 -0
  108. package/dist/fish-B6QqlqeT.js +6 -0
  109. package/dist/fluent-BMXUxfv1.js +6 -0
  110. package/dist/fortran-fixed-form-DUsA-VGo.js +8 -0
  111. package/dist/fortran-free-form-DPIT_jbP.js +6 -0
  112. package/dist/fsharp-Pr2u3cIG.js +8 -0
  113. package/dist/gdresource-BwtMIoBm.js +10 -0
  114. package/dist/gdscript-BifyeYhI.js +6 -0
  115. package/dist/gdshader-Bk8fF6yr.js +6 -0
  116. package/dist/genie-DzUvd7U9.js +6 -0
  117. package/dist/gherkin-DHRaV0YP.js +6 -0
  118. package/dist/git-commit-Bd32YZ0K.js +8 -0
  119. package/dist/git-rebase-ZWUFO_T4.js +8 -0
  120. package/dist/github-dark-DenFmJkN.js +4 -0
  121. package/dist/github-dark-default-BJPUVz4H.js +4 -0
  122. package/dist/github-dark-dimmed-DUshB20C.js +4 -0
  123. package/dist/github-dark-high-contrast-D3aGCnF8.js +4 -0
  124. package/dist/github-light-JYsPkUQd.js +4 -0
  125. package/dist/github-light-default-D99KPAby.js +4 -0
  126. package/dist/github-light-high-contrast-BbmZE-Mp.js +4 -0
  127. package/dist/gleam-Bv284lvN.js +6 -0
  128. package/dist/glimmer-js-CkxRszZZ.js +14 -0
  129. package/dist/glimmer-ts-Bi6BYQCn.js +14 -0
  130. package/dist/glsl-CkUcVZNK.js +8 -0
  131. package/dist/gnuplot-yPG9-sE_.js +6 -0
  132. package/dist/go-ChxJuLYK.js +6 -0
  133. package/dist/graphql-BLaPX4fU.js +14 -0
  134. package/dist/groovy-CJQTphOW.js +6 -0
  135. package/dist/gruvbox-dark-hard-C2ND4cMr.js +4 -0
  136. package/dist/gruvbox-dark-medium-C8k4c8au.js +4 -0
  137. package/dist/gruvbox-dark-soft-xx9Q6FaG.js +4 -0
  138. package/dist/gruvbox-light-hard-BpUXv5in.js +4 -0
  139. package/dist/gruvbox-light-medium-D3XFCoU1.js +4 -0
  140. package/dist/gruvbox-light-soft-u7hpfz6Z.js +4 -0
  141. package/dist/hack-Bx1jMtBC.js +10 -0
  142. package/dist/haml-6FagfhCM.js +10 -0
  143. package/dist/handlebars-Bd5Y4M6I.js +14 -0
  144. package/dist/haskell-WeIwNIP6.js +6 -0
  145. package/dist/haxe-TztHsm5T.js +6 -0
  146. package/dist/hcl-D438OF-I.js +6 -0
  147. package/dist/hjson-DYBUbqOl.js +6 -0
  148. package/dist/hlsl-Bk8TCZNL.js +6 -0
  149. package/dist/houston-BDYrDoDW.js +4 -0
  150. package/dist/html-7XVNRwN7.js +10 -0
  151. package/dist/html-derivative-BNxZ5Yf6.js +8 -0
  152. package/dist/http-WC357zBG.js +14 -0
  153. package/dist/hxml-GbqSQCLa.js +8 -0
  154. package/dist/hy-Brt5EZ7-.js +6 -0
  155. package/dist/imba-CimUv-Uh.js +6 -0
  156. package/dist/{index-BAIUGhyE.js → index-BX0RSX9i.js} +5 -5
  157. package/dist/index-Bl4PBBmY.js +2827 -0
  158. package/dist/{index-CfPeR7ym.js → index-C6HIzbdv.js} +1 -1
  159. package/dist/index-CUbMQSBZ.js +4 -0
  160. package/dist/{index-BqHnVVhW.js → index-Cc8zVLOC.js} +11 -10
  161. package/dist/{index-D77TmeiT.js → index-Cjl98Ty_.js} +7 -7
  162. package/dist/{index-Q4dgy_3e.js → index-Dalsj2EI.js} +58900 -33442
  163. package/dist/index-Dw9-vGGZ.js +24519 -0
  164. package/dist/index.js +59 -58
  165. package/dist/ini-BZIuRIvJ.js +6 -0
  166. package/dist/java-DY6VlHhP.js +6 -0
  167. package/dist/javascript-Dp1Jmi5H.js +6 -0
  168. package/dist/jinja-WEhOU5ES.js +11 -0
  169. package/dist/jison-c2JI40PB.js +8 -0
  170. package/dist/json-DxJze_jm.js +6 -0
  171. package/dist/json5-BT4Fjg39.js +6 -0
  172. package/dist/jsonc-CHjZD8gR.js +6 -0
  173. package/dist/jsonl-BGuvDmy9.js +6 -0
  174. package/dist/jsonnet-Bx2cfsXg.js +6 -0
  175. package/dist/jssm-BcADi6EI.js +6 -0
  176. package/dist/jsx-BtKADgXT.js +6 -0
  177. package/dist/julia-DcoDQokW.js +16 -0
  178. package/dist/kanagawa-dragon-CiKur4Hl.js +4 -0
  179. package/dist/kanagawa-lotus-BKu-smKu.js +4 -0
  180. package/dist/kanagawa-wave-CQwozSzG.js +4 -0
  181. package/dist/kotlin-ByBMgTeR.js +6 -0
  182. package/dist/kusto-VWFLl2T0.js +6 -0
  183. package/dist/laserwave-6a00oqik.js +4 -0
  184. package/dist/latex-MZCpjnva.js +8 -0
  185. package/dist/lean-DXqEE_d1.js +6 -0
  186. package/dist/less-B1GLI2Di.js +6 -0
  187. package/dist/light-plus-CZuVqSLX.js +4 -0
  188. package/dist/liquid-3HHuHOZ2.js +14 -0
  189. package/dist/llvm-6RQLId6G.js +6 -0
  190. package/dist/log-Al8wyEFV.js +6 -0
  191. package/dist/logo-DBa4JDzV.js +6 -0
  192. package/dist/lua-kX5WP_P5.js +8 -0
  193. package/dist/luau-DtBSxLyz.js +6 -0
  194. package/dist/make-CsMclxtr.js +6 -0
  195. package/dist/markdown-CrScaQ96.js +6 -0
  196. package/dist/marko-DDi9qpQP.js +14 -0
  197. package/dist/material-theme-D6KBX41T.js +4 -0
  198. package/dist/material-theme-darker-CkRroheE.js +4 -0
  199. package/dist/material-theme-lighter-BUBw43Yz.js +4 -0
  200. package/dist/material-theme-ocean-ClGX14Ja.js +4 -0
  201. package/dist/material-theme-palenight-C1RVm8K1.js +4 -0
  202. package/dist/matlab-BOAaUVP0.js +6 -0
  203. package/dist/mdc-FI2x3BiY.js +12 -0
  204. package/dist/mdx-BOhZZUJ8.js +6 -0
  205. package/dist/mermaid-B0ixDHKN.js +6 -0
  206. package/dist/min-dark-C7ak0t6c.js +4 -0
  207. package/dist/min-light-CKFxVcPp.js +4 -0
  208. package/dist/mipsasm-CTx18fBl.js +6 -0
  209. package/dist/mojo-BD611d7o.js +6 -0
  210. package/dist/monokai-C1KBYcO0.js +4 -0
  211. package/dist/move-DSb5dTSj.js +6 -0
  212. package/dist/narrat-DmhDCBs-.js +6 -0
  213. package/dist/nextflow-BAAEJxI_.js +6 -0
  214. package/dist/nginx-5vhPAEw3.js +8 -0
  215. package/dist/night-owl-Bm2rzalh.js +4 -0
  216. package/dist/nim-BhS8gg0S.js +20 -0
  217. package/dist/nix-ceY58Dty.js +6 -0
  218. package/dist/nord-CC5OiUXg.js +4 -0
  219. package/dist/nushell-CQi4NV-2.js +6 -0
  220. package/dist/objective-c-Itk8tzmv.js +6 -0
  221. package/dist/objective-cpp-DGt5UKRO.js +6 -0
  222. package/dist/ocaml-eSVK32Eg.js +6 -0
  223. package/dist/one-dark-pro-DTA3VF0_.js +4 -0
  224. package/dist/one-light-D9sNaUtq.js +4 -0
  225. package/dist/pascal-xy8pJNns.js +6 -0
  226. package/dist/perl-BoEn6HmT.js +16 -0
  227. package/dist/php-BRU9zhoN.js +18 -0
  228. package/dist/pick-Cghe_Z7L.js +12 -0
  229. package/dist/plastic-CSTz3KZp.js +4 -0
  230. package/dist/plsql-pVbGZfOv.js +6 -0
  231. package/dist/po-BNfHvqmm.js +6 -0
  232. package/dist/poimandres-C-VADXHD.js +4 -0
  233. package/dist/polar-CAZahv3u.js +6 -0
  234. package/dist/postcss-05aHdL-n.js +6 -0
  235. package/dist/powerquery-DI9HkTvs.js +6 -0
  236. package/dist/powershell-Clc4ydu-.js +6 -0
  237. package/dist/prisma-FZjmVtSl.js +6 -0
  238. package/dist/prolog-C5-yg4TO.js +6 -0
  239. package/dist/proto-MmCPeFAD.js +6 -0
  240. package/dist/pug-CJWI-qSo.js +12 -0
  241. package/dist/puppet-CUJHmnxV.js +6 -0
  242. package/dist/purescript-rUfGld-4.js +6 -0
  243. package/dist/python-BFNSHbwJ.js +6 -0
  244. package/dist/qml-D3ATcgGh.js +8 -0
  245. package/dist/qmldir-BInDYbpo.js +6 -0
  246. package/dist/qss-AeJTysr_.js +6 -0
  247. package/dist/r-Bm0uF0U2.js +6 -0
  248. package/dist/racket-B83wSAja.js +6 -0
  249. package/dist/raku-nEQ4ZJJ7.js +6 -0
  250. package/dist/razor-BPFYEoc9.js +10 -0
  251. package/dist/red-7y8PH7HH.js +4 -0
  252. package/dist/reg-m_s_Kiip.js +6 -0
  253. package/dist/regexp-BazyLpPg.js +6 -0
  254. package/dist/rel-BcRfyd6Q.js +6 -0
  255. package/dist/riscv-Ce8MAQLP.js +6 -0
  256. package/dist/rose-pine-Cr4kwgAY.js +4 -0
  257. package/dist/rose-pine-dawn-ClRRUdXX.js +4 -0
  258. package/dist/rose-pine-moon-ucNn3Gm8.js +4 -0
  259. package/dist/rst-B6mPMsKo.js +22 -0
  260. package/dist/ruby-DInklMmU.js +30 -0
  261. package/dist/rust-CLzF9zIN.js +6 -0
  262. package/dist/sas-fpEvgATw.js +8 -0
  263. package/dist/sass-DxHp5rTx.js +6 -0
  264. package/dist/scala-D4grkFkl.js +6 -0
  265. package/dist/scheme-BCRWuEm4.js +6 -0
  266. package/dist/scss-B1FaCqwR.js +8 -0
  267. package/dist/sdbl-B7T8abf4.js +6 -0
  268. package/dist/shaderlab-Cr62-Wb4.js +8 -0
  269. package/dist/shellscript-InADTalH.js +6 -0
  270. package/dist/shellsession-DiDJNQdy.js +8 -0
  271. package/dist/slack-dark-i7wN4OET.js +4 -0
  272. package/dist/slack-ochin-ndHf0LoP.js +4 -0
  273. package/dist/smalltalk-BlI1_OkM.js +6 -0
  274. package/dist/snazzy-light-BlSJXAu4.js +4 -0
  275. package/dist/solarized-dark-UTmkh7lw.js +4 -0
  276. package/dist/solarized-light-BheCkDPT.js +4 -0
  277. package/dist/solidity-CneOhxmR.js +6 -0
  278. package/dist/soy-LybuU3Y_.js +8 -0
  279. package/dist/sparql-B0KWFEri.js +8 -0
  280. package/dist/splunk-CRXR8A9s.js +6 -0
  281. package/dist/sql-Cn_v3PB0.js +6 -0
  282. package/dist/ssh-config-DP-hNVbF.js +6 -0
  283. package/dist/stata-B8c5fTjX.js +8 -0
  284. package/dist/style.css +1 -1
  285. package/dist/stylus-CyKEU1Ej.js +6 -0
  286. package/dist/svelte-BjDUPxZ1.js +14 -0
  287. package/dist/swift-9UzSvamq.js +6 -0
  288. package/dist/synthwave-84-NU3C_KFZ.js +4 -0
  289. package/dist/system-verilog-BCm7smPJ.js +6 -0
  290. package/dist/systemd-C-4qm6XH.js +6 -0
  291. package/dist/talonscript-CFF3LF_O.js +6 -0
  292. package/dist/tasl-Cg_WBUAe.js +6 -0
  293. package/dist/tcl-DN7buRTF.js +6 -0
  294. package/dist/templ-Brj2RH7A.js +12 -0
  295. package/dist/terraform-DGvcn9zM.js +6 -0
  296. package/dist/tex-CmrLTxbG.js +8 -0
  297. package/dist/tokyo-night-DP4TmcQl.js +4 -0
  298. package/dist/toml-DY62mUL_.js +6 -0
  299. package/dist/ts-tags-CZMzuZh-.js +41 -0
  300. package/dist/tsv-BtvSkaG0.js +6 -0
  301. package/dist/tsx-B8rCNbgL.js +6 -0
  302. package/dist/turtle-_H59FV7D.js +6 -0
  303. package/dist/twig-GjIxYqCX.js +18 -0
  304. package/dist/typescript-mg6ATTE8.js +6 -0
  305. package/dist/typespec-Djmco60m.js +6 -0
  306. package/dist/typst-D_1QKWns.js +6 -0
  307. package/dist/v-BW14IZv7.js +6 -0
  308. package/dist/vala-uxaPR7d1.js +6 -0
  309. package/dist/vb-D8_c5-KN.js +6 -0
  310. package/dist/verilog-B-bybjPF.js +6 -0
  311. package/dist/vesper-BckBta1U.js +4 -0
  312. package/dist/vhdl-CUlNa8ac.js +6 -0
  313. package/dist/viml-DsfA-sWm.js +6 -0
  314. package/dist/vitesse-black-BoGvW84i.js +4 -0
  315. package/dist/vitesse-dark-Cym-eLtO.js +4 -0
  316. package/dist/vitesse-light-CcmG315c.js +4 -0
  317. package/dist/vue-D-ba2-Rx.js +31 -0
  318. package/dist/vue-html-Dn2ZoOSz.js +10 -0
  319. package/dist/vue-vine-Jmfkm6lF.js +20 -0
  320. package/dist/vyper-CPQuu50u.js +6 -0
  321. package/dist/wasm-BBXxrAl7.js +6 -0
  322. package/dist/wasm-DQxwEHae.js +7 -0
  323. package/dist/wenyan-pbVjoM9_.js +6 -0
  324. package/dist/wgsl-DY4iK1q1.js +6 -0
  325. package/dist/wikitext-Z-MoUasO.js +6 -0
  326. package/dist/wit-CQMQOlTg.js +6 -0
  327. package/dist/wolfram-Dz4KXISs.js +6 -0
  328. package/dist/xml-C2J0sS9M.js +8 -0
  329. package/dist/xsl-BmSZphgC.js +8 -0
  330. package/dist/yaml-DaO7k5B1.js +6 -0
  331. package/dist/zenscript-CxBjpf9c.js +6 -0
  332. package/dist/zig-Vm0PO9wB.js +6 -0
  333. package/package.json +7 -5
  334. package/src/built-in/layout-component/components/Content/IframeView.vue +28 -2
  335. package/src/built-in/layout-component/components/Header/HeaderFullMenu/index.vue +2 -1
  336. package/src/built-in/layout-component/components/Header/index.vue +9 -2
  337. package/src/built-in/layout-component/components/Menu/index.vue +13 -2
  338. package/src/built-in/layout-component/components/Menu/item.vue +2 -0
  339. package/src/built-in/layout-component/components/Sidebar/SubSidebar.vue +6 -2
  340. package/src/built-in/layout-component/components/Topbar/Tabbar/index.vue +2 -0
  341. package/src/built-in/layout-component/components/Topbar/index.vue +21 -7
  342. package/src/built-in/layout-component/composables/useContext.ts +1 -1
  343. package/src/core/create.ts +3 -0
  344. package/src/core/ctx.ts +14 -0
  345. package/src/core/interface.ts +5 -2
  346. package/src/features/components/PartyLogin/MethodSelect.vue +32 -0
  347. package/src/features/components/PartyLogin/Modal.vue +370 -0
  348. package/src/features/components/PartyLogin/ParamsItem.vue +196 -0
  349. package/src/features/components/PartyLogin/ParamsPanel.vue +61 -0
  350. package/src/features/components/PartyLogin/README.md +621 -0
  351. package/src/features/components/PartyLogin/RequestFieldSelector.vue +205 -0
  352. package/src/features/components/PartyLogin/SystemFieldSelector.vue +213 -0
  353. package/src/features/components/PartyLogin/steps/One.vue +212 -0
  354. package/src/features/components/PartyLogin/steps/Two.vue +86 -0
  355. package/src/features/components/PartyLogin/type.ts +43 -0
  356. package/src/features/components/PartyLogin/usePartyRequest.ts +244 -0
  357. package/src/features/components/PubinfoIcon/index.vue +26 -4
  358. package/src/features/components/PubinfoIcon/props.ts +7 -0
  359. package/src/features/components/index.ts +2 -1
  360. package/src/features/composables/partyLogin.ts +423 -0
  361. package/src/features/settings/index.ts +0 -1
  362. package/src/features/stores/modules/menu.ts +10 -20
  363. package/src/features/stores/modules/route.ts +140 -39
  364. package/src/features/stores/utils/routerHelper.ts +8 -23
  365. package/types/components.d.ts +11 -0
  366. package/types/menu.d.ts +2 -0
  367. package/types/settings.d.ts +0 -6
  368. package/types/vue-router.d.ts +5 -1
  369. package/dist/HeaderThinMenu-CzAyTOhQ.js +0 -4
  370. package/dist/colors-CIY2S0v0.js +0 -25
  371. package/dist/features/components/MicroAppContainer/index.vue.d.ts +0 -2
  372. package/dist/index-7WoSPUpd.js +0 -8135
  373. package/dist/index-B041J475.js +0 -271
  374. package/dist/index-Bk-Yxmj1.js +0 -4
  375. package/dist/index-LOaJK4GI.js +0 -35319
  376. package/dist/pick-Drqqoyjl.js +0 -12
@@ -0,0 +1,621 @@
1
+ # PartyLogin 第三方登录组件
2
+
3
+ 第三方登录配置组件,用于可视化配置和执行第三方登录的多步骤流程。
4
+
5
+ ## 功能特性
6
+
7
+ - **可视化配置**:通过 UI 界面配置第三方登录的请求参数
8
+ - **两步流程**:支持先发送请求获取数据,再跳转到 OAuth URL
9
+ - **实时预览**:在配置界面即可测试请求并查看响应结果
10
+ - **动态参数**:支持从系统(用户信息)或上一步请求响应中提取参数值
11
+ - **JSON 导出**:配置完成后生成标准的 JSON 配置,可保存和复用
12
+
13
+ ## 组件使用
14
+
15
+ ### Modal 配置组件
16
+
17
+ 用于可视化配置第三方登录流程。
18
+
19
+ #### 基础用法
20
+
21
+ ```vue
22
+ <script setup lang="ts">
23
+ import type { PartyLoginConfig } from '@/features/components/PartyLogin/type';
24
+ import { Modal as PartyLoginModal } from '@/features/components/PartyLogin';
25
+
26
+ const partyLoginConfig = ref<PartyLoginConfig>();
27
+
28
+ function handleConfigChange(config: PartyLoginConfig) {
29
+ partyLoginConfig.value = config;
30
+ console.log('生成的配置:', config);
31
+ // 可以保存到后端或本地存储
32
+ }
33
+ </script>
34
+
35
+ <template>
36
+ <PartyLoginModal
37
+ v-model="partyLoginConfig"
38
+ v-model:open="modalOpen"
39
+ >
40
+ <template #trigger>
41
+ <a-button type="primary">
42
+ 配置第三方登录
43
+ </a-button>
44
+ </template>
45
+ </PartyLoginModal>
46
+ </template>
47
+ ```
48
+
49
+ #### Props
50
+
51
+ | 参数 | 说明 | 类型 | 默认值 |
52
+ |------|------|------|--------|
53
+ | modelValue | 双向绑定的配置数据 | `PartyLoginConfig` | - |
54
+ | open | 是否显示弹窗 | `boolean` | `false` |
55
+
56
+ #### Events
57
+
58
+ | 事件名 | 说明 | 回调参数 |
59
+ |--------|------|----------|
60
+ | update:modelValue | 配置完成时触发 | `(config: PartyLoginConfig)` |
61
+ | update:open | 弹窗显示/隐藏时触发 | `(open: boolean)` |
62
+
63
+ #### Slots
64
+
65
+ | 名称 | 说明 |
66
+ |------|------|
67
+ | trigger | 触发弹窗的按钮或元素 |
68
+
69
+ ### 配置步骤
70
+
71
+ #### Step 1: 配置请求
72
+
73
+ 1. **设置请求 URL**:输入第一步需要请求的接口地址
74
+ 2. **选择请求方法**:GET、POST、PUT、DELETE 等
75
+ 3. **配置参数**:
76
+ - **Query**:URL 查询参数
77
+ - **Body**:请求体参数
78
+ - **Header**:请求头
79
+ - **Cookie**:Cookie 参数
80
+ 4. **测试请求**:点击"发送"按钮测试请求,查看响应结果
81
+
82
+ #### Step 2: 配置 OAuth URL
83
+
84
+ 1. **设置 OAuth URL**:输入第三方登录的授权地址
85
+ 2. **配置参数**:设置 OAuth 需要的查询参数
86
+ 3. **完成配置**:点击"完成"生成最终配置
87
+
88
+ ### 参数类型说明
89
+
90
+ 每个参数都支持以下类型:
91
+
92
+ - **string**:字符串类型,手动输入固定值
93
+ - **number**:数字类型,手动输入固定值
94
+ - **boolean**:布尔类型,选择 true/false
95
+ - **system**:从 Pinia Store 中获取系统数据
96
+ - 格式:`"storeName:path.to.field"`
97
+ - 示例:`"user:user.token"` → 解析为 `userStore.user.token`
98
+ - 可用的 store 名称:`user`, `settings`, `menu`, `route`, `tabbar`, `iframe`, `keepAlive`, `favorites`
99
+ - **request**:从上一步请求的响应数据中获取
100
+ - 格式:`"path.to.field"`
101
+ - 示例:`"data.name"` → 解析为 `previousResponse.data.name`
102
+
103
+ #### System 类型字段路径示例
104
+
105
+ ```typescript
106
+ // 获取用户 token
107
+ const tokenParam = {
108
+ key: 'authorization',
109
+ type: 'system',
110
+ field: 'user:user.token' // userStore.user.token
111
+ };
112
+
113
+ // 获取用户 ID
114
+ const userIdParam = {
115
+ key: 'userId',
116
+ type: 'system',
117
+ field: 'user:user.id' // userStore.user.id
118
+ };
119
+
120
+ // 获取用户账号
121
+ const accountParam = {
122
+ key: 'account',
123
+ type: 'system',
124
+ field: 'user:user.account' // userStore.user.account
125
+ };
126
+
127
+ // 获取设置中的某个值
128
+ const themeParam = {
129
+ key: 'theme',
130
+ type: 'system',
131
+ field: 'settings:settings.app.colorScheme' // settingsStore.settings.app.colorScheme
132
+ };
133
+ ```
134
+
135
+ #### Request 类型字段路径示例
136
+
137
+ ```typescript
138
+ // 假设第一步响应数据为:
139
+ // {
140
+ // "code": 200,
141
+ // "data": {
142
+ // "token": "abc123",
143
+ // "user": {
144
+ // "name": "张三",
145
+ // "id": "12345"
146
+ // }
147
+ // }
148
+ // }
149
+
150
+ // 获取 token
151
+ const tokenParam = {
152
+ key: 'token',
153
+ type: 'request',
154
+ field: 'data.token' // 结果: "abc123"
155
+ };
156
+
157
+ // 获取用户名
158
+ const usernameParam = {
159
+ key: 'username',
160
+ type: 'request',
161
+ field: 'data.user.name' // 结果: "张三"
162
+ };
163
+
164
+ // 获取用户 ID
165
+ const uidParam = {
166
+ key: 'uid',
167
+ type: 'request',
168
+ field: 'data.user.id' // 结果: "12345"
169
+ };
170
+ ```
171
+
172
+ ## Hook 使用
173
+
174
+ ### usePartyLogin
175
+
176
+ 执行第三方登录流程的 Hook,自动发送第一步请求并生成第二步的 OAuth URL。
177
+
178
+ #### 基础用法
179
+
180
+ ```vue
181
+ <script setup lang="ts">
182
+ import type { PartyLoginConfig } from '@/features/components/PartyLogin/type';
183
+ import { usePartyLogin } from '@/features/composables/partyLogin';
184
+
185
+ const config: PartyLoginConfig = [
186
+ {
187
+ step: 1,
188
+ request: {
189
+ url: 'https://api.example.com/oauth/prepare',
190
+ method: 'POST',
191
+ params: {
192
+ query: [],
193
+ body: [
194
+ { key: 'appId', type: 'string', value: 'your-app-id' },
195
+ { key: 'userId', type: 'system', field: 'userId' }
196
+ ],
197
+ header: [
198
+ { key: 'Content-Type', type: 'string', value: 'application/json' }
199
+ ],
200
+ cookie: []
201
+ }
202
+ }
203
+ },
204
+ {
205
+ step: 2,
206
+ oauth: {
207
+ url: 'https://oauth.example.com/authorize',
208
+ params: [
209
+ { key: 'client_id', type: 'string', value: 'your-client-id' },
210
+ { key: 'redirect_uri', type: 'string', value: 'https://your-app.com/callback' },
211
+ { key: 'state', type: 'request', field: 'state' }, // 从第一步响应中获取
212
+ { key: 'nonce', type: 'request', field: 'nonce' }
213
+ ]
214
+ }
215
+ }
216
+ ];
217
+
218
+ const { url, loading, error, execute } = usePartyLogin(config);
219
+
220
+ // 当 url 有值时,跳转到 OAuth 页面
221
+ watch(url, (newUrl) => {
222
+ if (newUrl) {
223
+ window.location.href = newUrl;
224
+ }
225
+ });
226
+ </script>
227
+
228
+ <template>
229
+ <div>
230
+ <div v-if="loading">
231
+ 正在准备登录...
232
+ </div>
233
+ <div v-if="error" class="error">
234
+ {{ error.message }}
235
+ </div>
236
+ </div>
237
+ </template>
238
+ ```
239
+
240
+ #### 返回值
241
+
242
+ | 名称 | 说明 | 类型 |
243
+ |------|------|------|
244
+ | url | 生成的 OAuth URL(响应式) | `Ref<string>` |
245
+ | loading | 请求加载状态 | `Ref<boolean>` |
246
+ | error | 错误信息 | `Ref<Error \| null>` |
247
+ | execute | 手动重新执行的方法 | `() => Promise<string>` |
248
+
249
+ #### 参数
250
+
251
+ | 名称 | 说明 | 类型 | 必填 |
252
+ |------|------|------|------|
253
+ | config | 第三方登录配置 | `PartyLoginConfig` | 是 |
254
+
255
+ ## 类型定义
256
+
257
+ ### PartyLoginConfig
258
+
259
+ ```typescript
260
+ type PartyLoginConfig = PartyLoginStepConfig[];
261
+
262
+ interface PartyLoginStepConfig {
263
+ step: number
264
+ request?: {
265
+ url: string
266
+ method: HTTPMethod
267
+ params: {
268
+ query: PartyLoginParamItem[]
269
+ body: PartyLoginParamItem[]
270
+ header: PartyLoginParamItem[]
271
+ cookie: PartyLoginParamItem[]
272
+ }
273
+ }
274
+ oauth?: {
275
+ url: string
276
+ params: PartyLoginParamItem[]
277
+ }
278
+ }
279
+ ```
280
+
281
+ ### PartyLoginParamItem
282
+
283
+ ```typescript
284
+ interface PartyLoginParamItem {
285
+ key: string // 参数名
286
+ type: ItemType // 参数类型
287
+ value?: ParamValue // 固定值(string/number/boolean 类型使用)
288
+ field?: string // 字段名(system/request 类型使用)
289
+ }
290
+
291
+ type ItemType = 'string' | 'number' | 'boolean' | 'system' | 'request';
292
+ type ParamValue = string | number | 'true' | 'false';
293
+ ```
294
+
295
+ ### HTTPMethod
296
+
297
+ ```typescript
298
+ type HTTPMethod = 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' | 'HEAD' | 'OPTIONS';
299
+ ```
300
+
301
+ ## 实际应用场景
302
+
303
+ ### 场景 1:标准 OAuth 2.0 流程
304
+
305
+ ```typescript
306
+ const weChatLoginConfig: PartyLoginConfig = [
307
+ {
308
+ step: 1,
309
+ request: {
310
+ url: '/api/oauth/wechat/prepare',
311
+ method: 'POST',
312
+ params: {
313
+ query: [],
314
+ body: [
315
+ { key: 'userId', type: 'system', field: 'userId' }
316
+ ],
317
+ header: [
318
+ { key: 'Content-Type', type: 'string', value: 'application/json' }
319
+ ],
320
+ cookie: []
321
+ }
322
+ }
323
+ },
324
+ {
325
+ step: 2,
326
+ oauth: {
327
+ url: 'https://open.weixin.qq.com/connect/oauth2/authorize',
328
+ params: [
329
+ { key: 'appid', type: 'string', value: 'wx1234567890' },
330
+ { key: 'redirect_uri', type: 'string', value: 'https://your-app.com/wechat/callback' },
331
+ { key: 'response_type', type: 'string', value: 'code' },
332
+ { key: 'scope', type: 'string', value: 'snsapi_userinfo' },
333
+ { key: 'state', type: 'request', field: 'state' }
334
+ ]
335
+ }
336
+ }
337
+ ];
338
+ ```
339
+
340
+ ### 场景 2:需要预先获取 Token
341
+
342
+ ```typescript
343
+ const customLoginConfig: PartyLoginConfig = [
344
+ {
345
+ step: 1,
346
+ request: {
347
+ url: '/api/oauth/get-token',
348
+ method: 'GET',
349
+ params: {
350
+ query: [
351
+ { key: 'appId', type: 'string', value: 'your-app-id' }
352
+ ],
353
+ body: [],
354
+ header: [],
355
+ cookie: []
356
+ }
357
+ }
358
+ },
359
+ {
360
+ step: 2,
361
+ oauth: {
362
+ url: 'https://third-party.com/login',
363
+ params: [
364
+ { key: 'token', type: 'request', field: 'data.token' },
365
+ { key: 'userId', type: 'system', field: 'userId' },
366
+ { key: 'timestamp', type: 'request', field: 'data.timestamp' }
367
+ ]
368
+ }
369
+ }
370
+ ];
371
+ ```
372
+
373
+ ## 工作流程
374
+
375
+ ```mermaid
376
+ sequenceDiagram
377
+ participant User as 用户
378
+ participant Modal as 配置组件
379
+ participant Hook as usePartyLogin
380
+ participant API as 第一步 API
381
+ participant OAuth as 第三方 OAuth
382
+
383
+ User->>Modal: 配置登录流程
384
+ Modal->>User: 生成配置 JSON
385
+ User->>Hook: 传入配置
386
+ Hook->>API: 发送第一步请求
387
+ API-->>Hook: 返回响应数据
388
+ Hook->>Hook: 拼接 OAuth URL
389
+ Hook-->>User: 返回 OAuth URL
390
+ User->>OAuth: 跳转到第三方登录
391
+ ```
392
+
393
+ ## 注意事项
394
+
395
+ 1. **CORS 问题**:第一步的请求可能涉及跨域,需要后端配置 CORS 或使用代理
396
+ 2. **响应数据格式**:Hook 会自动解析 JSON 响应,并深度解析嵌套的 JSON 字符串
397
+ 3. **字段路径**:`request` 类型的参数可以使用点号访问嵌套字段,如 `data.token`
398
+ 4. **用户信息**:`system` 类型会从 `useUserStore().user` 中获取,确保用户已登录
399
+ 5. **自动执行**:Hook 初始化时会自动发送请求,如需手动控制可调用 `execute` 方法
400
+
401
+ ## 开发与调试
402
+
403
+ ### 查看生成的配置
404
+
405
+ 在 Modal 组件中点击"完成"后,配置会通过 `update:modelValue` 事件返回,可以:
406
+
407
+ ```vue
408
+ <script setup lang="ts">
409
+ const config = ref();
410
+
411
+ function handleConfigUpdate(newConfig: PartyLoginConfig) {
412
+ console.log('生成的配置:', JSON.stringify(newConfig, null, 2));
413
+ }
414
+ </script>
415
+
416
+ <template>
417
+ <PartyLoginModal
418
+ v-model="config"
419
+ @update:model-value="handleConfigUpdate"
420
+ >
421
+ <template #trigger>
422
+ <a-button>配置</a-button>
423
+ </template>
424
+ </PartyLoginModal>
425
+ </template>
426
+ ```
427
+
428
+ ### 测试请求
429
+
430
+ 在 Step 1 中可以直接点击"发送"按钮测试第一步请求,查看:
431
+ - 响应状态码
432
+ - 响应数据
433
+ - 请求耗时
434
+
435
+ 这有助于验证配置是否正确。
436
+
437
+ ## 路由集成
438
+
439
+ ### 在路由 Meta 中使用 partyLogin
440
+
441
+ 可以在路由配置中使用 `partyLogin`,当访问该路由时会自动在 iframe 中打开第三方登录页面。
442
+
443
+ #### 基础用法
444
+
445
+ ```typescript
446
+ import type { RouteRecordRaw } from 'vue-router';
447
+
448
+ const route: RouteRecordRaw = {
449
+ path: '/third-party-login',
450
+ name: 'ThirdPartyLogin',
451
+ meta: {
452
+ title: '第三方登录',
453
+ iframe: 'https://default-url.com', // 可选的默认 iframe URL
454
+ partyLogin: [
455
+ {
456
+ step: 1,
457
+ request: {
458
+ url: 'http://43.143.107.174:10000/pub-sys-route/sysconfig/getSysThemeStyleConfig',
459
+ method: 'GET',
460
+ params: {
461
+ body: [],
462
+ query: [],
463
+ cookie: [],
464
+ header: [
465
+ {
466
+ key: 'Content-Type',
467
+ type: 'string',
468
+ value: 'application/json'
469
+ },
470
+ {
471
+ key: 'authorization',
472
+ type: 'system',
473
+ field: 'user:user.token' // 从 userStore.user.token 获取
474
+ }
475
+ ]
476
+ }
477
+ }
478
+ },
479
+ {
480
+ step: 2,
481
+ oauth: {
482
+ url: 'https://www.baidu.com/s',
483
+ params: [
484
+ {
485
+ key: 'ie',
486
+ type: 'string',
487
+ value: 'utf-8'
488
+ },
489
+ {
490
+ key: 'wd',
491
+ type: 'request',
492
+ field: 'data.name' // 从第一步响应的 data.name 获取
493
+ }
494
+ ]
495
+ }
496
+ }
497
+ ]
498
+ }
499
+ };
500
+
501
+ export default route;
502
+ ```
503
+
504
+ #### 工作原理
505
+
506
+ 1. 当路由被激活时,`IframeView` 组件会检查 `route.meta.partyLogin`
507
+ 2. 如果 `partyLogin` 存在且不为空数组,则:
508
+ - 调用 `usePartyLogin` 执行第三方登录流程
509
+ - 发送第一步请求获取数据
510
+ - 使用响应数据构建第二步的 OAuth URL
511
+ - 在 iframe 中加载生成的 OAuth URL
512
+ 3. 如果 `partyLogin` 不存在,则使用 `meta.iframe` 指定的默认 URL
513
+
514
+ #### 完整示例
515
+
516
+ ```typescript
517
+ const thirdPartyRoutes: RouteRecordRaw = {
518
+ path: '/integrations',
519
+ name: 'Integrations',
520
+ meta: {
521
+ title: '第三方集成',
522
+ icon: 'integration'
523
+ },
524
+ children: [
525
+ {
526
+ path: 'wechat',
527
+ name: 'WeChatLogin',
528
+ meta: {
529
+ title: '微信登录',
530
+ partyLogin: [
531
+ {
532
+ step: 1,
533
+ request: {
534
+ url: '/api/wechat/prepare',
535
+ method: 'POST',
536
+ params: {
537
+ query: [],
538
+ body: [
539
+ { key: 'userId', type: 'system', field: 'user:user.id' },
540
+ { key: 'appId', type: 'string', value: 'wx123456' }
541
+ ],
542
+ header: [
543
+ { key: 'Content-Type', type: 'string', value: 'application/json' },
544
+ { key: 'Authorization', type: 'system', field: 'user:user.token' }
545
+ ],
546
+ cookie: []
547
+ }
548
+ }
549
+ },
550
+ {
551
+ step: 2,
552
+ oauth: {
553
+ url: 'https://open.weixin.qq.com/connect/oauth2/authorize',
554
+ params: [
555
+ { key: 'appid', type: 'string', value: 'wx123456' },
556
+ { key: 'redirect_uri', type: 'string', value: 'https://your-app.com/callback' },
557
+ { key: 'response_type', type: 'string', value: 'code' },
558
+ { key: 'scope', type: 'string', value: 'snsapi_userinfo' },
559
+ { key: 'state', type: 'request', field: 'data.state' }
560
+ ]
561
+ }
562
+ }
563
+ ]
564
+ }
565
+ },
566
+ {
567
+ path: 'dingtalk',
568
+ name: 'DingTalkLogin',
569
+ meta: {
570
+ title: '钉钉登录',
571
+ partyLogin: [
572
+ {
573
+ step: 1,
574
+ request: {
575
+ url: '/api/dingtalk/prepare',
576
+ method: 'GET',
577
+ params: {
578
+ query: [
579
+ { key: 'userId', type: 'system', field: 'user:user.id' }
580
+ ],
581
+ body: [],
582
+ header: [
583
+ { key: 'Authorization', type: 'system', field: 'user:user.token' }
584
+ ],
585
+ cookie: []
586
+ }
587
+ }
588
+ },
589
+ {
590
+ step: 2,
591
+ oauth: {
592
+ url: 'https://oapi.dingtalk.com/connect/oauth2/sns_authorize',
593
+ params: [
594
+ { key: 'appid', type: 'request', field: 'data.appId' },
595
+ { key: 'response_type', type: 'string', value: 'code' },
596
+ { key: 'scope', type: 'string', value: 'snsapi_login' },
597
+ { key: 'state', type: 'request', field: 'data.state' },
598
+ { key: 'redirect_uri', type: 'string', value: 'https://your-app.com/callback' }
599
+ ]
600
+ }
601
+ }
602
+ ]
603
+ }
604
+ }
605
+ ]
606
+ };
607
+ ```
608
+
609
+ #### 类型定义
610
+
611
+ 在 `vue-router` 的类型声明中,`partyLogin` 已经被添加到 `RouterMetaRawBaseOptions`:
612
+
613
+ ```typescript
614
+ // packages/core/types/vue-router.d.ts
615
+ export interface RouterMetaRawBaseOptions {
616
+ // ... 其他属性
617
+ partyLogin?: any[]
618
+ }
619
+ ```
620
+
621
+ 这样在配置路由时就可以获得完整的类型提示和检查。