@pubinfo-nightly/core 2026.3.15 → 2026.3.17

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 (91) hide show
  1. package/dist/AppSetting-BBCop_0D.js +107 -0
  2. package/dist/{HButton-Dt6qGhhR.js → HButton-pEqyd918.js} +13 -11
  3. package/dist/HCheckList-cef4jGrw.js +35 -0
  4. package/dist/HDivider-BSj2DiEY.js +13 -0
  5. package/dist/HInput-DfpH43DV.js +36 -0
  6. package/dist/HSlideover-B6gEDfA5.js +3223 -0
  7. package/dist/HToggle-BTft_PNT.js +32 -0
  8. package/dist/HTooltip-B8aoK5uN.js +19 -0
  9. package/dist/PreferencesContent-CuNffqV_.js +703 -0
  10. package/dist/SettingBreadcrumb-CMn0gojs.js +47 -0
  11. package/dist/SettingCopyright-DKwdXYr3.js +47 -0
  12. package/dist/SettingEnableTransition-Bn37z29E.js +70 -0
  13. package/dist/SettingHome-HttuaN-N.js +33 -0
  14. package/dist/SettingMenu-CEvBV2Wj.js +113 -0
  15. package/dist/SettingMode-DpAUEZUv.js +62 -0
  16. package/dist/SettingNavSearch-Cem0LL54.js +33 -0
  17. package/dist/SettingOther-DcrlPnMd.js +50 -0
  18. package/dist/SettingPage-UhL5e6_m.js +24 -0
  19. package/dist/SettingTabbar-Ct3S8jS2.js +144 -0
  20. package/dist/SettingThemes-DaRKZ2Q3.js +123 -0
  21. package/dist/SettingToolbar-Cx_Mz_EP.js +52 -0
  22. package/dist/SettingTopbar-Ckg-OGSj.js +51 -0
  23. package/dist/SettingWidthMode-CZ2i-kzC.js +58 -0
  24. package/dist/_plugin-vue_export-helper-CsLplWgU.js +8 -0
  25. package/dist/auth-BVTDpkDr.js +4635 -0
  26. package/dist/built-in/layout-component/composables/useContext.d.ts +1 -0
  27. package/dist/{change-organization-hsqeSzDu.js → change-organization-EdR25ifs.js} +51 -48
  28. package/dist/{change-password-EtccCDRX.js → change-password-D-ZqBAmY.js} +85 -81
  29. package/dist/chunk-BdsCSvBP.js +20 -0
  30. package/dist/{components-DFNyaAb9.js → components-CKVAXENc.js} +681 -674
  31. package/dist/{core-DJIGzMMM.js → core-Dg8YES9i.js} +1003 -938
  32. package/dist/dist-HLiWAOC7.js +472 -0
  33. package/dist/{engine-oniguruma-CaNXwGSv.js → engine-oniguruma-DCGL4yXX.js} +58 -56
  34. package/dist/form-CGzMvzKZ.js +2968 -0
  35. package/dist/index.js +4994 -4877
  36. package/dist/json-BFBcpML_.js +3 -0
  37. package/dist/{modal-Bl5xHbxa.js → modal-ybprgEqf.js} +12543 -9070
  38. package/dist/not-found-CuHR6H_g.js +44 -0
  39. package/dist/not-permission-BcQAkzxI.js +41 -0
  40. package/dist/profile-Bsc6FIbI.js +19533 -0
  41. package/dist/{question-line-BG__Ycfv.js → question-line-BzrfPWnG.js} +9 -7
  42. package/dist/reload-BClJy4MY.js +15 -0
  43. package/dist/{right-BxBlFUwj.js → right-CCqcGubr.js} +15 -13
  44. package/dist/style.css +1 -1
  45. package/dist/{tree-select-B8cTcGLa.js → tree-select-gPCwtMia.js} +2906 -2659
  46. package/dist/useContext-Dlqfap_7.js +11 -0
  47. package/dist/vitesse-dark-DrB9-RFK.js +4 -0
  48. package/dist/vitesse-light-CmcnEl2T.js +4 -0
  49. package/dist/wasm-C92aTsEJ.js +4 -0
  50. package/dist/watchDiff-DJP3s9bb.js +883 -0
  51. package/package.json +8 -8
  52. package/src/built-in/layout-component/components/Menu/item.vue +2 -2
  53. package/src/built-in/layout-component/composables/useContext.ts +1 -0
  54. package/src/built-in/layout-component/provider.ts +5 -0
  55. package/dist/AppSetting-7jlhUzze.js +0 -105
  56. package/dist/HCheckList-cPBgATmv.js +0 -33
  57. package/dist/HDivider-BwvBr5OE.js +0 -11
  58. package/dist/HInput-KJ5nFBpF.js +0 -34
  59. package/dist/HSlideover-DVQDc9q6.js +0 -3151
  60. package/dist/HToggle-Ce_2-yhZ.js +0 -30
  61. package/dist/HTooltip-DjAU-Evn.js +0 -16
  62. package/dist/PreferencesContent-BAIH81yS.js +0 -701
  63. package/dist/SettingBreadcrumb-O9-PhAFT.js +0 -45
  64. package/dist/SettingCopyright-DIKsWTuf.js +0 -45
  65. package/dist/SettingEnableTransition-61O7W00b.js +0 -68
  66. package/dist/SettingHome-Sv65TPH8.js +0 -31
  67. package/dist/SettingMenu-BvwJOUZV.js +0 -111
  68. package/dist/SettingMode-B8H_eQc8.js +0 -60
  69. package/dist/SettingNavSearch-BHsmYBA7.js +0 -31
  70. package/dist/SettingOther-CyyNnaDX.js +0 -48
  71. package/dist/SettingPage-B82lW41P.js +0 -22
  72. package/dist/SettingTabbar-Bky2xvH-.js +0 -142
  73. package/dist/SettingThemes-CkdzS1xt.js +0 -121
  74. package/dist/SettingToolbar-CD4qns1J.js +0 -50
  75. package/dist/SettingTopbar-1shjoe3s.js +0 -49
  76. package/dist/SettingWidthMode-DlG6lXjA.js +0 -56
  77. package/dist/_plugin-vue_export-helper-sUTDUeGO.js +0 -6
  78. package/dist/auth-BLGKOyc5.js +0 -4432
  79. package/dist/chunk-CD4vhpVs.js +0 -18
  80. package/dist/dist-7OjQvlya.js +0 -468
  81. package/dist/form-C3VHofnN.js +0 -2768
  82. package/dist/json-Bu_Zprin.js +0 -2
  83. package/dist/not-found-BCjngLzt.js +0 -42
  84. package/dist/not-permission-C26vTMvf.js +0 -39
  85. package/dist/profile-BVXIFuBG.js +0 -19269
  86. package/dist/reload-DHx5Vwus.js +0 -12
  87. package/dist/useContext-DLtu9F7E.js +0 -9
  88. package/dist/vitesse-dark-CTe40QT_.js +0 -2
  89. package/dist/vitesse-light-BWXC_WeB.js +0 -2
  90. package/dist/wasm-2zDVqo-C.js +0 -2
  91. package/dist/watchDiff-CPZFtaOC.js +0 -655
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@pubinfo-nightly/core",
3
3
  "type": "module",
