{"version":3,"file":"js/chunk.688c8bee1e8b2317.js","mappings":"4IA2BA,UAlB4C,SAACA,GAC3C,OACE,SAAC,IAAK,CACJC,YACiB,eAAfD,EAAME,MACJ,4BAAM,WACG,cAAGC,KAAK,8BAA6B,SAAC,OAAM,SAIrDH,EAAMC,aAAe,SAGzBG,OAAO,gBAAKC,IAAKC,KAGvB,C,0GCVMC,EAAoD,SAACP,GACzD,OACE,eACEQ,UAAW,sCACX,YAAU,4BACVL,KAAI,wBAAmBH,EAAMS,MAAMC,KAAM,WAEzC,4BACE,gBAAKL,IAAKL,EAAMS,MAAME,QACtB,iBAAMH,UAAU,eAAc,SAAER,EAAMS,MAAMG,QAC3CZ,EAAMS,MAAMI,aACX,iBAAML,UAAU,uCAAsC,SAAC,UAGzDR,EAAMS,MAAMI,aACZ,iBAAKL,UAAU,aAAY,UACxBR,EAAMS,MAAMK,aAAa,QAAMd,EAAMS,MAAMM,gBAKtD,EA8FA,EAzCK,SAACf,GACJ,OACE,gBAAKQ,UAAS,oCAAsC,UAClD,UAAC,IAAI,YACH,SAAC,YAAY,CAACQ,IAAI,SAAQ,SACvBhB,EAAMiB,aAAaC,OAAS,EAC3BlB,EAAMiB,aAAaE,KAAI,SAACC,GAAI,OAC1B,SAACb,EAAqB,CAAgBE,MAAOW,GAAjBA,EAAKV,IAAoB,KAGvD,gBAAKW,MAAO,CAAEC,UAAW,UAAYd,UAAU,UAAS,UACtD,SAACe,EAAA,QAAS,CAACtB,YAAY,cAPG,WAWhC,SAAC,YAAY,CAACe,IAAI,SAAQ,SACvBhB,EAAMwB,cAAcN,OAAS,EAC5BlB,EAAMwB,cAAcL,KAAI,SAACC,GAAI,OAC3B,SAACb,EAAqB,CAAgBE,MAAOW,GAAjBA,EAAKV,IAAoB,KAGvD,gBAAKW,MAAO,CAAEC,UAAW,UAAYd,UAAU,UAAS,UACtD,SAACe,EAAA,QAAS,CAACtB,YAAY,cAPG,YAwBxC,C,sBC9HA,IADuB,CAAE,KAAQ,CAAE,IAAO,MAAO,MAAS,CAAE,QAAW,gBAAiB,UAAa,SAAW,SAAY,CAAC,CAAE,IAAO,OAAQ,MAAS,CAAE,EAAK,iIAAqI,KAAQ,WAAY,MAAS,W,qBCChU,IADmB,CAAE,KAAQ,CAAE,IAAO,MAAO,MAAS,CAAE,QAAW,gBAAiB,UAAa,SAAW,SAAY,CAAC,CAAE,IAAO,OAAQ,MAAS,CAAC,EAAG,SAAY,CAAC,CAAE,IAAO,QAAS,MAAS,CAAC,KAAQ,CAAE,IAAO,OAAQ,MAAS,CAAE,EAAK,8DAAiE,CAAE,IAAO,OAAQ,MAAS,CAAE,EAAK,gEAAoE,KAAQ,OAAQ,MAAS,W,uECKpawB,EAAmB,SAA0BzB,EAAO0B,GACtD,OAAoBC,EAAAA,cAAoBC,EAAAA,GAAUC,EAAAA,EAAAA,IAAcA,EAAAA,EAAAA,GAAc,CAAC,EAAG7B,GAAQ,CAAC,EAAG,CAC5F0B,IAAKA,EACLI,KAAMC,EAAAA,IAEV,EACAN,EAAiBO,YAAc,mBAC/B,IAA4BL,EAAAA,WAAiBF,E","sources":["webpack:///./src/components/DataEmpty/index.tsx","webpack:///./src/components/group/GroupRightSideBar/index.tsx","webpack:///./node_modules/@ant-design/icons-svg/es/asn/EllipsisOutlined.js","webpack:///./node_modules/@ant-design/icons-svg/es/asn/PlusOutlined.js","webpack:///./node_modules/@ant-design/icons/es/icons/EllipsisOutlined.js"],"sourcesContent":["// 数据为空显示组件\nimport emptySvg from '@/static/imgs/empty.svg';\nimport { Empty } from 'antd';\n\ntype DataEmptyProps = {\n description?: string; // 显示文字\n kind?: string;\n};\n\nconst DataEmpty: React.FC<DataEmptyProps> = (props) => {\n return (\n <Empty\n description={\n props.kind === 'mall_order' ? (\n <span>\n 您还未兑换,去<a href=\"/mall/?page=1&category=惊喜好物\">商城</a>\n 看看~\n </span>\n ) : (\n props.description || '暂无匹配数据'\n )\n }\n image={<img src={emptySvg} />}\n />\n );\n};\n\nexport default DataEmpty;\n","import DataEmpty from '@/components/DataEmpty';\nimport { Tabs } from 'antd';\nimport './index.scss';\n\ntype Group = {\n is_private: boolean;\n is_user_joined: boolean;\n logo: string;\n member_count: number;\n post_count: number;\n title: string;\n uid: string;\n user_has_pending_application: boolean;\n};\n\nconst GroupRightSideBarItem: React.FC<{ group: Group }> = (props) => {\n return (\n <a\n className={'group-right-slider-bar-item mt-16px'}\n data-flex=\"main:justify cross:center\"\n href={`/group/groups/${props.group.uid}`}\n >\n <div>\n <img src={props.group.logo} />\n <span className=\"title ml-8px\">{props.group.title}</span>\n {props.group.is_private && (\n <span className=\"ml-4px text-12px p-2px private-label\">私</span>\n )}\n </div>\n {!props.group.is_private && (\n <div className=\"statistics\">\n {props.group.member_count}成员·讨论{props.group.post_count}\n </div>\n )}\n </a>\n );\n};\n\n// // 携带状态信息(显示加入按钮)\n// const GroupRightSideBarWithStatusItem: React.FC<{ group: Group }> = (props) => {\n// const [canJoin, setCanJoin] = useState<boolean>(\n// !(props.group.user_has_pending_application || props.group.is_user_joined),\n// )\n// return (\n// <div\n// data-flex=\"cross:center main:justify\"\n// className={\"group-right-slider-bar-status-item mt-16px\"}\n// >\n// <div data-flex>\n// <img src={props.group.logo} />\n// <div className=\"ml-8px\">\n// <div className=\"title\">{props.group.title}</div>\n// <div className=\"statistics\">\n// {props.group.member_count}成员·讨论{props.group.post_count}\n// </div>\n// </div>\n// </div>\n// <ButtonRender\n// text={\n// props.group.user_has_pending_application\n// ? \"待审核\"\n// : props.group.is_user_joined\n// ? \"已加入\"\n// : canJoin\n// ? \"加入\"\n// : \"待审核\"\n// }\n// onClick={async () => {\n// try {\n// await api.applyGroup(props.group.uid)\n// message.success(\"申请成功\")\n// setCanJoin(false)\n// } catch (err: any) {\n// message.error(err.data.message)\n// }\n// }}\n// disabled={!canJoin}\n// style={{ color: \"#4E5969\", fontSize: \"12px\" }}\n// size=\"small\"\n// className=\"join-button\"\n// />\n// </div>\n// )\n// }\n\nconst GroupRightSideBar: React.FC<{\n createdGroups: Group[];\n joinedGroups: Group[];\n recommendGroups: Group[];\n}> = (props) => {\n return (\n <div className={`group-right-slider-bar-container `}>\n <Tabs>\n <Tabs.TabPane tab=\"我加入的圈子\" key={'joined'}>\n {props.joinedGroups.length > 0 ? (\n props.joinedGroups.map((item) => (\n <GroupRightSideBarItem key={item.uid} group={item} />\n ))\n ) : (\n <div style={{ textAlign: 'center' }} className=\"mt-20px\">\n <DataEmpty description=\"暂无匹配数据\" />\n </div>\n )}\n </Tabs.TabPane>\n <Tabs.TabPane tab=\"我创建的圈子\" key={'mine'}>\n {props.createdGroups.length > 0 ? (\n props.createdGroups.map((item) => (\n <GroupRightSideBarItem key={item.uid} group={item} />\n ))\n ) : (\n <div style={{ textAlign: 'center' }} className=\"mt-20px\">\n <DataEmpty description=\"暂无匹配数据\" />\n </div>\n )}\n </Tabs.TabPane>\n </Tabs>\n {/* <div className=\"mt-20px slide-bar-recommendation p-16px\">\n <div className=\"title\">为你推荐</div>\n {\n props.recommendGroups.length > 0 ? props.recommendGroups?.map((item) => (\n <GroupRightSideBarWithStatusItem key={item.uid} group={item} />\n )): <div style={{ textAlign: 'center' }} className=\"mt-20px\">\n <DataEmpty description=\"暂无匹配数据\" />\n </div>\n }\n </div> */}\n </div>\n );\n};\n\nexport default GroupRightSideBar;\n","// This icon file is generated automatically.\nvar EllipsisOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M176 511a56 56 0 10112 0 56 56 0 10-112 0zm280 0a56 56 0 10112 0 56 56 0 10-112 0zm280 0a56 56 0 10112 0 56 56 0 10-112 0z\" } }] }, \"name\": \"ellipsis\", \"theme\": \"outlined\" };\nexport default EllipsisOutlined;\n","// This icon file is generated automatically.\nvar PlusOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"defs\", \"attrs\": {}, \"children\": [{ \"tag\": \"style\", \"attrs\": {} }] }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M482 152h60q8 0 8 8v704q0 8-8 8h-60q-8 0-8-8V160q0-8 8-8z\" } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M176 474h672q8 0 8 8v60q0 8-8 8H176q-8 0-8-8v-60q0-8 8-8z\" } }] }, \"name\": \"plus\", \"theme\": \"outlined\" };\nexport default PlusOutlined;\n","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport EllipsisOutlinedSvg from \"@ant-design/icons-svg/es/asn/EllipsisOutlined\";\nimport AntdIcon from '../components/AntdIcon';\nvar EllipsisOutlined = function EllipsisOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: EllipsisOutlinedSvg\n }));\n};\nEllipsisOutlined.displayName = 'EllipsisOutlined';\nexport default /*#__PURE__*/React.forwardRef(EllipsisOutlined);"],"names":["props","description","kind","href","image","src","emptySvg","GroupRightSideBarItem","className","group","uid","logo","title","is_private","member_count","post_count","tab","joinedGroups","length","map","item","style","textAlign","DataEmpty","createdGroups","EllipsisOutlined","ref","React","AntdIcon","_objectSpread","icon","EllipsisOutlinedSvg","displayName"],"sourceRoot":""}