@duxweb/dvha-pro 1.0.46 → 1.0.48

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 (64) hide show
  1. package/dist/cjs/component.cjs +1 -1
  2. package/dist/cjs/components/layout/list.cjs +1 -1
  3. package/dist/cjs/components/layout/table.cjs +1 -1
  4. package/dist/cjs/components/layout/tools.cjs +1 -1
  5. package/dist/cjs/components/list/card.cjs +1 -1
  6. package/dist/cjs/components/list/list.cjs +1 -1
  7. package/dist/cjs/components/table/table.cjs +1 -1
  8. package/dist/cjs/components/table/tablePage.cjs +1 -1
  9. package/dist/cjs/dvha-pro.css +1 -1
  10. package/dist/cjs/hooks/table.cjs +1 -1
  11. package/dist/cjs/index.cjs +1 -1
  12. package/dist/cjs/langs/en-US.json.cjs +1 -1
  13. package/dist/cjs/langs/zh-CN.json.cjs +1 -1
  14. package/dist/cjs/pages/authLayout.cjs +1 -1
  15. package/dist/cjs/pages/layout/page.cjs +1 -1
  16. package/dist/cjs/pages/layout/tab.cjs +1 -1
  17. package/dist/cjs/pages/menu/avatar.cjs +1 -1
  18. package/dist/cjs/pages/menu/button.cjs +1 -1
  19. package/dist/cjs/pages/menu/dark.cjs +1 -0
  20. package/dist/cjs/pages/menu/menuApp.cjs +1 -0
  21. package/dist/cjs/pages/menu/menuMain.cjs +1 -0
  22. package/dist/cjs/pages/menu/mobile.cjs +1 -1
  23. package/dist/cjs/pages/menu/notice.cjs +1 -0
  24. package/dist/cjs/theme/uno.css.cjs +19 -9
  25. package/dist/esm/component.js +1 -1
  26. package/dist/esm/components/layout/list.js +95 -86
  27. package/dist/esm/components/layout/table.js +122 -117
  28. package/dist/esm/components/layout/tools.js +109 -32
  29. package/dist/esm/components/list/card.js +27 -22
  30. package/dist/esm/components/list/list.js +16 -11
  31. package/dist/esm/components/table/table.js +31 -27
  32. package/dist/esm/components/table/tablePage.js +17 -12
  33. package/dist/esm/dvha-pro.css +1 -1
  34. package/dist/esm/hooks/table.js +25 -19
  35. package/dist/esm/index.js +84 -78
  36. package/dist/esm/langs/en-US.json.js +1 -1
  37. package/dist/esm/langs/zh-CN.json.js +2 -2
  38. package/dist/esm/pages/authLayout.js +20 -17
  39. package/dist/esm/pages/layout/page.js +1 -1
  40. package/dist/esm/pages/layout/tab.js +2 -2
  41. package/dist/esm/pages/menu/avatar.js +83 -71
  42. package/dist/esm/pages/menu/button.js +12 -13
  43. package/dist/esm/pages/menu/dark.js +54 -0
  44. package/dist/esm/pages/menu/menuApp.js +207 -0
  45. package/dist/esm/pages/menu/{main.js → menuMain.js} +46 -41
  46. package/dist/esm/pages/menu/mobile.js +16 -13
  47. package/dist/esm/pages/menu/notice.js +205 -0
  48. package/dist/esm/theme/uno.css.js +19 -9
  49. package/dist/types/components/layout/list.d.ts +7 -0
  50. package/dist/types/components/layout/table.d.ts +7 -0
  51. package/dist/types/components/layout/tools.d.ts +28 -2
  52. package/dist/types/components/list/card.d.ts +6 -0
  53. package/dist/types/components/list/list.d.ts +6 -0
  54. package/dist/types/components/table/tablePage.d.ts +6 -0
  55. package/dist/types/main.d.ts +12 -0
  56. package/dist/types/pages/menu/avatar.d.ts +18 -0
  57. package/dist/types/pages/menu/button.d.ts +9 -9
  58. package/dist/types/pages/menu/dark.d.ts +2 -0
  59. package/dist/types/pages/menu/index.d.ts +4 -1
  60. package/dist/types/pages/menu/{main.d.ts → menuApp.d.ts} +1 -1
  61. package/dist/types/pages/menu/menuMain.d.ts +22 -0
  62. package/dist/types/pages/menu/notice.d.ts +14 -0
  63. package/package.json +3 -3
  64. package/dist/cjs/pages/menu/main.cjs +0 -1