4
- "version": "2026.03.15",
4
+ "version": "2026.03.17",
5
5
  "exports": {
6
6
  ".": {
7
7
  "types": "./dist/index.d.ts",
@@ -27,9 +27,9 @@
27
27
  "node": "^20.19.0 || >=22.12.0"
28
28
  },
29
29
  "peerDependencies": {
30
- "@pubinfo-nightly/config": "2026.03.15",
31
- "@pubinfo-nightly/devtools": "2026.03.15",
32
- "@pubinfo-nightly/vite": "2026.03.15",
30
+ "@pubinfo-nightly/config": "2026.03.17",
31
+ "@pubinfo-nightly/devtools": "2026.03.17",
32
+ "@pubinfo-nightly/vite": "2026.03.17",
33
33
  "alova": "^3.5.0",
34
34
  "pinia": "^3.0.4",
35
35
  "vue": "^3.5.28",
@@ -42,7 +42,7 @@
42
42
  "@headlessui/vue": "^1.7.23",
43
43
  "@imengyu/vue3-context-menu": "^1.5.4",
44
44
  "@pubinfo/pro-components": "^1.8.2",
45
- "@pubinfo-nightly/shared": "2026.03.15",
45
+ "@pubinfo-nightly/shared": "2026.03.17",
46
46
  "@unocss/reset": "^66.6.0",
47
47
  "@vueuse/core": "^14.2.1",
48
48
  "@vueuse/integrations": "^14.2.1",
@@ -69,10 +69,10 @@
69
69
  "@alova/mock": "^2.0.18",
70
70
  "@iconify/json": "^2.2.437",
71
71
  "@iconify/vue": "^5.0.0",
72
- "@pubinfo-nightly/config": "2026.03.15",
72
+ "@pubinfo-nightly/config": "2026.03.17",
73
73
  "@pubinfo/openapi": "^0.9.1",
74
74
  "@pubinfo/preset-openapi": "^0.9.1",
75
- "@pubinfo-nightly/vite": "2026.03.15",
75
+ "@pubinfo-nightly/vite": "2026.03.17",
76
76
  "@types/lodash-es": "^4.17.12",
77
77
  "@types/md5": "^2.3.6",
78
78
  "@types/nprogress": "^0.2.3",
@@ -91,7 +91,7 @@
91
91
  "unplugin-auto-import": "^21.0.0",
92
92
  "unplugin-icons": "^23.0.1",
93
93
  "unplugin-vue-components": "^31.0.0",
94
- "vite": "^8.0.0-beta.13",
94
+ "vite": "^8.0.0",
95
95
  "vite-plugin-dts": "^4.5.4",
96
96
  "vue": "^3.5.28",
97
97
  "vue-router": "^5.0.2"
@@ -18,7 +18,7 @@ const props = withDefaults(
18
18
  );
19
19
 
20
20
  const rootMenu = inject(rootMenuInjectionKey)!;
21
- const { generateTitle } = useContext();
21
+ const { generateTitle, indentSize } = useContext();
22
22
 
23
23
  const itemRef = ref<HTMLElement>();
24
24
 
@@ -70,7 +70,7 @@ const safeIconColor = computed<string | undefined>(() => iconOptions.value?.icon
70
70
  // 缩进样式
71
71
  const indentStyle = computed(() => {
72
72
  return !rootMenu.isMenuPopup
73
- ? `padding-left: ${32 * (props.level ?? 0)}px`
73
+ ? `padding-left: ${indentSize * (props.level ?? 0)}px`
74
74
  : '';
75
75
  });
76
76
 
@@ -22,6 +22,7 @@ interface LayoutContext {
22
22
 
23
23
  appTitle: string
24
24
  isDev: boolean
25
+ indentSize: number
25
26
  generateTitle: (titile?: string | (() => any)) => string
26
27
  }
27
28
 
@@ -24,6 +24,10 @@ export const Provider = defineComponent({
24
24
  type: Boolean,
25
25
  default: false,
26
26
  },
27
+ indentSize: {
28
+ type: Number,
29
+ default: 32,
30
+ },
27
31
  },
28
32
  setup(props, { slots }) {
29
33
  const settingsStore = useSettingsStore();
@@ -49,6 +53,7 @@ export const Provider = defineComponent({
49
53
 
50
54
  appTitle: props.appTitle,
51
55
  isDev: props.isDev,
56
+ indentSize: props.indentSize,
52
57
  generateTitle,
53
58
  });
54
59
 
@@ -1,105 +0,0 @@
1
- import { n as useClipboard } from "./dist-7OjQvlya.js";
2
- import { t as _plugin_vue_export_helper_default } from "./_plugin-vue_export-helper-sUTDUeGO.js";
3
- import { n as useContext } from "./useContext-DLtu9F7E.js";
4
- import { t as HButton_default } from "./HButton-Dt6qGhhR.js";
5
- import { t as HSlideover_default } from "./HSlideover-DVQDc9q6.js";
6
- import { Fragment, computed, createBlock, createElementBlock, createElementVNode, createSlots, createTextVNode, createVNode, defineAsyncComponent, defineComponent, markRaw, openBlock, renderList, resolveComponent, resolveDynamicComponent, unref, useModel, watch, withCtx } from "vue";
7
- import { useRoute } from "vue-router";
8
- import Message from "vue-m-message";
9
- var _hoisted_1$1 = {
10
- viewBox: "0 0 1024 1024",
11
- width: "1.2em",
12
- height: "1.2em"
13
- };
14
- function render$1(e, t) {
15
- return openBlock(), createElementBlock("svg", _hoisted_1$1, [...t[0] ||= [createElementVNode("path", {
16
- fill: "currentColor",
17
- d: "M128 320v576h576V320zm-32-64h640a32 32 0 0 1 32 32v640a32 32 0 0 1-32 32H96a32 32 0 0 1-32-32V288a32 32 0 0 1 32-32M960 96v704a32 32 0 0 1-32 32h-96v-64h64V128H384v64h-64V96a32 32 0 0 1 32-32h576a32 32 0 0 1 32 32M256 672h320v64H256zm0-192h320v64H256z"
18
- }, null, -1)]]);
19
- }
20
- var document_copy_default = markRaw({
21
- name: "ep-document-copy",
22
- render: render$1
23
- }), _hoisted_1 = { class: "settong-warp" }, AppSetting_default = /* @__PURE__ */ _plugin_vue_export_helper_default(/* @__PURE__ */ defineComponent({
24
- name: "AppSetting",
25
- components: {
26
- SettingThemes: defineAsyncComponent(() => import("./SettingThemes-CkdzS1xt.js")),
27
- SettingsMode: defineAsyncComponent(() => import("./SettingMode-B8H_eQc8.js")),
28
- SettingWidthMode: defineAsyncComponent(() => import("./SettingWidthMode-DlG6lXjA.js")),
29
- SettingEnableTransition: defineAsyncComponent(() => import("./SettingEnableTransition-61O7W00b.js")),
30
- SettingMenu: defineAsyncComponent(() => import("./SettingMenu-BvwJOUZV.js")),
31
- SettingTopbar: defineAsyncComponent(() => import("./SettingTopbar-1shjoe3s.js")),
32
- SettingTabbar: defineAsyncComponent(() => import("./SettingTabbar-Bky2xvH-.js")),
33
- SettingToolbar: defineAsyncComponent(() => import("./SettingToolbar-CD4qns1J.js")),
34
- SettingBreadcrumb: defineAsyncComponent(() => import("./SettingBreadcrumb-O9-PhAFT.js")),
35
- SettingPage: defineAsyncComponent(() => import("./SettingPage-B82lW41P.js")),
36
- SettingNavSearch: defineAsyncComponent(() => import("./SettingNavSearch-BHsmYBA7.js")),
37
- SettingCopyright: defineAsyncComponent(() => import("./SettingCopyright-DIKsWTuf.js")),
38
- SettingHome: defineAsyncComponent(() => import("./SettingHome-Sv65TPH8.js")),
39
- SettingOther: defineAsyncComponent(() => import("./SettingOther-CyyNnaDX.js"))
40
- },
41
- __name: "AppSetting",
42
- props: {
43
- open: { default: !1 },
44
- openModifiers: {}
45
- },
46
- emits: ["update:open"],
47
- setup(t) {
48
- let i = useModel(t, "open"), a = useRoute(), { settingsStore: o, menuStore: s } = useContext(), c = computed(() => o.mode !== "pc"), l = computed(() => m([
49
- "SettingThemes",
50
- "SettingsMode",
51
- "SettingWidthMode",
52
- "SettingEnableTransition",
53
- "SettingMenu",
54
- "SettingTopbar",
55
- "SettingTabbar",
56
- "SettingToolbar",
57
- "SettingBreadcrumb",
58
- "SettingPage",
59
- "SettingNavSearch",
60
- "SettingHome",
61
- "SettingCopyright",
62
- "SettingOther"
63
- ], [
64
- "SettingsMode",
65
- "SettingWidthMode",
66
- "SettingEnableTransition",
67
- "SettingBreadcrumb"
68
- ]));
69
- watch(() => o.settings.menu.menuMode, (e) => {
70
- e === "single" ? s.setActived(0) : s.setActived(a.fullPath);
71
- });
72
- let { copy: u, copied: d, isSupported: f } = useClipboard();
73
- watch(d, (e) => {
74
- e && Message.success("复制成功,请粘贴到 src/settings.ts 文件中!", { zIndex: 2e3 });
75
- });
76
- function p() {
77
- u(JSON.stringify(o.settings, null, 2));
78
- }
79
- function m(e, t) {
80
- return e.filter((e) => c.value ? !t.includes(e) : e);
81
- }
82
- return (e, t) => {
83
- let n = HButton_default, r = HSlideover_default;
84
- return openBlock(), createBlock(r, {
85
- modelValue: i.value,
86
- "onUpdate:modelValue": t[0] ||= (e) => i.value = e,
87
- title: "应用配置"
88
- }, createSlots({
89
- default: withCtx(() => [createElementVNode("div", _hoisted_1, [t[1] ||= createElementVNode("div", { class: "rounded-2 bg-rose/20 px-4 py-2 text-sm/6 c-rose" }, [createElementVNode("p", { class: "my-1" }, " 应用配置可实时预览效果,但只是临时生效,要想真正应用于项目,可以点击下方的「复制配置」按钮,并将配置粘贴到 src/settings.ts 文件中。 "), createElementVNode("p", { class: "my-1" }, " 注意:在生产环境中应关闭该模块。 ")], -1), (openBlock(!0), createElementBlock(Fragment, null, renderList(unref(l), (e) => (openBlock(), createBlock(resolveDynamicComponent(e), { key: e }))), 128))])]),
90
- _: 2
91
- }, [unref(f) ? {
92
- name: "footer",
93
- fn: withCtx(() => [createVNode(n, {
94
- block: "",
95
- onClick: p
96
- }, {
97
- default: withCtx(() => [createVNode(unref(document_copy_default)), t[2] ||= createTextVNode(" 复制配置 ", -1)]),
98
- _: 1
99
- })]),
100
- key: "0"
101
- } : void 0]), 1032, ["modelValue"]);
102
- };
103
- }
104
- }), [["__scopeId", "data-v-10c15033"]]);
105
- export { AppSetting_default as default };
@@ -1,33 +0,0 @@
1
- import { a as PubinfoIcon_default } from "./components-DFNyaAb9.js";
2
- import { Fragment, createBlock, createElementBlock, createTextVNode, defineComponent, normalizeClass, openBlock, renderList, toDisplayString, unref, watch } from "vue";
3
- var _hoisted_1 = { class: "inline-flex select-none items-center justify-center of-hidden rounded-md bg-stone-3 dark:bg-stone-7" }, _hoisted_2 = ["disabled", "onClick"], HCheckList_default = /* @__PURE__ */ defineComponent({
4
- __name: "HCheckList",
5
- props: {
6
- modelValue: {},
7
- options: {},
8
- disabled: {
9
- type: Boolean,
10
- default: !1
11
- }
12
- },
13
- emits: ["update:modelValue", "change"],
14
- setup(t, { emit: i }) {
15
- let a = t, o = i;
16
- watch(() => a.modelValue, (e) => {
17
- o("change", e);
18
- });
19
- function s(e) {
20
- o("update:modelValue", e);
21
- }
22
- return (r, i) => (openBlock(), createElementBlock("div", _hoisted_1, [(openBlock(!0), createElementBlock(Fragment, null, renderList(t.options, (n) => (openBlock(), createElementBlock("button", {
23
- key: n.value,
24
- disabled: t.disabled || n.disabled,
25
- class: normalizeClass(["flex cursor-pointer items-center truncate border-size-0 bg-inherit px-2 py-1.5 text-sm disabled:cursor-not-allowed disabled:opacity-50 hover:not-disabled:(bg-ui-primary text-ui-text)", { "text-ui-text bg-ui-primary": t.modelValue === n.value }]),
26
- onClick: (e) => s(n.value)
27
- }, [n.icon ? (openBlock(), createBlock(unref(PubinfoIcon_default), {
28
- key: 0,
29
- name: n.icon
30
- }, null, 8, ["name"])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [createTextVNode(toDisplayString(n.label), 1)], 64))], 10, _hoisted_2))), 128))]));
31
- }
32
- });
33
- export { HCheckList_default as t };
@@ -1,11 +0,0 @@
1
- import { createElementBlock, createElementVNode, defineComponent, openBlock, renderSlot, toDisplayString } from "vue";
2
- var _hoisted_1 = { "w-full": "" }, _hoisted_2 = { class: "flex items-center justify-between gap-4 my-4 whitespace-nowrap text-sm font-500 before:content-empty before:w-full before:h-1px before:bg-stone-2 dark:before:bg-stone-6 after:content-empty after:w-full after:h-1px after:bg-stone-2 dark:after:bg-stone-6" }, _hoisted_3 = { class: "px-2.5 py-[5px]" }, HDivider_default = /* @__PURE__ */ defineComponent({
3
- name: "HDivider",
4
- __name: "HDivider",
5
- props: { title: {} },
6
- setup(e) {
7
- let t = e;
8
- return (e, n) => (openBlock(), createElementBlock("div", _hoisted_1, [createElementVNode("div", _hoisted_2, [createElementVNode("div", _hoisted_3, toDisplayString(t.title), 1)]), renderSlot(e.$slots, "default")]));
9
- }
10
- });
11
- export { HDivider_default as t };
@@ -1,34 +0,0 @@
1
- import { createElementBlock, createElementVNode, defineComponent, openBlock, ref } from "vue";
2
- var _hoisted_1 = { class: "relative w-full lg:w-48" }, _hoisted_2 = [
3
- "value",
4
- "placeholder",
5
- "disabled"
6
- ], HInput_default = /* @__PURE__ */ defineComponent({
7
- __name: "HInput",
8
- props: {
9
- modelValue: {},
10
- placeholder: {},
11
- disabled: {
12
- type: Boolean,
13
- default: !1
14
- }
15
- },
16
- emits: ["update:modelValue"],
17
- setup(t, { expose: r, emit: i }) {
18
- let a = i, o = ref();
19
- function s(e) {
20
- a("update:modelValue", e.target.value);
21
- }
22
- return r({ ref: o }), (n, r) => (openBlock(), createElementBlock("div", _hoisted_1, [createElementVNode("input", {
23
- ref_key: "inputRef",
24
- ref: o,
25
- type: "text",
26
- value: t.modelValue,
27
- placeholder: t.placeholder,
28
- disabled: t.disabled,
29
- class: "relative block w-full border-0 rounded-md bg-white px-2.5 py-1.5 text-sm shadow-sm ring-1 ring-stone-2 ring-inset disabled:cursor-not-allowed dark:bg-dark disabled:opacity-50 focus:outline-none focus:ring-2 dark:ring-stone-8 focus:ring-ui-primary placeholder-stone-4 dark:placeholder-stone-5",
30
- onInput: s
31
- }, null, 40, _hoisted_2)]));
32
- }
33
- });
34
- export { HInput_default as t };