pcm-agents 0.6.100-beta.0 → 0.6.100-beta.1
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/dist/cjs/components-position-selector.cjs.entry.js +236 -0
- package/dist/cjs/components-position-selector.cjs.entry.js.map +1 -0
- package/dist/cjs/components-position-selector.entry.cjs.js.map +1 -0
- package/dist/cjs/{conversation-utils-DUxBX-Ef.js → conversation-utils-CVUpZZ-9.js} +4 -4
- package/dist/cjs/{conversation-utils-DUxBX-Ef.js.map → conversation-utils-CVUpZZ-9.js.map} +1 -1
- package/dist/cjs/index-C_qhED9Z.js +20 -28
- package/dist/cjs/{index-C8Rq0Gh2.js → index-Tidd-NqG.js} +3 -3
- package/dist/cjs/{index-C8Rq0Gh2.js.map → index-Tidd-NqG.js.map} +1 -1
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{index-B8gwjzvs.js → message-utils-CBcfjLxY.js} +22 -22
- package/dist/cjs/message-utils-CBcfjLxY.js.map +1 -0
- package/dist/cjs/oem-htws-modal.cjs.entry.js +330 -0
- package/dist/cjs/oem-htws-modal.cjs.entry.js.map +1 -0
- package/dist/cjs/oem-htws-modal.entry.cjs.js.map +1 -0
- package/dist/cjs/oem-jd-modal.cjs.entry.js +498 -0
- package/dist/cjs/oem-jd-modal.cjs.entry.js.map +1 -0
- package/dist/cjs/oem-jd-modal.entry.cjs.js.map +1 -0
- package/dist/cjs/oem-jlpp-modal.cjs.entry.js +372 -0
- package/dist/cjs/oem-jlpp-modal.cjs.entry.js.map +1 -0
- package/dist/cjs/oem-jlpp-modal.entry.cjs.js.map +1 -0
- package/dist/cjs/{pcm-jlsx-modal.cjs.entry.js → oem-jlsx-modal.cjs.entry.js} +291 -281
- package/dist/cjs/oem-jlsx-modal.cjs.entry.js.map +1 -0
- package/dist/cjs/oem-jlsx-modal.entry.cjs.js.map +1 -0
- package/dist/cjs/oem-jlzz-modal.cjs.entry.js +315 -0
- package/dist/cjs/oem-jlzz-modal.cjs.entry.js.map +1 -0
- package/dist/cjs/oem-jlzz-modal.entry.cjs.js.map +1 -0
- package/dist/cjs/oem-mnct-modal.cjs.entry.js +285 -0
- package/dist/cjs/oem-mnct-modal.cjs.entry.js.map +1 -0
- package/dist/cjs/oem-mnct-modal.entry.cjs.js.map +1 -0
- package/dist/cjs/oem-mnms-modal.cjs.entry.js +440 -0
- package/dist/cjs/oem-mnms-modal.cjs.entry.js.map +1 -0
- package/dist/cjs/oem-mnms-modal.entry.cjs.js.map +1 -0
- package/dist/cjs/{pcm-qgqjl-modal.cjs.entry.js → oem-qgqjl-modal.cjs.entry.js} +47 -18
- package/dist/{pcm-agents/pcm-qgqjl-modal.entry.esm.js.map → cjs/oem-qgqjl-modal.cjs.entry.js.map} +1 -1
- package/dist/cjs/oem-qgqjl-modal.entry.cjs.js.map +1 -0
- package/dist/cjs/{components-position-selector_29.cjs.entry.js → oem-zygh-modal_31.cjs.entry.js} +10714 -9694
- package/dist/cjs/oem-zygh-modal_31.cjs.entry.js.map +1 -0
- package/dist/cjs/pcm-agents.cjs.js +1 -1
- package/dist/cjs/pcm-hr-chat-modal.cjs.entry.js +3 -3
- package/dist/cjs/pcm-hr-chat-modal.cjs.entry.js.map +1 -1
- package/dist/cjs/pcm-hr-chat-modal.entry.cjs.js.map +1 -1
- package/dist/cjs/{sentry-reporter-BF_6sXkz.js → sentry-reporter-H2cTWau_.js} +3 -3
- package/dist/cjs/{sentry-reporter-BF_6sXkz.js.map → sentry-reporter-H2cTWau_.js.map} +1 -1
- package/dist/collection/components/oem-htws-modal/oem-htws-modal.js +0 -1
- package/dist/collection/components/oem-htws-modal/oem-htws-modal.js.map +1 -1
- package/dist/collection/components/oem-jd-modal/oem-jd-modal.js +0 -1
- package/dist/collection/components/oem-jd-modal/oem-jd-modal.js.map +1 -1
- package/dist/collection/components/oem-jlpp-modal/oem-jlpp-modal.js +0 -1
- package/dist/collection/components/oem-jlpp-modal/oem-jlpp-modal.js.map +1 -1
- package/dist/collection/components/oem-jlsx-modal/oem-jlsx-modal.js +0 -1
- package/dist/collection/components/oem-jlsx-modal/oem-jlsx-modal.js.map +1 -1
- package/dist/collection/components/oem-jlzz-modal/oem-jlzz-modal.js +0 -1
- package/dist/collection/components/oem-jlzz-modal/oem-jlzz-modal.js.map +1 -1
- package/dist/collection/components/oem-mnct-modal/oem-mnct-modal.js +0 -1
- package/dist/collection/components/oem-mnct-modal/oem-mnct-modal.js.map +1 -1
- package/dist/collection/components/oem-mnms-modal/oem-mnms-modal.js +0 -1
- package/dist/collection/components/oem-mnms-modal/oem-mnms-modal.js.map +1 -1
- package/dist/collection/components/oem-qgqjl-modal/oem-qgqjl-modal.js +0 -1
- package/dist/collection/components/oem-qgqjl-modal/oem-qgqjl-modal.js.map +1 -1
- package/dist/collection/components/oem-zygh-modal/oem-zygh-modal.js +0 -1
- package/dist/collection/components/oem-zygh-modal/oem-zygh-modal.js.map +1 -1
- package/dist/collection/components/pcm-app-chat-modal/pcm-app-chat-modal.css +1 -1
- package/dist/collection/components/pcm-export-records-modal/pcm-export-records-modal.css +2 -1
- package/dist/collection/components/pcm-hr-chat-modal/pcm-hr-chat-modal.css +1 -1
- package/dist/collection/components/pcm-thousand-resume-wrapper/pcm-thousand-resume-wrapper.css +2 -1
- package/dist/collection/components/pcm-zsk-chat-modal/pcm-zsk-chat-modal.css +1 -1
- package/dist/collection/global/global.css +1 -6
- package/dist/components/components-position-selector.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/oem-htws-modal.js +7 -8
- package/dist/components/oem-htws-modal.js.map +1 -1
- package/dist/components/oem-jd-modal.js +5 -6
- package/dist/components/oem-jd-modal.js.map +1 -1
- package/dist/components/oem-jlpp-modal.js +9 -10
- package/dist/components/oem-jlpp-modal.js.map +1 -1
- package/dist/components/oem-jlsx-modal.js +7 -8
- package/dist/components/oem-jlsx-modal.js.map +1 -1
- package/dist/components/oem-jlzz-modal.js +7 -8
- package/dist/components/oem-jlzz-modal.js.map +1 -1
- package/dist/components/oem-mnct-modal.js +9 -10
- package/dist/components/oem-mnct-modal.js.map +1 -1
- package/dist/components/oem-mnms-modal.js +10 -11
- package/dist/components/oem-mnms-modal.js.map +1 -1
- package/dist/components/oem-qgqjl-modal.js +11 -12
- package/dist/components/oem-qgqjl-modal.js.map +1 -1
- package/dist/components/oem-zygh-modal.js +7 -8
- package/dist/components/oem-zygh-modal.js.map +1 -1
- package/dist/components/{p-BQ4GfOcS.js → p-B9HwpsXV.js} +3 -3
- package/dist/components/{p-BQ4GfOcS.js.map → p-B9HwpsXV.js.map} +1 -1
- package/dist/components/{p-CpIPls4g.js → p-BZOFuQRF.js} +4 -4
- package/dist/components/p-BZOFuQRF.js.map +1 -0
- package/dist/components/{p-DQcK3lkc.js → p-Bj1fyvKx.js} +3 -3
- package/dist/components/{p-DQcK3lkc.js.map → p-Bj1fyvKx.js.map} +1 -1
- package/dist/components/{p-CVr53sbr.js → p-C6HBz42i.js} +4 -4
- package/dist/components/p-C6HBz42i.js.map +1 -0
- package/dist/components/{p-CACrFraN.js → p-CCIcoNBo.js} +4 -4
- package/dist/components/p-CCIcoNBo.js.map +1 -0
- package/dist/components/{p-DGAJ-s6g.js → p-CVL7ZAZc.js} +6 -6
- package/dist/components/p-CVL7ZAZc.js.map +1 -0
- package/dist/components/{p-PZCS-y24.js → p-CZTMy-dH.js} +5 -5
- package/dist/components/p-CZTMy-dH.js.map +1 -0
- package/dist/components/{p-CHafRDaO.js → p-D8lU3pfr.js} +5 -5
- package/dist/components/p-D8lU3pfr.js.map +1 -0
- package/dist/components/{p-BsB1MRq_.js → p-WrFUQIdY.js} +3 -3
- package/dist/components/{p-BsB1MRq_.js.map → p-WrFUQIdY.js.map} +1 -1
- package/dist/components/{p-Cjb8g0NJ.js → p-eI93ZFMp.js} +3 -3
- package/dist/components/{p-Cjb8g0NJ.js.map → p-eI93ZFMp.js.map} +1 -1
- package/dist/components/{p-CBHPkPMx.js → p-nW0WRkVF.js} +3 -3
- package/dist/components/{p-CBHPkPMx.js.map → p-nW0WRkVF.js.map} +1 -1
- package/dist/components/{p-Btm-XNt6.js → p-pcD3p8bg.js} +4 -4
- package/dist/components/p-pcD3p8bg.js.map +1 -0
- package/dist/components/pcm-1zhanshi-mnms-modal.js +6 -6
- package/dist/components/pcm-1zhanshi-mnms-modal.js.map +1 -1
- package/dist/components/pcm-app-chat-modal.js +1 -1
- package/dist/components/pcm-ats-mnms-modal.js +6 -6
- package/dist/components/pcm-ats-mnms-modal.js.map +1 -1
- package/dist/components/pcm-card.js +1 -1
- package/dist/components/pcm-chat-message.js +1 -1
- package/dist/components/pcm-digital-human.js +1 -1
- package/dist/components/pcm-export-records-modal.js +1 -1
- package/dist/components/pcm-hr-chat-modal.js +3 -3
- package/dist/components/pcm-hr-chat-modal.js.map +1 -1
- package/dist/components/pcm-htws-modal.js +9 -9
- package/dist/components/pcm-htws-modal.js.map +1 -1
- package/dist/components/pcm-hyzj-modal.js +6 -6
- package/dist/components/pcm-hyzj-modal.js.map +1 -1
- package/dist/components/pcm-jd-modal.js +6 -6
- package/dist/components/pcm-jd-modal.js.map +1 -1
- package/dist/components/pcm-jlpp-modal.js +9 -9
- package/dist/components/pcm-jlpp-modal.js.map +1 -1
- package/dist/components/pcm-jlsx-modal.js +6 -6
- package/dist/components/pcm-jlsx-modal.js.map +1 -1
- package/dist/components/pcm-jlzz-modal.js +7 -7
- package/dist/components/pcm-jlzz-modal.js.map +1 -1
- package/dist/components/pcm-mnct-modal.js +8 -8
- package/dist/components/pcm-mnct-modal.js.map +1 -1
- package/dist/components/pcm-mnms-modal.js +9 -9
- package/dist/components/pcm-mnms-modal.js.map +1 -1
- package/dist/components/pcm-mnms-zp-modal.js +9 -9
- package/dist/components/pcm-mnms-zp-modal.js.map +1 -1
- package/dist/components/pcm-mobile-input-btn.js +1 -1
- package/dist/components/pcm-mobile-upload-btn.js +1 -1
- package/dist/components/pcm-msbg-modal.js +6 -6
- package/dist/components/pcm-msbg-modal.js.map +1 -1
- package/dist/components/pcm-qgqjl-modal.js +10 -10
- package/dist/components/pcm-qgqjl-modal.js.map +1 -1
- package/dist/components/pcm-thousand-resume-wrapper.js +1 -1
- package/dist/components/pcm-upload.js +1 -1
- package/dist/components/pcm-virtual-chat-modal.js +1 -1
- package/dist/components/pcm-zsk-chat-modal.js +3 -3
- package/dist/components/pcm-zsk-chat-modal.js.map +1 -1
- package/dist/components/pcm-zygh-modal.js +8 -8
- package/dist/components/pcm-zygh-modal.js.map +1 -1
- package/dist/components/pcm-zygh-v2-modal.js +8 -8
- package/dist/components/pcm-zygh-v2-modal.js.map +1 -1
- package/dist/esm/components-position-selector.entry.js +234 -0
- package/dist/esm/components-position-selector.entry.js.map +1 -0
- package/dist/esm/{conversation-utils-DTHC5J-c.js → conversation-utils-Ba6ojC6J.js} +4 -4
- package/dist/esm/{conversation-utils-DTHC5J-c.js.map → conversation-utils-Ba6ojC6J.js.map} +1 -1
- package/dist/esm/index-Bq0K-WqZ.js +20 -28
- package/dist/esm/{index-BkzBhSlQ.js → index-C9eG_TNh.js} +4 -4
- package/dist/esm/{index-BkzBhSlQ.js.map → index-C9eG_TNh.js.map} +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{index-BBvGAUls.js → message-utils-BIp-Cjpg.js} +22 -22
- package/dist/esm/message-utils-BIp-Cjpg.js.map +1 -0
- package/dist/esm/oem-htws-modal.entry.js +328 -0
- package/dist/esm/oem-htws-modal.entry.js.map +1 -0
- package/dist/esm/oem-jd-modal.entry.js +496 -0
- package/dist/esm/oem-jd-modal.entry.js.map +1 -0
- package/dist/esm/oem-jlpp-modal.entry.js +370 -0
- package/dist/esm/oem-jlpp-modal.entry.js.map +1 -0
- package/dist/esm/{pcm-jlsx-modal.entry.js → oem-jlsx-modal.entry.js} +259 -249
- package/dist/esm/oem-jlsx-modal.entry.js.map +1 -0
- package/dist/esm/oem-jlzz-modal.entry.js +313 -0
- package/dist/esm/oem-jlzz-modal.entry.js.map +1 -0
- package/dist/esm/oem-mnct-modal.entry.js +283 -0
- package/dist/esm/oem-mnct-modal.entry.js.map +1 -0
- package/dist/esm/oem-mnms-modal.entry.js +438 -0
- package/dist/esm/oem-mnms-modal.entry.js.map +1 -0
- package/dist/esm/{pcm-qgqjl-modal.entry.js → oem-qgqjl-modal.entry.js} +47 -18
- package/dist/esm/oem-qgqjl-modal.entry.js.map +1 -0
- package/dist/esm/{components-position-selector_29.entry.js → oem-zygh-modal_31.entry.js} +11290 -10272
- package/dist/esm/oem-zygh-modal_31.entry.js.map +1 -0
- package/dist/esm/pcm-agents.js +1 -1
- package/dist/esm/pcm-hr-chat-modal.entry.js +3 -3
- package/dist/esm/pcm-hr-chat-modal.entry.js.map +1 -1
- package/dist/esm/{sentry-reporter-LNAwEaaM.js → sentry-reporter-BTxbG8FT.js} +3 -3
- package/dist/esm/{sentry-reporter-LNAwEaaM.js.map → sentry-reporter-BTxbG8FT.js.map} +1 -1
- package/dist/pcm-agents/components-position-selector.entry.esm.js.map +1 -0
- package/dist/pcm-agents/index.esm.js +1 -1
- package/dist/pcm-agents/oem-htws-modal.entry.esm.js.map +1 -0
- package/dist/pcm-agents/oem-jd-modal.entry.esm.js.map +1 -0
- package/dist/pcm-agents/oem-jlpp-modal.entry.esm.js.map +1 -0
- package/dist/pcm-agents/oem-jlsx-modal.entry.esm.js.map +1 -0
- package/dist/pcm-agents/oem-jlzz-modal.entry.esm.js.map +1 -0
- package/dist/pcm-agents/oem-mnct-modal.entry.esm.js.map +1 -0
- package/dist/pcm-agents/oem-mnms-modal.entry.esm.js.map +1 -0
- package/dist/pcm-agents/oem-qgqjl-modal.entry.esm.js.map +1 -0
- package/dist/pcm-agents/p-18362024.entry.js +2 -0
- package/dist/pcm-agents/p-18362024.entry.js.map +1 -0
- package/dist/pcm-agents/p-1dbc9e6b.entry.js +2 -0
- package/dist/pcm-agents/p-1dbc9e6b.entry.js.map +1 -0
- package/dist/pcm-agents/p-22175b75.entry.js +8 -0
- package/dist/pcm-agents/p-22175b75.entry.js.map +1 -0
- package/dist/pcm-agents/p-3202f9b8.entry.js +2 -0
- package/dist/pcm-agents/p-3202f9b8.entry.js.map +1 -0
- package/dist/pcm-agents/p-5c0de16c.entry.js +2 -0
- package/dist/pcm-agents/p-5c0de16c.entry.js.map +1 -0
- package/dist/pcm-agents/p-BIp-Cjpg.js +2 -0
- package/dist/pcm-agents/p-BIp-Cjpg.js.map +1 -0
- package/dist/pcm-agents/{p-D2uVlfGV.js → p-DSNmDD4A.js} +2 -2
- package/dist/pcm-agents/{p-D2uVlfGV.js.map → p-DSNmDD4A.js.map} +1 -1
- package/dist/pcm-agents/{p-B_bH1rHy.js → p-J3kR7juD.js} +2 -2
- package/dist/pcm-agents/{p-B_bH1rHy.js.map → p-J3kR7juD.js.map} +1 -1
- package/dist/pcm-agents/{p-C0D352kQ.js → p-OnLi3T92.js} +2 -2
- package/dist/pcm-agents/{p-C0D352kQ.js.map → p-OnLi3T92.js.map} +1 -1
- package/dist/pcm-agents/p-b1c92f7a.entry.js +2 -0
- package/dist/pcm-agents/p-b1c92f7a.entry.js.map +1 -0
- package/dist/pcm-agents/p-cc1d9b52.entry.js +2 -0
- package/dist/pcm-agents/p-cc1d9b52.entry.js.map +1 -0
- package/dist/pcm-agents/p-d7bb9139.entry.js +2 -0
- package/dist/pcm-agents/p-d7bb9139.entry.js.map +1 -0
- package/dist/pcm-agents/p-f15055b0.entry.js +2 -0
- package/dist/pcm-agents/p-f15055b0.entry.js.map +1 -0
- package/dist/pcm-agents/p-f4eb8918.entry.js +2 -0
- package/dist/pcm-agents/p-f4eb8918.entry.js.map +1 -0
- package/dist/pcm-agents/p-f931dbe6.entry.js +2 -0
- package/dist/pcm-agents/p-f931dbe6.entry.js.map +1 -0
- package/dist/pcm-agents/pcm-agents.esm.js +1 -1
- package/dist/pcm-agents/pcm-hr-chat-modal.entry.esm.js.map +1 -1
- package/package.json +1 -1
- package/dist/cjs/components-position-selector_29.cjs.entry.js.map +0 -1
- package/dist/cjs/index-B8gwjzvs.js.map +0 -1
- package/dist/cjs/pcm-ats-mnms-modal.cjs.entry.js +0 -238
- package/dist/cjs/pcm-ats-mnms-modal.cjs.entry.js.map +0 -1
- package/dist/cjs/pcm-ats-mnms-modal.entry.cjs.js.map +0 -1
- package/dist/cjs/pcm-htws-modal.cjs.entry.js +0 -316
- package/dist/cjs/pcm-htws-modal.cjs.entry.js.map +0 -1
- package/dist/cjs/pcm-htws-modal.entry.cjs.js.map +0 -1
- package/dist/cjs/pcm-jd-modal.cjs.entry.js +0 -792
- package/dist/cjs/pcm-jd-modal.cjs.entry.js.map +0 -1
- package/dist/cjs/pcm-jd-modal.entry.cjs.js.map +0 -1
- package/dist/cjs/pcm-jlpp-modal.cjs.entry.js +0 -313
- package/dist/cjs/pcm-jlpp-modal.cjs.entry.js.map +0 -1
- package/dist/cjs/pcm-jlpp-modal.entry.cjs.js.map +0 -1
- package/dist/cjs/pcm-jlsx-modal.cjs.entry.js.map +0 -1
- package/dist/cjs/pcm-jlsx-modal.entry.cjs.js.map +0 -1
- package/dist/cjs/pcm-jlzz-modal.cjs.entry.js +0 -503
- package/dist/cjs/pcm-jlzz-modal.cjs.entry.js.map +0 -1
- package/dist/cjs/pcm-jlzz-modal.entry.cjs.js.map +0 -1
- package/dist/cjs/pcm-mnct-modal.cjs.entry.js +0 -457
- package/dist/cjs/pcm-mnct-modal.cjs.entry.js.map +0 -1
- package/dist/cjs/pcm-mnct-modal.entry.cjs.js.map +0 -1
- package/dist/cjs/pcm-mnms-modal.cjs.entry.js +0 -321
- package/dist/cjs/pcm-mnms-modal.cjs.entry.js.map +0 -1
- package/dist/cjs/pcm-mnms-modal.entry.cjs.js.map +0 -1
- package/dist/cjs/pcm-qgqjl-modal.cjs.entry.js.map +0 -1
- package/dist/cjs/pcm-qgqjl-modal.entry.cjs.js.map +0 -1
- package/dist/cjs/pcm-zygh-modal.cjs.entry.js +0 -309
- package/dist/cjs/pcm-zygh-modal.cjs.entry.js.map +0 -1
- package/dist/cjs/pcm-zygh-modal.entry.cjs.js.map +0 -1
- package/dist/cjs/pcm-zygh-v2-modal.cjs.entry.js +0 -332
- package/dist/cjs/pcm-zygh-v2-modal.cjs.entry.js.map +0 -1
- package/dist/cjs/pcm-zygh-v2-modal.entry.cjs.js.map +0 -1
- package/dist/components/p-Btm-XNt6.js.map +0 -1
- package/dist/components/p-CACrFraN.js.map +0 -1
- package/dist/components/p-CHafRDaO.js.map +0 -1
- package/dist/components/p-CVr53sbr.js.map +0 -1
- package/dist/components/p-CpIPls4g.js.map +0 -1
- package/dist/components/p-DGAJ-s6g.js.map +0 -1
- package/dist/components/p-PZCS-y24.js.map +0 -1
- package/dist/esm/components-position-selector_29.entry.js.map +0 -1
- package/dist/esm/index-BBvGAUls.js.map +0 -1
- package/dist/esm/pcm-ats-mnms-modal.entry.js +0 -236
- package/dist/esm/pcm-ats-mnms-modal.entry.js.map +0 -1
- package/dist/esm/pcm-htws-modal.entry.js +0 -314
- package/dist/esm/pcm-htws-modal.entry.js.map +0 -1
- package/dist/esm/pcm-jd-modal.entry.js +0 -790
- package/dist/esm/pcm-jd-modal.entry.js.map +0 -1
- package/dist/esm/pcm-jlpp-modal.entry.js +0 -311
- package/dist/esm/pcm-jlpp-modal.entry.js.map +0 -1
- package/dist/esm/pcm-jlsx-modal.entry.js.map +0 -1
- package/dist/esm/pcm-jlzz-modal.entry.js +0 -501
- package/dist/esm/pcm-jlzz-modal.entry.js.map +0 -1
- package/dist/esm/pcm-mnct-modal.entry.js +0 -455
- package/dist/esm/pcm-mnct-modal.entry.js.map +0 -1
- package/dist/esm/pcm-mnms-modal.entry.js +0 -319
- package/dist/esm/pcm-mnms-modal.entry.js.map +0 -1
- package/dist/esm/pcm-qgqjl-modal.entry.js.map +0 -1
- package/dist/esm/pcm-zygh-modal.entry.js +0 -307
- package/dist/esm/pcm-zygh-modal.entry.js.map +0 -1
- package/dist/esm/pcm-zygh-v2-modal.entry.js +0 -330
- package/dist/esm/pcm-zygh-v2-modal.entry.js.map +0 -1
- package/dist/pcm-agents/p-020a7e53.entry.js +0 -2
- package/dist/pcm-agents/p-020a7e53.entry.js.map +0 -1
- package/dist/pcm-agents/p-063931bf.entry.js +0 -2
- package/dist/pcm-agents/p-063931bf.entry.js.map +0 -1
- package/dist/pcm-agents/p-366af76c.entry.js +0 -2
- package/dist/pcm-agents/p-366af76c.entry.js.map +0 -1
- package/dist/pcm-agents/p-41857f68.entry.js +0 -2
- package/dist/pcm-agents/p-41857f68.entry.js.map +0 -1
- package/dist/pcm-agents/p-47b084b1.entry.js +0 -2
- package/dist/pcm-agents/p-47b084b1.entry.js.map +0 -1
- package/dist/pcm-agents/p-49262bcd.entry.js +0 -2
- package/dist/pcm-agents/p-49262bcd.entry.js.map +0 -1
- package/dist/pcm-agents/p-4938182d.entry.js +0 -2
- package/dist/pcm-agents/p-4938182d.entry.js.map +0 -1
- package/dist/pcm-agents/p-4a92cf84.entry.js +0 -2
- package/dist/pcm-agents/p-4a92cf84.entry.js.map +0 -1
- package/dist/pcm-agents/p-70913ab5.entry.js +0 -8
- package/dist/pcm-agents/p-70913ab5.entry.js.map +0 -1
- package/dist/pcm-agents/p-BBvGAUls.js +0 -2
- package/dist/pcm-agents/p-BBvGAUls.js.map +0 -1
- package/dist/pcm-agents/p-aed89e5f.entry.js +0 -2
- package/dist/pcm-agents/p-aed89e5f.entry.js.map +0 -1
- package/dist/pcm-agents/p-c418c7a3.entry.js +0 -2
- package/dist/pcm-agents/p-c418c7a3.entry.js.map +0 -1
- package/dist/pcm-agents/p-df22cb48.entry.js +0 -2
- package/dist/pcm-agents/p-df22cb48.entry.js.map +0 -1
- package/dist/pcm-agents/p-e0731391.entry.js +0 -2
- package/dist/pcm-agents/p-e0731391.entry.js.map +0 -1
- package/dist/pcm-agents/pcm-ats-mnms-modal.entry.esm.js.map +0 -1
- package/dist/pcm-agents/pcm-htws-modal.entry.esm.js.map +0 -1
- package/dist/pcm-agents/pcm-jd-modal.entry.esm.js.map +0 -1
- package/dist/pcm-agents/pcm-jlpp-modal.entry.esm.js.map +0 -1
- package/dist/pcm-agents/pcm-jlsx-modal.entry.esm.js.map +0 -1
- package/dist/pcm-agents/pcm-jlzz-modal.entry.esm.js.map +0 -1
- package/dist/pcm-agents/pcm-mnct-modal.entry.esm.js.map +0 -1
- package/dist/pcm-agents/pcm-mnms-modal.entry.esm.js.map +0 -1
- package/dist/pcm-agents/pcm-zygh-modal.entry.esm.js.map +0 -1
- package/dist/pcm-agents/pcm-zygh-v2-modal.entry.esm.js.map +0 -1
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var index = require('./index-C_qhED9Z.js');
|
|
4
|
+
var index$1 = require('./index-Tidd-NqG.js');
|
|
5
|
+
var message_service = require('./message.service-DGUsA-FY.js');
|
|
6
|
+
|
|
7
|
+
const componentsPositionSelectorCss = ":host{display:block;width:100%;height:100%}.position-selector-container{display:flex;flex-direction:column;width:100%;height:100%;background:#fff}.search-bar{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid #f0f0f0;flex-shrink:0}.search-input-wrapper{position:relative;display:flex;align-items:center;flex:1;min-width:200px;max-width:500px}.search-icon{position:absolute;left:12px;color:#bfbfbf;pointer-events:none}.search-input{width:100%;height:36px;padding:4px 36px 4px 36px;font-size:14px;line-height:1.5;color:rgba(0, 0, 0, 0.85);background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:6px;transition:all 0.3s;outline:none}.search-input:hover{border-color:#40a9ff}.search-input:focus{border-color:#40a9ff;box-shadow:0 0 0 2px rgba(24, 144, 255, 0.2)}.search-input::placeholder{color:#bfbfbf}.clear-button{position:absolute;right:12px;background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#bfbfbf;transition:color 0.3s}.clear-button:hover{color:#8c8c8c}.search-button{padding:4px 15px;height:36px;font-size:14px;line-height:1.5;border-radius:6px;color:#fff;background-color:#1890ff;border:1px solid #1890ff;cursor:pointer;transition:all 0.3s;outline:none;white-space:nowrap;flex-shrink:0}.search-button:hover{background-color:#40a9ff;border-color:#40a9ff}.search-button:active{background-color:#096dd9;border-color:#096dd9}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;gap:16px;color:#8c8c8c}.loading-spinner{width:32px;height:32px;border:3px solid #f0f0f0;border-top-color:#1890ff;border-radius:50%;animation:spin 0.8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px}.empty-icon{opacity:0.5}.empty-text{margin:0;color:#8c8c8c;font-size:14px}.position-list{flex:1;overflow-y:auto;min-height:0}.table-container{width:100%;overflow-x:auto}.position-table{width:100%;border-collapse:collapse;font-size:14px}.position-table thead{background-color:#fafafa;position:sticky;top:0;z-index:1}.position-table th{padding:12px 16px;text-align:left;font-weight:500;color:rgba(0, 0, 0, 0.85);border-bottom:1px solid #f0f0f0;white-space:nowrap}.position-table td{padding:12px 16px;border-bottom:1px solid #f0f0f0;color:rgba(0, 0, 0, 0.65)}.position-table tbody tr{transition:background-color 0.3s}.position-table tbody tr:hover{background-color:#fafafa}.position-table tbody tr.selected-row{background-color:#e6f7ff}.checkbox-column{width:50px;text-align:center}.title-column{min-width:150px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.company-column{min-width:120px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-column{min-width:100px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.requirements-column{min-width:200px;max-width:300px}.requirements-text{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal;word-break:break-word;line-height:1.5}.salary-column{min-width:100px;white-space:nowrap}.action-column{width:100px;text-align:center}.position-checkbox{width:16px;height:16px;cursor:pointer;accent-color:#1890ff}.select-button{padding:4px 15px;height:28px;font-size:14px;line-height:1.5;border-radius:6px;color:#fff;background-color:#1890ff;border:1px solid #1890ff;cursor:pointer;transition:all 0.3s;outline:none}.select-button:hover{background-color:#40a9ff;border-color:#40a9ff}.select-button:active{background-color:#096dd9;border-color:#096dd9}@media screen and (max-width: 768px){.search-bar{padding:12px;gap:8px}.search-input-wrapper{min-width:auto;max-width:none}.search-input{height:40px;font-size:16px}.search-button{height:40px;padding:4px 12px}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.position-table{font-size:12px}.position-table th,.position-table td{padding:8px 12px}.title-column,.company-column,.location-column{min-width:100px}.select-button{padding:4px 12px;height:32px;font-size:14px}}.pagination-container{display:flex;align-items:center;justify-content:center;gap:16px;padding:16px;border-top:1px solid #f0f0f0;flex-shrink:0}.pagination-button{padding:4px 15px;height:32px;font-size:14px;line-height:1.5;border-radius:6px;color:rgba(0, 0, 0, 0.85);background-color:#fff;border:1px solid #d9d9d9;cursor:pointer;transition:all 0.3s;outline:none}.pagination-button:hover:not(:disabled){color:#40a9ff;border-color:#40a9ff}.pagination-button:active:not(:disabled){color:#096dd9;border-color:#096dd9}.pagination-button:disabled{color:rgba(0, 0, 0, 0.25);background-color:#f5f5f5;border-color:#d9d9d9;cursor:not-allowed}.pagination-info{font-size:14px;color:rgba(0, 0, 0, 0.65)}.position-list::-webkit-scrollbar{width:8px;height:8px}.position-list::-webkit-scrollbar-track{background:#f1f1f1}.position-list::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.position-list::-webkit-scrollbar-thumb:hover{background:#555}";
|
|
8
|
+
|
|
9
|
+
const globalCss = ".modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0, 0, 0, 0.5);display:flex;z-index:1000;overflow-y:auto}.fullscreen-overlay{padding:0;background-color:rgba(0, 0, 0, 0.7);position:absolute;width:100%;height:auto}.modal-container{background-color:#fff;border-radius:8px;width:100%;display:flex;flex-direction:column;position:relative;margin:10vh auto auto auto;transition:all 0.3s ease-out;overflow:hidden}.modal-container.fullscreen{width:100%;max-width:none;height:100%;border-radius:0;margin:0;display:flex;flex-direction:column;max-height:100%}.pc-layout{width:80%;max-width:600px;min-width:320px}@media screen and (max-width: 768px){.pc-layout{width:95%}.modal-overlay{padding:10px 0px 0px 0px}.modal-container.fullscreen{width:100%;height:100%;max-height:100%;border-radius:16px 16px 0 0;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:4px 16px;height:50px;border-bottom:1px solid #e8e8e8;flex-shrink:0}.header-left{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:#333}.header-icon{width:24px;height:24px}.close-button{background:transparent;border:none;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:4px}.close-button:hover{background-color:rgba(0, 0, 0, 0.04)}.close-button span{font-size:24px;line-height:1;color:#999}.close-button:hover span{color:#666}.upload-area{cursor:pointer;width:100%}.upload-placeholder{transition:all 0.3s ease;display:flex;flex-direction:column;align-items:center;background:rgba(0, 0, 0, 0.02);border:1px dashed #d9d9d9;border-radius:8px;cursor:pointer}.upload-placeholder:hover{border:1px dashed #1890ff}.upload-placeholder img{margin-top:8px;width:50px;height:50px}.upload-placeholder .upload-text{margin:4px 0;color:#332F39;font-size:14px}.upload-placeholder .upload-hint{font-size:14px;color:#949AA5;margin-top:8px;padding:0px 10px;text-align:center;white-space:normal;word-wrap:break-word;word-break:break-all;line-height:1.4}.file-item{position:relative;padding:16px;border:1px solid #e2e8f0;border-radius:8px;transition:border-color 0.3s;cursor:pointer;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center}.file-item:hover{border-color:#0D75FB}.file-item-content{display:flex;align-items:center;gap:8px;flex:1;min-width:0;overflow:hidden}.file-icon{color:#0D75FB;flex-shrink:0}.file-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 50px)}.remove-file{background:transparent;border:none;color:#94a3b8;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;padding:4px;margin-left:8px;border-radius:4px;transition:all 0.2s;min-width:30px;min-height:30px}.remove-file:hover{background-color:#f1f5f9;color:#475569}.file-input{display:none}.input-container{padding:20px;display:flex;flex-direction:column;height:calc(100% - 50px);background:linear-gradient(150deg, #2a6ee933, #0000 50%) 0 0 / 400px 200px no-repeat, #fff;overflow-y:auto}.input-container h3{margin-top:0;margin-bottom:20px;font-size:18px;color:#333;text-align:center}.jd-input-section{margin-bottom:20px}.jd-input-section label{display:block;margin-bottom:8px;font-weight:500;color:#333}.job-description-textarea{width:calc(100% - 16px);border:1px solid #ddd;border-radius:4px;resize:vertical;font-family:inherit;font-size:14px;line-height:1.5;transition:border-color 0.3s;padding:8px}.job-description-textarea:focus{outline:none;border-color:#1890ff;box-shadow:0 0 0 2px rgba(24, 144, 255, 0.2)}.resume-upload-section{margin-bottom:20px;width:100%;display:flex;flex-direction:column}.resume-upload-section label{display:block;margin-bottom:8px;font-weight:500;color:#333}.interview-settings-section{margin-bottom:24px;padding:20px;background-color:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.settings-row{margin-bottom:20px}.settings-row:last-child{margin-bottom:0}.settings-label{display:block;font-weight:500;color:#333;margin-bottom:12px;font-size:14px}.question-number-section{width:100%}.slider-container{display:flex;align-items:center;gap:12px}.question-slider{flex:1;height:6px;background:#ddd;outline:none;border-radius:3px;-webkit-appearance:none;appearance:none}.question-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;background:#0D75FB;cursor:pointer;border-radius:50%;box-shadow:0 2px 4px rgba(0, 0, 0, 0.2)}.question-slider::-moz-range-thumb{width:20px;height:20px;background:#0D75FB;cursor:pointer;border-radius:50%;border:none;box-shadow:0 2px 4px rgba(0, 0, 0, 0.2)}.slider-value{font-weight:600;color:#0D75FB;font-size:14px;min-width:30px;text-align:center}.analysis-toggle-section{width:100%}.toggle-container{display:flex;align-items:center;gap:12px}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:0.3s;border-radius:24px}.toggle-slider:before{position:absolute;content:\"\";height:18px;width:18px;left:3px;bottom:3px;background-color:white;transition:0.3s;border-radius:50%;box-shadow:0 2px 4px rgba(0, 0, 0, 0.2)}input:checked+.toggle-slider{background-color:#0D75FB}input:checked+.toggle-slider:before{transform:translateX(20px)}.toggle-text{font-size:14px;color:#666;font-weight:500}.submit-button{margin-top:10px;padding:10px 30px;background:#0D75FB;color:white;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:all 0.3s ease;width:100%;max-width:400px;align-self:center}.submit-button:hover{background-color:#40a9ff}.submit-button:disabled{background-color:rgba(0,0,0,0.04);color:rgba(0,0,0,0.25);cursor:not-allowed}.ai-disclaimer{margin-top:16px;text-align:center;font-size:12px;color:#999;line-height:1.5}.ai-disclaimer p{margin:4px 0}.beian-info{display:flex;justify-content:center;flex-wrap:wrap;gap:4px}.ai-disclaimer a{color:#666;text-decoration:none;transition:color 0.2s ease}.ai-disclaimer a:hover{color:#1890ff;text-decoration:underline}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:24px}.loading-spinner{width:40px;height:40px;border:4px solid rgba(0, 0, 0, 0.1);border-radius:50%;border-top-color:var(--pcm-primary-color, #1890ff);animation:spin 1s linear infinite;margin-bottom:16px}.loading-text{font-size:16px;color:var(--pcm-text-color, #333)}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.header-history-button{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:4px 8px;border:none;border-radius:4px;background:transparent;color:#bbb;cursor:pointer;font-size:13px;font-family:inherit;line-height:1;transition:all 0.2s ease;flex-shrink:0;white-space:nowrap}.header-history-button svg{width:16px;height:16px;display:block;flex-shrink:0}.header-history-button:hover{background-color:rgba(0, 0, 0, 0.04);color:#666}.header-history-button:focus-visible{outline:2px solid rgba(13, 117, 251, 0.35);outline-offset:2px}.history-drawer-content{height:100%;display:flex;flex-direction:column}.conversation-list{flex:1;overflow-y:auto;padding:8px 0}.loading-conversations,.empty-conversations{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:#999}.loading-conversations .loading-spinner-small{margin-bottom:12px}.conversation-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;margin:0 8px 4px 8px;border-radius:8px;cursor:pointer;transition:all 0.2s ease;border:1px solid transparent}.conversation-item:hover{background:#f5f5f5}.conversation-info{flex:1;min-width:0}.conversation-title{font-size:14px;font-weight:500;color:#262626;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:#8c8c8c}.conversation-time{flex-shrink:0}.message-count{flex-shrink:0}.conversation-status{padding:2px 6px;border-radius:4px;font-size:11px;font-weight:500}.conversation-status.completed{background:#f6ffed;color:#52c41a}.conversation-status.running{background:#fff7e6;color:#fa8c16}.header-history-entry{display:inline-flex;align-items:center;justify-content:center;margin-left:8px;padding:4px 8px;border:none;border-radius:4px;background:#e6f7ff;color:#1890ff;cursor:pointer;font-size:12px;font-family:inherit;line-height:1;white-space:nowrap;transition:all 0.2s ease}.header-history-entry:hover{background:#bae7ff;color:#0958d9;transform:translateY(-1px)}.header-history-entry:focus-visible{outline:2px solid rgba(13, 117, 251, 0.35);outline-offset:2px}.history-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px 16px;border-top:1px solid #f0f0f0}.history-pagination-button{min-width:72px;padding:6px 12px;border:1px solid #d9d9d9;border-radius:6px;background:#fff;color:#595959;cursor:pointer;font-size:12px;transition:all 0.2s ease}.history-pagination-button:hover:not(:disabled){border-color:#1890ff;color:#1890ff;background:#e6f7ff}.history-pagination-button:disabled{border-color:#f0f0f0;color:#bfbfbf;background:#fafafa;cursor:not-allowed}.history-pagination-info{flex:1;text-align:center;color:#8c8c8c;font-size:12px}";
|
|
10
|
+
|
|
11
|
+
const ComponentsPositionSelector = class {
|
|
12
|
+
constructor(hostRef) {
|
|
13
|
+
index.registerInstance(this, hostRef);
|
|
14
|
+
this.positionSelected = index.createEvent(this, "positionSelected");
|
|
15
|
+
this.positionSelectionChange = index.createEvent(this, "positionSelectionChange");
|
|
16
|
+
this.search = index.createEvent(this, "search");
|
|
17
|
+
this.sort = index.createEvent(this, "sort");
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* OEM ID,用于获取职位列表
|
|
21
|
+
*/
|
|
22
|
+
oemId;
|
|
23
|
+
/**
|
|
24
|
+
* 是否多选,默认false(单选)
|
|
25
|
+
*/
|
|
26
|
+
multiple = false;
|
|
27
|
+
/**
|
|
28
|
+
* 已选中的ID列表(多选模式)
|
|
29
|
+
*/
|
|
30
|
+
selectedIds = [];
|
|
31
|
+
/**
|
|
32
|
+
* 每页显示的职位数量
|
|
33
|
+
*/
|
|
34
|
+
pageSize = 10;
|
|
35
|
+
/**
|
|
36
|
+
* 单选确认事件
|
|
37
|
+
*/
|
|
38
|
+
positionSelected;
|
|
39
|
+
/**
|
|
40
|
+
* 多选模式下的选择变化回调
|
|
41
|
+
* 返回操作类型和涉及的行数据
|
|
42
|
+
*/
|
|
43
|
+
positionSelectionChange;
|
|
44
|
+
/**
|
|
45
|
+
* 搜索事件
|
|
46
|
+
*/
|
|
47
|
+
search;
|
|
48
|
+
/**
|
|
49
|
+
* 排序事件
|
|
50
|
+
*/
|
|
51
|
+
sort;
|
|
52
|
+
searchKeyword = '';
|
|
53
|
+
currentSelectedIds = [];
|
|
54
|
+
currentPage = 1;
|
|
55
|
+
totalCount = 0;
|
|
56
|
+
positionsList = [];
|
|
57
|
+
loading = false;
|
|
58
|
+
handleSelectedIdsChange(newValue) {
|
|
59
|
+
this.currentSelectedIds = [...newValue];
|
|
60
|
+
}
|
|
61
|
+
async handleOemIdChange(newValue) {
|
|
62
|
+
if (newValue) {
|
|
63
|
+
await this.loadPositions();
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
async componentWillLoad() {
|
|
67
|
+
this.currentSelectedIds = [...this.selectedIds];
|
|
68
|
+
// 如果提供了oemId,则自动加载数据
|
|
69
|
+
if (this.oemId) {
|
|
70
|
+
await this.loadPositions();
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* 加载职位列表数据
|
|
75
|
+
*/
|
|
76
|
+
async loadPositions() {
|
|
77
|
+
this.loading = true;
|
|
78
|
+
try {
|
|
79
|
+
const result = await index$1.getOemPositions({
|
|
80
|
+
oemId: this.oemId,
|
|
81
|
+
page: this.currentPage,
|
|
82
|
+
pageSize: this.pageSize,
|
|
83
|
+
keyword: this.searchKeyword || undefined,
|
|
84
|
+
});
|
|
85
|
+
if (result.success && result.data) {
|
|
86
|
+
this.positionsList = result.data.items || [];
|
|
87
|
+
this.totalCount = result.data.total || 0;
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
message_service.Message.error(result.message || '获取职位列表失败');
|
|
91
|
+
this.positionsList = [];
|
|
92
|
+
this.totalCount = 0;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
catch (error) {
|
|
96
|
+
console.error('获取职位列表失败:', error);
|
|
97
|
+
message_service.Message.error('获取职位列表失败');
|
|
98
|
+
this.positionsList = [];
|
|
99
|
+
this.totalCount = 0;
|
|
100
|
+
}
|
|
101
|
+
finally {
|
|
102
|
+
this.loading = false;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
handleSearchInput = (event) => {
|
|
106
|
+
const input = event.target;
|
|
107
|
+
this.searchKeyword = input.value;
|
|
108
|
+
};
|
|
109
|
+
handleSearchKeyPress = async (event) => {
|
|
110
|
+
if (event.key === 'Enter') {
|
|
111
|
+
this.currentPage = 1;
|
|
112
|
+
await this.loadPositions();
|
|
113
|
+
}
|
|
114
|
+
};
|
|
115
|
+
handleSearchClick = async () => {
|
|
116
|
+
this.currentPage = 1;
|
|
117
|
+
await this.loadPositions();
|
|
118
|
+
};
|
|
119
|
+
handleSearchClear = async () => {
|
|
120
|
+
this.searchKeyword = '';
|
|
121
|
+
this.currentPage = 1;
|
|
122
|
+
await this.loadPositions();
|
|
123
|
+
};
|
|
124
|
+
handlePageChange = async (page) => {
|
|
125
|
+
this.currentPage = page;
|
|
126
|
+
await this.loadPositions();
|
|
127
|
+
};
|
|
128
|
+
getTotalPages = () => {
|
|
129
|
+
return Math.ceil(this.totalCount / this.pageSize);
|
|
130
|
+
};
|
|
131
|
+
getDisplayPositions = () => {
|
|
132
|
+
return this.positionsList;
|
|
133
|
+
};
|
|
134
|
+
formatPositionText = (position) => {
|
|
135
|
+
// 拼接所有职位相关元素
|
|
136
|
+
const parts = [];
|
|
137
|
+
if (position.title)
|
|
138
|
+
parts.push(`职位名称:${position.title}`);
|
|
139
|
+
if (position.company_name)
|
|
140
|
+
parts.push(`公司名称:${position.company_name}`);
|
|
141
|
+
if (position.department)
|
|
142
|
+
parts.push(`部门:${position.department}`);
|
|
143
|
+
if (position.employment_type)
|
|
144
|
+
parts.push(`招聘类型:${position.employment_type}`);
|
|
145
|
+
if (position.salary_range)
|
|
146
|
+
parts.push(`薪资范围:${position.salary_range}`);
|
|
147
|
+
if (position.salary_min || position.salary_max) {
|
|
148
|
+
const salaryText = `薪资:${position.salary_min || ''}${position.salary_min && position.salary_max ? '-' : ''}${position.salary_max || ''}`;
|
|
149
|
+
if (salaryText !== '薪资:')
|
|
150
|
+
parts.push(salaryText);
|
|
151
|
+
}
|
|
152
|
+
if (position.location)
|
|
153
|
+
parts.push(`工作地点:${position.location}`);
|
|
154
|
+
if (position.province)
|
|
155
|
+
parts.push(`省份:${position.province}`);
|
|
156
|
+
if (position.city)
|
|
157
|
+
parts.push(`城市:${position.city}`);
|
|
158
|
+
if (position.district)
|
|
159
|
+
parts.push(`区域:${position.district}`);
|
|
160
|
+
if (position.address)
|
|
161
|
+
parts.push(`详细地址:${position.address}`);
|
|
162
|
+
if (position.education_required)
|
|
163
|
+
parts.push(`学历要求:${position.education_required}`);
|
|
164
|
+
if (position.experience_required)
|
|
165
|
+
parts.push(`经验要求:${position.experience_required}`);
|
|
166
|
+
if (position.work_experience)
|
|
167
|
+
parts.push(`工作经验:${position.work_experience}`);
|
|
168
|
+
if (position.recruiting_number)
|
|
169
|
+
parts.push(`招聘人数:${position.recruiting_number}`);
|
|
170
|
+
if (position.job_description)
|
|
171
|
+
parts.push(`职位描述:${position.job_description}`);
|
|
172
|
+
if (position.job_responsibilities)
|
|
173
|
+
parts.push(`工作职责:${position.job_responsibilities}`);
|
|
174
|
+
if (position.job_requirements)
|
|
175
|
+
parts.push(`任职要求:${position.job_requirements}`);
|
|
176
|
+
if (position.skills_required)
|
|
177
|
+
parts.push(`技能要求:${position.skills_required}`);
|
|
178
|
+
if (position.benefits)
|
|
179
|
+
parts.push(`福利待遇:${position.benefits}`);
|
|
180
|
+
if (position.job_type)
|
|
181
|
+
parts.push(`职位类型:${position.job_type}`);
|
|
182
|
+
if (position.work_industry)
|
|
183
|
+
parts.push(`所属行业:${position.work_industry}`);
|
|
184
|
+
if (position.recruitment_channel)
|
|
185
|
+
parts.push(`招聘渠道:${position.recruitment_channel}`);
|
|
186
|
+
if (position.deadline)
|
|
187
|
+
parts.push(`截止日期:${position.deadline}`);
|
|
188
|
+
return parts.join('\n');
|
|
189
|
+
};
|
|
190
|
+
handleSelect = (position) => {
|
|
191
|
+
if (!this.multiple) {
|
|
192
|
+
// 单选模式,发送格式化后的职位信息
|
|
193
|
+
const formattedPosition = {
|
|
194
|
+
...position,
|
|
195
|
+
formatted_text: this.formatPositionText(position)
|
|
196
|
+
};
|
|
197
|
+
this.positionSelected.emit(formattedPosition);
|
|
198
|
+
}
|
|
199
|
+
};
|
|
200
|
+
handleCheckboxChange = (position, checked) => {
|
|
201
|
+
if (!this.multiple)
|
|
202
|
+
return;
|
|
203
|
+
if (checked) {
|
|
204
|
+
// 添加选中
|
|
205
|
+
if (!this.currentSelectedIds.includes(position.id)) {
|
|
206
|
+
this.currentSelectedIds = [...this.currentSelectedIds, position.id];
|
|
207
|
+
this.positionSelectionChange.emit({ action: 'add', positions: [position] });
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
else {
|
|
211
|
+
// 移除选中
|
|
212
|
+
this.currentSelectedIds = this.currentSelectedIds.filter(id => id !== position.id);
|
|
213
|
+
this.positionSelectionChange.emit({ action: 'remove', positions: [position] });
|
|
214
|
+
}
|
|
215
|
+
};
|
|
216
|
+
isSelected = (id) => {
|
|
217
|
+
return this.currentSelectedIds.includes(id);
|
|
218
|
+
};
|
|
219
|
+
render() {
|
|
220
|
+
const displayPositions = this.getDisplayPositions();
|
|
221
|
+
const totalPages = this.getTotalPages();
|
|
222
|
+
|
|
223
|
+
const showPagination = totalPages > 1;
|
|
224
|
+
return (index.h("div", { key: 'b9a2a7a5fcf7f6babf545618c29c94767c9a7f15', class: "position-selector-container" }, index.h("div", { key: '34b07a48a6407fb38232fa15bca9a1bc46a44977', class: "search-bar" }, index.h("div", { key: 'd9d6753b9c15deda249d712aab910b3bd3291ee6', class: "search-input-wrapper" }, index.h("svg", { key: '0e3d4f496e946da810a951ec053b87742ea5d6a1', class: "search-icon", viewBox: "0 0 1024 1024", width: "16", height: "16" }, index.h("path", { key: '81430360a9066757d05dec77db66d9ae2bf4f934', d: "M945.066667 898.133333l-189.866667-189.866666c55.466667-64 87.466667-149.333333 87.466667-241.066667 0-204.8-168.533333-373.333333-373.333334-373.333333S96 264.533333 96 469.333333 264.533333 842.666667 469.333333 842.666667c91.733333 0 174.933333-34.133333 241.066667-87.466667l189.866667 189.866667c6.4 6.4 14.933333 8.533333 23.466666 8.533333s17.066667-2.133333 23.466667-8.533333c8.533333-12.8 8.533333-34.133333-2.133333-46.933334zM469.333333 778.666667C298.666667 778.666667 160 640 160 469.333333S298.666667 160 469.333333 160 778.666667 298.666667 778.666667 469.333333 640 778.666667 469.333333 778.666667z", fill: "currentColor" })), index.h("input", { key: 'e7c7a2411ef25c92febcb8d954a5b39adf6f2ddb', type: "text", class: "search-input", placeholder: "\u641C\u7D22\u804C\u4F4D\u540D\u79F0", value: this.searchKeyword, onInput: this.handleSearchInput, onKeyPress: this.handleSearchKeyPress }), this.searchKeyword && (index.h("button", { key: 'a0ca6955d7f8cfd0e7a1f8cbf8917fd34f9ec0c6', class: "clear-button", onClick: this.handleSearchClear }, index.h("svg", { key: '2deeeb04f3ec672fb6ddb6a94c28f02d054673b2', viewBox: "0 0 1024 1024", width: "14", height: "14" }, index.h("path", { key: 'ef7a34671fd551b10bd80207e8b5c95e9a181a51', d: "M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm165.4 618.2l-66-0.3L512 563.4l-99.3 118.4-66.1 0.3c-4.4 0-8-3.5-8-8 0-1.9 0.7-3.7 1.9-5.2l130.1-155L340.5 359a8.32 8.32 0 0 1-1.9-5.2c0-4.4 3.6-8 8-8l66.1 0.3L512 464.6l99.3-118.4 66-0.3c4.4 0 8 3.5 8 8 0 1.9-0.7 3.7-1.9 5.2L553.5 514l130 155c1.2 1.5 1.9 3.3 1.9 5.2 0 4.4-3.6 8-8 8z", fill: "currentColor" }))))), index.h("button", { key: '75463782a60e1a9cdd92ab50d5c958682606b5c2', class: "search-button", onClick: this.handleSearchClick }, "\u641C\u7D22")), this.loading && (index.h("div", { key: '377bb0fefe3a0712a18d876de9728996a33537be', class: "loading-container" }, index.h("div", { key: '8af27dad62ec9606e71433f37410a9392751e176', class: "loading-spinner" }), index.h("p", { key: 'a8912f94c5a7b947f19166634653b6501fe0ebfe' }, "\u52A0\u8F7D\u4E2D..."))), !this.loading && (index.h("div", { key: '49a30136533f75beea03038bf99242a8165a6a71', class: "position-list" }, displayPositions.length === 0 ? (index.h("div", { class: "empty-container" }, index.h("svg", { class: "empty-icon", viewBox: "0 0 1024 1024", width: "64", height: "64" }, index.h("path", { d: "M512 128C300.8 128 128 300.8 128 512s172.8 384 384 384 384-172.8 384-384S723.2 128 512 128z m0 704c-176 0-320-144-320-320s144-320 320-320 320 144 320 320-144 320-320 320z", fill: "#d9d9d9" }), index.h("path", { d: "M512 320c-17.6 0-32 14.4-32 32v256c0 17.6 14.4 32 32 32s32-14.4 32-32V352c0-17.6-14.4-32-32-32z m0 384c-17.6 0-32 14.4-32 32s14.4 32 32 32 32-14.4 32-32-14.4-32-32-32z", fill: "#d9d9d9" })), index.h("p", { class: "empty-text" }, "\u6682\u65E0\u804C\u4F4D"))) : (index.h("div", { class: "table-container" }, index.h("table", { class: "position-table" }, index.h("thead", null, index.h("tr", null, this.multiple && index.h("th", { class: "checkbox-column" }), index.h("th", { class: "title-column" }, "\u804C\u4F4D\u540D\u79F0"), index.h("th", { class: "company-column" }, "\u516C\u53F8\u540D\u79F0"), index.h("th", { class: "location-column" }, "\u5DE5\u4F5C\u5730\u70B9"), index.h("th", { class: "requirements-column" }, "\u804C\u4F4D\u8981\u6C42"), !this.multiple && index.h("th", { class: "action-column" }, "\u64CD\u4F5C"))), index.h("tbody", null, displayPositions.map((position) => (index.h("tr", { key: position.id, class: { 'selected-row': this.multiple && this.isSelected(position.id) } }, this.multiple && (index.h("td", { class: "checkbox-column" }, index.h("input", { type: "checkbox", class: "position-checkbox", checked: this.isSelected(position.id), onChange: (e) => this.handleCheckboxChange(position, e.target.checked) }))), index.h("td", { class: "title-column", title: position.title }, position.title), index.h("td", { class: "company-column", title: position.company_name }, position.company_name || '-'), index.h("td", { class: "location-column", title: position.location }, position.location || '-'), index.h("td", { class: "requirements-column" }, index.h("div", { class: "requirements-text", title: position.job_requirements || position.job_responsibilities || '-' }, position.job_requirements || position.job_responsibilities || '-')), !this.multiple && (index.h("td", { class: "action-column" }, index.h("button", { class: "select-button", onClick: () => this.handleSelect(position) }, "\u9009\u62E9")))))))))))), showPagination && (index.h("div", { key: 'a120b2b9a11f140d3b4bb690bdded76c84953fbf', class: "pagination-container" }, index.h("button", { key: '230a815e0715d1c43d2b28845488bd929d47e4ed', class: "pagination-button", disabled: this.currentPage === 1, onClick: () => this.handlePageChange(this.currentPage - 1) }, "\u4E0A\u4E00\u9875"), index.h("span", { key: '18932249cd20ec09990a1f63732d81073f9d49d3', class: "pagination-info" }, "\u7B2C ", this.currentPage, " / ", totalPages, " \u9875\uFF0C\u5171 ", this.totalCount, " \u6761"), index.h("button", { key: '856b49851b722b4d267ba34f65a7793b864b0c18', class: "pagination-button", disabled: this.currentPage >= totalPages, onClick: () => this.handlePageChange(this.currentPage + 1) }, "\u4E0B\u4E00\u9875")))));
|
|
225
|
+
}
|
|
226
|
+
static get watchers() { return {
|
|
227
|
+
"selectedIds": ["handleSelectedIdsChange"],
|
|
228
|
+
"oemId": ["handleOemIdChange"]
|
|
229
|
+
}; }
|
|
230
|
+
};
|
|
231
|
+
ComponentsPositionSelector.style = componentsPositionSelectorCss + globalCss;
|
|
232
|
+
|
|
233
|
+
exports.components_position_selector = ComponentsPositionSelector;
|
|
234
|
+
//# sourceMappingURL=components-position-selector.entry.cjs.js.map
|
|
235
|
+
|
|
236
|
+
//# sourceMappingURL=components-position-selector.cjs.entry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"components-position-selector.entry.cjs.js","mappings":";;;;;;AAAA,MAAM,6BAA6B,GAAG,giKAAgiK;;ACAtkK,MAAM,SAAS,GAAG,2sSAA2sS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":[],"sources":["src/components/components-position-selector/components-position-selector.css?tag=components-position-selector&encapsulation=shadow","src/global/global.css?tag=components-position-selector&encapsulation=shadow"],"sourcesContent":[":host {\r\n display: block;\r\n width: 100%;\r\n height: 100%;\r\n}\r\n\r\n.position-selector-container {\r\n display: flex;\r\n flex-direction: column;\r\n width: 100%;\r\n height: 100%;\r\n background: #fff;\r\n}\r\n\r\n/* 搜索栏样式 */\r\n.search-bar {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\r\n padding: 16px;\r\n border-bottom: 1px solid #f0f0f0;\r\n flex-shrink: 0;\r\n}\r\n\r\n.search-input-wrapper {\r\n position: relative;\r\n display: flex;\r\n align-items: center;\r\n flex: 1;\r\n min-width: 200px;\r\n max-width: 500px;\r\n}\r\n\r\n.search-icon {\r\n position: absolute;\r\n left: 12px;\r\n color: #bfbfbf;\r\n pointer-events: none;\r\n}\r\n\r\n.search-input {\r\n width: 100%;\r\n height: 36px;\r\n padding: 4px 36px 4px 36px;\r\n font-size: 14px;\r\n line-height: 1.5;\r\n color: rgba(0, 0, 0, 0.85);\r\n background-color: #fff;\r\n background-image: none;\r\n border: 1px solid #d9d9d9;\r\n border-radius: 6px;\r\n transition: all 0.3s;\r\n outline: none;\r\n}\r\n\r\n.search-input:hover {\r\n border-color: #40a9ff;\r\n}\r\n\r\n.search-input:focus {\r\n border-color: #40a9ff;\r\n box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.2);\r\n}\r\n\r\n.search-input::placeholder {\r\n color: #bfbfbf;\r\n}\r\n\r\n.clear-button {\r\n position: absolute;\r\n right: 12px;\r\n background: none;\r\n border: none;\r\n padding: 4px;\r\n cursor: pointer;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n color: #bfbfbf;\r\n transition: color 0.3s;\r\n}\r\n\r\n.clear-button:hover {\r\n color: #8c8c8c;\r\n}\r\n\r\n.search-button {\r\n padding: 4px 15px;\r\n height: 36px;\r\n font-size: 14px;\r\n line-height: 1.5;\r\n border-radius: 6px;\r\n color: #fff;\r\n background-color: #1890ff;\r\n border: 1px solid #1890ff;\r\n cursor: pointer;\r\n transition: all 0.3s;\r\n outline: none;\r\n white-space: nowrap;\r\n flex-shrink: 0;\r\n}\r\n\r\n.search-button:hover {\r\n background-color: #40a9ff;\r\n border-color: #40a9ff;\r\n}\r\n\r\n.search-button:active {\r\n background-color: #096dd9;\r\n border-color: #096dd9;\r\n}\r\n\r\n/* 加载状态 */\r\n.loading-container {\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n padding: 40px;\r\n gap: 16px;\r\n color: #8c8c8c;\r\n}\r\n\r\n.loading-spinner {\r\n width: 32px;\r\n height: 32px;\r\n border: 3px solid #f0f0f0;\r\n border-top-color: #1890ff;\r\n border-radius: 50%;\r\n animation: spin 0.8s linear infinite;\r\n}\r\n\r\n@keyframes spin {\r\n to { transform: rotate(360deg); }\r\n}\r\n\r\n/* 空状态 */\r\n.empty-container {\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n padding: 60px 20px;\r\n gap: 16px;\r\n}\r\n\r\n.empty-icon {\r\n opacity: 0.5;\r\n}\r\n\r\n.empty-text {\r\n margin: 0;\r\n color: #8c8c8c;\r\n font-size: 14px;\r\n}\r\n\r\n/* 职位列表 */\r\n.position-list {\r\n flex: 1;\r\n overflow-y: auto;\r\n min-height: 0;\r\n}\r\n\r\n.table-container {\r\n width: 100%;\r\n overflow-x: auto;\r\n}\r\n\r\n.position-table {\r\n width: 100%;\r\n border-collapse: collapse;\r\n font-size: 14px;\r\n}\r\n\r\n.position-table thead {\r\n background-color: #fafafa;\r\n position: sticky;\r\n top: 0;\r\n z-index: 1;\r\n}\r\n\r\n.position-table th {\r\n padding: 12px 16px;\r\n text-align: left;\r\n font-weight: 500;\r\n color: rgba(0, 0, 0, 0.85);\r\n border-bottom: 1px solid #f0f0f0;\r\n white-space: nowrap;\r\n}\r\n\r\n.position-table td {\r\n padding: 12px 16px;\r\n border-bottom: 1px solid #f0f0f0;\r\n color: rgba(0, 0, 0, 0.65);\r\n}\r\n\r\n.position-table tbody tr {\r\n transition: background-color 0.3s;\r\n}\r\n\r\n.position-table tbody tr:hover {\r\n background-color: #fafafa;\r\n}\r\n\r\n.position-table tbody tr.selected-row {\r\n background-color: #e6f7ff;\r\n}\r\n\r\n/* 列宽设置 */\r\n.checkbox-column {\r\n width: 50px;\r\n text-align: center;\r\n}\r\n\r\n.title-column {\r\n min-width: 150px;\r\n max-width: 200px;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n}\r\n\r\n.company-column {\r\n min-width: 120px;\r\n max-width: 180px;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n}\r\n\r\n.location-column {\r\n min-width: 100px;\r\n max-width: 150px;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n}\r\n\r\n.requirements-column {\r\n min-width: 200px;\r\n max-width: 300px;\r\n}\r\n\r\n.requirements-text {\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n display: -webkit-box;\r\n -webkit-line-clamp: 2;\r\n -webkit-box-orient: vertical;\r\n white-space: normal;\r\n word-break: break-word;\r\n line-height: 1.5;\r\n}\r\n\r\n.salary-column {\r\n min-width: 100px;\r\n white-space: nowrap;\r\n}\r\n\r\n.action-column {\r\n width: 100px;\r\n text-align: center;\r\n}\r\n\r\n/* 复选框样式 */\r\n.position-checkbox {\r\n width: 16px;\r\n height: 16px;\r\n cursor: pointer;\r\n accent-color: #1890ff;\r\n}\r\n\r\n/* 选择按钮 */\r\n.select-button {\r\n padding: 4px 15px;\r\n height: 28px;\r\n font-size: 14px;\r\n line-height: 1.5;\r\n border-radius: 6px;\r\n color: #fff;\r\n background-color: #1890ff;\r\n border: 1px solid #1890ff;\r\n cursor: pointer;\r\n transition: all 0.3s;\r\n outline: none;\r\n}\r\n\r\n.select-button:hover {\r\n background-color: #40a9ff;\r\n border-color: #40a9ff;\r\n}\r\n\r\n.select-button:active {\r\n background-color: #096dd9;\r\n border-color: #096dd9;\r\n}\r\n\r\n/* 移动端适配 */\r\n@media screen and (max-width: 768px) {\r\n .search-bar {\r\n padding: 12px;\r\n gap: 8px;\r\n }\r\n\r\n .search-input-wrapper {\r\n min-width: auto;\r\n max-width: none;\r\n }\r\n\r\n .search-input {\r\n height: 40px;\r\n font-size: 16px;\r\n }\r\n\r\n .search-button {\r\n height: 40px;\r\n padding: 4px 12px;\r\n }\r\n\r\n .table-container {\r\n overflow-x: auto;\r\n -webkit-overflow-scrolling: touch;\r\n }\r\n\r\n .position-table {\r\n font-size: 12px;\r\n }\r\n\r\n .position-table th,\r\n .position-table td {\r\n padding: 8px 12px;\r\n }\r\n\r\n .title-column,\r\n .company-column,\r\n .location-column {\r\n min-width: 100px;\r\n }\r\n\r\n .select-button {\r\n padding: 4px 12px;\r\n height: 32px;\r\n font-size: 14px;\r\n }\r\n}\r\n\r\n/* 分页器样式 */\r\n.pagination-container {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n gap: 16px;\r\n padding: 16px;\r\n border-top: 1px solid #f0f0f0;\r\n flex-shrink: 0;\r\n}\r\n\r\n.pagination-button {\r\n padding: 4px 15px;\r\n height: 32px;\r\n font-size: 14px;\r\n line-height: 1.5;\r\n border-radius: 6px;\r\n color: rgba(0, 0, 0, 0.85);\r\n background-color: #fff;\r\n border: 1px solid #d9d9d9;\r\n cursor: pointer;\r\n transition: all 0.3s;\r\n outline: none;\r\n}\r\n\r\n.pagination-button:hover:not(:disabled) {\r\n color: #40a9ff;\r\n border-color: #40a9ff;\r\n}\r\n\r\n.pagination-button:active:not(:disabled) {\r\n color: #096dd9;\r\n border-color: #096dd9;\r\n}\r\n\r\n.pagination-button:disabled {\r\n color: rgba(0, 0, 0, 0.25);\r\n background-color: #f5f5f5;\r\n border-color: #d9d9d9;\r\n cursor: not-allowed;\r\n}\r\n\r\n.pagination-info {\r\n font-size: 14px;\r\n color: rgba(0, 0, 0, 0.65);\r\n}\r\n\r\n/* 滚动条样式 */\r\n.position-list::-webkit-scrollbar {\r\n width: 8px;\r\n height: 8px;\r\n}\r\n\r\n.position-list::-webkit-scrollbar-track {\r\n background: #f1f1f1;\r\n}\r\n\r\n.position-list::-webkit-scrollbar-thumb {\r\n background: #888;\r\n border-radius: 4px;\r\n}\r\n\r\n.position-list::-webkit-scrollbar-thumb:hover {\r\n background: #555;\r\n}\r\n","/* 模态框基础样式 */\r\n.modal-overlay {\r\n position: fixed;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n background-color: rgba(0, 0, 0, 0.5);\r\n display: flex;\r\n z-index: 1000;\r\n overflow-y: auto;\r\n}\r\n\r\n/* 全屏模式下的overlay样式 - 改为基于父组件 */\r\n.fullscreen-overlay {\r\n padding: 0;\r\n background-color: rgba(0, 0, 0, 0.7);\r\n /* 改为基于父组件的全屏 */\r\n position: absolute;\r\n width: 100%;\r\n height: auto;\r\n}\r\n\r\n.modal-container {\r\n background-color: #fff;\r\n border-radius: 8px;\r\n width: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n position: relative;\r\n margin: 10vh auto auto auto;\r\n transition: all 0.3s ease-out;\r\n overflow: hidden;\r\n}\r\n\r\n/* 全屏模式样式 - 改为基于父组件 */\r\n.modal-container.fullscreen {\r\n width: 100%;\r\n max-width: none;\r\n height: 100%;\r\n border-radius: 0;\r\n margin: 0;\r\n display: flex;\r\n flex-direction: column;\r\n max-height: 100%;\r\n}\r\n\r\n/* PC端布局 */\r\n.pc-layout {\r\n width: 80%;\r\n max-width: 600px;\r\n min-width: 320px;\r\n}\r\n\r\n/* 响应式布局 */\r\n@media screen and (max-width: 768px) {\r\n .pc-layout {\r\n width: 95%;\r\n }\r\n\r\n .modal-overlay {\r\n padding: 10px 0px 0px 0px;\r\n }\r\n\r\n .modal-container.fullscreen {\r\n /* 移动端也基于父组件尺寸 */\r\n width: 100%;\r\n height: 100%;\r\n max-height: 100%;\r\n border-radius: 16px 16px 0 0;\r\n /* 保留安全区域支持 */\r\n padding: env(safe-area-inset-top) 0 env(safe-area-inset-bottom);\r\n }\r\n}\r\n\r\n/* 模态框头部样式 */\r\n.modal-header {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n padding: 4px 16px;\r\n height: 50px;\r\n border-bottom: 1px solid #e8e8e8;\r\n flex-shrink: 0;\r\n}\r\n\r\n.header-left {\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n font-size: 16px;\r\n font-weight: 600;\r\n color: #333;\r\n}\r\n\r\n.header-icon {\r\n width: 24px;\r\n height: 24px;\r\n}\r\n\r\n.close-button {\r\n background: transparent;\r\n border: none;\r\n cursor: pointer;\r\n padding: 8px;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n width: 32px;\r\n height: 32px;\r\n border-radius: 4px;\r\n}\r\n\r\n.close-button:hover {\r\n background-color: rgba(0, 0, 0, 0.04);\r\n}\r\n\r\n.close-button span {\r\n font-size: 24px;\r\n line-height: 1;\r\n color: #999;\r\n}\r\n\r\n.close-button:hover span {\r\n color: #666;\r\n}\r\n\r\n\r\n/* 文件上传区域通用样式 */\r\n.upload-area {\r\n cursor: pointer;\r\n width: 100%;\r\n}\r\n\r\n\r\n.upload-placeholder {\r\n transition: all 0.3s ease;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n background: rgba(0, 0, 0, 0.02);\r\n border: 1px dashed #d9d9d9;\r\n border-radius: 8px;\r\n cursor: pointer;\r\n}\r\n\r\n.upload-placeholder:hover {\r\n border: 1px dashed #1890ff;\r\n}\r\n\r\n.upload-placeholder img {\r\n margin-top: 8px;\r\n width: 50px;\r\n height: 50px;\r\n}\r\n\r\n.upload-placeholder .upload-text {\r\n margin: 4px 0;\r\n color: #332F39;\r\n font-size: 14px;\r\n}\r\n\r\n.upload-placeholder .upload-hint {\r\n font-size: 14px;\r\n color: #949AA5;\r\n margin-top: 8px;\r\n padding: 0px 10px;\r\n text-align: center;\r\n white-space: normal;\r\n word-wrap: break-word;\r\n word-break: break-all;\r\n line-height: 1.4;\r\n}\r\n\r\n\r\n/* 文件项样式 */\r\n.file-item {\r\n position: relative;\r\n padding: 16px;\r\n border: 1px solid #e2e8f0;\r\n border-radius: 8px;\r\n transition: border-color 0.3s;\r\n cursor: pointer;\r\n margin-bottom: 16px;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n}\r\n\r\n.file-item:hover {\r\n border-color: #0D75FB;\r\n}\r\n\r\n.file-item-content {\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n flex: 1;\r\n min-width: 0;\r\n overflow: hidden;\r\n}\r\n\r\n.file-icon {\r\n color: #0D75FB;\r\n flex-shrink: 0;\r\n}\r\n\r\n.file-name {\r\n font-weight: 500;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n max-width: calc(100% - 50px);\r\n}\r\n\r\n.remove-file {\r\n background: transparent;\r\n border: none;\r\n color: #94a3b8;\r\n cursor: pointer;\r\n font-size: 18px;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n padding: 4px;\r\n margin-left: 8px;\r\n border-radius: 4px;\r\n transition: all 0.2s;\r\n min-width: 30px;\r\n min-height: 30px;\r\n}\r\n\r\n.remove-file:hover {\r\n background-color: #f1f5f9;\r\n color: #475569;\r\n}\r\n\r\n.file-input {\r\n display: none;\r\n}\r\n\r\n\r\n\r\n/* 输入容器样式 */\r\n.input-container {\r\n padding: 20px;\r\n display: flex;\r\n flex-direction: column;\r\n height: calc(100% - 50px);\r\n background: linear-gradient(150deg, #2a6ee933, #0000 50%) 0 0 / 400px 200px no-repeat, #fff;\r\n /* 减去header高度 */\r\n overflow-y: auto;\r\n}\r\n\r\n.input-container h3 {\r\n margin-top: 0;\r\n margin-bottom: 20px;\r\n font-size: 18px;\r\n color: #333;\r\n text-align: center;\r\n}\r\n\r\n/* JD输入区域样式 */\r\n.jd-input-section {\r\n margin-bottom: 20px;\r\n}\r\n\r\n.jd-input-section label {\r\n display: block;\r\n margin-bottom: 8px;\r\n font-weight: 500;\r\n color: #333;\r\n}\r\n\r\n.job-description-textarea {\r\n width: calc(100% - 16px);\r\n border: 1px solid #ddd;\r\n border-radius: 4px;\r\n resize: vertical;\r\n font-family: inherit;\r\n font-size: 14px;\r\n line-height: 1.5;\r\n transition: border-color 0.3s;\r\n padding: 8px;\r\n}\r\n\r\n.job-description-textarea:focus {\r\n outline: none;\r\n border-color: #1890ff;\r\n box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.2);\r\n}\r\n\r\n/* 简历上传区域样式 */\r\n.resume-upload-section {\r\n margin-bottom: 20px;\r\n width: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n}\r\n\r\n.resume-upload-section label {\r\n display: block;\r\n margin-bottom: 8px;\r\n font-weight: 500;\r\n color: #333;\r\n}\r\n\r\n/* 面试设置区域 */\r\n.interview-settings-section {\r\n margin-bottom: 24px;\r\n padding: 20px;\r\n background-color: #f8f9fa;\r\n border-radius: 8px;\r\n border: 1px solid #e9ecef;\r\n}\r\n\r\n.settings-row {\r\n margin-bottom: 20px;\r\n}\r\n\r\n.settings-row:last-child {\r\n margin-bottom: 0;\r\n}\r\n\r\n.settings-label {\r\n display: block;\r\n font-weight: 500;\r\n color: #333;\r\n margin-bottom: 12px;\r\n font-size: 14px;\r\n}\r\n\r\n/* 题目数量滑块样式 */\r\n.question-number-section {\r\n width: 100%;\r\n}\r\n\r\n.slider-container {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\r\n}\r\n\r\n.question-slider {\r\n flex: 1;\r\n height: 6px;\r\n background: #ddd;\r\n outline: none;\r\n border-radius: 3px;\r\n -webkit-appearance: none;\r\n appearance: none;\r\n}\r\n\r\n.question-slider::-webkit-slider-thumb {\r\n -webkit-appearance: none;\r\n appearance: none;\r\n width: 20px;\r\n height: 20px;\r\n background: #0D75FB;\r\n cursor: pointer;\r\n border-radius: 50%;\r\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n.question-slider::-moz-range-thumb {\r\n width: 20px;\r\n height: 20px;\r\n background: #0D75FB;\r\n cursor: pointer;\r\n border-radius: 50%;\r\n border: none;\r\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n.slider-value {\r\n font-weight: 600;\r\n color: #0D75FB;\r\n font-size: 14px;\r\n min-width: 30px;\r\n text-align: center;\r\n}\r\n\r\n/* 开关样式 */\r\n.analysis-toggle-section {\r\n width: 100%;\r\n}\r\n\r\n.toggle-container {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\r\n}\r\n\r\n.toggle-switch {\r\n position: relative;\r\n display: inline-block;\r\n width: 44px;\r\n height: 24px;\r\n}\r\n\r\n.toggle-switch input {\r\n opacity: 0;\r\n width: 0;\r\n height: 0;\r\n}\r\n\r\n.toggle-slider {\r\n position: absolute;\r\n cursor: pointer;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n background-color: #ccc;\r\n transition: 0.3s;\r\n border-radius: 24px;\r\n}\r\n\r\n.toggle-slider:before {\r\n position: absolute;\r\n content: \"\";\r\n height: 18px;\r\n width: 18px;\r\n left: 3px;\r\n bottom: 3px;\r\n background-color: white;\r\n transition: 0.3s;\r\n border-radius: 50%;\r\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\ninput:checked + .toggle-slider {\r\n background-color: #0D75FB;\r\n}\r\n\r\ninput:checked + .toggle-slider:before {\r\n transform: translateX(20px);\r\n}\r\n\r\n.toggle-text {\r\n font-size: 14px;\r\n color: #666;\r\n font-weight: 500;\r\n}\r\n\r\n/* 提交按钮通用样式 */\r\n.submit-button {\r\n margin-top: 10px;\r\n padding: 10px 30px;\r\n background: #0D75FB;\r\n color: white;\r\n border: none;\r\n border-radius: 4px;\r\n font-size: 16px;\r\n cursor: pointer;\r\n transition: all 0.3s ease;\r\n width: 100%;\r\n max-width: 400px;\r\n align-self: center;\r\n}\r\n\r\n.submit-button:hover {\r\n background-color: #40a9ff;\r\n}\r\n\r\n.submit-button:disabled {\r\n background-color: rgba(0,0,0,0.04);\r\n color: rgba(0,0,0,0.25);\r\n cursor: not-allowed;\r\n}\r\n\r\n\r\n\r\n/* AI免责声明和备案信息样式 */\r\n.ai-disclaimer {\r\n margin-top: 16px;\r\n text-align: center;\r\n font-size: 12px;\r\n color: #999;\r\n line-height: 1.5;\r\n}\r\n\r\n.ai-disclaimer p {\r\n margin: 4px 0;\r\n}\r\n\r\n.beian-info {\r\n display: flex;\r\n justify-content: center;\r\n flex-wrap: wrap;\r\n gap: 4px;\r\n}\r\n\r\n.ai-disclaimer a {\r\n color: #666;\r\n text-decoration: none;\r\n transition: color 0.2s ease;\r\n}\r\n\r\n.ai-disclaimer a:hover {\r\n color: #1890ff;\r\n text-decoration: underline;\r\n}\r\n\r\n/* 添加加载状态的样式 */\r\n.loading-container {\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n height: 100%;\r\n padding: 24px;\r\n }\r\n \r\n .loading-spinner {\r\n width: 40px;\r\n height: 40px;\r\n border: 4px solid rgba(0, 0, 0, 0.1);\r\n border-radius: 50%;\r\n border-top-color: var(--pcm-primary-color, #1890ff);\r\n animation: spin 1s linear infinite;\r\n margin-bottom: 16px;\r\n }\r\n \r\n .loading-text {\r\n font-size: 16px;\r\n color: var(--pcm-text-color, #333);\r\n }\r\n \r\n @keyframes spin {\r\n 0% { transform: rotate(0deg); }\r\n 100% { transform: rotate(360deg); }\r\n }\r\n\r\n/* 历史会话按钮 */\r\n.header-history-button {\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n gap: 4px;\r\n padding: 4px 8px;\r\n border: none;\r\n border-radius: 4px;\r\n background: transparent;\r\n color: #bbb;\r\n cursor: pointer;\r\n font-size: 13px;\r\n font-family: inherit;\r\n line-height: 1;\r\n transition: all 0.2s ease;\r\n flex-shrink: 0;\r\n white-space: nowrap;\r\n}\r\n\r\n.header-history-button svg {\r\n width: 16px;\r\n height: 16px;\r\n display: block;\r\n flex-shrink: 0;\r\n}\r\n\r\n.header-history-button:hover {\r\n background-color: rgba(0, 0, 0, 0.04);\r\n color: #666;\r\n}\r\n\r\n.header-history-button:focus-visible {\r\n outline: 2px solid rgba(13, 117, 251, 0.35);\r\n outline-offset: 2px;\r\n}\r\n\r\n/* 历史会话抽屉内容 */\r\n.history-drawer-content {\r\n height: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n}\r\n\r\n.conversation-list {\r\n flex: 1;\r\n overflow-y: auto;\r\n padding: 8px 0;\r\n}\r\n\r\n.loading-conversations,\r\n.empty-conversations {\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n padding: 40px 20px;\r\n color: #999;\r\n}\r\n\r\n.loading-conversations .loading-spinner-small {\r\n margin-bottom: 12px;\r\n}\r\n\r\n.conversation-item {\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-between;\r\n padding: 12px 16px;\r\n margin: 0 8px 4px 8px;\r\n border-radius: 8px;\r\n cursor: pointer;\r\n transition: all 0.2s ease;\r\n border: 1px solid transparent;\r\n}\r\n\r\n.conversation-item:hover {\r\n background: #f5f5f5;\r\n}\r\n\r\n.conversation-info {\r\n flex: 1;\r\n min-width: 0;\r\n}\r\n\r\n.conversation-title {\r\n font-size: 14px;\r\n font-weight: 500;\r\n color: #262626;\r\n margin-bottom: 4px;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n}\r\n\r\n.conversation-meta {\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n font-size: 12px;\r\n color: #8c8c8c;\r\n}\r\n\r\n.conversation-time {\r\n flex-shrink: 0;\r\n}\r\n\r\n.message-count {\r\n flex-shrink: 0;\r\n}\r\n\r\n.conversation-status {\r\n padding: 2px 6px;\r\n border-radius: 4px;\r\n font-size: 11px;\r\n font-weight: 500;\r\n}\r\n\r\n.conversation-status.completed {\r\n background: #f6ffed;\r\n color: #52c41a;\r\n}\r\n\r\n.conversation-status.running {\r\n background: #fff7e6;\r\n color: #fa8c16;\r\n}\r\n\r\n.header-history-entry {\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n margin-left: 8px;\r\n padding: 4px 8px;\r\n border: none;\r\n border-radius: 4px;\r\n background: #e6f7ff;\r\n color: #1890ff;\r\n cursor: pointer;\r\n font-size: 12px;\r\n font-family: inherit;\r\n line-height: 1;\r\n white-space: nowrap;\r\n transition: all 0.2s ease;\r\n}\r\n\r\n.header-history-entry:hover {\r\n background: #bae7ff;\r\n color: #0958d9;\r\n transform: translateY(-1px);\r\n}\r\n\r\n.header-history-entry:focus-visible {\r\n outline: 2px solid rgba(13, 117, 251, 0.35);\r\n outline-offset: 2px;\r\n}\r\n\r\n.history-pagination {\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-between;\r\n gap: 12px;\r\n padding: 12px 16px 16px;\r\n border-top: 1px solid #f0f0f0;\r\n}\r\n\r\n.history-pagination-button {\r\n min-width: 72px;\r\n padding: 6px 12px;\r\n border: 1px solid #d9d9d9;\r\n border-radius: 6px;\r\n background: #fff;\r\n color: #595959;\r\n cursor: pointer;\r\n font-size: 12px;\r\n transition: all 0.2s ease;\r\n}\r\n\r\n.history-pagination-button:hover:not(:disabled) {\r\n border-color: #1890ff;\r\n color: #1890ff;\r\n background: #e6f7ff;\r\n}\r\n\r\n.history-pagination-button:disabled {\r\n border-color: #f0f0f0;\r\n color: #bfbfbf;\r\n background: #fafafa;\r\n cursor: not-allowed;\r\n}\r\n\r\n.history-pagination-info {\r\n flex: 1;\r\n text-align: center;\r\n color: #8c8c8c;\r\n font-size: 12px;\r\n}\r\n \r\n"],"version":3}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components-position-selector.entry.cjs.js","sources":["src/components/components-position-selector/components-position-selector.css?tag=components-position-selector&encapsulation=shadow","src/global/global.css?tag=components-position-selector&encapsulation=shadow"],"sourcesContent":[":host {\r\n display: block;\r\n width: 100%;\r\n height: 100%;\r\n}\r\n\r\n.position-selector-container {\r\n display: flex;\r\n flex-direction: column;\r\n width: 100%;\r\n height: 100%;\r\n background: #fff;\r\n}\r\n\r\n/* 搜索栏样式 */\r\n.search-bar {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\r\n padding: 16px;\r\n border-bottom: 1px solid #f0f0f0;\r\n flex-shrink: 0;\r\n}\r\n\r\n.search-input-wrapper {\r\n position: relative;\r\n display: flex;\r\n align-items: center;\r\n flex: 1;\r\n min-width: 200px;\r\n max-width: 500px;\r\n}\r\n\r\n.search-icon {\r\n position: absolute;\r\n left: 12px;\r\n color: #bfbfbf;\r\n pointer-events: none;\r\n}\r\n\r\n.search-input {\r\n width: 100%;\r\n height: 36px;\r\n padding: 4px 36px 4px 36px;\r\n font-size: 14px;\r\n line-height: 1.5;\r\n color: rgba(0, 0, 0, 0.85);\r\n background-color: #fff;\r\n background-image: none;\r\n border: 1px solid #d9d9d9;\r\n border-radius: 6px;\r\n transition: all 0.3s;\r\n outline: none;\r\n}\r\n\r\n.search-input:hover {\r\n border-color: #40a9ff;\r\n}\r\n\r\n.search-input:focus {\r\n border-color: #40a9ff;\r\n box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.2);\r\n}\r\n\r\n.search-input::placeholder {\r\n color: #bfbfbf;\r\n}\r\n\r\n.clear-button {\r\n position: absolute;\r\n right: 12px;\r\n background: none;\r\n border: none;\r\n padding: 4px;\r\n cursor: pointer;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n color: #bfbfbf;\r\n transition: color 0.3s;\r\n}\r\n\r\n.clear-button:hover {\r\n color: #8c8c8c;\r\n}\r\n\r\n.search-button {\r\n padding: 4px 15px;\r\n height: 36px;\r\n font-size: 14px;\r\n line-height: 1.5;\r\n border-radius: 6px;\r\n color: #fff;\r\n background-color: #1890ff;\r\n border: 1px solid #1890ff;\r\n cursor: pointer;\r\n transition: all 0.3s;\r\n outline: none;\r\n white-space: nowrap;\r\n flex-shrink: 0;\r\n}\r\n\r\n.search-button:hover {\r\n background-color: #40a9ff;\r\n border-color: #40a9ff;\r\n}\r\n\r\n.search-button:active {\r\n background-color: #096dd9;\r\n border-color: #096dd9;\r\n}\r\n\r\n/* 加载状态 */\r\n.loading-container {\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n padding: 40px;\r\n gap: 16px;\r\n color: #8c8c8c;\r\n}\r\n\r\n.loading-spinner {\r\n width: 32px;\r\n height: 32px;\r\n border: 3px solid #f0f0f0;\r\n border-top-color: #1890ff;\r\n border-radius: 50%;\r\n animation: spin 0.8s linear infinite;\r\n}\r\n\r\n@keyframes spin {\r\n to { transform: rotate(360deg); }\r\n}\r\n\r\n/* 空状态 */\r\n.empty-container {\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n padding: 60px 20px;\r\n gap: 16px;\r\n}\r\n\r\n.empty-icon {\r\n opacity: 0.5;\r\n}\r\n\r\n.empty-text {\r\n margin: 0;\r\n color: #8c8c8c;\r\n font-size: 14px;\r\n}\r\n\r\n/* 职位列表 */\r\n.position-list {\r\n flex: 1;\r\n overflow-y: auto;\r\n min-height: 0;\r\n}\r\n\r\n.table-container {\r\n width: 100%;\r\n overflow-x: auto;\r\n}\r\n\r\n.position-table {\r\n width: 100%;\r\n border-collapse: collapse;\r\n font-size: 14px;\r\n}\r\n\r\n.position-table thead {\r\n background-color: #fafafa;\r\n position: sticky;\r\n top: 0;\r\n z-index: 1;\r\n}\r\n\r\n.position-table th {\r\n padding: 12px 16px;\r\n text-align: left;\r\n font-weight: 500;\r\n color: rgba(0, 0, 0, 0.85);\r\n border-bottom: 1px solid #f0f0f0;\r\n white-space: nowrap;\r\n}\r\n\r\n.position-table td {\r\n padding: 12px 16px;\r\n border-bottom: 1px solid #f0f0f0;\r\n color: rgba(0, 0, 0, 0.65);\r\n}\r\n\r\n.position-table tbody tr {\r\n transition: background-color 0.3s;\r\n}\r\n\r\n.position-table tbody tr:hover {\r\n background-color: #fafafa;\r\n}\r\n\r\n.position-table tbody tr.selected-row {\r\n background-color: #e6f7ff;\r\n}\r\n\r\n/* 列宽设置 */\r\n.checkbox-column {\r\n width: 50px;\r\n text-align: center;\r\n}\r\n\r\n.title-column {\r\n min-width: 150px;\r\n max-width: 200px;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n}\r\n\r\n.company-column {\r\n min-width: 120px;\r\n max-width: 180px;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n}\r\n\r\n.location-column {\r\n min-width: 100px;\r\n max-width: 150px;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n}\r\n\r\n.requirements-column {\r\n min-width: 200px;\r\n max-width: 300px;\r\n}\r\n\r\n.requirements-text {\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n display: -webkit-box;\r\n -webkit-line-clamp: 2;\r\n -webkit-box-orient: vertical;\r\n white-space: normal;\r\n word-break: break-word;\r\n line-height: 1.5;\r\n}\r\n\r\n.salary-column {\r\n min-width: 100px;\r\n white-space: nowrap;\r\n}\r\n\r\n.action-column {\r\n width: 100px;\r\n text-align: center;\r\n}\r\n\r\n/* 复选框样式 */\r\n.position-checkbox {\r\n width: 16px;\r\n height: 16px;\r\n cursor: pointer;\r\n accent-color: #1890ff;\r\n}\r\n\r\n/* 选择按钮 */\r\n.select-button {\r\n padding: 4px 15px;\r\n height: 28px;\r\n font-size: 14px;\r\n line-height: 1.5;\r\n border-radius: 6px;\r\n color: #fff;\r\n background-color: #1890ff;\r\n border: 1px solid #1890ff;\r\n cursor: pointer;\r\n transition: all 0.3s;\r\n outline: none;\r\n}\r\n\r\n.select-button:hover {\r\n background-color: #40a9ff;\r\n border-color: #40a9ff;\r\n}\r\n\r\n.select-button:active {\r\n background-color: #096dd9;\r\n border-color: #096dd9;\r\n}\r\n\r\n/* 移动端适配 */\r\n@media screen and (max-width: 768px) {\r\n .search-bar {\r\n padding: 12px;\r\n gap: 8px;\r\n }\r\n\r\n .search-input-wrapper {\r\n min-width: auto;\r\n max-width: none;\r\n }\r\n\r\n .search-input {\r\n height: 40px;\r\n font-size: 16px;\r\n }\r\n\r\n .search-button {\r\n height: 40px;\r\n padding: 4px 12px;\r\n }\r\n\r\n .table-container {\r\n overflow-x: auto;\r\n -webkit-overflow-scrolling: touch;\r\n }\r\n\r\n .position-table {\r\n font-size: 12px;\r\n }\r\n\r\n .position-table th,\r\n .position-table td {\r\n padding: 8px 12px;\r\n }\r\n\r\n .title-column,\r\n .company-column,\r\n .location-column {\r\n min-width: 100px;\r\n }\r\n\r\n .select-button {\r\n padding: 4px 12px;\r\n height: 32px;\r\n font-size: 14px;\r\n }\r\n}\r\n\r\n/* 分页器样式 */\r\n.pagination-container {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n gap: 16px;\r\n padding: 16px;\r\n border-top: 1px solid #f0f0f0;\r\n flex-shrink: 0;\r\n}\r\n\r\n.pagination-button {\r\n padding: 4px 15px;\r\n height: 32px;\r\n font-size: 14px;\r\n line-height: 1.5;\r\n border-radius: 6px;\r\n color: rgba(0, 0, 0, 0.85);\r\n background-color: #fff;\r\n border: 1px solid #d9d9d9;\r\n cursor: pointer;\r\n transition: all 0.3s;\r\n outline: none;\r\n}\r\n\r\n.pagination-button:hover:not(:disabled) {\r\n color: #40a9ff;\r\n border-color: #40a9ff;\r\n}\r\n\r\n.pagination-button:active:not(:disabled) {\r\n color: #096dd9;\r\n border-color: #096dd9;\r\n}\r\n\r\n.pagination-button:disabled {\r\n color: rgba(0, 0, 0, 0.25);\r\n background-color: #f5f5f5;\r\n border-color: #d9d9d9;\r\n cursor: not-allowed;\r\n}\r\n\r\n.pagination-info {\r\n font-size: 14px;\r\n color: rgba(0, 0, 0, 0.65);\r\n}\r\n\r\n/* 滚动条样式 */\r\n.position-list::-webkit-scrollbar {\r\n width: 8px;\r\n height: 8px;\r\n}\r\n\r\n.position-list::-webkit-scrollbar-track {\r\n background: #f1f1f1;\r\n}\r\n\r\n.position-list::-webkit-scrollbar-thumb {\r\n background: #888;\r\n border-radius: 4px;\r\n}\r\n\r\n.position-list::-webkit-scrollbar-thumb:hover {\r\n background: #555;\r\n}\r\n","/* 模态框基础样式 */\r\n.modal-overlay {\r\n position: fixed;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n background-color: rgba(0, 0, 0, 0.5);\r\n display: flex;\r\n z-index: 1000;\r\n overflow-y: auto;\r\n}\r\n\r\n/* 全屏模式下的overlay样式 - 改为基于父组件 */\r\n.fullscreen-overlay {\r\n padding: 0;\r\n background-color: rgba(0, 0, 0, 0.7);\r\n /* 改为基于父组件的全屏 */\r\n position: absolute;\r\n width: 100%;\r\n height: auto;\r\n}\r\n\r\n.modal-container {\r\n background-color: #fff;\r\n border-radius: 8px;\r\n width: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n position: relative;\r\n margin: 10vh auto auto auto;\r\n transition: all 0.3s ease-out;\r\n overflow: hidden;\r\n}\r\n\r\n/* 全屏模式样式 - 改为基于父组件 */\r\n.modal-container.fullscreen {\r\n width: 100%;\r\n max-width: none;\r\n height: 100%;\r\n border-radius: 0;\r\n margin: 0;\r\n display: flex;\r\n flex-direction: column;\r\n max-height: 100%;\r\n}\r\n\r\n/* PC端布局 */\r\n.pc-layout {\r\n width: 80%;\r\n max-width: 600px;\r\n min-width: 320px;\r\n}\r\n\r\n/* 响应式布局 */\r\n@media screen and (max-width: 768px) {\r\n .pc-layout {\r\n width: 95%;\r\n }\r\n\r\n .modal-overlay {\r\n padding: 10px 0px 0px 0px;\r\n }\r\n\r\n .modal-container.fullscreen {\r\n /* 移动端也基于父组件尺寸 */\r\n width: 100%;\r\n height: 100%;\r\n max-height: 100%;\r\n border-radius: 16px 16px 0 0;\r\n /* 保留安全区域支持 */\r\n padding: env(safe-area-inset-top) 0 env(safe-area-inset-bottom);\r\n }\r\n}\r\n\r\n/* 模态框头部样式 */\r\n.modal-header {\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n padding: 4px 16px;\r\n height: 50px;\r\n border-bottom: 1px solid #e8e8e8;\r\n flex-shrink: 0;\r\n}\r\n\r\n.header-left {\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n font-size: 16px;\r\n font-weight: 600;\r\n color: #333;\r\n}\r\n\r\n.header-icon {\r\n width: 24px;\r\n height: 24px;\r\n}\r\n\r\n.close-button {\r\n background: transparent;\r\n border: none;\r\n cursor: pointer;\r\n padding: 8px;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n width: 32px;\r\n height: 32px;\r\n border-radius: 4px;\r\n}\r\n\r\n.close-button:hover {\r\n background-color: rgba(0, 0, 0, 0.04);\r\n}\r\n\r\n.close-button span {\r\n font-size: 24px;\r\n line-height: 1;\r\n color: #999;\r\n}\r\n\r\n.close-button:hover span {\r\n color: #666;\r\n}\r\n\r\n\r\n/* 文件上传区域通用样式 */\r\n.upload-area {\r\n cursor: pointer;\r\n width: 100%;\r\n}\r\n\r\n\r\n.upload-placeholder {\r\n transition: all 0.3s ease;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n background: rgba(0, 0, 0, 0.02);\r\n border: 1px dashed #d9d9d9;\r\n border-radius: 8px;\r\n cursor: pointer;\r\n}\r\n\r\n.upload-placeholder:hover {\r\n border: 1px dashed #1890ff;\r\n}\r\n\r\n.upload-placeholder img {\r\n margin-top: 8px;\r\n width: 50px;\r\n height: 50px;\r\n}\r\n\r\n.upload-placeholder .upload-text {\r\n margin: 4px 0;\r\n color: #332F39;\r\n font-size: 14px;\r\n}\r\n\r\n.upload-placeholder .upload-hint {\r\n font-size: 14px;\r\n color: #949AA5;\r\n margin-top: 8px;\r\n padding: 0px 10px;\r\n text-align: center;\r\n white-space: normal;\r\n word-wrap: break-word;\r\n word-break: break-all;\r\n line-height: 1.4;\r\n}\r\n\r\n\r\n/* 文件项样式 */\r\n.file-item {\r\n position: relative;\r\n padding: 16px;\r\n border: 1px solid #e2e8f0;\r\n border-radius: 8px;\r\n transition: border-color 0.3s;\r\n cursor: pointer;\r\n margin-bottom: 16px;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n}\r\n\r\n.file-item:hover {\r\n border-color: #0D75FB;\r\n}\r\n\r\n.file-item-content {\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n flex: 1;\r\n min-width: 0;\r\n overflow: hidden;\r\n}\r\n\r\n.file-icon {\r\n color: #0D75FB;\r\n flex-shrink: 0;\r\n}\r\n\r\n.file-name {\r\n font-weight: 500;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n max-width: calc(100% - 50px);\r\n}\r\n\r\n.remove-file {\r\n background: transparent;\r\n border: none;\r\n color: #94a3b8;\r\n cursor: pointer;\r\n font-size: 18px;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n padding: 4px;\r\n margin-left: 8px;\r\n border-radius: 4px;\r\n transition: all 0.2s;\r\n min-width: 30px;\r\n min-height: 30px;\r\n}\r\n\r\n.remove-file:hover {\r\n background-color: #f1f5f9;\r\n color: #475569;\r\n}\r\n\r\n.file-input {\r\n display: none;\r\n}\r\n\r\n\r\n\r\n/* 输入容器样式 */\r\n.input-container {\r\n padding: 20px;\r\n display: flex;\r\n flex-direction: column;\r\n height: calc(100% - 50px);\r\n background: linear-gradient(150deg, #2a6ee933, #0000 50%) 0 0 / 400px 200px no-repeat, #fff;\r\n /* 减去header高度 */\r\n overflow-y: auto;\r\n}\r\n\r\n.input-container h3 {\r\n margin-top: 0;\r\n margin-bottom: 20px;\r\n font-size: 18px;\r\n color: #333;\r\n text-align: center;\r\n}\r\n\r\n/* JD输入区域样式 */\r\n.jd-input-section {\r\n margin-bottom: 20px;\r\n}\r\n\r\n.jd-input-section label {\r\n display: block;\r\n margin-bottom: 8px;\r\n font-weight: 500;\r\n color: #333;\r\n}\r\n\r\n.job-description-textarea {\r\n width: calc(100% - 16px);\r\n border: 1px solid #ddd;\r\n border-radius: 4px;\r\n resize: vertical;\r\n font-family: inherit;\r\n font-size: 14px;\r\n line-height: 1.5;\r\n transition: border-color 0.3s;\r\n padding: 8px;\r\n}\r\n\r\n.job-description-textarea:focus {\r\n outline: none;\r\n border-color: #1890ff;\r\n box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.2);\r\n}\r\n\r\n/* 简历上传区域样式 */\r\n.resume-upload-section {\r\n margin-bottom: 20px;\r\n width: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n}\r\n\r\n.resume-upload-section label {\r\n display: block;\r\n margin-bottom: 8px;\r\n font-weight: 500;\r\n color: #333;\r\n}\r\n\r\n/* 面试设置区域 */\r\n.interview-settings-section {\r\n margin-bottom: 24px;\r\n padding: 20px;\r\n background-color: #f8f9fa;\r\n border-radius: 8px;\r\n border: 1px solid #e9ecef;\r\n}\r\n\r\n.settings-row {\r\n margin-bottom: 20px;\r\n}\r\n\r\n.settings-row:last-child {\r\n margin-bottom: 0;\r\n}\r\n\r\n.settings-label {\r\n display: block;\r\n font-weight: 500;\r\n color: #333;\r\n margin-bottom: 12px;\r\n font-size: 14px;\r\n}\r\n\r\n/* 题目数量滑块样式 */\r\n.question-number-section {\r\n width: 100%;\r\n}\r\n\r\n.slider-container {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\r\n}\r\n\r\n.question-slider {\r\n flex: 1;\r\n height: 6px;\r\n background: #ddd;\r\n outline: none;\r\n border-radius: 3px;\r\n -webkit-appearance: none;\r\n appearance: none;\r\n}\r\n\r\n.question-slider::-webkit-slider-thumb {\r\n -webkit-appearance: none;\r\n appearance: none;\r\n width: 20px;\r\n height: 20px;\r\n background: #0D75FB;\r\n cursor: pointer;\r\n border-radius: 50%;\r\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n.question-slider::-moz-range-thumb {\r\n width: 20px;\r\n height: 20px;\r\n background: #0D75FB;\r\n cursor: pointer;\r\n border-radius: 50%;\r\n border: none;\r\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\n.slider-value {\r\n font-weight: 600;\r\n color: #0D75FB;\r\n font-size: 14px;\r\n min-width: 30px;\r\n text-align: center;\r\n}\r\n\r\n/* 开关样式 */\r\n.analysis-toggle-section {\r\n width: 100%;\r\n}\r\n\r\n.toggle-container {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\r\n}\r\n\r\n.toggle-switch {\r\n position: relative;\r\n display: inline-block;\r\n width: 44px;\r\n height: 24px;\r\n}\r\n\r\n.toggle-switch input {\r\n opacity: 0;\r\n width: 0;\r\n height: 0;\r\n}\r\n\r\n.toggle-slider {\r\n position: absolute;\r\n cursor: pointer;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n background-color: #ccc;\r\n transition: 0.3s;\r\n border-radius: 24px;\r\n}\r\n\r\n.toggle-slider:before {\r\n position: absolute;\r\n content: \"\";\r\n height: 18px;\r\n width: 18px;\r\n left: 3px;\r\n bottom: 3px;\r\n background-color: white;\r\n transition: 0.3s;\r\n border-radius: 50%;\r\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);\r\n}\r\n\r\ninput:checked + .toggle-slider {\r\n background-color: #0D75FB;\r\n}\r\n\r\ninput:checked + .toggle-slider:before {\r\n transform: translateX(20px);\r\n}\r\n\r\n.toggle-text {\r\n font-size: 14px;\r\n color: #666;\r\n font-weight: 500;\r\n}\r\n\r\n/* 提交按钮通用样式 */\r\n.submit-button {\r\n margin-top: 10px;\r\n padding: 10px 30px;\r\n background: #0D75FB;\r\n color: white;\r\n border: none;\r\n border-radius: 4px;\r\n font-size: 16px;\r\n cursor: pointer;\r\n transition: all 0.3s ease;\r\n width: 100%;\r\n max-width: 400px;\r\n align-self: center;\r\n}\r\n\r\n.submit-button:hover {\r\n background-color: #40a9ff;\r\n}\r\n\r\n.submit-button:disabled {\r\n background-color: rgba(0,0,0,0.04);\r\n color: rgba(0,0,0,0.25);\r\n cursor: not-allowed;\r\n}\r\n\r\n\r\n\r\n/* AI免责声明和备案信息样式 */\r\n.ai-disclaimer {\r\n margin-top: 16px;\r\n text-align: center;\r\n font-size: 12px;\r\n color: #999;\r\n line-height: 1.5;\r\n}\r\n\r\n.ai-disclaimer p {\r\n margin: 4px 0;\r\n}\r\n\r\n.beian-info {\r\n display: flex;\r\n justify-content: center;\r\n flex-wrap: wrap;\r\n gap: 4px;\r\n}\r\n\r\n.ai-disclaimer a {\r\n color: #666;\r\n text-decoration: none;\r\n transition: color 0.2s ease;\r\n}\r\n\r\n.ai-disclaimer a:hover {\r\n color: #1890ff;\r\n text-decoration: underline;\r\n}\r\n\r\n/* 添加加载状态的样式 */\r\n.loading-container {\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n height: 100%;\r\n padding: 24px;\r\n }\r\n \r\n .loading-spinner {\r\n width: 40px;\r\n height: 40px;\r\n border: 4px solid rgba(0, 0, 0, 0.1);\r\n border-radius: 50%;\r\n border-top-color: var(--pcm-primary-color, #1890ff);\r\n animation: spin 1s linear infinite;\r\n margin-bottom: 16px;\r\n }\r\n \r\n .loading-text {\r\n font-size: 16px;\r\n color: var(--pcm-text-color, #333);\r\n }\r\n \r\n @keyframes spin {\r\n 0% { transform: rotate(0deg); }\r\n 100% { transform: rotate(360deg); }\r\n }\r\n\r\n/* 历史会话按钮 */\r\n.header-history-button {\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n gap: 4px;\r\n padding: 4px 8px;\r\n border: none;\r\n border-radius: 4px;\r\n background: transparent;\r\n color: #bbb;\r\n cursor: pointer;\r\n font-size: 13px;\r\n font-family: inherit;\r\n line-height: 1;\r\n transition: all 0.2s ease;\r\n flex-shrink: 0;\r\n white-space: nowrap;\r\n}\r\n\r\n.header-history-button svg {\r\n width: 16px;\r\n height: 16px;\r\n display: block;\r\n flex-shrink: 0;\r\n}\r\n\r\n.header-history-button:hover {\r\n background-color: rgba(0, 0, 0, 0.04);\r\n color: #666;\r\n}\r\n\r\n.header-history-button:focus-visible {\r\n outline: 2px solid rgba(13, 117, 251, 0.35);\r\n outline-offset: 2px;\r\n}\r\n\r\n/* 历史会话抽屉内容 */\r\n.history-drawer-content {\r\n height: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n}\r\n\r\n.conversation-list {\r\n flex: 1;\r\n overflow-y: auto;\r\n padding: 8px 0;\r\n}\r\n\r\n.loading-conversations,\r\n.empty-conversations {\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n padding: 40px 20px;\r\n color: #999;\r\n}\r\n\r\n.loading-conversations .loading-spinner-small {\r\n margin-bottom: 12px;\r\n}\r\n\r\n.conversation-item {\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-between;\r\n padding: 12px 16px;\r\n margin: 0 8px 4px 8px;\r\n border-radius: 8px;\r\n cursor: pointer;\r\n transition: all 0.2s ease;\r\n border: 1px solid transparent;\r\n}\r\n\r\n.conversation-item:hover {\r\n background: #f5f5f5;\r\n}\r\n\r\n.conversation-info {\r\n flex: 1;\r\n min-width: 0;\r\n}\r\n\r\n.conversation-title {\r\n font-size: 14px;\r\n font-weight: 500;\r\n color: #262626;\r\n margin-bottom: 4px;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n}\r\n\r\n.conversation-meta {\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n font-size: 12px;\r\n color: #8c8c8c;\r\n}\r\n\r\n.conversation-time {\r\n flex-shrink: 0;\r\n}\r\n\r\n.message-count {\r\n flex-shrink: 0;\r\n}\r\n\r\n.conversation-status {\r\n padding: 2px 6px;\r\n border-radius: 4px;\r\n font-size: 11px;\r\n font-weight: 500;\r\n}\r\n\r\n.conversation-status.completed {\r\n background: #f6ffed;\r\n color: #52c41a;\r\n}\r\n\r\n.conversation-status.running {\r\n background: #fff7e6;\r\n color: #fa8c16;\r\n}\r\n\r\n.header-history-entry {\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n margin-left: 8px;\r\n padding: 4px 8px;\r\n border: none;\r\n border-radius: 4px;\r\n background: #e6f7ff;\r\n color: #1890ff;\r\n cursor: pointer;\r\n font-size: 12px;\r\n font-family: inherit;\r\n line-height: 1;\r\n white-space: nowrap;\r\n transition: all 0.2s ease;\r\n}\r\n\r\n.header-history-entry:hover {\r\n background: #bae7ff;\r\n color: #0958d9;\r\n transform: translateY(-1px);\r\n}\r\n\r\n.header-history-entry:focus-visible {\r\n outline: 2px solid rgba(13, 117, 251, 0.35);\r\n outline-offset: 2px;\r\n}\r\n\r\n.history-pagination {\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-between;\r\n gap: 12px;\r\n padding: 12px 16px 16px;\r\n border-top: 1px solid #f0f0f0;\r\n}\r\n\r\n.history-pagination-button {\r\n min-width: 72px;\r\n padding: 6px 12px;\r\n border: 1px solid #d9d9d9;\r\n border-radius: 6px;\r\n background: #fff;\r\n color: #595959;\r\n cursor: pointer;\r\n font-size: 12px;\r\n transition: all 0.2s ease;\r\n}\r\n\r\n.history-pagination-button:hover:not(:disabled) {\r\n border-color: #1890ff;\r\n color: #1890ff;\r\n background: #e6f7ff;\r\n}\r\n\r\n.history-pagination-button:disabled {\r\n border-color: #f0f0f0;\r\n color: #bfbfbf;\r\n background: #fafafa;\r\n cursor: not-allowed;\r\n}\r\n\r\n.history-pagination-info {\r\n flex: 1;\r\n text-align: center;\r\n color: #8c8c8c;\r\n font-size: 12px;\r\n}\r\n \r\n"],"names":[],"mappings":";;;;;;AAAA,MAAM,6BAA6B,GAAG,giKAAgiK;;ACAtkK,MAAM,SAAS,GAAG,2sSAA2sS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index = require('./index-
|
|
4
|
-
var sentryReporter = require('./sentry-reporter-
|
|
3
|
+
var index = require('./index-Tidd-NqG.js');
|
|
4
|
+
var sentryReporter = require('./sentry-reporter-H2cTWau_.js');
|
|
5
5
|
var errorEvent = require('./error-event-J_ZWIqWF.js');
|
|
6
6
|
|
|
7
7
|
/**
|
|
@@ -102,6 +102,6 @@ async function fetchHistoryConversations(botId, componentName, lastId = '', limi
|
|
|
102
102
|
}
|
|
103
103
|
|
|
104
104
|
exports.fetchHistoryConversations = fetchHistoryConversations;
|
|
105
|
-
//# sourceMappingURL=conversation-utils-
|
|
105
|
+
//# sourceMappingURL=conversation-utils-CVUpZZ-9.js.map
|
|
106
106
|
|
|
107
|
-
//# sourceMappingURL=conversation-utils-
|
|
107
|
+
//# sourceMappingURL=conversation-utils-CVUpZZ-9.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation-utils-
|
|
1
|
+
{"version":3,"file":"conversation-utils-CVUpZZ-9.js","sources":["src/utils/conversation-utils.ts"],"sourcesContent":["import { sendHttpRequest } from './utils';\r\nimport { SentryReporter } from './sentry-reporter';\r\nimport { ErrorEventBus } from './error-event';\r\nimport { ConversationItem, ConversationPageResult, ConversationDetail } from '../interfaces/chat';\r\n\r\ninterface ConversationApiItem {\r\n id: string;\r\n name?: string;\r\n created_at: number | string;\r\n updated_at: number | string;\r\n status?: string;\r\n message_count?: number;\r\n inputs?: any;\r\n}\r\n\r\ninterface ConversationApiData {\r\n data?: ConversationApiItem[];\r\n items?: ConversationApiItem[];\r\n has_more?: boolean;\r\n}\r\n\r\n/**\r\n * 格式化会话时间戳为可读字符串\r\n */\r\nfunction formatConversationTime(createdAt: number | string): string {\r\n try {\r\n const timestamp = typeof createdAt === 'string' ? parseInt(createdAt, 10) : createdAt;\r\n if (isNaN(timestamp) || timestamp <= 0) {\r\n return '未知时间';\r\n }\r\n\r\n const createdTime = new Date(timestamp * 1000);\r\n if (isNaN(createdTime.getTime())) {\r\n return '未知时间';\r\n }\r\n\r\n const now = new Date();\r\n const diffDays = Math.floor((now.getTime() - createdTime.getTime()) / (1000 * 60 * 60 * 24));\r\n const hh = createdTime.getHours().toString().padStart(2, '0');\r\n const mm = createdTime.getMinutes().toString().padStart(2, '0');\r\n const month = (createdTime.getMonth() + 1).toString().padStart(2, '0');\r\n const day = createdTime.getDate().toString().padStart(2, '0');\r\n\r\n if (diffDays === 0) {\r\n return `今天 ${hh}:${mm}`;\r\n }\r\n\r\n if (diffDays === 1) {\r\n return `昨天 ${hh}:${mm}`;\r\n }\r\n\r\n if (diffDays > 1 && diffDays < 7) {\r\n const weekdays = ['周日', '周一', '周二', '周三', '周四', '周五', '周六'];\r\n return `${weekdays[createdTime.getDay()]} ${hh}:${mm}`;\r\n }\r\n\r\n return `${month}-${day} ${hh}:${mm}`;\r\n } catch {\r\n return '时间解析失败';\r\n }\r\n}\r\n\r\n/**\r\n * 获取历史会话列表\r\n * @param botId 机器人 ID\r\n * @param componentName 调用组件名称\r\n * @param lastId 上一页最后一条会话 ID,空字符串表示第一页\r\n * @param limit 每页数量\r\n * @returns 游标分页结果\r\n */\r\nexport async function fetchHistoryConversations(\r\n botId: string,\r\n componentName: string,\r\n lastId: string = '',\r\n limit: number = 20,\r\n): Promise<ConversationPageResult> {\r\n try {\r\n const result = await sendHttpRequest<ConversationApiData>({\r\n url: '/sdk/v1/chat/conversations',\r\n method: 'GET',\r\n data: {\r\n bot_id: botId,\r\n last_id: lastId,\r\n limit,\r\n },\r\n });\r\n\r\n if (result.success && result.data) {\r\n const rawConversations: ConversationApiItem[] = result.data.data || result.data.items || [];\r\n const hasMore = typeof result.data.has_more === 'boolean'\r\n ? result.data.has_more\r\n : rawConversations.length > limit;\r\n const conversations: ConversationItem[] = rawConversations.slice(0, limit).map((conv: ConversationApiItem) => ({\r\n id: conv.id,\r\n name: conv.name || '新会话',\r\n created_at: Number(conv.created_at),\r\n updated_at: Number(conv.updated_at),\r\n status: conv.status,\r\n message_count: conv.message_count || 0,\r\n timeDisplay: formatConversationTime(conv.created_at),\r\n inputs: conv.inputs,\r\n }));\r\n\r\n return {\r\n items: conversations,\r\n hasMore,\r\n nextCursor: conversations.length > 0 ? conversations[conversations.length - 1].id : '',\r\n };\r\n }\r\n\r\n return {\r\n items: [],\r\n hasMore: false,\r\n nextCursor: '',\r\n };\r\n } catch (error) {\r\n console.error('获取历史会话失败:', error);\r\n SentryReporter.captureError(error, {\r\n action: 'fetchHistoryConversations',\r\n component: componentName,\r\n title: '获取历史会话失败',\r\n });\r\n ErrorEventBus.emitError({ error, message: '获取历史会话失败' });\r\n\r\n return {\r\n items: [],\r\n hasMore: false,\r\n nextCursor: '',\r\n };\r\n }\r\n}\r\n\r\n/**\r\n * 获取单个会话详情\r\n * @param conversationId 会话 ID\r\n * @param componentName 调用组件名称\r\n * @returns 会话详情\r\n */\r\nexport async function fetchConversationDetail(\r\n conversationId: string,\r\n componentName: string,\r\n): Promise<ConversationDetail | null> {\r\n try {\r\n const result = await sendHttpRequest<{ data: ConversationDetail }>({\r\n url: '/sdk/v1/chat/conversation',\r\n method: 'GET',\r\n data: {\r\n conversation_id: conversationId,\r\n },\r\n });\r\n\r\n if (result.success && result.data?.data) {\r\n return result.data.data;\r\n }\r\n\r\n return null;\r\n } catch (error) {\r\n console.error('获取会话详情失败:', error);\r\n SentryReporter.captureError(error, {\r\n action: 'fetchConversationDetail',\r\n component: componentName,\r\n title: '获取会话详情失败',\r\n });\r\n ErrorEventBus.emitError({ error, message: '获取会话详情失败' });\r\n\r\n return null;\r\n }\r\n}\r\n"],"names":["sendHttpRequest","SentryReporter","ErrorEventBus"],"mappings":";;;;;;AAqBA;;AAEG;AACH,SAAS,sBAAsB,CAAC,SAA0B,EAAA;AACtD,IAAA,IAAI;AACA,QAAA,MAAM,SAAS,GAAG,OAAO,SAAS,KAAK,QAAQ,GAAG,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,GAAG,SAAS;QACrF,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,SAAS,IAAI,CAAC,EAAE;AACpC,YAAA,OAAO,MAAM;;QAGjB,MAAM,WAAW,GAAG,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAC9C,IAAI,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,EAAE;AAC9B,YAAA,OAAO,MAAM;;AAGjB,QAAA,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE;AACtB,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,KAAK,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;AAC5F,QAAA,MAAM,EAAE,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;AAC7D,QAAA,MAAM,EAAE,GAAG,WAAW,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QAC/D,MAAM,KAAK,GAAG,CAAC,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;AACtE,QAAA,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;AAE7D,QAAA,IAAI,QAAQ,KAAK,CAAC,EAAE;AAChB,YAAA,OAAO,CAAM,GAAA,EAAA,EAAE,CAAI,CAAA,EAAA,EAAE,EAAE;;AAG3B,QAAA,IAAI,QAAQ,KAAK,CAAC,EAAE;AAChB,YAAA,OAAO,CAAM,GAAA,EAAA,EAAE,CAAI,CAAA,EAAA,EAAE,EAAE;;QAG3B,IAAI,QAAQ,GAAG,CAAC,IAAI,QAAQ,GAAG,CAAC,EAAE;AAC9B,YAAA,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;AAC3D,YAAA,OAAO,CAAG,EAAA,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAI,CAAA,EAAA,EAAE,CAAI,CAAA,EAAA,EAAE,EAAE;;QAG1D,OAAO,CAAA,EAAG,KAAK,CAAI,CAAA,EAAA,GAAG,IAAI,EAAE,CAAA,CAAA,EAAI,EAAE,CAAA,CAAE;;AACtC,IAAA,MAAM;AACJ,QAAA,OAAO,QAAQ;;AAEvB;AAEA;;;;;;;AAOG;AACI,eAAe,yBAAyB,CAC3C,KAAa,EACb,aAAqB,EACrB,MAAA,GAAiB,EAAE,EACnB,QAAgB,EAAE,EAAA;AAElB,IAAA,IAAI;AACA,QAAA,MAAM,MAAM,GAAG,MAAMA,qBAAe,CAAsB;AACtD,YAAA,GAAG,EAAE,4BAA4B;AACjC,YAAA,MAAM,EAAE,KAAK;AACb,YAAA,IAAI,EAAE;AACF,gBAAA,MAAM,EAAE,KAAK;AACb,gBAAA,OAAO,EAAE,MAAM;gBACf,KAAK;AACR,aAAA;AACJ,SAAA,CAAC;QAEF,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,EAAE;AAC/B,YAAA,MAAM,gBAAgB,GAA0B,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YAC3F,MAAM,OAAO,GAAG,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK;AAC5C,kBAAE,MAAM,CAAC,IAAI,CAAC;AACd,kBAAE,gBAAgB,CAAC,MAAM,GAAG,KAAK;AACrC,YAAA,MAAM,aAAa,GAAuB,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAyB,MAAM;gBAC3G,EAAE,EAAE,IAAI,CAAC,EAAE;AACX,gBAAA,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,KAAK;AACxB,gBAAA,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;AACnC,gBAAA,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;gBACnC,MAAM,EAAE,IAAI,CAAC,MAAM;AACnB,gBAAA,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,CAAC;AACtC,gBAAA,WAAW,EAAE,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC;gBACpD,MAAM,EAAE,IAAI,CAAC,MAAM;AACtB,aAAA,CAAC,CAAC;YAEH,OAAO;AACH,gBAAA,KAAK,EAAE,aAAa;gBACpB,OAAO;gBACP,UAAU,EAAE,aAAa,CAAC,MAAM,GAAG,CAAC,GAAG,aAAa,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE;aACzF;;QAGL,OAAO;AACH,YAAA,KAAK,EAAE,EAAE;AACT,YAAA,OAAO,EAAE,KAAK;AACd,YAAA,UAAU,EAAE,EAAE;SACjB;;IACH,OAAO,KAAK,EAAE;AACZ,QAAA,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC;AACjC,QAAAC,6BAAc,CAAC,YAAY,CAAC,KAAK,EAAE;AAC/B,YAAA,MAAM,EAAE,2BAA2B;AACnC,YAAA,SAAS,EAAE,aAAa;AACxB,YAAA,KAAK,EAAE,UAAU;AACpB,SAAA,CAAC;QACFC,wBAAa,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;QAEvD,OAAO;AACH,YAAA,KAAK,EAAE,EAAE;AACT,YAAA,OAAO,EAAE,KAAK;AACd,YAAA,UAAU,EAAE,EAAE;SACjB;;AAET;;;;"}
|
|
@@ -100,54 +100,46 @@ var loadModule = (cmpMeta, hostRef, hmrVersionId) => {
|
|
|
100
100
|
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
101
101
|
/* webpackMode: "lazy" */
|
|
102
102
|
'./pcm-hr-chat-modal.cjs.entry.js')); }).then(processMod, consoleError);
|
|
103
|
-
case '
|
|
103
|
+
case 'components-position-selector.cjs':
|
|
104
104
|
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
105
105
|
/* webpackMode: "lazy" */
|
|
106
|
-
'./
|
|
107
|
-
case '
|
|
106
|
+
'./components-position-selector.cjs.entry.js')); }).then(processMod, consoleError);
|
|
107
|
+
case 'oem-htws-modal.cjs':
|
|
108
108
|
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
109
109
|
/* webpackMode: "lazy" */
|
|
110
|
-
'./
|
|
111
|
-
case '
|
|
110
|
+
'./oem-htws-modal.cjs.entry.js')); }).then(processMod, consoleError);
|
|
111
|
+
case 'oem-jd-modal.cjs':
|
|
112
112
|
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
113
113
|
/* webpackMode: "lazy" */
|
|
114
|
-
'./
|
|
115
|
-
case '
|
|
114
|
+
'./oem-jd-modal.cjs.entry.js')); }).then(processMod, consoleError);
|
|
115
|
+
case 'oem-jlpp-modal.cjs':
|
|
116
116
|
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
117
117
|
/* webpackMode: "lazy" */
|
|
118
|
-
'./
|
|
119
|
-
case '
|
|
118
|
+
'./oem-jlpp-modal.cjs.entry.js')); }).then(processMod, consoleError);
|
|
119
|
+
case 'oem-jlzz-modal.cjs':
|
|
120
120
|
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
121
121
|
/* webpackMode: "lazy" */
|
|
122
|
-
'./
|
|
123
|
-
case '
|
|
122
|
+
'./oem-jlzz-modal.cjs.entry.js')); }).then(processMod, consoleError);
|
|
123
|
+
case 'oem-mnct-modal.cjs':
|
|
124
124
|
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
125
125
|
/* webpackMode: "lazy" */
|
|
126
|
-
'./
|
|
127
|
-
case '
|
|
126
|
+
'./oem-mnct-modal.cjs.entry.js')); }).then(processMod, consoleError);
|
|
127
|
+
case 'oem-mnms-modal.cjs':
|
|
128
128
|
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
129
129
|
/* webpackMode: "lazy" */
|
|
130
|
-
'./
|
|
131
|
-
case '
|
|
130
|
+
'./oem-mnms-modal.cjs.entry.js')); }).then(processMod, consoleError);
|
|
131
|
+
case 'oem-qgqjl-modal.cjs':
|
|
132
132
|
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
133
133
|
/* webpackMode: "lazy" */
|
|
134
|
-
'./
|
|
135
|
-
case '
|
|
134
|
+
'./oem-qgqjl-modal.cjs.entry.js')); }).then(processMod, consoleError);
|
|
135
|
+
case 'oem-jlsx-modal.cjs':
|
|
136
136
|
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
137
137
|
/* webpackMode: "lazy" */
|
|
138
|
-
'./
|
|
139
|
-
case '
|
|
138
|
+
'./oem-jlsx-modal.cjs.entry.js')); }).then(processMod, consoleError);
|
|
139
|
+
case 'oem-zygh-modal_31.cjs':
|
|
140
140
|
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
141
141
|
/* webpackMode: "lazy" */
|
|
142
|
-
'./
|
|
143
|
-
case 'pcm-mnct-modal.cjs':
|
|
144
|
-
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
145
|
-
/* webpackMode: "lazy" */
|
|
146
|
-
'./pcm-mnct-modal.cjs.entry.js')); }).then(processMod, consoleError);
|
|
147
|
-
case 'components-position-selector_29.cjs':
|
|
148
|
-
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
149
|
-
/* webpackMode: "lazy" */
|
|
150
|
-
'./components-position-selector_29.cjs.entry.js')); }).then(processMod, consoleError);
|
|
142
|
+
'./oem-zygh-modal_31.cjs.entry.js')); }).then(processMod, consoleError);
|
|
151
143
|
}
|
|
152
144
|
}
|
|
153
145
|
return import(
|
|
@@ -286,7 +286,7 @@ onChange('data', value => {
|
|
|
286
286
|
}
|
|
287
287
|
});
|
|
288
288
|
|
|
289
|
-
const version = "0.6.100-beta.
|
|
289
|
+
const version = "0.6.100-beta.1";
|
|
290
290
|
|
|
291
291
|
// 导入环境变量
|
|
292
292
|
function format(first, middle, last) {
|
|
@@ -1003,6 +1003,6 @@ exports.uploadFileByUrl = uploadFileByUrl;
|
|
|
1003
1003
|
exports.uploadFileToBackend = uploadFileToBackend;
|
|
1004
1004
|
exports.verifyApiKey = verifyApiKey;
|
|
1005
1005
|
exports.verifySmsCode = verifySmsCode;
|
|
1006
|
-
//# sourceMappingURL=index-
|
|
1006
|
+
//# sourceMappingURL=index-Tidd-NqG.js.map
|
|
1007
1007
|
|
|
1008
|
-
//# sourceMappingURL=index-
|
|
1008
|
+
//# sourceMappingURL=index-Tidd-NqG.js.map
|