Explorar el Código

file upload

update
jqh hace 5 años
padre
commit
822d24ec18

BIN
images/arrow-down.png


La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
images/chat-bg.svg


BIN
images/faq.jpg


BIN
images/knowledge-base-cover.jpg


BIN
images/spritemap.png


BIN
images/vuexy-login-bg.jpg


BIN
images/vuexy-logo.png


+ 1 - 1
resources/assets/dcat/extra/upload.js

@@ -792,7 +792,7 @@
                 // 添加“添加文件”的按钮,
                 uploader.addButton({
                     id: addFileButtonSelector,
-                    label: '<i class="glyphicon glyphicon-folder-open"></i> &nbsp;' + __('go_on_add')
+                    label: '<i class="feather icon-folder"></i> &nbsp;' + __('go_on_add')
                 });
             }
 

+ 467 - 0
resources/assets/dcat/extra/upload.scss

@@ -0,0 +1,467 @@
+
+@import "../sass/variables/variables";
+
+.webuploader-container {
+  position: relative
+}
+
+.webuploader-element-invisible {
+  position: absolute !important;
+  clip: rect(1px 1px 1px 1px);
+  clip: rect(1px, 1px, 1px, 1px)
+}
+
+.webuploader-pick {
+  border-radius: 1px;
+  will-change: box-shadow !important;
+  box-shadow: 0 3px 1px -2px rgba(0, 0, 0, .15), 0 2px 2px 0 rgba(0, 0, 0, .15), 0 1px 5px 0 rgba(0, 0, 0, .15);
+  border: 1px solid transparent;
+  display: inline-block;
+  padding: 6px 12px;
+  margin-bottom: 0;
+  font-size: 14px;
+  font-weight: 400;
+  line-height: 1.42857143;
+  text-align: center;
+  white-space: nowrap;
+  vertical-align: middle;
+  -ms-touch-action: manipulation;
+  touch-action: manipulation;
+  cursor: pointer;
+  -webkit-user-select: none;
+  -moz-user-select: none;
+  -ms-user-select: none;
+  user-select: none;
+  background-image: none;
+  color: #fff;
+  background-color: lighten($primary, 2%)
+}
+
+.webuploader-pick-hover {
+  opacity: .9
+}
+
+.webuploader-pick-disable {
+  opacity: .6;
+  pointer-events: none
+}
+
+.web-uploader {
+  border: 0;
+  color: #838383;
+  font-size: 12px;
+  margin-top: 10px;
+  background-color: transparent
+}
+
+.web-uploader.disabled {
+  background-color: #eee;
+  min-height: 34px;
+  cursor: not-allowed
+}
+
+.web-uploader._files {
+  border: 0
+}
+
+.web-uploader .queueList {
+}
+
+.web-uploader._files .queueList {
+}
+
+.element-invisible {
+  position: absolute !important;
+  clip: rect(1px 1px 1px 1px);
+  clip: rect(1px, 1px, 1px, 1px)
+}
+
+.web-uploader .placeholder {
+  /*padding-top: 85px;*/
+  /*background: url(./image.png) center 15px no-repeat;*/
+  border: 3px dashed #e6e6e6;
+  padding-top: 5px;
+  text-align: center;
+  color: #ccc;
+  font-size: 16px;
+  position: relative;
+}
+
+.web-uploader .placeholder .webuploader-pick {
+  background: lighten($primary, 2%);
+  border-radius: 3px;
+  line-height: 34px;
+  padding: 0 25px;
+  color: #fff;
+  display: inline-block;
+  margin: 0 auto 20px;
+  cursor: pointer
+}
+
+.web-uploader .placeholder .webuploader-pick-hover {
+  opacity: .9
+}
+.web-uploader .placeholder p {
+  margin: 0 0 20px;
+}
+.web-uploader .placeholder .flashTip {
+  color: #666;
+  font-size: 12px;
+  position: absolute;
+  width: 100%;
+  text-align: center;
+  bottom: 20px
+}
+
+.web-uploader .placeholder .flashTip a {
+  color: lighten($primary, 2%);
+  text-decoration: none
+}
+
+.web-uploader .placeholder .flashTip a:hover {
+  text-decoration: underline
+}
+
+.web-uploader .placeholder.webuploader-dnd-over {
+  border-color: #999
+}
+
+.web-uploader .placeholder.webuploader-dnd-over.webuploader-dnd-denied {
+  border-color: $red-darker
+}
+
+.web-uploader .filelist {
+  list-style: none;
+  margin: 0;
+  padding: 0
+}
+
+.web-uploader .filelist:after {
+  content: '';
+  display: block;
+  width: 0;
+  height: 0;
+  overflow: hidden;
+  clear: both
+}
+
+.web-uploader .filelist li {
+  width: 120px;
+  text-align: center;
+  position: relative;
+  float: left;
+  overflow: hidden;
+  border-radius: 2px;
+  font-size: 12px;
+  box-shadow: 1px 1px 5px 0 #a2958a;
+  -webkit-box-shadow: 1px 1px 5px 0 #a2958a;
+  color: #333;
+  background: #fff;
+  display: table;
+  margin: 8px;
+  height: 160px;
+  padding: 6px;
+  vertical-align: middle
+}
+
+.web-uploader._files .filelist li {
+  width: 100%;
+  height: 40px;
+  background: var(--primary-light);
+  margin: 0 8px 10px 0;
+  box-shadow: none;
+  -webkit-box-shadow: none;
+  border-radius: 5px;
+  border: 0;
+  padding: 0
+}
+
+.web-uploader._files .filelist li ._act {
+  float: right;
+  margin: 16px 10px 0;
+  cursor: pointer;
+  font-size: 15px;
+  position: absolute;
+  right: 0
+}
+
+.web-uploader .filelist li p.log {
+  position: relative;
+  top: -45px
+}
+
+.web-uploader .filelist li p.title {
+  left: 0;
+  overflow: hidden;
+  white-space: nowrap;
+  text-overflow: ellipsis;
+  top: 35px;
+  text-indent: 5px;
+  width: 160px;
+  text-align: center;
+  padding-top: 4px;
+  font-size: 11px;
+  color: #777;
+  margin: 3px auto
+}
+
+.web-uploader._files .filelist li p.title {
+  font-weight: 600;
+  font-size: 15px;
+  vertical-align: middle;
+  height: 42px;
+  line-height: 35px;
+  padding-left: 8px;
+  float: left;
+  text-align: left;
+  color: #333;
+  width: 450px
+}
+
+.web-uploader .filelist .file-type {
+  display: none;
+  font-size: 18px;
+  font-weight: bold;
+  text-shadow: 0 1px 2px rgba(0, 0, 0, .2);
+  margin: 20px 0 5px;
+  height: 105px
+}
+
+.web-uploader .filelist li p.upload-progress {
+  position: absolute;
+  width: 100%;
+  bottom: 0;
+  left: 0;
+  height: 8px;
+  overflow: hidden;
+  z-index: 50
+}
+
+.web-uploader .filelist li p.upload-progress span {
+  display: none;
+  overflow: hidden;
+  width: 0;
+  height: 100%;
+  background: lighten($primary, 2%) url(./progress.png) repeat-x;
+  -webit-transition: width 200ms linear;
+  -moz-transition: width 200ms linear;
+  -o-transition: width 200ms linear;
+  -ms-transition: width 200ms linear;
+  transition: width 200ms linear;
+  -webkit-animation: progressmove 2s linear infinite;
+  -moz-animation: progressmove 2s linear infinite;
+  -o-animation: progressmove 2s linear infinite;
+  -ms-animation: progressmove 2s linear infinite;
+  animation: progressmove 2s linear infinite;
+  -webkit-transform: translateZ(0)
+}
+
+@-webkit-keyframes progressmove {
+  0% {
+    background-position: 0 0
+  }
+  100% {
+    background-position: 17px 0
+  }
+}
+
+@-moz-keyframes progressmove {
+  0% {
+    background-position: 0 0
+  }
+  100% {
+    background-position: 17px 0
+  }
+}
+
+@keyframes progressmove {
+  0% {
+    background-position: 0 0
+  }
+  100% {
+    background-position: 17px 0
+  }
+}
+
+.web-uploader .filelist li .imgWrap {
+  position: relative;
+  z-index: 2;
+  line-height: 100%;
+  vertical-align: middle;
+  overflow: hidden;
+  width: 100%;
+  height: 120px;
+  -webkit-transform-origin: 50% 50%;
+  -moz-transform-origin: 50% 50%;
+  -o-transform-origin: 50% 50%;
+  -ms-transform-origin: 50% 50%;
+  transform-origin: 50% 50%;
+  -webit-transition: 200ms ease-out;
+  -moz-transition: 200ms ease-out;
+  -o-transition: 200ms ease-out;
+  -ms-transition: 200ms ease-out;
+  transition: 200ms ease-out;
+  margin-bottom: 0;
+}
+
+.web-uploader .filelist li img {
+  width: auto;
+  height: 120px
+}
+
+.web-uploader .filelist li p.error {
+  background: $red-darker;
+  color: #fff;
+  position: absolute;
+  bottom: 0;
+  left: 0;
+  height: 28px;
+  line-height: 28px;
+  width: 100%;
+  z-index: 100
+}
+
+.web-uploader._files .filelist li p.error {
+  background: $red-darker;
+  color: #fff;
+  font-weight: 500;
+  padding: 0 20px;
+  width: auto;
+  margin-left: 40%;
+  top: 0
+}
+
+.web-uploader .filelist li .success {
+  display: block;
+  position: absolute;
+  left: 0;
+  bottom: 0;
+  height: 40px;
+  width: 100%;
+  z-index: 200
+}
+
+.web-uploader .filelist li .success em {
+  position: absolute;
+  right: 0;
+  border-color: transparent;
+  border-style: solid;
+  border-width: 0 0 33px 40px;
+  border-bottom-color: $success;
+  bottom: -1px
+}
+
+.web-uploader li .success i {
+  position: absolute;
+  bottom: 5px;
+  right: 0;
+  color: #fff;
+  background: none;
+  border: none;
+  font-weight: bold;
+  outline: none;
+  text-align: center;
+  width: 20px
+}
+
+.web-uploader .filelist div.file-panel {
+  position: absolute;
+  height: 32px;
+  width: 100%;
+  bottom: 0;
+  left: 0;
+  overflow: hidden;
+  z-index: 10
+}
+
+.web-uploader .filelist div.file-panel span {
+  display: inline;
+  float: left;
+  width: 24px;
+  height: 24px;
+  line-height: 26px;
+  overflow: hidden;
+  margin: 5px 3px 5px;
+  font-weight: bold;
+  cursor: pointer;
+  color: #fff;
+  border-radius: 1px;
+  font-size: 14px
+}
+
+.web-uploader .filelist div.file-panel a {
+  float: left;
+  margin-left: 3px
+}
+
+.web-uploader .statusBar {
+  height: 53px;
+  line-height: 53px;
+  vertical-align: middle;
+  position: relative
+}
+
+.web-uploader._files .statusBar {
+  border-top: 0;
+  padding: 0
+}
+
+.web-uploader .statusBar .upload-progress {
+  border: 0;
+  width: 198px;
+  height: 18px;
+  display: inline-block;
+  text-align: center;
+  line-height: 45px;
+  color: #fff;
+  margin-top: 20px;
+  position: relative;
+  margin-right: 10px;
+  border-radius: 2px
+}
+
+.web-uploader .statusBar .upload-progress span.percentage {
+  width: 0;
+  height: 100%;
+  left: 0;
+  top: 0;
+  background: lighten($primary, 2%);
+  position: absolute
+}
+
+.web-uploader .statusBar .upload-progress span.text {
+  position: relative;
+  z-index: 10
+}
+
+.web-uploader .statusBar .info {
+  display: inline-block;
+  font-size: 14px;
+  color: #666!important;
+}
+
+.web-uploader .statusBar .btns {
+  margin-top: 4px;
+  right: 20px;
+  line-height: 40px;
+  float: right
+}
+
+.web-uploader._files .statusBar .btns {
+  right: 0
+}
+
+.add-file-button {
+  display: inline-block;
+  float: left
+}
+
+.web-uploader .placeholder:before {
+  font-size: 80px;
+  font-family: feather;
+  content: "\e8e3";
+}
+.file-panel .red-dark {
+  color: $red-darker
+}
+

