本次同步 09-12 至 09-28 的代码变更,主要内容: 新增功能 - 修改密码:后端新增 ChangePasswordRequest DTO 与UserController/UserService 对应接口,前端新增 ChangePasswordDialog 并在 Header 接入入口 - 文件预览组件重构:file-preview 目录拆分出 VideoPreview(支持 blobUrl 直传)、 ImagePreview、AudioPreview,index.tsx 统一调度各类型预览器 - 新增 my_ops 算子模块:markitdown_parser、mineru_pdf_parser、text_quality_evaluator - 新增 tools/minio-file-server MinIO 文件服务 功能增强 - 数据清洗:cleaning_task_service/scheduler/routes 重构, data_juicer_executor 与 wrapper 增强,OperatorTable/LogsTable/TaskDetail 同步调整 - 数据标注:annotation sync.py、project.py 接口与schema 更新 - 数据采集、算子市场、首页与菜单路由相关页面调整 - DataJuicer 算子接入(useOperatorOperations、dj_ops_schema) 结构调整 - deepflow/ 更名为 deep-flow/(419 个文件重命名) - 新增 helm 部署编排、GitHub Actions 之外的自建镜像构建脚本 未纳入本次提交 - scripts-backup/、runtime/python-executor-backup/、components_backup/(备份目录) - *.backup*、__pycache__ 产物 - zh_core_web_sm-3.8.0-py3-none-any.whl(46MB 构建产物) - DataX/(内嵌独立仓库,远程亦未收录其源码)
459 lines
13 KiB
JavaScript
459 lines
13 KiB
JavaScript
/*
|
|
* 白名单
|
|
*/
|
|
window.PDPSList = ["PDPS000000046010", "PDPS000000058599", "PDPS000000058858", "PDPS000000043766", "PDPS000000060868", "PDPS000000057131", "PDPS000000057132", "PDPS000000057133", "PDPS000000055657", "PDPS000000055301", "PDPS000000055659", "PDPS000000055658", "PDPS000000055660", "PDPS000000055661", "PDPS000000057465", "CS_PDPS000000046010", "CS_PDPS000000060868"];
|
|
var power = {
|
|
PDPS000000025255: ["NowDate", "name"],
|
|
PDPS000000043763: ["name", "post"]
|
|
};
|
|
for (var listNum = 0; listNum < PDPSList.length; listNum++) {
|
|
let newPDPS = PDPSList[listNum];
|
|
power.newPDPS = ["NowDate", "name", "post"];
|
|
}
|
|
|
|
var startTime = Date.parse(new Date()),
|
|
timeoutId = null;
|
|
|
|
/*
|
|
* 方法综合
|
|
*/
|
|
window.Tool = {
|
|
// adsArray: new Array(),
|
|
whiteList: window.PDPSList || [],
|
|
|
|
getIframeDomain: function () {
|
|
var ifDom = document.getElementsByTagName("iframe");
|
|
if (ifDom[0]) {
|
|
url = ifDom[0].src;
|
|
}
|
|
|
|
var ifdomain = url.split("/"); //以“/”进行分割
|
|
if (ifdomain[2]) {
|
|
ifdomain = ifdomain[2];
|
|
} else {
|
|
ifdomain = ""; //如果url不正确就取空
|
|
}
|
|
|
|
return ifdomain;
|
|
},
|
|
/**
|
|
* getData 获取并返回数据
|
|
*/
|
|
getData: function (event) {
|
|
var oncePost = event.oncePost;
|
|
var pdps = event.pdps || "";
|
|
var adsIframe = Tool.getAdsDom(pdps);
|
|
var data = {
|
|
frequency: event.frequency
|
|
};
|
|
for (var i = 0, len = oncePost.length; i < len; i++) {
|
|
var onceData = {};
|
|
|
|
// var firstUp = oncePost[i].substring(0,1).toUpperCase() + oncePost[i].substring(1);
|
|
// var methodName = `getIframe${firstUp}`;
|
|
// onceData[oncePost[i]] = Tool[methodName](pdps);
|
|
|
|
switch (oncePost[i]) {
|
|
case "top":
|
|
onceData = {
|
|
top: Tool.getIframeTop(pdps)
|
|
};
|
|
break;
|
|
case "left":
|
|
onceData = {
|
|
left: Tool.getIframeLeft(pdps)
|
|
};
|
|
break;
|
|
case "width":
|
|
onceData = {
|
|
width: Tool.getIframeWidth(pdps)
|
|
};
|
|
break;
|
|
case "height":
|
|
onceData = {
|
|
ifrHeight: Tool.getIframeHeight(pdps)
|
|
};
|
|
break;
|
|
case "allSize":
|
|
onceData = Tool.getIframeAllSize(pdps);
|
|
break;
|
|
default:
|
|
}
|
|
data = Tool.mergeObject(data, onceData);
|
|
}
|
|
|
|
if (adsIframe) {
|
|
var dataStr = JSON.stringify(data);
|
|
adsIframe.contentWindow.postMessage(dataStr, "*");
|
|
}
|
|
},
|
|
mergeObject: function (beMerObj, merObj) {
|
|
var newObj = JSON.parse(JSON.stringify(beMerObj));
|
|
for (var x in merObj) {
|
|
newObj[x] = merObj[x];
|
|
}
|
|
return newObj;
|
|
},
|
|
|
|
/**
|
|
* monitorPost
|
|
*/
|
|
getlistener: function (event) {
|
|
if (window.addEventListener) {
|
|
window.addEventListener("scroll", function () {
|
|
if (timeoutId !== null) clearTimeout(timeoutId);
|
|
var currentTime = Date.parse(new Date());
|
|
if (currentTime - startTime < 1000) {
|
|
timeoutId = setTimeout(Tool.getData(event), 300);
|
|
} else {
|
|
Tool.getData(event);
|
|
startTime = currentTime;
|
|
}
|
|
|
|
// Tool.getData(event);
|
|
});
|
|
|
|
} else if (window.attachEvent) {
|
|
window.attachEvent("onscroll", function () {
|
|
Tool.getData(event);
|
|
});
|
|
}
|
|
},
|
|
/**
|
|
* @param {*} isPC 判断是PC还是wap
|
|
*/
|
|
isPC: function () {
|
|
var userAgentInfo = navigator.userAgent;
|
|
var Agents = [
|
|
"Android",
|
|
"iPhone",
|
|
"SymbianOS",
|
|
"Windows Phone",
|
|
"iPad",
|
|
"iPod"
|
|
];
|
|
var flag = true;
|
|
for (var v = 0; v < Agents.length; v++) {
|
|
if (userAgentInfo.indexOf(Agents[v]) > 0) {
|
|
flag = false;
|
|
break;
|
|
}
|
|
}
|
|
return flag;
|
|
},
|
|
|
|
/**
|
|
* @param {*} getAdsDom 获取iframe
|
|
*/
|
|
getAdsDom: function (pdps) {
|
|
// 广告dom
|
|
var queryer = this.isPC()
|
|
? '[data-ad-pdps="' + pdps + '"]'
|
|
: '[data-id="' + pdps + '"]';
|
|
var adsDom = document.querySelector(queryer);
|
|
|
|
if (adsDom) {
|
|
return adsDom.getElementsByTagName("iframe")[0];
|
|
} else {
|
|
return "";
|
|
}
|
|
},
|
|
|
|
getIframeAllSize: function (pdps) {
|
|
var otherInfo = ["top", "left", "width", "height"];
|
|
|
|
var data = {
|
|
allSize: {
|
|
windowH: Tool.getClientHeight(),
|
|
windowW: Tool.getClientWidth()
|
|
}
|
|
};
|
|
// 遍历非实时监听的数据信息
|
|
for (var i = 0; i < otherInfo.length; i++) {
|
|
let firstUp = otherInfo[i].substring(0, 1).toUpperCase() + otherInfo[i].substring(1);
|
|
let methodName = `getIframe${firstUp}`;
|
|
data.allSize[otherInfo[i]] = Tool[methodName](pdps);
|
|
|
|
// switch (otherInfo[i]) {
|
|
// case "top":
|
|
// top = Tool.getIframeTop(pdps);
|
|
// break;
|
|
// case "left":
|
|
// left = Tool.getIframeLeft(pdps);
|
|
// break;
|
|
// case "width":
|
|
// width = Tool.getIframeWidth(pdps);
|
|
// break;
|
|
// case "height":
|
|
// height = Tool.getIframeHeight(pdps);
|
|
// break;
|
|
// default:
|
|
// break;
|
|
// }
|
|
}
|
|
|
|
return data;
|
|
},
|
|
|
|
/**
|
|
* @param {*} whiteList 白名单列表或白名单字符
|
|
*/
|
|
// setWhiteList: function(whiteList) {
|
|
// if (whiteList instanceof Array) {
|
|
// this.whiteList = this.whiteList.concat(whiteList);
|
|
// } else if (whiteList instanceof String) {
|
|
// this.whiteList.push(whiteList);
|
|
// }
|
|
// },
|
|
|
|
/**
|
|
* @param {*} name 获取权限,返回相应cookie
|
|
* @returns
|
|
*/
|
|
getPower: function (adsPDPS, name) {
|
|
var newName = power[adsPDPS];
|
|
var cookie = {};
|
|
for (var j = 0, nameLen = name.length; j < nameLen; j++) {
|
|
for (var i = 0, len = newName.length; i < len; i++) {
|
|
if (name[j] == newName[i]) {
|
|
cookie[name[j]] = Tool.getCookie(name[j]);
|
|
}
|
|
}
|
|
}
|
|
return cookie;
|
|
},
|
|
|
|
/**
|
|
* @param {*} name 获取cookie
|
|
* @returns
|
|
*/
|
|
getCookie: function (name) {
|
|
var strcookie = document.cookie; //获取cookie字符串
|
|
var arrcookie = strcookie.split("; "); //分割
|
|
//遍历匹配
|
|
for (var i = 0; i < arrcookie.length; i++) {
|
|
var arr = arrcookie[i].split("=");
|
|
|
|
if (arr[0] == name) {
|
|
return arr[1];
|
|
}
|
|
}
|
|
return "";
|
|
},
|
|
|
|
getReset: function (event) {
|
|
var pdps = event.pdps;
|
|
var queryer = this.isPC()
|
|
? '[data-ad-pdps="' + pdps + '"]'
|
|
: '[data-id="' + pdps + '"]';
|
|
|
|
var adsDom = document.querySelector(queryer);
|
|
var adsIframe = "";
|
|
if (adsDom) {
|
|
adsIframe = adsDom.getElementsByTagName("iframe")[0];
|
|
}
|
|
if (adsIframe) {
|
|
if (parseInt(event.oncePost.resetSizeH) > 203) {
|
|
adsIframe.style.height = "203px";
|
|
} else {
|
|
adsIframe.style.height = event.oncePost.resetSizeH + "px";
|
|
}
|
|
}
|
|
},
|
|
/**
|
|
* getDomain
|
|
*/
|
|
getDomain: function () {
|
|
return document.referrer || window.location.href || document.domain;
|
|
},
|
|
/**
|
|
* @param {*} 建桥,并传递权限内信息
|
|
*/
|
|
getAdsList: function () {
|
|
if (window.addEventListener) {
|
|
// window.addEventListener("load", function() {
|
|
// for (var i = 0, len = Tool.whiteList.length; i < len; i++) {
|
|
// Tool.postData(Tool.whiteList[i]);
|
|
// }
|
|
// });
|
|
} else if (window.attachEvent) {
|
|
// window.attachEvent("onload", function() {
|
|
// for (var i = 0, len = Tool.whiteList.length; i < len; i++) {
|
|
// Tool.postData(Tool.whiteList[i]);
|
|
// }
|
|
// });
|
|
}
|
|
},
|
|
postData: function (adsPDPS) {
|
|
// 默认传递给第三方的一些数据
|
|
var obj = {
|
|
init: {
|
|
// cookie: Tool.getPower(adsPDPS, power[adsPDPS]),
|
|
pdps: adsPDPS,
|
|
referrer: Tool.getDomain()
|
|
}
|
|
};
|
|
|
|
var adsIframeDom = Tool.getAdsDom(adsPDPS);
|
|
var objStr = JSON.stringify(obj);
|
|
var postDomain = Tool.getIframeDomain();
|
|
if (adsIframeDom) {
|
|
adsIframeDom.contentWindow.postMessage(objStr, "*");
|
|
}
|
|
},
|
|
|
|
/**
|
|
* 取窗口可视范围的高度
|
|
*/
|
|
getClientHeight: function () {
|
|
var clientHeight =
|
|
document.body.clientHeight < document.documentElement.clientHeight
|
|
? document.body.clientHeight
|
|
: document.documentElement.clientHeight;
|
|
|
|
return clientHeight;
|
|
},
|
|
|
|
/**
|
|
* 取窗口可视范围的k度
|
|
*/
|
|
getClientWidth: function () {
|
|
var clientWidth =
|
|
document.body.clientWidth < document.documentElement.clientWidth
|
|
? document.body.clientWidth
|
|
: document.documentElement.clientWidth;
|
|
|
|
return clientWidth;
|
|
},
|
|
|
|
/**
|
|
* 获取iframe的height
|
|
*
|
|
*/
|
|
getIframeHeight: function (pdps) {
|
|
var ifrHeight;
|
|
var queryer = this.isPC()
|
|
? '[data-ad-pdps="' + pdps + '"]'
|
|
: '[data-id="' + pdps + '"]';
|
|
var adsDom = document.querySelector(queryer);
|
|
if (adsDom) {
|
|
ifrHeight = adsDom.clientHeight;
|
|
}
|
|
|
|
return ifrHeight;
|
|
},
|
|
|
|
/**
|
|
* 获取iframe的width
|
|
*/
|
|
getIframeWidth: function (pdps) {
|
|
var width;
|
|
var queryer = this.isPC()
|
|
? '[data-ad-pdps="' + pdps + '"]'
|
|
: '[data-id="' + pdps + '"]';
|
|
var adsDom = document.querySelector(queryer);
|
|
|
|
if (adsDom) {
|
|
width = adsDom.clientWidth;
|
|
}
|
|
return width;
|
|
},
|
|
|
|
/**
|
|
* 获取iframe的位置
|
|
*/
|
|
getIframeTop: function (pdps) {
|
|
if (!pdps) {
|
|
return;
|
|
}
|
|
|
|
// 广告坐标
|
|
var queryer = this.isPC()
|
|
? '[data-ad-pdps="' + pdps + '"]'
|
|
: '[data-id="' + pdps + '"]';
|
|
var adsDom = document.querySelector(queryer);
|
|
|
|
var adsTop;
|
|
if (adsDom) {
|
|
adsTop = parseInt(adsDom.getBoundingClientRect().top);
|
|
}
|
|
|
|
return adsTop;
|
|
},
|
|
|
|
getIframeLeft: function (pdps) {
|
|
if (!pdps) {
|
|
return;
|
|
}
|
|
// 广告坐标
|
|
|
|
var queryer = this.isPC()
|
|
? '[data-ad-pdps="' + pdps + '"]'
|
|
: '[data-id="' + pdps + '"]';
|
|
var adsDom = document.querySelector(queryer);
|
|
|
|
var adsLeft;
|
|
if (adsDom) {
|
|
adsLeft = parseInt(adsDom.getBoundingClientRect().left);
|
|
}
|
|
return adsLeft;
|
|
},
|
|
|
|
throttle (fun, delay, maxTime) {
|
|
var startTime = Date.parse(new Date()),
|
|
timeoutId = null;
|
|
|
|
return function () {
|
|
if (timeoutId !== null) clearTimeout(timeoutId);
|
|
debugger;
|
|
var currentTime = Date.parse(new Date());
|
|
|
|
if (currentTime - startTime < maxTime) {
|
|
console.log("小于1000");
|
|
timeoutId = setTimeout(fun, delay);
|
|
} else {
|
|
console.log("大于1000");
|
|
fun;
|
|
startTime = currentTime;
|
|
}
|
|
};
|
|
}
|
|
};
|
|
|
|
/*
|
|
* 接收数据
|
|
*/
|
|
document.cookie = "NowDate=" + new Date();
|
|
document.cookie = "name=" + "sinaAds";
|
|
document.cookie = "post=" + "massage";
|
|
// document.cookie = "page=" + "23333";
|
|
|
|
if (window.addEventListener) {
|
|
window.addEventListener("message", function (event) {
|
|
getMessage(event);
|
|
});
|
|
} else if (window.attachEvent) {
|
|
window.attachEvent("onmessage", function (event) {
|
|
getMessage(event);
|
|
});
|
|
}
|
|
|
|
function getMessage (event) {
|
|
try {
|
|
var eventData = JSON.parse(event.data);
|
|
console.log("我们拿到的第三方传过来的数据:", eventData);
|
|
|
|
if (eventData.frequency === "oncePost") {
|
|
Tool.getData(eventData);
|
|
} else if (eventData.frequency === "monitorPost") {
|
|
Tool.getlistener(eventData);
|
|
} else if (eventData.frequency === "resetPost") {
|
|
Tool.getReset(eventData);
|
|
}
|
|
} catch (e) { }
|
|
}
|
|
|
|
/*
|
|
* 入口
|
|
*/
|
|
Tool.getAdsList(); |