Model ticket link counterparts explicitly
linter / quality (pull_request) Successful in 3m5s
tests / ci (8.4) (pull_request) Failing after 1m41s

This commit is contained in:
2026-05-23 10:29:22 +00:00
parent d60c33fa7c
commit 486994e441
22 changed files with 312 additions and 66 deletions
@@ -652,17 +652,30 @@ const replacementTicketTypes = (ticketTypeId: number) =>
>
<div class="grid gap-2">
<Label for="link-type-name">
New link type name
Source label
</Label>
<Input
id="link-type-name"
name="name"
required
placeholder="Relates to"
placeholder="Blocks"
/>
<InputError :message="errors.name" />
</div>
<div class="grid gap-2">
<Label for="link-type-counterpart-name">
Counterpart label
</Label>
<Input
id="link-type-counterpart-name"
name="counterpart_name"
required
placeholder="Blocked by"
/>
<InputError :message="errors.counterpart_name" />
</div>
<Button type="submit" :disabled="processing">
Add link type
</Button>
@@ -686,7 +699,7 @@ const replacementTicketTypes = (ticketTypeId: number) =>
<Label
:for="`link-type-name-${ticketLinkType.id}`"
>
Label
Source label
</Label>
<Input
:id="`link-type-name-${ticketLinkType.id}`"
@@ -697,6 +710,23 @@ const replacementTicketTypes = (ticketTypeId: number) =>
<InputError :message="errors.name" />
</div>
<div class="grid gap-2">
<Label
:for="`link-type-counterpart-name-${ticketLinkType.id}`"
>
Counterpart label
</Label>
<Input
:id="`link-type-counterpart-name-${ticketLinkType.id}`"
name="counterpart_name"
:default-value="ticketLinkType.counterpart_label"
required
/>
<InputError
:message="errors.counterpart_name"
/>
</div>
<div class="grid gap-2">
<Label
:for="`link-type-position-${ticketLinkType.id}`"