fix(ui) : use native date/datetime inputs instead of MalioInputText for planning dates
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -10,11 +10,11 @@
|
|||||||
|
|
||||||
<!-- Modal -->
|
<!-- Modal -->
|
||||||
<div
|
<div
|
||||||
class="relative z-10 flex w-full max-w-2xl flex-col overflow-hidden rounded-2xl bg-white shadow-2xl ring-1 ring-black/5 dark:bg-dark-surface dark:ring-dark-border"
|
class="relative z-10 flex w-full max-w-2xl flex-col overflow-hidden rounded-2xl bg-white shadow-2xl ring-1 ring-black/5"
|
||||||
style="max-height: min(90vh, 900px)"
|
style="max-height: min(90vh, 900px)"
|
||||||
>
|
>
|
||||||
<!-- Header -->
|
<!-- Header -->
|
||||||
<div class="border-b border-neutral-100 bg-neutral-50/80 px-4 py-4 sm:px-8 sm:py-5 dark:border-dark-border dark:bg-dark-surface/80">
|
<div class="border-b border-neutral-100 bg-neutral-50/80 px-4 py-4 sm:px-8 sm:py-5">
|
||||||
<div class="flex items-center justify-between">
|
<div class="flex items-center justify-between">
|
||||||
<div class="flex items-center gap-3">
|
<div class="flex items-center gap-3">
|
||||||
<span
|
<span
|
||||||
@@ -23,13 +23,13 @@
|
|||||||
>
|
>
|
||||||
{{ task.project.code }}-{{ task.number }}
|
{{ task.project.code }}-{{ task.number }}
|
||||||
</span>
|
</span>
|
||||||
<h2 class="text-lg font-bold tracking-tight text-neutral-900 dark:text-neutral-100">
|
<h2 class="text-lg font-bold tracking-tight text-neutral-900">
|
||||||
{{ isEditing ? $t('tasks.editTask') : $t('tasks.addTask') }}
|
{{ isEditing ? $t('tasks.editTask') : $t('tasks.addTask') }}
|
||||||
</h2>
|
</h2>
|
||||||
</div>
|
</div>
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
class="flex h-8 w-8 items-center justify-center rounded-lg text-neutral-400 transition-colors hover:bg-neutral-200/60 hover:text-neutral-600 dark:hover:bg-dark-hover dark:hover:text-neutral-200"
|
class="flex h-8 w-8 items-center justify-center rounded-lg text-neutral-400 transition-colors hover:bg-neutral-200/60 hover:text-neutral-600"
|
||||||
@click="close"
|
@click="close"
|
||||||
>
|
>
|
||||||
<Icon name="mdi:close" size="20" />
|
<Icon name="mdi:close" size="20" />
|
||||||
@@ -147,7 +147,7 @@
|
|||||||
|
|
||||||
<!-- Tags -->
|
<!-- Tags -->
|
||||||
<div v-if="tags.length" class="mt-5">
|
<div v-if="tags.length" class="mt-5">
|
||||||
<p class="mb-2 text-sm font-medium text-neutral-700 dark:text-neutral-300">Tags</p>
|
<p class="mb-2 text-sm font-medium text-neutral-700">Tags</p>
|
||||||
<div class="flex flex-wrap gap-2">
|
<div class="flex flex-wrap gap-2">
|
||||||
<label
|
<label
|
||||||
v-for="tag in tags"
|
v-for="tag in tags"
|
||||||
@@ -155,7 +155,7 @@
|
|||||||
class="cursor-pointer rounded-full px-3 py-1 text-xs font-semibold transition-all"
|
class="cursor-pointer rounded-full px-3 py-1 text-xs font-semibold transition-all"
|
||||||
:class="form.tagIds.includes(tag.id)
|
:class="form.tagIds.includes(tag.id)
|
||||||
? 'text-white shadow-sm'
|
? 'text-white shadow-sm'
|
||||||
: 'bg-neutral-100 text-neutral-600 hover:bg-neutral-200 dark:bg-neutral-700 dark:text-neutral-300 dark:hover:bg-neutral-600'"
|
: 'bg-neutral-100 text-neutral-600 hover:bg-neutral-200'"
|
||||||
:style="form.tagIds.includes(tag.id) ? { backgroundColor: tag.color } : {}"
|
:style="form.tagIds.includes(tag.id) ? { backgroundColor: tag.color } : {}"
|
||||||
>
|
>
|
||||||
<input
|
<input
|
||||||
@@ -227,26 +227,32 @@
|
|||||||
<div>
|
<div>
|
||||||
<h3 class="mb-3 text-sm font-semibold text-neutral-700">{{ $t('tasks.planning.dates') }}</h3>
|
<h3 class="mb-3 text-sm font-semibold text-neutral-700">{{ $t('tasks.planning.dates') }}</h3>
|
||||||
<div class="grid grid-cols-1 gap-4 sm:grid-cols-2">
|
<div class="grid grid-cols-1 gap-4 sm:grid-cols-2">
|
||||||
<MalioInputText
|
<div>
|
||||||
v-model="form.scheduledStart"
|
<label class="mb-1 block text-sm font-medium text-neutral-700">{{ $t('tasks.planning.scheduledStart') }}</label>
|
||||||
:label="$t('tasks.planning.scheduledStart')"
|
<input
|
||||||
type="datetime-local"
|
v-model="form.scheduledStart"
|
||||||
input-class="w-full"
|
type="datetime-local"
|
||||||
/>
|
class="w-full rounded-md border border-neutral-300 px-3 py-2 text-sm focus:border-primary-500 focus:outline-none focus:ring-1 focus:ring-primary-500"
|
||||||
<MalioInputText
|
/>
|
||||||
v-model="form.scheduledEnd"
|
</div>
|
||||||
:label="$t('tasks.planning.scheduledEnd')"
|
<div>
|
||||||
type="datetime-local"
|
<label class="mb-1 block text-sm font-medium text-neutral-700">{{ $t('tasks.planning.scheduledEnd') }}</label>
|
||||||
input-class="w-full"
|
<input
|
||||||
/>
|
v-model="form.scheduledEnd"
|
||||||
|
type="datetime-local"
|
||||||
|
class="w-full rounded-md border border-neutral-300 px-3 py-2 text-sm focus:border-primary-500 focus:outline-none focus:ring-1 focus:ring-primary-500"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="mt-4">
|
<div class="mt-4">
|
||||||
<MalioInputText
|
<div class="sm:w-1/2">
|
||||||
v-model="form.deadline"
|
<label class="mb-1 block text-sm font-medium text-neutral-700">{{ $t('tasks.planning.deadline') }}</label>
|
||||||
:label="$t('tasks.planning.deadline')"
|
<input
|
||||||
type="date"
|
v-model="form.deadline"
|
||||||
input-class="w-full sm:w-1/2"
|
type="date"
|
||||||
/>
|
class="w-full rounded-md border border-neutral-300 px-3 py-2 text-sm focus:border-primary-500 focus:outline-none focus:ring-1 focus:ring-primary-500"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -410,7 +416,7 @@
|
|||||||
|
|
||||||
<!-- Footer -->
|
<!-- Footer -->
|
||||||
<div
|
<div
|
||||||
class="mt-6 flex items-center border-t border-neutral-100 pt-5 dark:border-dark-border"
|
class="mt-6 flex items-center border-t border-neutral-100 pt-5"
|
||||||
:class="isEditing ? 'justify-between' : 'justify-end'"
|
:class="isEditing ? 'justify-between' : 'justify-end'"
|
||||||
>
|
>
|
||||||
<button
|
<button
|
||||||
@@ -426,7 +432,7 @@
|
|||||||
<button
|
<button
|
||||||
v-if="canArchive"
|
v-if="canArchive"
|
||||||
type="button"
|
type="button"
|
||||||
class="rounded-lg border border-neutral-300 px-4 py-2 text-sm font-semibold text-neutral-700 transition-colors hover:bg-neutral-50 disabled:cursor-not-allowed disabled:opacity-50 dark:border-dark-border dark:text-neutral-300 dark:hover:bg-dark-hover"
|
class="rounded-lg border border-neutral-300 px-4 py-2 text-sm font-semibold text-neutral-700 transition-colors hover:bg-neutral-50 disabled:cursor-not-allowed disabled:opacity-50"
|
||||||
:disabled="isSubmitting"
|
:disabled="isSubmitting"
|
||||||
@click="handleArchive"
|
@click="handleArchive"
|
||||||
>
|
>
|
||||||
@@ -435,7 +441,7 @@
|
|||||||
<button
|
<button
|
||||||
v-if="canUnarchive"
|
v-if="canUnarchive"
|
||||||
type="button"
|
type="button"
|
||||||
class="rounded-lg border border-neutral-300 px-4 py-2 text-sm font-semibold text-neutral-700 transition-colors hover:bg-neutral-50 disabled:cursor-not-allowed disabled:opacity-50 dark:border-dark-border dark:text-neutral-300 dark:hover:bg-dark-hover"
|
class="rounded-lg border border-neutral-300 px-4 py-2 text-sm font-semibold text-neutral-700 transition-colors hover:bg-neutral-50 disabled:cursor-not-allowed disabled:opacity-50"
|
||||||
:disabled="isSubmitting"
|
:disabled="isSubmitting"
|
||||||
@click="handleUnarchive"
|
@click="handleUnarchive"
|
||||||
>
|
>
|
||||||
@@ -443,7 +449,7 @@
|
|||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
class="rounded-lg border border-neutral-300 px-4 py-2 text-sm font-semibold text-neutral-700 transition-colors hover:bg-neutral-50 dark:border-dark-border dark:text-neutral-300 dark:hover:bg-dark-hover"
|
class="rounded-lg border border-neutral-300 px-4 py-2 text-sm font-semibold text-neutral-700 transition-colors hover:bg-neutral-50"
|
||||||
@click="close"
|
@click="close"
|
||||||
>
|
>
|
||||||
Annuler
|
Annuler
|
||||||
|
|||||||
Reference in New Issue
Block a user