@robot-admin/naive-ui-components 0.8.1 → 0.8.2
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/README.md +279 -279
- package/dist/C_ActionBar-DYG0Yf3A.css.map +1 -0
- package/dist/C_ActionBar-MAjRhqcI.css.map +1 -0
- package/dist/C_ActionBar.cjs +1 -1
- package/dist/C_ActionBar.css +47 -47
- package/dist/C_ActionBar.js +1 -1
- package/dist/C_ActionBar.js.map +1 -1
- package/dist/C_ActionBar2.js +1 -1
- package/dist/C_ActionBar2.js.map +1 -1
- package/dist/{C_AntV-A3NXx_sF.css.map → C_AntV-BY8jqqmi.css.map} +1 -1
- package/dist/{C_AntV-D2Zp2qQF.css.map → C_AntV-BbkHc-_a.css.map} +1 -1
- package/dist/C_AntV.cjs +1 -1
- package/dist/C_AntV.css +78 -78
- package/dist/C_AntV.js +1 -1
- package/dist/C_AntV.js.map +1 -1
- package/dist/C_AntV2.js +3 -3
- package/dist/C_AntV2.js.map +1 -1
- package/dist/{C_AudioPlayer-CXl4yP_m.css.map → C_AudioPlayer-DKRIGhi7.css.map} +1 -1
- package/dist/{C_AudioPlayer-CcBtt71m.css.map → C_AudioPlayer-DlB6eNsa.css.map} +1 -1
- package/dist/C_AudioPlayer.cjs +1 -1
- package/dist/C_AudioPlayer.css +47 -47
- package/dist/C_AudioPlayer.js +1 -1
- package/dist/C_AudioPlayer.js.map +1 -1
- package/dist/C_AudioPlayer2.js +1 -1
- package/dist/C_AudioPlayer2.js.map +1 -1
- package/dist/{C_AvatarGroup-CtPhfH9h.css.map → C_AvatarGroup-D02zci-i.css.map} +1 -1
- package/dist/{C_AvatarGroup-M1dNPH3E.css.map → C_AvatarGroup-DatHaUlY.css.map} +1 -1
- package/dist/C_AvatarGroup.css +21 -21
- package/dist/C_AvatarGroup.js.map +1 -1
- package/dist/C_AvatarGroup2.js +1 -1
- package/dist/C_AvatarGroup2.js.map +1 -1
- package/dist/{C_Barcode-DjTmDkbQ.css.map → C_Barcode-DYDRDe2O.css.map} +1 -1
- package/dist/{C_Barcode-Do1Ozsmh.css.map → C_Barcode-muJdc_O4.css.map} +1 -1
- package/dist/C_Barcode.css +7 -7
- package/dist/C_Barcode.js.map +1 -1
- package/dist/C_Barcode2.js +1 -1
- package/dist/C_Barcode2.js.map +1 -1
- package/dist/C_Breadcrumb.cjs +1 -1
- package/dist/C_Breadcrumb.js +1 -1
- package/dist/C_Breadcrumb.js.map +1 -1
- package/dist/C_Breadcrumb2.js +1 -1
- package/dist/C_Breadcrumb2.js.map +1 -1
- package/dist/{C_Captcha-CZmAETly.css.map → C_Captcha-9_hk6VmY.css.map} +1 -1
- package/dist/{C_Captcha-Ccq3DMrR.css.map → C_Captcha-MtASlJ0f.css.map} +1 -1
- package/dist/C_Captcha.css +19 -19
- package/dist/C_Captcha.js.map +1 -1
- package/dist/C_Captcha2.js +1 -1
- package/dist/C_Captcha2.js.map +1 -1
- package/dist/C_Cascade.js.map +1 -1
- package/dist/C_Cascade2.js +1 -1
- package/dist/C_Cascade2.js.map +1 -1
- package/dist/{C_Chat-CJ8KESTM.css.map → C_Chat-Csjz_BFw.css.map} +1 -1
- package/dist/{C_Chat-DzV4AFLd.css.map → C_Chat-DO1ZBA_0.css.map} +1 -1
- package/dist/C_Chat.cjs +1 -1
- package/dist/C_Chat.css +65 -65
- package/dist/C_Chat.js +1 -1
- package/dist/C_Chat.js.map +1 -1
- package/dist/C_Chat2.js +1 -1
- package/dist/C_Chat2.js.map +1 -1
- package/dist/{C_City-Cv5BESaN.css.map → C_City-Bam08Qv3.css.map} +1 -1
- package/dist/{C_City-DNKv4MpH.css.map → C_City-Bb3W-KaN.css.map} +1 -1
- package/dist/C_City.css +29 -29
- package/dist/C_City.js.map +1 -1
- package/dist/C_City2.js +1 -1
- package/dist/C_City2.js.map +1 -1
- package/dist/C_Code-BFi5xxnM.css.map +1 -0
- package/dist/C_Code-CZ7yfnri.css.map +1 -0
- package/dist/C_Code.cjs +1 -1
- package/dist/C_Code.css +3 -3
- package/dist/C_Code.js +1 -1
- package/dist/C_Code.js.map +1 -1
- package/dist/C_Code2.js +1 -1
- package/dist/C_Code2.js.map +1 -1
- package/dist/{C_CollapsePanel-CedsEM0N.css.map → C_CollapsePanel-CWkFCqNQ.css.map} +1 -1
- package/dist/{C_CollapsePanel-BkOivqn3.css.map → C_CollapsePanel-pcVJA_4z.css.map} +1 -1
- package/dist/C_CollapsePanel.cjs +1 -1
- package/dist/C_CollapsePanel.css +35 -35
- package/dist/C_CollapsePanel.js +1 -1
- package/dist/C_CollapsePanel.js.map +1 -1
- package/dist/C_CollapsePanel2.js +1 -1
- package/dist/C_CollapsePanel2.js.map +1 -1
- package/dist/{C_ContextMenu-CCsCeI39.css.map → C_ContextMenu-B3Cgz_wJ.css.map} +1 -1
- package/dist/{C_ContextMenu-DOTBeltf.css.map → C_ContextMenu-u1LixF3_.css.map} +1 -1
- package/dist/C_ContextMenu.cjs +1 -1
- package/dist/C_ContextMenu.css +17 -17
- package/dist/C_ContextMenu.js +1 -1
- package/dist/C_ContextMenu.js.map +1 -1
- package/dist/C_ContextMenu2.js +1 -1
- package/dist/C_ContextMenu2.js.map +1 -1
- package/dist/{C_Cron-C0-8b5af.css.map → C_Cron-Civir5-I.css.map} +1 -1
- package/dist/{C_Cron-DqHQ92LN.css.map → C_Cron-iw3qpMsy.css.map} +1 -1
- package/dist/C_Cron.cjs +1 -1
- package/dist/C_Cron.css +37 -37
- package/dist/C_Cron.js +1 -1
- package/dist/C_Cron.js.map +1 -1
- package/dist/C_Cron2.js +1 -1
- package/dist/C_Cron2.js.map +1 -1
- package/dist/C_Date.js.map +1 -1
- package/dist/C_Date2.js +1 -1
- package/dist/C_Date2.js.map +1 -1
- package/dist/{C_Draggable-Bq6o0qXn.css.map → C_Draggable-BCjIvIwT.css.map} +1 -1
- package/dist/{C_Draggable-r6nhx3yM.css.map → C_Draggable-DwkSlCOS.css.map} +1 -1
- package/dist/C_Draggable.css +46 -46
- package/dist/C_Draggable.js.map +1 -1
- package/dist/C_Draggable2.js +1 -1
- package/dist/C_Draggable2.js.map +1 -1
- package/dist/C_Editor-BfjjYQ9B.css.map +1 -0
- package/dist/C_Editor-Do2StvoJ.css.map +1 -0
- package/dist/C_Editor.css +55 -55
- package/dist/C_Editor.js.map +1 -1
- package/dist/C_Editor2.js +1 -1
- package/dist/C_Editor2.js.map +1 -1
- package/dist/{C_FilePreview-BVarVvnD.css.map → C_FilePreview-BhcbiXsV.css.map} +1 -1
- package/dist/{C_FilePreview-DHGlV4OR.css.map → C_FilePreview-DJudcIbW.css.map} +1 -1
- package/dist/C_FilePreview.cjs +1 -1
- package/dist/C_FilePreview.css +91 -91
- package/dist/C_FilePreview.js +1 -1
- package/dist/C_FilePreview.js.map +1 -1
- package/dist/C_FilePreview2.js +1 -1
- package/dist/C_FilePreview2.js.map +1 -1
- package/dist/{C_Form-BciQUPpS.css.map → C_Form-BtcAPIRi.css.map} +1 -1
- package/dist/{C_Form-CKHvXL3O.css.map → C_Form-D_gwQ7hC.css.map} +1 -1
- package/dist/C_Form.cjs +1 -1
- package/dist/C_Form.css +222 -222
- package/dist/C_Form.js +1 -1
- package/dist/C_Form.js.map +1 -1
- package/dist/C_Form2.js +1 -1
- package/dist/C_Form2.js.map +1 -1
- package/dist/{C_FormSearch-Bmd2CmG6.css.map → C_FormSearch-Bi4XYjjk.css.map} +1 -1
- package/dist/{C_FormSearch-DBNtnjaL.css.map → C_FormSearch-DUGOoX0u.css.map} +1 -1
- package/dist/C_FormSearch.css +45 -45
- package/dist/C_FormSearch.js.map +1 -1
- package/dist/C_FormSearch2.js +1 -1
- package/dist/C_FormSearch2.js.map +1 -1
- package/dist/{C_FormulaEditor-3WG2vtQl.css.map → C_FormulaEditor-CJk3SSUJ.css.map} +1 -1
- package/dist/{C_FormulaEditor-Cm0CokN5.css.map → C_FormulaEditor-Cy7mjfVO.css.map} +1 -1
- package/dist/C_FormulaEditor.cjs +1 -1
- package/dist/C_FormulaEditor.css +78 -78
- package/dist/C_FormulaEditor.js +1 -1
- package/dist/C_FormulaEditor.js.map +1 -1
- package/dist/C_FormulaEditor2.js +1 -1
- package/dist/C_FormulaEditor2.js.map +1 -1
- package/dist/C_FullCalendar-BQA0OjGB.css.map +1 -0
- package/dist/C_FullCalendar-ChJUosAi.css.map +1 -0
- package/dist/C_FullCalendar.css +3 -3
- package/dist/C_FullCalendar.js.map +1 -1
- package/dist/C_FullCalendar2.js +1 -1
- package/dist/C_FullCalendar2.js.map +1 -1
- package/dist/C_GlobalSearch.js.map +1 -1
- package/dist/C_GlobalSearch2.js.map +1 -1
- package/dist/C_Guide.cjs +1 -1
- package/dist/C_Guide.js +1 -1
- package/dist/C_Guide.js.map +1 -1
- package/dist/C_Guide2.js +1 -1
- package/dist/C_Guide2.js.map +1 -1
- package/dist/C_Icon.js.map +1 -1
- package/dist/C_Icon2.js +1 -1
- package/dist/C_Icon2.js.map +1 -1
- package/dist/{C_ImageCropper-D3L2-J_J.css.map → C_ImageCropper-BqZpkZfU.css.map} +1 -1
- package/dist/{C_ImageCropper-DrmUlaLi.css.map → C_ImageCropper-CylwGuzS.css.map} +1 -1
- package/dist/C_ImageCropper.cjs +1 -1
- package/dist/C_ImageCropper.css +10 -10
- package/dist/C_ImageCropper.js +1 -1
- package/dist/C_ImageCropper.js.map +1 -1
- package/dist/C_ImageCropper2.js +1 -1
- package/dist/C_ImageCropper2.js.map +1 -1
- package/dist/C_Language.cjs +1 -1
- package/dist/C_Language.js +1 -1
- package/dist/C_Language.js.map +1 -1
- package/dist/C_Language2.js +1 -1
- package/dist/C_Language2.js.map +1 -1
- package/dist/{C_Login-Cst_W1XC.css.map → C_Login-BkdnkBKX.css.map} +1 -1
- package/dist/{C_Login-DWZ_6K1x.css.map → C_Login-VkMM6OJ2.css.map} +1 -1
- package/dist/C_Login.cjs +1 -1
- package/dist/C_Login.css +72 -72
- package/dist/C_Login.js +1 -1
- package/dist/C_Login.js.map +1 -1
- package/dist/C_Login2.js +1 -1
- package/dist/C_Login2.js.map +1 -1
- package/dist/{C_Map-BCJmDnJT.css.map → C_Map-DNnBcY70.css.map} +1 -1
- package/dist/{C_Map-WUMXSAfy.css.map → C_Map-LEXIx6zM.css.map} +1 -1
- package/dist/C_Map.css +4 -4
- package/dist/C_Map.js.map +1 -1
- package/dist/C_Map2.js +1 -1
- package/dist/C_Map2.js.map +1 -1
- package/dist/{C_Markdown-7J0uPEuk.css.map → C_Markdown-DwmI0_0Q.css.map} +1 -1
- package/dist/{C_Markdown-C7Lg0_9z.css.map → C_Markdown-k0794RW0.css.map} +1 -1
- package/dist/C_Markdown.css +33 -33
- package/dist/C_Markdown.js.map +1 -1
- package/dist/C_Markdown2.js +1 -1
- package/dist/C_Markdown2.js.map +1 -1
- package/dist/C_Menu.js.map +1 -1
- package/dist/C_Menu2.js +1 -1
- package/dist/C_Menu2.js.map +1 -1
- package/dist/C_NotificationCenter.cjs +1 -1
- package/dist/C_NotificationCenter.js +1 -1
- package/dist/C_NotificationCenter.js.map +1 -1
- package/dist/C_NotificationCenter2.js +1 -1
- package/dist/C_NotificationCenter2.js.map +1 -1
- package/dist/C_OrgChart.js.map +1 -1
- package/dist/C_OrgChart2.js +1 -1
- package/dist/C_OrgChart2.js.map +1 -1
- package/dist/C_Progress.js.map +1 -1
- package/dist/C_Progress2.js +1 -1
- package/dist/C_Progress2.js.map +1 -1
- package/dist/{C_QRCode-DMxSyogU.css.map → C_QRCode-CFNTda_1.css.map} +1 -1
- package/dist/{C_QRCode-G7fiAkm4.css.map → C_QRCode-CmWr9lK-.css.map} +1 -1
- package/dist/C_QRCode.css +9 -9
- package/dist/C_QRCode.js.map +1 -1
- package/dist/C_QRCode2.js +1 -1
- package/dist/C_QRCode2.js.map +1 -1
- package/dist/{C_Signature-BJMvVPWT.css.map → C_Signature-BDx4ctsE.css.map} +1 -1
- package/dist/{C_Signature-BJUHx2BF.css.map → C_Signature-Bz_uNbwv.css.map} +1 -1
- package/dist/C_Signature.cjs +1 -1
- package/dist/C_Signature.css +15 -15
- package/dist/C_Signature.js +1 -1
- package/dist/C_Signature.js.map +1 -1
- package/dist/C_Signature2.js +1 -1
- package/dist/C_Signature2.js.map +1 -1
- package/dist/C_Skeleton.js.map +1 -1
- package/dist/C_Skeleton2.js +1 -1
- package/dist/C_Skeleton2.js.map +1 -1
- package/dist/{C_SplitPane-Br2eK8IG.css.map → C_SplitPane-BOwr1C7K.css.map} +1 -1
- package/dist/{C_SplitPane-DuyzUhKB.css.map → C_SplitPane-N-a_D-7F.css.map} +1 -1
- package/dist/C_SplitPane.cjs +1 -1
- package/dist/C_SplitPane.css +31 -31
- package/dist/C_SplitPane.js +1 -1
- package/dist/C_SplitPane.js.map +1 -1
- package/dist/C_SplitPane2.js +1 -1
- package/dist/C_SplitPane2.js.map +1 -1
- package/dist/C_Steps-Bk1krgiR.css.map +1 -0
- package/dist/C_Steps-Dn2CMpy1.css.map +1 -0
- package/dist/C_Steps.css +38 -38
- package/dist/C_Steps.js.map +1 -1
- package/dist/C_Steps2.js +1 -1
- package/dist/C_Steps2.js.map +1 -1
- package/dist/C_Table.cjs +1 -1
- package/dist/C_Table.js +1 -1
- package/dist/C_Table.js.map +1 -1
- package/dist/C_Table2.js +2 -2
- package/dist/C_Table2.js.map +1 -1
- package/dist/{C_TagsView-BsutyC3U.css.map → C_TagsView-DX3LecK1.css.map} +1 -1
- package/dist/{C_TagsView-Crm7yWg9.css.map → C_TagsView-DqOTa8bL.css.map} +1 -1
- package/dist/C_TagsView.cjs +1 -1
- package/dist/C_TagsView.css +36 -36
- package/dist/C_TagsView.js +1 -1
- package/dist/C_TagsView.js.map +1 -1
- package/dist/C_TagsView2.js +1 -1
- package/dist/C_TagsView2.js.map +1 -1
- package/dist/C_Theme.cjs +1 -1
- package/dist/C_Theme.js +1 -1
- package/dist/C_Theme.js.map +1 -1
- package/dist/C_Theme2.js +1 -1
- package/dist/C_Theme2.js.map +1 -1
- package/dist/C_Time-BzyQVvTS.css.map +1 -0
- package/dist/C_Time-DmpKLQHc.css.map +1 -0
- package/dist/C_Time.css +5 -5
- package/dist/C_Time.js.map +1 -1
- package/dist/C_Time2.js +1 -1
- package/dist/C_Time2.js.map +1 -1
- package/dist/{C_Timeline-DG70WtJP.css.map → C_Timeline-BKkimrZx.css.map} +1 -1
- package/dist/{C_Timeline-Dzxmmdjg.css.map → C_Timeline-DTuSCX6p.css.map} +1 -1
- package/dist/C_Timeline.cjs +1 -1
- package/dist/C_Timeline.css +45 -45
- package/dist/C_Timeline.js +1 -1
- package/dist/C_Timeline.js.map +1 -1
- package/dist/C_Timeline2.js +1 -1
- package/dist/C_Timeline2.js.map +1 -1
- package/dist/{C_Transfer-CCEqnC-v.css.map → C_Transfer-BOB6OBqS.css.map} +1 -1
- package/dist/{C_Transfer-CStPm4NP.css.map → C_Transfer-Dpq7ezWC.css.map} +1 -1
- package/dist/C_Transfer.cjs +1 -1
- package/dist/C_Transfer.css +31 -31
- package/dist/C_Transfer.js +1 -1
- package/dist/C_Transfer.js.map +1 -1
- package/dist/C_Transfer2.js +1 -1
- package/dist/C_Transfer2.js.map +1 -1
- package/dist/{C_Tree-B-Le4hjQ.css.map → C_Tree-D98nX9qT.css.map} +1 -1
- package/dist/{C_Tree-DnGc_MPb.css.map → C_Tree-ulfm7b-P.css.map} +1 -1
- package/dist/C_Tree.cjs +1 -1
- package/dist/C_Tree.css +33 -33
- package/dist/C_Tree.js +1 -1
- package/dist/C_Tree.js.map +1 -1
- package/dist/C_Tree2.js +1 -1
- package/dist/C_Tree2.js.map +1 -1
- package/dist/{C_Upload-CFAxVGVz.css.map → C_Upload-BR9fg5r4.css.map} +1 -1
- package/dist/{C_Upload-D8_QeSV0.css.map → C_Upload-CPqf74Ea.css.map} +1 -1
- package/dist/C_Upload.cjs +1 -1
- package/dist/C_Upload.css +4 -4
- package/dist/C_Upload.js +1 -1
- package/dist/C_Upload.js.map +1 -1
- package/dist/C_Upload2.js +2 -2
- package/dist/C_Upload2.js.map +1 -1
- package/dist/{C_VideoPlayer-Cdgv4Zq0.css.map → C_VideoPlayer-4J96tKfK.css.map} +1 -1
- package/dist/{C_VideoPlayer-rm0MODUv.css.map → C_VideoPlayer-D35seHkm.css.map} +1 -1
- package/dist/C_VideoPlayer.css +13 -13
- package/dist/C_VideoPlayer.js.map +1 -1
- package/dist/C_VideoPlayer2.js +3 -3
- package/dist/C_VideoPlayer2.js.map +1 -1
- package/dist/{C_VtableGantt-BpY-Rng3.css.map → C_VtableGantt-C2lxFmWg.css.map} +1 -1
- package/dist/{C_VtableGantt-DB87-jdS.css.map → C_VtableGantt-Dwnkw_WL.css.map} +1 -1
- package/dist/C_VtableGantt.cjs +1 -1
- package/dist/C_VtableGantt.css +15 -15
- package/dist/C_VtableGantt.js +1 -1
- package/dist/C_VtableGantt.js.map +1 -1
- package/dist/C_VtableGantt2.js +1 -1
- package/dist/C_VtableGantt2.js.map +1 -1
- package/dist/C_WaterFall.js.map +1 -1
- package/dist/C_WaterFall2.js +1 -1
- package/dist/C_WaterFall2.js.map +1 -1
- package/dist/{C_WorkFlow-7F6op6qN.css.map → C_WorkFlow-2hJfvvTK.css.map} +1 -1
- package/dist/{C_WorkFlow-Cy3HWA6A.css.map → C_WorkFlow-DHoNjl8-.css.map} +1 -1
- package/dist/C_WorkFlow.cjs +1 -1
- package/dist/C_WorkFlow.css +108 -108
- package/dist/C_WorkFlow.js +1 -1
- package/dist/C_WorkFlow.js.map +1 -1
- package/dist/C_WorkFlow2.js +1 -1
- package/dist/C_WorkFlow2.js.map +1 -1
- package/dist/constants.d.ts +2 -2
- package/dist/constants2.d.ts +4 -4
- package/dist/constants3.d.ts +2 -2
- package/dist/constants4.d.ts +6 -6
- package/dist/constants5.d.ts +4 -4
- package/dist/index.cjs.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.vue.d.ts +2 -2
- package/dist/index10.vue.d.ts +1 -1
- package/dist/index12.vue.d.ts +2 -2
- package/dist/index13.vue.d.ts +3 -3
- package/dist/index14.vue.d.ts +3 -3
- package/dist/index15.vue.d.ts +7 -7
- package/dist/index17.vue.d.ts +1 -1
- package/dist/index18.vue.d.ts +5 -5
- package/dist/index2.vue.d.ts +2 -2
- package/dist/index20.vue.d.ts +1 -1
- package/dist/index21.vue.d.ts +3 -3
- package/dist/index22.vue.d.ts +1 -1
- package/dist/index26.vue.d.ts +4 -4
- package/dist/index27.vue.d.ts +2 -2
- package/dist/index28.vue.d.ts +3 -3
- package/dist/index4.vue.d.ts +7 -7
- package/dist/index6.vue.d.ts +3 -3
- package/dist/index8.vue.d.ts +4 -4
- package/dist/menuAdapter.js.map +1 -1
- package/dist/resolver.cjs.map +1 -1
- package/dist/resolver.js.map +1 -1
- package/dist/style.css +1483 -1483
- package/dist/useCalendarEvents.d.ts +1 -1
- package/dist/useCollapsePanel.d.ts +3 -3
- package/dist/useCropperCore.d.ts +5 -5
- package/dist/useDraggableLayout.d.ts +5 -5
- package/dist/useDynamicFormState.d.ts +21 -21
- package/dist/useEdgeInteraction.d.ts +3 -3
- package/dist/useFullscreen.d.ts +2 -2
- package/dist/useInfiniteScroll.d.ts +3 -3
- package/dist/useModalEdit.d.ts +1 -1
- package/dist/useQRCode.d.ts +5 -5
- package/dist/useSearchState.d.ts +2 -2
- package/dist/useSignatureHistory.d.ts +5 -5
- package/dist/useSplitResize.d.ts +4 -4
- package/dist/useTimeSelection.d.ts +2 -2
- package/dist/useTreeOperations.d.ts +3 -3
- package/dist/useWorkflowValidation.d.ts +2 -2
- package/package.json +5 -5
- package/dist/C_ActionBar-jZPsiXtT.css.map +0 -1
- package/dist/C_ActionBar-nnfbZCea.css.map +0 -1
- package/dist/C_Code-DPZlNSxL.css.map +0 -1
- package/dist/C_Code-avZjAnHD.css.map +0 -1
- package/dist/C_Editor-C49qURgb.css.map +0 -1
- package/dist/C_Editor-DuxBD9Qg.css.map +0 -1
- package/dist/C_FullCalendar-1U4VlG7X.css.map +0 -1
- package/dist/C_FullCalendar-DLUdCtqf.css.map +0 -1
- package/dist/C_Steps-BHYNJI1l.css.map +0 -1
- package/dist/C_Steps-DY7vl-4I.css.map +0 -1
- package/dist/C_Time-Bd_e1YDN.css.map +0 -1
- package/dist/C_Time-CKb_fwdm.css.map +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{t as e}from"./C_Icon2.js";import{t}from"./export-helper.js";import{i as n,t as r}from"./storage.js";import{NAvatar as i,NButton as a,NPopover as o,NScrollbar as s,NSkeleton as c,NSpin as l,NTag as u,NTooltip as d}from"naive-ui";import{Fragment as f,Transition as p,computed as m,createBlock as h,createCommentVNode as g,createElementBlock as _,createElementVNode as v,createTextVNode as y,createVNode as b,defineComponent as x,normalizeClass as S,normalizeStyle as C,onBeforeUnmount as w,onMounted as T,openBlock as E,readonly as D,ref as O,renderList as k,toDisplayString as A,unref as j,watch as M,withCtx as N,withModifiers as P}from"vue";const F=99,I=20,ee=6e4,te=`notification_center`,L=3e3,R=5,z=3e4,B=`ping`,V={system:{label:`系统通知`,icon:`mdi:cog-outline`,color:`info`},business:{label:`业务消息`,icon:`mdi:briefcase-outline`,color:`success`},alarm:{label:`告警预警`,icon:`mdi:alert-outline`,color:`warning`}},H=[{key:`all`,label:`全部`},{key:`system`,label:`系统通知`},{key:`business`,label:`业务消息`},{key:`alarm`,label:`告警预警`}],U={low:{label:`低`,type:`default`},normal:{label:`普通`,type:`info`},high:{label:`重要`,type:`warning`},urgent:{label:`紧急`,type:`error`}},W=[{id:`msg-001`,title:`系统维护通知`,summary:`系统将于今晚 22:00-23:00 进行例行维护升级,届时部分功能可能暂时不可用。`,content:`<p>尊敬的用户:</p><p>为了提升系统性能和稳定性,我们计划于 <strong>2026年2月27日 22:00-23:00</strong> 对系统进行例行维护升级。</p><p>维护期间,以下功能可能暂时不可用:</p><ul><li>报表导出</li><li>数据同步</li><li>定时任务</li></ul><p>请提前保存好未完成的工作,感谢您的理解与支持!</p>`,category:`system`,priority:`high`,status:`unread`,timestamp:new Date(Date.now()-15*6e4).toISOString(),sender:{name:`系统管理员`,avatar:``}},{id:`msg-002`,title:`审批流程待处理`,summary:`张三提交的《Q1 季度预算申请》需要您审批,请尽快处理。`,category:`business`,priority:`urgent`,status:`unread`,timestamp:new Date(Date.now()-30*6e4).toISOString(),sender:{name:`张三`,avatar:`https://gw.alipayobjects.com/zos/rmsportal/ThXAXghbEsBCCSDihZxY.png`},actionUrl:`/workflow/approval`,actionText:`去审批`},{id:`msg-003`,title:`服务器 CPU 使用率告警`,summary:`生产环境节点 prod-node-03 CPU 使用率持续超过 90%,已触发告警阈值。`,category:`alarm`,priority:`urgent`,status:`unread`,timestamp:new Date(Date.now()-2*6e4).toISOString(),sender:{name:`监控中心`},actionUrl:`/monitor/server`,actionText:`查看详情`},{id:`msg-004`,title:`新版本发布 v1.14.0`,summary:`系统已升级至 v1.14.0,新增通知中心、工作流增强等多项功能。`,category:`system`,priority:`normal`,status:`unread`,timestamp:new Date(Date.now()-3*36e5).toISOString(),sender:{name:`系统管理员`}},{id:`msg-005`,title:`项目交付提醒`,summary:`「Robot Admin 二期」项目交付截止日期为 3月15日,当前进度 78%。`,category:`business`,priority:`high`,status:`read`,timestamp:new Date(Date.now()-8*36e5).toISOString(),sender:{name:`项目管理系统`}},{id:`msg-006`,title:`数据库连接池告警`,summary:`数据库连接池使用率达到 85%,建议关注并适时扩容。`,category:`alarm`,priority:`high`,status:`read`,timestamp:new Date(Date.now()-12*36e5).toISOString(),sender:{name:`监控中心`}},{id:`msg-007`,title:`周报提交提醒`,summary:`本周周报提交截止时间为周五 18:00,请及时提交。`,category:`business`,priority:`normal`,status:`read`,timestamp:new Date(Date.now()-24*36e5).toISOString(),sender:{name:`OA 系统`}},{id:`msg-008`,title:`账号安全提醒`,summary:`检测到您的账号在新设备上登录,如非本人操作请及时修改密码。`,category:`system`,priority:`high`,status:`unread`,timestamp:new Date(Date.now()-45*6e4).toISOString(),sender:{name:`安全中心`}}];function G(e,t){let n=O(`disconnected`),r=null,i=0,a=null,o=null,s=null;function c(e){n.value=e,t?.(e)}function l(e){s=e,i=0,u(e)}function u(e){g();let t=d(e);c(`connecting`);try{r=new WebSocket(t)}catch{c(`disconnected`),p(e);return}r.addEventListener(`open`,()=>{c(`connected`),i=0,m(e)}),r.addEventListener(`message`,e=>{f(e.data)}),r.addEventListener(`close`,()=>{h(),c(`disconnected`),e.autoReconnect!==!1&&p(e)}),r.addEventListener(`error`,()=>{})}function d(e){let t=e.getToken?.();if(t){let n=e.url.includes(`?`)?`&`:`?`;return`${e.url}${n}token=${encodeURIComponent(t)}`}return e.url}function f(t){if(typeof t==`string`&&t!==`pong`)try{e(JSON.parse(t))}catch{}}function p(e){let t=e.maxReconnectAttempts??5;if(i>=t)return;i++,c(`reconnecting`);let n=e.reconnectInterval??L;a=setTimeout(()=>{u(e)},n)}function m(e){let t=e.heartbeatInterval??z;if(t<=0)return;let n=e.heartbeatMessage??B;o=setInterval(()=>{r?.readyState===WebSocket.OPEN&&r.send(n)},t)}function h(){o&&=(clearInterval(o),null)}function g(){h(),a&&=(clearTimeout(a),null),r&&=(r.close(),null)}function _(){s=null,i=1/0,g(),c(`disconnected`)}function v(){s&&(i=0,u(s))}return w(g),{status:D(n),connect:l,disconnect:_,reconnect:v}}function K(e){let t=O([]),i=O(`all`),a=O(!1),o=O(0),s=O(1),c=O(null),l=O(!1),u=O(`disconnected`),d=m(()=>t.value.filter(e=>e.status===`unread`).length),f=m(()=>{let e={system:0,business:0,alarm:0};for(let n of t.value)n.status===`unread`&&n.category in e&&e[n.category]++;return e}),p=m(()=>i.value===`all`?t.value:t.value.filter(e=>e.category===i.value)),h=m(()=>t.value.length<o.value),g=m(()=>e.storageKey??te);function _(){let e=r(g.value);if(e?.unreadIds){let n=new Set(e.unreadIds);for(let e of t.value)n.has(e.id)&&(e.status=`unread`)}}let v=null;function y(){v&&clearTimeout(v),v=setTimeout(()=>{let e=t.value.filter(e=>e.status===`unread`).map(e=>e.id);n(g.value,{unreadIds:e,lastFetchTime:Date.now()}),v=null},300)}async function b(n=!1){n&&(s.value=1),a.value=!0;try{if(e.fetchNotifications){let r=i.value===`all`?void 0:i.value,a=e.pageSize??20,c=await e.fetchNotifications({category:r,page:s.value,pageSize:a});n?t.value=c.list:t.value.push(...c.list),o.value=c.total}else x();_()}finally{a.value=!1}}function x(){t.value=W.map(e=>({...e})),o.value=W.length}async function S(){!h.value||a.value||(s.value++,await b())}async function C(n){let r=new Set(n);for(let e of t.value)r.has(e.id)&&(e.status=`read`);if(y(),e.markAsRead)try{await e.markAsRead(n)}catch{for(let e of t.value)r.has(e.id)&&(e.status=`unread`);y()}}async function E(n){let r=n?t.value.filter(e=>e.category===n&&e.status===`unread`):t.value.filter(e=>e.status===`unread`);for(let e of r)e.status=`read`;if(y(),e.markAllRead)try{await e.markAllRead(n)}catch{for(let e of r)e.status=`unread`;y()}}async function D(n){let r=new Set(n),i=[...t.value];if(t.value=t.value.filter(e=>!r.has(e.id)),o.value=Math.max(0,o.value-n.length),y(),e.deleteNotification)try{await e.deleteNotification(n)}catch{t.value=i,o.value+=n.length,y()}}async function k(n){let r=[...t.value],i=o.value;if(n?t.value=t.value.filter(e=>e.category!==n):t.value=[],o.value=t.value.length,y(),e.clearNotifications)try{await e.clearNotifications(n)}catch{t.value=r,o.value=i,y()}}function A(e){switch(e.type){case`new_message`:{let n=e.data;t.value.some(e=>e.id===n.id)||(t.value.unshift(n),o.value++,y(),P(n));break}case`read_sync`:{let n=e.data,r=new Set(n.map(e=>e.id));for(let e of t.value)r.has(e.id)&&(e.status=`read`);y();break}case`count_update`:break}}function j(e){u.value=e}let{connect:M,disconnect:N}=G(A,j);function P(t){e.desktopNotification&&`Notification`in window&&(Notification.permission===`granted`?F(t):Notification.permission!==`denied`&&Notification.requestPermission().then(e=>{e===`granted`&&F(t)}))}function F(e){let t=new Notification(e.title,{body:e.summary,icon:e.sender?.avatar||`/robot-avatar.png`,tag:e.id});t.addEventListener(`click`,()=>{window.focus(),z(e),t.close()}),setTimeout(()=>t.close(),5e3)}let I=null;function L(){R();let t=e.pollingInterval??ee;t<=0||(I=setInterval(()=>{b(!0)},t))}function R(){I&&=(clearInterval(I),null)}function z(e){c.value=e,e.status===`unread`&&C([e.id])}function B(){c.value=null}function V(t){i.value=t,c.value=null,e.fetchNotifications&&b(!0)}function H(){b(!0),L(),e.wsConfig&&M(e.wsConfig)}function U(){R(),N(),v&&=(clearTimeout(v),null)}return T(H),w(U),{messages:t,activeCategory:i,loading:a,total:o,page:s,selectedMessage:c,popoverVisible:l,wsStatus:u,unreadCount:d,unreadByCategory:f,filteredMessages:p,hasMore:h,fetchMessages:b,loadMore:S,markAsRead:C,markAllAsRead:E,deleteMessages:D,clearMessages:k,selectMessage:z,clearSelection:B,switchCategory:V,connectWS:M,disconnectWS:N}}const ne={class:`notification-badge`},re={key:0,class:`notification-badge__count`},ie={key:0,class:`notification-badge__pulse`};var ae=t(x({__name:`NotificationBadge`,props:{count:{default:0},maxCount:{default:99},hasUrgent:{type:Boolean,default:!1}},emits:[`click`],setup(t){let n=t,r=m(()=>n.count>n.maxCount?`${n.maxCount}+`:String(n.count));return(t,n)=>{let i=d;return E(),_(`div`,ne,[b(i,{trigger:`hover`,placement:`bottom`},{trigger:N(()=>[v(`div`,{class:`notification-badge__trigger`,onClick:n[0]||=e=>t.$emit(`click`)},[b(e,{name:`mdi:bell-outline`,size:18,class:`notification-badge__icon`}),g(` 未读角标 `),b(p,{name:`badge-bounce`},{default:N(()=>[t.count>0?(E(),_(`span`,re,A(r.value),1)):g(`v-if`,!0)]),_:1}),g(` 脉冲动画(有紧急消息时) `),t.hasUrgent?(E(),_(`span`,ie)):g(`v-if`,!0)])]),default:N(()=>[y(` 消息通知`+A(t.count>0?`(${t.count} 条未读)`:``),1)]),_:1})])}}}),[[`__scopeId`,`data-v-03c9c8c7`]]);const q=6e4,J=36e5,Y=864e5,X=7*Y,Z=30*Y;365*Y;let Q=null;function $(){return Q||=oe(),Q}function oe(){function e(e){let r=new Date(e),i=Date.now()-r.getTime();if(i<0||i<q)return`刚刚`;if(i<J)return`${Math.floor(i/q)}分钟前`;if(i<Y)return`${Math.floor(i/J)}小时前`;let a=new Date;return a.setHours(0,0,0,0),r>=new Date(a.getTime()-Y)&&r<a?`昨天 ${n(r.getHours())}:${n(r.getMinutes())}`:i<X?`${Math.floor(i/Y)}天前`:i<Z?`${Math.floor(i/X)}周前`:i<31536e6?`${Math.floor(i/Z)}个月前`:t(r)}function t(e){return`${e.getFullYear()}-${n(e.getMonth()+1)}-${n(e.getDate())} ${n(e.getHours())}:${n(e.getMinutes())}`}function n(e){return e<10?`0${e}`:String(e)}return{formatRelativeTime:e,formatFullDate:t}}const se={class:`notification-item__indicator`},ce={class:`notification-item__avatar`},le={class:`notification-item__body`},ue={class:`notification-item__header`},de={class:`notification-item__title`},fe={class:`notification-item__summary`},pe={class:`notification-item__meta`},me={class:`notification-item__time`},he={key:0,class:`notification-item__sender`};var ge=t(x({__name:`NotificationItem`,props:{message:{}},emits:[`click`,`read`,`delete`],setup(t){let n=t,{formatRelativeTime:r}=$(),a=m(()=>V[n.message.category]?.icon??`mdi:bell-outline`),o=m(()=>U[n.message.priority]??U.normal),s=m(()=>r(n.message.timestamp));return(t,n)=>{let r=i,c=u,l=d;return E(),_(`div`,{class:S([`notification-item`,{"notification-item--unread":t.message.status===`unread`,"notification-item--urgent":t.message.priority===`urgent`}]),onClick:n[3]||=e=>t.$emit(`click`,t.message)},[g(` 未读指示点 `),v(`div`,se,[t.message.status===`unread`?(E(),_(`span`,{key:0,class:S([`notification-item__dot`,`notification-item__dot--${t.message.priority}`])},null,2)):g(`v-if`,!0)]),g(` 头像 `),v(`div`,ce,[t.message.sender?.avatar?(E(),h(r,{key:0,src:t.message.sender.avatar,size:36,round:``},null,8,[`src`])):(E(),_(`div`,{key:1,class:S([`notification-item__avatar-placeholder`,`notification-item__avatar-placeholder--${t.message.category}`])},[b(e,{name:a.value,size:16},null,8,[`name`])],2))]),g(` 内容 `),v(`div`,le,[v(`div`,ue,[v(`span`,de,A(t.message.title),1),t.message.priority===`urgent`||t.message.priority===`high`?(E(),h(c,{key:0,type:o.value.type,size:`tiny`,bordered:!1,round:``},{default:N(()=>[y(A(o.value.label),1)]),_:1},8,[`type`])):g(`v-if`,!0)]),v(`div`,fe,A(t.message.summary),1),v(`div`,pe,[v(`span`,me,A(s.value),1),t.message.sender?.name?(E(),_(`span`,he,A(t.message.sender.name),1)):g(`v-if`,!0)])]),g(` 操作区 `),v(`div`,{class:`notification-item__actions`,onClick:n[2]||=P(()=>{},[`stop`])},[t.message.status===`unread`?(E(),h(l,{key:0,trigger:`hover`,placement:`top`},{trigger:N(()=>[v(`span`,{class:`notification-item__action`,onClick:n[0]||=e=>t.$emit(`read`,t.message.id)},[b(e,{name:`mdi:check`,size:16})])]),default:N(()=>[n[4]||=y(` 标记已读 `,-1)]),_:1,__:[4]})):g(`v-if`,!0),b(l,{trigger:`hover`,placement:`top`},{trigger:N(()=>[v(`span`,{class:`notification-item__action`,onClick:n[1]||=e=>t.$emit(`delete`,t.message.id)},[b(e,{name:`mdi:delete-outline`,size:16})])]),default:N(()=>[n[5]||=y(` 删除 `,-1)]),_:1,__:[5]})])],2)}}}),[[`__scopeId`,`data-v-30bf7ddc`]]);const _e={class:`notification-list`},ve={class:`notification-list__tabs`},ye=[`onClick`],be={key:0,class:`notification-list__tab-count`},xe={key:0,class:`notification-list__toolbar`},Se={class:`notification-list__skeleton-text`},Ce={class:`notification-list__items`},we={class:`notification-list__empty`};var Te=t(x({__name:`NotificationList`,props:{messages:{},activeCategory:{},unreadByCategory:{},unreadCount:{},loading:{type:Boolean},hasMore:{type:Boolean},scrollHeight:{default:420}},emits:[`switchCategory`,`itemClick`,`read`,`delete`,`markAllRead`,`clear`,`loadMore`],setup(t){let n=t,r=m(()=>n.activeCategory===`all`?n.unreadCount:n.unreadByCategory[n.activeCategory]??0);function i(e){return e===`all`?n.unreadCount:n.unreadByCategory[e]??0}return(t,n)=>{let o=a,u=c,d=l,p=s;return E(),_(`div`,_e,[g(` 分类 Tab `),v(`div`,ve,[(E(!0),_(f,null,k(j(H),e=>(E(),_(`div`,{key:e.key,class:S([`notification-list__tab`,{"notification-list__tab--active":t.activeCategory===e.key}]),onClick:n=>t.$emit(`switchCategory`,e.key)},[v(`span`,null,A(e.label),1),i(e.key)>0?(E(),_(`span`,be,A(i(e.key)),1)):g(`v-if`,!0)],10,ye))),128))]),g(` 操作栏 `),t.messages.length>0?(E(),_(`div`,xe,[b(o,{text:``,size:`tiny`,disabled:r.value===0,onClick:n[0]||=e=>t.$emit(`markAllRead`)},{icon:N(()=>[b(e,{name:`mdi:check-all`,size:14})]),default:N(()=>[n[6]||=y(` 全部已读 `,-1)]),_:1,__:[6]},8,[`disabled`]),b(o,{text:``,size:`tiny`,onClick:n[1]||=e=>t.$emit(`clear`)},{icon:N(()=>[b(e,{name:`mdi:delete-sweep-outline`,size:14})]),default:N(()=>[n[7]||=y(` 清空 `,-1)]),_:1,__:[7]})])):g(`v-if`,!0),g(` 消息列表 `),b(p,{class:`notification-list__scroll`,style:C({maxHeight:`${t.scrollHeight}px`})},{default:N(()=>[t.loading&&t.messages.length===0?(E(),_(f,{key:0},[g(` 骨架屏 `),(E(),_(f,null,k(4,e=>v(`div`,{key:e,class:`notification-list__skeleton`},[b(u,{circle:``,width:36,height:36}),v(`div`,Se,[b(u,{text:``,width:`60%`,height:14}),b(u,{text:``,width:`90%`,height:12}),b(u,{text:``,width:`40%`,height:10})])])),64))],64)):t.messages.length>0?(E(),_(f,{key:1},[v(`div`,Ce,[(E(!0),_(f,null,k(t.messages,e=>(E(),h(ge,{key:e.id,message:e,onClick:n[2]||=e=>t.$emit(`itemClick`,e),onRead:n[3]||=e=>t.$emit(`read`,e),onDelete:n[4]||=e=>t.$emit(`delete`,e)},null,8,[`message`]))),128))]),g(` 加载更多 `),t.hasMore?(E(),_(`div`,{key:0,class:`notification-list__load-more`,onClick:n[5]||=e=>t.$emit(`loadMore`)},[t.loading?(E(),h(d,{key:0,size:14})):g(`v-if`,!0),v(`span`,null,A(t.loading?`加载中...`:`加载更多`),1)])):g(`v-if`,!0)],64)):(E(),_(f,{key:2},[g(` 空状态 `),v(`div`,we,[b(e,{name:`mdi:bell-off-outline`,size:48,class:`notification-list__empty-icon`}),n[8]||=v(`span`,{class:`notification-list__empty-text`},`暂无消息`,-1)])],2112))]),_:1},8,[`style`])])}}}),[[`__scopeId`,`data-v-3db0c5bf`]]);const Ee={class:`notification-detail`},De={class:`notification-detail__back`},Oe={class:`notification-detail__header`},ke={class:`notification-detail__title`},Ae={class:`notification-detail__meta`},je={class:`notification-detail__time`},Me={key:0,class:`notification-detail__sender`},Ne=[`innerHTML`],Pe={key:1,class:`notification-detail__body`},Fe={key:0,class:`notification-detail__footer`};var Ie=t(x({__name:`NotificationDetail`,props:{message:{},scrollHeight:{default:320}},emits:[`back`,`action`,`navigate`],setup(t,{emit:n}){let r=t,o=n,{formatRelativeTime:c}=$(),l=m(()=>V[r.message.category]??V.system),d=m(()=>U[r.message.priority]??U.normal),f=m(()=>c(r.message.timestamp));function p(){let e=r.message.actionUrl;e&&(o(`action`,e),e.startsWith(`http`)?window.open(e,`_blank`):o(`navigate`,e))}return(t,n)=>{let r=a,o=u,c=i,m=s;return E(),_(`div`,Ee,[g(` 返回栏 `),v(`div`,De,[b(r,{text:``,size:`small`,onClick:n[0]||=e=>t.$emit(`back`)},{icon:N(()=>[b(e,{name:`mdi:arrow-left`,size:16})]),default:N(()=>[n[1]||=y(` 返回列表 `,-1)]),_:1,__:[1]})]),g(` 消息头部 `),v(`div`,Oe,[v(`h3`,ke,A(t.message.title),1),v(`div`,Ae,[b(o,{type:l.value.color,size:`tiny`,bordered:!1,round:``},{icon:N(()=>[b(e,{name:l.value.icon,size:12},null,8,[`name`])]),default:N(()=>[y(` `+A(l.value.label),1)]),_:1},8,[`type`]),t.message.priority===`urgent`||t.message.priority===`high`?(E(),h(o,{key:0,type:d.value.type,size:`tiny`,bordered:!1,round:``},{default:N(()=>[y(A(d.value.label),1)]),_:1},8,[`type`])):g(`v-if`,!0),v(`span`,je,A(f.value),1)]),t.message.sender?(E(),_(`div`,Me,[t.message.sender.avatar?(E(),h(c,{key:0,src:t.message.sender.avatar,size:20,round:``},null,8,[`src`])):g(`v-if`,!0),v(`span`,null,A(t.message.sender.name),1)])):g(`v-if`,!0)]),g(` 消息内容 `),b(m,{class:`notification-detail__content`,style:C({maxHeight:`${t.scrollHeight}px`})},{default:N(()=>[t.message.content?(E(),_(`div`,{key:0,class:`notification-detail__body`,innerHTML:t.message.content},null,8,Ne)):(E(),_(`div`,Pe,A(t.message.summary),1))]),_:1},8,[`style`]),g(` 操作区 `),t.message.actionUrl?(E(),_(`div`,Fe,[b(r,{type:`primary`,size:`small`,onClick:p},{icon:N(()=>[b(e,{name:`mdi:arrow-right`,size:16})]),default:N(()=>[y(A(t.message.actionText||`查看详情`)+` `,1)]),_:1})])):g(`v-if`,!0)])}}}),[[`__scopeId`,`data-v-b10b0b8e`]]);const Le={class:`c-notification-center`},Re={class:`c-notification-center__panel`},ze={class:`c-notification-center__header`},Be={class:`c-notification-center__header-extra`};var Ve=t(x({name:`C_NotificationCenter`,__name:`index`,props:{fetchNotifications:{},markAsRead:{},markAllRead:{},deleteNotification:{},clearNotifications:{},wsConfig:{},desktopNotification:{type:Boolean,default:!1},maxBadgeCount:{default:99},pollingInterval:{default:6e4},pageSize:{default:20},storageKey:{default:`notification_center`}},emits:[`itemClick`,`read`,`allRead`,`delete`,`unreadChange`,`wsStatusChange`,`newMessage`,`navigate`],setup(e,{expose:t,emit:n}){let r=e,i=n,a=K(r),s=m(()=>a.messages.value.some(e=>e.status===`unread`&&e.priority===`urgent`)),c=m(()=>({connected:`已连接`,connecting:`连接中...`,disconnected:`未连接`,reconnecting:`重连中...`})[a.wsStatus.value]??`未知`);M(()=>a.unreadCount.value,e=>{i(`unreadChange`,e)});function l(){a.popoverVisible.value=!a.popoverVisible.value}function u(e){a.selectMessage(e),i(`itemClick`,e)}function f(e){a.markAsRead([e]),i(`read`,[e])}function x(e){a.deleteMessages([e]),i(`delete`,[e])}function C(){let e=a.activeCategory.value===`all`?void 0:a.activeCategory.value;a.markAllAsRead(e),i(`allRead`,e)}function w(){let e=a.activeCategory.value===`all`?void 0:a.activeCategory.value;a.clearMessages(e)}function T(){a.popoverVisible.value=!1}function D(){a.clearSelection()}return t({refresh:()=>a.fetchMessages(!0),connectWS:()=>{r.wsConfig&&a.connectWS(r.wsConfig)},disconnectWS:a.disconnectWS,getUnreadCount:()=>a.unreadCount.value,getMessages:()=>a.messages.value,markRead:e=>a.markAsRead(e),markAllAsRead:e=>a.markAllAsRead(e)}),(e,t)=>{let n=d,m=o;return E(),_(`div`,Le,[b(m,{show:j(a).popoverVisible.value,"onUpdate:show":t[1]||=e=>j(a).popoverVisible.value=e,width:420,trigger:`click`,placement:`bottom-end`,"show-arrow":!1,"content-class":`c-notification-center__popover`,onAfterLeave:D},{trigger:N(()=>[b(ae,{count:j(a).unreadCount.value,"max-count":r.maxBadgeCount,"has-urgent":s.value,onClick:l},null,8,[`count`,`max-count`,`has-urgent`])]),default:N(()=>[v(`div`,Re,[g(` 头部标题 `),v(`div`,ze,[t[2]||=v(`span`,{class:`c-notification-center__title`},`消息中心`,-1),v(`div`,Be,[g(` WebSocket 连接状态 `),r.wsConfig?(E(),h(n,{key:0,trigger:`hover`,placement:`top`},{trigger:N(()=>[v(`span`,{class:S([`c-notification-center__ws-dot`,`c-notification-center__ws-dot--${j(a).wsStatus.value}`])},null,2)]),default:N(()=>[y(` `+A(c.value),1)]),_:1})):g(`v-if`,!0)])]),g(` 列表 / 详情切换 `),b(p,{name:`slide-fade`,mode:`out-in`},{default:N(()=>[j(a).selectedMessage.value?(E(),h(Ie,{key:j(a).selectedMessage.value.id,message:j(a).selectedMessage.value,onBack:j(a).clearSelection,onAction:T,onNavigate:t[0]||=e=>i(`navigate`,e)},null,8,[`message`,`onBack`])):(E(),h(Te,{key:1,messages:j(a).filteredMessages.value,"active-category":j(a).activeCategory.value,"unread-by-category":j(a).unreadByCategory.value,"unread-count":j(a).unreadCount.value,loading:j(a).loading.value,"has-more":j(a).hasMore.value,onSwitchCategory:j(a).switchCategory,onItemClick:u,onRead:f,onDelete:x,onMarkAllRead:C,onClear:w,onLoadMore:j(a).loadMore},null,8,[`messages`,`active-category`,`unread-by-category`,`unread-count`,`loading`,`has-more`,`onSwitchCategory`,`onLoadMore`]))]),_:1})])]),_:1},8,[`show`])])}}}),[[`__scopeId`,`data-v-a60d6896`]]);export{V as a,I as c,z as d,B as f,U as g,W as h,G as i,ee as l,L as m,$ as n,H as o,R as p,K as r,F as s,Ve as t,te as u};
|
|
1
|
+
import{t as e}from"./C_Icon2.js";import{t}from"./export-helper.js";import{i as n,t as r}from"./storage.js";import{Fragment as i,Transition as a,computed as o,createBlock as s,createCommentVNode as c,createElementBlock as l,createElementVNode as u,createTextVNode as d,createVNode as f,defineComponent as p,normalizeClass as m,normalizeStyle as h,onBeforeUnmount as g,onMounted as _,openBlock as v,readonly as y,ref as b,renderList as x,resolveComponent as S,toDisplayString as C,unref as w,watch as T,withCtx as E,withModifiers as D}from"vue";const O=99,k=20,A=6e4,j=`notification_center`,M=3e3,N=5,P=3e4,F=`ping`,I={system:{label:`系统通知`,icon:`mdi:cog-outline`,color:`info`},business:{label:`业务消息`,icon:`mdi:briefcase-outline`,color:`success`},alarm:{label:`告警预警`,icon:`mdi:alert-outline`,color:`warning`}},L=[{key:`all`,label:`全部`},{key:`system`,label:`系统通知`},{key:`business`,label:`业务消息`},{key:`alarm`,label:`告警预警`}],R={low:{label:`低`,type:`default`},normal:{label:`普通`,type:`info`},high:{label:`重要`,type:`warning`},urgent:{label:`紧急`,type:`error`}},z=[{id:`msg-001`,title:`系统维护通知`,summary:`系统将于今晚 22:00-23:00 进行例行维护升级,届时部分功能可能暂时不可用。`,content:`<p>尊敬的用户:</p><p>为了提升系统性能和稳定性,我们计划于 <strong>2026年2月27日 22:00-23:00</strong> 对系统进行例行维护升级。</p><p>维护期间,以下功能可能暂时不可用:</p><ul><li>报表导出</li><li>数据同步</li><li>定时任务</li></ul><p>请提前保存好未完成的工作,感谢您的理解与支持!</p>`,category:`system`,priority:`high`,status:`unread`,timestamp:new Date(Date.now()-15*6e4).toISOString(),sender:{name:`系统管理员`,avatar:``}},{id:`msg-002`,title:`审批流程待处理`,summary:`张三提交的《Q1 季度预算申请》需要您审批,请尽快处理。`,category:`business`,priority:`urgent`,status:`unread`,timestamp:new Date(Date.now()-30*6e4).toISOString(),sender:{name:`张三`,avatar:`https://gw.alipayobjects.com/zos/rmsportal/ThXAXghbEsBCCSDihZxY.png`},actionUrl:`/workflow/approval`,actionText:`去审批`},{id:`msg-003`,title:`服务器 CPU 使用率告警`,summary:`生产环境节点 prod-node-03 CPU 使用率持续超过 90%,已触发告警阈值。`,category:`alarm`,priority:`urgent`,status:`unread`,timestamp:new Date(Date.now()-2*6e4).toISOString(),sender:{name:`监控中心`},actionUrl:`/monitor/server`,actionText:`查看详情`},{id:`msg-004`,title:`新版本发布 v1.14.0`,summary:`系统已升级至 v1.14.0,新增通知中心、工作流增强等多项功能。`,category:`system`,priority:`normal`,status:`unread`,timestamp:new Date(Date.now()-3*36e5).toISOString(),sender:{name:`系统管理员`}},{id:`msg-005`,title:`项目交付提醒`,summary:`「Robot Admin 二期」项目交付截止日期为 3月15日,当前进度 78%。`,category:`business`,priority:`high`,status:`read`,timestamp:new Date(Date.now()-8*36e5).toISOString(),sender:{name:`项目管理系统`}},{id:`msg-006`,title:`数据库连接池告警`,summary:`数据库连接池使用率达到 85%,建议关注并适时扩容。`,category:`alarm`,priority:`high`,status:`read`,timestamp:new Date(Date.now()-12*36e5).toISOString(),sender:{name:`监控中心`}},{id:`msg-007`,title:`周报提交提醒`,summary:`本周周报提交截止时间为周五 18:00,请及时提交。`,category:`business`,priority:`normal`,status:`read`,timestamp:new Date(Date.now()-24*36e5).toISOString(),sender:{name:`OA 系统`}},{id:`msg-008`,title:`账号安全提醒`,summary:`检测到您的账号在新设备上登录,如非本人操作请及时修改密码。`,category:`system`,priority:`high`,status:`unread`,timestamp:new Date(Date.now()-45*6e4).toISOString(),sender:{name:`安全中心`}}];function B(e,t){let n=b(`disconnected`),r=null,i=0,a=null,o=null,s=null;function c(e){n.value=e,t?.(e)}function l(e){s=e,i=0,u(e)}function u(e){_();let t=d(e);c(`connecting`);try{r=new WebSocket(t)}catch{c(`disconnected`),p(e);return}r.addEventListener(`open`,()=>{c(`connected`),i=0,m(e)}),r.addEventListener(`message`,e=>{f(e.data)}),r.addEventListener(`close`,()=>{h(),c(`disconnected`),e.autoReconnect!==!1&&p(e)}),r.addEventListener(`error`,()=>{})}function d(e){let t=e.getToken?.();if(t){let n=e.url.includes(`?`)?`&`:`?`;return`${e.url}${n}token=${encodeURIComponent(t)}`}return e.url}function f(t){if(typeof t==`string`&&t!==`pong`)try{e(JSON.parse(t))}catch{}}function p(e){let t=e.maxReconnectAttempts??5;if(i>=t)return;i++,c(`reconnecting`);let n=e.reconnectInterval??M;a=setTimeout(()=>{u(e)},n)}function m(e){let t=e.heartbeatInterval??P;if(t<=0)return;let n=e.heartbeatMessage??F;o=setInterval(()=>{r?.readyState===WebSocket.OPEN&&r.send(n)},t)}function h(){o&&=(clearInterval(o),null)}function _(){h(),a&&=(clearTimeout(a),null),r&&=(r.close(),null)}function v(){s=null,i=1/0,_(),c(`disconnected`)}function x(){s&&(i=0,u(s))}return g(_),{status:y(n),connect:l,disconnect:v,reconnect:x}}function V(e){let t=b([]),i=b(`all`),a=b(!1),s=b(0),c=b(1),l=b(null),u=b(!1),d=b(`disconnected`),f=o(()=>t.value.filter(e=>e.status===`unread`).length),p=o(()=>{let e={system:0,business:0,alarm:0};for(let n of t.value)n.status===`unread`&&n.category in e&&e[n.category]++;return e}),m=o(()=>i.value===`all`?t.value:t.value.filter(e=>e.category===i.value)),h=o(()=>t.value.length<s.value),v=o(()=>e.storageKey??j);function y(){let e=r(v.value);if(e?.unreadIds){let n=new Set(e.unreadIds);for(let e of t.value)n.has(e.id)&&(e.status=`unread`)}}let x=null;function S(){x&&clearTimeout(x),x=setTimeout(()=>{let e=t.value.filter(e=>e.status===`unread`).map(e=>e.id);n(v.value,{unreadIds:e,lastFetchTime:Date.now()}),x=null},300)}async function C(n=!1){n&&(c.value=1),a.value=!0;try{if(e.fetchNotifications){let r=i.value===`all`?void 0:i.value,a=e.pageSize??20,o=await e.fetchNotifications({category:r,page:c.value,pageSize:a});n?t.value=o.list:t.value.push(...o.list),s.value=o.total}else w();y()}finally{a.value=!1}}function w(){t.value=z.map(e=>({...e})),s.value=z.length}async function T(){!h.value||a.value||(c.value++,await C())}async function E(n){let r=new Set(n);for(let e of t.value)r.has(e.id)&&(e.status=`read`);if(S(),e.markAsRead)try{await e.markAsRead(n)}catch{for(let e of t.value)r.has(e.id)&&(e.status=`unread`);S()}}async function D(n){let r=n?t.value.filter(e=>e.category===n&&e.status===`unread`):t.value.filter(e=>e.status===`unread`);for(let e of r)e.status=`read`;if(S(),e.markAllRead)try{await e.markAllRead(n)}catch{for(let e of r)e.status=`unread`;S()}}async function O(n){let r=new Set(n),i=[...t.value];if(t.value=t.value.filter(e=>!r.has(e.id)),s.value=Math.max(0,s.value-n.length),S(),e.deleteNotification)try{await e.deleteNotification(n)}catch{t.value=i,s.value+=n.length,S()}}async function k(n){let r=[...t.value],i=s.value;if(n?t.value=t.value.filter(e=>e.category!==n):t.value=[],s.value=t.value.length,S(),e.clearNotifications)try{await e.clearNotifications(n)}catch{t.value=r,s.value=i,S()}}function M(e){switch(e.type){case`new_message`:{let n=e.data;t.value.some(e=>e.id===n.id)||(t.value.unshift(n),s.value++,S(),I(n));break}case`read_sync`:{let n=e.data,r=new Set(n.map(e=>e.id));for(let e of t.value)r.has(e.id)&&(e.status=`read`);S();break}case`count_update`:break}}function N(e){d.value=e}let{connect:P,disconnect:F}=B(M,N);function I(t){e.desktopNotification&&`Notification`in window&&(Notification.permission===`granted`?L(t):Notification.permission!==`denied`&&Notification.requestPermission().then(e=>{e===`granted`&&L(t)}))}function L(e){let t=new Notification(e.title,{body:e.summary,icon:e.sender?.avatar||`/robot-avatar.png`,tag:e.id});t.addEventListener(`click`,()=>{window.focus(),U(e),t.close()}),setTimeout(()=>t.close(),5e3)}let R=null;function V(){H();let t=e.pollingInterval??A;t<=0||(R=setInterval(()=>{C(!0)},t))}function H(){R&&=(clearInterval(R),null)}function U(e){l.value=e,e.status===`unread`&&E([e.id])}function W(){l.value=null}function G(t){i.value=t,l.value=null,e.fetchNotifications&&C(!0)}function K(){C(!0),V(),e.wsConfig&&P(e.wsConfig)}function q(){H(),F(),x&&=(clearTimeout(x),null)}return _(K),g(q),{messages:t,activeCategory:i,loading:a,total:s,page:c,selectedMessage:l,popoverVisible:u,wsStatus:d,unreadCount:f,unreadByCategory:p,filteredMessages:m,hasMore:h,fetchMessages:C,loadMore:T,markAsRead:E,markAllAsRead:D,deleteMessages:O,clearMessages:k,selectMessage:U,clearSelection:W,switchCategory:G,connectWS:P,disconnectWS:F}}const H={class:`notification-badge`},U={key:0,class:`notification-badge__count`},W={key:0,class:`notification-badge__pulse`};var G=t(p({__name:`NotificationBadge`,props:{count:{default:0},maxCount:{default:99},hasUrgent:{type:Boolean,default:!1}},emits:[`click`],setup(t){let n=t,r=o(()=>n.count>n.maxCount?`${n.maxCount}+`:String(n.count));return(t,n)=>{let i=S(`NTooltip`);return v(),l(`div`,H,[f(i,{trigger:`hover`,placement:`bottom`},{trigger:E(()=>[u(`div`,{class:`notification-badge__trigger`,onClick:n[0]||=e=>t.$emit(`click`)},[f(e,{name:`mdi:bell-outline`,size:18,class:`notification-badge__icon`}),c(` 未读角标 `),f(a,{name:`badge-bounce`},{default:E(()=>[t.count>0?(v(),l(`span`,U,C(r.value),1)):c(`v-if`,!0)]),_:1}),c(` 脉冲动画(有紧急消息时) `),t.hasUrgent?(v(),l(`span`,W)):c(`v-if`,!0)])]),default:E(()=>[d(` 消息通知`+C(t.count>0?`(${t.count} 条未读)`:``),1)]),_:1})])}}}),[[`__scopeId`,`data-v-03c9c8c7`]]);const K=6e4,q=36e5,J=864e5,Y=7*J,X=30*J;365*J;let Z=null;function Q(){return Z||=ee(),Z}function ee(){function e(e){let r=new Date(e),i=Date.now()-r.getTime();if(i<0||i<K)return`刚刚`;if(i<q)return`${Math.floor(i/K)}分钟前`;if(i<J)return`${Math.floor(i/q)}小时前`;let a=new Date;return a.setHours(0,0,0,0),r>=new Date(a.getTime()-J)&&r<a?`昨天 ${n(r.getHours())}:${n(r.getMinutes())}`:i<Y?`${Math.floor(i/J)}天前`:i<X?`${Math.floor(i/Y)}周前`:i<31536e6?`${Math.floor(i/X)}个月前`:t(r)}function t(e){return`${e.getFullYear()}-${n(e.getMonth()+1)}-${n(e.getDate())} ${n(e.getHours())}:${n(e.getMinutes())}`}function n(e){return e<10?`0${e}`:String(e)}return{formatRelativeTime:e,formatFullDate:t}}const te={class:`notification-item__indicator`},ne={class:`notification-item__avatar`},re={class:`notification-item__body`},ie={class:`notification-item__header`},ae={class:`notification-item__title`},oe={class:`notification-item__summary`},se={class:`notification-item__meta`},ce={class:`notification-item__time`},le={key:0,class:`notification-item__sender`};var ue=t(p({__name:`NotificationItem`,props:{message:{}},emits:[`click`,`read`,`delete`],setup(t){let n=t,{formatRelativeTime:r}=Q(),i=o(()=>I[n.message.category]?.icon??`mdi:bell-outline`),a=o(()=>R[n.message.priority]??R.normal),p=o(()=>r(n.message.timestamp));return(t,n)=>{let r=S(`NAvatar`),o=S(`NTag`),h=S(`NTooltip`);return v(),l(`div`,{class:m([`notification-item`,{"notification-item--unread":t.message.status===`unread`,"notification-item--urgent":t.message.priority===`urgent`}]),onClick:n[3]||=e=>t.$emit(`click`,t.message)},[c(` 未读指示点 `),u(`div`,te,[t.message.status===`unread`?(v(),l(`span`,{key:0,class:m([`notification-item__dot`,`notification-item__dot--${t.message.priority}`])},null,2)):c(`v-if`,!0)]),c(` 头像 `),u(`div`,ne,[t.message.sender?.avatar?(v(),s(r,{key:0,src:t.message.sender.avatar,size:36,round:``},null,8,[`src`])):(v(),l(`div`,{key:1,class:m([`notification-item__avatar-placeholder`,`notification-item__avatar-placeholder--${t.message.category}`])},[f(e,{name:i.value,size:16},null,8,[`name`])],2))]),c(` 内容 `),u(`div`,re,[u(`div`,ie,[u(`span`,ae,C(t.message.title),1),t.message.priority===`urgent`||t.message.priority===`high`?(v(),s(o,{key:0,type:a.value.type,size:`tiny`,bordered:!1,round:``},{default:E(()=>[d(C(a.value.label),1)]),_:1},8,[`type`])):c(`v-if`,!0)]),u(`div`,oe,C(t.message.summary),1),u(`div`,se,[u(`span`,ce,C(p.value),1),t.message.sender?.name?(v(),l(`span`,le,C(t.message.sender.name),1)):c(`v-if`,!0)])]),c(` 操作区 `),u(`div`,{class:`notification-item__actions`,onClick:n[2]||=D(()=>{},[`stop`])},[t.message.status===`unread`?(v(),s(h,{key:0,trigger:`hover`,placement:`top`},{trigger:E(()=>[u(`span`,{class:`notification-item__action`,onClick:n[0]||=e=>t.$emit(`read`,t.message.id)},[f(e,{name:`mdi:check`,size:16})])]),default:E(()=>[n[4]||=d(` 标记已读 `,-1)]),_:1,__:[4]})):c(`v-if`,!0),f(h,{trigger:`hover`,placement:`top`},{trigger:E(()=>[u(`span`,{class:`notification-item__action`,onClick:n[1]||=e=>t.$emit(`delete`,t.message.id)},[f(e,{name:`mdi:delete-outline`,size:16})])]),default:E(()=>[n[5]||=d(` 删除 `,-1)]),_:1,__:[5]})])],2)}}}),[[`__scopeId`,`data-v-30bf7ddc`]]);const de={class:`notification-list`},fe={class:`notification-list__tabs`},pe=[`onClick`],me={key:0,class:`notification-list__tab-count`},he={key:0,class:`notification-list__toolbar`},ge={class:`notification-list__skeleton-text`},_e={class:`notification-list__items`},ve={class:`notification-list__empty`};var ye=t(p({__name:`NotificationList`,props:{messages:{},activeCategory:{},unreadByCategory:{},unreadCount:{},loading:{type:Boolean},hasMore:{type:Boolean},scrollHeight:{default:420}},emits:[`switchCategory`,`itemClick`,`read`,`delete`,`markAllRead`,`clear`,`loadMore`],setup(t){let n=t,r=o(()=>n.activeCategory===`all`?n.unreadCount:n.unreadByCategory[n.activeCategory]??0);function a(e){return e===`all`?n.unreadCount:n.unreadByCategory[e]??0}return(t,n)=>{let o=S(`NButton`),p=S(`NSkeleton`),g=S(`NSpin`),_=S(`NScrollbar`);return v(),l(`div`,de,[c(` 分类 Tab `),u(`div`,fe,[(v(!0),l(i,null,x(w(L),e=>(v(),l(`div`,{key:e.key,class:m([`notification-list__tab`,{"notification-list__tab--active":t.activeCategory===e.key}]),onClick:n=>t.$emit(`switchCategory`,e.key)},[u(`span`,null,C(e.label),1),a(e.key)>0?(v(),l(`span`,me,C(a(e.key)),1)):c(`v-if`,!0)],10,pe))),128))]),c(` 操作栏 `),t.messages.length>0?(v(),l(`div`,he,[f(o,{text:``,size:`tiny`,disabled:r.value===0,onClick:n[0]||=e=>t.$emit(`markAllRead`)},{icon:E(()=>[f(e,{name:`mdi:check-all`,size:14})]),default:E(()=>[n[6]||=d(` 全部已读 `,-1)]),_:1,__:[6]},8,[`disabled`]),f(o,{text:``,size:`tiny`,onClick:n[1]||=e=>t.$emit(`clear`)},{icon:E(()=>[f(e,{name:`mdi:delete-sweep-outline`,size:14})]),default:E(()=>[n[7]||=d(` 清空 `,-1)]),_:1,__:[7]})])):c(`v-if`,!0),c(` 消息列表 `),f(_,{class:`notification-list__scroll`,style:h({maxHeight:`${t.scrollHeight}px`})},{default:E(()=>[t.loading&&t.messages.length===0?(v(),l(i,{key:0},[c(` 骨架屏 `),(v(),l(i,null,x(4,e=>u(`div`,{key:e,class:`notification-list__skeleton`},[f(p,{circle:``,width:36,height:36}),u(`div`,ge,[f(p,{text:``,width:`60%`,height:14}),f(p,{text:``,width:`90%`,height:12}),f(p,{text:``,width:`40%`,height:10})])])),64))],64)):t.messages.length>0?(v(),l(i,{key:1},[u(`div`,_e,[(v(!0),l(i,null,x(t.messages,e=>(v(),s(ue,{key:e.id,message:e,onClick:n[2]||=e=>t.$emit(`itemClick`,e),onRead:n[3]||=e=>t.$emit(`read`,e),onDelete:n[4]||=e=>t.$emit(`delete`,e)},null,8,[`message`]))),128))]),c(` 加载更多 `),t.hasMore?(v(),l(`div`,{key:0,class:`notification-list__load-more`,onClick:n[5]||=e=>t.$emit(`loadMore`)},[t.loading?(v(),s(g,{key:0,size:14})):c(`v-if`,!0),u(`span`,null,C(t.loading?`加载中...`:`加载更多`),1)])):c(`v-if`,!0)],64)):(v(),l(i,{key:2},[c(` 空状态 `),u(`div`,ve,[f(e,{name:`mdi:bell-off-outline`,size:48,class:`notification-list__empty-icon`}),n[8]||=u(`span`,{class:`notification-list__empty-text`},`暂无消息`,-1)])],2112))]),_:1},8,[`style`])])}}}),[[`__scopeId`,`data-v-3db0c5bf`]]);const be={class:`notification-detail`},xe={class:`notification-detail__back`},Se={class:`notification-detail__header`},Ce={class:`notification-detail__title`},we={class:`notification-detail__meta`},Te={class:`notification-detail__time`},Ee={key:0,class:`notification-detail__sender`},$=[`innerHTML`],De={key:1,class:`notification-detail__body`},Oe={key:0,class:`notification-detail__footer`};var ke=t(p({__name:`NotificationDetail`,props:{message:{},scrollHeight:{default:320}},emits:[`back`,`action`,`navigate`],setup(t,{emit:n}){let r=t,i=n,{formatRelativeTime:a}=Q(),p=o(()=>I[r.message.category]??I.system),m=o(()=>R[r.message.priority]??R.normal),g=o(()=>a(r.message.timestamp));function _(){let e=r.message.actionUrl;e&&(i(`action`,e),e.startsWith(`http`)?window.open(e,`_blank`):i(`navigate`,e))}return(t,n)=>{let r=S(`NButton`),i=S(`NTag`),a=S(`NAvatar`),o=S(`NScrollbar`);return v(),l(`div`,be,[c(` 返回栏 `),u(`div`,xe,[f(r,{text:``,size:`small`,onClick:n[0]||=e=>t.$emit(`back`)},{icon:E(()=>[f(e,{name:`mdi:arrow-left`,size:16})]),default:E(()=>[n[1]||=d(` 返回列表 `,-1)]),_:1,__:[1]})]),c(` 消息头部 `),u(`div`,Se,[u(`h3`,Ce,C(t.message.title),1),u(`div`,we,[f(i,{type:p.value.color,size:`tiny`,bordered:!1,round:``},{icon:E(()=>[f(e,{name:p.value.icon,size:12},null,8,[`name`])]),default:E(()=>[d(` `+C(p.value.label),1)]),_:1},8,[`type`]),t.message.priority===`urgent`||t.message.priority===`high`?(v(),s(i,{key:0,type:m.value.type,size:`tiny`,bordered:!1,round:``},{default:E(()=>[d(C(m.value.label),1)]),_:1},8,[`type`])):c(`v-if`,!0),u(`span`,Te,C(g.value),1)]),t.message.sender?(v(),l(`div`,Ee,[t.message.sender.avatar?(v(),s(a,{key:0,src:t.message.sender.avatar,size:20,round:``},null,8,[`src`])):c(`v-if`,!0),u(`span`,null,C(t.message.sender.name),1)])):c(`v-if`,!0)]),c(` 消息内容 `),f(o,{class:`notification-detail__content`,style:h({maxHeight:`${t.scrollHeight}px`})},{default:E(()=>[t.message.content?(v(),l(`div`,{key:0,class:`notification-detail__body`,innerHTML:t.message.content},null,8,$)):(v(),l(`div`,De,C(t.message.summary),1))]),_:1},8,[`style`]),c(` 操作区 `),t.message.actionUrl?(v(),l(`div`,Oe,[f(r,{type:`primary`,size:`small`,onClick:_},{icon:E(()=>[f(e,{name:`mdi:arrow-right`,size:16})]),default:E(()=>[d(C(t.message.actionText||`查看详情`)+` `,1)]),_:1})])):c(`v-if`,!0)])}}}),[[`__scopeId`,`data-v-b10b0b8e`]]);const Ae={class:`c-notification-center`},je={class:`c-notification-center__panel`},Me={class:`c-notification-center__header`},Ne={class:`c-notification-center__header-extra`};var Pe=t(p({name:`C_NotificationCenter`,__name:`index`,props:{fetchNotifications:{},markAsRead:{},markAllRead:{},deleteNotification:{},clearNotifications:{},wsConfig:{},desktopNotification:{type:Boolean,default:!1},maxBadgeCount:{default:99},pollingInterval:{default:6e4},pageSize:{default:20},storageKey:{default:`notification_center`}},emits:[`itemClick`,`read`,`allRead`,`delete`,`unreadChange`,`wsStatusChange`,`newMessage`,`navigate`],setup(e,{expose:t,emit:n}){let r=e,i=n,p=V(r),h=o(()=>p.messages.value.some(e=>e.status===`unread`&&e.priority===`urgent`)),g=o(()=>({connected:`已连接`,connecting:`连接中...`,disconnected:`未连接`,reconnecting:`重连中...`})[p.wsStatus.value]??`未知`);T(()=>p.unreadCount.value,e=>{i(`unreadChange`,e)});function _(){p.popoverVisible.value=!p.popoverVisible.value}function y(e){p.selectMessage(e),i(`itemClick`,e)}function b(e){p.markAsRead([e]),i(`read`,[e])}function x(e){p.deleteMessages([e]),i(`delete`,[e])}function D(){let e=p.activeCategory.value===`all`?void 0:p.activeCategory.value;p.markAllAsRead(e),i(`allRead`,e)}function O(){let e=p.activeCategory.value===`all`?void 0:p.activeCategory.value;p.clearMessages(e)}function k(){p.popoverVisible.value=!1}function A(){p.clearSelection()}return t({refresh:()=>p.fetchMessages(!0),connectWS:()=>{r.wsConfig&&p.connectWS(r.wsConfig)},disconnectWS:p.disconnectWS,getUnreadCount:()=>p.unreadCount.value,getMessages:()=>p.messages.value,markRead:e=>p.markAsRead(e),markAllAsRead:e=>p.markAllAsRead(e)}),(e,t)=>{let n=S(`NTooltip`),o=S(`NPopover`);return v(),l(`div`,Ae,[f(o,{show:w(p).popoverVisible.value,"onUpdate:show":t[1]||=e=>w(p).popoverVisible.value=e,width:420,trigger:`click`,placement:`bottom-end`,"show-arrow":!1,"content-class":`c-notification-center__popover`,onAfterLeave:A},{trigger:E(()=>[f(G,{count:w(p).unreadCount.value,"max-count":r.maxBadgeCount,"has-urgent":h.value,onClick:_},null,8,[`count`,`max-count`,`has-urgent`])]),default:E(()=>[u(`div`,je,[c(` 头部标题 `),u(`div`,Me,[t[2]||=u(`span`,{class:`c-notification-center__title`},`消息中心`,-1),u(`div`,Ne,[c(` WebSocket 连接状态 `),r.wsConfig?(v(),s(n,{key:0,trigger:`hover`,placement:`top`},{trigger:E(()=>[u(`span`,{class:m([`c-notification-center__ws-dot`,`c-notification-center__ws-dot--${w(p).wsStatus.value}`])},null,2)]),default:E(()=>[d(` `+C(g.value),1)]),_:1})):c(`v-if`,!0)])]),c(` 列表 / 详情切换 `),f(a,{name:`slide-fade`,mode:`out-in`},{default:E(()=>[w(p).selectedMessage.value?(v(),s(ke,{key:w(p).selectedMessage.value.id,message:w(p).selectedMessage.value,onBack:w(p).clearSelection,onAction:k,onNavigate:t[0]||=e=>i(`navigate`,e)},null,8,[`message`,`onBack`])):(v(),s(ye,{key:1,messages:w(p).filteredMessages.value,"active-category":w(p).activeCategory.value,"unread-by-category":w(p).unreadByCategory.value,"unread-count":w(p).unreadCount.value,loading:w(p).loading.value,"has-more":w(p).hasMore.value,onSwitchCategory:w(p).switchCategory,onItemClick:y,onRead:b,onDelete:x,onMarkAllRead:D,onClear:O,onLoadMore:w(p).loadMore},null,8,[`messages`,`active-category`,`unread-by-category`,`unread-count`,`loading`,`has-more`,`onSwitchCategory`,`onLoadMore`]))]),_:1})])]),_:1},8,[`show`])])}}}),[[`__scopeId`,`data-v-a60d6896`]]);export{I as a,k as c,P as d,F as f,R as g,z as h,B as i,A as l,M as m,Q as n,L as o,N as p,V as r,O as s,Pe as t,j as u};
|
|
2
2
|
//# sourceMappingURL=C_NotificationCenter2.js.map
|