+ 1 - 1
resources/assets/dcat/plugins/webuploader/webuploader.css

@@ -456,5 +456,5 @@
 .web-uploader .placeholder:before {
 	font-size: 80px;
 	font-family: feather;
-	content: "\e8e1";
+	content: "\e8e3";
 }

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
resources/assets/dcat/plugins/webuploader/webuploader.min.css


+ 8 - 0
resources/assets/dcat/sass/components/_form.scss

@@ -42,6 +42,10 @@ select.form-control:not([multiple=multiple]) {
   }
 }
 
+.with-errors.help-block {
+  margin-bottom: 4px;
+}
+
 .has-error .checkbox, .has-error .checkbox-inline, .has-error .control-label, .has-error .help-block, .has-error .radio, .has-error .radio-inline, .has-error.checkbox label, .has-error.checkbox-inline label, .has-error.radio label, .has-error.radio-inline label {
   color: $red-darker;
 }
@@ -52,6 +56,10 @@ select.form-control:not([multiple=multiple]) {
   color: $red-darker;
 }
 
+.form-group.has-error .form-control {
+  border-color: $red-darker;
+}
+
 // --------------------- input-group-addon ---------------------
 .input-group-addon {
   width: 1%;

+ 15 - 1
resources/assets/dcat/sass/components/_layer.scss

@@ -53,4 +53,18 @@
 .layui-layer-tips .layui-layer-content,.layui-layer-tips {
   font-size: 13px!important;
   box-shadow: none!important;
-}
+}
+
+.layui-layer-btn a {
+  height: 30px!important;
+  line-height: 20px!important;
+  padding: 4px 15px!important;
+  font-size: .95rem;
+  box-shadow: $shadow;
+}
+
+.layui-layer-btn .layui-layer-btn0 {
+  border-color: $primary!important;
+  background-color: $primary!important;
+  color: $white!important;
+}

