Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(rental-agreement-application): Property condition subsection #16361

Merged
merged 10 commits into from
Oct 16, 2024
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import { RentalHousingPropertyInfo } from './rentalHousingInfo/rentalHousingProp
import { RentalHousingLandlordInfo } from './rentalHousingInfo/rentalHousingLandlordInfo'
import { RentalHousingTenantInfo } from './rentalHousingInfo/rentalHousingTenantInfo'
import { RentalHousingSpecialProvisions } from './rentalHousingInfo/rentalHousingSpecialProvisions'
import { RentalHousingConditionInspection } from './rentalHousingInfo/rentalHousingConditionInspection'
import { RentalHousingCondition } from './rentalHousingInfo/rentalHousingCondition'

export const RentalHousingInfo = buildSection({
id: 'rentalHousingInfo',
Expand All @@ -14,6 +14,6 @@ export const RentalHousingInfo = buildSection({
RentalHousingLandlordInfo,
RentalHousingTenantInfo,
RentalHousingSpecialProvisions,
RentalHousingConditionInspection,
RentalHousingCondition,
],
})
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
import {
buildSubSection,
buildMultiField,
buildRadioField,
buildDescriptionField,
buildTextField,
buildFileUploadField,
} from '@island.is/application/core'
import * as m from '../../lib/messages'
import build from 'next/dist/build'

export const RentalHousingCondition = buildSubSection({
id: 'rentalHousingCondition',
title: m.housingCondition.subSectionName,
children: [
buildMultiField({
id: 'rentalHousingCondition',
title: m.housingCondition.pageTitle,
description: m.housingCondition.pageDescription,
children: [
buildDescriptionField({
id: 'rentalHousingConditionTitle',
title: m.housingCondition.inspectorTitle,
titleVariant: 'h3',
space: 1,
}),
buildRadioField({
id: 'rentalHousingConditionInspector',
title: '',
description: m.housingCondition.inspectorDescription,
options: [
{
value: 'contractParties',
label: m.housingCondition.inspectorOptionContractParties,
},
{
value: 'independentParty',
label: m.housingCondition.inspectorOptionIndependentParty,
},
],
hebaulf marked this conversation as resolved.
Show resolved Hide resolved
defaultValue: 'contractParties',
width: 'half',
}),
buildTextField({
id: 'rentalHousingConditionInspectorName',
title: m.housingCondition.independantInspectorNameLabel,
placeholder: m.housingCondition.independantInspectorNamePlaceholder,
condition: (answers) =>
answers.rentalHousingConditionInspector === 'independentParty',
hebaulf marked this conversation as resolved.
Show resolved Hide resolved
required: true,
}),
buildDescriptionField({
id: 'rentalHousingResultsTitle',
title: m.housingCondition.inspectionResultsTitle,
titleVariant: 'h3',
space: 6,
}),
buildTextField({
id: 'rentalHousingConditionTextInput',
title: m.housingCondition.inspectionResultsInputLabel,
description: m.housingCondition.inspectionResultsDescription,
placeholder: m.housingCondition.inspectionResultsInputPlaceholder,
variant: 'textarea',
rows: 8,
minLength: 1,
}),
buildFileUploadField({
id: 'fileUpload.housingCondition',
title: m.housingCondition.fileUploadTitle,
uploadHeader: m.housingCondition.fileUploadTitle,
uploadDescription: m.housingCondition.fileUploadDescription,
uploadAccept: '.pdf, .doc, .docx, .rtf, .jpg, .jpeg, .png, .heic',
uploadMultiple: true,
forImageUpload: true,
}),
],
}),
],
})

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,12 @@ import { z } from 'zod'
import * as kennitala from 'kennitala'
import * as m from './messages'

const FileSchema = z.object({
name: z.string(),
key: z.string(),
url: z.string().optional(),
})

export const dataSchema = z.object({
approveExternalData: z.boolean().refine((v) => v),
applicant: z.object({
Expand All @@ -11,4 +17,7 @@ export const dataSchema = z.object({
params: m.dataSchema.nationalId,
}),
}),
fileUpload: z.object({
housingCondition: z.array(FileSchema).optional(),
}),
})
Original file line number Diff line number Diff line change
@@ -1,73 +1,83 @@
import { defineMessages } from 'react-intl'

export const housingConditionInspection = defineMessages({
export const housingCondition = defineMessages({
subSectionName: {
id: 'ra.application:housingConditionInspection.subSectionName',
id: 'ra.application:housingCondition.subSectionName',
defaultMessage: 'Ástandsskoðun',
description: 'Housing condition inspection sub section name',
},
pageTitle: {
id: 'ra.application:housingConditionInspection.pageTitle',
id: 'ra.application:housingCondition.pageTitle',
defaultMessage: 'Ástand húsnæðis',
description: 'Housing condition inspection page title',
},
pageDescription: {
id: 'ra.application:housingConditionInspection.pageDescription',
id: 'ra.application:housingCondition.pageDescription',
defaultMessage:
'Leigusamningur þarf lögum samkvæmt að innihalda ástandsúttekt á húsnæðinu. Sú úttekt þarf að fara fram við samningsgerðina. Gott er að skoða húsnæðið gaumgæfilega og taka myndir af ástandi. [Sjá nánar hér](https://island.is/skraning-leigusamnings-i-leiguskra#astandsuttekt-og-brunauttekt).',
description: 'Housing condition inspection page description',
},
inspectorTitle: {
id: 'ra.application:housingConditionInspection.inspectorTitle',
id: 'ra.application:housingCondition.inspectorTitle',
defaultMessage: 'Framkvæmdaraðili ástandsskoðunar',
description: 'Housing condition inspector title',
},
inspectorDescription: {
id: 'ra.application:housingConditionInspection.inspectorDescription',
id: 'ra.application:housingCondition.inspectorDescription',
defaultMessage:
'Athugið að aðilar geta sjálfir gert ástandsúttekt eða fengið óháðan aðila til þess og þá skiptist kostnaðurinn við það jafnt á milli aðila.',
description: 'Housing condition inspector description',
},
inspectorOptionContractParties: {
id: 'ra.application:housingConditionInspection.inspectorOptionContractParties',
id: 'ra.application:housingCondition.inspectorOptionContractParties',
defaultMessage: 'Samningsaðilar',
description: 'Housing condition inspector option contract parties',
},
inspectorOptionIndependentParty: {
id: 'ra.application:housingConditionInspection.inspectorOptionIndependentParty',
id: 'ra.application:housingCondition.inspectorOptionIndependentParty',
defaultMessage: 'Óháður aðili',
description: 'Housing condition inspector option independent party',
},
independantInspectorNameLabel: {
id: 'ra.application:housingCondition.independantInspectorNameLabel',
defaultMessage: 'Fullt Nafn',
description: 'Housing condition independant inspector name',
},
independantInspectorNamePlaceholder: {
id: 'ra.application:housingCondition.independantInspectorNamePlaceholder',
defaultMessage: 'Skrifaðu hér fullt nafn óháðs aðila',
description: 'Housing condition independant inspector name placeholder',
},
inspectionResultsTitle: {
id: 'ra.application:housingConditionInspection.inspectionResultsTitle',
id: 'ra.application:housingCondition.inspectionResultsTitle',
defaultMessage: 'Niðurstöður ástandsúttektar',
description: 'Housing condition inspection results title',
},
inspectionResultsDescription: {
id: 'ra.application:housingConditionInspection.inspectionResultsDescription',
id: 'ra.application:housingCondition.inspectionResultsDescription',
defaultMessage:
'Hér á að setja inn helstu niðurstöður ástandsúttektar. Gott er að taka myndir af þeim atriðum sem skipta máli. Ef óháður aðili hefur framkvæmt úttektina má setja niðurstöðurnar með sem fylgiskjal.',
description: 'Housing condition inspection results description',
},
inspectionResultsInputLabel: {
id: 'ra.application:housingConditionInspection.inspectionResultsInputLabel',
id: 'ra.application:housingCondition.inspectionResultsInputLabel',
defaultMessage: 'Ástandsúttekt',
description: 'Housing condition inspection results input label',
},
inspectionResultsInputPlaceholder: {
id: 'ra.application:housingConditionInspection.inspectionResultsPlaceholder',
id: 'ra.application:housingCondition.inspectionResultsPlaceholder',
defaultMessage: 'Skrifaðu hér allt sem á við',
description: 'Housing condition inspection results placeholder',
},
fileUploadTitle: {
id: 'ra.application:housingConditionInspection.fileUploadTitle',
id: 'ra.application:housingCondition.fileUploadTitle',
defaultMessage: 'Dragðu skjöl hingað til að hlaða upp',
description: 'Housing condition file upload title',
},
fileUploadDescription: {
id: 'ra.application:housingConditionInspection.fileUploadDescription',
id: 'ra.application:housingCondition.fileUploadDescription',
defaultMessage:
'Tekið er við skjölum með endingu: .png, .jpg, .jpeg, .pdf, .docx, .rtf. Skjöl geta ekki verið stærri en 0 mb og ekki fleiri en 0.',
'Tekið er við skjölum með endingu: .png, .jpg, .jpeg, .pdf, .docx, .rtf.',
description: 'Housing condition file upload description',
},
})
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ export * from './housing/registerProperty'
export * from './housing/landlordDetails'
export * from './housing/tenantDetails'
export * from './housing/specialProvisions'
export * from './housing/housingConditionInspection'
export * from './housing/housingCondition'
export * from './rentalInfo/rentalPeriod'
export * from './rentalInfo/rentalAmount'
export * from './rentalInfo/securityDeposit'
Expand Down
Loading