beelink/dist/js/chunk-d0ed1ba4.02a0fef7.js.map
2020-11-25 10:00:46 +08:00

1 line
99 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{"version":3,"sources":["webpack:///./src/static/images/delete.png","webpack:///./src/static/images/rank_second.png","webpack:///./node_modules/@ant-design/icons-svg/es/asn/PlusOutlined.js","webpack:///./node_modules/@ant-design/icons-vue/es/icons/PlusOutlined.js","webpack:///./src/views/mine/ReleaseWebcast.vue","webpack:///./node_modules/lodash-es/_baseIntersection.js","webpack:///./node_modules/lodash-es/_castArrayLikeObject.js","webpack:///./node_modules/lodash-es/intersection.js","webpack:///./node_modules/@ant-design-vue/use/es/useForm/index.js","webpack:///./node_modules/@ant-design-vue/use/es/useInViewport/index.js","webpack:///./src/views/mine/RankList.vue","webpack:///./src/views/mine/RankList.vue?f296","webpack:///./src/views/mine/RankList.vue?7568","webpack:///./src/views/mine/ReleaseWebcast.vue?2fdd","webpack:///./src/views/mine/ReleaseWebcast.vue?f3e6","webpack:///./src/views/mine/RankList.vue?a7d9","webpack:///./src/static/images/rank_first.png","webpack:///./src/static/images/rank_third.png","webpack:///./src/static/images/gantanhao.png","webpack:///./src/views/mine/ReleaseWebcast.vue?c275","webpack:///./node_modules/@ant-design/icons-svg/es/asn/UserOutlined.js","webpack:///./node_modules/@ant-design/icons-vue/es/icons/UserOutlined.js"],"names":["module","exports","_objectSpread","target","i","arguments","length","source","Object","ownKeys","keys","getOwnPropertySymbols","concat","filter","sym","getOwnPropertyDescriptor","enumerable","forEach","key","_defineProperty","obj","value","defineProperty","configurable","writable","props","context","p","attrs","AntdIcon","displayName","inheritAttrs","class","style","src","alt","label-col","labelCol","wrapper-col","wrapperCol","lan","$t","label","rules","size","form","title","placeholder","isEntitled","jinzhi","list-type","customRequest","uploadspic","before-upload","imgs","viewCover","img","uploadpicprogress","type","percent","width","uploads","video","fileurl","uploadprogress","ref","show-time","format","dateline","disabled-date","disabledDate","startchange","getCalendarContainer","validateInfos","livetime","livenumber","desc","autoSize","maxlength","onSubmit","isbianji","isquxiao","centered","footer","getContainer","modalNode","dialogClass","visible","hideNoticeModal","closeIcon","lives","status","data","msg","fankui","list","confirm-loading","confirmLoading","onquxiao","nativeMin","Math","min","baseIntersection","arrays","iteratee","comparator","includes","othLength","othIndex","caches","Array","maxLength","Infinity","result","array","undefined","index","seen","outer","computed","cache","push","castArrayLikeObject","isArrayLikeObject","intersection","mapped","_extends","assign","prototype","hasOwnProperty","call","apply","this","isRequired","every","rule","required","toArray","isArray","getPropByPath","path","strict","tempObj","replace","keyArr","split","len","Error","o","k","v","isValid","useForm","modelRef","rulesRef","options","initialModel","cloneDeep","autoLink","resetFields","filterRules","trigger","triggerList","lastValidatePromise","validateFields","names","option","promiseList","values","_loop","name","prop","validateField","then","errors","Promise","reject","summaryPromise","returnPromise","resolve","results","errorList","errorFields","outOfDate","e","promise","validateMessages","validateFirst","validateStatus","help","validate","promises","mergeValidateInfo","items","info","infos","arg","join","oldModel","modelFn","model","oldProp","isEqual","debounceOptions","debounce","wait","omit","immediate","deep","validateOnRuleChange","newList","item","isme","rank","icon","clicks","deadLine","components","UserOutlined","setup","mineRank","element","render","__scopeId","PlaySquareOutlined","PlusOutlined","NavBottom","RankList","issum","fileid","fileduration","videofile","videos","validateaLivetime","validateLivenumber","validator","previewImage","coverChange","file","url","router","query","selected","id","parseInt","res","seting","store","state","preventDefault","subdata","timeLowerLimit","timeCeiling","message","error","numberCeiling","lowerLimit","catch","err","time","Date","timestr","year","month","date","hour","minute","second","videoinfo","fileId","picinfo","ifallowupload","beforeUpload","addEventListener","duration","jindu","toFixed","ifallowpic","beforeUploadpic","current","now","view","views","span","document","getElementsByClassName"],"mappings":"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","file":"js/chunk-d0ed1ba4.02a0fef7.js","sourcesContent":["module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"img/rank_second.92ced7da.png\";","// This icon file is generated automatically.\nvar PlusOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"defs\", \"attrs\": {}, \"children\": [{ \"tag\": \"style\", \"attrs\": {} }] }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M482 152h60q8 0 8 8v704q0 8-8 8h-60q-8 0-8-8V160q0-8 8-8z\" } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M176 474h672q8 0 8 8v60q0 8-8 8H176q-8 0-8-8v-60q0-8 8-8z\" } }] }, \"name\": \"plus\", \"theme\": \"outlined\" };\nexport default PlusOutlined;\n","import * as _vue from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport PlusOutlinedSvg from \"@ant-design/icons-svg/es/asn/PlusOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar PlusOutlined = function PlusOutlined(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _vue.createVNode(AntdIcon, _vue.mergeProps(p, {\n \"icon\": PlusOutlinedSvg\n }), null);\n};\n\nPlusOutlined.displayName = 'PlusOutlined';\nPlusOutlined.inheritAttrs = false;\nexport default PlusOutlined;","<template>\n <div class=\"webcast\">\n <a-form :label-col=\"labelCol\" :wrapper-col=\"wrapperCol\">\n <div class=\"title\">{{ lan.$t(\"zhiboxinxi\") }}</div>\n <a-form-item :label=\"lan.$t('zhibobiaoti')\" :rules=\"{ required: true, message: 'Please input Activity name', trigger: 'blur'}\">\n <a-input\n size=\"small\"\n v-model:value=\"form.title\"\n :placeholder=\"lan.$t('shuruzhibobiaoti')\"\n @click=\"isEntitled = jinzhi\"\n />\n </a-form-item>\n <a-form-item :label=\"lan.$t('zhibofengmian')\" class=\"item-cover\" :rules=\"{ required: true, message: 'Please input Activity name', trigger: 'blur'}\">\n <div style=\"display:flex\">\n <a-upload\n list-type=\"picture\"\n :customRequest=\"uploadspic\"\n :before-upload=\"imgs\"\n >\n <div\n class=\"upload-image\"\n v-if=\"!viewCover && form.img.length == 0\"\n >\n <PlusOutlined\n style=\"fontsize: 22px\"\n v-if=\"uploadpicprogress == 0\"\n />\n <a-progress\n type=\"circle\"\n :percent=\"uploadpicprogress\"\n :width=\"80\"\n v-else\n />\n </div>\n <div class=\"upload-image\" v-else>\n <img\n style=\"width: 100%; height: 100%\"\n :src=\"form.img\"\n />\n </div>\n \n </a-upload>\n <div class=\"demand\">\n <p>\n {{ lan.$t(\"fengmianyaoqiu\") }}\n </p>\n <p>\n 1.{{ lan.$t(\"fengmianyaoqiu1\") }}\n </p>\n <p>\n 2.{{ lan.$t(\"fengmianyaoqiu2\") }}\n </p>\n </div>\n </div>\n \n </a-form-item>\n <a-form-item\n :label=\"lan.$t('shipinjieshao')\"\n class=\"video-introduction\"\n :rules=\"{ required: true, message: 'Please input Activity name', trigger: 'blur'}\"\n >\n <a-upload\n list-type=\"picture\"\n :customRequest=\"uploads\"\n :before-upload=\"video\"\n >\n <div class=\"upload-image\" v-if=\"form.fileurl.length == 0\">\n <PlaySquareOutlined\n style=\"fontsize: 22px\"\n v-if=\"uploadprogress == 0\"\n />\n <a-progress\n type=\"circle\"\n :percent=\"uploadprogress\"\n :width=\"80\"\n v-else\n />\n <!-- <video style=\"display: none\" :src=\"videofile\"></video> -->\n </div>\n <div\n class=\"upload-image upload\"\n style=\"position: relative\"\n v-show=\"form.fileurl.length != 0\"\n >\n <video\n :src=\"form.fileurl\"\n :ref=\"\n (el) => {\n videos[0] = el;\n }\n \"\n class=\"upload\"\n ></video>\n <!-- <a-progress type=\"circle\" :percent=\"100\" :width=\"80\" style=\"position:absolute;right:35%\"/> -->\n </div>\n </a-upload>\n <div class=\"demand\">\n <p>\n {{ lan.$t(\"shipinyaoqiu\") }}\n </p>\n <p>1.{{ lan.$t(\"shipinyaoqiu1\") }}</p>\n <p>2.{{ lan.$t(\"shipinyaoqiu2\") }}</p>\n <p>3.{{ lan.$t(\"shipinyaoqiu3\") }}</p>\n </div>\n <!-- <div class=\"demand\">\n <p class=\"one-line-hide\">视频要求:</p>\n <p class=\"one-line-hide\">1.上传视频时间要求为30s之内</p>\n <p class=\"one-line-hide\">2.支持文件大小100M</p>\n <p class=\"one-line-hide\">\n 3.文件扩展名fiv、mp4…文件扩展名fiv、mp4…\n </p>\n </div> -->\n </a-form-item>\n <a-form-item :label=\"lan.$t('kaishishijian')\" @click=\"isEntitled = jinzhi\" :rules=\"{ required: true, message: 'Please input Activity name', trigger: 'blur'}\">\n \n <!-- <a-input\n size=\"small\"\n v-model:value=\"form.startTime\"\n placeholder=\"请设置您的开始时间\"\n /> -->\n <a-date-picker\n class=\"datesel\"\n show-time\n format=\"YYYY-MM-DD HH:mm\"\n :value=\"form.dateline\"\n :disabled-date=\"disabledDate\"\n @click=\"isEntitled = jinzhi\"\n @change=\"startchange\"\n :placeholder=\"lan.$t('shezhikaishishijian')\"\n :getCalendarContainer=\"\n (triggerNode) => triggerNode.parentNode\n \"\n />\n </a-form-item>\n <a-form-item\n :label=\"lan.$t('zhiboshichang')\"\n class=\"duration\"\n v-bind=\"validateInfos.livetime\"\n :rules=\"{ required: true, message: 'Please input Activity name', trigger: 'blur'}\"\n >\n <a-input\n size=\"small\"\n v-model:value=\"form.livetime\"\n @click=\"isEntitled = jinzhi\"\n :placeholder=\"lan.$t('shuruzhiboshijian')\"\n type=\"number\"\n />\n <span class=\"unit\">{{ lan.$t(\"fenzhong\") }}</span>\n <div style=\"color: red;font-size: 0.12rem;line-height: 1.3;\">*{{ lan.$t('shichangtishi') }}</div>\n </a-form-item>\n <a-form-item\n :label=\"lan.$t('zhiborenshu')\"\n v-bind=\"validateInfos.livenumber\"\n :rules=\"{ required: true, message: 'Please input Activity name', trigger: 'blur'}\"\n >\n <a-input\n size=\"small\"\n v-model:value=\"form.livenumber\"\n @click=\"isEntitled = jinzhi\"\n :placeholder=\"lan.$t('shuruzhiborenshu')\"\n type=\"number\"\n />\n <div style=\"color: red;font-size: 0.12rem;line-height: 1.3;\">*{{ lan.$t('renshutishi') }}</div>\n\n </a-form-item>\n <a-form-item :label=\"lan.$t('zhibojianjie')\" class=\"brief\">\n <a-textarea\n v-model:value=\"form.desc\"\n @click=\"isEntitled = jinzhi\"\n :autoSize=\"true\"\n class=\"brief-textarea\"\n :maxlength=\"200\"\n :placeholder=\"lan.$t('shuruzhibojianjie')\"\n />\n <span class=\"words-number\">{{ form.desc.length }}/200</span>\n </a-form-item>\n <a-form-item :wrapper-col=\"{ span: 4, offset: 0 }\">\n <a-button @click=\"onSubmit\">{{ lan.$t(\"fabuzhibo\") }}</a-button>\n <a-button style=\"margin-left:0.15rem;background-color: red;\" @click=\"isquxiao = true\" v-if=\"isbianji\">{{ lan.$t(\"quxiaozhibo\") }}</a-button>\n </a-form-item>\n \n </a-form>\n <div class=\"modal-container\">\n <a-modal\n centered\n :footer=\"null\"\n :getContainer=\"modalNode\"\n dialogClass=\"modal-dialog\"\n v-model:visible=\"isEntitled\"\n @cancel=\"hideNoticeModal\"\n >\n <template v-slot:closeIcon>\n <img src=\"@/static/images/delete.png\" class=\"close\" />\n </template>\n <div class=\"notice-container report\" v-if=\"lives.status == 1\">\n <div class=\"title\">{{ lan.$t(\"wuzhibozige\") }}</div>\n <div class=\"title sub-title\">\n {{ lives.data.msg }}\n </div>\n <div class=\"confirm-btn\" @click=\"fankui\">\n {{ lan.$t(\"yijianfankui\") }}\n </div>\n </div>\n <div class=\"notice-container\" v-else>\n <div class=\"title\">{{ lan.$t(\"wuzhibozige\") }}</div>\n <div class=\"title sub-title\" v-html=\"lives.msg\"> \n \n </div>\n <rank-list :list=\"lives.data\"></rank-list>\n </div>\n </a-modal>\n </div>\n <a-modal\n :title=\"lan.$t('quxiaozhibo')\"\n v-model:visible=\"isquxiao\"\n :confirm-loading=\"confirmLoading\"\n @ok=\"onquxiao()\"\n >\n <p>{{ lan.$t(\"querenquxiao\") }}</p>\n </a-modal>\n <nav-bottom></nav-bottom>\n <div class=\"tishi\" v-if=\"true\">\n <img src=\"@/static/images/gantanhao.png\" alt=\"\">\n <div>\n {{ lan.$t(\"zhibotishi1\") }}<br />\n {{ lan.$t(\"zhibotishi\") }}\n </div>\n \n \n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n onBeforeUpdate,\n onMounted,\n reactive,\n Ref,\n ref,\n toRaw,\n} from \"vue\";\nimport { PlaySquareOutlined, PlusOutlined } from \"@ant-design/icons-vue\";\nimport { useForm } from \"@ant-design-vue/use\";\nimport NavBottom from \"@/components/NavBottom.vue\";\nimport RankList from \"./RankList.vue\";\nimport { previewCover, provenimg, provenvideo } from \"@/utils/common\";\nimport { FromSend, ImgInfo } from \"@/types/index\";\nimport { uploadflie } from \"@/utils/vod\";\nimport { cancellive, getlivest, liveadd, liveinfo, setlive } from \"@/api\";\nimport { useRoute } from \"vue-router\";\nimport dayjs from \"dayjs\";\nimport { message } from \"ant-design-vue\";\nimport router from \"@/router\";\nimport { useI18n } from \"@/utils/i18n\";\nimport store from '@/store';\n\nexport default defineComponent({\n name: \"ReleaseWebcast\",\n components: {\n PlaySquareOutlined,\n PlusOutlined,\n NavBottom,\n RankList,\n },\n setup() {\n let issum = true;\n const lan: any = useI18n();\n // 表单数据\n const form = ref({\n title: \"\",\n img: \"\",\n fileid: 0,\n fileurl: \"\",\n fileduration: 0,\n dateline: \"\",\n livetime: \"\",\n livenumber: \"\",\n desc: \"\",\n });\n const isquxiao = ref(false)\n const uploadprogress: Ref<number> = ref(0);\n const uploadpicprogress: Ref<number> = ref(0);\n const videofile = ref<File>();\n const videos = ref<Array<any>>([]);\n const lives = ref<any>({});\n const jinzhi = ref(false)\n const isEntitled: Ref<boolean> = ref(false);\n\n /**\n * 验证直播时间\n */\n async function validateaLivetime(\n rule: unknown,\n value: number\n ): Promise<string | void> {\n console.log(value);\n if (value < 30 || value > 120) {\n return Promise.reject(\"*最短30min 最长120min\");\n } else {\n return Promise.resolve();\n }\n }\n /**\n * 验证直播人数\n */\n const validateLivenumber = async (\n rule: unknown,\n value: number\n ): Promise<string | void> => {\n console.log(value);\n if (value < 1 || value > 4) {\n return Promise.reject(\"**最少1人最多4人\");\n } else {\n return Promise.resolve();\n }\n };\n // 验证规则\n const rules = reactive({\n livetime: [\n {\n validator: validateaLivetime,\n trigger: \"change\",\n },\n ],\n livenumber: [\n {\n validator: validateLivenumber,\n trigger: \"change\",\n },\n ],\n });\n\n // 是否显示封面预览 封面的路径\n const viewCover: Ref<boolean> = ref(false);\n const previewImage: Ref<string> = ref(\"\");\n\n /**\n * 封面改变触发事件\n */\n\n function coverChange(info: ImgInfo): void {\n // console.log(info);\n // 获取预览图片\n previewCover(info.file).then((url) => (previewImage.value = url));\n viewCover.value = true;\n // form.cover = fileList;\n }\n function fankui() {\n router.push({ path: \"/mine/aboutus\", query: { selected: 3 } });\n }\n const { resetFields, validate, validateInfos } = useForm(form, rules);\n\n /**\n * 表单提交\n */\n\n // const subdata = ref({\n // title: \"\",\n // img: \"\",\n // fileid: \"\",\n // fileurl: \"\",\n // fileduration: \"\",\n // dateline: \"\",\n // livetime: \"\",\n // livenumber: \"\",\n // desc: \"\",\n // });\n /**\n * todo 需要后台返回年份\n */\n const id = useRoute().query.id;\n const isbianji = ref(id);\n if (id != null && typeof id == \"string\") {\n liveinfo(parseInt(id)).then((res) => {\n form.value = res;\n });\n }\n const seting = computed(() => store.state.seting)\n const onSubmit = (e: FromSend) => {\n if(jinzhi.value){\n isEntitled.value = true;\n\n }\n if(!issum){\n message.error(lan.$t(\"shangchuanwancheng\"))\n return; \n }\n e.preventDefault();\n validate()\n .then(() => {\n console.log(seting.value)\n\n console.log(toRaw(form), 111);\n const subdata: any = toRaw(form.value);\n if (subdata.title == \"\") {\n message.error(lan.$t('zhibobiaotiweikong'));\n return;\n } else if (subdata.img == \"\") {\n message.error(lan.$t('zhibofengmianweikong'));\n return;\n } else if (subdata.fileurl == \"\") {\n message.error(lan.$t('shipinjieshaoweikong'));\n return;\n } else if (subdata.dateline == \"\") {\n message.error(lan.$t('kaishishijianweikong'));\n return;\n } else if (subdata.livetime == \"\") {\n message.error(lan.$t('zhiboshichangweikong'));\n return;\n } else if (subdata.livenumber == \"\") {\n message.error(lan.$t('zhiborenshuweikong'));\n return;\n } else {\n if(subdata.livetime < parseInt(seting.value.timeLowerLimit) || subdata.livetime > parseInt(seting.value.timeCeiling)){\n // console.log(subdata.livetime, subdata.livetime < seting.value.timeLowerLimit || subdata.livetime > seting.value.timeCeiling)\n message.error(lan.$t('shichangtishi'));\n return ;\n }\n if(subdata.livenumber > parseInt(seting.value.numberCeiling) || subdata.livenumber < parseInt(seting.value.lowerLimit)){\n message.error(lan.$t('renshutishi'));\n return ;\n }\n if (!lives.value.status) {\n // subdata.fileid=picinfo.\n if (id != undefined && id) {\n /**\n * todo 提交会报错 编辑直播\n */\n subdata.id = id;\n setlive(subdata)\n } else {\n console.log(subdata);\n console.log(lives.value);\n liveadd(subdata);\n }\n } else {\n message.error(lan.$t('wuzhibozigeale'));\n }\n }\n })\n .catch((err: unknown) => {\n console.log(\"error\", err);\n });\n };\n /**\n * 隐藏无资格提示\n */\n function hideNoticeModal(): void {\n isEntitled.value = false;\n }\n\n /**\n * 开始时间设置\n */\n\n function startchange(e: string): void {\n // const month = new Date(e).getMonth()+1\n // console.log(new Date(e).getFullYear()+\"-\"+month+'-'+new Date(e).getDate())\n // console.log(e.toString())\n const time = dayjs(new Date(e));\n const timestr =\n time.year() +\n \"-\" +\n (time.month() + 1) +\n \"-\" +\n time.date() +\n \" \" +\n time.hour() +\n \":\" +\n time.minute() +\n \":\" +\n time.second();\n console.log(timestr);\n form.value.dateline = timestr;\n }\n /**\n * 上传文件\n */\n const videoinfo = reactive({\n fileId: \"\",\n url: \"\",\n });\n const picinfo = reactive({\n fileId: \"\",\n url: \"\",\n });\n interface AntUpload {\n action: string;\n data: unknown;\n file: File;\n }\n const ifallowupload = ref<boolean>(false);\n function beforeUpload(info?: any) {\n console.log(info);\n if (info.type.split(\"/\")[0] != \"video\") {\n ifallowupload.value = false;\n message.error(lan.$t('shipinjieshaoccuowu'));\n return;\n } else {\n ifallowupload.value = true;\n }\n }\n async function uploads(file: AntUpload) {\n issum = false;\n console.log(file);\n videofile.value = file.file;\n videos.value[0].addEventListener(\"durationchange\", () => {\n console.log(videos.value[0].duration);\n form.value.fileduration = videos.value[0].duration;\n });\n uploadprogress.value = 1;\n const res = await uploadflie(file.file, (info: any) => {\n console.log(info);\n // const jindu = info.percent.toFixed(2) * 100\n let jindu: number = info.percent.toFixed(2) * 100;\n jindu = parseInt(jindu + \"\");\n uploadprogress.value = jindu > 0 ? jindu : 1;\n });\n console.log(res);\n\n form.value.fileid = res.fileId;\n form.value.fileurl = res.video.url;\n issum = true;\n }\n const ifallowpic = ref<boolean>(false);\n async function uploadspic(file: AntUpload) {\n uploadpicprogress.value = 1;\n const res = await uploadflie(file.file, (info: any) => {\n console.log(info);\n let jindu: number = info.percent.toFixed(2) * 100;\n jindu = parseInt(jindu + \"\");\n uploadpicprogress.value = jindu || 1;\n });\n console.log(res);\n\n // picinfo.fileId=res.fileId\n // picinfo.url=res.video.url\n form.value.img = res.video.url;\n }\n getlivest().then((res) => {\n if (res) {\n isEntitled.value = true;\n lives.value = res;\n jinzhi.value = true;\n }\n });\n function beforeUploadpic(info?: any) {\n console.log(info);\n if (info.type.split(\"/\")[0] != \"image\") {\n message.error(lan.$t('fengmiangeshi'));\n ifallowpic.value = false;\n return;\n } else {\n ifallowpic.value = true;\n }\n }\n\n function disabledDate(current: any){\n console.log(current + 0)\n const now = dayjs().date(dayjs().date() - 1);\n return current && current < now;\n }\n\n function onquxiao(){\n isquxiao.value = false;\n if (id != null && typeof id == \"string\") {\n cancellive(parseInt(id), 3).then((res)=>{\n if(res){\n router.push(\"/regime/live\")\n }\n })\n }\n }\n function video(file: any){\n if(jinzhi.value){\n isEntitled.value = true;\n return false;\n }\n return provenvideo(file)\n }\n function imgs(file: any){\n if(jinzhi.value){\n isEntitled.value = true;\n return false;\n }\n return provenimg(file)\n }\n const view = computed(()=>store.state.seting.views)\n return {\n labelCol: { span: 4 },\n wrapperCol: { span: 14 },\n modalNode: () =>\n document.getElementsByClassName(\"modal-container\")[0],\n validateInfos,\n resetFields,\n viewCover,\n previewImage,\n coverChange,\n form,\n onSubmit,\n isEntitled,\n hideNoticeModal,\n uploads,\n uploadprogress,\n videoinfo,\n uploadspic,\n uploadpicprogress,\n picinfo,\n startchange,\n videofile,\n videos,\n lives,\n beforeUploadpic,\n ifallowpic,\n beforeUpload,\n ifallowupload,\n fankui,\n lan,\n disabledDate,\n isbianji,\n onquxiao,\n isquxiao,\n video,\n imgs,\n jinzhi,\n view\n };\n },\n});\n</script>\n<style lang=\"scss\" scoped>\n.webcast {\n width: 100%;\n min-width: 700px;\n background-color: #ffffff;\n padding: 46px;\n border-radius: 17px;\n position: relative;\n .tishi{\n position: absolute;\n top: 60px;\n right: 64px;\n line-height: 0.17rem;\n font-size: 0.1rem;\n font-weight: 500;\n color: #808080;\n display: flex;\n align-items: center;\n color:#07ad97;\n > img{\n width: 40px;\n margin-right: 10px;\n }\n }\n ::v-deep(.ant-form) {\n .title {\n font-size: 12px;\n font-weight: bold;\n color: #111111;\n margin-bottom: 28px;\n }\n .ant-row {\n .ant-form-item-label {\n width: 130px;\n margin: 0 30px 0 17px;\n > label {\n font-size: 12px;\n font-weight: 500;\n color: #808080;\n &::after {\n content: \"\";\n }\n }\n }\n .upload {\n width: 171px;\n height: 96px;\n }\n .upload-image {\n width: 171px;\n height: 96px;\n border: 1px solid #dcdfe0;\n border-radius: 3px;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-right: 17px;\n }\n .ant-input {\n width: 171px;\n padding: 6px 11px;\n border-radius: 3px;\n border: 1px solid #dcdfe0;\n font-size: 11px;\n color: #3f3f3f;\n &::-webkit-input-placeholder {\n font-size: 12px;\n color: #808080;\n }\n }\n .ant-select {\n font-size: 12px;\n }\n .ant-select-dropdown {\n font-size: 12px;\n }\n .ant-form-explain {\n font-size: 10px;\n font-weight: 500;\n color: #d22d2e;\n }\n .ant-upload-list {\n display: none;\n }\n .ant-btn {\n padding: 0;\n width: 63px;\n height: 23px;\n background: #08ae98;\n border-radius: 3px;\n font-size: 10px;\n font-weight: 500;\n color: #ffffff;\n // &:hover{\n // background: #08ae98;\n // }\n }\n }\n .item-cover {\n .preview-image {\n width: 171px;\n height: 96px;\n }\n }\n .demand {\n line-height: 17px;\n font-size: 10px;\n font-weight: 500;\n color: #808080;\n // width: 134px;\n > p {\n margin: 0;\n }\n }\n .video-introduction {\n .ant-form-item-control-wrapper {\n .ant-form-item-children {\n display: flex;\n align-items: center;\n \n }\n }\n }\n .duration {\n .unit {\n margin-left: 18px;\n font-size: 12px;\n font-weight: 500;\n color: #808080;\n }\n }\n .brief {\n position: relative;\n .ant-input {\n width: 359px;\n }\n .brief-textarea {\n min-height: 85px;\n padding-bottom: 30px;\n }\n .words-number {\n position: absolute;\n right: 11px;\n bottom: -11px;\n font-size: 11px;\n font-weight: 500;\n color: #7f7f7f;\n user-select: none;\n }\n }\n }\n .modal-container {\n ::v-deep(.modal-dialog) {\n .close {\n width: 14px;\n height: 14px;\n }\n .ant-modal-content {\n box-sizing: border-box;\n padding: 25px 30px;\n width: 569px;\n background: #ffffff;\n box-shadow: 0px 4px 6px 0px rgba(102, 102, 102, 0.07);\n border-radius: 28px;\n .notice-container {\n .title {\n font-size: 11px;\n font-weight: bold;\n color: #111111;\n margin-bottom: 16px;\n }\n .sub-title {\n .red {\n color: #d12c2d;\n }\n .bule {\n color: #0dbba3;\n }\n }\n .confirm-btn {\n display: inline-block;\n background: #07ad97;\n border-radius: 2px;\n font-size: 9px;\n font-weight: 500;\n color: #ffffff;\n text-align: center;\n cursor: pointer;\n user-select: none;\n height: 22px;\n line-height: 22px;\n padding: 0 17px;\n }\n }\n .report {\n .sub-title {\n margin-bottom: 50px;\n }\n }\n }\n }\n }\n .datesel{\n &::v-deep(.ant-calendar-time-picker-select){\n width: 50% !important;\n &:last-child{\n display: none;\n }\n }\n }\n}\n</style>","import SetCache from './_SetCache.js';\nimport arrayIncludes from './_arrayIncludes.js';\nimport arrayIncludesWith from './_arrayIncludesWith.js';\nimport arrayMap from './_arrayMap.js';\nimport baseUnary from './_baseUnary.js';\nimport cacheHas from './_cacheHas.js';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMin = Math.min;\n\n/**\n * The base implementation of methods like `_.intersection`, without support\n * for iteratee shorthands, that accepts an array of arrays to inspect.\n *\n * @private\n * @param {Array} arrays The arrays to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of shared values.\n */\nfunction baseIntersection(arrays, iteratee, comparator) {\n var includes = comparator ? arrayIncludesWith : arrayIncludes,\n length = arrays[0].length,\n othLength = arrays.length,\n othIndex = othLength,\n caches = Array(othLength),\n maxLength = Infinity,\n result = [];\n\n while (othIndex--) {\n var array = arrays[othIndex];\n if (othIndex && iteratee) {\n array = arrayMap(array, baseUnary(iteratee));\n }\n maxLength = nativeMin(array.length, maxLength);\n caches[othIndex] = !comparator && (iteratee || (length >= 120 && array.length >= 120))\n ? new SetCache(othIndex && array)\n : undefined;\n }\n array = arrays[0];\n\n var index = -1,\n seen = caches[0];\n\n outer:\n while (++index < length && result.length < maxLength) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n value = (comparator || value !== 0) ? value : 0;\n if (!(seen\n ? cacheHas(seen, computed)\n : includes(result, computed, comparator)\n )) {\n othIndex = othLength;\n while (--othIndex) {\n var cache = caches[othIndex];\n if (!(cache\n ? cacheHas(cache, computed)\n : includes(arrays[othIndex], computed, comparator))\n ) {\n continue outer;\n }\n }\n if (seen) {\n seen.push(computed);\n }\n result.push(value);\n }\n }\n return result;\n}\n\nexport default baseIntersection;\n","import isArrayLikeObject from './isArrayLikeObject.js';\n\n/**\n * Casts `value` to an empty array if it's not an array like object.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Array|Object} Returns the cast array-like object.\n */\nfunction castArrayLikeObject(value) {\n return isArrayLikeObject(value) ? value : [];\n}\n\nexport default castArrayLikeObject;\n","import arrayMap from './_arrayMap.js';\nimport baseIntersection from './_baseIntersection.js';\nimport baseRest from './_baseRest.js';\nimport castArrayLikeObject from './_castArrayLikeObject.js';\n\n/**\n * Creates an array of unique values that are included in all given arrays\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. The order and references of result values are\n * determined by the first array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * _.intersection([2, 1], [2, 3]);\n * // => [2]\n */\nvar intersection = baseRest(function(arrays) {\n var mapped = arrayMap(arrays, castArrayLikeObject);\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped)\n : [];\n});\n\nexport default intersection;\n","function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport { reactive, watch, nextTick } from '@vue/runtime-dom';\nimport cloneDeep from 'lodash-es/cloneDeep';\nimport intersection from 'lodash-es/intersection';\nimport isEqual from 'lodash-es/isEqual';\nimport debounce from 'lodash-es/debounce';\nimport omit from 'lodash-es/omit';\nimport { validateRules } from 'ant-design-vue/es/form/utils/validateUtil';\nimport { defaultValidateMessages } from 'ant-design-vue/es/form/utils/messages';\nimport { allPromiseFinish } from 'ant-design-vue/es/form/utils/asyncUtil';\n\nfunction isRequired(rules) {\n var isRequired = false;\n\n if (rules && rules.length) {\n rules.every(function (rule) {\n if (rule.required) {\n isRequired = true;\n return false;\n }\n\n return true;\n });\n }\n\n return isRequired;\n}\n\nfunction toArray(value) {\n if (value === undefined || value === null) {\n return [];\n }\n\n return Array.isArray(value) ? value : [value];\n} // const isArray = Array.isArray;\n// const isObject = (val: any) => val !== null && typeof val === 'object';\n// 重置到初始数据,并尽可能的保留响应式\n// function resetReactiveValue(originValue: Props, refValues: Props) {\n// for (const key of Object.keys(refValues)) {\n// if (!(key in originValue)) {\n// delete refValues[key];\n// }\n// }\n// for (const [key, value] of Object.entries(originValue)) {\n// const refValue = refValues[key];\n// if (isArray(value) && isArray(refValue)) {\n// if (value.length <= refValue.length) {\n// refValue.splice(value.length, refValue.length - value.length);\n// } else {\n// refValue.push(...value.slice(refValue.length));\n// }\n// value.forEach((val, index) => {\n// refValues[key][index] = resetReactiveValue(val, refValue[index]);\n// });\n// } else if (isObject(value) && isObject(refValue)) {\n// refValues[key] = resetReactiveValue(value, refValue);\n// } else {\n// refValues[key] = value;\n// }\n// }\n// return refValues;\n// }\n\n\nfunction getPropByPath(obj, path, strict) {\n var tempObj = obj;\n path = path.replace(/\\[(\\w+)\\]/g, '.$1');\n path = path.replace(/^\\./, '');\n var keyArr = path.split('.');\n var i = 0;\n\n for (var len = keyArr.length; i < len - 1; ++i) {\n if (!tempObj && !strict) break;\n var key = keyArr[i];\n\n if (key in tempObj) {\n tempObj = tempObj[key];\n } else {\n if (strict) {\n throw new Error('please transfer a valid name path to validate!');\n }\n\n break;\n }\n }\n\n return {\n o: tempObj,\n k: keyArr[i],\n v: tempObj ? tempObj[keyArr[i]] : null,\n isValid: tempObj && keyArr[i] in tempObj\n };\n}\n\nfunction useForm(modelRef, rulesRef, options) {\n var initialModel = cloneDeep(modelRef);\n var validateInfos = {};\n Object.keys(rulesRef).forEach(function (key) {\n validateInfos[key] = {\n autoLink: false,\n required: isRequired(rulesRef[key])\n };\n });\n validateInfos = reactive(validateInfos);\n\n var resetFields = function resetFields() {\n _extends(modelRef, cloneDeep(initialModel)); //modelRef = resetReactiveValue(initialModel, modelRef);\n\n\n nextTick(function () {\n Object.keys(validateInfos).forEach(function (key) {\n validateInfos[key] = {\n autoLink: false,\n required: isRequired(rulesRef[key])\n };\n });\n });\n };\n\n var filterRules = function filterRules() {\n var rules = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var trigger = arguments.length > 1 ? arguments[1] : undefined;\n\n if (!trigger.length) {\n return rules;\n } else {\n return rules.filter(function (rule) {\n var triggerList = toArray(rule.trigger || 'change');\n return intersection(triggerList, trigger).length;\n });\n }\n };\n\n var lastValidatePromise = null;\n\n var validateFields = function validateFields(names) {\n var option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var strict = arguments.length > 2 ? arguments[2] : undefined;\n var promiseList = [];\n var values = {};\n\n var _loop = function _loop(i) {\n var name = names[i];\n var prop = getPropByPath(modelRef, name, strict);\n if (!prop.isValid) return \"continue\";\n values[name] = prop.v;\n var rules = filterRules(rulesRef[name], toArray(option && option.trigger));\n\n if (rules.length) {\n promiseList.push(validateField(name, prop.v, rules, option || {}).then(function () {\n return {\n name: name,\n errors: []\n };\n })[\"catch\"](function (errors) {\n return Promise.reject({\n name: name,\n errors: errors\n });\n }));\n }\n };\n\n for (var i = 0; i < names.length; i++) {\n var _ret = _loop(i);\n\n if (_ret === \"continue\") continue;\n }\n\n var summaryPromise = allPromiseFinish(promiseList);\n lastValidatePromise = summaryPromise;\n var returnPromise = summaryPromise.then(function () {\n if (lastValidatePromise === summaryPromise) {\n return Promise.resolve(values);\n }\n\n return Promise.reject([]);\n })[\"catch\"](function (results) {\n var errorList = results.filter(function (result) {\n return result && result.errors.length;\n });\n return Promise.reject({\n values: values,\n errorFields: errorList,\n outOfDate: lastValidatePromise !== summaryPromise\n });\n }); // Do not throw in console\n\n returnPromise[\"catch\"](function (e) {\n return e;\n });\n return returnPromise;\n };\n\n var validateField = function validateField(name, value, rules, option) {\n var promise = validateRules([name], value, rules, _objectSpread({\n validateMessages: defaultValidateMessages\n }, option), !!option.validateFirst);\n validateInfos[name].validateStatus = 'validating';\n promise[\"catch\"](function (e) {\n return e;\n }).then(function () {\n var errors = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n\n if (validateInfos[name].validateStatus === 'validating') {\n validateInfos[name].validateStatus = errors.length ? 'error' : 'success';\n validateInfos[name].help = errors[0];\n }\n });\n return promise;\n };\n\n var validate = function validate(names, option) {\n var keys = [];\n var strict = true;\n\n if (!names) {\n strict = false;\n keys = Object.keys(rulesRef);\n } else if (Array.isArray(names)) {\n keys = names;\n } else {\n keys = [names];\n }\n\n var promises = validateFields(keys, option || {}, strict); // Do not throw in console\n\n promises[\"catch\"](function (e) {\n return e;\n });\n return promises;\n };\n\n var mergeValidateInfo = function mergeValidateInfo() {\n var items = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var info = {\n autoLink: false\n };\n var help = [];\n var infos = Array.isArray(items) ? items : [items];\n\n for (var i = 0; i < infos.length; i++) {\n var arg = infos[i];\n\n if ((arg === null || arg === void 0 ? void 0 : arg.validateStatus) === 'error') {\n info.validateStatus = 'error';\n arg.help && help.push(arg.help);\n }\n\n info.required = info.required || (arg === null || arg === void 0 ? void 0 : arg.required);\n }\n\n info.help = help.join('\\n');\n return info;\n };\n\n var oldModel = initialModel;\n\n var modelFn = function modelFn(model) {\n var names = [];\n Object.keys(rulesRef).forEach(function (key) {\n var prop = getPropByPath(model, key, false);\n var oldProp = getPropByPath(oldModel, key, false);\n\n if (!isEqual(prop.v, oldProp.v)) {\n names.push(key);\n }\n });\n validate(names, {\n trigger: 'change'\n });\n oldModel = cloneDeep(model);\n };\n\n var debounceOptions = options === null || options === void 0 ? void 0 : options.debounce;\n watch(modelRef, debounceOptions && debounceOptions.wait ? debounce(modelFn, debounceOptions.wait, omit(debounceOptions, ['wait'])) : modelFn, {\n immediate: options && !!options.immediate,\n deep: true\n });\n watch(rulesRef, function () {\n if (options && options.validateOnRuleChange) {\n validate();\n }\n }, {\n deep: true\n });\n return {\n modelRef: modelRef,\n rulesRef: rulesRef,\n initialModel: initialModel,\n validateInfos: validateInfos,\n resetFields: resetFields,\n validate: validate,\n validateField: validateField,\n mergeValidateInfo: mergeValidateInfo\n };\n}\n\nexport default useForm;","function _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nimport { ref, watchEffect } from 'vue';\n\nfunction useInViewport(target) {\n var inViewPort = ref(null);\n var prevEl = null;\n var observer = new IntersectionObserver(function (entries) {\n var _iterator = _createForOfIteratorHelper(entries),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var entry = _step.value;\n\n if (entry.isIntersecting) {\n inViewPort.value = true;\n } else {\n inViewPort.value = false;\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n });\n watchEffect(function () {\n if (prevEl) {\n observer.disconnect();\n }\n\n if (target.value) {\n observer.observe(target.value);\n }\n\n prevEl = target.value;\n });\n return inViewPort;\n}\n\nexport default useInViewport;","<template>\n <div class=\"rank-list\">\n <div class=\"list-thead\">\n <div class=\"ranking-number\">{{lan.$t('paiming')}}</div>\n <div class=\"user-info\">{{lan.$t(\"xingming\")}}</div>\n <div class=\"hits\">{{lan.$t(\"shipindianjiliang\")}}</div>\n </div>\n <div class=\"list-body\">\n <div class=\"rank-item\" v-for=\"(item,index) in newList\" :key=\"index\" :class=\"{'mine-item': item.isme }\">\n <div class=\"other-rank\" :class=\"{'mine-rank': item.isme }\">\n <div class=\"ranking-number\">\n <span v-if=\"item.isme\" class=\"mine\">{{lan.$t(\"wo\")}}</span>\n <div v-else>\n <img src=\"@/static/images/rank_first.png\" class=\"rank-img\" v-if=\"index === 0\" />\n <img src=\"@/static/images/rank_second.png\" class=\"rank-img\" v-else-if=\"index === 1\" />\n <img src=\"@/static/images/rank_third.png\" class=\"rank-img\" v-else-if=\"index === 2\" />\n <span class=\"other\" v-else>{{ item.rank }}</span>\n </div>\n </div>\n <div class=\"user-info\">\n <a-avatar :size=\"34\" :src=\"item.img\">\n <template v-slot:icon><UserOutlined /></template>\n </a-avatar>\n <span class=\"name\">{{ item.name }}</span>\n </div>\n <div class=\"hits\">{{ item.clicks }}</div>\n </div>\n <div class=\"third-ellipsis\" v-if=\"item.rank == 3\">...</div>\n <div class=\"twenty-ellipsis\" v-if=\"item.rank === deadLine\">\n <div class=\"third-ellipsis\">\n <div>...</div>\n </div>\n <div class=\"line\"></div>\n </div>\n </div>\n </div>\n </div>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref } from 'vue';\nimport { UserOutlined } from '@ant-design/icons-vue';\nimport { useI18n } from '@/utils/i18n';\n\nexport default defineComponent({\n name: 'RankList',\n components: {\n UserOutlined\n },\n props: {\n list: {\n type: Array\n }\n },\n setup(props) {\n const deadLine = ref(4); // 写死的合格线\n const list = ref(props.list);\n const lan = useI18n()\n let mineRank = 0; // 自己的排名\n list.value!.forEach((element: any) => {\n if(element.isme) {\n mineRank = element.rank;\n }\n });\n // 过滤数据\n const newList = list.value!.filter((item: any) => {\n return item.rank <= 3 || item.rank == deadLine.value || item.rank === mineRank || item.rank === mineRank - 1 || item.rank === mineRank + 1;\n })\n \n return {\n newList,\n deadLine,\n lan\n }\n }\n})\n</script>\n<style lang=\"scss\" scoped>\n.rank-list {\n @mixin rank-public {\n display: flex;\n align-items: center;\n .ranking-number {\n width: 135px;\n text-align: left;\n }\n .user-info {\n flex: 1;\n }\n .hits {\n width: 170px;\n text-align: center;\n }\n }\n .list-thead {\n @include rank-public;\n font-size: 11px;\n font-weight: 500;\n color: #656565;\n margin-bottom: 24px;\n }\n .list-body {\n .rank-item {\n position: relative;\n &:not(:last-child) {\n margin-bottom: 26px;\n }\n .other-rank {\n @include rank-public;\n }\n .mine-rank {\n // margin: 28px 0;\n width: calc(100% + 14px);\n display: flex;\n align-items: center;\n height: 56px;\n position: absolute;\n top: 0;\n left: -14px;\n background: #FFFFFF;\n box-shadow: 0px 3px 24px 0px rgba(58, 58, 58, 0.31);\n border-radius: 7px;\n box-sizing: border-box;\n padding-left: 14px;\n .hits {\n color: #0EBCA4;\n }\n }\n .ranking-number {\n .rank-img {\n width: 27px;\n height: 28px;\n }\n .other {\n display: inline-block;\n width: 27px;\n text-align: center;\n }\n .mine {\n color: #0DBBA3;\n }\n }\n .user-info {\n .name {\n margin-left: 11px;\n font-size: 11px;\n font-weight: bold;\n color: #000000;\n }\n }\n .hits {\n font-size: 11px;\n font-weight: bold;\n color: #111111;\n }\n .third-ellipsis {\n height: 10px;\n width: 28px;\n text-align: center;\n font-size: 15px;\n font-weight: bold;\n color: #666666;\n user-select: none;\n }\n .twenty-ellipsis {\n height: 20px;\n display: flex;\n align-items: flex-end;\n .third-ellipsis {\n width: 135px;\n text-align: left;\n line-height: 0px;\n > div {\n width: 27px;\n text-align: center;\n }\n }\n .line {\n width: 427px;\n height: 1px;\n background: #09AE99;\n }\n }\n }\n .mine-item {\n padding-bottom: 54px;\n }\n }\n}\n</style>","\nimport { defineComponent, ref } from 'vue';\nimport { UserOutlined } from '@ant-design/icons-vue';\nimport { useI18n } from '@/utils/i18n';\n\nexport default defineComponent({\n name: 'RankList',\n components: {\n UserOutlined\n },\n props: {\n list: {\n type: Array\n }\n },\n setup(props) {\n const deadLine = ref(4); // 写死的合格线\n const list = ref(props.list);\n const lan = useI18n()\n let mineRank = 0; // 自己的排名\n list.value!.forEach((element: any) => {\n if(element.isme) {\n mineRank = element.rank;\n }\n });\n // 过滤数据\n const newList = list.value!.filter((item: any) => {\n return item.rank <= 3 || item.rank == deadLine.value || item.rank === mineRank || item.rank === mineRank - 1 || item.rank === mineRank + 1;\n })\n \n return {\n newList,\n deadLine,\n lan\n }\n }\n})\n","import { render } from \"./RankList.vue?vue&type=template&id=60c8a4a4&scoped=true&bindings={}\"\nimport script from \"./RankList.vue?vue&type=script&lang=ts\"\nexport * from \"./RankList.vue?vue&type=script&lang=ts\"\n\nimport \"./RankList.vue?vue&type=style&index=0&id=60c8a4a4&lang=scss&scoped=true\"\nscript.render = render\nscript.__scopeId = \"data-v-60c8a4a4\"\n\nexport default script","\nimport {\n computed,\n defineComponent,\n onBeforeUpdate,\n onMounted,\n reactive,\n Ref,\n ref,\n toRaw,\n} from \"vue\";\nimport { PlaySquareOutlined, PlusOutlined } from \"@ant-design/icons-vue\";\nimport { useForm } from \"@ant-design-vue/use\";\nimport NavBottom from \"@/components/NavBottom.vue\";\nimport RankList from \"./RankList.vue\";\nimport { previewCover, provenimg, provenvideo } from \"@/utils/common\";\nimport { FromSend, ImgInfo } from \"@/types/index\";\nimport { uploadflie } from \"@/utils/vod\";\nimport { cancellive, getlivest, liveadd, liveinfo, setlive } from \"@/api\";\nimport { useRoute } from \"vue-router\";\nimport dayjs from \"dayjs\";\nimport { message } from \"ant-design-vue\";\nimport router from \"@/router\";\nimport { useI18n } from \"@/utils/i18n\";\nimport store from '@/store';\n\nexport default defineComponent({\n name: \"ReleaseWebcast\",\n components: {\n PlaySquareOutlined,\n PlusOutlined,\n NavBottom,\n RankList,\n },\n setup() {\n let issum = true;\n const lan: any = useI18n();\n // 表单数据\n const form = ref({\n title: \"\",\n img: \"\",\n fileid: 0,\n fileurl: \"\",\n fileduration: 0,\n dateline: \"\",\n livetime: \"\",\n livenumber: \"\",\n desc: \"\",\n });\n const isquxiao = ref(false)\n const uploadprogress: Ref<number> = ref(0);\n const uploadpicprogress: Ref<number> = ref(0);\n const videofile = ref<File>();\n const videos = ref<Array<any>>([]);\n const lives = ref<any>({});\n const jinzhi = ref(false)\n const isEntitled: Ref<boolean> = ref(false);\n\n /**\n * 验证直播时间\n */\n async function validateaLivetime(\n rule: unknown,\n value: number\n ): Promise<string | void> {\n console.log(value);\n if (value < 30 || value > 120) {\n return Promise.reject(\"*最短30min 最长120min\");\n } else {\n return Promise.resolve();\n }\n }\n /**\n * 验证直播人数\n */\n const validateLivenumber = async (\n rule: unknown,\n value: number\n ): Promise<string | void> => {\n console.log(value);\n if (value < 1 || value > 4) {\n return Promise.reject(\"**最少1人最多4人\");\n } else {\n return Promise.resolve();\n }\n };\n // 验证规则\n const rules = reactive({\n livetime: [\n {\n validator: validateaLivetime,\n trigger: \"change\",\n },\n ],\n livenumber: [\n {\n validator: validateLivenumber,\n trigger: \"change\",\n },\n ],\n });\n\n // 是否显示封面预览 封面的路径\n const viewCover: Ref<boolean> = ref(false);\n const previewImage: Ref<string> = ref(\"\");\n\n /**\n * 封面改变触发事件\n */\n\n function coverChange(info: ImgInfo): void {\n // console.log(info);\n // 获取预览图片\n previewCover(info.file).then((url) => (previewImage.value = url));\n viewCover.value = true;\n // form.cover = fileList;\n }\n function fankui() {\n router.push({ path: \"/mine/aboutus\", query: { selected: 3 } });\n }\n const { resetFields, validate, validateInfos } = useForm(form, rules);\n\n /**\n * 表单提交\n */\n\n // const subdata = ref({\n // title: \"\",\n // img: \"\",\n // fileid: \"\",\n // fileurl: \"\",\n // fileduration: \"\",\n // dateline: \"\",\n // livetime: \"\",\n // livenumber: \"\",\n // desc: \"\",\n // });\n /**\n * todo 需要后台返回年份\n */\n const id = useRoute().query.id;\n const isbianji = ref(id);\n if (id != null && typeof id == \"string\") {\n liveinfo(parseInt(id)).then((res) => {\n form.value = res;\n });\n }\n const seting = computed(() => store.state.seting)\n const onSubmit = (e: FromSend) => {\n if(jinzhi.value){\n isEntitled.value = true;\n\n }\n if(!issum){\n message.error(lan.$t(\"shangchuanwancheng\"))\n return; \n }\n e.preventDefault();\n validate()\n .then(() => {\n console.log(seting.value)\n\n console.log(toRaw(form), 111);\n const subdata: any = toRaw(form.value);\n if (subdata.title == \"\") {\n message.error(lan.$t('zhibobiaotiweikong'));\n return;\n } else if (subdata.img == \"\") {\n message.error(lan.$t('zhibofengmianweikong'));\n return;\n } else if (subdata.fileurl == \"\") {\n message.error(lan.$t('shipinjieshaoweikong'));\n return;\n } else if (subdata.dateline == \"\") {\n message.error(lan.$t('kaishishijianweikong'));\n return;\n } else if (subdata.livetime == \"\") {\n message.error(lan.$t('zhiboshichangweikong'));\n return;\n } else if (subdata.livenumber == \"\") {\n message.error(lan.$t('zhiborenshuweikong'));\n return;\n } else {\n if(subdata.livetime < parseInt(seting.value.timeLowerLimit) || subdata.livetime > parseInt(seting.value.timeCeiling)){\n // console.log(subdata.livetime, subdata.livetime < seting.value.timeLowerLimit || subdata.livetime > seting.value.timeCeiling)\n message.error(lan.$t('shichangtishi'));\n return ;\n }\n if(subdata.livenumber > parseInt(seting.value.numberCeiling) || subdata.livenumber < parseInt(seting.value.lowerLimit)){\n message.error(lan.$t('renshutishi'));\n return ;\n }\n if (!lives.value.status) {\n // subdata.fileid=picinfo.\n if (id != undefined && id) {\n /**\n * todo 提交会报错 编辑直播\n */\n subdata.id = id;\n setlive(subdata)\n } else {\n console.log(subdata);\n console.log(lives.value);\n liveadd(subdata);\n }\n } else {\n message.error(lan.$t('wuzhibozigeale'));\n }\n }\n })\n .catch((err: unknown) => {\n console.log(\"error\", err);\n });\n };\n /**\n * 隐藏无资格提示\n */\n function hideNoticeModal(): void {\n isEntitled.value = false;\n }\n\n /**\n * 开始时间设置\n */\n\n function startchange(e: string): void {\n // const month = new Date(e).getMonth()+1\n // console.log(new Date(e).getFullYear()+\"-\"+month+'-'+new Date(e).getDate())\n // console.log(e.toString())\n const time = dayjs(new Date(e));\n const timestr =\n time.year() +\n \"-\" +\n (time.month() + 1) +\n \"-\" +\n time.date() +\n \" \" +\n time.hour() +\n \":\" +\n time.minute() +\n \":\" +\n time.second();\n console.log(timestr);\n form.value.dateline = timestr;\n }\n /**\n * 上传文件\n */\n const videoinfo = reactive({\n fileId: \"\",\n url: \"\",\n });\n const picinfo = reactive({\n fileId: \"\",\n url: \"\",\n });\n interface AntUpload {\n action: string;\n data: unknown;\n file: File;\n }\n const ifallowupload = ref<boolean>(false);\n function beforeUpload(info?: any) {\n console.log(info);\n if (info.type.split(\"/\")[0] != \"video\") {\n ifallowupload.value = false;\n message.error(lan.$t('shipinjieshaoccuowu'));\n return;\n } else {\n ifallowupload.value = true;\n }\n }\n async function uploads(file: AntUpload) {\n issum = false;\n console.log(file);\n videofile.value = file.file;\n videos.value[0].addEventListener(\"durationchange\", () => {\n console.log(videos.value[0].duration);\n form.value.fileduration = videos.value[0].duration;\n });\n uploadprogress.value = 1;\n const res = await uploadflie(file.file, (info: any) => {\n console.log(info);\n // const jindu = info.percent.toFixed(2) * 100\n let jindu: number = info.percent.toFixed(2) * 100;\n jindu = parseInt(jindu + \"\");\n uploadprogress.value = jindu > 0 ? jindu : 1;\n });\n console.log(res);\n\n form.value.fileid = res.fileId;\n form.value.fileurl = res.video.url;\n issum = true;\n }\n const ifallowpic = ref<boolean>(false);\n async function uploadspic(file: AntUpload) {\n uploadpicprogress.value = 1;\n const res = await uploadflie(file.file, (info: any) => {\n console.log(info);\n let jindu: number = info.percent.toFixed(2) * 100;\n jindu = parseInt(jindu + \"\");\n uploadpicprogress.value = jindu || 1;\n });\n console.log(res);\n\n // picinfo.fileId=res.fileId\n // picinfo.url=res.video.url\n form.value.img = res.video.url;\n }\n getlivest().then((res) => {\n if (res) {\n isEntitled.value = true;\n lives.value = res;\n jinzhi.value = true;\n }\n });\n function beforeUploadpic(info?: any) {\n console.log(info);\n if (info.type.split(\"/\")[0] != \"image\") {\n message.error(lan.$t('fengmiangeshi'));\n ifallowpic.value = false;\n return;\n } else {\n ifallowpic.value = true;\n }\n }\n\n function disabledDate(current: any){\n console.log(current + 0)\n const now = dayjs().date(dayjs().date() - 1);\n return current && current < now;\n }\n\n function onquxiao(){\n isquxiao.value = false;\n if (id != null && typeof id == \"string\") {\n cancellive(parseInt(id), 3).then((res)=>{\n if(res){\n router.push(\"/regime/live\")\n }\n })\n }\n }\n function video(file: any){\n if(jinzhi.value){\n isEntitled.value = true;\n return false;\n }\n return provenvideo(file)\n }\n function imgs(file: any){\n if(jinzhi.value){\n isEntitled.value = true;\n return false;\n }\n return provenimg(file)\n }\n const view = computed(()=>store.state.seting.views)\n return {\n labelCol: { span: 4 },\n wrapperCol: { span: 14 },\n modalNode: () =>\n document.getElementsByClassName(\"modal-container\")[0],\n validateInfos,\n resetFields,\n viewCover,\n previewImage,\n coverChange,\n form,\n onSubmit,\n isEntitled,\n hideNoticeModal,\n uploads,\n uploadprogress,\n videoinfo,\n uploadspic,\n uploadpicprogress,\n picinfo,\n startchange,\n videofile,\n videos,\n lives,\n beforeUploadpic,\n ifallowpic,\n beforeUpload,\n ifallowupload,\n fankui,\n lan,\n disabledDate,\n isbianji,\n onquxiao,\n isquxiao,\n video,\n imgs,\n jinzhi,\n view\n };\n },\n});\n","import { render } from \"./ReleaseWebcast.vue?vue&type=template&id=a480733a&scoped=true&bindings={}\"\nimport script from \"./ReleaseWebcast.vue?vue&type=script&lang=ts\"\nexport * from \"./ReleaseWebcast.vue?vue&type=script&lang=ts\"\n\nimport \"./ReleaseWebcast.vue?vue&type=style&index=0&id=a480733a&lang=scss&scoped=true\"\nscript.render = render\nscript.__scopeId = \"data-v-a480733a\"\n\nexport default script","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--0-1!./RankList.vue?vue&type=style&index=0&id=60c8a4a4&lang=scss&scoped=true\"","module.exports = __webpack_public_path__ + \"img/rank_first.87f7067d.png\";","module.exports = __webpack_public_path__ + \"img/rank_third.65fdcf57.png\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ1IDc5LjE2MzQ5OSwgMjAxOC8wOC8xMy0xNjo0MDoyMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjRGNkU1MzA2MkIxQjExRUI4OUEzQUYxRkFFODM5RTc3IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjRGNkU1MzA3MkIxQjExRUI4OUEzQUYxRkFFODM5RTc3Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NEY2RTUzMDQyQjFCMTFFQjg5QTNBRjFGQUU4MzlFNzciIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NEY2RTUzMDUyQjFCMTFFQjg5QTNBRjFGQUU4MzlFNzciLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7zy1bGAAAD1klEQVR42sSYe2jNYRjHz+5mc9kWpbFmxqIpU5NJM2OW29D+cJlLEZNkMhoRUlhuKYb5Q7lPzbRQyDDkfqklMZSFhtxmM2aX4/vU8+bx63d2zvv7nTlPfTrv+57f5ft7L8/7PK+f0+l0hJ4pdti0UNAZBAB/0AJ+gUbQZufBgRbviwHTQQYYAcJcXNcKqsAVcBrc1n2Rn2YPpoECkEn3WviwarAdHAG/vSmwL9gDJrr4vw684F8a3nAQC6JdXP8SLAUXvTHEs8EBwzA6QSU4CSrAKxf3RoJUMA1ki2fEgwugCOSDJis9SEO4Daw0tJ8Am8FTzeHtDpbx87qIdpqXk8AXs5v823ngPoO412AUyLEgjuwb2AQGgvOiPYVHI0pH4EawWNRprgwF1x327R2YDNaJtkRwDnTyROB4sEHUyT1kga8O75mTp0muaBsOdrsTGAEOizr12CxPXYIFOwjWinoud5BLgVtADy5/ZGfcUeKUbeXhVbYXBJsJpN1hgajngfeaL+sFBlsY7kWgnutxYL6ZwBUgiMt3QYnmi+LZAVcZ5pYnVss9qSxf7VRKYBDPNTnUupbCAYMq69p+0Yv0sSOlwFQx9z4Y/JSnFmBzLpKfLBX1bClwtPijnKMQX1iZKKdLgcnij2sO39kNXjTKeQcogQnioic+FEjRUI2IBcKUwJ7iohqHb+2NKIf4i5Bd2XcfC5RbaqC/ZoTzPyzQTEy9aIvyscAIUW5WAt+KxjiLD27g+Ut8siEwXpR/KoHPRGOSxQeXch4SaxKFe2q9xYZBQUqjEnhLXDTWh8ObLsp3yCcqgRXijwmgq40eSLIhcIYoX5aL5LEYZnI5cyzOHUo9H3FKqWv9wDhRLzG6lEOiXGCWH7ix/uKeRAsCV4uAo5I/9h+BFO585nIfsEbzBZfADs5hCjXvTTYEy4Wu8uI8kbg0c0x2r4MXBp1CPBDxAJ3jjHG1axTxfFRBbBlP/I4yGtKjQhydiC1pb1tr4USpgevRvJo6QmQgZ5BTRdty8NzdvkuTc6bj77leAh9PDPOiuEjO5HIMJxnFngYGdPNcIZJ68CYn9CE2xWVxYpUp2o7xuY1W5HIcTAE/xJykI5FqPhYJ1xBF78ngaL3ccCy3kzujVfd0S9kAcAoMMbST8LO8Cz3kIzgVSwbznkz+MI0/NMYkSVpoSJQsCVQTmoZgPejmJglvlicDJtbGQ7qKTy/cdr0nRqt7FzvwAuXlzT64HXF1vAho0c3zRJxOD7ry/uRQ6RB9EIsPFj1Zyx9CTvgqu6smW+G1pt1njD3oEKmjbfsjwACyG9+vkjY46gAAAABJRU5ErkJggg==\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader-v16/dist/index.js??ref--0-1!./ReleaseWebcast.vue?vue&type=style&index=0&id=a480733a&lang=scss&scoped=true\"","// This icon file is generated automatically.\nvar UserOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z\" } }] }, \"name\": \"user\", \"theme\": \"outlined\" };\nexport default UserOutlined;\n","import * as _vue from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport UserOutlinedSvg from \"@ant-design/icons-svg/es/asn/UserOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar UserOutlined = function UserOutlined(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _vue.createVNode(AntdIcon, _vue.mergeProps(p, {\n \"icon\": UserOutlinedSvg\n }), null);\n};\n\nUserOutlined.displayName = 'UserOutlined';\nUserOutlined.inheritAttrs = false;\nexport default UserOutlined;"],"sourceRoot":""}