+ 4 - 0
resources/assets/dcat/sass/dcat-app.scss

@@ -29,6 +29,10 @@ html body .content .content-wrapper {
   padding: calc(2.2rem - 0.4rem) 2.45rem 0;
 }
 
+ol, ul, dl {
+  margin-bottom: 0;
+}
+
 // 布局
 @import "./components/layout";
 // 按钮

+ 36 - 36
resources/dist/css/plugins/loaders/animations/ball-grid-beat.css

@@ -27,66 +27,66 @@
 }
 
 .ball-grid-beat > div:nth-child(1) {
-  -webkit-animation-delay: 0.72s;
-          animation-delay: 0.72s;
-  -webkit-animation-duration: 0.68s;
-          animation-duration: 0.68s;
+  -webkit-animation-delay: 0.47s;
+          animation-delay: 0.47s;
+  -webkit-animation-duration: 1.12s;
+          animation-duration: 1.12s;
 }
 
 .ball-grid-beat > div:nth-child(2) {
-  -webkit-animation-delay: 0.29s;
-          animation-delay: 0.29s;
-  -webkit-animation-duration: 1.51s;
-          animation-duration: 1.51s;
+  -webkit-animation-delay: -0.05s;
+          animation-delay: -0.05s;
+  -webkit-animation-duration: 1.09s;
+          animation-duration: 1.09s;
 }
 
 .ball-grid-beat > div:nth-child(3) {
-  -webkit-animation-delay: -0.14s;
-          animation-delay: -0.14s;
-  -webkit-animation-duration: 1s;
-          animation-duration: 1s;
+  -webkit-animation-delay: 0.43s;
+          animation-delay: 0.43s;
+  -webkit-animation-duration: 0.98s;
+          animation-duration: 0.98s;
 }
 
 .ball-grid-beat > div:nth-child(4) {
-  -webkit-animation-delay: 0.62s;
-          animation-delay: 0.62s;
-  -webkit-animation-duration: 0.63s;
-          animation-duration: 0.63s;
+  -webkit-animation-delay: 0.26s;
+          animation-delay: 0.26s;
+  -webkit-animation-duration: 0.88s;
+          animation-duration: 0.88s;
 }
 
 .ball-grid-beat > div:nth-child(5) {
-  -webkit-animation-delay: 0.5s;
-          animation-delay: 0.5s;
-  -webkit-animation-duration: 0.94s;
-          animation-duration: 0.94s;
+  -webkit-animation-delay: 0.44s;
+          animation-delay: 0.44s;
+  -webkit-animation-duration: 1.49s;
+          animation-duration: 1.49s;
 }
 
 .ball-grid-beat > div:nth-child(6) {
-  -webkit-animation-delay: 0.67s;
-          animation-delay: 0.67s;
-  -webkit-animation-duration: 0.97s;
-          animation-duration: 0.97s;
+  -webkit-animation-delay: 0.38s;
+          animation-delay: 0.38s;
+  -webkit-animation-duration: 1.37s;
+          animation-duration: 1.37s;
 }
 
 .ball-grid-beat > div:nth-child(7) {
-  -webkit-animation-delay: 0.51s;
-          animation-delay: 0.51s;
-  -webkit-animation-duration: 0.88s;
-          animation-duration: 0.88s;
+  -webkit-animation-delay: 0.57s;
+          animation-delay: 0.57s;
+  -webkit-animation-duration: 1.44s;
+          animation-duration: 1.44s;
 }
 
 .ball-grid-beat > div:nth-child(8) {
-  -webkit-animation-delay: 0.69s;
-          animation-delay: 0.69s;
-  -webkit-animation-duration: 1.35s;
-          animation-duration: 1.35s;
+  -webkit-animation-delay: 0.46s;
+          animation-delay: 0.46s;
+  -webkit-animation-duration: 0.66s;
+          animation-duration: 0.66s;
 }
 
 .ball-grid-beat > div:nth-child(9) {
-  -webkit-animation-delay: -0.03s;
-          animation-delay: -0.03s;
-  -webkit-animation-duration: 1.59s;
-          animation-duration: 1.59s;
+  -webkit-animation-delay: 0.07s;
+          animation-delay: 0.07s;
+  -webkit-animation-duration: 0.65s;
+          animation-duration: 0.65s;
 }
 
 .ball-grid-beat > div {

+ 36 - 36
resources/dist/css/plugins/loaders/animations/ball-grid-pulse.css

@@ -39,66 +39,66 @@
 }
 
 .ball-grid-pulse > div:nth-child(1) {
-  -webkit-animation-delay: 0.66s;
-          animation-delay: 0.66s;
-  -webkit-animation-duration: 1.37s;
-          animation-duration: 1.37s;
+  -webkit-animation-delay: -0.14s;
+          animation-delay: -0.14s;
+  -webkit-animation-duration: 0.65s;
+          animation-duration: 0.65s;
 }
 
 .ball-grid-pulse > div:nth-child(2) {
-  -webkit-animation-delay: 0.7s;
-          animation-delay: 0.7s;
-  -webkit-animation-duration: 1.11s;
-          animation-duration: 1.11s;
+  -webkit-animation-delay: -0.11s;
+          animation-delay: -0.11s;
+  -webkit-animation-duration: 1.23s;
+          animation-duration: 1.23s;
 }
 
 .ball-grid-pulse > div:nth-child(3) {
-  -webkit-animation-delay: 0.14s;
-          animation-delay: 0.14s;
-  -webkit-animation-duration: 0.94s;
-          animation-duration: 0.94s;
+  -webkit-animation-delay: -0.05s;
+          animation-delay: -0.05s;
+  -webkit-animation-duration: 0.72s;
+          animation-duration: 0.72s;
 }
 
 .ball-grid-pulse > div:nth-child(4) {
-  -webkit-animation-delay: 0.09s;
-          animation-delay: 0.09s;
-  -webkit-animation-duration: 1.29s;
-          animation-duration: 1.29s;
+  -webkit-animation-delay: -0.01s;
+          animation-delay: -0.01s;
+  -webkit-animation-duration: 0.92s;
+          animation-duration: 0.92s;
 }
 
 .ball-grid-pulse > div:nth-child(5) {
-  -webkit-animation-delay: 0.23s;
-          animation-delay: 0.23s;
-  -webkit-animation-duration: 1.41s;
-          animation-duration: 1.41s;
+  -webkit-animation-delay: -0.19s;
+          animation-delay: -0.19s;
+  -webkit-animation-duration: 1.56s;
+          animation-duration: 1.56s;
 }
 
 .ball-grid-pulse > div:nth-child(6) {
-  -webkit-animation-delay: -0.1s;
-          animation-delay: -0.1s;
-  -webkit-animation-duration: 1.16s;
-          animation-duration: 1.16s;
+  -webkit-animation-delay: 0.07s;
+          animation-delay: 0.07s;
+  -webkit-animation-duration: 1.24s;
+          animation-duration: 1.24s;
 }
 
 .ball-grid-pulse > div:nth-child(7) {
-  -webkit-animation-delay: 0.57s;
-          animation-delay: 0.57s;
-  -webkit-animation-duration: 1.03s;
-          animation-duration: 1.03s;
+  -webkit-animation-delay: 0.64s;
+          animation-delay: 0.64s;
+  -webkit-animation-duration: 0.79s;
+          animation-duration: 0.79s;
 }
 
 .ball-grid-pulse > div:nth-child(8) {
-  -webkit-animation-delay: -0.12s;
-          animation-delay: -0.12s;
-  -webkit-animation-duration: 1.43s;
-          animation-duration: 1.43s;
+  -webkit-animation-delay: 0.4s;
+          animation-delay: 0.4s;
+  -webkit-animation-duration: 1.28s;
+          animation-duration: 1.28s;
 }
 
 .ball-grid-pulse > div:nth-child(9) {
-  -webkit-animation-delay: 0.15s;
-          animation-delay: 0.15s;
-  -webkit-animation-duration: 1.01s;
-          animation-duration: 1.01s;
+  -webkit-animation-delay: 0.28s;
+          animation-delay: 0.28s;
+  -webkit-animation-duration: 0.94s;
+          animation-duration: 0.94s;
 }
 
 .ball-grid-pulse > div {

+ 16 - 16
resources/dist/css/plugins/loaders/animations/line-scale-random.css

@@ -31,31 +31,31 @@
 }
 
 .line-scale-party > div:nth-child(1) {
-  -webkit-animation-delay: 0.65s;
-          animation-delay: 0.65s;
-  -webkit-animation-duration: 0.39s;
-          animation-duration: 0.39s;
+  -webkit-animation-delay: -0.14s;
+          animation-delay: -0.14s;
+  -webkit-animation-duration: 0.51s;
+          animation-duration: 0.51s;
 }
 
 .line-scale-party > div:nth-child(2) {
-  -webkit-animation-delay: 0.26s;
-          animation-delay: 0.26s;
-  -webkit-animation-duration: 0.56s;
-          animation-duration: 0.56s;
+  -webkit-animation-delay: 0.4s;
+          animation-delay: 0.4s;
+  -webkit-animation-duration: 0.84s;
+          animation-duration: 0.84s;
 }
 
 .line-scale-party > div:nth-child(3) {
-  -webkit-animation-delay: 0.48s;
-          animation-delay: 0.48s;
-  -webkit-animation-duration: 0.34s;
-          animation-duration: 0.34s;
+  -webkit-animation-delay: 0.44s;
+          animation-delay: 0.44s;
+  -webkit-animation-duration: 0.82s;
+          animation-duration: 0.82s;
 }
 
 .line-scale-party > div:nth-child(4) {
-  -webkit-animation-delay: 0.38s;
-          animation-delay: 0.38s;
-  -webkit-animation-duration: 0.94s;
-          animation-duration: 0.94s;
+  -webkit-animation-delay: 0.24s;
+          animation-delay: 0.24s;
+  -webkit-animation-duration: 1.26s;
+          animation-duration: 1.26s;
 }
 
 .line-scale-party > div {

+ 88 - 88
resources/dist/css/plugins/loaders/loaders.css

@@ -1454,66 +1454,66 @@
 }
 
 .ball-grid-beat > div:nth-child(1) {
-  -webkit-animation-delay: 0.52s;
-          animation-delay: 0.52s;
-  -webkit-animation-duration: 0.96s;
-          animation-duration: 0.96s;
+  -webkit-animation-delay: -0.1s;
+          animation-delay: -0.1s;
+  -webkit-animation-duration: 0.81s;
+          animation-duration: 0.81s;
 }
 
 .ball-grid-beat > div:nth-child(2) {
-  -webkit-animation-delay: 0.38s;
-          animation-delay: 0.38s;
-  -webkit-animation-duration: 1.07s;
-          animation-duration: 1.07s;
+  -webkit-animation-delay: -0.02s;
+          animation-delay: -0.02s;
+  -webkit-animation-duration: 0.89s;
+          animation-duration: 0.89s;
 }
 
 .ball-grid-beat > div:nth-child(3) {
-  -webkit-animation-delay: -0.18s;
-          animation-delay: -0.18s;
-  -webkit-animation-duration: 1.3s;
-          animation-duration: 1.3s;
+  -webkit-animation-delay: 0.14s;
+          animation-delay: 0.14s;
+  -webkit-animation-duration: 0.64s;
+          animation-duration: 0.64s;
 }
 
 .ball-grid-beat > div:nth-child(4) {
-  -webkit-animation-delay: 0.6s;
-          animation-delay: 0.6s;
-  -webkit-animation-duration: 0.89s;
-          animation-duration: 0.89s;
+  -webkit-animation-delay: 0.44s;
+          animation-delay: 0.44s;
+  -webkit-animation-duration: 0.87s;
+          animation-duration: 0.87s;
 }
 
 .ball-grid-beat > div:nth-child(5) {
-  -webkit-animation-delay: 0.79s;
-          animation-delay: 0.79s;
-  -webkit-animation-duration: 0.94s;
-          animation-duration: 0.94s;
+  -webkit-animation-delay: 0.24s;
+          animation-delay: 0.24s;
+  -webkit-animation-duration: 0.96s;
+          animation-duration: 0.96s;
 }
 
 .ball-grid-beat > div:nth-child(6) {
-  -webkit-animation-delay: 0.33s;
-          animation-delay: 0.33s;
-  -webkit-animation-duration: 0.71s;
-          animation-duration: 0.71s;
+  -webkit-animation-delay: 0.56s;
+          animation-delay: 0.56s;
+  -webkit-animation-duration: 1.1s;
+          animation-duration: 1.1s;
 }
 
 .ball-grid-beat > div:nth-child(7) {
-  -webkit-animation-delay: 0.67s;
-          animation-delay: 0.67s;
-  -webkit-animation-duration: 0.73s;
-          animation-duration: 0.73s;
+  -webkit-animation-delay: 0.77s;
+          animation-delay: 0.77s;
+  -webkit-animation-duration: 0.89s;
+          animation-duration: 0.89s;
 }
 
 .ball-grid-beat > div:nth-child(8) {
-  -webkit-animation-delay: -0.18s;
-          animation-delay: -0.18s;
-  -webkit-animation-duration: 0.82s;
-          animation-duration: 0.82s;
+  -webkit-animation-delay: -0.03s;
+          animation-delay: -0.03s;
+  -webkit-animation-duration: 1.13s;
+          animation-duration: 1.13s;
 }
 
 .ball-grid-beat > div:nth-child(9) {
-  -webkit-animation-delay: 0.58s;
-          animation-delay: 0.58s;
-  -webkit-animation-duration: 0.8s;
-          animation-duration: 0.8s;
+  -webkit-animation-delay: 0.06s;
+          animation-delay: 0.06s;
+  -webkit-animation-duration: 0.73s;
+          animation-duration: 0.73s;
 }
 
 .ball-grid-beat > div {
@@ -1575,66 +1575,66 @@
 }
 
 .ball-grid-pulse > div:nth-child(1) {
-  -webkit-animation-delay: -0.12s;
-          animation-delay: -0.12s;
-  -webkit-animation-duration: 1.04s;
-          animation-duration: 1.04s;
+  -webkit-animation-delay: 0.61s;
+          animation-delay: 0.61s;
+  -webkit-animation-duration: 0.71s;
+          animation-duration: 0.71s;
 }
 
 .ball-grid-pulse > div:nth-child(2) {
-  -webkit-animation-delay: 0.49s;
-          animation-delay: 0.49s;
-  -webkit-animation-duration: 0.7s;
-          animation-duration: 0.7s;
+  -webkit-animation-delay: -0.05s;
+          animation-delay: -0.05s;
+  -webkit-animation-duration: 0.64s;
+          animation-duration: 0.64s;
 }
 
 .ball-grid-pulse > div:nth-child(3) {
-  -webkit-animation-delay: 0.08s;
-          animation-delay: 0.08s;
-  -webkit-animation-duration: 1.3s;
-          animation-duration: 1.3s;
+  -webkit-animation-delay: 0.38s;
+          animation-delay: 0.38s;
+  -webkit-animation-duration: 1.52s;
+          animation-duration: 1.52s;
 }
 
 .ball-grid-pulse > div:nth-child(4) {
-  -webkit-animation-delay: -0.18s;
-          animation-delay: -0.18s;
-  -webkit-animation-duration: 1.29s;
-          animation-duration: 1.29s;
+  -webkit-animation-delay: 0.32s;
+          animation-delay: 0.32s;
+  -webkit-animation-duration: 1.06s;
+          animation-duration: 1.06s;
 }
 
 .ball-grid-pulse > div:nth-child(5) {
-  -webkit-animation-delay: 0.19s;
-          animation-delay: 0.19s;
-  -webkit-animation-duration: 1.33s;
-          animation-duration: 1.33s;
+  -webkit-animation-delay: 0.79s;
+          animation-delay: 0.79s;
+  -webkit-animation-duration: 0.65s;
+          animation-duration: 0.65s;
 }
 
 .ball-grid-pulse > div:nth-child(6) {
-  -webkit-animation-delay: 0.18s;
-          animation-delay: 0.18s;
-  -webkit-animation-duration: 1.33s;
-          animation-duration: 1.33s;
+  -webkit-animation-delay: 0.57s;
+          animation-delay: 0.57s;
+  -webkit-animation-duration: 1.32s;
+          animation-duration: 1.32s;
 }
 
 .ball-grid-pulse > div:nth-child(7) {
-  -webkit-animation-delay: 0.38s;
-          animation-delay: 0.38s;
-  -webkit-animation-duration: 0.81s;
-          animation-duration: 0.81s;
+  -webkit-animation-delay: 0.31s;
+          animation-delay: 0.31s;
+  -webkit-animation-duration: 1.44s;
+          animation-duration: 1.44s;
 }
 
 .ball-grid-pulse > div:nth-child(8) {
-  -webkit-animation-delay: 0.55s;
-          animation-delay: 0.55s;
-  -webkit-animation-duration: 0.78s;
-          animation-duration: 0.78s;
+  -webkit-animation-delay: 0.03s;
+          animation-delay: 0.03s;
+  -webkit-animation-duration: 0.79s;
+          animation-duration: 0.79s;
 }
 
 .ball-grid-pulse > div:nth-child(9) {
-  -webkit-animation-delay: 0.62s;
-          animation-delay: 0.62s;
-  -webkit-animation-duration: 1s;
-          animation-duration: 1s;
+  -webkit-animation-delay: -0.19s;
+          animation-delay: -0.19s;
+  -webkit-animation-duration: 1.14s;
+          animation-duration: 1.14s;
 }
 
 .ball-grid-pulse > div {
@@ -2181,31 +2181,31 @@
 }
 
 .line-scale-party > div:nth-child(1) {
-  -webkit-animation-delay: 0.32s;
-          animation-delay: 0.32s;
-  -webkit-animation-duration: 0.57s;
-          animation-duration: 0.57s;
+  -webkit-animation-delay: 0.35s;
+          animation-delay: 0.35s;
+  -webkit-animation-duration: 1.09s;
+          animation-duration: 1.09s;
 }
 
 .line-scale-party > div:nth-child(2) {
-  -webkit-animation-delay: 0.13s;
-          animation-delay: 0.13s;
-  -webkit-animation-duration: 1.24s;
-          animation-duration: 1.24s;
+  -webkit-animation-delay: 0.23s;
+          animation-delay: 0.23s;
+  -webkit-animation-duration: 0.7s;
+          animation-duration: 0.7s;
 }
 
 .line-scale-party > div:nth-child(3) {
-  -webkit-animation-delay: -0.04s;
-          animation-delay: -0.04s;
-  -webkit-animation-duration: 0.64s;
-          animation-duration: 0.64s;
+  -webkit-animation-delay: 0.06s;
+          animation-delay: 0.06s;
+  -webkit-animation-duration: 0.92s;
+          animation-duration: 0.92s;
 }
 
 .line-scale-party > div:nth-child(4) {
-  -webkit-animation-delay: 0.11s;
-          animation-delay: 0.11s;
-  -webkit-animation-duration: 1.29s;
-          animation-duration: 1.29s;
+  -webkit-animation-delay: -0.14s;
+          animation-delay: -0.14s;
+  -webkit-animation-duration: 0.51s;
+          animation-duration: 0.51s;
 }
 
 .line-scale-party > div {

+ 28 - 0
resources/dist/dcat/css/dcat-app.css

@@ -1738,6 +1738,12 @@ html body .content .content-wrapper {
   padding: calc(2.2rem - 0.4rem) 2.45rem 0;
 }
 
+ol,
+ul,
+dl {
+  margin-bottom: 0;
+}
+
 .pin,
 .pin-y {
   top: 0;
@@ -1896,6 +1902,10 @@ select.form-control:not([multiple=multiple]) {
   }
 }
 
+.with-errors.help-block {
+  margin-bottom: 4px;
+}
+
 .has-error .checkbox,
 .has-error .checkbox-inline,
 .has-error .control-label,
@@ -1915,6 +1925,10 @@ select.form-control:not([multiple=multiple]) {
   color: #bd4147;
 }
 
+.form-group.has-error .form-control {
+  border-color: #bd4147;
+}
+
 .input-group-addon {
   width: 1%;
   white-space: nowrap;
@@ -2348,6 +2362,20 @@ table.dataTable.complex-headers tfoot td {
   box-shadow: none !important;
 }
 
+.layui-layer-btn a {
+  height: 30px !important;
+  line-height: 20px !important;
+  padding: 4px 15px !important;
+  font-size: 0.95rem;
+  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.08);
+}
+
+.layui-layer-btn .layui-layer-btn0 {
+  border-color: #5c6bc6 !important;
+  background-color: #5c6bc6 !important;
+  color: #fff !important;
+}
+
 .customizer {
   width: 450px;
   right: -450px;

+ 442 - 0
resources/dist/dcat/extra/upload.css

@@ -0,0 +1,442 @@
+@charset "UTF-8";
+
+.webuploader-container {
+  position: relative;
+}
+
+.webuploader-element-invisible {
+  position: absolute !important;
+  clip: rect(1px 1px 1px 1px);
+  clip: rect(1px, 1px, 1px, 1px);
+}
+
+.webuploader-pick {
+  border-radius: 1px;
+  will-change: box-shadow !important;
+  box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.15), 0 2px 2px 0 rgba(0, 0, 0, 0.15), 0 1px 5px 0 rgba(0, 0, 0, 0.15);
+  border: 1px solid transparent;
+  display: inline-block;
+  padding: 6px 12px;
+  margin-bottom: 0;
+  font-size: 14px;
+  font-weight: 400;
+  line-height: 1.42857143;
+  text-align: center;
+  white-space: nowrap;
+  vertical-align: middle;
+  touch-action: manipulation;
+  cursor: pointer;
+  -webkit-user-select: none;
+  -moz-user-select: none;
+  -ms-user-select: none;
+  user-select: none;
+  background-image: none;
+  color: #fff;
+  background-color: #6472c9;
+}
+
+.webuploader-pick-hover {
+  opacity: 0.9;
+}
+
+.webuploader-pick-disable {
+  opacity: 0.6;
+  pointer-events: none;
+}
+
+.web-uploader {
+  border: 0;
+  color: #838383;
+  font-size: 12px;
+  margin-top: 10px;
+  background-color: transparent;
+}
+
+.web-uploader.disabled {
+  background-color: #eee;
+  min-height: 34px;
+  cursor: not-allowed;
+}
+
+.web-uploader._files {
+  border: 0;
+}
+
+.element-invisible {
+  position: absolute !important;
+  clip: rect(1px 1px 1px 1px);
+  clip: rect(1px, 1px, 1px, 1px);
+}
+
+.web-uploader .placeholder {
+  /*padding-top: 85px;*/
+  /*background: url(./image.png) center 15px no-repeat;*/
+  border: 3px dashed #e6e6e6;
+  padding-top: 5px;
+  text-align: center;
+  color: #ccc;
+  font-size: 16px;
+  position: relative;
+}
+
+.web-uploader .placeholder .webuploader-pick {
+  background: #6472c9;
+  border-radius: 3px;
+  line-height: 34px;
+  padding: 0 25px;
+  color: #fff;
+  display: inline-block;
+  margin: 0 auto 20px;
+  cursor: pointer;
+}
+
+.web-uploader .placeholder .webuploader-pick-hover {
+  opacity: 0.9;
+}
+
+.web-uploader .placeholder p {
+  margin: 0 0 20px;
+}
+
+.web-uploader .placeholder .flashTip {
+  color: #666;
+  font-size: 12px;
+  position: absolute;
+  width: 100%;
+  text-align: center;
+  bottom: 20px;
+}
+
+.web-uploader .placeholder .flashTip a {
+  color: #6472c9;
+  text-decoration: none;
+}
+
+.web-uploader .placeholder .flashTip a:hover {
+  text-decoration: underline;
+}
+
+.web-uploader .placeholder.webuploader-dnd-over {
+  border-color: #999;
+}
+
+.web-uploader .placeholder.webuploader-dnd-over.webuploader-dnd-denied {
+  border-color: #bd4147;
+}
+
+.web-uploader .filelist {
+  list-style: none;
+  margin: 0;
+  padding: 0;
+}
+
+.web-uploader .filelist:after {
+  content: "";
+  display: block;
+  width: 0;
+  height: 0;
+  overflow: hidden;
+  clear: both;
+}
+
+.web-uploader .filelist li {
+  width: 120px;
+  text-align: center;
+  position: relative;
+  float: left;
+  overflow: hidden;
+  border-radius: 2px;
+  font-size: 12px;
+  box-shadow: 1px 1px 5px 0 #a2958a;
+  -webkit-box-shadow: 1px 1px 5px 0 #a2958a;
+  color: #333;
+  background: #fff;
+  display: table;
+  margin: 8px;
+  height: 160px;
+  padding: 6px;
+  vertical-align: middle;
+}
+
+.web-uploader._files .filelist li {
+  width: 100%;
+  height: 40px;
+  background: var(--primary-light);
+  margin: 0 8px 10px 0;
+  box-shadow: none;
+  -webkit-box-shadow: none;
+  border-radius: 5px;
+  border: 0;
+  padding: 0;
+}
+
+.web-uploader._files .filelist li ._act {
+  float: right;
+  margin: 16px 10px 0;
+  cursor: pointer;
+  font-size: 15px;
+  position: absolute;
+  right: 0;
+}
+
+.web-uploader .filelist li p.log {
+  position: relative;
+  top: -45px;
+}
+
+.web-uploader .filelist li p.title {
+  left: 0;
+  overflow: hidden;
+  white-space: nowrap;
+  text-overflow: ellipsis;
+  top: 35px;
+  text-indent: 5px;
+  width: 160px;
+  text-align: center;
+  padding-top: 4px;
+  font-size: 11px;
+  color: #777;
+  margin: 3px auto;
+}
+
+.web-uploader._files .filelist li p.title {
+  font-weight: 600;
+  font-size: 15px;
+  vertical-align: middle;
+  height: 42px;
+  line-height: 35px;
+  padding-left: 8px;
+  float: left;
+  text-align: left;
+  color: #333;
+  width: 450px;
+}
+
+.web-uploader .filelist .file-type {
+  display: none;
+  font-size: 18px;
+  font-weight: bold;
+  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
+  margin: 20px 0 5px;
+  height: 105px;
+}
+
+.web-uploader .filelist li p.upload-progress {
+  position: absolute;
+  width: 100%;
+  bottom: 0;
+  left: 0;
+  height: 8px;
+  overflow: hidden;
+  z-index: 50;
+}
+
+.web-uploader .filelist li p.upload-progress span {
+  display: none;
+  overflow: hidden;
+  width: 0;
+  height: 100%;
+  background: #6472c9 url(/images/progress.png?46732e763f50c337fecabcc42150d842) repeat-x;
+  -webit-transition: width 200ms linear;
+  transition: width 200ms linear;
+  -webkit-animation: progressmove 2s linear infinite;
+  animation: progressmove 2s linear infinite;
+  -webkit-transform: translateZ(0);
+}
+
+@-webkit-keyframes progressmove {
+  0% {
+    background-position: 0 0;
+  }
+
+  100% {
+    background-position: 17px 0;
+  }
+}
+
+@keyframes progressmove {
+  0% {
+    background-position: 0 0;
+  }
+
+  100% {
+    background-position: 17px 0;
+  }
+}
+
+.web-uploader .filelist li .imgWrap {
+  position: relative;
+  z-index: 2;
+  line-height: 100%;
+  vertical-align: middle;
+  overflow: hidden;
+  width: 100%;
+  height: 120px;
+  transform-origin: 50% 50%;
+  -webit-transition: 200ms ease-out;
+  transition: 200ms ease-out;
+  margin-bottom: 0;
+}
+
+.web-uploader .filelist li img {
+  width: auto;
+  height: 120px;
+}
+
+.web-uploader .filelist li p.error {
+  background: #bd4147;
+  color: #fff;
+  position: absolute;
+  bottom: 0;
+  left: 0;
+  height: 28px;
+  line-height: 28px;
+  width: 100%;
+  z-index: 100;
+}
+
+.web-uploader._files .filelist li p.error {
+  background: #bd4147;
+  color: #fff;
+  font-weight: 500;
+  padding: 0 20px;
+  width: auto;
+  margin-left: 40%;
+  top: 0;
+}
+
+.web-uploader .filelist li .success {
+  display: block;
+  position: absolute;
+  left: 0;
+  bottom: 0;
+  height: 40px;
+  width: 100%;
+  z-index: 200;
+}
+
+.web-uploader .filelist li .success em {
+  position: absolute;
+  right: 0;
+  border-color: transparent;
+  border-style: solid;
+  border-width: 0 0 33px 40px;
+  border-bottom-color: #21b978;
+  bottom: -1px;
+}
+
+.web-uploader li .success i {
+  position: absolute;
+  bottom: 5px;
+  right: 0;
+  color: #fff;
+  background: none;
+  border: none;
+  font-weight: bold;
+  outline: none;
+  text-align: center;
+  width: 20px;
+}
+
+.web-uploader .filelist div.file-panel {
+  position: absolute;
+  height: 32px;
+  width: 100%;
+  bottom: 0;
+  left: 0;
+  overflow: hidden;
+  z-index: 10;
+}
+
+.web-uploader .filelist div.file-panel span {
+  display: inline;
+  float: left;
+  width: 24px;
+  height: 24px;
+  line-height: 26px;
+  overflow: hidden;
+  margin: 5px 3px 5px;
+  font-weight: bold;
+  cursor: pointer;
+  color: #fff;
+  border-radius: 1px;
+  font-size: 14px;
+}
+
+.web-uploader .filelist div.file-panel a {
+  float: left;
+  margin-left: 3px;
+}
+
+.web-uploader .statusBar {
+  height: 53px;
+  line-height: 53px;
+  vertical-align: middle;
+  position: relative;
+}
+
+.web-uploader._files .statusBar {
+  border-top: 0;
+  padding: 0;
+}
+
+.web-uploader .statusBar .upload-progress {
+  border: 0;
+  width: 198px;
+  height: 18px;
+  display: inline-block;
+  text-align: center;
+  line-height: 45px;
+  color: #fff;
+  margin-top: 20px;
+  position: relative;
+  margin-right: 10px;
+  border-radius: 2px;
+}
+
+.web-uploader .statusBar .upload-progress span.percentage {
+  width: 0;
+  height: 100%;
+  left: 0;
+  top: 0;
+  background: #6472c9;
+  position: absolute;
+}
+
+.web-uploader .statusBar .upload-progress span.text {
+  position: relative;
+  z-index: 10;
+}
+
+.web-uploader .statusBar .info {
+  display: inline-block;
+  font-size: 14px;
+  color: #666 !important;
+}
+
+.web-uploader .statusBar .btns {
+  margin-top: 4px;
+  right: 20px;
+  line-height: 40px;
+  float: right;
+}
+
+.web-uploader._files .statusBar .btns {
+  right: 0;
+}
+
+.add-file-button {
+  display: inline-block;
+  float: left;
+}
+
+.web-uploader .placeholder:before {
+  font-size: 80px;
+  font-family: feather;
+  content: "\E8E3";
+}
+
+.file-panel .red-dark {
+  color: #bd4147;
+}
+

+ 1 - 1
resources/dist/dcat/extra/upload.js

@@ -856,7 +856,7 @@
         // 添加“添加文件”的按钮,
         uploader.addButton({
           id: addFileButtonSelector,
-          label: '<i class="glyphicon glyphicon-folder-open"></i> &nbsp;' + __('go_on_add')
+          label: '<i class="feather icon-folder"></i> &nbsp;' + __('go_on_add')
         });
       }
 

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 11 - 0
resources/dist/dcat/js/dcat-app.js


