@kne-components/components-admin 1.1.13 → 1.1.14
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/build/asset-manifest.json +54 -54
- package/build/index.html +1 -1
- package/build/remoteEntry.js +1 -1
- package/build/remoteEntry.js.map +1 -1
- package/build/static/css/1102.eda3a27f.chunk.css +2 -0
- package/build/static/css/{1102.3ca9e260.chunk.css.map → 1102.eda3a27f.chunk.css.map} +1 -1
- package/build/static/css/1171.41997eff.chunk.css +2 -0
- package/build/static/css/{1171.158b1aab.chunk.css.map → 1171.41997eff.chunk.css.map} +1 -1
- package/build/static/css/286.eda3a27f.chunk.css +2 -0
- package/build/static/css/{286.3ca9e260.chunk.css.map → 286.eda3a27f.chunk.css.map} +1 -1
- package/build/static/css/4948.a2c9bce3.chunk.css +2 -0
- package/build/static/css/4948.a2c9bce3.chunk.css.map +1 -0
- package/build/static/css/5084.9c4dff93.chunk.css +2 -0
- package/build/static/css/{5084.0abcfe5c.chunk.css.map → 5084.9c4dff93.chunk.css.map} +1 -1
- package/build/static/css/5795.bed495d6.chunk.css +2 -0
- package/build/static/css/{5795.2089f97b.chunk.css.map → 5795.bed495d6.chunk.css.map} +1 -1
- package/build/static/css/5824.8283b1d4.chunk.css +2 -0
- package/build/static/css/5824.8283b1d4.chunk.css.map +1 -0
- package/build/static/css/6312.6ba46d08.chunk.css +12 -0
- package/build/static/css/6312.6ba46d08.chunk.css.map +1 -0
- package/build/static/css/8717.ae209ef4.chunk.css +2 -0
- package/build/static/css/{8717.e7869c8d.chunk.css.map → 8717.ae209ef4.chunk.css.map} +1 -1
- package/build/static/css/9654.764106e7.chunk.css +2 -0
- package/build/static/css/9654.764106e7.chunk.css.map +1 -0
- package/build/static/css/996.9d2b4d3b.chunk.css +2 -0
- package/build/static/css/996.9d2b4d3b.chunk.css.map +1 -0
- package/build/static/js/{1102.8fd18021.chunk.js → 1102.3ac375a3.chunk.js} +2 -2
- package/build/static/js/{1102.8fd18021.chunk.js.map → 1102.3ac375a3.chunk.js.map} +1 -1
- package/build/static/js/{286.a06c3446.chunk.js → 286.5ece0311.chunk.js} +2 -2
- package/build/static/js/{286.a06c3446.chunk.js.map → 286.5ece0311.chunk.js.map} +1 -1
- package/build/static/js/4836.083e2f60.chunk.js +2 -0
- package/build/static/js/4836.083e2f60.chunk.js.map +1 -0
- package/build/static/js/{4948.7cf36e32.chunk.js → 4948.795e3ab9.chunk.js} +3 -3
- package/build/static/js/{4948.7cf36e32.chunk.js.map → 4948.795e3ab9.chunk.js.map} +1 -1
- package/build/static/js/{5084.38ecfad3.chunk.js → 5084.236eb0ff.chunk.js} +2 -2
- package/build/static/js/{5084.38ecfad3.chunk.js.map → 5084.236eb0ff.chunk.js.map} +1 -1
- package/build/static/js/{5795.8c6dab1c.chunk.js → 5795.fb6a091e.chunk.js} +3 -3
- package/build/static/js/{5795.8c6dab1c.chunk.js.map → 5795.fb6a091e.chunk.js.map} +1 -1
- package/build/static/js/6034.ee8399ff.chunk.js +3 -0
- package/build/static/js/6034.ee8399ff.chunk.js.map +1 -0
- package/build/static/js/{6312.ae55152f.chunk.js → 6312.4c9f1c27.chunk.js} +2 -2
- package/build/static/js/{6312.ae55152f.chunk.js.map → 6312.4c9f1c27.chunk.js.map} +1 -1
- package/build/static/js/{7308.5343dcb8.chunk.js → 7308.c2f90940.chunk.js} +3 -3
- package/build/static/js/7308.c2f90940.chunk.js.map +1 -0
- package/build/static/js/8406.eeb46302.chunk.js +2 -0
- package/build/static/js/{8406.11747b72.chunk.js.map → 8406.eeb46302.chunk.js.map} +1 -1
- package/build/static/js/{9654.b3a1e8d5.chunk.js → 9654.e0636ac6.chunk.js} +2 -2
- package/build/static/js/{9654.b3a1e8d5.chunk.js.map → 9654.e0636ac6.chunk.js.map} +1 -1
- package/build/static/js/{9686.7613f2a2.chunk.js → 9686.957dffa1.chunk.js} +2 -2
- package/build/static/js/{9686.7613f2a2.chunk.js.map → 9686.957dffa1.chunk.js.map} +1 -1
- package/build/static/js/{975.92ffbfbe.chunk.js → 975.ea2ff0eb.chunk.js} +2 -2
- package/build/static/js/{975.92ffbfbe.chunk.js.map → 975.ea2ff0eb.chunk.js.map} +1 -1
- package/build/static/js/{996.09980a35.chunk.js → 996.b5cf38cb.chunk.js} +2 -2
- package/build/static/js/{996.09980a35.chunk.js.map → 996.b5cf38cb.chunk.js.map} +1 -1
- package/build/static/js/main.a9dc6d4b.js +2 -0
- package/build/static/js/{main.470c3d67.js.map → main.a9dc6d4b.js.map} +1 -1
- package/package.json +1 -1
- package/build/static/css/1102.3ca9e260.chunk.css +0 -2
- package/build/static/css/1171.158b1aab.chunk.css +0 -2
- package/build/static/css/286.3ca9e260.chunk.css +0 -2
- package/build/static/css/4948.15ab7103.chunk.css +0 -2
- package/build/static/css/4948.15ab7103.chunk.css.map +0 -1
- package/build/static/css/5084.0abcfe5c.chunk.css +0 -2
- package/build/static/css/5795.2089f97b.chunk.css +0 -2
- package/build/static/css/5824.bab34f55.chunk.css +0 -2
- package/build/static/css/5824.bab34f55.chunk.css.map +0 -1
- package/build/static/css/6312.a8c24d49.chunk.css +0 -12
- package/build/static/css/6312.a8c24d49.chunk.css.map +0 -1
- package/build/static/css/8717.e7869c8d.chunk.css +0 -2
- package/build/static/css/9654.acfd63d7.chunk.css +0 -2
- package/build/static/css/9654.acfd63d7.chunk.css.map +0 -1
- package/build/static/css/996.127fcc86.chunk.css +0 -2
- package/build/static/css/996.127fcc86.chunk.css.map +0 -1
- package/build/static/js/4836.6c08a20b.chunk.js +0 -2
- package/build/static/js/4836.6c08a20b.chunk.js.map +0 -1
- package/build/static/js/6034.192bc40e.chunk.js +0 -3
- package/build/static/js/6034.192bc40e.chunk.js.map +0 -1
- package/build/static/js/7308.5343dcb8.chunk.js.map +0 -1
- package/build/static/js/8406.11747b72.chunk.js +0 -2
- package/build/static/js/main.470c3d67.js +0 -2
- /package/build/static/js/{4948.7cf36e32.chunk.js.LICENSE.txt → 4948.795e3ab9.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{5795.8c6dab1c.chunk.js.LICENSE.txt → 5795.fb6a091e.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{6034.192bc40e.chunk.js.LICENSE.txt → 6034.ee8399ff.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{7308.5343dcb8.chunk.js.LICENSE.txt → 7308.c2f90940.chunk.js.LICENSE.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static/js/9686.7613f2a2.chunk.js","mappings":"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","sources":["webpack://@kne-components/components-admin/./src/components/UserTool/style.module.scss?828d","components/UserTool/locale/zh-CN.js","components/UserTool/withLocale.js","components/UserTool/locale/en-US.js","components/UserTool/UserTool.js","components/UserTool/RightOptions.js","components/LoginIllustration/README.md","components/UserSelect/README.md","components/GroupSelect/README.md","components/Signature/getColumns.js","components/Signature/index.js","components/Admin/context.js","components/Admin/locale/zh-CN.js","components/Admin/locale/en-US.js","components/Admin/withLocale.js","components/Admin/User/getColumns.js","components/Admin/User/FormInner.js","components/Admin/User/ResetPasswordFormInner.js","components/Admin/User/index.js","components/Admin/InitAdmin.js","components/Admin/index.js","components/Webhook/README.md","components/TenantAdmin/index.js","components/Language/README.md","components/TenantAdmin/locale/zh-CN.js","components/TenantAdmin/locale/en-US.js","components/TenantAdmin/withLocale.js","components/Webhook/getColumns.js","components/Webhook/FormInner.js","components/Webhook/Record/getColumns.js","components/Webhook/Record/index.js","components/Webhook/index.js","components/BizUnit/README.md","components/Task/README.md","components/GroupSelect/index.js","components/Signature/README.md","components/Authenticate/Authenticate.js","components/Authenticate/MainLayout.js","components/Authenticate/locale/zh-CN.js","components/Authenticate/locale/en-US.js","components/Authenticate/withLocale.js","components/Authenticate/UserInfoFormInner.js","components/Authenticate/SaveUserInfo.js","components/TenantAdmin/README.md","components/Tenant/README.md","components/Account/README.md","components/Authenticate/README.md","components/UserTool/README.md","components/Admin/README.md","components/UserSelect/index.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"icon\":\"style_icon__KSAP2__i3Id4\",\"content\":\"style_content__akCc4__i3Id4\",\"overlay\":\"style_overlay__IH+0B__i3Id4\",\"info\":\"style_info__5uvqI__i3Id4\",\"tenant\":\"style_tenant__pNb8v__i3Id4\",\"user-tool\":\"style_user-tool__CBaDm__i3Id4\",\"divider\":\"style_divider__jcjqI__i3Id4\",\"options-list\":\"style_options-list__RHknC__i3Id4\",\"options-list-item\":\"style_options-list-item__IOziy__i3Id4\",\"org\":\"style_org__N0zoJ__i3Id4\",\"tenant-item\":\"style_tenant-item__0Q6XJ__i3Id4\",\"current-sign\":\"style_current-sign__11f2P__i3Id4\",\"current-tenant\":\"style_current-tenant__mdi5f__i3Id4\",\"user-name\":\"style_user-name__q7lY4__i3Id4\",\"company\":\"style_company__wIKmA__i3Id4\",\"line\":\"style_line__rOiNk__i3Id4\"};","export default {\n UserToolUnnamed: '未命名',\n UserToolLogout: '退出登录'\n};\n","import { createWithIntlProvider } from '@kne/react-intl';\nimport zhCN from './locale/zh-CN';\nimport enUS from './locale/en-US';\n\nconst withLocale = createWithIntlProvider({\n defaultLocale: 'zh-CN',\n messages: {\n 'zh-CN': zhCN,\n 'en-US': enUS\n },\n namespace: 'components-admin:UserTool'\n});\n\nexport default withLocale;\n","export default {\n UserToolUnnamed: 'Unnamed',\n UserToolLogout: 'Logout'\n};\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { Divider, List, Dropdown, Space, Flex } from 'antd';\nimport { useLogout } from '@components/Account';\nimport style from './style.module.scss';\nimport withLocale from './withLocale';\nimport { useIntl } from '@kne/react-intl';\n\nconst UserTool = createWithRemoteLoader({\n modules: ['components-core:Image', 'components-core:Icon']\n})(withLocale(({ remoteModules, avatar, name, email, storeKeys = { token: 'X-User-Token' }, domain, list, children = null }) => {\n const [Image, Icon] = remoteModules;\n const logout = useLogout({ storeKeys, domain });\n const { formatMessage } = useIntl();\n return (\n <Dropdown\n trigger=\"click\"\n rootClassName={style['overlay']}\n popupRender={() => (\n <Space direction={'vertical'} className={style['content']}>\n <Space className={style['info']}>\n <Image.Avatar id={avatar} size={48} />\n <div>\n <div className={style['line']}>{name || formatMessage({ id: 'UserToolUnnamed' })}</div>\n <div className={style['line']}>{email || '-'}</div>\n </div>\n </Space>\n <Divider className={style['divider']} />\n {children}\n <List className={style['options-list']}>\n {list &&\n list.length > 0 &&\n list.map((item, index) => {\n return (\n <List.Item key={index} className={style['options-list-item']} onClick={item.onClick}>\n <Flex gap={8} flex={1}>\n {item.iconType && <Icon type={item.iconType} />}\n <Flex flex={1}>{item.label}</Flex>\n </Flex>\n </List.Item>\n );\n })}\n <List.Item\n className={style['options-list-item']}\n onClick={logout}>\n <Flex gap={8} flex={1}>\n <Icon type=\"icon-tuichudenglu\" />\n <span>{formatMessage({ id: 'UserToolLogout' })}</span>\n </Flex>\n </List.Item>\n </List>\n </Space>\n )}\n arrow={false}\n transitionName={'ant-slide-up'}>\n <Space className={style['user-tool']}>\n <Image.Avatar id={avatar} size={32} />\n <div className={style['user-name']}>{name || formatMessage({ id: 'UserToolUnnamed' })}</div>\n <Icon className={style['icon']} type=\"triangle-down\" size={12} />\n </Space>\n </Dropdown>\n );\n}));\n\nexport default UserTool;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport UserTool from './UserTool';\nimport Language from '@components/Account/Language';\nimport { Flex } from 'antd';\n\nconst RightOptions = createWithRemoteLoader({\n modules: ['components-core:Global@GlobalValue']\n})(({ remoteModules }) => {\n const [GlobalValue] = remoteModules;\n\n return (\n <Flex gap={8}>\n <Language />\n <GlobalValue globalKey=\"userInfo\">\n {({ value }) => {\n if (!value) {\n return null;\n }\n const { userInfo, tenantUser, tenant } = value;\n return (\n <UserTool\n avatar={tenantUser ? tenantUser.avatar : userInfo.avatar}\n name={tenantUser ? tenantUser.name : userInfo.nickname}\n email={tenantUser ? tenantUser.email : userInfo.email}\n tenant={tenant}\n orgName={tenantUser && (tenantUser?.tenantOrgs || []).map(item => item.name).join(',')}\n />\n );\n }}\n </GlobalValue>\n </Flex>\n );\n});\n\nexport default RightOptions;\n","import * as component_9 from '@components/LoginIllustration';\nconst readmeConfig = {\n name: `LoginIllustration`,\n summary: `<p>用来实现一些精美的登录动画</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `LoginIllustration_f6cdf`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const {default:LoginIllustration} = _LoginIllustration;\nconst BaseExample = ()=>{\n return <LoginIllustration />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_LoginIllustration\",\n packageName: \"@components/LoginIllustration\",\n component: component_9\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_15 from '@components/UserSelect';\nconst readmeConfig = {\n name: `UserSelect`,\n summary: `<p>选择一个用户</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `UserSelect_48d48`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const { default: UserSelect } = _UserSelect;\nconst BaseExample = () => {\n return <UserSelect />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_UserSelect\",\n packageName: \"@components/UserSelect\",\n component: component_15\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_5 from '@components/GroupSelect';\nconst readmeConfig = {\n name: `GroupSelect`,\n summary: `<p>用于选择一个分组标签</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `GroupSelect_3b3e8`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const { default: GroupSelect } = _GroupSelect;\nconst BaseExample = () => {\n return <GroupSelect />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_GroupSelect\",\n packageName: \"@components/GroupSelect\",\n component: component_5\n}]\n}]\n }\n};\nexport default readmeConfig;\n","const getColumns = () => {\n return [\n {\n name: 'appId',\n title: 'AppId',\n type: 'other'\n },\n {\n name: 'secretKey',\n title: 'SecretKey',\n type: 'other'\n },\n {\n name: 'user',\n title: '所属用户',\n type: 'other',\n valueOf: ({ user }) => {\n return user.nickname || user.email || user.phone;\n }\n },\n {\n name: 'description',\n title: '描述',\n type: 'description'\n },\n {\n name: 'lastVisitedAt',\n title: '最后访问时间',\n type: 'datetime'\n },\n {\n name: 'status',\n title: '状态',\n type: 'tag',\n valueOf: (item, { name }) => {\n if (item[name] === 0) {\n return { type: 'success', text: '启用' };\n }\n return { type: 'danger', text: '禁用' };\n }\n },\n {\n name: 'createdAt',\n title: '创建时间',\n type: 'datetime'\n }\n ];\n};\n\nexport default getColumns;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport getColumns from './getColumns';\nimport { useRef } from 'react';\nimport { Space, Button, App, Flex, Alert } from 'antd';\nimport UserSelect from '@components/UserSelect';\n\nconst Signature = createWithRemoteLoader({\n modules: [\n 'components-core:Layout@TablePage',\n 'components-core:Global@usePreset',\n 'components-core:FormInfo',\n 'components-core:FormInfo@useFormModal',\n 'components-core:InfoPage@CentralContent'\n ]\n})(({ remoteModules }) => {\n const [TablePage, usePreset, FormInfo, useFormModal, CentralContent] = remoteModules;\n const { ajax, apis } = usePreset();\n const ref = useRef(null);\n const { TextArea, Input } = FormInfo.fields;\n const formModal = useFormModal();\n const { modal } = App.useApp();\n const { message } = App.useApp();\n return (\n <TablePage\n {...Object.assign({}, apis.signature.list)}\n pagination={{ paramsType: 'params' }}\n name=\"signature-list\"\n ref={ref}\n page={{\n titleExtra: (\n <Space align=\"center\">\n <Button\n type=\"primary\"\n onClick={() => {\n const formModalApi = formModal({\n title: '添加密钥',\n size: 'small',\n formProps: {\n onSubmit: async data => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.signature.create, {\n data\n })\n );\n if (resData.code !== 0) {\n return;\n }\n ref.current.reload();\n formModalApi.close();\n modal.info({\n icon: null,\n size: 'large',\n width: '800px',\n title: '密钥生成成功',\n content: (\n <Flex vertical gap={10}>\n <Alert type=\"error\" message=\"请妥善保存当前密钥,关闭窗口后将不能再获取到,请勿泄漏\" />\n <CentralContent\n dataSource={resData.data}\n col={1}\n columns={[\n {\n name: 'appId',\n title: 'AppId'\n },\n {\n name: 'secretKey',\n title: 'SecretKey'\n }\n ]}\n />\n </Flex>\n )\n });\n }\n },\n children: (\n <FormInfo\n column={1}\n list={[\n <UserSelect name=\"userId\" label=\"所属用户\" single interceptor=\"object-output-value\" />,\n <TextArea name=\"description\" label=\"描述\" maxLength={100} />\n ]}\n />\n )\n });\n }}\n >\n 添加密钥\n </Button>\n </Space>\n )\n }}\n columns={[\n ...getColumns(),\n {\n name: 'options',\n title: '操作',\n type: 'options',\n fixed: 'right',\n valueOf: item => {\n return [\n {\n children: '验证',\n onClick: () => {\n formModal({\n title: '验证密钥',\n size: 'small',\n saveText: '验证',\n formProps: {\n rules: {\n NUM: value => {\n if (/^[0-9]+$/.test(value)) {\n return {\n result: true,\n errMsg: ''\n };\n }\n return {\n result: false,\n errMsg: '请输入数字'\n };\n }\n },\n data: { appId: item.appId, ...item },\n onSubmit: async data => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.signature.verify, {\n data: { appId: item.appId, ...data }\n })\n );\n\n if (resData.code !== 0) {\n return;\n }\n if (resData.data.result) {\n message.success('验证成功');\n } else {\n message.error(`验证失败,${resData.data.message}`);\n }\n }\n },\n children: (\n <FormInfo\n column={1}\n list={[\n <TextArea name=\"signature\" label=\"签名\" rule=\"REQ\" />,\n <Input name=\"timestamp\" label=\"时间戳\" rule=\"REQ NUM\" />,\n <Input name=\"expire\" label=\"过期时间\" rule=\"REQ NUM\" />\n ]}\n />\n )\n });\n }\n },\n {\n children: item.status === 0 ? '禁用' : '启用',\n title: '温馨提示',\n message:\n item.status === 0 ? (\n <div>\n <div>禁用此密钥后,将拒绝此密钥的所有请求。</div>\n <div>是否确定要禁用此密钥?</div>\n </div>\n ) : (\n <div>\n <div>启用此密钥后,将允许此密钥访问请求。</div>\n <div>是否确定要启用此密钥?</div>\n </div>\n ),\n isModal: true,\n isDelete: false,\n onClick: async () => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.signature.update, {\n data: { appId: item.appId, status: item.status === 0 ? 1 : 0 }\n })\n );\n\n if (resData.code !== 0) {\n return;\n }\n message.success('操作成功');\n ref.current.reload();\n }\n },\n {\n children: '删除',\n confirm: true,\n hidden: item.status === 0,\n onClick: async () => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.signature.remove, {\n data: { appId: item.appId }\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success('删除成功');\n ref.current.reload();\n }\n }\n ];\n }\n }\n ]}\n />\n );\n});\n\nexport default Signature;\n","import { createContext, useContext } from 'react';\n\nconst context = createContext('/');\n\nexport const { Provider } = context;\n\nexport const useBaseUrl = baseUrlProp => {\n const target = useContext(context);\n return baseUrlProp || target?.baseUrl;\n};\n\nexport const useProps = () => {\n return useContext(context);\n};\n\nexport default context;\n","const locale = {\n // User List columns\n Avatar: '头像',\n Nickname: '昵称',\n Email: '邮箱',\n Phone: '电话',\n IsSuperAdmin: '是否超级管理员',\n Status: '状态',\n Description: '个人简介',\n\n // Status values\n Yes: '是',\n No: '否',\n Normal: '正常',\n NotActivated: '初始化未激活',\n Disabled: '已禁用',\n Closed: '已关闭',\n Other: '其他',\n\n // Actions\n AddUser: '添加用户',\n AddSuccess: '添加成功',\n EditUser: '编辑用户',\n EditUserInfo: '编辑用户信息',\n DeleteSuccess: '删除成功',\n SaveSuccess: '保存成功',\n Operation: '操作',\n Keyword: '关键字',\n\n // FormInner labels\n UserAvatar: '头像',\n UserNickname: '昵称',\n UserEmail: '邮箱',\n UserPhone: '手机',\n UserDescription: '个人简介',\n\n // Reset Password\n Password: '密码',\n RepeatPassword: '重复密码',\n ResetPassword: '重置密码',\n ModifyPassword: '修改密码',\n ModifyPasswordSuccess: '修改密码成功',\n\n // More Actions\n SetSuperAdmin: '设置超管',\n CancelSuperAdmin: '取消超管',\n SetSuperAdminConfirm: '确定要设置账号为超管吗?',\n CancelSuperAdminConfirm: '确定要取消账号的超管权限吗?',\n SetNormal: '设置为正常',\n SetNormalConfirm: '确定要设置账号为正常吗?',\n SetNormalSuccess: '账号已开启',\n CloseUser: '关闭',\n CloseUserConfirm: '确定要关闭该账号吗?',\n CloseUserSuccess: '账号已关闭',\n SetStatusSuccess: '设置成功',\n\n // Filter labels\n FilterEmail: '邮箱',\n FilterPhone: '电话',\n FilterStatus: '状态',\n FilterIsAdmin: '是否管理员',\n\n // Confirm\n Confirm: '确认',\n\n // InitAdmin\n InitSystem: '初始化系统',\n InitSystemDesc: '当前用户将被初始化为系统的超级管理员,本操作只能执行一次,执行完成后由该用户来执行其他的管理操作。',\n InitSuccess: '初始化管理员成功!'\n};\n\nexport default locale;\n","const locale = {\n // User List columns\n Avatar: 'Avatar',\n Nickname: 'Nickname',\n Email: 'Email',\n Phone: 'Phone',\n IsSuperAdmin: 'Is Super Admin',\n Status: 'Status',\n Description: 'Description',\n\n // Status values\n Yes: 'Yes',\n No: 'No',\n Normal: 'Normal',\n NotActivated: 'Not Activated',\n Disabled: 'Disabled',\n Closed: 'Closed',\n Other: 'Other',\n\n // Actions\n AddUser: 'Add User',\n AddSuccess: 'Added successfully',\n EditUser: 'Edit User',\n EditUserInfo: 'Edit User Info',\n DeleteSuccess: 'Deleted successfully',\n SaveSuccess: 'Saved successfully',\n Operation: 'Operation',\n Keyword: 'Keyword',\n\n // FormInner labels\n UserAvatar: 'Avatar',\n UserNickname: 'Nickname',\n UserEmail: 'Email',\n UserPhone: 'Phone',\n UserDescription: 'Description',\n\n // Reset Password\n Password: 'Password',\n RepeatPassword: 'Repeat Password',\n ResetPassword: 'Reset Password',\n ModifyPassword: 'Modify Password',\n ModifyPasswordSuccess: 'Password modified successfully',\n\n // More Actions\n SetSuperAdmin: 'Set Super Admin',\n CancelSuperAdmin: 'Cancel Super Admin',\n SetSuperAdminConfirm: 'Are you sure to set this account as super admin?',\n CancelSuperAdminConfirm: 'Are you sure to cancel super admin permission for this account?',\n SetNormal: 'Set Normal',\n SetNormalConfirm: 'Are you sure to set this account as normal?',\n SetNormalSuccess: 'Account has been opened',\n CloseUser: 'Close',\n CloseUserConfirm: 'Are you sure to close this account?',\n CloseUserSuccess: 'Account has been closed',\n SetStatusSuccess: 'Set status successfully',\n\n // Filter labels\n FilterEmail: 'Email',\n FilterPhone: 'Phone',\n FilterStatus: 'Status',\n FilterIsAdmin: 'Is Admin',\n\n // Confirm\n Confirm: 'Confirm',\n\n // InitAdmin\n InitSystem: 'Initialize System',\n InitSystemDesc: 'The current user will be initialized as the super administrator of the system. This operation can only be performed once. After completion, the user will perform other management operations.',\n InitSuccess: 'Initialized administrator successfully!'\n};\n\nexport default locale;\n","import { createWithIntlProvider } from '@kne/react-intl';\nimport zhCN from './locale/zh-CN';\nimport enUS from './locale/en-US';\n\nconst withLocale = createWithIntlProvider({\n defaultLocale: 'zh-CN',\n messages: {\n 'zh-CN': zhCN,\n 'en-US': enUS\n },\n namespace: 'components-admin:Admin'\n});\n\nexport default withLocale;\n","const getColumns = ({ formatMessage }) => {\n return [\n {\n name: 'avatar',\n title: formatMessage({ id: 'Avatar' }),\n type: 'avatar',\n valueOf: (item, { name }) => Object.assign({}, { gender: item['gender'] || 'M' }, { id: item[name] })\n },\n {\n name: 'nickname',\n title: formatMessage({ id: 'Nickname' }),\n type: 'mainInfo'\n },\n {\n name: 'email',\n title: formatMessage({ id: 'Email' }),\n type: 'other'\n },\n {\n name: 'phone',\n title: formatMessage({ id: 'Phone' }),\n type: 'serialNumber'\n },\n {\n name: 'isSuperAdmin',\n title: formatMessage({ id: 'IsSuperAdmin' }),\n type: 'other',\n valueOf: (item, { name }) => {\n return item[name] === true ? formatMessage({ id: 'Yes' }) : formatMessage({ id: 'No' });\n }\n },\n {\n name: 'status',\n title: formatMessage({ id: 'Status' }),\n type: 'tag',\n valueOf: (item, { name }) => {\n if (item[name] === 0) {\n return { type: 'success', text: formatMessage({ id: 'Normal' }) };\n }\n if (item[name] === 10) {\n return { text: formatMessage({ id: 'NotActivated' }) };\n }\n if (item[name] === 11) {\n return { type: 'danger', text: formatMessage({ id: 'Disabled' }) };\n }\n if (item[name] === 12) {\n return { type: 'danger', text: formatMessage({ id: 'Closed' }) };\n }\n\n return { text: formatMessage({ id: 'Other' }) };\n }\n },\n {\n name: 'description',\n title: formatMessage({ id: 'Description' }),\n type: 'description'\n }\n ];\n};\n\nexport default getColumns;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { useIntl } from '@kne/react-intl';\nimport withLocale from '../withLocale';\n\nconst FormInner = createWithRemoteLoader({\n modules: ['components-core:FormInfo', 'components-core:FormInfo@formModule']\n})(withLocale(({ remoteModules }) => {\n const [FormInfo, formModule] = remoteModules;\n const { formatMessage } = useIntl();\n const { Input, TextArea, PhoneNumber, Avatar } = formModule;\n return (\n <FormInfo\n column={1}\n list={[\n <Avatar name=\"avatar\" label={formatMessage({ id: 'UserAvatar' })} labelHidden interceptor=\"photo-string\" />,\n <Input name=\"nickname\" label={formatMessage({ id: 'UserNickname' })} rule=\"LEN-0-100\" />,\n <Input name=\"email\" label={formatMessage({ id: 'UserEmail' })} rule=\"EMAIL ACCOUNT_IS_EXISTS\" realtime />,\n <PhoneNumber name=\"phone\" label={formatMessage({ id: 'UserPhone' })} rule=\"ACCOUNT_IS_EXISTS\" format=\"string\" />,\n <TextArea name=\"description\" label={formatMessage({ id: 'UserDescription' })} />\n ]}\n />\n );\n}));\n\nexport default FormInner;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { useIntl } from '@kne/react-intl';\nimport withLocale from '../withLocale';\n\nconst ResetPasswordFormInner = createWithRemoteLoader({\n modules: ['components-core:FormInfo']\n})(withLocale(({ remoteModules }) => {\n const [FormInfo] = remoteModules;\n const { formatMessage } = useIntl();\n const { Input } = FormInfo.fields;\n return (\n <FormInfo\n column={1}\n list={[\n <Input.Password name=\"password\" label={formatMessage({ id: 'Password' })} rule=\"REQ LEN-6-50\" />,\n <Input.Password name=\"repeatPwd\" label={formatMessage({ id: 'RepeatPassword' })} rule=\"REQ LEN-6-50 REPEAT-password\" />\n ]}\n />\n );\n}));\n\nexport default ResetPasswordFormInner;\n","import { useState, useRef } from 'react';\nimport { createWithRemoteLoader } from '@kne/remote-loader';\nimport { Space, Button, App } from 'antd';\nimport { useIntl } from '@kne/react-intl';\nimport withLocale from '../withLocale';\nimport getColumns from './getColumns';\nimport FormInner from './FormInner';\nimport ResetPasswordFormInner from './ResetPasswordFormInner';\nimport md5 from 'md5';\nimport get from 'lodash/get';\n\nconst UserInner = createWithRemoteLoader({\n modules: ['components-core:Layout@TablePage', 'components-core:Filter', 'components-core:FormInfo@useFormModal', 'components-core:Global@usePreset']\n})(({ remoteModules }) => {\n const [TablePage, Filter, useFormModal, usePreset] = remoteModules;\n const { formatMessage } = useIntl();\n const [filter, setFilter] = useState([]);\n const { SearchInput, getFilterValue, fields: filterFields } = Filter;\n const { InputFilterItem, AdvancedSelectFilterItem } = filterFields;\n const { ajax, apis } = usePreset();\n const formModal = useFormModal();\n const { message } = App.useApp();\n const ref = useRef(null);\n const filterValue = getFilterValue(filter);\n return (\n <TablePage\n {...Object.assign({}, apis.admin.getUserList, { params: { filter: filterValue } })}\n pagination={{ paramsType: 'params' }}\n name=\"user-list\"\n ref={ref}\n columns={[\n ...getColumns({ formatMessage }),\n {\n name: 'options',\n title: formatMessage({ id: 'Operation' }),\n type: 'options',\n fixed: 'right',\n valueOf: item => {\n return [\n {\n children: formatMessage({ id: 'EditUser' }),\n onClick: () => {\n const modalApi = formModal({\n title: formatMessage({ id: 'EditUserInfo' }),\n size: 'small',\n children: <FormInner />,\n formProps: {\n data: Object.assign({}, item),\n onSubmit: async data => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.admin.saveUser, {\n data: Object.assign({}, data, { id: item.id })\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'SaveSuccess' }));\n ref.current.reload();\n modalApi.close();\n }\n }\n });\n }\n },\n {\n children: formatMessage({ id: 'ModifyPassword' }),\n onClick: () => {\n const modalApi = formModal({\n title: formatMessage({ id: 'ModifyPassword' }),\n size: 'small',\n children: <ResetPasswordFormInner />,\n formProps: {\n onSubmit: async data => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.admin.resetUserPassword, {\n data: {\n password: md5(data.password),\n userId: item.id\n }\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'ModifyPasswordSuccess' }));\n modalApi.close();\n }\n }\n });\n }\n },\n get(item, 'isSuperAdmin') === true\n ? {\n children: formatMessage({ id: 'CancelSuperAdmin' }),\n message: formatMessage({ id: 'CancelSuperAdminConfirm' }),\n isDelete: false,\n onClick: async () => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.admin.setSuperAdmin, {\n data: { status: false, userId: item.id }\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'SetStatusSuccess' }));\n ref.current.reload();\n }\n }\n : {\n children: formatMessage({ id: 'SetSuperAdmin' }),\n message: formatMessage({ id: 'SetSuperAdminConfirm' }),\n isDelete: false,\n onClick: async () => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.admin.setSuperAdmin, {\n data: { status: true, userId: item.id }\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'SetStatusSuccess' }));\n ref.current.reload();\n }\n },\n ...(() => {\n const list = [];\n if (item.status !== 0) {\n list.push({\n confirm: true,\n children: formatMessage({ id: 'SetNormal' }),\n message: formatMessage({ id: 'SetNormalConfirm' }),\n isDelete: false,\n onClick: async () => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.admin.setUserNormal, {\n data: {\n id: item.id\n }\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'SetNormalSuccess' }));\n ref.current.reload();\n }\n });\n }\n if (item.status !== 12) {\n list.push({\n isDelete: true,\n confirm: true,\n children: formatMessage({ id: 'CloseUser' }),\n message: formatMessage({ id: 'CloseUserConfirm' }),\n okText: formatMessage({ id: 'Confirm' }),\n onClick: async () => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.admin.setUserClose, {\n data: {\n id: item.id\n }\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'CloseUserSuccess' }));\n ref.current.reload();\n }\n });\n }\n return list;\n })()\n ];\n }\n }\n ]}\n page={{\n filter: {\n value: filter,\n onChange: setFilter,\n list: [\n [\n <InputFilterItem label={formatMessage({ id: 'FilterEmail' })} name=\"email\" />,\n <InputFilterItem label={formatMessage({ id: 'FilterPhone' })} name=\"phone\" />,\n <AdvancedSelectFilterItem\n label={formatMessage({ id: 'FilterStatus' })}\n name=\"status\"\n single\n api={{\n loader: () => {\n return {\n pageData: [\n { label: formatMessage({ id: 'Normal' }), value: 0 },\n {\n label: formatMessage({ id: 'NotActivated' }),\n value: 10\n },\n { label: formatMessage({ id: 'Closed' }), value: 12 }\n ]\n };\n }\n }}\n />,\n <AdvancedSelectFilterItem\n label={formatMessage({ id: 'FilterIsAdmin' })}\n name=\"isSuperAdmin\"\n single\n api={{\n loader: () => {\n return {\n pageData: [\n { label: formatMessage({ id: 'Yes' }), value: true },\n { label: formatMessage({ id: 'No' }), value: false }\n ]\n };\n }\n }}\n />\n ]\n ]\n },\n titleExtra: (\n <Space align=\"center\">\n <SearchInput name=\"nickname\" label={formatMessage({ id: 'Nickname' })} />\n <Button\n type=\"primary\"\n onClick={() => {\n const modalApi = formModal({\n title: formatMessage({ id: 'AddUser' }),\n size: 'small',\n children: <FormInner />,\n formProps: {\n onSubmit: async data => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.admin.addUser, {\n data: Object.assign({}, data)\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'AddSuccess' }));\n ref.current.reload();\n modalApi.close();\n }\n }\n });\n }}\n >\n {formatMessage({ id: 'AddUser' })}\n </Button>\n </Space>\n )\n }}\n />\n );\n});\n\nexport default withLocale(UserInner);\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { useEffect } from 'react';\nimport useRefCallback from '@kne/use-ref-callback';\nimport { useNavigate } from 'react-router-dom';\nimport { Result, App } from 'antd';\nimport { useIntl } from '@kne/react-intl';\nimport withLocale from './withLocale';\n\nconst InitAdminInner = createWithRemoteLoader({\n modules: ['components-core:Global@usePreset']\n})(({ remoteModules, baseUrl = '/admin' }) => {\n const [usePreset] = remoteModules;\n const { ajax, apis } = usePreset();\n const { message } = App.useApp();\n const { formatMessage } = useIntl();\n const navigate = useNavigate();\n const initAdmin = useRefCallback(async () => {\n const { data: resData } = await ajax(Object.assign({}, apis.admin.initSuperAdmin));\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'InitSuccess' }));\n navigate(baseUrl, { replace: true });\n });\n\n useEffect(() => {\n initAdmin();\n }, [initAdmin]);\n return (\n <Result\n status=\"warning\"\n title={formatMessage({ id: 'InitSystem' })}\n subTitle={formatMessage({ id: 'InitSystemDesc' })}\n />\n );\n});\n\nexport default withLocale(InitAdminInner);\n","import { Routes, Route, Navigate } from 'react-router-dom';\nimport { Provider } from './context';\nimport User from './User';\n\nconst Admin = ({ baseUrl, ...props }) => {\n return (\n <Provider value={{ baseUrl, ...props }}>\n <Routes>\n <Route path=\"user\" element={<User />} />\n <Route element={<Navigate to={`${baseUrl}/user`} replace />} />\n </Routes>\n </Provider>\n );\n};\n\nexport default Admin;\n\nexport { default as InitAdmin } from './InitAdmin';\n","import * as component_17 from '@components/Webhook';\nconst readmeConfig = {\n name: `Webhook`,\n summary: `<p>用来实现webhook管理</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `Webhook_150c7`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const { default: Webhook } = _Webhook;\nconst BaseExample = () => {\n return <Webhook />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Webhook\",\n packageName: \"@components/Webhook\",\n component: component_17\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import ChildrenRouter from '@kne/app-children-router';\nimport withLocale from './withLocale';\n\nconst TenantAdminInner = ({ baseUrl, ...props }) => {\n return (\n <ChildrenRouter\n {...props}\n baseUrl={`${baseUrl}/tenant`}\n list={[\n {\n index: true,\n loader: () => import('./List')\n },\n {\n path: 'detail',\n loader: () => import('./TabDetail')\n }\n ]}\n />\n );\n};\n\nexport default withLocale(TenantAdminInner);\n","import * as component_8 from '@components/Language';\nconst readmeConfig = {\n name: `Language`,\n summary: `<p>切换系统语言</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `Language_4994a`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const {default:Language} = _Language;\nconst BaseExample = ()=>{\n return <Language />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Language\",\n packageName: \"@components/Language\",\n component: component_8\n}]\n}]\n }\n};\nexport default readmeConfig;\n","const locale = {\n // List columns\n ID: 'ID',\n Name: '名称',\n Status: '状态',\n Description: '描述',\n CreatedAt: '添加时间',\n Open: '开启',\n Close: '关闭',\n All: '全部',\n\n // Actions\n AddTenant: '添加租户',\n EditTenant: '编辑租户',\n AddSuccess: '添加成功',\n RemoveTenantSuccess: '删除租户成功',\n SetStatusSuccess: '设置成功',\n Edit: '编辑',\n Delete: '删除',\n Save: '保存',\n SaveSuccess: '保存成功',\n Operation: '操作',\n Keyword: '关键字',\n OpenTenantConfirm: '确定要开启当前租户吗?',\n CloseTenantConfirm: '确定要关闭当前租户吗?',\n\n // FormInner labels\n TenantName: '租户名称',\n AccountCount: '开通账号数量',\n ServiceTime: '服务时间',\n Logo: 'Logo',\n ThemeColor: '主题色',\n TenantDescription: '描述',\n Type: '类型',\n Key: '键',\n Value: '值',\n IsSecret: '是否密钥',\n\n // Custom Components\n EnvironmentVariables: '环境变量',\n AddEnvironmentVariable: '添加环境变量',\n AddCustomComponent: '添加自定义组件',\n Preview: '预览',\n Copy: '复制',\n EditCustomComponent: '编辑自定义组件',\n CopySuccess: '复制成功',\n ModifySuccess: '修改成功',\n DeleteSuccess: '删除成功',\n\n // Detail\n TenantDetail: '租户详情',\n BasicInfo: '基本信息',\n CompanyInfo: '公司信息',\n OrgStructure: '组织架构',\n UserList: '用户列表',\n Permission: '权限',\n Setting: '设置',\n AccountManagement: '账号管理',\n DetailInfo: '详情信息',\n ServiceTimeRange: '服务时间',\n AccountCountTag: '开通账号数'\n};\n\nexport default locale;\n","const locale = {\n // List columns\n ID: 'ID',\n Name: 'Name',\n Status: 'Status',\n Description: 'Description',\n CreatedAt: 'Created At',\n Open: 'Open',\n Close: 'Close',\n All: 'All',\n\n // Actions\n AddTenant: 'Add Tenant',\n EditTenant: 'Edit Tenant',\n AddSuccess: 'Added successfully',\n RemoveTenantSuccess: 'Tenant deleted successfully',\n SetStatusSuccess: 'Set status successfully',\n Edit: 'Edit',\n Delete: 'Delete',\n Save: 'Save',\n SaveSuccess: 'Saved successfully',\n Operation: 'Operation',\n Keyword: 'Keyword',\n OpenTenantConfirm: 'Are you sure you want to open the current tenant?',\n CloseTenantConfirm: 'Are you sure you want to close the current tenant?',\n\n // FormInner labels\n TenantName: 'Tenant Name',\n AccountCount: 'Account Count',\n ServiceTime: 'Service Time',\n Logo: 'Logo',\n ThemeColor: 'Theme Color',\n TenantDescription: 'Description',\n Type: 'Type',\n Key: 'Key',\n Value: 'Value',\n IsSecret: 'Is Secret',\n\n // Custom Components\n EnvironmentVariables: 'Environment Variables',\n AddEnvironmentVariable: 'Add Environment Variable',\n AddCustomComponent: 'Add Custom Component',\n Preview: 'Preview',\n Copy: 'Copy',\n EditCustomComponent: 'Edit Custom Component',\n CopySuccess: 'Copied successfully',\n ModifySuccess: 'Modified successfully',\n DeleteSuccess: 'Deleted successfully',\n\n // Detail\n TenantDetail: 'Tenant Detail',\n BasicInfo: 'Basic Info',\n CompanyInfo: 'Company Info',\n OrgStructure: 'Organization Structure',\n UserList: 'User List',\n Permission: 'Permission',\n Setting: 'Settings',\n AccountManagement: 'Account Management',\n DetailInfo: 'Detail Info',\n ServiceTimeRange: 'Service Time',\n AccountCountTag: 'Account Count'\n};\n\nexport default locale;\n","import { createWithIntlProvider } from '@kne/react-intl';\nimport zhCN from './locale/zh-CN';\nimport enUS from './locale/en-US';\n\nconst withLocale = createWithIntlProvider({\n defaultLocale: 'zh-CN',\n messages: {\n 'zh-CN': zhCN,\n 'en-US': enUS\n },\n namespace: 'components-admin:TenantAdmin'\n});\n\nexport default withLocale;\n","const getColumns = ({ renderCopyInvokeUrl, renderCopySignature }) => {\n return [\n {\n name: 'id',\n title: 'ID',\n type: 'serialNumber'\n },\n {\n name: 'name',\n title: '名称'\n },\n {\n name: 'url',\n title: '调用路径',\n type: 'otherSmall',\n valueOf: item => {\n return renderCopyInvokeUrl(item);\n }\n },\n {\n name: 'signature',\n title: '签名',\n type: 'otherSmall',\n valueOf: item => {\n return renderCopySignature(item);\n }\n },\n {\n name: 'signatureLocation',\n title: '签名位置'\n },\n {\n name: 'inputLocation',\n title: '输入位置'\n },\n {\n name: 'shouldEncryptVerify',\n title: '是否验证完整性',\n valueOf: item => {\n return item.shouldEncryptVerify ? '是' : '否';\n }\n }\n ];\n};\n\nexport default getColumns;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\n\nconst FormInner = createWithRemoteLoader({\n modules: ['components-core:FormInfo']\n})(({ remoteModules }) => {\n const [FormInfo] = remoteModules;\n const { useFormContext } = FormInfo;\n const { Input, DatePicker, Switch } = FormInfo.fields;\n const { formData } = useFormContext();\n return (\n <FormInfo\n column={1}\n list={[\n <Input name=\"name\" label=\"名称\" description=\"需说明调用webhook的端口的身份\" rule=\"REQ LEN-0-20\" />,\n <Input name=\"signatureLocation\" label=\"签名所在位置\" rule=\"REQ LEN-0-100\" defaultValue=\"headers['x-signature']\" />,\n <Input name=\"inputLocation\" label=\"输入参数位置\" rule=\"REQ LEN-0-100\" defaultValue=\"body\" />,\n <Switch name=\"shouldEncryptVerify\" label=\"body内容签名验证完整性\" display={formData.inputLocation === 'body'} />,\n <DatePicker name=\"expire\" label=\"过期时间\" showTime={{ format: 'HH:mm' }} format=\"YYYY-MM-DD HH:mm\" />\n ]}\n />\n );\n});\n\nexport default FormInner;\n","const getColumns = () => {\n return [\n {\n name: 'id',\n title: 'ID',\n type: 'serialNumber'\n },\n {\n name: 'endTime',\n title: '结束时间',\n type: 'datetime'\n },\n {\n name: 'duration',\n title: '运行时间',\n valueOf: item => {\n return `${new Date(item.endTime).getTime() - new Date(item.startTime).getTime()}ms`;\n }\n },\n {\n name: 'input',\n title: '调用参数',\n type: 'description',\n ellipsis: true,\n valueOf: item => {\n return item.input && JSON.stringify(item.input);\n }\n },\n {\n name: 'status',\n title: '执行状态',\n type: 'tag',\n valueOf: item => {\n if (item.status === 'success') {\n return { type: 'success', text: '成功' };\n }\n return { type: 'error', text: '失败' };\n }\n },\n {\n name: 'result',\n title: '执行结果',\n type: 'description',\n ellipsis: true,\n valueOf: item => {\n return item.result && JSON.stringify(item.result);\n }\n }\n ];\n};\n\nexport default getColumns;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport getColumns from './getColumns';\n\nconst Record = createWithRemoteLoader({\n modules: ['components-core:Table@TablePage', 'components-core:Global@usePreset']\n})(({ remoteModules, id, type }) => {\n const [TablePage, usePreset] = remoteModules;\n const { apis } = usePreset();\n return (\n <TablePage\n {...Object.assign({}, apis.webhook.invokeRecord, {\n params: { id, type }\n })}\n columns={[...getColumns()]}\n />\n );\n});\n\nexport default Record;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport Fetch from '@kne/react-fetch';\nimport { useState } from 'react';\nimport { Button, App, Flex } from 'antd';\nimport getColumns from './getColumns';\nimport FormInner from './FormInner';\nimport Record from './Record';\n\nconst Webhook = createWithRemoteLoader({\n modules: [\n 'components-core:Global@usePreset',\n 'components-core:Layout@TablePage',\n 'components-core:Layout@Menu',\n 'components-core:FormInfo@useFormModal',\n 'components-core:LoadingButton',\n 'components-core:Modal@useModal'\n ]\n})(({ remoteModules, ...props }) => {\n const [usePreset, TablePage, Menu, useFormModal, LoadingButton, useModal] = remoteModules;\n const { apis, ajax } = usePreset();\n const [current, setCurrent] = useState('');\n const formModal = useFormModal();\n const modal = useModal();\n const { message } = App.useApp();\n return (\n <Fetch\n {...Object.assign({}, apis.webhook.list)}\n render={({ data, reload }) => {\n const list = Object.keys(data);\n !(current && data[current]) && setCurrent(list[0]);\n return (\n <TablePage\n {...props}\n params={{ current, data }}\n loader={({ params }) => {\n return { pageData: params.data[params.current] };\n }}\n columns={[\n ...getColumns({\n renderCopyInvokeUrl: () => {\n return (\n <LoadingButton\n type=\"link\"\n className=\"btn-no-padding\"\n onClick={async () => {\n await navigator.clipboard.writeText(`${window.location.origin}${apis.webhook.invoke.url}/${current}`);\n message.success('复制成功');\n }}\n >\n 复制\n </LoadingButton>\n );\n },\n renderCopySignature: item => {\n return (\n <LoadingButton\n type=\"link\"\n className=\"btn-no-padding\"\n onClick={async () => {\n await navigator.clipboard.writeText(item.signature);\n message.success('复制成功');\n }}\n >\n 复制\n </LoadingButton>\n );\n }\n }),\n {\n name: 'options',\n type: 'options',\n title: '操作',\n fixed: 'right',\n valueOf: item => {\n return [\n {\n children: '调用记录',\n onClick: async () => {\n modal({\n title: '调用记录',\n footer: null,\n children: <Record id={item.id} />\n });\n }\n },\n {\n children: '删除',\n confirm: true,\n onClick: async () => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.webhook.remove, {\n data: { id: item.id }\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success('删除成功');\n reload();\n }\n }\n ];\n }\n }\n ]}\n page={{\n menu: list.length > 0 && (\n <Menu\n currentKey={current}\n onChange={setCurrent}\n items={list.map(name => {\n return {\n key: name,\n label: name\n };\n })}\n />\n ),\n title: 'Webhook',\n titleExtra: (\n <Flex gap={8}>\n <Button\n type=\"primary\"\n onClick={() => {\n formModal({\n title: '添加Webhook调用端',\n size: 'small',\n autoClose: true,\n formProps: {\n onSubmit: async formData => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.webhook.create, {\n data: Object.assign({}, formData, {\n type: current\n })\n })\n );\n\n if (resData.code !== 0) {\n return false;\n }\n\n message.success('添加成功');\n reload();\n }\n },\n children: <FormInner />\n });\n }}\n >\n 添加\n </Button>\n <Button\n onClick={() => {\n modal({\n title: '失败记录',\n footer: null,\n children: <Record type={current} />\n });\n }}\n >\n 失败记录\n </Button>\n </Flex>\n )\n }}\n />\n );\n }}\n />\n );\n});\n\nexport default Webhook;\n","import * as component_6 from '@components/BizUnit';\nconst readmeConfig = {\n name: `BizUnit`,\n summary: `<p>完成一个CURD的业务单元</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `BizUnit_6edb5`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const {default:BizUnit} = _BizUnit;\nconst BaseExample = ()=>{\n return <BizUnit />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_BizUnit\",\n packageName: \"@components/BizUnit\",\n component: component_6\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_10 from '@components/Task';\nconst readmeConfig = {\n name: `Task`,\n summary: `<p>用于管理一个Task任务,并查询执行情况</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `Task_eaeb3`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const { default: Task } = _Task;\nconst BaseExample = () => {\n return <Task />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Task\",\n packageName: \"@components/Task\",\n component: component_10\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\n\nconst GroupSelect = createWithRemoteLoader({\n modules: ['components-core:FormInfo']\n})(({ remoteModules }) => {\n\n return <div>unleash creativity</div>;\n});\n\nexport default GroupSelect;\n","import * as component_7 from '@components/Signature';\nconst readmeConfig = {\n name: `Signature`,\n summary: `<p>签名管理模块</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `Signature_8c090`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const { default: Signature } = _Signature;\nconst BaseExample = () => {\n return <Signature />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Signature\",\n packageName: \"@components/Signature\",\n component: component_7\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { Navigate, useLocation } from 'react-router-dom';\nimport Fetch from '@kne/react-fetch';\n\nconst CheckAccountIsInit = ({ data, baseUrl, children }) => {\n const location = useLocation();\n if (data.userInfo.status === 1) {\n return (\n <Navigate\n to={`${baseUrl || ''}/modify/${encodeURIComponent(data.userInfo.email)}?referer=${encodeURIComponent(location.pathname + location.search)}`}\n replace\n />\n );\n }\n\n return children;\n};\n\nexport const CustomUserInfo = createWithRemoteLoader({\n modules: ['components-core:Global@SetGlobal']\n})(({ remoteModules, cache, baseUrl, children, api }) => {\n const [SetGlobal] = remoteModules;\n return (\n <Fetch\n cache={cache}\n {...Object.assign({}, api)}\n render={({ data, reload }) => {\n return (\n <CheckAccountIsInit baseUrl={baseUrl} data={data}>\n <SetGlobal globalKey=\"userInfo\" value={{ value: data.userInfo, reload }} needReady>\n {children}\n </SetGlobal>\n </CheckAccountIsInit>\n );\n }}\n />\n );\n});\n\nexport const UserInfo = createWithRemoteLoader({\n modules: ['components-core:Global@usePreset']\n})(({ remoteModules, ...props }) => {\n const [usePreset] = remoteModules;\n const { apis } = usePreset();\n return <CustomUserInfo {...props} api={apis.user.getUserInfo} cache=\"user-info\" />;\n});\n\nexport const SuperAdminInfo = createWithRemoteLoader({\n modules: ['components-core:Global@SetGlobal', 'components-core:Global@usePreset']\n})(({ remoteModules, children }) => {\n const [SetGlobal, usePreset] = remoteModules;\n const { apis } = usePreset();\n return (\n <Fetch\n cache=\"super-admin-info\"\n {...Object.assign({}, apis.admin.getSuperAdminInfo)}\n render={({ data, reload }) => {\n return (\n <SetGlobal globalKey=\"userInfo\" value={{ value: data.userInfo, reload }} needReady>\n {children}\n </SetGlobal>\n );\n }}\n />\n );\n});\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { Outlet } from 'react-router-dom';\nimport { SuperAdminInfo, UserInfo, CustomUserInfo } from './Authenticate';\nimport UserTool from '@components/UserTool';\nimport Language from '@components/Account/Language';\nimport { Flex } from 'antd';\n\nexport const MainLayout = createWithRemoteLoader({\n modules: ['components-core:Layout']\n})(({ remoteModules, navigation, title, children }) => {\n const [Layout] = remoteModules;\n return (\n <Layout\n navigation={{\n defaultTitle: title,\n ...Object.assign({}, navigation)\n }}>\n {children}\n </Layout>\n );\n});\n\nexport const RightOptions = createWithRemoteLoader({\n modules: ['components-core:Global@GlobalValue']\n})(({ remoteModules }) => {\n const [GlobalValue] = remoteModules;\n\n return (\n <Flex gap={8}>\n <Language />\n <GlobalValue globalKey=\"userInfo\">\n {({ value }) => {\n const { nickname, avatar, email } = Object.assign({}, value?.value);\n return <UserTool name={nickname} email={email} avatar={avatar} />;\n }}\n </GlobalValue>\n </Flex>\n );\n});\n\nexport const AfterCustomUserLoginLayout = ({ baseUrl, navigation, api, children, ...props }) => {\n return (\n <CustomUserInfo baseUrl={baseUrl || '/account'} api={api}>\n <MainLayout\n {...props}\n navigation={Object.assign(\n {},\n {\n rightOptions: <RightOptions />\n },\n navigation\n )}>\n {children || <Outlet />}\n </MainLayout>\n </CustomUserInfo>\n );\n};\n\nexport const AfterCustomUserLogin = ({ baseUrl, api, children, ...props }) => {\n return (\n <CustomUserInfo baseUrl={baseUrl || '/account'} api={api}>\n {children || <Outlet />}\n </CustomUserInfo>\n );\n};\n\nexport const AfterUserLoginLayout = ({ baseUrl, navigation, children, ...props }) => {\n return (\n <UserInfo baseUrl={baseUrl || '/account'}>\n <MainLayout\n {...props}\n navigation={Object.assign(\n {},\n {\n rightOptions: <RightOptions />\n },\n navigation\n )}>\n {children || <Outlet />}\n </MainLayout>\n </UserInfo>\n );\n};\n\nexport const AfterUserLogin = ({ baseUrl, children, ...props }) => {\n return <UserInfo baseUrl={baseUrl || '/account'}>{children || <Outlet />}</UserInfo>;\n};\n\nexport const AfterAdminUserLoginLayout = ({ navigation, children, ...props }) => {\n return (\n <SuperAdminInfo>\n <MainLayout\n {...props}\n navigation={Object.assign(\n {},\n {\n rightOptions: <RightOptions />\n },\n navigation\n )}>\n {children || <Outlet />}\n </MainLayout>\n </SuperAdminInfo>\n );\n};\n\nexport const BeforeLoginLayout = ({ children, ...props }) => {\n return <>{children || <Outlet />}</>;\n};\n","const locale = {\n // FormInner labels\n Avatar: '头像',\n Email: '邮箱',\n Nickname: '昵称',\n Description: '简介',\n\n // SaveUserInfo\n EditUserInfo: '编辑个人基本信息',\n SaveSuccess: '保存成功'\n};\n\nexport default locale;\n","const locale = {\n // FormInner labels\n Avatar: 'Avatar',\n Email: 'Email',\n Nickname: 'Nickname',\n Description: 'Description',\n\n // SaveUserInfo\n EditUserInfo: 'Edit Personal Info',\n SaveSuccess: 'Saved successfully'\n};\n\nexport default locale;\n","import { createWithIntlProvider } from '@kne/react-intl';\nimport zhCN from './locale/zh-CN';\nimport enUS from './locale/en-US';\n\nconst withLocale = createWithIntlProvider({\n defaultLocale: 'zh-CN',\n messages: {\n 'zh-CN': zhCN,\n 'en-US': enUS\n },\n namespace: 'components-admin:Authenticate'\n});\n\nexport default withLocale;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { useIntl } from '@kne/react-intl';\nimport withLocale from './withLocale';\nimport { Flex } from 'antd';\n\nconst UserInfoFormInner = createWithRemoteLoader({\n modules: ['components-core:FormInfo']\n})(withLocale(({ remoteModules, ...props }) => {\n const [FormInfo] = remoteModules;\n const { formatMessage } = useIntl();\n const { Avatar, Input, TextArea } = FormInfo.fields;\n return (\n <FormInfo\n {...props}\n list={[\n <Flex justify=\"center\">\n <Avatar name=\"avatar\" label={formatMessage({ id: 'Avatar' })} labelHidden interceptor=\"photo-string\" />\n </Flex>,\n <Input name=\"email\" label={formatMessage({ id: 'Email' })} rule=\"REQ\" />,\n <Input name=\"nickname\" label={formatMessage({ id: 'Nickname' })} />,\n <TextArea name=\"description\" label={formatMessage({ id: 'Description' })} rule=\"LEN-0-500\" />\n ]}\n />\n );\n}));\n\nexport default UserInfoFormInner;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { useIntl } from '@kne/react-intl';\nimport withLocale from './withLocale';\nimport UserInfoFormInner from './UserInfoFormInner';\nimport { App } from 'antd';\n\nconst SaveUserInfoInner = createWithRemoteLoader({\n modules: ['components-core:FormInfo@useFormModal', 'components-core:Global@usePreset', 'components-core:Global@useGlobalContext']\n})(({ remoteModules, children }) => {\n const [useFormModal, usePreset, useGlobalContext] = remoteModules;\n const formModal = useFormModal();\n const { global } = useGlobalContext('userInfo');\n const { apis, ajax } = usePreset();\n const { message } = App.useApp();\n const { formatMessage } = useIntl();\n return children({\n onClick: () => {\n const modalApi = formModal({\n title: formatMessage({ id: 'EditUserInfo' }),\n size: 'small',\n formProps: {\n data: global.value,\n onSubmit: async data => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.user.saveUserInfo, {\n data\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'SaveSuccess' }));\n global.reload();\n modalApi.close();\n }\n },\n children: <UserInfoFormInner column={1} />\n });\n }\n });\n});\n\nexport default withLocale(SaveUserInfoInner);\n","import * as component_11 from '@kne/remote-loader';\nimport * as component_12 from '@components/TenantAdmin';\nconst readmeConfig = {\n name: `TenantAdmin`,\n summary: `<p>租户管理</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: true,\n className: `TenantAdmin_998cc`,\n style: ``,\n list: [{\n title: `列表页`,\n description: `列表页`,\n code: `const { default: List } = _TenantAdmin;\nconst { createWithRemoteLoader } = remoteLoader;\nconst BaseExample = createWithRemoteLoader({\n modules: ['components-core:Global@PureGlobal', 'components-core:Global@usePreset', 'components-core:Layout']\n})(({ remoteModules }) => {\n const [PureGlobal, usePreset, Layout] = remoteModules;\n const { ajax } = usePreset();\n return (\n <PureGlobal\n preset={{\n ajax,\n apis: {\n testApi: {\n getList: {\n loader: () => {\n return {\n pageData: [\n {\n id: 1,\n name: '测试数据',\n description: '测试测试测试测试测试测试测试',\n createdTime: new Date()\n }\n ],\n totalCount: 1\n };\n }\n },\n add: {\n loader: () => {\n return null;\n }\n },\n save: {\n loader: () => {\n return null;\n }\n },\n remove: {\n loader: () => {\n return null;\n }\n }\n }\n }\n }}\n >\n <Layout navigation={{ isFixed: false }}>\n <List />\n </Layout>\n </PureGlobal>\n );\n});\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"remoteLoader\",\n packageName: \"@kne/remote-loader\",\n component: component_11\n},{\n name: \"_TenantAdmin\",\n packageName: \"@components/TenantAdmin\",\n component: component_12\n}]\n},{\n title: `表单页`,\n description: `表单页`,\n code: `const { FormInner } = _TenantAdmin;\nconst { createWithRemoteLoader } = remoteLoader;\nconst BaseExample = createWithRemoteLoader({\n modules: ['components-core:FormInfo@Form']\n})(({ remoteModules }) => {\n const [Form] = remoteModules;\n return (\n <Form>\n <FormInner />\n </Form>\n );\n});\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"remoteLoader\",\n packageName: \"@kne/remote-loader\",\n component: component_11\n},{\n name: \"_TenantAdmin\",\n packageName: \"@components/TenantAdmin\",\n component: component_12\n}]\n},{\n title: `详情页`,\n description: `详情页`,\n code: `const { Detail } = _TenantAdmin;\nconst { createWithRemoteLoader } = remoteLoader;\nconst BaseExample = createWithRemoteLoader({\n modules: ['components-core:Global@PureGlobal', 'components-core:Layout']\n})(({ remoteModules }) => {\n const [PureGlobal, Layout] = remoteModules;\n return (\n <PureGlobal\n preset={{\n apis: {\n testApi: {\n getDetail: {\n loader: () => {\n return {\n id: '1212121212',\n name: '测试测试测试',\n description: '描述描述描述描述描述描述描述描述'\n };\n }\n }\n }\n }\n }}\n >\n <Layout navigation={{ isFixed: false }}>\n <Detail optionFixed={false} />\n </Layout>\n </PureGlobal>\n );\n});\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"remoteLoader\",\n packageName: \"@kne/remote-loader\",\n component: component_11\n},{\n name: \"_TenantAdmin\",\n packageName: \"@components/TenantAdmin\",\n component: component_12\n}]\n},{\n title: `tab详情页`,\n description: `tab详情页`,\n code: `const { TabDetail } = _TenantAdmin;\nconst { createWithRemoteLoader } = remoteLoader;\nconst BaseExample = createWithRemoteLoader({\n modules: ['components-core:Global@PureGlobal', 'components-core:Layout']\n})(({ remoteModules }) => {\n const [PureGlobal, Layout] = remoteModules;\n return (\n <PureGlobal\n preset={{\n apis: {\n testApi: {\n getDetail: {\n loader: () => {\n return {\n id: '1212121212',\n name: '测试测试测试',\n description: '描述描述描述描述描述描述描述描述'\n };\n }\n }\n }\n }\n }}\n >\n <Layout navigation={{ isFixed: false }}>\n <TabDetail optionFixed={false} />\n </Layout>\n </PureGlobal>\n );\n});\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"remoteLoader\",\n packageName: \"@kne/remote-loader\",\n component: component_11\n},{\n name: \"_TenantAdmin\",\n packageName: \"@components/TenantAdmin\",\n component: component_12\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_13 from '@kne/remote-loader';\nimport * as component_14 from '@components/Tenant';\nconst readmeConfig = {\n name: `Tenant`,\n summary: `<p>租户管理</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: true,\n className: `Tenant_6252d`,\n style: ``,\n list: [{\n title: `列表页`,\n description: `列表页`,\n code: `const { default: List } = _Tenant;\nconst { createWithRemoteLoader } = remoteLoader;\nconst BaseExample = createWithRemoteLoader({\n modules: ['components-core:Global@PureGlobal', 'components-core:Global@usePreset', 'components-core:Layout']\n})(({ remoteModules }) => {\n const [PureGlobal, usePreset, Layout] = remoteModules;\n const { ajax } = usePreset();\n return (\n <PureGlobal\n preset={{\n ajax,\n apis: {\n testApi: {\n getList: {\n loader: () => {\n return {\n pageData: [\n {\n id: 1,\n name: '测试数据',\n description: '测试测试测试测试测试测试测试',\n createdTime: new Date()\n }\n ],\n totalCount: 1\n };\n }\n },\n add: {\n loader: () => {\n return null;\n }\n },\n save: {\n loader: () => {\n return null;\n }\n },\n remove: {\n loader: () => {\n return null;\n }\n }\n }\n }\n }}\n >\n <Layout navigation={{ isFixed: false }}>\n <List />\n </Layout>\n </PureGlobal>\n );\n});\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"remoteLoader\",\n packageName: \"@kne/remote-loader\",\n component: component_13\n},{\n name: \"_Tenant\",\n packageName: \"@components/Tenant\",\n component: component_14\n}]\n},{\n title: `表单页`,\n description: `表单页`,\n code: `const { FormInner } = _Tenant;\nconst { createWithRemoteLoader } = remoteLoader;\nconst BaseExample = createWithRemoteLoader({\n modules: ['components-core:FormInfo@Form']\n})(({ remoteModules }) => {\n const [Form] = remoteModules;\n return (\n <Form>\n <FormInner />\n </Form>\n );\n});\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"remoteLoader\",\n packageName: \"@kne/remote-loader\",\n component: component_13\n},{\n name: \"_Tenant\",\n packageName: \"@components/Tenant\",\n component: component_14\n}]\n},{\n title: `详情页`,\n description: `详情页`,\n code: `const { Detail } = _Tenant;\nconst { createWithRemoteLoader } = remoteLoader;\nconst BaseExample = createWithRemoteLoader({\n modules: ['components-core:Global@PureGlobal', 'components-core:Layout']\n})(({ remoteModules }) => {\n const [PureGlobal, Layout] = remoteModules;\n return (\n <PureGlobal\n preset={{\n apis: {\n testApi: {\n getDetail: {\n loader: () => {\n return {\n id: '1212121212',\n name: '测试测试测试',\n description: '描述描述描述描述描述描述描述描述'\n };\n }\n }\n }\n }\n }}\n >\n <Layout navigation={{ isFixed: false }}>\n <Detail optionFixed={false} />\n </Layout>\n </PureGlobal>\n );\n});\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"remoteLoader\",\n packageName: \"@kne/remote-loader\",\n component: component_13\n},{\n name: \"_Tenant\",\n packageName: \"@components/Tenant\",\n component: component_14\n}]\n},{\n title: `tab详情页`,\n description: `tab详情页`,\n code: `const { TabDetail } = _Tenant;\nconst { createWithRemoteLoader } = remoteLoader;\nconst BaseExample = createWithRemoteLoader({\n modules: ['components-core:Global@PureGlobal', 'components-core:Layout']\n})(({ remoteModules }) => {\n const [PureGlobal, Layout] = remoteModules;\n return (\n <PureGlobal\n preset={{\n apis: {\n testApi: {\n getDetail: {\n loader: () => {\n return {\n id: '1212121212',\n name: '测试测试测试',\n description: '描述描述描述描述描述描述描述描述'\n };\n }\n }\n }\n }\n }}\n >\n <Layout navigation={{ isFixed: false }}>\n <TabDetail optionFixed={false} />\n </Layout>\n </PureGlobal>\n );\n});\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"remoteLoader\",\n packageName: \"@kne/remote-loader\",\n component: component_13\n},{\n name: \"_Tenant\",\n packageName: \"@components/Tenant\",\n component: component_14\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_2 from '@components/Account';\nimport * as component_3 from 'antd';\nconst readmeConfig = {\n name: `Account`,\n summary: `<p>用于用户注册登录忘记密码</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: true,\n className: `Account_08bd4`,\n style: ``,\n list: [{\n title: `Login`,\n description: `登录`,\n code: `const { LoginOuterContainer, Login } = _Account;\nconst {Flex, Radio, Space} = antd;\nconst {useState} = React;\nconst BaseExample = () => {\n const [type, setType] = useState('email');\n return (\n <Flex vertical gap={20}>\n <LoginOuterContainer />\n <Flex justify=\"center\">\n <Space><span>类型:</span><Radio.Group value={type} onChange={(e) => {\n setType(e.target.value);\n }} options={[{label: '邮箱', value: 'email'}, {label: '手机', value: 'phone'}]}/></Space>\n </Flex>\n <LoginOuterContainer>\n <Login type={type}/>\n </LoginOuterContainer>\n </Flex>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Account\",\n packageName: \"@components/Account\",\n component: component_2\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_3\n}]\n},{\n title: `Register`,\n description: `注册`,\n code: `const { LoginOuterContainer, Register } = _Account;\nconst { Flex, Radio, Space } = antd;\nconst { useState } = React;\nconst BaseExample = () => {\n const [type, setType] = useState('email');\n return (\n <Flex vertical gap={8}>\n <Space>\n <span>类型:</span>\n <Radio.Group\n value={type}\n onChange={e => {\n setType(e.target.value);\n }}\n options={[\n { label: '邮箱', value: 'email' },\n { label: '手机', value: 'phone' }\n ]}\n />\n </Space>\n <Register type={type} />\n </Flex>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Account\",\n packageName: \"@components/Account\",\n component: component_2\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_3\n}]\n},{\n title: `Modify`,\n description: `修改密码`,\n code: `const {Modify} = _Account;\nconst {Flex} = antd;\nconst BaseExample = () => {\n return <Flex vertical gap={8}>\n <Modify account=\"test@test.com\"/>\n <Modify type=\"phone\" account=\"+81 17029292828\"/>\n </Flex>;\n};\n\nrender(<BaseExample/>);\n\n`,\n scope: [{\n name: \"_Account\",\n packageName: \"@components/Account\",\n component: component_2\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_3\n}]\n},{\n title: `ForgetByEmail`,\n description: `忘记密码(邮箱)`,\n code: `const {LoginOuterContainer, ForgetByEmail} = _Account;\nconst BaseExample = () => {\n return <LoginOuterContainer>\n <ForgetByEmail onSubmit={(data, callback) => {\n callback();\n }}/>\n </LoginOuterContainer>;\n};\n\nrender(<BaseExample/>);\n\n`,\n scope: [{\n name: \"_Account\",\n packageName: \"@components/Account\",\n component: component_2\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_3\n}]\n},{\n title: `ResetPassword`,\n description: `重置密码`,\n code: `const {ResetPassword} = _Account;\nconst {Flex} = antd;\nconst BaseExample = () => {\n return <Flex vertical gap={8}>\n <ResetPassword account=\"test@test.com\"/>\n <ResetPassword type=\"phone\" account=\"+81 17029292828\"/>\n </Flex>;\n};\n\nrender(<BaseExample/>);\n\n`,\n scope: [{\n name: \"_Account\",\n packageName: \"@components/Account\",\n component: component_2\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_3\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_4 from '@components/Authenticate';\nconst readmeConfig = {\n name: `Authenticate`,\n summary: `<p>用户权限用户信息获取</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `Authenticate_ea80a`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const {default:Authenticate} = _Authenticate;\nconst BaseExample = ()=>{\n return <Authenticate />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Authenticate\",\n packageName: \"@components/Authenticate\",\n component: component_4\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_16 from '@components/UserTool';\nconst readmeConfig = {\n name: `UserTool`,\n summary: `<p>导航栏右边用户操作项</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `UserTool_cee11`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const {default:UserTool} = _UserTool;\nconst BaseExample = ()=>{\n return <UserTool />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_UserTool\",\n packageName: \"@components/UserTool\",\n component: component_16\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_1 from '@components/Admin';\nconst readmeConfig = {\n name: `Admin`,\n summary: `<p>用于实现一个管理后台</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `Admin_e3afe`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const {default:Admin} = _Admin;\nconst BaseExample = ()=>{\n return <Admin />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Admin\",\n packageName: \"@components/Admin\",\n component: component_1\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\n\nconst UserSelect = createWithRemoteLoader({\n modules: ['components-core:Global@usePreset', 'components-core:FormInfo']\n})(({ remoteModules, status = 0, api, ...props }) => {\n const [usePreset, FormInfo] = remoteModules;\n const { apis } = usePreset();\n const { SuperSelectUser } = FormInfo.fields;\n return (\n <SuperSelectUser\n {...props}\n api={Object.assign(\n {},\n apis.admin.getUserList,\n {\n data: {\n filter: Object.assign(\n {},\n Number.isInteger(status) && {\n status\n }\n )\n },\n transformData: data => {\n return Object.assign({}, data, {\n pageData: (data.pageData || []).map(item =>\n Object.assign({}, item, {\n value: item.id,\n label: item.nickname || item.email || item.phone\n })\n )\n });\n }\n },\n api\n )}\n />\n );\n});\n\nexport default UserSelect;\n"],"names":["createWithIntlProvider","defaultLocale","messages","UserToolUnnamed","UserToolLogout","namespace","createWithRemoteLoader","modules","withLocale","_ref","remoteModules","avatar","name","email","storeKeys","token","domain","list","children","Image","Icon","logout","useLogout","formatMessage","useIntl","_jsx","Dropdown","trigger","rootClassName","style","popupRender","_jsxs","Space","direction","className","Avatar","id","size","Divider","List","length","map","item","index","Item","onClick","Flex","gap","flex","iconType","type","label","arrow","transitionName","GlobalValue","Language","globalKey","_ref2","value","userInfo","tenantUser","tenant","UserTool","nickname","orgName","tenantOrgs","join","summary","api","example","isFull","title","description","code","scope","packageName","component","getColumns","valueOf","user","phone","text","TablePage","usePreset","FormInfo","useFormModal","CentralContent","ajax","apis","ref","useRef","TextArea","Input","fields","formModal","modal","App","useApp","message","_objectSpread","Object","assign","signature","pagination","paramsType","page","titleExtra","align","Button","formModalApi","formProps","onSubmit","async","data","resData","create","current","reload","close","info","icon","width","content","vertical","Alert","dataSource","col","columns","column","UserSelect","single","interceptor","maxLength","fixed","saveText","rules","NUM","test","result","errMsg","appId","verify","success","error","concat","rule","status","isModal","isDelete","update","confirm","hidden","remove","context","createContext","Provider","Nickname","Email","Phone","IsSuperAdmin","Status","Description","Yes","No","Normal","NotActivated","Disabled","Closed","Other","AddUser","AddSuccess","EditUser","EditUserInfo","DeleteSuccess","SaveSuccess","Operation","Keyword","UserAvatar","UserNickname","UserEmail","UserPhone","UserDescription","Password","RepeatPassword","ResetPassword","ModifyPassword","ModifyPasswordSuccess","SetSuperAdmin","CancelSuperAdmin","SetSuperAdminConfirm","CancelSuperAdminConfirm","SetNormal","SetNormalConfirm","SetNormalSuccess","CloseUser","CloseUserConfirm","CloseUserSuccess","SetStatusSuccess","FilterEmail","FilterPhone","FilterStatus","FilterIsAdmin","Confirm","InitSystem","InitSystemDesc","InitSuccess","zhCN","enUS","gender","_ref3","_ref4","formModule","PhoneNumber","labelHidden","realtime","format","Filter","filter","setFilter","useState","SearchInput","getFilterValue","filterFields","InputFilterItem","AdvancedSelectFilterItem","filterValue","admin","getUserList","params","modalApi","FormInner","saveUser","ResetPasswordFormInner","resetUserPassword","password","md5","userId","get","setSuperAdmin","push","setUserNormal","okText","setUserClose","onChange","loader","pageData","addUser","baseUrl","navigate","useNavigate","initAdmin","useRefCallback","initSuperAdmin","replace","useEffect","Result","subTitle","props","_objectWithoutProperties","_excluded","Routes","Route","path","element","User","Navigate","to","ChildrenRouter","ID","Name","CreatedAt","Open","Close","All","AddTenant","EditTenant","RemoveTenantSuccess","Edit","Delete","Save","OpenTenantConfirm","CloseTenantConfirm","TenantName","AccountCount","ServiceTime","Logo","ThemeColor","TenantDescription","Type","Key","Value","IsSecret","EnvironmentVariables","AddEnvironmentVariable","AddCustomComponent","Preview","Copy","EditCustomComponent","CopySuccess","ModifySuccess","TenantDetail","BasicInfo","CompanyInfo","OrgStructure","UserList","Permission","Setting","AccountManagement","DetailInfo","ServiceTimeRange","AccountCountTag","renderCopyInvokeUrl","renderCopySignature","shouldEncryptVerify","useFormContext","DatePicker","Switch","formData","defaultValue","display","inputLocation","showTime","Date","endTime","getTime","startTime","ellipsis","input","JSON","stringify","webhook","invokeRecord","Menu","LoadingButton","useModal","setCurrent","Fetch","render","keys","navigator","clipboard","writeText","window","location","origin","invoke","url","footer","Record","menu","currentKey","items","key","autoClose","CheckAccountIsInit","useLocation","encodeURIComponent","pathname","search","CustomUserInfo","cache","SetGlobal","needReady","UserInfo","getUserInfo","SuperAdminInfo","_ref5","getSuperAdminInfo","_ref6","MainLayout","navigation","Layout","defaultTitle","RightOptions","AfterCustomUserLoginLayout","rightOptions","Outlet","AfterCustomUserLogin","_excluded2","AfterUserLoginLayout","_excluded3","AfterUserLogin","_ref7","_excluded4","AfterAdminUserLoginLayout","_ref8","_excluded5","BeforeLoginLayout","_ref9","_excluded6","_Fragment","justify","useGlobalContext","global","saveUserInfo","UserInfoFormInner","SuperSelectUser","Number","isInteger","transformData"],"ignoreList":[],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"static/js/9686.957dffa1.chunk.js","mappings":"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","sources":["webpack://@kne-components/components-admin/./src/components/UserTool/style.module.scss?828d","components/UserTool/locale/zh-CN.js","components/UserTool/withLocale.js","components/UserTool/locale/en-US.js","components/UserTool/UserTool.js","components/UserTool/RightOptions.js","components/LoginIllustration/README.md","components/UserSelect/README.md","components/GroupSelect/README.md","components/Signature/getColumns.js","components/Signature/index.js","components/Admin/context.js","components/Admin/locale/zh-CN.js","components/Admin/locale/en-US.js","components/Admin/withLocale.js","components/Admin/User/getColumns.js","components/Admin/User/FormInner.js","components/Admin/User/ResetPasswordFormInner.js","components/Admin/User/index.js","components/Admin/InitAdmin.js","components/Admin/index.js","components/Webhook/README.md","components/TenantAdmin/index.js","components/Language/README.md","components/TenantAdmin/locale/zh-CN.js","components/TenantAdmin/locale/en-US.js","components/TenantAdmin/withLocale.js","components/Webhook/getColumns.js","components/Webhook/FormInner.js","components/Webhook/Record/getColumns.js","components/Webhook/Record/index.js","components/Webhook/index.js","components/BizUnit/README.md","components/Task/README.md","components/GroupSelect/index.js","components/Signature/README.md","components/Authenticate/Authenticate.js","components/Authenticate/MainLayout.js","components/Authenticate/locale/zh-CN.js","components/Authenticate/locale/en-US.js","components/Authenticate/withLocale.js","components/Authenticate/UserInfoFormInner.js","components/Authenticate/SaveUserInfo.js","components/TenantAdmin/README.md","components/Tenant/README.md","components/Account/README.md","components/Authenticate/README.md","components/UserTool/README.md","components/Admin/README.md","components/UserSelect/index.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"icon\":\"style_icon__KSAP2__Ku+xP\",\"content\":\"style_content__akCc4__Ku+xP\",\"overlay\":\"style_overlay__IH+0B__Ku+xP\",\"info\":\"style_info__5uvqI__Ku+xP\",\"tenant\":\"style_tenant__pNb8v__Ku+xP\",\"user-tool\":\"style_user-tool__CBaDm__Ku+xP\",\"divider\":\"style_divider__jcjqI__Ku+xP\",\"options-list\":\"style_options-list__RHknC__Ku+xP\",\"options-list-item\":\"style_options-list-item__IOziy__Ku+xP\",\"org\":\"style_org__N0zoJ__Ku+xP\",\"tenant-item\":\"style_tenant-item__0Q6XJ__Ku+xP\",\"current-sign\":\"style_current-sign__11f2P__Ku+xP\",\"current-tenant\":\"style_current-tenant__mdi5f__Ku+xP\",\"user-name\":\"style_user-name__q7lY4__Ku+xP\",\"company\":\"style_company__wIKmA__Ku+xP\",\"line\":\"style_line__rOiNk__Ku+xP\"};","export default {\n UserToolUnnamed: '未命名',\n UserToolLogout: '退出登录'\n};\n","import { createWithIntlProvider } from '@kne/react-intl';\nimport zhCN from './locale/zh-CN';\nimport enUS from './locale/en-US';\n\nconst withLocale = createWithIntlProvider({\n defaultLocale: 'zh-CN',\n messages: {\n 'zh-CN': zhCN,\n 'en-US': enUS\n },\n namespace: 'components-admin:UserTool'\n});\n\nexport default withLocale;\n","export default {\n UserToolUnnamed: 'Unnamed',\n UserToolLogout: 'Logout'\n};\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { Divider, List, Dropdown, Space, Flex } from 'antd';\nimport { useLogout } from '@components/Account';\nimport style from './style.module.scss';\nimport withLocale from './withLocale';\nimport { useIntl } from '@kne/react-intl';\n\nconst UserTool = createWithRemoteLoader({\n modules: ['components-core:Image', 'components-core:Icon']\n})(withLocale(({ remoteModules, avatar, name, email, storeKeys = { token: 'X-User-Token' }, domain, list, children = null }) => {\n const [Image, Icon] = remoteModules;\n const logout = useLogout({ storeKeys, domain });\n const { formatMessage } = useIntl();\n return (\n <Dropdown\n trigger=\"click\"\n rootClassName={style['overlay']}\n popupRender={() => (\n <Space direction={'vertical'} className={style['content']}>\n <Space className={style['info']}>\n <Image.Avatar id={avatar} size={48} />\n <div>\n <div className={style['line']}>{name || formatMessage({ id: 'UserToolUnnamed' })}</div>\n <div className={style['line']}>{email || '-'}</div>\n </div>\n </Space>\n <Divider className={style['divider']} />\n {children}\n <List className={style['options-list']}>\n {list &&\n list.length > 0 &&\n list.map((item, index) => {\n return (\n <List.Item key={index} className={style['options-list-item']} onClick={item.onClick}>\n <Flex gap={8} flex={1}>\n {item.iconType && <Icon type={item.iconType} />}\n <Flex flex={1}>{item.label}</Flex>\n </Flex>\n </List.Item>\n );\n })}\n <List.Item\n className={style['options-list-item']}\n onClick={logout}>\n <Flex gap={8} flex={1}>\n <Icon type=\"icon-tuichudenglu\" />\n <span>{formatMessage({ id: 'UserToolLogout' })}</span>\n </Flex>\n </List.Item>\n </List>\n </Space>\n )}\n arrow={false}\n transitionName={'ant-slide-up'}>\n <Space className={style['user-tool']}>\n <Image.Avatar id={avatar} size={32} />\n <div className={style['user-name']}>{name || formatMessage({ id: 'UserToolUnnamed' })}</div>\n <Icon className={style['icon']} type=\"triangle-down\" size={12} />\n </Space>\n </Dropdown>\n );\n}));\n\nexport default UserTool;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport UserTool from './UserTool';\nimport Language from '@components/Account/Language';\nimport { Flex } from 'antd';\n\nconst RightOptions = createWithRemoteLoader({\n modules: ['components-core:Global@GlobalValue']\n})(({ remoteModules }) => {\n const [GlobalValue] = remoteModules;\n\n return (\n <Flex gap={8}>\n <Language />\n <GlobalValue globalKey=\"userInfo\">\n {({ value }) => {\n if (!value) {\n return null;\n }\n const { userInfo, tenantUser, tenant } = value;\n return (\n <UserTool\n avatar={tenantUser ? tenantUser.avatar : userInfo.avatar}\n name={tenantUser ? tenantUser.name : userInfo.nickname}\n email={tenantUser ? tenantUser.email : userInfo.email}\n tenant={tenant}\n orgName={tenantUser && (tenantUser?.tenantOrgs || []).map(item => item.name).join(',')}\n />\n );\n }}\n </GlobalValue>\n </Flex>\n );\n});\n\nexport default RightOptions;\n","import * as component_8 from '@components/LoginIllustration';\nconst readmeConfig = {\n name: `LoginIllustration`,\n summary: `<p>用来实现一些精美的登录动画</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `LoginIllustration_f6cdf`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const {default:LoginIllustration} = _LoginIllustration;\nconst BaseExample = ()=>{\n return <LoginIllustration />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_LoginIllustration\",\n packageName: \"@components/LoginIllustration\",\n component: component_8\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_15 from '@components/UserSelect';\nconst readmeConfig = {\n name: `UserSelect`,\n summary: `<p>选择一个用户</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `UserSelect_48d48`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const { default: UserSelect } = _UserSelect;\nconst BaseExample = () => {\n return <UserSelect />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_UserSelect\",\n packageName: \"@components/UserSelect\",\n component: component_15\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_6 from '@components/GroupSelect';\nconst readmeConfig = {\n name: `GroupSelect`,\n summary: `<p>用于选择一个分组标签</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `GroupSelect_3b3e8`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const { default: GroupSelect } = _GroupSelect;\nconst BaseExample = () => {\n return <GroupSelect />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_GroupSelect\",\n packageName: \"@components/GroupSelect\",\n component: component_6\n}]\n}]\n }\n};\nexport default readmeConfig;\n","const getColumns = () => {\n return [\n {\n name: 'appId',\n title: 'AppId',\n type: 'other'\n },\n {\n name: 'secretKey',\n title: 'SecretKey',\n type: 'other'\n },\n {\n name: 'user',\n title: '所属用户',\n type: 'other',\n valueOf: ({ user }) => {\n return user.nickname || user.email || user.phone;\n }\n },\n {\n name: 'description',\n title: '描述',\n type: 'description'\n },\n {\n name: 'lastVisitedAt',\n title: '最后访问时间',\n type: 'datetime'\n },\n {\n name: 'status',\n title: '状态',\n type: 'tag',\n valueOf: (item, { name }) => {\n if (item[name] === 0) {\n return { type: 'success', text: '启用' };\n }\n return { type: 'danger', text: '禁用' };\n }\n },\n {\n name: 'createdAt',\n title: '创建时间',\n type: 'datetime'\n }\n ];\n};\n\nexport default getColumns;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport getColumns from './getColumns';\nimport { useRef } from 'react';\nimport { Space, Button, App, Flex, Alert } from 'antd';\nimport UserSelect from '@components/UserSelect';\n\nconst Signature = createWithRemoteLoader({\n modules: [\n 'components-core:Layout@TablePage',\n 'components-core:Global@usePreset',\n 'components-core:FormInfo',\n 'components-core:FormInfo@useFormModal',\n 'components-core:InfoPage@CentralContent'\n ]\n})(({ remoteModules }) => {\n const [TablePage, usePreset, FormInfo, useFormModal, CentralContent] = remoteModules;\n const { ajax, apis } = usePreset();\n const ref = useRef(null);\n const { TextArea, Input } = FormInfo.fields;\n const formModal = useFormModal();\n const { modal } = App.useApp();\n const { message } = App.useApp();\n return (\n <TablePage\n {...Object.assign({}, apis.signature.list)}\n pagination={{ paramsType: 'params' }}\n name=\"signature-list\"\n ref={ref}\n page={{\n titleExtra: (\n <Space align=\"center\">\n <Button\n type=\"primary\"\n onClick={() => {\n const formModalApi = formModal({\n title: '添加密钥',\n size: 'small',\n formProps: {\n onSubmit: async data => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.signature.create, {\n data\n })\n );\n if (resData.code !== 0) {\n return;\n }\n ref.current.reload();\n formModalApi.close();\n modal.info({\n icon: null,\n size: 'large',\n width: '800px',\n title: '密钥生成成功',\n content: (\n <Flex vertical gap={10}>\n <Alert type=\"error\" message=\"请妥善保存当前密钥,关闭窗口后将不能再获取到,请勿泄漏\" />\n <CentralContent\n dataSource={resData.data}\n col={1}\n columns={[\n {\n name: 'appId',\n title: 'AppId'\n },\n {\n name: 'secretKey',\n title: 'SecretKey'\n }\n ]}\n />\n </Flex>\n )\n });\n }\n },\n children: (\n <FormInfo\n column={1}\n list={[\n <UserSelect name=\"userId\" label=\"所属用户\" single interceptor=\"object-output-value\" />,\n <TextArea name=\"description\" label=\"描述\" maxLength={100} />\n ]}\n />\n )\n });\n }}\n >\n 添加密钥\n </Button>\n </Space>\n )\n }}\n columns={[\n ...getColumns(),\n {\n name: 'options',\n title: '操作',\n type: 'options',\n fixed: 'right',\n valueOf: item => {\n return [\n {\n children: '验证',\n onClick: () => {\n formModal({\n title: '验证密钥',\n size: 'small',\n saveText: '验证',\n formProps: {\n rules: {\n NUM: value => {\n if (/^[0-9]+$/.test(value)) {\n return {\n result: true,\n errMsg: ''\n };\n }\n return {\n result: false,\n errMsg: '请输入数字'\n };\n }\n },\n data: { appId: item.appId, ...item },\n onSubmit: async data => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.signature.verify, {\n data: { appId: item.appId, ...data }\n })\n );\n\n if (resData.code !== 0) {\n return;\n }\n if (resData.data.result) {\n message.success('验证成功');\n } else {\n message.error(`验证失败,${resData.data.message}`);\n }\n }\n },\n children: (\n <FormInfo\n column={1}\n list={[\n <TextArea name=\"signature\" label=\"签名\" rule=\"REQ\" />,\n <Input name=\"timestamp\" label=\"时间戳\" rule=\"REQ NUM\" />,\n <Input name=\"expire\" label=\"过期时间\" rule=\"REQ NUM\" />\n ]}\n />\n )\n });\n }\n },\n {\n children: item.status === 0 ? '禁用' : '启用',\n title: '温馨提示',\n message:\n item.status === 0 ? (\n <div>\n <div>禁用此密钥后,将拒绝此密钥的所有请求。</div>\n <div>是否确定要禁用此密钥?</div>\n </div>\n ) : (\n <div>\n <div>启用此密钥后,将允许此密钥访问请求。</div>\n <div>是否确定要启用此密钥?</div>\n </div>\n ),\n isModal: true,\n isDelete: false,\n onClick: async () => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.signature.update, {\n data: { appId: item.appId, status: item.status === 0 ? 1 : 0 }\n })\n );\n\n if (resData.code !== 0) {\n return;\n }\n message.success('操作成功');\n ref.current.reload();\n }\n },\n {\n children: '删除',\n confirm: true,\n hidden: item.status === 0,\n onClick: async () => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.signature.remove, {\n data: { appId: item.appId }\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success('删除成功');\n ref.current.reload();\n }\n }\n ];\n }\n }\n ]}\n />\n );\n});\n\nexport default Signature;\n","import { createContext, useContext } from 'react';\n\nconst context = createContext('/');\n\nexport const { Provider } = context;\n\nexport const useBaseUrl = baseUrlProp => {\n const target = useContext(context);\n return baseUrlProp || target?.baseUrl;\n};\n\nexport const useProps = () => {\n return useContext(context);\n};\n\nexport default context;\n","const locale = {\n // User List columns\n Avatar: '头像',\n Nickname: '昵称',\n Email: '邮箱',\n Phone: '电话',\n IsSuperAdmin: '是否超级管理员',\n Status: '状态',\n Description: '个人简介',\n\n // Status values\n Yes: '是',\n No: '否',\n Normal: '正常',\n NotActivated: '初始化未激活',\n Disabled: '已禁用',\n Closed: '已关闭',\n Other: '其他',\n\n // Actions\n AddUser: '添加用户',\n AddSuccess: '添加成功',\n EditUser: '编辑用户',\n EditUserInfo: '编辑用户信息',\n DeleteSuccess: '删除成功',\n SaveSuccess: '保存成功',\n Operation: '操作',\n Keyword: '关键字',\n\n // FormInner labels\n UserAvatar: '头像',\n UserNickname: '昵称',\n UserEmail: '邮箱',\n UserPhone: '手机',\n UserDescription: '个人简介',\n\n // Reset Password\n Password: '密码',\n RepeatPassword: '重复密码',\n ResetPassword: '重置密码',\n ModifyPassword: '修改密码',\n ModifyPasswordSuccess: '修改密码成功',\n\n // More Actions\n SetSuperAdmin: '设置超管',\n CancelSuperAdmin: '取消超管',\n SetSuperAdminConfirm: '确定要设置账号为超管吗?',\n CancelSuperAdminConfirm: '确定要取消账号的超管权限吗?',\n SetNormal: '设置为正常',\n SetNormalConfirm: '确定要设置账号为正常吗?',\n SetNormalSuccess: '账号已开启',\n CloseUser: '关闭',\n CloseUserConfirm: '确定要关闭该账号吗?',\n CloseUserSuccess: '账号已关闭',\n SetStatusSuccess: '设置成功',\n\n // Filter labels\n FilterEmail: '邮箱',\n FilterPhone: '电话',\n FilterStatus: '状态',\n FilterIsAdmin: '是否管理员',\n\n // Confirm\n Confirm: '确认',\n\n // InitAdmin\n InitSystem: '初始化系统',\n InitSystemDesc: '当前用户将被初始化为系统的超级管理员,本操作只能执行一次,执行完成后由该用户来执行其他的管理操作。',\n InitSuccess: '初始化管理员成功!'\n};\n\nexport default locale;\n","const locale = {\n // User List columns\n Avatar: 'Avatar',\n Nickname: 'Nickname',\n Email: 'Email',\n Phone: 'Phone',\n IsSuperAdmin: 'Is Super Admin',\n Status: 'Status',\n Description: 'Description',\n\n // Status values\n Yes: 'Yes',\n No: 'No',\n Normal: 'Normal',\n NotActivated: 'Not Activated',\n Disabled: 'Disabled',\n Closed: 'Closed',\n Other: 'Other',\n\n // Actions\n AddUser: 'Add User',\n AddSuccess: 'Added successfully',\n EditUser: 'Edit User',\n EditUserInfo: 'Edit User Info',\n DeleteSuccess: 'Deleted successfully',\n SaveSuccess: 'Saved successfully',\n Operation: 'Operation',\n Keyword: 'Keyword',\n\n // FormInner labels\n UserAvatar: 'Avatar',\n UserNickname: 'Nickname',\n UserEmail: 'Email',\n UserPhone: 'Phone',\n UserDescription: 'Description',\n\n // Reset Password\n Password: 'Password',\n RepeatPassword: 'Repeat Password',\n ResetPassword: 'Reset Password',\n ModifyPassword: 'Modify Password',\n ModifyPasswordSuccess: 'Password modified successfully',\n\n // More Actions\n SetSuperAdmin: 'Set Super Admin',\n CancelSuperAdmin: 'Cancel Super Admin',\n SetSuperAdminConfirm: 'Are you sure to set this account as super admin?',\n CancelSuperAdminConfirm: 'Are you sure to cancel super admin permission for this account?',\n SetNormal: 'Set Normal',\n SetNormalConfirm: 'Are you sure to set this account as normal?',\n SetNormalSuccess: 'Account has been opened',\n CloseUser: 'Close',\n CloseUserConfirm: 'Are you sure to close this account?',\n CloseUserSuccess: 'Account has been closed',\n SetStatusSuccess: 'Set status successfully',\n\n // Filter labels\n FilterEmail: 'Email',\n FilterPhone: 'Phone',\n FilterStatus: 'Status',\n FilterIsAdmin: 'Is Admin',\n\n // Confirm\n Confirm: 'Confirm',\n\n // InitAdmin\n InitSystem: 'Initialize System',\n InitSystemDesc: 'The current user will be initialized as the super administrator of the system. This operation can only be performed once. After completion, the user will perform other management operations.',\n InitSuccess: 'Initialized administrator successfully!'\n};\n\nexport default locale;\n","import { createWithIntlProvider } from '@kne/react-intl';\nimport zhCN from './locale/zh-CN';\nimport enUS from './locale/en-US';\n\nconst withLocale = createWithIntlProvider({\n defaultLocale: 'zh-CN',\n messages: {\n 'zh-CN': zhCN,\n 'en-US': enUS\n },\n namespace: 'components-admin:Admin'\n});\n\nexport default withLocale;\n","const getColumns = ({ formatMessage }) => {\n return [\n {\n name: 'avatar',\n title: formatMessage({ id: 'Avatar' }),\n type: 'avatar',\n valueOf: (item, { name }) => Object.assign({}, { gender: item['gender'] || 'M' }, { id: item[name] })\n },\n {\n name: 'nickname',\n title: formatMessage({ id: 'Nickname' }),\n type: 'mainInfo'\n },\n {\n name: 'email',\n title: formatMessage({ id: 'Email' }),\n type: 'other'\n },\n {\n name: 'phone',\n title: formatMessage({ id: 'Phone' }),\n type: 'serialNumber'\n },\n {\n name: 'isSuperAdmin',\n title: formatMessage({ id: 'IsSuperAdmin' }),\n type: 'other',\n valueOf: (item, { name }) => {\n return item[name] === true ? formatMessage({ id: 'Yes' }) : formatMessage({ id: 'No' });\n }\n },\n {\n name: 'status',\n title: formatMessage({ id: 'Status' }),\n type: 'tag',\n valueOf: (item, { name }) => {\n if (item[name] === 0) {\n return { type: 'success', text: formatMessage({ id: 'Normal' }) };\n }\n if (item[name] === 10) {\n return { text: formatMessage({ id: 'NotActivated' }) };\n }\n if (item[name] === 11) {\n return { type: 'danger', text: formatMessage({ id: 'Disabled' }) };\n }\n if (item[name] === 12) {\n return { type: 'danger', text: formatMessage({ id: 'Closed' }) };\n }\n\n return { text: formatMessage({ id: 'Other' }) };\n }\n },\n {\n name: 'description',\n title: formatMessage({ id: 'Description' }),\n type: 'description'\n }\n ];\n};\n\nexport default getColumns;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { useIntl } from '@kne/react-intl';\nimport withLocale from '../withLocale';\n\nconst FormInner = createWithRemoteLoader({\n modules: ['components-core:FormInfo', 'components-core:FormInfo@formModule']\n})(withLocale(({ remoteModules }) => {\n const [FormInfo, formModule] = remoteModules;\n const { formatMessage } = useIntl();\n const { Input, TextArea, PhoneNumber, Avatar } = formModule;\n return (\n <FormInfo\n column={1}\n list={[\n <Avatar name=\"avatar\" label={formatMessage({ id: 'UserAvatar' })} labelHidden interceptor=\"photo-string\" />,\n <Input name=\"nickname\" label={formatMessage({ id: 'UserNickname' })} rule=\"LEN-0-100\" />,\n <Input name=\"email\" label={formatMessage({ id: 'UserEmail' })} rule=\"EMAIL ACCOUNT_IS_EXISTS\" realtime />,\n <PhoneNumber name=\"phone\" label={formatMessage({ id: 'UserPhone' })} rule=\"ACCOUNT_IS_EXISTS\" format=\"string\" />,\n <TextArea name=\"description\" label={formatMessage({ id: 'UserDescription' })} />\n ]}\n />\n );\n}));\n\nexport default FormInner;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { useIntl } from '@kne/react-intl';\nimport withLocale from '../withLocale';\n\nconst ResetPasswordFormInner = createWithRemoteLoader({\n modules: ['components-core:FormInfo']\n})(withLocale(({ remoteModules }) => {\n const [FormInfo] = remoteModules;\n const { formatMessage } = useIntl();\n const { Input } = FormInfo.fields;\n return (\n <FormInfo\n column={1}\n list={[\n <Input.Password name=\"password\" label={formatMessage({ id: 'Password' })} rule=\"REQ LEN-6-50\" />,\n <Input.Password name=\"repeatPwd\" label={formatMessage({ id: 'RepeatPassword' })} rule=\"REQ LEN-6-50 REPEAT-password\" />\n ]}\n />\n );\n}));\n\nexport default ResetPasswordFormInner;\n","import { useState, useRef } from 'react';\nimport { createWithRemoteLoader } from '@kne/remote-loader';\nimport { Space, Button, App } from 'antd';\nimport { useIntl } from '@kne/react-intl';\nimport withLocale from '../withLocale';\nimport getColumns from './getColumns';\nimport FormInner from './FormInner';\nimport ResetPasswordFormInner from './ResetPasswordFormInner';\nimport md5 from 'md5';\nimport get from 'lodash/get';\n\nconst UserInner = createWithRemoteLoader({\n modules: ['components-core:Layout@TablePage', 'components-core:Filter', 'components-core:FormInfo@useFormModal', 'components-core:Global@usePreset']\n})(({ remoteModules }) => {\n const [TablePage, Filter, useFormModal, usePreset] = remoteModules;\n const { formatMessage } = useIntl();\n const [filter, setFilter] = useState([]);\n const { SearchInput, getFilterValue, fields: filterFields } = Filter;\n const { InputFilterItem, AdvancedSelectFilterItem } = filterFields;\n const { ajax, apis } = usePreset();\n const formModal = useFormModal();\n const { message } = App.useApp();\n const ref = useRef(null);\n const filterValue = getFilterValue(filter);\n return (\n <TablePage\n {...Object.assign({}, apis.admin.getUserList, { params: { filter: filterValue } })}\n pagination={{ paramsType: 'params' }}\n name=\"user-list\"\n ref={ref}\n columns={[\n ...getColumns({ formatMessage }),\n {\n name: 'options',\n title: formatMessage({ id: 'Operation' }),\n type: 'options',\n fixed: 'right',\n valueOf: item => {\n return [\n {\n children: formatMessage({ id: 'EditUser' }),\n onClick: () => {\n const modalApi = formModal({\n title: formatMessage({ id: 'EditUserInfo' }),\n size: 'small',\n children: <FormInner />,\n formProps: {\n data: Object.assign({}, item),\n onSubmit: async data => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.admin.saveUser, {\n data: Object.assign({}, data, { id: item.id })\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'SaveSuccess' }));\n ref.current.reload();\n modalApi.close();\n }\n }\n });\n }\n },\n {\n children: formatMessage({ id: 'ModifyPassword' }),\n onClick: () => {\n const modalApi = formModal({\n title: formatMessage({ id: 'ModifyPassword' }),\n size: 'small',\n children: <ResetPasswordFormInner />,\n formProps: {\n onSubmit: async data => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.admin.resetUserPassword, {\n data: {\n password: md5(data.password),\n userId: item.id\n }\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'ModifyPasswordSuccess' }));\n modalApi.close();\n }\n }\n });\n }\n },\n get(item, 'isSuperAdmin') === true\n ? {\n children: formatMessage({ id: 'CancelSuperAdmin' }),\n message: formatMessage({ id: 'CancelSuperAdminConfirm' }),\n isDelete: false,\n onClick: async () => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.admin.setSuperAdmin, {\n data: { status: false, userId: item.id }\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'SetStatusSuccess' }));\n ref.current.reload();\n }\n }\n : {\n children: formatMessage({ id: 'SetSuperAdmin' }),\n message: formatMessage({ id: 'SetSuperAdminConfirm' }),\n isDelete: false,\n onClick: async () => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.admin.setSuperAdmin, {\n data: { status: true, userId: item.id }\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'SetStatusSuccess' }));\n ref.current.reload();\n }\n },\n ...(() => {\n const list = [];\n if (item.status !== 0) {\n list.push({\n confirm: true,\n children: formatMessage({ id: 'SetNormal' }),\n message: formatMessage({ id: 'SetNormalConfirm' }),\n isDelete: false,\n onClick: async () => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.admin.setUserNormal, {\n data: {\n id: item.id\n }\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'SetNormalSuccess' }));\n ref.current.reload();\n }\n });\n }\n if (item.status !== 12) {\n list.push({\n isDelete: true,\n confirm: true,\n children: formatMessage({ id: 'CloseUser' }),\n message: formatMessage({ id: 'CloseUserConfirm' }),\n okText: formatMessage({ id: 'Confirm' }),\n onClick: async () => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.admin.setUserClose, {\n data: {\n id: item.id\n }\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'CloseUserSuccess' }));\n ref.current.reload();\n }\n });\n }\n return list;\n })()\n ];\n }\n }\n ]}\n page={{\n filter: {\n value: filter,\n onChange: setFilter,\n list: [\n [\n <InputFilterItem label={formatMessage({ id: 'FilterEmail' })} name=\"email\" />,\n <InputFilterItem label={formatMessage({ id: 'FilterPhone' })} name=\"phone\" />,\n <AdvancedSelectFilterItem\n label={formatMessage({ id: 'FilterStatus' })}\n name=\"status\"\n single\n api={{\n loader: () => {\n return {\n pageData: [\n { label: formatMessage({ id: 'Normal' }), value: 0 },\n {\n label: formatMessage({ id: 'NotActivated' }),\n value: 10\n },\n { label: formatMessage({ id: 'Closed' }), value: 12 }\n ]\n };\n }\n }}\n />,\n <AdvancedSelectFilterItem\n label={formatMessage({ id: 'FilterIsAdmin' })}\n name=\"isSuperAdmin\"\n single\n api={{\n loader: () => {\n return {\n pageData: [\n { label: formatMessage({ id: 'Yes' }), value: true },\n { label: formatMessage({ id: 'No' }), value: false }\n ]\n };\n }\n }}\n />\n ]\n ]\n },\n titleExtra: (\n <Space align=\"center\">\n <SearchInput name=\"nickname\" label={formatMessage({ id: 'Nickname' })} />\n <Button\n type=\"primary\"\n onClick={() => {\n const modalApi = formModal({\n title: formatMessage({ id: 'AddUser' }),\n size: 'small',\n children: <FormInner />,\n formProps: {\n onSubmit: async data => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.admin.addUser, {\n data: Object.assign({}, data)\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'AddSuccess' }));\n ref.current.reload();\n modalApi.close();\n }\n }\n });\n }}\n >\n {formatMessage({ id: 'AddUser' })}\n </Button>\n </Space>\n )\n }}\n />\n );\n});\n\nexport default withLocale(UserInner);\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { useEffect } from 'react';\nimport useRefCallback from '@kne/use-ref-callback';\nimport { useNavigate } from 'react-router-dom';\nimport { Result, App } from 'antd';\nimport { useIntl } from '@kne/react-intl';\nimport withLocale from './withLocale';\n\nconst InitAdminInner = createWithRemoteLoader({\n modules: ['components-core:Global@usePreset']\n})(({ remoteModules, baseUrl = '/admin' }) => {\n const [usePreset] = remoteModules;\n const { ajax, apis } = usePreset();\n const { message } = App.useApp();\n const { formatMessage } = useIntl();\n const navigate = useNavigate();\n const initAdmin = useRefCallback(async () => {\n const { data: resData } = await ajax(Object.assign({}, apis.admin.initSuperAdmin));\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'InitSuccess' }));\n navigate(baseUrl, { replace: true });\n });\n\n useEffect(() => {\n initAdmin();\n }, [initAdmin]);\n return (\n <Result\n status=\"warning\"\n title={formatMessage({ id: 'InitSystem' })}\n subTitle={formatMessage({ id: 'InitSystemDesc' })}\n />\n );\n});\n\nexport default withLocale(InitAdminInner);\n","import { Routes, Route, Navigate } from 'react-router-dom';\nimport { Provider } from './context';\nimport User from './User';\n\nconst Admin = ({ baseUrl, ...props }) => {\n return (\n <Provider value={{ baseUrl, ...props }}>\n <Routes>\n <Route path=\"user\" element={<User />} />\n <Route element={<Navigate to={`${baseUrl}/user`} replace />} />\n </Routes>\n </Provider>\n );\n};\n\nexport default Admin;\n\nexport { default as InitAdmin } from './InitAdmin';\n","import * as component_17 from '@components/Webhook';\nconst readmeConfig = {\n name: `Webhook`,\n summary: `<p>用来实现webhook管理</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `Webhook_150c7`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const { default: Webhook } = _Webhook;\nconst BaseExample = () => {\n return <Webhook />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Webhook\",\n packageName: \"@components/Webhook\",\n component: component_17\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import ChildrenRouter from '@kne/app-children-router';\nimport withLocale from './withLocale';\n\nconst TenantAdminInner = ({ baseUrl, ...props }) => {\n return (\n <ChildrenRouter\n {...props}\n baseUrl={`${baseUrl}/tenant`}\n list={[\n {\n index: true,\n loader: () => import('./List')\n },\n {\n path: 'detail',\n loader: () => import('./TabDetail')\n }\n ]}\n />\n );\n};\n\nexport default withLocale(TenantAdminInner);\n","import * as component_7 from '@components/Language';\nconst readmeConfig = {\n name: `Language`,\n summary: `<p>切换系统语言</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `Language_4994a`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const {default:Language} = _Language;\nconst BaseExample = ()=>{\n return <Language />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Language\",\n packageName: \"@components/Language\",\n component: component_7\n}]\n}]\n }\n};\nexport default readmeConfig;\n","const locale = {\n // List columns\n ID: 'ID',\n Name: '名称',\n Status: '状态',\n Description: '描述',\n CreatedAt: '添加时间',\n Open: '开启',\n Close: '关闭',\n All: '全部',\n\n // Actions\n AddTenant: '添加租户',\n EditTenant: '编辑租户',\n AddSuccess: '添加成功',\n RemoveTenantSuccess: '删除租户成功',\n SetStatusSuccess: '设置成功',\n Edit: '编辑',\n Delete: '删除',\n Save: '保存',\n SaveSuccess: '保存成功',\n Operation: '操作',\n Keyword: '关键字',\n OpenTenantConfirm: '确定要开启当前租户吗?',\n CloseTenantConfirm: '确定要关闭当前租户吗?',\n\n // FormInner labels\n TenantName: '租户名称',\n AccountCount: '开通账号数量',\n ServiceTime: '服务时间',\n Logo: 'Logo',\n ThemeColor: '主题色',\n TenantDescription: '描述',\n Type: '类型',\n Key: '键',\n Value: '值',\n IsSecret: '是否密钥',\n\n // Custom Components\n EnvironmentVariables: '环境变量',\n AddEnvironmentVariable: '添加环境变量',\n AddCustomComponent: '添加自定义组件',\n Preview: '预览',\n Copy: '复制',\n EditCustomComponent: '编辑自定义组件',\n CopySuccess: '复制成功',\n ModifySuccess: '修改成功',\n DeleteSuccess: '删除成功',\n\n // Detail\n TenantDetail: '租户详情',\n BasicInfo: '基本信息',\n CompanyInfo: '公司信息',\n OrgStructure: '组织架构',\n UserList: '用户列表',\n Permission: '权限',\n Setting: '设置',\n AccountManagement: '账号管理',\n DetailInfo: '详情信息',\n ServiceTimeRange: '服务时间',\n AccountCountTag: '开通账号数'\n};\n\nexport default locale;\n","const locale = {\n // List columns\n ID: 'ID',\n Name: 'Name',\n Status: 'Status',\n Description: 'Description',\n CreatedAt: 'Created At',\n Open: 'Open',\n Close: 'Close',\n All: 'All',\n\n // Actions\n AddTenant: 'Add Tenant',\n EditTenant: 'Edit Tenant',\n AddSuccess: 'Added successfully',\n RemoveTenantSuccess: 'Tenant deleted successfully',\n SetStatusSuccess: 'Set status successfully',\n Edit: 'Edit',\n Delete: 'Delete',\n Save: 'Save',\n SaveSuccess: 'Saved successfully',\n Operation: 'Operation',\n Keyword: 'Keyword',\n OpenTenantConfirm: 'Are you sure you want to open the current tenant?',\n CloseTenantConfirm: 'Are you sure you want to close the current tenant?',\n\n // FormInner labels\n TenantName: 'Tenant Name',\n AccountCount: 'Account Count',\n ServiceTime: 'Service Time',\n Logo: 'Logo',\n ThemeColor: 'Theme Color',\n TenantDescription: 'Description',\n Type: 'Type',\n Key: 'Key',\n Value: 'Value',\n IsSecret: 'Is Secret',\n\n // Custom Components\n EnvironmentVariables: 'Environment Variables',\n AddEnvironmentVariable: 'Add Environment Variable',\n AddCustomComponent: 'Add Custom Component',\n Preview: 'Preview',\n Copy: 'Copy',\n EditCustomComponent: 'Edit Custom Component',\n CopySuccess: 'Copied successfully',\n ModifySuccess: 'Modified successfully',\n DeleteSuccess: 'Deleted successfully',\n\n // Detail\n TenantDetail: 'Tenant Detail',\n BasicInfo: 'Basic Info',\n CompanyInfo: 'Company Info',\n OrgStructure: 'Organization Structure',\n UserList: 'User List',\n Permission: 'Permission',\n Setting: 'Settings',\n AccountManagement: 'Account Management',\n DetailInfo: 'Detail Info',\n ServiceTimeRange: 'Service Time',\n AccountCountTag: 'Account Count'\n};\n\nexport default locale;\n","import { createWithIntlProvider } from '@kne/react-intl';\nimport zhCN from './locale/zh-CN';\nimport enUS from './locale/en-US';\n\nconst withLocale = createWithIntlProvider({\n defaultLocale: 'zh-CN',\n messages: {\n 'zh-CN': zhCN,\n 'en-US': enUS\n },\n namespace: 'components-admin:TenantAdmin'\n});\n\nexport default withLocale;\n","const getColumns = ({ renderCopyInvokeUrl, renderCopySignature }) => {\n return [\n {\n name: 'id',\n title: 'ID',\n type: 'serialNumber'\n },\n {\n name: 'name',\n title: '名称'\n },\n {\n name: 'url',\n title: '调用路径',\n type: 'otherSmall',\n valueOf: item => {\n return renderCopyInvokeUrl(item);\n }\n },\n {\n name: 'signature',\n title: '签名',\n type: 'otherSmall',\n valueOf: item => {\n return renderCopySignature(item);\n }\n },\n {\n name: 'signatureLocation',\n title: '签名位置'\n },\n {\n name: 'inputLocation',\n title: '输入位置'\n },\n {\n name: 'shouldEncryptVerify',\n title: '是否验证完整性',\n valueOf: item => {\n return item.shouldEncryptVerify ? '是' : '否';\n }\n }\n ];\n};\n\nexport default getColumns;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\n\nconst FormInner = createWithRemoteLoader({\n modules: ['components-core:FormInfo']\n})(({ remoteModules }) => {\n const [FormInfo] = remoteModules;\n const { useFormContext } = FormInfo;\n const { Input, DatePicker, Switch } = FormInfo.fields;\n const { formData } = useFormContext();\n return (\n <FormInfo\n column={1}\n list={[\n <Input name=\"name\" label=\"名称\" description=\"需说明调用webhook的端口的身份\" rule=\"REQ LEN-0-20\" />,\n <Input name=\"signatureLocation\" label=\"签名所在位置\" rule=\"REQ LEN-0-100\" defaultValue=\"headers['x-signature']\" />,\n <Input name=\"inputLocation\" label=\"输入参数位置\" rule=\"REQ LEN-0-100\" defaultValue=\"body\" />,\n <Switch name=\"shouldEncryptVerify\" label=\"body内容签名验证完整性\" display={formData.inputLocation === 'body'} />,\n <DatePicker name=\"expire\" label=\"过期时间\" showTime={{ format: 'HH:mm' }} format=\"YYYY-MM-DD HH:mm\" />\n ]}\n />\n );\n});\n\nexport default FormInner;\n","const getColumns = () => {\n return [\n {\n name: 'id',\n title: 'ID',\n type: 'serialNumber'\n },\n {\n name: 'endTime',\n title: '结束时间',\n type: 'datetime'\n },\n {\n name: 'duration',\n title: '运行时间',\n valueOf: item => {\n return `${new Date(item.endTime).getTime() - new Date(item.startTime).getTime()}ms`;\n }\n },\n {\n name: 'input',\n title: '调用参数',\n type: 'description',\n ellipsis: true,\n valueOf: item => {\n return item.input && JSON.stringify(item.input);\n }\n },\n {\n name: 'status',\n title: '执行状态',\n type: 'tag',\n valueOf: item => {\n if (item.status === 'success') {\n return { type: 'success', text: '成功' };\n }\n return { type: 'error', text: '失败' };\n }\n },\n {\n name: 'result',\n title: '执行结果',\n type: 'description',\n ellipsis: true,\n valueOf: item => {\n return item.result && JSON.stringify(item.result);\n }\n }\n ];\n};\n\nexport default getColumns;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport getColumns from './getColumns';\n\nconst Record = createWithRemoteLoader({\n modules: ['components-core:Table@TablePage', 'components-core:Global@usePreset']\n})(({ remoteModules, id, type }) => {\n const [TablePage, usePreset] = remoteModules;\n const { apis } = usePreset();\n return (\n <TablePage\n {...Object.assign({}, apis.webhook.invokeRecord, {\n params: { id, type }\n })}\n columns={[...getColumns()]}\n />\n );\n});\n\nexport default Record;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport Fetch from '@kne/react-fetch';\nimport { useState } from 'react';\nimport { Button, App, Flex } from 'antd';\nimport getColumns from './getColumns';\nimport FormInner from './FormInner';\nimport Record from './Record';\n\nconst Webhook = createWithRemoteLoader({\n modules: [\n 'components-core:Global@usePreset',\n 'components-core:Layout@TablePage',\n 'components-core:Layout@Menu',\n 'components-core:FormInfo@useFormModal',\n 'components-core:LoadingButton',\n 'components-core:Modal@useModal'\n ]\n})(({ remoteModules, ...props }) => {\n const [usePreset, TablePage, Menu, useFormModal, LoadingButton, useModal] = remoteModules;\n const { apis, ajax } = usePreset();\n const [current, setCurrent] = useState('');\n const formModal = useFormModal();\n const modal = useModal();\n const { message } = App.useApp();\n return (\n <Fetch\n {...Object.assign({}, apis.webhook.list)}\n render={({ data, reload }) => {\n const list = Object.keys(data);\n !(current && data[current]) && setCurrent(list[0]);\n return (\n <TablePage\n {...props}\n params={{ current, data }}\n loader={({ params }) => {\n return { pageData: params.data[params.current] };\n }}\n columns={[\n ...getColumns({\n renderCopyInvokeUrl: () => {\n return (\n <LoadingButton\n type=\"link\"\n className=\"btn-no-padding\"\n onClick={async () => {\n await navigator.clipboard.writeText(`${window.location.origin}${apis.webhook.invoke.url}/${current}`);\n message.success('复制成功');\n }}\n >\n 复制\n </LoadingButton>\n );\n },\n renderCopySignature: item => {\n return (\n <LoadingButton\n type=\"link\"\n className=\"btn-no-padding\"\n onClick={async () => {\n await navigator.clipboard.writeText(item.signature);\n message.success('复制成功');\n }}\n >\n 复制\n </LoadingButton>\n );\n }\n }),\n {\n name: 'options',\n type: 'options',\n title: '操作',\n fixed: 'right',\n valueOf: item => {\n return [\n {\n children: '调用记录',\n onClick: async () => {\n modal({\n title: '调用记录',\n footer: null,\n children: <Record id={item.id} />\n });\n }\n },\n {\n children: '删除',\n confirm: true,\n onClick: async () => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.webhook.remove, {\n data: { id: item.id }\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success('删除成功');\n reload();\n }\n }\n ];\n }\n }\n ]}\n page={{\n menu: list.length > 0 && (\n <Menu\n currentKey={current}\n onChange={setCurrent}\n items={list.map(name => {\n return {\n key: name,\n label: name\n };\n })}\n />\n ),\n title: 'Webhook',\n titleExtra: (\n <Flex gap={8}>\n <Button\n type=\"primary\"\n onClick={() => {\n formModal({\n title: '添加Webhook调用端',\n size: 'small',\n autoClose: true,\n formProps: {\n onSubmit: async formData => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.webhook.create, {\n data: Object.assign({}, formData, {\n type: current\n })\n })\n );\n\n if (resData.code !== 0) {\n return false;\n }\n\n message.success('添加成功');\n reload();\n }\n },\n children: <FormInner />\n });\n }}\n >\n 添加\n </Button>\n <Button\n onClick={() => {\n modal({\n title: '失败记录',\n footer: null,\n children: <Record type={current} />\n });\n }}\n >\n 失败记录\n </Button>\n </Flex>\n )\n }}\n />\n );\n }}\n />\n );\n});\n\nexport default Webhook;\n","import * as component_5 from '@components/BizUnit';\nconst readmeConfig = {\n name: `BizUnit`,\n summary: `<p>完成一个CURD的业务单元</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `BizUnit_6edb5`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const {default:BizUnit} = _BizUnit;\nconst BaseExample = ()=>{\n return <BizUnit />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_BizUnit\",\n packageName: \"@components/BizUnit\",\n component: component_5\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_14 from '@components/Task';\nconst readmeConfig = {\n name: `Task`,\n summary: `<p>用于管理一个Task任务,并查询执行情况</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `Task_eaeb3`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const { default: Task } = _Task;\nconst BaseExample = () => {\n return <Task />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Task\",\n packageName: \"@components/Task\",\n component: component_14\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\n\nconst GroupSelect = createWithRemoteLoader({\n modules: ['components-core:FormInfo']\n})(({ remoteModules }) => {\n\n return <div>unleash creativity</div>;\n});\n\nexport default GroupSelect;\n","import * as component_9 from '@components/Signature';\nconst readmeConfig = {\n name: `Signature`,\n summary: `<p>签名管理模块</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `Signature_8c090`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const { default: Signature } = _Signature;\nconst BaseExample = () => {\n return <Signature />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Signature\",\n packageName: \"@components/Signature\",\n component: component_9\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { Navigate, useLocation } from 'react-router-dom';\nimport Fetch from '@kne/react-fetch';\n\nconst CheckAccountIsInit = ({ data, baseUrl, children }) => {\n const location = useLocation();\n if (data.userInfo.status === 1) {\n return (\n <Navigate\n to={`${baseUrl || ''}/modify/${encodeURIComponent(data.userInfo.email)}?referer=${encodeURIComponent(location.pathname + location.search)}`}\n replace\n />\n );\n }\n\n return children;\n};\n\nexport const CustomUserInfo = createWithRemoteLoader({\n modules: ['components-core:Global@SetGlobal']\n})(({ remoteModules, cache, baseUrl, children, api }) => {\n const [SetGlobal] = remoteModules;\n return (\n <Fetch\n cache={cache}\n {...Object.assign({}, api)}\n render={({ data, reload }) => {\n return (\n <CheckAccountIsInit baseUrl={baseUrl} data={data}>\n <SetGlobal globalKey=\"userInfo\" value={{ value: data.userInfo, reload }} needReady>\n {children}\n </SetGlobal>\n </CheckAccountIsInit>\n );\n }}\n />\n );\n});\n\nexport const UserInfo = createWithRemoteLoader({\n modules: ['components-core:Global@usePreset']\n})(({ remoteModules, ...props }) => {\n const [usePreset] = remoteModules;\n const { apis } = usePreset();\n return <CustomUserInfo {...props} api={apis.user.getUserInfo} cache=\"user-info\" />;\n});\n\nexport const SuperAdminInfo = createWithRemoteLoader({\n modules: ['components-core:Global@SetGlobal', 'components-core:Global@usePreset']\n})(({ remoteModules, children }) => {\n const [SetGlobal, usePreset] = remoteModules;\n const { apis } = usePreset();\n return (\n <Fetch\n cache=\"super-admin-info\"\n {...Object.assign({}, apis.admin.getSuperAdminInfo)}\n render={({ data, reload }) => {\n return (\n <SetGlobal globalKey=\"userInfo\" value={{ value: data.userInfo, reload }} needReady>\n {children}\n </SetGlobal>\n );\n }}\n />\n );\n});\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { Outlet } from 'react-router-dom';\nimport { SuperAdminInfo, UserInfo, CustomUserInfo } from './Authenticate';\nimport UserTool from '@components/UserTool';\nimport Language from '@components/Account/Language';\nimport { Flex } from 'antd';\n\nexport const MainLayout = createWithRemoteLoader({\n modules: ['components-core:Layout']\n})(({ remoteModules, navigation, title, children }) => {\n const [Layout] = remoteModules;\n return (\n <Layout\n navigation={{\n defaultTitle: title,\n ...Object.assign({}, navigation)\n }}>\n {children}\n </Layout>\n );\n});\n\nexport const RightOptions = createWithRemoteLoader({\n modules: ['components-core:Global@GlobalValue']\n})(({ remoteModules }) => {\n const [GlobalValue] = remoteModules;\n\n return (\n <Flex gap={8}>\n <Language />\n <GlobalValue globalKey=\"userInfo\">\n {({ value }) => {\n const { nickname, avatar, email } = Object.assign({}, value?.value);\n return <UserTool name={nickname} email={email} avatar={avatar} />;\n }}\n </GlobalValue>\n </Flex>\n );\n});\n\nexport const AfterCustomUserLoginLayout = ({ baseUrl, navigation, api, children, ...props }) => {\n return (\n <CustomUserInfo baseUrl={baseUrl || '/account'} api={api}>\n <MainLayout\n {...props}\n navigation={Object.assign(\n {},\n {\n rightOptions: <RightOptions />\n },\n navigation\n )}>\n {children || <Outlet />}\n </MainLayout>\n </CustomUserInfo>\n );\n};\n\nexport const AfterCustomUserLogin = ({ baseUrl, api, children, ...props }) => {\n return (\n <CustomUserInfo baseUrl={baseUrl || '/account'} api={api}>\n {children || <Outlet />}\n </CustomUserInfo>\n );\n};\n\nexport const AfterUserLoginLayout = ({ baseUrl, navigation, children, ...props }) => {\n return (\n <UserInfo baseUrl={baseUrl || '/account'}>\n <MainLayout\n {...props}\n navigation={Object.assign(\n {},\n {\n rightOptions: <RightOptions />\n },\n navigation\n )}>\n {children || <Outlet />}\n </MainLayout>\n </UserInfo>\n );\n};\n\nexport const AfterUserLogin = ({ baseUrl, children, ...props }) => {\n return <UserInfo baseUrl={baseUrl || '/account'}>{children || <Outlet />}</UserInfo>;\n};\n\nexport const AfterAdminUserLoginLayout = ({ navigation, children, ...props }) => {\n return (\n <SuperAdminInfo>\n <MainLayout\n {...props}\n navigation={Object.assign(\n {},\n {\n rightOptions: <RightOptions />\n },\n navigation\n )}>\n {children || <Outlet />}\n </MainLayout>\n </SuperAdminInfo>\n );\n};\n\nexport const BeforeLoginLayout = ({ children, ...props }) => {\n return <>{children || <Outlet />}</>;\n};\n","const locale = {\n // FormInner labels\n Avatar: '头像',\n Email: '邮箱',\n Nickname: '昵称',\n Description: '简介',\n\n // SaveUserInfo\n EditUserInfo: '编辑个人基本信息',\n SaveSuccess: '保存成功'\n};\n\nexport default locale;\n","const locale = {\n // FormInner labels\n Avatar: 'Avatar',\n Email: 'Email',\n Nickname: 'Nickname',\n Description: 'Description',\n\n // SaveUserInfo\n EditUserInfo: 'Edit Personal Info',\n SaveSuccess: 'Saved successfully'\n};\n\nexport default locale;\n","import { createWithIntlProvider } from '@kne/react-intl';\nimport zhCN from './locale/zh-CN';\nimport enUS from './locale/en-US';\n\nconst withLocale = createWithIntlProvider({\n defaultLocale: 'zh-CN',\n messages: {\n 'zh-CN': zhCN,\n 'en-US': enUS\n },\n namespace: 'components-admin:Authenticate'\n});\n\nexport default withLocale;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { useIntl } from '@kne/react-intl';\nimport withLocale from './withLocale';\nimport { Flex } from 'antd';\n\nconst UserInfoFormInner = createWithRemoteLoader({\n modules: ['components-core:FormInfo']\n})(withLocale(({ remoteModules, ...props }) => {\n const [FormInfo] = remoteModules;\n const { formatMessage } = useIntl();\n const { Avatar, Input, TextArea } = FormInfo.fields;\n return (\n <FormInfo\n {...props}\n list={[\n <Flex justify=\"center\">\n <Avatar name=\"avatar\" label={formatMessage({ id: 'Avatar' })} labelHidden interceptor=\"photo-string\" />\n </Flex>,\n <Input name=\"email\" label={formatMessage({ id: 'Email' })} rule=\"REQ\" />,\n <Input name=\"nickname\" label={formatMessage({ id: 'Nickname' })} />,\n <TextArea name=\"description\" label={formatMessage({ id: 'Description' })} rule=\"LEN-0-500\" />\n ]}\n />\n );\n}));\n\nexport default UserInfoFormInner;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { useIntl } from '@kne/react-intl';\nimport withLocale from './withLocale';\nimport UserInfoFormInner from './UserInfoFormInner';\nimport { App } from 'antd';\n\nconst SaveUserInfoInner = createWithRemoteLoader({\n modules: ['components-core:FormInfo@useFormModal', 'components-core:Global@usePreset', 'components-core:Global@useGlobalContext']\n})(({ remoteModules, children }) => {\n const [useFormModal, usePreset, useGlobalContext] = remoteModules;\n const formModal = useFormModal();\n const { global } = useGlobalContext('userInfo');\n const { apis, ajax } = usePreset();\n const { message } = App.useApp();\n const { formatMessage } = useIntl();\n return children({\n onClick: () => {\n const modalApi = formModal({\n title: formatMessage({ id: 'EditUserInfo' }),\n size: 'small',\n formProps: {\n data: global.value,\n onSubmit: async data => {\n const { data: resData } = await ajax(\n Object.assign({}, apis.user.saveUserInfo, {\n data\n })\n );\n if (resData.code !== 0) {\n return;\n }\n message.success(formatMessage({ id: 'SaveSuccess' }));\n global.reload();\n modalApi.close();\n }\n },\n children: <UserInfoFormInner column={1} />\n });\n }\n });\n});\n\nexport default withLocale(SaveUserInfoInner);\n","import * as component_12 from '@kne/remote-loader';\nimport * as component_13 from '@components/TenantAdmin';\nconst readmeConfig = {\n name: `TenantAdmin`,\n summary: `<p>租户管理</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: true,\n className: `TenantAdmin_998cc`,\n style: ``,\n list: [{\n title: `列表页`,\n description: `列表页`,\n code: `const { default: List } = _TenantAdmin;\nconst { createWithRemoteLoader } = remoteLoader;\nconst BaseExample = createWithRemoteLoader({\n modules: ['components-core:Global@PureGlobal', 'components-core:Global@usePreset', 'components-core:Layout']\n})(({ remoteModules }) => {\n const [PureGlobal, usePreset, Layout] = remoteModules;\n const { ajax } = usePreset();\n return (\n <PureGlobal\n preset={{\n ajax,\n apis: {\n testApi: {\n getList: {\n loader: () => {\n return {\n pageData: [\n {\n id: 1,\n name: '测试数据',\n description: '测试测试测试测试测试测试测试',\n createdTime: new Date()\n }\n ],\n totalCount: 1\n };\n }\n },\n add: {\n loader: () => {\n return null;\n }\n },\n save: {\n loader: () => {\n return null;\n }\n },\n remove: {\n loader: () => {\n return null;\n }\n }\n }\n }\n }}\n >\n <Layout navigation={{ isFixed: false }}>\n <List />\n </Layout>\n </PureGlobal>\n );\n});\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"remoteLoader\",\n packageName: \"@kne/remote-loader\",\n component: component_12\n},{\n name: \"_TenantAdmin\",\n packageName: \"@components/TenantAdmin\",\n component: component_13\n}]\n},{\n title: `表单页`,\n description: `表单页`,\n code: `const { FormInner } = _TenantAdmin;\nconst { createWithRemoteLoader } = remoteLoader;\nconst BaseExample = createWithRemoteLoader({\n modules: ['components-core:FormInfo@Form']\n})(({ remoteModules }) => {\n const [Form] = remoteModules;\n return (\n <Form>\n <FormInner />\n </Form>\n );\n});\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"remoteLoader\",\n packageName: \"@kne/remote-loader\",\n component: component_12\n},{\n name: \"_TenantAdmin\",\n packageName: \"@components/TenantAdmin\",\n component: component_13\n}]\n},{\n title: `详情页`,\n description: `详情页`,\n code: `const { Detail } = _TenantAdmin;\nconst { createWithRemoteLoader } = remoteLoader;\nconst BaseExample = createWithRemoteLoader({\n modules: ['components-core:Global@PureGlobal', 'components-core:Layout']\n})(({ remoteModules }) => {\n const [PureGlobal, Layout] = remoteModules;\n return (\n <PureGlobal\n preset={{\n apis: {\n testApi: {\n getDetail: {\n loader: () => {\n return {\n id: '1212121212',\n name: '测试测试测试',\n description: '描述描述描述描述描述描述描述描述'\n };\n }\n }\n }\n }\n }}\n >\n <Layout navigation={{ isFixed: false }}>\n <Detail optionFixed={false} />\n </Layout>\n </PureGlobal>\n );\n});\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"remoteLoader\",\n packageName: \"@kne/remote-loader\",\n component: component_12\n},{\n name: \"_TenantAdmin\",\n packageName: \"@components/TenantAdmin\",\n component: component_13\n}]\n},{\n title: `tab详情页`,\n description: `tab详情页`,\n code: `const { TabDetail } = _TenantAdmin;\nconst { createWithRemoteLoader } = remoteLoader;\nconst BaseExample = createWithRemoteLoader({\n modules: ['components-core:Global@PureGlobal', 'components-core:Layout']\n})(({ remoteModules }) => {\n const [PureGlobal, Layout] = remoteModules;\n return (\n <PureGlobal\n preset={{\n apis: {\n testApi: {\n getDetail: {\n loader: () => {\n return {\n id: '1212121212',\n name: '测试测试测试',\n description: '描述描述描述描述描述描述描述描述'\n };\n }\n }\n }\n }\n }}\n >\n <Layout navigation={{ isFixed: false }}>\n <TabDetail optionFixed={false} />\n </Layout>\n </PureGlobal>\n );\n});\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"remoteLoader\",\n packageName: \"@kne/remote-loader\",\n component: component_12\n},{\n name: \"_TenantAdmin\",\n packageName: \"@components/TenantAdmin\",\n component: component_13\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_10 from '@kne/remote-loader';\nimport * as component_11 from '@components/Tenant';\nconst readmeConfig = {\n name: `Tenant`,\n summary: `<p>租户管理</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: true,\n className: `Tenant_6252d`,\n style: ``,\n list: [{\n title: `列表页`,\n description: `列表页`,\n code: `const { default: List } = _Tenant;\nconst { createWithRemoteLoader } = remoteLoader;\nconst BaseExample = createWithRemoteLoader({\n modules: ['components-core:Global@PureGlobal', 'components-core:Global@usePreset', 'components-core:Layout']\n})(({ remoteModules }) => {\n const [PureGlobal, usePreset, Layout] = remoteModules;\n const { ajax } = usePreset();\n return (\n <PureGlobal\n preset={{\n ajax,\n apis: {\n testApi: {\n getList: {\n loader: () => {\n return {\n pageData: [\n {\n id: 1,\n name: '测试数据',\n description: '测试测试测试测试测试测试测试',\n createdTime: new Date()\n }\n ],\n totalCount: 1\n };\n }\n },\n add: {\n loader: () => {\n return null;\n }\n },\n save: {\n loader: () => {\n return null;\n }\n },\n remove: {\n loader: () => {\n return null;\n }\n }\n }\n }\n }}\n >\n <Layout navigation={{ isFixed: false }}>\n <List />\n </Layout>\n </PureGlobal>\n );\n});\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"remoteLoader\",\n packageName: \"@kne/remote-loader\",\n component: component_10\n},{\n name: \"_Tenant\",\n packageName: \"@components/Tenant\",\n component: component_11\n}]\n},{\n title: `表单页`,\n description: `表单页`,\n code: `const { FormInner } = _Tenant;\nconst { createWithRemoteLoader } = remoteLoader;\nconst BaseExample = createWithRemoteLoader({\n modules: ['components-core:FormInfo@Form']\n})(({ remoteModules }) => {\n const [Form] = remoteModules;\n return (\n <Form>\n <FormInner />\n </Form>\n );\n});\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"remoteLoader\",\n packageName: \"@kne/remote-loader\",\n component: component_10\n},{\n name: \"_Tenant\",\n packageName: \"@components/Tenant\",\n component: component_11\n}]\n},{\n title: `详情页`,\n description: `详情页`,\n code: `const { Detail } = _Tenant;\nconst { createWithRemoteLoader } = remoteLoader;\nconst BaseExample = createWithRemoteLoader({\n modules: ['components-core:Global@PureGlobal', 'components-core:Layout']\n})(({ remoteModules }) => {\n const [PureGlobal, Layout] = remoteModules;\n return (\n <PureGlobal\n preset={{\n apis: {\n testApi: {\n getDetail: {\n loader: () => {\n return {\n id: '1212121212',\n name: '测试测试测试',\n description: '描述描述描述描述描述描述描述描述'\n };\n }\n }\n }\n }\n }}\n >\n <Layout navigation={{ isFixed: false }}>\n <Detail optionFixed={false} />\n </Layout>\n </PureGlobal>\n );\n});\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"remoteLoader\",\n packageName: \"@kne/remote-loader\",\n component: component_10\n},{\n name: \"_Tenant\",\n packageName: \"@components/Tenant\",\n component: component_11\n}]\n},{\n title: `tab详情页`,\n description: `tab详情页`,\n code: `const { TabDetail } = _Tenant;\nconst { createWithRemoteLoader } = remoteLoader;\nconst BaseExample = createWithRemoteLoader({\n modules: ['components-core:Global@PureGlobal', 'components-core:Layout']\n})(({ remoteModules }) => {\n const [PureGlobal, Layout] = remoteModules;\n return (\n <PureGlobal\n preset={{\n apis: {\n testApi: {\n getDetail: {\n loader: () => {\n return {\n id: '1212121212',\n name: '测试测试测试',\n description: '描述描述描述描述描述描述描述描述'\n };\n }\n }\n }\n }\n }}\n >\n <Layout navigation={{ isFixed: false }}>\n <TabDetail optionFixed={false} />\n </Layout>\n </PureGlobal>\n );\n});\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"remoteLoader\",\n packageName: \"@kne/remote-loader\",\n component: component_10\n},{\n name: \"_Tenant\",\n packageName: \"@components/Tenant\",\n component: component_11\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_1 from '@components/Account';\nimport * as component_2 from 'antd';\nconst readmeConfig = {\n name: `Account`,\n summary: `<p>用于用户注册登录忘记密码</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: true,\n className: `Account_08bd4`,\n style: ``,\n list: [{\n title: `Login`,\n description: `登录`,\n code: `const { LoginOuterContainer, Login } = _Account;\nconst {Flex, Radio, Space} = antd;\nconst {useState} = React;\nconst BaseExample = () => {\n const [type, setType] = useState('email');\n return (\n <Flex vertical gap={20}>\n <LoginOuterContainer />\n <Flex justify=\"center\">\n <Space><span>类型:</span><Radio.Group value={type} onChange={(e) => {\n setType(e.target.value);\n }} options={[{label: '邮箱', value: 'email'}, {label: '手机', value: 'phone'}]}/></Space>\n </Flex>\n <LoginOuterContainer>\n <Login type={type}/>\n </LoginOuterContainer>\n </Flex>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Account\",\n packageName: \"@components/Account\",\n component: component_1\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_2\n}]\n},{\n title: `Register`,\n description: `注册`,\n code: `const { LoginOuterContainer, Register } = _Account;\nconst { Flex, Radio, Space } = antd;\nconst { useState } = React;\nconst BaseExample = () => {\n const [type, setType] = useState('email');\n return (\n <Flex vertical gap={8}>\n <Space>\n <span>类型:</span>\n <Radio.Group\n value={type}\n onChange={e => {\n setType(e.target.value);\n }}\n options={[\n { label: '邮箱', value: 'email' },\n { label: '手机', value: 'phone' }\n ]}\n />\n </Space>\n <Register type={type} />\n </Flex>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Account\",\n packageName: \"@components/Account\",\n component: component_1\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_2\n}]\n},{\n title: `Modify`,\n description: `修改密码`,\n code: `const {Modify} = _Account;\nconst {Flex} = antd;\nconst BaseExample = () => {\n return <Flex vertical gap={8}>\n <Modify account=\"test@test.com\"/>\n <Modify type=\"phone\" account=\"+81 17029292828\"/>\n </Flex>;\n};\n\nrender(<BaseExample/>);\n\n`,\n scope: [{\n name: \"_Account\",\n packageName: \"@components/Account\",\n component: component_1\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_2\n}]\n},{\n title: `ForgetByEmail`,\n description: `忘记密码(邮箱)`,\n code: `const {LoginOuterContainer, ForgetByEmail} = _Account;\nconst BaseExample = () => {\n return <LoginOuterContainer>\n <ForgetByEmail onSubmit={(data, callback) => {\n callback();\n }}/>\n </LoginOuterContainer>;\n};\n\nrender(<BaseExample/>);\n\n`,\n scope: [{\n name: \"_Account\",\n packageName: \"@components/Account\",\n component: component_1\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_2\n}]\n},{\n title: `ResetPassword`,\n description: `重置密码`,\n code: `const {ResetPassword} = _Account;\nconst {Flex} = antd;\nconst BaseExample = () => {\n return <Flex vertical gap={8}>\n <ResetPassword account=\"test@test.com\"/>\n <ResetPassword type=\"phone\" account=\"+81 17029292828\"/>\n </Flex>;\n};\n\nrender(<BaseExample/>);\n\n`,\n scope: [{\n name: \"_Account\",\n packageName: \"@components/Account\",\n component: component_1\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_2\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_3 from '@components/Authenticate';\nconst readmeConfig = {\n name: `Authenticate`,\n summary: `<p>用户权限用户信息获取</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `Authenticate_ea80a`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const {default:Authenticate} = _Authenticate;\nconst BaseExample = ()=>{\n return <Authenticate />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Authenticate\",\n packageName: \"@components/Authenticate\",\n component: component_3\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_16 from '@components/UserTool';\nconst readmeConfig = {\n name: `UserTool`,\n summary: `<p>导航栏右边用户操作项</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `UserTool_cee11`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const {default:UserTool} = _UserTool;\nconst BaseExample = ()=>{\n return <UserTool />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_UserTool\",\n packageName: \"@components/UserTool\",\n component: component_16\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_4 from '@components/Admin';\nconst readmeConfig = {\n name: `Admin`,\n summary: `<p>用于实现一个管理后台</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `Admin_e3afe`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const {default:Admin} = _Admin;\nconst BaseExample = ()=>{\n return <Admin />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Admin\",\n packageName: \"@components/Admin\",\n component: component_4\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import { createWithRemoteLoader } from '@kne/remote-loader';\n\nconst UserSelect = createWithRemoteLoader({\n modules: ['components-core:Global@usePreset', 'components-core:FormInfo']\n})(({ remoteModules, status = 0, api, ...props }) => {\n const [usePreset, FormInfo] = remoteModules;\n const { apis } = usePreset();\n const { SuperSelectUser } = FormInfo.fields;\n return (\n <SuperSelectUser\n {...props}\n api={Object.assign(\n {},\n apis.admin.getUserList,\n {\n data: {\n filter: Object.assign(\n {},\n Number.isInteger(status) && {\n status\n }\n )\n },\n transformData: data => {\n return Object.assign({}, data, {\n pageData: (data.pageData || []).map(item =>\n Object.assign({}, item, {\n value: item.id,\n label: item.nickname || item.email || item.phone\n })\n )\n });\n }\n },\n api\n )}\n />\n );\n});\n\nexport default UserSelect;\n"],"names":["createWithIntlProvider","defaultLocale","messages","UserToolUnnamed","UserToolLogout","namespace","createWithRemoteLoader","modules","withLocale","_ref","remoteModules","avatar","name","email","storeKeys","token","domain","list","children","Image","Icon","logout","useLogout","formatMessage","useIntl","_jsx","Dropdown","trigger","rootClassName","style","popupRender","_jsxs","Space","direction","className","Avatar","id","size","Divider","List","length","map","item","index","Item","onClick","Flex","gap","flex","iconType","type","label","arrow","transitionName","GlobalValue","Language","globalKey","_ref2","value","userInfo","tenantUser","tenant","UserTool","nickname","orgName","tenantOrgs","join","summary","api","example","isFull","title","description","code","scope","packageName","component","getColumns","valueOf","user","phone","text","TablePage","usePreset","FormInfo","useFormModal","CentralContent","ajax","apis","ref","useRef","TextArea","Input","fields","formModal","modal","App","useApp","message","_objectSpread","Object","assign","signature","pagination","paramsType","page","titleExtra","align","Button","formModalApi","formProps","onSubmit","async","data","resData","create","current","reload","close","info","icon","width","content","vertical","Alert","dataSource","col","columns","column","UserSelect","single","interceptor","maxLength","fixed","saveText","rules","NUM","test","result","errMsg","appId","verify","success","error","concat","rule","status","isModal","isDelete","update","confirm","hidden","remove","context","createContext","Provider","Nickname","Email","Phone","IsSuperAdmin","Status","Description","Yes","No","Normal","NotActivated","Disabled","Closed","Other","AddUser","AddSuccess","EditUser","EditUserInfo","DeleteSuccess","SaveSuccess","Operation","Keyword","UserAvatar","UserNickname","UserEmail","UserPhone","UserDescription","Password","RepeatPassword","ResetPassword","ModifyPassword","ModifyPasswordSuccess","SetSuperAdmin","CancelSuperAdmin","SetSuperAdminConfirm","CancelSuperAdminConfirm","SetNormal","SetNormalConfirm","SetNormalSuccess","CloseUser","CloseUserConfirm","CloseUserSuccess","SetStatusSuccess","FilterEmail","FilterPhone","FilterStatus","FilterIsAdmin","Confirm","InitSystem","InitSystemDesc","InitSuccess","zhCN","enUS","gender","_ref3","_ref4","formModule","PhoneNumber","labelHidden","realtime","format","Filter","filter","setFilter","useState","SearchInput","getFilterValue","filterFields","InputFilterItem","AdvancedSelectFilterItem","filterValue","admin","getUserList","params","modalApi","FormInner","saveUser","ResetPasswordFormInner","resetUserPassword","password","md5","userId","get","setSuperAdmin","push","setUserNormal","okText","setUserClose","onChange","loader","pageData","addUser","baseUrl","navigate","useNavigate","initAdmin","useRefCallback","initSuperAdmin","replace","useEffect","Result","subTitle","props","_objectWithoutProperties","_excluded","Routes","Route","path","element","User","Navigate","to","ChildrenRouter","ID","Name","CreatedAt","Open","Close","All","AddTenant","EditTenant","RemoveTenantSuccess","Edit","Delete","Save","OpenTenantConfirm","CloseTenantConfirm","TenantName","AccountCount","ServiceTime","Logo","ThemeColor","TenantDescription","Type","Key","Value","IsSecret","EnvironmentVariables","AddEnvironmentVariable","AddCustomComponent","Preview","Copy","EditCustomComponent","CopySuccess","ModifySuccess","TenantDetail","BasicInfo","CompanyInfo","OrgStructure","UserList","Permission","Setting","AccountManagement","DetailInfo","ServiceTimeRange","AccountCountTag","renderCopyInvokeUrl","renderCopySignature","shouldEncryptVerify","useFormContext","DatePicker","Switch","formData","defaultValue","display","inputLocation","showTime","Date","endTime","getTime","startTime","ellipsis","input","JSON","stringify","webhook","invokeRecord","Menu","LoadingButton","useModal","setCurrent","Fetch","render","keys","navigator","clipboard","writeText","window","location","origin","invoke","url","footer","Record","menu","currentKey","items","key","autoClose","CheckAccountIsInit","useLocation","encodeURIComponent","pathname","search","CustomUserInfo","cache","SetGlobal","needReady","UserInfo","getUserInfo","SuperAdminInfo","_ref5","getSuperAdminInfo","_ref6","MainLayout","navigation","Layout","defaultTitle","RightOptions","AfterCustomUserLoginLayout","rightOptions","Outlet","AfterCustomUserLogin","_excluded2","AfterUserLoginLayout","_excluded3","AfterUserLogin","_ref7","_excluded4","AfterAdminUserLoginLayout","_ref8","_excluded5","BeforeLoginLayout","_ref9","_excluded6","_Fragment","justify","useGlobalContext","global","saveUserInfo","UserInfoFormInner","SuperSelectUser","Number","isInteger","transformData"],"ignoreList":[],"sourceRoot":""}
|