Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 433032701e | |||
| 4334420625 | |||
| 7e32e4c013 | |||
| 8fb5b80d8d |
+1
-1
@@ -1,2 +1,2 @@
|
|||||||
parameters:
|
parameters:
|
||||||
app.version: '0.4.13'
|
app.version: '0.4.15'
|
||||||
|
|||||||
@@ -102,7 +102,8 @@ const others = computed<AbsenceBalance[]>(() =>
|
|||||||
)
|
)
|
||||||
|
|
||||||
function formatNumber(n: number): string {
|
function formatNumber(n: number): string {
|
||||||
return (Math.round(n * 2) / 2).toString()
|
// Valeur réelle avec décimales (ex. 8,75) : pas d'arrondi qui gonflerait le solde.
|
||||||
|
return new Intl.NumberFormat('fr-FR', { maximumFractionDigits: 2 }).format(n)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Total entitlement = acquired (N-1) + in-progress (N); falls back to the
|
// Total entitlement = acquired (N-1) + in-progress (N); falls back to the
|
||||||
|
|||||||
@@ -75,9 +75,11 @@ export function useAbsenceHelpers() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function formatDays(days: number): string {
|
function formatDays(days: number): string {
|
||||||
const rounded = Math.round(days * 2) / 2
|
// Affiche la valeur réelle avec décimales (ex. 8,75) : un solde de CP se
|
||||||
const unit = rounded > 1 ? t('absences.daysPlural') : t('absences.daySingular')
|
// gère en demi/quart de journée, arrondir masquerait des droits réels.
|
||||||
return `${rounded} ${unit}`
|
const value = new Intl.NumberFormat('fr-FR', { maximumFractionDigits: 2 }).format(days)
|
||||||
|
const unit = days >= 2 ? t('absences.daysPlural') : t('absences.daySingular')
|
||||||
|
return `${value} ${unit}`
|
||||||
}
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
|||||||
@@ -41,6 +41,10 @@ class CreateTaskTool
|
|||||||
private readonly CalDavService $calDavService,
|
private readonly CalDavService $calDavService,
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param int[] $tagIds IDs of the tags to attach
|
||||||
|
* @param int[] $collaboratorIds IDs of the collaborators to attach
|
||||||
|
*/
|
||||||
public function __invoke(
|
public function __invoke(
|
||||||
int $projectId,
|
int $projectId,
|
||||||
string $title,
|
string $title,
|
||||||
|
|||||||
@@ -18,6 +18,9 @@ class ListTasksTool
|
|||||||
private readonly Security $security,
|
private readonly Security $security,
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param int[] $tagIds IDs of the tags to filter by
|
||||||
|
*/
|
||||||
public function __invoke(
|
public function __invoke(
|
||||||
?int $projectId = null,
|
?int $projectId = null,
|
||||||
?int $statusId = null,
|
?int $statusId = null,
|
||||||
|
|||||||
@@ -38,6 +38,10 @@ class UpdateTaskTool
|
|||||||
private readonly CalDavService $calDavService,
|
private readonly CalDavService $calDavService,
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param int[] $tagIds IDs of the tags to attach
|
||||||
|
* @param int[] $collaboratorIds IDs of the collaborators to attach
|
||||||
|
*/
|
||||||
public function __invoke(
|
public function __invoke(
|
||||||
int $id,
|
int $id,
|
||||||
?string $title = null,
|
?string $title = null,
|
||||||
|
|||||||
@@ -33,6 +33,9 @@ class CreateTimeEntryTool
|
|||||||
private readonly Security $security,
|
private readonly Security $security,
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param int[] $tagIds IDs of the tags to attach
|
||||||
|
*/
|
||||||
public function __invoke(
|
public function __invoke(
|
||||||
int $userId,
|
int $userId,
|
||||||
string $startedAt,
|
string $startedAt,
|
||||||
|
|||||||
@@ -30,6 +30,9 @@ class UpdateTimeEntryTool
|
|||||||
private readonly Security $security,
|
private readonly Security $security,
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param int[] $tagIds IDs of the tags to attach
|
||||||
|
*/
|
||||||
public function __invoke(
|
public function __invoke(
|
||||||
int $id,
|
int $id,
|
||||||
?string $title = null,
|
?string $title = null,
|
||||||
|
|||||||
Reference in New Issue
Block a user