Kanban refactor
parent
f5b8d0626a
commit
8e91fb444f
|
@ -13,4 +13,4 @@ block content
|
||||||
include views/components/large-summary
|
include views/components/large-summary
|
||||||
include views/modules/burndown
|
include views/modules/burndown
|
||||||
include views/modules/list-filters-kanban
|
include views/modules/list-filters-kanban
|
||||||
include views/modules/taskboard-table
|
include views/modules/kanban-table
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
div.kanban-tagline
|
||||||
|
a.taskboard-tag
|
||||||
|
div.kanban-task-inner
|
||||||
|
p.task-text
|
||||||
|
span.task-num #37
|
||||||
|
a.task-name(href="", title="task.subject").
|
||||||
|
Para IDE de desarrollo (al menos front end) yo recomiendo Aptana Studio.
|
||||||
|
figure.avatar
|
||||||
|
a(href="", title="UserName")
|
||||||
|
img.avatar(src="http://thecodeplayer.com/u/uifaces/12.jpg", alt="")
|
||||||
|
a(href="", title="Change assignation") Username
|
||||||
|
a.icon.icon-edit(href="", title="Edit", ng-click="ctrl.editTask(task)")
|
||||||
|
a.icon.icon-drag-h(href="", title="Drag&Drop")
|
||||||
|
a.task-points(href="", title="task points") 8
|
|
@ -35,3 +35,4 @@ div.summary.large-summary
|
||||||
span.icon.icon-iocaine
|
span.icon.icon-iocaine
|
||||||
span.number 10
|
span.number 10
|
||||||
span.description iocanie<br />doses
|
span.description iocanie<br />doses
|
||||||
|
a.button.button-green.toggle-analytics-visibility(href="", title="Show statistics") Show statistics
|
||||||
|
|
|
@ -0,0 +1,49 @@
|
||||||
|
div.kanban-table
|
||||||
|
div.kanban-table-header
|
||||||
|
div.kanban-table-inner
|
||||||
|
h2.task-colum_name Task
|
||||||
|
h2.task-colum_name Open
|
||||||
|
h2.task-colum_name Ready for test
|
||||||
|
h2.task-colum_name Closed
|
||||||
|
div.kanban-table-body
|
||||||
|
div.kanban-table-inner
|
||||||
|
div.taskboard_task-playground.task-column
|
||||||
|
div.kanban-task
|
||||||
|
include ../components/kanban-task
|
||||||
|
div.taskboard_task-playground.task-column
|
||||||
|
div.kanban-task
|
||||||
|
include ../components/kanban-task
|
||||||
|
div.taskboard_task-playground.task-column
|
||||||
|
div.kanban-task
|
||||||
|
include ../components/kanban-task
|
||||||
|
div.taskboard_task-playground.task-column
|
||||||
|
//-
|
||||||
|
div.taskboard-table-body
|
||||||
|
div.taskboard-table-inner(tg-taskboard-row-size-fixer)
|
||||||
|
div.task-row(ng-repeat="us in userstories track by us.id", tg-taskboard-taskrow)
|
||||||
|
div.taskboard_us-list.task-column
|
||||||
|
div.tag-list
|
||||||
|
span.tag(ng-repeat="tag in us.tags") {{ tag }}
|
||||||
|
h3.us-title
|
||||||
|
span.us-ref(tg-bo-ref="us.ref")
|
||||||
|
span(ng-bind="us.subject")
|
||||||
|
div.status(tg-us-status="us", on-update="ctrl.loadSprintState()")
|
||||||
|
a.us-status(href="", title="Status Name")
|
||||||
|
span.us-status-bind
|
||||||
|
span.icon.icon-arrow-bottom
|
||||||
|
ul.points-list(tg-taskboard-us-points="us")
|
||||||
|
include ../components/addnewtask
|
||||||
|
|
||||||
|
div.taskboard_task-playground.task-column(ng-repeat="st in taskStatusList track by st.id")
|
||||||
|
div.taskboard-task(ng-repeat="task in usTasks[us.id][st.id] track by task.id")
|
||||||
|
include ../components/taskboard-task
|
||||||
|
|
||||||
|
div.task-row(ng-init="us = null", tg-taskboard-taskrow)
|
||||||
|
div.taskboard_us-list.task-column
|
||||||
|
h3.us-title
|
||||||
|
span Unassigned tasks
|
||||||
|
include ../components/addnewtask
|
||||||
|
|
||||||
|
div.taskboard_task-playground.task-column(ng-repeat="st in taskStatusList track by st.id")
|
||||||
|
div.taskboard-task(ng-repeat="task in unassignedTasks[st.id] track by task.id")
|
||||||
|
include ../components/taskboard-task
|
|
@ -5,19 +5,9 @@ section.list-filters
|
||||||
span.icon.icon-filter
|
span.icon.icon-filter
|
||||||
| SHOW FILTERS
|
| SHOW FILTERS
|
||||||
|
|
||||||
li
|
|
||||||
a(href="#")
|
|
||||||
span.icon.icon-tag
|
|
||||||
| SHOW TAGS
|
|
||||||
|
|
||||||
li
|
|
||||||
a(href="#")
|
|
||||||
span.icon.icon-graph
|
|
||||||
| HIDE CFD GRAPH
|
|
||||||
|
|
||||||
div.new-issue
|
div.new-issue
|
||||||
a.button.button-green(href="")
|
a.button.button-green(href="")
|
||||||
span.text
|
span.text
|
||||||
| + NEW TASK
|
| + NEW TASK
|
||||||
a.button-bulk(href="")
|
a.button-bulk(href="")
|
||||||
span.icon.icon-bulk
|
span.icon.icon-bulk
|
||||||
|
|
|
@ -0,0 +1,66 @@
|
||||||
|
.kanban-task {
|
||||||
|
background: $postit;
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
position: relative;
|
||||||
|
&:hover {
|
||||||
|
.icon-edit,
|
||||||
|
.icon-drag-h {
|
||||||
|
@include transition(opacity .2s linear);
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.kanban-tagline {
|
||||||
|
@include table-flex();
|
||||||
|
}
|
||||||
|
.taskboard-tag {
|
||||||
|
@include table-flex-child(1, 0, 0, 0);
|
||||||
|
background: $postit-hover; //Fallback
|
||||||
|
height: .3rem;
|
||||||
|
}
|
||||||
|
.kanban-task-inner {
|
||||||
|
padding: 1rem;
|
||||||
|
}
|
||||||
|
.task-num {
|
||||||
|
color: $postit-hover;
|
||||||
|
margin-right: .5em;
|
||||||
|
}
|
||||||
|
.task-text {
|
||||||
|
padding-right: 2rem;
|
||||||
|
}
|
||||||
|
.avatar {
|
||||||
|
vertical-align: middle;
|
||||||
|
img {
|
||||||
|
margin-right: 1rem;
|
||||||
|
max-width: 3rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.task-points {
|
||||||
|
@extend %large;
|
||||||
|
color: $postit-hover;
|
||||||
|
padding: .5rem 1rem;
|
||||||
|
position: absolute;
|
||||||
|
right: 0;
|
||||||
|
top: .5rem;
|
||||||
|
}
|
||||||
|
.icon-edit,
|
||||||
|
.icon-drag-h {
|
||||||
|
@include transition(opacity .2s linear);
|
||||||
|
@extend %large;
|
||||||
|
bottom: .2rem;
|
||||||
|
color: $postit-hover;
|
||||||
|
opacity: 0;
|
||||||
|
position: absolute;
|
||||||
|
&:hover {
|
||||||
|
@include transition(color .3s linear);
|
||||||
|
color: darken($postit-hover, 15%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.icon-edit {
|
||||||
|
right: .5rem;
|
||||||
|
}
|
||||||
|
.icon-drag-h {
|
||||||
|
@extend %xlarge;
|
||||||
|
cursor: move;
|
||||||
|
right: 45%;
|
||||||
|
}
|
||||||
|
}
|
|
@ -25,6 +25,7 @@ $prefix-for-spec: true;
|
||||||
@import 'components/tag';
|
@import 'components/tag';
|
||||||
@import 'components/filter';
|
@import 'components/filter';
|
||||||
@import 'components/taskboard-task';
|
@import 'components/taskboard-task';
|
||||||
|
@import 'components/kanban-task';
|
||||||
@import 'components/notification-message';
|
@import 'components/notification-message';
|
||||||
@import 'components/basic-table';
|
@import 'components/basic-table';
|
||||||
@import 'components/paginator';
|
@import 'components/paginator';
|
||||||
|
@ -40,6 +41,7 @@ $prefix-for-spec: true;
|
||||||
@import 'modules/filters';
|
@import 'modules/filters';
|
||||||
@import 'modules/lightbox';
|
@import 'modules/lightbox';
|
||||||
@import 'modules/taskboard-table';
|
@import 'modules/taskboard-table';
|
||||||
|
@import 'modules/kanban-table';
|
||||||
@import 'modules/search-filter';
|
@import 'modules/search-filter';
|
||||||
@import 'modules/search-result-table';
|
@import 'modules/search-result-table';
|
||||||
@import 'modules/search-in';
|
@import 'modules/search-in';
|
||||||
|
|
|
@ -0,0 +1,53 @@
|
||||||
|
//Table basic shared vars
|
||||||
|
|
||||||
|
$column-width: 300px;
|
||||||
|
$column-flex: 1;
|
||||||
|
$column-shrink: 0;
|
||||||
|
$column-margin: 0 10px 0 0;
|
||||||
|
|
||||||
|
.kanban-table {
|
||||||
|
overflow: hidden;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.kanban-table-header {
|
||||||
|
margin-bottom: .5rem;
|
||||||
|
position: relative;
|
||||||
|
width: 100%;
|
||||||
|
.task-colum_name {
|
||||||
|
@include table-flex-child($column-flex, $column-width, $column-shrink, $column-width);
|
||||||
|
@extend %large;
|
||||||
|
background: $whitish;
|
||||||
|
margin: $column-margin;
|
||||||
|
padding: .5rem 0;
|
||||||
|
text-align: center;
|
||||||
|
text-transform: uppercase;
|
||||||
|
&:last-child {
|
||||||
|
margin-right: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.kanban-table-body {
|
||||||
|
height: 700px;
|
||||||
|
overflow-x: scroll;
|
||||||
|
overflow-y: scroll;
|
||||||
|
width: 100%;
|
||||||
|
.task-column {
|
||||||
|
@include table-flex-child($column-flex, $column-width, $column-shrink, $column-width);
|
||||||
|
margin: $column-margin;
|
||||||
|
padding: 1rem;
|
||||||
|
&:last-child {
|
||||||
|
margin-right: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.taskboard_task-playground {
|
||||||
|
background: $whitish;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.kanban-table-inner {
|
||||||
|
@include table-flex();
|
||||||
|
overflow: hidden;
|
||||||
|
position: absolute;
|
||||||
|
}
|
|
@ -6,6 +6,7 @@
|
||||||
// No clearfix or known hack fixes it
|
// No clearfix or known hack fixes it
|
||||||
// Could be because of flexbox?
|
// Could be because of flexbox?
|
||||||
// height of the table has been set manually, wich is ugly.
|
// height of the table has been set manually, wich is ugly.
|
||||||
.taskboard-table-header {
|
.taskboard-table-header,
|
||||||
|
.kanban-table-header {
|
||||||
height: 40px;
|
height: 40px;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue