react-toolkits 0.8.67 → 0.8.69
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.
- package/CHANGELOG.md +12 -0
- package/lib/{index.d.ts → index.d.mts} +405 -461
- package/lib/index.js +24 -43
- package/lib/logo-L6MFCL6M.png +0 -0
- package/locales/en_GB.d.mts +5 -0
- package/locales/en_GB.js +3 -91
- package/locales/{zh_CN.d.ts → index-Yb6kmiRt.d.mts} +90 -93
- package/locales/ja_JP.d.mts +5 -0
- package/locales/ja_JP.js +3 -91
- package/locales/ko_KR.d.mts +5 -0
- package/locales/ko_KR.js +3 -91
- package/locales/zh_CN.d.mts +5 -0
- package/locales/zh_CN.js +3 -91
- package/package.json +5 -13
- package/lib/immer-BLf7GM7E.chunk.js +0 -460
- package/lib/immer-BLf7GM7E.chunk.js.map +0 -1
- package/lib/index--jWvmyyO.chunk.js +0 -5379
- package/lib/index--jWvmyyO.chunk.js.map +0 -1
- package/lib/index-CiNYhEey.chunk.js +0 -40
- package/lib/index-CiNYhEey.chunk.js.map +0 -1
- package/lib/index-K5w_JTua.chunk.js +0 -180
- package/lib/index-K5w_JTua.chunk.js.map +0 -1
- package/lib/index-bewDG1xb.chunk.js +0 -219
- package/lib/index-bewDG1xb.chunk.js.map +0 -1
- package/lib/index-brCtC_4Y.chunk.js +0 -171
- package/lib/index-brCtC_4Y.chunk.js.map +0 -1
- package/lib/index-gD2dnDu7.chunk.js +0 -193
- package/lib/index-gD2dnDu7.chunk.js.map +0 -1
- package/lib/index.js.map +0 -1
- package/locales/en_GB.d.ts +0 -93
- package/locales/ja_JP.d.ts +0 -93
- package/locales/ko_KR.d.ts +0 -93
- /package/lib/{style.css → index.css} +0 -0
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { a as t, j as i } from "./index--jWvmyyO.chunk.js";
|
|
2
|
-
import { Breadcrumb as m, Card as n, Skeleton as a, Descriptions as l } from "antd";
|
|
3
|
-
import { useParams as c, Link as x } from "react-router-dom";
|
|
4
|
-
import { P as j } from "./index-brCtC_4Y.chunk.js";
|
|
5
|
-
import { g as p } from "./index-bewDG1xb.chunk.js";
|
|
6
|
-
import "react";
|
|
7
|
-
import "react-dom";
|
|
8
|
-
const k = () => {
|
|
9
|
-
const r = c(), { data: e, isLoading: o } = p(r.name), s = t();
|
|
10
|
-
return /* @__PURE__ */ i.jsxs(i.Fragment, { children: [
|
|
11
|
-
/* @__PURE__ */ i.jsx(
|
|
12
|
-
m,
|
|
13
|
-
{
|
|
14
|
-
style: { marginBottom: 24 },
|
|
15
|
-
items: [
|
|
16
|
-
{
|
|
17
|
-
key: "1",
|
|
18
|
-
title: /* @__PURE__ */ i.jsx(x, { to: "..", children: s("global.role") })
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
key: "2",
|
|
22
|
-
title: r.name
|
|
23
|
-
}
|
|
24
|
-
]
|
|
25
|
-
}
|
|
26
|
-
),
|
|
27
|
-
/* @__PURE__ */ i.jsx(n, { title: s("RoleDetail.title"), children: /* @__PURE__ */ i.jsxs(a, { loading: o, children: [
|
|
28
|
-
/* @__PURE__ */ i.jsxs(l, { column: 3, layout: "vertical", children: [
|
|
29
|
-
/* @__PURE__ */ i.jsx(l.Item, { label: s("global.name"), children: e == null ? void 0 : e.name }),
|
|
30
|
-
/* @__PURE__ */ i.jsx(l.Item, { label: "ID", children: e == null ? void 0 : e.id }),
|
|
31
|
-
/* @__PURE__ */ i.jsx(l.Item, { label: s("global.creationTime"), children: e == null ? void 0 : e.ctime })
|
|
32
|
-
] }),
|
|
33
|
-
/* @__PURE__ */ i.jsx(j, { readonly: !0, value: e == null ? void 0 : e.permissions })
|
|
34
|
-
] }) })
|
|
35
|
-
] });
|
|
36
|
-
};
|
|
37
|
-
export {
|
|
38
|
-
k as default
|
|
39
|
-
};
|
|
40
|
-
//# sourceMappingURL=index-CiNYhEey.chunk.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-CiNYhEey.chunk.js","sources":["../src/pages/permission/RoleDetail/index.tsx"],"sourcesContent":["import { Breadcrumb, Card, Descriptions, Skeleton } from 'antd'\nimport { Link, useParams } from 'react-router-dom'\nimport { PermissionList, useRole } from '../../../features/permission'\nimport { useTranslation } from '../../../hooks/i18n'\n\nconst RoleDetail = () => {\n const params = useParams()\n const { data, isLoading } = useRole(params.name as string)\n const t = useTranslation()\n\n return (\n <>\n <Breadcrumb\n style={{ marginBottom: 24 }}\n items={[\n {\n key: '1',\n title: <Link to=\"..\">{t('global.role')}</Link>,\n },\n {\n key: '2',\n title: params.name,\n },\n ]}\n />\n <Card title={t('RoleDetail.title')}>\n <Skeleton loading={isLoading}>\n <Descriptions column={3} layout=\"vertical\">\n <Descriptions.Item label={t('global.name')}>{data?.name}</Descriptions.Item>\n <Descriptions.Item label=\"ID\">{data?.id}</Descriptions.Item>\n <Descriptions.Item label={t('global.creationTime')}>{data?.ctime}</Descriptions.Item>\n </Descriptions>\n <PermissionList readonly value={data?.permissions} />\n </Skeleton>\n </Card>\n </>\n )\n}\n\nexport default RoleDetail\n"],"names":["RoleDetail","params","useParams","data","isLoading","useRole","t","useTranslation","jsxs","Fragment","jsx","Breadcrumb","Link","Card","Skeleton","Descriptions","PermissionList"],"mappings":";;;;;;;AAKA,MAAMA,IAAa,MAAM;AACvB,QAAMC,IAASC,KACT,EAAE,MAAAC,GAAM,WAAAC,EAAA,IAAcC,EAAQJ,EAAO,IAAc,GACnDK,IAAIC;AAEV,SAEIC,gBAAAA,EAAA,KAAAC,YAAA,EAAA,UAAA;AAAA,IAAAC,gBAAAA,EAAA;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,OAAO,EAAE,cAAc,GAAG;AAAA,QAC1B,OAAO;AAAA,UACL;AAAA,YACE,KAAK;AAAA,YACL,OAAQD,gBAAAA,EAAAA,IAAAE,GAAA,EAAK,IAAG,MAAM,UAAAN,EAAE,aAAa,GAAE;AAAA,UACzC;AAAA,UACA;AAAA,YACE,KAAK;AAAA,YACL,OAAOL,EAAO;AAAA,UAChB;AAAA,QACF;AAAA,MAAA;AAAA,IACF;AAAA,IACAS,gBAAAA,EAAAA,IAACG,KAAK,OAAOP,EAAE,kBAAkB,GAC/B,UAAAE,gBAAAA,EAAAA,KAACM,GAAS,EAAA,SAASV,GACjB,UAAA;AAAA,MAAAI,gBAAAA,EAAA,KAACO,GAAa,EAAA,QAAQ,GAAG,QAAO,YAC9B,UAAA;AAAA,QAACL,gBAAAA,EAAAA,IAAAK,EAAa,MAAb,EAAkB,OAAOT,EAAE,aAAa,GAAI,iCAAM,MAAK;AAAA,8BACvDS,EAAa,MAAb,EAAkB,OAAM,MAAM,iCAAM,IAAG;AAAA,QACxCL,gBAAAA,EAAAA,IAACK,EAAa,MAAb,EAAkB,OAAOT,EAAE,qBAAqB,GAAI,UAAAH,KAAA,gBAAAA,EAAM,OAAM;AAAA,MAAA,GACnE;AAAA,4BACCa,GAAe,EAAA,UAAQ,IAAC,OAAOb,KAAA,gBAAAA,EAAM,aAAa;AAAA,IAAA,EAAA,CACrD,EACF,CAAA;AAAA,EACF,EAAA,CAAA;AAEJ;"}
|
|
@@ -1,180 +0,0 @@
|
|
|
1
|
-
import { A as U, _, c as z, d as P, u as y, a as f, e as $, j as e, P as j, H as F, Q as G, b as L } from "./index--jWvmyyO.chunk.js";
|
|
2
|
-
import { App as b, Space as q, Card as B, Form as g, Input as A } from "antd";
|
|
3
|
-
import { p as k } from "./immer-BLf7GM7E.chunk.js";
|
|
4
|
-
import { Link as E } from "react-router-dom";
|
|
5
|
-
import { P as v } from "./index-brCtC_4Y.chunk.js";
|
|
6
|
-
import { d as D, e as N, f as Q } from "./index-bewDG1xb.chunk.js";
|
|
7
|
-
import * as I from "react";
|
|
8
|
-
import "react-dom";
|
|
9
|
-
var H = { icon: { tag: "svg", attrs: { viewBox: "64 64 896 896", focusable: "false" }, children: [{ tag: "path", attrs: { d: "M892 772h-80v-80c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v80h-80c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h80v80c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-80h80c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zM373.5 498.4c-.9-8.7-1.4-17.5-1.4-26.4 0-15.9 1.5-31.4 4.3-46.5.7-3.6-1.2-7.3-4.5-8.8-13.6-6.1-26.1-14.5-36.9-25.1a127.54 127.54 0 01-38.7-95.4c.9-32.1 13.8-62.6 36.3-85.6 24.7-25.3 57.9-39.1 93.2-38.7 31.9.3 62.7 12.6 86 34.4 7.9 7.4 14.7 15.6 20.4 24.4 2 3.1 5.9 4.4 9.3 3.2 17.6-6.1 36.2-10.4 55.3-12.4 5.6-.6 8.8-6.6 6.3-11.6-32.5-64.3-98.9-108.7-175.7-109.9-110.8-1.7-203.2 89.2-203.2 200 0 62.8 28.9 118.8 74.2 155.5-31.8 14.7-61.1 35-86.5 60.4-54.8 54.7-85.8 126.9-87.8 204a8 8 0 008 8.2h56.1c4.3 0 7.9-3.4 8-7.7 1.9-58 25.4-112.3 66.7-153.5 29.4-29.4 65.4-49.8 104.7-59.7 3.8-1.1 6.4-4.8 5.9-8.8zM824 472c0-109.4-87.9-198.3-196.9-200C516.3 270.3 424 361.2 424 472c0 62.8 29 118.8 74.2 155.5a300.95 300.95 0 00-86.4 60.4C357 742.6 326 814.8 324 891.8a8 8 0 008 8.2h56c4.3 0 7.9-3.4 8-7.7 1.9-58 25.4-112.3 66.7-153.5C505.8 695.7 563 672 624 672c110.4 0 200-89.5 200-200zm-109.5 90.5C690.3 586.7 658.2 600 624 600s-66.3-13.3-90.5-37.5a127.26 127.26 0 01-37.5-91.8c.3-32.8 13.4-64.5 36.3-88 24-24.6 56.1-38.3 90.4-38.7 33.9-.3 66.8 12.9 91 36.6 24.8 24.3 38.4 56.8 38.4 91.4-.1 34.2-13.4 66.3-37.6 90.5z" } }] }, name: "usergroup-add", theme: "outlined" };
|
|
10
|
-
const K = H;
|
|
11
|
-
var M = function(r, a) {
|
|
12
|
-
return /* @__PURE__ */ I.createElement(U, _({}, r, {
|
|
13
|
-
ref: a,
|
|
14
|
-
icon: K
|
|
15
|
-
}));
|
|
16
|
-
};
|
|
17
|
-
process.env.NODE_ENV !== "production" && (M.displayName = "UsergroupAddOutlined");
|
|
18
|
-
const J = /* @__PURE__ */ I.forwardRef(M), h = "/api/usystem/role/list", W = () => {
|
|
19
|
-
const { message: c } = b.useApp(), { refresh: r } = y(), a = N(), n = f(), l = async (o) => {
|
|
20
|
-
await a.trigger({
|
|
21
|
-
name: `role_${o.name}`,
|
|
22
|
-
permissions: o.permissions
|
|
23
|
-
}), r(h, 1), c.success(n("RoleList.createSuccessfully"));
|
|
24
|
-
};
|
|
25
|
-
return L({
|
|
26
|
-
title: n("RoleList.createTitle"),
|
|
27
|
-
width: "50vw",
|
|
28
|
-
formProps: {
|
|
29
|
-
layout: "vertical"
|
|
30
|
-
},
|
|
31
|
-
content: /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
|
|
32
|
-
/* @__PURE__ */ e.jsx(g.Item, { label: n("global.name"), name: "name", rules: [{ required: !0 }], children: /* @__PURE__ */ e.jsx(A, { addonBefore: "role_" }) }),
|
|
33
|
-
/* @__PURE__ */ e.jsx(g.Item, { name: "permissions", children: /* @__PURE__ */ e.jsx(v, {}) })
|
|
34
|
-
] }),
|
|
35
|
-
onConfirm: l
|
|
36
|
-
});
|
|
37
|
-
}, X = () => {
|
|
38
|
-
const { message: c } = b.useApp(), { mutate: r } = y(), a = Q(), n = f();
|
|
39
|
-
return L({
|
|
40
|
-
title: n("RoleList.updateTitle"),
|
|
41
|
-
width: "50vw",
|
|
42
|
-
content: /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
|
|
43
|
-
/* @__PURE__ */ e.jsx(g.Item, { label: n("global.name"), name: "name", rules: [{ required: !0 }], children: /* @__PURE__ */ e.jsx(A, { readOnly: !0, addonBefore: "role_" }) }),
|
|
44
|
-
/* @__PURE__ */ e.jsx(g.Item, { name: "permissions", children: /* @__PURE__ */ e.jsx(v, {}) })
|
|
45
|
-
] }),
|
|
46
|
-
onConfirm: async (l, o) => {
|
|
47
|
-
await a.trigger({
|
|
48
|
-
id: o == null ? void 0 : o.id,
|
|
49
|
-
name: `role_${l.name}`,
|
|
50
|
-
permissions: l.permissions
|
|
51
|
-
}), r(
|
|
52
|
-
h,
|
|
53
|
-
(x) => k(x, (m) => {
|
|
54
|
-
var p;
|
|
55
|
-
const u = (p = m == null ? void 0 : m.dataSource) == null ? void 0 : p.find((t) => t.id === (o == null ? void 0 : o.id));
|
|
56
|
-
u && (u.permissions = l.permissions);
|
|
57
|
-
}),
|
|
58
|
-
{ revalidate: !1 }
|
|
59
|
-
), c.success(n("RoleList.updateSuccessfully"));
|
|
60
|
-
}
|
|
61
|
-
});
|
|
62
|
-
}, ie = () => {
|
|
63
|
-
const { accessible: c } = z("200005", !0), { modal: r, message: a } = b.useApp(), { usePermissionApiV2: n } = P(), l = D(), { mutate: o } = y(), { show: x, modal: m } = W(), { show: u, modal: p } = X(), t = f(), S = $(), O = [
|
|
64
|
-
{
|
|
65
|
-
title: t("global.name"),
|
|
66
|
-
key: "name",
|
|
67
|
-
render(s) {
|
|
68
|
-
return c ? /* @__PURE__ */ e.jsx(E, { to: `${s.name}`, relative: "path", children: s.name }) : /* @__PURE__ */ e.jsx(e.Fragment, { children: s.name });
|
|
69
|
-
}
|
|
70
|
-
},
|
|
71
|
-
{
|
|
72
|
-
title: "ID",
|
|
73
|
-
dataIndex: "id",
|
|
74
|
-
key: "id"
|
|
75
|
-
},
|
|
76
|
-
{
|
|
77
|
-
title: t("global.creationTime"),
|
|
78
|
-
dataIndex: "ctime",
|
|
79
|
-
key: "ctime"
|
|
80
|
-
},
|
|
81
|
-
{
|
|
82
|
-
title: t("global.operation"),
|
|
83
|
-
width: 150,
|
|
84
|
-
align: "center",
|
|
85
|
-
render: (s) => /* @__PURE__ */ e.jsxs(q, { size: "small", children: [
|
|
86
|
-
/* @__PURE__ */ e.jsx(
|
|
87
|
-
j,
|
|
88
|
-
{
|
|
89
|
-
isGlobal: !0,
|
|
90
|
-
code: "200003",
|
|
91
|
-
size: "small",
|
|
92
|
-
type: "link",
|
|
93
|
-
onClick: async () => {
|
|
94
|
-
const { data: i } = await S(
|
|
95
|
-
`/api/usystem/role/info${n ? "V2" : ""}?name=${s.name}`,
|
|
96
|
-
{ isGlobal: !0 }
|
|
97
|
-
);
|
|
98
|
-
u({
|
|
99
|
-
initialValues: {
|
|
100
|
-
permissions: i == null ? void 0 : i.permissions,
|
|
101
|
-
name: i == null ? void 0 : i.name.replace(/^role_/, "")
|
|
102
|
-
},
|
|
103
|
-
extraValues: {
|
|
104
|
-
id: i == null ? void 0 : i.id
|
|
105
|
-
}
|
|
106
|
-
});
|
|
107
|
-
},
|
|
108
|
-
children: t("global.edit")
|
|
109
|
-
}
|
|
110
|
-
),
|
|
111
|
-
/* @__PURE__ */ e.jsx(
|
|
112
|
-
j,
|
|
113
|
-
{
|
|
114
|
-
isGlobal: !0,
|
|
115
|
-
danger: !0,
|
|
116
|
-
code: "200004",
|
|
117
|
-
size: "small",
|
|
118
|
-
type: "link",
|
|
119
|
-
onClick: () => {
|
|
120
|
-
r.confirm({
|
|
121
|
-
title: t("RoleList.deleteTitle"),
|
|
122
|
-
content: /* @__PURE__ */ e.jsx(F, { texts: [s.name], children: t("RoleList.deleteContent", { role: s.name }) }),
|
|
123
|
-
async onOk() {
|
|
124
|
-
await l.trigger({
|
|
125
|
-
id: s.id,
|
|
126
|
-
name: s.name
|
|
127
|
-
}), o(h, (i) => k(i, (d) => {
|
|
128
|
-
var R, C;
|
|
129
|
-
const w = (R = d == null ? void 0 : d.dataSource) == null ? void 0 : R.findIndex((T) => T.id === s.id);
|
|
130
|
-
w && ((C = d == null ? void 0 : d.dataSource) == null || C.splice(w, 1));
|
|
131
|
-
})), a.success(t("RoleList.deleteSuccessfully"));
|
|
132
|
-
}
|
|
133
|
-
});
|
|
134
|
-
},
|
|
135
|
-
children: t("global.delete")
|
|
136
|
-
}
|
|
137
|
-
)
|
|
138
|
-
] })
|
|
139
|
-
}
|
|
140
|
-
];
|
|
141
|
-
return /* @__PURE__ */ e.jsxs(e.Fragment, { children: [
|
|
142
|
-
/* @__PURE__ */ e.jsx(
|
|
143
|
-
B,
|
|
144
|
-
{
|
|
145
|
-
title: t("global.role"),
|
|
146
|
-
extra: /* @__PURE__ */ e.jsx(
|
|
147
|
-
j,
|
|
148
|
-
{
|
|
149
|
-
isGlobal: !0,
|
|
150
|
-
type: "primary",
|
|
151
|
-
code: "200002",
|
|
152
|
-
icon: /* @__PURE__ */ e.jsx(J, {}),
|
|
153
|
-
onClick: () => {
|
|
154
|
-
x();
|
|
155
|
-
},
|
|
156
|
-
children: t("RoleList.createTitle")
|
|
157
|
-
}
|
|
158
|
-
),
|
|
159
|
-
children: /* @__PURE__ */ e.jsx(
|
|
160
|
-
G,
|
|
161
|
-
{
|
|
162
|
-
isGlobal: !0,
|
|
163
|
-
rowKey: "name",
|
|
164
|
-
columns: O,
|
|
165
|
-
code: "200001",
|
|
166
|
-
action: h,
|
|
167
|
-
getTotal: (s) => s.Total,
|
|
168
|
-
getDataSource: (s) => s.List
|
|
169
|
-
}
|
|
170
|
-
)
|
|
171
|
-
}
|
|
172
|
-
),
|
|
173
|
-
m,
|
|
174
|
-
p
|
|
175
|
-
] });
|
|
176
|
-
};
|
|
177
|
-
export {
|
|
178
|
-
ie as default
|
|
179
|
-
};
|
|
180
|
-
//# sourceMappingURL=index-K5w_JTua.chunk.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-K5w_JTua.chunk.js","sources":["../../../node_modules/.pnpm/@ant-design+icons-svg@4.3.2/node_modules/@ant-design/icons-svg/es/asn/UsergroupAddOutlined.js","../../../node_modules/.pnpm/@ant-design+icons@5.2.6_react-dom@18.2.0_react@18.2.0/node_modules/@ant-design/icons/es/icons/UsergroupAddOutlined.js","../src/pages/permission/RoleList/index.tsx"],"sourcesContent":["// This icon file is generated automatically.\nvar UsergroupAddOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M892 772h-80v-80c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v80h-80c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h80v80c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-80h80c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zM373.5 498.4c-.9-8.7-1.4-17.5-1.4-26.4 0-15.9 1.5-31.4 4.3-46.5.7-3.6-1.2-7.3-4.5-8.8-13.6-6.1-26.1-14.5-36.9-25.1a127.54 127.54 0 01-38.7-95.4c.9-32.1 13.8-62.6 36.3-85.6 24.7-25.3 57.9-39.1 93.2-38.7 31.9.3 62.7 12.6 86 34.4 7.9 7.4 14.7 15.6 20.4 24.4 2 3.1 5.9 4.4 9.3 3.2 17.6-6.1 36.2-10.4 55.3-12.4 5.6-.6 8.8-6.6 6.3-11.6-32.5-64.3-98.9-108.7-175.7-109.9-110.8-1.7-203.2 89.2-203.2 200 0 62.8 28.9 118.8 74.2 155.5-31.8 14.7-61.1 35-86.5 60.4-54.8 54.7-85.8 126.9-87.8 204a8 8 0 008 8.2h56.1c4.3 0 7.9-3.4 8-7.7 1.9-58 25.4-112.3 66.7-153.5 29.4-29.4 65.4-49.8 104.7-59.7 3.8-1.1 6.4-4.8 5.9-8.8zM824 472c0-109.4-87.9-198.3-196.9-200C516.3 270.3 424 361.2 424 472c0 62.8 29 118.8 74.2 155.5a300.95 300.95 0 00-86.4 60.4C357 742.6 326 814.8 324 891.8a8 8 0 008 8.2h56c4.3 0 7.9-3.4 8-7.7 1.9-58 25.4-112.3 66.7-153.5C505.8 695.7 563 672 624 672c110.4 0 200-89.5 200-200zm-109.5 90.5C690.3 586.7 658.2 600 624 600s-66.3-13.3-90.5-37.5a127.26 127.26 0 01-37.5-91.8c.3-32.8 13.4-64.5 36.3-88 24-24.6 56.1-38.3 90.4-38.7 33.9-.3 66.8 12.9 91 36.6 24.8 24.3 38.4 56.8 38.4 91.4-.1 34.2-13.4 66.3-37.6 90.5z\" } }] }, \"name\": \"usergroup-add\", \"theme\": \"outlined\" };\nexport default UsergroupAddOutlined;\n","import _extends from \"@babel/runtime/helpers/esm/extends\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\n\nimport * as React from 'react';\nimport UsergroupAddOutlinedSvg from \"@ant-design/icons-svg/es/asn/UsergroupAddOutlined\";\nimport AntdIcon from \"../components/AntdIcon\";\nvar UsergroupAddOutlined = function UsergroupAddOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _extends({}, props, {\n ref: ref,\n icon: UsergroupAddOutlinedSvg\n }));\n};\nif (process.env.NODE_ENV !== 'production') {\n UsergroupAddOutlined.displayName = 'UsergroupAddOutlined';\n}\nexport default /*#__PURE__*/React.forwardRef(UsergroupAddOutlined);","import { UsergroupAddOutlined } from '@ant-design/icons'\nimport type { TableColumnsType } from 'antd'\nimport { App, Card, Form, Input, Space } from 'antd'\nimport { produce } from 'immer'\nimport { Link } from 'react-router-dom'\nimport { useToolkitsContext } from '../../../components/ContextProvider'\nimport Highlight from '../../../components/Highlight'\nimport PermissionButton from '../../../components/PermissionButton'\nimport QueryList from '../../../components/QueryList'\nimport type { RoleListItem, RoleV1, RoleV2 } from '../../../features/permission'\nimport { PermissionList, useCreateRole, useRemoveRole, useUpdateRole } from '../../../features/permission'\nimport { useFormModal } from '../../../hooks/formModal'\nimport { useTranslation } from '../../../hooks/i18n'\nimport { usePermission } from '../../../hooks/permission'\nimport { useRequest } from '../../../hooks/request'\nimport { useQueryListStore } from '../../../stores/queryList'\n\nconst action = '/api/usystem/role/list'\n\nconst useCreateModal = () => {\n const { message } = App.useApp()\n const { refresh } = useQueryListStore()\n const create = useCreateRole()\n const t = useTranslation()\n\n const onConfirm = async (values: { name: string; permissions: RoleV1['permissions'] | RoleV2['permissions'] }) => {\n await create.trigger({\n name: `role_${values.name}`,\n permissions: values.permissions,\n })\n refresh(action, 1)\n message.success(t('RoleList.createSuccessfully'))\n }\n\n return useFormModal<{\n name: string\n permissions: RoleV1['permissions'] | RoleV2['permissions']\n }>({\n title: t('RoleList.createTitle'),\n width: '50vw',\n formProps: {\n layout: 'vertical',\n },\n content: (\n <>\n <Form.Item label={t('global.name')} name=\"name\" rules={[{ required: true }]}>\n <Input addonBefore=\"role_\" />\n </Form.Item>\n <Form.Item name=\"permissions\">\n <PermissionList />\n </Form.Item>\n </>\n ),\n onConfirm,\n })\n}\n\nconst useUpdateModal = () => {\n const { message } = App.useApp()\n const { mutate } = useQueryListStore()\n const update = useUpdateRole()\n const t = useTranslation()\n\n return useFormModal<\n {\n name: string\n permissions: RoleV1['permissions'] | RoleV2['permissions']\n },\n {\n id: number\n }\n >({\n title: t('RoleList.updateTitle'),\n width: '50vw',\n content: (\n <>\n <Form.Item label={t('global.name')} name=\"name\" rules={[{ required: true }]}>\n <Input readOnly addonBefore=\"role_\" />\n </Form.Item>\n <Form.Item name=\"permissions\">\n <PermissionList />\n </Form.Item>\n </>\n ),\n onConfirm: async (values, extraValues) => {\n await update.trigger({\n id: extraValues?.id as number,\n name: `role_${values.name}`,\n permissions: values.permissions,\n })\n mutate(\n action,\n prev =>\n produce(prev, draft => {\n const match = draft?.dataSource?.find(item => item.id === extraValues?.id)\n\n if (match) {\n match.permissions = values.permissions\n }\n }),\n { revalidate: false },\n )\n message.success(t('RoleList.updateSuccessfully'))\n },\n })\n}\n\nconst RoleList = () => {\n const { accessible: viewable } = usePermission('200005', true)\n const { modal, message } = App.useApp()\n const { usePermissionApiV2 } = useToolkitsContext()\n const remove = useRemoveRole()\n const { mutate } = useQueryListStore()\n const { show: showCreateModal, modal: createModal } = useCreateModal()\n const { show: showUpdateModal, modal: updateModal } = useUpdateModal()\n const t = useTranslation()\n const request = useRequest()\n\n const columns: TableColumnsType<RoleListItem> = [\n {\n title: t('global.name'),\n key: 'name',\n render(value: RoleListItem) {\n if (viewable) {\n return (\n <Link to={`${value.name}`} relative=\"path\">\n {value.name}\n </Link>\n )\n } else {\n return <>{value.name}</>\n }\n },\n },\n {\n title: 'ID',\n dataIndex: 'id',\n key: 'id',\n },\n {\n title: t('global.creationTime'),\n dataIndex: 'ctime',\n key: 'ctime',\n },\n {\n title: t('global.operation'),\n width: 150,\n align: 'center',\n render: (value: RoleListItem) => {\n return (\n <Space size=\"small\">\n <PermissionButton\n isGlobal\n code=\"200003\"\n size=\"small\"\n type=\"link\"\n onClick={async () => {\n const { data: role } = await request<RoleV1 | RoleV2>(\n `/api/usystem/role/info${usePermissionApiV2 ? 'V2' : ''}?name=${value.name}`,\n { isGlobal: true },\n )\n showUpdateModal({\n initialValues: {\n permissions: role?.permissions,\n name: role?.name.replace(/^role_/, ''),\n },\n extraValues: {\n id: role?.id,\n },\n })\n }}\n >\n {t('global.edit')}\n </PermissionButton>\n <PermissionButton\n isGlobal\n danger\n code=\"200004\"\n size=\"small\"\n type=\"link\"\n onClick={() => {\n modal.confirm({\n title: t('RoleList.deleteTitle'),\n content: (\n <Highlight texts={[value.name]}>{t('RoleList.deleteContent', { role: value.name })}</Highlight>\n ),\n async onOk() {\n await remove.trigger({\n id: value.id,\n name: value.name,\n })\n mutate(action, prev => {\n return produce(prev, draft => {\n const index = draft?.dataSource?.findIndex(item => item.id === value.id)\n if (index) {\n draft?.dataSource?.splice(index, 1)\n }\n })\n })\n message.success(t('RoleList.deleteSuccessfully'))\n },\n })\n }}\n >\n {t('global.delete')}\n </PermissionButton>\n </Space>\n )\n },\n },\n ]\n\n return (\n <>\n <Card\n title={t('global.role')}\n extra={\n <PermissionButton\n isGlobal\n type=\"primary\"\n code=\"200002\"\n icon={<UsergroupAddOutlined />}\n onClick={() => {\n showCreateModal()\n }}\n >\n {t('RoleList.createTitle')}\n </PermissionButton>\n }\n >\n <QueryList<RoleListItem, undefined, { List: RoleListItem[]; Total: number }>\n isGlobal\n rowKey=\"name\"\n columns={columns}\n code=\"200001\"\n action={action}\n getTotal={response => response.Total}\n getDataSource={response => response.List}\n />\n </Card>\n {createModal}\n {updateModal}\n </>\n )\n}\n\nexport default RoleList\n"],"names":["UsergroupAddOutlined","UsergroupAddOutlinedSvg","props","ref","React","AntdIcon","_extends","UsergroupAddOutlined$1","action","useCreateModal","message","App","refresh","useQueryListStore","create","useCreateRole","t","useTranslation","onConfirm","values","useFormModal","jsxs","Fragment","jsx","Form","Input","PermissionList","useUpdateModal","mutate","update","useUpdateRole","extraValues","prev","produce","draft","match","_a","item","RoleList","viewable","usePermission","modal","usePermissionApiV2","useToolkitsContext","remove","useRemoveRole","showCreateModal","createModal","showUpdateModal","updateModal","request","useRequest","columns","value","Link","Space","PermissionButton","role","Highlight","index","_b","Card","QueryList","response"],"mappings":";;;;;;;;AACA,IAAIA,IAAuB,EAAE,MAAQ,EAAE,KAAO,OAAO,OAAS,EAAE,SAAW,iBAAiB,WAAa,QAAS,GAAE,UAAY,CAAC,EAAE,KAAO,QAAQ,OAAS,EAAE,GAAK,4wCAA2wC,GAAI,EAAC,GAAI,MAAQ,iBAAiB,OAAS,WAAU;AACl+C,MAAAC,IAAeD;ACKf,IAAIA,IAAuB,SAA8BE,GAAOC,GAAK;AACnE,SAAoB,gBAAAC,EAAM,cAAcC,GAAUC,EAAS,CAAA,GAAIJ,GAAO;AAAA,IACpE,KAAKC;AAAA,IACL,MAAMF;AAAA,EACP,CAAA,CAAC;AACJ;AACI,QAAQ,IAAI,aAAa,iBAC3BD,EAAqB,cAAc;AAErC,MAAAO,IAA4B,gBAAAH,EAAM,WAAWJ,CAAoB,GCC3DQ,IAAS,0BAETC,IAAiB,MAAM;AAC3B,QAAM,EAAE,SAAAC,EAAA,IAAYC,EAAI,OAAO,GACzB,EAAE,SAAAC,MAAYC,KACdC,IAASC,KACTC,IAAIC,KAEJC,IAAY,OAAOC,MAAyF;AAChH,UAAML,EAAO,QAAQ;AAAA,MACnB,MAAM,QAAQK,EAAO,IAAI;AAAA,MACzB,aAAaA,EAAO;AAAA,IAAA,CACrB,GACDP,EAAQJ,GAAQ,CAAC,GACTE,EAAA,QAAQM,EAAE,6BAA6B,CAAC;AAAA,EAAA;AAGlD,SAAOI,EAGJ;AAAA,IACD,OAAOJ,EAAE,sBAAsB;AAAA,IAC/B,OAAO;AAAA,IACP,WAAW;AAAA,MACT,QAAQ;AAAA,IACV;AAAA,IACA,SAEIK,gBAAAA,EAAA,KAAAC,YAAA,EAAA,UAAA;AAAA,MAACC,gBAAAA,MAAAC,EAAK,MAAL,EAAU,OAAOR,EAAE,aAAa,GAAG,MAAK,QAAO,OAAO,CAAC,EAAE,UAAU,IAAM,GACxE,gCAACS,GAAM,EAAA,aAAY,QAAQ,CAAA,GAC7B;AAAA,MACAF,gBAAAA,EAAAA,IAACC,EAAK,MAAL,EAAU,MAAK,eACd,UAAAD,gBAAAA,MAACG,IAAe,CAAA,GAClB;AAAA,IAAA,GACF;AAAA,IAEF,WAAAR;AAAA,EAAA,CACD;AACH,GAEMS,IAAiB,MAAM;AAC3B,QAAM,EAAE,SAAAjB,EAAA,IAAYC,EAAI,OAAO,GACzB,EAAE,QAAAiB,MAAWf,KACbgB,IAASC,KACTd,IAAIC;AAEV,SAAOG,EAQL;AAAA,IACA,OAAOJ,EAAE,sBAAsB;AAAA,IAC/B,OAAO;AAAA,IACP,SAEIK,gBAAAA,EAAA,KAAAC,YAAA,EAAA,UAAA;AAAA,MAACC,gBAAAA,EAAAA,IAAAC,EAAK,MAAL,EAAU,OAAOR,EAAE,aAAa,GAAG,MAAK,QAAO,OAAO,CAAC,EAAE,UAAU,IAAM,GACxE,UAAAO,gBAAAA,EAAAA,IAACE,KAAM,UAAQ,IAAC,aAAY,QAAA,CAAQ,EACtC,CAAA;AAAA,MACAF,gBAAAA,EAAAA,IAACC,EAAK,MAAL,EAAU,MAAK,eACd,UAAAD,gBAAAA,MAACG,IAAe,CAAA,GAClB;AAAA,IAAA,GACF;AAAA,IAEF,WAAW,OAAOP,GAAQY,MAAgB;AACxC,YAAMF,EAAO,QAAQ;AAAA,QACnB,IAAIE,KAAA,gBAAAA,EAAa;AAAA,QACjB,MAAM,QAAQZ,EAAO,IAAI;AAAA,QACzB,aAAaA,EAAO;AAAA,MAAA,CACrB,GACDS;AAAA,QACEpB;AAAA,QACA,CAAAwB,MACEC,EAAQD,GAAM,CAASE,MAAA;;AACf,gBAAAC,KAAQC,IAAAF,KAAA,gBAAAA,EAAO,eAAP,gBAAAE,EAAmB,KAAK,OAAQC,EAAK,QAAON,KAAA,gBAAAA,EAAa;AAEvE,UAAII,MACFA,EAAM,cAAchB,EAAO;AAAA,QAC7B,CACD;AAAA,QACH,EAAE,YAAY,GAAM;AAAA,MAAA,GAEdT,EAAA,QAAQM,EAAE,6BAA6B,CAAC;AAAA,IAClD;AAAA,EAAA,CACD;AACH,GAEMsB,KAAW,MAAM;AACrB,QAAM,EAAE,YAAYC,EAAA,IAAaC,EAAc,UAAU,EAAI,GACvD,EAAE,OAAAC,GAAO,SAAA/B,EAAQ,IAAIC,EAAI,OAAO,GAChC,EAAE,oBAAA+B,MAAuBC,KACzBC,IAASC,KACT,EAAE,QAAAjB,MAAWf,KACb,EAAE,MAAMiC,GAAiB,OAAOC,EAAA,IAAgBtC,KAChD,EAAE,MAAMuC,GAAiB,OAAOC,EAAA,IAAgBtB,KAChD,IAAIV,KACJiC,IAAUC,KAEVC,IAA0C;AAAA,IAC9C;AAAA,MACE,OAAO,EAAE,aAAa;AAAA,MACtB,KAAK;AAAA,MACL,OAAOC,GAAqB;AAC1B,eAAId,IAEAhB,gBAAAA,EAAA,IAAC+B,GAAK,EAAA,IAAI,GAAGD,EAAM,IAAI,IAAI,UAAS,QACjC,UAAAA,EAAM,KACT,CAAA,IAGK9B,gBAAAA,EAAAA,IAAAD,EAAAA,UAAA,EAAG,YAAM,KAAK,CAAA;AAAA,MAEzB;AAAA,IACF;AAAA,IACA;AAAA,MACE,OAAO;AAAA,MACP,WAAW;AAAA,MACX,KAAK;AAAA,IACP;AAAA,IACA;AAAA,MACE,OAAO,EAAE,qBAAqB;AAAA,MAC9B,WAAW;AAAA,MACX,KAAK;AAAA,IACP;AAAA,IACA;AAAA,MACE,OAAO,EAAE,kBAAkB;AAAA,MAC3B,OAAO;AAAA,MACP,OAAO;AAAA,MACP,QAAQ,CAAC+B,MAELhC,gBAAAA,EAAA,KAACkC,GAAM,EAAA,MAAK,SACV,UAAA;AAAA,QAAAhC,gBAAAA,EAAA;AAAA,UAACiC;AAAA,UAAA;AAAA,YACC,UAAQ;AAAA,YACR,MAAK;AAAA,YACL,MAAK;AAAA,YACL,MAAK;AAAA,YACL,SAAS,YAAY;AACnB,oBAAM,EAAE,MAAMC,EAAK,IAAI,MAAMP;AAAA,gBAC3B,yBAAyBR,IAAqB,OAAO,EAAE,SAASW,EAAM,IAAI;AAAA,gBAC1E,EAAE,UAAU,GAAK;AAAA,cAAA;AAEH,cAAAL,EAAA;AAAA,gBACd,eAAe;AAAA,kBACb,aAAaS,KAAA,gBAAAA,EAAM;AAAA,kBACnB,MAAMA,KAAA,gBAAAA,EAAM,KAAK,QAAQ,UAAU;AAAA,gBACrC;AAAA,gBACA,aAAa;AAAA,kBACX,IAAIA,KAAA,gBAAAA,EAAM;AAAA,gBACZ;AAAA,cAAA,CACD;AAAA,YACH;AAAA,YAEC,YAAE,aAAa;AAAA,UAAA;AAAA,QAClB;AAAA,QACAlC,gBAAAA,EAAA;AAAA,UAACiC;AAAA,UAAA;AAAA,YACC,UAAQ;AAAA,YACR,QAAM;AAAA,YACN,MAAK;AAAA,YACL,MAAK;AAAA,YACL,MAAK;AAAA,YACL,SAAS,MAAM;AACb,cAAAf,EAAM,QAAQ;AAAA,gBACZ,OAAO,EAAE,sBAAsB;AAAA,gBAC/B,SACElB,gBAAAA,EAAA,IAACmC,GAAU,EAAA,OAAO,CAACL,EAAM,IAAI,GAAI,UAAA,EAAE,0BAA0B,EAAE,MAAMA,EAAM,KAAM,CAAA,GAAE;AAAA,gBAErF,MAAM,OAAO;AACX,wBAAMT,EAAO,QAAQ;AAAA,oBACnB,IAAIS,EAAM;AAAA,oBACV,MAAMA,EAAM;AAAA,kBAAA,CACb,GACDzB,EAAOpB,GAAQ,CAAQwB,MACdC,EAAQD,GAAM,CAASE,MAAA;;AACtB,0BAAAyB,KAAQvB,IAAAF,KAAA,gBAAAA,EAAO,eAAP,gBAAAE,EAAmB,UAAU,OAAQC,EAAK,OAAOgB,EAAM;AACrE,oBAAIM,OACKC,IAAA1B,KAAA,gBAAAA,EAAA,eAAA,QAAA0B,EAAY,OAAOD,GAAO;AAAA,kBACnC,CACD,CACF,GACOjD,EAAA,QAAQ,EAAE,6BAA6B,CAAC;AAAA,gBAClD;AAAA,cAAA,CACD;AAAA,YACH;AAAA,YAEC,YAAE,eAAe;AAAA,UAAA;AAAA,QACpB;AAAA,MACF,EAAA,CAAA;AAAA,IAGN;AAAA,EAAA;AAGF,SAEIW,gBAAAA,EAAA,KAAAC,YAAA,EAAA,UAAA;AAAA,IAAAC,gBAAAA,EAAA;AAAA,MAACsC;AAAA,MAAA;AAAA,QACC,OAAO,EAAE,aAAa;AAAA,QACtB,OACEtC,gBAAAA,EAAA;AAAA,UAACiC;AAAA,UAAA;AAAA,YACC,UAAQ;AAAA,YACR,MAAK;AAAA,YACL,MAAK;AAAA,YACL,4BAAOxD,GAAqB,EAAA;AAAA,YAC5B,SAAS,MAAM;AACG,cAAA8C;YAClB;AAAA,YAEC,YAAE,sBAAsB;AAAA,UAAA;AAAA,QAC3B;AAAA,QAGF,UAAAvB,gBAAAA,EAAA;AAAA,UAACuC;AAAA,UAAA;AAAA,YACC,UAAQ;AAAA,YACR,QAAO;AAAA,YACP,SAAAV;AAAA,YACA,MAAK;AAAA,YACL,QAAA5C;AAAA,YACA,UAAU,OAAYuD,EAAS;AAAA,YAC/B,eAAe,OAAYA,EAAS;AAAA,UAAA;AAAA,QACtC;AAAA,MAAA;AAAA,IACF;AAAA,IACChB;AAAA,IACAE;AAAA,EACH,EAAA,CAAA;AAEJ;","x_google_ignoreList":[0,1]}
|
|
@@ -1,219 +0,0 @@
|
|
|
1
|
-
import { I as O, w as W, f as h, g as x, s as z, m as q, h as V, U as y, i as U, e as u, d as M, c as K } from "./index--jWvmyyO.chunk.js";
|
|
2
|
-
import L, { useRef as c, useCallback as G, useState as N } from "react";
|
|
3
|
-
const P = O ? (e) => {
|
|
4
|
-
e();
|
|
5
|
-
} : L.startTransition, $ = (e) => {
|
|
6
|
-
const [, s] = N({}), t = c(!1), r = c(e), a = c({
|
|
7
|
-
data: !1,
|
|
8
|
-
error: !1,
|
|
9
|
-
isValidating: !1
|
|
10
|
-
}), m = G((l) => {
|
|
11
|
-
let o = !1;
|
|
12
|
-
const g = r.current;
|
|
13
|
-
for (const p in l) {
|
|
14
|
-
const n = p;
|
|
15
|
-
g[n] !== l[n] && (g[n] = l[n], a.current[n] && (o = !0));
|
|
16
|
-
}
|
|
17
|
-
o && !t.current && s({});
|
|
18
|
-
}, []);
|
|
19
|
-
return U(() => (t.current = !1, () => {
|
|
20
|
-
t.current = !0;
|
|
21
|
-
})), [
|
|
22
|
-
r,
|
|
23
|
-
a.current,
|
|
24
|
-
m
|
|
25
|
-
];
|
|
26
|
-
}, j = () => (e, s, t = {}) => {
|
|
27
|
-
const { mutate: r } = x(), a = c(e), m = c(s), l = c(t), o = c(0), [g, p, n] = $({
|
|
28
|
-
data: y,
|
|
29
|
-
error: y,
|
|
30
|
-
isMutating: !1
|
|
31
|
-
}), b = g.current, v = G(
|
|
32
|
-
async (T, k) => {
|
|
33
|
-
const [R, I] = z(a.current);
|
|
34
|
-
if (!m.current)
|
|
35
|
-
throw new Error("Can’t trigger the mutation: missing fetcher.");
|
|
36
|
-
if (!R)
|
|
37
|
-
throw new Error("Can’t trigger the mutation: missing key.");
|
|
38
|
-
const f = q(q({
|
|
39
|
-
populateCache: !1,
|
|
40
|
-
throwOnError: !0
|
|
41
|
-
}, l.current), k), w = V();
|
|
42
|
-
o.current = w, n({
|
|
43
|
-
isMutating: !0
|
|
44
|
-
});
|
|
45
|
-
try {
|
|
46
|
-
const i = await r(
|
|
47
|
-
R,
|
|
48
|
-
m.current(I, {
|
|
49
|
-
arg: T
|
|
50
|
-
}),
|
|
51
|
-
// We must throw the error here so we can catch and update the states.
|
|
52
|
-
q(f, {
|
|
53
|
-
throwOnError: !0
|
|
54
|
-
})
|
|
55
|
-
);
|
|
56
|
-
if (o.current <= w) {
|
|
57
|
-
var S, C;
|
|
58
|
-
P(() => n({
|
|
59
|
-
data: i,
|
|
60
|
-
isMutating: !1,
|
|
61
|
-
error: void 0
|
|
62
|
-
})), (S = (C = f).onSuccess) == null || S.call(C, i, R, f);
|
|
63
|
-
}
|
|
64
|
-
return i;
|
|
65
|
-
} catch (i) {
|
|
66
|
-
if (o.current <= w) {
|
|
67
|
-
var E, A;
|
|
68
|
-
if (P(() => n({
|
|
69
|
-
error: i,
|
|
70
|
-
isMutating: !1
|
|
71
|
-
})), (E = (A = f).onError) == null || E.call(A, i, R, f), f.throwOnError)
|
|
72
|
-
throw i;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
},
|
|
76
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
77
|
-
[]
|
|
78
|
-
), D = G(() => {
|
|
79
|
-
o.current = V(), n({
|
|
80
|
-
data: y,
|
|
81
|
-
error: y,
|
|
82
|
-
isMutating: !1
|
|
83
|
-
});
|
|
84
|
-
}, []);
|
|
85
|
-
return U(() => {
|
|
86
|
-
a.current = e, m.current = s, l.current = t;
|
|
87
|
-
}), {
|
|
88
|
-
trigger: v,
|
|
89
|
-
reset: D,
|
|
90
|
-
get data() {
|
|
91
|
-
return p.data = !0, b.data;
|
|
92
|
-
},
|
|
93
|
-
get error() {
|
|
94
|
-
return p.error = !0, b.error;
|
|
95
|
-
},
|
|
96
|
-
get isMutating() {
|
|
97
|
-
return p.isMutating = !0, b.isMutating;
|
|
98
|
-
}
|
|
99
|
-
};
|
|
100
|
-
}, d = W(h, j);
|
|
101
|
-
function B() {
|
|
102
|
-
const e = u();
|
|
103
|
-
return h(
|
|
104
|
-
"/api/usystem/user/allPermssions",
|
|
105
|
-
(s) => e(s, { isGlobal: !0 }).then((t) => t.data)
|
|
106
|
-
);
|
|
107
|
-
}
|
|
108
|
-
function H() {
|
|
109
|
-
const e = u();
|
|
110
|
-
return h(
|
|
111
|
-
"/api/usystem/user/allPermissionsV2",
|
|
112
|
-
(s) => e(s, { isGlobal: !0 }).then((t) => t.data)
|
|
113
|
-
);
|
|
114
|
-
}
|
|
115
|
-
function J() {
|
|
116
|
-
const e = u(), { accessible: s } = K("200005", !0);
|
|
117
|
-
return h(
|
|
118
|
-
s ? "/api/usystem/role/all" : null,
|
|
119
|
-
(t) => e(t, { isGlobal: !0 }).then((r) => r.data)
|
|
120
|
-
);
|
|
121
|
-
}
|
|
122
|
-
function Q(e) {
|
|
123
|
-
const s = u(), { usePermissionApiV2: t } = M();
|
|
124
|
-
return h(
|
|
125
|
-
`/api/usystem/role/${t ? "infoV2" : "info"}?name=${e}`,
|
|
126
|
-
(r) => s(r, { isGlobal: !0 }).then((a) => a.data)
|
|
127
|
-
);
|
|
128
|
-
}
|
|
129
|
-
function X() {
|
|
130
|
-
const e = u(), { usePermissionApiV2: s } = M();
|
|
131
|
-
return d(
|
|
132
|
-
s ? "/api/usystem/role/createV2" : "/api/usystem/role/create",
|
|
133
|
-
(t, {
|
|
134
|
-
arg: r
|
|
135
|
-
}) => e(t, {
|
|
136
|
-
method: "post",
|
|
137
|
-
body: r,
|
|
138
|
-
isGlobal: !0
|
|
139
|
-
})
|
|
140
|
-
);
|
|
141
|
-
}
|
|
142
|
-
function Z() {
|
|
143
|
-
const e = u(), { usePermissionApiV2: s } = M();
|
|
144
|
-
return d(
|
|
145
|
-
s ? "/api/usystem/role/updateV2" : "/api/usystem/role/update",
|
|
146
|
-
(t, {
|
|
147
|
-
arg: r
|
|
148
|
-
}) => e(t, {
|
|
149
|
-
method: "post",
|
|
150
|
-
body: r,
|
|
151
|
-
isGlobal: !0
|
|
152
|
-
})
|
|
153
|
-
);
|
|
154
|
-
}
|
|
155
|
-
function _() {
|
|
156
|
-
const e = u();
|
|
157
|
-
return d(
|
|
158
|
-
"/api/usystem/role/delete",
|
|
159
|
-
(s, {
|
|
160
|
-
arg: t
|
|
161
|
-
}) => e(s, {
|
|
162
|
-
method: "post",
|
|
163
|
-
body: t,
|
|
164
|
-
isGlobal: !0
|
|
165
|
-
})
|
|
166
|
-
);
|
|
167
|
-
}
|
|
168
|
-
function ee() {
|
|
169
|
-
const e = u();
|
|
170
|
-
return d(
|
|
171
|
-
"/api/usystem/user/create",
|
|
172
|
-
(s, {
|
|
173
|
-
arg: t
|
|
174
|
-
}) => e(s, {
|
|
175
|
-
method: "post",
|
|
176
|
-
body: t,
|
|
177
|
-
isGlobal: !0
|
|
178
|
-
})
|
|
179
|
-
);
|
|
180
|
-
}
|
|
181
|
-
function te() {
|
|
182
|
-
const e = u();
|
|
183
|
-
return d(
|
|
184
|
-
"/api/usystem/user/update",
|
|
185
|
-
(s, {
|
|
186
|
-
arg: t
|
|
187
|
-
}) => e(s, {
|
|
188
|
-
method: "post",
|
|
189
|
-
body: t,
|
|
190
|
-
isGlobal: !0
|
|
191
|
-
})
|
|
192
|
-
);
|
|
193
|
-
}
|
|
194
|
-
function se() {
|
|
195
|
-
const e = u();
|
|
196
|
-
return d(
|
|
197
|
-
"/api/usystem/user/delete",
|
|
198
|
-
(s, {
|
|
199
|
-
arg: t
|
|
200
|
-
}) => e(s, {
|
|
201
|
-
method: "post",
|
|
202
|
-
body: t,
|
|
203
|
-
isGlobal: !0
|
|
204
|
-
})
|
|
205
|
-
);
|
|
206
|
-
}
|
|
207
|
-
export {
|
|
208
|
-
ee as a,
|
|
209
|
-
J as b,
|
|
210
|
-
te as c,
|
|
211
|
-
_ as d,
|
|
212
|
-
X as e,
|
|
213
|
-
Z as f,
|
|
214
|
-
Q as g,
|
|
215
|
-
B as h,
|
|
216
|
-
H as i,
|
|
217
|
-
se as u
|
|
218
|
-
};
|
|
219
|
-
//# sourceMappingURL=index-bewDG1xb.chunk.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-bewDG1xb.chunk.js","sources":["../../../node_modules/.pnpm/swr@2.2.4_react@18.2.0/node_modules/swr/mutation/dist/index.mjs","../src/features/permission/hooks/index.ts"],"sourcesContent":["import React, { useState, useRef, useCallback } from 'react';\nimport useSWR, { useSWRConfig } from 'swr';\nimport { IS_REACT_LEGACY, useIsomorphicLayoutEffect, withMiddleware, serialize, mergeObjects, getTimestamp, UNDEFINED } from 'swr/_internal';\n\nconst startTransition = IS_REACT_LEGACY ? (cb)=>{\n cb();\n} : React.startTransition;\n/**\n * An implementation of state with dependency-tracking.\n */ const useStateWithDeps = (state)=>{\n const [, rerender] = useState({});\n const unmountedRef = useRef(false);\n const stateRef = useRef(state);\n // If a state property (data, error, or isValidating) is accessed by the render\n // function, we mark the property as a dependency so if it is updated again\n // in the future, we trigger a rerender.\n // This is also known as dependency-tracking.\n const stateDependenciesRef = useRef({\n data: false,\n error: false,\n isValidating: false\n });\n /**\n * @param payload To change stateRef, pass the values explicitly to setState:\n * @example\n * ```js\n * setState({\n * isValidating: false\n * data: newData // set data to newData\n * error: undefined // set error to undefined\n * })\n *\n * setState({\n * isValidating: false\n * data: undefined // set data to undefined\n * error: err // set error to err\n * })\n * ```\n */ const setState = useCallback((payload)=>{\n let shouldRerender = false;\n const currentState = stateRef.current;\n for(const _ in payload){\n const k = _;\n // If the property has changed, update the state and mark rerender as\n // needed.\n if (currentState[k] !== payload[k]) {\n currentState[k] = payload[k];\n // If the property is accessed by the component, a rerender should be\n // triggered.\n if (stateDependenciesRef.current[k]) {\n shouldRerender = true;\n }\n }\n }\n if (shouldRerender && !unmountedRef.current) {\n rerender({});\n }\n }, []);\n useIsomorphicLayoutEffect(()=>{\n unmountedRef.current = false;\n return ()=>{\n unmountedRef.current = true;\n };\n });\n return [\n stateRef,\n stateDependenciesRef.current,\n setState\n ];\n};\n\nconst mutation = ()=>(key, fetcher, config = {})=>{\n const { mutate } = useSWRConfig();\n const keyRef = useRef(key);\n const fetcherRef = useRef(fetcher);\n const configRef = useRef(config);\n // Ditch all mutation results that happened earlier than this timestamp.\n const ditchMutationsUntilRef = useRef(0);\n const [stateRef, stateDependencies, setState] = useStateWithDeps({\n data: UNDEFINED,\n error: UNDEFINED,\n isMutating: false\n });\n const currentState = stateRef.current;\n const trigger = useCallback(async (arg, opts)=>{\n const [serializedKey, resolvedKey] = serialize(keyRef.current);\n if (!fetcherRef.current) {\n throw new Error('Can’t trigger the mutation: missing fetcher.');\n }\n if (!serializedKey) {\n throw new Error('Can’t trigger the mutation: missing key.');\n }\n // Disable cache population by default.\n const options = mergeObjects(mergeObjects({\n populateCache: false,\n throwOnError: true\n }, configRef.current), opts);\n // Trigger a mutation, and also track the timestamp. Any mutation that happened\n // earlier this timestamp should be ignored.\n const mutationStartedAt = getTimestamp();\n ditchMutationsUntilRef.current = mutationStartedAt;\n setState({\n isMutating: true\n });\n try {\n const data = await mutate(serializedKey, fetcherRef.current(resolvedKey, {\n arg\n }), // We must throw the error here so we can catch and update the states.\n mergeObjects(options, {\n throwOnError: true\n }));\n // If it's reset after the mutation, we don't broadcast any state change.\n if (ditchMutationsUntilRef.current <= mutationStartedAt) {\n var _options_onSuccess, _options;\n startTransition(()=>setState({\n data,\n isMutating: false,\n error: undefined\n }));\n (_options_onSuccess = (_options = options).onSuccess) == null ? void 0 : _options_onSuccess.call(_options, data, serializedKey, options);\n }\n return data;\n } catch (error) {\n // If it's reset after the mutation, we don't broadcast any state change\n // or throw because it's discarded.\n if (ditchMutationsUntilRef.current <= mutationStartedAt) {\n var _options_onError, _options1;\n startTransition(()=>setState({\n error: error,\n isMutating: false\n }));\n (_options_onError = (_options1 = options).onError) == null ? void 0 : _options_onError.call(_options1, error, serializedKey, options);\n if (options.throwOnError) {\n throw error;\n }\n }\n }\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n []);\n const reset = useCallback(()=>{\n ditchMutationsUntilRef.current = getTimestamp();\n setState({\n data: UNDEFINED,\n error: UNDEFINED,\n isMutating: false\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n useIsomorphicLayoutEffect(()=>{\n keyRef.current = key;\n fetcherRef.current = fetcher;\n configRef.current = config;\n });\n // We don't return `mutate` here as it can be pretty confusing (e.g. people\n // calling `mutate` but they actually mean `trigger`).\n // And also, `mutate` relies on the useSWR hook to exist too.\n return {\n trigger,\n reset,\n get data () {\n stateDependencies.data = true;\n return currentState.data;\n },\n get error () {\n stateDependencies.error = true;\n return currentState.error;\n },\n get isMutating () {\n stateDependencies.isMutating = true;\n return currentState.isMutating;\n }\n };\n };\n/**\n * A hook to define and manually trigger remote mutations like POST, PUT, DELETE and PATCH use cases.\n *\n * @link https://swr.vercel.app/docs/mutation\n * @example\n * ```jsx\n * import useSWRMutation from 'swr/mutation'\n *\n * const {\n * data,\n * error,\n * trigger,\n * reset,\n * isMutating\n * } = useSWRMutation(key, fetcher, options?)\n * ```\n */ const useSWRMutation = withMiddleware(useSWR, mutation);\n\nexport { useSWRMutation as default };\n","import useSWR from 'swr'\nimport useSWRMutation from 'swr/mutation'\nimport { useToolkitsContext } from '../../../components/ContextProvider'\nimport type { Game } from '../../../components/GameSelect'\nimport { usePermission } from '../../../hooks/permission'\nimport { useRequest } from '../../../hooks/request'\nimport type { PermissionEnumItem, RoleEnumItem, RoleV1, RoleV2 } from '../types'\n\nexport function useAllPermissions() {\n const request = useRequest()\n return useSWR('/api/usystem/user/allPermssions', url =>\n request<PermissionEnumItem[]>(url, { isGlobal: true }).then(response => response.data),\n )\n}\n\nexport function useAllPermissionsV2() {\n const request = useRequest()\n return useSWR('/api/usystem/user/allPermissionsV2', url =>\n request<{\n game: Game[]\n permission: PermissionEnumItem[]\n }>(url, { isGlobal: true }).then(response => response.data),\n )\n}\n\nexport function useAllRoles() {\n const request = useRequest()\n const { accessible } = usePermission('200005', true)\n return useSWR(accessible ? '/api/usystem/role/all' : null, url =>\n request<RoleEnumItem[]>(url, { isGlobal: true }).then(response => response.data),\n )\n}\n\nexport function useRole(name: string) {\n const request = useRequest()\n const { usePermissionApiV2 } = useToolkitsContext()\n return useSWR(`/api/usystem/role/${usePermissionApiV2 ? 'infoV2' : 'info'}?name=${name}`, (url: string) =>\n request<RoleV1 | RoleV2>(url, { isGlobal: true }).then(response => response.data),\n )\n}\n\nexport function useCreateRole() {\n const request = useRequest()\n const { usePermissionApiV2 } = useToolkitsContext()\n\n return useSWRMutation(\n usePermissionApiV2 ? '/api/usystem/role/createV2' : '/api/usystem/role/create',\n (\n url: string,\n {\n arg,\n }: {\n arg: { name: string; permissions: RoleV1['permissions'] | RoleV2['permissions'] }\n },\n ) =>\n request(url, {\n method: 'post',\n body: arg,\n isGlobal: true,\n }),\n )\n}\n\nexport function useUpdateRole() {\n const request = useRequest()\n const { usePermissionApiV2 } = useToolkitsContext()\n\n return useSWRMutation(\n usePermissionApiV2 ? '/api/usystem/role/updateV2' : '/api/usystem/role/update',\n (\n url: string,\n {\n arg,\n }: {\n arg: { id: number; name: string; permissions: RoleV1['permissions'] | RoleV2['permissions'] }\n },\n ) =>\n request(url, {\n method: 'post',\n body: arg,\n isGlobal: true,\n }),\n )\n}\n\nexport function useRemoveRole() {\n const request = useRequest()\n return useSWRMutation(\n '/api/usystem/role/delete',\n (\n url,\n {\n arg,\n }: {\n arg: { id: number; name: string }\n },\n ) =>\n request(url, {\n method: 'post',\n body: arg,\n isGlobal: true,\n }),\n )\n}\n\nexport function useCreateUser() {\n const request = useRequest()\n return useSWRMutation(\n '/api/usystem/user/create',\n (\n url,\n {\n arg,\n }: {\n arg: { name: string; roles: string[] }\n },\n ) =>\n request(url, {\n method: 'post',\n body: arg,\n isGlobal: true,\n }),\n )\n}\n\nexport function useUpdateUser() {\n const request = useRequest()\n return useSWRMutation(\n '/api/usystem/user/update',\n (\n url,\n {\n arg,\n }: {\n arg: { id: string; name: string; roles: string[] }\n },\n ) =>\n request(url, {\n method: 'post',\n body: arg,\n isGlobal: true,\n }),\n )\n}\n\nexport function useRemoveUser() {\n const request = useRequest()\n return useSWRMutation(\n '/api/usystem/user/delete',\n (\n url,\n {\n arg,\n }: {\n arg: { id: string; name: string }\n },\n ) =>\n request(url, {\n method: 'post',\n body: arg,\n isGlobal: true,\n }),\n )\n}\n"],"names":["startTransition","IS_REACT_LEGACY","cb","React","useStateWithDeps","state","rerender","useState","unmountedRef","useRef","stateRef","stateDependenciesRef","setState","useCallback","payload","shouldRerender","currentState","_","k","useIsomorphicLayoutEffect","mutation","key","fetcher","config","mutate","useSWRConfig","keyRef","fetcherRef","configRef","ditchMutationsUntilRef","stateDependencies","UNDEFINED","trigger","arg","opts","serializedKey","resolvedKey","serialize","options","mergeObjects","mutationStartedAt","getTimestamp","data","_options_onSuccess","_options","error","_options_onError","_options1","reset","useSWRMutation","withMiddleware","useSWR","useAllPermissions","request","useRequest","url","response","useAllPermissionsV2","useAllRoles","accessible","usePermission","useRole","name","usePermissionApiV2","useToolkitsContext","useCreateRole","useUpdateRole","useRemoveRole","useCreateUser","useUpdateUser","useRemoveUser"],"mappings":"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","x_google_ignoreList":[0]}
|