初始化仓库管理操作端项目

This commit is contained in:
g82tt
2025-10-12 17:04:18 +08:00
commit 088ec2f76a
179 changed files with 18850 additions and 0 deletions

5
.env.development Normal file
View File

@@ -0,0 +1,5 @@
# 开发环境配置文件
# 这个文件中的变量只在开发环境生效npm run dev
# API基础URL
VITE_API_BASE_URL=http://localhost:8080/api

5
.env.production Normal file
View File

@@ -0,0 +1,5 @@
# 生产环境配置文件
# 这个文件中的变量只在生产环境生效npm run build
# API基础URL
VITE_API_BASE_URL=https://api.your-production-domain.com/api

77
.gitignore vendored Normal file
View File

@@ -0,0 +1,77 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
node_modules
dist
dist-ssr
*.local
# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
# Environment variables
.env
.env.local
.env.development.local
.env.test.local
.env.production.local
# Build files
*.tsbuildinfo
# Coverage directory used by tools like istanbul
coverage
*.lcov
# nyc test coverage
.nyc_output
# Dependency directories
jspm_packages/
# Optional npm cache directory
.npm
# Optional eslint cache
.eslintcache
# Optional stylelint cache
.stylelintcache
# Yarn Integrity file
.yarn-integrity
# parcel-bundler cache (https://parceljs.org/)
.cache
.parcel-cache
# Next.js build output
.next
out
# Nuxt.js build / generate output
.nuxt
dist
# Storybook build outputs
.out
.storybook-out
storybook-static
# Temporary folders
tmp/
temp/

117
README.md Normal file
View File

@@ -0,0 +1,117 @@
# 仓库管理操作端
## 项目简介
仓库管理操作端是一个基于Vue 3构建的现代化仓库管理系统前端界面提供钥匙管理、巡检管理、车辆管理、环境监控等多项功能采用空军蓝主题设计结合3D地图展示实现直观高效的仓库管理体验。
## 技术栈
- **前端框架**: Vue 3.4.21
- **构建工具**: Vite 5.2.0
- **UI组件库**: Element Plus 2.7.0
- **路由管理**: Vue Router 4.3.0
- **状态管理**: Pinia 2.1.7
- **样式框架**: Tailwind CSS 3.4.3
- **HTTP客户端**: Axios 1.6.8
- **图标库**: Element Plus Icons Vue 2.3.2
## 项目结构
```
├── src/
│ ├── App.vue # 应用入口组件
│ ├── assets/ # 静态资源
│ ├── components/ # 公共组件
│ ├── config/ # 配置文件
│ ├── hooks/ # 自定义hooks
│ ├── main.js # 应用入口文件
│ ├── router/ # 路由配置
│ ├── stores/ # 状态管理
│ └── views/ # 页面组件
├── public/ # 静态资源
├── vite.config.js # Vite配置
├── tailwind.config.js # Tailwind CSS配置
└── package.json # 项目依赖
```
## 已实现功能
- **项目基础框架**: 搭建完整的Vue 3应用结构
- **登录模块**: 实现用户登录功能
- **钥匙管理**: 开发钥匙柜及钥匙状态展示功能
- **地图功能**: 集成地图展示和监控组件
- **布局组件**: 创建统一的应用布局框架,包含侧边栏、顶栏和内容区域
- **配置管理**: 完成项目配置文件设置
## 未来规划功能
在第一个大版本中计划实现以下功能模块:
### 1. 钥匙管理
- **钥匙信息管理**: 管理仓库内所有钥匙的详细信息(已部分实现)
- **钥匙使用申请**: 提供钥匙使用申请流程和审批功能
- **钥匙取用记录**: 记录钥匙的取用和归还历史
### 2. 巡检管理
- **巡检路径管理**: 配置和管理仓库巡检路线
- **巡检排班管理**: 安排巡检人员和巡检时间
- **巡检记录**: 记录和查询巡检结果
### 3. 车辆管理
- **车辆信息管理**: 管理仓库内所有车辆的基本信息
- **车辆使用申请**: 提供车辆使用申请和审批流程
- **车辆出入库记录**: 记录车辆出入库情况
- **车辆出入营区记录**: 记录车辆出入营区的详细信息
### 4. 环境监控
- **环境变量管理**: 监控和管理仓库环境参数(温度、湿度、门禁等)
### 5. 信息管理
- **特情处置预案**: 管理和展示各种特殊情况的处置预案
- **安全提示**: 发布和管理安全提示信息
### 6. 访客管理
- **来访人员管理**: 登记和管理来访人员信息
- **来访车辆管理**: 登记和管理来访车辆信息
### 7. 营区管理
- **岗位职责**: 展示和管理各岗位的职责说明
- **人员区域管理**: 管理人员的活动区域和权限
### 8. 无人机管理
- **无人机管理**: 管理无人机设备和飞行任务
## 界面设计
- **主题风格**: 采用空军蓝为主色调,营造专业、现代的界面风格
- **布局模式**: 侧边栏菜单 + 右侧抽屉式内容区域 + 底层3D地图展示
- **交互体验**: 支持菜单折叠、平滑过渡动画、响应式设计
- **视觉效果**: 运用半透明背景、模糊效果、渐变色彩提升视觉层次感
## 开发指南
### 安装依赖
```bash
npm install
```
### 开发模式
```bash
npm run dev
```
### 构建生产版本
```bash
npm run build
```
### 预览生产版本
```bash
npm run preview
```
## 环境配置
- **开发环境**: .env.development
- **生产环境**: .env.production
## 浏览器支持
- Chrome (推荐)
- Firefox
- Safari
- Edge
## License
MIT

25
index.html Normal file
View File

@@ -0,0 +1,25 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>仓库管理系统</title>
<!-- 引入外部配置文件 - 这个文件不会被打包,可以在部署后修改 -->
<script src="/config.js"></script>
<link rel="stylesheet" href="./fonts/iconfont.css" />
<script>
window.$config = {
api: "./api.vgomap.com/",
offline: true,
mapTheme: "home",
tenantId: "1958120048849719296",
};
</script>
<script src="./www.wxb3d.com/saas/sdk/v2.0/VgoMap.umd.js"></script>
</head>
<body>
<div id="app"></div>
<script type="module" src="/src/main.js"></script>
</body>
</html>

3247
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

26
package.json Normal file
View File

@@ -0,0 +1,26 @@
{
"name": "warehouse-management",
"private": true,
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "vite",
"build": "vite build",
"preview": "vite preview"
},
"dependencies": {
"@element-plus/icons-vue": "^2.3.2",
"axios": "^1.6.8",
"element-plus": "^2.7.0",
"pinia": "^2.1.7",
"vue": "^3.4.21",
"vue-router": "^4.3.0"
},
"devDependencies": {
"@vitejs/plugin-vue": "^5.0.4",
"autoprefixer": "^10.4.19",
"postcss": "^8.4.38",
"tailwindcss": "^3.4.3",
"vite": "^5.2.0"
}
}

6
postcss.config.js Normal file
View File

@@ -0,0 +1,6 @@
export default {
plugins: {
tailwindcss: {},
autoprefixer: {},
},
}

View File

