react-toolkits 0.6.2 → 0.6.3
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 +6 -0
- package/lib/immer-BLf7GM7E.chunk.js +1 -0
- package/lib/immer-BLf7GM7E.chunk.js.map +1 -0
- package/lib/{index-NHwKRZfN.chunk.js → index-2famwFN5.chunk.js} +2 -1
- package/lib/index-2famwFN5.chunk.js.map +1 -0
- package/lib/{index-zdE43px5.chunk.js → index-8S2if1HN.chunk.js} +3 -2
- package/lib/index-8S2if1HN.chunk.js.map +1 -0
- package/lib/{index-gbZTPlZL.chunk.js → index-CYvZ4eXp.chunk.js} +35 -35
- package/lib/index-CYvZ4eXp.chunk.js.map +1 -0
- package/lib/{index-vplz9Kr-.chunk.js → index-LFJ8CuhL.chunk.js} +3 -2
- package/lib/index-LFJ8CuhL.chunk.js.map +1 -0
- package/lib/{index-g-p7nqAT.chunk.js → index-dkau8dN4.chunk.js} +1649 -1626
- package/lib/index-dkau8dN4.chunk.js.map +1 -0
- package/lib/{index--pG_k1Xj.chunk.js → index-gveuSV73.chunk.js} +2 -1
- package/lib/index-gveuSV73.chunk.js.map +1 -0
- package/lib/{index-JqpaFO9q.chunk.js → index-mGxkr4KP.chunk.js} +28 -28
- package/lib/index-mGxkr4KP.chunk.js.map +1 -0
- package/lib/{index-fYjxvO82.chunk.js → index-sG30lYpd.chunk.js} +4 -3
- package/lib/index-sG30lYpd.chunk.js.map +1 -0
- package/lib/{index-6IUwdn-6.chunk.js → index-t9jv_VWg.chunk.js} +2 -1
- package/lib/index-t9jv_VWg.chunk.js.map +1 -0
- package/lib/index.d.ts +11 -5
- package/lib/index.js +2 -1
- package/lib/index.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { u as o, j as t } from "./index-
|
|
1
|
+
import { u as o, j as t } from "./index-dkau8dN4.chunk.js";
|
|
2
2
|
import { Result as r, Button as i } from "antd";
|
|
3
3
|
import { useNavigate as n } from "react-router-dom";
|
|
4
4
|
import "react";
|
|
@@ -27,3 +27,4 @@ const p = () => {
|
|
|
27
27
|
export {
|
|
28
28
|
p as default
|
|
29
29
|
};
|
|
30
|
+
//# sourceMappingURL=index-gveuSV73.chunk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-gveuSV73.chunk.js","sources":["../src/pages/NotFound/index.tsx"],"sourcesContent":["import { Button, Result } from 'antd'\nimport { useNavigate } from 'react-router-dom'\nimport { useTranslation } from '../../hooks/i18n'\n\nconst NotFound = () => {\n const navigate = useNavigate()\n const t = useTranslation()\n return (\n <div className=\"h-screen flex justify-center items-center\">\n <Result\n status=\"404\"\n title=\"404\"\n subTitle={t('NotFound.subTitle')}\n extra={\n <Button\n type=\"primary\"\n onClick={() => {\n navigate('/')\n }}\n >\n {t('NotFound.buttonText')}\n </Button>\n }\n />\n </div>\n )\n}\n\nexport default NotFound\n"],"names":["NotFound","navigate","useNavigate","t","useTranslation","jsx","Result","Button"],"mappings":";;;;;AAIA,MAAMA,IAAW,MAAM;AACrB,QAAMC,IAAWC,KACXC,IAAIC;AAER,SAAAC,gBAAAA,EAAAA,IAAC,OAAI,EAAA,WAAU,6CACb,UAAAA,gBAAAA,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,QAAO;AAAA,MACP,OAAM;AAAA,MACN,UAAUH,EAAE,mBAAmB;AAAA,MAC/B,OACEE,gBAAAA,EAAA;AAAA,QAACE;AAAA,QAAA;AAAA,UACC,MAAK;AAAA,UACL,SAAS,MAAM;AACb,YAAAN,EAAS,GAAG;AAAA,UACd;AAAA,UAEC,YAAE,qBAAqB;AAAA,QAAA;AAAA,MAC1B;AAAA,IAAA;AAAA,EAGN,EAAA,CAAA;AAEJ;"}
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
import { A as T, _ as N, f as b, u as U, j as e, P as g, H as R, Q as z, h as I } from "./index-
|
|
2
|
-
import { App as f, Row as H, Col as E, Tag as L, Space as G, Card as
|
|
1
|
+
import { A as T, _ as N, f as b, u as U, j as e, P as g, H as R, Q as z, h as I } from "./index-dkau8dN4.chunk.js";
|
|
2
|
+
import { App as f, Row as H, Col as E, Tag as L, Space as G, Card as P, Form as d, Input as j, Select as y } from "antd";
|
|
3
3
|
import { p as S } from "./immer-BLf7GM7E.chunk.js";
|
|
4
|
-
import { Link as
|
|
5
|
-
import { f as
|
|
6
|
-
import * as
|
|
4
|
+
import { Link as Q } from "react-router-dom";
|
|
5
|
+
import { f as _, g as $, h as k, i as q } from "./index-t9jv_VWg.chunk.js";
|
|
6
|
+
import * as O from "react";
|
|
7
7
|
import "react-dom";
|
|
8
|
-
var
|
|
9
|
-
const
|
|
10
|
-
var
|
|
11
|
-
return /* @__PURE__ */
|
|
8
|
+
var B = { icon: { tag: "svg", attrs: { viewBox: "64 64 896 896", focusable: "false" }, children: [{ tag: "path", attrs: { d: "M678.3 642.4c24.2-13 51.9-20.4 81.4-20.4h.1c3 0 4.4-3.6 2.2-5.6a371.67 371.67 0 00-103.7-65.8c-.4-.2-.8-.3-1.2-.5C719.2 505 759.6 431.7 759.6 349c0-137-110.8-248-247.5-248S264.7 212 264.7 349c0 82.7 40.4 156 102.6 201.1-.4.2-.8.3-1.2.5-44.7 18.9-84.8 46-119.3 80.6a373.42 373.42 0 00-80.4 119.5A373.6 373.6 0 00137 888.8a8 8 0 008 8.2h59.9c4.3 0 7.9-3.5 8-7.8 2-77.2 32.9-149.5 87.6-204.3C357 628.2 432.2 597 512.2 597c56.7 0 111.1 15.7 158 45.1a8.1 8.1 0 008.1.3zM512.2 521c-45.8 0-88.9-17.9-121.4-50.4A171.2 171.2 0 01340.5 349c0-45.9 17.9-89.1 50.3-121.6S466.3 177 512.2 177s88.9 17.9 121.4 50.4A171.2 171.2 0 01683.9 349c0 45.9-17.9 89.1-50.3 121.6C601.1 503.1 558 521 512.2 521zM880 759h-84v-84c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v84h-84c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h84v84c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-84h84c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8z" } }] }, name: "user-add", theme: "outlined" };
|
|
9
|
+
const D = B;
|
|
10
|
+
var v = function(c, r) {
|
|
11
|
+
return /* @__PURE__ */ O.createElement(T, N({}, c, {
|
|
12
12
|
ref: r,
|
|
13
|
-
icon:
|
|
13
|
+
icon: D
|
|
14
14
|
}));
|
|
15
15
|
};
|
|
16
|
-
process.env.NODE_ENV !== "production" && (
|
|
17
|
-
const
|
|
16
|
+
process.env.NODE_ENV !== "production" && (v.displayName = "UserAddOutlined");
|
|
17
|
+
const F = /* @__PURE__ */ O.forwardRef(v), { Option: V } = y, h = "/api/usystem/user/list";
|
|
18
18
|
function K() {
|
|
19
|
-
const { message:
|
|
19
|
+
const { message: m } = f.useApp(), c = $(), { data: r, isLoading: u } = k(), { setPage: p } = b(), n = U();
|
|
20
20
|
return I({
|
|
21
21
|
title: n("UserList.createTitle"),
|
|
22
22
|
content: (l) => /* @__PURE__ */ e.jsxs(d, { form: l, labelCol: { flex: "80px" }, children: [
|
|
23
23
|
/* @__PURE__ */ e.jsx(d.Item, { label: n("global.name"), name: "name", rules: [{ required: !0 }], children: /* @__PURE__ */ e.jsx(j, {}) }),
|
|
24
|
-
/* @__PURE__ */ e.jsx(d.Item, { label: n("global.role"), name: "roles", children: /* @__PURE__ */ e.jsx(y, { allowClear: !0, mode: "multiple", loading:
|
|
24
|
+
/* @__PURE__ */ e.jsx(d.Item, { label: n("global.role"), name: "roles", children: /* @__PURE__ */ e.jsx(y, { allowClear: !0, mode: "multiple", loading: u, children: (r ?? []).map((i) => /* @__PURE__ */ e.jsx(V, { value: i.name, children: i.name }, i.id)) }) })
|
|
25
25
|
] }),
|
|
26
26
|
async onConfirm(l) {
|
|
27
|
-
await c.trigger(l), p(h,
|
|
27
|
+
await c.trigger(l), p(h, 1), m.success(n("UserList.createSuccessfully"));
|
|
28
28
|
}
|
|
29
29
|
});
|
|
30
30
|
}
|
|
31
31
|
function J() {
|
|
32
|
-
const { message:
|
|
32
|
+
const { message: m } = f.useApp(), c = q(), { data: r, isLoading: u } = k(), { mutate: p } = b(), n = U();
|
|
33
33
|
return I({
|
|
34
34
|
title: n("UserList.updateTitle"),
|
|
35
35
|
content: (l) => /* @__PURE__ */ e.jsxs(d, { form: l, labelCol: { flex: "80px" }, children: [
|
|
@@ -40,7 +40,7 @@ function J() {
|
|
|
40
40
|
{
|
|
41
41
|
allowClear: !0,
|
|
42
42
|
mode: "multiple",
|
|
43
|
-
loading:
|
|
43
|
+
loading: u,
|
|
44
44
|
options: r == null ? void 0 : r.map((i) => ({
|
|
45
45
|
label: i.name,
|
|
46
46
|
value: i.name
|
|
@@ -52,19 +52,18 @@ function J() {
|
|
|
52
52
|
async onConfirm(l) {
|
|
53
53
|
await c.trigger(l), p(
|
|
54
54
|
h,
|
|
55
|
-
void 0,
|
|
56
55
|
(i) => S(i, (s) => {
|
|
57
56
|
var t;
|
|
58
57
|
const x = (t = s == null ? void 0 : s.list) == null ? void 0 : t.find((o) => o.id === l.id);
|
|
59
58
|
x && (x.roles = l.roles);
|
|
60
59
|
}),
|
|
61
60
|
{ revalidate: !1 }
|
|
62
|
-
),
|
|
61
|
+
), m.success(n("UserList.updateSuccessfully"));
|
|
63
62
|
}
|
|
64
63
|
});
|
|
65
64
|
}
|
|
66
65
|
const te = () => {
|
|
67
|
-
const { modal:
|
|
66
|
+
const { modal: m, message: c } = f.useApp(), r = _(), { mutate: u } = b(), { show: p, contextHolder: n } = K(), { show: l, contextHolder: i } = J(), s = U(), x = [
|
|
68
67
|
{
|
|
69
68
|
title: s("global.name"),
|
|
70
69
|
dataIndex: "name",
|
|
@@ -81,7 +80,7 @@ const te = () => {
|
|
|
81
80
|
key: "roles",
|
|
82
81
|
width: "40%",
|
|
83
82
|
render(t) {
|
|
84
|
-
return /* @__PURE__ */ e.jsx(H, { gutter: [4, 4], children: (t || []).map((o) => /* @__PURE__ */ e.jsx(E, { children: o === "root" ? /* @__PURE__ */ e.jsx(L, { color: "#f50", children: o }) : /* @__PURE__ */ e.jsx(L, { color: "#ff5a00", children: /* @__PURE__ */ e.jsx(
|
|
83
|
+
return /* @__PURE__ */ e.jsx(H, { gutter: [4, 4], children: (t || []).map((o) => /* @__PURE__ */ e.jsx(E, { children: o === "root" ? /* @__PURE__ */ e.jsx(L, { color: "#f50", children: o }) : /* @__PURE__ */ e.jsx(L, { color: "#ff5a00", children: /* @__PURE__ */ e.jsx(Q, { to: `/permission/role/${o}`, children: o }) }) }, o)) });
|
|
85
84
|
}
|
|
86
85
|
},
|
|
87
86
|
{
|
|
@@ -122,14 +121,14 @@ const te = () => {
|
|
|
122
121
|
code: "100004",
|
|
123
122
|
type: "link",
|
|
124
123
|
onClick: () => {
|
|
125
|
-
|
|
124
|
+
m.confirm({
|
|
126
125
|
title: s("UserList.deleteTitle"),
|
|
127
126
|
content: /* @__PURE__ */ e.jsx(R, { texts: [t.name], children: s("UserList.deleteContent", { user: t.name }) }),
|
|
128
127
|
async onOk() {
|
|
129
128
|
await r.trigger({
|
|
130
129
|
id: t.id,
|
|
131
130
|
name: t.name
|
|
132
|
-
}),
|
|
131
|
+
}), u(h, (o) => S(o, (a) => {
|
|
133
132
|
var w, A;
|
|
134
133
|
const C = (w = a == null ? void 0 : a.list) == null ? void 0 : w.findIndex((M) => M.id === t.id);
|
|
135
134
|
C && ((A = a == null ? void 0 : a.list) == null || A.splice(C, 1));
|
|
@@ -144,7 +143,7 @@ const te = () => {
|
|
|
144
143
|
}
|
|
145
144
|
];
|
|
146
145
|
return /* @__PURE__ */ e.jsxs(
|
|
147
|
-
|
|
146
|
+
P,
|
|
148
147
|
{
|
|
149
148
|
title: s("global.user"),
|
|
150
149
|
extra: /* @__PURE__ */ e.jsx(
|
|
@@ -152,7 +151,7 @@ const te = () => {
|
|
|
152
151
|
{
|
|
153
152
|
isGlobalNS: !0,
|
|
154
153
|
type: "primary",
|
|
155
|
-
icon: /* @__PURE__ */ e.jsx(
|
|
154
|
+
icon: /* @__PURE__ */ e.jsx(F, {}),
|
|
156
155
|
code: "100002",
|
|
157
156
|
onClick: () => {
|
|
158
157
|
p();
|
|
@@ -166,7 +165,7 @@ const te = () => {
|
|
|
166
165
|
{
|
|
167
166
|
isGlobalNS: !0,
|
|
168
167
|
code: "100001",
|
|
169
|
-
|
|
168
|
+
action: h,
|
|
170
169
|
rowKey: "id",
|
|
171
170
|
columns: x,
|
|
172
171
|
transformResponse: (t) => {
|
|
@@ -182,6 +181,7 @@ const te = () => {
|
|
|
182
181
|
);
|
|
183
182
|
};
|
|
184
183
|
export {
|
|
185
|
-
|
|
186
|
-
|
|
184
|
+
h as action,
|
|
185
|
+
te as default
|
|
187
186
|
};
|
|
187
|
+
//# sourceMappingURL=index-mGxkr4KP.chunk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-mGxkr4KP.chunk.js","sources":["../../../node_modules/.pnpm/@ant-design+icons-svg@4.3.1/node_modules/@ant-design/icons-svg/es/asn/UserAddOutlined.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/UserAddOutlined.js","../src/pages/UserList/index.tsx"],"sourcesContent":["// This icon file is generated automatically.\nvar UserAddOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M678.3 642.4c24.2-13 51.9-20.4 81.4-20.4h.1c3 0 4.4-3.6 2.2-5.6a371.67 371.67 0 00-103.7-65.8c-.4-.2-.8-.3-1.2-.5C719.2 505 759.6 431.7 759.6 349c0-137-110.8-248-247.5-248S264.7 212 264.7 349c0 82.7 40.4 156 102.6 201.1-.4.2-.8.3-1.2.5-44.7 18.9-84.8 46-119.3 80.6a373.42 373.42 0 00-80.4 119.5A373.6 373.6 0 00137 888.8a8 8 0 008 8.2h59.9c4.3 0 7.9-3.5 8-7.8 2-77.2 32.9-149.5 87.6-204.3C357 628.2 432.2 597 512.2 597c56.7 0 111.1 15.7 158 45.1a8.1 8.1 0 008.1.3zM512.2 521c-45.8 0-88.9-17.9-121.4-50.4A171.2 171.2 0 01340.5 349c0-45.9 17.9-89.1 50.3-121.6S466.3 177 512.2 177s88.9 17.9 121.4 50.4A171.2 171.2 0 01683.9 349c0 45.9-17.9 89.1-50.3 121.6C601.1 503.1 558 521 512.2 521zM880 759h-84v-84c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v84h-84c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h84v84c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-84h84c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8z\" } }] }, \"name\": \"user-add\", \"theme\": \"outlined\" };\nexport default UserAddOutlined;\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 UserAddOutlinedSvg from \"@ant-design/icons-svg/es/asn/UserAddOutlined\";\nimport AntdIcon from \"../components/AntdIcon\";\nvar UserAddOutlined = function UserAddOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _extends({}, props, {\n ref: ref,\n icon: UserAddOutlinedSvg\n }));\n};\nif (process.env.NODE_ENV !== 'production') {\n UserAddOutlined.displayName = 'UserAddOutlined';\n}\nexport default /*#__PURE__*/React.forwardRef(UserAddOutlined);","import { UserAddOutlined } from '@ant-design/icons'\nimport type { TableColumnsType } from 'antd'\nimport { App, Card, Col, Form, Input, Row, Select, Space, Tag } from 'antd'\nimport { produce } from 'immer'\nimport type { FC } from 'react'\nimport { Link } from 'react-router-dom'\nimport Highlight from '../../components/Highlight'\nimport PermissionButton from '../../components/PermissionButton'\nimport QueryList from '../../components/QueryList'\nimport type { UserListItem } from '../../features/permission'\nimport { useAllRoles, useCreateUser, useRemoveUser, useUpdateUser } from '../../features/permission'\nimport { useFormModal } from '../../hooks/formModal'\nimport { useTranslation } from '../../hooks/i18n'\nimport { useQueryListStore } from '../../stores/queryList'\n\nconst { Option } = Select\n\nexport const action = '/api/usystem/user/list'\n\nfunction useCreatingUserModal() {\n const { message } = App.useApp()\n const create = useCreateUser()\n const { data: roles, isLoading } = useAllRoles()\n const { setPage } = useQueryListStore()\n const t = useTranslation()\n\n return useFormModal<{ id: string; name: string; roles: string[] }>({\n title: t('UserList.createTitle'),\n content: form => (\n <Form form={form} labelCol={{ flex: '80px' }}>\n <Form.Item label={t('global.name')} name=\"name\" rules={[{ required: true }]}>\n <Input />\n </Form.Item>\n <Form.Item label={t('global.role')} name=\"roles\">\n <Select allowClear mode=\"multiple\" loading={isLoading}>\n {(roles ?? []).map(role => (\n <Option value={role.name} key={role.id}>\n {role.name}\n </Option>\n ))}\n </Select>\n </Form.Item>\n </Form>\n ),\n async onConfirm(values) {\n await create.trigger(values)\n setPage(action, 1)\n message.success(t('UserList.createSuccessfully'))\n },\n })\n}\n\nfunction useUpdatingUserModal() {\n const { message } = App.useApp()\n const update = useUpdateUser()\n const { data: roles, isLoading } = useAllRoles()\n const { mutate } = useQueryListStore()\n const t = useTranslation()\n\n return useFormModal<{ id: string; name: string; roles: string[] }>({\n title: t('UserList.updateTitle'),\n content: form => (\n <Form form={form} labelCol={{ flex: '80px' }}>\n <Form.Item hidden name=\"id\">\n <Input />\n </Form.Item>\n <Form.Item label={t('global.name')} name=\"name\" rules={[{ required: true }]}>\n <Input readOnly />\n </Form.Item>\n <Form.Item label={t('global.role')} name=\"roles\">\n <Select\n allowClear\n mode=\"multiple\"\n loading={isLoading}\n options={roles?.map(role => ({\n label: role.name,\n value: role.name,\n }))}\n // FIXME: 在项目中引入时弹出框会被 Modal 遮盖,暂时不知道原因。\n dropdownStyle={{ zIndex: 9999 }}\n />\n </Form.Item>\n </Form>\n ),\n async onConfirm(values) {\n await update.trigger(values)\n mutate(\n action,\n prev =>\n produce(prev, draft => {\n const match = draft?.list?.find(item => item.id === values.id)\n\n if (match) {\n match.roles = values.roles\n }\n }),\n { revalidate: false },\n )\n message.success(t('UserList.updateSuccessfully'))\n },\n })\n}\n\nconst UserList: FC = () => {\n const { modal, message } = App.useApp()\n const remove = useRemoveUser()\n const { mutate } = useQueryListStore()\n const { show: showCreatingModal, contextHolder: creatingContextHolder } = useCreatingUserModal()\n const { show: showUpdatingModal, contextHolder: updatingContextHolder } = useUpdatingUserModal()\n const t = useTranslation()\n\n const columns: TableColumnsType<UserListItem> = [\n {\n title: t('global.name'),\n dataIndex: 'name',\n key: 'name',\n },\n {\n title: 'ID',\n dataIndex: 'id',\n key: 'id',\n },\n {\n title: t('global.role'),\n dataIndex: 'roles',\n key: 'roles',\n width: '40%',\n render(value: string[]) {\n return (\n <Row gutter={[4, 4]}>\n {(value || []).map((item: string) => (\n <Col key={item}>\n {item === 'root' ? (\n <Tag color=\"#f50\">{item}</Tag>\n ) : (\n <Tag color=\"#ff5a00\">\n <Link to={`/permission/role/${item}`}>{item}</Link>\n </Tag>\n )}\n </Col>\n ))}\n </Row>\n )\n },\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: UserListItem) => (\n <Space>\n <PermissionButton\n isGlobalNS\n size=\"small\"\n type=\"link\"\n code=\"100003\"\n onClick={() => {\n showUpdatingModal({\n initialValues: {\n id: value.id,\n name: value.name,\n roles: value.roles,\n },\n })\n }}\n >\n {t('global.update')}\n </PermissionButton>\n <PermissionButton\n isGlobalNS\n danger\n size=\"small\"\n code=\"100004\"\n type=\"link\"\n onClick={() => {\n modal.confirm({\n title: t('UserList.deleteTitle'),\n content: (\n <Highlight texts={[value.name]}>{t('UserList.deleteContent', { user: 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?.list?.findIndex(item => item.id === value.id)\n if (index) {\n draft?.list?.splice(index, 1)\n }\n })\n })\n message.success(t('UserList.deleteSuccessfully'))\n },\n })\n }}\n >\n {t('global.delete')}\n </PermissionButton>\n </Space>\n ),\n },\n ]\n\n return (\n <Card\n title={t('global.user')}\n extra={\n <PermissionButton\n isGlobalNS\n type=\"primary\"\n icon={<UserAddOutlined />}\n code=\"100002\"\n onClick={() => {\n showCreatingModal()\n }}\n >\n {t('UserList.createTitle')}\n </PermissionButton>\n }\n >\n <QueryList<UserListItem, undefined, { List: UserListItem[]; Total: number }>\n isGlobalNS\n code=\"100001\"\n action={action}\n rowKey=\"id\"\n columns={columns}\n transformResponse={response => {\n const { List, Total } = response\n return { list: List, total: Total }\n }}\n />\n {creatingContextHolder}\n {updatingContextHolder}\n </Card>\n )\n}\n\nexport default UserList\n"],"names":["UserAddOutlined","UserAddOutlinedSvg","props","ref","React","AntdIcon","_extends","UserAddOutlined$1","Option","Select","action","useCreatingUserModal","message","App","create","useCreateUser","roles","isLoading","useAllRoles","setPage","useQueryListStore","t","useTranslation","useFormModal","jsxs","Form","form","jsx","Input","role","values","useUpdatingUserModal","update","useUpdateUser","mutate","prev","produce","draft","match","_a","item","UserList","modal","remove","useRemoveUser","showCreatingModal","creatingContextHolder","showUpdatingModal","updatingContextHolder","columns","value","Row","Col","Tag","Link","Space","PermissionButton","Highlight","index","_b","Card","QueryList","response","List","Total"],"mappings":";;;;;;;AACA,IAAIA,IAAkB,EAAE,MAAQ,EAAE,KAAO,OAAO,OAAS,EAAE,SAAW,iBAAiB,WAAa,QAAS,GAAE,UAAY,CAAC,EAAE,KAAO,QAAQ,OAAS,EAAE,GAAK,m2BAAk2B,GAAI,EAAC,GAAI,MAAQ,YAAY,OAAS,WAAU;AAC/iC,MAAAC,IAAeD;ACKf,IAAIA,IAAkB,SAAyBE,GAAOC,GAAK;AACzD,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,EAAgB,cAAc;AAEhC,MAAAO,IAA4B,gBAAAH,EAAM,WAAWJ,CAAe,GCDtD,EAAE,QAAAQ,EAAW,IAAAC,GAENC,IAAS;AAEtB,SAASC,IAAuB;AAC9B,QAAM,EAAE,SAAAC,EAAA,IAAYC,EAAI,OAAO,GACzBC,IAASC,KACT,EAAE,MAAMC,GAAO,WAAAC,MAAcC,EAAY,GACzC,EAAE,SAAAC,MAAYC,KACdC,IAAIC;AAEV,SAAOC,EAA4D;AAAA,IACjE,OAAOF,EAAE,sBAAsB;AAAA,IAC/B,SAAS,OACNG,gBAAAA,EAAA,KAAAC,GAAA,EAAK,MAAAC,GAAY,UAAU,EAAE,MAAM,OAAA,GAClC,UAAA;AAAA,MAAAC,gBAAAA,MAACF,EAAK,MAAL,EAAU,OAAOJ,EAAE,aAAa,GAAG,MAAK,QAAO,OAAO,CAAC,EAAE,UAAU,IAAM,GACxE,UAAAM,gBAAAA,MAACC,IAAM,CAAA,GACT;AAAA,MACCD,gBAAAA,EAAA,IAAAF,EAAK,MAAL,EAAU,OAAOJ,EAAE,aAAa,GAAG,MAAK,SACvC,UAACM,gBAAAA,EAAA,IAAAlB,GAAA,EAAO,YAAU,IAAC,MAAK,YAAW,SAASQ,GACxC,WAAAD,KAAS,CAAC,GAAG,IAAI,CAAAa,4BAChBrB,GAAO,EAAA,OAAOqB,EAAK,MACjB,YAAK,KADuB,GAAAA,EAAK,EAEpC,CACD,EACH,CAAA,GACF;AAAA,IAAA,GACF;AAAA,IAEF,MAAM,UAAUC,GAAQ;AAChB,YAAAhB,EAAO,QAAQgB,CAAM,GAC3BX,EAAQT,GAAQ,CAAC,GACTE,EAAA,QAAQS,EAAE,6BAA6B,CAAC;AAAA,IAClD;AAAA,EAAA,CACD;AACH;AAEA,SAASU,IAAuB;AAC9B,QAAM,EAAE,SAAAnB,EAAA,IAAYC,EAAI,OAAO,GACzBmB,IAASC,KACT,EAAE,MAAMjB,GAAO,WAAAC,MAAcC,EAAY,GACzC,EAAE,QAAAgB,MAAWd,KACbC,IAAIC;AAEV,SAAOC,EAA4D;AAAA,IACjE,OAAOF,EAAE,sBAAsB;AAAA,IAC/B,SAAS,OACNG,gBAAAA,EAAA,KAAAC,GAAA,EAAK,MAAAC,GAAY,UAAU,EAAE,MAAM,OAAA,GAClC,UAAA;AAAA,MAACC,gBAAAA,EAAAA,IAAAF,EAAK,MAAL,EAAU,QAAM,IAAC,MAAK,MACrB,UAACE,gBAAAA,EAAA,IAAAC,GAAA,CAAA,CAAM,EACT,CAAA;AAAA,MACAD,gBAAAA,MAACF,EAAK,MAAL,EAAU,OAAOJ,EAAE,aAAa,GAAG,MAAK,QAAO,OAAO,CAAC,EAAE,UAAU,IAAM,GACxE,UAACM,gBAAAA,EAAAA,IAAAC,GAAA,EAAM,UAAQ,GAAC,CAAA,GAClB;AAAA,MACAD,gBAAAA,EAAAA,IAACF,EAAK,MAAL,EAAU,OAAOJ,EAAE,aAAa,GAAG,MAAK,SACvC,UAAAM,gBAAAA,EAAA;AAAA,QAAClB;AAAA,QAAA;AAAA,UACC,YAAU;AAAA,UACV,MAAK;AAAA,UACL,SAASQ;AAAA,UACT,SAASD,KAAA,gBAAAA,EAAO,IAAI,CAASa,OAAA;AAAA,YAC3B,OAAOA,EAAK;AAAA,YACZ,OAAOA,EAAK;AAAA,UAAA;AAAA,UAGd,eAAe,EAAE,QAAQ,KAAK;AAAA,QAAA;AAAA,MAAA,GAElC;AAAA,IAAA,GACF;AAAA,IAEF,MAAM,UAAUC,GAAQ;AAChB,YAAAE,EAAO,QAAQF,CAAM,GAC3BI;AAAA,QACExB;AAAA,QACA,CAAAyB,MACEC,EAAQD,GAAM,CAASE,MAAA;;AACf,gBAAAC,KAAQC,IAAAF,KAAA,gBAAAA,EAAO,SAAP,gBAAAE,EAAa,KAAK,OAAQC,EAAK,OAAOV,EAAO;AAE3D,UAAIQ,MACFA,EAAM,QAAQR,EAAO;AAAA,QACvB,CACD;AAAA,QACH,EAAE,YAAY,GAAM;AAAA,MAAA,GAEdlB,EAAA,QAAQS,EAAE,6BAA6B,CAAC;AAAA,IAClD;AAAA,EAAA,CACD;AACH;AAEA,MAAMoB,KAAe,MAAM;AACzB,QAAM,EAAE,OAAAC,GAAO,SAAA9B,EAAQ,IAAIC,EAAI,OAAO,GAChC8B,IAASC,KACT,EAAE,QAAAV,MAAWd,KACb,EAAE,MAAMyB,GAAmB,eAAeC,EAAA,IAA0BnC,KACpE,EAAE,MAAMoC,GAAmB,eAAeC,EAAA,IAA0BjB,KACpEV,IAAIC,KAEJ2B,IAA0C;AAAA,IAC9C;AAAA,MACE,OAAO5B,EAAE,aAAa;AAAA,MACtB,WAAW;AAAA,MACX,KAAK;AAAA,IACP;AAAA,IACA;AAAA,MACE,OAAO;AAAA,MACP,WAAW;AAAA,MACX,KAAK;AAAA,IACP;AAAA,IACA;AAAA,MACE,OAAOA,EAAE,aAAa;AAAA,MACtB,WAAW;AAAA,MACX,KAAK;AAAA,MACL,OAAO;AAAA,MACP,OAAO6B,GAAiB;AACtB,qCACGC,GAAI,EAAA,QAAQ,CAAC,GAAG,CAAC,GACd,WAAAD,KAAS,CAAC,GAAG,IAAI,CAACV,4BACjBY,GACE,EAAA,UAAAZ,MAAS,SACPb,gBAAAA,EAAA,IAAA0B,GAAA,EAAI,OAAM,QAAQ,YAAK,CAAA,IAExB1B,gBAAAA,EAAA,IAAC0B,GAAI,EAAA,OAAM,WACT,UAAC1B,gBAAAA,MAAA2B,GAAA,EAAK,IAAI,oBAAoBd,CAAI,IAAK,UAAAA,EAAA,CAAK,EAC9C,CAAA,KANMA,CAQV,CACD,EACH,CAAA;AAAA,MAEJ;AAAA,IACF;AAAA,IACA;AAAA,MACE,OAAOnB,EAAE,qBAAqB;AAAA,MAC9B,WAAW;AAAA,MACX,KAAK;AAAA,IACP;AAAA,IACA;AAAA,MACE,OAAOA,EAAE,kBAAkB;AAAA,MAC3B,OAAO;AAAA,MACP,OAAO;AAAA,MACP,QAAQ,CAAC6B,MACP1B,gBAAAA,EAAA,KAAC+B,GACC,EAAA,UAAA;AAAA,QAAA5B,gBAAAA,EAAA;AAAA,UAAC6B;AAAA,UAAA;AAAA,YACC,YAAU;AAAA,YACV,MAAK;AAAA,YACL,MAAK;AAAA,YACL,MAAK;AAAA,YACL,SAAS,MAAM;AACK,cAAAT,EAAA;AAAA,gBAChB,eAAe;AAAA,kBACb,IAAIG,EAAM;AAAA,kBACV,MAAMA,EAAM;AAAA,kBACZ,OAAOA,EAAM;AAAA,gBACf;AAAA,cAAA,CACD;AAAA,YACH;AAAA,YAEC,YAAE,eAAe;AAAA,UAAA;AAAA,QACpB;AAAA,QACAvB,gBAAAA,EAAA;AAAA,UAAC6B;AAAA,UAAA;AAAA,YACC,YAAU;AAAA,YACV,QAAM;AAAA,YACN,MAAK;AAAA,YACL,MAAK;AAAA,YACL,MAAK;AAAA,YACL,SAAS,MAAM;AACb,cAAAd,EAAM,QAAQ;AAAA,gBACZ,OAAOrB,EAAE,sBAAsB;AAAA,gBAC/B,SACEM,gBAAAA,EAAA,IAAC8B,GAAU,EAAA,OAAO,CAACP,EAAM,IAAI,GAAI,UAAA7B,EAAE,0BAA0B,EAAE,MAAM6B,EAAM,KAAM,CAAA,GAAE;AAAA,gBAErF,MAAM,OAAO;AACX,wBAAMP,EAAO,QAAQ;AAAA,oBACnB,IAAIO,EAAM;AAAA,oBACV,MAAMA,EAAM;AAAA,kBAAA,CACb,GACDhB,EAAOxB,GAAQ,CAAQyB,MACdC,EAAQD,GAAM,CAASE,MAAA;;AACtB,0BAAAqB,KAAQnB,IAAAF,KAAA,gBAAAA,EAAO,SAAP,gBAAAE,EAAa,UAAU,OAAQC,EAAK,OAAOU,EAAM;AAC/D,oBAAIQ,OACKC,IAAAtB,KAAA,gBAAAA,EAAA,SAAA,QAAAsB,EAAM,OAAOD,GAAO;AAAA,kBAC7B,CACD,CACF,GACO9C,EAAA,QAAQS,EAAE,6BAA6B,CAAC;AAAA,gBAClD;AAAA,cAAA,CACD;AAAA,YACH;AAAA,YAEC,YAAE,eAAe;AAAA,UAAA;AAAA,QACpB;AAAA,MAAA,GACF;AAAA,IAEJ;AAAA,EAAA;AAIA,SAAAG,gBAAAA,EAAA;AAAA,IAACoC;AAAA,IAAA;AAAA,MACC,OAAOvC,EAAE,aAAa;AAAA,MACtB,OACEM,gBAAAA,EAAA;AAAA,QAAC6B;AAAA,QAAA;AAAA,UACC,YAAU;AAAA,UACV,MAAK;AAAA,UACL,4BAAOxD,GAAgB,EAAA;AAAA,UACvB,MAAK;AAAA,UACL,SAAS,MAAM;AACK,YAAA6C;UACpB;AAAA,UAEC,YAAE,sBAAsB;AAAA,QAAA;AAAA,MAC3B;AAAA,MAGF,UAAA;AAAA,QAAAlB,gBAAAA,EAAA;AAAA,UAACkC;AAAA,UAAA;AAAA,YACC,YAAU;AAAA,YACV,MAAK;AAAA,YACL,QAAAnD;AAAA,YACA,QAAO;AAAA,YACP,SAAAuC;AAAA,YACA,mBAAmB,CAAYa,MAAA;AACvB,oBAAA,EAAE,MAAAC,GAAM,OAAAC,EAAU,IAAAF;AACxB,qBAAO,EAAE,MAAMC,GAAM,OAAOC,EAAM;AAAA,YACpC;AAAA,UAAA;AAAA,QACF;AAAA,QACClB;AAAA,QACAE;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGP;","x_google_ignoreList":[0,1]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { u as t, j as i } from "./index-
|
|
1
|
+
import { u as t, j as i } from "./index-dkau8dN4.chunk.js";
|
|
2
2
|
import { Breadcrumb as m, Card as n, Skeleton as a, Descriptions as r } from "antd";
|
|
3
3
|
import { useParams as c, Link as p } from "react-router-dom";
|
|
4
|
-
import { P as u } from "./index-
|
|
5
|
-
import { u as x } from "./index-
|
|
4
|
+
import { P as u } from "./index-LFJ8CuhL.chunk.js";
|
|
5
|
+
import { u as x } from "./index-t9jv_VWg.chunk.js";
|
|
6
6
|
import "react";
|
|
7
7
|
import "react-dom";
|
|
8
8
|
const k = () => {
|
|
@@ -37,3 +37,4 @@ const k = () => {
|
|
|
37
37
|
export {
|
|
38
38
|
k as default
|
|
39
39
|
};
|
|
40
|
+
//# sourceMappingURL=index-sG30lYpd.chunk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-sG30lYpd.chunk.js","sources":["../src/pages/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=\"/permission/role\">{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,oBAAoB,UAAAN,EAAE,aAAa,GAAE;AAAA,UACvD;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,4 +1,4 @@
|
|
|
1
|
-
import { I as O, w as W, i as h, k as x, s as z, m as N, n as V, U as y, o as U, b as G, r as n, e as K } from "./index-
|
|
1
|
+
import { I as O, w as W, i as h, k as x, s as z, m as N, n as V, U as y, o as U, b as G, r as n, e as K } from "./index-dkau8dN4.chunk.js";
|
|
2
2
|
import L, { useRef as o, useCallback as w, useState as $ } from "react";
|
|
3
3
|
const P = O ? (e) => {
|
|
4
4
|
e();
|
|
@@ -210,3 +210,4 @@ export {
|
|
|
210
210
|
te as i,
|
|
211
211
|
Q as u
|
|
212
212
|
};
|
|
213
|
+
//# sourceMappingURL=index-t9jv_VWg.chunk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-t9jv_VWg.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 { request } from '../../../utils/request'\nimport type { PermissionEnumItem, RoleEnumItem, RoleV1, RoleV2 } from '../types'\n\nexport function useAllPermissions() {\n return useSWR('/api/usystem/user/allPermssions', url =>\n request<PermissionEnumItem[]>(url, { isGlobalNS: true }).then(response => response.data),\n )\n}\n\nexport function useAllPermissionsV2() {\n return useSWR('/api/usystem/user/allPermissionsV2', url =>\n request<{\n game: Game[]\n permission: PermissionEnumItem[]\n }>(url, { isGlobalNS: true }).then(response => response.data),\n )\n}\n\nexport function useAllRoles() {\n const { accessible } = usePermission('200005', { isGlobalNS: true })\n return useSWR(accessible ? '/api/usystem/role/all' : null, url =>\n request<RoleEnumItem[]>(url, { isGlobalNS: true }).then(response => response.data),\n )\n}\n\nexport function useRole(name: string) {\n const { usePermissionApiV2 } = useToolkitsContext()\n return useSWR(`/api/usystem/role/${usePermissionApiV2 ? 'infoV2' : 'info'}?name=${name}`, (url: string) =>\n request<RoleV1 | RoleV2>(url, { isGlobalNS: true }).then(response => response.data),\n )\n}\n\nexport function useCreateRole() {\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 isGlobalNS: true,\n }),\n )\n}\n\nexport function useUpdateRole() {\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 isGlobalNS: true,\n }),\n )\n}\n\nexport function useRemoveRole() {\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 isGlobalNS: true,\n }),\n )\n}\n\nexport function useCreateUser() {\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 isGlobalNS: true,\n }),\n )\n}\n\nexport function useUpdateUser() {\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 isGlobalNS: true,\n }),\n )\n}\n\nexport function useRemoveUser() {\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 isGlobalNS: 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","url","request","response","useAllPermissionsV2","useAllRoles","accessible","usePermission","useRole","name","usePermissionApiV2","useToolkitsContext","useCreateRole","useUpdateRole","useRemoveRole","useCreateUser","useUpdateUser","useRemoveUser"],"mappings":"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","x_google_ignoreList":[0]}
|
package/lib/index.d.ts
CHANGED
|
@@ -248,10 +248,13 @@ export declare enum QueryListAction {
|
|
|
248
248
|
Init = "init"
|
|
249
249
|
}
|
|
250
250
|
|
|
251
|
-
declare type QueryListMutator = <T = any>(key: string,
|
|
251
|
+
declare type QueryListMutator = <T = any>(key: string, data?: ListResponse<T> | Promise<ListResponse<T>> | MutatorCallback<ListResponse<T>>, opts?: MutatorOptions<ListResponse<T>>) => void;
|
|
252
|
+
|
|
253
|
+
declare interface QueryListPayload {
|
|
252
254
|
page: number;
|
|
253
255
|
size: number;
|
|
254
|
-
|
|
256
|
+
formValue?: any;
|
|
257
|
+
}
|
|
255
258
|
|
|
256
259
|
export declare interface QueryListProps<Item = any, Values = any, Response = any> extends Pick<TableProps<Item>, 'columns' | 'rowKey' | 'tableLayout' | 'expandable' | 'rowSelection' | 'bordered'> {
|
|
257
260
|
action: string;
|
|
@@ -276,11 +279,14 @@ export declare interface QueryListRef<Values = any> {
|
|
|
276
279
|
|
|
277
280
|
declare interface QueryListState {
|
|
278
281
|
keyMap: Map<string, string | null>;
|
|
279
|
-
|
|
282
|
+
payloadMap: Map<string, QueryListPayload>;
|
|
283
|
+
mutate: QueryListMutator;
|
|
284
|
+
getPayload(key: string): QueryListPayload;
|
|
285
|
+
setPayload(key: string, payload: Partial<{
|
|
280
286
|
page: number;
|
|
281
287
|
size: number;
|
|
282
|
-
|
|
283
|
-
|
|
288
|
+
formValue?: any;
|
|
289
|
+
}>, preventUpdate?: boolean): void;
|
|
284
290
|
}
|
|
285
291
|
|
|
286
292
|
declare type RecursivePartial<T> = NonNullable<T> extends object ? {
|
package/lib/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { C as i, D as u, F as n, G as m, H as p, q as l, L as d, N as x, P as y, v as L, Q as P, p as S, K as g, R as G, y as T, x as c, B as h, r as q, h as F, t as Q, e as R, z as f, f as k, a as v, b as B, u as C, E as D, J as E } from "./index-
|
|
1
|
+
import { C as i, D as u, F as n, G as m, H as p, q as l, L as d, N as x, P as y, v as L, Q as P, p as S, K as g, R as G, y as T, x as c, B as h, r as q, h as F, t as Q, e as R, z as f, f as k, a as v, b as B, u as C, E as D, J as E } from "./index-dkau8dN4.chunk.js";
|
|
2
2
|
import "react";
|
|
3
3
|
import "antd";
|
|
4
4
|
import "react-dom";
|
|
@@ -33,3 +33,4 @@ export {
|
|
|
33
33
|
D as useValidateToken,
|
|
34
34
|
E as withBaseRoutes
|
|
35
35
|
};
|
|
36
|
+
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
|