+ 1 - 1
resources/dist/dcat/plugins/webuploader/webuploader.css

@@ -456,5 +456,5 @@
 .web-uploader .placeholder:before {
 	font-size: 80px;
 	font-family: feather;
-	content: "\e8e1";
+	content: "\e8e3";
 }

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 0 - 0
resources/dist/dcat/plugins/webuploader/webuploader.min.css


+ 0 - 7
resources/dist/fonts/flag-icon-css/flags/1x1/bd.svg

@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<svg xmlns="http://www.w3.org/2000/svg" height="512" width="512" version="1">
-  <g stroke-width="1pt" fill-rule="evenodd">
-    <path fill="#0a5c12" d="M0 0h512v512H0z"/>
-    <ellipse cx="470.77" cy="360.7" rx="231.97" transform="matrix(.581 0 0 .581 -57.648 46.55)" ry="231.97" fill="#fc000f"/>
-  </g>
-</svg>

+ 1 - 3
resources/views/form/file.blade.php

@@ -45,7 +45,7 @@ Dcat.ready(function () {
         opts.upload = $.extend({
             pick: {
                 id: '#{{$_id}} .file-picker',
-                label: '<i class="glyphicon glyphicon-folder-open"></i>&nbsp; {{trans('admin.uploader.add_new_media')}}'
+                label: '<i class="feather icon-folder"></i>&nbsp; {{trans('admin.uploader.add_new_media')}}'
             },
             dnd: '#{{$_id}} .dnd-area',
             paste: '#{{$_id}} .web-uploader'
@@ -71,8 +71,6 @@ Dcat.ready(function () {
             }, 250);
         }
         resize();
-
-
     }
 });
 </script>

+ 1 - 1
src/Layout/Assets.php

@@ -102,7 +102,7 @@ class Assets
                 'dcat-admin/dcat/plugins/webuploader/webuploader.min.js',
                 'dcat-admin/dcat/extra/upload.js',
             ],
-            'css' => 'dcat-admin/dcat/plugins/webuploader/webuploader.min.css',
+            'css' => 'dcat-admin/dcat/extra/upload.css',
         ],
         '@chartjs' => [
             'js' => 'dcat-admin/dcat/plugins/chart.js/chart.bundle.min.js',

Algunos archivos no se mostraron porque demasiados archivos cambiaron en este cambio