@@ -0,0 +1 @@
{"code":200,"data":{"bodyParts":[],"symptoms":[],"symptomCauses":[]},"message":null}

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
{"code":200,"data":{"id":"1958120048849719296","name":"镔鑫钢铁","themeId":1,"cover":"vgo-1258766855.cos.ap-nanjing.myqcloud.com/saas/general/2cec3fcb-ae54-4c62-9fbe-2e0e856ad64c.jpg","industry":"园区","center":[119.289706,35.094287],"address":"江苏省连云港市赣榆区柘汪镇九号路","remark":"江苏省连云港市赣榆区柘汪镇镔鑫钢铁集团","creationTime":"2025-08-20T18:52:54.4150509","templateId":"d6aee0aa-0c20-4ded-2cf3-08ddcf3ee146","needLogin":true,"other":"{\"theme\":\"\"}","version":null,"tenantId":"1958108977858482176"},"message":null}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
{"code":200,"data":[{"name":"出入口","color":"#5aa787","icon":null,"img":"vgo-1258766855.cos.ap-nanjing.myqcloud.com/saas/general/9fc92e30-a68e-4d21-bed5-bd3713a45788.png","activeImg":"","sortNo":0,"customerUserId":606,"language":"{}","id":214},{"name":"停车场","color":"#5a7fa7","icon":null,"img":"vgo-1258766855.cos.ap-nanjing.myqcloud.com/saas/general/808e7440-1773-4e44-b214-3057b32249ac.png","activeImg":"","sortNo":0,"customerUserId":606,"language":"{}","id":215},{"name":"原料","color":"#685AA0","icon":null,"img":"vgo-1258766855.cos.ap-nanjing.myqcloud.com/saas/general/8b14c5a5-cf5e-41c1-84f0-bd59774ea8c6.png","activeImg":"","sortNo":0,"customerUserId":606,"language":null,"id":217},{"name":"成品","color":"#A0685A","icon":null,"img":"vgo-1258766855.cos.ap-nanjing.myqcloud.com/saas/general/a18fb3c1-55bc-4216-9da5-d4fb53a81529.png","activeImg":"","sortNo":0,"customerUserId":606,"language":null,"id":218},{"name":"废钢","color":"#579FA2","icon":null,"img":"vgo-1258766855.cos.ap-nanjing.myqcloud.com/saas/general/0197630c-067c-4b09-8bbf-51a997c0c136.png","activeImg":"","sortNo":0,"customerUserId":606,"language":null,"id":219}],"message":null}

15
public/config.js Normal file
View File

@@ -0,0 +1,15 @@
// 外部配置文件 - 这个文件不会被打包到代码中,可以在部署后修改
window.APP_CONFIG = {
// API配置
api: {
baseUrl: 'https://api.your-production-domain.com/api',
timeout: 30000,
retryCount: 3,
retryDelay: 1000
},
// 其他可能需要在运行时修改的配置项
app: {
name: '仓库管理操作端',
version: '1.0.0'
}
};

539
public/fonts/demo.css Normal file
View File

