M3 Integration fixes

This commit is contained in:
Mark Gregory
2026-09-21 10:14:57 +01:00
parent 4af997c465
commit 6d60cbff84
5853 changed files with 79032 additions and 1825 deletions
View File
View File
+1 -2
View File
@@ -648,10 +648,9 @@ span.flatpickr-weekday {
gap: .5rem;
border-radius: .85rem;
padding: .62rem 1.05rem;
font-size: .875rem;
font-size: .95rem;
line-height: 1.25rem;
font-weight: 800;
font-size: .95rem;
color: #ffffff !important;
text-decoration: none !important;
border: 1px solid rgba(255,255,255,.14);
View File
View File
View File
View File
View File
View File
+5 -1
View File
@@ -53,10 +53,14 @@
<section class="overflow-hidden rounded-2xl border border-zinc-700 bg-zinc-950 shadow-sm">
<div class="overflow-auto">
<table class="min-w-full border-collapse font-mono text-xs leading-6">
<caption class="sr-only">Source code for {{ $attachmentName }}</caption>
<thead class="sr-only">
<tr><th scope="col">Line</th><th scope="col">Source</th></tr>
</thead>
<tbody>
@foreach ($lines as $index => $line)
<tr class="group hover:bg-zinc-900/80">
<td class="select-none border-r border-zinc-800 bg-zinc-900 px-4 text-right text-zinc-500">{{ $index + 1 }}</td>
<th scope="row" class="select-none border-r border-zinc-800 bg-zinc-900 px-4 text-right font-normal text-zinc-500">{{ $index + 1 }}</th>
<td class="whitespace-pre px-4 text-zinc-100"><code>{{ $line }}</code></td>
</tr>
@endforeach
View File
+1 -1
View File
@@ -19,7 +19,7 @@
</label>
<div class="grid gap-2 sm:grid-cols-[minmax(0,1fr)_auto] sm:items-center">
<select
<select aria-label="Form Field"
wire:model.live="{{ $model }}"
class="h-9 w-full rounded-lg border border-zinc-300 bg-white px-3 text-sm font-semibold text-zinc-900 shadow-sm outline-none transition-colors duration-150 focus:border-blue-500 focus:ring-2 focus:ring-blue-500/30 dark:border-zinc-700 dark:bg-zinc-900 dark:text-zinc-100"
>
View File
+1 -1
View File
@@ -121,7 +121,7 @@
class="helpdesk-rich-editor block min-h-[14rem] w-full overflow-y-auto whitespace-pre-wrap break-words border-0 bg-zinc-950 px-5 py-4 text-base leading-7 text-zinc-100 outline-none transition placeholder:text-zinc-500 empty:before:pointer-events-none empty:before:text-zinc-500 empty:before:content-[attr(data-placeholder)] focus:ring-2 focus:ring-blue-500"
></div>
<textarea
<textarea aria-label="Form Field"
x-ref="input"
wire:model.defer="{{ $model }}"
spellcheck="true"
View File
+1
View File
@@ -1,5 +1,6 @@
<div class="overflow-x-auto">
<table class="min-w-full divide-y divide-zinc-200 text-sm dark:divide-zinc-700">
<caption class="sr-only">Data table</caption>
<thead
class="bg-zinc-50 text-left text-xs font-semibold uppercase tracking-wide text-zinc-500 dark:bg-zinc-800 dark:text-zinc-300">
<tr>
+1
View File
@@ -1,5 +1,6 @@
<div class="overflow-x-auto">
<table class="min-w-full divide-y divide-zinc-200 text-sm dark:divide-zinc-700">
<caption class="sr-only">Data table</caption>
<thead
class="bg-zinc-50 text-left text-xs font-semibold uppercase tracking-wide text-zinc-500 dark:bg-zinc-800 dark:text-zinc-300">
<tr>
+1
View File
@@ -1,5 +1,6 @@
<div class="overflow-x-auto">
<table class="min-w-full divide-y divide-zinc-200 text-sm dark:divide-zinc-700">
<caption class="sr-only">Data table</caption>
<thead
class="bg-zinc-50 text-left text-xs font-semibold uppercase tracking-wide text-zinc-500 dark:bg-zinc-800 dark:text-zinc-300">
<tr>
View File
+1
View File
@@ -1,5 +1,6 @@
<div class="overflow-x-auto">
<table class="min-w-full divide-y divide-zinc-200 text-sm dark:divide-zinc-700">
<caption class="sr-only">Data table</caption>
<thead
class="bg-zinc-50 text-left text-xs font-semibold uppercase tracking-wide text-zinc-500 dark:bg-zinc-800 dark:text-zinc-300">
<tr>
View File
View File
View File
View File
View File
View File
View File
+48 -29
View File
@@ -152,12 +152,14 @@
<flux:input wire:model="statusForm.sort_order" label="Sort" type="number" min="0" />
</div>
<label class="flex min-h-9 items-center gap-2 rounded-lg border border-zinc-200 bg-white px-3 py-2 text-xs font-semibold text-zinc-700 shadow-sm dark:border-zinc-700 dark:bg-zinc-950/60 dark:text-zinc-200 xl:col-span-3">
<input type="checkbox" wire:model="statusForm.is_closed" class="rounded border-zinc-600 bg-zinc-950 text-blue-600 focus:ring-blue-500">
<label for="sonar-input-39c53a1533" class="visually-hidden">sonar input 39c53a1533</label>
<input type="checkbox" wire:model="statusForm.is_closed" class="rounded border-zinc-600 bg-zinc-950 text-blue-600 focus:ring-blue-500" id="sonar-input-39c53a1533">
Closed status
</label>
<label class="flex min-h-9 items-center gap-2 rounded-lg border border-zinc-200 bg-white px-3 py-2 text-xs font-semibold text-zinc-700 shadow-sm dark:border-zinc-700 dark:bg-zinc-950/60 dark:text-zinc-200 xl:col-span-4">
<input type="checkbox" wire:model="statusForm.is_default"
class="rounded border-zinc-300 bg-zinc-950 text-blue-600 focus:ring-blue-500">
<label for="sonar-input-ecdb37bbfb" class="visually-hidden">sonar input ecdb37bbfb</label>
<input type="checkbox" wire:model="statusForm.is_default"
class="rounded border-zinc-300 bg-zinc-950 text-blue-600 focus:ring-blue-500" id="sonar-input-ecdb37bbfb">
Default status for new tickets
</label>
<div class="flex flex-wrap items-center gap-2 xl:col-span-12">
@@ -189,8 +191,9 @@
<flux:input wire:model="priorityForm.sort_order" label="Sort" type="number" min="0" />
</div>
<label class="flex min-h-9 items-center gap-2 rounded-lg border border-zinc-200 bg-white px-3 py-2 text-xs font-semibold text-zinc-700 shadow-sm dark:border-zinc-700 dark:bg-zinc-950/60 dark:text-zinc-200 xl:col-span-4">
<input type="checkbox" wire:model="priorityForm.is_default"
class="rounded border-zinc-300 bg-zinc-950 text-blue-600 focus:ring-blue-500">
<label for="sonar-input-dbeb3e74c7" class="visually-hidden">sonar input dbeb3e74c7</label>
<input type="checkbox" wire:model="priorityForm.is_default"
class="rounded border-zinc-300 bg-zinc-950 text-blue-600 focus:ring-blue-500" id="sonar-input-dbeb3e74c7">
Default for new tickets
</label>
<div class="flex flex-wrap items-center gap-2 xl:col-span-12">
@@ -231,8 +234,9 @@
<flux:textarea wire:model="categoryForm.description" label="Description" rows="3" />
</div>
<label class="flex min-h-9 items-center gap-2 rounded-lg border border-zinc-200 bg-white px-3 py-2 text-xs font-semibold text-zinc-700 shadow-sm dark:border-zinc-700 dark:bg-zinc-950/60 dark:text-zinc-200 xl:col-span-4">
<input type="checkbox" wire:model="categoryForm.is_default"
class="rounded border-zinc-300 bg-zinc-950 text-blue-600 focus:ring-blue-500">
<label for="sonar-input-994d89012d" class="visually-hidden">sonar input 994d89012d</label>
<input type="checkbox" wire:model="categoryForm.is_default"
class="rounded border-zinc-300 bg-zinc-950 text-blue-600 focus:ring-blue-500" id="sonar-input-994d89012d">
Default category for new tickets
</label>
<div class="flex flex-wrap items-center gap-2 xl:col-span-12">
@@ -273,8 +277,9 @@
<flux:textarea wire:model="teamForm.description" label="Description" rows="3" />
</div>
<label class="flex min-h-9 items-center gap-2 rounded-lg border border-zinc-200 bg-white px-3 py-2 text-xs font-semibold text-zinc-700 shadow-sm dark:border-zinc-700 dark:bg-zinc-950/60 dark:text-zinc-200 xl:col-span-4">
<input type="checkbox" wire:model="teamForm.is_default"
class="rounded border-zinc-300 bg-zinc-950 text-blue-600 focus:ring-blue-500">
<label for="sonar-input-e96f3a3323" class="visually-hidden">sonar input e96f3a3323</label>
<input type="checkbox" wire:model="teamForm.is_default"
class="rounded border-zinc-300 bg-zinc-950 text-blue-600 focus:ring-blue-500" id="sonar-input-e96f3a3323">
Default team for new tickets
</label>
<div class="flex flex-wrap items-center gap-2 xl:col-span-12">
@@ -323,8 +328,9 @@
<flux:textarea wire:model="projectForm.description" label="Description" rows="3" />
</div>
<label class="flex min-h-9 items-center gap-2 rounded-lg border border-zinc-200 bg-white px-3 py-2 text-xs font-semibold text-zinc-700 shadow-sm dark:border-zinc-700 dark:bg-zinc-950/60 dark:text-zinc-200 xl:col-span-4">
<input type="checkbox" wire:model="projectForm.is_default"
class="rounded border-zinc-300 bg-zinc-950 text-blue-600 focus:ring-blue-500">
<label for="sonar-input-12a008cf80" class="visually-hidden">sonar input 12a008cf80</label>
<input type="checkbox" wire:model="projectForm.is_default"
class="rounded border-zinc-300 bg-zinc-950 text-blue-600 focus:ring-blue-500" id="sonar-input-12a008cf80">
Default project for new tickets
</label>
<div class="flex flex-wrap items-center gap-2 xl:col-span-12">
@@ -357,7 +363,8 @@
@endforeach
</flux:select>
<label class="flex min-h-9 items-center gap-2 rounded-lg border border-zinc-200 bg-white px-3 py-2 text-xs font-semibold text-zinc-700 shadow-sm dark:border-zinc-700 dark:bg-zinc-950/60 dark:text-zinc-200">
<input type="checkbox" wire:model="boardForm.is_default" class="rounded border-zinc-300">
<label for="sonar-input-ca4f2ae3c4" class="visually-hidden">sonar input ca4f2ae3c4</label>
<input type="checkbox" wire:model="boardForm.is_default" class="rounded border-zinc-300" id="sonar-input-ca4f2ae3c4">
Default board
</label>
<div class="md:col-span-2">
@@ -370,7 +377,8 @@
@foreach ($statuses as $status)
<label
class="flex items-center gap-2 rounded-xl border border-zinc-200 bg-white px-3 py-2 text-sm text-zinc-700 dark:border-zinc-700 dark:bg-zinc-950 dark:text-zinc-200">
<input type="checkbox" wire:model="boardForm.status_ids"
<label for="sonar-input-d3efdc11be" class="visually-hidden">sonar input d3efdc11be</label>
<input type="checkbox" wire:model="boardForm.status_ids"
value="{{ $status->id }}" class="rounded border-zinc-300">
<span class="inline-flex h-3 w-3 rounded-full"
style="background-color: {{ \Modules\Helpdesk\Support\Color::css($status->color) }}"></span>
@@ -393,6 +401,7 @@
<div
class="overflow-hidden rounded-2xl border border-zinc-200 bg-white dark:border-zinc-700 dark:bg-zinc-900">
<table class="min-w-full divide-y divide-zinc-200 text-sm dark:divide-zinc-700">
<caption class="sr-only">Data table</caption>
<thead
class="bg-zinc-50 text-left text-xs font-semibold uppercase tracking-wide text-zinc-500 dark:bg-zinc-800 dark:text-zinc-300">
<tr>
@@ -514,8 +523,9 @@
placeholder="Optional comma-separated emails" />
<flux:input wire:model="workflowForm.bcc" label="BCC"
placeholder="Optional comma-separated emails" />
<label class="flex min-h-9 items-center gap-2 rounded-lg border border-zinc-200 bg-white px-3 py-2 text-xs font-semibold text-zinc-700 shadow-sm dark:border-zinc-700 dark:bg-zinc-950/60 dark:text-zinc-200"><input
type="checkbox" wire:model="workflowForm.is_active" class="rounded border-zinc-300">
<label class="flex min-h-9 items-center gap-2 rounded-lg border border-zinc-200 bg-white px-3 py-2 text-xs font-semibold text-zinc-700 shadow-sm dark:border-zinc-700 dark:bg-zinc-950/60 dark:text-zinc-200"><label for="sonar-input-d05aecf041" class="visually-hidden">sonar input d05aecf041</label>
<input
type="checkbox" wire:model="workflowForm.is_active" class="rounded border-zinc-300" id="sonar-input-d05aecf041">
Active</label>
<div class="md:col-span-full">
<flux:input wire:model="workflowForm.subject" label="Subject"
@@ -543,6 +553,7 @@
<div
class="overflow-hidden rounded-2xl border border-zinc-200 bg-white dark:border-zinc-700 dark:bg-zinc-900">
<table class="min-w-full divide-y divide-zinc-200 text-sm dark:divide-zinc-700">
<caption class="sr-only">Data table</caption>
<thead
class="bg-zinc-50 text-left text-xs font-semibold uppercase tracking-wide text-zinc-500 dark:bg-zinc-800 dark:text-zinc-300">
<tr>
@@ -609,8 +620,9 @@
<option value="{{ $team->id }}">{{ $team->name }}</option>
@endforeach
</flux:select>
<label class="flex min-h-9 items-center gap-2 rounded-lg border border-zinc-200 bg-white px-3 py-2 text-xs font-semibold text-zinc-700 shadow-sm dark:border-zinc-700 dark:bg-zinc-950/60 dark:text-zinc-200"><input
type="checkbox" wire:model="cannedForm.is_active" class="rounded border-zinc-300">
<label class="flex min-h-9 items-center gap-2 rounded-lg border border-zinc-200 bg-white px-3 py-2 text-xs font-semibold text-zinc-700 shadow-sm dark:border-zinc-700 dark:bg-zinc-950/60 dark:text-zinc-200"><label for="sonar-input-a305855102" class="visually-hidden">sonar input a305855102</label>
<input
type="checkbox" wire:model="cannedForm.is_active" class="rounded border-zinc-300" id="sonar-input-a305855102">
Active</label>
<div class="md:col-span-full">
<flux:input wire:model="cannedForm.subject" label="Optional subject" />
@@ -687,14 +699,17 @@
type="number" min="1" />
<flux:input wire:model="slaForm.resolution_minutes" label="Resolution minutes" type="number"
min="1" />
<label class="flex items-center gap-2 text-sm text-zinc-700 dark:text-zinc-200"><input
type="checkbox" wire:model="slaForm.is_default" class="rounded border-zinc-300">
<label class="flex items-center gap-2 text-sm text-zinc-700 dark:text-zinc-200"><label for="sonar-input-fc91c07151" class="visually-hidden">sonar input fc91c07151</label>
<input
type="checkbox" wire:model="slaForm.is_default" class="rounded border-zinc-300" id="sonar-input-fc91c07151">
Default</label>
<label class="flex items-center gap-2 text-sm text-zinc-700 dark:text-zinc-200"><input
type="checkbox" wire:model="slaForm.business_hours_only" class="rounded border-zinc-300">
<label class="flex items-center gap-2 text-sm text-zinc-700 dark:text-zinc-200"><label for="sonar-input-8ed03e31d9" class="visually-hidden">sonar input 8ed03e31d9</label>
<input
type="checkbox" wire:model="slaForm.business_hours_only" class="rounded border-zinc-300" id="sonar-input-8ed03e31d9">
Business hours</label>
<label class="flex items-center gap-2 text-sm text-zinc-700 dark:text-zinc-200"><input
type="checkbox" wire:model="slaForm.is_active" class="rounded border-zinc-300">
<label class="flex items-center gap-2 text-sm text-zinc-700 dark:text-zinc-200"><label for="sonar-input-f551debb0e" class="visually-hidden">sonar input f551debb0e</label>
<input
type="checkbox" wire:model="slaForm.is_active" class="rounded border-zinc-300" id="sonar-input-f551debb0e">
Active</label>
<div class="md:col-span-full flex gap-2">
<flux:button size="sm" type="submit" variant="primary"
@@ -709,6 +724,7 @@
<div
class="overflow-hidden rounded-2xl border border-zinc-200 bg-white dark:border-zinc-700 dark:bg-zinc-900">
<table class="min-w-full divide-y divide-zinc-200 text-sm dark:divide-zinc-700">
<caption class="sr-only">Data table</caption>
<thead class="bg-zinc-50 text-left text-xs font-semibold uppercase text-zinc-500 dark:bg-zinc-800">
<tr>
<th class="px-4 py-3">Policy</th>
@@ -792,8 +808,9 @@
<option value="{{ $status->id }}">{{ $status->name }}</option>
@endforeach
</flux:select>
<label class="flex min-h-9 items-center gap-2 rounded-lg border border-zinc-200 bg-white px-3 py-2 text-xs font-semibold text-zinc-700 shadow-sm dark:border-zinc-700 dark:bg-zinc-950/60 dark:text-zinc-200"><input
type="checkbox" wire:model="automationForm.is_active" class="rounded border-zinc-300">
<label class="flex min-h-9 items-center gap-2 rounded-lg border border-zinc-200 bg-white px-3 py-2 text-xs font-semibold text-zinc-700 shadow-sm dark:border-zinc-700 dark:bg-zinc-950/60 dark:text-zinc-200"><label for="sonar-input-bdabe054d8" class="visually-hidden">sonar input bdabe054d8</label>
<input
type="checkbox" wire:model="automationForm.is_active" class="rounded border-zinc-300" id="sonar-input-bdabe054d8">
Active</label>
<div class="md:col-span-full flex gap-2">
<flux:button size="sm" type="submit" variant="primary"
@@ -849,8 +866,9 @@
<option value="{{ $project->id }}">{{ $project->title }}</option>
@endforeach
</flux:select>
<label class="flex items-end gap-2 pb-2 text-sm"><input type="checkbox"
wire:model="checklistTemplateForm.is_active" class="rounded border-zinc-300">
<label class="flex items-end gap-2 pb-2 text-sm"><label for="sonar-input-cc3bd705c8" class="visually-hidden">sonar input cc3bd705c8</label>
<input type="checkbox"
wire:model="checklistTemplateForm.is_active" class="rounded border-zinc-300" id="sonar-input-cc3bd705c8">
Active</label>
<div class="md:col-span-full">
<flux:textarea wire:model="checklistTemplateForm.items_text"
@@ -945,8 +963,9 @@
<flux:input wire:model="productForm.type" label="Type" />
<flux:input wire:model="productForm.version" label="Version" />
<flux:input wire:model="productForm.release_channel" label="Release/build" /><label
class="flex items-end gap-2 pb-2 text-sm"><input type="checkbox"
wire:model="productForm.is_active" class="rounded border-zinc-300"> Active</label>
class="flex items-end gap-2 pb-2 text-sm"><label for="sonar-input-6a8040737f" class="visually-hidden">sonar input 6a8040737f</label>
<input type="checkbox"
wire:model="productForm.is_active" class="rounded border-zinc-300" id="sonar-input-6a8040737f"> Active</label>
<div class="md:col-span-full">
<flux:textarea wire:model="productForm.description" label="Description" rows="3" />
</div>
View File
View File
+1
View File
@@ -59,6 +59,7 @@
<div class="overflow-x-auto">
<table class="min-w-full divide-y divide-zinc-200 text-sm dark:divide-zinc-700">
<caption class="sr-only">Data table</caption>
<thead
class="bg-zinc-50 text-left text-xs font-semibold uppercase tracking-wide text-zinc-500 dark:bg-zinc-800 dark:text-zinc-300">
<tr>
+14 -9
View File
@@ -149,8 +149,9 @@
class="hd-attachment-action !rounded-lg !px-3 !py-2 !text-xs">
<i class="fa-solid fa-paperclip" aria-hidden="true"></i>
<span>Choose files</span>
<input name="attachments[]" type="file" multiple accept="{{ $helpdeskAttachmentAccept }}" class="sr-only"
data-helpdesk-file-input>
<label for="sonar-input-d20751f562" class="visually-hidden">attachments[]</label>
<input name="attachments[]" type="file" multiple accept="{{ $helpdeskAttachmentAccept }}" class="sr-only"
data-helpdesk-file-input id="sonar-input-d20751f562">
</label>
<button type="submit"
@@ -485,7 +486,7 @@
class="prose prose-sm min-h-[12rem] max-w-none bg-white p-4 text-sm leading-6 text-zinc-900 outline-none dark:prose-invert dark:bg-zinc-950 dark:text-zinc-100"
data-placeholder="Write a public reply or internal note. Right-click or Ctrl-click underlined words for spelling suggestions.">{!! $oldCommentBody !!}</div>
<textarea id="ticket-comment-body" name="commentBody" required spellcheck="true" lang="en-GB" autocorrect="on" autocomplete="on" autocapitalize="sentences" inputmode="text" class="sr-only" tabindex="-1" aria-hidden="true">{{ $oldCommentBody }}</textarea>
<textarea aria-label="Ticket Comment Body" id="ticket-comment-body" name="commentBody" required spellcheck="true" lang="en-GB" autocorrect="on" autocomplete="on" autocapitalize="sentences" inputmode="text" class="sr-only" tabindex="-1" aria-hidden="true">{{ $oldCommentBody }}</textarea>
</div>
<p class="mt-2 flex items-center gap-2 text-xs font-medium text-zinc-500 dark:text-zinc-400">
@@ -510,8 +511,9 @@
class="inline-flex cursor-pointer items-center justify-center rounded-lg bg-blue-600 px-3 py-2 text-xs font-bold text-white shadow-sm transition hover:bg-blue-700 focus-within:outline-none focus-within:ring-2 focus-within:ring-blue-400/70">
<i class="fa-solid fa-paperclip mr-2 text-xs" aria-hidden="true"></i>
<span>Choose files</span>
<input name="comment_attachments[]" type="file" multiple accept="{{ $helpdeskAttachmentAccept }}" class="sr-only"
data-helpdesk-file-input>
<label for="sonar-input-cc351ecc57" class="visually-hidden">comment attachments[]</label>
<input name="comment_attachments[]" type="file" multiple accept="{{ $helpdeskAttachmentAccept }}" class="sr-only"
data-helpdesk-file-input id="sonar-input-cc351ecc57">
</label>
</div>
@@ -535,7 +537,8 @@
@if ($canSeeInternalNotes)
<div class="grid gap-3 sm:grid-cols-2">
<label class="flex cursor-pointer items-start gap-3 rounded-xl border border-emerald-300 bg-emerald-50 p-3 text-emerald-950 shadow-sm transition hover:border-emerald-400 hover:bg-emerald-100/80 focus-within:border-emerald-500 focus-within:bg-emerald-100/80 focus-within:ring-2 focus-within:ring-emerald-400/30 active:bg-emerald-100/80 dark:border-emerald-900 dark:bg-emerald-950/60 dark:text-emerald-100 dark:hover:border-emerald-700 dark:hover:bg-emerald-900/50 dark:focus-within:bg-emerald-900/50">
<input type="radio" name="internal" value="0" @checked(! old('internal')) class="mt-1 border-emerald-400 text-emerald-600 focus:ring-emerald-500">
<label for="sonar-input-f732ff44ac" class="visually-hidden">internal</label>
<input type="radio" name="internal" value="0" @checked(! old('internal')) class="mt-1 border-emerald-400 text-emerald-600 focus:ring-emerald-500" id="sonar-input-f732ff44ac">
<span>
<span class="block text-sm font-extrabold">Public reply</span>
<span class="mt-1 block text-xs font-semibold opacity-80">Visible to the requester and counts as the first SLA response.</span>
@@ -543,7 +546,8 @@
</label>
<label class="flex cursor-pointer items-start gap-3 rounded-xl border border-purple-300 bg-purple-50 p-3 text-purple-950 shadow-sm transition hover:border-purple-400 hover:bg-purple-100/80 focus-within:border-purple-500 focus-within:bg-purple-100/80 focus-within:ring-2 focus-within:ring-purple-400/30 active:bg-purple-100/80 dark:border-purple-900 dark:bg-purple-950/60 dark:text-purple-100 dark:hover:border-purple-700 dark:hover:bg-purple-900/50 dark:focus-within:bg-purple-900/50">
<input type="radio" name="internal" value="1" @checked((bool) old('internal')) class="mt-1 border-purple-400 text-purple-600 focus:ring-purple-500">
<label for="sonar-input-2d1a395f19" class="visually-hidden">internal</label>
<input type="radio" name="internal" value="1" @checked((bool) old('internal')) class="mt-1 border-purple-400 text-purple-600 focus:ring-purple-500" id="sonar-input-2d1a395f19">
<span>
<span class="block text-sm font-extrabold">Internal note</span>
<span class="mt-1 block text-xs font-semibold opacity-80">MPBA/support-only note. Does not count as a public SLA response.</span>
@@ -1328,7 +1332,8 @@
@foreach ($ticket->checklistItems as $item)
<label
class="flex items-start gap-2 rounded-lg border border-zinc-200 p-2 text-xs dark:border-zinc-700">
<input type="checkbox" wire:click="toggleChecklistItem({{ $item->id }})"
<label for="sonar-input-a729c04093" class="visually-hidden">sonar input a729c04093</label>
<input type="checkbox" wire:click="toggleChecklistItem({{ $item->id }})"
@checked($item->is_completed) class="mt-1 rounded border-zinc-300">
<span
class="{{ $item->is_completed ? 'text-zinc-500 line-through' : 'text-zinc-800 dark:text-zinc-100' }}">{{ $item->title }}</span>
@@ -1657,7 +1662,7 @@
<style>
[data-helpdesk-sidebar-cards] details > summary::-webkit-details-marker {
display: none;
}
[data-helpdesk-sidebar-cards] details > summary {
View File
View File
View File
+4 -3
View File
@@ -56,7 +56,7 @@
</button>
</div>
<textarea spellcheck="true" lang="en-GB" name="description" rows="2" placeholder="Optional work note"
<textarea aria-label="Description" spellcheck="true" lang="en-GB" name="description" rows="2" placeholder="Optional work note"
class="block w-full rounded-lg border border-zinc-300 bg-white p-2 text-xs font-semibold text-zinc-900 shadow-sm focus:border-emerald-500 focus:ring-emerald-500 dark:border-zinc-700 dark:bg-zinc-950 dark:text-zinc-100"
data-dusk="ticket-time-description"></textarea>
@@ -153,8 +153,9 @@
<label class="flex items-start gap-3 rounded-xl border border-emerald-200 bg-emerald-50 p-3 text-sm text-emerald-950 dark:border-emerald-900 dark:bg-emerald-950 dark:text-emerald-100">
<input type="hidden" name="closure_internal" value="0">
<input type="checkbox" name="closure_internal" value="1"
class="mt-1 rounded border-emerald-400 text-purple-600 focus:ring-purple-500">
<label for="sonar-input-25ff0676dc" class="visually-hidden">closure internal</label>
<input type="checkbox" name="closure_internal" value="1"
class="mt-1 rounded border-emerald-400 text-purple-600 focus:ring-purple-500" id="sonar-input-25ff0676dc">
<span>
<span class="block font-extrabold">Internal closure note</span>
<span class="mt-1 block text-xs font-semibold opacity-80">Leave unticked to save the closure as a public customer-visible response.</span>
View File
+1 -1
View File
@@ -18,7 +18,7 @@
</button>
</div>
<textarea spellcheck="true" lang="en-GB" name="description" rows="2" placeholder="Optional work note"
<textarea aria-label="Description" spellcheck="true" lang="en-GB" name="description" rows="2" placeholder="Optional work note"
class="block w-full rounded-lg border border-zinc-300 bg-white p-2 text-xs font-semibold text-zinc-900 shadow-sm focus:border-emerald-500 focus:ring-emerald-500 dark:border-zinc-700 dark:bg-zinc-950 dark:text-zinc-100"
data-dusk="ticket-time-description">{{ old('description') }}</textarea>