diff --git a/package.json b/package.json
index 65cd4ff6..4952a9c7 100644
--- a/package.json
+++ b/package.json
@@ -26,7 +26,9 @@
"vue": "^2.6.12",
"vue-loader": "^15.9.7",
"vue-router": "^3.4.2",
- "vue-template-compiler": "^2.6.11"
+ "vue-template-compiler": "^2.6.11",
+ "webpack": "^5.38.1",
+ "webpack-cli": "^4.7.0"
},
"dependencies": {
"echarts": "^5.1.1",
diff --git a/resources/assets/js/components/DragInput.vue b/resources/assets/js/components/DragInput.vue
new file mode 100644
index 00000000..fb07cddb
--- /dev/null
+++ b/resources/assets/js/components/DragInput.vue
@@ -0,0 +1,396 @@
+
+
+
+
+
+
+
+
+ {{ textLength }}/{{ upperLimit }}
+
+
+
+
+
+
+
+
+
+
+
+ {{ enterButton }}
+
+
+
+
+
+ {{ textLength }}/{{ upperLimit }}
+
+
+
+
+
diff --git a/resources/assets/js/components/ScrollerY.vue b/resources/assets/js/components/ScrollerY.vue
new file mode 100644
index 00000000..1993edd2
--- /dev/null
+++ b/resources/assets/js/components/ScrollerY.vue
@@ -0,0 +1,97 @@
+
+
+
+
+
+
+
+
diff --git a/resources/assets/js/pages/manage.vue b/resources/assets/js/pages/manage.vue
index 33ee52f6..124ed2b4 100644
--- a/resources/assets/js/pages/manage.vue
+++ b/resources/assets/js/pages/manage.vue
@@ -152,6 +152,7 @@
}
.manage-box-new {
width: 80%;
+ height: 38px;
margin-top: 16px;
margin-bottom: 20px;
}
diff --git a/resources/assets/js/pages/manage/components/project-list.vue b/resources/assets/js/pages/manage/components/project-list.vue
index 567a9784..6fbb72c2 100644
--- a/resources/assets/js/pages/manage/components/project-list.vue
+++ b/resources/assets/js/pages/manage/components/project-list.vue
@@ -1,6 +1,239 @@
- list
+
+
+
✔️ Daily Task
+
Click + New To create new list and wait for project manager card Don't Create a card by yourself to manage a good colaboration.
+
+
+
+
+
+ -
+
+
+
+
+
+
+ -
+
+
+ -
+
+
These project will need a new brand Identity where they will get recognise.
+
+ magenta
+ red
+ volcano
+
+
+
+
+ -
+
+
These project will need a new brand Identity where they will get recognise.
+
+ magenta
+ red
+ volcano
+
+
+
+
+
+
+
+
+
+ -
+
+
+ -
+
+
These project will need a new brand Identity where they will get recognise.
+
+
+
+ -
+
+
These project will need a new brand Identity where they will get recognise.
+
+ primary
+ success
+ error
+ warning
+ magenta
+ red
+ volcano
+
+
+
+
+
+
+
+
+
+
+
@@ -8,7 +241,235 @@
:global {
.project-list {
display: flex;
- align-items: flex-start;
+ flex-direction: column;
+ .project-head {
+ display: flex;
+ align-items: flex-start;
+ margin: 32px;
+ .project-titbox {
+ .project-title {
+ flex: 1;
+ color: #333333;
+ font-size: 28px;
+ font-weight: 600;
+ }
+ .project-subtitle {
+ color: #999999;
+ margin-top: 18px;
+ line-height: 24px;
+ }
+ }
+ .project-icons {
+ display: flex;
+ align-items: center;
+ margin-top: 2px;
+ margin-left: 80px;
+ flex-shrink: 0;
+ > li {
+ list-style: none;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ width: 36px;
+ height: 36px;
+ position: relative;
+ margin-left: 16px;
+ &.project-icon {
+ border-radius: 50%;
+ background-color: #F2F3F5;
+ .ivu-icon {
+ font-size: 20px;
+ }
+ .ivu-badge {
+ position: absolute;
+ top: -6px;
+ left: 20px;
+ transform: scale(0.8);
+ }
+ }
+ &.project-avatar {
+ .ivu-avatar {
+ width: 36px;
+ height: 36px;
+ }
+ &:before {
+ content: "";
+ position: absolute;
+ right: 0;
+ bottom: 0;
+ width: 9px;
+ height: 9px;
+ border-radius: 50%;
+ background-color: #ff0000;
+ border: 1px solid #ffffff;
+ z-index: 1;
+ }
+ &.online {
+ &:before {
+ background-color: #509E76;
+ }
+ }
+ }
+ }
+ }
+ }
+ .project-column {
+ display: flex;
+ height: 100%;
+ overflow-x: auto;
+ > ul {
+ display: inline-flex;
+ justify-content: space-between;
+ align-items: center;
+ > li {
+ flex-shrink: 0;
+ list-style: none;
+ width: 260px;
+ height: 100%;
+ display: flex;
+ flex-direction: column;
+ &:first-child {
+ margin-left: 22px;
+ }
+ &:last-child {
+ margin-right: 22px;
+ }
+ .column-head {
+ display: flex;
+ align-items: center;
+ padding: 6px 10px;
+ margin: 0 10px;
+ background-color: #F2F3F5;
+ border-radius: 4px;
+ .column-head-title {
+ flex: 1;
+ font-size: 16px;
+ font-weight: 600;
+ }
+ .column-head-num {
+ font-size: 12px;
+ padding: 2px 7px;
+ line-height: 16px;
+ border-radius: 3px;
+ color: #ffffff;
+ background-color: #1C1D1E;
+ }
+ }
+ > ul {
+ flex: 1;
+ height: 0;
+ overflow: auto;
+ > li {
+ list-style: none;
+ margin: 0 10px 16px;
+ background-color: #ffffff;
+ border-radius: 12px;
+ padding: 12px;
+ transition: box-shadow 0.3s;
+ &:hover {
+ box-shadow: 0 0 10px #e6ecfa;
+ }
+ &:first-child {
+ margin-top: 16px;
+ }
+ .task-head {
+ display: flex;
+ align-items: center;
+ .task-title {
+ flex: 1;
+ font-weight: 600;
+ }
+ .ivu-icon {
+ font-size: 22px;
+ color: #666666;
+ }
+ }
+ .task-desc {
+ color: #999999;
+ margin-top: 10px;
+ line-height: 18px;
+ }
+ .task-tags {
+ margin-top: 10px;
+ .ivu-tag {
+
+ }
+ }
+ .task-member {
+ margin-top: 10px;
+ display: flex;
+ align-items: center;
+ > ul {
+ flex: 1;
+ width: 0;
+ display: flex;
+ align-items: center;
+ margin-right: 12px;
+ > li {
+ list-style: none;
+ margin-left: -5px;
+ &:first-child {
+ margin-left: 0;
+ }
+ .ivu-avatar {
+ width: 28px;
+ height: 28px;
+ border: 2px solid #ffffff;
+ }
+ }
+ }
+ .task-icon {
+ margin-left: 6px;
+ font-size: 12px;
+ .ivu-icon {
+ margin-left: 1px;
+ font-size: 14px;
+ }
+ }
+ }
+ .task-progress {
+ margin-top: 10px;
+ display: flex;
+ align-items: center;
+ .task-time {
+ flex-shrink: 0;
+ background-color: #EAEDF2;
+ padding: 1px 4px;
+ font-size: 12px;
+ font-weight: 500;
+ border-radius: 3px;
+ display: flex;
+ align-items: center;
+ &.today {
+ color: #ffffff;
+ background-color: #ed4014;
+ }
+ &.tomorrow {
+ color: #ffffff;
+ background-color: #ff9900;
+ }
+ .ivu-icon {
+ margin-right: 2px;
+ font-size: 14px;
+ }
+ }
+ }
+ }
+ }
+ .column-add {
+ border-radius: 6px;
+ border: 2px dashed #F1f1f1;
+ padding: 5px 12px;
+ text-align: center;
+ margin: 0 10px 18px;
+ .ivu-icon {
+ color: #cccccc;
+ font-size: 22px;
+ }
+ }
+ }
+ }
+ }
}
}
diff --git a/resources/assets/js/pages/manage/components/project-message.vue b/resources/assets/js/pages/manage/components/project-message.vue
index fa6231cf..7348bea2 100644
--- a/resources/assets/js/pages/manage/components/project-message.vue
+++ b/resources/assets/js/pages/manage/components/project-message.vue
@@ -16,23 +16,104 @@
-
-
+
diff --git a/resources/assets/js/pages/manage/project-detail.vue b/resources/assets/js/pages/manage/project-detail.vue
index d30a1972..13519ba6 100644
--- a/resources/assets/js/pages/manage/project-detail.vue
+++ b/resources/assets/js/pages/manage/project-detail.vue
@@ -13,13 +13,16 @@
align-items: flex-start;
.project-list {
flex: 1;
+ width: 0;
height: 100%;
+ background-color: #fafafa;
}
.project-message {
position: relative;
height: 100%;
width: 40%;
max-width: 410px;
+ flex-shrink: 0;
&:before {
content: "";
position: absolute;