Commit 64f0b939 lujingkang

init

0 个父辈
正在显示 包含 550 行增加0 行删除
# Miscellaneous
*.class
*.log
*.pyc
*.swp
.DS_Store
.atom/
.buildlog/
.history
.svn/
migrate_working_dir/
# IntelliJ related
*.iml
*.ipr
*.iws
.idea/
# The .vscode folder contains launch configuration and tasks you configure in
# VS Code which you may wish to be included in version control, so this line
# is commented out by default.
#.vscode/
# Flutter/Dart/Pub related
**/doc/api/
**/ios/Flutter/.last_build_id
.dart_tool/
.flutter-plugins
.flutter-plugins-dependencies
.pub-cache/
.pub/
/build/
# Symbolication related
app.*.symbols
# Obfuscation related
app.*.map.json
# Android Studio will place build artifacts here
/android/app/debug
/android/app/profile
/android/app/release
# This file tracks properties of this Flutter project.
# Used by Flutter tool to assess capabilities and perform upgrades etc.
#
# This file should be version controlled and should not be manually edited.
version:
revision: "bae5e49bc2a867403c43b2aae2de8f8c33b037e4"
channel: "stable"
project_type: app
# Tracks metadata for the flutter migrate command
migration:
platforms:
- platform: root
create_revision: bae5e49bc2a867403c43b2aae2de8f8c33b037e4
base_revision: bae5e49bc2a867403c43b2aae2de8f8c33b037e4
- platform: android
create_revision: bae5e49bc2a867403c43b2aae2de8f8c33b037e4
base_revision: bae5e49bc2a867403c43b2aae2de8f8c33b037e4
- platform: ios
create_revision: bae5e49bc2a867403c43b2aae2de8f8c33b037e4
base_revision: bae5e49bc2a867403c43b2aae2de8f8c33b037e4
- platform: linux
create_revision: bae5e49bc2a867403c43b2aae2de8f8c33b037e4
base_revision: bae5e49bc2a867403c43b2aae2de8f8c33b037e4
- platform: macos
create_revision: bae5e49bc2a867403c43b2aae2de8f8c33b037e4
base_revision: bae5e49bc2a867403c43b2aae2de8f8c33b037e4
- platform: web
create_revision: bae5e49bc2a867403c43b2aae2de8f8c33b037e4
base_revision: bae5e49bc2a867403c43b2aae2de8f8c33b037e4
- platform: windows
create_revision: bae5e49bc2a867403c43b2aae2de8f8c33b037e4
base_revision: bae5e49bc2a867403c43b2aae2de8f8c33b037e4
# User provided section
# List of Local paths (relative to this file) that should be
# ignored by the migrate tool.
#
# Files that are not part of the templates will be ignored by default.
unmanaged_files:
- 'lib/main.dart'
- 'ios/Runner.xcodeproj/project.pbxproj'
{
"editor.codeActionsOnSave": {
"source.fixAll": "always"
}
}
# flutter_seaworld
A new Flutter project.
include: package:flutter_lints/flutter.yaml
gradle-wrapper.jar
/.gradle
/captures/
/gradlew
/gradlew.bat
/local.properties
GeneratedPluginRegistrant.java
# Remember to never publicly share your keystore.
# See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app
key.properties
**/*.keystore
**/*.jks
plugins {
id "com.android.application"
id "kotlin-android"
id "dev.flutter.flutter-gradle-plugin"
}
def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) {
localPropertiesFile.withReader('UTF-8') { reader ->
localProperties.load(reader)
}
}
def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
flutterVersionCode = '1'
}
def flutterVersionName = localProperties.getProperty('flutter.versionName')
if (flutterVersionName == null) {
flutterVersionName = '1.0'
}
android {
namespace "com.example.flutter_seaworld"
compileSdk flutter.compileSdkVersion
ndkVersion flutter.ndkVersion
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = '1.8'
}
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
}
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "com.example.flutter_seaworld"
// You can update the following values to match your application needs.
// For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration.
minSdkVersion flutter.minSdkVersion
targetSdkVersion flutter.targetSdkVersion
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
}
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.debug
}
}
}
flutter {
source '../..'
}
dependencies {}
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<!-- The INTERNET permission is required for development. Specifically,
the Flutter tool needs it to communicate with the running application
to allow setting breakpoints, to provide hot reload, etc.
-->
<uses-permission android:name="android.permission.INTERNET"/>
</manifest>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<application
android:label="flutter_seaworld"
android:name="${applicationName}"
android:icon="@mipmap/ic_launcher">
<activity
android:name=".MainActivity"
android:exported="true"
android:launchMode="singleTop"
android:theme="@style/LaunchTheme"
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
android:hardwareAccelerated="true"
android:windowSoftInputMode="adjustResize">
<!-- Specifies an Android theme to apply to this Activity as soon as
the Android process has started. This theme is visible to the user
while the Flutter UI initializes. After that, this theme continues
to determine the Window background behind the Flutter UI. -->
<meta-data
android:name="io.flutter.embedding.android.NormalTheme"
android:resource="@style/NormalTheme"
/>
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<!-- Don't delete the meta-data below.
This is used by the Flutter tool to generate GeneratedPluginRegistrant.java -->
<meta-data
android:name="flutterEmbedding"
android:value="2" />
</application>
<!-- Required to query activities that can process text, see:
https://developer.android.com/training/package-visibility?hl=en and
https://developer.android.com/reference/android/content/Intent#ACTION_PROCESS_TEXT.
In particular, this is used by the Flutter engine in io.flutter.plugin.text.ProcessTextPlugin. -->
<queries>
<intent>
<action android:name="android.intent.action.PROCESS_TEXT"/>
<data android:mimeType="text/plain"/>
</intent>
</queries>
</manifest>
package com.example.flutter_seaworld
import io.flutter.embedding.android.FlutterActivity
class MainActivity: FlutterActivity()
<?xml version="1.0" encoding="utf-8"?>
<!-- Modify this file to customize your launch splash screen -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="?android:colorBackground" />
<!-- You can insert your own image assets here -->
<!-- <item>
<bitmap
android:gravity="center"
android:src="@mipmap/launch_image" />
</item> -->
</layer-list>
<?xml version="1.0" encoding="utf-8"?>
<!-- Modify this file to customize your launch splash screen -->
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@android:color/white" />
<!-- You can insert your own image assets here -->
<!-- <item>
<bitmap
android:gravity="center"
android:src="@mipmap/launch_image" />
</item> -->
</layer-list>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is on -->
<style name="LaunchTheme" parent="@android:style/Theme.Black.NoTitleBar">
<!-- Show a splash screen on the activity. Automatically removed when
the Flutter engine draws its first frame -->
<item name="android:windowBackground">@drawable/launch_background</item>
</style>
<!-- Theme applied to the Android Window as soon as the process has started.
This theme determines the color of the Android Window while your
Flutter UI initializes, as well as behind your Flutter UI while its
running.
This Theme is only used starting with V2 of Flutter's Android embedding. -->
<style name="NormalTheme" parent="@android:style/Theme.Black.NoTitleBar">
<item name="android:windowBackground">?android:colorBackground</item>
</style>
</resources>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is off -->
<style name="LaunchTheme" parent="@android:style/Theme.Light.NoTitleBar">
<!-- Show a splash screen on the activity. Automatically removed when
the Flutter engine draws its first frame -->
<item name="android:windowBackground">@drawable/launch_background</item>
</style>
<!-- Theme applied to the Android Window as soon as the process has started.
This theme determines the color of the Android Window while your
Flutter UI initializes, as well as behind your Flutter UI while its
running.
This Theme is only used starting with V2 of Flutter's Android embedding. -->
<style name="NormalTheme" parent="@android:style/Theme.Light.NoTitleBar">
<item name="android:windowBackground">?android:colorBackground</item>
</style>
</resources>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<!-- The INTERNET permission is required for development. Specifically,
the Flutter tool needs it to communicate with the running application
to allow setting breakpoints, to provide hot reload, etc.
-->
<uses-permission android:name="android.permission.INTERNET"/>
</manifest>
allprojects {
repositories {
google()
mavenCentral()
}
}
rootProject.buildDir = '../build'
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
project.evaluationDependsOn(':app')
}
tasks.register("clean", Delete) {
delete rootProject.buildDir
}
org.gradle.jvmargs=-Xmx4G
android.useAndroidX=true
android.enableJetifier=true
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.3-all.zip
pluginManagement {
def flutterSdkPath = {
def properties = new Properties()
file("local.properties").withInputStream { properties.load(it) }
def flutterSdkPath = properties.getProperty("flutter.sdk")
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
return flutterSdkPath
}
settings.ext.flutterSdkPath = flutterSdkPath()
includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle")
repositories {
google()
mavenCentral()
gradlePluginPortal()
}
}
plugins {
id "dev.flutter.flutter-plugin-loader" version "1.0.0"
id "com.android.application" version "7.3.0" apply false
id "org.jetbrains.kotlin.android" version "1.7.10" apply false
}
include ":app"
此文件的差异太大,无法显示。
body,html{position:relative;height:100%;width:100%}*{margin:0;padding:0;list-style:none}body,html{overflow:hidden;margin:0 auto;padding:0;font-size:32px;font-family:Tahoma,Arial,'Microsoft Yahei'}body,input{font-size:12px}body{color:#000}button,input{outline:0}input{display:inline-block;height:28px;cursor:text;line-height:1.5;color:#666;background-color:#fff;background-image:none;border:1px solid #d9d9d9;border-radius:2px}#fengMap,#fengMap001,#fengMap002,#fengMap003,#fengMap004,#fengMap005,#fengMape5,#fengMape6,#fengMape7{position:relative;width:100%;height:100%;z-index:1;overflow:hidden}.map-loading-container{position:absolute;bottom:0;top:0;z-index:99;width:100%}.map-loading{position:absolute;height:40px;line-height:40px;top:50%;left:50%;margin-left:-20px;margin-top:-20px}.loadingImg{display:block;float:left;margin:auto;width:40px;height:40px;background:url(../img/loading.png) 0 100% no-repeat;background-size:40px 80px;-webkit-transition-property:-webkit-transform;-webkit-transform:rotate(0) translateZ(0);-webkit-transition-duration:0s;-webkit-animation-name:loading;-webkit-animation-duration:3s;-webkit-animation-iteration-count:infinite;-webkit-animation-timing-function:linear}.iframe,.iframe_block{position:absolute;top:0;z-index:19;width:100%;height:100%;left:0}.navigation_input,.search input{font-family:inherit;font-weight:400;background-color:#fff;font-size:14px}.iframe{overflow:hidden;display:none}.iframe_block{display:block}.operatingGroup,.operatingGroup2{right:10px;top:20px;position:absolute}.operatingGroup{z-index:1;width:40px}.operatingGroup2{z-index:99;width:40px}.operatingGroup ul,.operatingGroup2 ul{width:40px;bottom:10px}.operatingGroup ul li,.operatingGroup2 ul li{width:40px;height:40px;line-height:40px;border-radius:3px;border:1px solid #e6e6e6;padding:.2rem;box-sizing:border-box;text-align:center;cursor:pointer;background:#fff;box-shadow:1px 1px 1px #bdbdbd;margin-bottom:6px}.operatingGroup ul li img,.operatingGroup2 ul li img{width:100%;height:100%;vertical-align:top}.search{position:absolute;top:2%;left:0;right:0;width:98%;margin:0 auto;z-index:99}#searchList,.navigation,.search input{width:100%;color:#3d4145;position:absolute}.search input{box-sizing:border-box;height:40px;display:block;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:4px;padding:10px;border:1px solid #E2DADA;text-indent:1.5em}.search .search_icon{position:absolute;top:.35rem;left:.3rem;z-index:99;vertical-align:top;cursor:pointer}#searchList{top:40px;left:0;z-index:99;height:auto;max-height:100px;background:#fff;overflow:auto;overflow-x:hidden;white-space:normal;text-indent:1em;border-radius:4px;line-height:32px;font-family:inherit;font-size:14px;font-weight:400;cursor:pointer}.navigation{bottom:0;height:0;margin:0 auto;background:#fff;transition:height .5s;-moz-transition:height .5s;-webkit-transition:height .5s;-o-transition:height .5s;z-index:99}.navigation .navigation_cont{width:95%;margin:0 auto;padding:10px 0;overflow:hidden}.fade_in{height:120px}.fade_out{height:0}.navigation .lf{width:90%;float:left}.navigation .rg{width:10%;float:left;margin-top:26px;overflow:hidden}.navigation .lf .navigation_icon{width:30px;height:30px;margin-bottom:0;overflow:hidden}.navigation_input{width:95%;height:35px;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:#3d4145;border-radius:none;padding:4px;border-bottom:1px solid #E2DADA;margin-left:10px;vertical-align:bottom}.lf p:nth-child(1){margin-bottom:10px}.navigation .lf .navigation_icon img{width:30px;height:30px;vertical-align:middle}.navigation .rg img{width:56px;height:56px;cursor:pointer}.navigationLi{position:absolute;bottom:120px;background:#fff;height:auto;width:100%;max-height:150px;overflow:auto;z-index:99}.navigationLi li{height:24px;line-height:24px;list-style:none;padding:5px 0;font-size:14px;color:#969696;width:95%;margin:0 auto;cursor:pointer;text-indent:40px;display:block}.navigationLi li img{vertical-align:middle;padding-right:10px}.alertPopbg{width:100%;height:100%;position:fixed;left:0;top:0;background:#000;opacity:.5;z-index:100}.alertContent,.alertContent a{left:5%;font-family:simHei;position:absolute}.alertContent{width:90%;top:12%;height:120px;background:#fff;z-index:1000;border-radius:8px;font-size:1.2em;padding:5%;box-shadow:2px 2px 8px #000}.alertContent a{width:40%;bottom:10%;height:38px;line-height:40px;color:#fff;text-align:center;font-size:1em;background:#f94e20;border-radius:4px}.alertContent .alertbtn{left:55%;background:#f94e20}.alertContent .dangerAlert{background:#F47F30;width:90%;left:5%}.modal-dialog.bottom{position:absolute;bottom:50px;left:0;right:0;margin:auto}@media screen and (max-width:1400px) and (min-width:779px){.navigation_input{width:90%;height:37px;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;color:#3d4145;font-size:14px;font-weight:400;padding:4px;background-color:#fff;border-bottom:1px solid #E2DADA;margin-left:10px;border-radius:0}.navigation .lf{width:75%;float:left}.navigation .rg{width:25%;float:left;margin-top:28px;overflow:hidden}.navigation .rg img{width:56px;height:56px;cursor:pointer}.cardInfo .close{width:5%;text-align:right;float:right;padding-right:1rem;font-size:30px;cursor:pointer;color:#5f646e}.cardInfo .media-list{width:80%;float:left;padding-left:.6rem;font-size:14px;margin:20px 0}}@media screen and (max-width:780px) and (min-width:600px){.navigation_input{width:90%;height:37px;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;color:#3d4145;font-size:14px;font-weight:400;padding:4px;background-color:#fff;border-bottom:1px solid #E2DADA;margin-left:10px;border-radius:0}.navigation .lf{width:80%;float:left}.navigation .rg{width:20%;float:left;margin-top:28px;overflow:hidden}.navigation .rg img{width:56px;height:56px;cursor:pointer}.cardInfo .close{width:5%;text-align:right;float:right;padding-right:1rem;font-size:30px;cursor:pointer;color:#5f646e}.cardInfo .media-list{width:80%;float:left;padding-left:.6rem;font-size:14px;margin:20px 0}#btnBack{position:absolute;top:0;width:100px;height:43px;cursor:pointer;background:url(../img/back_map.png) no-repeat;background-size:100%}.fade_in{height:106px}.navigationLi{position:absolute;bottom:97px;background:#fff;height:auto;width:100%;max-height:150px;overflow:auto;z-index:999}.modal-dialog{width:600px}}@media screen and (max-width:599px) and (min-width:360px){.search{position:absolute;top:2%;left:0;right:0;width:98%;margin:0 auto;z-index:99}.navigation_input{width:75%;height:35px;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;color:#3d4145;font-size:14px;font-weight:400;padding:4px;background-color:#fff;border-bottom:1px solid #E2DADA;margin-left:10px;border-radius:0}.navigation .lf{width:80%;float:left}.navigation .rg{width:20%;float:left;margin-top:26px;overflow:hidden}.navigation .rg img{width:48px;height:48px;cursor:pointer}.cardInfo .close{width:5%;text-align:right;float:right;padding-right:1rem;font-size:30px;cursor:pointer;color:#5f646e}.cardInfo .media-list{width:80%;float:left;padding-left:.6rem;font-size:14px;margin:20px 0}.fade_in{height:100px}.navigationLi{position:absolute;bottom:90px;background:#fff;height:auto;width:100%;max-height:150px;overflow:auto;z-index:999}}@media screen and (max-width:359px) and (min-width:320px){.navigation .lf{width:70%;float:left}.navigation .lf .navigation_icon img{width:30px;height:30px;vertical-align:middle}.navigation_input{border-radius:0;width:70%;height:35px;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;color:#3d4145;font-size:14px;font-weight:400;padding:4px;background-color:#fff;border-bottom:1px solid #E2DADA;margin-left:10px}.lf p:nth-child(1){margin:0}.navigation .rg{width:30%;float:left;margin-top:22px;overflow:hidden}.navigation .rg img{width:42px;height:42px;cursor:pointer}.cardInfo .close{width:5%;text-align:right;float:right;padding-right:1rem;font-size:30px;cursor:pointer;color:#5f646e}.cardInfo .media-list{width:70%;float:left;padding-left:.6rem;font-size:14px;margin:20px 0}.fade_in{height:85px}.navigationLi{position:absolute;bottom:75px;background:#fff;height:auto;width:100%;max-height:150px;overflow:auto;z-index:999;padding-bottom:6px}}
\ No newline at end of file
html, body {
margin: 0;
height: 100%;
overflow: hidden;
font-family: "Microsoft YaHei", 微软雅黑, "MicrosoftJhengHei", 华文细黑, STHeiti, MingLiu
}
#fengMap {
width: 100%;
height: 100%;
position: absolute;
overflow: hidden;
outline:none;
}
.pick-model {
position: absolute;
top: 2%;
left: calc(50% - 200px);
background: rgba(0,0,0,.5);
width: 380px;
padding: 10px;
border-radius: 4px;
display: none;
color: #fff;
}
#naviPrompt {
position: absolute;
left: 2%;
bottom: 15%;
padding: 10px 25px;
background: rgba(255, 255, 255, .5);
border-radius: 4px;
}
#prompt {
position: absolute;
left: 2%;
bottom: 2%;
padding: 10px 25px;
background: rgba(255, 255, 255, .5);
border-radius: 4px;
}
#path_info {
position: absolute;
left: 0;
bottom: 0;
width: 100%;
background: rgba(255, 255, 255, .3);
max-height: 150px;
overflow: auto;
text-indent: 2em;
padding: 10px 0;
}
#path_info h4 {
font-weight: 500;
}
#path_info .glyphicon {
float: right;
right: 2%;
}
#path_info .title {
position: absolute;
width: 30px;
float: right;
right: 0px;
cursor: pointer;
}
#path_info p {
cursor: pointer;
}
#path_info ul {
padding: 10px 0;
width: auto;
}
#path_info ul li {
line-height: 24px;
list-style: none;
cursor: pointer;
}
#description {
position: absolute;
left: 2%;
top: 130px;
padding: 10px 25px;
background: rgba(255, 255, 255, .5);
border-radius: 4px;
}
#message {
position: absolute;
top: 0;
width: 100%;
}
#setting {
position: absolute;
left: 2%;
top: 360px
}
.panel-title {
font-size: 15px;
}
.searchList {
margin: 0;
padding: 0;
max-height: 300px;
overflow: auto;
background: #fff;
border-radius: 4px;
}
.searchList li {
list-style: none;
padding: 5px 13px;
cursor: pointer;
}
.searchList li:hover {
background: #d9edf7;
}
.searchList li:first-child, li:last-child:hover {
border-radius: 4px;
}
.button-enter {
width: 48px;
height: 48px;
border-radius: 10px;
position: fixed;
top: 474px;
right: 15px;
z-index: 999;
display: flex;
background: #fff;
justify-content: center;
align-items: center;
outline: 1px solid #eee;
cursor: pointer;
transition: all .2s;
}
.button-exit {
width: 48px;
height: 48px;
border-radius: 10px;
position: fixed;
top: 474px;
right: 15px;
z-index: 999;
display: flex;
background: #fff;
justify-content: center;
align-items: center;
outline: 1px solid #eee;
cursor: pointer;
transition: all .2s;
}
.demotoolBarDiv {
position: absolute;
top: 10px;
left: 41%;
height: 34px;
z-index: 200;
}
.demotoolBarDiv>.democontrol {
display: flex;
align-items: center;
height: 100%;
padding-left: 20px;
}
.demolayui-btn {
color: #333;
background-color: #fff;
border-color: #ccc;
line-height: 32px;
padding: 3px 6px;
}
此文件类型无法预览
此文件类型无法预览
此文件的差异太大,无法显示。
此文件的差异太大,无法显示。
此文件的差异太大,无法显示。
此文件的差异太大,无法显示。
此文件的差异太大,无法显示。
此文件的差异太大,无法显示。
此文件的差异太大,无法显示。
此文件的差异太大,无法显示。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件的差异被折叠, 点击展开。
此文件类型无法预览
此文件的差异被折叠, 点击展开。
Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
请先完成此消息的编辑!