Pārlūkot izejas kodu

feat: 1.点餐流程的左边菜单样式修改

suwenjiang 1 mēnesi atpakaļ
vecāks
revīzija
617b320a8b

BIN
src/renderer/assets/images/avatar.png


Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 0 - 5
src/renderer/assets/images/avater.svg


BIN
src/renderer/assets/images/noFoods.png


+ 115 - 0
src/renderer/styles/element-ui.css

@@ -0,0 +1,115 @@
+.el-upload input[type='file'] {
+  display: none !important;
+}
+
+.el-upload__input {
+  display: none;
+}
+
+.el-dialog {
+  transform: none;
+  left: 0;
+  position: relative;
+  margin: 0 auto;
+}
+
+.upload-container .el-upload {
+  width: 100%;
+}
+
+.upload-container .el-upload .el-upload-dragger {
+  width: 100%;
+  height: 200px;
+}
+
+.fixed-width .el-button--mini {
+  padding: 7px 10px;
+  width: 60px;
+}
+
+.status-col .cell {
+  padding: 0 10px;
+  text-align: center;
+}
+
+.status-col .cell .el-tag {
+  margin-right: 0px;
+}
+
+.common-dialog .el-dialog__header {
+  padding: 10px;
+}
+
+.common-dialog .el-dialog__headerbtn {
+  top: 15px;
+}
+
+.common-dialog .el-dialog__body {
+  padding: 30px;
+}
+
+.common-dialog .el-dialog__title,
+.common-dialog .el-dialog__close {
+  color: #000;
+  font-size: 14px;
+}
+
+.common-dialog .el-dialog__title,
+.common-dialog .el-dialog__close:hover {
+  color: #000;
+  font-weight: bold;
+}
+
+.main-button {
+  background: #f67f20;
+  line-height: 40px;
+  padding: 0px 20px 0px 20px;
+  height: 40px;
+}
+
+.main-button-mini {
+  background: #f67f20;
+  padding: 5px 8px 5px 8px;
+}
+
+.main-button-middle {
+  background: #f67f20;
+  padding: 8px 12px 8px 12px;
+}
+
+.main-button:hover {
+  background: #fcb47b;
+  border-color: #fcb47b;
+}
+
+.main-button-mini:hover {
+  background: #fcb47b;
+  border-color: #fcb47b;
+}
+
+.main-button-middle:hover {
+  background: #fcb47b;
+  border-color: #fcb47b;
+}
+
+.main-button-reset {
+  background: #ffffff;
+}
+
+.main-button-reset:hover {
+  background: #f5f5f5;
+  color: #333333;
+}
+
+.do-button {
+  background: #ff5b57;
+  line-height: 40px;
+  padding: 0px 20px 0px 20px;
+  height: 40px;
+  border: solid 1px #cccccc;
+}
+
+.do-button:hover {
+  background: #ff5b33;
+  border: solid 1px #ff5b57;
+}

+ 1 - 0
src/renderer/styles/element-ui.min.css