@@ -0,0 +1,539 @@
/* Logo 字体 */
@font-face {
font-family: "iconfont logo";
src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834');
src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834#iefix') format('embedded-opentype'),
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.woff?t=1545807318834') format('woff'),
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.ttf?t=1545807318834') format('truetype'),
url('https://at.alicdn.com/t/font_985780_km7mi63cihi.svg?t=1545807318834#iconfont') format('svg');
}
.logo {
font-family: "iconfont logo";
font-size: 160px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
/* tabs */
.nav-tabs {
position: relative;
}
.nav-tabs .nav-more {
position: absolute;
right: 0;
bottom: 0;
height: 42px;
line-height: 42px;
color: #666;
}
#tabs {
border-bottom: 1px solid #eee;
}
#tabs li {
cursor: pointer;
width: 100px;
height: 40px;
line-height: 40px;
text-align: center;
font-size: 16px;
border-bottom: 2px solid transparent;
position: relative;
z-index: 1;
margin-bottom: -1px;
color: #666;
}
#tabs .active {
border-bottom-color: #f00;
color: #222;
}
.tab-container .content {
display: none;
}
/* 页面布局 */
.main {
padding: 30px 100px;
width: 960px;
margin: 0 auto;
}
.main .logo {
color: #333;
text-align: left;
margin-bottom: 30px;
line-height: 1;
height: 110px;
margin-top: -50px;
overflow: hidden;
*zoom: 1;
}
.main .logo a {
font-size: 160px;
color: #333;
}
.helps {
margin-top: 40px;
}
.helps pre {
padding: 20px;
margin: 10px 0;
border: solid 1px #e7e1cd;
background-color: #fffdef;
overflow: auto;
}
.icon_lists {
width: 100% !important;
overflow: hidden;
*zoom: 1;
}
.icon_lists li {
width: 100px;
margin-bottom: 10px;
margin-right: 20px;
text-align: center;
list-style: none !important;
cursor: default;
}
.icon_lists li .code-name {
line-height: 1.2;
}
.icon_lists .icon {
display: block;
height: 100px;
line-height: 100px;
font-size: 42px;
margin: 10px auto;
color: #333;
-webkit-transition: font-size 0.25s linear, width 0.25s linear;
-moz-transition: font-size 0.25s linear, width 0.25s linear;
transition: font-size 0.25s linear, width 0.25s linear;
}
.icon_lists .icon:hover {
font-size: 100px;
}
.icon_lists .svg-icon {
/* 通过设置 font-size 来改变图标大小 */
width: 1em;
/* 图标和文字相邻时,垂直对齐 */
vertical-align: -0.15em;
/* 通过设置 color 来改变 SVG 的颜色/fill */
fill: currentColor;
/* path 和 stroke 溢出 viewBox 部分在 IE 下会显示
normalize.css 中也包含这行 */
overflow: hidden;
}
.icon_lists li .name,
.icon_lists li .code-name {
color: #666;
}
/* markdown 样式 */
.markdown {
color: #666;
font-size: 14px;
line-height: 1.8;
}
.highlight {
line-height: 1.5;
}
.markdown img {
vertical-align: middle;
max-width: 100%;
}
.markdown h1 {
color: #404040;
font-weight: 500;
line-height: 40px;
margin-bottom: 24px;
}
.markdown h2,
.markdown h3,
.markdown h4,
.markdown h5,
.markdown h6 {
color: #404040;
margin: 1.6em 0 0.6em 0;
font-weight: 500;
clear: both;
}
.markdown h1 {
font-size: 28px;
}
.markdown h2 {
font-size: 22px;
}
.markdown h3 {
font-size: 16px;
}
.markdown h4 {
font-size: 14px;
}
.markdown h5 {
font-size: 12px;
}
.markdown h6 {
font-size: 12px;
}
.markdown hr {
height: 1px;
border: 0;
background: #e9e9e9;
margin: 16px 0;
clear: both;
}
.markdown p {
margin: 1em 0;
}
.markdown>p,
.markdown>blockquote,
.markdown>.highlight,
.markdown>ol,
.markdown>ul {
width: 80%;
}
.markdown ul>li {
list-style: circle;
}
.markdown>ul li,
.markdown blockquote ul>li {
margin-left: 20px;
padding-left: 4px;
}
.markdown>ul li p,
.markdown>ol li p {
margin: 0.6em 0;
}
.markdown ol>li {
list-style: decimal;
}
.markdown>ol li,
.markdown blockquote ol>li {
margin-left: 20px;
padding-left: 4px;
}
.markdown code {
margin: 0 3px;
padding: 0 5px;
background: #eee;
border-radius: 3px;
}
.markdown strong,
.markdown b {
font-weight: 600;
}
.markdown>table {
border-collapse: collapse;
border-spacing: 0px;
empty-cells: show;
border: 1px solid #e9e9e9;
width: 95%;
margin-bottom: 24px;
}
.markdown>table th {
white-space: nowrap;
color: #333;
font-weight: 600;
}
.markdown>table th,
.markdown>table td {
border: 1px solid #e9e9e9;
padding: 8px 16px;
text-align: left;
}
.markdown>table th {
background: #F7F7F7;
}
.markdown blockquote {
font-size: 90%;
color: #999;
border-left: 4px solid #e9e9e9;
padding-left: 0.8em;
margin: 1em 0;
}
.markdown blockquote p {
margin: 0;
}
.markdown .anchor {
opacity: 0;
transition: opacity 0.3s ease;
margin-left: 8px;
}
.markdown .waiting {
color: #ccc;
}
.markdown h1:hover .anchor,
.markdown h2:hover .anchor,
.markdown h3:hover .anchor,
.markdown h4:hover .anchor,
.markdown h5:hover .anchor,
.markdown h6:hover .anchor {
opacity: 1;
display: inline-block;
}
.markdown>br,
.markdown>p>br {
clear: both;
}
.hljs {
display: block;
background: white;
padding: 0.5em;
color: #333333;
overflow-x: auto;
}
.hljs-comment,
.hljs-meta {
color: #969896;
}
.hljs-string,
.hljs-variable,
.hljs-template-variable,
.hljs-strong,
.hljs-emphasis,
.hljs-quote {
color: #df5000;
}
.hljs-keyword,
.hljs-selector-tag,
.hljs-type {
color: #a71d5d;
}
.hljs-literal,
.hljs-symbol,
.hljs-bullet,
.hljs-attribute {
color: #0086b3;
}
.hljs-section,
.hljs-name {
color: #63a35c;
}
.hljs-tag {
color: #333333;
}
.hljs-title,
.hljs-attr,
.hljs-selector-id,
.hljs-selector-class,
.hljs-selector-attr,
.hljs-selector-pseudo {
color: #795da3;
}
.hljs-addition {
color: #55a532;
background-color: #eaffea;
}
.hljs-deletion {
color: #bd2c00;
background-color: #ffecec;
}
.hljs-link {
text-decoration: underline;
}
/* 代码高亮 */
/* PrismJS 1.15.0
https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript */
/**
* prism.js default theme for JavaScript, CSS and HTML
* Based on dabblet (http://dabblet.com)
* @author Lea Verou
*/
code[class*="language-"],
pre[class*="language-"] {
color: black;
background: none;
text-shadow: 0 1px white;
font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
text-align: left;
white-space: pre;
word-spacing: normal;
word-break: normal;
word-wrap: normal;
line-height: 1.5;
-moz-tab-size: 4;
-o-tab-size: 4;
tab-size: 4;
-webkit-hyphens: none;
-moz-hyphens: none;
-ms-hyphens: none;
hyphens: none;
}
pre[class*="language-"]::-moz-selection,
pre[class*="language-"] ::-moz-selection,
code[class*="language-"]::-moz-selection,
code[class*="language-"] ::-moz-selection {
text-shadow: none;
background: #b3d4fc;
}
pre[class*="language-"]::selection,
pre[class*="language-"] ::selection,
code[class*="language-"]::selection,
code[class*="language-"] ::selection {
text-shadow: none;
background: #b3d4fc;
}
@media print {
code[class*="language-"],
pre[class*="language-"] {
text-shadow: none;
}
}
/* Code blocks */
pre[class*="language-"] {
padding: 1em;
margin: .5em 0;
overflow: auto;
}
:not(pre)>code[class*="language-"],
pre[class*="language-"] {
background: #f5f2f0;
}
/* Inline code */
:not(pre)>code[class*="language-"] {
padding: .1em;
border-radius: .3em;
white-space: normal;
}
.token.comment,
.token.prolog,
.token.doctype,
.token.cdata {
color: slategray;
}
.token.punctuation {
color: #999;
}
.namespace {
opacity: .7;
}
.token.property,
.token.tag,
.token.boolean,
.token.number,
.token.constant,
.token.symbol,
.token.deleted {
color: #905;
}
.token.selector,
.token.attr-name,
.token.string,
.token.char,
.token.builtin,
.token.inserted {
color: #690;
}
.token.operator,
.token.entity,
.token.url,
.language-css .token.string,
.style .token.string {
color: #9a6e3a;
background: hsla(0, 0%, 100%, .5);
}
.token.atrule,
.token.attr-value,
.token.keyword {
color: #07a;
}
.token.function,
.token.class-name {
color: #DD4A68;
}
.token.regex,
.token.important,
.token.variable {
color: #e90;
}
.token.important,
.token.bold {
font-weight: bold;
}
.token.italic {
font-style: italic;
}
.token.entity {
cursor: help;
}

9043
public/fonts/demo_index.html Normal file

File diff suppressed because it is too large Load Diff

1555
public/fonts/iconfont.css Normal file

File diff suppressed because it is too large Load Diff

1
public/fonts/iconfont.js Normal file

File diff suppressed because one or more lines are too long

2704
public/fonts/iconfont.json Normal file

File diff suppressed because it is too large Load Diff

BIN
public/fonts/iconfont.ttf Normal file

Binary file not shown.

BIN
public/fonts/iconfont.woff Normal file

Binary file not shown.

BIN
public/fonts/iconfont.woff2 Normal file

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 810 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 675 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 344 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 643 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 284 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 675 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 457 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 923 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 602 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 629 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 810 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 804 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 796 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 621 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 662 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 675 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 806 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 628 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 532 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 619 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1009 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 831 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 881 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 984 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 532 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 966 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 937 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 928 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 494 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 923 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 795 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 662 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 620 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 844 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 711 B

Some files were not shown because too many files have changed in this diff Show More