Compare commits
27 Commits
fbad143bed
...
pkg/dev/ub
Author | SHA1 | Date | |
---|---|---|---|
07a5a34476 | |||
6bb8afd914 | |||
3eb96fc75e | |||
d6597270dd | |||
00a300cd00 | |||
e5315fe9d0 | |||
f5ed5a746a | |||
164377ec08 | |||
9cdacf70a0 | |||
fb37bb0e98 | |||
59dcb4c18a | |||
61ef77cf16 | |||
acde7436da | |||
b3d458ebac | |||
5284633e7f | |||
5c77f22c26 | |||
204d6869ec | |||
35683a4584 | |||
64dd215038 | |||
d8192e6953 | |||
4d3175a25e | |||
ca7b8aac47 | |||
971bf25f16 | |||
a2ab012c5f | |||
fb815c4d83 | |||
88a0a5bebe | |||
f54b579ae3 |
@ -195,17 +195,17 @@ export class BoardPage extends React.Component<BoardPageProps> {
|
|||||||
<div className="level-item">
|
<div className="level-item">
|
||||||
<span className="tag is-primary is-light is-normal">{lane.cards.length}</span>
|
<span className="tag is-primary is-light is-normal">{lane.cards.length}</span>
|
||||||
</div>
|
</div>
|
||||||
<h3 className="level-item is-size-5">
|
|
||||||
{lane.title}
|
|
||||||
</h3>
|
|
||||||
<button className="button is-light level-item is-small expand"
|
<button className="button is-light level-item is-small expand"
|
||||||
onClick={this.onMinimizeColumn}>
|
onClick={this.onMinimizeColumn}>
|
||||||
<span className="icon">
|
<span className="icon">
|
||||||
<i className="fas fa-chevron-right" aria-hidden="true"></i>
|
<i className="fas fa-chevron-right" aria-hidden="true"></i>
|
||||||
</span>
|
</span>
|
||||||
</button>
|
</button>
|
||||||
|
<h3 className="level-item is-size-5">
|
||||||
|
{lane.title}
|
||||||
|
</h3>
|
||||||
</div>
|
</div>
|
||||||
<div className="level-right">
|
<div className="level-right is-show-expand">
|
||||||
<button className="button is-light level-item is-small"
|
<button className="button is-light level-item is-small"
|
||||||
onClick={this.onNewCardClick.bind(this, lane.id)}>
|
onClick={this.onNewCardClick.bind(this, lane.id)}>
|
||||||
<span className="icon">
|
<span className="icon">
|
||||||
@ -228,7 +228,7 @@ export class BoardPage extends React.Component<BoardPageProps> {
|
|||||||
e.currentTarget.closest('.react-kanban-column').classList.toggle('minimized');
|
e.currentTarget.closest('.react-kanban-column').classList.toggle('minimized');
|
||||||
}
|
}
|
||||||
|
|
||||||
onCardDragEnd(b: any, card: any, source: any, dest: any) {
|
onCardDragEnd(card: any, source: any, dest: any) {
|
||||||
const { board } = this.props;
|
const { board } = this.props;
|
||||||
this.props.dispatch(moveCard(
|
this.props.dispatch(moveCard(
|
||||||
board.id,
|
board.id,
|
||||||
|
@ -101,23 +101,41 @@
|
|||||||
scrollbar-color: $grey-lighter, #f1f1f1;
|
scrollbar-color: $grey-lighter, #f1f1f1;
|
||||||
scrollbar-width: 5px;
|
scrollbar-width: 5px;
|
||||||
|
|
||||||
|
.kanboard-card {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
&.minimized {
|
&.minimized {
|
||||||
max-width: 40px;
|
max-width: 70px;
|
||||||
min-width: 40px;
|
min-width: 70px;
|
||||||
|
|
||||||
writing-mode: vertical-rl;
|
writing-mode: vertical-rl;
|
||||||
text-orientation: sideways-right;
|
text-orientation: sideways-right;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.level-item {
|
||||||
|
margin-right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.level-left {
|
||||||
|
margin-right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.level-right.is-show-expand {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
.kanboard-lane {
|
.kanboard-lane {
|
||||||
margin-right: -1em;
|
/*margin-right: -1em;*/
|
||||||
|
|
||||||
h3 {
|
h3 {
|
||||||
margin-top: .5em;
|
margin-top: .5em;
|
||||||
margin-right: -.5em;
|
/*margin-right: -.5em;*/
|
||||||
}
|
}
|
||||||
|
|
||||||
.tag {
|
.tag {
|
||||||
margin-right: -1em;
|
writing-mode: horizontal-tb;
|
||||||
}
|
}
|
||||||
|
|
||||||
.expand {
|
.expand {
|
||||||
@ -125,8 +143,13 @@
|
|||||||
margin-top: .5em;
|
margin-top: .5em;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.kanboard-card {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
&::-webkit-scrollbar {
|
&::-webkit-scrollbar {
|
||||||
width: 5px;
|
width: 5px;
|
||||||
|
@ -37,22 +37,22 @@ function handleMoveCard(state: any, action: any) {
|
|||||||
|
|
||||||
const kanboard = state.byID[boardID];
|
const kanboard = state.byID[boardID];
|
||||||
|
|
||||||
const lanes = [ ...kanboard.columns ];
|
const columns = [ ...kanboard.columns ];
|
||||||
const fromLane = lanes[fromLaneID];
|
const fromLane = columns[fromLaneID];
|
||||||
const toLane = lanes[toLaneID];
|
const toLane = columns[toLaneID];
|
||||||
const card = fromLane.cards[fromPosition];
|
const card = fromLane.cards[fromPosition];
|
||||||
|
|
||||||
const fromCards = [ ...fromLane.cards ];
|
const fromCards = [ ...fromLane.cards ];
|
||||||
if (fromLaneID !== toLaneID) {
|
if (fromLaneID !== toLaneID) {
|
||||||
fromCards.splice(fromPosition, 1);
|
fromCards.splice(fromPosition, 1);
|
||||||
lanes[fromLaneID] = {
|
columns[fromLaneID] = {
|
||||||
...fromLane,
|
...fromLane,
|
||||||
cards: fromCards,
|
cards: fromCards,
|
||||||
};
|
};
|
||||||
|
|
||||||
const toCards = [ ...toLane.cards ];
|
const toCards = [ ...toLane.cards ];
|
||||||
toCards.splice(toPosition, 0, card);
|
toCards.splice(toPosition, 0, card);
|
||||||
lanes[toLaneID] = {
|
columns[toLaneID] = {
|
||||||
...toLane,
|
...toLane,
|
||||||
cards: toCards,
|
cards: toCards,
|
||||||
};
|
};
|
||||||
@ -67,7 +67,7 @@ function handleMoveCard(state: any, action: any) {
|
|||||||
...state.byID,
|
...state.byID,
|
||||||
[boardID]: {
|
[boardID]: {
|
||||||
...state.byID[boardID],
|
...state.byID[boardID],
|
||||||
lanes,
|
columns,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -22,7 +22,7 @@ export function* moveCardSaga(action: any) {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
const toLane = kanboard.lanes[toLaneID];
|
const toLane = kanboard.columns[toLaneID];
|
||||||
const card = toLane.cards[toPosition];
|
const card = toLane.cards[toPosition];
|
||||||
|
|
||||||
if (!card) return;
|
if (!card) return;
|
||||||
|
1
debian/compat
vendored
Normal file
1
debian/compat
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
9
|
14
debian/control
vendored
Normal file
14
debian/control
vendored
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
Source: gengitkan
|
||||||
|
Section: unknown
|
||||||
|
Priority: optional
|
||||||
|
Maintainer: William Petit <wpetit@cadoles.com>
|
||||||
|
Build-Depends: debhelper (>= 8.0.0), wget, ca-certificates, tar
|
||||||
|
Standards-Version: 3.9.4
|
||||||
|
Homepage: http://forge.cadoles.com/wpetit/gengitkan
|
||||||
|
Vcs-Git: http://forge.cadoles.com/wpetit/gengitkan.git
|
||||||
|
Vcs-Browser: http://forge.cadoles.com/wpetit/gengitkan
|
||||||
|
|
||||||
|
Package: gengitkan
|
||||||
|
Architecture: amd64
|
||||||
|
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||||
|
Description: Application type "Kanboard" connectée à Gitea
|
1
debian/gengitkan.dirs
vendored
Normal file
1
debian/gengitkan.dirs
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
var/lib/gengitkan
|
13
debian/gengitkan.service
vendored
Normal file
13
debian/gengitkan.service
vendored
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Application type "Kanboard" connectée à Gitea
|
||||||
|
After=network-online.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
Environment=GENGITKAN_HTTP_PUBDIR=/usr/share/gengitkan/public
|
||||||
|
Environment=GENGITKAN_DATA_DBPATH=/var/lib/gengitkan/data.db
|
||||||
|
ExecStart=/usr/bin/gengitkan -workdir /usr/share/gengitkan -config /etc/gengitkan/server.conf
|
||||||
|
Restart=on-failure
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
54
debian/rules
vendored
Normal file
54
debian/rules
vendored
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
#!/usr/bin/make -f
|
||||||
|
# -*- makefile -*-
|
||||||
|
|
||||||
|
# Uncomment this to turn on verbose mode.
|
||||||
|
export DH_VERBOSE=1
|
||||||
|
|
||||||
|
GO_VERSION := 1.13.5
|
||||||
|
OS := linux
|
||||||
|
ARCH := amd64
|
||||||
|
GOPATH=$(HOME)/go
|
||||||
|
|
||||||
|
ifeq (, $(shell which go 2>/dev/null))
|
||||||
|
override_dh_auto_build: install-go
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq (, $(shell which node 2>/dev/null))
|
||||||
|
override_dh_auto_build: install-nodejs
|
||||||
|
endif
|
||||||
|
|
||||||
|
%:
|
||||||
|
dh $@ --with systemd
|
||||||
|
|
||||||
|
override_dh_auto_build: $(GOPATH)
|
||||||
|
cd client && npm install
|
||||||
|
GOPATH=$(GOPATH) PATH="$(PATH):/usr/local/go/bin:$(GOPATH)/bin" go mod vendor
|
||||||
|
GOPATH=$(GOPATH) PATH="$(PATH):/usr/local/go/bin:$(GOPATH)/bin" ARCH_TARGETS=$(ARCH) make release
|
||||||
|
|
||||||
|
$(GOPATH):
|
||||||
|
mkdir -p $(GOPATH)
|
||||||
|
|
||||||
|
install-go:
|
||||||
|
wget https://dl.google.com/go/go$(GO_VERSION).$(OS)-$(ARCH).tar.gz
|
||||||
|
tar -C /usr/local -xzf go$(GO_VERSION).$(OS)-$(ARCH).tar.gz
|
||||||
|
|
||||||
|
install-nodejs:
|
||||||
|
wget -O- https://deb.nodesource.com/setup_12.x | bash -
|
||||||
|
apt-get install -y nodejs
|
||||||
|
|
||||||
|
override_dh_auto_install:
|
||||||
|
|
||||||
|
mkdir -p debian/gengitkan/usr/share/gengitkan
|
||||||
|
mkdir -p debian/gengitkan/etc/gengitkan
|
||||||
|
mkdir -p debian/gengitkan/usr/bin
|
||||||
|
|
||||||
|
cp -r release/server-$(OS)-$(ARCH)/* debian/gengitkan/usr/share/gengitkan/
|
||||||
|
|
||||||
|
mv debian/gengitkan/usr/share/gengitkan/bin/server debian/gengitkan/usr/bin/gengitkan
|
||||||
|
mv debian/gengitkan/usr/share/gengitkan/server.conf debian/gengitkan/etc/gengitkan/server.conf
|
||||||
|
|
||||||
|
install -d debian/gengitkan
|
||||||
|
|
||||||
|
override_dh_strip:
|
||||||
|
|
||||||
|
override_dh_auto_test:
|
1
debian/source/format
vendored
Normal file
1
debian/source/format
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
3.0 (native)
|
Reference in New Issue
Block a user