@@ -0,0 +1 @@
+.el-upload input[type='file']{display:none !important}.el-upload__input{display:none}.el-dialog{transform:none;left:0;position:relative;margin:0 auto}.upload-container .el-upload{width:100%}.upload-container .el-upload .el-upload-dragger{width:100%;height:200px}.fixed-width .el-button--mini{padding:7px 10px;width:60px}.status-col .cell{padding:0 10px;text-align:center}.status-col .cell .el-tag{margin-right:0px}.common-dialog .el-dialog__header{padding:10px}.common-dialog .el-dialog__headerbtn{top:15px}.common-dialog .el-dialog__body{padding:30px}.common-dialog .el-dialog__title,.common-dialog .el-dialog__close{color:#000;font-size:14px}.common-dialog .el-dialog__title,.common-dialog .el-dialog__close:hover{color:#000;font-weight:bold}.main-button{background:#f67f20;line-height:40px;padding:0px 20px 0px 20px;height:40px}.main-button-mini{background:#f67f20;padding:5px 8px 5px 8px}.main-button-middle{background:#f67f20;padding:8px 12px 8px 12px}.main-button:hover{background:#fcb47b;border-color:#fcb47b}.main-button-mini:hover{background:#fcb47b;border-color:#fcb47b}.main-button-middle:hover{background:#fcb47b;border-color:#fcb47b}.main-button-reset{background:#ffffff}.main-button-reset:hover{background:#f5f5f5;color:#333333}.do-button{background:#ff5b57;line-height:40px;padding:0px 20px 0px 20px;height:40px;border:solid 1px #cccccc}.do-button:hover{background:#ff5b33;border:solid 1px #ff5b57}

+ 47 - 44
src/renderer/styles/element-ui.scss

@@ -1,33 +1,33 @@
 //to reset element-ui default css
- .el-upload {
-   input[type="file"] {
-     display: none !important;
-   }
- }
+.el-upload {
+  input[type='file'] {
+    display: none !important;
+  }
+}
 
- .el-upload__input {
-   display: none;
- }
+.el-upload__input {
+  display: none;
+}
 
- //暂时性解决diolag 问题 https://github.com/ElemeFE/element/issues/2461
- .el-dialog {
-   transform: none;
-   left: 0;
-   position: relative;
-   margin: 0 auto;
- }
+//暂时性解决diolag 问题 https://github.com/ElemeFE/element/issues/2461
+.el-dialog {
+  transform: none;
+  left: 0;
+  position: relative;
+  margin: 0 auto;
+}
 
- //element ui upload
- .upload-container {
-   .el-upload {
-     width: 100%;
+//element ui upload
+.upload-container {
+  .el-upload {
+    width: 100%;
 
-     .el-upload-dragger {
-       width: 100%;
-       height: 200px;
-     }
-   }
- }
+    .el-upload-dragger {
+      width: 100%;
+      height: 200px;
+    }
+  }
+}
 
 .fixed-width {
   .el-button--mini {
@@ -46,13 +46,13 @@
   }
 }
 
- // common dialog
+// common dialog
 .common-dialog {
   .el-dialog {
-    border: solid 0px #113a28;
+    // border: solid 0px #113a28;
   }
-  .el-dialog__header{
-    background: #113a28;
+  .el-dialog__header {
+    // background: #113a28;
     padding: 10px;
   }
   .el-dialog__headerbtn {
@@ -61,38 +61,43 @@
   .el-dialog__body {
     padding: 30px;
   }
-  .el-dialog__title,.el-dialog__close{
-    color: #fff;
+  .el-dialog__title,
+  .el-dialog__close {
+    color: #000;
     font-size: 14px;
   }
-  .el-dialog__title,.el-dialog__close:hover{
-    color: #fff;
+  .el-dialog__title,
+  .el-dialog__close:hover {
+    color: #000;
     font-weight: bold;
   }
 }
 // main button
 .main-button {
-   background: #113a28;
-   line-height: 40px;
-   padding: 0px 20px 0px 20px;
-   height: 40px;
+  background: #f67f20;
+  line-height: 40px;
+  padding: 0px 20px 0px 20px;
+  height: 40px;
 }
 .main-button-mini {
-  background: #113a28;
+  background: #f67f20;
   padding: 5px 8px 5px 8px;
 }
 .main-button-middle {
-  background: #113a28;
+  background: #f67f20;
   padding: 8px 12px 8px 12px;
 }
 .main-button:hover {
-   background: #077171;
+  background: #fcb47b;
+  border-color: #fcb47b;
 }
 .main-button-mini:hover {
-  background: #077171;
+  background: #fcb47b;
+  border-color: #fcb47b;
 }
 .main-button-middle:hover {
-  background: #077171;
+  background: #fcb47b;
+  border-color: #fcb47b;
 }
 .main-button-reset {
   background: #ffffff;
@@ -112,5 +117,3 @@
   background: #ff5b33;
   border: solid 1px #ff5b57;
 }
-
-

+ 199 - 171
src/renderer/views/cashier/components/hangUpDialog.vue

@@ -1,188 +1,216 @@
 <template>
-    <el-dialog class="common-dialog" title="挂单列表" :visible="showDialog" @close="close" width="1000px" destroy-on-close>
-        <el-alert title="提示:请选择一个空白位置挂单" type="warning" :closable="false"></el-alert>
-        <div class="order-list">
-          <div class="order-item" v-for="orderInfo in orderList">
-            <div class="info" v-if="!orderInfo.isEmpty">
-              <div class="sn">{{ orderInfo.hangNo }} <span @click="remove(orderInfo.hangNo)" class="remove el-icon-delete"></span></div>
-              <div class="order" v-if="!orderInfo.isEmpty" @click="getHangUp(orderInfo.hangNo, orderInfo.memberInfo)">
-                <div class="item">会员:{{ orderInfo.memberInfo ? orderInfo.memberInfo.name : '游客' }}</div>
-                <div class="item">件数:{{ orderInfo.num }}</div>
-                <div class="item">金额:¥{{ orderInfo.amount }}</div>
-                <div class="item time">{{ orderInfo.dateTime }}</div>
-              </div>
-            </div>
-            <div v-if="orderInfo.isEmpty" class="none" @click="doHangUp(orderInfo.hangNo)">
-              <div class="sn">{{ orderInfo.hangNo }} <span @click="remove(orderInfo.hangNo)" class="remove el-icon-delete"></span></div>
-              <div class="tips">空白位置</div>
+  <el-dialog
+    class="common-dialog"
+    title="挂单列表"
+    :visible="showDialog"
+    @close="close"
+    width="1000px"
+    destroy-on-close
+  >
+    <el-alert title="提示:请选择一个空白位置挂单" type="warning" :closable="false"></el-alert>
+    <div class="order-list">
+      <div class="order-item" v-for="orderInfo in orderList">
+        <div class="info" v-if="!orderInfo.isEmpty">
+          <div class="sn">
+            {{ orderInfo.hangNo }}
+            <span @click="remove(orderInfo.hangNo)" class="remove el-icon-delete"></span>
+          </div>
+          <div
+            class="order"
+            v-if="!orderInfo.isEmpty"
+            @click="getHangUp(orderInfo.hangNo, orderInfo.memberInfo)"
+          >
+            <div class="item">
+              会员:{{ orderInfo.memberInfo ? orderInfo.memberInfo.name : '游客' }}
             </div>
+            <div class="item">件数:{{ orderInfo.num }}</div>
+            <div class="item">金额:¥{{ orderInfo.amount }}</div>
+            <div class="item time">{{ orderInfo.dateTime }}</div>
           </div>
         </div>
-        <div class="clearfix"></div>
-        <div slot="footer" class="dialog-footer">
-            <el-button type="primary" class="main-button" @click="close()">关闭</el-button>
+        <div v-if="orderInfo.isEmpty" class="none" @click="doHangUp(orderInfo.hangNo)">
+          <div class="sn">
+            {{ orderInfo.hangNo }}
+            <span @click="remove(orderInfo.hangNo)" class="remove el-icon-delete"></span>
+          </div>
+          <div class="tips">空白位置</div>
         </div>
-    </el-dialog>
+      </div>
+    </div>
+    <div class="clearfix"></div>
+    <div slot="footer" class="dialog-footer">
+      <el-button type="primary" class="main-button" @click="close()">关闭</el-button>
+    </div>
+  </el-dialog>
 </template>
 <script>
-import { doHangUp, getHangUpList, removeHangUp } from "@/api/cashier";
-import { Message } from "element-ui";
+import { doHangUp, getHangUpList, removeHangUp } from '@/api/cashier'
+import { Message } from 'element-ui'
 export default {
-    props: {
-      showDialog: {
-        type:[Boolean],
-        default:()=>false
-      },
-      memberInfo: {
-         type:[Object],
-         default:()=>{}
-      },
-      cartList: {
-        type:[Array],
-        default:()=>[]
-      },
+  props: {
+    showDialog: {
+      type: [Boolean],
+      default: () => false,
     },
-    watch: {
-      showDialog(value) {
-        if (value) {
-            console.log('memberInfo = ', this.memberInfo)
-            this.getHangUpList();
-        }
-      }
+    memberInfo: {
+      type: [Object],
+      default: () => {},
     },
-    data(){
-        return {
-          loading: false,
-          orderList: []
-        }
+    cartList: {
+      type: [Array],
+      default: () => [],
     },
-    methods: {
-        // 删除挂单
-        remove(hangNo) {
-          const app = this;
-          const param = { hangNo: hangNo };
-          removeHangUp(param).then( response => {
-            if (response) {
-                Message({
-                  message: "删除挂单成功",
-                  type: "success"
-                });
-                app.getHangUpList();
-            }
-          }).catch(() => {
-             // empty
-          });
-        },
-        // 执行挂单
-        doHangUp(hangNo) {
-           const app = this;
-           if (!app.cartList || app.cartList.length < 1) {
-               Message({
-                 message: "请先添加结算商品",
-                 type: "error"
-               });
-               return false;
-           }
-           let cartIds = [];
-           app.cartList.forEach(function(cart) {
-              cartIds.push(cart.cartId);
-           })
-           const param = { hangNo: hangNo, userId: app.memberInfo ? app.memberInfo : '', cartIds: cartIds.join(',') };
-           doHangUp(param).then( response => {
-               if (response) {
-                   Message({
-                     message: "挂单成功",
-                     type: "success"
-                   });
-                   app.getHangUpList();
-                   app.$emit('doHangUp');
-               }
-           }).catch(() => {
-              // empty
-           });
-        },
-        // 获取挂单列表
-        getHangUpList() {
-          const app = this;
-          getHangUpList().then( response => {
-            if (response.data) {
-                app.orderList = response.data;
-            }
-          }).catch(() => {
-             // empty
-          });
-        },
-        // 取单
-        getHangUp(hangNo, memberInfo) {
-           this.$emit('getHangNo', { 'hangNo': hangNo, 'memberInfo': memberInfo });
-        },
-        close() {
-           this.$emit('closeDialog','hangUpDialog');
-        }
+  },
+  watch: {
+    showDialog(value) {
+      if (value) {
+        console.log('memberInfo = ', this.memberInfo)
+        this.getHangUpList()
+      }
+    },
+  },
+  data() {
+    return {
+      loading: false,
+      orderList: [],
     }
+  },
+  methods: {
+    // 删除挂单
+    remove(hangNo) {
+      const app = this
+      const param = { hangNo: hangNo }
+      removeHangUp(param)
+        .then((response) => {
+          if (response) {
+            Message({
+              message: '删除挂单成功',
+              type: 'success',
+            })
+            app.getHangUpList()
+          }
+        })
+        .catch(() => {
+          // empty
+        })
+    },
+    // 执行挂单
+    doHangUp(hangNo) {
+      const app = this
+      if (!app.cartList || app.cartList.length < 1) {
+        Message({
+          message: '请先添加结算商品',
+          type: 'error',
+        })
+        return false
+      }
+      let cartIds = []
+      app.cartList.forEach(function (cart) {
+        cartIds.push(cart.cartId)
+      })
+      const param = {
+        hangNo: hangNo,
+        userId: app.memberInfo ? app.memberInfo : '',
+        cartIds: cartIds.join(','),
+      }
+      doHangUp(param)
+        .then((response) => {
+          if (response) {
+            Message({
+              message: '挂单成功',
+              type: 'success',
+            })
+            app.getHangUpList()
+            app.$emit('doHangUp')
+          }
+        })
+        .catch(() => {
+          // empty
+        })
+    },
+    // 获取挂单列表
+    getHangUpList() {
+      const app = this
+      getHangUpList()
+        .then((response) => {
+          if (response.data) {
+            app.orderList = response.data
+          }
+        })
+        .catch(() => {
+          // empty
+        })
+    },
+    // 取单
+    getHangUp(hangNo, memberInfo) {
+      this.$emit('getHangNo', { hangNo: hangNo, memberInfo: memberInfo })
+    },
+    close() {
+      this.$emit('closeDialog', 'hangUpDialog')
+    },
+  },
 }
 </script>
 <style lang="scss" scoped>
-  .order-list {
-     margin-top: 6px;
-     .order-item {
-         width: 20%;
-         float: left;
-         height: 200px;
-         cursor: pointer;
-         padding: 5px;
-         .info {
-           border: solid 1px #cccccc;
-           padding: 5px;
-           height: 100%;
-           border-radius: 4px;
-           background: #e6f7f7;
-           border: #113a28 solid 1px;
-           .sn {
-             font-weight: bold;
-             font-size: 20px;
-             color: #ff5b57;
-             .remove {
-               float: right;
-               font-size: 12px;
-               color: #666666;
-               font-weight: bold;
-             }
-           }
-           .order {
-              margin: 10px;
-              .item {
-                 margin-bottom: 3px;
-              }
-              .time {
-                 position: relative;
-                 bottom : -50px;
-                 color: #909399;
-              }
-           }
-         }
-         .none {
-            height: 100%;
-            color: #666666;
-            border: solid 1px #cccccc;
-            border-radius: 4px;
-            padding: 10px;
-            .tips {
-               line-height: 150px;
-               text-align: center;
-            }
-           .sn {
-             font-weight: bold;
-             font-size: 20px;
-             color: #ff5b57;
-             .remove {
-               float: right;
-               font-size: 12px;
-               color: #666666;
-               font-weight: bold;
-             }
-           }
-         }
-     }
+.order-list {
+  margin-top: 6px;
+  .order-item {
+    width: 20%;
+    float: left;
+    height: 200px;
+    cursor: pointer;
+    padding: 5px;
+    .info {
+      padding: 5px;
+      height: 100%;
+      border-radius: 4px;
+      background: #ffc03833;
+      border: #f67f20 solid 1px;
+      .sn {
+        font-weight: bold;
+        font-size: 20px;
+        color: #ff5b57;
+        .remove {
+          float: right;
+          font-size: 12px;
+          color: #666666;
+          font-weight: bold;
+        }
+      }
+      .order {
+        margin: 10px;
+        .item {
+          margin-bottom: 3px;
+        }
+        .time {
+          position: relative;
+          bottom: -50px;
+          color: #909399;
+        }
+      }
+    }
+    .none {
+      height: 100%;
+      color: #666666;
+      border: solid 1px #cccccc;
+      border-radius: 4px;
+      padding: 10px;
+      .tips {
+        line-height: 150px;
+        text-align: center;
+      }
+      .sn {
+        font-weight: bold;
+        font-size: 20px;
+        color: #ff5b57;
+        .remove {
+          float: right;
+          font-size: 12px;
+          color: #666666;
+          font-weight: bold;
+        }
+      }
+    }
   }
+}
 </style>

+ 1 - 1
src/renderer/views/cashier/components/memberList.vue

@@ -105,7 +105,7 @@
       <el-table-column label="头像" align="center" width="80">
         <template slot-scope="scope">
           <img v-if="scope.row.avatar" class="list-avatar" :src="scope.row.avatar" />
-          <img v-else class="list-avatar" src="@/assets/images/avatar.svg" />
+          <img v-else class="list-avatar" src="@/assets/images/avatar.png" />
         </template>
       </el-table-column>
       <el-table-column label="会员号" prop="userNo" width="150" />

+ 1 - 1
src/renderer/views/cashier/components/settlementDialog.vue

@@ -212,7 +212,7 @@
             <div class="member-info" v-if="memberInfo">
               <div class="base">
                 <img class="avatar" v-if="memberInfo.avatar" :src="memberInfo.avatar" />
-                <img class="avatar" v-if="!memberInfo.avatar" src="@/assets/images/avatar.svg" />
+                <img class="avatar" v-if="!memberInfo.avatar" src="@/assets/images/avatar.png" />
                 <span class="name">{{ memberInfo.name }}</span>
                 <div class="gender">
                   <b v-if="memberInfo.sex" class="el-icon-male"></b>

+ 1 - 1
src/renderer/views/cashier/components/switchMemberDialog.vue

@@ -22,7 +22,7 @@
     <div class="member-info" v-if="memberInfo.id">
       <div class="item">
         <img class="avatar" v-if="memberInfo.avatar" :src="memberInfo.avatar" />
-        <img class="avatar" v-if="!memberInfo.avatar" src="@/assets/images/avatar.svg" />
+        <img class="avatar" v-if="!memberInfo.avatar" src="@/assets/images/avatar.png" />
         <div class="value">会员名称:{{ memberInfo.name }}</div>
         <div class="value">会员性别:{{ memberInfo.sex == '1' ? '男' : '女' }}</div>
       </div>

+ 47 - 32
src/renderer/views/cashier/index.vue

@@ -25,7 +25,10 @@
                   href="javascript:;"
                   @click="switchMenu(menu.key)"
                 >
-                  <img class="cate-logo" :src="menu.logo" />
+                  <div class="cate-logo-div">
+                    <img class="cate-logo" :src="menu.logo" />
+                  </div>
+
                   <span>{{ menu.name }}</span>
                 </a>
               </li>
@@ -34,13 +37,13 @@
         </div>
         <div class="cart-container" v-if="activeMenu == 'cashier'">
           <div class="title">
-            <div class="logo">
+            <div class="avatar">
               <img
-                class="avatar"
+                class="w-full h-full object-cover"
                 v-if="!memberInfo || !memberInfo.avatar"
-                src="@/assets/images/avatar.svg"
+                src="@/assets/images/avatar.png"
               />
-              <img class="avatar" v-else :src="memberInfo.avatar" />
+              <img class="w-full h-full object-cover" v-else :src="memberInfo.avatar" />
             </div>
             <div class="member-info">
               <span class="name" v-if="memberInfo">
@@ -1048,8 +1051,8 @@ export default {
       }
       .account {
         font-size: 12px;
-        border: solid 2px #ffffff;
-        background: #6c757d;
+        // border: solid 2px #ffffff;
+        // background: #6c757d;
         cursor: pointer;
         margin-top: 6px;
         padding: 2px;
@@ -1076,25 +1079,35 @@ export default {
             padding: 0.5356875rem 0.9375rem;
             white-space: nowrap;
             text-align: center;
-            font-weight: 600;
-            color: #666666;
+            font-weight: 400;
+            color: #333;
             display: flex;
             align-items: center;
             flex-direction: column;
             justify-content: center;
             border-radius: 5px;
             transition: color 0.2s linear;
-            background: #f5f5f5;
             border: 2px solid #ffffff;
-            .cate-logo {
-              display: block;
-              width: 50px;
-              height: 50px;
+            .cate-logo-div {
+              width: 60px;
+              height: 60px;
+              display: flex;
+              justify-content: center;
+              align-items: center;
+              border-radius: 10px;
+              .cate-logo {
+                display: block;
+                width: 50px;
+                height: 50px;
+              }
             }
           }
           .active {
             font-weight: bold;
-            border: 4px #ff5b57 solid;
+
+            .cate-logo-div {
+              background-color: #f67f20;
+            }
           }
         }
       }
@@ -1114,29 +1127,28 @@ export default {
     .title {
       height: 70px;
       width: 310px;
-      // background: #6c757d;
       border-bottom: #cccccc 1px solid;
-      // color: #ffffff;
       padding-top: 16px;
       padding-left: 1px;
-      display: block;
+      display: flex;
+      align-items: center;
       position: fixed;
       top: 45px;
       z-index: 999;
       clear: both;
-      .logo {
-        float: left;
-        font-size: 24px;
-        .avatar {
-          width: 30px;
-          height: 30px;
-          border-radius: 40px;
-          margin: 5px 0px 5px 5px;
-        }
+
+      .avatar {
+        display: inline-block;
+        width: 30px;
+        height: 30px;
+        border-radius: 50%;
+        margin: 5px 0px 5px 5px;
+        overflow: hidden;
       }
+
       .member-info {
-        float: left;
-        margin-top: 5px;
+        display: inline-block;
+        margin-left: 5px;
         .name {
           margin-left: 2px;
           margin-right: 3px;
@@ -1245,11 +1257,11 @@ export default {
       z-index: 999;
       bottom: 0;
       height: 120px;
-      width: 100%;
       padding-top: 5px;
       padding-right: 15px;
       display: block;
       width: 310px;
+      margin-bottom: 10px;
       .number {
         float: right;
         margin: 5px;
@@ -1266,14 +1278,17 @@ export default {
         text-align: center;
         cursor: pointer;
         float: right;
-        color: #ffffff;
+        color: white;
+        // box-sizing: border-box;
+        // padding-bottom: 20px;
         .cash {
           float: left;
           height: 50px;
-          // border: solid 1px #113a28;
+          border: solid 1px #f67f20;
           padding-top: 15px;
           width: 135px;
           border-radius: 5px;
+          color: #f67f20;
           // background: #113a28;
           font-weight: bold;
         }

+ 1 - 1
yarn.lock

@@ -8109,7 +8109,7 @@ run-parallel@^1.1.9:
   dependencies:
     queue-microtask "^1.2.2"
 
-rxjs@*:
+rxjs@^7.5.2:
   version "7.8.2"
   resolved "https://registry.npmmirror.com/rxjs/-/rxjs-7.8.2.tgz#955bc473ed8af11a002a2be52071bf475638607b"
   integrity sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==

Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels