Browse Source

上传文件至 ''

1
ab071 1 year ago
parent
commit
cc43968e69
3 changed files with 4807 additions and 0 deletions
  1. +174
    -0
      O
  2. +935
    -0
      O.bat
  3. +3698
    -0
      clsids.cpp

+ 174
- 0
O View File

@ -0,0 +1,174 @@
#!/usr/bin/env python3
# Allow direct execution
import os
import sys
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
import platform
from PyInstaller.__main__ import run as run_pyinstaller
from devscripts.utils import read_version
import zlib
import zopfli
try:
iterations = int(os.environ['ZOPFLI_ITERATIONS'])
except BaseException:
iterations = 30
def zlib_compress(data, level=-1):
c = zopfli.ZopfliCompressor(zopfli.ZOPFLI_FORMAT_ZLIB, iterations=iterations)
return c.compress(data) + c.flush()
zlib.compress = zlib_compress
OS_NAME, MACHINE, ARCH = sys.platform, platform.machine(), platform.architecture()[0][:2]
if MACHINE in ('x86_64', 'AMD64') or ('i' in MACHINE and '86' in MACHINE):
# NB: Windows x86 has MACHINE = AMD64 irrespective of bitness
MACHINE = 'x86' if ARCH == '32' else ''
ICON = os.getenv('windows_icon') or 'red'
def main():
opts, version = parse_options(), read_version()
onedir = '--onedir' in opts or '-D' in opts
if not onedir and '-F' not in opts and '--onefile' not in opts:
opts.append('--onefile')
name, final_file = exe(onedir)
print(f'Building ytdl-patched v{version} {ARCH}bit for {OS_NAME} with options {opts}')
print('Remember to update the version using "devscripts/update-version.py"')
if not os.path.isfile('yt_dlp/extractor/lazy_extractors.py'):
print('WARNING: Building without lazy_extractors. Run '
'"devscripts/make_lazy_extractors.py" to build lazy extractors', file=sys.stderr)
print(f'Destination: {final_file}\n')
opts = [
f'--name={name}',
f'--icon=icons/youtube_social_squircle_{ICON}.ico',
'--upx-exclude=vcruntime140.dll',
'--noconfirm',
# NB: Modules that are only imported dynamically must be added here.
# --collect-submodules may not work correctly if user has a yt-dlp installed via PIP
'--hidden-import=yt_dlp.compat._legacy',
*dependency_options(),
*opts,
'yt_dlp/__main__.py',
]
print(f'Running PyInstaller with {opts}')
run_pyinstaller(opts)
set_version_info(final_file, version)
def parse_options():
# Compatibility with older arguments
opts = sys.argv[1:]
if opts[0:1] in (['32'], ['64']):
if ARCH != opts[0]:
raise Exception(f'{opts[0]}bit executable cannot be built on a {ARCH}bit system')
opts = opts[1:]
return opts
def exe(onedir):
"""@returns (name, path)"""
name = '_'.join(filter(None, (
'ytdl-patched',
OS_NAME == 'darwin' and 'macos',
ARCH == '32' and 'x86'
)))
return name, ''.join(filter(None, (
'dist/',
onedir and f'{name}/',
name,
OS_NAME == 'win32' and '.exe'
)))
def version_to_list(version):
version_list = version.split('.')
return list(map(int, version_list)) + [0] * (4 - len(version_list))
def dependency_options():
# Due to the current implementation, these are auto-detected, but explicitly add them just in case
dependencies = [pycryptodome_module(), 'mutagen', 'brotli', 'certifi', 'websockets']
excluded_modules = ('youtube_dl', 'youtube_dlc', 'test', 'ytdlp_plugins', 'devscripts')
yield from (f'--hidden-import={module}' for module in dependencies)
yield '--collect-submodules=websockets'
yield from (f'--exclude-module={module}' for module in excluded_modules)
def pycryptodome_module():
try:
import Cryptodome # noqa: F401
except ImportError:
try:
import Crypto # noqa: F401
print('WARNING: Using Crypto since Cryptodome is not available. '
'Install with: pip install pycryptodomex', file=sys.stderr)
return 'Crypto'
except ImportError:
pass
return 'Cryptodome'
def set_version_info(exe, version):
if OS_NAME == 'win32':
windows_set_version(exe, version)
def windows_set_version(exe, version):
from PyInstaller.utils.win32.versioninfo import (
FixedFileInfo,
SetVersion,
StringFileInfo,
StringStruct,
StringTable,
VarFileInfo,
VarStruct,
VSVersionInfo,
)
version_list = version_to_list(version)
suffix = '_x86' if ARCH == '32' else ''
SetVersion(exe, VSVersionInfo(
ffi=FixedFileInfo(
filevers=version_list,
prodvers=version_list,
mask=0x3F,
flags=0x0,
OS=0x4,
fileType=0x1,
subtype=0x0,
date=(0, 0),
),
kids=[
StringFileInfo([StringTable('040904B0', [
StringStruct('Comments', 'ytdl-patched%s Command Line Interface.' % suffix),
StringStruct('CompanyName', 'https://github.com/ytdl-patched'),
StringStruct('FileDescription', 'ytdl-patched%s' % (' (32 Bit)' if ARCH == '32' else '')),
StringStruct('FileVersion', version),
StringStruct('InternalName', f'ytdl-patched{suffix}'),
StringStruct('LegalCopyright', 'nao20010128gmail.com | UNLICENSE'),
StringStruct('OriginalFilename', f'ytdl-patched{suffix}.exe'),
StringStruct('ProductName', f'ytdl-patched{suffix}'),
StringStruct(
'ProductVersion', f'{version}{suffix} on Python {platform.python_version()}'),
])]), VarFileInfo([VarStruct('Translation', [0, 1200])])
]
))
if __name__ == '__main__':
main()

+ 935
- 0
O.bat View File

@ -0,0 +1,935 @@
<!DOCTYPE html>
<html lang="zh-CN" class="theme-gitea">
<head data-suburl="">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<title>fenwe/CatVodSpider - build.bat at main - Agit</title>
<meta name="theme-color" content="#6cc644">
<meta name="author" content="fenwe" />
<meta name="description" content="CatVodSpider" />
<meta name="keywords" content="go,git,self-hosted,gitea">
<meta name="referrer" content="no-referrer" />
<meta name="_csrf" content="xHHOKsfTjHus7FqEXsZ-Hryh-hM6MTY2NzgwMjA1Mjg0NzQxNzQzNg" />
<meta name="_suburl" content="" />
<meta name="_uid" content="1222" />
<script>
window.config = {
AppVer: 'gitea模板还原\u002b136-g37b15f62b',
AppSubUrl: '',
StaticUrlPrefix: '',
UseServiceWorker: true ,
csrf: 'xHHOKsfTjHus7FqEXsZ-Hryh-hM6MTY2NzgwMjA1Mjg0NzQxNzQzNg',
HighlightJS: false,
SimpleMDE: false,
Tribute: false,
U2F: false,
Heatmap: false,
heatmapUser: null,
NotificationSettings: {
MinTimeout: 10000 ,
TimeoutStep: 10000 ,
MaxTimeout: 60000 ,
EventSourceUpdateTime: 10000 ,
},
PageIsProjects: false,
};
</script>
<link rel="icon" href="/img/favicon.svg" type="image/svg+xml">
<link rel="alternate icon" href="/img/favicon.png" type="image/png">
<link rel="mask-icon" href="/img/agit-safari.svg" color="#609926">
<link rel="fluid-icon" href="/img/agit-lg.png" title="Agit">
<link rel="stylesheet" href="/css/index.css?v=6ab3d3a502725c978d285e96b831c280">
<noscript>
<style>
.dropdown:hover > .menu { display: block; }
.ui.secondary.menu .dropdown.item > .menu { margin-top: 0; }
</style>
</noscript>
<style class="list-search-style"></style>
<meta property="og:title" content="CatVodSpider" />
<meta property="og:url" content="https://agit.ai/fenwe/CatVodSpider" />
<meta property="og:type" content="object" />
<meta property="og:image" content="https://agit.ai/user/avatar/fenwe/-1" />
<meta property="og:site_name" content="Agit" />
<link rel="stylesheet" href="/vendor/plugins/xterm/xterm.css?v=6ab3d3a502725c978d285e96b831c280" />
</head>
<body>
<div class="full height">
<noscript>使用 JavaScript能使本网站更好的工作。</noscript>
<div class="ui top secondary stackable main menu following bar light" style="background: #242628; height: 52px;">
<div class="ui container z-max" id="navbar" v-cloak style="position:fixed;">
<div class="i-flex i-align-center i-justify-between logo-img" style="margin-right:26px;height:52px;">
<a href="/">
<img class="share-nav-logo" src="/img/logo/nav-logo.svg">
</a>
<div class="ui basic icon button mobile-only" id="navbar-expand-toggle">
<i class="sidebar icon"></i>
</div>
</div>
<a class="item " href="/">首页</a>
<a class="item " href="/issues">讨论区</a>
<a class="item " href="/pulls">合并请求</a>
<a class="mobile-only item " href="/explore/repos">探索</a>
<div class="ui input d-relative navbar-search not-mobile" :class="{active:menuVisible}">
<i class="icon iconfont icon-search"></i>
<input v-model="searchName" placeholder="搜索" type="text" autocomplete="off" @focus="menuVisible = true">
<div v-show="searchName.trim() && menuVisible" class="ui segment transition z-menu" @focus="menuVisible = true">
<div class="ui list" @click="handleSearch('repos')">
<span class="mr-md">${searchName}</span> <span class="i-text-right">仓库</span>
</div>
<div class="ui list" @click="handleSearch('users')">
<span class="mr-md">${searchName}</span> <span class="i-text-right">用户</span>
</div>
<div class="ui list" @click="handleSearch('organizations')">
<span class="mr-md">${searchName}</span> <span class="i-text-right">组织</span>
</div>
</div>
</div>
<div class="right stackable menu header-right">
<div class="ui dropdown jump item poping up active visible">
<i class="iconfont mr-3xs font-size-2xl" :class='{"icon-lang-zh2en":lan!=="en-US","icon-lang-en2zh":lan==="en-US"}'></i>
<span id="footerLang" class="hidden">简体中文</span>
<i class="caret down icon font-size-sm"></i>
<div class="menu">
<span lang="zh-CN" class="item active selected" onclick="handleLanguage(&#34;zh-CN&#34;)">简体中文</span>
<span lang="en-US" class="item " onclick="handleLanguage(&#34;en-US&#34;)">English</span>
</div>
</div>
<a href="/notifications" class="item poping up" data-content='通知' data-variation="tiny inverted">
<span class="text d-relative">
<i class="iconfont icon-bell mr-none font-size-lg"></i>
<span class="sr-mobile-only">通知</span>
</span>
</a>
<div class="ui dropdown jump item poping up" data-content="创建…" data-variation="tiny inverted">
<span class="text">
<i class="iconfont icon-plus mr-3xs"></i>
<span class="sr-mobile-only">创建…</span>
<i class="caret down icon font-size-sm not-mobile"></i>
</span>
<div class="menu left">
<a class="item" href="/repo/create">
<i class="iconfont icon-create-repo"></i> 创建仓库
</a>
<a class="item" href="/repo/migrate">
<i class="iconfont icon-migrate-repo"></i> 迁移外部仓库
</a>
<a class="item" href="/org/create">
<i class="iconfont icon-org-member"></i> 创建组织
</a>
</div>
</div>
<div class="ui dropdown jump item poping up" data-position="bottom right" tabindex="-1" data-content="个人中心" data-variation="tiny inverted">
<span class="text">
<img class="ui tiny avatar image mr-3xs" src="/user/avatar/ab071/-1">
<span class="sr-only">个人中心</span>
<span class="mobile-only">ab071</span>
<i class="caret down icon font-size-sm not-mobile" tabindex="-1"></i>
</span>
<div class="menu user-menu" tabindex="-1">
<div class="ui header">
已登录用户 <strong>ab071</strong>
</div>
<div class="divider"></div>
<a class="item" href="/ab071">
<i class="iconfont icon-user"></i>
个人主页
</a>
<a class="item" href="/user/settings/profile">
<i class="iconfont icon-gear"></i>
账号管理
</a>
<a class="item" href="/user/settings/computing">
<i class="iconfont icon-pkg-manage"></i>
资源管理
</a>
<div class="divider"></div>
<a class="item link-action logout" href data-url="/user/logout" data-redirect="/" onclick="logoutMethod()">
<i class="iconfont icon-quit"></i>
退出
</a>
</div>
</div>
</div>
</div>
</div>
<div id="repoHome" class="repository file list ">
<div class="header-wrapper">
<div class="ui container">
<div class="repo-header">
<div class="ui huge breadcrumb repo-title">
<div class="repo-header-icon">
<svg viewBox="0 0 16 16" class="svg octicon-mirror" width="32" height="32" aria-hidden="true"><path fill-rule="evenodd" d="M8.75 1.75a.75.75 0 00-1.5 0v.5a.75.75 0 001.5 0v-.5zM8 4a.75.75 0 01.75.75v.5a.75.75 0 01-1.5 0v-.5A.75.75 0 018 4zm.75 3.75a.75.75 0 00-1.5 0v.5a.75.75 0 001.5 0v-.5zM8 10a.75.75 0 01.75.75v.5a.75.75 0 01-1.5 0v-.5A.75.75 0 018 10zm0 3a.75.75 0 01.75.75v.5a.75.75 0 01-1.5 0v-.5A.75.75 0 018 13zm7.547-9.939A.75.75 0 0116 3.75v8.5a.75.75 0 01-1.265.545l-4.5-4.25a.75.75 0 010-1.09l4.5-4.25a.75.75 0 01.812-.144zM11.842 8l2.658 2.51V5.49L11.842 8zM0 12.25a.75.75 0 001.265.545l4.5-4.25a.75.75 0 000-1.09l-4.5-4.25A.75.75 0 000 3.75v8.5zm1.5-6.76L4.158 8 1.5 10.51V5.49z"/></svg>
</div>
<a href="/fenwe">fenwe</a>
<div class="divider"> / </div>
<a href="/fenwe/CatVodSpider">CatVodSpider</a>
<i class="iconfont icon-ai"></i>
<div class="fork-flag">镜像自地址 <a target="_blank" rel="noopener noreferrer" href="https://github.com/FongMi/CatVodSpider">https://github.com/FongMi/CatVodSpider</a></div>
</div>
<div class="repo-buttons">
<form method="post" action="/fenwe/CatVodSpider/action/watch?redirect_to=%2ffenwe%2fCatVodSpider%2fsrc%2fbranch%2fmain%2fbuild.bat">
<input type="hidden" name="_csrf" value="xHHOKsfTjHus7FqEXsZ-Hryh-hM6MTY2NzgwMjA1Mjg0NzQxNzQzNg">
<div class="ui labeled button" tabindex="0">
<button type="submit" class="ui compact basic button">
<i class="iconfont mr-2xs icon-eye"></i>关注
</button>
<a class="ui basic label" href="/fenwe/CatVodSpider/watchers">
1
</a>
</div>
</form>
<form method="post" action="/fenwe/CatVodSpider/action/star?redirect_to=%2ffenwe%2fCatVodSpider%2fsrc%2fbranch%2fmain%2fbuild.bat">
<input type="hidden" name="_csrf" value="xHHOKsfTjHus7FqEXsZ-Hryh-hM6MTY2NzgwMjA1Mjg0NzQxNzQzNg">
<div class="ui labeled button" tabindex="0">
<button type="submit" class="ui compact basic button">
<i class="mr-2xs iconfont icon-star"></i>点赞
</button>
<a class="ui basic label" href="/fenwe/CatVodSpider/stars">
0
</a>
</div>
</form>
<div class="ui labeled button " tabindex="0">
<a class="ui compact basic button
"
href="/repo/fork/4833"
data-position="top center" data-variation="tiny">
<i class="mr-2xs iconfont icon-fork"></i>派生
</a>
<a class="ui basic label" href="/fenwe/CatVodSpider/forks">
1
</a>
</div>
</div>
</div>
</div>
<div class="ui tabs container">
<div class="ui tabular stackable menu navbar">
<a class="active item" href="/fenwe/CatVodSpider">
<i class="iconfont icon-code"></i> 代码
</a>
<a class=" item" href="/fenwe/CatVodSpider/issues">
<i class="iconfont icon-open"></i> 讨论 <span class="ui gray tiny label circular">0</span>
</a>
<a class=" item" href="/fenwe/CatVodSpider/wiki" >
<i class="iconfont icon-wiki"></i> 百科
</a>
<a class=" item" href="/fenwe/CatVodSpider/activity">
<i class="iconfont icon-activity"></i> 动态
</a>
<a class=" item" href="/fenwe/CatVodSpider/training">
<i class="iconfont icon-training"></i> 训练
</a>
<a class=" item" href="/fenwe/CatVodSpider/storage">
<i class="iconfont icon-save"></i> 存储
</a>
</div>
</div>
<div class="ui tabs divider"></div>
</div>
<span class="repo-url hidden">/fenwe/CatVodSpider</span>
<span class="repo-id hidden">4833</span>
<div class="ui container">
<div class="ui repo-description">
<div id="repo-desc">
<a class="link" href=""></a>
</div>
</div>
<div class="ui" id="repo-topics">
</div>
<div class="hide" id="validate_prompt">
<span id="count_prompt">您最多选择25个主题</span>
<span id="format_prompt">主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符</span>
</div>
<div class="ui segments repository-summary shadow-0 is-lang-stats">
<div class="ui segment sub-menu repository-menu">
<div class="ui two horizontal center link list">
<div class="item">
<a class="ui" href="/fenwe/CatVodSpider/commits/branch/main"><i class="iconfont icon-commit"></i> <b>160</b> 提交</a>
</div>
<div class="item">
<a class="ui" href="/fenwe/CatVodSpider/branches/"><i class="iconfont icon-branch-down"></i> <b>1</b> 分支</a>
</div>
<div class="item">
<span class="ui"><i class="iconfont icon-memory"></i> <b id="RepoSize">40 MB</b></span>
</div>
</div>
</div>
<div class="ui segment sub-menu language-stats-details" style="display: none">
<div class="ui horizontal center link list">
<div class="item">
<span class="ui">
<i class="color-icon" style="background-color: #b07219"></i>
<b>
Java
</b> 99.4%</span>
</div>
<div class="item">
<span class="ui">
<i class="color-icon" style="background-color: #C1F12E"></i>
<b>
Batchfile
</b> 0.6%</span>
</div>
</div>
</div>
<a class="ui segment language-stats">
<div class="bar" style="width: 99.4%; background-color: #b07219">&nbsp;</div>
<div class="bar" style="width: 0.6%; background-color: #C1F12E">&nbsp;</div>
</a>
</div>
<div class="ui stackable secondary menu mobile--margin-between-items mobile--no-negative-margins">
<div class="fitted item choose reference">
<div class="ui floating filter dropdown custom" data-can-create-branch="false" data-no-results="未找到结果">
<div id="branchSelect" class="ui basic small compact button" data-mode="branches" @click="menuVisible = !menuVisible" @keyup.enter="menuVisible = !menuVisible">
<span class="text">
<i class="iconfont icon-branch-down"></i>
分支:
<strong>main</strong>
</span>
<i class="dropdown icon"></i>
</div>
<div class="data" style="display: none" data-mode="branches">
<div class="item branch selected" data-url="/fenwe/CatVodSpider/src/branch/main/build.bat">main</div>
</div>
<div class="menu transition" :class="{visible: menuVisible}" v-if="menuVisible" v-cloak>
<div class="ui icon search input">
<i class="filter icon"></i>
<input name="search" ref="searchField" v-model="searchTerm" @keydown="keydown($event)" placeholder="过滤分支或标签...">
</div>
<div class="header branch-tag-choice">
<div class="ui grid">
<div class="two column row">
<a class="reference column" href="#" @click="mode = 'branches'; focusSearchField()">
<span class="text" :class="{black: mode !== 'branches'}">
<i class="iconfont icon-branch-down"></i> 分支列表
</span>
</a>
<a class="reference column" href="#" @click="mode = 'tags'; focusSearchField()">
<span class="text" :class="{black: mode !== 'tags'}">
<i class="reference tags icon"></i> 标签列表
</span>
</a>
</div>
</div>
</div>
<div class="scrolling menu" ref="scrollContainer">
<div v-for="(item, index) in filteredItems" :key="item.name" class="item" :class="{selected: item.selected, active: active == index}" @click="selectItem(item)" :ref="'listItem' + index">${ item.name }</div>
<div class="item" v-if="showCreateNewBranch" :class="{active: active == filteredItems.length}" :ref="'listItem' + filteredItems.length">
<a href="#" @click="createNewBranch()">
<div>
<i class="iconfont icon-branch-down"></i>
创建分支 <strong>${ searchTerm }</strong>
</div>
<div class="text small">
&#39;main&#39;
</div>
</a>
<form ref="newBranchForm" action="/fenwe/CatVodSpider/branches/_new/branch/main" method="post">
<input type="hidden" name="_csrf" value="xHHOKsfTjHus7FqEXsZ-Hryh-hM6MTY2NzgwMjA1Mjg0NzQxNzQzNg">
<input type="hidden" name="new_branch_name" v-model="searchTerm">
</form>
</div>
</div>
<div class="message" v-if="showNoResults">${ noResults }</div>
</div>
</div>
</div>
<div class="fitted item">
<span class="ui breadcrumb repo-path">
<a class="section" href="/fenwe/CatVodSpider/src/branch/main" title="CatVodSpider">CatVodSpider</a>
<span class="divider">/</span>
<span class="active section" title="build.bat">build.bat</span>
</span></div>
<div class="right fitted item" id="file-buttons">
<div>
</div>
</div>
<div class="fitted item">
</div>
</div>
<div class="tab-size-8 non-diff-file-content">
<h4 class="file-header ui top attached header">
<div class="file-header-left df ac">
<div class="file-info text grey normal mono">
<div class="file-info-entry">
7 行
</div>
<div class="file-info-entry">
98 B
</div>
</div>
</div>
<div class="file-header-right df ac">
<div class="ui right file-actions">
<div class="ui buttons">
<a class="ui button" href="/fenwe/CatVodSpider/raw/branch/main/build.bat">原始文件</a>
<a class="ui button" href="/fenwe/CatVodSpider/src/commit/0c4287a7f00ebfdc7b8a8ec6cb36d71bde95981d/build.bat">永久链接</a>
<a class="ui button" href="/fenwe/CatVodSpider/blame/branch/main/build.bat">Blame</a>
<a class="ui button" href="/fenwe/CatVodSpider/commits/branch/main/build.bat">文件历史</a>
</div>
</div>
</div>
</h4>
<div class="ui attached table unstackable segment">
<div class="file-view code-view">
<table>
<tbody>
<tr>
<td id="L1" class="lines-num">
<span id="L1" data-line-number="1"></span>
</td>
<td rel="L1" class="lines-code chroma">
<code><span class="p">@</span><span class="k">echo</span> off</code>
</td>
</tr>
<tr>
<td id="L2" class="lines-num">
<span id="L2" data-line-number="2"></span>
</td>
<td rel="L2" class="lines-code chroma">
<code>
</code>
</td>
</tr>
<tr>
<td id="L3" class="lines-num">
<span id="L3" data-line-number="3"></span>
</td>
<td rel="L3" class="lines-code chroma">
<code><span class="k">call</span> <span class="s2">&#34;</span><span class="nv">%~dp0</span><span class="s2">\gradlew</span><span class="s2">&#34;</span> assembleRelease --no-daemon</code>
</td>
</tr>
<tr>
<td id="L4" class="lines-num">
<span id="L4" data-line-number="4"></span>
</td>
<td rel="L4" class="lines-code chroma">
<code>
</code>
</td>
</tr>
<tr>
<td id="L5" class="lines-num">
<span id="L5" data-line-number="5"></span>
</td>
<td rel="L5" class="lines-code chroma">
<code><span class="k">call</span> <span class="s2">&#34;</span><span class="nv">%~dp0</span><span class="s2">\jar\genJar.bat</span><span class="s2">&#34;</span> <span class="nv">%1</span></code>
</td>
</tr>
<tr>
<td id="L6" class="lines-num">
<span id="L6" data-line-number="6"></span>
</td>
<td rel="L6" class="lines-code chroma">
<code>
</code>
</td>
</tr>
<tr>
<td id="L7" class="lines-num">
<span id="L7" data-line-number="7"></span>
</td>
<td rel="L7" class="lines-code chroma">
<code>pause</code>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="i-text-center">
</div>
<script>
function submitDeleteForm() {
var message = prompt("delete_confirm_message\n\ndelete_commit_summary", "Delete ''");
if (message != null) {
$("#delete-message").val(message);
$("#delete-file-form").submit()
}
}
</script>
</div>
<div id="toListModel">
<div class="ui modal" id="toShare">
<i class="close icon black"></i>
<div class="header">共享</div>
<div class="content">
<form autocomplete="off" class="ui form training ignore-dirty">
<div class="fields">
<p class="px-sm py-none mb-sm">共享页面将在匿名链接下呈现所选的代码和训练结果,不会显示项目的原始链接地址。但Agit系统不会自动处理代码和训练结果,因此如果需要为匿名盲审等场景提供匿名内容,还需要您自行保证代码内容和训练结果的匿名化。</p>
</div>
<div class="fields">
<div class="two wide field required">
<label>代码分支</label>
</div>
<div id="branchField" class="fourteen wide field">
<div class="fitted item choose">
<div class="ui floating filter dropdown custom">
<div class="ui basic small compact button" style="min-width: 200px;" @click="menuVisible = !menuVisible">
<span class="text">
<i class="iconfont icon-branch-down"></i>
<span v-text='isViewBranch?"分支":"目录树"'></span>:
<strong v-text='isViewBranch?(selectedBranch?selectedBranch:"请选择"):(selectedTag?selectedTag:"请选择")'></strong>
</span>
<i class="dropdown icon" tabIndex="-1"></i>
</div>
<div tabindex="-1" id="scrolling" class="menu transition menu-share" :class="{visible: menuVisible}" v-show="menuVisible" @blur="menuVisible = false">
<div class="ui icon search input" style="width: 200px;">
<i class="filter icon"></i>
<input name="search" v-model="searchTerm" @keydown="keydown($event)" placeholder="过滤分支或标签...">
</div>
<div class="header branch-tag-choice">
<div class="ui grid">
<div class="two column row">
<a class="reference column" href="javascript:;" @click="handleBranchTab(true)">
<span class="text" :class="{black: !isViewBranch}">
<i class="iconfont icon-branch-down"></i>
分支列表
</span>
</a>
<a class="reference column" href="javascript:;" @click="handleBranchTab(false)">
<span class="text" :class="{black: isViewBranch}">
<i class="reference tags icon"></i>
标签列表
</span>
</a>
</div>
</div>
</div>
<div v-show="isViewBranch" class="scrolling menu" ref="scrollContainer">
<div v-for="(item, index) in branches" v-show="item.name.includes(searchTerm)" :key="item.name" class="item" @click="handleBranchOrTag(item)">
<span v-text="item.name"></span>
</div>
</div>
<div v-show="!isViewBranch" class="scrolling menu" ref="scrollContainer">
<div v-for="(item, index) in tags" v-show="item.name.includes(searchTerm)" :key="item.name" class="item" @click="handleBranchOrTag(item)">
<span v-text="item.name"></span>
</div>
</div>
<div class="message" v-if="(isViewBranch && branches.length==0) || (!isViewBranch && tags.length==0)">未找到结果</div>
</div>
<div class="ui pointing red basic label" style="display:none;">
请选择分支或标签
</div>
</div>
</div>
</div>
</div>
<div class="fields" v-show="selectedBranch">
<div class="two wide field">
<label>提交</label>
</div>
<div id="commitWrap" class="fourteen wide field">
<select class="ui search selection dropdown commit-wrap" name="commit">
<option value=""></option>
</select>
</div>
</div>
<div class="fields">
<label class="two wide field required">共享标题</label>
<div class="fourteen wide field trainName-filed">
<input v-model="shareName" type="text" name="shareName" class="form-trainName" :maxlength="16" placeholder="请输入标题内容,最多16个字符">
</div>
</div>
<div class="ui grid uioption">
<label class="required">链接有效期</label>
</div>
<div class="ui grid fields">
<div class="thirteen wide column">
<div class="ui four item stackable tabs menu ui-link-bg">
<a v-for="(item, index) in shareTimeList" :key="index" :class="['item', activeIdx === item.shareTimeId ? 'active' : '']" data-tab="oneday" @click="handleMenuChange(item)">
<span v-text="formatLinkTime(item.shareTimeName)"></span></a>
</div>
</div>
<div class="right aligned three wide column action mt-3xs">
<button class="ui primary button" @click="handleLink">
生成链接</button>
</div>
</div>
</form>
</div>
</div>
<div class="ui modal" id="toCopyShareLink">
<i class="close icon black"></i>
<div class="header">共享链接已生成</div>
<div class="content ui form">
<div class="fields">
<div class="two wide field">
<label>链接地址:</label>
</div>
<div class="fourteen wide field">
<p v-text="linkAddress" id="share_url"></p>
</div>
</div>
<div class="fields uioption">
<div class="two wide field">
<label>链接有效期:</label>
</div>
<div class="fourteen wide field">
<p v-text="linkExDate"></p>
</div>
</div>
<div class="fields uioption">
<div class="sixteen wide field" style="text-align: right">
<button class="ui basic icon button poping primary up clipboard share-button" id="share-button" data-original="复制链接" data-success="已复制链接" data-error="请按下 ⌘-C 或 Ctrl-C 复制" data-content="复制链接" data-variation="inverted tiny" data-clipboard-target="#share_url">
复制
</button>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="content">
<p></p>
</div>
</div>
</div>
</div>
<footer>
<div class="base-footer-content i-footer mx-auto">
<div class="ui left">
<div class="p-logo i-flex i-align-center">
<img class="logo-icon" src="/img/logo/logo.svg">
<i class="logo-text">&copy Agit Cloud Computing, Ltd.</i>
<a id="version-a" style="margin-right: 16px; text-decoration: underline; font-size: 12px;" target="_blank" href="https://agit.ai/AgitDeveloper/AgitPythonExamples/wiki"></a>
</div>
</div>
<div class="ui right links p-logo">
<a style="margin-right: 16px; text-decoration: underline; font-size: 12px;" target="_blank" href="/agreement/terms">服务协议</a>
<a style="margin-right: 16px; text-decoration: underline; font-size: 12px;" target="_blank" href="/agreement/privacy">隐私政策</a>
<a style="text-decoration: underline; font-size: 12px; margin-right: 16px;" target="_blank" href="/opensource">开源软件</a>
<a style="text-decoration: underline; font-size: 12px;" target="_blank" id="help-a" target="_blank" href="http://help.agit.ai/">帮助</a>
</div>
</div>
</footer>
<script src="/js/index.js?v=6ab3d3a502725c978d285e96b831c280"></script>
<script src="/vendor/plugins/vue/vue.min.js"></script>
<script src="/minifyjs/head_navbar.base.js?v=6ab3d3a502725c978d285e96b831c280"></script>
<script src="/minifyjs/footer_content.base.js?v=6ab3d3a502725c978d285e96b831c280"></script>
<script src="/vendor/plugins/promise-polyfill/polyfill.min.js"></script>
<script src="/vendor/plugins/cssrelpreload/loadCSS.min.js"></script>
<script src="/vendor/plugins/cssrelpreload/cssrelpreload.min.js"></script>
<script src="/vendor/plugins/vue-infinite-loading/vue-infinite-loading.js?v=6ab3d3a502725c978d285e96b831c280"></script>
<script src="/vendor/plugins/Qrcode/qrcode.min.js?v=6ab3d3a502725c978d285e96b831c280"></script>
<script src="/vendor/plugins/i-components/i.components.min.js?v=6ab3d3a502725c978d285e96b831c280"></script>
<script src="/vendor/plugins/vue-node-spec/node-spec.min.js?v=6ab3d3a502725c978d285e96b831c280"></script>
<script src="/vendor/plugins/jquery-migrate/jquery-migrate.min.js?v=3.0.1"></script>
<script src="/vendor/plugins/jquery.areyousure/jquery.are-you-sure.js"></script>
<script src="/vendor/plugins/emojify/emojify.custom.js"></script>
<script src="/vendor/plugins/xterm/xterm.js"></script>
</body>
</html>
<script>
$("#createTraining").click(function(){
$api.trainReachUpperLimit({repoId:Number($('.repo-id').text())}).then(data => {
if (!data) return;
if(data.isUpperLimit){
$ITools.handleToast('error', $i18n.tr('code', 'trainCountLimit'))
return
}
const mode = $("#branchSelect").attr("data-mode"),
branch = $("#branchSelect").find("strong").text();
let path = ""
$(".repo-path a").each(function(index,item){
if(index === 0){
return
}
path += path === ""?$(this).attr("title"):("/"+$(this).attr("title"))
})
const params={
scriptPath: $(".repo-path").find(".active.section").attr("title"),
workSpace: path,
branchName: mode === "branches" ? branch : "",
tagName: mode === "branches" ? "" : branch
}
window.location.href = window.location.origin + $('.repo-url').text() + '/training/create?scriptFile=' + escapePound(JSON.stringify(params))
})
})
function toUpload(el) {
const tempSplit = $("#RepoSize").text().split("GB")
if (tempSplit.length === 2 && tempSplit[0] >= 1) {
$ITools.handleToast('error', $i18n.tr('valid', 'fileSizeLimit'))
return
}
window.location.href = $(el).attr("data-href")
}
function handleShare() {
$('#toShare').modal('show')
}
function shareLink() {
$('#toCopyShareLink').modal('show')
}
function escapePound(str){
let res=""
res=str.replaceAll("%","%25")
res=res.replaceAll("#","%23")
res=res.replaceAll(" ","%20")
res=res.replaceAll("?","%3F")
return res
}
</script>
<script src="/minifyjs/auth.js?v=6ab3d3a502725c978d285e96b831c280"></script>
<script src="/minifyjs/repo_home.js?v=6ab3d3a502725c978d285e96b831c280"></script>

+ 3698
- 0
clsids.cpp
File diff suppressed because it is too large
View File


Loading…
Cancel
Save