Skip to content

Commit b38c1ee

Browse files
authored
feat: add comment field for service(s) (#265)
closes #181
1 parent 3afb8e4 commit b38c1ee

File tree

7 files changed

+22
-0
lines changed

7 files changed

+22
-0
lines changed

components/admin/services-table-content.tsx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ import {
2727
} from "@/components/ui/blocks/dropdown-menu";
2828
import { NumberInputField } from "@/components/ui/blocks/number-input-field";
2929
import { SelectField, SelectItem } from "@/components/ui/blocks/select-field";
30+
import { TextAreaField } from "@/components/ui/blocks/text-area-field";
3031
import { TextInputField } from "@/components/ui/blocks/text-input-field";
3132
import { Button } from "@/components/ui/button";
3233
import {
@@ -250,6 +251,7 @@ export function AdminServicesTableContent(props: AdminServicesTableContentProps)
250251
<Column allowsSorting={true} id="marketplaceStatus">
251252
Marketplace status
252253
</Column>
254+
<Column id="comment">Comment</Column>
253255
<Column defaultWidth={50} id="actions">
254256
Actions
255257
</Column>
@@ -286,6 +288,9 @@ export function AdminServicesTableContent(props: AdminServicesTableContentProps)
286288
</Cell>
287289
<Cell>{row.marketplaceId}</Cell>
288290
<Cell>{row.marketplaceStatus}</Cell>
291+
<Cell>
292+
<span title={row.comment ?? undefined}>{row.comment}</span>
293+
</Cell>
289294
<Cell>
290295
<div className="flex justify-end">
291296
<DropdownMenuTrigger>
@@ -768,6 +773,7 @@ function ServicesEditForm(props: ServicesEditFormProps) {
768773
Private supplier
769774
</span>
770775
</label>
776+
<TextAreaField defaultValue={service?.comment ?? undefined} label="Comment" name="comment" />
771777

772778
<FormSuccessMessage key={createKey("form-success", formState?.timestamp)}>
773779
{formState?.status === "success" && formState.message.length > 0 ? formState.message : null}

lib/actions/admin/create-service.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ const formSchema = z.object({
2222
audience: z
2323
.enum(Object.values(ServiceAudience) as [ServiceAudience, ...Array<ServiceAudience>])
2424
.optional(),
25+
comment: z.string().optional(),
2526
dariahBranding: checkBox(z.boolean().optional()),
2627
eoscOnboarding: checkBox(z.boolean().optional()),
2728
marketplaceStatus: z
@@ -102,6 +103,7 @@ export async function createServiceAction(
102103
const {
103104
agreements,
104105
audience,
106+
comment,
105107
dariahBranding,
106108
eoscOnboarding,
107109
marketplaceStatus,
@@ -124,6 +126,7 @@ export async function createServiceAction(
124126
await createService({
125127
agreements,
126128
audience,
129+
comment,
127130
dariahBranding,
128131
eoscOnboarding,
129132
marketplaceStatus,

lib/actions/admin/update-service.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ const formSchema = z.object({
2323
audience: z
2424
.enum(Object.values(ServiceAudience) as [ServiceAudience, ...Array<ServiceAudience>])
2525
.optional(),
26+
comment: z.string().optional(),
2627
dariahBranding: checkBox(z.boolean().optional()),
2728
eoscOnboarding: checkBox(z.boolean().optional()),
2829
marketplaceStatus: z
@@ -104,6 +105,7 @@ export async function updateServiceAction(
104105
id,
105106
agreements,
106107
audience,
108+
comment,
107109
dariahBranding,
108110
eoscOnboarding,
109111
marketplaceStatus,
@@ -127,6 +129,7 @@ export async function updateServiceAction(
127129
id,
128130
agreements,
129131
audience,
132+
comment,
130133
dariahBranding,
131134
eoscOnboarding,
132135
marketplaceStatus,

lib/data/service.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ interface UpdateServiceParams {
8484
id: Service["id"];
8585
agreements?: Service["agreements"];
8686
audience?: Service["audience"];
87+
comment?: Service["comment"];
8788
dariahBranding?: Service["dariahBranding"];
8889
eoscOnboarding?: Service["eoscOnboarding"];
8990
marketplaceStatus?: Service["marketplaceStatus"];
@@ -107,6 +108,7 @@ export function updateService(params: UpdateServiceParams) {
107108
id,
108109
agreements,
109110
audience,
111+
comment,
110112
dariahBranding,
111113
eoscOnboarding,
112114
marketplaceStatus,
@@ -132,6 +134,7 @@ export function updateService(params: UpdateServiceParams) {
132134
data: {
133135
agreements,
134136
audience,
137+
comment,
135138
dariahBranding,
136139
eoscOnboarding,
137140
marketplaceStatus,
@@ -188,6 +191,7 @@ export function updateService(params: UpdateServiceParams) {
188191
interface CreateFullServiceParams {
189192
agreements?: Service["agreements"];
190193
audience?: Service["audience"];
194+
comment?: Service["comment"];
191195
dariahBranding?: Service["dariahBranding"];
192196
eoscOnboarding?: Service["eoscOnboarding"];
193197
marketplaceStatus?: Service["marketplaceStatus"];
@@ -210,6 +214,7 @@ export function createFullService(params: CreateFullServiceParams) {
210214
const {
211215
agreements,
212216
audience,
217+
comment,
213218
dariahBranding,
214219
eoscOnboarding,
215220
marketplaceStatus,
@@ -232,6 +237,7 @@ export function createFullService(params: CreateFullServiceParams) {
232237
data: {
233238
agreements,
234239
audience,
240+
comment,
235241
dariahBranding,
236242
eoscOnboarding,
237243
marketplaceStatus,

prisma/dbml/schema.dbml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -217,6 +217,7 @@ Table services {
217217
id String [pk]
218218
agreements String
219219
audience ServiceAudience
220+
comment String
220221
dariahBranding Boolean
221222
eoscOnboarding Boolean
222223
marketplaceStatus ServiceMarketplaceStatus
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
-- AlterTable
2+
ALTER TABLE "services" ADD COLUMN "comment" TEXT;

prisma/schema.prisma

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -429,6 +429,7 @@ model Service {
429429
430430
agreements String?
431431
audience ServiceAudience?
432+
comment String?
432433
dariahBranding Boolean? @map(name: "dariah_branding")
433434
eoscOnboarding Boolean? @map(name: "eosc_onboarding")
434435
marketplaceStatus ServiceMarketplaceStatus? @map(name: "marketplace_status")

0 commit comments

Comments
 (0)