本次同步 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/(内嵌独立仓库,远程亦未收录其源码)
301 lines
10 KiB
JavaScript
301 lines
10 KiB
JavaScript
/* [2,717,212] published at 2022-04-08 18:05:08 */
|
|
|
|
//document.getElementById("PublicRelation10").innerHTML = "";
|
|
|
|
;(function(win, doc) {
|
|
(function(con) {
|
|
var methods = ['error', 'info', 'log', 'warn'],func;
|
|
for (var i = methods.length - 1; i >= 0; i--) {
|
|
func = methods[i];
|
|
con[func] = con[func] || function(){};
|
|
}
|
|
}(win.console = win.console || {}));
|
|
console = win.console;
|
|
var hasTouch = typeof(window.ontouchstart) === 'undefined';
|
|
var clickType = hasTouch ? 'click' : 'touchstart';
|
|
var hasClass = function(el, clz) {
|
|
if (!el) {
|
|
return false;
|
|
}
|
|
return el.className.match(new RegExp('(\\s|^)' + clz + '(\\s|$)'));
|
|
};
|
|
var addClass = function(el, clz) {
|
|
if (!hasClass(el, clz)) {
|
|
el.className = el.className.replace(/(^\s*)|(\s*$)/g, '') + ' ' + clz;
|
|
}
|
|
};
|
|
var removeClass = function(el, clz) {
|
|
if (hasClass(el, clz)) {
|
|
var reg = new RegExp('(\\s|^)' + clz + '(\\s|$)');
|
|
el.className = el.className.replace(reg, ' ');
|
|
}
|
|
};
|
|
var byAttr = function(node, attname, attvalue) {
|
|
var match = [];
|
|
var item;
|
|
var args = [];
|
|
for (var i = 0, len = node.childNodes.length; i < len; i++) {
|
|
item = node.childNodes[i];
|
|
if (item.nodeType === 1) {
|
|
if (attvalue !== '*') {
|
|
if (item.getAttribute(attname) === attvalue) {
|
|
match.push(item);
|
|
}
|
|
} else {
|
|
if (item.getAttribute(attname) !== '') {
|
|
match.push(item);
|
|
}
|
|
} if (item.childNodes.length > 0) {
|
|
args = Array.apply(null, arguments);
|
|
args[0] = item;
|
|
match = match.concat(arguments.callee.apply(null, args));
|
|
}
|
|
}
|
|
}
|
|
return match;
|
|
};
|
|
var getDom = function(wrap, type) {
|
|
var nodes, dom;
|
|
nodes = byAttr(wrap, type, '*');
|
|
dom = {
|
|
__wrap__: wrap
|
|
};
|
|
for (var i = 0, len = nodes.length; i < len; i++) {
|
|
var j = nodes[i].getAttribute(type);
|
|
if (j) {
|
|
dom[j] || (dom[j] = nodes[i]);
|
|
}
|
|
}
|
|
return dom;
|
|
};
|
|
var contains = function(a, b) {
|
|
try {
|
|
return a.contains ? a != b && a.contains(b) : !!(a.compareDocumentPosition(b) & 16);
|
|
} catch (e) {
|
|
return false;
|
|
}
|
|
};
|
|
var addEvent = (function() {
|
|
var hover = function(e, fun) {
|
|
var t = e.relatedTarget,
|
|
t2 = e.target;
|
|
if (this == t2 && t && !(this.comparedocPosition && this.comparedocPosition(t) == 20)) {
|
|
fun.call(this);
|
|
}
|
|
t = t2 = null;
|
|
};
|
|
var add;
|
|
if (win.addEventListener) {
|
|
add = function(ele, type, fn) {
|
|
if ('on' + type in ele) {
|
|
ele.addEventListener(type, fn, false);
|
|
} else {
|
|
if (type === 'mouseenter') {
|
|
ele.addEventListener('mouseover', function(e) {
|
|
hover.call(this, e, fn);
|
|
}, false);
|
|
} else if (type === 'mouseleave') {
|
|
ele.addEventListener('mouseout', function(e) {
|
|
hover.call(this, e, fn);
|
|
}, false);
|
|
} else {
|
|
ele.addEventListener(type, fn, false);
|
|
}
|
|
}
|
|
};
|
|
} else {
|
|
add = function(ele, type, fn) {
|
|
ele.attachEvent('on' + type, fn);
|
|
};
|
|
}
|
|
return add;
|
|
})();
|
|
var DropDown = (function() {
|
|
var navClz = 'sina-top-bar-nav';
|
|
var showClz = navClz + '-show';
|
|
var timerId = null;
|
|
var show = function() {
|
|
clearTimeout(timerId);
|
|
addClass(dom.nav, showClz);
|
|
};
|
|
var hide = function() {
|
|
clearTimeout(timerId);
|
|
timerId = setTimeout(function() {
|
|
removeClass(dom.nav, showClz);
|
|
}, 300);
|
|
};
|
|
return {
|
|
init: function() {
|
|
addEvent(dom.moreLnk, 'mouseenter', show);
|
|
addEvent(dom.moreLnk, 'mouseleave', hide);
|
|
addEvent(dom.guideLnk, 'mouseenter', show);
|
|
addEvent(dom.guideLnk, 'mouseleave', hide);
|
|
addEvent(dom.sub, 'mouseenter', show);
|
|
addEvent(dom.sub, 'mouseleave', hide);
|
|
addEvent(dom.moreLnk, clickType, show);
|
|
addEvent(dom.guideLnk, clickType, show);
|
|
addEvent(doc.body, clickType, function(e) {
|
|
e = e || win.event;
|
|
var target = e.target || e.srcElement;
|
|
if (!contains(dom.nav, target)) {
|
|
removeClass(dom.nav, showClz);
|
|
}
|
|
});
|
|
},
|
|
show: show,
|
|
hide: hide
|
|
};
|
|
})();
|
|
var ScrollFix = (function() {
|
|
var d = doc.documentElement;
|
|
var b = doc.body;
|
|
var wrapClz = 'sina-top-bar-wrap';
|
|
var fixedClz = wrapClz + '-fixed';
|
|
var addSudaClick = function(key){
|
|
try{
|
|
wrap.setAttribute('data-sudaclick',key);
|
|
}catch(e){}
|
|
};
|
|
var fix = function() {
|
|
addClass(wrap, fixedClz);
|
|
addSudaClick('top_channel_2');
|
|
};
|
|
var unfix = function() {
|
|
removeClass(wrap, fixedClz);
|
|
addSudaClick('top_channel_1');
|
|
};
|
|
var toggle = function() {
|
|
if (d.scrollTop + b.scrollTop > 100) {
|
|
fix();
|
|
} else {
|
|
unfix();
|
|
}
|
|
};
|
|
return {
|
|
init: function() {
|
|
addEvent(win, 'scroll', toggle);
|
|
addSudaClick('top_channel_1');
|
|
}
|
|
};
|
|
})();
|
|
var wrap = doc.getElementById('SI_TopBar'),
|
|
dom,
|
|
inited = false;
|
|
var TopBar = {
|
|
init: function(w) {
|
|
if (inited) {
|
|
return;
|
|
}
|
|
wrap = w;
|
|
dom = getDom(wrap, 'top-node-type');
|
|
DropDown.init();
|
|
// ScrollFix.init();
|
|
inited = true;
|
|
},
|
|
getDom: function() {
|
|
return dom;
|
|
},
|
|
hasTouch: hasTouch,
|
|
clickType: clickType,
|
|
showSub: DropDown.show,
|
|
hideSub: DropDown.hide,
|
|
showMain: ScrollFix.fix,
|
|
hideMain: ScrollFix.unfix
|
|
};
|
|
if (wrap && wrap.getAttribute('top-data') === 'auto') {
|
|
TopBar.init(wrap);
|
|
}
|
|
win.__SinaTopBar__ = TopBar;
|
|
|
|
})(window, document);
|
|
(function(win) {
|
|
var isFn = function(fn, data) {
|
|
if (fn && typeof fn === 'function') {
|
|
fn(data);
|
|
}
|
|
};
|
|
var UserPanel,
|
|
wrap = document.getElementById('SI_User'),
|
|
bar = document.getElementById('SI_TopBar'),
|
|
TopBar = win.__SinaTopBar__,
|
|
LoginLayer,
|
|
inited = false,
|
|
timerId = null,
|
|
tip = null,
|
|
User = {
|
|
init: function(w, config) {
|
|
if (inited) {
|
|
return;
|
|
}
|
|
inited = true;
|
|
wrap = w;
|
|
UserPanel = win.SINA_USER_PANEL;
|
|
UserPanel = UserPanel.set("container", {
|
|
'node' : wrap
|
|
});
|
|
UserPanel = UserPanel.set('extra', {
|
|
'css' : '//i.sso.sina.com.cn/css/outlogin/v1/outlogin_skin_reversion.css'
|
|
});
|
|
UserPanel = UserPanel.set('outLoginLayer', {
|
|
'ready' : function() {
|
|
LoginLayer = win.SINA_OUTLOGIN_LAYER;
|
|
if (LoginLayer) {
|
|
LoginLayer.set('sso', {
|
|
entry: config.entry || 'account'
|
|
}).set('styles', {
|
|
// 'margin-top': '0px',
|
|
// 'z-index': '10001'
|
|
}).register('login_success', function(info) {
|
|
isFn(config.login_success, info);
|
|
LoginLayer.getWeiboInfo({
|
|
timeout: 15e3,
|
|
onSuccess: function(rs) {
|
|
isFn(config.getWeiboInfo, rs);
|
|
},
|
|
onFailure: function(rs) {}
|
|
});
|
|
}).register('logout_success', function(info) {
|
|
isFn(config.logout_success, info);
|
|
}).register('layer_hide',function(){
|
|
User.hideTip();
|
|
}).init();
|
|
}
|
|
}
|
|
});
|
|
UserPanel.init();
|
|
},
|
|
fireLoginSuccess: function() {
|
|
LoginLayer && LoginLayer.listener.fire('login_success');
|
|
},
|
|
fireLogoutSuccess: function() {
|
|
LoginLayer && LoginLayer.listener.fire('logout_success');
|
|
},
|
|
showTip: function(html){
|
|
LoginLayer = win.SINA_OUTLOGIN_LAYER;
|
|
if(!tip){
|
|
tip = document.createElement('div');
|
|
tip.className = 'sina-top-bar-user-tip';
|
|
LoginLayer.nodes.box.insertBefore(tip, LoginLayer.nodes.box.firstChild);
|
|
}
|
|
if(html){
|
|
tip.innerHTML = html;
|
|
tip.style.display = 'block';
|
|
}
|
|
},
|
|
hideTip:function(){
|
|
if(tip){
|
|
tip.style.display = 'none';
|
|
}
|
|
}
|
|
};
|
|
if (wrap && wrap.getAttribute('top-data') === 'auto') {
|
|
timerId = setInterval(function() {
|
|
if (UserPanel) {
|
|
User.init(wrap);
|
|
clearInterval(timerId);
|
|
}
|
|
}, 50);
|
|
}
|
|
win.__SinaTopBar__.user = User;
|
|
})(window);
|