@@ -1,7 +1,7 @@
1
- import { defineComponent as v, ref as W, computed as r, toRef as S, createVNode as m } from "vue";
2
- import { useElementSize as y, useWindowSize as z, watchDebounced as M } from "@vueuse/core";
3
- import { DuxListLayout as g } from "../layout/list.js";
4
- const j = /* @__PURE__ */ v({
1
+ import { defineComponent as S, ref as m, computed as g, toRef as z, createVNode as f, mergeProps as L } from "vue";
2
+ import { useElementSize as M, useWindowSize as P, watchDebounced as k } from "@vueuse/core";
3
+ import { DuxListLayout as h } from "../layout/list.js";
4
+ const G = /* @__PURE__ */ S({
5
5
  name: "DuxCardPage",
6
6
  props: {
7
7
  colWidth: {
@@ -25,35 +25,36 @@ const j = /* @__PURE__ */ v({
25
25
  default: ""
26
26
  }
27
27
  },
28
- extends: g,
28
+ extends: h,
29
29
  slots: Object,
30
30
  setup(t, {
31
- slots: a
31
+ slots: a,
32
+ expose: p
32
33
  }) {
33
- const f = W(), {
34
- width: s
35
- } = y(f), {
36
- width: h
37
- } = z(), p = r(() => t.colWidth || 320), u = (e = 0) => {
38
- const i = e || h.value || 1024, c = t.colWidth || 320, n = t.rows || 4, b = t.maxRows || 10, d = 0.25 * 16 * 3, l = Math.max(1, Math.floor((i + d) / (c + d))), x = Math.floor((1920 + d) / (c + d)) * n, C = Math.ceil(x / l), R = Math.min(Math.max(C, n), b);
39
- return l * R;
40
- }, o = S(t.pagination && typeof t.pagination == "object" ? t.pagination : {
34
+ const w = m(), c = m(), {
35
+ width: l
36
+ } = M(w), {
37
+ width: b
38
+ } = P(), x = g(() => t.colWidth || 320), u = (e = 0) => {
39
+ const i = e || b.value || 1024, s = t.colWidth || 320, n = t.rows || 4, R = t.maxRows || 10, d = 0.25 * 16 * 3, r = Math.max(1, Math.floor((i + d) / (s + d))), v = Math.floor((1920 + d) / (s + d)) * n, W = Math.ceil(v / r), y = Math.min(Math.max(W, n), R);
40
+ return r * y;
41
+ }, o = z(t.pagination && typeof t.pagination == "object" ? t.pagination : {
41
42
  page: 1,
42
43
  pageSize: u()
43
44
  });
44
- M([s], () => {
45
+ k([l], () => {
45
46
  if (t.pagination && typeof t.pagination == "object")
46
47
  return;
47
- const e = u(s.value);
48
+ const e = u(l.value);
48
49
  e !== o.value.pageSize && (o.value.pageSize = e, o.value.page = 1);
49
50
  }, {
50
51
  debounce: 300
51
52
  });
52
- const w = r(() => {
53
+ const C = g(() => {
53
54
  const {
54
55
  maxRows: e,
55
56
  rows: i,
56
- colWidth: c,
57
+ colWidth: s,
57
58
  ...n
58
59
  } = t;
59
60
  return {
@@ -61,11 +62,15 @@ const j = /* @__PURE__ */ v({
61
62
  pagination: o.value
62
63
  };
63
64
  });
64
- return () => m(g, w.value, {
65
- default: (e) => m("div", {
65
+ return p({
66
+ list: c
67
+ }), () => f(h, L({
68
+ ref: c
69
+ }, C.value), {
70
+ default: (e) => f("div", {
66
71
  class: "grid gap-3",
67
72
  style: {
68
- "grid-template-columns": `repeat(auto-fit, minmax(${p.value}px, 1fr))`
73
+ "grid-template-columns": `repeat(auto-fit, minmax(${x.value}px, 1fr))`
69
74
  }
70
75
  }, [e.list.value.map((i) => a?.default?.({
71
76
  item: i,
@@ -81,5 +86,5 @@ const j = /* @__PURE__ */ v({
81
86
  }
82
87
  });
83
88
  export {
84
- j as DuxCardPage
89
+ G as DuxCardPage
85
90
  };
@@ -1,6 +1,6 @@
1
- import { defineComponent as c, computed as n, createVNode as i } from "vue";
2
- import { DuxListLayout as o } from "../layout/list.js";
3
- const f = /* @__PURE__ */ c({
1
+ import { defineComponent as f, ref as n, computed as l, createVNode as o, mergeProps as p } from "vue";
2
+ import { DuxListLayout as s } from "../layout/list.js";
3
+ const m = /* @__PURE__ */ f({
4
4
  name: "DuxListPage",
5
5
  props: {
6
6
  sideLeftTitle: {
@@ -12,12 +12,13 @@ const f = /* @__PURE__ */ c({
12
12
  default: ""
13
13
  }
14
14
  },
15
- extends: o,
15
+ extends: s,
16
16
  slots: Object,
17
17
  setup(d, {
18
- slots: e
18
+ slots: e,
19
+ expose: a
19
20
  }) {
20
- const s = n(() => {
21
+ const i = n(), r = l(() => {
21
22
  const {
22
23
  ...t
23
24
  } = d;
@@ -25,11 +26,15 @@ const f = /* @__PURE__ */ c({
25
26
  ...t
26
27
  };
27
28
  });
28
- return () => i(o, s.value, {
29
- default: (t) => i("div", {
29
+ return a({
30
+ list: i
31
+ }), () => o(s, p({
32
+ ref: i
33
+ }, r.value), {
34
+ default: (t) => o("div", {
30
35
  class: "flex flex-col gap-3"
31
- }, [t.list.value.map((a) => e?.default?.({
32
- item: a,
36
+ }, [t.list.value.map((c) => e?.default?.({
37
+ item: c,
33
38
  isChecked: t.isChecked,
34
39
  toggleChecked: t.toggleChecked
35
40
  }))]),
@@ -42,5 +47,5 @@ const f = /* @__PURE__ */ c({
42
47
  }
43
48
  });
44
49
  export {
45
- f as DuxListPage
50
+ m as DuxListPage
46
51
  };
@@ -1,7 +1,7 @@
1
- import { defineComponent as u, computed as f, toRef as d, createVNode as i, mergeProps as m } from "vue";
2
- import { useI18n as c } from "@duxweb/dvha-core";
3
- import { useWindowSize as b } from "@vueuse/core";
4
- import { NDataTable as p, NPagination as g } from "naive-ui";
1
+ import { defineComponent as f, computed as d, toRef as c, createVNode as i, mergeProps as m } from "vue";
2
+ import { useI18n as b } from "@duxweb/dvha-core";
3
+ import { useWindowSize as g } from "@vueuse/core";
4
+ import { NDataTable as p, NPagination as x } from "naive-ui";
5
5
  import "vue-router";
6
6
  import "@overlastic/vue";
7
7
  import "clsx";
@@ -21,7 +21,7 @@ import "vue-cropper";
21
21
  import "jinrishici";
22
22
  import "lodash-es";
23
23
  import "vue-draggable-plus";
24
- import { DuxListEmpty as x } from "../status/listEmpty.js";
24
+ import { DuxListEmpty as y } from "../status/listEmpty.js";
25
25
  import "@vee-validate/i18n";
26
26
  import "colorizr";
27
27
  import "echarts";
@@ -60,9 +60,9 @@ import "../posterEditor/elements/index.js";
60
60
  import "fabric";
61
61
  import "dayjs";
62
62
  import "@tanstack/vue-query";
63
- import { useTable as y } from "../../hooks/table.js";
63
+ import { useTable as h } from "../../hooks/table.js";
64
64
  import "pinia";
65
- const qt = /* @__PURE__ */ u({
65
+ const zt = /* @__PURE__ */ f({
66
66
  name: "DuxTable",
67
67
  props: {
68
68
  path: {
@@ -81,29 +81,33 @@ const qt = /* @__PURE__ */ u({
81
81
  }
82
82
  },
83
83
  extends: p,
84
- setup(o) {
85
- const e = f(() => {
84
+ setup(o, {
85
+ expose: e
86
+ }) {
87
+ const n = d(() => {
86
88
  const {
87
89
  path: t,
88
- filter: h,
89
- columns: v,
90
- pagination: D,
91
- ...s
90
+ filter: v,
91
+ columns: D,
92
+ pagination: P,
93
+ ...u
92
94
  } = o;
93
- return s;
94
- }), n = d(o.filter || {}), r = y({
95
+ return u;
96
+ }), l = c(o.filter || {}), r = h({
95
97
  path: o.path,
96
- filters: n.value,
98
+ filters: l.value,
97
99
  columns: o.columns || [],
98
100
  pagination: o.pagination
99
- }), {
100
- width: l
101
- } = b(), {
102
- t: a
103
- } = c();
101
+ });
102
+ e(r);
103
+ const {
104
+ width: a
105
+ } = g(), {
106
+ t: s
107
+ } = b();
104
108
  return () => i("div", {
105
109
  class: "flex flex-col gap-2"
106
- }, [i(p, m(e.value, r.table.value, {
110
+ }, [i(p, m(n.value, r.table.value, {
107
111
  class: "flex-1 min-h-0",
108
112
  minHeight: 200,
109
113
  tableLayout: "fixed",
@@ -112,20 +116,20 @@ const qt = /* @__PURE__ */ u({
112
116
  bordered: !1,
113
117
  renderCell: (t) => t == null || t === "" ? "-" : t
114
118
  }), {
115
- empty: () => i(x, {
119
+ empty: () => i(y, {
116
120
  bordered: !1
117
121
  }, null)
118
122
  }), o.pagination && i("div", {
119
123
  class: "flex justify-end"
120
- }, [i(g, m(r.tablePagination.value, {
121
- simple: l.value < 768
124
+ }, [i(x, m(r.tablePagination.value, {
125
+ simple: a.value < 768
122
126
  }), {
123
- prefix: () => i("div", null, [a("components.list.total", {
127
+ prefix: () => i("div", null, [s("components.list.total", {
124
128
  total: r.total.value || 0
125
129
  })])
126
130
  })])]);
127
131
  }
128
132
  });
129
133
  export {
130
- qt as DuxTable
134
+ zt as DuxTable
131
135
  };
@@ -1,30 +1,35 @@
1
- import { defineComponent as l, computed as m, createVNode as r, mergeProps as n } from "vue";
2
- import { NDataTable as p } from "naive-ui";
3
- import { DuxTableLayout as i } from "../layout/table.js";
1
+ import { defineComponent as b, ref as p, computed as f, createVNode as r, mergeProps as l } from "vue";
2
+ import { NDataTable as s } from "naive-ui";
3
+ import { DuxTableLayout as d } from "../layout/table.js";
4
4
  import "@duxweb/dvha-core";
5
5
  import "clsx";
6
- import { DuxListEmpty as b } from "../status/listEmpty.js";
7
- const g = /* @__PURE__ */ l({
6
+ import { DuxListEmpty as u } from "../status/listEmpty.js";
7
+ const L = /* @__PURE__ */ b({
8
8
  name: "DuxTablePage",
9
9
  props: {
10
10
  tableProps: {
11
11
  type: Object
12
12
  }
13
13
  },
14
- extends: i,
14
+ extends: d,
15
15
  slots: Object,
16
16
  setup(a, {
17
- slots: t
17
+ slots: t,
18
+ expose: n
18
19
  }) {
19
- const d = m(() => {
20
+ const i = p(), m = f(() => {
20
21
  const {
21
22
  tableProps: o,
22
23
  ...e
23
24
  } = a;
24
25
  return e;
25
26
  });
26
- return () => r(i, d.value, {
27
- default: (o) => r(p, n(o.table.value, a.tableProps, {
27
+ return n({
28
+ table: i
29
+ }), () => r(d, l({
30
+ ref: i
31
+ }, m.value), {
32
+ default: (o) => r(s, l(o.table.value, a.tableProps, {
28
33
  class: "h-full",
29
34
  minHeight: 200,
30
35
  tableLayout: "fixed",
@@ -34,7 +39,7 @@ const g = /* @__PURE__ */ l({
34
39
  scrollX: o.width,
35
40
  renderCell: (e) => e == null || e === "" ? "-" : e
36
41
  }), {
37
- empty: () => r(b, {
42
+ empty: () => r(u, {
38
43
  bordered: !1
39
44
  }, null)
40
45
  }),
@@ -48,5 +53,5 @@ const g = /* @__PURE__ */ l({
48
53
  }
49
54
  });
50
55
  export {
51
- g as DuxTablePage
56
+ L as DuxTablePage
52
57
  };
@@ -1 +1 @@
1
- @charset "UTF-8";.vue-flow__handle{transition:box-shadow .2s ease}.vue-flow__handle:hover{box-shadow:0 0 0 3px #3b82f680}.n-popover-shared .n-popover-arrow-wrapper .n-popover-arrow{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.n-dropdown-menu{min-width:130px}.icon-gradient{color:rgb(var(--ui-color-primary));animation:icon-color-cycle 12s ease-in-out infinite}@keyframes icon-color-cycle{0%{color:rgb(var(--ui-color-primary))}20%{color:rgb(var(--ui-color-info))}40%{color:rgb(var(--ui-color-success))}60%{color:rgb(var(--ui-color-warning))}80%{color:rgb(var(--ui-color-error))}to{color:rgb(var(--ui-color-primary))}}@keyframes icon-gradient-shift{0%{background-position:0% 50%}25%{background-position:50% 0%}50%{background-position:100% 50%}75%{background-position:50% 100%}to{background-position:0% 50%}}.app-page-tabs.n-tabs .n-tabs-nav.n-tabs-nav--card-type .n-tabs-pad{border:none}.app-page-tabs.n-tabs .n-tabs-nav.n-tabs-nav--card-type .n-tabs-nav__prefix,.app-page-tabs.n-tabs .n-tabs-nav.n-tabs-nav--card-type .n-tabs-nav__suffix{border-bottom:none}.app-page-tabs.n-tabs .n-tabs-nav.n-tabs-nav--card-type .n-tabs-tab{padding:0;border-bottom:none;border-radius:0;background-color:transparent}.app-page-tabs.n-tabs .n-tabs-nav.n-tabs-nav--top.n-tabs-nav--card-type .n-tabs-tab-pad{height:20px;width:1px;background-color:#0000001a;border-bottom:none;position:absolute;top:50%;transform:translateY(-50%)}.app-page-tabs.n-tabs .n-tabs-nav.n-tabs-nav--top.n-tabs-nav--card-type .n-tabs-tab{background-color:transparent;border-bottom:none;border:none;position:relative}.app-page-tabs.n-tabs .n-tabs-nav.n-tabs-nav--top.n-tabs-nav--card-type .n-tabs-tab.n-tabs-tab--active{background-color:transparent}.dark .app-page-tabs.n-tabs .n-tabs-nav.n-tabs-nav--top.n-tabs-nav--card-type .n-tabs-tab-pad{background-color:#ffffff1a}.app-modal-tabs.n-tabs .n-tabs-wrapper{padding:0 16px}.app-modal-tabs.n-tabs .n-tabs-nav{background-color:rgb(var(--ui-color-gray-200)/.2)}.app-modal-tabs.n-tabs .n-tabs-tab{padding:12px 4px;font-size:var(--n-font-size)}.dark .app-modal-tabs.n-tabs .n-tabs-nav{background-color:rgb(var(--ui-bg-elevated)/.5)}.app-page-tabs.n-tabs{display:flex;height:100%;flex-direction:column}.app-page-tabs.n-tabs .n-tabs-nav{flex:none}.app-page-tabs.n-tabs .n-tab-pane{flex:1;min-height:0;overflow-y:auto;padding:20px}.app-page-tabs.n-tabs .n-tabs-tab{font-size:.85rem;padding:1rem}.n-data-table .n-data-table-thead{border:1px solid rgb(var(--ui-border-muted))}.n-data-table .n-data-table-thead .n-data-table-tr>.n-data-table-th:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem;border-left:1px solid rgba(var(--ui-border-accented)/.5)}.n-data-table .n-data-table-thead .n-data-table-tr>.n-data-table-th--last{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem;border-right:1px solid rgba(var(--ui-border-accented)/.5)}.n-data-table .n-data-table-th{border-top:1px solid rgba(var(--ui-border-accented)/.5);border-bottom:1px solid rgba(var(--ui-border-accented)/.5)}.command-palette [command-dialog-mask]{background-color:rgb(var(--ui-bg-inverted)/.3);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);height:100vh;width:100vw;position:fixed;top:0;left:0;z-index:1000}.command-palette [command-dialog-wrapper]{position:relative;flex-direction:column;margin:20vh auto auto;max-width:560px;background-color:rgb(var(--ui-bg)/.9);border-radius:6px}.command-palette [command-group-heading]{color:rgba(var(--ui-text-muted));padding:6px}.command-palette [command-separator]{border-bottom:1px solid rgb(var(--ui-border-muted));margin:6px 0}.command-palette [command-list]{border-top:1px solid rgb(var(--ui-border-muted));padding:0 6px 6px}.command-palette [command-item]{padding:6px 12px;display:flex;align-items:center;gap:6px;border-radius:3px;color:rgba(var(--ui-text-toned))}.command-palette [command-item][aria-selected=true],.command-palette [command-item]:active{background-color:rgb(var(--ui-bg-accented)/.8);color:rgba(var(--ui-color-primary-500))}.dark .command-palette [command-dialog-mask]{background-color:rgb(var(--ui-bg-inverted)/.02)}.dark .command-palette [command-dialog-wrapper]{background-color:rgb(var(--ui-bg-elevated)/.95)}.dark .command-palette [command-separator]{border-bottom:1px solid rgb(var(--ui-border)/.5)}.dark .command-palette [command-list]{border-top:1px solid rgb(var(--ui-border)/.5)}.n-menu.n-menu--collapsed .n-menu-item-content .n-menu-item-content-header{opacity:1}.n-menu.n-menu--collapsed .n-menu-item-content .n-menu-item-content__arrow{display:none}.app-login-bg{background-image:repeating-linear-gradient(90deg,hsla(298,16%,68%,.06) 0px,hsla(298,16%,68%,.06) 1px,transparent 1px,transparent 21px,hsla(298,16%,68%,.06) 21px,hsla(298,16%,68%,.06) 22px,transparent 22px,transparent 72px),repeating-linear-gradient(0deg,hsla(298,16%,68%,.06) 0px,hsla(298,16%,68%,.06) 1px,transparent 1px,transparent 21px,hsla(298,16%,68%,.06) 21px,hsla(298,16%,68%,.06) 22px,transparent 22px,transparent 72px),repeating-linear-gradient(135deg,hsla(298,16%,68%,.06) 0px,hsla(298,16%,68%,.06) 1px,transparent 1px,transparent 21px,hsla(298,16%,68%,.06) 21px,hsla(298,16%,68%,.06) 22px,transparent 22px,transparent 72px),linear-gradient(90deg,#f7f7f8,#f7f7f8)}.app-login-dark-bg{background-image:repeating-linear-gradient(90deg,rgba(90,90,90,.06) 0px,rgba(90,90,90,.06) 1px,transparent 1px,transparent 21px,rgba(90,90,90,.06) 21px,rgba(90,90,90,.06) 22px,transparent 22px,transparent 72px),repeating-linear-gradient(0deg,rgba(90,90,90,.06) 0px,rgba(90,90,90,.06) 1px,transparent 1px,transparent 21px,rgba(90,90,90,.06) 21px,rgba(90,90,90,.06) 22px,transparent 22px,transparent 72px),repeating-linear-gradient(135deg,rgba(90,90,90,.06) 0px,rgba(90,90,90,.06) 1px,transparent 1px,transparent 21px,rgba(90,90,90,.06) 21px,rgba(90,90,90,.06) 22px,transparent 22px,transparent 72px),linear-gradient(90deg,#101014,#101014)}.app-loading{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000;background-color:rgb(var(--ui-bg));overflow:hidden}.app-box-loading{width:50px;height:50px;position:relative}.app-box-loading:before{content:"";width:50px;height:5px;background:rgb(var(--ui-color-gray-200));opacity:.3;position:absolute;top:59px;left:0;border-radius:50%;animation:shadow .5s linear infinite}.app-box-loading:after{content:"";width:50px;height:50px;background:rgba(var(--ui-color-primary));animation:animate .5s linear infinite;position:absolute;top:0;left:0;border-radius:3px}@keyframes animate{17%{border-bottom-right-radius:3px}25%{transform:translateY(9px) rotate(22.5deg)}50%{transform:translateY(18px) scaleY(.9) rotate(45deg);border-bottom-right-radius:40px}75%{transform:translateY(9px) rotate(67.5deg)}to{transform:translateY(0) rotate(90deg)}}@keyframes shadow{0%,to{transform:scale(1)}50%{transform:scaleX(1.2)}}html{color-scheme:light;background-color:rgb(var(--ui-color-primary-700)/.05)}html.dark{color-scheme:dark;background-color:rgb(var(--ui-bg)/.5)}[un-cloak]{display:none}.app-remote-loader{height:100%}.tab-fade-leave-active,.tab-fade-enter-active{transition:all .3s}.tab-fade-enter-from{opacity:0;transform:translate(-30px)}.tab-fade-enter-to{opacity:1;transform:translate(0)}.tab-fade-leave-to{opacity:0;transform:translate(30px)}
1
+ @charset "UTF-8";.vue-flow__handle{transition:box-shadow .2s ease}.vue-flow__handle:hover{box-shadow:0 0 0 3px #3b82f680}.n-popover-shared .n-popover-arrow-wrapper .n-popover-arrow{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.n-dropdown-menu{min-width:130px}.icon-gradient{color:rgb(var(--ui-color-primary));animation:icon-color-cycle 12s ease-in-out infinite}@keyframes icon-color-cycle{0%{color:rgb(var(--ui-color-primary))}20%{color:rgb(var(--ui-color-info))}40%{color:rgb(var(--ui-color-success))}60%{color:rgb(var(--ui-color-warning))}80%{color:rgb(var(--ui-color-error))}to{color:rgb(var(--ui-color-primary))}}@keyframes icon-gradient-shift{0%{background-position:0% 50%}25%{background-position:50% 0%}50%{background-position:100% 50%}75%{background-position:50% 100%}to{background-position:0% 50%}}.app-page-tabs.n-tabs .n-tabs-nav.n-tabs-nav--card-type .n-tabs-pad{border:none}.app-page-tabs.n-tabs .n-tabs-nav.n-tabs-nav--card-type .n-tabs-nav__prefix,.app-page-tabs.n-tabs .n-tabs-nav.n-tabs-nav--card-type .n-tabs-nav__suffix{border-bottom:none}.app-page-tabs.n-tabs .n-tabs-nav.n-tabs-nav--card-type .n-tabs-tab{padding:0;border-bottom:none;border-radius:0;background-color:transparent}.app-page-tabs.n-tabs .n-tabs-nav.n-tabs-nav--top.n-tabs-nav--card-type .n-tabs-tab-pad{height:20px;width:1px;background-color:#0000001a;border-bottom:none;position:absolute;top:50%;transform:translateY(-50%)}.app-page-tabs.n-tabs .n-tabs-nav.n-tabs-nav--top.n-tabs-nav--card-type .n-tabs-tab{background-color:transparent;border-bottom:none;border:none;position:relative}.app-page-tabs.n-tabs .n-tabs-nav.n-tabs-nav--top.n-tabs-nav--card-type .n-tabs-tab.n-tabs-tab--active{background-color:transparent}.dark .app-page-tabs.n-tabs .n-tabs-nav.n-tabs-nav--top.n-tabs-nav--card-type .n-tabs-tab-pad{background-color:#ffffff1a}.app-modal-tabs.n-tabs .n-tabs-wrapper{padding:0 16px}.app-modal-tabs.n-tabs .n-tabs-nav{background-color:rgb(var(--ui-color-gray-200)/.2)}.app-modal-tabs.n-tabs .n-tabs-tab{padding:12px 4px;font-size:var(--n-font-size)}.dark .app-modal-tabs.n-tabs .n-tabs-nav{background-color:rgb(var(--ui-bg-elevated)/.5)}.app-page-tabs.n-tabs{display:flex;height:100%;flex-direction:column}.app-page-tabs.n-tabs .n-tabs-nav{flex:none}.app-page-tabs.n-tabs .n-tab-pane{flex:1;min-height:0;overflow-y:auto;padding:20px}.app-page-tabs.n-tabs .n-tabs-tab{font-size:.85rem;padding:1rem}.n-data-table .n-data-table-thead{border:1px solid rgb(var(--ui-border-muted))}.n-data-table .n-data-table-thead .n-data-table-tr>.n-data-table-th:first-child{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem;border-left:1px solid rgba(var(--ui-border-accented)/.5)}.n-data-table .n-data-table-thead .n-data-table-tr>.n-data-table-th--last{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem;border-right:1px solid rgba(var(--ui-border-accented)/.5)}.n-data-table .n-data-table-th{border-top:1px solid rgba(var(--ui-border-accented)/.5);border-bottom:1px solid rgba(var(--ui-border-accented)/.5)}.command-palette [command-dialog-mask]{background-color:rgb(var(--ui-bg-inverted)/.3);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);height:100vh;width:100vw;position:fixed;top:0;left:0;z-index:1000}.command-palette [command-dialog-wrapper]{position:relative;flex-direction:column;margin:20vh auto auto;max-width:560px;background-color:rgb(var(--ui-bg)/.9);border-radius:6px}.command-palette [command-group-heading]{color:rgba(var(--ui-text-muted));padding:6px}.command-palette [command-separator]{border-bottom:1px solid rgb(var(--ui-border-muted));margin:6px 0}.command-palette [command-list]{border-top:1px solid rgb(var(--ui-border-muted));padding:0 6px 6px}.command-palette [command-item]{padding:6px 12px;display:flex;align-items:center;gap:6px;border-radius:3px;color:rgba(var(--ui-text-toned))}.command-palette [command-item][aria-selected=true],.command-palette [command-item]:active{background-color:rgb(var(--ui-bg-accented)/.8);color:rgba(var(--ui-color-primary-500))}.dark .command-palette [command-dialog-mask]{background-color:rgb(var(--ui-bg-inverted)/.02)}.dark .command-palette [command-dialog-wrapper]{background-color:rgb(var(--ui-bg-elevated)/.95)}.dark .command-palette [command-separator]{border-bottom:1px solid rgb(var(--ui-border)/.5)}.dark .command-palette [command-list]{border-top:1px solid rgb(var(--ui-border)/.5)}.app-menu.n-menu.n-menu--collapsed .n-menu-item-content .n-menu-item-content-header{opacity:1}.app-menu.n-menu.n-menu--collapsed .n-menu-item-content .n-menu-item-content__arrow{display:none}.app-login-bg{background-image:repeating-linear-gradient(90deg,hsla(298,16%,68%,.06) 0px,hsla(298,16%,68%,.06) 1px,transparent 1px,transparent 21px,hsla(298,16%,68%,.06) 21px,hsla(298,16%,68%,.06) 22px,transparent 22px,transparent 72px),repeating-linear-gradient(0deg,hsla(298,16%,68%,.06) 0px,hsla(298,16%,68%,.06) 1px,transparent 1px,transparent 21px,hsla(298,16%,68%,.06) 21px,hsla(298,16%,68%,.06) 22px,transparent 22px,transparent 72px),repeating-linear-gradient(135deg,hsla(298,16%,68%,.06) 0px,hsla(298,16%,68%,.06) 1px,transparent 1px,transparent 21px,hsla(298,16%,68%,.06) 21px,hsla(298,16%,68%,.06) 22px,transparent 22px,transparent 72px),linear-gradient(90deg,#f7f7f8,#f7f7f8)}.app-login-dark-bg{background-image:repeating-linear-gradient(90deg,rgba(90,90,90,.06) 0px,rgba(90,90,90,.06) 1px,transparent 1px,transparent 21px,rgba(90,90,90,.06) 21px,rgba(90,90,90,.06) 22px,transparent 22px,transparent 72px),repeating-linear-gradient(0deg,rgba(90,90,90,.06) 0px,rgba(90,90,90,.06) 1px,transparent 1px,transparent 21px,rgba(90,90,90,.06) 21px,rgba(90,90,90,.06) 22px,transparent 22px,transparent 72px),repeating-linear-gradient(135deg,rgba(90,90,90,.06) 0px,rgba(90,90,90,.06) 1px,transparent 1px,transparent 21px,rgba(90,90,90,.06) 21px,rgba(90,90,90,.06) 22px,transparent 22px,transparent 72px),linear-gradient(90deg,#101014,#101014)}.app-loading{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000;background-color:rgb(var(--ui-bg));overflow:hidden}.app-box-loading{width:50px;height:50px;position:relative}.app-box-loading:before{content:"";width:50px;height:5px;background:rgb(var(--ui-color-gray-200));opacity:.3;position:absolute;top:59px;left:0;border-radius:50%;animation:shadow .5s linear infinite}.app-box-loading:after{content:"";width:50px;height:50px;background:rgba(var(--ui-color-primary));animation:animate .5s linear infinite;position:absolute;top:0;left:0;border-radius:3px}@keyframes animate{17%{border-bottom-right-radius:3px}25%{transform:translateY(9px) rotate(22.5deg)}50%{transform:translateY(18px) scaleY(.9) rotate(45deg);border-bottom-right-radius:40px}75%{transform:translateY(9px) rotate(67.5deg)}to{transform:translateY(0) rotate(90deg)}}@keyframes shadow{0%,to{transform:scale(1)}50%{transform:scaleX(1.2)}}html{color-scheme:light;background-color:rgb(var(--ui-color-primary-700)/.05)}html.dark{color-scheme:dark;background-color:rgb(var(--ui-bg)/.5)}[un-cloak]{display:none}.app-remote-loader{height:100%}.tab-fade-leave-active,.tab-fade-enter-active{transition:all .3s}.tab-fade-enter-from{opacity:0;transform:translate(-30px)}.tab-fade-enter-to{opacity:1;transform:translate(0)}.tab-fade-leave-to{opacity:0;transform:translate(30px)}
@@ -1,16 +1,16 @@
1
- import { ref as c, createVNode as r, createTextVNode as u } from "vue";
2
- import { useI18n as i } from "@duxweb/dvha-core";
3
- import { useNaiveTable as p } from "@duxweb/dvha-naiveui";
4
- import { useMessage as m, useNotification as g, NProgress as a } from "naive-ui";
5
- function k(l) {
1
+ import { ref as l, createVNode as n, createTextVNode as u } from "vue";
2
+ import { useI18n as m } from "@duxweb/dvha-core";
3
+ import { useNaiveTable as i } from "@duxweb/dvha-naiveui";
4
+ import { useMessage as p, useNotification as g, NProgress as a } from "naive-ui";
5
+ function b(c) {
6
6
  const {
7
7
  t: o
8
- } = i(), n = m(), s = g(), t = c(null);
9
- return p({
10
- ...l,
8
+ } = m(), s = p(), r = g(), t = l(null);
9
+ return i({
10
+ ...c,
11
11
  // 传递导出回调
12
12
  onExportSuccess: (e) => {
13
- t.value?.destroy(), t.value = null, s.success({
13
+ t.value?.destroy(), t.value = null, r.success({
14
14
  title: o("hooks.table.exportSuccess"),
15
15
  content: o("hooks.table.exportSuccessContent", {
16
16
  count: e?.data?.length || 0
@@ -19,17 +19,17 @@ function k(l) {
19
19
  });
20
20
  },
21
21
  onExportProgress: (e) => {
22
- !t.value && e && (t.value = s.create({
22
+ !t.value && e && (t.value = r.create({
23
23
  title: o("hooks.table.exportProgress"),
24
24
  content: () => o("hooks.table.exportProgressContent", {
25
25
  page: e.page || 1
26
26
  }),
27
- avatar: () => r(a, {
27
+ avatar: () => n(a, {
28
28
  class: "size-10 text-sm",
29
29
  type: "circle",
30
30
  percentage: 50
31
31
  }, {
32
- default: () => [r("div", {
32
+ default: () => [n("div", {
33
33
  class: "text-xs"
34
34
  }, [e.page || 1])]
35
35
  }),
@@ -39,13 +39,13 @@ function k(l) {
39
39
  }));
40
40
  },
41
41
  onExportError: (e) => {
42
- t.value?.destroy(), t.value = null, n.error(o("hooks.table.exportFailedContent", {
42
+ t.value?.destroy(), t.value = null, s.error(o("hooks.table.exportFailedContent", {
43
43
  error: e?.message || o("common.unknownError")
44
44
  }));
45
45
  },
46
46
  // 传递导入回调
47
47
  onImportSuccess: (e) => {
48
- t.value?.destroy(), t.value = null, s.success({
48
+ t.value?.destroy(), t.value = null, r.success({
49
49
  title: o("hooks.table.importSuccess"),
50
50
  content: o("hooks.table.importSuccessContent", {
51
51
  count: e?.processedItems || 0
@@ -54,18 +54,18 @@ function k(l) {
54
54
  });
55
55
  },
56
56
  onImportProgress: (e) => {
57
- t.value || (t.value = s.create({
57
+ t.value || (t.value = r.create({
58
58
  title: o("hooks.table.importProgress"),
59
59
  content: () => o("hooks.table.importProgressContent", {
60
60
  processed: e?.processedItems || 0,
61
61
  total: e?.totalItems || 0
62
62
  }),
63
- avatar: () => r(a, {
63
+ avatar: () => n(a, {
64
64
  class: "size-10 text-sm",
65
65
  type: "circle",
66
66
  percentage: e?.percentage || 0
67
67
  }, {
68
- default: () => [r("div", {
68
+ default: () => [n("div", {
69
69
  class: "text-xs"
70
70
  }, [e?.percentage || 0, u("%")])]
71
71
  }),
@@ -75,12 +75,18 @@ function k(l) {
75
75
  }));
76
76
  },
77
77
  onImportError: (e) => {
78
- t.value?.destroy(), t.value = null, n.error(o("hooks.table.importFailedContent", {
78
+ t.value?.destroy(), t.value = null, s.error(o("hooks.table.importFailedContent", {
79
79
  error: e?.message || o("common.unknownError")
80
80
  }));
81
+ },
82
+ onBatchSuccess: (e) => {
83
+ s.success(e?.message || o("common.success") || "");
84
+ },
85
+ onBatchError: (e) => {
86
+ s.error(e?.message || o("common.error") || "");
81
87
  }
82
88
  });
83
89
  }
84
90
  export {
85
- k as useTable
91
+ b as useTable
86
92
  };