From 345a2e6adf2ee7fadfc5ef264837fd87ff65ff06 Mon Sep 17 00:00:00 2001 From: Jessica McInchak Date: Thu, 29 Aug 2024 22:47:59 +0200 Subject: [PATCH 01/13] rewrite data.applicant, remove data.user --- schemas/prototypeApplication.json | 1532 +++++++++++++++-- .../prototypeApplication/data/Applicant.ts | 171 ++ .../data/ApplicationData.ts | 16 +- .../schemas/prototypeApplication/data/User.ts | 28 - .../enums/ApplicationType.ts | 2 +- types/schemas/prototypeApplication/index.ts | 88 +- 6 files changed, 1642 insertions(+), 195 deletions(-) create mode 100644 types/schemas/prototypeApplication/data/Applicant.ts delete mode 100644 types/schemas/prototypeApplication/data/User.ts diff --git a/schemas/prototypeApplication.json b/schemas/prototypeApplication.json index 419e92fa..aecd87e8 100644 --- a/schemas/prototypeApplication.json +++ b/schemas/prototypeApplication.json @@ -3,61 +3,913 @@ "$schema": "http://json-schema.org/draft-07/schema#", "anyOf": [ { - "$ref": "#/definitions/PPApplication" + "$ref": "#/definitions/LDC" }, { - "$ref": "#/definitions/PAApplication" + "$ref": "#/definitions/PA" }, { - "$ref": "#/definitions/WTTApplication" + "$ref": "#/definitions/PP" } ], "definitions": { - "ApplicationDataBase": { + "Agent": { "additionalProperties": false, - "description": "Base type for ApplicationData. Contains all shared properties across all application types", "properties": { + "address": { + "$ref": "#/definitions/ApplicantAddress", + "description": "Address information for the applicant" + }, + "agent": { + "additionalProperties": false, + "description": "Contact information for the agent or proxy", + "properties": { + "address": { + "$ref": "#/definitions/UserAddress" + }, + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "email": { + "$ref": "#/definitions/Email" + }, + "name": { + "additionalProperties": false, + "properties": { + "first": { + "type": "string" + }, + "last": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "first", + "last" + ], + "type": "object" + }, + "phone": { + "additionalProperties": false, + "properties": { + "primary": { + "type": "string" + } + }, + "required": [ + "primary" + ], + "type": "object" + } + }, + "required": [ + "address", + "email", + "name", + "phone" + ], + "type": "object" + }, + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "email": { + "$ref": "#/definitions/Email" + }, + "name": { + "additionalProperties": false, + "properties": { + "first": { + "type": "string" + }, + "last": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "first", + "last" + ], + "type": "object" + }, + "phone": { + "additionalProperties": false, + "properties": { + "primary": { + "type": "string" + } + }, + "required": [ + "primary" + ], + "type": "object" + }, + "role": { + "enum": [ + "agent", + "proxy" + ], + "type": "string" + }, + "siteContact": { + "$ref": "#/definitions/SiteContact", + "description": "Contact information for the site visit" + }, + "type": { + "enum": [ + "individual", + "company", + "charity", + "public", + "parishCouncil" + ], + "type": "string" + } + }, + "required": [ + "address", + "agent", + "email", + "name", + "phone", + "role", + "siteContact", + "type" + ], + "type": "object" + }, + "ApplicantAddress": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "sameAsSiteAddress": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "sameAsSiteAddress" + ], + "type": "object" + }, + { + "$ref": "#/definitions/ApplicantAddressNotSameSite" + } + ] + }, + "ApplicantAddressNotSameSite": { + "additionalProperties": false, + "properties": { + "country": { + "type": "string" + }, + "county": { + "type": "string" + }, + "line1": { + "type": "string" + }, + "line2": { + "type": "string" + }, + "postcode": { + "type": "string" + }, + "sameAsSiteAddress": { + "const": false, + "type": "boolean" + }, + "town": { + "type": "string" + } + }, + "required": [ + "line1", + "postcode", + "sameAsSiteAddress", + "town" + ], + "type": "object" + }, + "ApplicantBase": { + "anyOf": [ + { + "$ref": "#/definitions/BaseApplicant" + }, + { + "$ref": "#/definitions/Agent" + } + ] + }, + "BaseApplicant": { + "additionalProperties": false, + "properties": { + "address": { + "$ref": "#/definitions/ApplicantAddress", + "description": "Address information for the applicant" + }, + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "email": { + "$ref": "#/definitions/Email" + }, + "name": { + "additionalProperties": false, + "properties": { + "first": { + "type": "string" + }, + "last": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "first", + "last" + ], + "type": "object" + }, + "phone": { + "additionalProperties": false, + "properties": { + "primary": { + "type": "string" + } + }, + "required": [ + "primary" + ], + "type": "object" + }, + "role": { + "$ref": "#/definitions/UserRoles", + "description": "The role of the user who completed the application" + }, + "siteContact": { + "$ref": "#/definitions/SiteContact", + "description": "Contact information for the site visit" + }, + "type": { + "enum": [ + "individual", + "company", + "charity", + "public", + "parishCouncil" + ], + "type": "string" + } + }, + "required": [ + "address", + "email", + "name", + "phone", + "role", + "siteContact", + "type" + ], + "type": "object" + }, + "ContactDetails": { + "additionalProperties": false, + "properties": { + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "email": { + "$ref": "#/definitions/Email" + }, + "name": { + "additionalProperties": false, + "properties": { + "first": { + "type": "string" + }, + "last": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "first", + "last" + ], + "type": "object" + }, + "phone": { + "additionalProperties": false, + "properties": { + "primary": { + "type": "string" + } + }, + "required": [ + "primary" + ], + "type": "object" + } + }, + "required": [ + "name", + "email", + "phone" + ], + "type": "object" + }, + "Date": { + "format": "date", + "type": "string" + }, + "Email": { + "format": "email", + "type": "string" + }, + "LDC": { + "additionalProperties": false, + "properties": { + "applicationType": { + "$ref": "#/definitions/LDCApplicationType" + }, + "data": { + "additionalProperties": false, + "properties": { + "applicant": { + "$ref": "#/definitions/LDCApplicant" + }, + "application": { + "$ref": "#/definitions/LDCApplicationData" + }, + "proposal": { + "$ref": "#/definitions/ProposalBase" + } + }, + "required": [ + "applicant", + "application", + "proposal" + ], + "type": "object" + } + }, + "required": [ + "applicationType", + "data" + ], + "type": "object" + }, + "LDCApplicant": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "address": { + "$ref": "#/definitions/ApplicantAddress", + "description": "Address information for the applicant" + }, + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "email": { + "$ref": "#/definitions/Email" + }, + "name": { + "additionalProperties": false, + "properties": { + "first": { + "type": "string" + }, + "last": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "first", + "last" + ], + "type": "object" + }, + "ownership": { + "additionalProperties": false, + "description": "Information about the propery owners, if different than the applicant", + "properties": { + "interest": { + "$ref": "#/definitions/OwnershipInterest" + }, + "owners": { + "items": { + "anyOf": [ + { + "$ref": "#/definitions/OwnersNoticeGiven" + }, + { + "$ref": "#/definitions/OwnersNoNoticeGiven" + } + ] + }, + "type": "array" + } + }, + "required": [ + "interest", + "owners" + ], + "type": "object" + }, + "phone": { + "additionalProperties": false, + "properties": { + "primary": { + "type": "string" + } + }, + "required": [ + "primary" + ], + "type": "object" + }, + "role": { + "$ref": "#/definitions/UserRoles", + "description": "The role of the user who completed the application" + }, + "siteContact": { + "$ref": "#/definitions/SiteContact", + "description": "Contact information for the site visit" + }, + "type": { + "enum": [ + "individual", + "company", + "charity", + "public", + "parishCouncil" + ], + "type": "string" + } + }, + "required": [ + "address", + "email", + "name", + "ownership", + "phone", + "role", + "siteContact", + "type" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "$ref": "#/definitions/ApplicantAddress", + "description": "Address information for the applicant" + }, + "agent": { + "additionalProperties": false, + "description": "Contact information for the agent or proxy", + "properties": { + "address": { + "$ref": "#/definitions/UserAddress" + }, + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "email": { + "$ref": "#/definitions/Email" + }, + "name": { + "additionalProperties": false, + "properties": { + "first": { + "type": "string" + }, + "last": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "first", + "last" + ], + "type": "object" + }, + "phone": { + "additionalProperties": false, + "properties": { + "primary": { + "type": "string" + } + }, + "required": [ + "primary" + ], + "type": "object" + } + }, + "required": [ + "address", + "email", + "name", + "phone" + ], + "type": "object" + }, + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "email": { + "$ref": "#/definitions/Email" + }, + "name": { + "additionalProperties": false, + "properties": { + "first": { + "type": "string" + }, + "last": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "first", + "last" + ], + "type": "object" + }, + "ownership": { + "additionalProperties": false, + "description": "Information about the propery owners, if different than the applicant", + "properties": { + "interest": { + "$ref": "#/definitions/OwnershipInterest" + }, + "owners": { + "items": { + "anyOf": [ + { + "$ref": "#/definitions/OwnersNoticeGiven" + }, + { + "$ref": "#/definitions/OwnersNoNoticeGiven" + } + ] + }, + "type": "array" + } + }, + "required": [ + "interest", + "owners" + ], + "type": "object" + }, + "phone": { + "additionalProperties": false, + "properties": { + "primary": { + "type": "string" + } + }, + "required": [ + "primary" + ], + "type": "object" + }, + "role": { + "enum": [ + "agent", + "proxy" + ], + "type": "string" + }, + "siteContact": { + "$ref": "#/definitions/SiteContact", + "description": "Contact information for the site visit" + }, + "type": { + "enum": [ + "individual", + "company", + "charity", + "public", + "parishCouncil" + ], + "type": "string" + } + }, + "required": [ + "address", + "agent", + "email", + "name", + "ownership", + "phone", + "role", + "siteContact", + "type" + ], + "type": "object" + } + ] + }, + "LDCApplicationData": { + "additionalProperties": false, + "description": "Specific ApplicationData required for \"Lawful Development Certificate\" applications", + "properties": { + "ldcSpecificProperty": { + "type": "number" + }, "somethingShared": { "type": "string" } }, "required": [ - "somethingShared" + "ldcSpecificProperty", + "somethingShared" + ], + "type": "object" + }, + "LDCApplicationType": { + "anyOf": [ + { + "const": "ldc", + "description": "Lawful Development Certificate", + "type": "string" + }, + { + "const": "ldc.breachOfCondition", + "description": "Lawful Development Certificate - Existing use lawful not to comply with a condition (S191C)", + "type": "string" + }, + { + "const": "ldc.existing", + "description": "Lawful Development Certificate - Existing use", + "type": "string" + }, + { + "const": "ldc.listedBuildingWorks", + "description": "Lawful Development Certificate - Works to a Listed Building (S26H)", + "type": "string" + }, + { + "const": "ldc.proposed", + "description": "Lawful Development Certificate - Proposed use", + "type": "string" + } + ] + }, + "MaintenanceContact": { + "items": { + "additionalProperties": false, + "properties": { + "address": { + "$ref": "#/definitions/UserAddress" + }, + "contact": { + "$ref": "#/definitions/ContactDetails" + }, + "when": { + "enum": [ + "duringConstruction", + "afterConstruction", + "duringAndAfterConstruction" + ], + "type": "string" + } + }, + "required": [ + "when", + "address", + "contact" + ], + "type": "object" + }, + "type": "array" + }, + "OpenSpaceDesignation": { + "$id": "#OpenSpaceDesignation", + "anyOf": [ + { + "const": "greenBelt", + "description": "Green Belt", + "type": "string" + }, + { + "const": "local", + "description": "Local Open Spaces", + "type": "string" + }, + { + "const": "metropolitan", + "description": "Metropolitan Open Land", + "type": "string" + }, + { + "const": "none", + "description": "Not designated", + "type": "string" + }, + { + "const": "other", + "description": "Other designation", + "type": "string" + } + ], + "description": "Designations of natural open spaces" + }, + "OwnersNoNoticeGiven": { + "additionalProperties": false, + "properties": { + "address": { + "anyOf": [ + { + "$ref": "#/definitions/UserAddress" + }, + { + "type": "string" + } + ] + }, + "interest": { + "$ref": "#/definitions/OwnershipInterest" + }, + "name": { + "type": "string" + }, + "noNoticeReason": { + "type": "string" + }, + "noticeGiven": { + "const": false, + "type": "boolean" + } + }, + "required": [ + "address", + "name", + "noNoticeReason", + "noticeGiven" + ], + "type": "object" + }, + "OwnersNoticeDate": { + "additionalProperties": false, + "properties": { + "address": { + "anyOf": [ + { + "$ref": "#/definitions/UserAddress" + }, + { + "type": "string" + } + ] + }, + "interest": { + "$ref": "#/definitions/OwnershipInterest" + }, + "name": { + "type": "string" + }, + "noticeDate": { + "$ref": "#/definitions/Date" + } + }, + "required": [ + "address", + "name", + "noticeDate" ], "type": "object" }, - "OpenSpaceDesignation": { - "$id": "#OpenSpaceDesignation", - "anyOf": [ - { - "const": "greenBelt", - "description": "Green Belt", - "type": "string" - }, - { - "const": "local", - "description": "Local Open Spaces", - "type": "string" + "OwnersNoticeGiven": { + "additionalProperties": false, + "properties": { + "address": { + "anyOf": [ + { + "$ref": "#/definitions/UserAddress" + }, + { + "type": "string" + } + ] }, - { - "const": "metropolitan", - "description": "Metropolitan Open Land", - "type": "string" + "interest": { + "$ref": "#/definitions/OwnershipInterest" }, - { - "const": "none", - "description": "Not designated", + "name": { "type": "string" }, - { - "const": "other", - "description": "Other designation", - "type": "string" + "noticeGiven": { + "const": true, + "type": "boolean" } + }, + "required": [ + "address", + "name", + "noticeGiven" ], - "description": "Designations of natural open spaces" + "type": "object" + }, + "OwnershipInterest": { + "enum": [ + "owner", + "tenant", + "occupier", + "other" + ], + "type": "string" }, - "PAApplication": { + "PA": { "additionalProperties": false, "properties": { "applicationType": { @@ -66,18 +918,18 @@ "data": { "additionalProperties": false, "properties": { + "applicant": { + "$ref": "#/definitions/ApplicantBase" + }, "application": { - "$ref": "#/definitions/ApplicationDataBase" + "$ref": "#/definitions/PAApplicationData" }, "proposal": { "$ref": "#/definitions/ProposalBase" - }, - "user": { - "$ref": "#/definitions/UserBase" } }, "required": [ - "user", + "applicant", "application", "proposal" ], @@ -90,6 +942,23 @@ ], "type": "object" }, + "PAApplicationData": { + "additionalProperties": false, + "description": "Specific ApplicationData required for \"Prior Approval\" applications", + "properties": { + "paSpecificProperty": { + "type": "number" + }, + "somethingShared": { + "type": "string" + } + }, + "required": [ + "paSpecificProperty", + "somethingShared" + ], + "type": "object" + }, "PAApplicationType": { "anyOf": [ { @@ -304,7 +1173,7 @@ } ] }, - "PPApplication": { + "PP": { "additionalProperties": false, "properties": { "applicationType": { @@ -313,18 +1182,18 @@ "data": { "additionalProperties": false, "properties": { + "applicant": { + "$ref": "#/definitions/PPApplicant" + }, "application": { "$ref": "#/definitions/PPApplicationData" }, "proposal": { "$ref": "#/definitions/ProposalBase" - }, - "user": { - "$ref": "#/definitions/PPUser" } }, "required": [ - "user", + "applicant", "application", "proposal" ], @@ -337,6 +1206,442 @@ ], "type": "object" }, + "PPApplicant": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "address": { + "$ref": "#/definitions/ApplicantAddress", + "description": "Address information for the applicant" + }, + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "email": { + "$ref": "#/definitions/Email" + }, + "maintenanceContact": { + "description": "Contact information for the person(s) responsible for maintenace while the works are carried out", + "items": { + "$ref": "#/definitions/MaintenanceContact" + }, + "type": "array" + }, + "name": { + "additionalProperties": false, + "properties": { + "first": { + "type": "string" + }, + "last": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "first", + "last" + ], + "type": "object" + }, + "ownership": { + "additionalProperties": false, + "description": "Information about the ownership certificate and propery owners, if different than the applicant", + "properties": { + "agriculturalTenants": { + "description": "Does the land have any agricultural tenants?", + "type": "boolean" + }, + "certificate": { + "enum": [ + "a", + "b", + "c", + "d" + ], + "type": "string" + }, + "declaration": { + "additionalProperties": false, + "description": "Declaration of the accuracy of the ownership certificate, including reasonable steps taken to find all owners and publish notice", + "properties": { + "accurate": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "accurate" + ], + "type": "object" + }, + "interest": { + "anyOf": [ + { + "$ref": "#/definitions/OwnershipInterest" + }, + { + "const": "owner.sole", + "type": "string" + }, + { + "const": "owner.co", + "type": "string" + } + ] + }, + "noticeGiven": { + "description": "Has requisite notice been given to all the known owners and agricultural tenants?", + "type": "boolean" + }, + "noticePublished": { + "additionalProperties": false, + "description": "Has a notice of the application been published in a newspaper circulating in the area where the land is situated?", + "properties": { + "date": { + "$ref": "#/definitions/Date" + }, + "newspaperName": { + "type": "string" + }, + "status": { + "type": "boolean" + } + }, + "required": [ + "status" + ], + "type": "object" + }, + "owners": { + "items": { + "$ref": "#/definitions/OwnersNoticeDate" + }, + "type": "array" + }, + "ownersKnown": { + "description": "Do you know the names and addresses of all owners and agricultural tenants?", + "enum": [ + "all", + "some", + "none" + ], + "type": "string" + } + }, + "required": [ + "interest", + "certificate", + "declaration" + ], + "type": "object" + }, + "phone": { + "additionalProperties": false, + "properties": { + "primary": { + "type": "string" + } + }, + "required": [ + "primary" + ], + "type": "object" + }, + "role": { + "$ref": "#/definitions/UserRoles", + "description": "The role of the user who completed the application" + }, + "siteContact": { + "$ref": "#/definitions/SiteContact", + "description": "Contact information for the site visit" + }, + "type": { + "enum": [ + "individual", + "company", + "charity", + "public", + "parishCouncil" + ], + "type": "string" + } + }, + "required": [ + "address", + "email", + "name", + "ownership", + "phone", + "role", + "siteContact", + "type" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "$ref": "#/definitions/ApplicantAddress", + "description": "Address information for the applicant" + }, + "agent": { + "additionalProperties": false, + "description": "Contact information for the agent or proxy", + "properties": { + "address": { + "$ref": "#/definitions/UserAddress" + }, + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "email": { + "$ref": "#/definitions/Email" + }, + "name": { + "additionalProperties": false, + "properties": { + "first": { + "type": "string" + }, + "last": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "first", + "last" + ], + "type": "object" + }, + "phone": { + "additionalProperties": false, + "properties": { + "primary": { + "type": "string" + } + }, + "required": [ + "primary" + ], + "type": "object" + } + }, + "required": [ + "address", + "email", + "name", + "phone" + ], + "type": "object" + }, + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "email": { + "$ref": "#/definitions/Email" + }, + "maintenanceContact": { + "description": "Contact information for the person(s) responsible for maintenace while the works are carried out", + "items": { + "$ref": "#/definitions/MaintenanceContact" + }, + "type": "array" + }, + "name": { + "additionalProperties": false, + "properties": { + "first": { + "type": "string" + }, + "last": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "first", + "last" + ], + "type": "object" + }, + "ownership": { + "additionalProperties": false, + "description": "Information about the ownership certificate and propery owners, if different than the applicant", + "properties": { + "agriculturalTenants": { + "description": "Does the land have any agricultural tenants?", + "type": "boolean" + }, + "certificate": { + "enum": [ + "a", + "b", + "c", + "d" + ], + "type": "string" + }, + "declaration": { + "additionalProperties": false, + "description": "Declaration of the accuracy of the ownership certificate, including reasonable steps taken to find all owners and publish notice", + "properties": { + "accurate": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "accurate" + ], + "type": "object" + }, + "interest": { + "anyOf": [ + { + "$ref": "#/definitions/OwnershipInterest" + }, + { + "const": "owner.sole", + "type": "string" + }, + { + "const": "owner.co", + "type": "string" + } + ] + }, + "noticeGiven": { + "description": "Has requisite notice been given to all the known owners and agricultural tenants?", + "type": "boolean" + }, + "noticePublished": { + "additionalProperties": false, + "description": "Has a notice of the application been published in a newspaper circulating in the area where the land is situated?", + "properties": { + "date": { + "$ref": "#/definitions/Date" + }, + "newspaperName": { + "type": "string" + }, + "status": { + "type": "boolean" + } + }, + "required": [ + "status" + ], + "type": "object" + }, + "owners": { + "items": { + "$ref": "#/definitions/OwnersNoticeDate" + }, + "type": "array" + }, + "ownersKnown": { + "description": "Do you know the names and addresses of all owners and agricultural tenants?", + "enum": [ + "all", + "some", + "none" + ], + "type": "string" + } + }, + "required": [ + "interest", + "certificate", + "declaration" + ], + "type": "object" + }, + "phone": { + "additionalProperties": false, + "properties": { + "primary": { + "type": "string" + } + }, + "required": [ + "primary" + ], + "type": "object" + }, + "role": { + "enum": [ + "agent", + "proxy" + ], + "type": "string" + }, + "siteContact": { + "$ref": "#/definitions/SiteContact", + "description": "Contact information for the site visit" + }, + "type": { + "enum": [ + "individual", + "company", + "charity", + "public", + "parishCouncil" + ], + "type": "string" + } + }, + "required": [ + "address", + "agent", + "email", + "name", + "ownership", + "phone", + "role", + "siteContact", + "type" + ], + "type": "object" + } + ] + }, "PPApplicationData": { "additionalProperties": false, "description": "Specific ApplicationData required for \"Planning Permission\" applications", @@ -498,27 +1803,6 @@ } ] }, - "PPUser": { - "additionalProperties": false, - "properties": { - "ppSpecificProperty": { - "type": "boolean" - }, - "role": { - "enum": [ - "applicant", - "agent", - "proxy" - ], - "type": "string" - } - }, - "required": [ - "ppSpecificProperty", - "role" - ], - "type": "object" - }, "ProposalBase": { "additionalProperties": false, "properties": { @@ -543,112 +1827,86 @@ }, "type": "object" }, - "UserBase": { - "additionalProperties": false, - "properties": { - "role": { - "enum": [ - "applicant", - "agent", - "proxy" - ], - "type": "string" - } - }, - "required": [ - "role" - ], - "type": "object" - }, - "WTTApplication": { - "additionalProperties": false, - "properties": { - "applicationType": { - "$ref": "#/definitions/WTTApplicationType" - }, - "data": { + "SiteContact": { + "anyOf": [ + { "additionalProperties": false, "properties": { - "application": { - "$ref": "#/definitions/WTTApplicationData" - }, - "proposal": { - "$ref": "#/definitions/ProposalBase" - }, - "user": { - "$ref": "#/definitions/WTTUser" + "role": { + "$ref": "#/definitions/UserRoles" } }, "required": [ - "user", - "application", - "proposal" + "role" ], "type": "object" + }, + { + "$ref": "#/definitions/SiteContactOther" } - }, - "required": [ - "applicationType", - "data" - ], - "type": "object" + ] }, - "WTTApplicationData": { + "SiteContactOther": { "additionalProperties": false, - "description": "Specific ApplicationData required for \"Works to trees\" applications", "properties": { - "somethingShared": { + "email": { "type": "string" }, - "wttSpecificProperty": { - "type": "number" + "name": { + "type": "string" + }, + "phone": { + "type": "string" + }, + "role": { + "const": "other", + "type": "string" } }, "required": [ - "somethingShared", - "wttSpecificProperty" + "role", + "name", + "email", + "phone" ], "type": "object" }, - "WTTApplicationType": { - "anyOf": [ - { - "const": "wtt", - "description": "Works to trees", + "UserAddress": { + "additionalProperties": false, + "properties": { + "country": { "type": "string" }, - { - "const": "wtt.consent", - "description": "Consent to carry out works to a tree with a Tree Preservation Order", + "county": { "type": "string" }, - { - "const": "wtt.notice", - "description": "Notification of proposed works to a tree in a Conservation Area", + "line1": { "type": "string" - } - ] - }, - "WTTUser": { - "additionalProperties": false, - "properties": { - "role": { - "enum": [ - "applicant", - "agent", - "proxy" - ], + }, + "line2": { "type": "string" }, - "wttSpecificProperty": { - "type": "boolean" + "postcode": { + "type": "string" + }, + "town": { + "type": "string" } }, "required": [ - "role", - "wttSpecificProperty" + "line1", + "town", + "postcode" ], "type": "object" + }, + "UserRoles": { + "enum": [ + "applicant", + "agent", + "proxy" + ], + "type": "string" } }, "description": "The root specification for a planning application in England generated by a digital planning service (prototype)", diff --git a/types/schemas/prototypeApplication/data/Applicant.ts b/types/schemas/prototypeApplication/data/Applicant.ts new file mode 100644 index 00000000..8a778906 --- /dev/null +++ b/types/schemas/prototypeApplication/data/Applicant.ts @@ -0,0 +1,171 @@ +import {Date, Email} from '../../../shared/utils'; +import {PrimaryApplicationType} from '../enums/ApplicationType'; + +export type ApplicantBase = BaseApplicant | Agent; + +export type BaseApplicant = ContactDetails & { + /** + * @description The role of the user who completed the application + */ + role: UserRoles; + /** + * @Description The type of applicant + */ + type: 'individual' | 'company' | 'charity' | 'public' | 'parishCouncil'; + /** + * @description Address information for the applicant + */ + address: ApplicantAddress; + /** + * @description Contact information for the site visit + */ + siteContact: SiteContact; +}; + +export interface Agent extends BaseApplicant { + role: Extract; + /** + * @description Contact information for the agent or proxy + */ + agent: ContactDetails & {address: UserAddress}; +} + +export type UserRoles = 'applicant' | 'agent' | 'proxy'; + +export type SiteContact = {role: UserRoles} | SiteContactOther; + +export interface SiteContactOther { + role: 'other'; + name: string; + email: string; + phone: string; +} + +export type ContactDetails = { + name: { + title?: string; + first: string; + last: string; + }; + email: Email; + phone: { + primary: string; + }; + company?: { + name: string; + }; +}; + +export type UserAddress = { + line1: string; + line2?: string; + town: string; + county?: string; + postcode: string; + country?: string; +}; + +export type ApplicantAddress = + | {sameAsSiteAddress: true} + | ApplicantAddressNotSameSite; + +export interface ApplicantAddressNotSameSite extends UserAddress { + sameAsSiteAddress: false; +} + +export type OwnershipInterest = 'owner' | 'tenant' | 'occupier' | 'other'; + +export interface BaseOwners { + name: string; + address: UserAddress | string; + interest?: OwnershipInterest; +} + +export interface OwnersNoticeGiven extends BaseOwners { + noticeGiven: true; +} + +export interface OwnersNoNoticeGiven extends BaseOwners { + noticeGiven: false; + noNoticeReason: string; +} + +export interface OwnersNoticeDate extends BaseOwners { + noticeDate: Date; +} + +export type MaintenanceContact = { + when: + | 'duringConstruction' + | 'afterConstruction' + | 'duringAndAfterConstruction'; + address: UserAddress; + contact: ContactDetails; +}[]; + +export type LDCApplicant = ApplicantBase & { + /** + * @description Information about the propery owners, if different than the applicant + */ + ownership: { + interest: OwnershipInterest; + owners: (OwnersNoticeGiven | OwnersNoNoticeGiven)[]; + }; +}; + +export type PPApplicant = ApplicantBase & { + /** + * @description Information about the ownership certificate and propery owners, if different than the applicant + */ + ownership: { + interest: OwnershipInterest | 'owner.sole' | 'owner.co'; + /** + * @description Does the land have any agricultural tenants? + */ + agriculturalTenants?: boolean; + /** + * @description Has requisite notice been given to all the known owners and agricultural tenants? + */ + noticeGiven?: boolean; + /** + * @description Has a notice of the application been published in a newspaper circulating in the area where the land is situated? + */ + noticePublished?: { + status: boolean; + date?: Date; + newspaperName?: string; + }; + /** + * @description Do you know the names and addresses of all owners and agricultural tenants? + */ + ownersKnown?: 'all' | 'some' | 'none'; + owners?: OwnersNoticeDate[]; + certificate: 'a' | 'b' | 'c' | 'd'; + /** + * @description Declaration of the accuracy of the ownership certificate, including reasonable steps taken to find all owners and publish notice + */ + declaration: { + accurate: true; + }; + }; + /** + * @description Contact information for the person(s) responsible for maintenace while the works are carried out + */ + maintenanceContact?: MaintenanceContact[]; +}; + +/** + * TypeMap of PrimaryApplicationTypes to their specific Applicant models + */ +interface ApplicantVariants { + ldc: LDCApplicant; + pp: PPApplicant; +} + +/** + * @internal Conditional type to return a specific or generic Applicant model, based on PrimaryApplicationType + */ +export type Applicant = + TPrimary extends keyof ApplicantVariants + ? ApplicantVariants[TPrimary] + : ApplicantBase; diff --git a/types/schemas/prototypeApplication/data/ApplicationData.ts b/types/schemas/prototypeApplication/data/ApplicationData.ts index ead5bf82..3214438f 100644 --- a/types/schemas/prototypeApplication/data/ApplicationData.ts +++ b/types/schemas/prototypeApplication/data/ApplicationData.ts @@ -8,10 +8,17 @@ export interface ApplicationDataBase { } /** - * @description Specific ApplicationData required for "Works to trees" applications + * @description Specific ApplicationData required for "Lawful Development Certificate" applications */ -export interface WTTApplicationData extends ApplicationDataBase { - wttSpecificProperty: number; +export interface LDCApplicationData extends ApplicationDataBase { + ldcSpecificProperty: number; +} + +/** + * @description Specific ApplicationData required for "Prior Approval" applications + */ +export interface PAApplicationData extends ApplicationDataBase { + paSpecificProperty: number; } /** @@ -25,7 +32,8 @@ export interface PPApplicationData extends ApplicationDataBase { * TypeMap of PrimaryApplicationTypes to their specific ApplicationData models */ export interface ApplicationDataVariants { - wtt: WTTApplicationData; + ldc: LDCApplicationData; + pa: PAApplicationData; pp: PPApplicationData; } diff --git a/types/schemas/prototypeApplication/data/User.ts b/types/schemas/prototypeApplication/data/User.ts deleted file mode 100644 index 681ee1f7..00000000 --- a/types/schemas/prototypeApplication/data/User.ts +++ /dev/null @@ -1,28 +0,0 @@ -import {PrimaryApplicationType} from '../enums/ApplicationType'; - -export interface UserBase { - role: 'applicant' | 'agent' | 'proxy'; -} - -export interface WTTUser extends UserBase { - wttSpecificProperty: boolean; -} - -export interface PPUser extends UserBase { - ppSpecificProperty: boolean; -} - -/** - * TypeMap of PrimaryApplicationTypes to their specific User models - */ -interface UserVariants { - wtt: WTTUser; - pp: PPUser; -} - -/** - * @internal - * Conditional type to return a specific or generic User model, based on PrimaryApplicationType - */ -export type User = - TPrimary extends keyof UserVariants ? UserVariants[TPrimary] : UserBase; diff --git a/types/schemas/prototypeApplication/enums/ApplicationType.ts b/types/schemas/prototypeApplication/enums/ApplicationType.ts index 9c6036fa..d9e55da6 100644 --- a/types/schemas/prototypeApplication/enums/ApplicationType.ts +++ b/types/schemas/prototypeApplication/enums/ApplicationType.ts @@ -668,6 +668,6 @@ export type ApplicationType = type ExtractPrimaryKeys = T extends `${infer K}.${string}` ? K : T; /** - * @internal + * @internal The first segment of the application type hierarchical codes */ export type PrimaryApplicationType = ExtractPrimaryKeys; diff --git a/types/schemas/prototypeApplication/index.ts b/types/schemas/prototypeApplication/index.ts index 37e80c95..df423195 100644 --- a/types/schemas/prototypeApplication/index.ts +++ b/types/schemas/prototypeApplication/index.ts @@ -1,12 +1,12 @@ +import {Applicant} from './data/Applicant'; import {ApplicationData} from './data/ApplicationData'; import {ProposalBase} from './data/Proposal'; -import {User} from './data/User'; import { ApplicationType, + LDCApplicationType, PAApplicationType, PPApplicationType, PrimaryApplicationType, - WTTApplicationType, } from './enums/ApplicationType'; /** @@ -21,42 +21,80 @@ interface ApplicationSpecification< > { applicationType: TGranular; data: { - user: User; + applicant: Applicant; application: ApplicationData; proposal: ProposalBase; }; } -export type PPApplication = ApplicationSpecification<'pp', PPApplicationType>; +export type LDC = ApplicationSpecification<'ldc', LDCApplicationType>; -export type PAApplication = ApplicationSpecification<'pa', PAApplicationType>; +export type PP = ApplicationSpecification<'pp', PPApplicationType>; -export type WTTApplication = ApplicationSpecification< - 'wtt', - WTTApplicationType ->; +export type PA = ApplicationSpecification<'pa', PAApplicationType>; /** * @title PrototypeApplication - * @description - * The root specification for a planning application in England generated by a digital planning service (prototype) + * @description The root specification for a planning application in England generated by a digital planning service (prototype) */ -export type PrototypeApplication = - | PPApplication - | PAApplication - | WTTApplication; +export type PrototypeApplication = LDC | PA | PP; // TODO: All the rest! -// const test: App = { -// applicationType: 'wtt', +// const test: PrototypeApplication = { +// applicationType: 'ldc', // data: { -// user: { -// role: 'agent', -// wttSpecificProperty: true, -// }, -// application: { -// wttSpecificProperty: 123, -// somethingShared: 'abc', -// }, +// applicant: { +// "type": "individual", +// "name": { +// "first": "Roald", +// "last": "Dahl" +// }, +// "email": "f.fox@boggischickenshed.com", +// "phone": { +// "primary": "Not provided by agent" +// }, +// "address": { +// "sameAsSiteAddress": true +// }, +// "siteContact": { +// "role": "applicant" +// }, +// "ownership": { +// "interest": "occupier", +// "owners": [ +// { +// "interest": "owner", +// "name": "Matilda Wormwood", +// "address": { +// "town": "Reading", +// "line1": "9, Library Way", +// "line2": "", +// "county": "", +// "country": "UK", +// "postcode": "L1T3R8Y" +// }, +// "noticeGiven": true +// } +// ] +// }, +// "agent": { +// "name": { +// "first": "F", +// "last": "Fox" +// }, +// "email": "f.fox@boggischickenshed.com", +// "phone": { +// "primary": "0234 567 8910" +// }, +// "address": { +// "line1": "The Tree", +// "line2": "One Tree Hill", +// "town": "Great Tunnelling", +// "county": "", +// "postcode": "F0XH0L3", +// "country": "" +// } +// } +// } // }, // }; From c16aa9f05577b48913bdf04be84b1e689cc40436 Mon Sep 17 00:00:00 2001 From: Jessica McInchak Date: Tue, 10 Sep 2024 13:08:27 +0200 Subject: [PATCH 02/13] setup examples data for prototype application --- .../lawfulDevelopmentCertificate/existing.ts | 76 + .../existing.json | 71 + pnpm-lock.yaml | 3544 ++++++++--------- schemas/prototypeApplication.json | 143 +- .../prototypeApplication/data/Applicant.ts | 8 +- .../prototypeApplication/data/Property.ts | 3 + .../prototypeApplication/data/Proposal.ts | 8 +- .../schemas/prototypeApplication/data/User.ts | 8 + types/schemas/prototypeApplication/index.ts | 71 +- types/shared/enums/.gitkeep | 0 10 files changed, 1806 insertions(+), 2126 deletions(-) create mode 100644 examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts create mode 100644 examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json create mode 100644 types/schemas/prototypeApplication/data/Property.ts create mode 100644 types/schemas/prototypeApplication/data/User.ts delete mode 100644 types/shared/enums/.gitkeep diff --git a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts new file mode 100644 index 00000000..800576a5 --- /dev/null +++ b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts @@ -0,0 +1,76 @@ +import {PrototypeApplication} from '../../../../types/schemas/prototypeApplication'; + +// const version = process.env['VERSION'] || '@next'; + +export const lawfulDevelopmentCertificateExistingPrototype: PrototypeApplication = + { + applicationType: 'ldc.existing', + data: { + application: { + somethingShared: 'test', + ldcSpecificProperty: 1, + }, + user: { + role: 'agent', + }, + applicant: { + type: 'individual', + name: { + first: 'Roald', + last: 'Dahl', + }, + email: 'f.fox@boggischickenshed.com', + phone: { + primary: 'Not provided by agent', + }, + address: { + sameAsSiteAddress: true, + }, + siteContact: { + role: 'applicant', + }, + ownership: { + interest: 'occupier', + owners: [ + { + interest: 'owner', + name: 'Matilda Wormwood', + address: { + town: 'Reading', + line1: '9, Library Way', + line2: '', + county: '', + country: 'UK', + postcode: 'L1T3R8Y', + }, + noticeGiven: true, + }, + ], + }, + agent: { + name: { + first: 'F', + last: 'Fox', + }, + email: 'f.fox@boggischickenshed.com', + phone: { + primary: '0234 567 8910', + }, + address: { + line1: 'The Tree', + line2: 'One Tree Hill', + town: 'Great Tunnelling', + county: '', + postcode: 'F0XH0L3', + country: '', + }, + }, + }, + property: { + test: 'todo', + }, + proposal: { + test: 'todo', + }, + }, + }; diff --git a/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json b/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json new file mode 100644 index 00000000..12657337 --- /dev/null +++ b/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json @@ -0,0 +1,71 @@ +{ + "applicationType": "ldc.existing", + "data": { + "application": { + "somethingShared": "test", + "ldcSpecificProperty": 1 + }, + "user": { + "role": "agent" + }, + "applicant": { + "type": "individual", + "name": { + "first": "Roald", + "last": "Dahl" + }, + "email": "f.fox@boggischickenshed.com", + "phone": { + "primary": "Not provided by agent" + }, + "address": { + "sameAsSiteAddress": true + }, + "siteContact": { + "role": "applicant" + }, + "ownership": { + "interest": "occupier", + "owners": [ + { + "interest": "owner", + "name": "Matilda Wormwood", + "address": { + "town": "Reading", + "line1": "9, Library Way", + "line2": "", + "county": "", + "country": "UK", + "postcode": "L1T3R8Y" + }, + "noticeGiven": true + } + ] + }, + "agent": { + "name": { + "first": "F", + "last": "Fox" + }, + "email": "f.fox@boggischickenshed.com", + "phone": { + "primary": "0234 567 8910" + }, + "address": { + "line1": "The Tree", + "line2": "One Tree Hill", + "town": "Great Tunnelling", + "county": "", + "postcode": "F0XH0L3", + "country": "" + } + } + }, + "property": { + "test": "todo" + }, + "proposal": { + "test": "todo" + } + } +} \ No newline at end of file diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0043a013..4e4de66e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,4 +1,4 @@ -lockfileVersion: '9.0' +lockfileVersion: '6.0' settings: autoInstallPeers: true @@ -7,395 +7,600 @@ settings: overrides: vite@>=5.0.0 <=5.0.11: '>=5.0.12' -importers: - - .: - dependencies: - ajv: - specifier: ^8.17.1 - version: 8.17.1 - ajv-formats: - specifier: ^2.1.1 - version: 2.1.1(ajv@8.17.1) - ts-json-schema-generator: - specifier: ^2.3.0 - version: 2.3.0 - ts-node: - specifier: ^10.9.2 - version: 10.9.2(@types/node@18.16.1)(typescript@5.5.4) - devDependencies: - '@types/geojson': - specifier: ^7946.0.14 - version: 7946.0.14 - '@types/node': - specifier: 18.16.1 - version: 18.16.1 - gts: - specifier: ^5.3.1 - version: 5.3.1(typescript@5.5.4) - husky: - specifier: ^8.0.0 - version: 8.0.0 - jsonschema: - specifier: ^1.4.1 - version: 1.4.1 - typescript: - specifier: ~5.5.4 - version: 5.5.4 - vitest: - specifier: ^2.0.5 - version: 2.0.5(@types/node@18.16.1) +dependencies: + ajv: + specifier: ^8.17.1 + version: 8.17.1 + ajv-formats: + specifier: ^2.1.1 + version: 2.1.1(ajv@8.17.1) + ts-json-schema-generator: + specifier: ^2.3.0 + version: 2.3.0 + ts-node: + specifier: ^10.9.2 + version: 10.9.2(@types/node@18.16.1)(typescript@5.5.4) + +devDependencies: + '@types/geojson': + specifier: ^7946.0.14 + version: 7946.0.14 + '@types/node': + specifier: 18.16.1 + version: 18.16.1 + gts: + specifier: ^5.3.1 + version: 5.3.1(typescript@5.5.4) + husky: + specifier: ^8.0.0 + version: 8.0.0 + jsonschema: + specifier: ^1.4.1 + version: 1.4.1 + typescript: + specifier: ~5.5.4 + version: 5.5.4 + vitest: + specifier: ^2.0.5 + version: 2.0.5(@types/node@18.16.1) packages: - '@ampproject/remapping@2.3.0': + /@ampproject/remapping@2.3.0: resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} engines: {node: '>=6.0.0'} + dependencies: + '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/trace-mapping': 0.3.25 + dev: true - '@babel/code-frame@7.24.7': + /@babel/code-frame@7.24.7: resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} engines: {node: '>=6.9.0'} + dependencies: + '@babel/highlight': 7.24.7 + picocolors: 1.0.1 + dev: true - '@babel/helper-validator-identifier@7.24.7': + /@babel/helper-validator-identifier@7.24.7: resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} engines: {node: '>=6.9.0'} + dev: true - '@babel/highlight@7.24.7': + /@babel/highlight@7.24.7: resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} engines: {node: '>=6.9.0'} + dependencies: + '@babel/helper-validator-identifier': 7.24.7 + chalk: 2.4.2 + js-tokens: 4.0.0 + picocolors: 1.0.1 + dev: true - '@cspotcode/source-map-support@0.8.1': + /@cspotcode/source-map-support@0.8.1: resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} engines: {node: '>=12'} + dependencies: + '@jridgewell/trace-mapping': 0.3.9 + dev: false - '@esbuild/aix-ppc64@0.21.5': + /@esbuild/aix-ppc64@0.21.5: resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} engines: {node: '>=12'} cpu: [ppc64] os: [aix] + requiresBuild: true + dev: true + optional: true - '@esbuild/android-arm64@0.21.5': + /@esbuild/android-arm64@0.21.5: resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} engines: {node: '>=12'} cpu: [arm64] os: [android] + requiresBuild: true + dev: true + optional: true - '@esbuild/android-arm@0.21.5': + /@esbuild/android-arm@0.21.5: resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} engines: {node: '>=12'} cpu: [arm] os: [android] + requiresBuild: true + dev: true + optional: true - '@esbuild/android-x64@0.21.5': + /@esbuild/android-x64@0.21.5: resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} engines: {node: '>=12'} cpu: [x64] os: [android] + requiresBuild: true + dev: true + optional: true - '@esbuild/darwin-arm64@0.21.5': + /@esbuild/darwin-arm64@0.21.5: resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] + requiresBuild: true + dev: true + optional: true - '@esbuild/darwin-x64@0.21.5': + /@esbuild/darwin-x64@0.21.5: resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} engines: {node: '>=12'} cpu: [x64] os: [darwin] + requiresBuild: true + dev: true + optional: true - '@esbuild/freebsd-arm64@0.21.5': + /@esbuild/freebsd-arm64@0.21.5: resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] + requiresBuild: true + dev: true + optional: true - '@esbuild/freebsd-x64@0.21.5': + /@esbuild/freebsd-x64@0.21.5: resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-arm64@0.21.5': + /@esbuild/linux-arm64@0.21.5: resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} engines: {node: '>=12'} cpu: [arm64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-arm@0.21.5': + /@esbuild/linux-arm@0.21.5: resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} engines: {node: '>=12'} cpu: [arm] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-ia32@0.21.5': + /@esbuild/linux-ia32@0.21.5: resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} engines: {node: '>=12'} cpu: [ia32] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-loong64@0.21.5': + /@esbuild/linux-loong64@0.21.5: resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} engines: {node: '>=12'} cpu: [loong64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-mips64el@0.21.5': + /@esbuild/linux-mips64el@0.21.5: resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-ppc64@0.21.5': + /@esbuild/linux-ppc64@0.21.5: resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-riscv64@0.21.5': + /@esbuild/linux-riscv64@0.21.5: resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-s390x@0.21.5': + /@esbuild/linux-s390x@0.21.5: resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} engines: {node: '>=12'} cpu: [s390x] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/linux-x64@0.21.5': + /@esbuild/linux-x64@0.21.5: resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} engines: {node: '>=12'} cpu: [x64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@esbuild/netbsd-x64@0.21.5': + /@esbuild/netbsd-x64@0.21.5: resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] + requiresBuild: true + dev: true + optional: true - '@esbuild/openbsd-x64@0.21.5': + /@esbuild/openbsd-x64@0.21.5: resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] + requiresBuild: true + dev: true + optional: true - '@esbuild/sunos-x64@0.21.5': + /@esbuild/sunos-x64@0.21.5: resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} engines: {node: '>=12'} cpu: [x64] os: [sunos] + requiresBuild: true + dev: true + optional: true - '@esbuild/win32-arm64@0.21.5': + /@esbuild/win32-arm64@0.21.5: resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} engines: {node: '>=12'} cpu: [arm64] os: [win32] + requiresBuild: true + dev: true + optional: true - '@esbuild/win32-ia32@0.21.5': + /@esbuild/win32-ia32@0.21.5: resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} engines: {node: '>=12'} cpu: [ia32] os: [win32] + requiresBuild: true + dev: true + optional: true - '@esbuild/win32-x64@0.21.5': + /@esbuild/win32-x64@0.21.5: resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} engines: {node: '>=12'} cpu: [x64] os: [win32] + requiresBuild: true + dev: true + optional: true - '@eslint-community/eslint-utils@4.4.0': + /@eslint-community/eslint-utils@4.4.0(eslint@8.57.0): resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + dependencies: + eslint: 8.57.0 + eslint-visitor-keys: 3.4.3 + dev: true - '@eslint-community/regexpp@4.11.0': + /@eslint-community/regexpp@4.11.0: resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + dev: true - '@eslint/eslintrc@2.1.4': + /@eslint/eslintrc@2.1.4: resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + ajv: 6.12.6 + debug: 4.3.5 + espree: 9.6.1 + globals: 13.24.0 + ignore: 5.3.1 + import-fresh: 3.3.0 + js-yaml: 4.1.0 + minimatch: 3.1.2 + strip-json-comments: 3.1.1 + transitivePeerDependencies: + - supports-color + dev: true - '@eslint/js@8.57.0': + /@eslint/js@8.57.0: resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true - '@humanwhocodes/config-array@0.11.14': + /@humanwhocodes/config-array@0.11.14: resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} engines: {node: '>=10.10.0'} deprecated: Use @eslint/config-array instead + dependencies: + '@humanwhocodes/object-schema': 2.0.3 + debug: 4.3.5 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + dev: true - '@humanwhocodes/module-importer@1.0.1': + /@humanwhocodes/module-importer@1.0.1: resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} engines: {node: '>=12.22'} + dev: true - '@humanwhocodes/object-schema@2.0.3': + /@humanwhocodes/object-schema@2.0.3: resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} deprecated: Use @eslint/object-schema instead + dev: true - '@isaacs/cliui@8.0.2': + /@isaacs/cliui@8.0.2: resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} + dependencies: + string-width: 5.1.2 + string-width-cjs: /string-width@4.2.3 + strip-ansi: 7.1.0 + strip-ansi-cjs: /strip-ansi@6.0.1 + wrap-ansi: 8.1.0 + wrap-ansi-cjs: /wrap-ansi@7.0.0 + dev: false - '@jridgewell/gen-mapping@0.3.5': + /@jridgewell/gen-mapping@0.3.5: resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} engines: {node: '>=6.0.0'} + dependencies: + '@jridgewell/set-array': 1.2.1 + '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/trace-mapping': 0.3.25 + dev: true - '@jridgewell/resolve-uri@3.1.2': + /@jridgewell/resolve-uri@3.1.2: resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} engines: {node: '>=6.0.0'} - '@jridgewell/set-array@1.2.1': + /@jridgewell/set-array@1.2.1: resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} engines: {node: '>=6.0.0'} + dev: true - '@jridgewell/sourcemap-codec@1.5.0': + /@jridgewell/sourcemap-codec@1.5.0: resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} - '@jridgewell/trace-mapping@0.3.25': + /@jridgewell/trace-mapping@0.3.25: resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.0 + dev: true - '@jridgewell/trace-mapping@0.3.9': + /@jridgewell/trace-mapping@0.3.9: resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.0 + dev: false - '@nodelib/fs.scandir@2.1.5': + /@nodelib/fs.scandir@2.1.5: resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + dev: true - '@nodelib/fs.stat@2.0.5': + /@nodelib/fs.stat@2.0.5: resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} engines: {node: '>= 8'} + dev: true - '@nodelib/fs.walk@1.2.8': + /@nodelib/fs.walk@1.2.8: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.17.1 + dev: true - '@pkgjs/parseargs@0.11.0': + /@pkgjs/parseargs@0.11.0: resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} + requiresBuild: true + dev: false + optional: true - '@pkgr/core@0.1.1': + /@pkgr/core@0.1.1: resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==} engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + dev: true - '@rollup/rollup-android-arm-eabi@4.18.1': + /@rollup/rollup-android-arm-eabi@4.18.1: resolution: {integrity: sha512-lncuC4aHicncmbORnx+dUaAgzee9cm/PbIqgWz1PpXuwc+sa1Ct83tnqUDy/GFKleLiN7ZIeytM6KJ4cAn1SxA==} cpu: [arm] os: [android] + requiresBuild: true + dev: true + optional: true - '@rollup/rollup-android-arm64@4.18.1': + /@rollup/rollup-android-arm64@4.18.1: resolution: {integrity: sha512-F/tkdw0WSs4ojqz5Ovrw5r9odqzFjb5LIgHdHZG65dFI1lWTWRVy32KDJLKRISHgJvqUeUhdIvy43fX41znyDg==} cpu: [arm64] os: [android] + requiresBuild: true + dev: true + optional: true - '@rollup/rollup-darwin-arm64@4.18.1': + /@rollup/rollup-darwin-arm64@4.18.1: resolution: {integrity: sha512-vk+ma8iC1ebje/ahpxpnrfVQJibTMyHdWpOGZ3JpQ7Mgn/3QNHmPq7YwjZbIE7km73dH5M1e6MRRsnEBW7v5CQ==} cpu: [arm64] os: [darwin] + requiresBuild: true + dev: true + optional: true - '@rollup/rollup-darwin-x64@4.18.1': + /@rollup/rollup-darwin-x64@4.18.1: resolution: {integrity: sha512-IgpzXKauRe1Tafcej9STjSSuG0Ghu/xGYH+qG6JwsAUxXrnkvNHcq/NL6nz1+jzvWAnQkuAJ4uIwGB48K9OCGA==} cpu: [x64] os: [darwin] + requiresBuild: true + dev: true + optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.18.1': + /@rollup/rollup-linux-arm-gnueabihf@4.18.1: resolution: {integrity: sha512-P9bSiAUnSSM7EmyRK+e5wgpqai86QOSv8BwvkGjLwYuOpaeomiZWifEos517CwbG+aZl1T4clSE1YqqH2JRs+g==} cpu: [arm] os: [linux] + requiresBuild: true + dev: true + optional: true - '@rollup/rollup-linux-arm-musleabihf@4.18.1': + /@rollup/rollup-linux-arm-musleabihf@4.18.1: resolution: {integrity: sha512-5RnjpACoxtS+aWOI1dURKno11d7krfpGDEn19jI8BuWmSBbUC4ytIADfROM1FZrFhQPSoP+KEa3NlEScznBTyQ==} cpu: [arm] os: [linux] + requiresBuild: true + dev: true + optional: true - '@rollup/rollup-linux-arm64-gnu@4.18.1': + /@rollup/rollup-linux-arm64-gnu@4.18.1: resolution: {integrity: sha512-8mwmGD668m8WaGbthrEYZ9CBmPug2QPGWxhJxh/vCgBjro5o96gL04WLlg5BA233OCWLqERy4YUzX3bJGXaJgQ==} cpu: [arm64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@rollup/rollup-linux-arm64-musl@4.18.1': + /@rollup/rollup-linux-arm64-musl@4.18.1: resolution: {integrity: sha512-dJX9u4r4bqInMGOAQoGYdwDP8lQiisWb9et+T84l2WXk41yEej8v2iGKodmdKimT8cTAYt0jFb+UEBxnPkbXEQ==} cpu: [arm64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.18.1': + /@rollup/rollup-linux-powerpc64le-gnu@4.18.1: resolution: {integrity: sha512-V72cXdTl4EI0x6FNmho4D502sy7ed+LuVW6Ym8aI6DRQ9hQZdp5sj0a2usYOlqvFBNKQnLQGwmYnujo2HvjCxQ==} cpu: [ppc64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@rollup/rollup-linux-riscv64-gnu@4.18.1': + /@rollup/rollup-linux-riscv64-gnu@4.18.1: resolution: {integrity: sha512-f+pJih7sxoKmbjghrM2RkWo2WHUW8UbfxIQiWo5yeCaCM0TveMEuAzKJte4QskBp1TIinpnRcxkquY+4WuY/tg==} cpu: [riscv64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@rollup/rollup-linux-s390x-gnu@4.18.1': + /@rollup/rollup-linux-s390x-gnu@4.18.1: resolution: {integrity: sha512-qb1hMMT3Fr/Qz1OKovCuUM11MUNLUuHeBC2DPPAWUYYUAOFWaxInaTwTQmc7Fl5La7DShTEpmYwgdt2hG+4TEg==} cpu: [s390x] os: [linux] + requiresBuild: true + dev: true + optional: true - '@rollup/rollup-linux-x64-gnu@4.18.1': + /@rollup/rollup-linux-x64-gnu@4.18.1: resolution: {integrity: sha512-7O5u/p6oKUFYjRbZkL2FLbwsyoJAjyeXHCU3O4ndvzg2OFO2GinFPSJFGbiwFDaCFc+k7gs9CF243PwdPQFh5g==} cpu: [x64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@rollup/rollup-linux-x64-musl@4.18.1': + /@rollup/rollup-linux-x64-musl@4.18.1: resolution: {integrity: sha512-pDLkYITdYrH/9Cv/Vlj8HppDuLMDUBmgsM0+N+xLtFd18aXgM9Nyqupb/Uw+HeidhfYg2lD6CXvz6CjoVOaKjQ==} cpu: [x64] os: [linux] + requiresBuild: true + dev: true + optional: true - '@rollup/rollup-win32-arm64-msvc@4.18.1': + /@rollup/rollup-win32-arm64-msvc@4.18.1: resolution: {integrity: sha512-W2ZNI323O/8pJdBGil1oCauuCzmVd9lDmWBBqxYZcOqWD6aWqJtVBQ1dFrF4dYpZPks6F+xCZHfzG5hYlSHZ6g==} cpu: [arm64] os: [win32] + requiresBuild: true + dev: true + optional: true - '@rollup/rollup-win32-ia32-msvc@4.18.1': + /@rollup/rollup-win32-ia32-msvc@4.18.1: resolution: {integrity: sha512-ELfEX1/+eGZYMaCIbK4jqLxO1gyTSOIlZr6pbC4SRYFaSIDVKOnZNMdoZ+ON0mrFDp4+H5MhwNC1H/AhE3zQLg==} cpu: [ia32] os: [win32] + requiresBuild: true + dev: true + optional: true - '@rollup/rollup-win32-x64-msvc@4.18.1': + /@rollup/rollup-win32-x64-msvc@4.18.1: resolution: {integrity: sha512-yjk2MAkQmoaPYCSu35RLJ62+dz358nE83VfTePJRp8CG7aMg25mEJYpXFiD+NcevhX8LxD5OP5tktPXnXN7GDw==} cpu: [x64] os: [win32] + requiresBuild: true + dev: true + optional: true - '@tsconfig/node10@1.0.11': + /@tsconfig/node10@1.0.11: resolution: {integrity: sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==} + dev: false - '@tsconfig/node12@1.0.11': + /@tsconfig/node12@1.0.11: resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} + dev: false - '@tsconfig/node14@1.0.3': + /@tsconfig/node14@1.0.3: resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} + dev: false - '@tsconfig/node16@1.0.4': + /@tsconfig/node16@1.0.4: resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} + dev: false - '@types/estree@1.0.5': + /@types/estree@1.0.5: resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + dev: true - '@types/geojson@7946.0.14': + /@types/geojson@7946.0.14: resolution: {integrity: sha512-WCfD5Ht3ZesJUsONdhvm84dmzWOiOzOAqOncN0++w0lBw1o8OuDNJF2McvvCef/yBqb/HYRahp1BYtODFQ8bRg==} + dev: true - '@types/json-schema@7.0.15': + /@types/json-schema@7.0.15: resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} - '@types/minimist@1.2.5': + /@types/minimist@1.2.5: resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==} + dev: true - '@types/node@18.16.1': + /@types/node@18.16.1: resolution: {integrity: sha512-DZxSZWXxFfOlx7k7Rv4LAyiMroaxa3Ly/7OOzZO8cBNho0YzAi4qlbrx8W27JGqG57IgR/6J7r+nOJWw6kcvZA==} - '@types/normalize-package-data@2.4.4': + /@types/normalize-package-data@2.4.4: resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} + dev: true - '@types/semver@7.5.8': + /@types/semver@7.5.8: resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} + dev: true - '@typescript-eslint/eslint-plugin@5.62.0': + /@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.57.0)(typescript@5.5.4): resolution: {integrity: sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -405,8 +610,25 @@ packages: peerDependenciesMeta: typescript: optional: true + dependencies: + '@eslint-community/regexpp': 4.11.0 + '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/scope-manager': 5.62.0 + '@typescript-eslint/type-utils': 5.62.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.5.4) + debug: 4.3.5 + eslint: 8.57.0 + graphemer: 1.4.0 + ignore: 5.3.1 + natural-compare-lite: 1.4.0 + semver: 7.6.2 + tsutils: 3.21.0(typescript@5.5.4) + typescript: 5.5.4 + transitivePeerDependencies: + - supports-color + dev: true - '@typescript-eslint/parser@5.62.0': + /@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.5.4): resolution: {integrity: sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -415,12 +637,26 @@ packages: peerDependenciesMeta: typescript: optional: true + dependencies: + '@typescript-eslint/scope-manager': 5.62.0 + '@typescript-eslint/types': 5.62.0 + '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.5.4) + debug: 4.3.5 + eslint: 8.57.0 + typescript: 5.5.4 + transitivePeerDependencies: + - supports-color + dev: true - '@typescript-eslint/scope-manager@5.62.0': + /@typescript-eslint/scope-manager@5.62.0: resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + '@typescript-eslint/types': 5.62.0 + '@typescript-eslint/visitor-keys': 5.62.0 + dev: true - '@typescript-eslint/type-utils@5.62.0': + /@typescript-eslint/type-utils@5.62.0(eslint@8.57.0)(typescript@5.5.4): resolution: {integrity: sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -429,12 +665,23 @@ packages: peerDependenciesMeta: typescript: optional: true + dependencies: + '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.5.4) + '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.5.4) + debug: 4.3.5 + eslint: 8.57.0 + tsutils: 3.21.0(typescript@5.5.4) + typescript: 5.5.4 + transitivePeerDependencies: + - supports-color + dev: true - '@typescript-eslint/types@5.62.0': + /@typescript-eslint/types@5.62.0: resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true - '@typescript-eslint/typescript-estree@5.62.0': + /@typescript-eslint/typescript-estree@5.62.0(typescript@5.5.4): resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -442,195 +689,345 @@ packages: peerDependenciesMeta: typescript: optional: true + dependencies: + '@typescript-eslint/types': 5.62.0 + '@typescript-eslint/visitor-keys': 5.62.0 + debug: 4.3.5 + globby: 11.1.0 + is-glob: 4.0.3 + semver: 7.6.2 + tsutils: 3.21.0(typescript@5.5.4) + typescript: 5.5.4 + transitivePeerDependencies: + - supports-color + dev: true - '@typescript-eslint/utils@5.62.0': + /@typescript-eslint/utils@5.62.0(eslint@8.57.0)(typescript@5.5.4): resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) + '@types/json-schema': 7.0.15 + '@types/semver': 7.5.8 + '@typescript-eslint/scope-manager': 5.62.0 + '@typescript-eslint/types': 5.62.0 + '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.5.4) + eslint: 8.57.0 + eslint-scope: 5.1.1 + semver: 7.6.2 + transitivePeerDependencies: + - supports-color + - typescript + dev: true - '@typescript-eslint/visitor-keys@5.62.0': + /@typescript-eslint/visitor-keys@5.62.0: resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + '@typescript-eslint/types': 5.62.0 + eslint-visitor-keys: 3.4.3 + dev: true - '@ungap/structured-clone@1.2.0': + /@ungap/structured-clone@1.2.0: resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} + dev: true - '@vitest/expect@2.0.5': + /@vitest/expect@2.0.5: resolution: {integrity: sha512-yHZtwuP7JZivj65Gxoi8upUN2OzHTi3zVfjwdpu2WrvCZPLwsJ2Ey5ILIPccoW23dd/zQBlJ4/dhi7DWNyXCpA==} + dependencies: + '@vitest/spy': 2.0.5 + '@vitest/utils': 2.0.5 + chai: 5.1.1 + tinyrainbow: 1.2.0 + dev: true - '@vitest/pretty-format@2.0.5': + /@vitest/pretty-format@2.0.5: resolution: {integrity: sha512-h8k+1oWHfwTkyTkb9egzwNMfJAEx4veaPSnMeKbVSjp4euqGSbQlm5+6VHwTr7u4FJslVVsUG5nopCaAYdOmSQ==} + dependencies: + tinyrainbow: 1.2.0 + dev: true - '@vitest/runner@2.0.5': + /@vitest/runner@2.0.5: resolution: {integrity: sha512-TfRfZa6Bkk9ky4tW0z20WKXFEwwvWhRY+84CnSEtq4+3ZvDlJyY32oNTJtM7AW9ihW90tX/1Q78cb6FjoAs+ig==} + dependencies: + '@vitest/utils': 2.0.5 + pathe: 1.1.2 + dev: true - '@vitest/snapshot@2.0.5': + /@vitest/snapshot@2.0.5: resolution: {integrity: sha512-SgCPUeDFLaM0mIUHfaArq8fD2WbaXG/zVXjRupthYfYGzc8ztbFbu6dUNOblBG7XLMR1kEhS/DNnfCZ2IhdDew==} + dependencies: + '@vitest/pretty-format': 2.0.5 + magic-string: 0.30.10 + pathe: 1.1.2 + dev: true - '@vitest/spy@2.0.5': + /@vitest/spy@2.0.5: resolution: {integrity: sha512-c/jdthAhvJdpfVuaexSrnawxZz6pywlTPe84LUB2m/4t3rl2fTo9NFGBG4oWgaD+FTgDDV8hJ/nibT7IfH3JfA==} + dependencies: + tinyspy: 3.0.2 + dev: true - '@vitest/utils@2.0.5': + /@vitest/utils@2.0.5: resolution: {integrity: sha512-d8HKbqIcya+GR67mkZbrzhS5kKhtp8dQLcmRZLGTscGVg7yImT82cIrhtn2L8+VujWcy6KZweApgNmPsTAO/UQ==} + dependencies: + '@vitest/pretty-format': 2.0.5 + estree-walker: 3.0.3 + loupe: 3.1.1 + tinyrainbow: 1.2.0 + dev: true - acorn-jsx@5.3.2: + /acorn-jsx@5.3.2(acorn@8.12.1): resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + dependencies: + acorn: 8.12.1 + dev: true - acorn-walk@8.3.3: + /acorn-walk@8.3.3: resolution: {integrity: sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==} engines: {node: '>=0.4.0'} + dependencies: + acorn: 8.12.1 + dev: false - acorn@8.12.1: + /acorn@8.12.1: resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} engines: {node: '>=0.4.0'} hasBin: true - ajv-formats@2.1.1: + /ajv-formats@2.1.1(ajv@8.17.1): resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==} peerDependencies: ajv: ^8.0.0 peerDependenciesMeta: ajv: optional: true + dependencies: + ajv: 8.17.1 + dev: false - ajv@6.12.6: + /ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.1 + dev: true - ajv@8.17.1: + /ajv@8.17.1: resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} + dependencies: + fast-deep-equal: 3.1.3 + fast-uri: 3.0.1 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + dev: false - ansi-escapes@4.3.2: + /ansi-escapes@4.3.2: resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} engines: {node: '>=8'} + dependencies: + type-fest: 0.21.3 + dev: true - ansi-regex@5.0.1: + /ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} - ansi-regex@6.0.1: + /ansi-regex@6.0.1: resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} engines: {node: '>=12'} + dev: false - ansi-styles@3.2.1: + /ansi-styles@3.2.1: resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} engines: {node: '>=4'} + dependencies: + color-convert: 1.9.3 + dev: true - ansi-styles@4.3.0: + /ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} engines: {node: '>=8'} + dependencies: + color-convert: 2.0.1 - ansi-styles@6.2.1: + /ansi-styles@6.2.1: resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} engines: {node: '>=12'} + dev: false - arg@4.1.3: + /arg@4.1.3: resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} + dev: false - argparse@2.0.1: + /argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + dev: true - array-union@2.1.0: + /array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} + dev: true - arrify@1.0.1: + /arrify@1.0.1: resolution: {integrity: sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==} engines: {node: '>=0.10.0'} + dev: true - assertion-error@2.0.1: + /assertion-error@2.0.1: resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} engines: {node: '>=12'} + dev: true - balanced-match@1.0.2: + /balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - brace-expansion@1.1.11: + /brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + dev: true - brace-expansion@2.0.1: + /brace-expansion@2.0.1: resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} + dependencies: + balanced-match: 1.0.2 + dev: false - braces@3.0.3: + /braces@3.0.3: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} + dependencies: + fill-range: 7.1.1 + dev: true - builtins@5.1.0: + /builtins@5.1.0: resolution: {integrity: sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==} + dependencies: + semver: 7.6.2 + dev: true - cac@6.7.14: + /cac@6.7.14: resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} engines: {node: '>=8'} + dev: true - callsites@3.1.0: + /callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} + dev: true - camelcase-keys@6.2.2: + /camelcase-keys@6.2.2: resolution: {integrity: sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==} engines: {node: '>=8'} + dependencies: + camelcase: 5.3.1 + map-obj: 4.3.0 + quick-lru: 4.0.1 + dev: true - camelcase@5.3.1: + /camelcase@5.3.1: resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} engines: {node: '>=6'} + dev: true - chai@5.1.1: + /chai@5.1.1: resolution: {integrity: sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==} engines: {node: '>=12'} + dependencies: + assertion-error: 2.0.1 + check-error: 2.1.1 + deep-eql: 5.0.2 + loupe: 3.1.1 + pathval: 2.0.0 + dev: true - chalk@2.4.2: + /chalk@2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} engines: {node: '>=4'} + dependencies: + ansi-styles: 3.2.1 + escape-string-regexp: 1.0.5 + supports-color: 5.5.0 + dev: true - chalk@4.1.2: + /chalk@4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} engines: {node: '>=10'} + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + dev: true - chardet@0.7.0: + /chardet@0.7.0: resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} + dev: true - check-error@2.1.1: + /check-error@2.1.1: resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} engines: {node: '>= 16'} + dev: true - cli-cursor@3.1.0: + /cli-cursor@3.1.0: resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} engines: {node: '>=8'} + dependencies: + restore-cursor: 3.1.0 + dev: true - cli-width@3.0.0: + /cli-width@3.0.0: resolution: {integrity: sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==} engines: {node: '>= 10'} + dev: true - color-convert@1.9.3: + /color-convert@1.9.3: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + dependencies: + color-name: 1.1.3 + dev: true - color-convert@2.0.1: + /color-convert@2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} engines: {node: '>=7.0.0'} + dependencies: + color-name: 1.1.4 - color-name@1.1.3: + /color-name@1.1.3: resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + dev: true - color-name@1.1.4: + /color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - commander@12.1.0: + /commander@12.1.0: resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} engines: {node: '>=18'} + dev: false - concat-map@0.0.1: + /concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + dev: true - create-require@1.1.1: + /create-require@1.1.1: resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} + dev: false - cross-spawn@7.0.3: + /cross-spawn@7.0.3: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} engines: {node: '>= 8'} + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 - debug@4.3.5: + /debug@4.3.5: resolution: {integrity: sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==} engines: {node: '>=6.0'} peerDependencies: @@ -638,1580 +1035,73 @@ packages: peerDependenciesMeta: supports-color: optional: true + dependencies: + ms: 2.1.2 + dev: true - decamelize-keys@1.1.1: + /decamelize-keys@1.1.1: resolution: {integrity: sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==} engines: {node: '>=0.10.0'} + dependencies: + decamelize: 1.2.0 + map-obj: 1.0.1 + dev: true - decamelize@1.2.0: + /decamelize@1.2.0: resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} engines: {node: '>=0.10.0'} + dev: true - deep-eql@5.0.2: + /deep-eql@5.0.2: resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==} engines: {node: '>=6'} + dev: true - deep-is@0.1.4: + /deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} + dev: true - diff@4.0.2: + /diff@4.0.2: resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} engines: {node: '>=0.3.1'} + dev: false - dir-glob@3.0.1: + /dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} + dependencies: + path-type: 4.0.0 + dev: true - doctrine@3.0.0: + /doctrine@3.0.0: resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} engines: {node: '>=6.0.0'} + dependencies: + esutils: 2.0.3 + dev: true - eastasianwidth@0.2.0: + /eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + dev: false - emoji-regex@8.0.0: + /emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} - emoji-regex@9.2.2: + /emoji-regex@9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + dev: false - error-ex@1.3.2: + /error-ex@1.3.2: resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + dependencies: + is-arrayish: 0.2.1 + dev: true - esbuild@0.21.5: + /esbuild@0.21.5: resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} engines: {node: '>=12'} hasBin: true - - escape-string-regexp@1.0.5: - resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} - engines: {node: '>=0.8.0'} - - escape-string-regexp@4.0.0: - resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} - engines: {node: '>=10'} - - eslint-config-prettier@9.1.0: - resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} - hasBin: true - peerDependencies: - eslint: '>=7.0.0' - - eslint-plugin-es@4.1.0: - resolution: {integrity: sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ==} - engines: {node: '>=8.10.0'} - peerDependencies: - eslint: '>=4.19.1' - - eslint-plugin-n@15.7.0: - resolution: {integrity: sha512-jDex9s7D/Qial8AGVIHq4W7NswpUD5DPDL2RH8Lzd9EloWUuvUkHfv4FRLMipH5q2UtyurorBkPeNi1wVWNh3Q==} - engines: {node: '>=12.22.0'} - peerDependencies: - eslint: '>=7.0.0' - - eslint-plugin-prettier@5.1.3: - resolution: {integrity: sha512-C9GCVAs4Eq7ZC/XFQHITLiHJxQngdtraXaM+LoUFoFp/lHNl2Zn8f3WQbe9HvTBBQ9YnKFB0/2Ajdqwo5D1EAw==} - engines: {node: ^14.18.0 || >=16.0.0} - peerDependencies: - '@types/eslint': '>=8.0.0' - eslint: '>=8.0.0' - eslint-config-prettier: '*' - prettier: '>=3.0.0' - peerDependenciesMeta: - '@types/eslint': - optional: true - eslint-config-prettier: - optional: true - - eslint-scope@5.1.1: - resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} - engines: {node: '>=8.0.0'} - - eslint-scope@7.2.2: - resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - eslint-utils@2.1.0: - resolution: {integrity: sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==} - engines: {node: '>=6'} - - eslint-utils@3.0.0: - resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} - engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} - peerDependencies: - eslint: '>=5' - - eslint-visitor-keys@1.3.0: - resolution: {integrity: sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==} - engines: {node: '>=4'} - - eslint-visitor-keys@2.1.0: - resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} - engines: {node: '>=10'} - - eslint-visitor-keys@3.4.3: - resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - eslint@8.57.0: - resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - hasBin: true - - espree@9.6.1: - resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - esquery@1.6.0: - resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} - engines: {node: '>=0.10'} - - esrecurse@4.3.0: - resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} - engines: {node: '>=4.0'} - - estraverse@4.3.0: - resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} - engines: {node: '>=4.0'} - - estraverse@5.3.0: - resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} - engines: {node: '>=4.0'} - - estree-walker@3.0.3: - resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} - - esutils@2.0.3: - resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} - engines: {node: '>=0.10.0'} - - execa@5.1.1: - resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} - engines: {node: '>=10'} - - execa@8.0.1: - resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} - engines: {node: '>=16.17'} - - external-editor@3.1.0: - resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} - engines: {node: '>=4'} - - fast-deep-equal@3.1.3: - resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - - fast-diff@1.3.0: - resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==} - - fast-glob@3.3.2: - resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} - engines: {node: '>=8.6.0'} - - fast-json-stable-stringify@2.1.0: - resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} - - fast-levenshtein@2.0.6: - resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} - - fast-uri@3.0.1: - resolution: {integrity: sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==} - - fastq@1.17.1: - resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} - - figures@3.2.0: - resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==} - engines: {node: '>=8'} - - file-entry-cache@6.0.1: - resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} - engines: {node: ^10.12.0 || >=12.0.0} - - fill-range@7.1.1: - resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} - engines: {node: '>=8'} - - find-up@4.1.0: - resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} - engines: {node: '>=8'} - - find-up@5.0.0: - resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} - engines: {node: '>=10'} - - flat-cache@3.2.0: - resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} - engines: {node: ^10.12.0 || >=12.0.0} - - flatted@3.3.1: - resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} - - foreground-child@3.2.1: - resolution: {integrity: sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==} - engines: {node: '>=14'} - - fs.realpath@1.0.0: - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} - - fsevents@2.3.3: - resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - - function-bind@1.1.2: - resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - - get-func-name@2.0.2: - resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} - - get-stream@6.0.1: - resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} - engines: {node: '>=10'} - - get-stream@8.0.1: - resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} - engines: {node: '>=16'} - - glob-parent@5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} - engines: {node: '>= 6'} - - glob-parent@6.0.2: - resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} - engines: {node: '>=10.13.0'} - - glob@10.4.5: - resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} - hasBin: true - - glob@7.2.3: - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} - deprecated: Glob versions prior to v9 are no longer supported - - globals@13.24.0: - resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} - engines: {node: '>=8'} - - globby@11.1.0: - resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} - engines: {node: '>=10'} - - graphemer@1.4.0: - resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - - gts@5.3.1: - resolution: {integrity: sha512-P9F+krJkGOkisUX+P9pfUas1Xy+U+CxBFZT62uInkJbgvZpnW1ug/pIcMJJmLOthMq1J88lpQUGhXDC9UTvVcw==} - engines: {node: '>=14'} - hasBin: true - peerDependencies: - typescript: '>=3' - - hard-rejection@2.1.0: - resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==} - engines: {node: '>=6'} - - has-flag@3.0.0: - resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} - engines: {node: '>=4'} - - has-flag@4.0.0: - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} - engines: {node: '>=8'} - - hasown@2.0.2: - resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} - engines: {node: '>= 0.4'} - - hosted-git-info@2.8.9: - resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} - - hosted-git-info@4.1.0: - resolution: {integrity: sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==} - engines: {node: '>=10'} - - human-signals@2.1.0: - resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} - engines: {node: '>=10.17.0'} - - human-signals@5.0.0: - resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} - engines: {node: '>=16.17.0'} - - husky@8.0.0: - resolution: {integrity: sha512-4qbE/5dzNDNxFEkX9MNRPKl5+omTXQzdILCUWiqG/lWIAioiM5vln265/l6I2Zx8gpW8l1ukZwGQeCFbBZ6+6w==} - engines: {node: '>=14'} - hasBin: true - - iconv-lite@0.4.24: - resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} - engines: {node: '>=0.10.0'} - - ignore@5.3.1: - resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} - engines: {node: '>= 4'} - - import-fresh@3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} - engines: {node: '>=6'} - - imurmurhash@0.1.4: - resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} - engines: {node: '>=0.8.19'} - - indent-string@4.0.0: - resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} - engines: {node: '>=8'} - - inflight@1.0.6: - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} - deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. - - inherits@2.0.4: - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} - - inquirer@7.3.3: - resolution: {integrity: sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==} - engines: {node: '>=8.0.0'} - - is-arrayish@0.2.1: - resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} - - is-core-module@2.14.0: - resolution: {integrity: sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==} - engines: {node: '>= 0.4'} - - is-extglob@2.1.1: - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} - engines: {node: '>=0.10.0'} - - is-fullwidth-code-point@3.0.0: - resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} - engines: {node: '>=8'} - - is-glob@4.0.3: - resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} - engines: {node: '>=0.10.0'} - - is-number@7.0.0: - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} - engines: {node: '>=0.12.0'} - - is-path-inside@3.0.3: - resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} - engines: {node: '>=8'} - - is-plain-obj@1.1.0: - resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==} - engines: {node: '>=0.10.0'} - - is-stream@2.0.1: - resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} - engines: {node: '>=8'} - - is-stream@3.0.0: - resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - isexe@2.0.0: - resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - - jackspeak@3.4.3: - resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} - - js-tokens@4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - - js-yaml@4.1.0: - resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} - hasBin: true - - json-buffer@3.0.1: - resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} - - json-parse-even-better-errors@2.3.1: - resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} - - json-schema-traverse@0.4.1: - resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} - - json-schema-traverse@1.0.0: - resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} - - json-stable-stringify-without-jsonify@1.0.1: - resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} - - json5@2.2.3: - resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} - engines: {node: '>=6'} - hasBin: true - - jsonschema@1.4.1: - resolution: {integrity: sha512-S6cATIPVv1z0IlxdN+zUk5EPjkGCdnhN4wVSBlvoUO1tOLJootbo9CquNJmbIh4yikWHiUedhRYrNPn1arpEmQ==} - - keyv@4.5.4: - resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} - - kind-of@6.0.3: - resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} - engines: {node: '>=0.10.0'} - - levn@0.4.1: - resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} - engines: {node: '>= 0.8.0'} - - lines-and-columns@1.2.4: - resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - - locate-path@5.0.0: - resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} - engines: {node: '>=8'} - - locate-path@6.0.0: - resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} - engines: {node: '>=10'} - - lodash.merge@4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - - lodash@4.17.21: - resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} - - loupe@3.1.1: - resolution: {integrity: sha512-edNu/8D5MKVfGVFRhFf8aAxiTM6Wumfz5XsaatSxlD3w4R1d/WEKUTydCdPGbl9K7QG/Ca3GnDV2sIKIpXRQcw==} - - lru-cache@10.4.3: - resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} - - lru-cache@6.0.0: - resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} - engines: {node: '>=10'} - - magic-string@0.30.10: - resolution: {integrity: sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==} - - make-error@1.3.6: - resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} - - map-obj@1.0.1: - resolution: {integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==} - engines: {node: '>=0.10.0'} - - map-obj@4.3.0: - resolution: {integrity: sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==} - engines: {node: '>=8'} - - meow@9.0.0: - resolution: {integrity: sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==} - engines: {node: '>=10'} - - merge-stream@2.0.0: - resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} - - merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} - - micromatch@4.0.7: - resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} - engines: {node: '>=8.6'} - - mimic-fn@2.1.0: - resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} - engines: {node: '>=6'} - - mimic-fn@4.0.0: - resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} - engines: {node: '>=12'} - - min-indent@1.0.1: - resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} - engines: {node: '>=4'} - - minimatch@3.1.2: - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} - - minimatch@9.0.5: - resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} - engines: {node: '>=16 || 14 >=14.17'} - - minimist-options@4.1.0: - resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==} - engines: {node: '>= 6'} - - minipass@7.1.2: - resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} - engines: {node: '>=16 || 14 >=14.17'} - - ms@2.1.2: - resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} - - mute-stream@0.0.8: - resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} - - nanoid@3.3.7: - resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} - hasBin: true - - natural-compare-lite@1.4.0: - resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} - - natural-compare@1.4.0: - resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - - ncp@2.0.0: - resolution: {integrity: sha512-zIdGUrPRFTUELUvr3Gmc7KZ2Sw/h1PiVM0Af/oHB6zgnV1ikqSfRk+TOufi79aHYCW3NiOXmr1BP5nWbzojLaA==} - hasBin: true - - normalize-package-data@2.5.0: - resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} - - normalize-package-data@3.0.3: - resolution: {integrity: sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==} - engines: {node: '>=10'} - - normalize-path@3.0.0: - resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} - engines: {node: '>=0.10.0'} - - npm-run-path@4.0.1: - resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} - engines: {node: '>=8'} - - npm-run-path@5.3.0: - resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - once@1.4.0: - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - - onetime@5.1.2: - resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} - engines: {node: '>=6'} - - onetime@6.0.0: - resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} - engines: {node: '>=12'} - - optionator@0.9.4: - resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} - engines: {node: '>= 0.8.0'} - - os-tmpdir@1.0.2: - resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} - engines: {node: '>=0.10.0'} - - p-limit@2.3.0: - resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} - engines: {node: '>=6'} - - p-limit@3.1.0: - resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} - engines: {node: '>=10'} - - p-locate@4.1.0: - resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} - engines: {node: '>=8'} - - p-locate@5.0.0: - resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} - engines: {node: '>=10'} - - p-try@2.2.0: - resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} - engines: {node: '>=6'} - - package-json-from-dist@1.0.0: - resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==} - - parent-module@1.0.1: - resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} - engines: {node: '>=6'} - - parse-json@5.2.0: - resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} - engines: {node: '>=8'} - - path-exists@4.0.0: - resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} - engines: {node: '>=8'} - - path-is-absolute@1.0.1: - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} - engines: {node: '>=0.10.0'} - - path-key@3.1.1: - resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} - engines: {node: '>=8'} - - path-key@4.0.0: - resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} - engines: {node: '>=12'} - - path-parse@1.0.7: - resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - - path-scurry@1.11.1: - resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} - engines: {node: '>=16 || 14 >=14.18'} - - path-type@4.0.0: - resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} - engines: {node: '>=8'} - - pathe@1.1.2: - resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} - - pathval@2.0.0: - resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==} - engines: {node: '>= 14.16'} - - picocolors@1.0.1: - resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} - - picomatch@2.3.1: - resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} - engines: {node: '>=8.6'} - - postcss@8.4.39: - resolution: {integrity: sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw==} - engines: {node: ^10 || ^12 || >=14} - - prelude-ls@1.2.1: - resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} - engines: {node: '>= 0.8.0'} - - prettier-linter-helpers@1.0.0: - resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==} - engines: {node: '>=6.0.0'} - - prettier@3.2.5: - resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} - engines: {node: '>=14'} - hasBin: true - - punycode@2.3.1: - resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} - engines: {node: '>=6'} - - queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - - quick-lru@4.0.1: - resolution: {integrity: sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==} - engines: {node: '>=8'} - - read-pkg-up@7.0.1: - resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} - engines: {node: '>=8'} - - read-pkg@5.2.0: - resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} - engines: {node: '>=8'} - - redent@3.0.0: - resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} - engines: {node: '>=8'} - - regexpp@3.2.0: - resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} - engines: {node: '>=8'} - - require-from-string@2.0.2: - resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} - engines: {node: '>=0.10.0'} - - resolve-from@4.0.0: - resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} - engines: {node: '>=4'} - - resolve@1.22.8: - resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} - hasBin: true - - restore-cursor@3.1.0: - resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} - engines: {node: '>=8'} - - reusify@1.0.4: - resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} - engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - - rimraf@3.0.2: - resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} - deprecated: Rimraf versions prior to v4 are no longer supported - hasBin: true - - rollup@4.18.1: - resolution: {integrity: sha512-Elx2UT8lzxxOXMpy5HWQGZqkrQOtrVDDa/bm9l10+U4rQnVzbL/LgZ4NOM1MPIDyHk69W4InuYDF5dzRh4Kw1A==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} - hasBin: true - - run-async@2.4.1: - resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==} - engines: {node: '>=0.12.0'} - - run-parallel@1.2.0: - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} - - rxjs@6.6.7: - resolution: {integrity: sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==} - engines: {npm: '>=2.0.0'} - - safe-stable-stringify@2.4.3: - resolution: {integrity: sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==} - engines: {node: '>=10'} - - safer-buffer@2.1.2: - resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} - - semver@5.7.2: - resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} - hasBin: true - - semver@7.6.2: - resolution: {integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==} - engines: {node: '>=10'} - hasBin: true - - shebang-command@2.0.0: - resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} - engines: {node: '>=8'} - - shebang-regex@3.0.0: - resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} - engines: {node: '>=8'} - - siginfo@2.0.0: - resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} - - signal-exit@3.0.7: - resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} - - signal-exit@4.1.0: - resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} - engines: {node: '>=14'} - - slash@3.0.0: - resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} - engines: {node: '>=8'} - - source-map-js@1.2.0: - resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} - engines: {node: '>=0.10.0'} - - spdx-correct@3.2.0: - resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} - - spdx-exceptions@2.5.0: - resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==} - - spdx-expression-parse@3.0.1: - resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} - - spdx-license-ids@3.0.18: - resolution: {integrity: sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==} - - stackback@0.0.2: - resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} - - std-env@3.7.0: - resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} - - string-width@4.2.3: - resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} - engines: {node: '>=8'} - - string-width@5.1.2: - resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} - engines: {node: '>=12'} - - strip-ansi@6.0.1: - resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} - engines: {node: '>=8'} - - strip-ansi@7.1.0: - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} - engines: {node: '>=12'} - - strip-final-newline@2.0.0: - resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} - engines: {node: '>=6'} - - strip-final-newline@3.0.0: - resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} - engines: {node: '>=12'} - - strip-indent@3.0.0: - resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} - engines: {node: '>=8'} - - strip-json-comments@3.1.1: - resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} - engines: {node: '>=8'} - - supports-color@5.5.0: - resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} - engines: {node: '>=4'} - - supports-color@7.2.0: - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} - engines: {node: '>=8'} - - supports-preserve-symlinks-flag@1.0.0: - resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} - engines: {node: '>= 0.4'} - - synckit@0.8.8: - resolution: {integrity: sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==} - engines: {node: ^14.18.0 || >=16.0.0} - - text-table@0.2.0: - resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} - - through@2.3.8: - resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} - - tinybench@2.8.0: - resolution: {integrity: sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw==} - - tinypool@1.0.0: - resolution: {integrity: sha512-KIKExllK7jp3uvrNtvRBYBWBOAXSX8ZvoaD8T+7KB/QHIuoJW3Pmr60zucywjAlMb5TeXUkcs/MWeWLu0qvuAQ==} - engines: {node: ^18.0.0 || >=20.0.0} - - tinyrainbow@1.2.0: - resolution: {integrity: sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==} - engines: {node: '>=14.0.0'} - - tinyspy@3.0.0: - resolution: {integrity: sha512-q5nmENpTHgiPVd1cJDDc9cVoYN5x4vCvwT3FMilvKPKneCBZAxn2YWQjDF0UMcE9k0Cay1gBiDfTMU0g+mPMQA==} - engines: {node: '>=14.0.0'} - - tmp@0.0.33: - resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} - engines: {node: '>=0.6.0'} - - to-regex-range@5.0.1: - resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} - engines: {node: '>=8.0'} - - trim-newlines@3.0.1: - resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==} - engines: {node: '>=8'} - - ts-json-schema-generator@2.3.0: - resolution: {integrity: sha512-t4lBQAwZc0sOJq9LJt3NgbznIcslVnm0JeEMFq8qIRklpMRY8jlYD0YmnRWbqBKANxkby91P1XanSSlSOFpUmg==} - engines: {node: '>=18.0.0'} - hasBin: true - - ts-node@10.9.2: - resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} - hasBin: true - peerDependencies: - '@swc/core': '>=1.2.50' - '@swc/wasm': '>=1.2.50' - '@types/node': '*' - typescript: '>=2.7' - peerDependenciesMeta: - '@swc/core': - optional: true - '@swc/wasm': - optional: true - - tslib@1.14.1: - resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} - - tslib@2.6.3: - resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==} - - tsutils@3.21.0: - resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} - engines: {node: '>= 6'} - peerDependencies: - typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' - - type-check@0.4.0: - resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} - engines: {node: '>= 0.8.0'} - - type-fest@0.18.1: - resolution: {integrity: sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==} - engines: {node: '>=10'} - - type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} - engines: {node: '>=10'} - - type-fest@0.21.3: - resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} - engines: {node: '>=10'} - - type-fest@0.6.0: - resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} - engines: {node: '>=8'} - - type-fest@0.8.1: - resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} - engines: {node: '>=8'} - - typescript@5.5.4: - resolution: {integrity: sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==} - engines: {node: '>=14.17'} - hasBin: true - - uri-js@4.4.1: - resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} - - v8-compile-cache-lib@3.0.1: - resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} - - validate-npm-package-license@3.0.4: - resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} - - vite-node@2.0.5: - resolution: {integrity: sha512-LdsW4pxj0Ot69FAoXZ1yTnA9bjGohr2yNBU7QKRxpz8ITSkhuDl6h3zS/tvgz4qrNjeRnvrWeXQ8ZF7Um4W00Q==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - - vite@5.3.3: - resolution: {integrity: sha512-NPQdeCU0Dv2z5fu+ULotpuq5yfCS1BzKUIPhNbP3YBfAMGJXbt2nS+sbTFu+qchaqWTD+H3JK++nRwr6XIcp6A==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - peerDependencies: - '@types/node': ^18.0.0 || >=20.0.0 - less: '*' - lightningcss: ^1.21.0 - sass: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - - vitest@2.0.5: - resolution: {integrity: sha512-8GUxONfauuIdeSl5f9GTgVEpg5BTOlplET4WEDaeY2QBiN8wSm68vxN/tb5z405OwppfoCavnwXafiaYBC/xOA==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - peerDependencies: - '@edge-runtime/vm': '*' - '@types/node': ^18.0.0 || >=20.0.0 - '@vitest/browser': 2.0.5 - '@vitest/ui': 2.0.5 - happy-dom: '*' - jsdom: '*' - peerDependenciesMeta: - '@edge-runtime/vm': - optional: true - '@types/node': - optional: true - '@vitest/browser': - optional: true - '@vitest/ui': - optional: true - happy-dom: - optional: true - jsdom: - optional: true - - which@2.0.2: - resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} - engines: {node: '>= 8'} - hasBin: true - - why-is-node-running@2.3.0: - resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} - engines: {node: '>=8'} - hasBin: true - - word-wrap@1.2.5: - resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} - engines: {node: '>=0.10.0'} - - wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} - - wrap-ansi@8.1.0: - resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} - engines: {node: '>=12'} - - wrappy@1.0.2: - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - - write-file-atomic@4.0.2: - resolution: {integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==} - engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} - - yallist@4.0.0: - resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - - yargs-parser@20.2.9: - resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} - engines: {node: '>=10'} - - yn@3.1.1: - resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} - engines: {node: '>=6'} - - yocto-queue@0.1.0: - resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} - engines: {node: '>=10'} - -snapshots: - - '@ampproject/remapping@2.3.0': - dependencies: - '@jridgewell/gen-mapping': 0.3.5 - '@jridgewell/trace-mapping': 0.3.25 - - '@babel/code-frame@7.24.7': - dependencies: - '@babel/highlight': 7.24.7 - picocolors: 1.0.1 - - '@babel/helper-validator-identifier@7.24.7': {} - - '@babel/highlight@7.24.7': - dependencies: - '@babel/helper-validator-identifier': 7.24.7 - chalk: 2.4.2 - js-tokens: 4.0.0 - picocolors: 1.0.1 - - '@cspotcode/source-map-support@0.8.1': - dependencies: - '@jridgewell/trace-mapping': 0.3.9 - - '@esbuild/aix-ppc64@0.21.5': - optional: true - - '@esbuild/android-arm64@0.21.5': - optional: true - - '@esbuild/android-arm@0.21.5': - optional: true - - '@esbuild/android-x64@0.21.5': - optional: true - - '@esbuild/darwin-arm64@0.21.5': - optional: true - - '@esbuild/darwin-x64@0.21.5': - optional: true - - '@esbuild/freebsd-arm64@0.21.5': - optional: true - - '@esbuild/freebsd-x64@0.21.5': - optional: true - - '@esbuild/linux-arm64@0.21.5': - optional: true - - '@esbuild/linux-arm@0.21.5': - optional: true - - '@esbuild/linux-ia32@0.21.5': - optional: true - - '@esbuild/linux-loong64@0.21.5': - optional: true - - '@esbuild/linux-mips64el@0.21.5': - optional: true - - '@esbuild/linux-ppc64@0.21.5': - optional: true - - '@esbuild/linux-riscv64@0.21.5': - optional: true - - '@esbuild/linux-s390x@0.21.5': - optional: true - - '@esbuild/linux-x64@0.21.5': - optional: true - - '@esbuild/netbsd-x64@0.21.5': - optional: true - - '@esbuild/openbsd-x64@0.21.5': - optional: true - - '@esbuild/sunos-x64@0.21.5': - optional: true - - '@esbuild/win32-arm64@0.21.5': - optional: true - - '@esbuild/win32-ia32@0.21.5': - optional: true - - '@esbuild/win32-x64@0.21.5': - optional: true - - '@eslint-community/eslint-utils@4.4.0(eslint@8.57.0)': - dependencies: - eslint: 8.57.0 - eslint-visitor-keys: 3.4.3 - - '@eslint-community/regexpp@4.11.0': {} - - '@eslint/eslintrc@2.1.4': - dependencies: - ajv: 6.12.6 - debug: 4.3.5 - espree: 9.6.1 - globals: 13.24.0 - ignore: 5.3.1 - import-fresh: 3.3.0 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - - '@eslint/js@8.57.0': {} - - '@humanwhocodes/config-array@0.11.14': - dependencies: - '@humanwhocodes/object-schema': 2.0.3 - debug: 4.3.5 - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - - '@humanwhocodes/module-importer@1.0.1': {} - - '@humanwhocodes/object-schema@2.0.3': {} - - '@isaacs/cliui@8.0.2': - dependencies: - string-width: 5.1.2 - string-width-cjs: string-width@4.2.3 - strip-ansi: 7.1.0 - strip-ansi-cjs: strip-ansi@6.0.1 - wrap-ansi: 8.1.0 - wrap-ansi-cjs: wrap-ansi@7.0.0 - - '@jridgewell/gen-mapping@0.3.5': - dependencies: - '@jridgewell/set-array': 1.2.1 - '@jridgewell/sourcemap-codec': 1.5.0 - '@jridgewell/trace-mapping': 0.3.25 - - '@jridgewell/resolve-uri@3.1.2': {} - - '@jridgewell/set-array@1.2.1': {} - - '@jridgewell/sourcemap-codec@1.5.0': {} - - '@jridgewell/trace-mapping@0.3.25': - dependencies: - '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.0 - - '@jridgewell/trace-mapping@0.3.9': - dependencies: - '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.0 - - '@nodelib/fs.scandir@2.1.5': - dependencies: - '@nodelib/fs.stat': 2.0.5 - run-parallel: 1.2.0 - - '@nodelib/fs.stat@2.0.5': {} - - '@nodelib/fs.walk@1.2.8': - dependencies: - '@nodelib/fs.scandir': 2.1.5 - fastq: 1.17.1 - - '@pkgjs/parseargs@0.11.0': - optional: true - - '@pkgr/core@0.1.1': {} - - '@rollup/rollup-android-arm-eabi@4.18.1': - optional: true - - '@rollup/rollup-android-arm64@4.18.1': - optional: true - - '@rollup/rollup-darwin-arm64@4.18.1': - optional: true - - '@rollup/rollup-darwin-x64@4.18.1': - optional: true - - '@rollup/rollup-linux-arm-gnueabihf@4.18.1': - optional: true - - '@rollup/rollup-linux-arm-musleabihf@4.18.1': - optional: true - - '@rollup/rollup-linux-arm64-gnu@4.18.1': - optional: true - - '@rollup/rollup-linux-arm64-musl@4.18.1': - optional: true - - '@rollup/rollup-linux-powerpc64le-gnu@4.18.1': - optional: true - - '@rollup/rollup-linux-riscv64-gnu@4.18.1': - optional: true - - '@rollup/rollup-linux-s390x-gnu@4.18.1': - optional: true - - '@rollup/rollup-linux-x64-gnu@4.18.1': - optional: true - - '@rollup/rollup-linux-x64-musl@4.18.1': - optional: true - - '@rollup/rollup-win32-arm64-msvc@4.18.1': - optional: true - - '@rollup/rollup-win32-ia32-msvc@4.18.1': - optional: true - - '@rollup/rollup-win32-x64-msvc@4.18.1': - optional: true - - '@tsconfig/node10@1.0.11': {} - - '@tsconfig/node12@1.0.11': {} - - '@tsconfig/node14@1.0.3': {} - - '@tsconfig/node16@1.0.4': {} - - '@types/estree@1.0.5': {} - - '@types/geojson@7946.0.14': {} - - '@types/json-schema@7.0.15': {} - - '@types/minimist@1.2.5': {} - - '@types/node@18.16.1': {} - - '@types/normalize-package-data@2.4.4': {} - - '@types/semver@7.5.8': {} - - '@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)': - dependencies: - '@eslint-community/regexpp': 4.11.0 - '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.5.4) - '@typescript-eslint/scope-manager': 5.62.0 - '@typescript-eslint/type-utils': 5.62.0(eslint@8.57.0)(typescript@5.5.4) - '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.5.4) - debug: 4.3.5 - eslint: 8.57.0 - graphemer: 1.4.0 - ignore: 5.3.1 - natural-compare-lite: 1.4.0 - semver: 7.6.2 - tsutils: 3.21.0(typescript@5.5.4) - optionalDependencies: - typescript: 5.5.4 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.5.4)': - dependencies: - '@typescript-eslint/scope-manager': 5.62.0 - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.5.4) - debug: 4.3.5 - eslint: 8.57.0 - optionalDependencies: - typescript: 5.5.4 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/scope-manager@5.62.0': - dependencies: - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/visitor-keys': 5.62.0 - - '@typescript-eslint/type-utils@5.62.0(eslint@8.57.0)(typescript@5.5.4)': - dependencies: - '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.5.4) - '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.5.4) - debug: 4.3.5 - eslint: 8.57.0 - tsutils: 3.21.0(typescript@5.5.4) - optionalDependencies: - typescript: 5.5.4 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/types@5.62.0': {} - - '@typescript-eslint/typescript-estree@5.62.0(typescript@5.5.4)': - dependencies: - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/visitor-keys': 5.62.0 - debug: 4.3.5 - globby: 11.1.0 - is-glob: 4.0.3 - semver: 7.6.2 - tsutils: 3.21.0(typescript@5.5.4) - optionalDependencies: - typescript: 5.5.4 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/utils@5.62.0(eslint@8.57.0)(typescript@5.5.4)': - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@types/json-schema': 7.0.15 - '@types/semver': 7.5.8 - '@typescript-eslint/scope-manager': 5.62.0 - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.5.4) - eslint: 8.57.0 - eslint-scope: 5.1.1 - semver: 7.6.2 - transitivePeerDependencies: - - supports-color - - typescript - - '@typescript-eslint/visitor-keys@5.62.0': - dependencies: - '@typescript-eslint/types': 5.62.0 - eslint-visitor-keys: 3.4.3 - - '@ungap/structured-clone@1.2.0': {} - - '@vitest/expect@2.0.5': - dependencies: - '@vitest/spy': 2.0.5 - '@vitest/utils': 2.0.5 - chai: 5.1.1 - tinyrainbow: 1.2.0 - - '@vitest/pretty-format@2.0.5': - dependencies: - tinyrainbow: 1.2.0 - - '@vitest/runner@2.0.5': - dependencies: - '@vitest/utils': 2.0.5 - pathe: 1.1.2 - - '@vitest/snapshot@2.0.5': - dependencies: - '@vitest/pretty-format': 2.0.5 - magic-string: 0.30.10 - pathe: 1.1.2 - - '@vitest/spy@2.0.5': - dependencies: - tinyspy: 3.0.0 - - '@vitest/utils@2.0.5': - dependencies: - '@vitest/pretty-format': 2.0.5 - estree-walker: 3.0.3 - loupe: 3.1.1 - tinyrainbow: 1.2.0 - - acorn-jsx@5.3.2(acorn@8.12.1): - dependencies: - acorn: 8.12.1 - - acorn-walk@8.3.3: - dependencies: - acorn: 8.12.1 - - acorn@8.12.1: {} - - ajv-formats@2.1.1(ajv@8.17.1): - optionalDependencies: - ajv: 8.17.1 - - ajv@6.12.6: - dependencies: - fast-deep-equal: 3.1.3 - fast-json-stable-stringify: 2.1.0 - json-schema-traverse: 0.4.1 - uri-js: 4.4.1 - - ajv@8.17.1: - dependencies: - fast-deep-equal: 3.1.3 - fast-uri: 3.0.1 - json-schema-traverse: 1.0.0 - require-from-string: 2.0.2 - - ansi-escapes@4.3.2: - dependencies: - type-fest: 0.21.3 - - ansi-regex@5.0.1: {} - - ansi-regex@6.0.1: {} - - ansi-styles@3.2.1: - dependencies: - color-convert: 1.9.3 - - ansi-styles@4.3.0: - dependencies: - color-convert: 2.0.1 - - ansi-styles@6.2.1: {} - - arg@4.1.3: {} - - argparse@2.0.1: {} - - array-union@2.1.0: {} - - arrify@1.0.1: {} - - assertion-error@2.0.1: {} - - balanced-match@1.0.2: {} - - brace-expansion@1.1.11: - dependencies: - balanced-match: 1.0.2 - concat-map: 0.0.1 - - brace-expansion@2.0.1: - dependencies: - balanced-match: 1.0.2 - - braces@3.0.3: - dependencies: - fill-range: 7.1.1 - - builtins@5.1.0: - dependencies: - semver: 7.6.2 - - cac@6.7.14: {} - - callsites@3.1.0: {} - - camelcase-keys@6.2.2: - dependencies: - camelcase: 5.3.1 - map-obj: 4.3.0 - quick-lru: 4.0.1 - - camelcase@5.3.1: {} - - chai@5.1.1: - dependencies: - assertion-error: 2.0.1 - check-error: 2.1.1 - deep-eql: 5.0.2 - loupe: 3.1.1 - pathval: 2.0.0 - - chalk@2.4.2: - dependencies: - ansi-styles: 3.2.1 - escape-string-regexp: 1.0.5 - supports-color: 5.5.0 - - chalk@4.1.2: - dependencies: - ansi-styles: 4.3.0 - supports-color: 7.2.0 - - chardet@0.7.0: {} - - check-error@2.1.1: {} - - cli-cursor@3.1.0: - dependencies: - restore-cursor: 3.1.0 - - cli-width@3.0.0: {} - - color-convert@1.9.3: - dependencies: - color-name: 1.1.3 - - color-convert@2.0.1: - dependencies: - color-name: 1.1.4 - - color-name@1.1.3: {} - - color-name@1.1.4: {} - - commander@12.1.0: {} - - concat-map@0.0.1: {} - - create-require@1.1.1: {} - - cross-spawn@7.0.3: - dependencies: - path-key: 3.1.1 - shebang-command: 2.0.0 - which: 2.0.2 - - debug@4.3.5: - dependencies: - ms: 2.1.2 - - decamelize-keys@1.1.1: - dependencies: - decamelize: 1.2.0 - map-obj: 1.0.1 - - decamelize@1.2.0: {} - - deep-eql@5.0.2: {} - - deep-is@0.1.4: {} - - diff@4.0.2: {} - - dir-glob@3.0.1: - dependencies: - path-type: 4.0.0 - - doctrine@3.0.0: - dependencies: - esutils: 2.0.3 - - eastasianwidth@0.2.0: {} - - emoji-regex@8.0.0: {} - - emoji-regex@9.2.2: {} - - error-ex@1.3.2: - dependencies: - is-arrayish: 0.2.1 - - esbuild@0.21.5: + requiresBuild: true optionalDependencies: '@esbuild/aix-ppc64': 0.21.5 '@esbuild/android-arm': 0.21.5 @@ -2236,22 +1126,43 @@ snapshots: '@esbuild/win32-arm64': 0.21.5 '@esbuild/win32-ia32': 0.21.5 '@esbuild/win32-x64': 0.21.5 + dev: true - escape-string-regexp@1.0.5: {} + /escape-string-regexp@1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} + engines: {node: '>=0.8.0'} + dev: true - escape-string-regexp@4.0.0: {} + /escape-string-regexp@4.0.0: + resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} + engines: {node: '>=10'} + dev: true - eslint-config-prettier@9.1.0(eslint@8.57.0): + /eslint-config-prettier@9.1.0(eslint@8.57.0): + resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} + hasBin: true + peerDependencies: + eslint: '>=7.0.0' dependencies: eslint: 8.57.0 + dev: true - eslint-plugin-es@4.1.0(eslint@8.57.0): + /eslint-plugin-es@4.1.0(eslint@8.57.0): + resolution: {integrity: sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ==} + engines: {node: '>=8.10.0'} + peerDependencies: + eslint: '>=4.19.1' dependencies: eslint: 8.57.0 eslint-utils: 2.1.0 regexpp: 3.2.0 + dev: true - eslint-plugin-n@15.7.0(eslint@8.57.0): + /eslint-plugin-n@15.7.0(eslint@8.57.0): + resolution: {integrity: sha512-jDex9s7D/Qial8AGVIHq4W7NswpUD5DPDL2RH8Lzd9EloWUuvUkHfv4FRLMipH5q2UtyurorBkPeNi1wVWNh3Q==} + engines: {node: '>=12.22.0'} + peerDependencies: + eslint: '>=7.0.0' dependencies: builtins: 5.1.0 eslint: 8.57.0 @@ -2262,42 +1173,81 @@ snapshots: minimatch: 3.1.2 resolve: 1.22.8 semver: 7.6.2 + dev: true - eslint-plugin-prettier@5.1.3(eslint-config-prettier@9.1.0(eslint@8.57.0))(eslint@8.57.0)(prettier@3.2.5): + /eslint-plugin-prettier@5.1.3(eslint-config-prettier@9.1.0)(eslint@8.57.0)(prettier@3.2.5): + resolution: {integrity: sha512-C9GCVAs4Eq7ZC/XFQHITLiHJxQngdtraXaM+LoUFoFp/lHNl2Zn8f3WQbe9HvTBBQ9YnKFB0/2Ajdqwo5D1EAw==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + '@types/eslint': '>=8.0.0' + eslint: '>=8.0.0' + eslint-config-prettier: '*' + prettier: '>=3.0.0' + peerDependenciesMeta: + '@types/eslint': + optional: true + eslint-config-prettier: + optional: true dependencies: eslint: 8.57.0 + eslint-config-prettier: 9.1.0(eslint@8.57.0) prettier: 3.2.5 prettier-linter-helpers: 1.0.0 synckit: 0.8.8 - optionalDependencies: - eslint-config-prettier: 9.1.0(eslint@8.57.0) + dev: true - eslint-scope@5.1.1: + /eslint-scope@5.1.1: + resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} + engines: {node: '>=8.0.0'} dependencies: esrecurse: 4.3.0 estraverse: 4.3.0 + dev: true - eslint-scope@7.2.2: + /eslint-scope@7.2.2: + resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 + dev: true - eslint-utils@2.1.0: + /eslint-utils@2.1.0: + resolution: {integrity: sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==} + engines: {node: '>=6'} dependencies: eslint-visitor-keys: 1.3.0 + dev: true - eslint-utils@3.0.0(eslint@8.57.0): + /eslint-utils@3.0.0(eslint@8.57.0): + resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} + engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} + peerDependencies: + eslint: '>=5' dependencies: eslint: 8.57.0 eslint-visitor-keys: 2.1.0 + dev: true - eslint-visitor-keys@1.3.0: {} + /eslint-visitor-keys@1.3.0: + resolution: {integrity: sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==} + engines: {node: '>=4'} + dev: true - eslint-visitor-keys@2.1.0: {} + /eslint-visitor-keys@2.1.0: + resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} + engines: {node: '>=10'} + dev: true - eslint-visitor-keys@3.4.3: {} + /eslint-visitor-keys@3.4.3: + resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true - eslint@8.57.0: + /eslint@8.57.0: + resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + hasBin: true dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) '@eslint-community/regexpp': 4.11.0 @@ -2339,32 +1289,55 @@ snapshots: text-table: 0.2.0 transitivePeerDependencies: - supports-color + dev: true - espree@9.6.1: + /espree@9.6.1: + resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: acorn: 8.12.1 acorn-jsx: 5.3.2(acorn@8.12.1) eslint-visitor-keys: 3.4.3 + dev: true - esquery@1.6.0: + /esquery@1.6.0: + resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} + engines: {node: '>=0.10'} dependencies: estraverse: 5.3.0 + dev: true - esrecurse@4.3.0: + /esrecurse@4.3.0: + resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} + engines: {node: '>=4.0'} dependencies: estraverse: 5.3.0 + dev: true - estraverse@4.3.0: {} + /estraverse@4.3.0: + resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} + engines: {node: '>=4.0'} + dev: true - estraverse@5.3.0: {} + /estraverse@5.3.0: + resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} + engines: {node: '>=4.0'} + dev: true - estree-walker@3.0.3: + /estree-walker@3.0.3: + resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} dependencies: '@types/estree': 1.0.5 + dev: true - esutils@2.0.3: {} + /esutils@2.0.3: + resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} + engines: {node: '>=0.10.0'} + dev: true - execa@5.1.1: + /execa@5.1.1: + resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} + engines: {node: '>=10'} dependencies: cross-spawn: 7.0.3 get-stream: 6.0.1 @@ -2375,8 +1348,11 @@ snapshots: onetime: 5.1.2 signal-exit: 3.0.7 strip-final-newline: 2.0.0 + dev: true - execa@8.0.1: + /execa@8.0.1: + resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} + engines: {node: '>=16.17'} dependencies: cross-spawn: 7.0.3 get-stream: 8.0.1 @@ -2387,92 +1363,158 @@ snapshots: onetime: 6.0.0 signal-exit: 4.1.0 strip-final-newline: 3.0.0 + dev: true - external-editor@3.1.0: + /external-editor@3.1.0: + resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} + engines: {node: '>=4'} dependencies: chardet: 0.7.0 iconv-lite: 0.4.24 tmp: 0.0.33 + dev: true - fast-deep-equal@3.1.3: {} + /fast-deep-equal@3.1.3: + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - fast-diff@1.3.0: {} + /fast-diff@1.3.0: + resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==} + dev: true - fast-glob@3.3.2: + /fast-glob@3.3.2: + resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} + engines: {node: '>=8.6.0'} dependencies: '@nodelib/fs.stat': 2.0.5 '@nodelib/fs.walk': 1.2.8 glob-parent: 5.1.2 merge2: 1.4.1 micromatch: 4.0.7 + dev: true - fast-json-stable-stringify@2.1.0: {} + /fast-json-stable-stringify@2.1.0: + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} + dev: true - fast-levenshtein@2.0.6: {} + /fast-levenshtein@2.0.6: + resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + dev: true - fast-uri@3.0.1: {} + /fast-uri@3.0.1: + resolution: {integrity: sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==} + dev: false - fastq@1.17.1: + /fastq@1.17.1: + resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} dependencies: reusify: 1.0.4 + dev: true - figures@3.2.0: + /figures@3.2.0: + resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==} + engines: {node: '>=8'} dependencies: escape-string-regexp: 1.0.5 + dev: true - file-entry-cache@6.0.1: + /file-entry-cache@6.0.1: + resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} + engines: {node: ^10.12.0 || >=12.0.0} dependencies: flat-cache: 3.2.0 + dev: true - fill-range@7.1.1: + /fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} dependencies: to-regex-range: 5.0.1 + dev: true - find-up@4.1.0: + /find-up@4.1.0: + resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} + engines: {node: '>=8'} dependencies: locate-path: 5.0.0 path-exists: 4.0.0 + dev: true - find-up@5.0.0: + /find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} dependencies: locate-path: 6.0.0 path-exists: 4.0.0 + dev: true - flat-cache@3.2.0: + /flat-cache@3.2.0: + resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} + engines: {node: ^10.12.0 || >=12.0.0} dependencies: flatted: 3.3.1 keyv: 4.5.4 rimraf: 3.0.2 + dev: true - flatted@3.3.1: {} + /flatted@3.3.1: + resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} + dev: true - foreground-child@3.2.1: + /foreground-child@3.2.1: + resolution: {integrity: sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==} + engines: {node: '>=14'} dependencies: cross-spawn: 7.0.3 signal-exit: 4.1.0 + dev: false - fs.realpath@1.0.0: {} + /fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + dev: true - fsevents@2.3.3: + /fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + requiresBuild: true + dev: true optional: true - function-bind@1.1.2: {} + /function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + dev: true - get-func-name@2.0.2: {} + /get-func-name@2.0.2: + resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} + dev: true - get-stream@6.0.1: {} + /get-stream@6.0.1: + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} + engines: {node: '>=10'} + dev: true - get-stream@8.0.1: {} + /get-stream@8.0.1: + resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} + engines: {node: '>=16'} + dev: true - glob-parent@5.1.2: + /glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} dependencies: is-glob: 4.0.3 + dev: true - glob-parent@6.0.2: + /glob-parent@6.0.2: + resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} + engines: {node: '>=10.13.0'} dependencies: is-glob: 4.0.3 + dev: true - glob@10.4.5: + /glob@10.4.5: + resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} + hasBin: true dependencies: foreground-child: 3.2.1 jackspeak: 3.4.3 @@ -2480,8 +1522,11 @@ snapshots: minipass: 7.1.2 package-json-from-dist: 1.0.0 path-scurry: 1.11.1 + dev: false - glob@7.2.3: + /glob@7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + deprecated: Glob versions prior to v9 are no longer supported dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 @@ -2489,12 +1534,18 @@ snapshots: minimatch: 3.1.2 once: 1.4.0 path-is-absolute: 1.0.1 + dev: true - globals@13.24.0: + /globals@13.24.0: + resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} + engines: {node: '>=8'} dependencies: type-fest: 0.20.2 + dev: true - globby@11.1.0: + /globby@11.1.0: + resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} + engines: {node: '>=10'} dependencies: array-union: 2.1.0 dir-glob: 3.0.1 @@ -2502,18 +1553,26 @@ snapshots: ignore: 5.3.1 merge2: 1.4.1 slash: 3.0.0 + dev: true - graphemer@1.4.0: {} + /graphemer@1.4.0: + resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + dev: true - gts@5.3.1(typescript@5.5.4): + /gts@5.3.1(typescript@5.5.4): + resolution: {integrity: sha512-P9F+krJkGOkisUX+P9pfUas1Xy+U+CxBFZT62uInkJbgvZpnW1ug/pIcMJJmLOthMq1J88lpQUGhXDC9UTvVcw==} + engines: {node: '>=14'} + hasBin: true + peerDependencies: + typescript: '>=3' dependencies: - '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.57.0)(typescript@5.5.4) '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.5.4) chalk: 4.1.2 eslint: 8.57.0 eslint-config-prettier: 9.1.0(eslint@8.57.0) eslint-plugin-n: 15.7.0(eslint@8.57.0) - eslint-plugin-prettier: 5.1.3(eslint-config-prettier@9.1.0(eslint@8.57.0))(eslint@8.57.0)(prettier@3.2.5) + eslint-plugin-prettier: 5.1.3(eslint-config-prettier@9.1.0)(eslint@8.57.0)(prettier@3.2.5) execa: 5.1.1 inquirer: 7.3.3 json5: 2.2.3 @@ -2526,52 +1585,102 @@ snapshots: transitivePeerDependencies: - '@types/eslint' - supports-color + dev: true - hard-rejection@2.1.0: {} + /hard-rejection@2.1.0: + resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==} + engines: {node: '>=6'} + dev: true - has-flag@3.0.0: {} + /has-flag@3.0.0: + resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} + engines: {node: '>=4'} + dev: true - has-flag@4.0.0: {} + /has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + dev: true - hasown@2.0.2: + /hasown@2.0.2: + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} dependencies: function-bind: 1.1.2 + dev: true - hosted-git-info@2.8.9: {} + /hosted-git-info@2.8.9: + resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} + dev: true - hosted-git-info@4.1.0: + /hosted-git-info@4.1.0: + resolution: {integrity: sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==} + engines: {node: '>=10'} dependencies: lru-cache: 6.0.0 + dev: true - human-signals@2.1.0: {} + /human-signals@2.1.0: + resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} + engines: {node: '>=10.17.0'} + dev: true - human-signals@5.0.0: {} + /human-signals@5.0.0: + resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} + engines: {node: '>=16.17.0'} + dev: true - husky@8.0.0: {} + /husky@8.0.0: + resolution: {integrity: sha512-4qbE/5dzNDNxFEkX9MNRPKl5+omTXQzdILCUWiqG/lWIAioiM5vln265/l6I2Zx8gpW8l1ukZwGQeCFbBZ6+6w==} + engines: {node: '>=14'} + hasBin: true + dev: true - iconv-lite@0.4.24: + /iconv-lite@0.4.24: + resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} + engines: {node: '>=0.10.0'} dependencies: safer-buffer: 2.1.2 + dev: true - ignore@5.3.1: {} + /ignore@5.3.1: + resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} + engines: {node: '>= 4'} + dev: true - import-fresh@3.3.0: + /import-fresh@3.3.0: + resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} + engines: {node: '>=6'} dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 + dev: true - imurmurhash@0.1.4: {} + /imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + dev: true - indent-string@4.0.0: {} + /indent-string@4.0.0: + resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} + engines: {node: '>=8'} + dev: true - inflight@1.0.6: + /inflight@1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. dependencies: once: 1.4.0 wrappy: 1.0.2 + dev: true - inherits@2.0.4: {} + /inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + dev: true - inquirer@7.3.3: + /inquirer@7.3.3: + resolution: {integrity: sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==} + engines: {node: '>=8.0.0'} dependencies: ansi-escapes: 4.3.2 chalk: 4.1.2 @@ -2586,105 +1695,196 @@ snapshots: string-width: 4.2.3 strip-ansi: 6.0.1 through: 2.3.8 + dev: true - is-arrayish@0.2.1: {} + /is-arrayish@0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + dev: true - is-core-module@2.14.0: + /is-core-module@2.14.0: + resolution: {integrity: sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==} + engines: {node: '>= 0.4'} dependencies: hasown: 2.0.2 + dev: true - is-extglob@2.1.1: {} + /is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + dev: true - is-fullwidth-code-point@3.0.0: {} + /is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} - is-glob@4.0.3: + /is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} dependencies: is-extglob: 2.1.1 + dev: true - is-number@7.0.0: {} + /is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + dev: true - is-path-inside@3.0.3: {} + /is-path-inside@3.0.3: + resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} + engines: {node: '>=8'} + dev: true - is-plain-obj@1.1.0: {} + /is-plain-obj@1.1.0: + resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==} + engines: {node: '>=0.10.0'} + dev: true - is-stream@2.0.1: {} + /is-stream@2.0.1: + resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} + engines: {node: '>=8'} + dev: true - is-stream@3.0.0: {} + /is-stream@3.0.0: + resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: true - isexe@2.0.0: {} + /isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - jackspeak@3.4.3: + /jackspeak@3.4.3: + resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} dependencies: '@isaacs/cliui': 8.0.2 optionalDependencies: '@pkgjs/parseargs': 0.11.0 + dev: false - js-tokens@4.0.0: {} + /js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + dev: true - js-yaml@4.1.0: + /js-yaml@4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + hasBin: true dependencies: argparse: 2.0.1 + dev: true - json-buffer@3.0.1: {} + /json-buffer@3.0.1: + resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} + dev: true - json-parse-even-better-errors@2.3.1: {} + /json-parse-even-better-errors@2.3.1: + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + dev: true - json-schema-traverse@0.4.1: {} + /json-schema-traverse@0.4.1: + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} + dev: true - json-schema-traverse@1.0.0: {} + /json-schema-traverse@1.0.0: + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + dev: false - json-stable-stringify-without-jsonify@1.0.1: {} + /json-stable-stringify-without-jsonify@1.0.1: + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} + dev: true - json5@2.2.3: {} + /json5@2.2.3: + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} + engines: {node: '>=6'} + hasBin: true - jsonschema@1.4.1: {} + /jsonschema@1.4.1: + resolution: {integrity: sha512-S6cATIPVv1z0IlxdN+zUk5EPjkGCdnhN4wVSBlvoUO1tOLJootbo9CquNJmbIh4yikWHiUedhRYrNPn1arpEmQ==} + dev: true - keyv@4.5.4: + /keyv@4.5.4: + resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} dependencies: json-buffer: 3.0.1 + dev: true - kind-of@6.0.3: {} + /kind-of@6.0.3: + resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} + engines: {node: '>=0.10.0'} + dev: true - levn@0.4.1: + /levn@0.4.1: + resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} + engines: {node: '>= 0.8.0'} dependencies: prelude-ls: 1.2.1 type-check: 0.4.0 + dev: true - lines-and-columns@1.2.4: {} + /lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + dev: true - locate-path@5.0.0: + /locate-path@5.0.0: + resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} + engines: {node: '>=8'} dependencies: p-locate: 4.1.0 + dev: true - locate-path@6.0.0: + /locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} dependencies: p-locate: 5.0.0 + dev: true - lodash.merge@4.6.2: {} + /lodash.merge@4.6.2: + resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} + dev: true - lodash@4.17.21: {} + /lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + dev: true - loupe@3.1.1: + /loupe@3.1.1: + resolution: {integrity: sha512-edNu/8D5MKVfGVFRhFf8aAxiTM6Wumfz5XsaatSxlD3w4R1d/WEKUTydCdPGbl9K7QG/Ca3GnDV2sIKIpXRQcw==} dependencies: get-func-name: 2.0.2 + dev: true - lru-cache@10.4.3: {} + /lru-cache@10.4.3: + resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} + dev: false - lru-cache@6.0.0: + /lru-cache@6.0.0: + resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} + engines: {node: '>=10'} dependencies: yallist: 4.0.0 + dev: true - magic-string@0.30.10: + /magic-string@0.30.10: + resolution: {integrity: sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==} dependencies: '@jridgewell/sourcemap-codec': 1.5.0 + dev: true - make-error@1.3.6: {} + /make-error@1.3.6: + resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} + dev: false - map-obj@1.0.1: {} + /map-obj@1.0.1: + resolution: {integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==} + engines: {node: '>=0.10.0'} + dev: true - map-obj@4.3.0: {} + /map-obj@4.3.0: + resolution: {integrity: sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==} + engines: {node: '>=8'} + dev: true - meow@9.0.0: + /meow@9.0.0: + resolution: {integrity: sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==} + engines: {node: '>=10'} dependencies: '@types/minimist': 1.2.5 camelcase-keys: 6.2.2 @@ -2698,87 +1898,155 @@ snapshots: trim-newlines: 3.0.1 type-fest: 0.18.1 yargs-parser: 20.2.9 + dev: true - merge-stream@2.0.0: {} + /merge-stream@2.0.0: + resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + dev: true - merge2@1.4.1: {} + /merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + dev: true - micromatch@4.0.7: + /micromatch@4.0.7: + resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} + engines: {node: '>=8.6'} dependencies: braces: 3.0.3 picomatch: 2.3.1 + dev: true - mimic-fn@2.1.0: {} + /mimic-fn@2.1.0: + resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} + engines: {node: '>=6'} + dev: true - mimic-fn@4.0.0: {} + /mimic-fn@4.0.0: + resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} + engines: {node: '>=12'} + dev: true - min-indent@1.0.1: {} + /min-indent@1.0.1: + resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} + engines: {node: '>=4'} + dev: true - minimatch@3.1.2: + /minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} dependencies: brace-expansion: 1.1.11 + dev: true - minimatch@9.0.5: + /minimatch@9.0.5: + resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} + engines: {node: '>=16 || 14 >=14.17'} dependencies: brace-expansion: 2.0.1 + dev: false - minimist-options@4.1.0: + /minimist-options@4.1.0: + resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==} + engines: {node: '>= 6'} dependencies: arrify: 1.0.1 is-plain-obj: 1.1.0 kind-of: 6.0.3 + dev: true - minipass@7.1.2: {} + /minipass@7.1.2: + resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} + engines: {node: '>=16 || 14 >=14.17'} + dev: false - ms@2.1.2: {} + /ms@2.1.2: + resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} + dev: true - mute-stream@0.0.8: {} + /mute-stream@0.0.8: + resolution: {integrity: sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==} + dev: true - nanoid@3.3.7: {} + /nanoid@3.3.7: + resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + dev: true - natural-compare-lite@1.4.0: {} + /natural-compare-lite@1.4.0: + resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} + dev: true - natural-compare@1.4.0: {} + /natural-compare@1.4.0: + resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} + dev: true - ncp@2.0.0: {} + /ncp@2.0.0: + resolution: {integrity: sha512-zIdGUrPRFTUELUvr3Gmc7KZ2Sw/h1PiVM0Af/oHB6zgnV1ikqSfRk+TOufi79aHYCW3NiOXmr1BP5nWbzojLaA==} + hasBin: true + dev: true - normalize-package-data@2.5.0: + /normalize-package-data@2.5.0: + resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} dependencies: hosted-git-info: 2.8.9 resolve: 1.22.8 semver: 5.7.2 validate-npm-package-license: 3.0.4 + dev: true - normalize-package-data@3.0.3: + /normalize-package-data@3.0.3: + resolution: {integrity: sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==} + engines: {node: '>=10'} dependencies: hosted-git-info: 4.1.0 is-core-module: 2.14.0 semver: 7.6.2 validate-npm-package-license: 3.0.4 + dev: true - normalize-path@3.0.0: {} + /normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + dev: false - npm-run-path@4.0.1: + /npm-run-path@4.0.1: + resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} + engines: {node: '>=8'} dependencies: path-key: 3.1.1 + dev: true - npm-run-path@5.3.0: + /npm-run-path@5.3.0: + resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: path-key: 4.0.0 + dev: true - once@1.4.0: + /once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} dependencies: wrappy: 1.0.2 + dev: true - onetime@5.1.2: + /onetime@5.1.2: + resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} + engines: {node: '>=6'} dependencies: mimic-fn: 2.1.0 + dev: true - onetime@6.0.0: + /onetime@6.0.0: + resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} + engines: {node: '>=12'} dependencies: mimic-fn: 4.0.0 + dev: true - optionator@0.9.4: + /optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} + engines: {node: '>= 0.8.0'} dependencies: deep-is: 0.1.4 fast-levenshtein: 2.0.6 @@ -2786,127 +2054,238 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 word-wrap: 1.2.5 + dev: true - os-tmpdir@1.0.2: {} + /os-tmpdir@1.0.2: + resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} + engines: {node: '>=0.10.0'} + dev: true - p-limit@2.3.0: + /p-limit@2.3.0: + resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} + engines: {node: '>=6'} dependencies: p-try: 2.2.0 + dev: true - p-limit@3.1.0: + /p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} dependencies: yocto-queue: 0.1.0 + dev: true - p-locate@4.1.0: + /p-locate@4.1.0: + resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} + engines: {node: '>=8'} dependencies: p-limit: 2.3.0 + dev: true - p-locate@5.0.0: + /p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} dependencies: p-limit: 3.1.0 + dev: true - p-try@2.2.0: {} + /p-try@2.2.0: + resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} + engines: {node: '>=6'} + dev: true - package-json-from-dist@1.0.0: {} + /package-json-from-dist@1.0.0: + resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==} + dev: false - parent-module@1.0.1: + /parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} dependencies: callsites: 3.1.0 + dev: true - parse-json@5.2.0: + /parse-json@5.2.0: + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} + engines: {node: '>=8'} dependencies: '@babel/code-frame': 7.24.7 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 + dev: true - path-exists@4.0.0: {} + /path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + dev: true - path-is-absolute@1.0.1: {} + /path-is-absolute@1.0.1: + resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} + engines: {node: '>=0.10.0'} + dev: true - path-key@3.1.1: {} + /path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} - path-key@4.0.0: {} + /path-key@4.0.0: + resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} + engines: {node: '>=12'} + dev: true - path-parse@1.0.7: {} + /path-parse@1.0.7: + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + dev: true - path-scurry@1.11.1: + /path-scurry@1.11.1: + resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} + engines: {node: '>=16 || 14 >=14.18'} dependencies: lru-cache: 10.4.3 minipass: 7.1.2 + dev: false - path-type@4.0.0: {} + /path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + dev: true - pathe@1.1.2: {} + /pathe@1.1.2: + resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} + dev: true - pathval@2.0.0: {} + /pathval@2.0.0: + resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==} + engines: {node: '>= 14.16'} + dev: true - picocolors@1.0.1: {} + /picocolors@1.0.1: + resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} + dev: true - picomatch@2.3.1: {} + /picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + dev: true - postcss@8.4.39: + /postcss@8.4.39: + resolution: {integrity: sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw==} + engines: {node: ^10 || ^12 || >=14} dependencies: nanoid: 3.3.7 picocolors: 1.0.1 source-map-js: 1.2.0 + dev: true - prelude-ls@1.2.1: {} + /prelude-ls@1.2.1: + resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} + engines: {node: '>= 0.8.0'} + dev: true - prettier-linter-helpers@1.0.0: + /prettier-linter-helpers@1.0.0: + resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==} + engines: {node: '>=6.0.0'} dependencies: fast-diff: 1.3.0 + dev: true - prettier@3.2.5: {} + /prettier@3.2.5: + resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} + engines: {node: '>=14'} + hasBin: true + dev: true - punycode@2.3.1: {} + /punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + dev: true - queue-microtask@1.2.3: {} + /queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + dev: true - quick-lru@4.0.1: {} + /quick-lru@4.0.1: + resolution: {integrity: sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==} + engines: {node: '>=8'} + dev: true - read-pkg-up@7.0.1: + /read-pkg-up@7.0.1: + resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} + engines: {node: '>=8'} dependencies: find-up: 4.1.0 read-pkg: 5.2.0 type-fest: 0.8.1 + dev: true - read-pkg@5.2.0: + /read-pkg@5.2.0: + resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} + engines: {node: '>=8'} dependencies: '@types/normalize-package-data': 2.4.4 normalize-package-data: 2.5.0 parse-json: 5.2.0 type-fest: 0.6.0 + dev: true - redent@3.0.0: + /redent@3.0.0: + resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} + engines: {node: '>=8'} dependencies: indent-string: 4.0.0 strip-indent: 3.0.0 + dev: true - regexpp@3.2.0: {} + /regexpp@3.2.0: + resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} + engines: {node: '>=8'} + dev: true - require-from-string@2.0.2: {} + /require-from-string@2.0.2: + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} + dev: false - resolve-from@4.0.0: {} + /resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + dev: true - resolve@1.22.8: + /resolve@1.22.8: + resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} + hasBin: true dependencies: is-core-module: 2.14.0 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 + dev: true - restore-cursor@3.1.0: + /restore-cursor@3.1.0: + resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} + engines: {node: '>=8'} dependencies: onetime: 5.1.2 signal-exit: 3.0.7 + dev: true - reusify@1.0.4: {} + /reusify@1.0.4: + resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + dev: true - rimraf@3.0.2: + /rimraf@3.0.2: + resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} + deprecated: Rimraf versions prior to v4 are no longer supported + hasBin: true dependencies: glob: 7.2.3 + dev: true - rollup@4.18.1: + /rollup@4.18.1: + resolution: {integrity: sha512-Elx2UT8lzxxOXMpy5HWQGZqkrQOtrVDDa/bm9l10+U4rQnVzbL/LgZ4NOM1MPIDyHk69W4InuYDF5dzRh4Kw1A==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true dependencies: '@types/estree': 1.0.5 optionalDependencies: @@ -2927,127 +2306,237 @@ snapshots: '@rollup/rollup-win32-ia32-msvc': 4.18.1 '@rollup/rollup-win32-x64-msvc': 4.18.1 fsevents: 2.3.3 + dev: true - run-async@2.4.1: {} + /run-async@2.4.1: + resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==} + engines: {node: '>=0.12.0'} + dev: true - run-parallel@1.2.0: + /run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} dependencies: queue-microtask: 1.2.3 + dev: true - rxjs@6.6.7: + /rxjs@6.6.7: + resolution: {integrity: sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==} + engines: {npm: '>=2.0.0'} dependencies: tslib: 1.14.1 + dev: true - safe-stable-stringify@2.4.3: {} + /safe-stable-stringify@2.4.3: + resolution: {integrity: sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==} + engines: {node: '>=10'} + dev: false - safer-buffer@2.1.2: {} + /safer-buffer@2.1.2: + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + dev: true - semver@5.7.2: {} + /semver@5.7.2: + resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} + hasBin: true + dev: true - semver@7.6.2: {} + /semver@7.6.2: + resolution: {integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==} + engines: {node: '>=10'} + hasBin: true + dev: true - shebang-command@2.0.0: + /shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} dependencies: shebang-regex: 3.0.0 - shebang-regex@3.0.0: {} + /shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} - siginfo@2.0.0: {} + /siginfo@2.0.0: + resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} + dev: true - signal-exit@3.0.7: {} + /signal-exit@3.0.7: + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + dev: true - signal-exit@4.1.0: {} + /signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} - slash@3.0.0: {} + /slash@3.0.0: + resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} + engines: {node: '>=8'} + dev: true - source-map-js@1.2.0: {} + /source-map-js@1.2.0: + resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} + engines: {node: '>=0.10.0'} + dev: true - spdx-correct@3.2.0: + /spdx-correct@3.2.0: + resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} dependencies: spdx-expression-parse: 3.0.1 spdx-license-ids: 3.0.18 + dev: true - spdx-exceptions@2.5.0: {} + /spdx-exceptions@2.5.0: + resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==} + dev: true - spdx-expression-parse@3.0.1: + /spdx-expression-parse@3.0.1: + resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} dependencies: spdx-exceptions: 2.5.0 spdx-license-ids: 3.0.18 + dev: true - spdx-license-ids@3.0.18: {} + /spdx-license-ids@3.0.18: + resolution: {integrity: sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==} + dev: true - stackback@0.0.2: {} + /stackback@0.0.2: + resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} + dev: true - std-env@3.7.0: {} + /std-env@3.7.0: + resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} + dev: true - string-width@4.2.3: + /string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} dependencies: emoji-regex: 8.0.0 is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 - string-width@5.1.2: + /string-width@5.1.2: + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} dependencies: eastasianwidth: 0.2.0 emoji-regex: 9.2.2 strip-ansi: 7.1.0 + dev: false - strip-ansi@6.0.1: + /strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} dependencies: ansi-regex: 5.0.1 - strip-ansi@7.1.0: + /strip-ansi@7.1.0: + resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} + engines: {node: '>=12'} dependencies: ansi-regex: 6.0.1 + dev: false - strip-final-newline@2.0.0: {} + /strip-final-newline@2.0.0: + resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} + engines: {node: '>=6'} + dev: true - strip-final-newline@3.0.0: {} + /strip-final-newline@3.0.0: + resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} + engines: {node: '>=12'} + dev: true - strip-indent@3.0.0: + /strip-indent@3.0.0: + resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} + engines: {node: '>=8'} dependencies: min-indent: 1.0.1 + dev: true - strip-json-comments@3.1.1: {} + /strip-json-comments@3.1.1: + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} + engines: {node: '>=8'} + dev: true - supports-color@5.5.0: + /supports-color@5.5.0: + resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} + engines: {node: '>=4'} dependencies: has-flag: 3.0.0 + dev: true - supports-color@7.2.0: + /supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} dependencies: has-flag: 4.0.0 + dev: true - supports-preserve-symlinks-flag@1.0.0: {} + /supports-preserve-symlinks-flag@1.0.0: + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} + engines: {node: '>= 0.4'} + dev: true - synckit@0.8.8: + /synckit@0.8.8: + resolution: {integrity: sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==} + engines: {node: ^14.18.0 || >=16.0.0} dependencies: '@pkgr/core': 0.1.1 tslib: 2.6.3 + dev: true - text-table@0.2.0: {} + /text-table@0.2.0: + resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} + dev: true - through@2.3.8: {} + /through@2.3.8: + resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} + dev: true - tinybench@2.8.0: {} + /tinybench@2.8.0: + resolution: {integrity: sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw==} + dev: true - tinypool@1.0.0: {} + /tinypool@1.0.1: + resolution: {integrity: sha512-URZYihUbRPcGv95En+sz6MfghfIc2OJ1sv/RmhWZLouPY0/8Vo80viwPvg3dlaS9fuq7fQMEfgRRK7BBZThBEA==} + engines: {node: ^18.0.0 || >=20.0.0} + dev: true - tinyrainbow@1.2.0: {} + /tinyrainbow@1.2.0: + resolution: {integrity: sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==} + engines: {node: '>=14.0.0'} + dev: true - tinyspy@3.0.0: {} + /tinyspy@3.0.2: + resolution: {integrity: sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==} + engines: {node: '>=14.0.0'} + dev: true - tmp@0.0.33: + /tmp@0.0.33: + resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} + engines: {node: '>=0.6.0'} dependencies: os-tmpdir: 1.0.2 + dev: true - to-regex-range@5.0.1: + /to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} dependencies: is-number: 7.0.0 + dev: true - trim-newlines@3.0.1: {} + /trim-newlines@3.0.1: + resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==} + engines: {node: '>=8'} + dev: true - ts-json-schema-generator@2.3.0: + /ts-json-schema-generator@2.3.0: + resolution: {integrity: sha512-t4lBQAwZc0sOJq9LJt3NgbznIcslVnm0JeEMFq8qIRklpMRY8jlYD0YmnRWbqBKANxkby91P1XanSSlSOFpUmg==} + engines: {node: '>=18.0.0'} + hasBin: true dependencies: '@types/json-schema': 7.0.15 commander: 12.1.0 @@ -3057,8 +2546,21 @@ snapshots: safe-stable-stringify: 2.4.3 tslib: 2.6.3 typescript: 5.5.4 + dev: false - ts-node@10.9.2(@types/node@18.16.1)(typescript@5.5.4): + /ts-node@10.9.2(@types/node@18.16.1)(typescript@5.5.4): + resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} + hasBin: true + peerDependencies: + '@swc/core': '>=1.2.50' + '@swc/wasm': '>=1.2.50' + '@types/node': '*' + typescript: '>=2.7' + peerDependenciesMeta: + '@swc/core': + optional: true + '@swc/wasm': + optional: true dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 @@ -3075,44 +2577,83 @@ snapshots: typescript: 5.5.4 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 + dev: false - tslib@1.14.1: {} + /tslib@1.14.1: + resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} + dev: true - tslib@2.6.3: {} + /tslib@2.6.3: + resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==} - tsutils@3.21.0(typescript@5.5.4): + /tsutils@3.21.0(typescript@5.5.4): + resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} + engines: {node: '>= 6'} + peerDependencies: + typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' dependencies: tslib: 1.14.1 typescript: 5.5.4 + dev: true - type-check@0.4.0: + /type-check@0.4.0: + resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} + engines: {node: '>= 0.8.0'} dependencies: prelude-ls: 1.2.1 + dev: true - type-fest@0.18.1: {} + /type-fest@0.18.1: + resolution: {integrity: sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==} + engines: {node: '>=10'} + dev: true - type-fest@0.20.2: {} + /type-fest@0.20.2: + resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} + engines: {node: '>=10'} + dev: true - type-fest@0.21.3: {} + /type-fest@0.21.3: + resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} + engines: {node: '>=10'} + dev: true - type-fest@0.6.0: {} + /type-fest@0.6.0: + resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} + engines: {node: '>=8'} + dev: true - type-fest@0.8.1: {} + /type-fest@0.8.1: + resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} + engines: {node: '>=8'} + dev: true - typescript@5.5.4: {} + /typescript@5.5.4: + resolution: {integrity: sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==} + engines: {node: '>=14.17'} + hasBin: true - uri-js@4.4.1: + /uri-js@4.4.1: + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: punycode: 2.3.1 + dev: true - v8-compile-cache-lib@3.0.1: {} + /v8-compile-cache-lib@3.0.1: + resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} + dev: false - validate-npm-package-license@3.0.4: + /validate-npm-package-license@3.0.4: + resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} dependencies: spdx-correct: 3.2.0 spdx-expression-parse: 3.0.1 + dev: true - vite-node@2.0.5(@types/node@18.16.1): + /vite-node@2.0.5(@types/node@18.16.1): + resolution: {integrity: sha512-LdsW4pxj0Ot69FAoXZ1yTnA9bjGohr2yNBU7QKRxpz8ITSkhuDl6h3zS/tvgz4qrNjeRnvrWeXQ8ZF7Um4W00Q==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true dependencies: cac: 6.7.14 debug: 4.3.5 @@ -3128,19 +2669,71 @@ snapshots: - sugarss - supports-color - terser + dev: true - vite@5.3.3(@types/node@18.16.1): + /vite@5.3.3(@types/node@18.16.1): + resolution: {integrity: sha512-NPQdeCU0Dv2z5fu+ULotpuq5yfCS1BzKUIPhNbP3YBfAMGJXbt2nS+sbTFu+qchaqWTD+H3JK++nRwr6XIcp6A==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || >=20.0.0 + less: '*' + lightningcss: ^1.21.0 + sass: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true dependencies: + '@types/node': 18.16.1 esbuild: 0.21.5 postcss: 8.4.39 rollup: 4.18.1 optionalDependencies: - '@types/node': 18.16.1 fsevents: 2.3.3 + dev: true - vitest@2.0.5(@types/node@18.16.1): + /vitest@2.0.5(@types/node@18.16.1): + resolution: {integrity: sha512-8GUxONfauuIdeSl5f9GTgVEpg5BTOlplET4WEDaeY2QBiN8wSm68vxN/tb5z405OwppfoCavnwXafiaYBC/xOA==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@edge-runtime/vm': '*' + '@types/node': ^18.0.0 || >=20.0.0 + '@vitest/browser': 2.0.5 + '@vitest/ui': 2.0.5 + happy-dom: '*' + jsdom: '*' + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@types/node': + optional: true + '@vitest/browser': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true dependencies: '@ampproject/remapping': 2.3.0 + '@types/node': 18.16.1 '@vitest/expect': 2.0.5 '@vitest/pretty-format': 2.0.5 '@vitest/runner': 2.0.5 @@ -3154,13 +2747,11 @@ snapshots: pathe: 1.1.2 std-env: 3.7.0 tinybench: 2.8.0 - tinypool: 1.0.0 + tinypool: 1.0.1 tinyrainbow: 1.2.0 vite: 5.3.3(@types/node@18.16.1) vite-node: 2.0.5(@types/node@18.16.1) why-is-node-running: 2.3.0 - optionalDependencies: - '@types/node': 18.16.1 transitivePeerDependencies: - less - lightningcss @@ -3169,41 +2760,74 @@ snapshots: - sugarss - supports-color - terser + dev: true - which@2.0.2: + /which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true dependencies: isexe: 2.0.0 - why-is-node-running@2.3.0: + /why-is-node-running@2.3.0: + resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} + engines: {node: '>=8'} + hasBin: true dependencies: siginfo: 2.0.0 stackback: 0.0.2 + dev: true - word-wrap@1.2.5: {} + /word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} + engines: {node: '>=0.10.0'} + dev: true - wrap-ansi@7.0.0: + /wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} dependencies: ansi-styles: 4.3.0 string-width: 4.2.3 strip-ansi: 6.0.1 + dev: false - wrap-ansi@8.1.0: + /wrap-ansi@8.1.0: + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} dependencies: ansi-styles: 6.2.1 string-width: 5.1.2 strip-ansi: 7.1.0 + dev: false - wrappy@1.0.2: {} + /wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + dev: true - write-file-atomic@4.0.2: + /write-file-atomic@4.0.2: + resolution: {integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} dependencies: imurmurhash: 0.1.4 signal-exit: 3.0.7 + dev: true - yallist@4.0.0: {} + /yallist@4.0.0: + resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + dev: true - yargs-parser@20.2.9: {} + /yargs-parser@20.2.9: + resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} + engines: {node: '>=10'} + dev: true - yn@3.1.1: {} + /yn@3.1.1: + resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} + engines: {node: '>=6'} + dev: false - yocto-queue@0.1.0: {} + /yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + dev: true diff --git a/schemas/prototypeApplication.json b/schemas/prototypeApplication.json index aecd87e8..8935177a 100644 --- a/schemas/prototypeApplication.json +++ b/schemas/prototypeApplication.json @@ -128,13 +128,6 @@ ], "type": "object" }, - "role": { - "enum": [ - "agent", - "proxy" - ], - "type": "string" - }, "siteContact": { "$ref": "#/definitions/SiteContact", "description": "Contact information for the site visit" @@ -156,7 +149,6 @@ "email", "name", "phone", - "role", "siteContact", "type" ], @@ -279,10 +271,6 @@ ], "type": "object" }, - "role": { - "$ref": "#/definitions/UserRoles", - "description": "The role of the user who completed the application" - }, "siteContact": { "$ref": "#/definitions/SiteContact", "description": "Contact information for the site visit" @@ -303,7 +291,6 @@ "email", "name", "phone", - "role", "siteContact", "type" ], @@ -389,13 +376,21 @@ "application": { "$ref": "#/definitions/LDCApplicationData" }, + "property": { + "$ref": "#/definitions/PropertyBase" + }, "proposal": { "$ref": "#/definitions/ProposalBase" + }, + "user": { + "$ref": "#/definitions/UserBase" } }, "required": [ + "user", "applicant", "application", + "property", "proposal" ], "type": "object" @@ -489,10 +484,6 @@ ], "type": "object" }, - "role": { - "$ref": "#/definitions/UserRoles", - "description": "The role of the user who completed the application" - }, "siteContact": { "$ref": "#/definitions/SiteContact", "description": "Contact information for the site visit" @@ -514,7 +505,6 @@ "name", "ownership", "phone", - "role", "siteContact", "type" ], @@ -662,13 +652,6 @@ ], "type": "object" }, - "role": { - "enum": [ - "agent", - "proxy" - ], - "type": "string" - }, "siteContact": { "$ref": "#/definitions/SiteContact", "description": "Contact information for the site visit" @@ -691,7 +674,6 @@ "name", "ownership", "phone", - "role", "siteContact", "type" ], @@ -773,37 +755,6 @@ }, "type": "array" }, - "OpenSpaceDesignation": { - "$id": "#OpenSpaceDesignation", - "anyOf": [ - { - "const": "greenBelt", - "description": "Green Belt", - "type": "string" - }, - { - "const": "local", - "description": "Local Open Spaces", - "type": "string" - }, - { - "const": "metropolitan", - "description": "Metropolitan Open Land", - "type": "string" - }, - { - "const": "none", - "description": "Not designated", - "type": "string" - }, - { - "const": "other", - "description": "Other designation", - "type": "string" - } - ], - "description": "Designations of natural open spaces" - }, "OwnersNoNoticeGiven": { "additionalProperties": false, "properties": { @@ -924,13 +875,21 @@ "application": { "$ref": "#/definitions/PAApplicationData" }, + "property": { + "$ref": "#/definitions/PropertyBase" + }, "proposal": { "$ref": "#/definitions/ProposalBase" + }, + "user": { + "$ref": "#/definitions/UserBase" } }, "required": [ + "user", "applicant", "application", + "property", "proposal" ], "type": "object" @@ -1188,13 +1147,21 @@ "application": { "$ref": "#/definitions/PPApplicationData" }, + "property": { + "$ref": "#/definitions/PropertyBase" + }, "proposal": { "$ref": "#/definitions/ProposalBase" + }, + "user": { + "$ref": "#/definitions/UserBase" } }, "required": [ + "user", "applicant", "application", + "property", "proposal" ], "type": "object" @@ -1360,10 +1327,6 @@ ], "type": "object" }, - "role": { - "$ref": "#/definitions/UserRoles", - "description": "The role of the user who completed the application" - }, "siteContact": { "$ref": "#/definitions/SiteContact", "description": "Contact information for the site visit" @@ -1385,7 +1348,6 @@ "name", "ownership", "phone", - "role", "siteContact", "type" ], @@ -1605,13 +1567,6 @@ ], "type": "object" }, - "role": { - "enum": [ - "agent", - "proxy" - ], - "type": "string" - }, "siteContact": { "$ref": "#/definitions/SiteContact", "description": "Contact information for the site visit" @@ -1634,7 +1589,6 @@ "name", "ownership", "phone", - "role", "siteContact", "type" ], @@ -1803,28 +1757,28 @@ } ] }, + "PropertyBase": { + "additionalProperties": false, + "properties": { + "test": { + "type": "string" + } + }, + "required": [ + "test" + ], + "type": "object" + }, "ProposalBase": { "additionalProperties": false, "properties": { - "nature": { - "additionalProperties": false, - "properties": { - "openSpaces": { - "additionalProperties": false, - "properties": { - "designation": { - "$ref": "#/definitions/OpenSpaceDesignation" - } - }, - "required": [ - "designation" - ], - "type": "object" - } - }, - "type": "object" + "test": { + "type": "string" } }, + "required": [ + "test" + ], "type": "object" }, "SiteContact": { @@ -1900,6 +1854,19 @@ ], "type": "object" }, + "UserBase": { + "additionalProperties": false, + "properties": { + "role": { + "$ref": "#/definitions/UserRoles", + "description": "The role of the user who completed the application" + } + }, + "required": [ + "role" + ], + "type": "object" + }, "UserRoles": { "enum": [ "applicant", @@ -1909,6 +1876,6 @@ "type": "string" } }, - "description": "The root specification for a planning application in England generated by a digital planning service (prototype)", + "description": "The (prototype) root specification for a planning application in England generated by a digital planning service", "title": "PrototypeApplication" } \ No newline at end of file diff --git a/types/schemas/prototypeApplication/data/Applicant.ts b/types/schemas/prototypeApplication/data/Applicant.ts index 8a778906..adc6a123 100644 --- a/types/schemas/prototypeApplication/data/Applicant.ts +++ b/types/schemas/prototypeApplication/data/Applicant.ts @@ -1,13 +1,10 @@ import {Date, Email} from '../../../shared/utils'; import {PrimaryApplicationType} from '../enums/ApplicationType'; +import {UserRoles} from './User'; export type ApplicantBase = BaseApplicant | Agent; export type BaseApplicant = ContactDetails & { - /** - * @description The role of the user who completed the application - */ - role: UserRoles; /** * @Description The type of applicant */ @@ -23,15 +20,12 @@ export type BaseApplicant = ContactDetails & { }; export interface Agent extends BaseApplicant { - role: Extract; /** * @description Contact information for the agent or proxy */ agent: ContactDetails & {address: UserAddress}; } -export type UserRoles = 'applicant' | 'agent' | 'proxy'; - export type SiteContact = {role: UserRoles} | SiteContactOther; export interface SiteContactOther { diff --git a/types/schemas/prototypeApplication/data/Property.ts b/types/schemas/prototypeApplication/data/Property.ts new file mode 100644 index 00000000..c2461ed7 --- /dev/null +++ b/types/schemas/prototypeApplication/data/Property.ts @@ -0,0 +1,3 @@ +export interface PropertyBase { + test: string; +} diff --git a/types/schemas/prototypeApplication/data/Proposal.ts b/types/schemas/prototypeApplication/data/Proposal.ts index 49158080..8a322412 100644 --- a/types/schemas/prototypeApplication/data/Proposal.ts +++ b/types/schemas/prototypeApplication/data/Proposal.ts @@ -1,9 +1,3 @@ -import {OpenSpaceDesignation} from '../enums/OpenSpace'; - export interface ProposalBase { - nature?: { - openSpaces?: { - designation: OpenSpaceDesignation; - }; - }; + test: string; } diff --git a/types/schemas/prototypeApplication/data/User.ts b/types/schemas/prototypeApplication/data/User.ts new file mode 100644 index 00000000..f2aeae4c --- /dev/null +++ b/types/schemas/prototypeApplication/data/User.ts @@ -0,0 +1,8 @@ +export interface UserBase { + /** + * @description The role of the user who completed the application + */ + role: UserRoles; +} + +export type UserRoles = 'applicant' | 'agent' | 'proxy'; diff --git a/types/schemas/prototypeApplication/index.ts b/types/schemas/prototypeApplication/index.ts index df423195..569b458e 100644 --- a/types/schemas/prototypeApplication/index.ts +++ b/types/schemas/prototypeApplication/index.ts @@ -1,6 +1,8 @@ import {Applicant} from './data/Applicant'; import {ApplicationData} from './data/ApplicationData'; +import {PropertyBase} from './data/Property'; import {ProposalBase} from './data/Proposal'; +import {UserBase} from './data/User'; import { ApplicationType, LDCApplicationType, @@ -21,80 +23,21 @@ interface ApplicationSpecification< > { applicationType: TGranular; data: { + user: UserBase; applicant: Applicant; application: ApplicationData; + property: PropertyBase; proposal: ProposalBase; }; } export type LDC = ApplicationSpecification<'ldc', LDCApplicationType>; - -export type PP = ApplicationSpecification<'pp', PPApplicationType>; - export type PA = ApplicationSpecification<'pa', PAApplicationType>; +export type PP = ApplicationSpecification<'pp', PPApplicationType>; +// TODO: All the rest! /** * @title PrototypeApplication - * @description The root specification for a planning application in England generated by a digital planning service (prototype) + * @description The (prototype) root specification for a planning application in England generated by a digital planning service */ export type PrototypeApplication = LDC | PA | PP; -// TODO: All the rest! - -// const test: PrototypeApplication = { -// applicationType: 'ldc', -// data: { -// applicant: { -// "type": "individual", -// "name": { -// "first": "Roald", -// "last": "Dahl" -// }, -// "email": "f.fox@boggischickenshed.com", -// "phone": { -// "primary": "Not provided by agent" -// }, -// "address": { -// "sameAsSiteAddress": true -// }, -// "siteContact": { -// "role": "applicant" -// }, -// "ownership": { -// "interest": "occupier", -// "owners": [ -// { -// "interest": "owner", -// "name": "Matilda Wormwood", -// "address": { -// "town": "Reading", -// "line1": "9, Library Way", -// "line2": "", -// "county": "", -// "country": "UK", -// "postcode": "L1T3R8Y" -// }, -// "noticeGiven": true -// } -// ] -// }, -// "agent": { -// "name": { -// "first": "F", -// "last": "Fox" -// }, -// "email": "f.fox@boggischickenshed.com", -// "phone": { -// "primary": "0234 567 8910" -// }, -// "address": { -// "line1": "The Tree", -// "line2": "One Tree Hill", -// "town": "Great Tunnelling", -// "county": "", -// "postcode": "F0XH0L3", -// "country": "" -// } -// } -// } -// }, -// }; diff --git a/types/shared/enums/.gitkeep b/types/shared/enums/.gitkeep deleted file mode 100644 index e69de29b..00000000 From 69fa626654a168cd32fd7d499dc46f39f972b7f7 Mon Sep 17 00:00:00 2001 From: Jessica McInchak Date: Fri, 13 Sep 2024 14:22:19 +0200 Subject: [PATCH 03/13] share responses and metadata, define prototype applicant and property --- .../lawfulDevelopmentCertificate/existing.ts | 1117 ++- .../lawfulDevelopmentCertificate/proposed.ts | 795 ++ .../existing.json | 1644 +++- .../proposed.json | 1137 +++ schemas/prototypeApplication.json | 8620 ++++++++++++++--- types/schemas/application/index.ts | 4 +- types/schemas/prototypeApplication/File.ts | 11 + .../prototypeApplication/PreAssessment.ts | 5 + .../prototypeApplication/data/Applicant.ts | 10 +- .../prototypeApplication/data/Property.ts | 135 +- .../prototypeApplication/enums/FileType.ts | 3 +- .../enums/PlanningDesignation.ts | 31 +- types/schemas/prototypeApplication/index.ts | 8 + .../application => shared}/Metadata.ts | 4 +- .../application => shared}/Responses.ts | 2 +- 15 files changed, 12401 insertions(+), 1125 deletions(-) create mode 100644 examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts create mode 100644 examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json create mode 100644 types/schemas/prototypeApplication/File.ts create mode 100644 types/schemas/prototypeApplication/PreAssessment.ts rename types/{schemas/application => shared}/Metadata.ts (96%) rename types/{schemas/application => shared}/Responses.ts (94%) diff --git a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts index 800576a5..641e4e85 100644 --- a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts +++ b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts @@ -1,6 +1,6 @@ import {PrototypeApplication} from '../../../../types/schemas/prototypeApplication'; -// const version = process.env['VERSION'] || '@next'; +const version = process.env['VERSION'] || '@next'; export const lawfulDevelopmentCertificateExistingPrototype: PrototypeApplication = { @@ -67,10 +67,1123 @@ export const lawfulDevelopmentCertificateExistingPrototype: PrototypeApplication }, }, property: { - test: 'todo', + address: { + latitude: 51.6994957, + longitude: -0.708966, + x: 489320, + y: 200872, + title: 'GIPSY HOUSE, WHITEFIELD LANE, GREAT MISSENDEN', + singleLine: 'GIPSY HOUSE, WHITEFIELD LANE, GREAT MISSENDEN, HP16 0BP', + source: 'Ordnance Survey', + uprn: '100081174436', + usrn: '07300709', + pao: '', + street: 'WHITEFIELD LANE', + town: 'GREAT MISSENDEN', + postcode: 'HP16 0BP', + }, + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'Polygon', + coordinates: [ + [ + [-0.7085376977920632, 51.699564621757816], + [-0.7086127996444802, 51.69965605327502], + [-0.708982944488535, 51.699654390885456], + [-0.7089909911155797, 51.699673508361855], + [-0.7089319825172521, 51.699683482694184], + [-0.7089520990848638, 51.69973002954916], + [-0.7091867923736667, 51.69968930105364], + [-0.7092216610908603, 51.699688469859495], + [-0.709239095449457, 51.69968514508267], + [-0.709253847599039, 51.6997134056779], + [-0.7093128561973666, 51.69970176896433], + [-0.7092699408531282, 51.699610337539525], + [-0.7096253335476013, 51.699648572521454], + [-0.7098613679409116, 51.69958457046823], + [-0.7098962366581053, 51.69955049141595], + [-0.7098090648651213, 51.6994216557425], + [-0.7099243998527616, 51.699390070166544], + [-0.7098264992237182, 51.699238791576136], + [-0.7097460329532714, 51.699236297968724], + [-0.7095716893673034, 51.69927536446852], + [-0.7095421850681398, 51.69927619567025], + [-0.7092954218387698, 51.69931941814053], + [-0.7090929150581455, 51.69937427737031], + [-0.709021836519251, 51.69938923896689], + [-0.7089574635028936, 51.6994008757608], + [-0.7088904082775213, 51.69942082454341], + [-0.7086691260337761, 51.699501450783515], + [-0.7086181640624932, 51.699517243535354], + [-0.7085457444191079, 51.699541348251245], + [-0.7085350155830483, 51.69954799782576], + [-0.7085376977920632, 51.699564621757816], + ], + ], + }, + properties: null, + }, + area: { + hectares: 0.299367, + squareMetres: 2993.67, + }, + }, + planning: { + sources: [ + 'https://api.editor.planx.dev/gis/buckinghamshire?geom=POLYGON+%28%28-0.7085376977920632+51.699564621757816%2C+-0.7086127996444802+51.69965605327502%2C+-0.708982944488535+51.699654390885456%2C+-0.7089909911155797+51.699673508361855%2C+-0.7089319825172521+51.699683482694184%2C+-0.7089520990848638+51.69973002954916%2C+-0.7091867923736667+51.69968930105364%2C+-0.7092216610908603+51.699688469859495%2C+-0.709239095449457+51.69968514508267%2C+-0.709253847599039+51.6997134056779%2C+-0.7093128561973666+51.69970176896433%2C+-0.7092699408531282+51.699610337539525%2C+-0.7096253335476013+51.699648572521454%2C+-0.7098613679409116+51.69958457046823%2C+-0.7098962366581053+51.69955049141595%2C+-0.7098090648651213+51.6994216557425%2C+-0.7099243998527616+51.699390070166544%2C+-0.7098264992237182+51.699238791576136%2C+-0.7097460329532714+51.699236297968724%2C+-0.7095716893673034+51.69927536446852%2C+-0.7095421850681398+51.69927619567025%2C+-0.7092954218387698+51.69931941814053%2C+-0.7090929150581455+51.69937427737031%2C+-0.709021836519251+51.69938923896689%2C+-0.7089574635028936+51.6994008757608%2C+-0.7088904082775213+51.69942082454341%2C+-0.7086691260337761+51.699501450783515%2C+-0.7086181640624932+51.699517243535354%2C+-0.7085457444191079+51.699541348251245%2C+-0.7085350155830483+51.69954799782576%2C+-0.7085376977920632+51.699564621757816%29%29&analytics=false&sessionId=95f90e21-93f5-4761-90b3-815c673e041f', + 'https://api.editor.planx.dev/roads?usrn=07300709', + ], + designations: [ + { + designation: 'article4', + intersects: true, + entities: [ + { + name: 'Whole District excluding the Town of Chesham - Poultry production.', + description: + 'Bucks County Council Town and Country Planning Act 1947 Town and Country Planning General Development Order 1950. Re Whole District excluding the Town of Chesham. In relation to poultry production.', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/7010002192', + }, + }, + ], + }, + { + designation: 'article4.caz', + intersects: false, + }, + { + designation: 'tpo', + intersects: false, + }, + { + designation: 'listed', + intersects: false, + }, + { + designation: 'monument', + intersects: false, + }, + { + designation: 'designated', + intersects: true, + }, + { + designation: 'nature.SAC', + intersects: false, + }, + { + designation: 'nature.ASNW', + intersects: false, + }, + { + designation: 'nature.SSSI', + intersects: false, + }, + { + designation: 'locallyListed', + intersects: false, + }, + { + designation: 'nature.SPA', + intersects: false, + }, + { + designation: 'designated.WHS', + intersects: false, + }, + { + designation: 'registeredPark', + intersects: false, + }, + { + designation: 'designated.AONB', + intersects: true, + entities: [ + { + name: 'Chilterns', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/1000005', + }, + }, + ], + }, + { + designation: 'designated.nationalPark', + intersects: false, + }, + { + designation: 'designated.conservationArea', + intersects: false, + }, + { + designation: 'designated.nationalPark.broads', + intersects: false, + }, + { + designation: 'road.classified', + intersects: false, + }, + ], + }, + localAuthorityDistrict: ['Buckinghamshire', 'Chiltern'], + region: 'South East', + type: 'residential.dwelling.house.detached', }, proposal: { test: 'todo', }, }, + preAssessment: [ + { + value: 'Planning permission / Immune', + description: + 'It looks like the changes may now be beyond the time limit for enforcement action. This does not apply if the changes have been deliberately concealed.', + }, + ], + responses: [ + { + question: 'List the changes involved in the project', + responses: [ + {value: 'Outbuildings (such as sheds, garages or garden offices)'}, + ], + metadata: {}, + }, + { + question: 'What type of changes were they?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Were the works carried out more than 4 years ago?', + responses: [ + {value: 'Yes', metadata: {flags: ['Planning permission / Immune']}}, + ], + metadata: { + policyRefs: [ + { + text: 'Town and Country Planning Act 1990 Section 171B', + url: 'https://www.legislation.gov.uk/ukpga/1990/8/section/171B', + }, + ], + }, + }, + { + question: 'Have the works been completed?', + responses: [{value: 'Yes'}], + metadata: { + policyRefs: [ + { + text: 'Town and Country Planning Act 1990 Section 171B', + url: 'https://www.legislation.gov.uk/ukpga/1990/8/section/171B', + }, + ], + }, + }, + { + question: 'When were the works completed?', + responses: [{value: '1959-01-01'}], + metadata: { + policyRefs: [ + { + text: 'Town and Country Planning Act 1990 Section 171B', + url: 'https://www.legislation.gov.uk/ukpga/1990/8/section/171B', + }, + ], + }, + }, + { + question: 'Has anyone ever attempted to conceal the changes?', + responses: [ + {value: 'No', metadata: {flags: ['Planning permission / Immune']}}, + ], + metadata: { + policyRefs: [ + { + text: 'Secretary of State for Communities and Local Government and another v Welwyn Hatfield Borough Council and Bonsall / Jackson v Secretary of State for Communities and Local Government', + url: 'https://www.supremecourt.uk/cases/docs/uksc-2010-0036-judgment.pdf', + }, + ], + }, + }, + { + question: 'Has enforcement action been taken about these changes?', + responses: [ + {value: 'No', metadata: {flags: ['Planning permission / Immune']}}, + ], + metadata: { + policyRefs: [ + { + text: 'Town and Country Planning Act 1990 Section 171A', + url: 'https://www.legislation.gov.uk/ukpga/1990/8/section/171A', + }, + { + text: 'Town and Country Planning Act 1990 Section 191', + url: 'https://www.legislation.gov.uk/ukpga/1990/8/section/191', + }, + ], + }, + }, + { + question: 'List the changes involved in the project', + responses: [ + { + value: + 'Add an outbuilding (such as a shed, garage or garden office)', + }, + {value: 'Outbuildings (such as a shed, garage or garden office)'}, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'Town and Country Planning Act 1990 (Section 55)', + url: 'https://www.legislation.gov.uk/ukpga/1990/8/section/55', + }, + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/596/contents', + }, + ], + }, + }, + { + question: 'What type of house is it?', + responses: [{value: 'Detached'}], + metadata: {autoAnswered: true}, + }, + { + question: 'What type of property is it?', + responses: [{value: 'House'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Development Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/596/contents', + }, + { + text: 'Section 336 of the Town and Country Planning Act', + url: 'https://www.legislation.gov.uk/ukpga/1990/8/section/336/enacted', + }, + ], + }, + }, + { + question: 'Is any part of the property listed?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E.', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-e-buildings-etc-incidental-to-the-enjoyment-of-a-dwellinghouse', + }, + ], + }, + }, + { + question: 'Was the house originally built as a house?', + responses: [{value: 'Yes, it was built as a house'}], + metadata: {}, + }, + { + question: 'Was the house built before 2020?', + responses: [{value: 'Yes, it was built before 2020'}], + metadata: {}, + }, + { + question: 'What is the new outbuilding used for?', + responses: [{value: 'Studio'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-e-buildings-etc-incidental-to-the-enjoyment-of-a-dwellinghouse', + }, + ], + }, + }, + { + question: 'How will the studio be used?', + responses: [ + { + value: 'Personal use', + metadata: {flags: ['Planning permission / Permitted development']}, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Section 2, Part 1. Class E', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-e-buildings-etc-incidental-to-the-enjoyment-of-a-dwellinghouse', + }, + ], + }, + }, + { + question: 'How many storeys does the new outbuilding have?', + responses: [ + { + value: '1 storey', + metadata: {flags: ['Planning permission / Permitted development']}, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Section 2, Part 1. Class E.1 (d) (h)', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-e-buildings-etc-incidental-to-the-enjoyment-of-a-dwellinghouse', + }, + ], + }, + }, + { + question: + 'Does the outbuilding include any balconies, decks, verandahs or platforms that are more than 30cm above ground level?', + responses: [ + { + value: 'No', + metadata: {flags: ['Planning permission / Permitted development']}, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Section 2, Part 1. Class E.1 (d)', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-e-buildings-etc-incidental-to-the-enjoyment-of-a-dwellinghouse', + }, + ], + }, + }, + { + question: + 'Is any part of the new outbuilding in front of the original house?', + responses: [ + { + value: 'No', + metadata: {flags: ['Planning permission / Permitted development']}, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E.1 (c)', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + }, + }, + { + question: 'Is the property on designated land?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true}, + }, + { + question: + 'Is any part of the new outbuilding between a side wall of the original house and the boundary?', + responses: [ + { + value: 'No', + metadata: {flags: ['Planning permission / Permitted development']}, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E.3', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + }, + }, + { + question: 'Is any part of the new structure within 2m of the boundary?', + responses: [{value: 'No, it is 2m or more from the boundary'}], + metadata: {}, + }, + { + question: 'What type of roof does the new outbuilding have?', + responses: [{value: 'Dual pitch roof'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-e-buildings-etc-incidental-to-the-enjoyment-of-a-dwellinghouse', + }, + ], + }, + }, + { + question: 'How high is the new outbuilding?', + responses: [ + { + value: '4m or lower', + metadata: {flags: ['Planning permission / Permitted development']}, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E.1 (e)(ii)', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-e-buildings-etc-incidental-to-the-enjoyment-of-a-dwellinghouse', + }, + ], + }, + }, + { + question: 'Is the property on designated land?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Is the property in any of the following?', + responses: [ + { + value: 'An area of outstanding natural beauty', + metadata: {flags: ['Planning permission / Permission needed']}, + }, + ], + metadata: {autoAnswered: true}, + }, + { + question: 'How far from the house is the new outbuilding?', + responses: [{value: 'More than 20m from the house'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + }, + }, + { + question: + 'What is the total footprint of all outbuildings more than 20m from the house?', + responses: [ + { + value: '10m² or less', + metadata: {flags: ['Planning permission / Permitted development']}, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E.2', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + }, + }, + { + question: + 'How much of the property is covered by extensions and outbuildings?', + responses: [ + { + value: + '50% or less of the available area around the original house', + metadata: {flags: ['Planning permission / Permitted development']}, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E.1 (b)', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + }, + }, + { + question: + 'Does the new outbuilding have a satellite dish or antenna on it?', + responses: [ + { + value: 'No', + metadata: {flags: ['Planning permission / Permitted development']}, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E.1 (i)', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + }, + }, + { + question: 'Is the new outbuilding air conditioned?', + responses: [ + { + value: 'No', + metadata: {flags: ['Planning permission / Not development']}, + }, + ], + metadata: {}, + }, + { + question: 'What types of changes does the project involve?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true}, + }, + { + question: + 'Have you already told us that you are doing works to a tree or hedge?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Are there any protected trees on the property?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Is the site in a conservation area?', + responses: [ + { + value: 'No', + metadata: {flags: ['Works to trees & hedges / Not required']}, + }, + ], + metadata: {autoAnswered: true}, + }, + { + question: 'What are you applying about?', + responses: [{value: 'Existing changes I have made in the past'}], + metadata: {autoAnswered: true}, + }, + { + question: 'What do the works involve?', + responses: [{value: 'Works to extend a property'}], + metadata: {autoAnswered: true}, + }, + { + question: 'What does the project involve?', + responses: [ + { + value: + 'Add an outbuilding (such as sheds, shelters or garden offices)', + }, + ], + metadata: {autoAnswered: true}, + }, + { + question: 'Is it a residential property?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Do the changes involve the creation of any new homes?', + responses: [{value: 'No'}], + metadata: {}, + }, + { + question: + 'Do the changes involve creating any new bedrooms or bathrooms?', + responses: [{value: 'No'}], + metadata: {}, + }, + { + question: 'What is the internal floor area of the new outbuilding?', + responses: [{value: '9'}], + metadata: {}, + }, + { + question: 'Do the changes involve the creation of any new homes?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Is the property in the Greater London Authority area?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + }, + }, + { + question: 'Your contact details', + responses: [ + {value: 'Mr F Fox 0234 567 8910 f.fox@boggischickenshed.com'}, + ], + metadata: {}, + }, + { + question: "Did you already provide the applicant's email address?", + responses: [{value: 'No'}], + metadata: {autoAnswered: true}, + }, + { + question: "Applicant's email address", + responses: [{value: 'r.dahl@example.com'}], + metadata: {}, + }, + { + question: "Did you already provide the applicant's telephone number?", + responses: [{value: 'No'}], + metadata: {autoAnswered: true}, + }, + { + question: "Applicant's telephone number", + responses: [{value: '01098 765 432'}], + metadata: {}, + }, + { + question: 'Which of these best describes you?', + responses: [{value: "Agent acting on the applicant's behalf"}], + metadata: {autoAnswered: true}, + }, + { + question: 'Have you notified the other owners?', + responses: [{value: 'Yes'}], + metadata: {}, + }, + { + question: + "Which of these best describes the applicant's interest in the land?", + responses: [{value: 'Co-owner'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/39/made', + }, + ], + }, + }, + { + question: 'How many other owners are there?', + responses: [{value: 'Two or more other owners'}], + metadata: {}, + }, + { + question: 'Do you know who the other owners of the site are?', + responses: [{value: 'Yes, all of them'}], + metadata: {}, + }, + { + question: 'How many owners are there in total?', + responses: [{value: '3'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Full name of Owner 2', + responses: [{value: 'William Wonka'}], + metadata: {}, + }, + { + question: 'Address of Owner 2', + responses: [ + { + value: + 'The Factory, 10, Scrumdiddlyumptious Avenue, Oomaph upon Ouse, CH0C0L8', + }, + ], + metadata: {}, + }, + { + question: 'Have you already notified the other owners?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Date on which notice was given to Owner 2', + responses: [{value: '1964-04-01'}], + metadata: {}, + }, + { + question: 'Full name of Owner 3', + responses: [{value: 'Matilda Wormwood'}], + metadata: {}, + }, + { + question: 'Address of Owner 3', + responses: [{value: '9, Library Way, Reading, L1T3R8Y'}], + metadata: {}, + }, + { + question: 'Have you already notified the other owners?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Date on which notice was given to Owner 3', + responses: [{value: '1988-04-01'}], + metadata: {}, + }, + { + question: 'What types of changes did the project involve?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true}, + }, + { + question: + 'Would you like to upload any photographs of the property as it is today?', + responses: [{value: 'Yes'}], + metadata: {}, + }, + { + question: 'What type of extension have you added?', + responses: [{value: 'Outbuilding'}], + metadata: {autoAnswered: true}, + }, + { + question: + 'Is the roof of the outbuilding shown on a drawing you have already uploaded?', + responses: [{value: 'Yes'}], + metadata: {}, + }, + { + question: 'Did the works involve any alterations to ground levels?', + responses: [{value: 'No'}], + metadata: {}, + }, + { + question: + 'Would you like to upload any photographs of the property before the changes?', + responses: [{value: 'No'}], + metadata: {}, + }, + { + question: + 'Would you like to upload any other additional drawings or documents?', + responses: [{value: 'No'}], + metadata: {}, + }, + { + question: 'Provide evidence of completion date', + responses: [ + {value: 'Construction invoices'}, + {value: 'Other documents or correspondence'}, + ], + metadata: {}, + }, + { + question: 'What do these construction invoices show?', + responses: [{value: "Nothing, it's a test document. "}], + metadata: {}, + }, + { + question: 'What do these documents show?', + responses: [{value: 'Nothing really, this is just a test. '}], + metadata: {}, + }, + { + question: 'What type of planning application are you making?', + responses: [{value: 'Lawful Development Certificate'}], + metadata: {autoAnswered: true}, + }, + { + question: 'What type of changes are you applying for?', + responses: [{value: 'Existing changes'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Is the property a home?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true}, + }, + { + question: 'What types of changes does the application relate to?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true}, + }, + { + question: 'How many homes does this application relate to?', + responses: [{value: '1'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Schedule 1, Part 2', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/contents', + }, + ], + }, + }, + { + question: 'What type of extension did you build?', + responses: [ + {value: 'Outbuilding (such as shed, shelter or garden office'}, + ], + metadata: {autoAnswered: true}, + }, + { + question: 'Is the property a home?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true}, + }, + { + question: 'What works does the project involve?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true}, + }, + { + question: + 'Is the sole purpose of the project to support the needs of a disabled resident?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + { + text: 'UK Statutory Instruments 2012 No. 2920 Regulation 4', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/4/made', + }, + { + text: 'Equalities Act 2010, Section 6', + url: 'https://www.legislation.gov.uk/ukpga/2010/15/section/6', + }, + { + text: 'Children Act 1989, Part 3', + url: 'https://www.legislation.gov.uk/ukpga/1989/41/part/III', + }, + ], + }, + }, + { + question: 'Is this application a resubmission?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 9', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/9', + }, + ], + }, + }, + { + question: 'Does the application qualify for a disability exemption?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Does the application qualify for a resubmission exemption?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Is the site a sports field?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 3', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/schedule/1', + }, + ], + }, + }, + { + question: + 'Is the application being made by (or on behalf of) a parish or community council?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/11', + }, + ], + }, + }, + { + question: + 'Are you also submitting another proposal for the same site today?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/schedule/1', + }, + ], + }, + }, + { + question: + 'Does the application qualify for the sports club fee reduction?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true}, + }, + { + question: + 'Does the application qualify for the parish council reduction?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/11', + }, + ], + }, + }, + { + question: + 'Does the application qualify for the alternative application reduction?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true}, + }, + { + question: + 'Did you get any pre-application advice before making this application?', + responses: [{value: 'No'}], + metadata: {}, + }, + { + question: + 'What local planning authority is this application being sent to?', + responses: [{value: 'Chiltern'}], + metadata: {autoAnswered: true}, + }, + { + question: 'What type of application is it?', + responses: [{value: 'Lawful Development Certificate'}], + metadata: {autoAnswered: true}, + }, + { + question: 'What type of works are you applying about?', + responses: [{value: 'Existing'}], + metadata: {autoAnswered: true}, + }, + { + question: "What is the applicant's interest in the land?", + responses: [{value: 'Owner'}], + metadata: {autoAnswered: true}, + }, + { + question: "What is the user's role?", + responses: [{value: 'Other'}], + metadata: {autoAnswered: true}, + }, + { + question: "What is the applicant's declared connections?", + responses: [{value: 'None'}], + metadata: {autoAnswered: true}, + }, + ], + files: [ + { + name: 'https://api.editor.planx.dev/file/private/tbp4kiba/myPlans.pdf', + type: [ + 'photographs.proposed', + 'sitePlan.proposed', + 'elevations.proposed', + 'floorPlan.proposed', + ], + }, + { + name: 'https://api.editor.planx.dev/file/private/vyyogkcf/correspondence.pdf', + type: ['otherEvidence'], + description: 'Nothing really, this is just a test.', + }, + { + name: 'https://api.editor.planx.dev/file/private/97ltnrxr/invoice.pdf', + type: ['constructionInvoice'], + description: "Nothing, it's a test document.", + }, + ], + metadata: { + organisation: 'BKM', + id: '95f90e21-93f5-4761-90b3-815c673e041f', + source: 'PlanX', + service: { + flowId: '824628b2-deeb-48b0-92b1-2ca7f3b17163', + url: 'https://www.editor.planx.dev/buckinghamshire/apply-for-a-lawful-development-certificate/preview', + files: { + required: [ + { + value: 'photographs.proposed', + description: 'Photographs - proposed', + }, + { + value: 'sitePlan.proposed', + description: 'Site plan - proposed', + }, + { + value: 'elevations.proposed', + description: 'Elevations - proposed', + }, + { + value: 'floorPlan.proposed', + description: 'Floor plan - proposed', + }, + { + value: 'floorPlan.proposed', + description: 'Floor plan - proposed', + }, + ], + recommended: [ + { + value: 'otherEvidence', + description: 'Other - evidence or correspondence', + }, + { + value: 'constructionInvoice', + description: 'Construction invoice', + }, + ], + optional: [], + }, + fee: { + category: { + sixAndSeven: [ + { + description: + 'The planning fee for an application for a Certificate of Lawfulness relating to existing alterations or extensions of a single home is £258.', + policyRefs: [ + { + text: 'UK Statutory Instruments 2023 No. 1197', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + }, + calculated: [ + { + description: + 'The planning fee for an application for a Certificate of Lawfulness relating to existing alterations or extensions of a single home is £258.', + policyRefs: [ + { + text: 'UK Statutory Instruments 2023 No. 1197', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + payable: [ + { + description: + 'The planning fee for an application for a Certificate of Lawfulness relating to existing alterations or extensions of a single home is £258.', + policyRefs: [ + { + text: 'UK Statutory Instruments 2023 No. 1197', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + }, + }, + submittedAt: '2023-10-02t00:00:00z', + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + }, }; diff --git a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts new file mode 100644 index 00000000..d9712ecf --- /dev/null +++ b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts @@ -0,0 +1,795 @@ +import {PrototypeApplication} from '../../../../types/schemas/prototypeApplication'; + +const version = process.env['VERSION'] || '@next'; + +export const lawfulDevelopmentCertificateProposedPrototype: PrototypeApplication = + { + applicationType: 'ldc.proposed', + data: { + application: { + somethingShared: 'test', + ldcSpecificProperty: 1, + }, + user: { + role: 'applicant', + }, + applicant: { + type: 'individual', + name: { + first: 'Enid', + last: 'Blyton', + }, + email: 'famousfive@example.com', + phone: { + primary: '05555 555 555', + }, + address: { + sameAsSiteAddress: true, + }, + siteContact: { + role: 'applicant', + }, + ownership: { + interest: 'owner', + }, + }, + property: { + address: { + latitude: 51.6154458, + longitude: -0.6463271, + x: 493822, + y: 191603, + title: '7, BLYTON CLOSE, BEACONSFIELD', + singleLine: '7, BLYTON CLOSE, BEACONSFIELD, HP9 2LX', + source: 'Ordnance Survey', + uprn: '100080482163', + usrn: '35200844', + pao: '7', + street: 'BLYTON CLOSE', + town: 'BEACONSFIELD', + postcode: 'HP9 2LX', + }, + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'Polygon', + coordinates: [ + [ + [-0.646633654832832, 51.61556919642334], + [-0.6466296315193095, 51.61554504700152], + [-0.6465049088001171, 51.61551173743314], + [-0.6464512646198194, 51.61522027766699], + [-0.6463131308555524, 51.61522943785954], + [-0.6463037431240002, 51.61520695374722], + [-0.6462487578391951, 51.615222775901515], + [-0.6462393701076429, 51.61520861923739], + [-0.6459456682205124, 51.615292726412235], + [-0.6460489332675857, 51.61561499701554], + [-0.646633654832832, 51.61556919642334], + ], + ], + }, + properties: null, + }, + area: { + hectares: 0.141826, + squareMetres: 1418.26, + }, + }, + planning: { + sources: [ + 'https://api.editor.planx.dev/gis/buckinghamshire?geom=POLYGON+%28%28-0.646633654832832+51.61556919642334%2C+-0.6466296315193095+51.61554504700152%2C+-0.6465049088001171+51.61551173743314%2C+-0.6464512646198194+51.61522027766699%2C+-0.6463131308555524+51.61522943785954%2C+-0.6463037431240002+51.61520695374722%2C+-0.6462487578391951+51.615222775901515%2C+-0.6462393701076429+51.61520861923739%2C+-0.6459456682205124+51.615292726412235%2C+-0.6460489332675857+51.61561499701554%2C+-0.646633654832832+51.61556919642334%29%29&analytics=false&sessionId=8da51c5b-a2a0-4386-a15d-29d66f9c121c', + 'https://api.editor.planx.dev/roads?usrn=35200844', + ], + designations: [ + { + designation: 'article4', + intersects: false, + }, + { + designation: 'article4.caz', + intersects: false, + }, + { + designation: 'tpo', + intersects: false, + }, + { + designation: 'listed', + intersects: false, + }, + { + designation: 'monument', + intersects: false, + }, + { + designation: 'designated', + intersects: false, + }, + { + designation: 'nature.SAC', + intersects: false, + }, + { + designation: 'nature.ASNW', + intersects: false, + }, + { + designation: 'nature.SSSI', + intersects: false, + }, + { + designation: 'locallyListed', + intersects: false, + }, + { + designation: 'nature.SPA', + intersects: false, + }, + { + designation: 'designated.WHS', + intersects: false, + }, + { + designation: 'registeredPark', + intersects: false, + }, + { + designation: 'designated.AONB', + intersects: false, + }, + { + designation: 'designated.nationalPark', + intersects: false, + }, + { + designation: 'designated.conservationArea', + intersects: false, + }, + { + designation: 'designated.nationalPark.broads', + intersects: false, + }, + { + designation: 'road.classified', + intersects: false, + }, + ], + }, + localAuthorityDistrict: ['Buckinghamshire', 'South Bucks'], + region: 'South East', + type: 'residential.dwelling.house.detached', + }, + proposal: { + test: 'todo', + }, + }, + preAssessment: [ + { + value: 'Planning permission / Permitted development', + description: + 'It looks like the proposed changes may fall within the rules for Permitted Development and therefore would not need planning permission.', + }, + ], + responses: [ + { + question: 'List the changes involved in the project', + responses: [{value: 'Add a rear or side extension (or conservatory)'}], + metadata: { + policyRefs: [ + { + text: 'Town and Country Planning Act 1990 (Section 55)', + url: 'https://www.legislation.gov.uk/ukpga/1990/8/section/55', + }, + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/596/contents', + }, + ], + }, + }, + { + question: 'What type of property is it?', + responses: [{value: 'House'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/596/contents/made', + }, + ], + }, + }, + { + question: 'What type of house is it?', + responses: [{value: 'Detached'}], + metadata: {autoAnswered: true}, + }, + { + question: 'How many storeys does the original house have?', + responses: [{value: '2 or more'}], + metadata: {}, + }, + { + question: 'Does the original house have a projection to the rear?', + responses: [{value: 'No'}], + metadata: {}, + }, + { + question: 'Was the house always a house?', + responses: [{value: 'Yes, it was built as a house'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015, Schedule 2, Part 1, Class A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + }, + }, + { + question: 'Was the house built before 2020?', + responses: [ + { + value: 'Yes, it was built before 2020', + metadata: {flags: ['Planning permission / Permitted development']}, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class 1 A.', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + }, + }, + { + question: 'How many storeys does the extension have?', + responses: [{value: '1 storey'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Section 2, Part 1, Class A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + }, + }, + { + question: 'Does the original house have a projection to the rear?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Which of these best describes your project?', + responses: [{value: 'Rear only'}], + metadata: { + policyRefs: [ + { + text: 'General Permitted Development Order 2015, Technical guidance', + url: 'https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/830643/190910_Tech_Guide_for_publishing.pdf', + }, + ], + }, + }, + { + question: 'Is the property on designated land?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Is the property a site of special scientific interest?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true}, + }, + { + question: 'What type of house is it?', + responses: [{value: 'Detached'}], + metadata: {autoAnswered: true}, + }, + { + question: + 'How far does the new addition extend beyond the back wall of the original house?', + responses: [ + { + value: 'Less than 4m', + metadata: {flags: ['Planning permission / Permitted development']}, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A.1 (f)(i)', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + }, + }, + { + question: 'What is the shortest distance to the property boundary?', + responses: [{value: '2m or more'}], + metadata: {}, + }, + { + question: + 'Are the materials of the extension similar to the original house?', + responses: [ + { + value: 'Yes', + metadata: {flags: ['Planning permission / Permitted development']}, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + }, + }, + { + question: 'Is the property on designated land?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true}, + }, + { + question: + 'How much of the property is covered by extensions and outbuildings?', + responses: [ + { + value: + '50% or less of the available area around the original house', + metadata: {flags: ['Planning permission / Permitted development']}, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + }, + }, + { + question: 'What types of changes does the project involve?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true}, + }, + { + question: + 'Have you already told us that you are doing works to a tree or hedge?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Are there any protected trees on the property?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Is the site in a conservation area?', + responses: [ + { + value: 'No', + metadata: {flags: ['Works to trees & hedges / Not required']}, + }, + ], + metadata: {autoAnswered: true}, + }, + { + question: 'What are you applying about?', + responses: [{value: 'Proposed changes I want to make in the future'}], + metadata: {autoAnswered: true}, + }, + { + question: 'What do the works involve?', + responses: [{value: 'Works to extend a property'}], + metadata: {autoAnswered: true}, + }, + { + question: 'What does the project involve?', + responses: [{value: 'Add a rear or side extension (or conservatory)'}], + metadata: {autoAnswered: true}, + }, + { + question: + 'How much is the internal floor area of the property increasing by?', + responses: [{value: '24'}], + metadata: {}, + }, + { + question: 'Is it a residential property?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Do the changes involve the creation of any new homes?', + responses: [{value: 'No'}], + metadata: {}, + }, + { + question: + 'Do the changes involve creating any new bedrooms or bathrooms?', + responses: [{value: 'No'}], + metadata: {}, + }, + { + question: 'Do the changes involve the creation of any new homes?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Is the property in the Greater London Authority area?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + }, + }, + { + question: 'Which of these best describes you?', + responses: [{value: 'Applicant'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Which of these best describes your interest in the land?', + responses: [{value: 'Sole owner'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/39/made', + }, + ], + }, + }, + { + question: 'What types of changes does the project involve?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true}, + }, + { + question: + 'Does the work involve any alterations to ground or floor levels?', + responses: [{value: 'No'}], + metadata: {}, + }, + { + question: 'Would you like to upload any photographs?', + responses: [{value: 'No'}], + metadata: {}, + }, + { + question: 'What types of extension are being added?', + responses: [{value: 'Rear or side'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Do you also want to add existing internal floor plans?', + responses: [{value: 'No'}], + metadata: {}, + }, + { + question: + 'Is the roof of the extension already shown on another set of drawings?', + responses: [{value: 'No'}], + metadata: {}, + }, + { + question: + 'Would you like to upload any additional drawings, documents or images?', + responses: [{value: 'No'}], + metadata: {}, + }, + { + question: 'What type of planning application are you making?', + responses: [{value: 'Lawful Development Certificate'}], + metadata: {autoAnswered: true}, + }, + { + question: 'What type of changes are you applying for?', + responses: [{value: 'Proposed changes'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Is the property a home?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true}, + }, + { + question: 'What types of changes does the application relate to?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true}, + }, + { + question: 'How many homes does this application relate to?', + responses: [{value: '1'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Schedule 1, Part 2', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/contents', + }, + ], + }, + }, + { + question: 'What type of extension is it?', + responses: [{value: 'Rear or side extension'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Is the property a home?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true}, + }, + { + question: 'What works does the project involve?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true}, + }, + { + question: + 'Is the sole purpose of the project to support the needs of a disabled resident?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + { + text: 'UK Statutory Instruments 2012 No. 2920 Regulation 4', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/4/made', + }, + { + text: 'Equalities Act 2010, Section 6', + url: 'https://www.legislation.gov.uk/ukpga/2010/15/section/6', + }, + { + text: 'Children Act 1989, Part 3', + url: 'https://www.legislation.gov.uk/ukpga/1989/41/part/III', + }, + ], + }, + }, + { + question: 'Is this application a resubmission?', + responses: [{value: 'Yes'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 9', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/9', + }, + ], + }, + }, + { + question: + 'Is this the first time you have resubmitted an application for this site?', + responses: [{value: 'Yes'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 8', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/8', + }, + ], + }, + }, + { + question: 'What type of application is this?', + responses: [{value: 'Lawful Development Certificate'}], + metadata: {autoAnswered: true}, + }, + { + question: "What was the original application's reference number?", + responses: [{value: 'M8AG1C F4R4WAY TR33'}], + metadata: {}, + }, + { + question: + 'To qualify for a fee exemption, the proposed works must be of a similar description to the original application', + responses: [{value: 'I understand'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + ], + }, + }, + { + question: 'What was the result of the original application?', + responses: [{value: 'Withdrawn'}], + metadata: {}, + }, + { + question: 'When did you submit the original application?', + responses: [{value: 'Within the last 12 months'}], + metadata: { + policyRefs: [ + { + text: 'UK Statutory Instruments 2012 No. 2920 Regulation 8', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/8/made', + }, + ], + }, + }, + { + question: 'Does the application qualify for a disability exemption?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true}, + }, + { + question: 'Does the application qualify for a resubmission exemption?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true}, + }, + { + question: + 'Did you get any pre-application advice before making this application?', + responses: [{value: 'No'}], + metadata: {}, + }, + { + question: + 'What local planning authority is this application being sent to?', + responses: [{value: 'South Buckinghamshire'}], + metadata: {autoAnswered: true}, + }, + { + question: 'What type of application is it?', + responses: [{value: 'Lawful Development Certificate'}], + metadata: {autoAnswered: true}, + }, + { + question: 'What type of works are you applying about?', + responses: [{value: 'Proposed'}], + metadata: {autoAnswered: true}, + }, + { + question: "What is the applicant's interest in the land?", + responses: [{value: 'Owner'}], + metadata: {autoAnswered: true}, + }, + { + question: "What is the user's role?", + responses: [{value: 'Applicant'}], + metadata: {autoAnswered: true}, + }, + { + question: "What is the applicant's declared connections?", + responses: [{value: 'None'}], + metadata: {autoAnswered: true}, + }, + ], + files: [ + { + name: 'https://api.editor.planx.dev/file/private/tbp4kiba/myPlans.pdf', + type: [ + 'roofPlan.existing', + 'roofPlan.proposed', + 'sitePlan.existing', + 'sitePlan.proposed', + 'elevations.existing', + 'elevations.proposed', + ], + }, + { + name: 'https://api.editor.planx.dev/file/private/311w2id6/floor_plans.pdf', + type: ['floorPlan.existing', 'floorPlan.proposed'], + }, + ], + metadata: { + organisation: 'BKM', + id: '8da51c5b-a2a0-4386-a15d-29d66f9c121c', + source: 'PlanX', + service: { + flowId: '824628b2-deeb-48b0-92b1-2ca7f3b17163', + url: 'https://www.editor.planx.dev/buckinghamshire/apply-for-a-lawful-development-certificate/preview', + files: { + required: [ + { + value: 'roofPlan.existing', + description: 'Roof plan - existing', + }, + { + value: 'sitePlan.existing', + description: 'Site plan - existing', + }, + { + value: 'roofPlan.proposed', + description: 'Roof plan - proposed', + }, + { + value: 'sitePlan.proposed', + description: 'Site plan - proposed', + }, + { + value: 'elevations.existing', + description: 'Elevations - existing', + }, + { + value: 'floorPlan.existing', + description: 'Floor plan - existing', + }, + { + value: 'elevations.proposed', + description: 'Elevations - proposed', + }, + { + value: 'floorPlan.proposed', + description: 'Floor plan - proposed', + }, + ], + recommended: [], + optional: [], + }, + fee: { + category: { + sixAndSeven: [ + { + description: + 'The plannning fee for an application for a Certificate of Lawfulness relating to the proposed alteration or extension of a single home is £129', + policyRefs: [ + { + text: 'UK Statutory Instruments 2023 No. 1197', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + }, + calculated: [ + { + description: + 'The plannning fee for an application for a Certificate of Lawfulness relating to the proposed alteration or extension of a single home is £129', + policyRefs: [ + { + text: 'UK Statutory Instruments 2023 No. 1197', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + payable: [ + { + description: + 'If the proposed works (to either a home or within the curtilage of a home) is for the sole purpose of - providing either a means of access to (or within) the dwellinghouse for a disabled resident (current or future); providing facilities that are designed to ensure the disabled persons safety, health or comfort; or providing disabled access to a public building - then no planning fee will be payable for this application.', + policyRefs: [ + { + text: 'UK Statutory Instruments 2012 No. 2920 Regulation 4', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/4/made', + }, + ], + }, + { + description: + 'In the case of an application that is the first resubmission of an application on the same site that is similar in character and description, no planning fee is payable.', + policyRefs: [ + { + text: 'UK Statutory Instruments 2012 No. 2920 Regulation 8', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/8/made', + }, + ], + }, + ], + }, + }, + submittedAt: '2023-10-02T00:00:00+01:00', + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + }, + }; diff --git a/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json b/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json index 12657337..319e2cdc 100644 --- a/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json +++ b/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json @@ -62,10 +62,1652 @@ } }, "property": { - "test": "todo" + "address": { + "latitude": 51.6994957, + "longitude": -0.708966, + "x": 489320, + "y": 200872, + "title": "GIPSY HOUSE, WHITEFIELD LANE, GREAT MISSENDEN", + "singleLine": "GIPSY HOUSE, WHITEFIELD LANE, GREAT MISSENDEN, HP16 0BP", + "source": "Ordnance Survey", + "uprn": "100081174436", + "usrn": "07300709", + "pao": "", + "street": "WHITEFIELD LANE", + "town": "GREAT MISSENDEN", + "postcode": "HP16 0BP" + }, + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -0.7085376977920632, + 51.699564621757816 + ], + [ + -0.7086127996444802, + 51.69965605327502 + ], + [ + -0.708982944488535, + 51.699654390885456 + ], + [ + -0.7089909911155797, + 51.699673508361855 + ], + [ + -0.7089319825172521, + 51.699683482694184 + ], + [ + -0.7089520990848638, + 51.69973002954916 + ], + [ + -0.7091867923736667, + 51.69968930105364 + ], + [ + -0.7092216610908603, + 51.699688469859495 + ], + [ + -0.709239095449457, + 51.69968514508267 + ], + [ + -0.709253847599039, + 51.6997134056779 + ], + [ + -0.7093128561973666, + 51.69970176896433 + ], + [ + -0.7092699408531282, + 51.699610337539525 + ], + [ + -0.7096253335476013, + 51.699648572521454 + ], + [ + -0.7098613679409116, + 51.69958457046823 + ], + [ + -0.7098962366581053, + 51.69955049141595 + ], + [ + -0.7098090648651213, + 51.6994216557425 + ], + [ + -0.7099243998527616, + 51.699390070166544 + ], + [ + -0.7098264992237182, + 51.699238791576136 + ], + [ + -0.7097460329532714, + 51.699236297968724 + ], + [ + -0.7095716893673034, + 51.69927536446852 + ], + [ + -0.7095421850681398, + 51.69927619567025 + ], + [ + -0.7092954218387698, + 51.69931941814053 + ], + [ + -0.7090929150581455, + 51.69937427737031 + ], + [ + -0.709021836519251, + 51.69938923896689 + ], + [ + -0.7089574635028936, + 51.6994008757608 + ], + [ + -0.7088904082775213, + 51.69942082454341 + ], + [ + -0.7086691260337761, + 51.699501450783515 + ], + [ + -0.7086181640624932, + 51.699517243535354 + ], + [ + -0.7085457444191079, + 51.699541348251245 + ], + [ + -0.7085350155830483, + 51.69954799782576 + ], + [ + -0.7085376977920632, + 51.699564621757816 + ] + ] + ] + }, + "properties": null + }, + "area": { + "hectares": 0.299367, + "squareMetres": 2993.67 + } + }, + "planning": { + "sources": [ + "https://api.editor.planx.dev/gis/buckinghamshire?geom=POLYGON+%28%28-0.7085376977920632+51.699564621757816%2C+-0.7086127996444802+51.69965605327502%2C+-0.708982944488535+51.699654390885456%2C+-0.7089909911155797+51.699673508361855%2C+-0.7089319825172521+51.699683482694184%2C+-0.7089520990848638+51.69973002954916%2C+-0.7091867923736667+51.69968930105364%2C+-0.7092216610908603+51.699688469859495%2C+-0.709239095449457+51.69968514508267%2C+-0.709253847599039+51.6997134056779%2C+-0.7093128561973666+51.69970176896433%2C+-0.7092699408531282+51.699610337539525%2C+-0.7096253335476013+51.699648572521454%2C+-0.7098613679409116+51.69958457046823%2C+-0.7098962366581053+51.69955049141595%2C+-0.7098090648651213+51.6994216557425%2C+-0.7099243998527616+51.699390070166544%2C+-0.7098264992237182+51.699238791576136%2C+-0.7097460329532714+51.699236297968724%2C+-0.7095716893673034+51.69927536446852%2C+-0.7095421850681398+51.69927619567025%2C+-0.7092954218387698+51.69931941814053%2C+-0.7090929150581455+51.69937427737031%2C+-0.709021836519251+51.69938923896689%2C+-0.7089574635028936+51.6994008757608%2C+-0.7088904082775213+51.69942082454341%2C+-0.7086691260337761+51.699501450783515%2C+-0.7086181640624932+51.699517243535354%2C+-0.7085457444191079+51.699541348251245%2C+-0.7085350155830483+51.69954799782576%2C+-0.7085376977920632+51.699564621757816%29%29&analytics=false&sessionId=95f90e21-93f5-4761-90b3-815c673e041f", + "https://api.editor.planx.dev/roads?usrn=07300709" + ], + "designations": [ + { + "designation": "article4", + "intersects": true, + "entities": [ + { + "name": "Whole District excluding the Town of Chesham - Poultry production.", + "description": "Bucks County Council Town and Country Planning Act 1947 Town and Country Planning General Development Order 1950. Re Whole District excluding the Town of Chesham. In relation to poultry production.", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/7010002192" + } + } + ] + }, + { + "designation": "article4.caz", + "intersects": false + }, + { + "designation": "tpo", + "intersects": false + }, + { + "designation": "listed", + "intersects": false + }, + { + "designation": "monument", + "intersects": false + }, + { + "designation": "designated", + "intersects": true + }, + { + "designation": "nature.SAC", + "intersects": false + }, + { + "designation": "nature.ASNW", + "intersects": false + }, + { + "designation": "nature.SSSI", + "intersects": false + }, + { + "designation": "locallyListed", + "intersects": false + }, + { + "designation": "nature.SPA", + "intersects": false + }, + { + "designation": "designated.WHS", + "intersects": false + }, + { + "designation": "registeredPark", + "intersects": false + }, + { + "designation": "designated.AONB", + "intersects": true, + "entities": [ + { + "name": "Chilterns", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/1000005" + } + } + ] + }, + { + "designation": "designated.nationalPark", + "intersects": false + }, + { + "designation": "designated.conservationArea", + "intersects": false + }, + { + "designation": "designated.nationalPark.broads", + "intersects": false + }, + { + "designation": "road.classified", + "intersects": false + } + ] + }, + "localAuthorityDistrict": [ + "Buckinghamshire", + "Chiltern" + ], + "region": "South East", + "type": "residential.dwelling.house.detached" }, "proposal": { "test": "todo" } + }, + "preAssessment": [ + { + "value": "Planning permission / Immune", + "description": "It looks like the changes may now be beyond the time limit for enforcement action. This does not apply if the changes have been deliberately concealed." + } + ], + "responses": [ + { + "question": "List the changes involved in the project", + "responses": [ + { + "value": "Outbuildings (such as sheds, garages or garden offices)" + } + ], + "metadata": {} + }, + { + "question": "What type of changes were they?", + "responses": [ + { + "value": "Extension" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Were the works carried out more than 4 years ago?", + "responses": [ + { + "value": "Yes", + "metadata": { + "flags": [ + "Planning permission / Immune" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Town and Country Planning Act 1990 Section 171B", + "url": "https://www.legislation.gov.uk/ukpga/1990/8/section/171B" + } + ] + } + }, + { + "question": "Have the works been completed?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Town and Country Planning Act 1990 Section 171B", + "url": "https://www.legislation.gov.uk/ukpga/1990/8/section/171B" + } + ] + } + }, + { + "question": "When were the works completed?", + "responses": [ + { + "value": "1959-01-01" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Town and Country Planning Act 1990 Section 171B", + "url": "https://www.legislation.gov.uk/ukpga/1990/8/section/171B" + } + ] + } + }, + { + "question": "Has anyone ever attempted to conceal the changes?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Immune" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Secretary of State for Communities and Local Government and another v Welwyn Hatfield Borough Council and Bonsall / Jackson v Secretary of State for Communities and Local Government", + "url": "https://www.supremecourt.uk/cases/docs/uksc-2010-0036-judgment.pdf" + } + ] + } + }, + { + "question": "Has enforcement action been taken about these changes?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Immune" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Town and Country Planning Act 1990 Section 171A", + "url": "https://www.legislation.gov.uk/ukpga/1990/8/section/171A" + }, + { + "text": "Town and Country Planning Act 1990 Section 191", + "url": "https://www.legislation.gov.uk/ukpga/1990/8/section/191" + } + ] + } + }, + { + "question": "List the changes involved in the project", + "responses": [ + { + "value": "Add an outbuilding (such as a shed, garage or garden office)" + }, + { + "value": "Outbuildings (such as a shed, garage or garden office)" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "Town and Country Planning Act 1990 (Section 55)", + "url": "https://www.legislation.gov.uk/ukpga/1990/8/section/55" + }, + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/596/contents" + } + ] + } + }, + { + "question": "What type of house is it?", + "responses": [ + { + "value": "Detached" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "House" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Development Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/596/contents" + }, + { + "text": "Section 336 of the Town and Country Planning Act", + "url": "https://www.legislation.gov.uk/ukpga/1990/8/section/336/enacted" + } + ] + } + }, + { + "question": "Is any part of the property listed?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E.", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-e-buildings-etc-incidental-to-the-enjoyment-of-a-dwellinghouse" + } + ] + } + }, + { + "question": "Was the house originally built as a house?", + "responses": [ + { + "value": "Yes, it was built as a house" + } + ], + "metadata": {} + }, + { + "question": "Was the house built before 2020?", + "responses": [ + { + "value": "Yes, it was built before 2020" + } + ], + "metadata": {} + }, + { + "question": "What is the new outbuilding used for?", + "responses": [ + { + "value": "Studio" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-e-buildings-etc-incidental-to-the-enjoyment-of-a-dwellinghouse" + } + ] + } + }, + { + "question": "How will the studio be used?", + "responses": [ + { + "value": "Personal use", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Section 2, Part 1. Class E", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-e-buildings-etc-incidental-to-the-enjoyment-of-a-dwellinghouse" + } + ] + } + }, + { + "question": "How many storeys does the new outbuilding have?", + "responses": [ + { + "value": "1 storey", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Section 2, Part 1. Class E.1 (d) (h)", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-e-buildings-etc-incidental-to-the-enjoyment-of-a-dwellinghouse" + } + ] + } + }, + { + "question": "Does the outbuilding include any balconies, decks, verandahs or platforms that are more than 30cm above ground level?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Section 2, Part 1. Class E.1 (d)", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-e-buildings-etc-incidental-to-the-enjoyment-of-a-dwellinghouse" + } + ] + } + }, + { + "question": "Is any part of the new outbuilding in front of the original house?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E.1 (c)", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ] + } + }, + { + "question": "Is the property on designated land?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Is any part of the new outbuilding between a side wall of the original house and the boundary?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E.3", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ] + } + }, + { + "question": "Is any part of the new structure within 2m of the boundary?", + "responses": [ + { + "value": "No, it is 2m or more from the boundary" + } + ], + "metadata": {} + }, + { + "question": "What type of roof does the new outbuilding have?", + "responses": [ + { + "value": "Dual pitch roof" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-e-buildings-etc-incidental-to-the-enjoyment-of-a-dwellinghouse" + } + ] + } + }, + { + "question": "How high is the new outbuilding?", + "responses": [ + { + "value": "4m or lower", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E.1 (e)(ii)", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-e-buildings-etc-incidental-to-the-enjoyment-of-a-dwellinghouse" + } + ] + } + }, + { + "question": "Is the property on designated land?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Is the property in any of the following?", + "responses": [ + { + "value": "An area of outstanding natural beauty", + "metadata": { + "flags": [ + "Planning permission / Permission needed" + ] + } + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "How far from the house is the new outbuilding?", + "responses": [ + { + "value": "More than 20m from the house" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ] + } + }, + { + "question": "What is the total footprint of all outbuildings more than 20m from the house?", + "responses": [ + { + "value": "10m² or less", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E.2", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ] + } + }, + { + "question": "How much of the property is covered by extensions and outbuildings?", + "responses": [ + { + "value": "50% or less of the available area around the original house", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E.1 (b)", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ] + } + }, + { + "question": "Does the new outbuilding have a satellite dish or antenna on it?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class E.1 (i)", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ] + } + }, + { + "question": "Is the new outbuilding air conditioned?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Not development" + ] + } + } + ], + "metadata": {} + }, + { + "question": "What types of changes does the project involve?", + "responses": [ + { + "value": "Extension" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Have you already told us that you are doing works to a tree or hedge?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Are there any protected trees on the property?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Is the site in a conservation area?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Works to trees & hedges / Not required" + ] + } + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What are you applying about?", + "responses": [ + { + "value": "Existing changes I have made in the past" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What do the works involve?", + "responses": [ + { + "value": "Works to extend a property" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What does the project involve?", + "responses": [ + { + "value": "Add an outbuilding (such as sheds, shelters or garden offices)" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Is it a residential property?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Do the changes involve the creation of any new homes?", + "responses": [ + { + "value": "No" + } + ], + "metadata": {} + }, + { + "question": "Do the changes involve creating any new bedrooms or bathrooms?", + "responses": [ + { + "value": "No" + } + ], + "metadata": {} + }, + { + "question": "What is the internal floor area of the new outbuilding?", + "responses": [ + { + "value": "9" + } + ], + "metadata": {} + }, + { + "question": "Do the changes involve the creation of any new homes?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Is the property in the Greater London Authority area?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ] + } + }, + { + "question": "Your contact details", + "responses": [ + { + "value": "Mr F Fox 0234 567 8910 f.fox@boggischickenshed.com" + } + ], + "metadata": {} + }, + { + "question": "Did you already provide the applicant's email address?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Applicant's email address", + "responses": [ + { + "value": "r.dahl@example.com" + } + ], + "metadata": {} + }, + { + "question": "Did you already provide the applicant's telephone number?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Applicant's telephone number", + "responses": [ + { + "value": "01098 765 432" + } + ], + "metadata": {} + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "Agent acting on the applicant's behalf" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Have you notified the other owners?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": {} + }, + { + "question": "Which of these best describes the applicant's interest in the land?", + "responses": [ + { + "value": "Co-owner" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/39/made" + } + ] + } + }, + { + "question": "How many other owners are there?", + "responses": [ + { + "value": "Two or more other owners" + } + ], + "metadata": {} + }, + { + "question": "Do you know who the other owners of the site are?", + "responses": [ + { + "value": "Yes, all of them" + } + ], + "metadata": {} + }, + { + "question": "How many owners are there in total?", + "responses": [ + { + "value": "3" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Full name of Owner 2", + "responses": [ + { + "value": "William Wonka" + } + ], + "metadata": {} + }, + { + "question": "Address of Owner 2", + "responses": [ + { + "value": "The Factory, 10, Scrumdiddlyumptious Avenue, Oomaph upon Ouse, CH0C0L8" + } + ], + "metadata": {} + }, + { + "question": "Have you already notified the other owners?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Date on which notice was given to Owner 2", + "responses": [ + { + "value": "1964-04-01" + } + ], + "metadata": {} + }, + { + "question": "Full name of Owner 3", + "responses": [ + { + "value": "Matilda Wormwood" + } + ], + "metadata": {} + }, + { + "question": "Address of Owner 3", + "responses": [ + { + "value": "9, Library Way, Reading, L1T3R8Y" + } + ], + "metadata": {} + }, + { + "question": "Have you already notified the other owners?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Date on which notice was given to Owner 3", + "responses": [ + { + "value": "1988-04-01" + } + ], + "metadata": {} + }, + { + "question": "What types of changes did the project involve?", + "responses": [ + { + "value": "Extension" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Would you like to upload any photographs of the property as it is today?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": {} + }, + { + "question": "What type of extension have you added?", + "responses": [ + { + "value": "Outbuilding" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Is the roof of the outbuilding shown on a drawing you have already uploaded?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": {} + }, + { + "question": "Did the works involve any alterations to ground levels?", + "responses": [ + { + "value": "No" + } + ], + "metadata": {} + }, + { + "question": "Would you like to upload any photographs of the property before the changes?", + "responses": [ + { + "value": "No" + } + ], + "metadata": {} + }, + { + "question": "Would you like to upload any other additional drawings or documents?", + "responses": [ + { + "value": "No" + } + ], + "metadata": {} + }, + { + "question": "Provide evidence of completion date", + "responses": [ + { + "value": "Construction invoices" + }, + { + "value": "Other documents or correspondence" + } + ], + "metadata": {} + }, + { + "question": "What do these construction invoices show?", + "responses": [ + { + "value": "Nothing, it's a test document. " + } + ], + "metadata": {} + }, + { + "question": "What do these documents show?", + "responses": [ + { + "value": "Nothing really, this is just a test. " + } + ], + "metadata": {} + }, + { + "question": "What type of planning application are you making?", + "responses": [ + { + "value": "Lawful Development Certificate" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What type of changes are you applying for?", + "responses": [ + { + "value": "Existing changes" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Is the property a home?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What types of changes does the application relate to?", + "responses": [ + { + "value": "Extension" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "How many homes does this application relate to?", + "responses": [ + { + "value": "1" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Schedule 1, Part 2", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/contents" + } + ] + } + }, + { + "question": "What type of extension did you build?", + "responses": [ + { + "value": "Outbuilding (such as shed, shelter or garden office" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Is the property a home?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What works does the project involve?", + "responses": [ + { + "value": "Extension" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Is the sole purpose of the project to support the needs of a disabled resident?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + }, + { + "text": "UK Statutory Instruments 2012 No. 2920 Regulation 4", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/4/made" + }, + { + "text": "Equalities Act 2010, Section 6", + "url": "https://www.legislation.gov.uk/ukpga/2010/15/section/6" + }, + { + "text": "Children Act 1989, Part 3", + "url": "https://www.legislation.gov.uk/ukpga/1989/41/part/III" + } + ] + } + }, + { + "question": "Is this application a resubmission?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 9", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/9" + } + ] + } + }, + { + "question": "Does the application qualify for a disability exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Does the application qualify for a resubmission exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Is the site a sports field?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 3", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/schedule/1" + } + ] + } + }, + { + "question": "Is the application being made by (or on behalf of) a parish or community council?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/11" + } + ] + } + }, + { + "question": "Are you also submitting another proposal for the same site today?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/schedule/1" + } + ] + } + }, + { + "question": "Does the application qualify for the sports club fee reduction?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Does the application qualify for the parish council reduction?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/11" + } + ] + } + }, + { + "question": "Does the application qualify for the alternative application reduction?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Did you get any pre-application advice before making this application?", + "responses": [ + { + "value": "No" + } + ], + "metadata": {} + }, + { + "question": "What local planning authority is this application being sent to?", + "responses": [ + { + "value": "Chiltern" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Lawful Development Certificate" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What type of works are you applying about?", + "responses": [ + { + "value": "Existing" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What is the applicant's interest in the land?", + "responses": [ + { + "value": "Owner" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What is the user's role?", + "responses": [ + { + "value": "Other" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What is the applicant's declared connections?", + "responses": [ + { + "value": "None" + } + ], + "metadata": { + "autoAnswered": true + } + } + ], + "files": [ + { + "name": "https://api.editor.planx.dev/file/private/tbp4kiba/myPlans.pdf", + "type": [ + "photographs.proposed", + "sitePlan.proposed", + "elevations.proposed", + "floorPlan.proposed" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/vyyogkcf/correspondence.pdf", + "type": [ + "otherEvidence" + ], + "description": "Nothing really, this is just a test." + }, + { + "name": "https://api.editor.planx.dev/file/private/97ltnrxr/invoice.pdf", + "type": [ + "constructionInvoice" + ], + "description": "Nothing, it's a test document." + } + ], + "metadata": { + "organisation": "BKM", + "id": "95f90e21-93f5-4761-90b3-815c673e041f", + "source": "PlanX", + "service": { + "flowId": "824628b2-deeb-48b0-92b1-2ca7f3b17163", + "url": "https://www.editor.planx.dev/buckinghamshire/apply-for-a-lawful-development-certificate/preview", + "files": { + "required": [ + { + "value": "photographs.proposed", + "description": "Photographs - proposed" + }, + { + "value": "sitePlan.proposed", + "description": "Site plan - proposed" + }, + { + "value": "elevations.proposed", + "description": "Elevations - proposed" + }, + { + "value": "floorPlan.proposed", + "description": "Floor plan - proposed" + }, + { + "value": "floorPlan.proposed", + "description": "Floor plan - proposed" + } + ], + "recommended": [ + { + "value": "otherEvidence", + "description": "Other - evidence or correspondence" + }, + { + "value": "constructionInvoice", + "description": "Construction invoice" + } + ], + "optional": [] + }, + "fee": { + "category": { + "sixAndSeven": [ + { + "description": "The planning fee for an application for a Certificate of Lawfulness relating to existing alterations or extensions of a single home is £258.", + "policyRefs": [ + { + "text": "UK Statutory Instruments 2023 No. 1197", + "url": "https://www.legislation.gov.uk/uksi/2023/1197/made" + } + ] + } + ] + }, + "calculated": [ + { + "description": "The planning fee for an application for a Certificate of Lawfulness relating to existing alterations or extensions of a single home is £258.", + "policyRefs": [ + { + "text": "UK Statutory Instruments 2023 No. 1197", + "url": "https://www.legislation.gov.uk/uksi/2023/1197/made" + } + ] + } + ], + "payable": [ + { + "description": "The planning fee for an application for a Certificate of Lawfulness relating to existing alterations or extensions of a single home is £258.", + "policyRefs": [ + { + "text": "UK Statutory Instruments 2023 No. 1197", + "url": "https://www.legislation.gov.uk/uksi/2023/1197/made" + } + ] + } + ] + } + }, + "submittedAt": "2023-10-02t00:00:00z", + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" } } \ No newline at end of file diff --git a/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json b/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json new file mode 100644 index 00000000..cf288141 --- /dev/null +++ b/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json @@ -0,0 +1,1137 @@ +{ + "applicationType": "ldc.proposed", + "data": { + "application": { + "somethingShared": "test", + "ldcSpecificProperty": 1 + }, + "user": { + "role": "applicant" + }, + "applicant": { + "type": "individual", + "name": { + "first": "Enid", + "last": "Blyton" + }, + "email": "famousfive@example.com", + "phone": { + "primary": "05555 555 555" + }, + "address": { + "sameAsSiteAddress": true + }, + "siteContact": { + "role": "applicant" + }, + "ownership": { + "interest": "owner" + } + }, + "property": { + "address": { + "latitude": 51.6154458, + "longitude": -0.6463271, + "x": 493822, + "y": 191603, + "title": "7, BLYTON CLOSE, BEACONSFIELD", + "singleLine": "7, BLYTON CLOSE, BEACONSFIELD, HP9 2LX", + "source": "Ordnance Survey", + "uprn": "100080482163", + "usrn": "35200844", + "pao": "7", + "street": "BLYTON CLOSE", + "town": "BEACONSFIELD", + "postcode": "HP9 2LX" + }, + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -0.646633654832832, + 51.61556919642334 + ], + [ + -0.6466296315193095, + 51.61554504700152 + ], + [ + -0.6465049088001171, + 51.61551173743314 + ], + [ + -0.6464512646198194, + 51.61522027766699 + ], + [ + -0.6463131308555524, + 51.61522943785954 + ], + [ + -0.6463037431240002, + 51.61520695374722 + ], + [ + -0.6462487578391951, + 51.615222775901515 + ], + [ + -0.6462393701076429, + 51.61520861923739 + ], + [ + -0.6459456682205124, + 51.615292726412235 + ], + [ + -0.6460489332675857, + 51.61561499701554 + ], + [ + -0.646633654832832, + 51.61556919642334 + ] + ] + ] + }, + "properties": null + }, + "area": { + "hectares": 0.141826, + "squareMetres": 1418.26 + } + }, + "planning": { + "sources": [ + "https://api.editor.planx.dev/gis/buckinghamshire?geom=POLYGON+%28%28-0.646633654832832+51.61556919642334%2C+-0.6466296315193095+51.61554504700152%2C+-0.6465049088001171+51.61551173743314%2C+-0.6464512646198194+51.61522027766699%2C+-0.6463131308555524+51.61522943785954%2C+-0.6463037431240002+51.61520695374722%2C+-0.6462487578391951+51.615222775901515%2C+-0.6462393701076429+51.61520861923739%2C+-0.6459456682205124+51.615292726412235%2C+-0.6460489332675857+51.61561499701554%2C+-0.646633654832832+51.61556919642334%29%29&analytics=false&sessionId=8da51c5b-a2a0-4386-a15d-29d66f9c121c", + "https://api.editor.planx.dev/roads?usrn=35200844" + ], + "designations": [ + { + "designation": "article4", + "intersects": false + }, + { + "designation": "article4.caz", + "intersects": false + }, + { + "designation": "tpo", + "intersects": false + }, + { + "designation": "listed", + "intersects": false + }, + { + "designation": "monument", + "intersects": false + }, + { + "designation": "designated", + "intersects": false + }, + { + "designation": "nature.SAC", + "intersects": false + }, + { + "designation": "nature.ASNW", + "intersects": false + }, + { + "designation": "nature.SSSI", + "intersects": false + }, + { + "designation": "locallyListed", + "intersects": false + }, + { + "designation": "nature.SPA", + "intersects": false + }, + { + "designation": "designated.WHS", + "intersects": false + }, + { + "designation": "registeredPark", + "intersects": false + }, + { + "designation": "designated.AONB", + "intersects": false + }, + { + "designation": "designated.nationalPark", + "intersects": false + }, + { + "designation": "designated.conservationArea", + "intersects": false + }, + { + "designation": "designated.nationalPark.broads", + "intersects": false + }, + { + "designation": "road.classified", + "intersects": false + } + ] + }, + "localAuthorityDistrict": [ + "Buckinghamshire", + "South Bucks" + ], + "region": "South East", + "type": "residential.dwelling.house.detached" + }, + "proposal": { + "test": "todo" + } + }, + "preAssessment": [ + { + "value": "Planning permission / Permitted development", + "description": "It looks like the proposed changes may fall within the rules for Permitted Development and therefore would not need planning permission." + } + ], + "responses": [ + { + "question": "List the changes involved in the project", + "responses": [ + { + "value": "Add a rear or side extension (or conservatory)" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Town and Country Planning Act 1990 (Section 55)", + "url": "https://www.legislation.gov.uk/ukpga/1990/8/section/55" + }, + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/596/contents" + } + ] + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "House" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/596/contents/made" + } + ] + } + }, + { + "question": "What type of house is it?", + "responses": [ + { + "value": "Detached" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "How many storeys does the original house have?", + "responses": [ + { + "value": "2 or more" + } + ], + "metadata": {} + }, + { + "question": "Does the original house have a projection to the rear?", + "responses": [ + { + "value": "No" + } + ], + "metadata": {} + }, + { + "question": "Was the house always a house?", + "responses": [ + { + "value": "Yes, it was built as a house" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015, Schedule 2, Part 1, Class A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ] + } + }, + { + "question": "Was the house built before 2020?", + "responses": [ + { + "value": "Yes, it was built before 2020", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class 1 A.", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ] + } + }, + { + "question": "How many storeys does the extension have?", + "responses": [ + { + "value": "1 storey" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Section 2, Part 1, Class A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ] + } + }, + { + "question": "Does the original house have a projection to the rear?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Which of these best describes your project?", + "responses": [ + { + "value": "Rear only" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "General Permitted Development Order 2015, Technical guidance", + "url": "https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/830643/190910_Tech_Guide_for_publishing.pdf" + } + ] + } + }, + { + "question": "Is the property on designated land?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Is the property a site of special scientific interest?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What type of house is it?", + "responses": [ + { + "value": "Detached" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "How far does the new addition extend beyond the back wall of the original house?", + "responses": [ + { + "value": "Less than 4m", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A.1 (f)(i)", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ] + } + }, + { + "question": "What is the shortest distance to the property boundary?", + "responses": [ + { + "value": "2m or more" + } + ], + "metadata": {} + }, + { + "question": "Are the materials of the extension similar to the original house?", + "responses": [ + { + "value": "Yes", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ] + } + }, + { + "question": "Is the property on designated land?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "How much of the property is covered by extensions and outbuildings?", + "responses": [ + { + "value": "50% or less of the available area around the original house", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ] + } + }, + { + "question": "What types of changes does the project involve?", + "responses": [ + { + "value": "Extension" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Have you already told us that you are doing works to a tree or hedge?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Are there any protected trees on the property?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Is the site in a conservation area?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Works to trees & hedges / Not required" + ] + } + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What are you applying about?", + "responses": [ + { + "value": "Proposed changes I want to make in the future" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What do the works involve?", + "responses": [ + { + "value": "Works to extend a property" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What does the project involve?", + "responses": [ + { + "value": "Add a rear or side extension (or conservatory)" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "How much is the internal floor area of the property increasing by?", + "responses": [ + { + "value": "24" + } + ], + "metadata": {} + }, + { + "question": "Is it a residential property?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Do the changes involve the creation of any new homes?", + "responses": [ + { + "value": "No" + } + ], + "metadata": {} + }, + { + "question": "Do the changes involve creating any new bedrooms or bathrooms?", + "responses": [ + { + "value": "No" + } + ], + "metadata": {} + }, + { + "question": "Do the changes involve the creation of any new homes?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Is the property in the Greater London Authority area?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ] + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "Applicant" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Which of these best describes your interest in the land?", + "responses": [ + { + "value": "Sole owner" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/39/made" + } + ] + } + }, + { + "question": "What types of changes does the project involve?", + "responses": [ + { + "value": "Extension" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Does the work involve any alterations to ground or floor levels?", + "responses": [ + { + "value": "No" + } + ], + "metadata": {} + }, + { + "question": "Would you like to upload any photographs?", + "responses": [ + { + "value": "No" + } + ], + "metadata": {} + }, + { + "question": "What types of extension are being added?", + "responses": [ + { + "value": "Rear or side" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Do you also want to add existing internal floor plans?", + "responses": [ + { + "value": "No" + } + ], + "metadata": {} + }, + { + "question": "Is the roof of the extension already shown on another set of drawings?", + "responses": [ + { + "value": "No" + } + ], + "metadata": {} + }, + { + "question": "Would you like to upload any additional drawings, documents or images?", + "responses": [ + { + "value": "No" + } + ], + "metadata": {} + }, + { + "question": "What type of planning application are you making?", + "responses": [ + { + "value": "Lawful Development Certificate" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What type of changes are you applying for?", + "responses": [ + { + "value": "Proposed changes" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Is the property a home?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What types of changes does the application relate to?", + "responses": [ + { + "value": "Extension" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "How many homes does this application relate to?", + "responses": [ + { + "value": "1" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Schedule 1, Part 2", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/contents" + } + ] + } + }, + { + "question": "What type of extension is it?", + "responses": [ + { + "value": "Rear or side extension" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Is the property a home?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What works does the project involve?", + "responses": [ + { + "value": "Extension" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Is the sole purpose of the project to support the needs of a disabled resident?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + }, + { + "text": "UK Statutory Instruments 2012 No. 2920 Regulation 4", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/4/made" + }, + { + "text": "Equalities Act 2010, Section 6", + "url": "https://www.legislation.gov.uk/ukpga/2010/15/section/6" + }, + { + "text": "Children Act 1989, Part 3", + "url": "https://www.legislation.gov.uk/ukpga/1989/41/part/III" + } + ] + } + }, + { + "question": "Is this application a resubmission?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 9", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/9" + } + ] + } + }, + { + "question": "Is this the first time you have resubmitted an application for this site?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 8", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/8" + } + ] + } + }, + { + "question": "What type of application is this?", + "responses": [ + { + "value": "Lawful Development Certificate" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What was the original application's reference number?", + "responses": [ + { + "value": "M8AG1C F4R4WAY TR33" + } + ], + "metadata": {} + }, + { + "question": "To qualify for a fee exemption, the proposed works must be of a similar description to the original application", + "responses": [ + { + "value": "I understand" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + } + ] + } + }, + { + "question": "What was the result of the original application?", + "responses": [ + { + "value": "Withdrawn" + } + ], + "metadata": {} + }, + { + "question": "When did you submit the original application?", + "responses": [ + { + "value": "Within the last 12 months" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "UK Statutory Instruments 2012 No. 2920 Regulation 8", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/8/made" + } + ] + } + }, + { + "question": "Does the application qualify for a disability exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Does the application qualify for a resubmission exemption?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Did you get any pre-application advice before making this application?", + "responses": [ + { + "value": "No" + } + ], + "metadata": {} + }, + { + "question": "What local planning authority is this application being sent to?", + "responses": [ + { + "value": "South Buckinghamshire" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Lawful Development Certificate" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What type of works are you applying about?", + "responses": [ + { + "value": "Proposed" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What is the applicant's interest in the land?", + "responses": [ + { + "value": "Owner" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What is the user's role?", + "responses": [ + { + "value": "Applicant" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What is the applicant's declared connections?", + "responses": [ + { + "value": "None" + } + ], + "metadata": { + "autoAnswered": true + } + } + ], + "files": [ + { + "name": "https://api.editor.planx.dev/file/private/tbp4kiba/myPlans.pdf", + "type": [ + "roofPlan.existing", + "roofPlan.proposed", + "sitePlan.existing", + "sitePlan.proposed", + "elevations.existing", + "elevations.proposed" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/311w2id6/floor_plans.pdf", + "type": [ + "floorPlan.existing", + "floorPlan.proposed" + ] + } + ], + "metadata": { + "organisation": "BKM", + "id": "8da51c5b-a2a0-4386-a15d-29d66f9c121c", + "source": "PlanX", + "service": { + "flowId": "824628b2-deeb-48b0-92b1-2ca7f3b17163", + "url": "https://www.editor.planx.dev/buckinghamshire/apply-for-a-lawful-development-certificate/preview", + "files": { + "required": [ + { + "value": "roofPlan.existing", + "description": "Roof plan - existing" + }, + { + "value": "sitePlan.existing", + "description": "Site plan - existing" + }, + { + "value": "roofPlan.proposed", + "description": "Roof plan - proposed" + }, + { + "value": "sitePlan.proposed", + "description": "Site plan - proposed" + }, + { + "value": "elevations.existing", + "description": "Elevations - existing" + }, + { + "value": "floorPlan.existing", + "description": "Floor plan - existing" + }, + { + "value": "elevations.proposed", + "description": "Elevations - proposed" + }, + { + "value": "floorPlan.proposed", + "description": "Floor plan - proposed" + } + ], + "recommended": [], + "optional": [] + }, + "fee": { + "category": { + "sixAndSeven": [ + { + "description": "The plannning fee for an application for a Certificate of Lawfulness relating to the proposed alteration or extension of a single home is £129", + "policyRefs": [ + { + "text": "UK Statutory Instruments 2023 No. 1197", + "url": "https://www.legislation.gov.uk/uksi/2023/1197/made" + } + ] + } + ] + }, + "calculated": [ + { + "description": "The plannning fee for an application for a Certificate of Lawfulness relating to the proposed alteration or extension of a single home is £129", + "policyRefs": [ + { + "text": "UK Statutory Instruments 2023 No. 1197", + "url": "https://www.legislation.gov.uk/uksi/2023/1197/made" + } + ] + } + ], + "payable": [ + { + "description": "If the proposed works (to either a home or within the curtilage of a home) is for the sole purpose of - providing either a means of access to (or within) the dwellinghouse for a disabled resident (current or future); providing facilities that are designed to ensure the disabled persons safety, health or comfort; or providing disabled access to a public building - then no planning fee will be payable for this application.", + "policyRefs": [ + { + "text": "UK Statutory Instruments 2012 No. 2920 Regulation 4", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/4/made" + } + ] + }, + { + "description": "In the case of an application that is the first resubmission of an application on the same site that is similar in character and description, no planning fee is payable.", + "policyRefs": [ + { + "text": "UK Statutory Instruments 2012 No. 2920 Regulation 8", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/8/made" + } + ] + } + ] + } + }, + "submittedAt": "2023-10-02T00:00:00+01:00", + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + } +} \ No newline at end of file diff --git a/schemas/prototypeApplication.json b/schemas/prototypeApplication.json index 8935177a..85649afa 100644 --- a/schemas/prototypeApplication.json +++ b/schemas/prototypeApplication.json @@ -154,6 +154,40 @@ ], "type": "object" }, + "AnyProviderMetadata": { + "$id": "#AnyProviderMetadata", + "additionalProperties": false, + "description": "Base metadata associated with applications submitted via any provider", + "properties": { + "id": { + "$ref": "#/definitions/UUID", + "description": "Unique identifier for this application" + }, + "organisation": { + "description": "The reference code for the organisation responsible for processing this planning application, sourced from planning.data.gov.uk/dataset/local-authority", + "maxLength": 4, + "type": "string" + }, + "schema": { + "$ref": "#/definitions/URL" + }, + "source": { + "const": "Any", + "type": "string" + }, + "submittedAt": { + "$ref": "#/definitions/DateTime" + } + }, + "required": [ + "id", + "organisation", + "schema", + "source", + "submittedAt" + ], + "type": "object" + }, "ApplicantAddress": { "anyOf": [ { @@ -218,6 +252,43 @@ } ] }, + "Area": { + "$id": "#Area", + "additionalProperties": false, + "properties": { + "hectares": { + "type": "number" + }, + "squareMetres": { + "type": "number" + } + }, + "required": [ + "squareMetres" + ], + "type": "object" + }, + "BBox": { + "anyOf": [ + { + "items": { + "type": "number" + }, + "maxItems": 4, + "minItems": 4, + "type": "array" + }, + { + "items": { + "type": "number" + }, + "maxItems": 6, + "minItems": 6, + "type": "array" + } + ], + "description": "Bounding box https://tools.ietf.org/html/rfc7946#section-5" + }, "BaseApplicant": { "additionalProperties": false, "properties": { @@ -296,6 +367,35 @@ ], "type": "object" }, + "CalculateMetadata": { + "$id": "#CalculateMetadata", + "additionalProperties": false, + "description": "Metadata associated with PlanX Calculate components used to determine fees throughout a service", + "properties": { + "description": { + "type": "string" + }, + "policyRefs": { + "items": { + "additionalProperties": false, + "properties": { + "text": { + "type": "string" + }, + "url": { + "$ref": "#/definitions/URL" + } + }, + "required": [ + "text" + ], + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + }, "ContactDetails": { "additionalProperties": false, "properties": { @@ -357,1430 +457,7611 @@ "format": "date", "type": "string" }, + "DateTime": { + "description": "Regex-based implementation of iso-date-time until available in ajv-formats@3.0.0", + "format": "date-time", + "pattern": "^([0-9]+)-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])[Tt]([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\\.[0-9]+)?(([Zz])|([\\+|\\-]([01][0-9]|2[0-3]):[0-5][0-9]))$", + "type": "string" + }, "Email": { "format": "email", "type": "string" }, - "LDC": { + "Entity": { "additionalProperties": false, "properties": { - "applicationType": { - "$ref": "#/definitions/LDCApplicationType" + "description": { + "type": "string" }, - "data": { - "additionalProperties": false, - "properties": { - "applicant": { - "$ref": "#/definitions/LDCApplicant" - }, - "application": { - "$ref": "#/definitions/LDCApplicationData" - }, - "property": { - "$ref": "#/definitions/PropertyBase" - }, - "proposal": { - "$ref": "#/definitions/ProposalBase" - }, - "user": { - "$ref": "#/definitions/UserBase" - } - }, - "required": [ - "user", - "applicant", - "application", - "property", - "proposal" - ], - "type": "object" - } - }, - "required": [ - "applicationType", - "data" - ], - "type": "object" - }, - "LDCApplicant": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "address": { - "$ref": "#/definitions/ApplicantAddress", - "description": "Address information for the applicant" - }, - "company": { + "name": { + "type": "string" + }, + "source": { + "anyOf": [ + { "additionalProperties": false, "properties": { - "name": { + "text": { + "const": "Planning Data", "type": "string" + }, + "url": { + "$ref": "#/definitions/URL" } }, "required": [ - "name" + "text", + "url" ], "type": "object" }, - "email": { - "$ref": "#/definitions/Email" - }, - "name": { + { "additionalProperties": false, "properties": { - "first": { - "type": "string" - }, - "last": { - "type": "string" - }, - "title": { + "text": { + "const": "Ordnance Survey MasterMap Highways", "type": "string" } }, "required": [ - "first", - "last" + "text" ], "type": "object" + } + ] + } + }, + "required": [ + "name", + "source" + ], + "type": "object" + }, + "Feature": { + "additionalProperties": false, + "description": "A feature object which contains a geometry and associated properties. https://tools.ietf.org/html/rfc7946#section-3.2", + "properties": { + "bbox": { + "$ref": "#/definitions/BBox", + "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" + }, + "geometry": { + "$ref": "#/definitions/Geometry", + "description": "The feature's geometry" + }, + "id": { + "description": "A value that uniquely identifies this feature in a https://tools.ietf.org/html/rfc7946#section-3.2.", + "type": [ + "string", + "number" + ] + }, + "properties": { + "$ref": "#/definitions/GeoJsonProperties", + "description": "Properties associated with this feature." + }, + "type": { + "const": "Feature", + "description": "Specifies the type of GeoJSON object.", + "type": "string" + } + }, + "required": [ + "geometry", + "properties", + "type" + ], + "type": "object" + }, + "Feature": { + "additionalProperties": false, + "description": "A feature object which contains a geometry and associated properties. https://tools.ietf.org/html/rfc7946#section-3.2", + "properties": { + "bbox": { + "$ref": "#/definitions/BBox", + "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" + }, + "geometry": { + "$ref": "#/definitions/Geometry", + "description": "The feature's geometry" + }, + "id": { + "description": "A value that uniquely identifies this feature in a https://tools.ietf.org/html/rfc7946#section-3.2.", + "type": [ + "string", + "number" + ] + }, + "properties": { + "$ref": "#/definitions/GeoJsonProperties", + "description": "Properties associated with this feature." + }, + "type": { + "const": "Feature", + "description": "Specifies the type of GeoJSON object.", + "type": "string" + } + }, + "required": [ + "geometry", + "properties", + "type" + ], + "type": "object" + }, + "FeatureCollection": { + "additionalProperties": false, + "description": "A collection of feature objects. https://tools.ietf.org/html/rfc7946#section-3.3", + "properties": { + "bbox": { + "$ref": "#/definitions/BBox", + "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" + }, + "features": { + "items": { + "$ref": "#/definitions/Feature%3CGeometry%2CGeoJsonProperties%3E" + }, + "type": "array" + }, + "type": { + "const": "FeatureCollection", + "description": "Specifies the type of GeoJSON object.", + "type": "string" + } + }, + "required": [ + "features", + "type" + ], + "type": "object" + }, + "FeeExplanation": { + "$id": "#FeeExplanation", + "additionalProperties": false, + "description": "An explanation, including policy references, of the fees associated with this application", + "properties": { + "calculated": { + "items": { + "$ref": "#/definitions/CalculateMetadata" + }, + "type": "array" + }, + "category": { + "additionalProperties": false, + "description": "Breakdown of calculated fee by category of development, based on the scales defined in The Town and Country Planning Regulations https://www.legislation.gov.uk/uksi/2012/2920/schedule/1/part/2", + "properties": { + "eight": { + "items": { + "$ref": "#/definitions/CalculateMetadata" + }, + "type": "array" }, - "ownership": { + "eleven": { "additionalProperties": false, - "description": "Information about the propery owners, if different than the applicant", "properties": { - "interest": { - "$ref": "#/definitions/OwnershipInterest" - }, - "owners": { + "one": { "items": { - "anyOf": [ - { - "$ref": "#/definitions/OwnersNoticeGiven" - }, - { - "$ref": "#/definitions/OwnersNoNoticeGiven" - } - ] + "$ref": "#/definitions/CalculateMetadata" }, "type": "array" } }, "required": [ - "interest", - "owners" + "one" ], "type": "object" }, - "phone": { + "five": { + "items": { + "$ref": "#/definitions/CalculateMetadata" + }, + "type": "array" + }, + "four": { + "items": { + "$ref": "#/definitions/CalculateMetadata" + }, + "type": "array" + }, + "fourteen": { + "items": { + "$ref": "#/definitions/CalculateMetadata" + }, + "type": "array" + }, + "nine": { + "items": { + "$ref": "#/definitions/CalculateMetadata" + }, + "type": "array" + }, + "one": { + "items": { + "$ref": "#/definitions/CalculateMetadata" + }, + "type": "array" + }, + "sixAndSeven": { + "items": { + "$ref": "#/definitions/CalculateMetadata" + }, + "type": "array" + }, + "ten": { + "items": { + "$ref": "#/definitions/CalculateMetadata" + }, + "type": "array" + }, + "thirteen": { + "items": { + "$ref": "#/definitions/CalculateMetadata" + }, + "type": "array" + }, + "three": { + "items": { + "$ref": "#/definitions/CalculateMetadata" + }, + "type": "array" + }, + "twelve": { "additionalProperties": false, "properties": { - "primary": { - "type": "string" + "one": { + "items": { + "$ref": "#/definitions/CalculateMetadata" + }, + "type": "array" + }, + "two": { + "items": { + "$ref": "#/definitions/CalculateMetadata" + }, + "type": "array" } }, - "required": [ - "primary" - ], "type": "object" }, - "siteContact": { - "$ref": "#/definitions/SiteContact", - "description": "Contact information for the site visit" - }, - "type": { - "enum": [ - "individual", - "company", - "charity", - "public", - "parishCouncil" - ], - "type": "string" + "two": { + "items": { + "$ref": "#/definitions/CalculateMetadata" + }, + "type": "array" } }, - "required": [ - "address", - "email", - "name", - "ownership", - "phone", - "siteContact", - "type" - ], "type": "object" }, - { - "additionalProperties": false, - "properties": { - "address": { - "$ref": "#/definitions/ApplicantAddress", - "description": "Address information for the applicant" - }, - "agent": { - "additionalProperties": false, - "description": "Contact information for the agent or proxy", - "properties": { - "address": { - "$ref": "#/definitions/UserAddress" - }, - "company": { - "additionalProperties": false, - "properties": { - "name": { - "type": "string" - } - }, - "required": [ - "name" - ], - "type": "object" - }, - "email": { - "$ref": "#/definitions/Email" - }, - "name": { - "additionalProperties": false, - "properties": { - "first": { - "type": "string" - }, - "last": { - "type": "string" - }, - "title": { - "type": "string" - } - }, - "required": [ - "first", - "last" - ], - "type": "object" - }, - "phone": { - "additionalProperties": false, - "properties": { - "primary": { - "type": "string" - } - }, - "required": [ - "primary" - ], - "type": "object" - } - }, - "required": [ - "address", - "email", - "name", - "phone" - ], - "type": "object" - }, - "company": { - "additionalProperties": false, - "properties": { - "name": { - "type": "string" - } - }, - "required": [ - "name" - ], - "type": "object" - }, - "email": { - "$ref": "#/definitions/Email" - }, - "name": { - "additionalProperties": false, - "properties": { - "first": { - "type": "string" - }, - "last": { - "type": "string" - }, - "title": { - "type": "string" - } - }, - "required": [ - "first", - "last" - ], - "type": "object" - }, - "ownership": { - "additionalProperties": false, - "description": "Information about the propery owners, if different than the applicant", - "properties": { - "interest": { - "$ref": "#/definitions/OwnershipInterest" - }, - "owners": { - "items": { - "anyOf": [ - { - "$ref": "#/definitions/OwnersNoticeGiven" - }, - { - "$ref": "#/definitions/OwnersNoNoticeGiven" - } - ] - }, - "type": "array" - } - }, - "required": [ - "interest", - "owners" - ], - "type": "object" - }, - "phone": { - "additionalProperties": false, - "properties": { - "primary": { - "type": "string" - } - }, - "required": [ - "primary" - ], - "type": "object" - }, - "siteContact": { - "$ref": "#/definitions/SiteContact", - "description": "Contact information for the site visit" - }, - "type": { - "enum": [ - "individual", - "company", - "charity", - "public", - "parishCouncil" - ], - "type": "string" - } + "payable": { + "items": { + "$ref": "#/definitions/CalculateMetadata" }, - "required": [ - "address", - "agent", - "email", - "name", - "ownership", - "phone", - "siteContact", - "type" - ], - "type": "object" + "type": "array" } - ] + }, + "required": [ + "calculated", + "payable" + ], + "type": "object" }, - "LDCApplicationData": { + "FeeExplanationNotApplicable": { + "$id": "#FeeExplanationNotApplicable", "additionalProperties": false, - "description": "Specific ApplicationData required for \"Lawful Development Certificate\" applications", + "description": "An indicator that an application fee does not apply to this application type or journey, therefore there is not an explanation of how it was calculated", "properties": { - "ldcSpecificProperty": { - "type": "number" + "notApplicable": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "notApplicable" + ], + "type": "object" + }, + "File": { + "$id": "#File", + "additionalProperties": false, + "description": "File uploaded and labeled by the user to support the application", + "properties": { + "description": { + "type": "string" }, - "somethingShared": { + "name": { "type": "string" + }, + "type": { + "items": { + "$ref": "#/definitions/PrototypeFileType" + }, + "type": "array" } }, "required": [ - "ldcSpecificProperty", - "somethingShared" + "name", + "type" ], "type": "object" }, - "LDCApplicationType": { + "FileType": { + "$id": "#FileType", "anyOf": [ { - "const": "ldc", - "description": "Lawful Development Certificate", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Details of impact on access, roads, and rights of way", + "type": "string" + }, + "value": { + "const": "accessRoadsRightsOfWayDetails", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "ldc.breachOfCondition", - "description": "Lawful Development Certificate - Existing use lawful not to comply with a condition (S191C)", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Affordable housing statement", + "type": "string" + }, + "value": { + "const": "affordableHousingStatement", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "ldc.existing", - "description": "Lawful Development Certificate - Existing use", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Arboriculturist report", + "type": "string" + }, + "value": { + "const": "arboriculturistReport", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "ldc.listedBuildingWorks", - "description": "Lawful Development Certificate - Works to a Listed Building (S26H)", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Bank statement", + "type": "string" + }, + "value": { + "const": "bankStatement", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "ldc.proposed", - "description": "Lawful Development Certificate - Proposed use", - "type": "string" - } - ] - }, - "MaintenanceContact": { - "items": { - "additionalProperties": false, - "properties": { - "address": { - "$ref": "#/definitions/UserAddress" - }, - "contact": { - "$ref": "#/definitions/ContactDetails" + "additionalProperties": false, + "properties": { + "description": { + "const": "Basement impact statement", + "type": "string" + }, + "value": { + "const": "basementImpactStatement", + "type": "string" + } }, - "when": { - "enum": [ - "duringConstruction", - "afterConstruction", - "duringAndAfterConstruction" - ], - "type": "string" - } + "required": [ + "value", + "description" + ], + "type": "object" }, - "required": [ - "when", - "address", - "contact" - ], - "type": "object" - }, - "type": "array" - }, - "OwnersNoNoticeGiven": { - "additionalProperties": false, - "properties": { - "address": { - "anyOf": [ - { - "$ref": "#/definitions/UserAddress" + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Bio-aerosol assessment", + "type": "string" }, - { + "value": { + "const": "bioaerosolAssessment", "type": "string" } - ] - }, - "interest": { - "$ref": "#/definitions/OwnershipInterest" - }, - "name": { - "type": "string" - }, - "noNoticeReason": { - "type": "string" + }, + "required": [ + "value", + "description" + ], + "type": "object" }, - "noticeGiven": { - "const": false, - "type": "boolean" - } - }, - "required": [ - "address", - "name", - "noNoticeReason", - "noticeGiven" - ], - "type": "object" - }, - "OwnersNoticeDate": { - "additionalProperties": false, - "properties": { - "address": { - "anyOf": [ - { - "$ref": "#/definitions/UserAddress" + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Birdstrike risk management plan", + "type": "string" }, - { + "value": { + "const": "birdstrikeRiskManagementPlan", "type": "string" } - ] - }, - "interest": { - "$ref": "#/definitions/OwnershipInterest" - }, - "name": { - "type": "string" + }, + "required": [ + "value", + "description" + ], + "type": "object" }, - "noticeDate": { - "$ref": "#/definitions/Date" - } - }, - "required": [ - "address", - "name", - "noticeDate" - ], - "type": "object" - }, - "OwnersNoticeGiven": { - "additionalProperties": false, - "properties": { - "address": { - "anyOf": [ - { - "$ref": "#/definitions/UserAddress" + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Borehole or trial pit analysis", + "type": "string" }, - { + "value": { + "const": "boreholeOrTrialPitAnalysis", "type": "string" } - ] - }, - "interest": { - "$ref": "#/definitions/OwnershipInterest" - }, - "name": { - "type": "string" - }, - "noticeGiven": { - "const": true, - "type": "boolean" - } - }, - "required": [ - "address", - "name", - "noticeGiven" - ], - "type": "object" - }, - "OwnershipInterest": { - "enum": [ - "owner", - "tenant", - "occupier", - "other" - ], - "type": "string" - }, - "PA": { - "additionalProperties": false, - "properties": { - "applicationType": { - "$ref": "#/definitions/PAApplicationType" + }, + "required": [ + "value", + "description" + ], + "type": "object" }, - "data": { + { "additionalProperties": false, "properties": { - "applicant": { - "$ref": "#/definitions/ApplicantBase" - }, - "application": { - "$ref": "#/definitions/PAApplicationData" - }, - "property": { - "$ref": "#/definitions/PropertyBase" - }, - "proposal": { - "$ref": "#/definitions/ProposalBase" + "description": { + "const": "Building control certificate", + "type": "string" }, - "user": { - "$ref": "#/definitions/UserBase" + "value": { + "const": "buildingControlCertificate", + "type": "string" } }, "required": [ - "user", - "applicant", - "application", - "property", - "proposal" + "value", + "description" ], "type": "object" - } - }, - "required": [ - "applicationType", - "data" - ], - "type": "object" - }, - "PAApplicationData": { - "additionalProperties": false, - "description": "Specific ApplicationData required for \"Prior Approval\" applications", - "properties": { - "paSpecificProperty": { - "type": "number" }, - "somethingShared": { - "type": "string" - } - }, - "required": [ - "paSpecificProperty", - "somethingShared" - ], - "type": "object" - }, - "PAApplicationType": { - "anyOf": [ { - "const": "pa", - "description": "Prior Approval", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Structural or building condition survey", + "type": "string" + }, + "value": { + "const": "conditionSurvey", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part1.classA", - "description": "Prior Approval - Larger extension to a house", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Construction invoice", + "type": "string" + }, + "value": { + "const": "constructionInvoice", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part1.classAA", - "description": "Prior Approval - Adding storeys to a house", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Contamination report", + "type": "string" + }, + "value": { + "const": "contaminationReport", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part3.classG", - "description": "Prior Approval - Convert a commercial building to mixed use", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Council tax bill", + "type": "string" + }, + "value": { + "const": "councilTaxBill", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part3.classM", - "description": "Prior Approval - Convert a mixed use building into a home", - "type": "string" - }, - { - "const": "pa.part3.classMA", - "description": "Prior Approval - Convert a commercial building into a home or homes", - "type": "string" - }, - { - "const": "pa.part3.classN", - "description": "Prior Approval - Convert a casino or amusement arcade into a home or homes", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Crime prevention strategy", + "type": "string" + }, + "value": { + "const": "crimePreventionStrategy", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part3.classQ", - "description": "Prior Approval - Convert an agricultural building into a home", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Design and Access Statement", + "type": "string" + }, + "value": { + "const": "designAndAccessStatement", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part3.classR", - "description": "Prior Approval - Convert an agricultural building to a commercial use", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Evidence for application fee exemption - disability", + "type": "string" + }, + "value": { + "const": "disabilityExemptionEvidence", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part3.classS", - "description": "Prior Approval - Convert an agricultural building to a school", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Ecology report", + "type": "string" + }, + "value": { + "const": "ecologyReport", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part3.classT", - "description": "Prior Approval - Convert a commercial building to a school", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Elevations - existing", + "type": "string" + }, + "value": { + "const": "elevations.existing", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part3.classV", - "description": "Prior Approval - Changes of use permitted under a permission granted on an application", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Elevations - proposed", + "type": "string" + }, + "value": { + "const": "elevations.proposed", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part4.classBB", - "description": "Prior Approval - Put up a temporary structure", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Scheme for mitigation and monitoring of emissions (dust, odour and vibrations)", + "type": "string" + }, + "value": { + "const": "emissionsMitigationAndMonitoringScheme", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part4.classBC", - "description": "Prior Approval - Develop a temporary campsite", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Energy statement", + "type": "string" + }, + "value": { + "const": "energyStatement", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part4.classCA", - "description": "Prior Approval - Put temporary school buildings on vacant commercial land", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Environmental Impact Assessment (EIA)", + "type": "string" + }, + "value": { + "const": "environmentalImpactAssessment", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part4.classE", - "description": "Prior Approval - Use a building or land to shoot a film", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "External materials details", + "type": "string" + }, + "value": { + "const": "externalMaterialsDetails", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part6", - "description": "Prior Approval - Alter or add new buildings to agricultural or forestry sites", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Fire safety report", + "type": "string" + }, + "value": { + "const": "fireSafetyReport", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part6.classA", - "description": "Prior Approval - Build new agricultural buildings on a unit of 5 hectares or more", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Flood risk assessment (FRA)", + "type": "string" + }, + "value": { + "const": "floodRiskAssessment", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part6.classB", - "description": "Prior Approval - Build new agricultural buildings on a unit of less than 5 hectares", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Floor plan - existing", + "type": "string" + }, + "value": { + "const": "floorPlan.existing", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part6.classE", - "description": "Prior Approval - Build new forestry buildings", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Floor plan - proposed", + "type": "string" + }, + "value": { + "const": "floorPlan.proposed", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part7.classC", - "description": "Prior Approval - Install click and collect facilities", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Foul drainage assessment", + "type": "string" + }, + "value": { + "const": "foulDrainageAssessment", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part7.classM", - "description": "Prior Approval - Extend a school, college, university, prison or hospital", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Geodiversity assessment", + "type": "string" + }, + "value": { + "const": "geodiversityAssessment", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part9.classD", - "description": "Prior Approval - Development of toll facilities", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Plans showing the stretches of hedgerows to be removed", + "type": "string" + }, + "value": { + "const": "hedgerowsInformation", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part11.classB", - "description": "Prior Approval - Demolish a building", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Evidence of the date of planting of the removed hedgerows", + "type": "string" + }, + "value": { + "const": "hedgerowsInformation.plantingDate", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part14.classA", - "description": "Prior Approval - Install or change solar equipment on domestic premises", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Heritage Statement", + "type": "string" + }, + "value": { + "const": "heritageStatement", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part14.classB", - "description": "Prior Approval - Install or change stand-alone solar equipment on domestic premises", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Hydrological and hydrogeological assessment", + "type": "string" + }, + "value": { + "const": "hydrologicalAssessment", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part14.classJ", - "description": "Prior Approval - Install or change solar panels", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Hydrology report", + "type": "string" + }, + "value": { + "const": "hydrologyReport", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part14.classK", - "description": "Prior Approval - Install or change stand-alone solar equipment on non-domestic premises", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Internal elevations", + "type": "string" + }, + "value": { + "const": "internalElevations", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part14.classOA", - "description": "Prior Approval - Installation of a solar canopy on non-domestic, off-street parking", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Internal sections", + "type": "string" + }, + "value": { + "const": "internalSections", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part16.classA", - "description": "Prior Approval - Install telecommunications equipment", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Joiner's report", + "type": "string" + }, + "value": { + "const": "joinersReport", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part17", - "description": "Prior Approval - Coal mining", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Joinery section report", + "type": "string" + }, + "value": { + "const": "joinerySections", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part17.classB", - "description": "Prior Approval - Other developments ancillary to mining operations", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Land contamination assessment", + "type": "string" + }, + "value": { + "const": "landContaminationAssessment", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part17.classC", - "description": "Prior Approval - Developments for maintenance or safety", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Landscape and visual impact assessment (LVIA)", + "type": "string" + }, + "value": { + "const": "landscapeAndVisualImpactAssessment", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part17.classG", - "description": "Prior Approval - Coal mining development by the Coal Authority for maintenance or safety", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Landscape strategy or landscape plan", + "type": "string" + }, + "value": { + "const": "landscapeStrategy", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part18.classA", - "description": "Prior Approval - Development under private acts or orders", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Lighting assessment", + "type": "string" + }, + "value": { + "const": "lightingAssessment", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part19.classTA", - "description": "Prior Approval - Development on a closed defence site", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Details of litter, vermin and bird control", + "type": "string" + }, + "value": { + "const": "litterVerminAndBirdControlDetails", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part20.classA", - "description": "Prior Approval - Build homes on a detached blocks of flats", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Location plan", + "type": "string" + }, + "value": { + "const": "locationPlan", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part20.classAA", - "description": "Prior Approval - Build homes on a detached commercial building", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Method statement", + "type": "string" + }, + "value": { + "const": "methodStatement", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part20.classAB", - "description": "Prior Approval - Build homes on an adjoining commercial or mixed use building", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Minerals and waste assessment", + "type": "string" + }, + "value": { + "const": "mineralsAndWasteAssessment", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part20.classAC", - "description": "Prior Approval - Build homes on adjoining houses", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "Information the authority considers necessary for the application", + "type": "string" + }, + "value": { + "const": "necessaryInformation", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part20.classAD", - "description": "Prior Approval - Build homes on detached houses", - "type": "string" + "additionalProperties": false, + "properties": { + "description": { + "const": "New dwellings schedule", + "type": "string" + }, + "value": { + "const": "newDwellingsSchedule", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" }, { - "const": "pa.part20.classZA", - "description": "Prior Approval - Demolish buildings and build homes in their place", - "type": "string" - } - ] - }, - "PP": { - "additionalProperties": false, - "properties": { - "applicationType": { - "$ref": "#/definitions/PPApplicationType" - }, - "data": { "additionalProperties": false, "properties": { - "applicant": { - "$ref": "#/definitions/PPApplicant" - }, - "application": { - "$ref": "#/definitions/PPApplicationData" - }, - "property": { - "$ref": "#/definitions/PropertyBase" - }, - "proposal": { - "$ref": "#/definitions/ProposalBase" + "description": { + "const": "Noise assessment", + "type": "string" }, - "user": { - "$ref": "#/definitions/UserBase" + "value": { + "const": "noiseAssessment", + "type": "string" } }, "required": [ - "user", - "applicant", - "application", - "property", - "proposal" + "value", + "description" ], "type": "object" - } - }, - "required": [ - "applicationType", - "data" - ], - "type": "object" - }, - "PPApplicant": { - "anyOf": [ + }, { "additionalProperties": false, "properties": { - "address": { - "$ref": "#/definitions/ApplicantAddress", - "description": "Address information for the applicant" + "description": { + "const": "Open space assessment", + "type": "string" }, - "company": { - "additionalProperties": false, - "properties": { - "name": { - "type": "string" - } - }, - "required": [ - "name" - ], - "type": "object" + "value": { + "const": "openSpaceAssessment", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Other - document", + "type": "string" }, - "email": { - "$ref": "#/definitions/Email" + "value": { + "const": "otherDocument", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Other - drawing", + "type": "string" }, - "maintenanceContact": { - "description": "Contact information for the person(s) responsible for maintenace while the works are carried out", - "items": { - "$ref": "#/definitions/MaintenanceContact" - }, - "type": "array" + "value": { + "const": "otherDrawing", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Other - evidence or correspondence", + "type": "string" }, - "name": { - "additionalProperties": false, - "properties": { - "first": { - "type": "string" - }, - "last": { - "type": "string" - }, - "title": { - "type": "string" - } - }, - "required": [ - "first", - "last" - ], - "type": "object" + "value": { + "const": "otherEvidence", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Parking plan", + "type": "string" }, - "ownership": { - "additionalProperties": false, - "description": "Information about the ownership certificate and propery owners, if different than the applicant", - "properties": { - "agriculturalTenants": { - "description": "Does the land have any agricultural tenants?", - "type": "boolean" - }, - "certificate": { - "enum": [ - "a", - "b", - "c", - "d" - ], - "type": "string" - }, - "declaration": { - "additionalProperties": false, - "description": "Declaration of the accuracy of the ownership certificate, including reasonable steps taken to find all owners and publish notice", - "properties": { - "accurate": { - "const": true, - "type": "boolean" - } - }, - "required": [ - "accurate" - ], - "type": "object" - }, - "interest": { - "anyOf": [ - { - "$ref": "#/definitions/OwnershipInterest" - }, - { - "const": "owner.sole", - "type": "string" - }, - { - "const": "owner.co", - "type": "string" - } - ] - }, - "noticeGiven": { - "description": "Has requisite notice been given to all the known owners and agricultural tenants?", - "type": "boolean" - }, - "noticePublished": { - "additionalProperties": false, - "description": "Has a notice of the application been published in a newspaper circulating in the area where the land is situated?", - "properties": { - "date": { - "$ref": "#/definitions/Date" - }, - "newspaperName": { - "type": "string" - }, - "status": { - "type": "boolean" - } - }, - "required": [ - "status" - ], - "type": "object" - }, - "owners": { - "items": { - "$ref": "#/definitions/OwnersNoticeDate" - }, - "type": "array" - }, - "ownersKnown": { - "description": "Do you know the names and addresses of all owners and agricultural tenants?", - "enum": [ - "all", - "some", - "none" - ], - "type": "string" - } - }, - "required": [ - "interest", - "certificate", - "declaration" - ], - "type": "object" + "value": { + "const": "parkingPlan", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Photographs - existing", + "type": "string" }, - "phone": { - "additionalProperties": false, - "properties": { - "primary": { - "type": "string" - } - }, - "required": [ - "primary" - ], - "type": "object" + "value": { + "const": "photographs.existing", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Photographs - proposed", + "type": "string" }, - "siteContact": { - "$ref": "#/definitions/SiteContact", - "description": "Contact information for the site visit" + "value": { + "const": "photographs.proposed", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Planning statement", + "type": "string" }, - "type": { - "enum": [ - "individual", - "company", - "charity", - "public", - "parishCouncil" - ], + "value": { + "const": "planningStatement", "type": "string" } }, "required": [ - "address", - "email", - "name", - "ownership", - "phone", - "siteContact", - "type" + "value", + "description" ], "type": "object" }, { "additionalProperties": false, "properties": { - "address": { - "$ref": "#/definitions/ApplicantAddress", - "description": "Address information for the applicant" + "description": { + "const": "Recyclable waste storage details", + "type": "string" }, - "agent": { - "additionalProperties": false, - "description": "Contact information for the agent or proxy", - "properties": { - "address": { - "$ref": "#/definitions/UserAddress" - }, - "company": { - "additionalProperties": false, - "properties": { - "name": { - "type": "string" - } - }, - "required": [ - "name" - ], - "type": "object" - }, - "email": { - "$ref": "#/definitions/Email" - }, - "name": { - "additionalProperties": false, - "properties": { - "first": { - "type": "string" - }, - "last": { - "type": "string" - }, - "title": { - "type": "string" - } - }, - "required": [ - "first", - "last" - ], - "type": "object" - }, - "phone": { - "additionalProperties": false, - "properties": { - "primary": { - "type": "string" - } - }, - "required": [ - "primary" - ], - "type": "object" - } - }, - "required": [ - "address", - "email", - "name", - "phone" - ], - "type": "object" - }, - "company": { - "additionalProperties": false, - "properties": { - "name": { - "type": "string" - } - }, - "required": [ - "name" - ], - "type": "object" - }, - "email": { - "$ref": "#/definitions/Email" - }, - "maintenanceContact": { - "description": "Contact information for the person(s) responsible for maintenace while the works are carried out", - "items": { - "$ref": "#/definitions/MaintenanceContact" - }, - "type": "array" - }, - "name": { - "additionalProperties": false, - "properties": { - "first": { - "type": "string" - }, - "last": { - "type": "string" - }, - "title": { - "type": "string" - } - }, - "required": [ - "first", - "last" - ], - "type": "object" + "value": { + "const": "recycleWasteStorageDetails", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Information the applicant considers relevant to the application", + "type": "string" }, - "ownership": { - "additionalProperties": false, - "description": "Information about the ownership certificate and propery owners, if different than the applicant", - "properties": { - "agriculturalTenants": { - "description": "Does the land have any agricultural tenants?", - "type": "boolean" - }, - "certificate": { - "enum": [ - "a", - "b", - "c", - "d" - ], - "type": "string" - }, - "declaration": { - "additionalProperties": false, - "description": "Declaration of the accuracy of the ownership certificate, including reasonable steps taken to find all owners and publish notice", - "properties": { - "accurate": { - "const": true, - "type": "boolean" - } - }, - "required": [ - "accurate" - ], - "type": "object" - }, - "interest": { - "anyOf": [ - { - "$ref": "#/definitions/OwnershipInterest" - }, - { - "const": "owner.sole", - "type": "string" - }, - { - "const": "owner.co", - "type": "string" - } - ] - }, - "noticeGiven": { - "description": "Has requisite notice been given to all the known owners and agricultural tenants?", - "type": "boolean" - }, - "noticePublished": { - "additionalProperties": false, - "description": "Has a notice of the application been published in a newspaper circulating in the area where the land is situated?", - "properties": { - "date": { - "$ref": "#/definitions/Date" - }, - "newspaperName": { - "type": "string" - }, - "status": { - "type": "boolean" - } - }, - "required": [ - "status" - ], - "type": "object" - }, - "owners": { - "items": { - "$ref": "#/definitions/OwnersNoticeDate" - }, - "type": "array" - }, - "ownersKnown": { - "description": "Do you know the names and addresses of all owners and agricultural tenants?", - "enum": [ - "all", - "some", - "none" - ], - "type": "string" - } - }, - "required": [ - "interest", - "certificate", - "declaration" - ], - "type": "object" + "value": { + "const": "relevantInformation", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Residential units details", + "type": "string" }, - "phone": { - "additionalProperties": false, - "properties": { - "primary": { - "type": "string" - } - }, - "required": [ - "primary" - ], - "type": "object" + "value": { + "const": "residentialUnitsDetails", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Roof plan - existing", + "type": "string" }, - "siteContact": { - "$ref": "#/definitions/SiteContact", - "description": "Contact information for the site visit" + "value": { + "const": "roofPlan.existing", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Roof plan - proposed", + "type": "string" }, - "type": { - "enum": [ - "individual", - "company", - "charity", - "public", - "parishCouncil" - ], + "value": { + "const": "roofPlan.proposed", "type": "string" } }, "required": [ - "address", - "agent", - "email", - "name", - "ownership", - "phone", - "siteContact", - "type" + "value", + "description" ], "type": "object" - } - ] - }, - "PPApplicationData": { - "additionalProperties": false, - "description": "Specific ApplicationData required for \"Planning Permission\" applications", - "properties": { - "ppSpecificProperty": { - "type": "number" }, - "somethingShared": { + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Sections - existing", + "type": "string" + }, + "value": { + "const": "sections.existing", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Sections - proposed", + "type": "string" + }, + "value": { + "const": "sections.proposed", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Site plan - existing", + "type": "string" + }, + "value": { + "const": "sitePlan.existing", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Site plan - proposed", + "type": "string" + }, + "value": { + "const": "sitePlan.proposed", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Sketch plan", + "type": "string" + }, + "value": { + "const": "sketchPlan", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Statement of community involvement", + "type": "string" + }, + "value": { + "const": "statementOfCommunityInvolvement", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Statutory declaration", + "type": "string" + }, + "value": { + "const": "statutoryDeclaration", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Details of storage treatment or disposal of waste", + "type": "string" + }, + "value": { + "const": "storageTreatmentAndWasteDisposalDetails", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Street scene drawing", + "type": "string" + }, + "value": { + "const": "streetScene", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Subsidence report", + "type": "string" + }, + "value": { + "const": "subsidenceReport", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Sunlight and daylight report", + "type": "string" + }, + "value": { + "const": "sunlightAndDaylightReport", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Sustainability statement", + "type": "string" + }, + "value": { + "const": "sustainabilityStatement", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Technical evidence", + "type": "string" + }, + "value": { + "const": "technicalEvidence", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Technical specification", + "type": "string" + }, + "value": { + "const": "technicalSpecification", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Tenancy agreement", + "type": "string" + }, + "value": { + "const": "tenancyAgreement", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Tenancy invoice", + "type": "string" + }, + "value": { + "const": "tenancyInvoice", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Town centre uses - Impact assessment", + "type": "string" + }, + "value": { + "const": "townCentreImpactAssessment", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Town centre uses - Sequential assessment", + "type": "string" + }, + "value": { + "const": "townCentreSequentialAssessment", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Transport assessment", + "type": "string" + }, + "value": { + "const": "transportAssessment", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Travel plan", + "type": "string" + }, + "value": { + "const": "travelPlan", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Location of trees and hedges", + "type": "string" + }, + "value": { + "const": "treeAndHedgeLocation", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Removed or pruned trees and hedges", + "type": "string" + }, + "value": { + "const": "treeAndHedgeRemovedOrPruned", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Tree canopy calculator", + "type": "string" + }, + "value": { + "const": "treeCanopyCalculator", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Tree condition report", + "type": "string" + }, + "value": { + "const": "treeConditionReport", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Tree plan", + "type": "string" + }, + "value": { + "const": "treePlan", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Trees report", + "type": "string" + }, + "value": { + "const": "treesReport", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Unit plan - existing", + "type": "string" + }, + "value": { + "const": "unitPlan.existing", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Unit plan - proposed", + "type": "string" + }, + "value": { + "const": "unitPlan.proposed", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Use plan - existing", + "type": "string" + }, + "value": { + "const": "usePlan.existing", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Use plan - proposed", + "type": "string" + }, + "value": { + "const": "usePlan.proposed", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Utility bill", + "type": "string" + }, + "value": { + "const": "utilityBill", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Utilities statement", + "type": "string" + }, + "value": { + "const": "utilitiesStatement", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Ventilation or extraction statement", + "type": "string" + }, + "value": { + "const": "ventilationStatement", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Viability Appraisal", + "type": "string" + }, + "value": { + "const": "viabilityAppraisal", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Visualisations", + "type": "string" + }, + "value": { + "const": "visualisations", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Waste and recycling strategy", + "type": "string" + }, + "value": { + "const": "wasteAndRecyclingStrategy", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Waste storage details", + "type": "string" + }, + "value": { + "const": "wasteStorageDetails", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Water environment assessment", + "type": "string" + }, + "value": { + "const": "waterEnvironmentAssessment", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + } + ], + "description": "Types of planning documents and drawings" + }, + "GeoBoundary": { + "additionalProperties": false, + "properties": { + "area": { + "$ref": "#/definitions/Area" + }, + "site": { + "$ref": "#/definitions/GeoJSON" + } + }, + "required": [ + "site", + "area" + ], + "type": "object" + }, + "GeoJSON": { + "anyOf": [ + { + "$ref": "#/definitions/Geometry" + }, + { + "$ref": "#/definitions/Feature" + }, + { + "$ref": "#/definitions/FeatureCollection" + } + ], + "description": "Union of GeoJSON objects." + }, + "GeoJsonProperties": { + "anyOf": [ + { + "type": "object" + }, + { + "type": "null" + } + ] + }, + "Geometry": { + "anyOf": [ + { + "$ref": "#/definitions/Point" + }, + { + "$ref": "#/definitions/MultiPoint" + }, + { + "$ref": "#/definitions/LineString" + }, + { + "$ref": "#/definitions/MultiLineString" + }, + { + "$ref": "#/definitions/Polygon" + }, + { + "$ref": "#/definitions/MultiPolygon" + }, + { + "$ref": "#/definitions/GeometryCollection" + } + ], + "description": "Geometry object. https://tools.ietf.org/html/rfc7946#section-3" + }, + "GeometryCollection": { + "additionalProperties": false, + "description": "Geometry Collection https://tools.ietf.org/html/rfc7946#section-3.1.8", + "properties": { + "bbox": { + "$ref": "#/definitions/BBox", + "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" + }, + "geometries": { + "items": { + "$ref": "#/definitions/Geometry" + }, + "type": "array" + }, + "type": { + "const": "GeometryCollection", + "description": "Specifies the type of GeoJSON object.", + "type": "string" + } + }, + "required": [ + "geometries", + "type" + ], + "type": "object" + }, + "LDC": { + "additionalProperties": false, + "properties": { + "applicationType": { + "$ref": "#/definitions/LDCApplicationType" + }, + "data": { + "additionalProperties": false, + "properties": { + "applicant": { + "$ref": "#/definitions/LDCApplicant" + }, + "application": { + "$ref": "#/definitions/LDCApplicationData" + }, + "property": { + "$ref": "#/definitions/PropertyBase" + }, + "proposal": { + "$ref": "#/definitions/ProposalBase" + }, + "user": { + "$ref": "#/definitions/UserBase" + } + }, + "required": [ + "user", + "applicant", + "application", + "property", + "proposal" + ], + "type": "object" + }, + "files": { + "items": { + "$ref": "#/definitions/File" + }, + "type": "array" + }, + "metadata": { + "$ref": "#/definitions/Metadata" + }, + "preAssessment": { + "$ref": "#/definitions/PreAssessment" + }, + "responses": { + "$ref": "#/definitions/Responses" + } + }, + "required": [ + "applicationType", + "data", + "responses", + "files", + "metadata" + ], + "type": "object" + }, + "LDCApplicant": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "address": { + "$ref": "#/definitions/ApplicantAddress", + "description": "Address information for the applicant" + }, + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "email": { + "$ref": "#/definitions/Email" + }, + "name": { + "additionalProperties": false, + "properties": { + "first": { + "type": "string" + }, + "last": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "first", + "last" + ], + "type": "object" + }, + "ownership": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "interest": { + "const": "owner", + "type": "string" + } + }, + "required": [ + "interest" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "interest": { + "$ref": "#/definitions/OwnershipInterest" + }, + "owners": { + "items": { + "anyOf": [ + { + "$ref": "#/definitions/OwnersNoticeGiven" + }, + { + "$ref": "#/definitions/OwnersNoNoticeGiven" + } + ] + }, + "type": "array" + } + }, + "required": [ + "interest", + "owners" + ], + "type": "object" + } + ], + "description": "Information about the propery owners, if different than the applicant" + }, + "phone": { + "additionalProperties": false, + "properties": { + "primary": { + "type": "string" + } + }, + "required": [ + "primary" + ], + "type": "object" + }, + "siteContact": { + "$ref": "#/definitions/SiteContact", + "description": "Contact information for the site visit" + }, + "type": { + "enum": [ + "individual", + "company", + "charity", + "public", + "parishCouncil" + ], + "type": "string" + } + }, + "required": [ + "address", + "email", + "name", + "ownership", + "phone", + "siteContact", + "type" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "$ref": "#/definitions/ApplicantAddress", + "description": "Address information for the applicant" + }, + "agent": { + "additionalProperties": false, + "description": "Contact information for the agent or proxy", + "properties": { + "address": { + "$ref": "#/definitions/UserAddress" + }, + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "email": { + "$ref": "#/definitions/Email" + }, + "name": { + "additionalProperties": false, + "properties": { + "first": { + "type": "string" + }, + "last": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "first", + "last" + ], + "type": "object" + }, + "phone": { + "additionalProperties": false, + "properties": { + "primary": { + "type": "string" + } + }, + "required": [ + "primary" + ], + "type": "object" + } + }, + "required": [ + "address", + "email", + "name", + "phone" + ], + "type": "object" + }, + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "email": { + "$ref": "#/definitions/Email" + }, + "name": { + "additionalProperties": false, + "properties": { + "first": { + "type": "string" + }, + "last": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "first", + "last" + ], + "type": "object" + }, + "ownership": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "interest": { + "const": "owner", + "type": "string" + } + }, + "required": [ + "interest" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "interest": { + "$ref": "#/definitions/OwnershipInterest" + }, + "owners": { + "items": { + "anyOf": [ + { + "$ref": "#/definitions/OwnersNoticeGiven" + }, + { + "$ref": "#/definitions/OwnersNoNoticeGiven" + } + ] + }, + "type": "array" + } + }, + "required": [ + "interest", + "owners" + ], + "type": "object" + } + ], + "description": "Information about the propery owners, if different than the applicant" + }, + "phone": { + "additionalProperties": false, + "properties": { + "primary": { + "type": "string" + } + }, + "required": [ + "primary" + ], + "type": "object" + }, + "siteContact": { + "$ref": "#/definitions/SiteContact", + "description": "Contact information for the site visit" + }, + "type": { + "enum": [ + "individual", + "company", + "charity", + "public", + "parishCouncil" + ], + "type": "string" + } + }, + "required": [ + "address", + "agent", + "email", + "name", + "ownership", + "phone", + "siteContact", + "type" + ], + "type": "object" + } + ] + }, + "LDCApplicationData": { + "additionalProperties": false, + "description": "Specific ApplicationData required for \"Lawful Development Certificate\" applications", + "properties": { + "ldcSpecificProperty": { + "type": "number" + }, + "somethingShared": { + "type": "string" + } + }, + "required": [ + "ldcSpecificProperty", + "somethingShared" + ], + "type": "object" + }, + "LDCApplicationType": { + "anyOf": [ + { + "const": "ldc", + "description": "Lawful Development Certificate", + "type": "string" + }, + { + "const": "ldc.breachOfCondition", + "description": "Lawful Development Certificate - Existing use lawful not to comply with a condition (S191C)", + "type": "string" + }, + { + "const": "ldc.existing", + "description": "Lawful Development Certificate - Existing use", + "type": "string" + }, + { + "const": "ldc.listedBuildingWorks", + "description": "Lawful Development Certificate - Works to a Listed Building (S26H)", + "type": "string" + }, + { + "const": "ldc.proposed", + "description": "Lawful Development Certificate - Proposed use", + "type": "string" + } + ] + }, + "LineString": { + "additionalProperties": false, + "description": "LineString geometry object. https://tools.ietf.org/html/rfc7946#section-3.1.4", + "properties": { + "bbox": { + "$ref": "#/definitions/BBox", + "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" + }, + "coordinates": { + "items": { + "$ref": "#/definitions/Position" + }, + "type": "array" + }, + "type": { + "const": "LineString", + "description": "Specifies the type of GeoJSON object.", + "type": "string" + } + }, + "required": [ + "coordinates", + "type" + ], + "type": "object" + }, + "LondonProperty": { + "$id": "#LondonProperty", + "additionalProperties": false, + "description": "Property details for sites within the Greater London Authority (GLA) area", + "properties": { + "EPC": { + "additionalProperties": false, + "properties": { + "known": { + "enum": [ + "Yes", + "Yes, but only some of the properties have one", + "The property does not have one", + "No" + ], + "type": "string" + }, + "number": { + "type": "string" + } + }, + "required": [ + "known" + ], + "title": "Energy Performance Certificate", + "type": "object" + }, + "address": { + "anyOf": [ + { + "$ref": "#/definitions/ProposedAddress" + }, + { + "$ref": "#/definitions/OSAddress" + } + ] + }, + "boundary": { + "$ref": "#/definitions/GeoBoundary", + "description": "HM Land Registry Index polygon for this property, commonly referred to as the blue-line or title boundary, sourced from planning.data.gov.uk/dataset/title-boundary" + }, + "localAuthorityDistrict": { + "description": "Current and historic UK Local Authority Districts that contain this address sourced from planning.data.gov.uk/dataset/local-authority-district", + "items": { + "type": "string" + }, + "type": "array" + }, + "planning": { + "additionalProperties": false, + "description": "Planning constraints and policies that intersect with this site and may impact or restrict development", + "properties": { + "conditions": { + "items": { + "$ref": "#/definitions/PlanningConstraint" + }, + "type": "array" + }, + "designations": { + "items": { + "$ref": "#/definitions/PlanningDesignation" + }, + "type": "array" + }, + "guidance": { + "items": { + "$ref": "#/definitions/PlanningConstraint" + }, + "type": "array" + }, + "plans": { + "additionalProperties": false, + "properties": { + "local": { + "items": { + "$ref": "#/definitions/PlanningConstraint" + }, + "type": "array" + }, + "neighbourhood": { + "items": { + "$ref": "#/definitions/PlanningConstraint" + }, + "type": "array" + } + }, + "required": [ + "local", + "neighbourhood" + ], + "type": "object" + }, + "sources": { + "description": "A list of open data requests or websites that explain how these constraints were sourced", + "items": { + "$ref": "#/definitions/URL" + }, + "type": "array" + } + }, + "required": [ + "sources" + ], + "type": "object" + }, + "region": { + "const": "London", + "type": "string" + }, + "titleNumber": { + "additionalProperties": false, + "properties": { + "known": { + "enum": [ + "Yes", + "No" + ], + "type": "string" + }, + "number": { + "type": "string" + } + }, + "required": [ + "known" + ], + "type": "object" + }, + "type": { + "$ref": "#/definitions/PropertyType" + } + }, + "required": [ + "address", + "localAuthorityDistrict", + "region", + "type" + ], + "type": "object" + }, + "MaintenanceContact": { + "items": { + "additionalProperties": false, + "properties": { + "address": { + "$ref": "#/definitions/UserAddress" + }, + "contact": { + "$ref": "#/definitions/ContactDetails" + }, + "when": { + "enum": [ + "duringConstruction", + "afterConstruction", + "duringAndAfterConstruction" + ], + "type": "string" + } + }, + "required": [ + "when", + "address", + "contact" + ], + "type": "object" + }, + "type": "array" + }, + "Metadata": { + "$id": "#DigitalPlanningMetadata", + "anyOf": [ + { + "$ref": "#/definitions/AnyProviderMetadata" + }, + { + "$ref": "#/definitions/PlanXMetadata" + } + ], + "description": "Details of the digital planning service which sent this application" + }, + "MultiLineString": { + "additionalProperties": false, + "description": "MultiLineString geometry object. https://tools.ietf.org/html/rfc7946#section-3.1.5", + "properties": { + "bbox": { + "$ref": "#/definitions/BBox", + "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" + }, + "coordinates": { + "items": { + "items": { + "$ref": "#/definitions/Position" + }, + "type": "array" + }, + "type": "array" + }, + "type": { + "const": "MultiLineString", + "description": "Specifies the type of GeoJSON object.", + "type": "string" + } + }, + "required": [ + "coordinates", + "type" + ], + "type": "object" + }, + "MultiPoint": { + "additionalProperties": false, + "description": "MultiPoint geometry object. https://tools.ietf.org/html/rfc7946#section-3.1.3", + "properties": { + "bbox": { + "$ref": "#/definitions/BBox", + "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" + }, + "coordinates": { + "items": { + "$ref": "#/definitions/Position" + }, + "type": "array" + }, + "type": { + "const": "MultiPoint", + "description": "Specifies the type of GeoJSON object.", + "type": "string" + } + }, + "required": [ + "coordinates", + "type" + ], + "type": "object" + }, + "MultiPolygon": { + "additionalProperties": false, + "description": "MultiPolygon geometry object. https://tools.ietf.org/html/rfc7946#section-3.1.7", + "properties": { + "bbox": { + "$ref": "#/definitions/BBox", + "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" + }, + "coordinates": { + "items": { + "items": { + "items": { + "$ref": "#/definitions/Position" + }, + "type": "array" + }, + "type": "array" + }, + "type": "array" + }, + "type": { + "const": "MultiPolygon", + "description": "Specifies the type of GeoJSON object.", + "type": "string" + } + }, + "required": [ + "coordinates", + "type" + ], + "type": "object" + }, + "OSAddress": { + "additionalProperties": false, + "description": "Address information for sites with a known address sourced from Ordnance Survey AddressBase Premium (LPI)", + "properties": { + "latitude": { + "description": "Latitude coordinate in EPSG:4326 (WGS84)", + "type": "number" + }, + "longitude": { + "description": "Longitude coordinate in EPSG:4326 (WGS84)", + "type": "number" + }, + "organisation": { + "type": "string" + }, + "pao": { + "type": "string" + }, + "postcode": { + "type": "string" + }, + "singleLine": { + "type": "string" + }, + "source": { + "const": "Ordnance Survey", + "type": "string" + }, + "street": { + "type": "string" + }, + "title": { + "type": "string" + }, + "town": { + "type": "string" + }, + "uprn": { + "maxLength": 12, + "title": "Unique Property Reference Number", + "type": "string" + }, + "usrn": { + "maxLength": 8, + "title": "Unique Street Reference Number", + "type": "string" + }, + "x": { + "description": "Easting coordinate in British National Grid (OSGB36)", + "type": "number" + }, + "y": { + "description": "Northing coordinate in British National Grid (OSGB36)", + "type": "number" + } + }, + "required": [ + "latitude", + "longitude", + "pao", + "postcode", + "singleLine", + "source", + "street", + "title", + "town", + "uprn", + "usrn", + "x", + "y" + ], + "type": "object" + }, + "OwnersNoNoticeGiven": { + "additionalProperties": false, + "properties": { + "address": { + "anyOf": [ + { + "$ref": "#/definitions/UserAddress" + }, + { + "type": "string" + } + ] + }, + "interest": { + "$ref": "#/definitions/OwnershipInterest" + }, + "name": { + "type": "string" + }, + "noNoticeReason": { + "type": "string" + }, + "noticeGiven": { + "const": false, + "type": "boolean" + } + }, + "required": [ + "address", + "name", + "noNoticeReason", + "noticeGiven" + ], + "type": "object" + }, + "OwnersNoticeDate": { + "additionalProperties": false, + "properties": { + "address": { + "anyOf": [ + { + "$ref": "#/definitions/UserAddress" + }, + { + "type": "string" + } + ] + }, + "interest": { + "$ref": "#/definitions/OwnershipInterest" + }, + "name": { + "type": "string" + }, + "noticeDate": { + "$ref": "#/definitions/Date" + } + }, + "required": [ + "address", + "name", + "noticeDate" + ], + "type": "object" + }, + "OwnersNoticeGiven": { + "additionalProperties": false, + "properties": { + "address": { + "anyOf": [ + { + "$ref": "#/definitions/UserAddress" + }, + { + "type": "string" + } + ] + }, + "interest": { + "$ref": "#/definitions/OwnershipInterest" + }, + "name": { + "type": "string" + }, + "noticeGiven": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "address", + "name", + "noticeGiven" + ], + "type": "object" + }, + "OwnershipInterest": { + "enum": [ + "owner", + "tenant", + "occupier", + "other" + ], + "type": "string" + }, + "PA": { + "additionalProperties": false, + "properties": { + "applicationType": { + "$ref": "#/definitions/PAApplicationType" + }, + "data": { + "additionalProperties": false, + "properties": { + "applicant": { + "$ref": "#/definitions/ApplicantBase" + }, + "application": { + "$ref": "#/definitions/PAApplicationData" + }, + "property": { + "$ref": "#/definitions/PropertyBase" + }, + "proposal": { + "$ref": "#/definitions/ProposalBase" + }, + "user": { + "$ref": "#/definitions/UserBase" + } + }, + "required": [ + "user", + "applicant", + "application", + "property", + "proposal" + ], + "type": "object" + }, + "files": { + "items": { + "$ref": "#/definitions/File" + }, + "type": "array" + }, + "metadata": { + "$ref": "#/definitions/Metadata" + }, + "preAssessment": { + "$ref": "#/definitions/PreAssessment" + }, + "responses": { + "$ref": "#/definitions/Responses" + } + }, + "required": [ + "applicationType", + "data", + "responses", + "files", + "metadata" + ], + "type": "object" + }, + "PAApplicationData": { + "additionalProperties": false, + "description": "Specific ApplicationData required for \"Prior Approval\" applications", + "properties": { + "paSpecificProperty": { + "type": "number" + }, + "somethingShared": { + "type": "string" + } + }, + "required": [ + "paSpecificProperty", + "somethingShared" + ], + "type": "object" + }, + "PAApplicationType": { + "anyOf": [ + { + "const": "pa", + "description": "Prior Approval", + "type": "string" + }, + { + "const": "pa.part1.classA", + "description": "Prior Approval - Larger extension to a house", + "type": "string" + }, + { + "const": "pa.part1.classAA", + "description": "Prior Approval - Adding storeys to a house", + "type": "string" + }, + { + "const": "pa.part3.classG", + "description": "Prior Approval - Convert a commercial building to mixed use", + "type": "string" + }, + { + "const": "pa.part3.classM", + "description": "Prior Approval - Convert a mixed use building into a home", + "type": "string" + }, + { + "const": "pa.part3.classMA", + "description": "Prior Approval - Convert a commercial building into a home or homes", + "type": "string" + }, + { + "const": "pa.part3.classN", + "description": "Prior Approval - Convert a casino or amusement arcade into a home or homes", + "type": "string" + }, + { + "const": "pa.part3.classQ", + "description": "Prior Approval - Convert an agricultural building into a home", + "type": "string" + }, + { + "const": "pa.part3.classR", + "description": "Prior Approval - Convert an agricultural building to a commercial use", + "type": "string" + }, + { + "const": "pa.part3.classS", + "description": "Prior Approval - Convert an agricultural building to a school", + "type": "string" + }, + { + "const": "pa.part3.classT", + "description": "Prior Approval - Convert a commercial building to a school", + "type": "string" + }, + { + "const": "pa.part3.classV", + "description": "Prior Approval - Changes of use permitted under a permission granted on an application", + "type": "string" + }, + { + "const": "pa.part4.classBB", + "description": "Prior Approval - Put up a temporary structure", + "type": "string" + }, + { + "const": "pa.part4.classBC", + "description": "Prior Approval - Develop a temporary campsite", + "type": "string" + }, + { + "const": "pa.part4.classCA", + "description": "Prior Approval - Put temporary school buildings on vacant commercial land", + "type": "string" + }, + { + "const": "pa.part4.classE", + "description": "Prior Approval - Use a building or land to shoot a film", + "type": "string" + }, + { + "const": "pa.part6", + "description": "Prior Approval - Alter or add new buildings to agricultural or forestry sites", + "type": "string" + }, + { + "const": "pa.part6.classA", + "description": "Prior Approval - Build new agricultural buildings on a unit of 5 hectares or more", + "type": "string" + }, + { + "const": "pa.part6.classB", + "description": "Prior Approval - Build new agricultural buildings on a unit of less than 5 hectares", + "type": "string" + }, + { + "const": "pa.part6.classE", + "description": "Prior Approval - Build new forestry buildings", + "type": "string" + }, + { + "const": "pa.part7.classC", + "description": "Prior Approval - Install click and collect facilities", + "type": "string" + }, + { + "const": "pa.part7.classM", + "description": "Prior Approval - Extend a school, college, university, prison or hospital", + "type": "string" + }, + { + "const": "pa.part9.classD", + "description": "Prior Approval - Development of toll facilities", + "type": "string" + }, + { + "const": "pa.part11.classB", + "description": "Prior Approval - Demolish a building", + "type": "string" + }, + { + "const": "pa.part14.classA", + "description": "Prior Approval - Install or change solar equipment on domestic premises", + "type": "string" + }, + { + "const": "pa.part14.classB", + "description": "Prior Approval - Install or change stand-alone solar equipment on domestic premises", + "type": "string" + }, + { + "const": "pa.part14.classJ", + "description": "Prior Approval - Install or change solar panels", + "type": "string" + }, + { + "const": "pa.part14.classK", + "description": "Prior Approval - Install or change stand-alone solar equipment on non-domestic premises", + "type": "string" + }, + { + "const": "pa.part14.classOA", + "description": "Prior Approval - Installation of a solar canopy on non-domestic, off-street parking", + "type": "string" + }, + { + "const": "pa.part16.classA", + "description": "Prior Approval - Install telecommunications equipment", + "type": "string" + }, + { + "const": "pa.part17", + "description": "Prior Approval - Coal mining", + "type": "string" + }, + { + "const": "pa.part17.classB", + "description": "Prior Approval - Other developments ancillary to mining operations", + "type": "string" + }, + { + "const": "pa.part17.classC", + "description": "Prior Approval - Developments for maintenance or safety", + "type": "string" + }, + { + "const": "pa.part17.classG", + "description": "Prior Approval - Coal mining development by the Coal Authority for maintenance or safety", + "type": "string" + }, + { + "const": "pa.part18.classA", + "description": "Prior Approval - Development under private acts or orders", + "type": "string" + }, + { + "const": "pa.part19.classTA", + "description": "Prior Approval - Development on a closed defence site", + "type": "string" + }, + { + "const": "pa.part20.classA", + "description": "Prior Approval - Build homes on a detached blocks of flats", + "type": "string" + }, + { + "const": "pa.part20.classAA", + "description": "Prior Approval - Build homes on a detached commercial building", + "type": "string" + }, + { + "const": "pa.part20.classAB", + "description": "Prior Approval - Build homes on an adjoining commercial or mixed use building", + "type": "string" + }, + { + "const": "pa.part20.classAC", + "description": "Prior Approval - Build homes on adjoining houses", + "type": "string" + }, + { + "const": "pa.part20.classAD", + "description": "Prior Approval - Build homes on detached houses", + "type": "string" + }, + { + "const": "pa.part20.classZA", + "description": "Prior Approval - Demolish buildings and build homes in their place", + "type": "string" + } + ] + }, + "PP": { + "additionalProperties": false, + "properties": { + "applicationType": { + "$ref": "#/definitions/PPApplicationType" + }, + "data": { + "additionalProperties": false, + "properties": { + "applicant": { + "$ref": "#/definitions/PPApplicant" + }, + "application": { + "$ref": "#/definitions/PPApplicationData" + }, + "property": { + "$ref": "#/definitions/PropertyBase" + }, + "proposal": { + "$ref": "#/definitions/ProposalBase" + }, + "user": { + "$ref": "#/definitions/UserBase" + } + }, + "required": [ + "user", + "applicant", + "application", + "property", + "proposal" + ], + "type": "object" + }, + "files": { + "items": { + "$ref": "#/definitions/File" + }, + "type": "array" + }, + "metadata": { + "$ref": "#/definitions/Metadata" + }, + "preAssessment": { + "$ref": "#/definitions/PreAssessment" + }, + "responses": { + "$ref": "#/definitions/Responses" + } + }, + "required": [ + "applicationType", + "data", + "responses", + "files", + "metadata" + ], + "type": "object" + }, + "PPApplicant": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "address": { + "$ref": "#/definitions/ApplicantAddress", + "description": "Address information for the applicant" + }, + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "email": { + "$ref": "#/definitions/Email" + }, + "maintenanceContact": { + "description": "Contact information for the person(s) responsible for maintenace while the works are carried out", + "items": { + "$ref": "#/definitions/MaintenanceContact" + }, + "type": "array" + }, + "name": { + "additionalProperties": false, + "properties": { + "first": { + "type": "string" + }, + "last": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "first", + "last" + ], + "type": "object" + }, + "ownership": { + "additionalProperties": false, + "description": "Information about the ownership certificate and propery owners, if different than the applicant", + "properties": { + "agriculturalTenants": { + "description": "Does the land have any agricultural tenants?", + "type": "boolean" + }, + "certificate": { + "enum": [ + "a", + "b", + "c", + "d" + ], + "type": "string" + }, + "declaration": { + "additionalProperties": false, + "description": "Declaration of the accuracy of the ownership certificate, including reasonable steps taken to find all owners and publish notice", + "properties": { + "accurate": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "accurate" + ], + "type": "object" + }, + "interest": { + "anyOf": [ + { + "$ref": "#/definitions/OwnershipInterest" + }, + { + "const": "owner.sole", + "type": "string" + }, + { + "const": "owner.co", + "type": "string" + } + ] + }, + "noticeGiven": { + "description": "Has requisite notice been given to all the known owners and agricultural tenants?", + "type": "boolean" + }, + "noticePublished": { + "additionalProperties": false, + "description": "Has a notice of the application been published in a newspaper circulating in the area where the land is situated?", + "properties": { + "date": { + "$ref": "#/definitions/Date" + }, + "newspaperName": { + "type": "string" + }, + "status": { + "type": "boolean" + } + }, + "required": [ + "status" + ], + "type": "object" + }, + "owners": { + "items": { + "$ref": "#/definitions/OwnersNoticeDate" + }, + "type": "array" + }, + "ownersKnown": { + "description": "Do you know the names and addresses of all owners and agricultural tenants?", + "enum": [ + "all", + "some", + "none" + ], + "type": "string" + } + }, + "required": [ + "interest", + "certificate", + "declaration" + ], + "type": "object" + }, + "phone": { + "additionalProperties": false, + "properties": { + "primary": { + "type": "string" + } + }, + "required": [ + "primary" + ], + "type": "object" + }, + "siteContact": { + "$ref": "#/definitions/SiteContact", + "description": "Contact information for the site visit" + }, + "type": { + "enum": [ + "individual", + "company", + "charity", + "public", + "parishCouncil" + ], + "type": "string" + } + }, + "required": [ + "address", + "email", + "name", + "ownership", + "phone", + "siteContact", + "type" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "address": { + "$ref": "#/definitions/ApplicantAddress", + "description": "Address information for the applicant" + }, + "agent": { + "additionalProperties": false, + "description": "Contact information for the agent or proxy", + "properties": { + "address": { + "$ref": "#/definitions/UserAddress" + }, + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "email": { + "$ref": "#/definitions/Email" + }, + "name": { + "additionalProperties": false, + "properties": { + "first": { + "type": "string" + }, + "last": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "first", + "last" + ], + "type": "object" + }, + "phone": { + "additionalProperties": false, + "properties": { + "primary": { + "type": "string" + } + }, + "required": [ + "primary" + ], + "type": "object" + } + }, + "required": [ + "address", + "email", + "name", + "phone" + ], + "type": "object" + }, + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "email": { + "$ref": "#/definitions/Email" + }, + "maintenanceContact": { + "description": "Contact information for the person(s) responsible for maintenace while the works are carried out", + "items": { + "$ref": "#/definitions/MaintenanceContact" + }, + "type": "array" + }, + "name": { + "additionalProperties": false, + "properties": { + "first": { + "type": "string" + }, + "last": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "first", + "last" + ], + "type": "object" + }, + "ownership": { + "additionalProperties": false, + "description": "Information about the ownership certificate and propery owners, if different than the applicant", + "properties": { + "agriculturalTenants": { + "description": "Does the land have any agricultural tenants?", + "type": "boolean" + }, + "certificate": { + "enum": [ + "a", + "b", + "c", + "d" + ], + "type": "string" + }, + "declaration": { + "additionalProperties": false, + "description": "Declaration of the accuracy of the ownership certificate, including reasonable steps taken to find all owners and publish notice", + "properties": { + "accurate": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "accurate" + ], + "type": "object" + }, + "interest": { + "anyOf": [ + { + "$ref": "#/definitions/OwnershipInterest" + }, + { + "const": "owner.sole", + "type": "string" + }, + { + "const": "owner.co", + "type": "string" + } + ] + }, + "noticeGiven": { + "description": "Has requisite notice been given to all the known owners and agricultural tenants?", + "type": "boolean" + }, + "noticePublished": { + "additionalProperties": false, + "description": "Has a notice of the application been published in a newspaper circulating in the area where the land is situated?", + "properties": { + "date": { + "$ref": "#/definitions/Date" + }, + "newspaperName": { + "type": "string" + }, + "status": { + "type": "boolean" + } + }, + "required": [ + "status" + ], + "type": "object" + }, + "owners": { + "items": { + "$ref": "#/definitions/OwnersNoticeDate" + }, + "type": "array" + }, + "ownersKnown": { + "description": "Do you know the names and addresses of all owners and agricultural tenants?", + "enum": [ + "all", + "some", + "none" + ], + "type": "string" + } + }, + "required": [ + "interest", + "certificate", + "declaration" + ], + "type": "object" + }, + "phone": { + "additionalProperties": false, + "properties": { + "primary": { + "type": "string" + } + }, + "required": [ + "primary" + ], + "type": "object" + }, + "siteContact": { + "$ref": "#/definitions/SiteContact", + "description": "Contact information for the site visit" + }, + "type": { + "enum": [ + "individual", + "company", + "charity", + "public", + "parishCouncil" + ], + "type": "string" + } + }, + "required": [ + "address", + "agent", + "email", + "name", + "ownership", + "phone", + "siteContact", + "type" + ], + "type": "object" + } + ] + }, + "PPApplicationData": { + "additionalProperties": false, + "description": "Specific ApplicationData required for \"Planning Permission\" applications", + "properties": { + "ppSpecificProperty": { + "type": "number" + }, + "somethingShared": { + "type": "string" + } + }, + "required": [ + "ppSpecificProperty", + "somethingShared" + ], + "type": "object" + }, + "PPApplicationType": { + "anyOf": [ + { + "const": "pp", + "description": "Planning Permission", + "type": "string" + }, + { + "const": "pp.full", + "description": "Planning Permission for development, including all householder, minor, and major applications", + "type": "string" + }, + { + "const": "pp.full.advertConsent", + "description": "Full Planning Permission and consent to display an advert", + "type": "string" + }, + { + "const": "pp.full.demolition", + "description": "Full Planning Permission including demolition in a Conservation Area", + "type": "string" + }, + { + "const": "pp.full.fastTrack.affordable", + "description": "Full Planning Permission - Fast track for the purposes of Affordable Housing", + "type": "string" + }, + { + "const": "pp.full.householder", + "description": "Planning Permission - Full householder", + "type": "string" + }, + { + "const": "pp.full.householder.listed", + "description": "Planning Permission - Full householder with consent to do works to a Listed Building", + "type": "string" + }, + { + "const": "pp.full.householder.retro", + "description": "Planning Permission - Full householder retrospective", + "type": "string" + }, + { + "const": "pp.full.major", + "description": "Planning Permission - Major application", + "type": "string" + }, + { + "const": "pp.full.major.technicalDetails", + "description": "Planning Permission - Technical details consent for major development", + "type": "string" + }, + { + "const": "pp.full.major.technicalDetails.waste", + "description": "Planning Permission - Technical details consent for waste development", + "type": "string" + }, + { + "const": "pp.full.major.waste", + "description": "Planning Permission - Full planning permission for waste development", + "type": "string" + }, + { + "const": "pp.full.minor", + "description": "Planning Permission - Minor application", + "type": "string" + }, + { + "const": "pp.full.minor.listed", + "description": "Planning Permission - Minor application and consent to do works to a Listed Building", + "type": "string" + }, + { + "const": "pp.full.minor.technicalDetails", + "description": "Planning Permission - Technical details consent for minor development", + "type": "string" + }, + { + "const": "pp.mineralExtraction", + "description": "Planning Permission - Consent to extract minerals and related development, such as temporary buildings and roads", + "type": "string" + }, + { + "const": "pp.outline", + "description": "Planning permission - Outline for proposed development", + "type": "string" + }, + { + "const": "pp.outline.all", + "description": "Outline Planning Permission - Consent for the principle of a project witholding all details", + "type": "string" + }, + { + "const": "pp.outline.some", + "description": "Outline Planning Permission - Consent for the principle of a project specifying some details", + "type": "string" + }, + { + "const": "pp.outline.minor", + "description": "Planning permission - Outline for proposed development (minor)", + "type": "string" + }, + { + "const": "pp.outline.minor.all", + "description": "Outline Planning Permission - Consent for the principle of a project witholding all details (minor)", + "type": "string" + }, + { + "const": "pp.outline.minor.some", + "description": "Outline Planning Permission - Consent for the principle of a project specifying some details (minor)", + "type": "string" + }, + { + "const": "pp.outline.major", + "description": "Planning permission - Outline for proposed development (major)", + "type": "string" + }, + { + "const": "pp.outline.major.all", + "description": "Outline Planning Permission - Consent for the principle of a project witholding all details (major)", + "type": "string" + }, + { + "const": "pp.outline.major.all.waste", + "description": "Outline Planning Permission - Consent for the principle of waste development witholding all details", + "type": "string" + }, + { + "const": "pp.outline.major.some", + "description": "Outline Planning Permission - Consent for the principle of a project specifying some details (major)", + "type": "string" + }, + { + "const": "pp.outline.major.some.waste", + "description": "Outline Planning Permission - Consent for the principle of waste development witholding all details", + "type": "string" + }, + { + "const": "pp.pip", + "description": "Planning Permission in Principle - Consent for the principle of a project with less than 1000 square metres floor area on a site of less than 1 hectare", + "type": "string" + } + ] + }, + "PlanXMetadata": { + "$id": "#PlanXMetadata", + "additionalProperties": false, + "description": "Additional metadata associated with applications submitted via PlanX", + "properties": { + "id": { + "$ref": "#/definitions/UUID", + "description": "Unique identifier for this application" + }, + "organisation": { + "description": "The reference code for the organisation responsible for processing this planning application, sourced from planning.data.gov.uk/dataset/local-authority", + "maxLength": 4, + "type": "string" + }, + "schema": { + "$ref": "#/definitions/URL" + }, + "service": { + "additionalProperties": false, + "properties": { + "fee": { + "anyOf": [ + { + "$ref": "#/definitions/FeeExplanation" + }, + { + "$ref": "#/definitions/FeeExplanationNotApplicable" + } + ] + }, + "files": { + "$ref": "#/definitions/RequestedFiles" + }, + "flowId": { + "$ref": "#/definitions/UUID" + }, + "url": { + "$ref": "#/definitions/URL" + } + }, + "required": [ + "flowId", + "url", + "files", + "fee" + ], + "type": "object" + }, + "source": { + "const": "PlanX", + "type": "string" + }, + "submittedAt": { + "$ref": "#/definitions/DateTime" + } + }, + "required": [ + "id", + "organisation", + "schema", + "service", + "source", + "submittedAt" + ], + "type": "object" + }, + "PlanningConstraint": { + "$id": "#PlanningConstraint", + "anyOf": [ + { + "additionalProperties": false, + "description": "A planning constraint that does not intersect with the proposed site, per the DE-9IM spatial relationship definition of intersects", + "properties": { + "constraint": { + "type": "string" + }, + "intersects": { + "const": false, + "type": "boolean" + } + }, + "required": [ + "constraint", + "intersects" + ], + "type": "object" + }, + { + "additionalProperties": false, + "description": "A planning constraint that does intersect with the proposed site, per the DE-9IM spatial relationship definition of intersects", + "properties": { + "constraint": { + "type": "string" + }, + "entities": { + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" + }, + "intersects": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "constraint", + "entities", + "intersects" + ], + "type": "object" + } + ], + "description": "Planning constraints that intersect with the proposed site" + }, + "PlanningDesignation": { + "$id": "#PlanningDesignation", + "anyOf": [ + { + "additionalProperties": false, + "description": "A planning designation that does not intersect with the proposed site, per the DE-9IM spatial relationship definition of intersects", + "properties": { + "designation": { + "anyOf": [ + { + "const": "article4", + "description": "Article 4 Direction area", + "type": "string" + }, + { + "const": "article4.caz", + "description": "Central Activities Zone (CAZ)", + "type": "string" + }, + { + "const": "brownfieldSite", + "description": "Brownfield site", + "type": "string" + }, + { + "const": "designated", + "description": "Designated land", + "type": "string" + }, + { + "const": "designated.AONB", + "description": "Area of Outstanding Natural Beauty (AONB)", + "type": "string" + }, + { + "const": "designated.conservationArea", + "description": "Conservation Area", + "type": "string" + }, + { + "const": "designated.nationalPark", + "description": "National Park", + "type": "string" + }, + { + "const": "designated.nationalPark.broads", + "description": "National Park - Broads", + "type": "string" + }, + { + "const": "designated.WHS", + "description": "UNESCO World Heritage Site or buffer zone", + "type": "string" + }, + { + "const": "flood", + "description": "Flood Risk Zone", + "type": "string" + }, + { + "const": "flood.zone.1", + "description": "Flood Risk Zone 1 - Low risk", + "type": "string" + }, + { + "const": "flood.zone.2", + "description": "Flood Risk Zone 2 - Medium risk", + "type": "string" + }, + { + "const": "flood.zone.3", + "description": "Flood Risk Zone 3 - High risk", + "type": "string" + }, + { + "const": "greenBelt", + "description": "Green Belt", + "type": "string" + }, + { + "const": "listed", + "description": "Listed Building", + "type": "string" + }, + { + "const": "listed.grade.I", + "description": "Listed Building - Grade I", + "type": "string" + }, + { + "const": "listed.grade.II", + "description": "Listed Building - Grade II", + "type": "string" + }, + { + "const": "listed.grade.II*", + "description": "Listed Building - Grade II*", + "type": "string" + }, + { + "const": "locallyListed", + "description": "Locally Listed Building", + "type": "string" + }, + { + "const": "monument", + "description": "Site of a Scheduled Monument", + "type": "string" + }, + { + "const": "nature.ASNW", + "description": "Ancient Semi-Natural Woodland (ASNW)", + "type": "string" + }, + { + "const": "nature.ramsarSite", + "description": "Ramsar site", + "type": "string" + }, + { + "const": "nature.SAC", + "description": "Special Area of Conservation (SAC)", + "type": "string" + }, + { + "const": "nature.SPA", + "description": "Special Protection Area (SPA)", + "type": "string" + }, + { + "const": "nature.SSSI", + "description": "Site of Special Scientific Interest (SSSI)", + "type": "string" + }, + { + "const": "registeredPark", + "description": "Historic Park or Garden", + "type": "string" + }, + { + "const": "road.classified", + "description": "Classified Road", + "type": "string" + }, + { + "const": "tpo", + "description": "Tree Preservation Order (TPO) or zone", + "type": "string" + } + ] + }, + "intersects": { + "const": false, + "type": "boolean" + } + }, + "required": [ + "designation", + "intersects" + ], + "type": "object" + }, + { + "additionalProperties": false, + "description": "A planning designation that does intersect with the proposed site, per the DE-9IM spatial relationship definition of intersects", + "properties": { + "designation": { + "anyOf": [ + { + "const": "article4", + "description": "Article 4 Direction area", + "type": "string" + }, + { + "const": "article4.caz", + "description": "Central Activities Zone (CAZ)", + "type": "string" + }, + { + "const": "brownfieldSite", + "description": "Brownfield site", + "type": "string" + }, + { + "const": "designated", + "description": "Designated land", + "type": "string" + }, + { + "const": "designated.AONB", + "description": "Area of Outstanding Natural Beauty (AONB)", + "type": "string" + }, + { + "const": "designated.conservationArea", + "description": "Conservation Area", + "type": "string" + }, + { + "const": "designated.nationalPark", + "description": "National Park", + "type": "string" + }, + { + "const": "designated.nationalPark.broads", + "description": "National Park - Broads", + "type": "string" + }, + { + "const": "designated.WHS", + "description": "UNESCO World Heritage Site or buffer zone", + "type": "string" + }, + { + "const": "flood", + "description": "Flood Risk Zone", + "type": "string" + }, + { + "const": "flood.zone.1", + "description": "Flood Risk Zone 1 - Low risk", + "type": "string" + }, + { + "const": "flood.zone.2", + "description": "Flood Risk Zone 2 - Medium risk", + "type": "string" + }, + { + "const": "flood.zone.3", + "description": "Flood Risk Zone 3 - High risk", + "type": "string" + }, + { + "const": "greenBelt", + "description": "Green Belt", + "type": "string" + }, + { + "const": "listed", + "description": "Listed Building", + "type": "string" + }, + { + "const": "listed.grade.I", + "description": "Listed Building - Grade I", + "type": "string" + }, + { + "const": "listed.grade.II", + "description": "Listed Building - Grade II", + "type": "string" + }, + { + "const": "listed.grade.II*", + "description": "Listed Building - Grade II*", + "type": "string" + }, + { + "const": "locallyListed", + "description": "Locally Listed Building", + "type": "string" + }, + { + "const": "monument", + "description": "Site of a Scheduled Monument", + "type": "string" + }, + { + "const": "nature.ASNW", + "description": "Ancient Semi-Natural Woodland (ASNW)", + "type": "string" + }, + { + "const": "nature.ramsarSite", + "description": "Ramsar site", + "type": "string" + }, + { + "const": "nature.SAC", + "description": "Special Area of Conservation (SAC)", + "type": "string" + }, + { + "const": "nature.SPA", + "description": "Special Protection Area (SPA)", + "type": "string" + }, + { + "const": "nature.SSSI", + "description": "Site of Special Scientific Interest (SSSI)", + "type": "string" + }, + { + "const": "registeredPark", + "description": "Historic Park or Garden", + "type": "string" + }, + { + "const": "road.classified", + "description": "Classified Road", + "type": "string" + }, + { + "const": "tpo", + "description": "Tree Preservation Order (TPO) or zone", + "type": "string" + } + ] + }, + "entities": { + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" + }, + "intersects": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "designation", + "intersects" + ], + "type": "object" + } + ], + "description": "Planning designations that may intersect with the proposed site determined by spatial queries against Planning Data (planning.data.gov.uk) and Ordnance Survey" + }, + "Point": { + "additionalProperties": false, + "description": "Point geometry object. https://tools.ietf.org/html/rfc7946#section-3.1.2", + "properties": { + "bbox": { + "$ref": "#/definitions/BBox", + "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" + }, + "coordinates": { + "$ref": "#/definitions/Position" + }, + "type": { + "const": "Point", + "description": "Specifies the type of GeoJSON object.", + "type": "string" + } + }, + "required": [ + "coordinates", + "type" + ], + "type": "object" + }, + "Polygon": { + "additionalProperties": false, + "description": "Polygon geometry object. https://tools.ietf.org/html/rfc7946#section-3.1.6", + "properties": { + "bbox": { + "$ref": "#/definitions/BBox", + "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" + }, + "coordinates": { + "items": { + "items": { + "$ref": "#/definitions/Position" + }, + "type": "array" + }, + "type": "array" + }, + "type": { + "const": "Polygon", + "description": "Specifies the type of GeoJSON object.", + "type": "string" + } + }, + "required": [ + "coordinates", + "type" + ], + "type": "object" + }, + "Position": { + "description": "A Position is an array of coordinates. https://tools.ietf.org/html/rfc7946#section-3.1.1 Array should contain between two and three elements. The previous GeoJSON specification allowed more elements (e.g., which could be used to represent M values), but the current specification only allows X, Y, and (optionally) Z to be defined.", + "items": { + "type": "number" + }, + "type": "array" + }, + "PreAssessment": { + "$id": "#PreAssessment", + "description": "The result of the application based on information provided by the applicant, prior to assessment by a planning officer. Results are determined by flags corresponding to responses; each application can have up to one result per flagset", + "items": { + "additionalProperties": false, + "properties": { + "description": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + "type": "array" + }, + "PropertyBase": { + "anyOf": [ + { + "$ref": "#/definitions/UKProperty" + }, + { + "$ref": "#/definitions/LondonProperty" + } + ] + }, + "PropertyType": { + "$id": "#PropertyType", + "anyOf": [ + { + "const": "commercial", + "description": "Commercial", + "type": "string" + }, + { + "const": "commercial.abattoir", + "description": "Slaughter House / Abattoir", + "type": "string" + }, + { + "const": "commercial.agriculture", + "description": "Agricultural", + "type": "string" + }, + { + "const": "commercial.agriculture.farm", + "description": "Farm / Non-Residential Associated Building", + "type": "string" + }, + { + "const": "commercial.ancillary", + "description": "Ancillary Building", + "type": "string" + }, + { + "const": "commercial.animals", + "description": "Animal Centre", + "type": "string" + }, + { + "const": "commercial.animals.equestrian", + "description": "Equestrian", + "type": "string" + }, + { + "const": "commercial.animals.equestrian.racing", + "description": "Horse Racing / Breeding Stable", + "type": "string" + }, + { + "const": "commercial.animals.equestrian.riding", + "description": "Commercial Stabling / Riding", + "type": "string" + }, + { + "const": "commercial.animals.kennelsCattery", + "description": "Cattery / Kennel", + "type": "string" + }, + { + "const": "commercial.animals.sanctuary", + "description": "Animal / Bird / Marine Sanctuary", + "type": "string" + }, + { + "const": "commercial.animals.sanctuary.animals", + "description": "Animal Sanctuary", + "type": "string" + }, + { + "const": "commercial.animals.sanctuary.marine", + "description": "Marine Sanctuary", + "type": "string" + }, + { + "const": "commercial.animals.services", + "description": "Animal Services", + "type": "string" + }, + { + "const": "commercial.animals.services.quarantine", + "description": "Animal Quarantining", + "type": "string" + }, + { + "const": "commercial.animals.vet", + "description": "Vet / Animal Medical Treatment", + "type": "string" + }, + { + "const": "commercial.community", + "description": "Community Services", + "type": "string" + }, + { + "const": "commercial.community.CCTV", + "description": "CCTV", + "type": "string" + }, + { + "const": "commercial.community.cemetery", + "description": "Cemetery / Crematorium / Graveyard. In Current Use.", + "type": "string" + }, + { + "const": "commercial.community.Cemetery.Cemetery", + "description": "Cemetery", + "type": "string" + }, + { + "const": "commercial.community.Cemetery.chapelOfRest", + "description": "Chapel Of Rest", + "type": "string" + }, + { + "const": "commercial.community.Cemetery.columbarium", + "description": "Columbarium", + "type": "string" + }, + { + "const": "commercial.community.Cemetery.crematorium", + "description": "Crematorium", + "type": "string" + }, + { + "const": "commercial.community.Cemetery.military", + "description": "Military Cemetery", + "type": "string" + }, + { + "const": "commercial.community.Cemetery.mortuary", + "description": "Mortuary", + "type": "string" + }, + { + "const": "commercial.community.court", + "description": "Law Court", + "type": "string" + }, + { + "const": "commercial.community.employment", + "description": "Job Centre", + "type": "string" + }, + { + "const": "commercial.community.hall", + "description": "Public / Village Hall / Other Community Facility", + "type": "string" + }, + { + "const": "commercial.community.hall.club", + "description": "Youth Recreational / Social Club", + "type": "string" + }, + { + "const": "commercial.community.HWRC", + "description": "Public Household Waste Recycling Centre (HWRC)", + "type": "string" + }, + { + "const": "commercial.community.prison", + "description": "Prison", + "type": "string" + }, + { + "const": "commercial.community.prison.detention", + "description": "HM Detention Centre", + "type": "string" + }, + { + "const": "commercial.community.prison.secureResidential", + "description": "Secure Residential Accommodation", + "type": "string" + }, + { + "const": "commercial.community.prison.service", + "description": "HM Prison Service", + "type": "string" + }, + { + "const": "commercial.community.recycling", + "description": "Recycling Site", + "type": "string" + }, + { + "const": "commercial.community.religious", + "description": "Church Hall / Religious Meeting Place / Hall", + "type": "string" + }, + { + "const": "commercial.community.services", + "description": "Community Service Centre / Office", + "type": "string" + }, + { + "const": "commercial.community.wc", + "description": "Public Convenience", + "type": "string" + }, + { + "const": "commercial.education", + "description": "Education", + "type": "string" + }, + { + "const": "commercial.education.college", + "description": "College", + "type": "string" + }, + { + "const": "commercial.education.college.further", + "description": "Further Education", + "type": "string" + }, + { + "const": "commercial.education.college.higher", + "description": "Higher Education", + "type": "string" + }, + { + "const": "commercial.education.nursery", + "description": "Children's Nursery / Crèche", + "type": "string" + }, + { + "const": "commercial.education.other", + "description": "Other Educational Establishment", + "type": "string" + }, + { + "const": "commercial.education.school", + "description": "Preparatory / First / Primary / Infant / Junior / Middle School", + "type": "string" + }, + { + "const": "commercial.education.school.first", + "description": "First School", + "type": "string" + }, + { + "const": "commercial.education.school.infant", + "description": "Infant School", + "type": "string" + }, + { + "const": "commercial.education.school.junior", + "description": "Junior School", + "type": "string" + }, + { + "const": "commercial.education.school.middle", + "description": "Middle School", + "type": "string" + }, + { + "const": "commercial.education.school.primary.private", + "description": "Non State Primary / Preparatory School", + "type": "string" + }, + { + "const": "commercial.education.school.primary.state", + "description": "Primary School", + "type": "string" + }, + { + "const": "commercial.education.secondarySchool", + "description": "Secondary / High School", + "type": "string" + }, + { + "const": "commercial.education.secondarySchool.private", + "description": "Non State Secondary School", + "type": "string" + }, + { + "const": "commercial.education.secondarySchool.state", + "description": "Secondary School", + "type": "string" + }, + { + "const": "commercial.education.specialNeeds", + "description": "Special Needs Establishment.", + "type": "string" + }, + { + "const": "commercial.education.university", + "description": "University", + "type": "string" + }, + { + "const": "commercial.emergency", + "description": "Emergency / Rescue Service", + "type": "string" + }, + { + "const": "commercial.fish", + "description": "Fishery", + "type": "string" + }, + { + "const": "commercial.fish.farm", + "description": "Fish Farming", + "type": "string" + }, + { + "const": "commercial.fish.hatchery", + "description": "Fish Hatchery", + "type": "string" + }, + { + "const": "commercial.fish.oysters", + "description": "Oyster / Mussel Bed", + "type": "string" + }, + { + "const": "commercial.fish.processing", + "description": "Fish Processing", + "type": "string" + }, + { + "const": "commercial.guest", + "description": "Hotel / Motel / Boarding / Guest House", + "type": "string" + }, + { + "const": "commercial.guest.hostel", + "description": "Boarding / Guest House / Bed And Breakfast / Youth Hostel", + "type": "string" + }, + { + "const": "commercial.guest.hostel.youth", + "description": "Youth Hostel", + "type": "string" + }, + { + "const": "commercial.guest.hotel", + "description": "Hotel/Motel", + "type": "string" + }, + { + "const": "commercial.guest.shortLet", + "description": "Holiday Let/Accommodation/Short-Term Let Other Than CH01", + "type": "string" + }, + { + "const": "commercial.horticulture", + "description": "Horticulture", + "type": "string" + }, + { + "const": "commercial.horticulture.smallholding", + "description": "Smallholding", + "type": "string" + }, + { + "const": "commercial.horticulture.vineyard", + "description": "Vineyard", + "type": "string" + }, + { + "const": "commercial.horticulture.watercress", + "description": "Watercress Bed", + "type": "string" + }, + { + "const": "commercial.industrial", + "description": "Industrial Applicable to manufacturing, engineering, maintenance, storage / wholesale distribution and extraction sites", + "type": "string" + }, + { + "const": "commercial.industrial.distribution", + "description": "Wholesale Distribution", + "type": "string" + }, + { + "const": "commercial.industrial.distribution.solidFuel", + "description": "Solid Fuel Distribution", + "type": "string" + }, + { + "const": "commercial.industrial.distribution.timber", + "description": "Timber Distribution", + "type": "string" + }, + { + "const": "commercial.industrial.extraction", + "description": "Mineral / Ore Working / Quarry / Mine", + "type": "string" + }, + { + "const": "commercial.industrial.extraction.distribution", + "description": "Mineral Distribution / Storage", + "type": "string" + }, + { + "const": "commercial.industrial.extraction.mining", + "description": "Mineral Mining / Active", + "type": "string" + }, + { + "const": "commercial.industrial.extraction.oilGas", + "description": "Oil / Gas Extraction / Active", + "type": "string" + }, + { + "const": "commercial.industrial.extraction.processing", + "description": "Mineral Processing", + "type": "string" + }, + { + "const": "commercial.industrial.extraction.quarrying", + "description": "Mineral Quarrying / Open Extraction / Active", + "type": "string" + }, + { + "const": "commercial.industrial.incineration", + "description": "Incinerator / Waste Transfer Station", + "type": "string" + }, + { + "const": "commercial.industrial.light", + "description": "Workshop / Light Industrial", + "type": "string" + }, + { + "const": "commercial.industrial.light.garage", + "description": "Servicing Garage", + "type": "string" + }, + { + "const": "commercial.industrial.light.storage", + "description": "Warehouse / Store / Storage Depot", + "type": "string" + }, + { + "const": "commercial.industrial.light.storage.crops", + "description": "Crop Handling / Storage", + "type": "string" + }, + { + "const": "commercial.industrial.light.storage.post", + "description": "Postal Sorting / Distribution", + "type": "string" + }, + { + "const": "commercial.industrial.light.storage.solidFuel", + "description": "Solid Fuel Storage", + "type": "string" + }, + { + "const": "commercial.industrial.light.storage.timber", + "description": "Timber Storage", + "type": "string" + }, + { + "const": "commercial.industrial.maintenanceDepot", + "description": "Maintenance Depot", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing", + "description": "Factory/Manufacturing", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.aircraft", + "description": "Aircraft Works", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.beer", + "description": "Brewery", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.boats", + "description": "Boat Building", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.bricks", + "description": "Brick Works", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.cement", + "description": "Cement Works", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.chemicals", + "description": "Chemical Works", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.cider", + "description": "Cider Manufacture", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.dairy", + "description": "Dairy Processing", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.distillery", + "description": "Distillery", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.flour", + "description": "Flour Mill", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.food", + "description": "Food Processing", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.glass", + "description": "Glassworks", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.hops", + "description": "Oast House", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.oil", + "description": "Oil Refining", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.other", + "description": "Manufacturing", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.paper", + "description": "Paper Mill", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.pottery", + "description": "Pottery Manufacturing", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.printing", + "description": "Printing Works", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.ships", + "description": "Shipyard", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.steel", + "description": "Steel Works", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.sugar", + "description": "Sugar Refinery", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.timber", + "description": "Timber Mill", + "type": "string" + }, + { + "const": "commercial.industrial.manufacturing.wine", + "description": "Winery", + "type": "string" + }, + { + "const": "commercial.industrial.recycling", + "description": "Recycling Plant", + "type": "string" + }, + { + "const": "commercial.leisure", + "description": "Leisure - Applicable to recreational sites and enterprises", + "type": "string" + }, + { + "const": "commercial.leisure.amusements", + "description": "Amusements", + "type": "string" + }, + { + "const": "commercial.leisure.amusements.pier", + "description": "Leisure Pier", + "type": "string" + }, + { + "const": "commercial.leisure.arena", + "description": "Arena / Stadium", + "type": "string" + }, + { + "const": "commercial.leisure.arena.showground", + "description": "Showground", + "type": "string" + }, + { + "const": "commercial.leisure.arena.stadium", + "description": "Stadium", + "type": "string" + }, + { + "const": "commercial.leisure.beachHut", + "description": "Beach Hut (Recreational, Non-Residential Use Only)", + "type": "string" + }, + { + "const": "commercial.leisure.club.private", + "description": "Licensed Private Members' Club", + "type": "string" + }, + { + "const": "commercial.leisure.club.social", + "description": "Recreational / Social Club", + "type": "string" + }, + { + "const": "commercial.leisure.entertainment", + "description": "Bingo Hall / Cinema / Conference / Exhibition Centre / Theatre / Concert Hall", + "type": "string" + }, + { + "const": "commercial.leisure.entertainment.cinema", + "description": "Cinema", + "type": "string" + }, + { + "const": "commercial.leisure.entertainment.exhibition", + "description": "Conference / Exhibition Centre", + "type": "string" + }, + { + "const": "commercial.leisure.entertainment.mixed", + "description": "Entertainment Complex", + "type": "string" + }, + { + "const": "commercial.leisure.entertainment.theatre", + "description": "Theatre", + "type": "string" + }, + { + "const": "commercial.leisure.holiday", + "description": "Holiday / Campsite", + "type": "string" + }, + { + "const": "commercial.leisure.holiday.accommodation", + "description": "Holiday Accommodation", + "type": "string" + }, + { + "const": "commercial.leisure.holiday.camping", + "description": "Camping", + "type": "string" + }, + { + "const": "commercial.leisure.holiday.caravanning", + "description": "Caravanning", + "type": "string" + }, + { + "const": "commercial.leisure.holiday.centre", + "description": "Holiday Centre", + "type": "string" + }, + { + "const": "commercial.leisure.holiday.youth", + "description": "Youth Organisation Camp", + "type": "string" + }, + { + "const": "commercial.leisure.library", + "description": "Library", + "type": "string" + }, + { + "const": "commercial.leisure.library.readingRoom", + "description": "Reading Room", + "type": "string" + }, + { + "const": "commercial.leisure.museum", + "description": "Museum / Gallery", + "type": "string" + }, + { + "const": "commercial.leisure.museum.art", + "description": "Art Centre / Gallery", + "type": "string" + }, + { + "const": "commercial.leisure.museum.aviation", + "description": "Aviation Museum", + "type": "string" + }, + { + "const": "commercial.leisure.museum.heritage", + "description": "Heritage Centre", + "type": "string" + }, + { + "const": "commercial.leisure.museum.industrial", + "description": "Industrial Museum", + "type": "string" + }, + { + "const": "commercial.leisure.museum.maritime", + "description": "Maritime Museum", + "type": "string" + }, + { + "const": "commercial.leisure.museum.military", + "description": "Military Museum", + "type": "string" + }, + { + "const": "commercial.leisure.museum.science", + "description": "Science Museum", + "type": "string" + }, + { + "const": "commercial.leisure.museum.transport", + "description": "Transport Museum", + "type": "string" + }, + { + "const": "commercial.leisure.park.amusement", + "description": "Amusement Park", + "type": "string" + }, + { + "const": "commercial.leisure.park.aquatic", + "description": "Aquatic Attraction", + "type": "string" + }, + { + "const": "commercial.leisure.park.model", + "description": "Model Village Site", + "type": "string" + }, + { + "const": "commercial.leisure.park.wildlife", + "description": "Wildlife / Zoological Park", + "type": "string" + }, + { + "const": "commercial.leisure.park.zoo", + "description": "Zoo / Theme Park", + "type": "string" + }, + { + "const": "commercial.leisure.sport", + "description": "Indoor / Outdoor Leisure / Sporting Activity / Centre", + "type": "string" + }, + { + "const": "commercial.leisure.sport.athletics", + "description": "Athletics Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.bowls", + "description": "Bowls Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.centre", + "description": "Activity / Leisure / Sports Centre", + "type": "string" + }, + { + "const": "commercial.leisure.sport.cricket", + "description": "Cricket Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.curling", + "description": "Curling Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.cycling", + "description": "Cycling Sports Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.dogracing", + "description": "Greyhound Racing Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.equestrian", + "description": "Equestrian Sports Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.firing", + "description": "Civilian Firing Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.fishing", + "description": "Fishing / Angling Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.football", + "description": "Football Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.gliding", + "description": "Gliding Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.golf", + "description": "Golf Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.historicVehicles", + "description": "Historic Vessel / Aircraft / Vehicle", + "type": "string" + }, + { + "const": "commercial.leisure.sport.hockey", + "description": "Hockey Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.horseracing", + "description": "Horse Racing Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.model", + "description": "Model Sports Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.motor", + "description": "Motor Sports Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.playingField", + "description": "Playing Field", + "type": "string" + }, + { + "const": "commercial.leisure.sport.racquet", + "description": "Racquet Sports Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.recreationGround", + "description": "Recreation Ground", + "type": "string" + }, + { + "const": "commercial.leisure.sport.rugby", + "description": "Rugby Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.shinty", + "description": "Shinty Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.skateboarding", + "description": "Skateboarding Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.swimming", + "description": "Diving / Swimming Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.tennis", + "description": "Public Tennis Court", + "type": "string" + }, + { + "const": "commercial.leisure.sport.tenpin", + "description": "Tenpin Bowling Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.water", + "description": "Water Sports Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.wildlife", + "description": "Wildlife Sports Facility", + "type": "string" + }, + { + "const": "commercial.leisure.sport.winter", + "description": "Winter Sports Facility", + "type": "string" + }, + { + "const": "commercial.medical", + "description": "Medical", + "type": "string" + }, + { + "const": "commercial.medical.assessment", + "description": "Assessment / Development Services", + "type": "string" + }, + { + "const": "commercial.medical.care", + "description": "Hospital / Hospice", + "type": "string" + }, + { + "const": "commercial.medical.care.home", + "description": "Care home/Hospice", + "type": "string" + }, + { + "const": "commercial.medical.care.hospital", + "description": "Hospital", + "type": "string" + }, + { + "const": "commercial.medical.dentist", + "description": "Dentist", + "type": "string" + }, + { + "const": "commercial.medical.GP", + "description": "General Practice Surgery / Clinic", + "type": "string" + }, + { + "const": "commercial.medical.healthCentre", + "description": "Health Centre", + "type": "string" + }, + { + "const": "commercial.medical.healthServices", + "description": "Health Care Services", + "type": "string" + }, + { + "const": "commercial.medical.lab", + "description": "Medical / Testing / Research Laboratory", + "type": "string" + }, + { + "const": "commercial.medical.professional", + "description": "Professional Medical Service", + "type": "string" + }, + { + "const": "commercial.office", + "description": "Office", + "type": "string" + }, + { + "const": "commercial.office.broadcasting", + "description": "Broadcasting (TV / Radio)", + "type": "string" + }, + { + "const": "commercial.office.workspace", + "description": "Office / Work Studio", + "type": "string" + }, + { + "const": "commercial.office.workspace.embassy", + "description": "Embassy /, High Commission / Consulate", + "type": "string" + }, + { + "const": "commercial.office.workspace.film", + "description": "Film Studio", + "type": "string" + }, + { + "const": "commercial.office.workspace.gov.local", + "description": "Local Government Service", + "type": "string" + }, + { + "const": "commercial.office.workspace.gov.national", + "description": "Central Government Service", + "type": "string" + }, + { + "const": "commercial.retail", + "description": "Retail", + "type": "string" + }, + { + "const": "commercial.retail.atm", + "description": "Automated Teller Machine (ATM)", + "type": "string" + }, + { + "const": "commercial.retail.drinking", + "description": "Public House / Bar / Nightclub", + "type": "string" + }, + { + "const": "commercial.retail.financial", + "description": "Bank / Financial Service", + "type": "string" + }, + { + "const": "commercial.retail.fuel", + "description": "Petrol Filling Station", + "type": "string" + }, + { + "const": "commercial.retail.licensedPremises", + "description": "Other Licensed Premise / Vendor", + "type": "string" + }, + { + "const": "commercial.retail.market", + "description": "Market (Indoor / Outdoor)", + "type": "string" + }, + { + "const": "commercial.retail.market.fish", + "description": "Fish Market", + "type": "string" + }, + { + "const": "commercial.retail.market.fruit", + "description": "Fruit / Vegetable Market", + "type": "string" + }, + { + "const": "commercial.retail.market.livestock", + "description": "Livestock Market", + "type": "string" + }, + { + "const": "commercial.retail.post", + "description": "Post Office", + "type": "string" + }, + { + "const": "commercial.retail.restaurant", + "description": "Restaurant / Cafeteria", + "type": "string" + }, + { + "const": "commercial.retail.services", + "description": "Retail Service Agent", + "type": "string" + }, + { + "const": "commercial.retail.shop", + "description": "Shop", + "type": "string" + }, + { + "const": "commercial.retail.shop.gardenCentre", + "description": "Garden Centre", + "type": "string" + }, + { + "const": "commercial.retail.showroom", + "description": "Shop / Showroom", + "type": "string" + }, + { + "const": "commercial.retail.takeaway", + "description": "Fast Food Outlet / Takeaway (Hot / Cold)", + "type": "string" + }, + { + "const": "commercial.storageLand", + "description": "Storage Land", + "type": "string" + }, + { + "const": "commercial.storageLand.building", + "description": "Builders' Yard", + "type": "string" + }, + { + "const": "commercial.storageLand.general", + "description": "General Storage Land", + "type": "string" + }, + { + "const": "commercial.transport", + "description": "Transport", + "type": "string" + }, + { + "const": "commercial.transport.air", + "description": "Airfield / Airstrip / Airport / Air Transport Infrastructure Facility", + "type": "string" + }, + { + "const": "commercial.transport.air.airfield", + "description": "Airfield", + "type": "string" + }, + { + "const": "commercial.transport.air.airport", + "description": "Airport", + "type": "string" + }, + { + "const": "commercial.transport.air.helicopterStation", + "description": "Helicopter Station", + "type": "string" + }, + { + "const": "commercial.transport.air.heliport", + "description": "Heliport / Helipad", + "type": "string" + }, + { + "const": "commercial.transport.air.infrastructure", + "description": "Air Transport Infrastructure Services", + "type": "string" + }, + { + "const": "commercial.transport.air.passengerTerminal", + "description": "Air Passenger Terminal", + "type": "string" + }, + { + "const": "commercial.transport.bus", + "description": "Bus Shelter", + "type": "string" + }, + { + "const": "commercial.transport.dock", + "description": "Harbour / Port / Dock / Dockyard / Slipway / Landing Stage / Pier / Jetty / Pontoon / Terminal / Berthing / Quay", + "type": "string" + }, + { + "const": "commercial.transport.dock.ferry.passengers", + "description": "Passenger Ferry Terminal", + "type": "string" + }, + { + "const": "commercial.transport.dock.ferry.vehicles", + "description": "Vehicular Ferry Terminal", + "type": "string" + }, + { + "const": "commercial.transport.dock.generalBerth", + "description": "Non-Tanker Nautical Berthing", + "type": "string" + }, + { + "const": "commercial.transport.dock.passenger", + "description": "Ship Passenger Terminal", + "type": "string" + }, + { + "const": "commercial.transport.dock.refuelling", + "description": "Nautical Refuelling Facility", + "type": "string" + }, + { + "const": "commercial.transport.dock.slipway", + "description": "Slipway", + "type": "string" + }, + { + "const": "commercial.transport.dock.tankerBerth", + "description": "Tanker Berthing", + "type": "string" + }, + { + "const": "commercial.transport.freight", + "description": "Goods Freight Handling / Terminal", + "type": "string" + }, + { + "const": "commercial.transport.freight.air", + "description": "Air Freight Terminal", + "type": "string" + }, + { + "const": "commercial.transport.freight.container", + "description": "Container Freight", + "type": "string" + }, + { + "const": "commercial.transport.freight.rail", + "description": "Rail Freight Transport", + "type": "string" + }, + { + "const": "commercial.transport.freight.road", + "description": "Road Freight Transport", + "type": "string" + }, + { + "const": "commercial.transport.infrastructure", + "description": "Transport Related Infrastructure", + "type": "string" + }, + { + "const": "commercial.transport.infrastructure.aqueduct", + "description": "Aqueduct", + "type": "string" + }, + { + "const": "commercial.transport.infrastructure.lock", + "description": "Lock", + "type": "string" + }, + { + "const": "commercial.transport.infrastructure.weighing", + "description": "Weighbridge / Load Gauge", + "type": "string" + }, + { + "const": "commercial.transport.infrastructure.weir", + "description": "Weir", + "type": "string" + }, + { + "const": "commercial.transport.marina", + "description": "Marina", + "type": "string" + }, + { + "const": "commercial.transport.mooring", + "description": "Mooring", + "type": "string" + }, + { + "const": "commercial.transport.overnightLorryPark", + "description": "Overnight Lorry Park", + "type": "string" + }, + { + "const": "commercial.transport.parking", + "description": "Car / Coach / Commercial Vehicle / Taxi Parking / Park And Ride Site", + "type": "string" + }, + { + "const": "commercial.transport.parking.car", + "description": "Public Car Parking", + "type": "string" + }, + { + "const": "commercial.transport.parking.coach", + "description": "Public Coach Parking", + "type": "string" + }, + { + "const": "commercial.transport.parking.commercialVehicle", + "description": "Public Commercial Vehicle Parking", + "type": "string" + }, + { + "const": "commercial.transport.parking.parkAndRide", + "description": "Public Park And Ride", + "type": "string" + }, + { + "const": "commercial.transport.railAsset", + "description": "Railway Asset", + "type": "string" + }, + { + "const": "commercial.transport.storage", + "description": "Vehicle Storage", + "type": "string" + }, + { + "const": "commercial.transport.storage.boat", + "description": "Boat Storage", + "type": "string" + }, + { + "const": "commercial.transport.storage.bus", + "description": "Bus / Coach Depot", + "type": "string" + }, + { + "const": "commercial.transport.terminal", + "description": "Station / Interchange / Terminal / Halt", + "type": "string" + }, + { + "const": "commercial.transport.terminal.train", + "description": "Train station", + "type": "string" + }, + { + "const": "commercial.transport.terminal.bus", + "description": "Bus station", + "type": "string" + }, + { + "const": "commercial.transport.terminal.vehicularRail", + "description": "Vehicular Rail Terminal", + "type": "string" + }, + { + "const": "commercial.transport.track", + "description": "Transport Track / Way", + "type": "string" + }, + { + "const": "commercial.transport.track.cable", + "description": "Chair Lift / Cable Car / Ski Tow", + "type": "string" + }, + { + "const": "commercial.transport.track.cliff", + "description": "Cliff Railway", + "type": "string" + }, + { + "const": "commercial.transport.track.monorail", + "description": "Monorail", + "type": "string" + }, + { + "const": "commercial.utility", + "description": "Utility", + "type": "string" + }, + { + "const": "commercial.utility.dam", + "description": "Dam", + "type": "string" + }, + { + "const": "commercial.utility.electricity", + "description": "Power Station / Energy Production", + "type": "string" + }, + { + "const": "commercial.utility.electricity.distribution", + "description": "Electricity Distribution Facility", + "type": "string" + }, + { + "const": "commercial.utility.electricity.production", + "description": "Electricity Production Facility", + "type": "string" + }, + { + "const": "commercial.utility.electricity.windFarm", + "description": "Wind Farm", + "type": "string" + }, + { + "const": "commercial.utility.electricity.windTurbine", + "description": "Wind Turbine", + "type": "string" + }, + { + "const": "commercial.utility.landfill", + "description": "Landfill", + "type": "string" + }, + { + "const": "commercial.utility.oilGas", + "description": "Gas / Oil Storage / Distribution", + "type": "string" + }, + { + "const": "commercial.utility.oilGas.gasGovernor", + "description": "Gas Governor", + "type": "string" + }, + { + "const": "commercial.utility.oilGas.gasHolder", + "description": "Gas Holder", + "type": "string" + }, + { + "const": "commercial.utility.oilGas.oilTerminal", + "description": "Oil Terminal", + "type": "string" + }, + { + "const": "commercial.utility.other", + "description": "Other Utility Use", + "type": "string" + }, + { + "const": "commercial.utility.other.cableTerminal", + "description": "Cable Terminal Station", + "type": "string" + }, + { + "const": "commercial.utility.other.observatory", + "description": "Observatory", + "type": "string" + }, + { + "const": "commercial.utility.other.radar", + "description": "Radar Station", + "type": "string" + }, + { + "const": "commercial.utility.other.satelliteEarth", + "description": "Satellite Earth Station", + "type": "string" + }, + { + "const": "commercial.utility.publicPhone.box", + "description": "Telephone Box", + "type": "string" + }, + { + "const": "commercial.utility.publicPhone.other", + "description": "Other Public Telephones", + "type": "string" + }, + { + "const": "commercial.utility.SubStation", + "description": "Electricity Sub-Station", + "type": "string" + }, + { + "const": "commercial.utility.telecoms", + "description": "Telecommunication", + "type": "string" + }, + { + "const": "commercial.utility.telecoms.exchange", + "description": "Telephone Exchange", + "type": "string" + }, + { + "const": "commercial.utility.telecoms.mast", + "description": "Telecommunications Mast", + "type": "string" + }, + { + "const": "commercial.utility.wasteManagement", + "description": "Waste Management", + "type": "string" + }, + { + "const": "commercial.utility.water", + "description": "Pump House / Pumping Station / Water Tower", + "type": "string" + }, + { + "const": "commercial.utility.water.pump.control", + "description": "Water Controlling / Pumping", + "type": "string" + }, + { + "const": "commercial.utility.water.pump.distribution", + "description": "Water Distribution / Pumping", + "type": "string" + }, + { + "const": "commercial.utility.water.qualityMonitoring", + "description": "Water Quality Monitoring", + "type": "string" + }, + { + "const": "commercial.utility.water.storage", + "description": "Water Storage", + "type": "string" + }, + { + "const": "commercial.utility.waterTreatment", + "description": "Water / Waste Water / Sewage Treatment Works", + "type": "string" + }, + { + "const": "commercial.utility.waterTreatment.waste", + "description": "Waste Water Treatment", + "type": "string" + }, + { + "const": "commercial.utility.waterTreatment.water", + "description": "Water Treatment", + "type": "string" + }, + { + "const": "commercial.utility.water.waste", + "description": "Waste Water Distribution / Pumping", + "type": "string" + }, + { + "const": "dualUse", + "description": "Dual Use", + "type": "string" + }, + { + "const": "object", + "description": "Object of Interest", + "type": "string" + }, + { + "const": "object.archaeological", + "description": "Archaeological Dig Site", + "type": "string" + }, + { + "const": "object.monument", + "description": "Monument", + "type": "string" + }, + { + "const": "object.monument.memorial", + "description": "Memorial / Market Cross", + "type": "string" + }, + { + "const": "object.monument.other", + "description": "Other Structure", + "type": "string" + }, + { + "const": "object.monument.other.art", + "description": "Permanent Art Display / Sculpture", + "type": "string" + }, + { + "const": "object.monument.other.boundaryStone", + "description": "Boundary Stone", + "type": "string" + }, + { + "const": "object.monument.other.waterFeature", + "description": "Cascade / Fountain", + "type": "string" + }, + { + "const": "object.monument.other.windmill", + "description": "Windmill (Inactive)", + "type": "string" + }, + { + "const": "object.monument.ruin", + "description": "Castle / Historic Ruin", + "type": "string" + }, + { + "const": "object.monument.statue", + "description": "Statue", + "type": "string" + }, + { + "const": "object.monument.vertical", + "description": "Obelisk / Milestone / Standing Stone", + "type": "string" + }, + { + "const": "object.monument.vertical.obelisk", + "description": "Obelisk", + "type": "string" + }, + { + "const": "object.monument.vertical.standingStone", + "description": "Standing Stone", + "type": "string" + }, + { + "const": "object.religious", + "description": "Place Of Worship", + "type": "string" + }, + { + "const": "object.religious.building", + "description": "Religious building", + "type": "string" + }, + { + "const": "object.religious.building.abbey", + "description": "Abbey", + "type": "string" + }, + { + "const": "object.religious.building.cathedral", + "description": "Cathedral", + "type": "string" + }, + { + "const": "object.religious.building.chapel", + "description": "Chapel", + "type": "string" + }, + { + "const": "object.religious.building.church", + "description": "Church", + "type": "string" + }, + { + "const": "object.religious.building.gurdwara", + "description": "Gurdwara", + "type": "string" + }, + { + "const": "object.religious.building.kingdomHall", + "description": "Kingdom Hall", + "type": "string" + }, + { + "const": "object.religious.building.lychGate", + "description": "Lych Gate", + "type": "string" + }, + { + "const": "object.religious.building.minster", + "description": "Minster", + "type": "string" + }, + { + "const": "object.religious.building.mosque", + "description": "Mosque", + "type": "string" + }, + { + "const": "object.religious.building.stupa", + "description": "Stupa", + "type": "string" + }, + { + "const": "object.religious.building.synagogue", + "description": "Synagogue", + "type": "string" + }, + { + "const": "object.religious.building.temple", + "description": "Temple", + "type": "string" + }, + { + "const": "object.statelyHome", + "description": "Stately Home", + "type": "string" + }, + { + "const": "object.underground", + "description": "Underground Feature", + "type": "string" + }, + { + "const": "object.underground.cave", + "description": "Cave", + "type": "string" + }, + { + "const": "object.underground.hole", + "description": "Pothole / Natural Hole", + "type": "string" + }, + { + "const": "object.underground.other", + "description": "Other Underground Feature", + "type": "string" + }, + { + "const": "object.underground.other.cellar", + "description": "Cellar", + "type": "string" + }, + { + "const": "object.underground.other.extraction", + "description": "Disused Mine", + "type": "string" + }, + { + "const": "object.underground.other.extraction.mine", + "description": "Mineral Mining / Inactive", + "type": "string" + }, + { + "const": "object.underground.other.extraction.oilGas", + "description": "Oil And / Gas Extraction/ Inactive", + "type": "string" + }, + { + "const": "object.underground.other.extraction.quarry", + "description": "Mineral Quarrying And / Open Extraction / Inactive", + "type": "string" + }, + { + "const": "object.underground.other.water", + "description": "Well / Spring", + "type": "string" + }, + { + "const": "object.underground.other.water.spring", + "description": "Spring", + "type": "string" + }, + { + "const": "object.underground.other.water.well", + "description": "Well", + "type": "string" + }, + { + "const": "other.agriculture", + "description": "Agricultural Support Objects", + "type": "string" + }, + { + "const": "other.agriculture.currick", + "description": "Currick", + "type": "string" + }, + { + "const": "other.agriculture.fishPen", + "description": "Fish Ladder / Lock / Pen / Trap", + "type": "string" + }, + { + "const": "other.agriculture.livestockPen", + "description": "Livestock Pen / Dip", + "type": "string" + }, + { + "const": "other.agriculture.slurry", + "description": "Slurry Bed / Pit", + "type": "string" + }, + { + "const": "other.coastal", + "description": "Coastal Protection / Flood Prevention", + "type": "string" + }, + { + "const": "other.coastal.floodGate", + "description": "Flood Gate / Flood Sluice Gate / Flood Valve", + "type": "string" + }, + { + "const": "other.coastal.groyne", + "description": "Groyne", + "type": "string" + }, + { + "const": "other.coastal.ripRap", + "description": "Rip-Rap", + "type": "string" + }, + { + "const": "other.coastal.wall", + "description": "Boulder Wall / Sea Wall", + "type": "string" + }, + { + "const": "other.emergency", + "description": "Emergency Support", + "type": "string" + }, + { + "const": "other.emergency.fire", + "description": "Fire Alarm Structure / Fire Observation Tower / Fire Beater Facility", + "type": "string" + }, + { + "const": "other.emergency.firstAid", + "description": "Beach Office / First Aid Facility", + "type": "string" + }, + { + "const": "other.emergency.floatAids", + "description": "LIfe / Belt / Buoy / Float / Jacket / Safety Rope", + "type": "string" + }, + { + "const": "other.emergency.lifeguard", + "description": "Lifeguard Facility", + "type": "string" + }, + { + "const": "other.emergency.telephone", + "description": "Emergency Telephone (Non Motorway)", + "type": "string" + }, + { + "const": "other.emergency.warning", + "description": "Emergency Equipment Point / Emergency Siren / Warning Flag", + "type": "string" + }, + { + "const": "other.historic", + "description": "Historical Site / Object", + "type": "string" + }, + { + "const": "other.historic.structure", + "description": "Historic Structure / Object", + "type": "string" + }, + { + "const": "other.industrial", + "description": "Industrial Support", + "type": "string" + }, + { + "const": "other.industrial.aditIncline", + "description": "Adit / Incline / Level", + "type": "string" + }, + { + "const": "other.industrial.caissonDock", + "description": "Caisson / Dry Dock / Grid", + "type": "string" + }, + { + "const": "other.industrial.channel", + "description": "Channel / Conveyor / Conduit / Pipe", + "type": "string" + }, + { + "const": "other.industrial.chimney", + "description": "Chimney / Flue", + "type": "string" + }, + { + "const": "other.industrial.coolingTower", + "description": "Cooling Tower", + "type": "string" + }, + { + "const": "other.industrial.crane", + "description": "Crane / Hoist / Winch / Material Elevator", + "type": "string" + }, + { + "const": "other.industrial.discharge", + "description": "Grab / Skip / Other Industrial Waste Machinery / Discharging", + "type": "string" + }, + { + "const": "other.industrial.flareStack", + "description": "Flare Stack", + "type": "string" + }, + { + "const": "other.industrial.kiln", + "description": "Kiln / Oven / Smelter", + "type": "string" + }, + { + "const": "other.industrial.manholeShaft", + "description": "Manhole / Shaft", + "type": "string" + }, + { + "const": "other.industrial.overflowSluiceValve", + "description": "Industrial Overflow / Sluice / Valve / Valve Housing", + "type": "string" + }, + { + "const": "other.industrial.pylon.electricity", + "description": "Electricity Distribution Pole / Pylon", + "type": "string" + }, + { + "const": "other.industrial.pylon.telecom", + "description": "Telephone Pole / Post", + "type": "string" + }, + { + "const": "other.industrial.siloTank", + "description": "Hopper / Silo / Cistern / Tank", + "type": "string" + }, + { + "const": "other.industrial.solarPanel", + "description": "Solar Panel / Waterwheel", + "type": "string" + }, + { + "const": "other.leisure", + "description": "Sport / Leisure Support", + "type": "string" + }, + { + "const": "other.leisure.gallop", + "description": "Gallop / Ride", + "type": "string" + }, + { + "const": "other.leisure.hide", + "description": "Butt / Hide", + "type": "string" + }, + { + "const": "other.leisure.modelRailway", + "description": "Miniature Railway", + "type": "string" + }, + { + "const": "other.mail", + "description": "Royal Mail Infrastructure", + "type": "string" + }, + { + "const": "other.mail.additionalAddressee", + "description": "Additional Mail / Packet Addressee", + "type": "string" + }, + { + "const": "other.mail.deliveryBox", + "description": "Postal Delivery Box / Pouch", + "type": "string" + }, + { + "const": "other.mail.POBox", + "description": "PO Box", + "type": "string" + }, + { + "const": "other.mail.postBox", + "description": "Postal Box", + "type": "string" + }, + { + "const": "other.natural", + "description": "Significant Natural Object", + "type": "string" + }, + { + "const": "other.natural.hole", + "description": "Natural Hole (Blow / Shake / Swallow)", + "type": "string" + }, + { + "const": "other.natural.rock", + "description": "Boundary / Significant Rock / Boulder", + "type": "string" + }, + { + "const": "other.natural.tree", + "description": "Boundary / Significant / Historic Tree / Pollard", + "type": "string" + }, + { + "const": "other.navigation.guidePost", + "description": "Guide Post", + "type": "string" + }, + { + "const": "other.navigation.nautical.beacon", + "description": "Nautical Navigation Beacon / Light", + "type": "string" + }, + { + "const": "other.navigation.road", + "description": "Aid To Road Navigation", + "type": "string" + }, + { + "const": "other.ornamental", + "description": "Ornamental / Cultural Object", + "type": "string" + }, + { + "const": "other.ornamental.maze", + "description": "Maze", + "type": "string" + }, + { + "const": "other.ornamental.object", + "description": "Simple Ornamental Object", + "type": "string" + }, + { + "const": "other.ornamental.tomb", + "description": "Mausoleum / Tomb / Grave", + "type": "string" + }, + { + "const": "other.scientific", + "description": "Scientific / Observation Support", + "type": "string" + }, + { + "const": "other.scientific.astronomy", + "description": "Telescope / Observation Infrastructure / Astronomy", + "type": "string" + }, + { + "const": "other.scientific.meteo", + "description": "Meteorological Station / Equipment", + "type": "string" + }, + { + "const": "other.scientific.radarSatellite", + "description": "Radar / Satellite Infrastructure", + "type": "string" + }, + { + "const": "other.streetFurniture", + "description": "Street Furniture", + "type": "string" + }, + { + "const": "other.transport", + "description": "Transport Support", + "type": "string" + }, + { + "const": "other.transport.bridge", + "description": "Footbridge / Walkway", + "type": "string" + }, + { + "const": "other.transport.cattleGridFord", + "description": "Cattle Grid / Ford", + "type": "string" + }, + { + "const": "other.transport.customs", + "description": "Customs Inspection Facility", + "type": "string" + }, + { + "const": "other.transport.goodsTramway", + "description": "Goods Tramway", + "type": "string" + }, + { + "const": "other.transport.layby", + "description": "Lay-By", + "type": "string" + }, + { + "const": "other.transport.mailPickUp", + "description": "Mail Pick Up", + "type": "string" + }, + { + "const": "other.transport.post", + "description": "Pole / Post / Bollard (Restricting Vehicular Access)", + "type": "string" + }, + { + "const": "other.transport.rail.buffer", + "description": "Railway Buffer", + "type": "string" + }, + { + "const": "other.transport.rail.crossing.pedestrian", + "description": "Railway Pedestrian Crossing", + "type": "string" + }, + { + "const": "other.transport.rail.crossing.vehicles", + "description": "Level Crossing", + "type": "string" + }, + { + "const": "other.transport.rail.drag", + "description": "Rail Drag", + "type": "string" + }, + { + "const": "other.transport.rail.infrastructure", + "description": "Rail Infrastructure Services", + "type": "string" + }, + { + "const": "other.transport.rail.lighting", + "description": "Railway Lighting", + "type": "string" + }, + { + "const": "other.transport.rail.marker.km", + "description": "Rail Kilometre Distance Marker", + "type": "string" + }, + { + "const": "other.transport.rail.market.mile", + "description": "Rail Mile Distance Marker", + "type": "string" + }, + { + "const": "other.transport.rail.signals", + "description": "Rail Signalling", + "type": "string" + }, + { + "const": "other.transport.rail.traverse", + "description": "Railway Traverse", + "type": "string" + }, + { + "const": "other.transport.rail.turntable", + "description": "Railway Turntable", + "type": "string" + }, + { + "const": "other.transport.rail.weighbridge", + "description": "Rail Weighbridge", + "type": "string" + }, + { + "const": "other.transport.road.drag", + "description": "Road Drag", + "type": "string" + }, + { + "const": "other.transport.road.infrastructure", + "description": "Road Infrastructure Services", + "type": "string" + }, + { + "const": "other.transport.road.marker.mile", + "description": "Road Mile Distance Marker", + "type": "string" + }, + { + "const": "other.transport.road.market.km", + "description": "Road Kilometre Distance Marker", + "type": "string" + }, + { + "const": "other.transport.road.turntable", + "description": "Road Turntable", + "type": "string" + }, + { + "const": "other.transport.road.vehicleDip", + "description": "Vehicle Dip", + "type": "string" + }, + { + "const": "other.transport.stepsLiftEscalator", + "description": "Elevator / Escalator / Steps", + "type": "string" + }, + { + "const": "other.transport.subway", + "description": "Subway / Underpass", + "type": "string" + }, + { + "const": "other.unsupported", + "description": "Unsupported Site", + "type": "string" + }, + { + "const": "other.unsupported.cycleParking", + "description": "Cycle Parking Facility", + "type": "string" + }, + { + "const": "other.unsupported.picnic", + "description": "Picnic / Barbecue Site", + "type": "string" + }, + { + "const": "other.unsupported.shelter", + "description": "Shelter (Not Including Bus Shelter)", + "type": "string" + }, + { + "const": "other.unsupported.travellingPersons", + "description": "Travelling Persons Site", + "type": "string" + }, + { + "const": "parent.street", + "description": "Street Record", + "type": "string" + }, + { + "const": "residential", + "description": "Residential", + "type": "string" + }, + { + "const": "residential.building", + "description": "Ancillary Building", + "type": "string" + }, + { + "const": "residential.carParkingSpace", + "description": "Car Park Space", + "type": "string" + }, + { + "const": "residential.carParkingSpace.allocated", + "description": "Allocated Parking", + "type": "string" + }, + { + "const": "residential.dwelling", + "description": "Residential dwelling", + "type": "string" + }, + { + "const": "residential.dwelling.boat", + "description": "House Boat", + "type": "string" + }, + { + "const": "residential.dwelling.caravan", + "description": "Caravan", + "type": "string" + }, + { + "const": "residential.dwelling.flat", + "description": "Flat", + "type": "string" + }, + { + "const": "residential.dwelling.holiday", + "description": "Privately Owned Holiday Caravan / Chalet", + "type": "string" + }, + { + "const": "residential.dwelling.house.detached", + "description": "Detached", + "type": "string" + }, + { + "const": "residential.dwelling.house.semiDetached", + "description": "Semi-detached", + "type": "string" + }, + { + "const": "residential.dwelling.house.terrace", + "description": "Terrace", + "type": "string" + }, + { + "const": "residential.dwelling.shelteredAccommodation", + "description": "Sheltered Accommodation", + "type": "string" + }, + { + "const": "residential.garage", + "description": "Garage", + "type": "string" + }, + { + "const": "residential.garage.court", + "description": "Lock-Up Garage / Garage Court", + "type": "string" + }, + { + "const": "residential.HMO", + "description": "House In Multiple Occupation", + "type": "string" + }, + { + "const": "residential.HMO.bedsit", + "description": "HMO Bedsit / Other Non Self Contained Accommodation", + "type": "string" + }, + { + "const": "residential.HMO.parent", + "description": "HMO Parent", + "type": "string" + }, + { + "const": "residential.HMO.undivided", + "description": "HMO Not Further Divided", + "type": "string" + }, + { + "const": "residential.institution", + "description": "Residential Institution", + "type": "string" + }, + { + "const": "residential.institution.care", + "description": "Care / Nursing Home", + "type": "string" + }, + { + "const": "residential.institution.communal", + "description": "Communal Residence", + "type": "string" + }, + { + "const": "residential.institution.education", + "description": "Residential Education", + "type": "string" + }, + { + "const": "residential.institution.noncommercial", + "description": "Non-Commercial Lodgings", + "type": "string" + }, + { + "const": "residential.institution.religious", + "description": "Religious Community", + "type": "string" + }, + { + "const": "unclassified", + "description": "Unclassified", + "type": "string" + }, + { + "const": "unclassified.awaitingclassification", + "description": "Awaiting Classification", + "type": "string" + }, + { + "const": "unclassified.pendingInvestigation", + "description": "Pending Internal Investigation", + "type": "string" + } + ], + "description": "Property types derived from Basic Land and Property Unit (BLPU) classification codes" + }, + "ProposalBase": { + "additionalProperties": false, + "properties": { + "test": { + "type": "string" + } + }, + "required": [ + "test" + ], + "type": "object" + }, + "ProposedAddress": { + "additionalProperties": false, + "description": "Address information for sites without a known Unique Property Reference Number (UPRN)", + "properties": { + "latitude": { + "description": "Latitude coordinate in EPSG:4326 (WGS84)", + "type": "number" + }, + "longitude": { + "description": "Longitude coordinate in EPSG:4326 (WGS84)", + "type": "number" + }, + "source": { + "const": "Proposed by applicant", + "type": "string" + }, + "title": { + "type": "string" + }, + "x": { + "description": "Easting coordinate in British National Grid (OSGB36)", + "type": "number" + }, + "y": { + "description": "Northing coordinate in British National Grid (OSGB36)", + "type": "number" + } + }, + "required": [ + "latitude", + "longitude", + "source", + "title", + "x", + "y" + ], + "type": "object" + }, + "PrototypeFileType": { + "$id": "#FileType", + "anyOf": [ + { + "const": "accessRoadsRightsOfWayDetails", + "description": "Details of impact on access, roads, and rights of way", + "type": "string" + }, + { + "const": "affordableHousingStatement", + "description": "Affordable housing statement", + "type": "string" + }, + { + "const": "arboriculturistReport", + "description": "Arboriculturist report", + "type": "string" + }, + { + "const": "bankStatement", + "description": "Bank statement", + "type": "string" + }, + { + "const": "basementImpactStatement", + "description": "Basement impact statement", + "type": "string" + }, + { + "const": "bioaerosolAssessment", + "description": "Bio-aerosol assessment", + "type": "string" + }, + { + "const": "birdstrikeRiskManagementPlan", + "description": "Birdstrike risk management plan", + "type": "string" + }, + { + "const": "boreholeOrTrialPitAnalysis", + "description": "Borehole or trial pit analysis", + "type": "string" + }, + { + "const": "buildingControlCertificate", + "description": "Building control certificate", + "type": "string" + }, + { + "const": "conditionSurvey", + "description": "Structural or building condition survey", + "type": "string" + }, + { + "const": "constructionInvoice", + "description": "Construction invoice", + "type": "string" + }, + { + "const": "contaminationReport", + "description": "Contamination report", + "type": "string" + }, + { + "const": "councilTaxBill", + "description": "Council tax bill", + "type": "string" + }, + { + "const": "crimePreventionStrategy", + "description": "Crime prevention strategy", + "type": "string" + }, + { + "const": "designAndAccessStatement", + "description": "Design and Access Statement", + "type": "string" + }, + { + "const": "disabilityExemptionEvidence", + "description": "Evidence for application fee exemption - disability", + "type": "string" + }, + { + "const": "ecologyReport", + "description": "Ecology report", + "type": "string" + }, + { + "const": "elevations.existing", + "description": "Elevations - existing", + "type": "string" + }, + { + "const": "elevations.proposed", + "description": "Elevations - proposed", + "type": "string" + }, + { + "const": "emissionsMitigationAndMonitoringScheme", + "description": "Scheme for mitigation and monitoring of emissions (dust, odour and vibrations)", + "type": "string" + }, + { + "const": "energyStatement", + "description": "Energy statement", + "type": "string" + }, + { + "const": "environmentalImpactAssessment", + "description": "Environmental Impact Assessment (EIA)", + "type": "string" + }, + { + "const": "externalMaterialsDetails", + "description": "External materials details", + "type": "string" + }, + { + "const": "fireSafetyReport", + "description": "Fire safety report", + "type": "string" + }, + { + "const": "floodRiskAssessment", + "description": "Flood risk assessment (FRA)", + "type": "string" + }, + { + "const": "floorPlan.existing", + "description": "Floor plan - existing", + "type": "string" + }, + { + "const": "floorPlan.proposed", + "description": "Floor plan - proposed", + "type": "string" + }, + { + "const": "foulDrainageAssessment", + "description": "Foul drainage assessment", + "type": "string" + }, + { + "const": "geodiversityAssessment", + "description": "Geodiversity assessment", + "type": "string" + }, + { + "const": "hedgerowsInformation", + "description": "Plans showing the stretches of hedgerows to be removed", + "type": "string" + }, + { + "const": "hedgerowsInformation.plantingDate", + "description": "Evidence of the date of planting of the removed hedgerows", + "type": "string" + }, + { + "const": "heritageStatement", + "description": "Heritage Statement", + "type": "string" + }, + { + "const": "hydrologicalAssessment", + "description": "Hydrological and hydrogeological assessment", + "type": "string" + }, + { + "const": "hydrologyReport", + "description": "Hydrology report", + "type": "string" + }, + { + "const": "internalElevations", + "description": "Internal elevations", + "type": "string" + }, + { + "const": "internalSections", + "description": "Internal sections", + "type": "string" + }, + { + "const": "joinersReport", + "description": "Joiner's report", + "type": "string" + }, + { + "const": "joinerySections", + "description": "Joinery section report", + "type": "string" + }, + { + "const": "landContaminationAssessment", + "description": "Land contamination assessment", + "type": "string" + }, + { + "const": "landscapeAndVisualImpactAssessment", + "description": "Landscape and visual impact assessment (LVIA)", + "type": "string" + }, + { + "const": "landscapeStrategy", + "description": "Landscape strategy or landscape plan", + "type": "string" + }, + { + "const": "lightingAssessment", + "description": "Lighting assessment", + "type": "string" + }, + { + "const": "litterVerminAndBirdControlDetails", + "description": "Details of litter, vermin and bird control", + "type": "string" + }, + { + "const": "locationPlan", + "description": "Location plan", + "type": "string" + }, + { + "const": "methodStatement", + "description": "Method statement", + "type": "string" + }, + { + "const": "mineralsAndWasteAssessment", + "description": "Minerals and waste assessment", + "type": "string" + }, + { + "const": "necessaryInformation", + "description": "Information the authority considers necessary for the application", + "type": "string" + }, + { + "const": "newDwellingsSchedule", + "description": "New dwellings schedule", + "type": "string" + }, + { + "const": "noiseAssessment", + "description": "Noise assessment", + "type": "string" + }, + { + "const": "openSpaceAssessment", + "description": "Open space assessment", + "type": "string" + }, + { + "const": "otherDocument", + "description": "Other - document", + "type": "string" + }, + { + "const": "otherDrawing", + "description": "Other - drawing", + "type": "string" + }, + { + "const": "otherEvidence", + "description": "Other - evidence or correspondence", + "type": "string" + }, + { + "const": "parkingPlan", + "description": "Parking plan", + "type": "string" + }, + { + "const": "photographs.existing", + "description": "Photographs - existing", + "type": "string" + }, + { + "const": "photographs.proposed", + "description": "Photographs - proposed", + "type": "string" + }, + { + "const": "planningStatement", + "description": "Planning statement", + "type": "string" + }, + { + "const": "recycleWasteStorageDetails", + "description": "Recyclable waste storage details", "type": "string" - } - }, - "required": [ - "ppSpecificProperty", - "somethingShared" - ], - "type": "object" - }, - "PPApplicationType": { - "anyOf": [ + }, { - "const": "pp", - "description": "Planning Permission", + "const": "relevantInformation", + "description": "Information the applicant considers relevant to the application", "type": "string" }, { - "const": "pp.full", - "description": "Planning Permission for development, including all householder, minor, and major applications", + "const": "residentialUnitsDetails", + "description": "Residential units details", "type": "string" }, { - "const": "pp.full.advertConsent", - "description": "Full Planning Permission and consent to display an advert", + "const": "roofPlan.existing", + "description": "Roof plan - existing", "type": "string" }, { - "const": "pp.full.demolition", - "description": "Full Planning Permission including demolition in a Conservation Area", + "const": "roofPlan.proposed", + "description": "Roof plan - proposed", "type": "string" }, { - "const": "pp.full.fastTrack.affordable", - "description": "Full Planning Permission - Fast track for the purposes of Affordable Housing", + "const": "sections.existing", + "description": "Sections - existing", "type": "string" }, { - "const": "pp.full.householder", - "description": "Planning Permission - Full householder", + "const": "sections.proposed", + "description": "Sections - proposed", "type": "string" }, { - "const": "pp.full.householder.listed", - "description": "Planning Permission - Full householder with consent to do works to a Listed Building", + "const": "sitePlan.existing", + "description": "Site plan - existing", "type": "string" }, { - "const": "pp.full.householder.retro", - "description": "Planning Permission - Full householder retrospective", + "const": "sitePlan.proposed", + "description": "Site plan - proposed", "type": "string" }, { - "const": "pp.full.major", - "description": "Planning Permission - Major application", + "const": "sketchPlan", + "description": "Sketch plan", "type": "string" }, { - "const": "pp.full.major.technicalDetails", - "description": "Planning Permission - Technical details consent for major development", + "const": "statementOfCommunityInvolvement", + "description": "Statement of community involvement", "type": "string" }, { - "const": "pp.full.major.technicalDetails.waste", - "description": "Planning Permission - Technical details consent for waste development", + "const": "statutoryDeclaration", + "description": "Statutory declaration", "type": "string" }, { - "const": "pp.full.major.waste", - "description": "Planning Permission - Full planning permission for waste development", + "const": "storageTreatmentAndWasteDisposalDetails", + "description": "Details of storage treatment or disposal of waste", "type": "string" }, { - "const": "pp.full.minor", - "description": "Planning Permission - Minor application", + "const": "streetScene", + "description": "Street scene drawing", "type": "string" }, { - "const": "pp.full.minor.listed", - "description": "Planning Permission - Minor application and consent to do works to a Listed Building", + "const": "subsidenceReport", + "description": "Subsidence report", "type": "string" }, { - "const": "pp.full.minor.technicalDetails", - "description": "Planning Permission - Technical details consent for minor development", + "const": "sunlightAndDaylightReport", + "description": "Sunlight and daylight report", "type": "string" }, { - "const": "pp.mineralExtraction", - "description": "Planning Permission - Consent to extract minerals and related development, such as temporary buildings and roads", + "const": "sustainabilityStatement", + "description": "Sustainability statement", "type": "string" }, { - "const": "pp.outline", - "description": "Planning permission - Outline for proposed development", + "const": "technicalEvidence", + "description": "Technical evidence", "type": "string" }, { - "const": "pp.outline.all", - "description": "Outline Planning Permission - Consent for the principle of a project witholding all details", + "const": "technicalSpecification", + "description": "Technical specification", "type": "string" }, { - "const": "pp.outline.some", - "description": "Outline Planning Permission - Consent for the principle of a project specifying some details", + "const": "tenancyAgreement", + "description": "Tenancy agreement", "type": "string" }, { - "const": "pp.outline.minor", - "description": "Planning permission - Outline for proposed development (minor)", + "const": "tenancyInvoice", + "description": "Tenancy invoice", "type": "string" }, { - "const": "pp.outline.minor.all", - "description": "Outline Planning Permission - Consent for the principle of a project witholding all details (minor)", + "const": "townCentreImpactAssessment", + "description": "Town centre uses - Impact assessment", "type": "string" }, { - "const": "pp.outline.minor.some", - "description": "Outline Planning Permission - Consent for the principle of a project specifying some details (minor)", + "const": "townCentreSequentialAssessment", + "description": "Town centre uses - Sequential assessment", "type": "string" }, { - "const": "pp.outline.major", - "description": "Planning permission - Outline for proposed development (major)", + "const": "transportAssessment", + "description": "Transport assessment", "type": "string" }, { - "const": "pp.outline.major.all", - "description": "Outline Planning Permission - Consent for the principle of a project witholding all details (major)", + "const": "travelPlan", + "description": "Travel plan", "type": "string" }, { - "const": "pp.outline.major.all.waste", - "description": "Outline Planning Permission - Consent for the principle of waste development witholding all details", + "const": "treeAndHedgeLocation", + "description": "Location of trees and hedges", "type": "string" }, { - "const": "pp.outline.major.some", - "description": "Outline Planning Permission - Consent for the principle of a project specifying some details (major)", + "const": "treeAndHedgeRemovedOrPruned", + "description": "Removed or pruned trees and hedges", "type": "string" }, { - "const": "pp.outline.major.some.waste", - "description": "Outline Planning Permission - Consent for the principle of waste development witholding all details", + "const": "treeCanopyCalculator", + "description": "Tree canopy calculator", "type": "string" }, { - "const": "pp.pip", - "description": "Planning Permission in Principle - Consent for the principle of a project with less than 1000 square metres floor area on a site of less than 1 hectare", + "const": "treeConditionReport", + "description": "Tree condition report", + "type": "string" + }, + { + "const": "treePlan", + "description": "Tree plan", + "type": "string" + }, + { + "const": "treesReport", + "description": "Trees report", + "type": "string" + }, + { + "const": "unitPlan.existing", + "description": "Unit plan - existing", + "type": "string" + }, + { + "const": "unitPlan.proposed", + "description": "Unit plan - proposed", + "type": "string" + }, + { + "const": "usePlan.existing", + "description": "Use plan - existing", + "type": "string" + }, + { + "const": "usePlan.proposed", + "description": "Use plan - proposed", + "type": "string" + }, + { + "const": "utilityBill", + "description": "Utility bill", + "type": "string" + }, + { + "const": "utilitiesStatement", + "description": "Utilities statement", + "type": "string" + }, + { + "const": "ventilationStatement", + "description": "Ventilation or extraction statement", + "type": "string" + }, + { + "const": "viabilityAppraisal", + "description": "Viability Appraisal", + "type": "string" + }, + { + "const": "visualisations", + "description": "Visualisations", + "type": "string" + }, + { + "const": "wasteAndRecyclingStrategy", + "description": "Waste and recycling strategy", + "type": "string" + }, + { + "const": "wasteStorageDetails", + "description": "Waste storage details", + "type": "string" + }, + { + "const": "waterEnvironmentAssessment", + "description": "Water environment assessment", "type": "string" } - ] + ], + "description": "Types of planning documents and drawings" }, - "PropertyBase": { + "QuestionAndResponses": { "additionalProperties": false, "properties": { - "test": { + "metadata": { + "$ref": "#/definitions/QuestionMetaData" + }, + "question": { + "type": "string" + }, + "responses": { + "anyOf": [ + { + "items": { + "$ref": "#/definitions/Response" + }, + "type": "array" + }, + { + "type": "string" + } + ] + } + }, + "required": [ + "question", + "responses" + ], + "type": "object" + }, + "QuestionMetaData": { + "additionalProperties": false, + "properties": { + "autoAnswered": { + "type": "boolean" + }, + "policyRefs": { + "items": { + "additionalProperties": false, + "properties": { + "text": { + "type": "string" + }, + "url": { + "$ref": "#/definitions/URL" + } + }, + "required": [ + "text" + ], + "type": "object" + }, + "type": "array" + }, + "sectionName": { "type": "string" } }, + "type": "object" + }, + "RequestedFiles": { + "$id": "#RequestedFiles", + "additionalProperties": false, + "description": "File types requested by this service. Schema[\"files\"] will be a subset of this list based on the user's journey through the service", + "properties": { + "optional": { + "items": { + "$ref": "#/definitions/FileType" + }, + "type": "array" + }, + "recommended": { + "items": { + "$ref": "#/definitions/FileType" + }, + "type": "array" + }, + "required": { + "items": { + "$ref": "#/definitions/FileType" + }, + "type": "array" + } + }, "required": [ - "test" + "required", + "recommended", + "optional" ], "type": "object" }, - "ProposalBase": { + "Response": { "additionalProperties": false, "properties": { - "test": { + "metadata": { + "$ref": "#/definitions/ResponseMetaData" + }, + "value": { "type": "string" } }, "required": [ - "test" + "value" ], "type": "object" }, + "ResponseMetaData": { + "additionalProperties": false, + "properties": { + "flags": { + "items": { + "type": "string" + }, + "type": "array" + }, + "options": { + "anyOf": [ + { + "items": { + "type": "string" + }, + "type": "array" + }, + { + "items": { + "$ref": "#/definitions/Response" + }, + "type": "array" + } + ] + } + }, + "type": "object" + }, + "Responses": { + "$id": "#Responses", + "description": "The ordered list of questions, answers, and their metadata for the application", + "items": { + "$ref": "#/definitions/QuestionAndResponses" + }, + "type": "array" + }, "SiteContact": { "anyOf": [ { @@ -1825,6 +8106,129 @@ ], "type": "object" }, + "UKProperty": { + "$id": "#UKProperty", + "additionalProperties": false, + "description": "Property details for sites anywhere in the UK", + "properties": { + "address": { + "anyOf": [ + { + "$ref": "#/definitions/ProposedAddress" + }, + { + "$ref": "#/definitions/OSAddress" + } + ] + }, + "boundary": { + "$ref": "#/definitions/GeoBoundary", + "description": "HM Land Registry Index polygon for this property, commonly referred to as the blue-line or title boundary, sourced from planning.data.gov.uk/dataset/title-boundary" + }, + "localAuthorityDistrict": { + "description": "Current and historic UK Local Authority Districts that contain this address sourced from planning.data.gov.uk/dataset/local-authority-district", + "items": { + "type": "string" + }, + "type": "array" + }, + "planning": { + "additionalProperties": false, + "description": "Planning constraints and policies that intersect with this site and may impact or restrict development", + "properties": { + "conditions": { + "items": { + "$ref": "#/definitions/PlanningConstraint" + }, + "type": "array" + }, + "designations": { + "items": { + "$ref": "#/definitions/PlanningDesignation" + }, + "type": "array" + }, + "guidance": { + "items": { + "$ref": "#/definitions/PlanningConstraint" + }, + "type": "array" + }, + "plans": { + "additionalProperties": false, + "properties": { + "local": { + "items": { + "$ref": "#/definitions/PlanningConstraint" + }, + "type": "array" + }, + "neighbourhood": { + "items": { + "$ref": "#/definitions/PlanningConstraint" + }, + "type": "array" + } + }, + "required": [ + "local", + "neighbourhood" + ], + "type": "object" + }, + "sources": { + "description": "A list of open data requests or websites that explain how these constraints were sourced", + "items": { + "$ref": "#/definitions/URL" + }, + "type": "array" + } + }, + "required": [ + "sources" + ], + "type": "object" + }, + "region": { + "$ref": "#/definitions/UKRegion" + }, + "type": { + "$ref": "#/definitions/PropertyType" + } + }, + "required": [ + "address", + "region", + "localAuthorityDistrict", + "type" + ], + "type": "object" + }, + "UKRegion": { + "$id": "#UKRegion", + "description": "The UK region that contains this address sourced from planning.data.gov.uk/dataset/region, where London is a proxy for the Greater London Authority (GLA) area", + "enum": [ + "North East", + "North West", + "Yorkshire and The Humber", + "East Midlands", + "West Midlands", + "East of England", + "London", + "South East", + "South West" + ], + "type": "string" + }, + "URL": { + "format": "uri", + "pattern": "^https?://", + "type": "string" + }, + "UUID": { + "format": "uuid", + "type": "string" + }, "UserAddress": { "additionalProperties": false, "properties": { diff --git a/types/schemas/application/index.ts b/types/schemas/application/index.ts index 8c34115b..10943186 100644 --- a/types/schemas/application/index.ts +++ b/types/schemas/application/index.ts @@ -1,7 +1,7 @@ import {File} from './File'; -import {Metadata} from './Metadata'; +import {Metadata} from '../../shared/Metadata'; import {PreAssessment} from './PreAssessment'; -import {Responses} from './Responses'; +import {Responses} from '../../shared/Responses'; import {Applicant} from './data/Applicant'; import {ApplicationData} from './data/ApplicationData'; import {FilesAsData} from './data/Files'; diff --git a/types/schemas/prototypeApplication/File.ts b/types/schemas/prototypeApplication/File.ts new file mode 100644 index 00000000..4178fe0d --- /dev/null +++ b/types/schemas/prototypeApplication/File.ts @@ -0,0 +1,11 @@ +import {PrototypeFileType as FileType} from './enums/FileType'; + +/** + * @id #File + * @description File uploaded and labeled by the user to support the application + */ +export interface File { + name: string; + type: FileType[]; + description?: string; +} diff --git a/types/schemas/prototypeApplication/PreAssessment.ts b/types/schemas/prototypeApplication/PreAssessment.ts new file mode 100644 index 00000000..91176acd --- /dev/null +++ b/types/schemas/prototypeApplication/PreAssessment.ts @@ -0,0 +1,5 @@ +/** + * @id #PreAssessment + * @description The result of the application based on information provided by the applicant, prior to assessment by a planning officer. Results are determined by flags corresponding to responses; each application can have up to one result per flagset + */ +export type PreAssessment = {value: string; description: string}[]; // @todo validate/restrict array to one result per flagset diff --git a/types/schemas/prototypeApplication/data/Applicant.ts b/types/schemas/prototypeApplication/data/Applicant.ts index adc6a123..e7675488 100644 --- a/types/schemas/prototypeApplication/data/Applicant.ts +++ b/types/schemas/prototypeApplication/data/Applicant.ts @@ -101,10 +101,12 @@ export type LDCApplicant = ApplicantBase & { /** * @description Information about the propery owners, if different than the applicant */ - ownership: { - interest: OwnershipInterest; - owners: (OwnersNoticeGiven | OwnersNoNoticeGiven)[]; - }; + ownership: + | {interest: Extract} + | { + interest: OwnershipInterest; // `Exclude` ? But I think you can be co owner & report other owners? + owners: (OwnersNoticeGiven | OwnersNoNoticeGiven)[]; + }; }; export type PPApplicant = ApplicantBase & { diff --git a/types/schemas/prototypeApplication/data/Property.ts b/types/schemas/prototypeApplication/data/Property.ts index c2461ed7..c8460782 100644 --- a/types/schemas/prototypeApplication/data/Property.ts +++ b/types/schemas/prototypeApplication/data/Property.ts @@ -1,3 +1,134 @@ -export interface PropertyBase { - test: string; +import {URL} from '../../../shared/utils'; +import {GeoBoundary} from '../../application/data/shared'; +import { + PlanningConstraint, + PlanningDesignation, +} from '../enums/PlanningDesignation'; +import {PropertyType} from '../enums/PropertyTypes'; + +export type PropertyBase = UKProperty | LondonProperty; + +/** + * @id #UKRegion + * @description The UK region that contains this address sourced from planning.data.gov.uk/dataset/region, where London is a proxy for the Greater London Authority (GLA) area + */ +export type UKRegion = + | 'North East' + | 'North West' + | 'Yorkshire and The Humber' + | 'East Midlands' + | 'West Midlands' + | 'East of England' + | 'London' + | 'South East' + | 'South West'; + +/** + * @id #UKProperty + * @description Property details for sites anywhere in the UK + */ +export interface UKProperty { + address: ProposedAddress | OSAddress; + region: UKRegion; + /** + * @description Current and historic UK Local Authority Districts that contain this address sourced from planning.data.gov.uk/dataset/local-authority-district + */ + localAuthorityDistrict: string[]; + type: PropertyType; + /** + * @description HM Land Registry Index polygon for this property, commonly referred to as the blue-line or title boundary, sourced from planning.data.gov.uk/dataset/title-boundary + */ + boundary?: GeoBoundary; + /** + * @description Planning constraints and policies that intersect with this site and may impact or restrict development + */ + planning?: { + /** + * @description A list of open data requests or websites that explain how these constraints were sourced + */ + sources: URL[]; + designations?: PlanningDesignation[]; + conditions?: PlanningConstraint[]; + guidance?: PlanningConstraint[]; + plans?: { + local: PlanningConstraint[]; + neighbourhood: PlanningConstraint[]; + }; + }; +} + +/** + * @id #LondonProperty + * @description Property details for sites within the Greater London Authority (GLA) area + */ +export interface LondonProperty extends UKProperty { + region: Extract; + titleNumber?: { + known: 'Yes' | 'No'; + number?: string; + }; + /** + * @title Energy Performance Certificate + */ + EPC?: { + known: + | 'Yes' + | 'Yes, but only some of the properties have one' + | 'The property does not have one' + | 'No'; + number?: string; + }; +} + +/** + * @description Address information available for any site, whether existing or proposed + */ +export interface SiteAddress { + title: string; + /** + * @description Easting coordinate in British National Grid (OSGB36) + */ + x: number; + /** + * @description Northing coordinate in British National Grid (OSGB36) + */ + y: number; + /** + * @description Latitude coordinate in EPSG:4326 (WGS84) + */ + latitude: number; + /** + * @description Longitude coordinate in EPSG:4326 (WGS84) + */ + longitude: number; +} + +/** + * @description Address information for sites without a known Unique Property Reference Number (UPRN) + */ +export interface ProposedAddress extends SiteAddress { + source: 'Proposed by applicant'; +} + +/** + * @description Address information for sites with a known address sourced from Ordnance Survey AddressBase Premium (LPI) + */ +export interface OSAddress extends SiteAddress { + /** + * @title Unique Property Reference Number + * @maxLength 12 + */ + uprn: string; + /** + * @title Unique Street Reference Number + * @maxLength 8 + */ + usrn: string; + pao: string; + street: string; + town: string; + postcode: string; + organisation?: string; + singleLine: string; + source: 'Ordnance Survey'; } diff --git a/types/schemas/prototypeApplication/enums/FileType.ts b/types/schemas/prototypeApplication/enums/FileType.ts index 542eb7ba..65864fc4 100644 --- a/types/schemas/prototypeApplication/enums/FileType.ts +++ b/types/schemas/prototypeApplication/enums/FileType.ts @@ -500,11 +500,12 @@ type WasteStorageDetails = 'wasteStorageDetails'; */ type WaterEnvironmentAssessment = 'waterEnvironmentAssessment'; +// @todo rename exported type when PrototypeApplication replaces Application /** * @id #FileType * @description Types of planning documents and drawings */ -export type FileType = +export type PrototypeFileType = | AccessRoadsRightsOfWayDetails | AffordableHousingStatement | ArboriculturistReport diff --git a/types/schemas/prototypeApplication/enums/PlanningDesignation.ts b/types/schemas/prototypeApplication/enums/PlanningDesignation.ts index 3ab486b1..4d22af9a 100644 --- a/types/schemas/prototypeApplication/enums/PlanningDesignation.ts +++ b/types/schemas/prototypeApplication/enums/PlanningDesignation.ts @@ -174,7 +174,7 @@ type BasePlanningDesignation = */ type NonIntersectingPlanningDesignation = { intersects: false; -} & BasePlanningDesignation; +} & {designation: BasePlanningDesignation}; /** * @description A planning designation that does intersect with the proposed site, per the DE-9IM spatial relationship definition of intersects @@ -182,7 +182,7 @@ type NonIntersectingPlanningDesignation = { type IntersectingPlanningDesignation = { intersects: true; entities?: Entity[]; -} & BasePlanningDesignation; +} & {designation: BasePlanningDesignation}; /** * @id #PlanningDesignation @@ -191,3 +191,30 @@ type IntersectingPlanningDesignation = { export type PlanningDesignation = | NonIntersectingPlanningDesignation | IntersectingPlanningDesignation; + +type BasePlanningConstraint = { + constraint: string; +}; + +/** + * @description A planning constraint that does not intersect with the proposed site, per the DE-9IM spatial relationship definition of intersects + */ +type NonIntersectingPlanningConstraint = { + intersects: false; +} & BasePlanningConstraint; + +/** + * @description A planning constraint that does intersect with the proposed site, per the DE-9IM spatial relationship definition of intersects + */ +type IntersectingPlanningConstraint = { + intersects: true; + entities: Entity[]; +} & BasePlanningConstraint; + +/** + * @id #PlanningConstraint + * @description Planning constraints that intersect with the proposed site + */ +export type PlanningConstraint = + | NonIntersectingPlanningConstraint + | IntersectingPlanningConstraint; diff --git a/types/schemas/prototypeApplication/index.ts b/types/schemas/prototypeApplication/index.ts index 569b458e..dd8eb1e9 100644 --- a/types/schemas/prototypeApplication/index.ts +++ b/types/schemas/prototypeApplication/index.ts @@ -1,3 +1,5 @@ +import {Metadata} from '../../shared/Metadata'; +import {Responses} from '../../shared/Responses'; import {Applicant} from './data/Applicant'; import {ApplicationData} from './data/ApplicationData'; import {PropertyBase} from './data/Property'; @@ -10,6 +12,8 @@ import { PPApplicationType, PrimaryApplicationType, } from './enums/ApplicationType'; +import {File} from './File'; +import {PreAssessment} from './PreAssessment'; /** * @internal @@ -29,6 +33,10 @@ interface ApplicationSpecification< property: PropertyBase; proposal: ProposalBase; }; + preAssessment?: PreAssessment; + responses: Responses; + files: File[]; + metadata: Metadata; } export type LDC = ApplicationSpecification<'ldc', LDCApplicationType>; diff --git a/types/schemas/application/Metadata.ts b/types/shared/Metadata.ts similarity index 96% rename from types/schemas/application/Metadata.ts rename to types/shared/Metadata.ts index 3ec1840a..abf7e7ba 100644 --- a/types/schemas/application/Metadata.ts +++ b/types/shared/Metadata.ts @@ -1,6 +1,6 @@ -import {FileType} from './enums/FileTypes'; -import {DateTime, URL, UUID} from '../../shared/utils'; +import {FileType} from '../schemas/application/enums/FileTypes'; import {QuestionMetaData} from './Responses'; +import {DateTime, URL, UUID} from './utils'; /** * @id #DigitalPlanningMetadata diff --git a/types/schemas/application/Responses.ts b/types/shared/Responses.ts similarity index 94% rename from types/schemas/application/Responses.ts rename to types/shared/Responses.ts index d155ce9a..5829157c 100644 --- a/types/schemas/application/Responses.ts +++ b/types/shared/Responses.ts @@ -1,4 +1,4 @@ -import {URL} from '../../shared/utils'; +import {URL} from './utils'; /** * @id #Responses From fee54dabcd39eb847a662709aa2575d74bb1708a Mon Sep 17 00:00:00 2001 From: Jessica McInchak Date: Tue, 17 Sep 2024 20:51:09 +0200 Subject: [PATCH 04/13] add back application data types --- .../data/landDrainageConsent.ts | 0 .../lawfulDevelopmentCertificate/existing.ts | 63 +- .../lawfulDevelopmentCertificate/proposed.ts | 36 +- .../data/listedBuildingConsent.ts | 0 .../planningPermission/fullHouseholder.ts | 0 .../fullHouseholderInConservationArea.ts | 0 .../data/planningPermission/major.ts | 0 .../data/planningPermission/minor.ts | 0 .../data/priorApproval/buildHomes.ts | 0 .../priorApproval/convertCommercialToHome.ts | 0 .../data/priorApproval/extendUniversity.ts | 0 .../data/priorApproval/largerExtension.ts | 0 .../data/priorApproval/solarPanels.ts | 0 .../existing.json | 63 +- schemas/prototypeApplication.json | 691 ++++++++++++++++-- .../data/ApplicationData.ts | 199 ++++- .../enums/PlanningDesignation.ts | 4 +- types/schemas/prototypeApplication/index.ts | 6 +- 18 files changed, 921 insertions(+), 141 deletions(-) create mode 100644 examples/prototypeApplication/data/landDrainageConsent.ts create mode 100644 examples/prototypeApplication/data/listedBuildingConsent.ts create mode 100644 examples/prototypeApplication/data/planningPermission/fullHouseholder.ts create mode 100644 examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts create mode 100644 examples/prototypeApplication/data/planningPermission/major.ts create mode 100644 examples/prototypeApplication/data/planningPermission/minor.ts create mode 100644 examples/prototypeApplication/data/priorApproval/buildHomes.ts create mode 100644 examples/prototypeApplication/data/priorApproval/convertCommercialToHome.ts create mode 100644 examples/prototypeApplication/data/priorApproval/extendUniversity.ts create mode 100644 examples/prototypeApplication/data/priorApproval/largerExtension.ts create mode 100644 examples/prototypeApplication/data/priorApproval/solarPanels.ts diff --git a/examples/prototypeApplication/data/landDrainageConsent.ts b/examples/prototypeApplication/data/landDrainageConsent.ts new file mode 100644 index 00000000..e69de29b diff --git a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts index 641e4e85..438865d9 100644 --- a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts +++ b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts @@ -7,8 +7,31 @@ export const lawfulDevelopmentCertificateExistingPrototype: PrototypeApplication applicationType: 'ldc.existing', data: { application: { - somethingShared: 'test', - ldcSpecificProperty: 1, + fee: { + calculated: 258, + payable: 258, + category: { + sixAndSeven: 258, + }, + exemption: { + disability: false, + resubmission: false, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + reference: { + govPay: 'sandbox-ref-123', + }, + }, + declaration: { + accurate: true, + connection: { + value: 'none', + }, + }, }, user: { role: 'agent', @@ -137,7 +160,7 @@ export const lawfulDevelopmentCertificateExistingPrototype: PrototypeApplication ], designations: [ { - designation: 'article4', + value: 'article4', intersects: true, entities: [ { @@ -152,55 +175,55 @@ export const lawfulDevelopmentCertificateExistingPrototype: PrototypeApplication ], }, { - designation: 'article4.caz', + value: 'article4.caz', intersects: false, }, { - designation: 'tpo', + value: 'tpo', intersects: false, }, { - designation: 'listed', + value: 'listed', intersects: false, }, { - designation: 'monument', + value: 'monument', intersects: false, }, { - designation: 'designated', + value: 'designated', intersects: true, }, { - designation: 'nature.SAC', + value: 'nature.SAC', intersects: false, }, { - designation: 'nature.ASNW', + value: 'nature.ASNW', intersects: false, }, { - designation: 'nature.SSSI', + value: 'nature.SSSI', intersects: false, }, { - designation: 'locallyListed', + value: 'locallyListed', intersects: false, }, { - designation: 'nature.SPA', + value: 'nature.SPA', intersects: false, }, { - designation: 'designated.WHS', + value: 'designated.WHS', intersects: false, }, { - designation: 'registeredPark', + value: 'registeredPark', intersects: false, }, { - designation: 'designated.AONB', + value: 'designated.AONB', intersects: true, entities: [ { @@ -213,19 +236,19 @@ export const lawfulDevelopmentCertificateExistingPrototype: PrototypeApplication ], }, { - designation: 'designated.nationalPark', + value: 'designated.nationalPark', intersects: false, }, { - designation: 'designated.conservationArea', + value: 'designated.conservationArea', intersects: false, }, { - designation: 'designated.nationalPark.broads', + value: 'designated.nationalPark.broads', intersects: false, }, { - designation: 'road.classified', + value: 'road.classified', intersects: false, }, ], diff --git a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts index d9712ecf..04c8af61 100644 --- a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts +++ b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts @@ -84,75 +84,75 @@ export const lawfulDevelopmentCertificateProposedPrototype: PrototypeApplication ], designations: [ { - designation: 'article4', + value: 'article4', intersects: false, }, { - designation: 'article4.caz', + value: 'article4.caz', intersects: false, }, { - designation: 'tpo', + value: 'tpo', intersects: false, }, { - designation: 'listed', + value: 'listed', intersects: false, }, { - designation: 'monument', + value: 'monument', intersects: false, }, { - designation: 'designated', + value: 'designated', intersects: false, }, { - designation: 'nature.SAC', + value: 'nature.SAC', intersects: false, }, { - designation: 'nature.ASNW', + value: 'nature.ASNW', intersects: false, }, { - designation: 'nature.SSSI', + value: 'nature.SSSI', intersects: false, }, { - designation: 'locallyListed', + value: 'locallyListed', intersects: false, }, { - designation: 'nature.SPA', + value: 'nature.SPA', intersects: false, }, { - designation: 'designated.WHS', + value: 'designated.WHS', intersects: false, }, { - designation: 'registeredPark', + value: 'registeredPark', intersects: false, }, { - designation: 'designated.AONB', + value: 'designated.AONB', intersects: false, }, { - designation: 'designated.nationalPark', + value: 'designated.nationalPark', intersects: false, }, { - designation: 'designated.conservationArea', + value: 'designated.conservationArea', intersects: false, }, { - designation: 'designated.nationalPark.broads', + value: 'designated.nationalPark.broads', intersects: false, }, { - designation: 'road.classified', + value: 'road.classified', intersects: false, }, ], diff --git a/examples/prototypeApplication/data/listedBuildingConsent.ts b/examples/prototypeApplication/data/listedBuildingConsent.ts new file mode 100644 index 00000000..e69de29b diff --git a/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts b/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts new file mode 100644 index 00000000..e69de29b diff --git a/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts b/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts new file mode 100644 index 00000000..e69de29b diff --git a/examples/prototypeApplication/data/planningPermission/major.ts b/examples/prototypeApplication/data/planningPermission/major.ts new file mode 100644 index 00000000..e69de29b diff --git a/examples/prototypeApplication/data/planningPermission/minor.ts b/examples/prototypeApplication/data/planningPermission/minor.ts new file mode 100644 index 00000000..e69de29b diff --git a/examples/prototypeApplication/data/priorApproval/buildHomes.ts b/examples/prototypeApplication/data/priorApproval/buildHomes.ts new file mode 100644 index 00000000..e69de29b diff --git a/examples/prototypeApplication/data/priorApproval/convertCommercialToHome.ts b/examples/prototypeApplication/data/priorApproval/convertCommercialToHome.ts new file mode 100644 index 00000000..e69de29b diff --git a/examples/prototypeApplication/data/priorApproval/extendUniversity.ts b/examples/prototypeApplication/data/priorApproval/extendUniversity.ts new file mode 100644 index 00000000..e69de29b diff --git a/examples/prototypeApplication/data/priorApproval/largerExtension.ts b/examples/prototypeApplication/data/priorApproval/largerExtension.ts new file mode 100644 index 00000000..e69de29b diff --git a/examples/prototypeApplication/data/priorApproval/solarPanels.ts b/examples/prototypeApplication/data/priorApproval/solarPanels.ts new file mode 100644 index 00000000..e69de29b diff --git a/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json b/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json index 319e2cdc..425e6d39 100644 --- a/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json +++ b/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json @@ -2,8 +2,31 @@ "applicationType": "ldc.existing", "data": { "application": { - "somethingShared": "test", - "ldcSpecificProperty": 1 + "fee": { + "calculated": 258, + "payable": 258, + "category": { + "sixAndSeven": 258 + }, + "exemption": { + "disability": false, + "resubmission": false + }, + "reduction": { + "sports": false, + "parishCouncil": false, + "alternative": false + }, + "reference": { + "govPay": "sandbox-ref-123" + } + }, + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } + } }, "user": { "role": "agent" @@ -225,7 +248,7 @@ ], "designations": [ { - "designation": "article4", + "value": "article4", "intersects": true, "entities": [ { @@ -239,55 +262,55 @@ ] }, { - "designation": "article4.caz", + "value": "article4.caz", "intersects": false }, { - "designation": "tpo", + "value": "tpo", "intersects": false }, { - "designation": "listed", + "value": "listed", "intersects": false }, { - "designation": "monument", + "value": "monument", "intersects": false }, { - "designation": "designated", + "value": "designated", "intersects": true }, { - "designation": "nature.SAC", + "value": "nature.SAC", "intersects": false }, { - "designation": "nature.ASNW", + "value": "nature.ASNW", "intersects": false }, { - "designation": "nature.SSSI", + "value": "nature.SSSI", "intersects": false }, { - "designation": "locallyListed", + "value": "locallyListed", "intersects": false }, { - "designation": "nature.SPA", + "value": "nature.SPA", "intersects": false }, { - "designation": "designated.WHS", + "value": "designated.WHS", "intersects": false }, { - "designation": "registeredPark", + "value": "registeredPark", "intersects": false }, { - "designation": "designated.AONB", + "value": "designated.AONB", "intersects": true, "entities": [ { @@ -300,19 +323,19 @@ ] }, { - "designation": "designated.nationalPark", + "value": "designated.nationalPark", "intersects": false }, { - "designation": "designated.conservationArea", + "value": "designated.conservationArea", "intersects": false }, { - "designation": "designated.nationalPark.broads", + "value": "designated.nationalPark.broads", "intersects": false }, { - "designation": "road.classified", + "value": "road.classified", "intersects": false } ] diff --git a/schemas/prototypeApplication.json b/schemas/prototypeApplication.json index 85649afa..2c250320 100644 --- a/schemas/prototypeApplication.json +++ b/schemas/prototypeApplication.json @@ -10,6 +10,12 @@ }, { "$ref": "#/definitions/PP" + }, + { + "$ref": "#/definitions/Listed" + }, + { + "$ref": "#/definitions/LandDrainageConsent" } ], "definitions": { @@ -252,6 +258,205 @@ } ] }, + "ApplicationDeclaration": { + "additionalProperties": false, + "description": "Declarations about the accuracy of this application and any personal connections to the receiving authority", + "properties": { + "accurate": { + "type": "boolean" + }, + "connection": { + "additionalProperties": false, + "properties": { + "description": { + "type": "string" + }, + "value": { + "enum": [ + "employee", + "relation.employee", + "electedMember", + "relation.electedMember", + "none" + ], + "type": "string" + } + }, + "required": [ + "value" + ], + "type": "object" + } + }, + "required": [ + "accurate", + "connection" + ], + "type": "object" + }, + "ApplicationFee": { + "additionalProperties": false, + "description": "The costs associated with this application", + "properties": { + "calculated": { + "description": "Total calculated fee in GBP", + "type": "number" + }, + "category": { + "additionalProperties": false, + "description": "Breakdown of calculated fee in GBP by category of development, based on the scales defined in The Town and Country Planning Regulations https://www.legislation.gov.uk/uksi/2012/2920/schedule/1/part/2", + "properties": { + "eight": { + "description": "Category 8 - Car parks or access roads", + "type": "number" + }, + "eleven": { + "additionalProperties": false, + "properties": { + "one": { + "description": "Category 11(1) - Mining operations", + "type": "number" + }, + "two": { + "description": "Category 11(2) - Other operations", + "type": "number" + } + }, + "type": "object" + }, + "five": { + "description": "Category 5 - Plant equipment or machinery", + "type": "number" + }, + "four": { + "description": "Category 4 - Glasshouses on agricultural land", + "type": "number" + }, + "fourteen": { + "description": "Category 14 - Other change of use", + "type": "number" + }, + "nine": { + "description": "Category 9 - Exploratory drilling", + "type": "number" + }, + "one": { + "description": "Category 1 - New homes", + "type": "number" + }, + "sixAndSeven": { + "description": "Category 6 and 7 - Home or curtilage of home", + "type": "number" + }, + "ten": { + "description": "Category 10 - Winning and working of oil or natural gas", + "type": "number" + }, + "thirteen": { + "description": "Category 13 - Waste disposal", + "type": "number" + }, + "three": { + "description": "Category 3 - Agricultural buildings", + "type": "number" + }, + "twelve": { + "additionalProperties": false, + "properties": { + "one": { + "description": "Category 12(1) - Change of use from single home to homes", + "type": "number" + }, + "two": { + "description": "Category 12(2) - Change of use to home", + "type": "number" + } + }, + "type": "object" + }, + "two": { + "description": "Category 2 - Other new buildings", + "type": "number" + } + }, + "type": "object" + }, + "exemption": { + "additionalProperties": false, + "properties": { + "disability": { + "type": "boolean" + }, + "resubmission": { + "type": "boolean" + } + }, + "required": [ + "disability", + "resubmission" + ], + "type": "object" + }, + "payable": { + "description": "Total payable fee after any exemptions or reductions in GBP", + "type": "number" + }, + "reduction": { + "additionalProperties": false, + "properties": { + "alternative": { + "type": "boolean" + }, + "parishCouncil": { + "type": "boolean" + }, + "sports": { + "type": "boolean" + } + }, + "required": [ + "alternative", + "parishCouncil", + "sports" + ], + "type": "object" + }, + "reference": { + "additionalProperties": false, + "properties": { + "govPay": { + "description": "GOV.UK Pay payment reference number", + "type": "string" + } + }, + "required": [ + "govPay" + ], + "type": "object" + } + }, + "required": [ + "calculated", + "payable", + "exemption", + "reduction" + ], + "type": "object" + }, + "ApplicationFeeNotApplicable": { + "additionalProperties": false, + "description": "An indicator that an application fee does not apply to this application type or journey", + "properties": { + "notApplicable": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "notApplicable" + ], + "type": "object" + }, "Area": { "$id": "#Area", "additionalProperties": false, @@ -396,6 +601,27 @@ }, "type": "object" }, + "CommunityInfrastructureLevy": { + "additionalProperties": false, + "description": "Details about the Community Infrastructure Levy planning charge, if applicable", + "properties": { + "result": { + "enum": [ + "exempt.annexe", + "exempt.extension", + "exempt.selfBuild", + "liable", + "relief.charity", + "relief.socialHousing" + ], + "type": "string" + } + }, + "required": [ + "result" + ], + "type": "object" + }, "ContactDetails": { "additionalProperties": false, "properties": { @@ -615,6 +841,61 @@ ], "type": "object" }, + "FeeCarryingApplicationData": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "declaration": { + "$ref": "#/definitions/ApplicationDeclaration" + }, + "fee": { + "$ref": "#/definitions/ApplicationFee" + }, + "planningApp": { + "$ref": "#/definitions/PlanningApplication" + }, + "preApp": { + "$ref": "#/definitions/PreApplication" + } + }, + "required": [ + "declaration", + "fee" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "declaration": { + "$ref": "#/definitions/ApplicationDeclaration" + }, + "fee": { + "$ref": "#/definitions/ApplicationFee" + }, + "leadDeveloper": { + "$ref": "#/definitions/LeadDeveloper" + }, + "planningApp": { + "$ref": "#/definitions/PlanningApplication" + }, + "preApp": { + "$ref": "#/definitions/PreApplication" + }, + "vacantBuildingCredit": { + "type": "boolean" + } + }, + "required": [ + "declaration", + "fee" + ], + "type": "object" + } + ], + "description": "ApplicationData required for fee carrying application types" + }, "FeeExplanation": { "$id": "#FeeExplanation", "additionalProperties": false, @@ -2695,7 +2976,7 @@ "$ref": "#/definitions/LDCApplicant" }, "application": { - "$ref": "#/definitions/LDCApplicationData" + "$ref": "#/definitions/FeeCarryingApplicationData" }, "property": { "$ref": "#/definitions/PropertyBase" @@ -3054,23 +3335,6 @@ } ] }, - "LDCApplicationData": { - "additionalProperties": false, - "description": "Specific ApplicationData required for \"Lawful Development Certificate\" applications", - "properties": { - "ldcSpecificProperty": { - "type": "number" - }, - "somethingShared": { - "type": "string" - } - }, - "required": [ - "ldcSpecificProperty", - "somethingShared" - ], - "type": "object" - }, "LDCApplicationType": { "anyOf": [ { @@ -3100,6 +3364,103 @@ } ] }, + "LandDrainageConsent": { + "additionalProperties": false, + "properties": { + "applicationType": { + "$ref": "#/definitions/LandDrainageConsentApplicationType" + }, + "data": { + "additionalProperties": false, + "properties": { + "applicant": { + "$ref": "#/definitions/ApplicantBase" + }, + "application": { + "$ref": "#/definitions/FeeCarryingApplicationData" + }, + "property": { + "$ref": "#/definitions/PropertyBase" + }, + "proposal": { + "$ref": "#/definitions/ProposalBase" + }, + "user": { + "$ref": "#/definitions/UserBase" + } + }, + "required": [ + "user", + "applicant", + "application", + "property", + "proposal" + ], + "type": "object" + }, + "files": { + "items": { + "$ref": "#/definitions/File" + }, + "type": "array" + }, + "metadata": { + "$ref": "#/definitions/Metadata" + }, + "preAssessment": { + "$ref": "#/definitions/PreAssessment" + }, + "responses": { + "$ref": "#/definitions/Responses" + } + }, + "required": [ + "applicationType", + "data", + "responses", + "files", + "metadata" + ], + "type": "object" + }, + "LandDrainageConsentApplicationType": { + "const": "landDrainageConsent", + "description": "Consent to do works affecting ordinary watercourses or land drainage", + "type": "string" + }, + "LeadDeveloper": { + "additionalProperties": false, + "properties": { + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + }, + "registrationNumber": { + "type": "string" + } + }, + "required": [ + "name", + "registrationNumber" + ], + "type": "object" + }, + "type": { + "enum": [ + "ukCompany", + "overseasCompany", + "none" + ], + "type": "string" + } + }, + "required": [ + "type" + ], + "type": "object" + }, "LineString": { "additionalProperties": false, "description": "LineString geometry object. https://tools.ietf.org/html/rfc7946#section-3.1.4", @@ -3126,6 +3487,70 @@ ], "type": "object" }, + "Listed": { + "additionalProperties": false, + "properties": { + "applicationType": { + "$ref": "#/definitions/ListedApplicationType" + }, + "data": { + "additionalProperties": false, + "properties": { + "applicant": { + "$ref": "#/definitions/ApplicantBase" + }, + "application": { + "$ref": "#/definitions/NonFeeCarryingApplicationData" + }, + "property": { + "$ref": "#/definitions/PropertyBase" + }, + "proposal": { + "$ref": "#/definitions/ProposalBase" + }, + "user": { + "$ref": "#/definitions/UserBase" + } + }, + "required": [ + "user", + "applicant", + "application", + "property", + "proposal" + ], + "type": "object" + }, + "files": { + "items": { + "$ref": "#/definitions/File" + }, + "type": "array" + }, + "metadata": { + "$ref": "#/definitions/Metadata" + }, + "preAssessment": { + "$ref": "#/definitions/PreAssessment" + }, + "responses": { + "$ref": "#/definitions/Responses" + } + }, + "required": [ + "applicationType", + "data", + "responses", + "files", + "metadata" + ], + "type": "object" + }, + "ListedApplicationType": { + "const": "listed", + "description": "Consent to do works to a Listed Building", + "type": "string" + }, "LondonProperty": { "$id": "#LondonProperty", "additionalProperties": false, @@ -3393,6 +3818,61 @@ ], "type": "object" }, + "NonFeeCarryingApplicationData": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "declaration": { + "$ref": "#/definitions/ApplicationDeclaration" + }, + "fee": { + "$ref": "#/definitions/ApplicationFeeNotApplicable" + }, + "planningApp": { + "$ref": "#/definitions/PlanningApplication" + }, + "preApp": { + "$ref": "#/definitions/PreApplication" + } + }, + "required": [ + "declaration", + "fee" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "declaration": { + "$ref": "#/definitions/ApplicationDeclaration" + }, + "fee": { + "$ref": "#/definitions/ApplicationFeeNotApplicable" + }, + "leadDeveloper": { + "$ref": "#/definitions/LeadDeveloper" + }, + "planningApp": { + "$ref": "#/definitions/PlanningApplication" + }, + "preApp": { + "$ref": "#/definitions/PreApplication" + }, + "vacantBuildingCredit": { + "type": "boolean" + } + }, + "required": [ + "declaration", + "fee" + ], + "type": "object" + } + ], + "description": "ApplicationData required for application types that do not have a fee" + }, "OSAddress": { "additionalProperties": false, "description": "Address information for sites with a known address sourced from Ordnance Survey AddressBase Premium (LPI)", @@ -3584,7 +4064,7 @@ "$ref": "#/definitions/ApplicantBase" }, "application": { - "$ref": "#/definitions/PAApplicationData" + "$ref": "#/definitions/FeeCarryingApplicationData" }, "property": { "$ref": "#/definitions/PropertyBase" @@ -3630,23 +4110,6 @@ ], "type": "object" }, - "PAApplicationData": { - "additionalProperties": false, - "description": "Specific ApplicationData required for \"Prior Approval\" applications", - "properties": { - "paSpecificProperty": { - "type": "number" - }, - "somethingShared": { - "type": "string" - } - }, - "required": [ - "paSpecificProperty", - "somethingShared" - ], - "type": "object" - }, "PAApplicationType": { "anyOf": [ { @@ -4344,21 +4807,65 @@ ] }, "PPApplicationData": { - "additionalProperties": false, - "description": "Specific ApplicationData required for \"Planning Permission\" applications", - "properties": { - "ppSpecificProperty": { - "type": "number" + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "CIL": { + "$ref": "#/definitions/CommunityInfrastructureLevy" + }, + "declaration": { + "$ref": "#/definitions/ApplicationDeclaration" + }, + "fee": { + "$ref": "#/definitions/ApplicationFee" + }, + "planningApp": { + "$ref": "#/definitions/PlanningApplication" + }, + "preApp": { + "$ref": "#/definitions/PreApplication" + } + }, + "required": [ + "declaration", + "fee" + ], + "type": "object" }, - "somethingShared": { - "type": "string" + { + "additionalProperties": false, + "properties": { + "CIL": { + "$ref": "#/definitions/CommunityInfrastructureLevy" + }, + "declaration": { + "$ref": "#/definitions/ApplicationDeclaration" + }, + "fee": { + "$ref": "#/definitions/ApplicationFee" + }, + "leadDeveloper": { + "$ref": "#/definitions/LeadDeveloper" + }, + "planningApp": { + "$ref": "#/definitions/PlanningApplication" + }, + "preApp": { + "$ref": "#/definitions/PreApplication" + }, + "vacantBuildingCredit": { + "type": "boolean" + } + }, + "required": [ + "declaration", + "fee" + ], + "type": "object" } - }, - "required": [ - "ppSpecificProperty", - "somethingShared" ], - "type": "object" + "description": "Specific ApplicationData required for \"Planning Permission\" applications" }, "PPApplicationType": { "anyOf": [ @@ -4570,6 +5077,28 @@ ], "type": "object" }, + "PlanningApplication": { + "additionalProperties": false, + "description": "Details of the planning application linked to this application, if applicable", + "properties": { + "date": { + "format": "date-time", + "type": "string" + }, + "localPlanningAuthority": { + "type": "string" + }, + "reference": { + "type": "string" + } + }, + "required": [ + "reference", + "date", + "localPlanningAuthority" + ], + "type": "object" + }, "PlanningConstraint": { "$id": "#PlanningConstraint", "anyOf": [ @@ -4626,7 +5155,11 @@ "additionalProperties": false, "description": "A planning designation that does not intersect with the proposed site, per the DE-9IM spatial relationship definition of intersects", "properties": { - "designation": { + "intersects": { + "const": false, + "type": "boolean" + }, + "value": { "anyOf": [ { "const": "article4", @@ -4769,15 +5302,11 @@ "type": "string" } ] - }, - "intersects": { - "const": false, - "type": "boolean" } }, "required": [ - "designation", - "intersects" + "intersects", + "value" ], "type": "object" }, @@ -4785,7 +5314,17 @@ "additionalProperties": false, "description": "A planning designation that does intersect with the proposed site, per the DE-9IM spatial relationship definition of intersects", "properties": { - "designation": { + "entities": { + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" + }, + "intersects": { + "const": true, + "type": "boolean" + }, + "value": { "anyOf": [ { "const": "article4", @@ -4928,21 +5467,11 @@ "type": "string" } ] - }, - "entities": { - "items": { - "$ref": "#/definitions/Entity" - }, - "type": "array" - }, - "intersects": { - "const": true, - "type": "boolean" } }, "required": [ - "designation", - "intersects" + "intersects", + "value" ], "type": "object" } @@ -5008,6 +5537,32 @@ }, "type": "array" }, + "PreApplication": { + "additionalProperties": false, + "description": "Details of the pre-application preceeding this application, if applicable", + "properties": { + "date": { + "format": "date-time", + "type": "string" + }, + "officer": { + "type": "string" + }, + "reference": { + "type": "string" + }, + "summary": { + "type": "string" + } + }, + "required": [ + "reference", + "date", + "officer", + "summary" + ], + "type": "object" + }, "PreAssessment": { "$id": "#PreAssessment", "description": "The result of the application based on information provided by the applicant, prior to assessment by a planning officer. Results are determined by flags corresponding to responses; each application can have up to one result per flagset", diff --git a/types/schemas/prototypeApplication/data/ApplicationData.ts b/types/schemas/prototypeApplication/data/ApplicationData.ts index 3214438f..30bedca4 100644 --- a/types/schemas/prototypeApplication/data/ApplicationData.ts +++ b/types/schemas/prototypeApplication/data/ApplicationData.ts @@ -3,38 +3,213 @@ import {PrimaryApplicationType} from '../enums/ApplicationType'; /** * Base type for ApplicationData. Contains all shared properties across all application types */ -export interface ApplicationDataBase { - somethingShared: string; +export type ApplicationDataBase = UKApplicationData | LondonApplicationData; + +export interface UKApplicationData { + declaration: ApplicationDeclaration; + preApp?: PreApplication; + planningApp?: PlanningApplication; +} + +/** + * @description An indicator that an application fee does not apply to this application type or journey + */ +export interface ApplicationFeeNotApplicable { + notApplicable: true; +} + +/** + * @description The costs associated with this application + */ +export interface ApplicationFee { + /** + * @description Total calculated fee in GBP + */ + calculated: number; + /** + * @description Total payable fee after any exemptions or reductions in GBP + */ + payable: number; + /** + * @description Breakdown of calculated fee in GBP by category of development, based on the scales defined in The Town and Country Planning Regulations https://www.legislation.gov.uk/uksi/2012/2920/schedule/1/part/2 + */ + category?: { + /** + * @description Category 1 - New homes + */ + one?: number; + /** + * @description Category 2 - Other new buildings + */ + two?: number; + /** + * @description Category 3 - Agricultural buildings + */ + three?: number; + /** + * @description Category 4 - Glasshouses on agricultural land + */ + four?: number; + /** + * @description Category 5 - Plant equipment or machinery + */ + five?: number; + /** + * @description Category 6 and 7 - Home or curtilage of home + */ + sixAndSeven?: number; + /** + * @description Category 8 - Car parks or access roads + */ + eight?: number; + /** + * @description Category 9 - Exploratory drilling + */ + nine?: number; + /** + * @description Category 10 - Winning and working of oil or natural gas + */ + ten?: number; + eleven?: { + /** + * @description Category 11(1) - Mining operations + */ + one?: number; + /** + * @description Category 11(2) - Other operations + */ + two?: number; + }; + twelve?: { + /** + * @description Category 12(1) - Change of use from single home to homes + */ + one?: number; + /** + * @description Category 12(2) - Change of use to home + */ + two?: number; + }; + /** + * @description Category 13 - Waste disposal + */ + thirteen?: number; + /** + * @description Category 14 - Other change of use + */ + fourteen?: number; + }; + exemption: { + disability: boolean; // @todo add application.fee.exemption.disability.reason + resubmission: boolean; // @todo add application.resubmission.original.applicationReference & application.resubmission.originalReference.appeal + }; + reduction: { + alternative: boolean; + parishCouncil: boolean; + sports: boolean; + }; + reference?: { + /** + * @description GOV.UK Pay payment reference number + */ + govPay: string; // @todo require when payable > 0 + }; +} + +/** + * @description Declarations about the accuracy of this application and any personal connections to the receiving authority + */ +export interface ApplicationDeclaration { + accurate: boolean; + connection: { + value: + | 'employee' + | 'relation.employee' + | 'electedMember' + | 'relation.electedMember' + | 'none'; + description?: string; + }; +} + +/** + * @description Details of the pre-application preceeding this application, if applicable + */ +export interface PreApplication { + reference: string; + date: Date; + officer: string; + summary: string; +} + +/** + * @description Details of the planning application linked to this application, if applicable + */ +export interface PlanningApplication { + reference: string; + date: Date; + localPlanningAuthority: string; +} + +/** + * @description Details about the Community Infrastructure Levy planning charge, if applicable + */ +export interface CommunityInfrastructureLevy { + result: + | 'exempt.annexe' + | 'exempt.extension' + | 'exempt.selfBuild' + | 'liable' + | 'relief.charity' + | 'relief.socialHousing'; +} + +export interface LeadDeveloper { + type: 'ukCompany' | 'overseasCompany' | 'none'; + company?: { + name: string; + registrationNumber: string; + }; +} + +/** + * @description Application details for project sites within the Greater London Authority (GLA) area + */ +export interface LondonApplicationData extends UKApplicationData { + vacantBuildingCredit?: boolean; + leadDeveloper?: LeadDeveloper; } /** - * @description Specific ApplicationData required for "Lawful Development Certificate" applications + * @description ApplicationData required for fee carrying application types */ -export interface LDCApplicationData extends ApplicationDataBase { - ldcSpecificProperty: number; +export type FeeCarryingApplicationData = ApplicationDataBase & { + fee: ApplicationFee; } /** - * @description Specific ApplicationData required for "Prior Approval" applications + * @description ApplicationData required for application types that do not have a fee */ -export interface PAApplicationData extends ApplicationDataBase { - paSpecificProperty: number; +export type NonFeeCarryingApplicationData = ApplicationDataBase & { + fee: ApplicationFeeNotApplicable; } /** * @description Specific ApplicationData required for "Planning Permission" applications */ -export interface PPApplicationData extends ApplicationDataBase { - ppSpecificProperty: number; +export type PPApplicationData = FeeCarryingApplicationData & { + CIL?: CommunityInfrastructureLevy; } /** * TypeMap of PrimaryApplicationTypes to their specific ApplicationData models */ export interface ApplicationDataVariants { - ldc: LDCApplicationData; - pa: PAApplicationData; + ldc: FeeCarryingApplicationData; + pa: FeeCarryingApplicationData; pp: PPApplicationData; + listed: NonFeeCarryingApplicationData; + landDrainageConsent: FeeCarryingApplicationData; } /** diff --git a/types/schemas/prototypeApplication/enums/PlanningDesignation.ts b/types/schemas/prototypeApplication/enums/PlanningDesignation.ts index 4d22af9a..1f7e0355 100644 --- a/types/schemas/prototypeApplication/enums/PlanningDesignation.ts +++ b/types/schemas/prototypeApplication/enums/PlanningDesignation.ts @@ -174,7 +174,7 @@ type BasePlanningDesignation = */ type NonIntersectingPlanningDesignation = { intersects: false; -} & {designation: BasePlanningDesignation}; +} & {value: BasePlanningDesignation}; /** * @description A planning designation that does intersect with the proposed site, per the DE-9IM spatial relationship definition of intersects @@ -182,7 +182,7 @@ type NonIntersectingPlanningDesignation = { type IntersectingPlanningDesignation = { intersects: true; entities?: Entity[]; -} & {designation: BasePlanningDesignation}; +} & {value: BasePlanningDesignation}; /** * @id #PlanningDesignation diff --git a/types/schemas/prototypeApplication/index.ts b/types/schemas/prototypeApplication/index.ts index dd8eb1e9..f30790fe 100644 --- a/types/schemas/prototypeApplication/index.ts +++ b/types/schemas/prototypeApplication/index.ts @@ -7,7 +7,9 @@ import {ProposalBase} from './data/Proposal'; import {UserBase} from './data/User'; import { ApplicationType, + LandDrainageConsentApplicationType, LDCApplicationType, + ListedApplicationType, PAApplicationType, PPApplicationType, PrimaryApplicationType, @@ -42,10 +44,12 @@ interface ApplicationSpecification< export type LDC = ApplicationSpecification<'ldc', LDCApplicationType>; export type PA = ApplicationSpecification<'pa', PAApplicationType>; export type PP = ApplicationSpecification<'pp', PPApplicationType>; +export type Listed = ApplicationSpecification<'listed', ListedApplicationType>; +export type LandDrainageConsent = ApplicationSpecification<'landDrainageConsent', LandDrainageConsentApplicationType>; // TODO: All the rest! /** * @title PrototypeApplication * @description The (prototype) root specification for a planning application in England generated by a digital planning service */ -export type PrototypeApplication = LDC | PA | PP; +export type PrototypeApplication = LDC | PA | PP | Listed | LandDrainageConsent; From df6f4a5d0c73c3fc28904a941ca9aafdfb781079 Mon Sep 17 00:00:00 2001 From: Jessica McInchak Date: Tue, 17 Sep 2024 20:52:33 +0200 Subject: [PATCH 05/13] add back application data types --- .../lawfulDevelopmentCertificate/proposed.ts | 24 +++++++- .../proposed.json | 60 ++++++++++++------- .../data/ApplicationData.ts | 8 +-- types/schemas/prototypeApplication/index.ts | 5 +- 4 files changed, 70 insertions(+), 27 deletions(-) diff --git a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts index 04c8af61..80134b75 100644 --- a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts +++ b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts @@ -7,8 +7,28 @@ export const lawfulDevelopmentCertificateProposedPrototype: PrototypeApplication applicationType: 'ldc.proposed', data: { application: { - somethingShared: 'test', - ldcSpecificProperty: 1, + fee: { + calculated: 129, + payable: 0, + category: { + sixAndSeven: 129, + }, + exemption: { + disability: true, + resubmission: true, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + }, + declaration: { + accurate: true, + connection: { + value: 'none', + }, + }, }, user: { role: 'applicant', diff --git a/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json b/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json index cf288141..31dd77a4 100644 --- a/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json +++ b/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json @@ -2,8 +2,28 @@ "applicationType": "ldc.proposed", "data": { "application": { - "somethingShared": "test", - "ldcSpecificProperty": 1 + "fee": { + "calculated": 129, + "payable": 0, + "category": { + "sixAndSeven": 129 + }, + "exemption": { + "disability": true, + "resubmission": true + }, + "reduction": { + "sports": false, + "parishCouncil": false, + "alternative": false + } + }, + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } + } }, "user": { "role": "applicant" @@ -112,75 +132,75 @@ ], "designations": [ { - "designation": "article4", + "value": "article4", "intersects": false }, { - "designation": "article4.caz", + "value": "article4.caz", "intersects": false }, { - "designation": "tpo", + "value": "tpo", "intersects": false }, { - "designation": "listed", + "value": "listed", "intersects": false }, { - "designation": "monument", + "value": "monument", "intersects": false }, { - "designation": "designated", + "value": "designated", "intersects": false }, { - "designation": "nature.SAC", + "value": "nature.SAC", "intersects": false }, { - "designation": "nature.ASNW", + "value": "nature.ASNW", "intersects": false }, { - "designation": "nature.SSSI", + "value": "nature.SSSI", "intersects": false }, { - "designation": "locallyListed", + "value": "locallyListed", "intersects": false }, { - "designation": "nature.SPA", + "value": "nature.SPA", "intersects": false }, { - "designation": "designated.WHS", + "value": "designated.WHS", "intersects": false }, { - "designation": "registeredPark", + "value": "registeredPark", "intersects": false }, { - "designation": "designated.AONB", + "value": "designated.AONB", "intersects": false }, { - "designation": "designated.nationalPark", + "value": "designated.nationalPark", "intersects": false }, { - "designation": "designated.conservationArea", + "value": "designated.conservationArea", "intersects": false }, { - "designation": "designated.nationalPark.broads", + "value": "designated.nationalPark.broads", "intersects": false }, { - "designation": "road.classified", + "value": "road.classified", "intersects": false } ] diff --git a/types/schemas/prototypeApplication/data/ApplicationData.ts b/types/schemas/prototypeApplication/data/ApplicationData.ts index 30bedca4..fde784fe 100644 --- a/types/schemas/prototypeApplication/data/ApplicationData.ts +++ b/types/schemas/prototypeApplication/data/ApplicationData.ts @@ -185,21 +185,21 @@ export interface LondonApplicationData extends UKApplicationData { */ export type FeeCarryingApplicationData = ApplicationDataBase & { fee: ApplicationFee; -} +}; /** - * @description ApplicationData required for application types that do not have a fee + * @description ApplicationData required for application types that do not have a fee */ export type NonFeeCarryingApplicationData = ApplicationDataBase & { fee: ApplicationFeeNotApplicable; -} +}; /** * @description Specific ApplicationData required for "Planning Permission" applications */ export type PPApplicationData = FeeCarryingApplicationData & { CIL?: CommunityInfrastructureLevy; -} +}; /** * TypeMap of PrimaryApplicationTypes to their specific ApplicationData models diff --git a/types/schemas/prototypeApplication/index.ts b/types/schemas/prototypeApplication/index.ts index f30790fe..1df334fd 100644 --- a/types/schemas/prototypeApplication/index.ts +++ b/types/schemas/prototypeApplication/index.ts @@ -45,7 +45,10 @@ export type LDC = ApplicationSpecification<'ldc', LDCApplicationType>; export type PA = ApplicationSpecification<'pa', PAApplicationType>; export type PP = ApplicationSpecification<'pp', PPApplicationType>; export type Listed = ApplicationSpecification<'listed', ListedApplicationType>; -export type LandDrainageConsent = ApplicationSpecification<'landDrainageConsent', LandDrainageConsentApplicationType>; +export type LandDrainageConsent = ApplicationSpecification< + 'landDrainageConsent', + LandDrainageConsentApplicationType +>; // TODO: All the rest! /** From 55848452416d416ed1030a5a7d133198b564afc8 Mon Sep 17 00:00:00 2001 From: Jessica McInchak Date: Tue, 17 Sep 2024 23:15:09 +0200 Subject: [PATCH 06/13] data.proposal plus all pp examples --- .../lawfulDevelopmentCertificate/existing.ts | 52 +- .../lawfulDevelopmentCertificate/proposed.ts | 36 +- .../planningPermission/fullHouseholder.ts | 1156 ++++ .../fullHouseholderInConservationArea.ts | 1248 ++++ .../data/planningPermission/major.ts | 2131 +++++++ .../data/planningPermission/minor.ts | 1617 +++++ .../existing.json | 146 +- .../proposed.json | 71 +- .../planningPermission/fullHouseholder.json | 1676 ++++++ .../fullHouseholderInConservationArea.json | 1812 ++++++ .../planningPermission/major.json | 0 .../planningPermission/minor.json | 0 schemas/prototypeApplication.json | 5347 ++++++++++++++--- .../prototypeApplication/data/Property.ts | 13 + .../prototypeApplication/data/Proposal.ts | 304 +- .../prototypeApplication/data/shared.ts | 3 +- types/shared/utils.ts | 5 + 17 files changed, 14772 insertions(+), 845 deletions(-) create mode 100644 examples/prototypeApplication/planningPermission/fullHouseholder.json create mode 100644 examples/prototypeApplication/planningPermission/fullHouseholderInConservationArea.json create mode 100644 examples/prototypeApplication/planningPermission/major.json create mode 100644 examples/prototypeApplication/planningPermission/minor.json diff --git a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts index 438865d9..8451e98a 100644 --- a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts +++ b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts @@ -258,7 +258,57 @@ export const lawfulDevelopmentCertificateExistingPrototype: PrototypeApplication type: 'residential.dwelling.house.detached', }, proposal: { - test: 'todo', + projectType: ['extend.outbuilding.studio'], + description: + 'Construction of a small outbuilding for use as a writing studio.', + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'Polygon', + coordinates: [ + [ + [-0.7085376977920632, 51.699564621757816], + [-0.7086127996444802, 51.69965605327502], + [-0.708982944488535, 51.699654390885456], + [-0.7089909911155797, 51.699673508361855], + [-0.7089319825172521, 51.699683482694184], + [-0.7089520990848638, 51.69973002954916], + [-0.7091867923736667, 51.69968930105364], + [-0.7092216610908603, 51.699688469859495], + [-0.709239095449457, 51.69968514508267], + [-0.709253847599039, 51.6997134056779], + [-0.7093128561973666, 51.69970176896433], + [-0.7092699408531282, 51.699610337539525], + [-0.7096253335476013, 51.699648572521454], + [-0.7098613679409116, 51.69958457046823], + [-0.7098962366581053, 51.69955049141595], + [-0.7098090648651213, 51.6994216557425], + [-0.7099243998527616, 51.699390070166544], + [-0.7098264992237182, 51.699238791576136], + [-0.7097460329532714, 51.699236297968724], + [-0.7095716893673034, 51.69927536446852], + [-0.7095421850681398, 51.69927619567025], + [-0.7092954218387698, 51.69931941814053], + [-0.7090929150581455, 51.69937427737031], + [-0.709021836519251, 51.69938923896689], + [-0.7089574635028936, 51.6994008757608], + [-0.7088904082775213, 51.69942082454341], + [-0.7086691260337761, 51.699501450783515], + [-0.7086181640624932, 51.699517243535354], + [-0.7085457444191079, 51.699541348251245], + [-0.7085350155830483, 51.69954799782576], + [-0.7085376977920632, 51.699564621757816], + ], + ], + }, + properties: null, + }, + area: { + hectares: 0.299367, + squareMetres: 2993.67, + }, + }, }, }, preAssessment: [ diff --git a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts index 80134b75..6e8ee82c 100644 --- a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts +++ b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts @@ -182,7 +182,41 @@ export const lawfulDevelopmentCertificateProposedPrototype: PrototypeApplication type: 'residential.dwelling.house.detached', }, proposal: { - test: 'todo', + projectType: ['extend.rear'], + description: 'Rear extension of a home', + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'Polygon', + coordinates: [ + [ + [-0.646633654832832, 51.61556919642334], + [-0.6466296315193095, 51.61554504700152], + [-0.6465049088001171, 51.61551173743314], + [-0.6464512646198194, 51.61522027766699], + [-0.6463131308555524, 51.61522943785954], + [-0.6463037431240002, 51.61520695374722], + [-0.6462487578391951, 51.615222775901515], + [-0.6462393701076429, 51.61520861923739], + [-0.6459456682205124, 51.615292726412235], + [-0.6460489332675857, 51.61561499701554], + [-0.646633654832832, 51.61556919642334], + ], + ], + }, + properties: null, + }, + area: { + hectares: 0.141826, + squareMetres: 1418.26, + }, + }, + extend: { + area: { + squareMetres: 24, + }, + }, }, }, preAssessment: [ diff --git a/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts b/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts index e69de29b..baf23801 100644 --- a/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts +++ b/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts @@ -0,0 +1,1156 @@ +import { PrototypeApplication } from '../../../../types/schemas/prototypeApplication'; + +const version = process.env['VERSION'] || '@next'; + +export const planningPermissionFullHouseholderPrototype: PrototypeApplication = { + applicationType: 'pp.full.householder', + data: { + application: { + fee: { + calculated: 258, + payable: 258, + category: { + sixAndSeven: 258, + }, + exemption: { + disability: false, + resubmission: false, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + reference: { + govPay: 'sandbox-ref-456', + }, + }, + declaration: { + accurate: true, + connection: { + value: 'none', + }, + }, + }, + user: { + role: 'proxy', + }, + applicant: { + type: 'individual', + name: { + first: 'David', + last: 'Bowie', + }, + email: 'ziggy@example.com', + phone: { + primary: 'Not provided by agent', + }, + address: { + sameAsSiteAddress: true, + }, + siteContact: { + role: 'proxy', + }, + ownership: { + interest: 'owner.sole', + certificate: 'a', + agriculturalTenants: false, + declaration: { + accurate: true, + }, + }, + agent: { + name: { + first: 'Ziggy', + last: 'Stardust', + }, + email: 'ziggy@example.com', + phone: { + primary: '01100 0110 0011', + }, + address: { + line1: '40 Stansfield Road', + line2: 'Brixton', + town: 'London', + county: 'Greater London', + postcode: 'SW9 9RZ', + country: 'UK', + }, + }, + }, + property: { + address: { + latitude: 51.4656522, + longitude: -0.1185926, + x: 530787, + y: 175754, + title: '40, STANSFIELD ROAD, LONDON', + singleLine: '40, STANSFIELD ROAD, LONDON, SW9 9RZ', + source: 'Ordnance Survey', + uprn: '100021892955', + usrn: '21901294', + pao: '40', + street: 'STANSFIELD ROAD', + town: 'LONDON', + postcode: 'SW9 9RZ', + }, + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'Polygon', + coordinates: [ + [ + [-0.1186569035053321, 51.465703531871384], + [-0.1185938715934822, 51.465724418998775], + [-0.1184195280075143, 51.46552473766957], + [-0.11848390102387167, 51.4655038504508], + [-0.1186569035053321, 51.465703531871384], + ], + ], + }, + properties: null, + }, + area: { + hectares: 0.012592, + squareMetres: 125.92, + }, + }, + planning: { + sources: [ + 'https://api.editor.planx.dev/gis/lambeth?geom=POLYGON+%28%28-0.1186569035053321+51.465703531871384%2C+-0.1185938715934822+51.465724418998775%2C+-0.1184195280075143+51.46552473766957%2C+-0.11848390102387167+51.4655038504508%2C+-0.1186569035053321+51.465703531871384%29%29&analytics=false&sessionId=81bcaa0f-baf5-4573-ba0a-ea868c573faf', + 'https://api.editor.planx.dev/roads?usrn=21901294', + ], + designations: [ + { + value: 'article4', + intersects: false, + }, + { + value: 'article4.caz', + intersects: false, + }, + { + value: 'tpo', + intersects: false, + }, + { + value: 'listed', + intersects: false, + }, + { + value: 'monument', + intersects: false, + }, + { + value: 'designated', + intersects: false, + }, + { + value: 'nature.SAC', + intersects: false, + }, + { + value: 'nature.ASNW', + intersects: false, + }, + { + value: 'nature.SSSI', + intersects: false, + }, + { + value: 'locallyListed', + intersects: false, + }, + { + value: 'nature.SPA', + intersects: false, + }, + { + value: 'designated.WHS', + intersects: false, + }, + { + value: 'registeredPark', + intersects: false, + }, + { + value: 'designated.AONB', + intersects: false, + }, + { + value: 'designated.nationalPark', + intersects: false, + }, + { + value: 'designated.conservationArea', + intersects: false, + }, + { + value: 'designated.nationalPark.broads', + intersects: false, + }, + { + value: 'road.classified', + intersects: false, + }, + ], + }, + localAuthorityDistrict: ['Lambeth'], + region: 'London', + type: 'residential.dwelling.house.terrace', + titleNumber: { + known: 'No', + }, + EPC: { + known: 'No', + }, + parking: { + cars: { + count: 1, + }, + cycles: { + count: 2, + }, + }, + }, + proposal: { + projectType: ['extend.roof.dormer'], + description: + 'Roof extension to the rear of the property, incorporating starship launchpad.', + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'Polygon', + coordinates: [ + [ + [-0.1186569035053321, 51.465703531871384], + [-0.1185938715934822, 51.465724418998775], + [-0.1184195280075143, 51.46552473766957], + [-0.11848390102387167, 51.4655038504508], + [-0.1186569035053321, 51.465703531871384], + ], + ], + }, + properties: null, + }, + area: { + hectares: 0.012592, + squareMetres: 125.92, + }, + }, + date: { + start: '2024-05-01', + completion: '2024-05-02', + }, + extend: { + area: { + squareMetres: 45, + }, + }, + parking: { + cars: { + count: 1, + difference: 0, + }, + cycles: { + count: 2, + difference: 0, + }, + }, + }, + }, + responses: [ + { + question: 'Is the property in Lambeth?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true, sectionName: 'The property'}, + }, + { + question: 'What type of property is it?', + responses: [{value: 'House'}], + metadata: {autoAnswered: true, sectionName: 'The property'}, + }, + { + question: 'What type of house it is?', + responses: [{value: 'Terrace'}], + metadata: {autoAnswered: true, sectionName: 'The property'}, + }, + { + question: 'Is the property in a flood zone?', + responses: [{value: 'No'}], + metadata: {sectionName: 'The property'}, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'House', + metadata: {flags: ['Listed building consent / Not required']}, + }, + ], + metadata: {autoAnswered: true, sectionName: 'About the project'}, + }, + { + question: 'List the changes involved in the project', + responses: [ + { + value: 'Add a roof extension', + metadata: {flags: ['Listed building consent / Not required']}, + }, + ], + metadata: {sectionName: 'About the project'}, + }, + { + question: 'Have works already started?', + responses: [{value: 'No'}], + metadata: {sectionName: 'About the project'}, + }, + { + question: 'Is the property in a flood zone?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About the project'}, + }, + { + question: 'What type of changes does the project involve?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true, sectionName: 'About the project'}, + }, + { + question: 'Is the project to add an outbuilding?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About the project'}, + }, + { + question: 'How much new floor area is being added to the house?', + responses: [{value: 'Less than 100m²'}], + metadata: {sectionName: 'About the project'}, + }, + { + question: + 'How much exactly is the internal floor area of the property increasing by?', + responses: [{value: '45'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Does the project involve creating any new bedrooms or bathrooms?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Describe the wall materials of the existing house', + responses: [{value: 'London stock brick'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Describe the wall materials of the new extension', + responses: [{value: 'Metallic cladding, reflective. Multiple colours.'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Describe the material of the roof of the existing house', + responses: [{value: 'Grey slate'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Describe the material for the new roof of the extension', + responses: [{value: 'Zinc panels'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Describe the window materials of the existing house', + responses: [{value: 'Wooden sash windows, painted white'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Describe the window materials of the extension', + responses: [{value: 'Brushed steel.'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Describe the door materials of the existing house', + responses: [{value: 'Wood, painted.'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Describe the door materials of the extension', + responses: [{value: 'No door present'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Are there any trees that could fall within the property or the areas affected by the project (the previously drawn outline)?', + responses: [{value: 'No'}], + metadata: {sectionName: 'About the project'}, + }, + { + question: 'Does the project involve any of these?', + responses: [{value: 'No, none of these'}], + metadata: {sectionName: 'About the project'}, + }, + { + question: 'Is the property in Greater London?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true, sectionName: 'About the project'}, + }, + { + question: 'Does the site include more than one property?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Do you know the title number of the property?', + responses: [{value: 'No'}], + metadata: {sectionName: 'About the project'}, + }, + { + question: + 'Does the property have an Energy Performance Certificate (EPC)?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What type of application is this?', + responses: [{value: 'Planning permission for a home'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'When will the works start?', + responses: [{value: '2024-05-01'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'When will the works be completed?', + responses: [{value: '2024-05-02'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Does the site include parking spaces for any of these?', + responses: [{value: 'Cars'}, {value: 'Bicycles'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Total number of car parking spaces before', + responses: [{value: '1'}], + metadata: {sectionName: 'About the project'}, + }, + { + question: 'Total number of car parking spaces after', + responses: [{value: '1'}], + metadata: {sectionName: 'About the project'}, + }, + { + question: 'What types of car parking space are present?', + responses: [{value: 'Off-street parking for residents only'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Off-street, residents-only car spaces before', + responses: [{value: '1'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Off-street, residents-only car spaces after', + responses: [{value: '1'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What type of bicycle parking is there?', + responses: [{value: 'Off-street cycle parking'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Off-street bicycle spaces before', + responses: [{value: '2'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Off-street bicycle spaces after', + responses: [{value: '2'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the property on designated land?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About the project'}, + }, + { + question: 'Does the property include any of these?', + responses: [{value: 'None of these'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Heritage Statement needed?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About the project'}, + }, + { + question: 'Is the property in a flood zone?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About the project'}, + }, + { + question: 'What type of application is it?', + responses: [{value: 'Apply for planning permission'}], + metadata: {autoAnswered: true, sectionName: 'About you'}, + }, + { + question: 'Your contact details', + responses: [ + {value: 'Mx Ziggy Stardust 01100 0110 0011 ziggy@example.com'}, + ], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Is this a test?', + responses: [{value: 'No'}], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Are you applying on behalf of someone else?', + responses: [{value: 'Yes'}], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Which of these best describes you?', + responses: [{value: 'Friend or relative'}], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Your contact address', + responses: [ + { + value: + '40 Stansfield Road, Brixton, London, Greater London, SW9 9RZ, UK', + }, + ], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Which of these best describes the applicant?', + responses: [{value: 'Private individual'}], + metadata: {sectionName: 'About you'}, + }, + { + question: "Applicant's title", + responses: [{value: 'Mr'}], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Do you want to provide an email address for the applicant?', + responses: [{value: 'No'}], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Do you want to provide a telephone number for the applicant?', + responses: [{value: 'No'}], + metadata: {sectionName: 'About you'}, + }, + { + question: + "Is the applicant's contact address the same as the property address?", + responses: [{value: 'Yes'}], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Which of these best describes you?', + responses: [{value: 'Friend or relative'}], + metadata: {autoAnswered: true, sectionName: 'About you'}, + }, + { + question: + 'We may need to visit your site to assess your application. If we do, who should we contact to arrange the visit?', + responses: [{value: 'Me'}], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Which of these best describes you?', + responses: [ + {value: "Friend or relative acting on the applicant's behalf"}, + ], + metadata: {autoAnswered: true, sectionName: 'About you'}, + }, + { + question: + "Which of these best describes the applicant's interest in the land?", + responses: [{value: 'Sole owner'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/39/made', + }, + ], + sectionName: 'About you', + }, + }, + { + question: + 'Did you get any pre-application advice from the council before making this application?', + responses: [{value: 'No'}], + metadata: {sectionName: 'About this application'}, + }, + { + question: 'What type of planning application are you making?', + responses: [{value: 'Full planning permission'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'Is the property a home?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'What types of changes does the application relate to?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'What type of extension is it?', + responses: [{value: 'Roof extension'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'List the changes involved in the roof extension', + responses: [{value: 'Add dormer'}], + metadata: {sectionName: 'About this application'}, + }, + { + question: + 'Is the purpose of the project to support the needs of a disabled resident?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + { + text: 'UK Statutory Instruments 2012 No. 2920 Regulation 4', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/4/made', + }, + { + text: 'Equalities Act 2010, Section 6', + url: 'https://www.legislation.gov.uk/ukpga/2010/15/section/6', + }, + { + text: 'Children Act 1989, Part 3', + url: 'https://www.legislation.gov.uk/ukpga/1989/41/part/III', + }, + ], + sectionName: 'About this application', + }, + }, + { + question: 'Is it a prior approval application?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'Is the property a home?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'What works does the project involve?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'Is this application a resubmission?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 9', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/9', + }, + ], + sectionName: 'About this application', + }, + }, + { + question: 'Does the application qualify for a disability exemption?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'Does the application qualify for a resubmission exemption?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'Is the site a sports field?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 3', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/schedule/1', + }, + ], + sectionName: 'About this application', + }, + }, + { + question: + 'Is the application being made by (or on behalf of) a parish or community council?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/11', + }, + ], + sectionName: 'About this application', + }, + }, + { + question: + 'Are you also submitting another proposal for the same site today?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/schedule/1', + }, + ], + sectionName: 'About this application', + }, + }, + { + question: + 'Does the application qualify for the sports club fee reduction?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: + 'Does the application qualify for the parish council reduction?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/11', + }, + ], + sectionName: 'About this application', + }, + }, + { + question: + 'Does the application qualify for the alternative application reduction?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/schedule/1', + }, + ], + sectionName: 'About this application', + }, + }, + { + question: 'What type of application is it?', + responses: [{value: 'Full planning permission'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'What does the project involve?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'How much new floor area is being created?', + responses: [ + { + value: 'Less than 100m²', + metadata: {flags: ['Community infrastructure levy / Not liable']}, + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Community Infrastructure Levy Regulations 2010, Regulation 42', + url: 'https://www.legislation.gov.uk/uksi/2010/948/regulation/42', + }, + ], + sectionName: 'About this application', + }, + }, + { + question: 'Is this a householder planning application?', + responses: [ + { + value: 'Yes', + metadata: {flags: ['Community infrastructure levy / Not liable']}, + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Community Infrastructure Levy Regulations 2010, Regulation 42', + url: 'https://www.legislation.gov.uk/uksi/2010/948/regulation/42', + }, + ], + sectionName: 'About this application', + }, + }, + { + question: 'Have the works already started?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'Upload drawings'}, + }, + { + question: 'What changes does the project involve?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true, sectionName: 'Upload drawings'}, + }, + { + question: 'Is the project to add an outbuilding?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'Upload drawings'}, + }, + { + question: 'Which Local Planning authority is it?', + responses: [{value: 'Lambeth'}], + metadata: {autoAnswered: true, sectionName: 'Check'}, + }, + { + question: 'Connections with London Borough of Lambeth', + responses: [{value: 'None of the above apply to me'}], + metadata: {sectionName: 'Check'}, + }, + { + question: 'I confirm that:', + responses: [ + { + value: + 'The information contained in this application is truthful, accurate and complete, to the best of my knowledge', + }, + ], + metadata: {sectionName: 'Check'}, + }, + { + question: 'Does the application qualify for a disability exemption?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'Pay and send'}, + }, + { + question: 'Does the application qualify for a resubmission exemption?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'Pay and send'}, + }, + { + question: 'Which Local Planning authority is it?', + responses: [{value: 'Lambeth'}], + metadata: {autoAnswered: true, sectionName: 'Pay and send'}, + }, + ], + files: [ + { + name: 'https://api.editor.planx.dev/file/private/tbp4kiba/myPlans.pdf', + type: ['roofPlan.existing', 'roofPlan.proposed'], + }, + { + name: 'https://api.editor.planx.dev/file/private/5w5v8s8z/other.pdf', + type: ['sitePlan.existing', 'sitePlan.proposed'], + }, + { + name: 'https://api.editor.planx.dev/file/private/7nrefxnn/elevations.pdf', + type: ['elevations.existing', 'elevations.proposed'], + }, + { + name: 'https://api.editor.planx.dev/file/private/311w2id6/floor_plans.pdf', + type: ['floorPlan.existing', 'floorPlan.proposed'], + }, + ], + metadata: { + organisation: 'LBH', + id: '81bcaa0f-baf5-4573-ba0a-ea868c573faf', + source: 'PlanX', + service: { + flowId: '01e38c5d-e701-4e44-acdc-4d6b5cc3b854', + url: 'https://www.editor.planx.dev/lambeth/apply-for-planning-permission/preview', + files: { + required: [ + { + value: 'roofPlan.existing', + description: 'Roof plan - existing', + }, + { + value: 'roofPlan.proposed', + description: 'Roof plan - proposed', + }, + { + value: 'sitePlan.existing', + description: 'Site plan - existing', + }, + { + value: 'sitePlan.proposed', + description: 'Site plan - proposed', + }, + { + value: 'elevations.existing', + description: 'Elevations - existing', + }, + { + value: 'elevations.proposed', + description: 'Elevations - proposed', + }, + ], + recommended: [ + { + value: 'floorPlan.existing', + description: 'Floor plan - existing', + }, + { + value: 'floorPlan.proposed', + description: 'Floor plan - proposed', + }, + ], + optional: [], + }, + fee: { + category: { + sixAndSeven: [ + { + description: + 'The fee to apply for planning permission to alter or extend a single home is £258.', + policyRefs: [ + { + text: 'UK Statutory Instruments 2023 No. 1197', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + }, + calculated: [ + { + description: + 'The fee to apply for planning permission to alter or extend a single home is £258.', + policyRefs: [ + { + text: 'UK Statutory Instruments 2023 No. 1197', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + payable: [ + { + description: + 'The fee to apply for planning permission to alter or extend a single home is £258.', + policyRefs: [ + { + text: 'UK Statutory Instruments 2023 No. 1197', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + }, + }, + submittedAt: '2023-10-02T00:00:00.00Z', + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + }, +}; diff --git a/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts b/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts index e69de29b..e10fa65f 100644 --- a/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts +++ b/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts @@ -0,0 +1,1248 @@ +import { PrototypeApplication } from '../../../../types/schemas/prototypeApplication'; + +const version = process.env['VERSION'] || '@next'; + +export const planningPermissionFullHouseholderInConservationAreaPrototype: PrototypeApplication = + { + applicationType: 'pp.full.householder', + data: { + application: { + fee: { + calculated: 258, + payable: 258, + category: { + sixAndSeven: 258, + }, + exemption: { + disability: false, + resubmission: false, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + reference: { + govPay: 'sandbox-ref-456', + }, + }, + declaration: { + accurate: true, + connection: { + value: 'none', + }, + }, + }, + user: { + role: 'proxy', + }, + applicant: { + type: 'individual', + name: { + first: 'David', + last: 'Bowie', + }, + email: 'ziggy@example.com', + phone: { + primary: 'Not provided by agent', + }, + address: { + sameAsSiteAddress: true, + }, + siteContact: { + role: 'proxy', + }, + ownership: { + interest: 'owner.sole', + certificate: 'a', + agriculturalTenants: false, + declaration: { + accurate: true, + }, + }, + agent: { + name: { + first: 'Ziggy', + last: 'Stardust', + }, + email: 'ziggy@example.com', + phone: { + primary: '01100 0110 0011', + }, + address: { + line1: '40 Stansfield Road', + line2: 'Brixton', + town: 'London', + county: 'Greater London', + postcode: 'SW9 9RZ', + country: 'UK', + }, + }, + }, + property: { + address: { + latitude: 51.451594, + longitude: -0.0823141, + x: 533346, + y: 174256, + title: '140, WOODWARDE ROAD, LONDON', + singleLine: '140, WOODWARDE ROAD, LONDON, SOUTHWARK, SE22 8UR', + source: 'Ordnance Survey', + uprn: '200003442431', + usrn: '22502753', + pao: '140', + street: 'WOODWARDE ROAD', + town: 'LONDON', + postcode: 'SE22 8UR', + }, + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'MultiPolygon', + coordinates: [ + [ + [ + [-0.082375, 51.451423], + [-0.082071, 51.451786], + [-0.082162, 51.451815], + [-0.082465, 51.451452], + [-0.082375, 51.451423], + ], + ], + ], + }, + properties: { + name: '', + entity: 12000596619, + prefix: 'title-boundary', + dataset: 'title-boundary', + enddate: '', + typology: 'geography', + reference: '37641594', + entrydate: '2024-05-06', + startdate: '2001-11-24', + organisationentity: 13, + }, + }, + area: { + hectares: 0.032166, + squareMetres: 321.66, + }, + }, + planning: { + sources: [ + 'https://api.editor.planx.dev/gis/southwark?geom=MULTIPOLYGON+%28%28%28-0.082375+51.451423%2C+-0.082071+51.451786%2C+-0.082162+51.451815%2C+-0.082465+51.451452%2C+-0.082375+51.451423%29%29%29&analytics=false&sessionId=d5e442ce-1bfb-43db-ab3b-dc8e0081e8c2', + 'https://api.editor.planx.dev/roads?usrn=22502753', + ], + designations: [ + { + value: 'article4', + intersects: false, + }, + { + value: 'flood', + intersects: false, + }, + { + value: 'tpo', + intersects: false, + }, + { + value: 'listed', + intersects: false, + }, + { + value: 'monument', + intersects: false, + }, + { + value: 'designated', + intersects: true, + }, + { + value: 'greenBelt', + intersects: false, + }, + { + value: 'nature.SAC', + intersects: false, + }, + { + value: 'nature.ASNW', + intersects: false, + }, + { + value: 'nature.SSSI', + intersects: false, + }, + { + value: 'locallyListed', + intersects: false, + }, + { + value: 'brownfieldSite', + intersects: false, + }, + { + value: 'nature.SPA', + intersects: false, + }, + { + value: 'designated.WHS', + intersects: false, + }, + { + value: 'registeredPark', + intersects: false, + }, + { + value: 'designated.AONB', + intersects: false, + }, + { + value: 'nature.ramsarSite', + intersects: false, + }, + { + value: 'designated.nationalPark', + intersects: false, + }, + { + value: 'designated.conservationArea', + intersects: true, + entities: [ + { + name: 'Dulwich Village', + source: { + url: 'https://www.planning.data.gov.uk/entity/44007440', + text: 'Planning Data', + }, + }, + ], + }, + { + value: 'designated.nationalPark.broads', + intersects: false, + }, + { + value: 'road.classified', + intersects: false, + }, + ], + }, + localAuthorityDistrict: ['Southwark'], + region: 'London', + type: 'residential.dwelling.house.semiDetached', + titleNumber: { + known: 'No', + }, + EPC: { + known: 'The property does not have one', + }, + parking: { + cars: { + count: 1, + }, + cycles: { + count: 2, + }, + }, + }, + proposal: { + projectType: ['alter'], + description: 'Single storey rear extension.', + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'MultiPolygon', + coordinates: [ + [ + [ + [-0.082375, 51.451423], + [-0.082071, 51.451786], + [-0.082162, 51.451815], + [-0.082465, 51.451452], + [-0.082375, 51.451423], + ], + ], + ], + }, + properties: { + name: '', + entity: 12000596619, + prefix: 'title-boundary', + dataset: 'title-boundary', + enddate: '', + typology: 'geography', + reference: '37641594', + entrydate: '2024-05-06', + startdate: '2001-11-24', + planx_user_action: 'Accepted the title boundary', + organisationentity: 13, + }, + }, + area: { + hectares: 0.032166, + squareMetres: 321.66, + }, + }, + date: { + start: '2024-08-01', + completion: '2024-08-21', + }, + extend: { + area: { + squareMetres: 19, + }, + }, + parking: { + cars: { + count: 1, + difference: 0, + }, + cycles: { + count: 2, + difference: 0, + }, + }, + }, + }, + responses: [ + { + question: 'Is the property in Southwark?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true, sectionName: 'The property'}, + }, + { + question: 'What type of property is it?', + responses: [{value: 'House'}], + metadata: {autoAnswered: true, sectionName: 'The property'}, + }, + { + question: 'What type of house is it?', + responses: [{value: 'Semi-detached'}], + metadata: {autoAnswered: true, sectionName: 'The property'}, + }, + { + question: 'What type of application is it?', + responses: [{value: 'Apply for planning permission'}], + metadata: {autoAnswered: true, sectionName: 'About you'}, + }, + { + question: 'Are you applying on behalf of someone else?', + responses: [{value: 'No'}], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Which of these best describes you?', + responses: [{value: 'Private individual'}], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Your contact details', + responses: [ + { + value: + 'Mr Steven Parry 07980987654 freya.cunningham@southwark.gov.uk', + }, + ], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Is your contact address the same as the property address?', + responses: [{value: 'Yes'}], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Can a planning officer see the works from public land?', + responses: [ + {value: "No, to see the works you'd have to come onto the property"}, + ], + metadata: {sectionName: 'About you'}, + }, + { + question: + 'We may need to visit the site to assess your application. If we do, who should we contact to arrange the visit?', + responses: [{value: 'Me, the applicant'}], + metadata: {sectionName: 'About you'}, + }, + { + question: 'What type of application is this?', + responses: [{value: 'Planning Permission'}], + metadata: {autoAnswered: true, sectionName: 'About you'}, + }, + { + question: 'Which of these best describes you?', + responses: [{value: "I'm the applicant"}], + metadata: {autoAnswered: true, sectionName: 'About you'}, + }, + { + question: 'Are you the sole owner of the land?', + responses: [{value: 'Yes'}], + metadata: { + policyRefs: [ + { + text: 'Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/13/made', + }, + ], + sectionName: 'About you', + }, + }, + { + question: 'Does the land have any agricultural tenants?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/13/made', + }, + ], + sectionName: 'About you', + }, + }, + { + question: 'Certificate of ownership declaration - Certificate A', + responses: [{value: 'I certify the above'}], + metadata: { + policyRefs: [ + { + text: 'Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/13/made', + }, + ], + sectionName: 'About you', + }, + }, + { + question: 'What type of application are you submitting?', + responses: [{value: 'Householder application'}], + metadata: { + policyRefs: [ + { + text: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'Select the changes involved in the project', + responses: [{value: 'Alterations to a home and the surrounding land'}], + metadata: {sectionName: 'The project'}, + }, + { + question: 'Do your alterations involve any of these projects?', + responses: [{value: 'None of these'}], + metadata: {sectionName: 'The project'}, + }, + { + question: 'Does your project involve changes to an existing roof?', + responses: [{value: 'No'}], + metadata: {sectionName: 'The project'}, + }, + { + question: + 'Does your project involve any alterations to ground or floor levels?', + responses: [{value: 'No'}], + metadata: {sectionName: 'The project'}, + }, + { + question: 'Have works already started?', + responses: [{value: 'No'}], + metadata: {sectionName: 'The project'}, + }, + { + question: 'What type of development are you applying for?', + responses: [{value: 'Householder application'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'Is the property in a flood zone?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'The project'}, + }, + { + question: 'Is the property in flood zone 1?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'The project'}, + }, + { + question: 'Is the property in an area locally vulnerable to flooding?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'The project'}, + }, + { + question: 'Does the project introduce any external materials?', + responses: [{value: 'Yes'}], + metadata: {sectionName: 'The project'}, + }, + { + question: 'Do all the new materials match the existing?', + responses: [{value: 'Yes'}], + metadata: {sectionName: 'The project'}, + }, + { + question: 'What external materials are you adding?', + responses: [ + {value: 'External walls'}, + {value: 'Windows'}, + {value: 'Doors'}, + {value: 'Roof'}, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: + 'Describe the external wall materials of the existing property', + responses: [{value: 'Stock brick'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: + 'Describe the external window frame materials of the existing property', + responses: [{value: 'Grey aluminum'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: + 'Describe the external door materials of the existing property', + responses: [{value: 'Dark wood'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'Describe the roof materials of the existing property', + responses: [{value: 'Clay tiles'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: + 'Do you want to share more about materials in the documents or drawings you upload?', + responses: [{value: 'Yes'}], + metadata: {sectionName: 'The project'}, + }, + { + question: + 'Does the project add any additional floorspace to the property?', + responses: [{value: 'Yes'}], + metadata: {sectionName: 'The project'}, + }, + { + question: 'How much new floorspace is being added to the property?', + responses: [{value: '19'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'How much new floor area is being added to the property?', + responses: [{value: 'Less than 100m²'}], + metadata: {autoAnswered: true, sectionName: 'The project'}, + }, + { + question: 'Does the project involve any of these?', + responses: [{value: 'No, none of these'}], + metadata: {sectionName: 'The project'}, + }, + { + question: 'Are there any protected trees on the property?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'The project'}, + }, + { + question: + 'Are there any trees or hedges that could fall within the property or the areas affected by the project (the previously drawn outline)?', + responses: [{value: 'No'}], + metadata: {sectionName: 'The project'}, + }, + { + question: + 'Have you already told us that you are doing works to a tree or hedge?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'The project'}, + }, + { + question: 'Are there any protected trees on the property?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'The project'}, + }, + { + question: 'Is the site in a conservation area?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true, sectionName: 'The project'}, + }, + { + question: + 'Might the works affect any tree with a trunk wider than 100mm?', + responses: [ + { + value: 'No, definitely not', + metadata: {flags: ['Works to trees & hedges / Not required']}, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Tree Preservation)(England) Regulations 2012 Part 3', + url: 'https://www.legislation.gov.uk/uksi/2012/605/part/3/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'What type of application is this?', + responses: [{value: 'Apply for planning permission'}], + metadata: {autoAnswered: true, sectionName: 'The project'}, + }, + { + question: 'Could your works affect a protected tree?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'The project'}, + }, + { + question: 'Is the property in Greater London?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true, sectionName: 'The project'}, + }, + { + question: 'Does the site include more than one property?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'Do you know the title number of the property?', + responses: [{value: 'No'}], + metadata: {sectionName: 'The project'}, + }, + { + question: + 'Does the property have an Energy Performance Certificate (EPC)?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'What type of application is this?', + responses: [{value: 'Planning permission for a home'}], + metadata: {autoAnswered: true, sectionName: 'The project'}, + }, + { + question: 'Have works already started?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'The project'}, + }, + { + question: 'When are the works planned to start?', + responses: [{value: '2024-08-01'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'When are the works planned to be completed?', + responses: [{value: '2024-08-21'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'Do the changes involve any of these?', + responses: [{value: 'Alterations to a building'}], + metadata: {autoAnswered: true, sectionName: 'The project'}, + }, + { + question: + 'Do the changes involve creating any new bedrooms or bathrooms?', + responses: [{value: 'No'}], + metadata: {sectionName: 'The project'}, + }, + { + question: + 'Are there existing or are you proposing parking spaces for any of these on the site?', + responses: [{value: 'None of these'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'Is the property on designated land?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true, sectionName: 'The project'}, + }, + { + question: + 'Does the project create 100 square metres or more of additional floor area?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'Does the property include any of these?', + responses: [{value: 'Conservation area'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'Does the property include any of these?', + responses: [{value: 'None of these'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'Heritage Statement needed?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true, sectionName: 'The project'}, + }, + { + question: 'Data option provided?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true, sectionName: 'The project'}, + }, + { + question: 'How do you want to submit the Heritage Statement?', + responses: [{value: 'Upload a document later'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: + 'Did you get any pre-application advice from the council before making this application?', + responses: [{value: 'Yes'}], + metadata: {sectionName: 'Your application'}, + }, + { + question: 'What was the name of the planning officer you spoke to?', + responses: [{value: 'Josie Nolan'}], + metadata: {sectionName: 'Your application'}, + }, + { + question: 'What was your reference?', + responses: [{value: '24/EQ/2019'}], + metadata: {sectionName: 'Your application'}, + }, + { + question: 'What date was the pre-application advice given on?', + responses: [{value: '2024-04-01'}], + metadata: {sectionName: 'Your application'}, + }, + { + question: 'What was the pre-application advice you have received?', + responses: [ + { + value: + 'The works I want to do would be acceptable if I made the extension slightly smaller and shorter.', + }, + ], + metadata: {sectionName: 'Your application'}, + }, + { + question: 'What type of application is it?', + responses: [{value: 'Full planning permission'}], + metadata: {autoAnswered: true, sectionName: 'Your application'}, + }, + { + question: 'What type of development are you applying for?', + responses: [{value: 'Householder application'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + }, + ], + sectionName: 'Your application', + }, + }, + { + question: 'Check for multiple fees?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'Your application'}, + }, + { + question: 'What type of application is it?', + responses: [{value: 'Another application type'}], + metadata: {autoAnswered: true, sectionName: 'Your application'}, + }, + { + question: 'Is the property a home?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true, sectionName: 'Your application'}, + }, + { + question: 'Does the project involve any of these changes?', + responses: [{value: 'None of these'}], + metadata: {autoAnswered: true, sectionName: 'Your application'}, + }, + { + question: 'Does the project involve any of these changes?', + responses: [{value: 'Alteration'}], + metadata: {autoAnswered: true, sectionName: 'Your application'}, + }, + { + question: 'Fee exemption for projects supporting disabled residents', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + { + text: 'UK Statutory Instruments 2012 No. 2920 Regulation 4', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/4/made', + }, + { + text: 'Equalities Act 2010, Section 6', + url: 'https://www.legislation.gov.uk/ukpga/2010/15/section/6', + }, + { + text: 'Children Act 1989, Part 3', + url: 'https://www.legislation.gov.uk/ukpga/1989/41/part/III', + }, + ], + sectionName: 'Your application', + }, + }, + { + question: 'Is this application a resubmission?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 9', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/9', + }, + ], + sectionName: 'Your application', + }, + }, + { + question: 'Does the application qualify for a disability exemption?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'Your application'}, + }, + { + question: 'Is the site a sports field?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'Your application'}, + }, + { + question: + 'Is the application being made by (or on behalf of) a parish or community council?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/11', + }, + ], + sectionName: 'Your application', + }, + }, + { + question: + 'Are you also submitting another proposal for the same site today?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/schedule/1', + }, + ], + sectionName: 'Your application', + }, + }, + { + question: + 'Does the application qualify for the sports club fee reduction?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'Your application'}, + }, + { + question: + 'Does the application qualify for the parish council reduction?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/11', + }, + ], + sectionName: 'Your application', + }, + }, + { + question: + 'Does the application qualify for the alternative application reduction?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/schedule/1', + }, + ], + sectionName: 'Your application', + }, + }, + { + question: 'What type of application is it?', + responses: [{value: 'Full planning permission'}], + metadata: {autoAnswered: true, sectionName: 'Your application'}, + }, + { + question: 'What does the project involve?', + responses: [ + { + value: 'Alteration', + metadata: {flags: ['Community infrastructure levy / Not liable']}, + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'What type of development are you applying for?', + responses: [{value: 'Householder application'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + }, + ], + sectionName: 'Upload application documents', + }, + }, + { + question: 'Have the works already started?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + sectionName: 'Upload application documents', + }, + }, + { + question: 'What changes does the project involve?', + responses: [{value: 'Alterations'}], + metadata: { + autoAnswered: true, + sectionName: 'Upload application documents', + }, + }, + { + question: 'Is the user a professional agent?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + sectionName: 'Upload application documents', + }, + }, + { + question: 'Is this for submission or information only?', + responses: [{value: 'Submission'}], + metadata: { + autoAnswered: true, + sectionName: 'Upload application documents', + }, + }, + { + question: 'Which Local Planning authority is it?', + responses: [{value: 'Southwark'}], + metadata: {autoAnswered: true, sectionName: 'Review and confirm'}, + }, + { + question: 'Connections with Southwark Council', + responses: [{value: 'None of the above apply to me'}], + metadata: {sectionName: 'Review and confirm'}, + }, + { + question: 'I confirm that:', + responses: [ + { + value: + 'The information contained in this application is truthful, accurate and complete, to the best of my knowledge', + }, + ], + metadata: {sectionName: 'Review and confirm'}, + }, + { + question: 'Does the application qualify for a disability exemption?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'Pay and send'}, + }, + { + question: 'Does the application qualify for a resubmission exemption?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'Pay and send'}, + }, + { + question: 'What type of application is it?', + responses: [{value: 'Full planning permission'}], + metadata: {autoAnswered: true, sectionName: 'Pay and send'}, + }, + { + question: 'Which Local Planning authority is it?', + responses: [{value: 'Southwark'}], + metadata: {autoAnswered: true, sectionName: 'Pay and send'}, + }, + ], + files: [ + { + name: 'https://api.editor.planx.dev/file/private/5w5v8s8z/other.pdf', + type: ['otherDrawing'], + }, + { + name: 'https://api.editor.planx.dev/file/private/5w5v8s8z/other.pdf', + type: ['heritageStatement'], + }, + { + name: 'https://api.editor.planx.dev/file/private/5w5v8s8z/other.pdf', + type: ['sitePlan.existing', 'sitePlan.proposed'], + }, + { + name: 'https://api.editor.planx.dev/file/private/7nrefxnn/elevations.pdf', + type: ['elevations.existing', 'elevations.proposed'], + }, + { + name: 'https://api.editor.planx.dev/file/private/311w2id6/floor_plans.pdf', + type: ['floorPlan.existing', 'floorPlan.proposed'], + }, + ], + metadata: { + organisation: 'SWK', + id: 'd5e442ce-1bfb-43db-ab3b-dc8e0081e8c2', + source: 'PlanX', + service: { + flowId: 'bba306e7-15c8-438f-a71e-a1e5d3a99caf', + url: 'https://editor.planx.uk/southwark/apply-for-planning-permission/published', + files: { + required: [ + { + value: 'sitePlan.existing', + description: 'Site plan - existing', + }, + { + value: 'sitePlan.proposed', + description: 'Site plan - proposed', + }, + { + value: 'elevations.existing', + description: 'Elevations - existing', + }, + { + value: 'elevations.proposed', + description: 'Elevations - proposed', + }, + { + value: 'floorPlan.existing', + description: 'Floor plan - existing', + }, + { + value: 'floorPlan.proposed', + description: 'Floor plan - proposed', + }, + { + value: 'heritageStatement', + description: 'Heritage Statement', + }, + ], + recommended: [], + optional: [ + { + value: 'photographs.existing', + description: 'Photographs - existing', + }, + { + value: 'otherDrawing', + description: 'Other - drawing', + }, + { + value: 'otherDocument', + description: 'Other - document', + }, + { + value: 'visualisations', + description: 'Visualisations', + }, + ], + }, + fee: { + category: { + sixAndSeven: [ + { + description: + 'The fee to apply for planning permission to alter or extend a single home is £258.', + policyRefs: [ + { + text: 'UK Statutory Instruments 2023 No. 1197', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + }, + calculated: [ + { + description: + 'The fee to apply for planning permission to alter or extend a single home is £258.', + policyRefs: [ + { + text: 'UK Statutory Instruments 2023 No. 1197', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + payable: [ + { + description: + 'The fee to apply for planning permission to alter or extend a single home is £258.', + policyRefs: [ + { + text: 'UK Statutory Instruments 2023 No. 1197', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + }, + }, + submittedAt: '2023-10-02T00:00:00.00Z', + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + }, + }; diff --git a/examples/prototypeApplication/data/planningPermission/major.ts b/examples/prototypeApplication/data/planningPermission/major.ts index e69de29b..1813698e 100644 --- a/examples/prototypeApplication/data/planningPermission/major.ts +++ b/examples/prototypeApplication/data/planningPermission/major.ts @@ -0,0 +1,2131 @@ +import { PrototypeApplication } from '../../../../types/schemas/prototypeApplication'; + +const version = process.env['VERSION'] || '@next'; + +export const planningPermissionMajorPrototype: PrototypeApplication = { + applicationType: 'pp.full.major', + data: { + user: { + role: 'agent', + }, + applicant: { + type: 'company', + name: { + first: 'Mike', + last: 'McHouseface', + }, + email: 'mikemchouseface@housefacemike.com', + phone: { + primary: '9876543210', + }, + company: { + name: 'McHouseface Incorporated', + }, + address: { + sameAsSiteAddress: true, + }, + siteContact: { + role: 'other', + name: 'Kyle Keybearer', + email: 'kylewiththekeys@keysfromkyle.com', + phone: '543210', + }, + ownership: { + interest: 'other', + certificate: 'b', + noticeGiven: true, + ownersKnown: 'all', + owners: [ + { + name: 'Agamemnon Agricullen', + address: { + town: 'Mycenae', + line1: 'Aggy Avenue', + line2: '', + county: '', + country: 'Greece', + postcode: '212 00', + }, + noticeGiven: true, + }, + ], + declaration: { + accurate: true, + }, + }, + agent: { + name: { + first: 'Andy', + last: 'Agent', + }, + email: 'andytheagent@agncagency.com', + phone: { + primary: '0123456789', + }, + company: { + name: 'AGNC Agency', + }, + address: { + line1: 'Roady Road', + line2: '', + town: 'Towny Town', + county: '', + postcode: 'Cody Code', + country: '', + }, + }, + }, + property: { + address: { + latitude: 51.51257224609594, + longitude: -0.5189885919643893, + x: 502869.8591151078, + y: 180333.4537434135, + title: 'House McHouseface Housing', + source: 'Proposed by applicant', + }, + localAuthorityDistrict: ['Buckinghamshire', 'South Bucks'], + region: 'South East', + type:'other.unsupported', + // use: { + // description: 'Vacant brownfield', + // }, + planning: { + sources: [ + 'https://api.editor.planx.dev/gis/buckinghamshire?geom=POLYGON+%28%28-0.5202563671906586+51.51349326091676%2C+-0.5162271673824664+51.51342965453125%2C+-0.5160930726385158+51.5119189712527%2C+-0.5186025432309797+51.51150473816995%2C+-0.5192921685359919+51.51150076298916%2C+-0.5197391470751718+51.5115882253788%2C+-0.5204032314768795+51.51156039632619%2C+-0.5207544293552119+51.512609937924225%2C+-0.5202563671906586+51.51349326091676%29%29&sessionId=180da003-279d-40dc-b538-a616c8c2a700', + ], + designations: [ + { + value: 'tpo', + intersects: false, + }, + { + value: 'flood', + intersects: false, + }, + { + value: 'listed', + intersects: false, + }, + { + value: 'article4', + intersects: false, + }, + { + value: 'monument', + intersects: false, + }, + { + value: 'greenBelt', + intersects: true, + entities: [ + { + name: 'Buckinghamshire', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/610030', + }, + }, + ], + }, + { + value: 'designated', + intersects: false, + }, + { + value: 'nature.SAC', + intersects: false, + }, + { + value: 'nature.SPA', + intersects: false, + }, + { + value: 'nature.ASNW', + intersects: false, + }, + { + value: 'nature.SSSI', + intersects: false, + }, + { + value: 'brownfieldSite', + intersects: false, + }, + { + value: 'designated.WHS', + intersects: false, + }, + { + value: 'registeredPark', + intersects: false, + }, + { + value: 'designated.AONB', + intersects: false, + }, + { + value: 'nature.ramsarSite', + intersects: false, + }, + { + value: 'designated.nationalPark', + intersects: false, + }, + { + value: 'designated.conservationArea', + intersects: false, + }, + { + value: 'designated.nationalPark.broads', + intersects: false, + }, + ], + }, + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'MultiPolygon', + coordinates: [ + [ + [ + [-0.525061, 51.514352], + [-0.525278, 51.513929], + [-0.525415, 51.513695], + [-0.525716, 51.513284], + [-0.52582, 51.513149], + [-0.526395, 51.512578], + [-0.526474, 51.512515], + [-0.526452, 51.512518], + [-0.526483, 51.512486], + [-0.526068, 51.512397], + [-0.523001, 51.511595], + [-0.520218, 51.510925], + [-0.517193, 51.51149], + [-0.51608, 51.511659], + [-0.512427, 51.512263], + [-0.51294, 51.514283], + [-0.51624, 51.514275], + [-0.516107, 51.514586], + [-0.515866, 51.514961], + [-0.515496, 51.515608], + [-0.515375, 51.515791], + [-0.515233, 51.516085], + [-0.515087, 51.516427], + [-0.515002, 51.516564], + [-0.51593, 51.51681], + [-0.51572, 51.517065], + [-0.515697, 51.517105], + [-0.515076, 51.517944], + [-0.517128, 51.518561], + [-0.517376, 51.518606], + [-0.517472, 51.518631], + [-0.518067, 51.518889], + [-0.518535, 51.519053], + [-0.519212, 51.519268], + [-0.519295, 51.519132], + [-0.519332, 51.519087], + [-0.519402, 51.519063], + [-0.519778, 51.519074], + [-0.519836, 51.51911], + [-0.519794, 51.519233], + [-0.519782, 51.519305], + [-0.519782, 51.51938], + [-0.519791, 51.519392], + [-0.519814, 51.519401], + [-0.520024, 51.519401], + [-0.520946, 51.519346], + [-0.521302, 51.519305], + [-0.521431, 51.519302], + [-0.521839, 51.519245], + [-0.521818, 51.519184], + [-0.521806, 51.519184], + [-0.5218, 51.519164], + [-0.521768, 51.519168], + [-0.521645, 51.518838], + [-0.52135, 51.518888], + [-0.521321, 51.518816], + [-0.521348, 51.518812], + [-0.521338, 51.518785], + [-0.522282, 51.518658], + [-0.522348, 51.519178], + [-0.522998, 51.519094], + [-0.522932, 51.518675], + [-0.523307, 51.518771], + [-0.523838, 51.518729], + [-0.523878, 51.518918], + [-0.52392, 51.518914], + [-0.523943, 51.519022], + [-0.524932, 51.51886], + [-0.52487, 51.518642], + [-0.524794, 51.518432], + [-0.524769, 51.518321], + [-0.52465, 51.518036], + [-0.524606, 51.517876], + [-0.52459, 51.517846], + [-0.524504, 51.517529], + [-0.52444, 51.51722], + [-0.524403, 51.517082], + [-0.524459, 51.516655], + [-0.524776, 51.515182], + [-0.524921, 51.514691], + [-0.524995, 51.514496], + [-0.525061, 51.514352], + ], + ], + ], + }, + properties: { + name: '', + entity: 12000001973, + prefix: 'title-boundary', + dataset: 'title-boundary', + 'end-date': '', + typology: 'geography', + reference: '49708846', + 'entry-date': '2024-05-06', + 'start-date': '2011-01-11', + 'organisation-entity': '13', + }, + }, + area: { + hectares: 59.48202, + squareMetres: 594820.2, + }, + }, + }, + application: { + fee: { + calculated: 2535, + payable: 2535, + category: { + one: 578, + two: 0, + three: 0, + four: 0, + five: 0, + sixAndSeven: 0, + eight: 293, + nine: 0, + ten: 0, + eleven: { + one: 0, + two: 2535, + }, + twelve: { + one: 0, + two: 0, + }, + thirteen: 0, + fourteen: 0, + }, + exemption: { + disability: false, + resubmission: false, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + reference: { + govPay: 'oo7f1o1emrimo39j5tsg9utjge', + }, + }, + declaration: { + accurate: true, + connection: { + value: 'none', + }, + }, + preApp: { + reference: 'PP420', + date: '2024-05-01', + officer: 'Paul the Planner', + summary: 'Not provided', + }, + }, + proposal: { + projectType: ['new.residential.dwelling','alter.surfaces.parking','alter.highways.access'], + description: + 'The erection of 25 private dwellinghouses and associated infrastructure on vacant brownfield site', + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'Polygon', + coordinates: [ + [ + [-0.5202563671906586, 51.51349326091676], + [-0.5162271673824664, 51.51342965453125], + [-0.5160930726385158, 51.5119189712527], + [-0.5186025432309797, 51.51150473816995], + [-0.5192921685359919, 51.51150076298916], + [-0.5197391470751718, 51.5115882253788], + [-0.5204032314768795, 51.51156039632619], + [-0.5207544293552119, 51.512609937924225], + [-0.5202563671906586, 51.51349326091676], + ], + ], + }, + properties: null, + }, + area: { + hectares: 6.1751949999999995, + squareMetres: 61751.95, + }, + }, + access: { + affected: 'newRoad', + }, + utilities: { + foulSewageDisposal: 'sewer', + }, + flood: { + surfaceWaterDisposal: 'drainageSystem', + }, + units: { + total: 25, + residential: [ + { + type: 'house', + tenure: 'MH', + bedrooms: 3, + identicalUnits: 10, + }, + { + type: 'house', + tenure: 'MH', + bedrooms: 4, + identicalUnits: 5, + }, + { + type: 'flat', + tenure: 'SAIR', + bedrooms: 1, + identicalUnits: 8, + }, + { + type: 'house', + tenure: 'SAIR', + bedrooms: 2, + identicalUnits: 2, + }, + ], + }, + }, + }, + responses: [ + { + question: 'Is the property in Buckinghamshire?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Something else', + }, + ], + metadata: { + sectionName: 'The property', + }, + }, + { + question: 'Which of these best describes the use of the property?', + responses: [ + { + value: 'Other', + }, + ], + metadata: { + sectionName: 'The property', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'No, none of these', + }, + ], + metadata: { + sectionName: 'The property', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Vacant land', + }, + ], + metadata: { + sectionName: 'The property', + }, + }, + { + question: 'Is the property in a flood zone?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Apply for planning permission', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'Your contact details', + responses: [ + { + value: + 'Andy Agent AGNC Agency 0123456789 andytheagent@agncagency.com', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Are you applying on behalf of someone else?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Which of these best describes you?', + responses: [ + { + value: 'Professional agent', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Your contact address', + responses: [ + { + value: 'Roady Road, Towny Town, Cody Code', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Which of these best describes the applicant?', + responses: [ + { + value: 'Company', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Name of the company', + responses: [ + { + value: 'McHouseface Incorporated', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: "Applicant's contact details", + responses: [ + { + value: + 'Mike McHouseface 9876543210 mikemchouseface@housefacemike.com', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: + "Is the applicant's contact address the same as the property address?", + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: "Applicant's contact address", + responses: [ + { + value: 'Posty Postlane, Postown, ABC 123', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Can a planning officer see the works from public land?', + responses: [ + { + value: "No, to see the works you'd have to come onto the property", + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Which of these best describes you?', + responses: [ + { + value: 'Professional agent', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'If we need to make a site visit, who should we contact?', + responses: [ + { + value: 'Someone else', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: + 'Contact details of the person we should contact about a site visit', + responses: [ + { + value: 'Kyle Keybearer 543210 kylewiththekeys@keysfromkyle.com', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'What type of application is this?', + responses: [ + { + value: 'Planning Permission', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'Which of these best describes you?', + responses: [ + { + value: "I'm acting on the applicant's behalf", + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'How many owners or agricultural tenants have been notified?', + responses: [ + { + value: '1', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Full name of the notified owner or agricultural tenant', + responses: [ + { + value: 'Agamemnon Agricullen', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Address of the notified owner or agricultural tenant', + responses: [ + { + value: 'Aggy Avenue, Mycenae, 212 00, Greece', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: + 'Date on which notice was given to the owner or agricultural tenant', + responses: [ + { + value: '2024-07-01', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Is the applicant the sole owner of the land?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/13/made', + }, + ], + sectionName: 'About you', + }, + }, + { + question: + 'Does the applicant know the names and addresses of all owners and agricultural tenants?', + responses: [ + { + value: 'Yes, all of them', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: + 'Has the applicant given requisite notice to all the owners and agricultural tenants?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/13/made', + }, + ], + sectionName: 'About you', + }, + }, + { + question: 'Certificate of ownership declaration - Certificate B', + responses: [ + { + value: 'I certify that the above is true', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/13/made', + }, + { + text: 'Schedule 2 to the Town and Country Planning (Development Management Procedure (England) (Order) 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/schedule/2/made', + }, + ], + sectionName: 'About you', + }, + }, + { + question: 'What type of application are you submitting?', + responses: [ + { + value: 'Major development', + }, + ], + metadata: { + policyRefs: [ + { + text: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'Does your project involve changes to an existing roof?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Does your project involve any alterations to ground or floor levels?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Does your project involve any alterations to ground or floor levels?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Have works already started?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Select the changes involved in the project', + responses: [ + { + value: 'Homes', + }, + { + value: 'Car parking', + }, + { + value: 'Service roads and other means of access', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Does the proposal involve a change of use?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: + 'Does the development involve new built waste disposal facilities?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'What type of development are you applying for?', + responses: [ + { + value: 'Major development', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'What type of application are you submitting?', + responses: [ + { + value: 'Something else', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Does the development involve any of the following?', + responses: [ + { + value: 'New public roads to be provided within the site', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Do your plans and drawings identify areas to store and aid the collection of waste?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Have arrangements been made for the separate storage and collection of recyclable waste?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Does the project introduce any external materials?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Are you providing further details about existing or proposed materials through your plans, drawings, or a design and access statement?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Is the property in Greater London?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: + 'Are there existing or are you proposing parking spaces for any of these on the site?', + responses: [ + { + value: 'Cars', + }, + { + value: 'Bicycles', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'What is the number of existing car parking spaces?', + responses: [ + { + value: '0', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'What is the proposed total number of car parking spaces?', + responses: [ + { + value: '30', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'What is the number of existing bicycle parking spaces?', + responses: [ + { + value: '0', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'What is the proposed total number of bicycle parking spaces?', + responses: [ + { + value: '20', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'How is foul sewage to be disposed of?', + responses: [ + { + value: 'Main sewer', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Are you proposing to connect to the existing drainage system?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Is the project likely to affect biodiversity or geological conservation in any of these areas?', + responses: [ + { + value: 'None of these', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: + 'Could the project affect the biodiversity or geology on the development site or land adjacent to or near it?', + responses: [ + { + value: 'No, definitely not', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Are there any protected trees on the property?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Are there trees or hedges on the proposed development site?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Are there trees or hedges on land adjacent to the proposed development site that could influence the development or might be important as part of the local landscape character?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Does the proposal involve the need to dispose of trade effluents or waste?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Does the proposal involve the use or storage of any of the following materials?', + responses: [ + { + value: 'None of these', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'What type of application are you submitting?', + responses: [ + { + value: 'Something else', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: + 'Does your proposal involve the loss, gain or change of use of non-residential floorspace?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Does the development involve the loss or gain of rooms in hotels or residential institutions and hostels?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Does the development concern industrial or commercial processes?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Is the proposal a waste management development?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Is the property in a flood zone?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Is the property in flood zone 1?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Is the property in an area vulnerable to flooding?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: + 'Is the development within 20 metres of a watercourse (e.g. river, stream or canal)?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Will the development increase the flood risk elsewhere?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'How will surface water be disposed of?', + responses: [ + { + value: 'Sustainable drainage system', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Is the site of the development currently vacant?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Please describe the current use of the site', + responses: [ + { + value: 'Vacant brownfield', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Does the project involve any of the following?', + responses: [ + { + value: 'None of these', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Is the property in Greater London?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Does your project result in the gain or loss of any homes?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Which of these does your project involve?', + responses: [ + { + value: 'Proposing one or more new residential units', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Does the project affect any residential units?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: + 'Are there any existing employees on the site or will the development lead to new employees on the site?', + responses: [ + { + value: 'None of the above', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Are hours of opening relevant to this development?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Is the property in Greater London?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'What type of application is this?', + responses: [ + { + value: 'Major development', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'How do you want to submit this information?', + responses: [ + { + value: 'Upload a document', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'Does the property include any of these?', + responses: [ + { + value: 'None of these', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'Does the property include any of these?', + responses: [ + { + value: 'None of these', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'Heritage Statement needed?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: + 'Do you believe that, if the development is granted planning permission, the Biodiversity Gain Condition would apply? ', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Part 2, Schedule 7A of the Town and Country Planning Act 1990', + url: 'https://www.legislation.gov.uk/ukpga/2021/30/schedule/14/enacted', + }, + ], + sectionName: 'The project', + }, + }, + { + question: + 'When was the pre-development biodiversity value of onsite habitat(s) calculated?', + responses: [ + { + value: 'An earlier proposed date', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'On what date was the pre-development biodiversity value of onsite habitat(s) calculated?', + responses: [ + { + value: '2024-05-01', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Why was this date used?', + responses: [ + { + value: 'N/A', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'What was the pre-development biodiversity value of onsite habitats on the provided date?', + responses: [ + { + value: '0', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'What was the publication date of the biodiversity metric tool(s) used to calculate the onsite biodiversity value(s)?', + responses: [ + { + value: '2024-04-07', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Has there been any loss (or degradation) of any onsite habitat(s), resulting from activities carried out before the provided date?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Does the application site have irreplaceable habitat(s) which exist on land to which this application relates?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Biodiversity Gain Requirements (Irreplaceable Habitat) Regulations 2024', + url: 'https://www.legislation.gov.uk/uksi/2024/48/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: + 'Please confirm your application is accompanied by the following', + responses: [ + { + value: 'I confirm the above', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Please provide any other details (for example references to relevant documents)', + responses: [ + { + value: 'N/A', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Did you get any pre-application advice from the council before making this application?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'Your application', + }, + }, + { + question: 'What was the name of the planning officer you spoke to?', + responses: [ + { + value: 'Paul the Planner', + }, + ], + metadata: { + sectionName: 'Your application', + }, + }, + { + question: 'What was your reference?', + responses: [ + { + value: 'PP420', + }, + ], + metadata: { + sectionName: 'Your application', + }, + }, + { + question: 'What date was the pre-application advice given on?', + responses: [ + { + value: '2024-05-01', + }, + ], + metadata: { + sectionName: 'Your application', + }, + }, + { + question: 'What was the pre-application advice you have received?', + responses: [ + { + value: + 'The proposal will require the new Biodiversity Net Gain conditions.', + }, + ], + metadata: { + sectionName: 'Your application', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Full planning permission', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'What type of development are you applying for?', + responses: [ + { + value: 'Major development', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + }, + ], + sectionName: 'Your application', + }, + }, + { + question: 'Is the property a home?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'Are you building fewer than 10 new homes?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'What types of changes does the application relate to?', + responses: [ + { + value: 'New buildings', + }, + { + value: 'Alterations', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'What types of changes does the application relate to?', + responses: [ + { + value: 'New build homes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'What types of changes does the application relate to?', + responses: [ + { + value: 'Hard surfaces used for car parking', + }, + { + value: 'Access roads', + }, + { + value: 'Other alterations', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'Check for multiple fees?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'Does the proposal include fees in category 1 or 2 to 13?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'Does the proposal include developments in category 1?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: + 'Does the proposal include development in categories 2, 3 or 4?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'Does the proposal include developments in category 5 to 13?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Another application type', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'Is the property a home?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'Does the project involve any of these changes?', + responses: [ + { + value: 'Construction of a new building', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'Does the application qualify for a disability exemption?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'Is the site a sports field?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: + 'Is the application being made by (or on behalf of) a parish or community council?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/11', + }, + ], + sectionName: 'Your application', + }, + }, + { + question: + 'Are you also submitting another proposal for the same site today?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/schedule/1', + }, + ], + sectionName: 'Your application', + }, + }, + { + question: + 'Does the application qualify for the sports club fee reduction?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: + 'Does the application qualify for the parish council reduction?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/11', + }, + ], + sectionName: 'Your application', + }, + }, + { + question: + 'Does the application qualify for the alternative application reduction?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/schedule/1', + }, + ], + sectionName: 'Your application', + }, + }, + { + question: 'What type of development are you applying for?', + responses: [ + { + value: 'Major development', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + }, + ], + sectionName: 'Upload application documents', + }, + }, + { + question: 'What type of application are you submitting?', + responses: [ + { + value: 'Major', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Upload application documents', + }, + }, + { + question: 'Is the application for a waste development?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Upload application documents', + }, + }, + { + question: 'Which Local Planning authority is it?', + responses: [ + { + value: 'Buckinghamshire', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Review and confirm', + }, + }, + { + question: 'Connections with Buckinghamshire Council', + responses: [ + { + value: 'None of the above apply to me', + }, + ], + metadata: { + sectionName: 'Review and confirm', + }, + }, + { + question: 'I confirm that:', + responses: [ + { + value: + 'The information contained in this application is truthful, accurate and complete, to the best of my knowledge', + }, + ], + metadata: { + sectionName: 'Review and confirm', + }, + }, + { + question: 'Does the application qualify for a disability exemption?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Pay and send', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Full planning permission', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Pay and send', + }, + }, + { + question: 'Which Local Planning authority is it?', + responses: [ + { + value: 'Buckinghamshire', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Pay and send', + }, + }, + ], + files: [ + { + name: 'https://api.editor.planx.dev/file/private/k9n2v5rn/Site-location-plan-example.pdf', + type: ['relevantInformation'], + }, + { + name: 'https://api.editor.planx.dev/file/private/a8i079zc/Elevations-best-practice.pdf', + type: ['necessaryInformation'], + }, + ], + metadata: { + id: '180da003-279d-40dc-b538-a616c8c2a700', + organisation: 'BKM', + submittedAt: '2024-07-03T06:57:54.645Z', + source: 'PlanX', + service: { + flowId: '28e258a7-812f-4390-b520-7c00e7f5cd77', + url: 'https://editor.planx.dev/buckinghamshire/apply-for-planning-permission/published', + files: { + required: [ + { + value: 'necessaryInformation', + description: + 'Information the authority considers necessary for the application', + }, + ], + recommended: [ + { + value: 'relevantInformation', + description: + 'Information the applicant considers relevant to the application', + }, + ], + optional: [], + }, + fee: { + calculated: [], + payable: [], + }, + }, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + }, +}; diff --git a/examples/prototypeApplication/data/planningPermission/minor.ts b/examples/prototypeApplication/data/planningPermission/minor.ts index e69de29b..d6681bbe 100644 --- a/examples/prototypeApplication/data/planningPermission/minor.ts +++ b/examples/prototypeApplication/data/planningPermission/minor.ts @@ -0,0 +1,1617 @@ +import { PrototypeApplication } from '../../../../types/schemas/prototypeApplication'; + +const version = process.env['VERSION'] || '@next'; + +export const planningPermissionMinorPrototype: PrototypeApplication = { + applicationType: 'pp.full.minor', + data: { + user: { + role: 'applicant', + }, + applicant: { + type: 'individual', + name: { + first: 'Richard', + last: 'Gambier-Parry', + }, + email: 'richardgambierparry@secretmi6hq.ss', + phone: { + primary: '0123456789', + }, + address: { + sameAsSiteAddress: true, + }, + siteContact: { + role: 'applicant', + }, + ownership: { + interest: 'owner.sole', + certificate: 'a', + agriculturalTenants: false, + declaration: { + accurate: true, + }, + }, + }, + property: { + address: { + latitude: 52.0003007, + longitude: -0.8271026, + x: 480616, + y: 234188, + title: 'WHADDON JUBILEE HALL, STOCK LANE, WHADDON', + source: 'Ordnance Survey', + uprn: '000766301871', + usrn: '1400167', + pao: 'WHADDON JUBILEE HALL', + street: 'STOCK LANE', + town: 'WHADDON', + postcode: 'MK17 0LS', + singleLine: + 'WHADDON JUBILEE HALL, STOCK LANE, WHADDON, BUCKINGHAMSHIRE, MK17 0LS', + }, + localAuthorityDistrict: ['Aylesbury Vale', 'Buckinghamshire'], + region: 'South East', + type: 'commercial.community.hall', + planning: { + sources: [ + 'https://api.editor.planx.dev/gis/buckinghamshire?geom=POLYGON+%28%28-0.8271436393261123+52.00047292273189%2C+-0.8268579840660265+52.000354853531235%2C+-0.8271127939224412+52.00012862216494%2C+-0.8273246884346175+52.00021366547688%2C+-0.8272831141948866+52.000249994609476%2C+-0.8273608982563186+52.00027971842326%2C+-0.8271436393261123+52.00047292273189%29%29&sessionId=24ef1013-c18e-456a-bcc6-e7901ec86270', + 'https://api.editor.planx.dev/roads?usrn=1400167', + ], + designations: [ + { + value: 'tpo', + intersects: false, + }, + { + value: 'flood', + intersects: false, + }, + { + value: 'listed', + intersects: false, + }, + { + value: 'article4', + intersects: false, + }, + { + value: 'monument', + intersects: false, + }, + { + value: 'greenBelt', + intersects: false, + }, + { + value: 'designated', + intersects: false, + }, + { + value: 'nature.SAC', + intersects: false, + }, + { + value: 'nature.SPA', + intersects: false, + }, + { + value: 'nature.ASNW', + intersects: false, + }, + { + value: 'nature.SSSI', + intersects: false, + }, + { + value: 'brownfieldSite', + intersects: false, + }, + { + value: 'designated.WHS', + intersects: false, + }, + { + value: 'registeredPark', + intersects: false, + }, + { + value: 'designated.AONB', + intersects: false, + }, + { + value: 'nature.ramsarSite', + intersects: false, + }, + { + value: 'designated.nationalPark', + intersects: false, + }, + { + value: 'designated.conservationArea', + intersects: false, + }, + { + value: 'designated.nationalPark.broads', + intersects: false, + }, + { + value: 'road.classified', + intersects: true, + entities: [ + { + name: 'Stock Lane - Classified Unnumbered', + source: { + text: 'Ordnance Survey MasterMap Highways', + }, + }, + ], + }, + ], + }, + // materials: { + // boundary: 'black painted timber', + // }, + }, + application: { + fee: { + calculated: 578, + payable: 578, + category: { + fourteen: 578, + }, + exemption: { + disability: false, + resubmission: false, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + reference: { + govPay: 'sandbox-123', + }, + }, + declaration: { + accurate: true, + connection: { + value: 'none', + }, + }, + preApp: { + reference: '0123456789', + date: '2020-01-01', + officer: 'Pete the Planning Person', + summary: 'Not provided', + }, + }, + proposal: { + projectType: ['changeOfUse'], + description: + 'Change of use from sui generis (top secret HQ of MI6 Section VIII) to home', + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'Polygon', + coordinates: [ + [ + [-0.8271436393261123, 52.00047292273189], + [-0.8268579840660265, 52.000354853531235], + [-0.8271127939224412, 52.00012862216494], + [-0.8273246884346175, 52.00021366547688], + [-0.8272831141948866, 52.000249994609476], + [-0.8273608982563186, 52.00027971842326], + [-0.8271436393261123, 52.00047292273189], + ], + ], + }, + properties: null, + }, + area: { + hectares: 0.069395, + squareMetres: 693.95, + }, + }, + materials: { + boundary: 'white painted timber', + }, + units: { + total: 1, + residential: [ + { + type: 'house', + tenure: 'selfCustomBuild', + bedrooms: 4, + identicalUnits: 1, + }, + ], + }, + }, + }, + responses: [ + { + question: 'Is the property in Buckinghamshire?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Something else', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'Which of these best describes the use of the property?', + responses: [ + { + value: 'Institutions and community buildings', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'What type of institutional building is it?', + responses: [ + { + value: 'Community hall', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'Is the property in a flood zone?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Apply for planning permission', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'Are you applying on behalf of someone else?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Which of these best describes you?', + responses: [ + { + value: 'Private individual', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Your contact details', + responses: [ + { + value: + 'Richard Gambier-Parry 0123456789 richardgambierparry@secretmi6hq.ss', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Is your contact address the same as the property address?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Can a planning officer see the works from public land?', + responses: [ + { + value: "Yes, it's visible from the road or somewhere else", + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: + 'We may need to visit the site to assess your application. If we do, who should we contact to arrange the visit?', + responses: [ + { + value: 'Me, the applicant', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'What type of application is this?', + responses: [ + { + value: 'Planning Permission', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'Which of these best describes you?', + responses: [ + { + value: "I'm the applicant", + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'Are you the sole owner of the land?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/13/made', + }, + ], + sectionName: 'About you', + }, + }, + { + question: 'Does the land have any agricultural tenants?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/13/made', + }, + ], + sectionName: 'About you', + }, + }, + { + question: 'Certificate of ownership declaration - Certificate A', + responses: [ + { + value: 'I certify the above', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/13/made', + }, + ], + sectionName: 'About you', + }, + }, + { + question: 'What type of application are you submitting?', + responses: [ + { + value: 'Minor development', + }, + ], + metadata: { + policyRefs: [ + { + text: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'Does your project involve changes to an existing roof?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Select the changes involved in the project', + responses: [ + { + value: 'Change of use', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Does your project involve any alterations to ground or floor levels?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'What is the proposed new use?', + responses: [ + { + value: 'Home', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Have works already started?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'What type of development are you applying for?', + responses: [ + { + value: 'Minor development', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'What type of application are you submitting?', + responses: [ + { + value: 'Something else', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Does the development involve any of the following?', + responses: [ + { + value: + 'New or altered vehicle access proposed to or from the public highway', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Do your plans and drawings identify areas to store and aid the collection of waste?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Have arrangements been made for the separate storage and collection of recyclable waste?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Does the project introduce any external materials?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Do all the new materials match the existing?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'What external materials are you adding?', + responses: [ + { + value: 'Fences, walls and gates on the boundary', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: + 'Describe the existing materials of fences, walls and gates on the boundary of the property', + responses: [ + { + value: 'black painted timber', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: + 'Describe the new materials of fences, walls and gates on the boundary of the property', + responses: [ + { + value: 'white painted timber', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: + 'Are you providing further details about existing or proposed materials through your plans, drawings, or a design and access statement?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Is the property in Greater London?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: + 'Are there existing or are you proposing parking spaces for any of these on the site?', + responses: [ + { + value: 'Cars', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'What is the number of existing car parking spaces?', + responses: [ + { + value: '2', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'What is the proposed total number of car parking spaces?', + responses: [ + { + value: '2', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'How is foul sewage to be disposed of?', + responses: [ + { + value: 'Main sewer', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Are you proposing to connect to the existing drainage system?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Is the project likely to affect biodiversity or geological conservation in any of these areas?', + responses: [ + { + value: 'None of these', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: + 'Could the project affect the biodiversity or geology on the development site or land adjacent to or near it?', + responses: [ + { + value: 'No, definitely not', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Are there any protected trees on the property?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Are there trees or hedges on the proposed development site?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Are there trees or hedges on land adjacent to the proposed development site that could influence the development or might be important as part of the local landscape character?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Does the proposal involve the need to dispose of trade effluents or waste?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Does the proposal involve the use or storage of any of the following materials?', + responses: [ + { + value: 'None of these', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'What type of application are you submitting?', + responses: [ + { + value: 'Something else', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: + 'Does your proposal involve the loss, gain or change of use of non-residential floorspace?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Does the development involve the loss or gain of rooms in hotels or residential institutions and hostels?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Does the development concern industrial or commercial processes?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Is the proposal a waste management development?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Is the property in a flood zone?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Is the property in flood zone 1?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Is the property in an area vulnerable to flooding?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: + 'Is the development within 20 metres of a watercourse (e.g. river, stream or canal)?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Will the development increase the flood risk elsewhere?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'How will surface water be disposed of?', + responses: [ + { + value: 'Soakaway', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Is the site of the development currently vacant?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Please describe the current use of the site', + responses: [ + { + value: 'Top secret HQ of MI6 Section VIII', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Does the project involve any of the following?', + responses: [ + { + value: 'None of these', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Is the property in Greater London?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Does your project result in the gain or loss of any homes?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Which of these does your project involve?', + responses: [ + { + value: 'Proposing one or more new residential units', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Does the project affect any residential units?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: + 'Are there any existing employees on the site or will the development lead to new employees on the site?', + responses: [ + { + value: 'None of the above', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Are hours of opening relevant to this development?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: 'Is the property in Greater London?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'What type of application is this?', + responses: [ + { + value: 'Minor development', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Is the property on designated land?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: 'Does the property include any of these?', + responses: [ + { + value: 'None of these', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'Does the property include any of these?', + responses: [ + { + value: 'None of these', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'The project', + }, + }, + { + question: 'Heritage Statement needed?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The project', + }, + }, + { + question: + 'Do you believe that, if the development is granted planning permission, the Biodiversity Gain Condition would apply? ', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Part 2, Schedule 7A of the Town and Country Planning Act 1990', + url: 'https://www.legislation.gov.uk/ukpga/2021/30/schedule/14/enacted', + }, + ], + sectionName: 'The project', + }, + }, + { + question: + 'What are the reasons why the Biodiversity Gain Condition does not apply?', + responses: [ + { + value: 'Development is below de minimis threshold', + }, + ], + metadata: { + sectionName: 'The project', + }, + }, + { + question: + 'Did you get any pre-application advice from the council before making this application?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'Your application', + }, + }, + { + question: 'What was the name of the planning officer you spoke to?', + responses: [ + { + value: 'Pete the Planning Person', + }, + ], + metadata: { + sectionName: 'Your application', + }, + }, + { + question: 'What was your reference?', + responses: [ + { + value: '0123456789', + }, + ], + metadata: { + sectionName: 'Your application', + }, + }, + { + question: 'What date was the pre-application advice given on?', + responses: [ + { + value: '2020-01-01', + }, + ], + metadata: { + sectionName: 'Your application', + }, + }, + { + question: 'What was the pre-application advice you have received?', + responses: [ + { + value: + 'I was recommended to submit a design and access statement due to the resulting access changes.', + }, + ], + metadata: { + sectionName: 'Your application', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Full planning permission', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'What type of development are you applying for?', + responses: [ + { + value: 'Minor development', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + }, + ], + sectionName: 'Your application', + }, + }, + { + question: 'Is the property a home?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'What types of changes does the application relate to?', + responses: [ + { + value: 'Change use', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'What is the new use?', + responses: [ + { + value: 'Something else', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'Check for multiple fees?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'Does the proposal include fees in category 1 or 2 to 13?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Another application type', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'Is the property a home?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'Does the project involve any of these changes?', + responses: [ + { + value: 'Changing the use of a property', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'Does the application qualify for a disability exemption?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: 'Is the site a sports field?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: + 'Is the application being made by (or on behalf of) a parish or community council?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/11', + }, + ], + sectionName: 'Your application', + }, + }, + { + question: + 'Are you also submitting another proposal for the same site today?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/schedule/1', + }, + ], + sectionName: 'Your application', + }, + }, + { + question: + 'Does the application qualify for the sports club fee reduction?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Your application', + }, + }, + { + question: + 'Does the application qualify for the parish council reduction?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/11', + }, + ], + sectionName: 'Your application', + }, + }, + { + question: + 'Does the application qualify for the alternative application reduction?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/schedule/1', + }, + ], + sectionName: 'Your application', + }, + }, + { + question: 'What type of development are you applying for?', + responses: [ + { + value: 'Minor development', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + }, + ], + sectionName: 'Upload application documents', + }, + }, + { + question: 'What type of application are you submitting?', + responses: [ + { + value: 'Minor', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Upload application documents', + }, + }, + { + question: 'Which Local Planning authority is it?', + responses: [ + { + value: 'Buckinghamshire', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Review and confirm', + }, + }, + { + question: 'Connections with Buckinghamshire Council', + responses: [ + { + value: 'None of the above apply to me', + }, + ], + metadata: { + sectionName: 'Review and confirm', + }, + }, + { + question: 'I confirm that:', + responses: [ + { + value: + 'The information contained in this application is truthful, accurate and complete, to the best of my knowledge', + }, + ], + metadata: { + sectionName: 'Review and confirm', + }, + }, + { + question: 'Does the application qualify for a disability exemption?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Pay and send', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Full planning permission', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Pay and send', + }, + }, + { + question: 'Which Local Planning authority is it?', + responses: [ + { + value: 'Buckinghamshire', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Pay and send', + }, + }, + ], + files: [ + { + name: 'https://api.editor.planx.dev/file/private/k9n2v5rn/Site-location-plan-example.pdf', + type: ['relevantInformation'], + }, + { + name: 'https://api.editor.planx.dev/file/private/vxui6fxw/Rooftype_pyramid%404x.png', + type: ['necessaryInformation'], + }, + { + name: 'https://api.editor.planx.dev/file/private/a8i079zc/Elevations-best-practice.pdf', + type: ['necessaryInformation'], + }, + ], + metadata: { + id: '24ef1013-c18e-456a-bcc6-e7901ec86270', + organisation: 'BKM', + submittedAt: '2024-07-02T06:52:42.466Z', + source: 'PlanX', + service: { + flowId: '28e258a7-812f-4390-b520-7c00e7f5cd77', + url: 'https://editor.planx.dev/buckinghamshire/apply-for-planning-permission/published', + files: { + required: [ + { + value: 'necessaryInformation', + description: + 'Information the authority considers necessary for the application', + }, + ], + recommended: [ + { + value: 'relevantInformation', + description: + 'Information the applicant considers relevant to the application', + }, + ], + optional: [], + }, + fee: { + calculated: [], + payable: [], + }, + }, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + }, +}; diff --git a/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json b/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json index 425e6d39..54129ed1 100644 --- a/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json +++ b/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json @@ -348,7 +348,151 @@ "type": "residential.dwelling.house.detached" }, "proposal": { - "test": "todo" + "projectType": [ + "extend.outbuilding.studio" + ], + "description": "Construction of a small outbuilding for use as a writing studio.", + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -0.7085376977920632, + 51.699564621757816 + ], + [ + -0.7086127996444802, + 51.69965605327502 + ], + [ + -0.708982944488535, + 51.699654390885456 + ], + [ + -0.7089909911155797, + 51.699673508361855 + ], + [ + -0.7089319825172521, + 51.699683482694184 + ], + [ + -0.7089520990848638, + 51.69973002954916 + ], + [ + -0.7091867923736667, + 51.69968930105364 + ], + [ + -0.7092216610908603, + 51.699688469859495 + ], + [ + -0.709239095449457, + 51.69968514508267 + ], + [ + -0.709253847599039, + 51.6997134056779 + ], + [ + -0.7093128561973666, + 51.69970176896433 + ], + [ + -0.7092699408531282, + 51.699610337539525 + ], + [ + -0.7096253335476013, + 51.699648572521454 + ], + [ + -0.7098613679409116, + 51.69958457046823 + ], + [ + -0.7098962366581053, + 51.69955049141595 + ], + [ + -0.7098090648651213, + 51.6994216557425 + ], + [ + -0.7099243998527616, + 51.699390070166544 + ], + [ + -0.7098264992237182, + 51.699238791576136 + ], + [ + -0.7097460329532714, + 51.699236297968724 + ], + [ + -0.7095716893673034, + 51.69927536446852 + ], + [ + -0.7095421850681398, + 51.69927619567025 + ], + [ + -0.7092954218387698, + 51.69931941814053 + ], + [ + -0.7090929150581455, + 51.69937427737031 + ], + [ + -0.709021836519251, + 51.69938923896689 + ], + [ + -0.7089574635028936, + 51.6994008757608 + ], + [ + -0.7088904082775213, + 51.69942082454341 + ], + [ + -0.7086691260337761, + 51.699501450783515 + ], + [ + -0.7086181640624932, + 51.699517243535354 + ], + [ + -0.7085457444191079, + 51.699541348251245 + ], + [ + -0.7085350155830483, + 51.69954799782576 + ], + [ + -0.7085376977920632, + 51.699564621757816 + ] + ] + ] + }, + "properties": null + }, + "area": { + "hectares": 0.299367, + "squareMetres": 2993.67 + } + } } }, "preAssessment": [ diff --git a/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json b/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json index 31dd77a4..b178ecbb 100644 --- a/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json +++ b/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json @@ -213,7 +213,76 @@ "type": "residential.dwelling.house.detached" }, "proposal": { - "test": "todo" + "projectType": [ + "extend.rear" + ], + "description": "Rear extension of a home", + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -0.646633654832832, + 51.61556919642334 + ], + [ + -0.6466296315193095, + 51.61554504700152 + ], + [ + -0.6465049088001171, + 51.61551173743314 + ], + [ + -0.6464512646198194, + 51.61522027766699 + ], + [ + -0.6463131308555524, + 51.61522943785954 + ], + [ + -0.6463037431240002, + 51.61520695374722 + ], + [ + -0.6462487578391951, + 51.615222775901515 + ], + [ + -0.6462393701076429, + 51.61520861923739 + ], + [ + -0.6459456682205124, + 51.615292726412235 + ], + [ + -0.6460489332675857, + 51.61561499701554 + ], + [ + -0.646633654832832, + 51.61556919642334 + ] + ] + ] + }, + "properties": null + }, + "area": { + "hectares": 0.141826, + "squareMetres": 1418.26 + } + }, + "extend": { + "area": { + "squareMetres": 24 + } + } } }, "preAssessment": [ diff --git a/examples/prototypeApplication/planningPermission/fullHouseholder.json b/examples/prototypeApplication/planningPermission/fullHouseholder.json new file mode 100644 index 00000000..86b7c832 --- /dev/null +++ b/examples/prototypeApplication/planningPermission/fullHouseholder.json @@ -0,0 +1,1676 @@ +{ + "applicationType": "pp.full.householder", + "data": { + "application": { + "fee": { + "calculated": 258, + "payable": 258, + "category": { + "sixAndSeven": 258 + }, + "exemption": { + "disability": false, + "resubmission": false + }, + "reduction": { + "sports": false, + "parishCouncil": false, + "alternative": false + }, + "reference": { + "govPay": "sandbox-ref-456" + } + }, + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } + } + }, + "user": { + "role": "proxy" + }, + "applicant": { + "type": "individual", + "name": { + "first": "David", + "last": "Bowie" + }, + "email": "ziggy@example.com", + "phone": { + "primary": "Not provided by agent" + }, + "address": { + "sameAsSiteAddress": true + }, + "siteContact": { + "role": "proxy" + }, + "ownership": { + "interest": "owner.sole", + "certificate": "a", + "agriculturalTenants": false, + "declaration": { + "accurate": true + } + }, + "agent": { + "name": { + "first": "Ziggy", + "last": "Stardust" + }, + "email": "ziggy@example.com", + "phone": { + "primary": "01100 0110 0011" + }, + "address": { + "line1": "40 Stansfield Road", + "line2": "Brixton", + "town": "London", + "county": "Greater London", + "postcode": "SW9 9RZ", + "country": "UK" + } + } + }, + "property": { + "address": { + "latitude": 51.4656522, + "longitude": -0.1185926, + "x": 530787, + "y": 175754, + "title": "40, STANSFIELD ROAD, LONDON", + "singleLine": "40, STANSFIELD ROAD, LONDON, SW9 9RZ", + "source": "Ordnance Survey", + "uprn": "100021892955", + "usrn": "21901294", + "pao": "40", + "street": "STANSFIELD ROAD", + "town": "LONDON", + "postcode": "SW9 9RZ" + }, + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -0.1186569035053321, + 51.465703531871384 + ], + [ + -0.1185938715934822, + 51.465724418998775 + ], + [ + -0.1184195280075143, + 51.46552473766957 + ], + [ + -0.11848390102387167, + 51.4655038504508 + ], + [ + -0.1186569035053321, + 51.465703531871384 + ] + ] + ] + }, + "properties": null + }, + "area": { + "hectares": 0.012592, + "squareMetres": 125.92 + } + }, + "planning": { + "sources": [ + "https://api.editor.planx.dev/gis/lambeth?geom=POLYGON+%28%28-0.1186569035053321+51.465703531871384%2C+-0.1185938715934822+51.465724418998775%2C+-0.1184195280075143+51.46552473766957%2C+-0.11848390102387167+51.4655038504508%2C+-0.1186569035053321+51.465703531871384%29%29&analytics=false&sessionId=81bcaa0f-baf5-4573-ba0a-ea868c573faf", + "https://api.editor.planx.dev/roads?usrn=21901294" + ], + "designations": [ + { + "value": "article4", + "intersects": false + }, + { + "value": "article4.caz", + "intersects": false + }, + { + "value": "tpo", + "intersects": false + }, + { + "value": "listed", + "intersects": false + }, + { + "value": "monument", + "intersects": false + }, + { + "value": "designated", + "intersects": false + }, + { + "value": "nature.SAC", + "intersects": false + }, + { + "value": "nature.ASNW", + "intersects": false + }, + { + "value": "nature.SSSI", + "intersects": false + }, + { + "value": "locallyListed", + "intersects": false + }, + { + "value": "nature.SPA", + "intersects": false + }, + { + "value": "designated.WHS", + "intersects": false + }, + { + "value": "registeredPark", + "intersects": false + }, + { + "value": "designated.AONB", + "intersects": false + }, + { + "value": "designated.nationalPark", + "intersects": false + }, + { + "value": "designated.conservationArea", + "intersects": false + }, + { + "value": "designated.nationalPark.broads", + "intersects": false + }, + { + "value": "road.classified", + "intersects": false + } + ] + }, + "localAuthorityDistrict": [ + "Lambeth" + ], + "region": "London", + "type": "residential.dwelling.house.terrace", + "titleNumber": { + "known": "No" + }, + "EPC": { + "known": "No" + }, + "parking": { + "cars": { + "count": 1 + }, + "cycles": { + "count": 2 + } + } + }, + "proposal": { + "projectType": [ + "extend.roof.dormer" + ], + "description": "Roof extension to the rear of the property, incorporating starship launchpad.", + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -0.1186569035053321, + 51.465703531871384 + ], + [ + -0.1185938715934822, + 51.465724418998775 + ], + [ + -0.1184195280075143, + 51.46552473766957 + ], + [ + -0.11848390102387167, + 51.4655038504508 + ], + [ + -0.1186569035053321, + 51.465703531871384 + ] + ] + ] + }, + "properties": null + }, + "area": { + "hectares": 0.012592, + "squareMetres": 125.92 + } + }, + "date": { + "start": "2024-05-01", + "completion": "2024-05-02" + }, + "extend": { + "area": { + "squareMetres": 45 + } + }, + "parking": { + "cars": { + "count": 1, + "difference": 0 + }, + "cycles": { + "count": 2, + "difference": 0 + } + } + } + }, + "responses": [ + { + "question": "Is the property in Lambeth?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "House" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of house it is?", + "responses": [ + { + "value": "Terrace" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "Is the property in a flood zone?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The property" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "House", + "metadata": { + "flags": [ + "Listed building consent / Not required" + ] + } + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "List the changes involved in the project", + "responses": [ + { + "value": "Add a roof extension", + "metadata": { + "flags": [ + "Listed building consent / Not required" + ] + } + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Have works already started?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Is the property in a flood zone?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What type of changes does the project involve?", + "responses": [ + { + "value": "Extension" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is the project to add an outbuilding?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "How much new floor area is being added to the house?", + "responses": [ + { + "value": "Less than 100m²" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "How much exactly is the internal floor area of the property increasing by?", + "responses": [ + { + "value": "45" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Does the project involve creating any new bedrooms or bathrooms?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Describe the wall materials of the existing house", + "responses": [ + { + "value": "London stock brick" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Describe the wall materials of the new extension", + "responses": [ + { + "value": "Metallic cladding, reflective. Multiple colours." + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Describe the material of the roof of the existing house", + "responses": [ + { + "value": "Grey slate" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Describe the material for the new roof of the extension", + "responses": [ + { + "value": "Zinc panels" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Describe the window materials of the existing house", + "responses": [ + { + "value": "Wooden sash windows, painted white" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Describe the window materials of the extension", + "responses": [ + { + "value": "Brushed steel." + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Describe the door materials of the existing house", + "responses": [ + { + "value": "Wood, painted." + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Describe the door materials of the extension", + "responses": [ + { + "value": "No door present" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Are there any trees that could fall within the property or the areas affected by the project (the previously drawn outline)?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Does the project involve any of these?", + "responses": [ + { + "value": "No, none of these" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Is the property in Greater London?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Does the site include more than one property?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Do you know the title number of the property?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Does the property have an Energy Performance Certificate (EPC)?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What type of application is this?", + "responses": [ + { + "value": "Planning permission for a home" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "When will the works start?", + "responses": [ + { + "value": "2024-05-01" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "When will the works be completed?", + "responses": [ + { + "value": "2024-05-02" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Does the site include parking spaces for any of these?", + "responses": [ + { + "value": "Cars" + }, + { + "value": "Bicycles" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Total number of car parking spaces before", + "responses": [ + { + "value": "1" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Total number of car parking spaces after", + "responses": [ + { + "value": "1" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What types of car parking space are present?", + "responses": [ + { + "value": "Off-street parking for residents only" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Off-street, residents-only car spaces before", + "responses": [ + { + "value": "1" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Off-street, residents-only car spaces after", + "responses": [ + { + "value": "1" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What type of bicycle parking is there?", + "responses": [ + { + "value": "Off-street cycle parking" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Off-street bicycle spaces before", + "responses": [ + { + "value": "2" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Off-street bicycle spaces after", + "responses": [ + { + "value": "2" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the property on designated land?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Does the property include any of these?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Heritage Statement needed?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is the property in a flood zone?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Apply for planning permission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Your contact details", + "responses": [ + { + "value": "Mx Ziggy Stardust 01100 0110 0011 ziggy@example.com" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Is this a test?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Are you applying on behalf of someone else?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "Friend or relative" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Your contact address", + "responses": [ + { + "value": "40 Stansfield Road, Brixton, London, Greater London, SW9 9RZ, UK" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes the applicant?", + "responses": [ + { + "value": "Private individual" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Applicant's title", + "responses": [ + { + "value": "Mr" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Do you want to provide an email address for the applicant?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Do you want to provide a telephone number for the applicant?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Is the applicant's contact address the same as the property address?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "Friend or relative" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "We may need to visit your site to assess your application. If we do, who should we contact to arrange the visit?", + "responses": [ + { + "value": "Me" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "Friend or relative acting on the applicant's behalf" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes the applicant's interest in the land?", + "responses": [ + { + "value": "Sole owner" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/39/made" + } + ], + "sectionName": "About you" + } + }, + { + "question": "Did you get any pre-application advice from the council before making this application?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About this application" + } + }, + { + "question": "What type of planning application are you making?", + "responses": [ + { + "value": "Full planning permission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About this application" + } + }, + { + "question": "Is the property a home?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About this application" + } + }, + { + "question": "What types of changes does the application relate to?", + "responses": [ + { + "value": "Extension" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About this application" + } + }, + { + "question": "What type of extension is it?", + "responses": [ + { + "value": "Roof extension" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About this application" + } + }, + { + "question": "List the changes involved in the roof extension", + "responses": [ + { + "value": "Add dormer" + } + ], + "metadata": { + "sectionName": "About this application" + } + }, + { + "question": "Is the purpose of the project to support the needs of a disabled resident?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + }, + { + "text": "UK Statutory Instruments 2012 No. 2920 Regulation 4", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/4/made" + }, + { + "text": "Equalities Act 2010, Section 6", + "url": "https://www.legislation.gov.uk/ukpga/2010/15/section/6" + }, + { + "text": "Children Act 1989, Part 3", + "url": "https://www.legislation.gov.uk/ukpga/1989/41/part/III" + } + ], + "sectionName": "About this application" + } + }, + { + "question": "Is it a prior approval application?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About this application" + } + }, + { + "question": "Is the property a home?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About this application" + } + }, + { + "question": "What works does the project involve?", + "responses": [ + { + "value": "Extension" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About this application" + } + }, + { + "question": "Is this application a resubmission?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 9", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/9" + } + ], + "sectionName": "About this application" + } + }, + { + "question": "Does the application qualify for a disability exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About this application" + } + }, + { + "question": "Does the application qualify for a resubmission exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About this application" + } + }, + { + "question": "Is the site a sports field?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 3", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/schedule/1" + } + ], + "sectionName": "About this application" + } + }, + { + "question": "Is the application being made by (or on behalf of) a parish or community council?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/11" + } + ], + "sectionName": "About this application" + } + }, + { + "question": "Are you also submitting another proposal for the same site today?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/schedule/1" + } + ], + "sectionName": "About this application" + } + }, + { + "question": "Does the application qualify for the sports club fee reduction?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About this application" + } + }, + { + "question": "Does the application qualify for the parish council reduction?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/11" + } + ], + "sectionName": "About this application" + } + }, + { + "question": "Does the application qualify for the alternative application reduction?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/schedule/1" + } + ], + "sectionName": "About this application" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Full planning permission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About this application" + } + }, + { + "question": "What does the project involve?", + "responses": [ + { + "value": "Extension" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About this application" + } + }, + { + "question": "How much new floor area is being created?", + "responses": [ + { + "value": "Less than 100m²", + "metadata": { + "flags": [ + "Community infrastructure levy / Not liable" + ] + } + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Community Infrastructure Levy Regulations 2010, Regulation 42", + "url": "https://www.legislation.gov.uk/uksi/2010/948/regulation/42" + } + ], + "sectionName": "About this application" + } + }, + { + "question": "Is this a householder planning application?", + "responses": [ + { + "value": "Yes", + "metadata": { + "flags": [ + "Community infrastructure levy / Not liable" + ] + } + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Community Infrastructure Levy Regulations 2010, Regulation 42", + "url": "https://www.legislation.gov.uk/uksi/2010/948/regulation/42" + } + ], + "sectionName": "About this application" + } + }, + { + "question": "Have the works already started?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload drawings" + } + }, + { + "question": "What changes does the project involve?", + "responses": [ + { + "value": "Extension" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload drawings" + } + }, + { + "question": "Is the project to add an outbuilding?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload drawings" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Lambeth" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check" + } + }, + { + "question": "Connections with London Borough of Lambeth", + "responses": [ + { + "value": "None of the above apply to me" + } + ], + "metadata": { + "sectionName": "Check" + } + }, + { + "question": "I confirm that:", + "responses": [ + { + "value": "The information contained in this application is truthful, accurate and complete, to the best of my knowledge" + } + ], + "metadata": { + "sectionName": "Check" + } + }, + { + "question": "Does the application qualify for a disability exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and send" + } + }, + { + "question": "Does the application qualify for a resubmission exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and send" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Lambeth" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and send" + } + } + ], + "files": [ + { + "name": "https://api.editor.planx.dev/file/private/tbp4kiba/myPlans.pdf", + "type": [ + "roofPlan.existing", + "roofPlan.proposed" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/5w5v8s8z/other.pdf", + "type": [ + "sitePlan.existing", + "sitePlan.proposed" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/7nrefxnn/elevations.pdf", + "type": [ + "elevations.existing", + "elevations.proposed" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/311w2id6/floor_plans.pdf", + "type": [ + "floorPlan.existing", + "floorPlan.proposed" + ] + } + ], + "metadata": { + "organisation": "LBH", + "id": "81bcaa0f-baf5-4573-ba0a-ea868c573faf", + "source": "PlanX", + "service": { + "flowId": "01e38c5d-e701-4e44-acdc-4d6b5cc3b854", + "url": "https://www.editor.planx.dev/lambeth/apply-for-planning-permission/preview", + "files": { + "required": [ + { + "value": "roofPlan.existing", + "description": "Roof plan - existing" + }, + { + "value": "roofPlan.proposed", + "description": "Roof plan - proposed" + }, + { + "value": "sitePlan.existing", + "description": "Site plan - existing" + }, + { + "value": "sitePlan.proposed", + "description": "Site plan - proposed" + }, + { + "value": "elevations.existing", + "description": "Elevations - existing" + }, + { + "value": "elevations.proposed", + "description": "Elevations - proposed" + } + ], + "recommended": [ + { + "value": "floorPlan.existing", + "description": "Floor plan - existing" + }, + { + "value": "floorPlan.proposed", + "description": "Floor plan - proposed" + } + ], + "optional": [] + }, + "fee": { + "category": { + "sixAndSeven": [ + { + "description": "The fee to apply for planning permission to alter or extend a single home is £258.", + "policyRefs": [ + { + "text": "UK Statutory Instruments 2023 No. 1197", + "url": "https://www.legislation.gov.uk/uksi/2023/1197/made" + } + ] + } + ] + }, + "calculated": [ + { + "description": "The fee to apply for planning permission to alter or extend a single home is £258.", + "policyRefs": [ + { + "text": "UK Statutory Instruments 2023 No. 1197", + "url": "https://www.legislation.gov.uk/uksi/2023/1197/made" + } + ] + } + ], + "payable": [ + { + "description": "The fee to apply for planning permission to alter or extend a single home is £258.", + "policyRefs": [ + { + "text": "UK Statutory Instruments 2023 No. 1197", + "url": "https://www.legislation.gov.uk/uksi/2023/1197/made" + } + ] + } + ] + } + }, + "submittedAt": "2023-10-02T00:00:00.00Z", + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + } +} \ No newline at end of file diff --git a/examples/prototypeApplication/planningPermission/fullHouseholderInConservationArea.json b/examples/prototypeApplication/planningPermission/fullHouseholderInConservationArea.json new file mode 100644 index 00000000..be6d9eb2 --- /dev/null +++ b/examples/prototypeApplication/planningPermission/fullHouseholderInConservationArea.json @@ -0,0 +1,1812 @@ +{ + "applicationType": "pp.full.householder", + "data": { + "application": { + "fee": { + "calculated": 258, + "payable": 258, + "category": { + "sixAndSeven": 258 + }, + "exemption": { + "disability": false, + "resubmission": false + }, + "reduction": { + "sports": false, + "parishCouncil": false, + "alternative": false + }, + "reference": { + "govPay": "sandbox-ref-456" + } + }, + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } + } + }, + "user": { + "role": "proxy" + }, + "applicant": { + "type": "individual", + "name": { + "first": "David", + "last": "Bowie" + }, + "email": "ziggy@example.com", + "phone": { + "primary": "Not provided by agent" + }, + "address": { + "sameAsSiteAddress": true + }, + "siteContact": { + "role": "proxy" + }, + "ownership": { + "interest": "owner.sole", + "certificate": "a", + "agriculturalTenants": false, + "declaration": { + "accurate": true + } + }, + "agent": { + "name": { + "first": "Ziggy", + "last": "Stardust" + }, + "email": "ziggy@example.com", + "phone": { + "primary": "01100 0110 0011" + }, + "address": { + "line1": "40 Stansfield Road", + "line2": "Brixton", + "town": "London", + "county": "Greater London", + "postcode": "SW9 9RZ", + "country": "UK" + } + } + }, + "property": { + "address": { + "latitude": 51.451594, + "longitude": -0.0823141, + "x": 533346, + "y": 174256, + "title": "140, WOODWARDE ROAD, LONDON", + "singleLine": "140, WOODWARDE ROAD, LONDON, SOUTHWARK, SE22 8UR", + "source": "Ordnance Survey", + "uprn": "200003442431", + "usrn": "22502753", + "pao": "140", + "street": "WOODWARDE ROAD", + "town": "LONDON", + "postcode": "SE22 8UR" + }, + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -0.082375, + 51.451423 + ], + [ + -0.082071, + 51.451786 + ], + [ + -0.082162, + 51.451815 + ], + [ + -0.082465, + 51.451452 + ], + [ + -0.082375, + 51.451423 + ] + ] + ] + ] + }, + "properties": { + "name": "", + "entity": 12000596619, + "prefix": "title-boundary", + "dataset": "title-boundary", + "enddate": "", + "typology": "geography", + "reference": "37641594", + "entrydate": "2024-05-06", + "startdate": "2001-11-24", + "organisationentity": 13 + } + }, + "area": { + "hectares": 0.032166, + "squareMetres": 321.66 + } + }, + "planning": { + "sources": [ + "https://api.editor.planx.dev/gis/southwark?geom=MULTIPOLYGON+%28%28%28-0.082375+51.451423%2C+-0.082071+51.451786%2C+-0.082162+51.451815%2C+-0.082465+51.451452%2C+-0.082375+51.451423%29%29%29&analytics=false&sessionId=d5e442ce-1bfb-43db-ab3b-dc8e0081e8c2", + "https://api.editor.planx.dev/roads?usrn=22502753" + ], + "designations": [ + { + "value": "article4", + "intersects": false + }, + { + "value": "flood", + "intersects": false + }, + { + "value": "tpo", + "intersects": false + }, + { + "value": "listed", + "intersects": false + }, + { + "value": "monument", + "intersects": false + }, + { + "value": "designated", + "intersects": true + }, + { + "value": "greenBelt", + "intersects": false + }, + { + "value": "nature.SAC", + "intersects": false + }, + { + "value": "nature.ASNW", + "intersects": false + }, + { + "value": "nature.SSSI", + "intersects": false + }, + { + "value": "locallyListed", + "intersects": false + }, + { + "value": "brownfieldSite", + "intersects": false + }, + { + "value": "nature.SPA", + "intersects": false + }, + { + "value": "designated.WHS", + "intersects": false + }, + { + "value": "registeredPark", + "intersects": false + }, + { + "value": "designated.AONB", + "intersects": false + }, + { + "value": "nature.ramsarSite", + "intersects": false + }, + { + "value": "designated.nationalPark", + "intersects": false + }, + { + "value": "designated.conservationArea", + "intersects": true, + "entities": [ + { + "name": "Dulwich Village", + "source": { + "url": "https://www.planning.data.gov.uk/entity/44007440", + "text": "Planning Data" + } + } + ] + }, + { + "value": "designated.nationalPark.broads", + "intersects": false + }, + { + "value": "road.classified", + "intersects": false + } + ] + }, + "localAuthorityDistrict": [ + "Southwark" + ], + "region": "London", + "type": "residential.dwelling.house.semiDetached", + "titleNumber": { + "known": "No" + }, + "EPC": { + "known": "The property does not have one" + }, + "parking": { + "cars": { + "count": 1 + }, + "cycles": { + "count": 2 + } + } + }, + "proposal": { + "projectType": [ + "alter" + ], + "description": "Single storey rear extension.", + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -0.082375, + 51.451423 + ], + [ + -0.082071, + 51.451786 + ], + [ + -0.082162, + 51.451815 + ], + [ + -0.082465, + 51.451452 + ], + [ + -0.082375, + 51.451423 + ] + ] + ] + ] + }, + "properties": { + "name": "", + "entity": 12000596619, + "prefix": "title-boundary", + "dataset": "title-boundary", + "enddate": "", + "typology": "geography", + "reference": "37641594", + "entrydate": "2024-05-06", + "startdate": "2001-11-24", + "planx_user_action": "Accepted the title boundary", + "organisationentity": 13 + } + }, + "area": { + "hectares": 0.032166, + "squareMetres": 321.66 + } + }, + "date": { + "start": "2024-08-01", + "completion": "2024-08-21" + }, + "extend": { + "area": { + "squareMetres": 19 + } + }, + "parking": { + "cars": { + "count": 1, + "difference": 0 + }, + "cycles": { + "count": 2, + "difference": 0 + } + } + } + }, + "responses": [ + { + "question": "Is the property in Southwark?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "House" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of house is it?", + "responses": [ + { + "value": "Semi-detached" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Apply for planning permission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Are you applying on behalf of someone else?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "Private individual" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Your contact details", + "responses": [ + { + "value": "Mr Steven Parry 07980987654 freya.cunningham@southwark.gov.uk" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Is your contact address the same as the property address?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Can a planning officer see the works from public land?", + "responses": [ + { + "value": "No, to see the works you'd have to come onto the property" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "We may need to visit the site to assess your application. If we do, who should we contact to arrange the visit?", + "responses": [ + { + "value": "Me, the applicant" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "What type of application is this?", + "responses": [ + { + "value": "Planning Permission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "I'm the applicant" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Are you the sole owner of the land?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/13/made" + } + ], + "sectionName": "About you" + } + }, + { + "question": "Does the land have any agricultural tenants?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/13/made" + } + ], + "sectionName": "About you" + } + }, + { + "question": "Certificate of ownership declaration - Certificate A", + "responses": [ + { + "value": "I certify the above" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/13/made" + } + ], + "sectionName": "About you" + } + }, + { + "question": "What type of application are you submitting?", + "responses": [ + { + "value": "Householder application" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Select the changes involved in the project", + "responses": [ + { + "value": "Alterations to a home and the surrounding land" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Do your alterations involve any of these projects?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does your project involve changes to an existing roof?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does your project involve any alterations to ground or floor levels?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Have works already started?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "What type of development are you applying for?", + "responses": [ + { + "value": "Householder application" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Is the property in a flood zone?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Is the property in flood zone 1?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Is the property in an area locally vulnerable to flooding?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Does the project introduce any external materials?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Do all the new materials match the existing?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "What external materials are you adding?", + "responses": [ + { + "value": "External walls" + }, + { + "value": "Windows" + }, + { + "value": "Doors" + }, + { + "value": "Roof" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Describe the external wall materials of the existing property", + "responses": [ + { + "value": "Stock brick" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Describe the external window frame materials of the existing property", + "responses": [ + { + "value": "Grey aluminum" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Describe the external door materials of the existing property", + "responses": [ + { + "value": "Dark wood" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Describe the roof materials of the existing property", + "responses": [ + { + "value": "Clay tiles" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Do you want to share more about materials in the documents or drawings you upload?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the project add any additional floorspace to the property?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "How much new floorspace is being added to the property?", + "responses": [ + { + "value": "19" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "How much new floor area is being added to the property?", + "responses": [ + { + "value": "Less than 100m²" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Does the project involve any of these?", + "responses": [ + { + "value": "No, none of these" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Are there any protected trees on the property?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Are there any trees or hedges that could fall within the property or the areas affected by the project (the previously drawn outline)?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Have you already told us that you are doing works to a tree or hedge?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Are there any protected trees on the property?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Is the site in a conservation area?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Might the works affect any tree with a trunk wider than 100mm?", + "responses": [ + { + "value": "No, definitely not", + "metadata": { + "flags": [ + "Works to trees & hedges / Not required" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Tree Preservation)(England) Regulations 2012 Part 3", + "url": "https://www.legislation.gov.uk/uksi/2012/605/part/3/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "What type of application is this?", + "responses": [ + { + "value": "Apply for planning permission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Could your works affect a protected tree?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Is the property in Greater London?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Does the site include more than one property?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Do you know the title number of the property?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the property have an Energy Performance Certificate (EPC)?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "The project" + } + }, + { + "question": "What type of application is this?", + "responses": [ + { + "value": "Planning permission for a home" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Have works already started?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "When are the works planned to start?", + "responses": [ + { + "value": "2024-08-01" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "The project" + } + }, + { + "question": "When are the works planned to be completed?", + "responses": [ + { + "value": "2024-08-21" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Do the changes involve any of these?", + "responses": [ + { + "value": "Alterations to a building" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Do the changes involve creating any new bedrooms or bathrooms?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Are there existing or are you proposing parking spaces for any of these on the site?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Is the property on designated land?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Does the project create 100 square metres or more of additional floor area?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Does the property include any of these?", + "responses": [ + { + "value": "Conservation area" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Does the property include any of these?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Heritage Statement needed?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Data option provided?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "How do you want to submit the Heritage Statement?", + "responses": [ + { + "value": "Upload a document later" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Did you get any pre-application advice from the council before making this application?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "Your application" + } + }, + { + "question": "What was the name of the planning officer you spoke to?", + "responses": [ + { + "value": "Josie Nolan" + } + ], + "metadata": { + "sectionName": "Your application" + } + }, + { + "question": "What was your reference?", + "responses": [ + { + "value": "24/EQ/2019" + } + ], + "metadata": { + "sectionName": "Your application" + } + }, + { + "question": "What date was the pre-application advice given on?", + "responses": [ + { + "value": "2024-04-01" + } + ], + "metadata": { + "sectionName": "Your application" + } + }, + { + "question": "What was the pre-application advice you have received?", + "responses": [ + { + "value": "The works I want to do would be acceptable if I made the extension slightly smaller and shorter." + } + ], + "metadata": { + "sectionName": "Your application" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Full planning permission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "What type of development are you applying for?", + "responses": [ + { + "value": "Householder application" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made" + } + ], + "sectionName": "Your application" + } + }, + { + "question": "Check for multiple fees?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Another application type" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Is the property a home?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Does the project involve any of these changes?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Does the project involve any of these changes?", + "responses": [ + { + "value": "Alteration" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Fee exemption for projects supporting disabled residents", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + }, + { + "text": "UK Statutory Instruments 2012 No. 2920 Regulation 4", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/4/made" + }, + { + "text": "Equalities Act 2010, Section 6", + "url": "https://www.legislation.gov.uk/ukpga/2010/15/section/6" + }, + { + "text": "Children Act 1989, Part 3", + "url": "https://www.legislation.gov.uk/ukpga/1989/41/part/III" + } + ], + "sectionName": "Your application" + } + }, + { + "question": "Is this application a resubmission?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 9", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/9" + } + ], + "sectionName": "Your application" + } + }, + { + "question": "Does the application qualify for a disability exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Is the site a sports field?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Is the application being made by (or on behalf of) a parish or community council?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/11" + } + ], + "sectionName": "Your application" + } + }, + { + "question": "Are you also submitting another proposal for the same site today?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/schedule/1" + } + ], + "sectionName": "Your application" + } + }, + { + "question": "Does the application qualify for the sports club fee reduction?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Does the application qualify for the parish council reduction?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/11" + } + ], + "sectionName": "Your application" + } + }, + { + "question": "Does the application qualify for the alternative application reduction?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/schedule/1" + } + ], + "sectionName": "Your application" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Full planning permission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "What does the project involve?", + "responses": [ + { + "value": "Alteration", + "metadata": { + "flags": [ + "Community infrastructure levy / Not liable" + ] + } + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "What type of development are you applying for?", + "responses": [ + { + "value": "Householder application" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made" + } + ], + "sectionName": "Upload application documents" + } + }, + { + "question": "Have the works already started?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload application documents" + } + }, + { + "question": "What changes does the project involve?", + "responses": [ + { + "value": "Alterations" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload application documents" + } + }, + { + "question": "Is the user a professional agent?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload application documents" + } + }, + { + "question": "Is this for submission or information only?", + "responses": [ + { + "value": "Submission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload application documents" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Southwark" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Review and confirm" + } + }, + { + "question": "Connections with Southwark Council", + "responses": [ + { + "value": "None of the above apply to me" + } + ], + "metadata": { + "sectionName": "Review and confirm" + } + }, + { + "question": "I confirm that:", + "responses": [ + { + "value": "The information contained in this application is truthful, accurate and complete, to the best of my knowledge" + } + ], + "metadata": { + "sectionName": "Review and confirm" + } + }, + { + "question": "Does the application qualify for a disability exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and send" + } + }, + { + "question": "Does the application qualify for a resubmission exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and send" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Full planning permission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and send" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Southwark" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and send" + } + } + ], + "files": [ + { + "name": "https://api.editor.planx.dev/file/private/5w5v8s8z/other.pdf", + "type": [ + "otherDrawing" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/5w5v8s8z/other.pdf", + "type": [ + "heritageStatement" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/5w5v8s8z/other.pdf", + "type": [ + "sitePlan.existing", + "sitePlan.proposed" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/7nrefxnn/elevations.pdf", + "type": [ + "elevations.existing", + "elevations.proposed" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/311w2id6/floor_plans.pdf", + "type": [ + "floorPlan.existing", + "floorPlan.proposed" + ] + } + ], + "metadata": { + "organisation": "SWK", + "id": "d5e442ce-1bfb-43db-ab3b-dc8e0081e8c2", + "source": "PlanX", + "service": { + "flowId": "bba306e7-15c8-438f-a71e-a1e5d3a99caf", + "url": "https://editor.planx.uk/southwark/apply-for-planning-permission/published", + "files": { + "required": [ + { + "value": "sitePlan.existing", + "description": "Site plan - existing" + }, + { + "value": "sitePlan.proposed", + "description": "Site plan - proposed" + }, + { + "value": "elevations.existing", + "description": "Elevations - existing" + }, + { + "value": "elevations.proposed", + "description": "Elevations - proposed" + }, + { + "value": "floorPlan.existing", + "description": "Floor plan - existing" + }, + { + "value": "floorPlan.proposed", + "description": "Floor plan - proposed" + }, + { + "value": "heritageStatement", + "description": "Heritage Statement" + } + ], + "recommended": [], + "optional": [ + { + "value": "photographs.existing", + "description": "Photographs - existing" + }, + { + "value": "otherDrawing", + "description": "Other - drawing" + }, + { + "value": "otherDocument", + "description": "Other - document" + }, + { + "value": "visualisations", + "description": "Visualisations" + } + ] + }, + "fee": { + "category": { + "sixAndSeven": [ + { + "description": "The fee to apply for planning permission to alter or extend a single home is £258.", + "policyRefs": [ + { + "text": "UK Statutory Instruments 2023 No. 1197", + "url": "https://www.legislation.gov.uk/uksi/2023/1197/made" + } + ] + } + ] + }, + "calculated": [ + { + "description": "The fee to apply for planning permission to alter or extend a single home is £258.", + "policyRefs": [ + { + "text": "UK Statutory Instruments 2023 No. 1197", + "url": "https://www.legislation.gov.uk/uksi/2023/1197/made" + } + ] + } + ], + "payable": [ + { + "description": "The fee to apply for planning permission to alter or extend a single home is £258.", + "policyRefs": [ + { + "text": "UK Statutory Instruments 2023 No. 1197", + "url": "https://www.legislation.gov.uk/uksi/2023/1197/made" + } + ] + } + ] + } + }, + "submittedAt": "2023-10-02T00:00:00.00Z", + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + } +} \ No newline at end of file diff --git a/examples/prototypeApplication/planningPermission/major.json b/examples/prototypeApplication/planningPermission/major.json new file mode 100644 index 00000000..e69de29b diff --git a/examples/prototypeApplication/planningPermission/minor.json b/examples/prototypeApplication/planningPermission/minor.json new file mode 100644 index 00000000..e69de29b diff --git a/schemas/prototypeApplication.json b/schemas/prototypeApplication.json index 2c250320..3bedb56c 100644 --- a/schemas/prototypeApplication.json +++ b/schemas/prototypeApplication.json @@ -572,6 +572,32 @@ ], "type": "object" }, + "BuildingRegulation": { + "$id": "#BuildingRegulation", + "anyOf": [ + { + "const": "m42", + "description": "Part M4(2) of the Building Regulations 2010", + "type": "string" + }, + { + "const": "m432a", + "description": "Part M4(3)(2a) of the Building Regulations 2010", + "type": "string" + }, + { + "const": "m432b", + "description": "Part M4(3)(2b) of the Building Regulations 2010", + "type": "string" + }, + { + "const": "none", + "description": "None of these", + "type": "string" + } + ], + "description": "Building regulations" + }, "CalculateMetadata": { "$id": "#CalculateMetadata", "additionalProperties": false, @@ -689,6 +715,47 @@ "pattern": "^([0-9]+)-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])[Tt]([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9]|60)(\\.[0-9]+)?(([Zz])|([\\+|\\-]([01][0-9]|2[0-3]):[0-5][0-9]))$", "type": "string" }, + "DevelopmentType": { + "$id": "#DevelopmentType", + "anyOf": [ + { + "const": "changeOfUse", + "description": "Change of use", + "type": "string" + }, + { + "const": "changeOfUseFrom", + "description": "Change of use of an existing single home", + "type": "string" + }, + { + "const": "changeOfUseTo", + "description": "Change of use to a home", + "type": "string" + }, + { + "const": "conversion", + "description": "Conversion", + "type": "string" + }, + { + "const": "extension", + "description": "Extension", + "type": "string" + }, + { + "const": "newBuild", + "description": "New build", + "type": "string" + }, + { + "const": "notKnown", + "description": "Not known", + "type": "string" + } + ], + "description": "Development types" + }, "Email": { "format": "email", "type": "string" @@ -2871,6 +2938,184 @@ ], "description": "Types of planning documents and drawings" }, + "GLAHousingProvider": { + "$id": "#GLAHousingProvider", + "anyOf": [ + { + "const": "affordableHousing", + "description": "Other affordable housing provider", + "type": "string" + }, + { + "const": "councilBuildToRent", + "description": "Council delivered build to rent", + "type": "string" + }, + { + "const": "councilDelivery", + "description": "Council delivery company", + "type": "string" + }, + { + "const": "HA", + "description": "Housing association", + "type": "string" + }, + { + "const": "LA", + "description": "Local Authority", + "type": "string" + }, + { + "const": "private", + "description": "Private", + "type": "string" + }, + { + "const": "privateRented", + "description": "Private rented sector", + "type": "string" + }, + { + "const": "publicAuthority", + "description": "Other public authority", + "type": "string" + }, + { + "const": "selfBuild", + "description": "Self-build", + "type": "string" + } + ], + "description": "Housing provider categories tracked by the Greater London Authority (GLA)" + }, + "GLAResidentialUnitType": { + "$id": "#GLAResidentialUnitType", + "anyOf": [ + { + "const": "cluster", + "description": "Cluster flat", + "type": "string" + }, + { + "const": "coLiving", + "description": "Co-living unit", + "type": "string" + }, + { + "const": "detached", + "description": "Detached home", + "type": "string" + }, + { + "const": "flat", + "description": "Flat", + "type": "string" + }, + { + "const": "HMO", + "description": "House in multiple occupation (HMO)", + "type": "string" + }, + { + "const": "hostel", + "description": "Hostel room", + "type": "string" + }, + { + "const": "LW", + "description": "Live/work unit", + "type": "string" + }, + { + "const": "other", + "description": "Other", + "type": "string" + }, + { + "const": "semiDetached", + "description": "Semi-detached home", + "type": "string" + }, + { + "const": "student", + "description": "Student accommodation", + "type": "string" + }, + { + "const": "studio", + "description": "Studio or bedsit", + "type": "string" + }, + { + "const": "terraced", + "description": "Terraced home", + "type": "string" + } + ], + "description": "Residential unit types tracked by the Greater London Authority (GLA)" + }, + "GLATenureType": { + "$id": "#GLATenureType", + "anyOf": [ + { + "const": "AR", + "description": "Affordable rent (not at LAR benchmark rents)", + "type": "string" + }, + { + "const": "DMR", + "description": "Discount market rate", + "type": "string" + }, + { + "const": "DMRLLR", + "description": "Discount market rate (charged at London Living Rents)", + "type": "string" + }, + { + "const": "DMS", + "description": "Discount market sale", + "type": "string" + }, + { + "const": "LAR", + "description": "London Affordable Rent", + "type": "string" + }, + { + "const": "LRR", + "description": "London Living Rent", + "type": "string" + }, + { + "const": "LSO", + "description": "London Shared Ownership", + "type": "string" + }, + { + "const": "marketForRent", + "description": "Market for rent", + "type": "string" + }, + { + "const": "marketForSale", + "description": "Market for sale", + "type": "string" + }, + { + "const": "sharedEquity", + "description": "Shared equity", + "type": "string" + }, + { + "const": "SR", + "description": "Social rent", + "type": "string" + } + ], + "description": "Tenure types tracked by the Greater London Authority (GLA)" + }, "GeoBoundary": { "additionalProperties": false, "properties": { @@ -2887,6 +3132,22 @@ ], "type": "object" }, + "GeoBoundaryPrototype": { + "additionalProperties": false, + "properties": { + "area": { + "$ref": "#/definitions/Area" + }, + "site": { + "$ref": "#/definitions/GeoJSON" + } + }, + "required": [ + "site", + "area" + ], + "type": "object" + }, "GeoJSON": { "anyOf": [ { @@ -2963,6 +3224,10 @@ ], "type": "object" }, + "Integer": { + "format": "integer", + "type": "number" + }, "LDC": { "additionalProperties": false, "properties": { @@ -3599,6 +3864,129 @@ }, "type": "array" }, + "parking": { + "additionalProperties": false, + "properties": { + "buses": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + } + }, + "required": [ + "count" + ], + "type": "object" + }, + "carClub": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + } + }, + "required": [ + "count" + ], + "type": "object" + }, + "cars": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + } + }, + "required": [ + "count" + ], + "type": "object" + }, + "cycles": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + } + }, + "required": [ + "count" + ], + "type": "object" + }, + "disabled": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + } + }, + "required": [ + "count" + ], + "type": "object" + }, + "motorcycles": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + } + }, + "required": [ + "count" + ], + "type": "object" + }, + "offStreet": { + "additionalProperties": false, + "properties": { + "residential": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + } + }, + "required": [ + "count" + ], + "type": "object" + } + }, + "required": [ + "residential" + ], + "type": "object" + }, + "other": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + } + }, + "required": [ + "count" + ], + "type": "object" + }, + "vans": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + } + }, + "required": [ + "count" + ], + "type": "object" + } + }, + "type": "object" + }, "planning": { "additionalProperties": false, "description": "Planning constraints and policies that intersect with this site and may impact or restrict development", @@ -3691,653 +4079,1640 @@ ], "type": "object" }, - "MaintenanceContact": { - "items": { - "additionalProperties": false, - "properties": { - "address": { - "$ref": "#/definitions/UserAddress" - }, - "contact": { - "$ref": "#/definitions/ContactDetails" - }, - "when": { - "enum": [ - "duringConstruction", - "afterConstruction", - "duringAndAfterConstruction" - ], - "type": "string" - } - }, - "required": [ - "when", - "address", - "contact" - ], - "type": "object" - }, - "type": "array" - }, - "Metadata": { - "$id": "#DigitalPlanningMetadata", - "anyOf": [ - { - "$ref": "#/definitions/AnyProviderMetadata" - }, - { - "$ref": "#/definitions/PlanXMetadata" - } - ], - "description": "Details of the digital planning service which sent this application" - }, - "MultiLineString": { + "LondonProposal": { "additionalProperties": false, - "description": "MultiLineString geometry object. https://tools.ietf.org/html/rfc7946#section-3.1.5", + "description": "Proposal details for project sites within the Greater London Authority (GLA) area", "properties": { - "bbox": { - "$ref": "#/definitions/BBox", - "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" + "access": { + "additionalProperties": false, + "properties": { + "affected": { + "enum": [ + "vehicle", + "pedestrian", + "newRoad", + "rightsOfWay.newPublic", + "rightsOfWay.changes" + ], + "type": "string" + } + }, + "type": "object" }, - "coordinates": { - "items": { - "items": { - "$ref": "#/definitions/Position" + "boundary": { + "$ref": "#/definitions/GeoBoundaryPrototype", + "description": "Location plan boundary proposed by the user, commonly referred to as the red line boundary" + }, + "charging": { + "additionalProperties": false, + "description": "Electric vehicle charing points", + "properties": { + "active": { + "additionalProperties": false, + "properties": { + "count": { + "$ref": "#/definitions/Integer" + } + }, + "required": [ + "count" + ], + "type": "object" }, - "type": "array" + "passive": { + "additionalProperties": false, + "properties": { + "count": { + "$ref": "#/definitions/Integer" + } + }, + "required": [ + "count" + ], + "type": "object" + } }, - "type": "array" - }, - "type": { - "const": "MultiLineString", - "description": "Specifies the type of GeoJSON object.", - "type": "string" - } - }, - "required": [ - "coordinates", - "type" - ], - "type": "object" - }, - "MultiPoint": { - "additionalProperties": false, - "description": "MultiPoint geometry object. https://tools.ietf.org/html/rfc7946#section-3.1.3", - "properties": { - "bbox": { - "$ref": "#/definitions/BBox", - "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" + "type": "object" }, - "coordinates": { - "items": { - "$ref": "#/definitions/Position" + "cost": { + "additionalProperties": false, + "description": "Project cost", + "properties": { + "projected": { + "enum": [ + "2m", + "2mTo100m", + "100m" + ], + "type": "string" + } }, - "type": "array" + "required": [ + "projected" + ], + "type": "object" }, - "type": { - "const": "MultiPoint", - "description": "Specifies the type of GeoJSON object.", + "date": { + "$ref": "#/definitions/ProposalDates" + }, + "description": { "type": "string" - } - }, - "required": [ - "coordinates", - "type" - ], - "type": "object" - }, - "MultiPolygon": { - "additionalProperties": false, - "description": "MultiPolygon geometry object. https://tools.ietf.org/html/rfc7946#section-3.1.7", - "properties": { - "bbox": { - "$ref": "#/definitions/BBox", - "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" }, - "coordinates": { - "items": { - "items": { - "items": { - "$ref": "#/definitions/Position" - }, - "type": "array" + "ecology": { + "additionalProperties": false, + "description": "Details of biodiversity and geological conservation, if applicable to application.type", + "properties": { + "conservationAffected": { + "enum": [ + "site", + "adjacent", + "none" + ], + "type": "string" }, - "type": "array" + "featuresAffected": { + "enum": [ + "site", + "adjacent", + "none" + ], + "type": "string" + }, + "speciesAffected": { + "enum": [ + "site", + "adjacent", + "none" + ], + "type": "string" + } }, - "type": "array" + "type": "object" }, - "type": { - "const": "MultiPolygon", - "description": "Specifies the type of GeoJSON object.", - "type": "string" - } - }, - "required": [ - "coordinates", - "type" - ], - "type": "object" - }, - "NonFeeCarryingApplicationData": { - "anyOf": [ - { + "energy": { "additionalProperties": false, + "description": "Proposed energy sources", "properties": { - "declaration": { - "$ref": "#/definitions/ApplicationDeclaration" + "communityOwned": { + "additionalProperties": false, + "properties": { + "capacity": { + "additionalProperties": false, + "description": "Proposed total capacity of any on-site community-owned energy generation in megawatts (mW)", + "properties": { + "megawatts": { + "type": "number" + } + }, + "required": [ + "megawatts" + ], + "type": "object" + } + }, + "required": [ + "capacity" + ], + "type": "object" }, - "fee": { - "$ref": "#/definitions/ApplicationFeeNotApplicable" + "heatPumps": { + "additionalProperties": false, + "properties": { + "capacity": { + "additionalProperties": false, + "description": "Proposed total capacity of any heat pumps in megawatts (mV)", + "properties": { + "megawatts": { + "type": "number" + } + }, + "required": [ + "megawatts" + ], + "type": "object" + } + }, + "required": [ + "capacity" + ], + "type": "object" }, - "planningApp": { - "$ref": "#/definitions/PlanningApplication" + "solar": { + "additionalProperties": false, + "properties": { + "capacity": { + "additionalProperties": false, + "description": "Proposed total capacity of any solar energy generation in megawatts (mV)", + "properties": { + "megawatts": { + "type": "number" + } + }, + "required": [ + "megawatts" + ], + "type": "object" + } + }, + "required": [ + "capacity" + ], + "type": "object" }, - "preApp": { - "$ref": "#/definitions/PreApplication" + "type": { + "items": { + "enum": [ + "communityOwned", + "heatPump", + "solar" + ], + "type": "string" + }, + "type": "array" } }, "required": [ - "declaration", - "fee" + "type" ], "type": "object" }, - { + "environmentalImpactDescription": { + "type": "string" + }, + "extend": { "additionalProperties": false, "properties": { - "declaration": { - "$ref": "#/definitions/ApplicationDeclaration" - }, - "fee": { - "$ref": "#/definitions/ApplicationFeeNotApplicable" - }, - "leadDeveloper": { - "$ref": "#/definitions/LeadDeveloper" - }, - "planningApp": { - "$ref": "#/definitions/PlanningApplication" - }, - "preApp": { - "$ref": "#/definitions/PreApplication" - }, - "vacantBuildingCredit": { - "type": "boolean" + "area": { + "$ref": "#/definitions/Area" } }, "required": [ - "declaration", - "fee" + "area" ], "type": "object" - } - ], - "description": "ApplicationData required for application types that do not have a fee" - }, - "OSAddress": { - "additionalProperties": false, - "description": "Address information for sites with a known address sourced from Ordnance Survey AddressBase Premium (LPI)", - "properties": { - "latitude": { - "description": "Latitude coordinate in EPSG:4326 (WGS84)", - "type": "number" - }, - "longitude": { - "description": "Longitude coordinate in EPSG:4326 (WGS84)", - "type": "number" - }, - "organisation": { - "type": "string" - }, - "pao": { - "type": "string" - }, - "postcode": { - "type": "string" - }, - "singleLine": { - "type": "string" - }, - "source": { - "const": "Ordnance Survey", - "type": "string" - }, - "street": { - "type": "string" - }, - "title": { - "type": "string" - }, - "town": { - "type": "string" - }, - "uprn": { - "maxLength": 12, - "title": "Unique Property Reference Number", - "type": "string" - }, - "usrn": { - "maxLength": 8, - "title": "Unique Street Reference Number", - "type": "string" - }, - "x": { - "description": "Easting coordinate in British National Grid (OSGB36)", - "type": "number" }, - "y": { - "description": "Northing coordinate in British National Grid (OSGB36)", - "type": "number" - } - }, - "required": [ - "latitude", - "longitude", - "pao", - "postcode", - "singleLine", - "source", - "street", - "title", - "town", - "uprn", - "usrn", - "x", - "y" - ], - "type": "object" - }, - "OwnersNoNoticeGiven": { - "additionalProperties": false, - "properties": { - "address": { - "anyOf": [ - { - "$ref": "#/definitions/UserAddress" - }, - { + "flood": { + "additionalProperties": false, + "description": "Assessment of flood risk, if applicable to application.type", + "properties": { + "surfaceWaterDisposal": { + "enum": [ + "drainageSystem", + "soakaway", + "sewer", + "watercourse", + "pondOrLake", + "other" + ], "type": "string" } - ] - }, - "interest": { - "$ref": "#/definitions/OwnershipInterest" - }, - "name": { - "type": "string" - }, - "noNoticeReason": { - "type": "string" + }, + "type": "object" }, - "noticeGiven": { - "const": false, - "type": "boolean" - } - }, - "required": [ - "address", - "name", - "noNoticeReason", - "noticeGiven" - ], - "type": "object" - }, - "OwnersNoticeDate": { - "additionalProperties": false, - "properties": { - "address": { - "anyOf": [ - { - "$ref": "#/definitions/UserAddress" - }, - { - "type": "string" + "greenRoof": { + "additionalProperties": false, + "description": "Green roof", + "properties": { + "area": { + "$ref": "#/definitions/Area" } - ] - }, - "interest": { - "$ref": "#/definitions/OwnershipInterest" + }, + "required": [ + "area" + ], + "type": "object" }, - "name": { - "type": "string" + "materials": { + "$ref": "#/definitions/Materials", + "description": "Proposed materials, if applicable to projectType" }, - "noticeDate": { - "$ref": "#/definitions/Date" - } - }, - "required": [ - "address", - "name", - "noticeDate" - ], - "type": "object" - }, - "OwnersNoticeGiven": { - "additionalProperties": false, - "properties": { - "address": { - "anyOf": [ - { - "$ref": "#/definitions/UserAddress" + "nature": { + "additionalProperties": false, + "description": "Changes that result in the loss, gain, or change of use of natural spaces", + "properties": { + "openSpaces": { + "items": { + "additionalProperties": false, + "properties": { + "access": { + "enum": [ + "restricted", + "unrestricted" + ], + "type": "string" + }, + "area": { + "additionalProperties": false, + "properties": { + "hectares": { + "type": "number" + } + }, + "required": [ + "hectares" + ], + "type": "object" + }, + "description": { + "type": "string" + }, + "designation": { + "$ref": "#/definitions/OpenSpaceDesignation" + }, + "impact": { + "enum": [ + "loss", + "gain", + "change" + ], + "type": "string" + }, + "swap": { + "description": "Whether the open space change involves a land swap", + "type": "boolean" + }, + "type": { + "$ref": "#/definitions/OpenSpaceType" + } + }, + "required": [ + "impact", + "description", + "type", + "designation", + "access", + "area", + "swap" + ], + "type": "object" + }, + "type": "array" }, - { - "type": "string" + "protectedSpaces": { + "items": { + "additionalProperties": false, + "properties": { + "access": { + "enum": [ + "restricted", + "unrestricted" + ], + "type": "string" + }, + "area": { + "additionalProperties": false, + "properties": { + "hectares": { + "type": "number" + } + }, + "required": [ + "hectares" + ], + "type": "object" + }, + "description": { + "type": "string" + }, + "designation": { + "$ref": "#/definitions/ProtectedSpaceDesignation" + }, + "impact": { + "enum": [ + "loss", + "gain", + "change" + ], + "type": "string" + } + }, + "required": [ + "impact", + "description", + "designation", + "access", + "area" + ], + "type": "object" + }, + "type": "array" } - ] - }, - "interest": { - "$ref": "#/definitions/OwnershipInterest" - }, - "name": { - "type": "string" - }, - "noticeGiven": { - "const": true, - "type": "boolean" - } - }, - "required": [ - "address", - "name", - "noticeGiven" - ], - "type": "object" - }, - "OwnershipInterest": { - "enum": [ - "owner", - "tenant", - "occupier", - "other" - ], - "type": "string" - }, - "PA": { - "additionalProperties": false, - "properties": { - "applicationType": { - "$ref": "#/definitions/PAApplicationType" + }, + "type": "object" }, - "data": { + "new": { "additionalProperties": false, "properties": { - "applicant": { - "$ref": "#/definitions/ApplicantBase" - }, - "application": { - "$ref": "#/definitions/FeeCarryingApplicationData" + "area": { + "$ref": "#/definitions/Area" }, - "property": { - "$ref": "#/definitions/PropertyBase" - }, - "proposal": { - "$ref": "#/definitions/ProposalBase" - }, - "user": { - "$ref": "#/definitions/UserBase" + "count": { + "additionalProperties": false, + "properties": { + "bathrooms": { + "$ref": "#/definitions/Integer" + }, + "bedrooms": { + "$ref": "#/definitions/Integer" + }, + "dwellings": { + "$ref": "#/definitions/Integer" + } + }, + "type": "object" } }, "required": [ - "user", - "applicant", - "application", - "property", - "proposal" + "area" ], "type": "object" }, - "files": { - "items": { - "$ref": "#/definitions/File" + "newBuildings": { + "$ref": "#/definitions/NewBuildingsOrStoreys", + "description": "Creating new buildings" + }, + "newDwellings": { + "additionalProperties": false, + "properties": { + "newBuild": { + "additionalProperties": false, + "properties": { + "count": { + "$ref": "#/definitions/Integer" + } + }, + "required": [ + "count" + ], + "type": "object" + } }, - "type": "array" + "type": "object" }, - "metadata": { - "$ref": "#/definitions/Metadata" + "newStoreys": { + "$ref": "#/definitions/NewBuildingsOrStoreys", + "description": "Increasing the height of existing buildings" }, - "preAssessment": { - "$ref": "#/definitions/PreAssessment" - }, - "responses": { - "$ref": "#/definitions/Responses" - } - }, - "required": [ - "applicationType", - "data", - "responses", - "files", - "metadata" - ], - "type": "object" - }, - "PAApplicationType": { - "anyOf": [ - { - "const": "pa", - "description": "Prior Approval", - "type": "string" - }, - { - "const": "pa.part1.classA", - "description": "Prior Approval - Larger extension to a house", - "type": "string" + "parking": { + "additionalProperties": false, + "description": "Proposed parking spaces", + "properties": { + "buses": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + }, + "difference": { + "type": "number" + } + }, + "required": [ + "count", + "difference" + ], + "type": "object" + }, + "carClub": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + }, + "difference": { + "type": "number" + } + }, + "required": [ + "count", + "difference" + ], + "type": "object" + }, + "cars": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + }, + "difference": { + "type": "number" + } + }, + "required": [ + "count", + "difference" + ], + "type": "object" + }, + "cycles": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + }, + "difference": { + "type": "number" + } + }, + "required": [ + "count", + "difference" + ], + "type": "object" + }, + "disabled": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + }, + "difference": { + "type": "number" + } + }, + "required": [ + "count", + "difference" + ], + "type": "object" + }, + "motorcycles": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + }, + "difference": { + "type": "number" + } + }, + "required": [ + "count", + "difference" + ], + "type": "object" + }, + "offStreet": { + "additionalProperties": false, + "properties": { + "residential": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + }, + "difference": { + "type": "number" + } + }, + "required": [ + "count", + "difference" + ], + "type": "object" + } + }, + "required": [ + "residential" + ], + "type": "object" + }, + "other": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + }, + "difference": { + "type": "number" + } + }, + "required": [ + "count", + "difference" + ], + "type": "object" + }, + "vans": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + }, + "difference": { + "type": "number" + } + }, + "required": [ + "count", + "difference" + ], + "type": "object" + } + }, + "type": "object" }, - { - "const": "pa.part1.classAA", - "description": "Prior Approval - Adding storeys to a house", - "type": "string" + "projectType": { + "items": { + "$ref": "#/definitions/ProjectType" + }, + "type": "array" }, - { - "const": "pa.part3.classG", - "description": "Prior Approval - Convert a commercial building to mixed use", + "schemeName": { "type": "string" }, - { - "const": "pa.part3.classM", - "description": "Prior Approval - Convert a mixed use building into a home", - "type": "string" + "structures": { + "additionalProperties": false, + "properties": { + "permanent": { + "additionalProperties": false, + "properties": { + "count": { + "$ref": "#/definitions/Integer" + } + }, + "required": [ + "count" + ], + "type": "object" + }, + "temporary": { + "additionalProperties": false, + "properties": { + "count": { + "$ref": "#/definitions/Integer" + } + }, + "required": [ + "count" + ], + "type": "object" + }, + "total": { + "$ref": "#/definitions/Integer" + }, + "type": { + "enum": [ + "bridge", + "catchpit", + "culvert", + "pipe", + "gully", + "headwall", + "manhole", + "weir", + "other" + ], + "type": "string" + } + }, + "required": [ + "type", + "total" + ], + "type": "object" }, - { - "const": "pa.part3.classMA", - "description": "Prior Approval - Convert a commercial building into a home or homes", - "type": "string" + "units": { + "additionalProperties": false, + "properties": { + "residential": { + "additionalProperties": false, + "properties": { + "new": { + "items": { + "additionalProperties": false, + "properties": { + "area": { + "$ref": "#/definitions/Area" + }, + "bedrooms": { + "$ref": "#/definitions/Integer" + }, + "compliance": { + "items": { + "$ref": "#/definitions/BuildingRegulation" + }, + "type": "array" + }, + "development": { + "$ref": "#/definitions/DevelopmentType" + }, + "garden": { + "type": "boolean" + }, + "habitableRooms": { + "$ref": "#/definitions/Integer" + }, + "identicalUnits": { + "$ref": "#/definitions/Integer" + }, + "olderPersons": { + "type": "boolean" + }, + "provider": { + "$ref": "#/definitions/GLAHousingProvider" + }, + "sheltered": { + "type": "boolean" + }, + "tenure": { + "$ref": "#/definitions/GLATenureType" + }, + "type": { + "$ref": "#/definitions/GLAResidentialUnitType" + } + }, + "required": [ + "area", + "bedrooms", + "compliance", + "development", + "garden", + "habitableRooms", + "identicalUnits", + "olderPersons", + "provider", + "sheltered", + "tenure", + "type" + ], + "type": "object" + }, + "type": "array" + }, + "rebuilt": { + "items": { + "additionalProperties": false, + "properties": { + "area": { + "$ref": "#/definitions/Area" + }, + "bedrooms": { + "$ref": "#/definitions/Integer" + }, + "compliance": { + "items": { + "$ref": "#/definitions/BuildingRegulation" + }, + "type": "array" + }, + "development": { + "$ref": "#/definitions/DevelopmentType" + }, + "garden": { + "type": "boolean" + }, + "habitableRooms": { + "$ref": "#/definitions/Integer" + }, + "identicalUnits": { + "$ref": "#/definitions/Integer" + }, + "olderPersons": { + "type": "boolean" + }, + "provider": { + "$ref": "#/definitions/GLAHousingProvider" + }, + "sheltered": { + "type": "boolean" + }, + "tenure": { + "$ref": "#/definitions/GLATenureType" + }, + "type": { + "$ref": "#/definitions/GLAResidentialUnitType" + } + }, + "required": [ + "area", + "bedrooms", + "compliance", + "development", + "garden", + "habitableRooms", + "identicalUnits", + "olderPersons", + "provider", + "sheltered", + "tenure", + "type" + ], + "type": "object" + }, + "type": "array" + }, + "removed": { + "items": { + "additionalProperties": false, + "properties": { + "area": { + "$ref": "#/definitions/Area" + }, + "bedrooms": { + "$ref": "#/definitions/Integer" + }, + "compliance": { + "items": { + "$ref": "#/definitions/BuildingRegulation" + }, + "type": "array" + }, + "habitableRooms": { + "$ref": "#/definitions/Integer" + }, + "identicalUnits": { + "$ref": "#/definitions/Integer" + }, + "olderPersons": { + "type": "boolean" + }, + "provider": { + "$ref": "#/definitions/GLAHousingProvider" + }, + "sheltered": { + "type": "boolean" + }, + "tenure": { + "$ref": "#/definitions/GLATenureType" + }, + "type": { + "$ref": "#/definitions/GLAResidentialUnitType" + } + }, + "required": [ + "area", + "bedrooms", + "compliance", + "habitableRooms", + "identicalUnits", + "olderPersons", + "provider", + "sheltered", + "tenure", + "type" + ], + "type": "object" + }, + "type": "array" + }, + "retained": { + "items": { + "additionalProperties": false, + "properties": { + "bedrooms": { + "$ref": "#/definitions/Integer" + }, + "identicalUnits": { + "$ref": "#/definitions/Integer" + }, + "tenure": { + "$ref": "#/definitions/GLATenureType" + }, + "type": { + "$ref": "#/definitions/GLAResidentialUnitType" + } + }, + "required": [ + "bedrooms", + "tenure", + "type", + "identicalUnits" + ], + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "required": [ + "residential" + ], + "type": "object" }, - { - "const": "pa.part3.classN", - "description": "Prior Approval - Convert a casino or amusement arcade into a home or homes", - "type": "string" + "urbanGreeningFactor": { + "additionalProperties": false, + "description": "Urban Greening Factor Score", + "properties": { + "score": { + "type": "number" + } + }, + "required": [ + "score" + ], + "type": "object" }, - { - "const": "pa.part3.classQ", - "description": "Prior Approval - Convert an agricultural building into a home", - "type": "string" + "use": { + "additionalProperties": false, + "description": "Proposed land use, including storage of hazardous materials, if applicable to application.type", + "properties": { + "contamination": { + "enum": [ + "known", + "suspected", + "vulnerable" + ], + "type": "string" + }, + "description": { + "type": "string" + }, + "storage": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "type": "object" }, - { - "const": "pa.part3.classR", - "description": "Prior Approval - Convert an agricultural building to a commercial use", - "type": "string" + "utilities": { + "additionalProperties": false, + "description": "Proposed utilities, if applicable to application.type", + "properties": { + "fire": { + "additionalProperties": false, + "description": "Whether the proposal introduces a fire suppression system", + "properties": { + "suppression": { + "type": "boolean" + } + }, + "required": [ + "suppression" + ], + "type": "object" + }, + "foulSewageDisposal": { + "description": "Type of proposed foul sewage disposal", + "enum": [ + "sewer", + "tank", + "plant", + "pit", + "other" + ], + "type": "string" + }, + "gas": { + "additionalProperties": false, + "description": "Count of new gas connections", + "properties": { + "connections": { + "additionalProperties": false, + "properties": { + "count": { + "$ref": "#/definitions/Integer" + } + }, + "required": [ + "count" + ], + "type": "object" + } + }, + "required": [ + "connections" + ], + "type": "object" + }, + "internet": { + "additionalProperties": false, + "description": "Count of new full fibre Internet connections", + "properties": { + "commercialUnits": { + "additionalProperties": false, + "properties": { + "count": { + "$ref": "#/definitions/Integer" + } + }, + "required": [ + "count" + ], + "type": "object" + }, + "residentialUnits": { + "additionalProperties": false, + "properties": { + "count": { + "$ref": "#/definitions/Integer" + } + }, + "required": [ + "count" + ], + "type": "object" + } + }, + "required": [ + "commercialUnits", + "residentialUnits" + ], + "type": "object" + }, + "water": { + "additionalProperties": false, + "description": "Count of new water connections", + "properties": { + "connections": { + "additionalProperties": false, + "properties": { + "count": { + "$ref": "#/definitions/Integer" + } + }, + "required": [ + "count" + ], + "type": "object" + } + }, + "required": [ + "connections" + ], + "type": "object" + } + }, + "type": "object" }, - { - "const": "pa.part3.classS", - "description": "Prior Approval - Convert an agricultural building to a school", - "type": "string" + "waste": { + "additionalProperties": false, + "description": "Waste management of demolition and construction materials", + "properties": { + "reuseRecycle": { + "additionalProperties": false, + "properties": { + "percent": { + "type": "number" + } + }, + "required": [ + "percent" + ], + "type": "object" + } + }, + "required": [ + "reuseRecycle" + ], + "type": "object" }, - { - "const": "pa.part3.classT", - "description": "Prior Approval - Convert a commercial building to a school", - "type": "string" + "water": { + "additionalProperties": false, + "description": "Water management", + "properties": { + "grey": { + "description": "Whether the proposal includes grey water re-use", + "type": "boolean" + }, + "rain": { + "description": "Whether the proposal includes rain water harvesting", + "type": "boolean" + }, + "usage": { + "additionalProperties": false, + "description": "Internal residential water usage", + "properties": { + "litresPerPersonPerDay": { + "type": "number" + } + }, + "required": [ + "litresPerPersonPerDay" + ], + "type": "object" + } + }, + "required": [ + "usage", + "rain", + "grey" + ], + "type": "object" }, - { - "const": "pa.part3.classV", - "description": "Prior Approval - Changes of use permitted under a permission granted on an application", - "type": "string" + "watercourse": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + }, + "type": { + "enum": [ + "ditch", + "millStream", + "pond", + "river", + "streamOrBrook", + "other" + ], + "type": "string" + } + }, + "required": [ + "name", + "type" + ], + "type": "object" + } + }, + "required": [ + "description", + "projectType" + ], + "type": "object" + }, + "MaintenanceContact": { + "items": { + "additionalProperties": false, + "properties": { + "address": { + "$ref": "#/definitions/UserAddress" + }, + "contact": { + "$ref": "#/definitions/ContactDetails" + }, + "when": { + "enum": [ + "duringConstruction", + "afterConstruction", + "duringAndAfterConstruction" + ], + "type": "string" + } }, - { - "const": "pa.part4.classBB", - "description": "Prior Approval - Put up a temporary structure", + "required": [ + "when", + "address", + "contact" + ], + "type": "object" + }, + "type": "array" + }, + "Materials": { + "additionalProperties": false, + "properties": { + "boundary": { "type": "string" }, - { - "const": "pa.part4.classBC", - "description": "Prior Approval - Develop a temporary campsite", + "door": { "type": "string" }, - { - "const": "pa.part4.classCA", - "description": "Prior Approval - Put temporary school buildings on vacant commercial land", + "lighting": { "type": "string" }, - { - "const": "pa.part4.classE", - "description": "Prior Approval - Use a building or land to shoot a film", + "other": { "type": "string" }, - { - "const": "pa.part6", - "description": "Prior Approval - Alter or add new buildings to agricultural or forestry sites", + "roof": { "type": "string" }, - { - "const": "pa.part6.classA", - "description": "Prior Approval - Build new agricultural buildings on a unit of 5 hectares or more", + "surface": { "type": "string" }, - { - "const": "pa.part6.classB", - "description": "Prior Approval - Build new agricultural buildings on a unit of less than 5 hectares", + "wall": { "type": "string" }, - { - "const": "pa.part6.classE", - "description": "Prior Approval - Build new forestry buildings", + "window": { "type": "string" - }, + } + }, + "type": "object" + }, + "Metadata": { + "$id": "#DigitalPlanningMetadata", + "anyOf": [ { - "const": "pa.part7.classC", - "description": "Prior Approval - Install click and collect facilities", - "type": "string" + "$ref": "#/definitions/AnyProviderMetadata" }, { - "const": "pa.part7.classM", - "description": "Prior Approval - Extend a school, college, university, prison or hospital", - "type": "string" + "$ref": "#/definitions/PlanXMetadata" + } + ], + "description": "Details of the digital planning service which sent this application" + }, + "MultiLineString": { + "additionalProperties": false, + "description": "MultiLineString geometry object. https://tools.ietf.org/html/rfc7946#section-3.1.5", + "properties": { + "bbox": { + "$ref": "#/definitions/BBox", + "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" }, - { - "const": "pa.part9.classD", - "description": "Prior Approval - Development of toll facilities", - "type": "string" + "coordinates": { + "items": { + "items": { + "$ref": "#/definitions/Position" + }, + "type": "array" + }, + "type": "array" }, - { - "const": "pa.part11.classB", - "description": "Prior Approval - Demolish a building", + "type": { + "const": "MultiLineString", + "description": "Specifies the type of GeoJSON object.", "type": "string" + } + }, + "required": [ + "coordinates", + "type" + ], + "type": "object" + }, + "MultiPoint": { + "additionalProperties": false, + "description": "MultiPoint geometry object. https://tools.ietf.org/html/rfc7946#section-3.1.3", + "properties": { + "bbox": { + "$ref": "#/definitions/BBox", + "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" }, - { - "const": "pa.part14.classA", - "description": "Prior Approval - Install or change solar equipment on domestic premises", + "coordinates": { + "items": { + "$ref": "#/definitions/Position" + }, + "type": "array" + }, + "type": { + "const": "MultiPoint", + "description": "Specifies the type of GeoJSON object.", "type": "string" + } + }, + "required": [ + "coordinates", + "type" + ], + "type": "object" + }, + "MultiPolygon": { + "additionalProperties": false, + "description": "MultiPolygon geometry object. https://tools.ietf.org/html/rfc7946#section-3.1.7", + "properties": { + "bbox": { + "$ref": "#/definitions/BBox", + "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" }, - { - "const": "pa.part14.classB", - "description": "Prior Approval - Install or change stand-alone solar equipment on domestic premises", + "coordinates": { + "items": { + "items": { + "items": { + "$ref": "#/definitions/Position" + }, + "type": "array" + }, + "type": "array" + }, + "type": "array" + }, + "type": { + "const": "MultiPolygon", + "description": "Specifies the type of GeoJSON object.", "type": "string" + } + }, + "required": [ + "coordinates", + "type" + ], + "type": "object" + }, + "NewBuildingsOrStoreys": { + "additionalProperties": false, + "description": "Details about creating new buildings or increasing the height of existing buildings", + "properties": { + "buildings": { + "items": { + "additionalProperties": false, + "properties": { + "height": { + "additionalProperties": false, + "properties": { + "metres": { + "type": "number" + } + }, + "required": [ + "metres" + ], + "type": "object" + }, + "storeys": { + "$ref": "#/definitions/Integer" + } + }, + "required": [ + "height", + "storeys" + ], + "type": "object" + }, + "type": "array" }, + "count": { + "$ref": "#/definitions/Integer" + } + }, + "required": [ + "count" + ], + "type": "object" + }, + "NonFeeCarryingApplicationData": { + "anyOf": [ { - "const": "pa.part14.classJ", - "description": "Prior Approval - Install or change solar panels", + "additionalProperties": false, + "properties": { + "declaration": { + "$ref": "#/definitions/ApplicationDeclaration" + }, + "fee": { + "$ref": "#/definitions/ApplicationFeeNotApplicable" + }, + "planningApp": { + "$ref": "#/definitions/PlanningApplication" + }, + "preApp": { + "$ref": "#/definitions/PreApplication" + } + }, + "required": [ + "declaration", + "fee" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "declaration": { + "$ref": "#/definitions/ApplicationDeclaration" + }, + "fee": { + "$ref": "#/definitions/ApplicationFeeNotApplicable" + }, + "leadDeveloper": { + "$ref": "#/definitions/LeadDeveloper" + }, + "planningApp": { + "$ref": "#/definitions/PlanningApplication" + }, + "preApp": { + "$ref": "#/definitions/PreApplication" + }, + "vacantBuildingCredit": { + "type": "boolean" + } + }, + "required": [ + "declaration", + "fee" + ], + "type": "object" + } + ], + "description": "ApplicationData required for application types that do not have a fee" + }, + "OSAddress": { + "additionalProperties": false, + "description": "Address information for sites with a known address sourced from Ordnance Survey AddressBase Premium (LPI)", + "properties": { + "latitude": { + "description": "Latitude coordinate in EPSG:4326 (WGS84)", + "type": "number" + }, + "longitude": { + "description": "Longitude coordinate in EPSG:4326 (WGS84)", + "type": "number" + }, + "organisation": { + "type": "string" + }, + "pao": { + "type": "string" + }, + "postcode": { + "type": "string" + }, + "singleLine": { + "type": "string" + }, + "source": { + "const": "Ordnance Survey", + "type": "string" + }, + "street": { + "type": "string" + }, + "title": { + "type": "string" + }, + "town": { + "type": "string" + }, + "uprn": { + "maxLength": 12, + "title": "Unique Property Reference Number", + "type": "string" + }, + "usrn": { + "maxLength": 8, + "title": "Unique Street Reference Number", "type": "string" }, + "x": { + "description": "Easting coordinate in British National Grid (OSGB36)", + "type": "number" + }, + "y": { + "description": "Northing coordinate in British National Grid (OSGB36)", + "type": "number" + } + }, + "required": [ + "latitude", + "longitude", + "pao", + "postcode", + "singleLine", + "source", + "street", + "title", + "town", + "uprn", + "usrn", + "x", + "y" + ], + "type": "object" + }, + "OpenSpaceDesignation": { + "$id": "#OpenSpaceDesignation", + "anyOf": [ { - "const": "pa.part14.classK", - "description": "Prior Approval - Install or change stand-alone solar equipment on non-domestic premises", + "const": "greenBelt", + "description": "Green Belt", "type": "string" }, { - "const": "pa.part14.classOA", - "description": "Prior Approval - Installation of a solar canopy on non-domestic, off-street parking", + "const": "local", + "description": "Local Open Spaces", "type": "string" }, { - "const": "pa.part16.classA", - "description": "Prior Approval - Install telecommunications equipment", + "const": "metropolitan", + "description": "Metropolitan Open Land", "type": "string" }, { - "const": "pa.part17", - "description": "Prior Approval - Coal mining", + "const": "none", + "description": "Not designated", "type": "string" }, { - "const": "pa.part17.classB", - "description": "Prior Approval - Other developments ancillary to mining operations", + "const": "other", + "description": "Other designation", + "type": "string" + } + ], + "description": "Designations of natural open spaces" + }, + "OpenSpaceType": { + "$id": "#OpenSpaceType", + "anyOf": [ + { + "const": "allotment", + "description": "Allotments, community gardens and city farms", "type": "string" }, { - "const": "pa.part17.classC", - "description": "Prior Approval - Developments for maintenance or safety", + "const": "amenity", + "description": "Amenity", "type": "string" }, { - "const": "pa.part17.classG", - "description": "Prior Approval - Coal mining development by the Coal Authority for maintenance or safety", + "const": "brownfield", + "description": "Brownfield land", "type": "string" }, { - "const": "pa.part18.classA", - "description": "Prior Approval - Development under private acts or orders", + "const": "burial", + "description": "Cemeteries, churchyards and other burial grounds", "type": "string" }, { - "const": "pa.part19.classTA", - "description": "Prior Approval - Development on a closed defence site", + "const": "children", + "description": "Provision for children and young people", "type": "string" }, { - "const": "pa.part20.classA", - "description": "Prior Approval - Build homes on a detached blocks of flats", + "const": "civic", + "description": "Civic spaces", "type": "string" }, { - "const": "pa.part20.classAA", - "description": "Prior Approval - Build homes on a detached commercial building", + "const": "fringe", + "description": "Countryside in urban fringe areas", "type": "string" }, { - "const": "pa.part20.classAB", - "description": "Prior Approval - Build homes on an adjoining commercial or mixed use building", + "const": "greenCorridor", + "description": "Green corridors", "type": "string" }, { - "const": "pa.part20.classAC", - "description": "Prior Approval - Build homes on adjoining houses", + "const": "natural", + "description": "Natural and semi-natural", "type": "string" }, { - "const": "pa.part20.classAD", - "description": "Prior Approval - Build homes on detached houses", + "const": "nonResidential", + "description": "Non-residential institution grounds or gardens", "type": "string" }, { - "const": "pa.part20.classZA", - "description": "Prior Approval - Demolish buildings and build homes in their place", + "const": "park", + "description": "Parks and gardens", + "type": "string" + }, + { + "const": "residential", + "description": "Residential gardens", + "type": "string" + }, + { + "const": "sport", + "description": "Outdoor sports facilities", "type": "string" } - ] + ], + "description": "Types of natural open spaces" }, - "PP": { + "OwnersNoNoticeGiven": { + "additionalProperties": false, + "properties": { + "address": { + "anyOf": [ + { + "$ref": "#/definitions/UserAddress" + }, + { + "type": "string" + } + ] + }, + "interest": { + "$ref": "#/definitions/OwnershipInterest" + }, + "name": { + "type": "string" + }, + "noNoticeReason": { + "type": "string" + }, + "noticeGiven": { + "const": false, + "type": "boolean" + } + }, + "required": [ + "address", + "name", + "noNoticeReason", + "noticeGiven" + ], + "type": "object" + }, + "OwnersNoticeDate": { + "additionalProperties": false, + "properties": { + "address": { + "anyOf": [ + { + "$ref": "#/definitions/UserAddress" + }, + { + "type": "string" + } + ] + }, + "interest": { + "$ref": "#/definitions/OwnershipInterest" + }, + "name": { + "type": "string" + }, + "noticeDate": { + "$ref": "#/definitions/Date" + } + }, + "required": [ + "address", + "name", + "noticeDate" + ], + "type": "object" + }, + "OwnersNoticeGiven": { + "additionalProperties": false, + "properties": { + "address": { + "anyOf": [ + { + "$ref": "#/definitions/UserAddress" + }, + { + "type": "string" + } + ] + }, + "interest": { + "$ref": "#/definitions/OwnershipInterest" + }, + "name": { + "type": "string" + }, + "noticeGiven": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "address", + "name", + "noticeGiven" + ], + "type": "object" + }, + "OwnershipInterest": { + "enum": [ + "owner", + "tenant", + "occupier", + "other" + ], + "type": "string" + }, + "PA": { "additionalProperties": false, "properties": { "applicationType": { - "$ref": "#/definitions/PPApplicationType" + "$ref": "#/definitions/PAApplicationType" }, "data": { "additionalProperties": false, "properties": { "applicant": { - "$ref": "#/definitions/PPApplicant" + "$ref": "#/definitions/ApplicantBase" }, "application": { - "$ref": "#/definitions/PPApplicationData" + "$ref": "#/definitions/FeeCarryingApplicationData" }, "property": { "$ref": "#/definitions/PropertyBase" @@ -4383,172 +5758,445 @@ ], "type": "object" }, - "PPApplicant": { + "PAApplicationType": { "anyOf": [ { - "additionalProperties": false, - "properties": { - "address": { - "$ref": "#/definitions/ApplicantAddress", - "description": "Address information for the applicant" - }, - "company": { - "additionalProperties": false, - "properties": { - "name": { - "type": "string" - } - }, - "required": [ - "name" - ], - "type": "object" - }, - "email": { - "$ref": "#/definitions/Email" - }, - "maintenanceContact": { - "description": "Contact information for the person(s) responsible for maintenace while the works are carried out", - "items": { - "$ref": "#/definitions/MaintenanceContact" - }, - "type": "array" - }, - "name": { - "additionalProperties": false, - "properties": { - "first": { - "type": "string" - }, - "last": { - "type": "string" - }, - "title": { - "type": "string" - } - }, - "required": [ - "first", - "last" - ], - "type": "object" - }, - "ownership": { - "additionalProperties": false, - "description": "Information about the ownership certificate and propery owners, if different than the applicant", - "properties": { - "agriculturalTenants": { - "description": "Does the land have any agricultural tenants?", - "type": "boolean" - }, - "certificate": { - "enum": [ - "a", - "b", - "c", - "d" - ], - "type": "string" - }, - "declaration": { - "additionalProperties": false, - "description": "Declaration of the accuracy of the ownership certificate, including reasonable steps taken to find all owners and publish notice", - "properties": { - "accurate": { - "const": true, - "type": "boolean" - } - }, - "required": [ - "accurate" - ], - "type": "object" - }, - "interest": { - "anyOf": [ - { - "$ref": "#/definitions/OwnershipInterest" - }, - { - "const": "owner.sole", - "type": "string" - }, - { - "const": "owner.co", - "type": "string" - } - ] - }, - "noticeGiven": { - "description": "Has requisite notice been given to all the known owners and agricultural tenants?", - "type": "boolean" - }, - "noticePublished": { - "additionalProperties": false, - "description": "Has a notice of the application been published in a newspaper circulating in the area where the land is situated?", - "properties": { - "date": { - "$ref": "#/definitions/Date" - }, - "newspaperName": { - "type": "string" - }, - "status": { - "type": "boolean" - } - }, - "required": [ - "status" - ], - "type": "object" - }, - "owners": { - "items": { - "$ref": "#/definitions/OwnersNoticeDate" - }, - "type": "array" - }, - "ownersKnown": { - "description": "Do you know the names and addresses of all owners and agricultural tenants?", - "enum": [ - "all", - "some", - "none" - ], - "type": "string" - } - }, - "required": [ - "interest", - "certificate", - "declaration" - ], - "type": "object" + "const": "pa", + "description": "Prior Approval", + "type": "string" + }, + { + "const": "pa.part1.classA", + "description": "Prior Approval - Larger extension to a house", + "type": "string" + }, + { + "const": "pa.part1.classAA", + "description": "Prior Approval - Adding storeys to a house", + "type": "string" + }, + { + "const": "pa.part3.classG", + "description": "Prior Approval - Convert a commercial building to mixed use", + "type": "string" + }, + { + "const": "pa.part3.classM", + "description": "Prior Approval - Convert a mixed use building into a home", + "type": "string" + }, + { + "const": "pa.part3.classMA", + "description": "Prior Approval - Convert a commercial building into a home or homes", + "type": "string" + }, + { + "const": "pa.part3.classN", + "description": "Prior Approval - Convert a casino or amusement arcade into a home or homes", + "type": "string" + }, + { + "const": "pa.part3.classQ", + "description": "Prior Approval - Convert an agricultural building into a home", + "type": "string" + }, + { + "const": "pa.part3.classR", + "description": "Prior Approval - Convert an agricultural building to a commercial use", + "type": "string" + }, + { + "const": "pa.part3.classS", + "description": "Prior Approval - Convert an agricultural building to a school", + "type": "string" + }, + { + "const": "pa.part3.classT", + "description": "Prior Approval - Convert a commercial building to a school", + "type": "string" + }, + { + "const": "pa.part3.classV", + "description": "Prior Approval - Changes of use permitted under a permission granted on an application", + "type": "string" + }, + { + "const": "pa.part4.classBB", + "description": "Prior Approval - Put up a temporary structure", + "type": "string" + }, + { + "const": "pa.part4.classBC", + "description": "Prior Approval - Develop a temporary campsite", + "type": "string" + }, + { + "const": "pa.part4.classCA", + "description": "Prior Approval - Put temporary school buildings on vacant commercial land", + "type": "string" + }, + { + "const": "pa.part4.classE", + "description": "Prior Approval - Use a building or land to shoot a film", + "type": "string" + }, + { + "const": "pa.part6", + "description": "Prior Approval - Alter or add new buildings to agricultural or forestry sites", + "type": "string" + }, + { + "const": "pa.part6.classA", + "description": "Prior Approval - Build new agricultural buildings on a unit of 5 hectares or more", + "type": "string" + }, + { + "const": "pa.part6.classB", + "description": "Prior Approval - Build new agricultural buildings on a unit of less than 5 hectares", + "type": "string" + }, + { + "const": "pa.part6.classE", + "description": "Prior Approval - Build new forestry buildings", + "type": "string" + }, + { + "const": "pa.part7.classC", + "description": "Prior Approval - Install click and collect facilities", + "type": "string" + }, + { + "const": "pa.part7.classM", + "description": "Prior Approval - Extend a school, college, university, prison or hospital", + "type": "string" + }, + { + "const": "pa.part9.classD", + "description": "Prior Approval - Development of toll facilities", + "type": "string" + }, + { + "const": "pa.part11.classB", + "description": "Prior Approval - Demolish a building", + "type": "string" + }, + { + "const": "pa.part14.classA", + "description": "Prior Approval - Install or change solar equipment on domestic premises", + "type": "string" + }, + { + "const": "pa.part14.classB", + "description": "Prior Approval - Install or change stand-alone solar equipment on domestic premises", + "type": "string" + }, + { + "const": "pa.part14.classJ", + "description": "Prior Approval - Install or change solar panels", + "type": "string" + }, + { + "const": "pa.part14.classK", + "description": "Prior Approval - Install or change stand-alone solar equipment on non-domestic premises", + "type": "string" + }, + { + "const": "pa.part14.classOA", + "description": "Prior Approval - Installation of a solar canopy on non-domestic, off-street parking", + "type": "string" + }, + { + "const": "pa.part16.classA", + "description": "Prior Approval - Install telecommunications equipment", + "type": "string" + }, + { + "const": "pa.part17", + "description": "Prior Approval - Coal mining", + "type": "string" + }, + { + "const": "pa.part17.classB", + "description": "Prior Approval - Other developments ancillary to mining operations", + "type": "string" + }, + { + "const": "pa.part17.classC", + "description": "Prior Approval - Developments for maintenance or safety", + "type": "string" + }, + { + "const": "pa.part17.classG", + "description": "Prior Approval - Coal mining development by the Coal Authority for maintenance or safety", + "type": "string" + }, + { + "const": "pa.part18.classA", + "description": "Prior Approval - Development under private acts or orders", + "type": "string" + }, + { + "const": "pa.part19.classTA", + "description": "Prior Approval - Development on a closed defence site", + "type": "string" + }, + { + "const": "pa.part20.classA", + "description": "Prior Approval - Build homes on a detached blocks of flats", + "type": "string" + }, + { + "const": "pa.part20.classAA", + "description": "Prior Approval - Build homes on a detached commercial building", + "type": "string" + }, + { + "const": "pa.part20.classAB", + "description": "Prior Approval - Build homes on an adjoining commercial or mixed use building", + "type": "string" + }, + { + "const": "pa.part20.classAC", + "description": "Prior Approval - Build homes on adjoining houses", + "type": "string" + }, + { + "const": "pa.part20.classAD", + "description": "Prior Approval - Build homes on detached houses", + "type": "string" + }, + { + "const": "pa.part20.classZA", + "description": "Prior Approval - Demolish buildings and build homes in their place", + "type": "string" + } + ] + }, + "PP": { + "additionalProperties": false, + "properties": { + "applicationType": { + "$ref": "#/definitions/PPApplicationType" + }, + "data": { + "additionalProperties": false, + "properties": { + "applicant": { + "$ref": "#/definitions/PPApplicant" }, - "phone": { - "additionalProperties": false, - "properties": { - "primary": { - "type": "string" - } - }, - "required": [ - "primary" - ], - "type": "object" + "application": { + "$ref": "#/definitions/PPApplicationData" }, - "siteContact": { - "$ref": "#/definitions/SiteContact", - "description": "Contact information for the site visit" + "property": { + "$ref": "#/definitions/PropertyBase" }, - "type": { - "enum": [ - "individual", - "company", - "charity", - "public", - "parishCouncil" - ], + "proposal": { + "$ref": "#/definitions/ProposalBase" + }, + "user": { + "$ref": "#/definitions/UserBase" + } + }, + "required": [ + "user", + "applicant", + "application", + "property", + "proposal" + ], + "type": "object" + }, + "files": { + "items": { + "$ref": "#/definitions/File" + }, + "type": "array" + }, + "metadata": { + "$ref": "#/definitions/Metadata" + }, + "preAssessment": { + "$ref": "#/definitions/PreAssessment" + }, + "responses": { + "$ref": "#/definitions/Responses" + } + }, + "required": [ + "applicationType", + "data", + "responses", + "files", + "metadata" + ], + "type": "object" + }, + "PPApplicant": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "address": { + "$ref": "#/definitions/ApplicantAddress", + "description": "Address information for the applicant" + }, + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ], + "type": "object" + }, + "email": { + "$ref": "#/definitions/Email" + }, + "maintenanceContact": { + "description": "Contact information for the person(s) responsible for maintenace while the works are carried out", + "items": { + "$ref": "#/definitions/MaintenanceContact" + }, + "type": "array" + }, + "name": { + "additionalProperties": false, + "properties": { + "first": { + "type": "string" + }, + "last": { + "type": "string" + }, + "title": { + "type": "string" + } + }, + "required": [ + "first", + "last" + ], + "type": "object" + }, + "ownership": { + "additionalProperties": false, + "description": "Information about the ownership certificate and propery owners, if different than the applicant", + "properties": { + "agriculturalTenants": { + "description": "Does the land have any agricultural tenants?", + "type": "boolean" + }, + "certificate": { + "enum": [ + "a", + "b", + "c", + "d" + ], + "type": "string" + }, + "declaration": { + "additionalProperties": false, + "description": "Declaration of the accuracy of the ownership certificate, including reasonable steps taken to find all owners and publish notice", + "properties": { + "accurate": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "accurate" + ], + "type": "object" + }, + "interest": { + "anyOf": [ + { + "$ref": "#/definitions/OwnershipInterest" + }, + { + "const": "owner.sole", + "type": "string" + }, + { + "const": "owner.co", + "type": "string" + } + ] + }, + "noticeGiven": { + "description": "Has requisite notice been given to all the known owners and agricultural tenants?", + "type": "boolean" + }, + "noticePublished": { + "additionalProperties": false, + "description": "Has a notice of the application been published in a newspaper circulating in the area where the land is situated?", + "properties": { + "date": { + "$ref": "#/definitions/Date" + }, + "newspaperName": { + "type": "string" + }, + "status": { + "type": "boolean" + } + }, + "required": [ + "status" + ], + "type": "object" + }, + "owners": { + "items": { + "$ref": "#/definitions/OwnersNoticeDate" + }, + "type": "array" + }, + "ownersKnown": { + "description": "Do you know the names and addresses of all owners and agricultural tenants?", + "enum": [ + "all", + "some", + "none" + ], + "type": "string" + } + }, + "required": [ + "interest", + "certificate", + "declaration" + ], + "type": "object" + }, + "phone": { + "additionalProperties": false, + "properties": { + "primary": { + "type": "string" + } + }, + "required": [ + "primary" + ], + "type": "object" + }, + "siteContact": { + "$ref": "#/definitions/SiteContact", + "description": "Contact information for the site visit" + }, + "type": { + "enum": [ + "individual", + "company", + "charity", + "public", + "parishCouncil" + ], "type": "string" } }, @@ -5486,103 +7134,1594 @@ "$ref": "#/definitions/BBox", "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" }, - "coordinates": { - "$ref": "#/definitions/Position" + "coordinates": { + "$ref": "#/definitions/Position" + }, + "type": { + "const": "Point", + "description": "Specifies the type of GeoJSON object.", + "type": "string" + } + }, + "required": [ + "coordinates", + "type" + ], + "type": "object" + }, + "Polygon": { + "additionalProperties": false, + "description": "Polygon geometry object. https://tools.ietf.org/html/rfc7946#section-3.1.6", + "properties": { + "bbox": { + "$ref": "#/definitions/BBox", + "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" + }, + "coordinates": { + "items": { + "items": { + "$ref": "#/definitions/Position" + }, + "type": "array" + }, + "type": "array" + }, + "type": { + "const": "Polygon", + "description": "Specifies the type of GeoJSON object.", + "type": "string" + } + }, + "required": [ + "coordinates", + "type" + ], + "type": "object" + }, + "Position": { + "description": "A Position is an array of coordinates. https://tools.ietf.org/html/rfc7946#section-3.1.1 Array should contain between two and three elements. The previous GeoJSON specification allowed more elements (e.g., which could be used to represent M values), but the current specification only allows X, Y, and (optionally) Z to be defined.", + "items": { + "type": "number" + }, + "type": "array" + }, + "PreApplication": { + "additionalProperties": false, + "description": "Details of the pre-application preceeding this application, if applicable", + "properties": { + "date": { + "format": "date-time", + "type": "string" + }, + "officer": { + "type": "string" + }, + "reference": { + "type": "string" + }, + "summary": { + "type": "string" + } + }, + "required": [ + "reference", + "date", + "officer", + "summary" + ], + "type": "object" + }, + "PreAssessment": { + "$id": "#PreAssessment", + "description": "The result of the application based on information provided by the applicant, prior to assessment by a planning officer. Results are determined by flags corresponding to responses; each application can have up to one result per flagset", + "items": { + "additionalProperties": false, + "properties": { + "description": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + "type": "array" + }, + "ProjectType": { + "$id": "#ProjectType", + "anyOf": [ + { + "const": "alter", + "description": "Alter a building", + "type": "string" + }, + { + "const": "alter.balcony", + "description": "Add or alter a balcony", + "type": "string" + }, + { + "const": "alter.bayWindow", + "description": "Add or remove a bay window", + "type": "string" + }, + { + "const": "alter.bayWindow.add", + "description": "Add a bay window", + "type": "string" + }, + { + "const": "alter.bayWindow.rear", + "description": "Add a bay window to the rear of the building", + "type": "string" + }, + { + "const": "alter.bayWindow.remove", + "description": "Remove a bay window", + "type": "string" + }, + { + "const": "alter.boundary", + "description": "Changes to a fence, wall or gate", + "type": "string" + }, + { + "const": "alter.boundary.add", + "description": "Add a new fence, wall or gate", + "type": "string" + }, + { + "const": "alter.boundary.add.fence", + "description": "Add a new fence", + "type": "string" + }, + { + "const": "alter.boundary.add.gate", + "description": "Add a new gate", + "type": "string" + }, + { + "const": "alter.boundary.add.wall", + "description": "Add a new boundary wall", + "type": "string" + }, + { + "const": "alter.boundary.alter", + "description": "Change a fence, wall or gate", + "type": "string" + }, + { + "const": "alter.boundary.remove", + "description": "Remove a fence, wall, or gate", + "type": "string" + }, + { + "const": "alter.boundary.repair", + "description": "Repair a fence, wall or gate", + "type": "string" + }, + { + "const": "alter.boundary.repair.fence", + "description": "Repair a fence", + "type": "string" + }, + { + "const": "alter.boundary.repair.gate", + "description": "Repair a gate", + "type": "string" + }, + { + "const": "alter.boundary.repair.wall", + "description": "Repair a wall", + "type": "string" + }, + { + "const": "alter.boundary.replace", + "description": "Replace a fence, wall or gate", + "type": "string" + }, + { + "const": "alter.boundary.replace.fence", + "description": "Replace a fence", + "type": "string" + }, + { + "const": "alter.boundary.replace.gate", + "description": "Replace a gate", + "type": "string" + }, + { + "const": "alter.boundary.replace.wall", + "description": "Replace a wall", + "type": "string" + }, + { + "const": "alter.cables", + "description": "Install underground cables", + "type": "string" + }, + { + "const": "alter.changeOfMaterials.boundary", + "description": "Change the material of a fence, wall or gate", + "type": "string" + }, + { + "const": "alter.changeOfMaterials.chimney", + "description": "Change the material of chimneys", + "type": "string" + }, + { + "const": "alter.changeOfMaterials.externalDoors", + "description": "Change the material of external doors", + "type": "string" + }, + { + "const": "alter.changeOfMaterials.externalWalls", + "description": "Change the material of external walls", + "type": "string" + }, + { + "const": "alter.changeOfMaterials.floors", + "description": "Change the material of floors", + "type": "string" + }, + { + "const": "alter.changeOfMaterials.hardstanding", + "description": "Change the material of vehicle access or hardstanding", + "type": "string" + }, + { + "const": "alter.changeOfMaterials.internalDoors", + "description": "Change the material of internal doors", + "type": "string" + }, + { + "const": "alter.changeOfMaterials.internalWalls", + "description": "Change the material of internal walls", + "type": "string" + }, + { + "const": "alter.changeOfMaterials.other", + "description": "Change the material of something else", + "type": "string" + }, + { + "const": "alter.changeOfMaterials.rainwaterGoods", + "description": "Change the material of rainwater goods", + "type": "string" + }, + { + "const": "alter.changeOfMaterials.roofCovering", + "description": "Change the material of roof coverings", + "type": "string" + }, + { + "const": "alter.changeOfMaterials.windows", + "description": "Change the material of windows", + "type": "string" + }, + { + "const": "alter.chimneys", + "description": "Change chimneys", + "type": "string" + }, + { + "const": "alter.chimneys.add", + "description": "Add a chimney", + "type": "string" + }, + { + "const": "alter.chimneys.replace", + "description": "Replace a chimney", + "type": "string" + }, + { + "const": "alter.decks", + "description": "Add a verandah or deck", + "type": "string" + }, + { + "const": "alter.decksHigh", + "description": "Add a high verandah or deck", + "type": "string" + }, + { + "const": "alter.drains", + "description": "Work on drains", + "type": "string" + }, + { + "const": "alter.equipment", + "description": "Install equipment", + "type": "string" + }, + { + "const": "alter.equipment.airConditioning", + "description": "Install an air conditioning unit", + "type": "string" + }, + { + "const": "alter.equipment.alarm", + "description": "Install a security alarm", + "type": "string" + }, + { + "const": "alter.equipment.antennae", + "description": "Install a satellite dish or aerial", + "type": "string" + }, + { + "const": "alter.equipment.antennae.aerial", + "description": "Install an aerial antennae", + "type": "string" + }, + { + "const": "alter.equipment.antennae.dish", + "description": "Install a satellite dish", + "type": "string" + }, + { + "const": "alter.equipment.bbq", + "description": "Install a barbecue", + "type": "string" + }, + { + "const": "alter.equipment.biomass", + "description": "Install a flue with a biomass burner", + "type": "string" + }, + { + "const": "alter.equipment.cctv", + "description": "Install CCTV cameras", + "type": "string" + }, + { + "const": "alter.equipment.charging", + "description": "Install a car charging point", + "type": "string" + }, + { + "const": "alter.equipment.heatPump", + "description": "Install a heat pump", + "type": "string" + }, + { + "const": "alter.equipment.heatPump.air", + "description": "Install an air heat pump", + "type": "string" + }, + { + "const": "alter.equipment.heatPump.ground", + "description": "Install a ground heat pump", + "type": "string" + }, + { + "const": "alter.equipment.heatPump.water", + "description": "Install a water heat pump", + "type": "string" + }, + { + "const": "alter.equipment.industrial", + "description": "Install industrial equipment", + "type": "string" + }, + { + "const": "alter.equipment.lighting", + "description": "Install outdoor lights", + "type": "string" + }, + { + "const": "alter.equipment.machinery", + "description": "Install machinery", + "type": "string" + }, + { + "const": "alter.equipment.solar", + "description": "Install solar panels", + "type": "string" + }, + { + "const": "alter.equipment.solar.pv", + "description": "Install solar photovoltaics (PV)", + "type": "string" + }, + { + "const": "alter.equipment.solar.thermal", + "description": "Install solar thermal equipment", + "type": "string" + }, + { + "const": "alter.equipment.tank", + "description": "Install an outdoor tank (for example a water tank)", + "type": "string" + }, + { + "const": "alter.equipment.ventilation", + "description": "Install ventilation", + "type": "string" + }, + { + "const": "alter.equipment.wifi", + "description": "Install internet equipment", + "type": "string" + }, + { + "const": "alter.equipment.wind", + "description": "Install a wind turbine", + "type": "string" + }, + { + "const": "alter.facades", + "description": "Change the material or colour of the external walls", + "type": "string" + }, + { + "const": "alter.facades.insulation", + "description": "Change the insulation of the facade", + "type": "string" + }, + { + "const": "alter.facades.paint", + "description": "Paint the facade", + "type": "string" + }, + { + "const": "alter.facades.rear", + "description": "Change the material or colour of the external walls to the rear of the building", + "type": "string" + }, + { + "const": "alter.facades.reclad", + "description": "Change the cladding of the facade", + "type": "string" + }, + { + "const": "alter.facades.repair", + "description": "Repair the facade", + "type": "string" + }, + { + "const": "alter.highways", + "description": "Changes to a public road, pavement or path (including drop kerb)", + "type": "string" + }, + { + "const": "alter.highways.access", + "description": "Create a point of access to a highway", + "type": "string" + }, + { + "const": "alter.highways.access.unclassified", + "description": "Create a point of access to an unclassified road", + "type": "string" + }, + { + "const": "alter.highways.dropKerb", + "description": "Changes to a dropped kerb", + "type": "string" + }, + { + "const": "alter.highways.droppedKerb", + "description": "Changes to a dropped kerb", + "type": "string" + }, + { + "const": "alter.highways.droppedKerb.add", + "description": "Add a dropped kerb", + "type": "string" + }, + { + "const": "alter.highways.droppedKerb.remove", + "description": "Remove a dropped kerb", + "type": "string" + }, + { + "const": "alter.highways.road", + "description": "Changes to a road", + "type": "string" + }, + { + "const": "alter.highways.road.add", + "description": "Add a road", + "type": "string" + }, + { + "const": "alter.highways.road.remove", + "description": "Remove a road", + "type": "string" + }, + { + "const": "alter.industrial.plant", + "description": "Install plant equipment or machinery", + "type": "string" + }, + { + "const": "alter.internal", + "description": "Changes to internal walls or layout", + "type": "string" + }, + { + "const": "alter.landscape", + "description": "Landscaping works", + "type": "string" + }, + { + "const": "alter.landscape.gardens", + "description": "Add or remove a residential lawn or garden", + "type": "string" + }, + { + "const": "alter.landscape.ponds", + "description": "Add or remove a pond", + "type": "string" + }, + { + "const": "alter.openings", + "description": "Change a door or window opening", + "type": "string" + }, + { + "const": "alter.openings.add", + "description": "Add a door or window opening", + "type": "string" + }, + { + "const": "alter.openings.add.door", + "description": "Add one or more new doorways", + "type": "string" + }, + { + "const": "alter.openings.add.door.front", + "description": "Add new doorways to the front of the building", + "type": "string" + }, + { + "const": "alter.openings.add.door.rear", + "description": "Add new doorways to the rear of the building", + "type": "string" + }, + { + "const": "alter.openings.add.door.side", + "description": "Add new doorways to the side of the building", + "type": "string" + }, + { + "const": "alter.openings.add.window", + "description": "Add one or more new windows", + "type": "string" + }, + { + "const": "alter.openings.add.windows", + "description": "Add one or more new windows", + "type": "string" + }, + { + "const": "alter.openings.add.windows.front", + "description": "Add new windows to the front of the building", + "type": "string" + }, + { + "const": "alter.openings.add.windows.high", + "description": "Add new windows 1.7m up or higher", + "type": "string" + }, + { + "const": "alter.openings.add.windows.rear", + "description": "Add new windows to the rear of the building", + "type": "string" + }, + { + "const": "alter.openings.add.windows.shutters", + "description": "Add new shutters to windows", + "type": "string" + }, + { + "const": "alter.openings.add.windows.side", + "description": "Add new windows to the side of the building", + "type": "string" + }, + { + "const": "alter.openings.alter", + "description": "Change the size of doorways or windows", + "type": "string" + }, + { + "const": "alter.openings.alter.convert.doorToWindow", + "description": "Convert a doorway into a window", + "type": "string" + }, + { + "const": "alter.openings.alter.convert.windowToDoor", + "description": "Convert a window into a doorway", + "type": "string" + }, + { + "const": "alter.openings.alter.enlarge.door", + "description": "Enlarge a door opening", + "type": "string" + }, + { + "const": "alter.openings.alter.enlarge.window", + "description": "Enlarge a window opening", + "type": "string" + }, + { + "const": "alter.openings.alter.enlarge.window.front", + "description": "Enlarge a window opening on the front of a building", + "type": "string" + }, + { + "const": "alter.openings.alter.enlarge.window.rear", + "description": "Enlarge a window opening on the rear of a building", + "type": "string" + }, + { + "const": "alter.openings.alter.enlarge.window.side", + "description": "Enlarge a window opening on the side of a building", + "type": "string" + }, + { + "const": "alter.openings.alter.reduce.door", + "description": "Reduce the size of a door opening", + "type": "string" + }, + { + "const": "alter.openings.alter.reduce.window", + "description": "Reduce the size of a window opening", + "type": "string" + }, + { + "const": "alter.openings.alter.reduce.window.front", + "description": "Reduce the size of a window opening on the front of a building", + "type": "string" + }, + { + "const": "alter.openings.alter.reduce.window.rear", + "description": "Reduce the size of a window opening on the rear of a building", + "type": "string" + }, + { + "const": "alter.openings.alter.reduce.window.side", + "description": "Reduce the size of a window opening on the side of a building", + "type": "string" + }, + { + "const": "alter.openings.remove", + "description": "Block up doorways or windows", + "type": "string" + }, + { + "const": "alter.openings.remove.door", + "description": "Block up doorways", + "type": "string" + }, + { + "const": "alter.openings.remove.window", + "description": "Block up windows", + "type": "string" + }, + { + "const": "alter.pipes", + "description": "Install pipes", + "type": "string" + }, + { + "const": "alter.remove", + "description": "Remove part of a building (such as a decorative feature)", + "type": "string" + }, + { + "const": "alter.remove.chimney", + "description": "Remove a chimney", + "type": "string" + }, + { + "const": "alter.remove.deck", + "description": "Remove a deck", + "type": "string" + }, + { + "const": "alter.remove.drain", + "description": "Remove a drain", + "type": "string" + }, + { + "const": "alter.remove.equipment", + "description": "Remove energy equipment", + "type": "string" + }, + { + "const": "alter.remove.facade", + "description": "Remove part of a facade", + "type": "string" + }, + { + "const": "alter.remove.soilPipe", + "description": "Remove a soil pipe", + "type": "string" + }, + { + "const": "alter.remove.surface", + "description": "Remove a hard surface", + "type": "string" + }, + { + "const": "alter.repair", + "description": "Repair windows or doors", + "type": "string" + }, + { + "const": "alter.repair.doors", + "description": "Repair doors", + "type": "string" + }, + { + "const": "alter.repair.windows", + "description": "Repair windows", + "type": "string" + }, + { + "const": "alter.replace", + "description": "Replace windows or doors", + "type": "string" + }, + { + "const": "alter.replace.doorsToDoors", + "description": "Replace door with door", + "type": "string" + }, + { + "const": "alter.replace.doorsToDoors.front", + "description": "Replace door with door on the front of a building", + "type": "string" + }, + { + "const": "alter.replace.doorsToDoors.rear", + "description": "Replace door with door on the rear of a building", + "type": "string" + }, + { + "const": "alter.replace.doorsToDoors.side", + "description": "Replace door with door on the side of a building", + "type": "string" + }, + { + "const": "alter.replace.doorsToWindows", + "description": "Replace door with window", + "type": "string" + }, + { + "const": "alter.replace.doorsToWindows.front", + "description": "Replace door with window on the front of a building", + "type": "string" + }, + { + "const": "alter.replace.doorsToWindows.rear", + "description": "Replace door with window on the rear of a building", + "type": "string" + }, + { + "const": "alter.replace.doorsToWindows.side", + "description": "Replace door with window on the side of a building", + "type": "string" + }, + { + "const": "alter.replace.windowsToDoors", + "description": "Replace window with door", + "type": "string" + }, + { + "const": "alter.replace.windowsToDoors.front", + "description": "Replace window with door on the front of a building", + "type": "string" + }, + { + "const": "alter.replace.windowsToDoors.rear", + "description": "Replace window with door on the rear of a building", + "type": "string" + }, + { + "const": "alter.replace.windowsToDoors.side", + "description": "Replace window with door on the side of a building", + "type": "string" + }, + { + "const": "alter.replace.windowsToWindows", + "description": "Replace window with window", + "type": "string" + }, + { + "const": "alter.replace.windowsToWindows.front", + "description": "Replace window with window on the front ofa building", + "type": "string" + }, + { + "const": "alter.replace.windowsToWindows.rear", + "description": "Replace window with window on the rear of a building", + "type": "string" + }, + { + "const": "alter.replace.windowsToWindows.side", + "description": "Replace window with window on the side of a building", + "type": "string" + }, + { + "const": "alter.roof", + "description": "Change the roof", + "type": "string" + }, + { + "const": "alter.roof.materials", + "description": "Replace or change the roof materials", + "type": "string" + }, + { + "const": "alter.roof.parapet", + "description": "Add or change a roof parapet", + "type": "string" + }, + { + "const": "alter.roof.roofTerrace", + "description": "Add a roof terrace", + "type": "string" + }, + { + "const": "alter.roof.shape", + "description": "Change the shape of a roof", + "type": "string" + }, + { + "const": "alter.rooflight", + "description": "Add skylights to an existing roof", + "type": "string" + }, + { + "const": "alter.secondaryGlazing", + "description": "Add secondary glazing to a window", + "type": "string" + }, + { + "const": "alter.shopfronts", + "description": "Add or alter shop fronts", + "type": "string" + }, + { + "const": "alter.shutters", + "description": "Add or alter shutters", + "type": "string" + }, + { + "const": "alter.sign", + "description": "Add an advert or sign", + "type": "string" + }, + { + "const": "alter.soilPipes", + "description": "Add or replace a soil pipe", + "type": "string" + }, + { + "const": "alter.staircase", + "description": "Add or change an external staircase", + "type": "string" + }, + { + "const": "alter.surfaceLow", + "description": "Add a low surface", + "type": "string" + }, + { + "const": "alter.surfaces", + "description": "Add a decked area or patio", + "type": "string" + }, + { + "const": "alter.surfaces.deck", + "description": "Add a decked area", + "type": "string" + }, + { + "const": "alter.surfaces.parking", + "description": "Add a driveway or parking area", + "type": "string" + }, + { + "const": "alter.surfaces.parking.extend", + "description": "Extend a driveway or parking area", + "type": "string" + }, + { + "const": "alter.surfaces.parking.new", + "description": "Add a new driveway or parking area", + "type": "string" + }, + { + "const": "alter.surfaces.parking.replace", + "description": "Replace a driveway or parking area", + "type": "string" + }, + { + "const": "alter.surfaces.patio", + "description": "Add a patio", + "type": "string" + }, + { + "const": "alter.surfaces.patio.extend", + "description": "Extend a patio", + "type": "string" + }, + { + "const": "alter.surfaces.patio.new", + "description": "Add a new patio", + "type": "string" + }, + { + "const": "alter.surfaces.patio.replace", + "description": "Replace a patio", + "type": "string" + }, + { + "const": "alter.swimmingPool", + "description": "Install a swimming pool", + "type": "string" + }, + { + "const": "alter.swimmingPool.indoor", + "description": "Install an indoor swimming pool", + "type": "string" + }, + { + "const": "alter.swimmingPool.outdoor", + "description": "Install an outdoor swimming pool", + "type": "string" + }, + { + "const": "alter.trees", + "description": "Changes to trees or hedges", + "type": "string" + }, + { + "const": "alter.trees.hedge", + "description": "Changes to hedges", + "type": "string" + }, + { + "const": "alter.trees.hedge.letGrow", + "description": "Let hedges grow", + "type": "string" + }, + { + "const": "alter.trees.hedge.new", + "description": "New hedges", + "type": "string" + }, + { + "const": "alter.trees.hedge.prune", + "description": "Prune hedges", + "type": "string" + }, + { + "const": "alter.trees.hedge.remove", + "description": "Remove hedges", + "type": "string" + }, + { + "const": "alter.trees.tree", + "description": "Changes to trees", + "type": "string" + }, + { + "const": "alter.trees.tree.new", + "description": "New trees", + "type": "string" + }, + { + "const": "alter.trees.tree.prune", + "description": "Prune trees", + "type": "string" + }, + { + "const": "alter.trees.tree.remove", + "description": "Remove trees", + "type": "string" + }, + { + "const": "changeOfUse", + "description": "Change the use of a building", + "type": "string" + }, + { + "const": "changeOfUse.annexe", + "description": "Convert part of the property into a granny flat (residential annexe)", + "type": "string" + }, + { + "const": "changeOfUse.caravans", + "description": "Use a caravan or mobile home on the property", + "type": "string" + }, + { + "const": "changeOfUse.extension", + "description": "Convert an extension", + "type": "string" + }, + { + "const": "changeOfUse.garage", + "description": "Convert a garage", + "type": "string" + }, + { + "const": "changeOfUse.land", + "description": "Change the use of land", + "type": "string" + }, + { + "const": "changeOfUse.let.part", + "description": "Let a part of the property", + "type": "string" + }, + { + "const": "changeOfUse.let.whole", + "description": "Let the property", + "type": "string" + }, + { + "const": "changeOfUse.outbuilding", + "description": "Convert or change the use of an outbuilding (such as a shed, garage or barn)", + "type": "string" + }, + { + "const": "changeOfUse.part", + "description": "Convert or change the use of part of a building", + "type": "string" + }, + { + "const": "changeOfUse.property", + "description": "Change the use of a property", + "type": "string" + }, + { + "const": "changeOfUse.whole", + "description": "Convert or change the use of a whole building", + "type": "string" + }, + { + "const": "changeOfUse.whole.homeToHMO", + "description": "Convert a home to bedsits or a shared home", + "type": "string" + }, + { + "const": "changeOfUse.workFromHome", + "description": "Work from home", + "type": "string" + }, + { + "const": "demolish", + "description": "Demolish a building", + "type": "string" + }, + { + "const": "demolish.boundary", + "description": "Demolish a fence, gate or boundary wall", + "type": "string" + }, + { + "const": "demolish.full", + "description": "Total demolition of a building", + "type": "string" + }, + { + "const": "demolish.internal", + "description": "Demolish internal walls", + "type": "string" + }, + { + "const": "demolish.listed", + "description": "Demolish a listed building", + "type": "string" + }, + { + "const": "demolish.listed.full", + "description": "Total demolition of a listed building", + "type": "string" + }, + { + "const": "demolish.listed.part", + "description": "Demolish part of a listed building", + "type": "string" + }, + { + "const": "demolish.outbuilding", + "description": "Demolish an outbuilding (such as a garage or barn)", + "type": "string" + }, + { + "const": "demolish.outbuilding.full", + "description": "Total demolition of an outbuilding (such as a garage or barn)", + "type": "string" + }, + { + "const": "demolish.outbuilding.part", + "description": "Demolish part of an outbuilding (such as a garage or barn)", + "type": "string" + }, + { + "const": "demolish.part", + "description": "Demolish part of a building (such as an extension)", + "type": "string" + }, + { + "const": "demolish.part.conservatory", + "description": "Demolish part of a conservatory", + "type": "string" + }, + { + "const": "demolish.replace", + "description": "Demolish a building and build homes in its place", + "type": "string" + }, + { + "const": "extend", + "description": "Extend a building or add an outbuilding", + "type": "string" + }, + { + "const": "extend.balcony", + "description": "Enlarge a balcony", + "type": "string" + }, + { + "const": "extend.basement", + "description": "Add a basement extension", + "type": "string" + }, + { + "const": "extend.basement.extend", + "description": "Enlarge a basement", + "type": "string" + }, + { + "const": "extend.basement.lightwell", + "description": "Add a lightwell", + "type": "string" + }, + { + "const": "extend.basement.new", + "description": "Add a new basement extension", + "type": "string" + }, + { + "const": "extend.front", + "description": "Add a front extension", + "type": "string" + }, + { + "const": "extend.outbuilding", + "description": "Add an outbuilding (such as a shed, garage or garden office)", + "type": "string" + }, + { + "const": "extend.outbuilding.animals", + "description": "Add an outbuilding - animal enclosure, aviary or beehive", + "type": "string" + }, + { + "const": "extend.outbuilding.annexe", + "description": "Add an outbuilding - residential (or \"granny\") annexe", + "type": "string" + }, + { + "const": "extend.outbuilding.bedroom", + "description": "Add an outbuilding - bedroom or guest room", + "type": "string" + }, + { + "const": "extend.outbuilding.games", + "description": "Add an outbuilding - games room", + "type": "string" + }, + { + "const": "extend.outbuilding.garage", + "description": "Add an outbuilding - garage", + "type": "string" + }, + { + "const": "extend.outbuilding.greenhouse", + "description": "Add an outbuilding - greenhouse", + "type": "string" + }, + { + "const": "extend.outbuilding.gym", + "description": "Add an outbuilding - gym", + "type": "string" + }, + { + "const": "extend.outbuilding.office", + "description": "Add an outbuilding - office", + "type": "string" + }, + { + "const": "extend.outbuilding.other", + "description": "Add an outbuilding - something else", + "type": "string" + }, + { + "const": "extend.outbuilding.play", + "description": "Add an outbuilding - play house", + "type": "string" + }, + { + "const": "extend.outbuilding.sauna", + "description": "Add an outbuilding - sauna", + "type": "string" + }, + { + "const": "extend.outbuilding.shed", + "description": "Add an outbuilding - shed", + "type": "string" + }, + { + "const": "extend.outbuilding.shelter", + "description": "Add an outbuilding - car parking or smoking shelter", + "type": "string" + }, + { + "const": "extend.outbuilding.store", + "description": "Add an outbuilding - storage", + "type": "string" + }, + { + "const": "extend.outbuilding.studio", + "description": "Add an outbuilding - studio", + "type": "string" + }, + { + "const": "extend.outbuilding.summerHouse", + "description": "Add an outbuilding - summer house", + "type": "string" + }, + { + "const": "extend.outbuilding.swimmingPool", + "description": "Add an outbuilding - swimming pool", + "type": "string" + }, + { + "const": "extend.outbuilding.tank", + "description": "Add an outbuilding - tank", + "type": "string" + }, + { + "const": "extend.outbuilding.workshop", + "description": "Add an outbuilding - workshop", + "type": "string" + }, + { + "const": "extend.porch", + "description": "Add a porch", + "type": "string" + }, + { + "const": "extend.porch.front", + "description": "Add a porch to the front of the building", + "type": "string" + }, + { + "const": "extend.porch.rear", + "description": "Add a porch to the rear of the building", + "type": "string" + }, + { + "const": "extend.porch.side", + "description": "Add a porch to the side of the building", + "type": "string" + }, + { + "const": "extend.rear", + "description": "Add a rear or side extension (or conservatory)", + "type": "string" + }, + { + "const": "extend.rear.rear", + "description": "Add a rear extension", + "type": "string" }, - "type": { - "const": "Point", - "description": "Specifies the type of GeoJSON object.", + { + "const": "extend.rear.side", + "description": "Add a side extension", "type": "string" - } - }, - "required": [ - "coordinates", - "type" - ], - "type": "object" - }, - "Polygon": { - "additionalProperties": false, - "description": "Polygon geometry object. https://tools.ietf.org/html/rfc7946#section-3.1.6", - "properties": { - "bbox": { - "$ref": "#/definitions/BBox", - "description": "Bounding box of the coordinate range of the object's Geometries, Features, or Feature Collections. The value of the bbox member is an array of length 2*n where n is the number of dimensions represented in the contained geometries, with all axes of the most southwesterly point followed by all axes of the more northeasterly point. The axes order of a bbox follows the axes order of geometries. https://tools.ietf.org/html/rfc7946#section-5" }, - "coordinates": { - "items": { - "items": { - "$ref": "#/definitions/Position" - }, - "type": "array" - }, - "type": "array" + { + "const": "extend.roof", + "description": "Add a roof extension", + "type": "string" }, - "type": { - "const": "Polygon", - "description": "Specifies the type of GeoJSON object.", + { + "const": "extend.roof.connect", + "description": "Join two roofs", "type": "string" - } - }, - "required": [ - "coordinates", - "type" - ], - "type": "object" - }, - "Position": { - "description": "A Position is an array of coordinates. https://tools.ietf.org/html/rfc7946#section-3.1.1 Array should contain between two and three elements. The previous GeoJSON specification allowed more elements (e.g., which could be used to represent M values), but the current specification only allows X, Y, and (optionally) Z to be defined.", - "items": { - "type": "number" - }, - "type": "array" - }, - "PreApplication": { - "additionalProperties": false, - "description": "Details of the pre-application preceeding this application, if applicable", - "properties": { - "date": { - "format": "date-time", + }, + { + "const": "extend.roof.dormer", + "description": "Add a roof dormer", "type": "string" }, - "officer": { + { + "const": "extend.roof.dormer.front", + "description": "Add a roof dormer to the front of the building", "type": "string" }, - "reference": { + { + "const": "extend.roof.dormer.frontAndRear", + "description": "Add a roof dormer to the front and rear of the building", "type": "string" }, - "summary": { + { + "const": "extend.roof.dormer.mansard", + "description": "Add a mansard roof", + "type": "string" + }, + { + "const": "extend.roof.dormer.rear", + "description": "Add a roof dormer to the rear of the building", + "type": "string" + }, + { + "const": "extend.roof.dormer.side", + "description": "Add a roof dormer to the side of the building", + "type": "string" + }, + { + "const": "extend.roof.hiptogable", + "description": "Convert a hip roof to a gable", + "type": "string" + }, + { + "const": "extend.roof.hipToGable", + "description": "Convert a hip roof to a gable", + "type": "string" + }, + { + "const": "extend.roof.mansard", + "description": "Convert to a mansard roof", + "type": "string" + }, + { + "const": "extend.roof.newstorey", + "description": "Add one or more new storeys", + "type": "string" + }, + { + "const": "extend.roof.newStorey", + "description": "Add one or more new storeys", + "type": "string" + }, + { + "const": "extend.roof.slope", + "description": "Convert to a sloping roof", + "type": "string" + }, + { + "const": "extend.side", + "description": "Add a side extension", + "type": "string" + }, + { + "const": "extend.upperStorey", + "description": "Add an upper storey extension", + "type": "string" + }, + { + "const": "internal", + "description": "Internal building works, such as change the internal layout", + "type": "string" + }, + { + "const": "internal.doorways", + "description": "Alter internal doors", + "type": "string" + }, + { + "const": "internal.finishes", + "description": "Alter internal finishes", + "type": "string" + }, + { + "const": "internal.floors", + "description": "Alter internal floors", + "type": "string" + }, + { + "const": "internal.loft", + "description": "Convert a loft", + "type": "string" + }, + { + "const": "internal.mezzanine", + "description": "Add a mezzanine floor", + "type": "string" + }, + { + "const": "internal.staircases", + "description": "Alter internal staircases", + "type": "string" + }, + { + "const": "internal.walls", + "description": "Alter internal walls", + "type": "string" + }, + { + "const": "internal.windows.openings", + "description": "Alter internal window openings", + "type": "string" + }, + { + "const": "maintain", + "description": "Maintenance of an existing structure", + "type": "string" + }, + { + "const": "new", + "description": "Add a new separate building or self-contained units", + "type": "string" + }, + { + "const": "new.agriculture", + "description": "New agricultural buildings", + "type": "string" + }, + { + "const": "new.agriculture.glasshouse", + "description": "New agricultural buildings - glasshouse", + "type": "string" + }, + { + "const": "new.agriculture.mining", + "description": "New agricultural buildings - mining", + "type": "string" + }, + { + "const": "new.agriculture.pigs", + "description": "New agricultural buildings - pigs", + "type": "string" + }, + { + "const": "new.agriculture.poultry", + "description": "New agricultural buildings - poultry", + "type": "string" + }, + { + "const": "new.clickCollect", + "description": "Install click and collect facilities", + "type": "string" + }, + { + "const": "new.dwelling", + "description": "New, self-contained dwelling", + "type": "string" + }, + { + "const": "new.dwelling.flat", + "description": "New flats", + "type": "string" + }, + { + "const": "new.dwelling.house", + "description": "New houses", + "type": "string" + }, + { + "const": "new.forestry", + "description": "Build new forestry buildings", + "type": "string" + }, + { + "const": "new.industrial", + "description": "New industrial premises", + "type": "string" + }, + { + "const": "new.industrial.waste", + "description": "New waste disposal facilities", + "type": "string" + }, + { + "const": "new.leisure", + "description": "New leisure premises", + "type": "string" + }, + { + "const": "new.office", + "description": "New offices", + "type": "string" + }, + { + "const": "new.other", + "description": "Add another type of building - something else", + "type": "string" + }, + { + "const": "new.residential.dwelling", + "description": "Build new homes", + "type": "string" + }, + { + "const": "new.retail", + "description": "New retail premises", + "type": "string" + }, + { + "const": "new.telecoms", + "description": "Install telecommunications equipment", + "type": "string" + }, + { + "const": "new.temporaryStructure", + "description": "Build a temporary structure", + "type": "string" + }, + { + "const": "new.warehouse", + "description": "New storage or distribution premises", + "type": "string" + }, + { + "const": "not", + "description": "Negate a project type", + "type": "string" + }, + { + "const": "not.alter.replace", + "description": "Do not add or change windows or doors", + "type": "string" + }, + { + "const": "not.alter.rooflight", + "description": "Do not add or change a rooflight", + "type": "string" + }, + { + "const": "not.dropKerb", + "description": "Do not add or change a dropped kerb", + "type": "string" + }, + { + "const": "repair", + "description": "Repairs", + "type": "string" + }, + { + "const": "repair.historicFabric", + "description": "Repair the historic fabric", + "type": "string" + }, + { + "const": "other", + "description": "Other project type", + "type": "string" + }, + { + "const": "unit", + "description": "Change of units", + "type": "string" + }, + { + "const": "unit.merge", + "description": "Convert two or more properties into one", + "type": "string" + }, + { + "const": "unit.subdivide", + "description": "Convert a home or part of a home into flats", "type": "string" } - }, - "required": [ - "reference", - "date", - "officer", - "summary" ], - "type": "object" - }, - "PreAssessment": { - "$id": "#PreAssessment", - "description": "The result of the application based on information provided by the applicant, prior to assessment by a planning officer. Results are determined by flags corresponding to responses; each application can have up to one result per flagset", - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "value": { - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - "type": "array" + "description": "Planning project types" }, "PropertyBase": { "anyOf": [ @@ -7918,18 +11057,30 @@ "type": "string" } ], - "description": "Property types derived from Basic Land and Property Unit (BLPU) classification codes" + "description": "Property types derived from Basic Land and Property Unit (BLPU) classification codes" + }, + "ProposalBase": { + "anyOf": [ + { + "$ref": "#/definitions/UKProposal" + }, + { + "$ref": "#/definitions/LondonProposal" + } + ], + "description": "Information about the proposed works and any changes to the property" }, - "ProposalBase": { + "ProposalDates": { "additionalProperties": false, + "description": "When the proposed works will start and be completed by, not required for all application types", "properties": { - "test": { - "type": "string" + "completion": { + "$ref": "#/definitions/Date" + }, + "start": { + "$ref": "#/definitions/Date" } }, - "required": [ - "test" - ], "type": "object" }, "ProposedAddress": { @@ -7970,6 +11121,47 @@ ], "type": "object" }, + "ProtectedSpaceDesignation": { + "$id": "#ProtectedSpaceDesignation", + "anyOf": [ + { + "const": "boroughGradeOne", + "description": "Site of Borough Grade 1 Importance", + "type": "string" + }, + { + "const": "boroughGradeTwo", + "description": "Site of Borough Grade 2 Importance", + "type": "string" + }, + { + "const": "local", + "description": "Site of Local Importance", + "type": "string" + }, + { + "const": "localReserve", + "description": "Local Nature Reserve", + "type": "string" + }, + { + "const": "metropolitan", + "description": "Site of Metropolitan Importance", + "type": "string" + }, + { + "const": "none", + "description": "Not designated", + "type": "string" + }, + { + "const": "SSSI", + "description": "Sites of Special Scientific Interest", + "type": "string" + } + ], + "description": "Designations of natural protected spaces" + }, "PrototypeFileType": { "$id": "#FileType", "anyOf": [ @@ -8566,6 +11758,46 @@ ], "type": "object" }, + "ResidentialUnits": { + "additionalProperties": false, + "properties": { + "residential": { + "items": { + "additionalProperties": false, + "properties": { + "bedrooms": { + "type": "number" + }, + "identicalUnits": { + "type": "number" + }, + "tenure": { + "$ref": "#/definitions/UKTenureType" + }, + "type": { + "$ref": "#/definitions/UKResidentialUnitType" + } + }, + "required": [ + "type", + "tenure", + "bedrooms", + "identicalUnits" + ], + "type": "object" + }, + "type": "array" + }, + "total": { + "type": "number" + } + }, + "required": [ + "total", + "residential" + ], + "type": "object" + }, "Response": { "additionalProperties": false, "properties": { @@ -8627,135 +11859,502 @@ } }, "required": [ - "role" + "role" + ], + "type": "object" + }, + { + "$ref": "#/definitions/SiteContactOther" + } + ] + }, + "SiteContactOther": { + "additionalProperties": false, + "properties": { + "email": { + "type": "string" + }, + "name": { + "type": "string" + }, + "phone": { + "type": "string" + }, + "role": { + "const": "other", + "type": "string" + } + }, + "required": [ + "role", + "name", + "email", + "phone" + ], + "type": "object" + }, + "UKProperty": { + "$id": "#UKProperty", + "additionalProperties": false, + "description": "Property details for sites anywhere in the UK", + "properties": { + "address": { + "anyOf": [ + { + "$ref": "#/definitions/ProposedAddress" + }, + { + "$ref": "#/definitions/OSAddress" + } + ] + }, + "boundary": { + "$ref": "#/definitions/GeoBoundary", + "description": "HM Land Registry Index polygon for this property, commonly referred to as the blue-line or title boundary, sourced from planning.data.gov.uk/dataset/title-boundary" + }, + "localAuthorityDistrict": { + "description": "Current and historic UK Local Authority Districts that contain this address sourced from planning.data.gov.uk/dataset/local-authority-district", + "items": { + "type": "string" + }, + "type": "array" + }, + "planning": { + "additionalProperties": false, + "description": "Planning constraints and policies that intersect with this site and may impact or restrict development", + "properties": { + "conditions": { + "items": { + "$ref": "#/definitions/PlanningConstraint" + }, + "type": "array" + }, + "designations": { + "items": { + "$ref": "#/definitions/PlanningDesignation" + }, + "type": "array" + }, + "guidance": { + "items": { + "$ref": "#/definitions/PlanningConstraint" + }, + "type": "array" + }, + "plans": { + "additionalProperties": false, + "properties": { + "local": { + "items": { + "$ref": "#/definitions/PlanningConstraint" + }, + "type": "array" + }, + "neighbourhood": { + "items": { + "$ref": "#/definitions/PlanningConstraint" + }, + "type": "array" + } + }, + "required": [ + "local", + "neighbourhood" + ], + "type": "object" + }, + "sources": { + "description": "A list of open data requests or websites that explain how these constraints were sourced", + "items": { + "$ref": "#/definitions/URL" + }, + "type": "array" + } + }, + "required": [ + "sources" + ], + "type": "object" + }, + "region": { + "$ref": "#/definitions/UKRegion" + }, + "type": { + "$ref": "#/definitions/PropertyType" + } + }, + "required": [ + "address", + "region", + "localAuthorityDistrict", + "type" + ], + "type": "object" + }, + "UKProposal": { + "additionalProperties": false, + "properties": { + "access": { + "additionalProperties": false, + "properties": { + "affected": { + "enum": [ + "vehicle", + "pedestrian", + "newRoad", + "rightsOfWay.newPublic", + "rightsOfWay.changes" + ], + "type": "string" + } + }, + "type": "object" + }, + "boundary": { + "$ref": "#/definitions/GeoBoundaryPrototype", + "description": "Location plan boundary proposed by the user, commonly referred to as the red line boundary" + }, + "date": { + "$ref": "#/definitions/ProposalDates" + }, + "description": { + "type": "string" + }, + "ecology": { + "additionalProperties": false, + "description": "Details of biodiversity and geological conservation, if applicable to application.type", + "properties": { + "conservationAffected": { + "enum": [ + "site", + "adjacent", + "none" + ], + "type": "string" + }, + "featuresAffected": { + "enum": [ + "site", + "adjacent", + "none" + ], + "type": "string" + }, + "speciesAffected": { + "enum": [ + "site", + "adjacent", + "none" + ], + "type": "string" + } + }, + "type": "object" + }, + "environmentalImpactDescription": { + "type": "string" + }, + "extend": { + "additionalProperties": false, + "properties": { + "area": { + "$ref": "#/definitions/Area" + } + }, + "required": [ + "area" + ], + "type": "object" + }, + "flood": { + "additionalProperties": false, + "description": "Assessment of flood risk, if applicable to application.type", + "properties": { + "surfaceWaterDisposal": { + "enum": [ + "drainageSystem", + "soakaway", + "sewer", + "watercourse", + "pondOrLake", + "other" + ], + "type": "string" + } + }, + "type": "object" + }, + "materials": { + "$ref": "#/definitions/Materials", + "description": "Proposed materials, if applicable to projectType" + }, + "new": { + "additionalProperties": false, + "properties": { + "area": { + "$ref": "#/definitions/Area" + }, + "count": { + "additionalProperties": false, + "properties": { + "bathrooms": { + "$ref": "#/definitions/Integer" + }, + "bedrooms": { + "$ref": "#/definitions/Integer" + }, + "dwellings": { + "$ref": "#/definitions/Integer" + } + }, + "type": "object" + } + }, + "required": [ + "area" ], "type": "object" }, - { - "$ref": "#/definitions/SiteContactOther" - } - ] - }, - "SiteContactOther": { - "additionalProperties": false, - "properties": { - "email": { - "type": "string" - }, - "name": { - "type": "string" - }, - "phone": { - "type": "string" - }, - "role": { - "const": "other", - "type": "string" - } - }, - "required": [ - "role", - "name", - "email", - "phone" - ], - "type": "object" - }, - "UKProperty": { - "$id": "#UKProperty", - "additionalProperties": false, - "description": "Property details for sites anywhere in the UK", - "properties": { - "address": { - "anyOf": [ - { - "$ref": "#/definitions/ProposedAddress" - }, - { - "$ref": "#/definitions/OSAddress" + "newDwellings": { + "additionalProperties": false, + "properties": { + "newBuild": { + "additionalProperties": false, + "properties": { + "count": { + "$ref": "#/definitions/Integer" + } + }, + "required": [ + "count" + ], + "type": "object" } - ] - }, - "boundary": { - "$ref": "#/definitions/GeoBoundary", - "description": "HM Land Registry Index polygon for this property, commonly referred to as the blue-line or title boundary, sourced from planning.data.gov.uk/dataset/title-boundary" + }, + "type": "object" }, - "localAuthorityDistrict": { - "description": "Current and historic UK Local Authority Districts that contain this address sourced from planning.data.gov.uk/dataset/local-authority-district", + "projectType": { "items": { - "type": "string" + "$ref": "#/definitions/ProjectType" }, "type": "array" }, - "planning": { + "structures": { "additionalProperties": false, - "description": "Planning constraints and policies that intersect with this site and may impact or restrict development", "properties": { - "conditions": { - "items": { - "$ref": "#/definitions/PlanningConstraint" + "permanent": { + "additionalProperties": false, + "properties": { + "count": { + "$ref": "#/definitions/Integer" + } }, - "type": "array" + "required": [ + "count" + ], + "type": "object" }, - "designations": { - "items": { - "$ref": "#/definitions/PlanningDesignation" + "temporary": { + "additionalProperties": false, + "properties": { + "count": { + "$ref": "#/definitions/Integer" + } }, - "type": "array" + "required": [ + "count" + ], + "type": "object" }, - "guidance": { + "total": { + "$ref": "#/definitions/Integer" + }, + "type": { + "enum": [ + "bridge", + "catchpit", + "culvert", + "pipe", + "gully", + "headwall", + "manhole", + "weir", + "other" + ], + "type": "string" + } + }, + "required": [ + "type", + "total" + ], + "type": "object" + }, + "units": { + "$ref": "#/definitions/ResidentialUnits" + }, + "use": { + "additionalProperties": false, + "description": "Proposed land use, including storage of hazardous materials, if applicable to application.type", + "properties": { + "contamination": { + "enum": [ + "known", + "suspected", + "vulnerable" + ], + "type": "string" + }, + "description": { + "type": "string" + }, + "storage": { "items": { - "$ref": "#/definitions/PlanningConstraint" + "type": "string" }, "type": "array" + } + }, + "type": "object" + }, + "utilities": { + "additionalProperties": false, + "description": "Proposed utilities, if applicable to application.type", + "properties": { + "fire": { + "additionalProperties": false, + "description": "Whether the proposal introduces a fire suppression system", + "properties": { + "suppression": { + "type": "boolean" + } + }, + "required": [ + "suppression" + ], + "type": "object" }, - "plans": { + "foulSewageDisposal": { + "description": "Type of proposed foul sewage disposal", + "enum": [ + "sewer", + "tank", + "plant", + "pit", + "other" + ], + "type": "string" + }, + "gas": { "additionalProperties": false, + "description": "Count of new gas connections", "properties": { - "local": { - "items": { - "$ref": "#/definitions/PlanningConstraint" + "connections": { + "additionalProperties": false, + "properties": { + "count": { + "$ref": "#/definitions/Integer" + } }, - "type": "array" + "required": [ + "count" + ], + "type": "object" + } + }, + "required": [ + "connections" + ], + "type": "object" + }, + "internet": { + "additionalProperties": false, + "description": "Count of new full fibre Internet connections", + "properties": { + "commercialUnits": { + "additionalProperties": false, + "properties": { + "count": { + "$ref": "#/definitions/Integer" + } + }, + "required": [ + "count" + ], + "type": "object" }, - "neighbourhood": { - "items": { - "$ref": "#/definitions/PlanningConstraint" + "residentialUnits": { + "additionalProperties": false, + "properties": { + "count": { + "$ref": "#/definitions/Integer" + } }, - "type": "array" + "required": [ + "count" + ], + "type": "object" } }, "required": [ - "local", - "neighbourhood" + "commercialUnits", + "residentialUnits" ], "type": "object" }, - "sources": { - "description": "A list of open data requests or websites that explain how these constraints were sourced", - "items": { - "$ref": "#/definitions/URL" + "water": { + "additionalProperties": false, + "description": "Count of new water connections", + "properties": { + "connections": { + "additionalProperties": false, + "properties": { + "count": { + "$ref": "#/definitions/Integer" + } + }, + "required": [ + "count" + ], + "type": "object" + } }, - "type": "array" + "required": [ + "connections" + ], + "type": "object" + } + }, + "type": "object" + }, + "watercourse": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + }, + "type": { + "enum": [ + "ditch", + "millStream", + "pond", + "river", + "streamOrBrook", + "other" + ], + "type": "string" } }, "required": [ - "sources" + "name", + "type" ], "type": "object" - }, - "region": { - "$ref": "#/definitions/UKRegion" - }, - "type": { - "$ref": "#/definitions/PropertyType" } }, "required": [ - "address", - "region", - "localAuthorityDistrict", - "type" + "projectType", + "description" ], "type": "object" }, @@ -8775,6 +12374,78 @@ ], "type": "string" }, + "UKResidentialUnitType": { + "$id": "#UKResidentialUnitType", + "anyOf": [ + { + "const": "cluster", + "description": "Cluster flat", + "type": "string" + }, + { + "const": "flat", + "description": "Flat", + "type": "string" + }, + { + "const": "house", + "description": "House", + "type": "string" + }, + { + "const": "other", + "description": "Other", + "type": "string" + }, + { + "const": "sheltered", + "description": "Sheltered housing", + "type": "string" + }, + { + "const": "studio", + "description": "Studio or bedsit", + "type": "string" + } + ], + "description": "Residential unit types tracked throughout the UK" + }, + "UKTenureType": { + "$id": "#UKTenureType", + "anyOf": [ + { + "const": "AHO", + "description": "Affordable home ownership", + "type": "string" + }, + { + "const": "MH", + "description": "Market housing", + "type": "string" + }, + { + "const": "other", + "description": "Other", + "type": "string" + }, + { + "const": "SAIR", + "description": "Social, affordable or interim rent", + "type": "string" + }, + { + "const": "selfCustomBuild", + "description": "Self-build and custom build", + "type": "string" + }, + { + "const": "SH", + "description": "Starter homes", + "type": "string" + } + ], + "description": "Tenure types tracked throughout the UK" + }, "URL": { "format": "uri", "pattern": "^https?://", diff --git a/types/schemas/prototypeApplication/data/Property.ts b/types/schemas/prototypeApplication/data/Property.ts index c8460782..60989b0a 100644 --- a/types/schemas/prototypeApplication/data/Property.ts +++ b/types/schemas/prototypeApplication/data/Property.ts @@ -78,8 +78,21 @@ export interface LondonProperty extends UKProperty { | 'No'; number?: string; }; + parking?: { + cars?: ExistingCount; + vans?: ExistingCount; + motorcycles?: ExistingCount; + cycles?: ExistingCount; + buses?: ExistingCount; + disabled?: ExistingCount; + carClub?: ExistingCount; + offStreet?: {residential: ExistingCount}; + other?: ExistingCount; + }; } +type ExistingCount = {count: number}; + /** * @description Address information available for any site, whether existing or proposed */ diff --git a/types/schemas/prototypeApplication/data/Proposal.ts b/types/schemas/prototypeApplication/data/Proposal.ts index 8a322412..3de0533b 100644 --- a/types/schemas/prototypeApplication/data/Proposal.ts +++ b/types/schemas/prototypeApplication/data/Proposal.ts @@ -1,3 +1,303 @@ -export interface ProposalBase { - test: string; +import {BuildingRegulation} from '../enums/BuildingRegulation'; +import {DevelopmentType} from '../enums/DevelopmentType'; +import {GLAHousingProvider} from '../enums/HousingProvider'; +import {OpenSpaceDesignation, OpenSpaceType} from '../enums/OpenSpace'; +import {ProjectType} from '../enums/ProjectType'; +import {ProtectedSpaceDesignation} from '../enums/ProtectedSpaceDesignation'; +import {GLAResidentialUnitType} from '../enums/ResidentialUnitType'; +import {GLATenureType} from '../enums/TenureType'; +import {Area, Date, Integer} from '../../../shared/utils'; +import {GeoBoundaryPrototype, Materials, ResidentialUnits} from './shared'; + +/** + * @description Information about the proposed works and any changes to the property + */ +export type ProposalBase = UKProposal | LondonProposal; + +export interface UKProposal { + projectType: ProjectType[]; + description: string; + date?: ProposalDates; + /** + * @description Location plan boundary proposed by the user, commonly referred to as the red line boundary + */ + boundary?: GeoBoundaryPrototype; + /** + * @description Proposed materials, if applicable to projectType + */ + materials?: Materials; + /** + * @desription Proposed pedestrian & vehicle access, roads and rights of way, if applicable to application.type + */ + access?: { + affected?: + | 'vehicle' + | 'pedestrian' + | 'newRoad' + | 'rightsOfWay.newPublic' + | 'rightsOfWay.changes'; + }; + /** + * @description Proposed utilities, if applicable to application.type + */ + utilities?: { + /** @description Type of proposed foul sewage disposal */ + foulSewageDisposal?: 'sewer' | 'tank' | 'plant' | 'pit' | 'other'; + /** @description Count of new full fibre Internet connections */ + internet?: { + commercialUnits: {count: Integer}; + residentialUnits: {count: Integer}; + }; + /** @description Whether the proposal introduces a fire suppression system */ + fire?: { + suppression: boolean; + }; + /** @description Count of new gas connections */ + gas?: { + connections: {count: Integer}; + }; + /** @description Count of new water connections */ + water?: { + connections: {count: Integer}; + }; + }; + /** + * @description Assessment of flood risk, if applicable to application.type + */ + flood?: { + surfaceWaterDisposal?: + | 'drainageSystem' + | 'soakaway' + | 'sewer' + | 'watercourse' + | 'pondOrLake' + | 'other'; + }; + /** + * @description Details of biodiversity and geological conservation, if applicable to application.type + */ + ecology?: { + speciesAffected?: 'site' | 'adjacent' | 'none'; + featuresAffected?: 'site' | 'adjacent' | 'none'; + conservationAffected?: 'site' | 'adjacent' | 'none'; + }; + /** + * @description Proposed land use, including storage of hazardous materials, if applicable to application.type + */ + use?: { + description?: string; + contamination?: 'known' | 'suspected' | 'vulnerable'; + storage?: string[]; + }; + extend?: { + area: Area; + }; + new?: { + area: Area; + count?: { + bathrooms?: Integer; + bedrooms?: Integer; + dwellings?: Integer; + }; + }; + newDwellings?: { + newBuild?: {count: Integer}; + }; + units?: ResidentialUnits; + watercourse?: { + name: string; + type: 'ditch' | 'millStream' | 'pond' | 'river' | 'streamOrBrook' | 'other'; + }; + structures?: { + type: + | 'bridge' + | 'catchpit' + | 'culvert' + | 'pipe' + | 'gully' + | 'headwall' + | 'manhole' + | 'weir' + | 'other'; + total: Integer; + permanent?: { + count: Integer; + }; + temporary?: { + count: Integer; + }; + }; + environmentalImpactDescription?: string; +} + +/** + * @description Proposal details for project sites within the Greater London Authority (GLA) area + */ +export interface LondonProposal extends Omit { + schemeName?: string; + /** + * @description Proposed parking spaces + */ + parking?: { + cars?: ProposedCount; + vans?: ProposedCount; + motorcycles?: ProposedCount; + cycles?: ProposedCount; + buses?: ProposedCount; + disabled?: ProposedCount; + carClub?: ProposedCount; + offStreet?: {residential: ProposedCount}; + other?: ProposedCount; + }; + /** + * @description Creating new buildings + */ + newBuildings?: NewBuildingsOrStoreys; + /** + * @description Increasing the height of existing buildings + */ + newStoreys?: NewBuildingsOrStoreys; + /** + * @description Project cost + */ + cost?: { + projected: '2m' | '2mTo100m' | '100m'; + }; + /** + * @description Electric vehicle charing points + */ + charging?: { + active?: {count: Integer}; + passive?: {count: Integer}; + }; + /** + * @description Changes that result in the loss, gain, or change of use of natural spaces + */ + nature?: { + openSpaces?: { + impact: 'loss' | 'gain' | 'change'; + description: string; + type: OpenSpaceType; + designation: OpenSpaceDesignation; + access: 'restricted' | 'unrestricted'; + area: {hectares: number}; + /** + * @description Whether the open space change involves a land swap + */ + swap: boolean; + }[]; + protectedSpaces?: { + impact: 'loss' | 'gain' | 'change'; + description: string; + designation: ProtectedSpaceDesignation; + access: 'restricted' | 'unrestricted'; + area: {hectares: number}; + }[]; + }; + /** + * @description Water management + */ + water?: { + /** + * @description Internal residential water usage + */ + usage: {litresPerPersonPerDay: number}; + /** + * @description Whether the proposal includes rain water harvesting + */ + rain: boolean; + /** + * @description Whether the proposal includes grey water re-use + */ + grey: boolean; + }; + /** + * @description Proposed energy sources + */ + energy?: { + type: Array<'communityOwned' | 'heatPump' | 'solar'>; + communityOwned?: { + /** @description Proposed total capacity of any on-site community-owned energy generation in megawatts (mW) */ + capacity: {megawatts: number}; + }; + heatPumps?: { + /** @description Proposed total capacity of any heat pumps in megawatts (mV) */ + capacity: {megawatts: number}; + }; + solar?: { + /** @description Proposed total capacity of any solar energy generation in megawatts (mV) */ + capacity: {megawatts: number}; + }; + }; + /** + * @description Urban Greening Factor Score + */ + urbanGreeningFactor?: { + score: number; + }; + /** + * @description Green roof + */ + greenRoof?: { + area: Area; + }; + /** + * @description Waste management of demolition and construction materials + */ + waste?: { + reuseRecycle: {percent: number}; + }; + units?: { + residential: { + new?: GLAGainedUnit[]; + rebuilt?: GLAGainedUnit[]; + removed?: GLALostUnit[]; + retained?: GLARetainedUnit[]; + }; + }; +} + +type ProposedCount = { + count: number; + difference: number; +}; + +/** + * @description Details about creating new buildings or increasing the height of existing buildings + */ +export interface NewBuildingsOrStoreys { + count: Integer; + buildings?: { + height: {metres: number}; + storeys: Integer; + }[]; +} + +/** + * @description When the proposed works will start and be completed by, not required for all application types + */ +export interface ProposalDates { + start?: Date; + completion?: Date; +} + +interface GLARetainedUnit { + bedrooms: Integer; + tenure: GLATenureType; + type: GLAResidentialUnitType; + identicalUnits: Integer; +} + +interface GLALostUnit extends GLARetainedUnit { + habitableRooms: Integer; + compliance: BuildingRegulation[]; + provider: GLAHousingProvider; + area: Area; + sheltered: boolean; + olderPersons: boolean; +} + +interface GLAGainedUnit extends GLALostUnit { + development: DevelopmentType; + garden: boolean; } diff --git a/types/schemas/prototypeApplication/data/shared.ts b/types/schemas/prototypeApplication/data/shared.ts index 666a4d0c..0547fb1c 100644 --- a/types/schemas/prototypeApplication/data/shared.ts +++ b/types/schemas/prototypeApplication/data/shared.ts @@ -14,7 +14,8 @@ export type Materials = { other?: string; }; -export type GeoBoundary = { +// TODO - Rename when prototype application replaces application +export type GeoBoundaryPrototype = { site: GeoJSON; area: Area; }; diff --git a/types/shared/utils.ts b/types/shared/utils.ts index 946b0443..64a8f223 100644 --- a/types/shared/utils.ts +++ b/types/shared/utils.ts @@ -35,3 +35,8 @@ export type Area = { squareMetres: number; hectares?: number; }; + +/** + * @format integer + */ +export type Integer = number; From 834f4a4be00c844dcab9a0ef6beb930be0e84b37 Mon Sep 17 00:00:00 2001 From: Jessica McInchak Date: Tue, 17 Sep 2024 23:20:20 +0200 Subject: [PATCH 07/13] fix pp examples --- .../planningPermission/fullHouseholder.ts | 2086 +++++++-------- .../fullHouseholderInConservationArea.ts | 2 +- .../data/planningPermission/major.ts | 54 +- .../data/planningPermission/minor.ts | 2 +- .../planningPermission/major.json | 2335 +++++++++++++++++ .../planningPermission/minor.json | 1608 ++++++++++++ schemas/prototypeApplication.json | 6 +- .../data/ApplicationData.ts | 1 + 8 files changed, 5015 insertions(+), 1079 deletions(-) diff --git a/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts b/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts index baf23801..bba434a3 100644 --- a/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts +++ b/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts @@ -1,1117 +1,1146 @@ -import { PrototypeApplication } from '../../../../types/schemas/prototypeApplication'; +import {PrototypeApplication} from '../../../../types/schemas/prototypeApplication'; const version = process.env['VERSION'] || '@next'; -export const planningPermissionFullHouseholderPrototype: PrototypeApplication = { - applicationType: 'pp.full.householder', - data: { - application: { - fee: { - calculated: 258, - payable: 258, - category: { - sixAndSeven: 258, - }, - exemption: { - disability: false, - resubmission: false, - }, - reduction: { - sports: false, - parishCouncil: false, - alternative: false, - }, - reference: { - govPay: 'sandbox-ref-456', - }, - }, - declaration: { - accurate: true, - connection: { - value: 'none', +export const planningPermissionFullHouseholderPrototype: PrototypeApplication = + { + applicationType: 'pp.full.householder', + data: { + application: { + fee: { + calculated: 258, + payable: 258, + category: { + sixAndSeven: 258, + }, + exemption: { + disability: false, + resubmission: false, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + reference: { + govPay: 'sandbox-ref-456', + }, }, - }, - }, - user: { - role: 'proxy', - }, - applicant: { - type: 'individual', - name: { - first: 'David', - last: 'Bowie', - }, - email: 'ziggy@example.com', - phone: { - primary: 'Not provided by agent', - }, - address: { - sameAsSiteAddress: true, - }, - siteContact: { - role: 'proxy', - }, - ownership: { - interest: 'owner.sole', - certificate: 'a', - agriculturalTenants: false, declaration: { accurate: true, + connection: { + value: 'none', + }, }, }, - agent: { + user: { + role: 'proxy', + }, + applicant: { + type: 'individual', name: { - first: 'Ziggy', - last: 'Stardust', + first: 'David', + last: 'Bowie', }, email: 'ziggy@example.com', phone: { - primary: '01100 0110 0011', + primary: 'Not provided by agent', }, address: { - line1: '40 Stansfield Road', - line2: 'Brixton', - town: 'London', - county: 'Greater London', - postcode: 'SW9 9RZ', - country: 'UK', + sameAsSiteAddress: true, }, - }, - }, - property: { - address: { - latitude: 51.4656522, - longitude: -0.1185926, - x: 530787, - y: 175754, - title: '40, STANSFIELD ROAD, LONDON', - singleLine: '40, STANSFIELD ROAD, LONDON, SW9 9RZ', - source: 'Ordnance Survey', - uprn: '100021892955', - usrn: '21901294', - pao: '40', - street: 'STANSFIELD ROAD', - town: 'LONDON', - postcode: 'SW9 9RZ', - }, - boundary: { - site: { - type: 'Feature', - geometry: { - type: 'Polygon', - coordinates: [ - [ - [-0.1186569035053321, 51.465703531871384], - [-0.1185938715934822, 51.465724418998775], - [-0.1184195280075143, 51.46552473766957], - [-0.11848390102387167, 51.4655038504508], - [-0.1186569035053321, 51.465703531871384], - ], - ], + siteContact: { + role: 'proxy', + }, + ownership: { + interest: 'owner.sole', + certificate: 'a', + agriculturalTenants: false, + declaration: { + accurate: true, }, - properties: null, }, - area: { - hectares: 0.012592, - squareMetres: 125.92, + agent: { + name: { + first: 'Ziggy', + last: 'Stardust', + }, + email: 'ziggy@example.com', + phone: { + primary: '01100 0110 0011', + }, + address: { + line1: '40 Stansfield Road', + line2: 'Brixton', + town: 'London', + county: 'Greater London', + postcode: 'SW9 9RZ', + country: 'UK', + }, }, }, - planning: { - sources: [ - 'https://api.editor.planx.dev/gis/lambeth?geom=POLYGON+%28%28-0.1186569035053321+51.465703531871384%2C+-0.1185938715934822+51.465724418998775%2C+-0.1184195280075143+51.46552473766957%2C+-0.11848390102387167+51.4655038504508%2C+-0.1186569035053321+51.465703531871384%29%29&analytics=false&sessionId=81bcaa0f-baf5-4573-ba0a-ea868c573faf', - 'https://api.editor.planx.dev/roads?usrn=21901294', - ], - designations: [ - { - value: 'article4', - intersects: false, - }, - { - value: 'article4.caz', - intersects: false, - }, - { - value: 'tpo', - intersects: false, - }, - { - value: 'listed', - intersects: false, - }, - { - value: 'monument', - intersects: false, - }, - { - value: 'designated', - intersects: false, - }, - { - value: 'nature.SAC', - intersects: false, - }, - { - value: 'nature.ASNW', - intersects: false, + property: { + address: { + latitude: 51.4656522, + longitude: -0.1185926, + x: 530787, + y: 175754, + title: '40, STANSFIELD ROAD, LONDON', + singleLine: '40, STANSFIELD ROAD, LONDON, SW9 9RZ', + source: 'Ordnance Survey', + uprn: '100021892955', + usrn: '21901294', + pao: '40', + street: 'STANSFIELD ROAD', + town: 'LONDON', + postcode: 'SW9 9RZ', + }, + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'Polygon', + coordinates: [ + [ + [-0.1186569035053321, 51.465703531871384], + [-0.1185938715934822, 51.465724418998775], + [-0.1184195280075143, 51.46552473766957], + [-0.11848390102387167, 51.4655038504508], + [-0.1186569035053321, 51.465703531871384], + ], + ], + }, + properties: null, }, - { - value: 'nature.SSSI', - intersects: false, + area: { + hectares: 0.012592, + squareMetres: 125.92, }, - { - value: 'locallyListed', - intersects: false, + }, + planning: { + sources: [ + 'https://api.editor.planx.dev/gis/lambeth?geom=POLYGON+%28%28-0.1186569035053321+51.465703531871384%2C+-0.1185938715934822+51.465724418998775%2C+-0.1184195280075143+51.46552473766957%2C+-0.11848390102387167+51.4655038504508%2C+-0.1186569035053321+51.465703531871384%29%29&analytics=false&sessionId=81bcaa0f-baf5-4573-ba0a-ea868c573faf', + 'https://api.editor.planx.dev/roads?usrn=21901294', + ], + designations: [ + { + value: 'article4', + intersects: false, + }, + { + value: 'article4.caz', + intersects: false, + }, + { + value: 'tpo', + intersects: false, + }, + { + value: 'listed', + intersects: false, + }, + { + value: 'monument', + intersects: false, + }, + { + value: 'designated', + intersects: false, + }, + { + value: 'nature.SAC', + intersects: false, + }, + { + value: 'nature.ASNW', + intersects: false, + }, + { + value: 'nature.SSSI', + intersects: false, + }, + { + value: 'locallyListed', + intersects: false, + }, + { + value: 'nature.SPA', + intersects: false, + }, + { + value: 'designated.WHS', + intersects: false, + }, + { + value: 'registeredPark', + intersects: false, + }, + { + value: 'designated.AONB', + intersects: false, + }, + { + value: 'designated.nationalPark', + intersects: false, + }, + { + value: 'designated.conservationArea', + intersects: false, + }, + { + value: 'designated.nationalPark.broads', + intersects: false, + }, + { + value: 'road.classified', + intersects: false, + }, + ], + }, + localAuthorityDistrict: ['Lambeth'], + region: 'London', + type: 'residential.dwelling.house.terrace', + titleNumber: { + known: 'No', + }, + EPC: { + known: 'No', + }, + parking: { + cars: { + count: 1, }, - { - value: 'nature.SPA', - intersects: false, + cycles: { + count: 2, }, - { - value: 'designated.WHS', - intersects: false, + }, + }, + proposal: { + projectType: ['extend.roof.dormer'], + description: + 'Roof extension to the rear of the property, incorporating starship launchpad.', + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'Polygon', + coordinates: [ + [ + [-0.1186569035053321, 51.465703531871384], + [-0.1185938715934822, 51.465724418998775], + [-0.1184195280075143, 51.46552473766957], + [-0.11848390102387167, 51.4655038504508], + [-0.1186569035053321, 51.465703531871384], + ], + ], + }, + properties: null, }, - { - value: 'registeredPark', - intersects: false, + area: { + hectares: 0.012592, + squareMetres: 125.92, }, - { - value: 'designated.AONB', - intersects: false, + }, + date: { + start: '2024-05-01', + completion: '2024-05-02', + }, + extend: { + area: { + squareMetres: 45, }, - { - value: 'designated.nationalPark', - intersects: false, + }, + parking: { + cars: { + count: 1, + difference: 0, }, - { - value: 'designated.conservationArea', - intersects: false, + cycles: { + count: 2, + difference: 0, }, + }, + }, + }, + responses: [ + { + question: 'Is the property in Lambeth?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true, sectionName: 'The property'}, + }, + { + question: 'What type of property is it?', + responses: [{value: 'House'}], + metadata: {autoAnswered: true, sectionName: 'The property'}, + }, + { + question: 'What type of house it is?', + responses: [{value: 'Terrace'}], + metadata: {autoAnswered: true, sectionName: 'The property'}, + }, + { + question: 'Is the property in a flood zone?', + responses: [{value: 'No'}], + metadata: {sectionName: 'The property'}, + }, + { + question: 'What type of property is it?', + responses: [ { - value: 'designated.nationalPark.broads', - intersects: false, + value: 'House', + metadata: {flags: ['Listed building consent / Not required']}, }, + ], + metadata: {autoAnswered: true, sectionName: 'About the project'}, + }, + { + question: 'List the changes involved in the project', + responses: [ { - value: 'road.classified', - intersects: false, + value: 'Add a roof extension', + metadata: {flags: ['Listed building consent / Not required']}, }, ], + metadata: {sectionName: 'About the project'}, + }, + { + question: 'Have works already started?', + responses: [{value: 'No'}], + metadata: {sectionName: 'About the project'}, }, - localAuthorityDistrict: ['Lambeth'], - region: 'London', - type: 'residential.dwelling.house.terrace', - titleNumber: { - known: 'No', + { + question: 'Is the property in a flood zone?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About the project'}, }, - EPC: { - known: 'No', + { + question: 'What type of changes does the project involve?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true, sectionName: 'About the project'}, }, - parking: { - cars: { - count: 1, + { + question: 'Is the project to add an outbuilding?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About the project'}, + }, + { + question: 'How much new floor area is being added to the house?', + responses: [{value: 'Less than 100m²'}], + metadata: {sectionName: 'About the project'}, + }, + { + question: + 'How much exactly is the internal floor area of the property increasing by?', + responses: [{value: '45'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', }, - cycles: { - count: 2, + }, + { + question: + 'Does the project involve creating any new bedrooms or bathrooms?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', }, }, - }, - proposal: { - projectType: ['extend.roof.dormer'], - description: - 'Roof extension to the rear of the property, incorporating starship launchpad.', - boundary: { - site: { - type: 'Feature', - geometry: { - type: 'Polygon', - coordinates: [ - [ - [-0.1186569035053321, 51.465703531871384], - [-0.1185938715934822, 51.465724418998775], - [-0.1184195280075143, 51.46552473766957], - [-0.11848390102387167, 51.4655038504508], - [-0.1186569035053321, 51.465703531871384], - ], - ], - }, - properties: null, + { + question: 'Describe the wall materials of the existing house', + responses: [{value: 'London stock brick'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', }, - area: { - hectares: 0.012592, - squareMetres: 125.92, + }, + { + question: 'Describe the wall materials of the new extension', + responses: [ + {value: 'Metallic cladding, reflective. Multiple colours.'}, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', }, }, - date: { - start: '2024-05-01', - completion: '2024-05-02', + { + question: 'Describe the material of the roof of the existing house', + responses: [{value: 'Grey slate'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', + }, }, - extend: { - area: { - squareMetres: 45, + { + question: 'Describe the material for the new roof of the extension', + responses: [{value: 'Zinc panels'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', }, }, - parking: { - cars: { - count: 1, - difference: 0, + { + question: 'Describe the window materials of the existing house', + responses: [{value: 'Wooden sash windows, painted white'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', }, - cycles: { - count: 2, - difference: 0, + }, + { + question: 'Describe the window materials of the extension', + responses: [{value: 'Brushed steel.'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', }, }, - }, - }, - responses: [ - { - question: 'Is the property in Lambeth?', - responses: [{value: 'Yes'}], - metadata: {autoAnswered: true, sectionName: 'The property'}, - }, - { - question: 'What type of property is it?', - responses: [{value: 'House'}], - metadata: {autoAnswered: true, sectionName: 'The property'}, - }, - { - question: 'What type of house it is?', - responses: [{value: 'Terrace'}], - metadata: {autoAnswered: true, sectionName: 'The property'}, - }, - { - question: 'Is the property in a flood zone?', - responses: [{value: 'No'}], - metadata: {sectionName: 'The property'}, - }, - { - question: 'What type of property is it?', - responses: [ - { - value: 'House', - metadata: {flags: ['Listed building consent / Not required']}, + { + question: 'Describe the door materials of the existing house', + responses: [{value: 'Wood, painted.'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', }, - ], - metadata: {autoAnswered: true, sectionName: 'About the project'}, - }, - { - question: 'List the changes involved in the project', - responses: [ - { - value: 'Add a roof extension', - metadata: {flags: ['Listed building consent / Not required']}, + }, + { + question: 'Describe the door materials of the extension', + responses: [{value: 'No door present'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', }, - ], - metadata: {sectionName: 'About the project'}, - }, - { - question: 'Have works already started?', - responses: [{value: 'No'}], - metadata: {sectionName: 'About the project'}, - }, - { - question: 'Is the property in a flood zone?', - responses: [{value: 'No'}], - metadata: {autoAnswered: true, sectionName: 'About the project'}, - }, - { - question: 'What type of changes does the project involve?', - responses: [{value: 'Extension'}], - metadata: {autoAnswered: true, sectionName: 'About the project'}, - }, - { - question: 'Is the project to add an outbuilding?', - responses: [{value: 'No'}], - metadata: {autoAnswered: true, sectionName: 'About the project'}, - }, - { - question: 'How much new floor area is being added to the house?', - responses: [{value: 'Less than 100m²'}], - metadata: {sectionName: 'About the project'}, - }, - { - question: - 'How much exactly is the internal floor area of the property increasing by?', - responses: [{value: '45'}], - metadata: { - policyRefs: [ - { - text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', - url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', - }, - ], - sectionName: 'About the project', }, - }, - { - question: - 'Does the project involve creating any new bedrooms or bathrooms?', - responses: [{value: 'No'}], - metadata: { - policyRefs: [ - { - text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', - url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', - }, - ], - sectionName: 'About the project', + { + question: + 'Are there any trees that could fall within the property or the areas affected by the project (the previously drawn outline)?', + responses: [{value: 'No'}], + metadata: {sectionName: 'About the project'}, }, - }, - { - question: 'Describe the wall materials of the existing house', - responses: [{value: 'London stock brick'}], - metadata: { - policyRefs: [ - { - text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', - url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', - }, - ], - sectionName: 'About the project', + { + question: 'Does the project involve any of these?', + responses: [{value: 'No, none of these'}], + metadata: {sectionName: 'About the project'}, }, - }, - { - question: 'Describe the wall materials of the new extension', - responses: [{value: 'Metallic cladding, reflective. Multiple colours.'}], - metadata: { - policyRefs: [ - { - text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', - url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', - }, - ], - sectionName: 'About the project', + { + question: 'Is the property in Greater London?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true, sectionName: 'About the project'}, }, - }, - { - question: 'Describe the material of the roof of the existing house', - responses: [{value: 'Grey slate'}], - metadata: { - policyRefs: [ - { - text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', - url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', - }, - ], - sectionName: 'About the project', + { + question: 'Does the site include more than one property?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, }, - }, - { - question: 'Describe the material for the new roof of the extension', - responses: [{value: 'Zinc panels'}], - metadata: { - policyRefs: [ - { - text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', - url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', - }, - ], - sectionName: 'About the project', + { + question: 'Do you know the title number of the property?', + responses: [{value: 'No'}], + metadata: {sectionName: 'About the project'}, }, - }, - { - question: 'Describe the window materials of the existing house', - responses: [{value: 'Wooden sash windows, painted white'}], - metadata: { - policyRefs: [ - { - text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', - url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', - }, - ], - sectionName: 'About the project', + { + question: + 'Does the property have an Energy Performance Certificate (EPC)?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, }, - }, - { - question: 'Describe the window materials of the extension', - responses: [{value: 'Brushed steel.'}], - metadata: { - policyRefs: [ - { - text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', - url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', - }, - ], - sectionName: 'About the project', + { + question: 'What type of application is this?', + responses: [{value: 'Planning permission for a home'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, }, - }, - { - question: 'Describe the door materials of the existing house', - responses: [{value: 'Wood, painted.'}], - metadata: { - policyRefs: [ - { - text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', - url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', - }, - ], - sectionName: 'About the project', + { + question: 'When will the works start?', + responses: [{value: '2024-05-01'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, }, - }, - { - question: 'Describe the door materials of the extension', - responses: [{value: 'No door present'}], - metadata: { - policyRefs: [ - { - text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)', - url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', - }, - ], - sectionName: 'About the project', + { + question: 'When will the works be completed?', + responses: [{value: '2024-05-02'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, }, - }, - { - question: - 'Are there any trees that could fall within the property or the areas affected by the project (the previously drawn outline)?', - responses: [{value: 'No'}], - metadata: {sectionName: 'About the project'}, - }, - { - question: 'Does the project involve any of these?', - responses: [{value: 'No, none of these'}], - metadata: {sectionName: 'About the project'}, - }, - { - question: 'Is the property in Greater London?', - responses: [{value: 'Yes'}], - metadata: {autoAnswered: true, sectionName: 'About the project'}, - }, - { - question: 'Does the site include more than one property?', - responses: [{value: 'No'}], - metadata: { - policyRefs: [ - { - text: 'Greater London Authority Act 1999', - url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', - }, - ], - sectionName: 'About the project', + { + question: 'Does the site include parking spaces for any of these?', + responses: [{value: 'Cars'}, {value: 'Bicycles'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, }, - }, - { - question: 'Do you know the title number of the property?', - responses: [{value: 'No'}], - metadata: {sectionName: 'About the project'}, - }, - { - question: - 'Does the property have an Energy Performance Certificate (EPC)?', - responses: [{value: 'No'}], - metadata: { - policyRefs: [ - { - text: 'Greater London Authority Act 1999', - url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', - }, - ], - sectionName: 'About the project', + { + question: 'Total number of car parking spaces before', + responses: [{value: '1'}], + metadata: {sectionName: 'About the project'}, }, - }, - { - question: 'What type of application is this?', - responses: [{value: 'Planning permission for a home'}], - metadata: { - autoAnswered: true, - policyRefs: [ - { - text: 'Greater London Authority Act 1999', - url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', - }, - ], - sectionName: 'About the project', + { + question: 'Total number of car parking spaces after', + responses: [{value: '1'}], + metadata: {sectionName: 'About the project'}, }, - }, - { - question: 'When will the works start?', - responses: [{value: '2024-05-01'}], - metadata: { - policyRefs: [ - { - text: 'Greater London Authority Act 1999', - url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', - }, - ], - sectionName: 'About the project', + { + question: 'What types of car parking space are present?', + responses: [{value: 'Off-street parking for residents only'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, }, - }, - { - question: 'When will the works be completed?', - responses: [{value: '2024-05-02'}], - metadata: { - policyRefs: [ - { - text: 'Greater London Authority Act 1999', - url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', - }, - ], - sectionName: 'About the project', + { + question: 'Off-street, residents-only car spaces before', + responses: [{value: '1'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, }, - }, - { - question: 'Does the site include parking spaces for any of these?', - responses: [{value: 'Cars'}, {value: 'Bicycles'}], - metadata: { - policyRefs: [ - { - text: 'Greater London Authority Act 1999', - url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', - }, - ], - sectionName: 'About the project', + { + question: 'Off-street, residents-only car spaces after', + responses: [{value: '1'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, }, - }, - { - question: 'Total number of car parking spaces before', - responses: [{value: '1'}], - metadata: {sectionName: 'About the project'}, - }, - { - question: 'Total number of car parking spaces after', - responses: [{value: '1'}], - metadata: {sectionName: 'About the project'}, - }, - { - question: 'What types of car parking space are present?', - responses: [{value: 'Off-street parking for residents only'}], - metadata: { - policyRefs: [ - { - text: 'Greater London Authority Act 1999', - url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', - }, - ], - sectionName: 'About the project', + { + question: 'What type of bicycle parking is there?', + responses: [{value: 'Off-street cycle parking'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, }, - }, - { - question: 'Off-street, residents-only car spaces before', - responses: [{value: '1'}], - metadata: { - policyRefs: [ - { - text: 'Greater London Authority Act 1999', - url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', - }, - ], - sectionName: 'About the project', + { + question: 'Off-street bicycle spaces before', + responses: [{value: '2'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, }, - }, - { - question: 'Off-street, residents-only car spaces after', - responses: [{value: '1'}], - metadata: { - policyRefs: [ - { - text: 'Greater London Authority Act 1999', - url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', - }, - ], - sectionName: 'About the project', + { + question: 'Off-street bicycle spaces after', + responses: [{value: '2'}], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, }, - }, - { - question: 'What type of bicycle parking is there?', - responses: [{value: 'Off-street cycle parking'}], - metadata: { - policyRefs: [ - { - text: 'Greater London Authority Act 1999', - url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', - }, - ], - sectionName: 'About the project', + { + question: 'Is the property on designated land?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About the project'}, }, - }, - { - question: 'Off-street bicycle spaces before', - responses: [{value: '2'}], - metadata: { - policyRefs: [ - { - text: 'Greater London Authority Act 1999', - url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', - }, + { + question: 'Does the property include any of these?', + responses: [{value: 'None of these'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended', + url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Heritage Statement needed?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About the project'}, + }, + { + question: 'Is the property in a flood zone?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About the project'}, + }, + { + question: 'What type of application is it?', + responses: [{value: 'Apply for planning permission'}], + metadata: {autoAnswered: true, sectionName: 'About you'}, + }, + { + question: 'Your contact details', + responses: [ + {value: 'Mx Ziggy Stardust 01100 0110 0011 ziggy@example.com'}, ], - sectionName: 'About the project', + metadata: {sectionName: 'About you'}, }, - }, - { - question: 'Off-street bicycle spaces after', - responses: [{value: '2'}], - metadata: { - policyRefs: [ + { + question: 'Is this a test?', + responses: [{value: 'No'}], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Are you applying on behalf of someone else?', + responses: [{value: 'Yes'}], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Which of these best describes you?', + responses: [{value: 'Friend or relative'}], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Your contact address', + responses: [ { - text: 'Greater London Authority Act 1999', - url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + value: + '40 Stansfield Road, Brixton, London, Greater London, SW9 9RZ, UK', }, ], - sectionName: 'About the project', + metadata: {sectionName: 'About you'}, }, - }, - { - question: 'Is the property on designated land?', - responses: [{value: 'No'}], - metadata: {autoAnswered: true, sectionName: 'About the project'}, - }, - { - question: 'Does the property include any of these?', - responses: [{value: 'None of these'}], - metadata: { - autoAnswered: true, - policyRefs: [ - { - text: 'The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended', - url: 'http://www.legislation.gov.uk/uksi/2015/595/article/7/made', - }, + { + question: 'Which of these best describes the applicant?', + responses: [{value: 'Private individual'}], + metadata: {sectionName: 'About you'}, + }, + { + question: "Applicant's title", + responses: [{value: 'Mr'}], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Do you want to provide an email address for the applicant?', + responses: [{value: 'No'}], + metadata: {sectionName: 'About you'}, + }, + { + question: + 'Do you want to provide a telephone number for the applicant?', + responses: [{value: 'No'}], + metadata: {sectionName: 'About you'}, + }, + { + question: + "Is the applicant's contact address the same as the property address?", + responses: [{value: 'Yes'}], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Which of these best describes you?', + responses: [{value: 'Friend or relative'}], + metadata: {autoAnswered: true, sectionName: 'About you'}, + }, + { + question: + 'We may need to visit your site to assess your application. If we do, who should we contact to arrange the visit?', + responses: [{value: 'Me'}], + metadata: {sectionName: 'About you'}, + }, + { + question: 'Which of these best describes you?', + responses: [ + {value: "Friend or relative acting on the applicant's behalf"}, ], - sectionName: 'About the project', + metadata: {autoAnswered: true, sectionName: 'About you'}, }, - }, - { - question: 'Heritage Statement needed?', - responses: [{value: 'No'}], - metadata: {autoAnswered: true, sectionName: 'About the project'}, - }, - { - question: 'Is the property in a flood zone?', - responses: [{value: 'No'}], - metadata: {autoAnswered: true, sectionName: 'About the project'}, - }, - { - question: 'What type of application is it?', - responses: [{value: 'Apply for planning permission'}], - metadata: {autoAnswered: true, sectionName: 'About you'}, - }, - { - question: 'Your contact details', - responses: [ - {value: 'Mx Ziggy Stardust 01100 0110 0011 ziggy@example.com'}, - ], - metadata: {sectionName: 'About you'}, - }, - { - question: 'Is this a test?', - responses: [{value: 'No'}], - metadata: {sectionName: 'About you'}, - }, - { - question: 'Are you applying on behalf of someone else?', - responses: [{value: 'Yes'}], - metadata: {sectionName: 'About you'}, - }, - { - question: 'Which of these best describes you?', - responses: [{value: 'Friend or relative'}], - metadata: {sectionName: 'About you'}, - }, - { - question: 'Your contact address', - responses: [ - { - value: - '40 Stansfield Road, Brixton, London, Greater London, SW9 9RZ, UK', + { + question: + "Which of these best describes the applicant's interest in the land?", + responses: [{value: 'Sole owner'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Development Management Procedure) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/39/made', + }, + ], + sectionName: 'About you', }, - ], - metadata: {sectionName: 'About you'}, - }, - { - question: 'Which of these best describes the applicant?', - responses: [{value: 'Private individual'}], - metadata: {sectionName: 'About you'}, - }, - { - question: "Applicant's title", - responses: [{value: 'Mr'}], - metadata: {sectionName: 'About you'}, - }, - { - question: 'Do you want to provide an email address for the applicant?', - responses: [{value: 'No'}], - metadata: {sectionName: 'About you'}, - }, - { - question: 'Do you want to provide a telephone number for the applicant?', - responses: [{value: 'No'}], - metadata: {sectionName: 'About you'}, - }, - { - question: - "Is the applicant's contact address the same as the property address?", - responses: [{value: 'Yes'}], - metadata: {sectionName: 'About you'}, - }, - { - question: 'Which of these best describes you?', - responses: [{value: 'Friend or relative'}], - metadata: {autoAnswered: true, sectionName: 'About you'}, - }, - { - question: - 'We may need to visit your site to assess your application. If we do, who should we contact to arrange the visit?', - responses: [{value: 'Me'}], - metadata: {sectionName: 'About you'}, - }, - { - question: 'Which of these best describes you?', - responses: [ - {value: "Friend or relative acting on the applicant's behalf"}, - ], - metadata: {autoAnswered: true, sectionName: 'About you'}, - }, - { - question: - "Which of these best describes the applicant's interest in the land?", - responses: [{value: 'Sole owner'}], - metadata: { - policyRefs: [ - { - text: 'The Town and Country Planning (Development Management Procedure) (England) Order 2015', - url: 'https://www.legislation.gov.uk/uksi/2015/595/article/39/made', - }, - ], - sectionName: 'About you', }, - }, - { - question: - 'Did you get any pre-application advice from the council before making this application?', - responses: [{value: 'No'}], - metadata: {sectionName: 'About this application'}, - }, - { - question: 'What type of planning application are you making?', - responses: [{value: 'Full planning permission'}], - metadata: {autoAnswered: true, sectionName: 'About this application'}, - }, - { - question: 'Is the property a home?', - responses: [{value: 'Yes'}], - metadata: {autoAnswered: true, sectionName: 'About this application'}, - }, - { - question: 'What types of changes does the application relate to?', - responses: [{value: 'Extension'}], - metadata: {autoAnswered: true, sectionName: 'About this application'}, - }, - { - question: 'What type of extension is it?', - responses: [{value: 'Roof extension'}], - metadata: {autoAnswered: true, sectionName: 'About this application'}, - }, - { - question: 'List the changes involved in the roof extension', - responses: [{value: 'Add dormer'}], - metadata: {sectionName: 'About this application'}, - }, - { - question: - 'Is the purpose of the project to support the needs of a disabled resident?', - responses: [{value: 'No'}], - metadata: { - policyRefs: [ - { - text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', - url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', - }, - { - text: 'UK Statutory Instruments 2012 No. 2920 Regulation 4', - url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/4/made', - }, - { - text: 'Equalities Act 2010, Section 6', - url: 'https://www.legislation.gov.uk/ukpga/2010/15/section/6', - }, - { - text: 'Children Act 1989, Part 3', - url: 'https://www.legislation.gov.uk/ukpga/1989/41/part/III', - }, - ], - sectionName: 'About this application', + { + question: + 'Did you get any pre-application advice from the council before making this application?', + responses: [{value: 'No'}], + metadata: {sectionName: 'About this application'}, }, - }, - { - question: 'Is it a prior approval application?', - responses: [{value: 'No'}], - metadata: {autoAnswered: true, sectionName: 'About this application'}, - }, - { - question: 'Is the property a home?', - responses: [{value: 'Yes'}], - metadata: {autoAnswered: true, sectionName: 'About this application'}, - }, - { - question: 'What works does the project involve?', - responses: [{value: 'Extension'}], - metadata: {autoAnswered: true, sectionName: 'About this application'}, - }, - { - question: 'Is this application a resubmission?', - responses: [{value: 'No'}], - metadata: { - policyRefs: [ - { - text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 9', - url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/9', - }, - ], - sectionName: 'About this application', + { + question: 'What type of planning application are you making?', + responses: [{value: 'Full planning permission'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, }, - }, - { - question: 'Does the application qualify for a disability exemption?', - responses: [{value: 'No'}], - metadata: {autoAnswered: true, sectionName: 'About this application'}, - }, - { - question: 'Does the application qualify for a resubmission exemption?', - responses: [{value: 'No'}], - metadata: {autoAnswered: true, sectionName: 'About this application'}, - }, - { - question: 'Is the site a sports field?', - responses: [{value: 'No'}], - metadata: { - autoAnswered: true, - policyRefs: [ - { - text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 3', - url: 'https://www.legislation.gov.uk/uksi/2012/2920/schedule/1', - }, - ], - sectionName: 'About this application', + { + question: 'Is the property a home?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, }, - }, - { - question: - 'Is the application being made by (or on behalf of) a parish or community council?', - responses: [{value: 'No'}], - metadata: { - autoAnswered: true, - policyRefs: [ - { - text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11', - url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/11', - }, - ], - sectionName: 'About this application', + { + question: 'What types of changes does the application relate to?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, }, - }, - { - question: - 'Are you also submitting another proposal for the same site today?', - responses: [{value: 'No'}], - metadata: { - policyRefs: [ - { - text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10', - url: 'https://www.legislation.gov.uk/uksi/2012/2920/schedule/1', - }, - ], - sectionName: 'About this application', + { + question: 'What type of extension is it?', + responses: [{value: 'Roof extension'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, }, - }, - { - question: - 'Does the application qualify for the sports club fee reduction?', - responses: [{value: 'No'}], - metadata: {autoAnswered: true, sectionName: 'About this application'}, - }, - { - question: - 'Does the application qualify for the parish council reduction?', - responses: [{value: 'No'}], - metadata: { - autoAnswered: true, - policyRefs: [ - { - text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11', - url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/11', - }, - ], - sectionName: 'About this application', + { + question: 'List the changes involved in the roof extension', + responses: [{value: 'Add dormer'}], + metadata: {sectionName: 'About this application'}, }, - }, - { - question: - 'Does the application qualify for the alternative application reduction?', - responses: [{value: 'No'}], - metadata: { - autoAnswered: true, - policyRefs: [ - { - text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10', - url: 'https://www.legislation.gov.uk/uksi/2012/2920/schedule/1', - }, - ], - sectionName: 'About this application', + { + question: + 'Is the purpose of the project to support the needs of a disabled resident?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + { + text: 'UK Statutory Instruments 2012 No. 2920 Regulation 4', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/4/made', + }, + { + text: 'Equalities Act 2010, Section 6', + url: 'https://www.legislation.gov.uk/ukpga/2010/15/section/6', + }, + { + text: 'Children Act 1989, Part 3', + url: 'https://www.legislation.gov.uk/ukpga/1989/41/part/III', + }, + ], + sectionName: 'About this application', + }, }, - }, - { - question: 'What type of application is it?', - responses: [{value: 'Full planning permission'}], - metadata: {autoAnswered: true, sectionName: 'About this application'}, - }, - { - question: 'What does the project involve?', - responses: [{value: 'Extension'}], - metadata: {autoAnswered: true, sectionName: 'About this application'}, - }, - { - question: 'How much new floor area is being created?', - responses: [ - { - value: 'Less than 100m²', - metadata: {flags: ['Community infrastructure levy / Not liable']}, + { + question: 'Is it a prior approval application?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'Is the property a home?', + responses: [{value: 'Yes'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'What works does the project involve?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'Is this application a resubmission?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 9', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/9', + }, + ], + sectionName: 'About this application', }, - ], - metadata: { - autoAnswered: true, - policyRefs: [ - { - text: 'The Community Infrastructure Levy Regulations 2010, Regulation 42', - url: 'https://www.legislation.gov.uk/uksi/2010/948/regulation/42', - }, - ], - sectionName: 'About this application', }, - }, - { - question: 'Is this a householder planning application?', - responses: [ - { - value: 'Yes', - metadata: {flags: ['Community infrastructure levy / Not liable']}, + { + question: 'Does the application qualify for a disability exemption?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'Does the application qualify for a resubmission exemption?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'Is the site a sports field?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 3', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/schedule/1', + }, + ], + sectionName: 'About this application', }, - ], - metadata: { - autoAnswered: true, - policyRefs: [ - { - text: 'The Community Infrastructure Levy Regulations 2010, Regulation 42', - url: 'https://www.legislation.gov.uk/uksi/2010/948/regulation/42', - }, - ], - sectionName: 'About this application', }, - }, - { - question: 'Have the works already started?', - responses: [{value: 'No'}], - metadata: {autoAnswered: true, sectionName: 'Upload drawings'}, - }, - { - question: 'What changes does the project involve?', - responses: [{value: 'Extension'}], - metadata: {autoAnswered: true, sectionName: 'Upload drawings'}, - }, - { - question: 'Is the project to add an outbuilding?', - responses: [{value: 'No'}], - metadata: {autoAnswered: true, sectionName: 'Upload drawings'}, - }, - { - question: 'Which Local Planning authority is it?', - responses: [{value: 'Lambeth'}], - metadata: {autoAnswered: true, sectionName: 'Check'}, - }, - { - question: 'Connections with London Borough of Lambeth', - responses: [{value: 'None of the above apply to me'}], - metadata: {sectionName: 'Check'}, - }, - { - question: 'I confirm that:', - responses: [ - { - value: - 'The information contained in this application is truthful, accurate and complete, to the best of my knowledge', + { + question: + 'Is the application being made by (or on behalf of) a parish or community council?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/11', + }, + ], + sectionName: 'About this application', }, - ], - metadata: {sectionName: 'Check'}, - }, - { - question: 'Does the application qualify for a disability exemption?', - responses: [{value: 'No'}], - metadata: {autoAnswered: true, sectionName: 'Pay and send'}, - }, - { - question: 'Does the application qualify for a resubmission exemption?', - responses: [{value: 'No'}], - metadata: {autoAnswered: true, sectionName: 'Pay and send'}, - }, - { - question: 'Which Local Planning authority is it?', - responses: [{value: 'Lambeth'}], - metadata: {autoAnswered: true, sectionName: 'Pay and send'}, - }, - ], - files: [ - { - name: 'https://api.editor.planx.dev/file/private/tbp4kiba/myPlans.pdf', - type: ['roofPlan.existing', 'roofPlan.proposed'], - }, - { - name: 'https://api.editor.planx.dev/file/private/5w5v8s8z/other.pdf', - type: ['sitePlan.existing', 'sitePlan.proposed'], - }, - { - name: 'https://api.editor.planx.dev/file/private/7nrefxnn/elevations.pdf', - type: ['elevations.existing', 'elevations.proposed'], - }, - { - name: 'https://api.editor.planx.dev/file/private/311w2id6/floor_plans.pdf', - type: ['floorPlan.existing', 'floorPlan.proposed'], - }, - ], - metadata: { - organisation: 'LBH', - id: '81bcaa0f-baf5-4573-ba0a-ea868c573faf', - source: 'PlanX', - service: { - flowId: '01e38c5d-e701-4e44-acdc-4d6b5cc3b854', - url: 'https://www.editor.planx.dev/lambeth/apply-for-planning-permission/preview', - files: { - required: [ - { - value: 'roofPlan.existing', - description: 'Roof plan - existing', - }, - { - value: 'roofPlan.proposed', - description: 'Roof plan - proposed', - }, - { - value: 'sitePlan.existing', - description: 'Site plan - existing', - }, - { - value: 'sitePlan.proposed', - description: 'Site plan - proposed', - }, - { - value: 'elevations.existing', - description: 'Elevations - existing', - }, + }, + { + question: + 'Are you also submitting another proposal for the same site today?', + responses: [{value: 'No'}], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/schedule/1', + }, + ], + sectionName: 'About this application', + }, + }, + { + question: + 'Does the application qualify for the sports club fee reduction?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: + 'Does the application qualify for the parish council reduction?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/11', + }, + ], + sectionName: 'About this application', + }, + }, + { + question: + 'Does the application qualify for the alternative application reduction?', + responses: [{value: 'No'}], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/schedule/1', + }, + ], + sectionName: 'About this application', + }, + }, + { + question: 'What type of application is it?', + responses: [{value: 'Full planning permission'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'What does the project involve?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true, sectionName: 'About this application'}, + }, + { + question: 'How much new floor area is being created?', + responses: [ { - value: 'elevations.proposed', - description: 'Elevations - proposed', + value: 'Less than 100m²', + metadata: {flags: ['Community infrastructure levy / Not liable']}, }, ], - recommended: [ + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Community Infrastructure Levy Regulations 2010, Regulation 42', + url: 'https://www.legislation.gov.uk/uksi/2010/948/regulation/42', + }, + ], + sectionName: 'About this application', + }, + }, + { + question: 'Is this a householder planning application?', + responses: [ { - value: 'floorPlan.existing', - description: 'Floor plan - existing', + value: 'Yes', + metadata: {flags: ['Community infrastructure levy / Not liable']}, }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Community Infrastructure Levy Regulations 2010, Regulation 42', + url: 'https://www.legislation.gov.uk/uksi/2010/948/regulation/42', + }, + ], + sectionName: 'About this application', + }, + }, + { + question: 'Have the works already started?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'Upload drawings'}, + }, + { + question: 'What changes does the project involve?', + responses: [{value: 'Extension'}], + metadata: {autoAnswered: true, sectionName: 'Upload drawings'}, + }, + { + question: 'Is the project to add an outbuilding?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'Upload drawings'}, + }, + { + question: 'Which Local Planning authority is it?', + responses: [{value: 'Lambeth'}], + metadata: {autoAnswered: true, sectionName: 'Check'}, + }, + { + question: 'Connections with London Borough of Lambeth', + responses: [{value: 'None of the above apply to me'}], + metadata: {sectionName: 'Check'}, + }, + { + question: 'I confirm that:', + responses: [ { - value: 'floorPlan.proposed', - description: 'Floor plan - proposed', + value: + 'The information contained in this application is truthful, accurate and complete, to the best of my knowledge', }, ], - optional: [], + metadata: {sectionName: 'Check'}, }, - fee: { - category: { - sixAndSeven: [ + { + question: 'Does the application qualify for a disability exemption?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'Pay and send'}, + }, + { + question: 'Does the application qualify for a resubmission exemption?', + responses: [{value: 'No'}], + metadata: {autoAnswered: true, sectionName: 'Pay and send'}, + }, + { + question: 'Which Local Planning authority is it?', + responses: [{value: 'Lambeth'}], + metadata: {autoAnswered: true, sectionName: 'Pay and send'}, + }, + ], + files: [ + { + name: 'https://api.editor.planx.dev/file/private/tbp4kiba/myPlans.pdf', + type: ['roofPlan.existing', 'roofPlan.proposed'], + }, + { + name: 'https://api.editor.planx.dev/file/private/5w5v8s8z/other.pdf', + type: ['sitePlan.existing', 'sitePlan.proposed'], + }, + { + name: 'https://api.editor.planx.dev/file/private/7nrefxnn/elevations.pdf', + type: ['elevations.existing', 'elevations.proposed'], + }, + { + name: 'https://api.editor.planx.dev/file/private/311w2id6/floor_plans.pdf', + type: ['floorPlan.existing', 'floorPlan.proposed'], + }, + ], + metadata: { + organisation: 'LBH', + id: '81bcaa0f-baf5-4573-ba0a-ea868c573faf', + source: 'PlanX', + service: { + flowId: '01e38c5d-e701-4e44-acdc-4d6b5cc3b854', + url: 'https://www.editor.planx.dev/lambeth/apply-for-planning-permission/preview', + files: { + required: [ + { + value: 'roofPlan.existing', + description: 'Roof plan - existing', + }, + { + value: 'roofPlan.proposed', + description: 'Roof plan - proposed', + }, + { + value: 'sitePlan.existing', + description: 'Site plan - existing', + }, + { + value: 'sitePlan.proposed', + description: 'Site plan - proposed', + }, + { + value: 'elevations.existing', + description: 'Elevations - existing', + }, + { + value: 'elevations.proposed', + description: 'Elevations - proposed', + }, + ], + recommended: [ + { + value: 'floorPlan.existing', + description: 'Floor plan - existing', + }, + { + value: 'floorPlan.proposed', + description: 'Floor plan - proposed', + }, + ], + optional: [], + }, + fee: { + category: { + sixAndSeven: [ + { + description: + 'The fee to apply for planning permission to alter or extend a single home is £258.', + policyRefs: [ + { + text: 'UK Statutory Instruments 2023 No. 1197', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + }, + calculated: [ + { + description: + 'The fee to apply for planning permission to alter or extend a single home is £258.', + policyRefs: [ + { + text: 'UK Statutory Instruments 2023 No. 1197', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + payable: [ { description: 'The fee to apply for planning permission to alter or extend a single home is £258.', @@ -1124,33 +1153,8 @@ export const planningPermissionFullHouseholderPrototype: PrototypeApplication = }, ], }, - calculated: [ - { - description: - 'The fee to apply for planning permission to alter or extend a single home is £258.', - policyRefs: [ - { - text: 'UK Statutory Instruments 2023 No. 1197', - url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', - }, - ], - }, - ], - payable: [ - { - description: - 'The fee to apply for planning permission to alter or extend a single home is £258.', - policyRefs: [ - { - text: 'UK Statutory Instruments 2023 No. 1197', - url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', - }, - ], - }, - ], }, + submittedAt: '2023-10-02T00:00:00.00Z', + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, }, - submittedAt: '2023-10-02T00:00:00.00Z', - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, - }, -}; + }; diff --git a/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts b/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts index e10fa65f..d99b1f8d 100644 --- a/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts +++ b/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts @@ -1,4 +1,4 @@ -import { PrototypeApplication } from '../../../../types/schemas/prototypeApplication'; +import {PrototypeApplication} from '../../../../types/schemas/prototypeApplication'; const version = process.env['VERSION'] || '@next'; diff --git a/examples/prototypeApplication/data/planningPermission/major.ts b/examples/prototypeApplication/data/planningPermission/major.ts index 1813698e..089b4fcf 100644 --- a/examples/prototypeApplication/data/planningPermission/major.ts +++ b/examples/prototypeApplication/data/planningPermission/major.ts @@ -1,4 +1,4 @@ -import { PrototypeApplication } from '../../../../types/schemas/prototypeApplication'; +import {PrototypeApplication} from '../../../../types/schemas/prototypeApplication'; const version = process.env['VERSION'] || '@next'; @@ -35,20 +35,20 @@ export const planningPermissionMajorPrototype: PrototypeApplication = { certificate: 'b', noticeGiven: true, ownersKnown: 'all', - owners: [ - { - name: 'Agamemnon Agricullen', - address: { - town: 'Mycenae', - line1: 'Aggy Avenue', - line2: '', - county: '', - country: 'Greece', - postcode: '212 00', - }, - noticeGiven: true, - }, - ], + // owners: [ + // { + // name: 'Agamemnon Agricullen', + // address: { + // town: 'Mycenae', + // line1: 'Aggy Avenue', + // line2: '', + // county: '', + // country: 'Greece', + // postcode: '212 00', + // }, + // noticeGiven: true, + // }, + // ], declaration: { accurate: true, }, @@ -86,7 +86,7 @@ export const planningPermissionMajorPrototype: PrototypeApplication = { }, localAuthorityDistrict: ['Buckinghamshire', 'South Bucks'], region: 'South East', - type:'other.unsupported', + type: 'other.unsupported', // use: { // description: 'Vacant brownfield', // }, @@ -301,24 +301,10 @@ export const planningPermissionMajorPrototype: PrototypeApplication = { payable: 2535, category: { one: 578, - two: 0, - three: 0, - four: 0, - five: 0, - sixAndSeven: 0, eight: 293, - nine: 0, - ten: 0, eleven: { - one: 0, two: 2535, }, - twelve: { - one: 0, - two: 0, - }, - thirteen: 0, - fourteen: 0, }, exemption: { disability: false, @@ -330,7 +316,7 @@ export const planningPermissionMajorPrototype: PrototypeApplication = { alternative: false, }, reference: { - govPay: 'oo7f1o1emrimo39j5tsg9utjge', + govPay: 'sandbox-456', }, }, declaration: { @@ -347,7 +333,11 @@ export const planningPermissionMajorPrototype: PrototypeApplication = { }, }, proposal: { - projectType: ['new.residential.dwelling','alter.surfaces.parking','alter.highways.access'], + projectType: [ + 'new.residential.dwelling', + 'alter.surfaces.parking', + 'alter.highways.access', + ], description: 'The erection of 25 private dwellinghouses and associated infrastructure on vacant brownfield site', boundary: { diff --git a/examples/prototypeApplication/data/planningPermission/minor.ts b/examples/prototypeApplication/data/planningPermission/minor.ts index d6681bbe..003c1a29 100644 --- a/examples/prototypeApplication/data/planningPermission/minor.ts +++ b/examples/prototypeApplication/data/planningPermission/minor.ts @@ -1,4 +1,4 @@ -import { PrototypeApplication } from '../../../../types/schemas/prototypeApplication'; +import {PrototypeApplication} from '../../../../types/schemas/prototypeApplication'; const version = process.env['VERSION'] || '@next'; diff --git a/examples/prototypeApplication/planningPermission/major.json b/examples/prototypeApplication/planningPermission/major.json index e69de29b..dca1d668 100644 --- a/examples/prototypeApplication/planningPermission/major.json +++ b/examples/prototypeApplication/planningPermission/major.json @@ -0,0 +1,2335 @@ +{ + "applicationType": "pp.full.major", + "data": { + "user": { + "role": "agent" + }, + "applicant": { + "type": "company", + "name": { + "first": "Mike", + "last": "McHouseface" + }, + "email": "mikemchouseface@housefacemike.com", + "phone": { + "primary": "9876543210" + }, + "company": { + "name": "McHouseface Incorporated" + }, + "address": { + "sameAsSiteAddress": true + }, + "siteContact": { + "role": "other", + "name": "Kyle Keybearer", + "email": "kylewiththekeys@keysfromkyle.com", + "phone": "543210" + }, + "ownership": { + "interest": "other", + "certificate": "b", + "noticeGiven": true, + "ownersKnown": "all", + "declaration": { + "accurate": true + } + }, + "agent": { + "name": { + "first": "Andy", + "last": "Agent" + }, + "email": "andytheagent@agncagency.com", + "phone": { + "primary": "0123456789" + }, + "company": { + "name": "AGNC Agency" + }, + "address": { + "line1": "Roady Road", + "line2": "", + "town": "Towny Town", + "county": "", + "postcode": "Cody Code", + "country": "" + } + } + }, + "property": { + "address": { + "latitude": 51.51257224609594, + "longitude": -0.5189885919643893, + "x": 502869.8591151078, + "y": 180333.4537434135, + "title": "House McHouseface Housing", + "source": "Proposed by applicant" + }, + "localAuthorityDistrict": [ + "Buckinghamshire", + "South Bucks" + ], + "region": "South East", + "type": "other.unsupported", + "planning": { + "sources": [ + "https://api.editor.planx.dev/gis/buckinghamshire?geom=POLYGON+%28%28-0.5202563671906586+51.51349326091676%2C+-0.5162271673824664+51.51342965453125%2C+-0.5160930726385158+51.5119189712527%2C+-0.5186025432309797+51.51150473816995%2C+-0.5192921685359919+51.51150076298916%2C+-0.5197391470751718+51.5115882253788%2C+-0.5204032314768795+51.51156039632619%2C+-0.5207544293552119+51.512609937924225%2C+-0.5202563671906586+51.51349326091676%29%29&sessionId=180da003-279d-40dc-b538-a616c8c2a700" + ], + "designations": [ + { + "value": "tpo", + "intersects": false + }, + { + "value": "flood", + "intersects": false + }, + { + "value": "listed", + "intersects": false + }, + { + "value": "article4", + "intersects": false + }, + { + "value": "monument", + "intersects": false + }, + { + "value": "greenBelt", + "intersects": true, + "entities": [ + { + "name": "Buckinghamshire", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/610030" + } + } + ] + }, + { + "value": "designated", + "intersects": false + }, + { + "value": "nature.SAC", + "intersects": false + }, + { + "value": "nature.SPA", + "intersects": false + }, + { + "value": "nature.ASNW", + "intersects": false + }, + { + "value": "nature.SSSI", + "intersects": false + }, + { + "value": "brownfieldSite", + "intersects": false + }, + { + "value": "designated.WHS", + "intersects": false + }, + { + "value": "registeredPark", + "intersects": false + }, + { + "value": "designated.AONB", + "intersects": false + }, + { + "value": "nature.ramsarSite", + "intersects": false + }, + { + "value": "designated.nationalPark", + "intersects": false + }, + { + "value": "designated.conservationArea", + "intersects": false + }, + { + "value": "designated.nationalPark.broads", + "intersects": false + } + ] + }, + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -0.525061, + 51.514352 + ], + [ + -0.525278, + 51.513929 + ], + [ + -0.525415, + 51.513695 + ], + [ + -0.525716, + 51.513284 + ], + [ + -0.52582, + 51.513149 + ], + [ + -0.526395, + 51.512578 + ], + [ + -0.526474, + 51.512515 + ], + [ + -0.526452, + 51.512518 + ], + [ + -0.526483, + 51.512486 + ], + [ + -0.526068, + 51.512397 + ], + [ + -0.523001, + 51.511595 + ], + [ + -0.520218, + 51.510925 + ], + [ + -0.517193, + 51.51149 + ], + [ + -0.51608, + 51.511659 + ], + [ + -0.512427, + 51.512263 + ], + [ + -0.51294, + 51.514283 + ], + [ + -0.51624, + 51.514275 + ], + [ + -0.516107, + 51.514586 + ], + [ + -0.515866, + 51.514961 + ], + [ + -0.515496, + 51.515608 + ], + [ + -0.515375, + 51.515791 + ], + [ + -0.515233, + 51.516085 + ], + [ + -0.515087, + 51.516427 + ], + [ + -0.515002, + 51.516564 + ], + [ + -0.51593, + 51.51681 + ], + [ + -0.51572, + 51.517065 + ], + [ + -0.515697, + 51.517105 + ], + [ + -0.515076, + 51.517944 + ], + [ + -0.517128, + 51.518561 + ], + [ + -0.517376, + 51.518606 + ], + [ + -0.517472, + 51.518631 + ], + [ + -0.518067, + 51.518889 + ], + [ + -0.518535, + 51.519053 + ], + [ + -0.519212, + 51.519268 + ], + [ + -0.519295, + 51.519132 + ], + [ + -0.519332, + 51.519087 + ], + [ + -0.519402, + 51.519063 + ], + [ + -0.519778, + 51.519074 + ], + [ + -0.519836, + 51.51911 + ], + [ + -0.519794, + 51.519233 + ], + [ + -0.519782, + 51.519305 + ], + [ + -0.519782, + 51.51938 + ], + [ + -0.519791, + 51.519392 + ], + [ + -0.519814, + 51.519401 + ], + [ + -0.520024, + 51.519401 + ], + [ + -0.520946, + 51.519346 + ], + [ + -0.521302, + 51.519305 + ], + [ + -0.521431, + 51.519302 + ], + [ + -0.521839, + 51.519245 + ], + [ + -0.521818, + 51.519184 + ], + [ + -0.521806, + 51.519184 + ], + [ + -0.5218, + 51.519164 + ], + [ + -0.521768, + 51.519168 + ], + [ + -0.521645, + 51.518838 + ], + [ + -0.52135, + 51.518888 + ], + [ + -0.521321, + 51.518816 + ], + [ + -0.521348, + 51.518812 + ], + [ + -0.521338, + 51.518785 + ], + [ + -0.522282, + 51.518658 + ], + [ + -0.522348, + 51.519178 + ], + [ + -0.522998, + 51.519094 + ], + [ + -0.522932, + 51.518675 + ], + [ + -0.523307, + 51.518771 + ], + [ + -0.523838, + 51.518729 + ], + [ + -0.523878, + 51.518918 + ], + [ + -0.52392, + 51.518914 + ], + [ + -0.523943, + 51.519022 + ], + [ + -0.524932, + 51.51886 + ], + [ + -0.52487, + 51.518642 + ], + [ + -0.524794, + 51.518432 + ], + [ + -0.524769, + 51.518321 + ], + [ + -0.52465, + 51.518036 + ], + [ + -0.524606, + 51.517876 + ], + [ + -0.52459, + 51.517846 + ], + [ + -0.524504, + 51.517529 + ], + [ + -0.52444, + 51.51722 + ], + [ + -0.524403, + 51.517082 + ], + [ + -0.524459, + 51.516655 + ], + [ + -0.524776, + 51.515182 + ], + [ + -0.524921, + 51.514691 + ], + [ + -0.524995, + 51.514496 + ], + [ + -0.525061, + 51.514352 + ] + ] + ] + ] + }, + "properties": { + "name": "", + "entity": 12000001973, + "prefix": "title-boundary", + "dataset": "title-boundary", + "end-date": "", + "typology": "geography", + "reference": "49708846", + "entry-date": "2024-05-06", + "start-date": "2011-01-11", + "organisation-entity": "13" + } + }, + "area": { + "hectares": 59.48202, + "squareMetres": 594820.2 + } + } + }, + "application": { + "fee": { + "calculated": 2535, + "payable": 2535, + "category": { + "one": 578, + "eight": 293, + "eleven": { + "two": 2535 + } + }, + "exemption": { + "disability": false, + "resubmission": false + }, + "reduction": { + "sports": false, + "parishCouncil": false, + "alternative": false + }, + "reference": { + "govPay": "sandbox-456" + } + }, + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } + }, + "preApp": { + "reference": "PP420", + "date": "2024-05-01", + "officer": "Paul the Planner", + "summary": "Not provided" + } + }, + "proposal": { + "projectType": [ + "new.residential.dwelling", + "alter.surfaces.parking", + "alter.highways.access" + ], + "description": "The erection of 25 private dwellinghouses and associated infrastructure on vacant brownfield site", + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -0.5202563671906586, + 51.51349326091676 + ], + [ + -0.5162271673824664, + 51.51342965453125 + ], + [ + -0.5160930726385158, + 51.5119189712527 + ], + [ + -0.5186025432309797, + 51.51150473816995 + ], + [ + -0.5192921685359919, + 51.51150076298916 + ], + [ + -0.5197391470751718, + 51.5115882253788 + ], + [ + -0.5204032314768795, + 51.51156039632619 + ], + [ + -0.5207544293552119, + 51.512609937924225 + ], + [ + -0.5202563671906586, + 51.51349326091676 + ] + ] + ] + }, + "properties": null + }, + "area": { + "hectares": 6.1751949999999995, + "squareMetres": 61751.95 + } + }, + "access": { + "affected": "newRoad" + }, + "utilities": { + "foulSewageDisposal": "sewer" + }, + "flood": { + "surfaceWaterDisposal": "drainageSystem" + }, + "units": { + "total": 25, + "residential": [ + { + "type": "house", + "tenure": "MH", + "bedrooms": 3, + "identicalUnits": 10 + }, + { + "type": "house", + "tenure": "MH", + "bedrooms": 4, + "identicalUnits": 5 + }, + { + "type": "flat", + "tenure": "SAIR", + "bedrooms": 1, + "identicalUnits": 8 + }, + { + "type": "house", + "tenure": "SAIR", + "bedrooms": 2, + "identicalUnits": 2 + } + ] + } + } + }, + "responses": [ + { + "question": "Is the property in Buckinghamshire?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Something else" + } + ], + "metadata": { + "sectionName": "The property" + } + }, + { + "question": "Which of these best describes the use of the property?", + "responses": [ + { + "value": "Other" + } + ], + "metadata": { + "sectionName": "The property" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "No, none of these" + } + ], + "metadata": { + "sectionName": "The property" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Vacant land" + } + ], + "metadata": { + "sectionName": "The property" + } + }, + { + "question": "Is the property in a flood zone?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Apply for planning permission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Your contact details", + "responses": [ + { + "value": "Andy Agent AGNC Agency 0123456789 andytheagent@agncagency.com" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Are you applying on behalf of someone else?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "Professional agent" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Your contact address", + "responses": [ + { + "value": "Roady Road, Towny Town, Cody Code" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes the applicant?", + "responses": [ + { + "value": "Company" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Name of the company", + "responses": [ + { + "value": "McHouseface Incorporated" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Applicant's contact details", + "responses": [ + { + "value": "Mike McHouseface 9876543210 mikemchouseface@housefacemike.com" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Is the applicant's contact address the same as the property address?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Applicant's contact address", + "responses": [ + { + "value": "Posty Postlane, Postown, ABC 123" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Can a planning officer see the works from public land?", + "responses": [ + { + "value": "No, to see the works you'd have to come onto the property" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "Professional agent" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "If we need to make a site visit, who should we contact?", + "responses": [ + { + "value": "Someone else" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Contact details of the person we should contact about a site visit", + "responses": [ + { + "value": "Kyle Keybearer 543210 kylewiththekeys@keysfromkyle.com" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "What type of application is this?", + "responses": [ + { + "value": "Planning Permission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "I'm acting on the applicant's behalf" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "How many owners or agricultural tenants have been notified?", + "responses": [ + { + "value": "1" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Full name of the notified owner or agricultural tenant", + "responses": [ + { + "value": "Agamemnon Agricullen" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Address of the notified owner or agricultural tenant", + "responses": [ + { + "value": "Aggy Avenue, Mycenae, 212 00, Greece" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Date on which notice was given to the owner or agricultural tenant", + "responses": [ + { + "value": "2024-07-01" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Is the applicant the sole owner of the land?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/13/made" + } + ], + "sectionName": "About you" + } + }, + { + "question": "Does the applicant know the names and addresses of all owners and agricultural tenants?", + "responses": [ + { + "value": "Yes, all of them" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Has the applicant given requisite notice to all the owners and agricultural tenants?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/13/made" + } + ], + "sectionName": "About you" + } + }, + { + "question": "Certificate of ownership declaration - Certificate B", + "responses": [ + { + "value": "I certify that the above is true" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/13/made" + }, + { + "text": "Schedule 2 to the Town and Country Planning (Development Management Procedure (England) (Order) 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/schedule/2/made" + } + ], + "sectionName": "About you" + } + }, + { + "question": "What type of application are you submitting?", + "responses": [ + { + "value": "Major development" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Does your project involve changes to an existing roof?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does your project involve any alterations to ground or floor levels?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does your project involve any alterations to ground or floor levels?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Have works already started?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Select the changes involved in the project", + "responses": [ + { + "value": "Homes" + }, + { + "value": "Car parking" + }, + { + "value": "Service roads and other means of access" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the proposal involve a change of use?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Does the development involve new built waste disposal facilities?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "What type of development are you applying for?", + "responses": [ + { + "value": "Major development" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "What type of application are you submitting?", + "responses": [ + { + "value": "Something else" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Does the development involve any of the following?", + "responses": [ + { + "value": "New public roads to be provided within the site" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Do your plans and drawings identify areas to store and aid the collection of waste?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Have arrangements been made for the separate storage and collection of recyclable waste?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the project introduce any external materials?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Are you providing further details about existing or proposed materials through your plans, drawings, or a design and access statement?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Is the property in Greater London?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Are there existing or are you proposing parking spaces for any of these on the site?", + "responses": [ + { + "value": "Cars" + }, + { + "value": "Bicycles" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "What is the number of existing car parking spaces?", + "responses": [ + { + "value": "0" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "What is the proposed total number of car parking spaces?", + "responses": [ + { + "value": "30" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "What is the number of existing bicycle parking spaces?", + "responses": [ + { + "value": "0" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "What is the proposed total number of bicycle parking spaces?", + "responses": [ + { + "value": "20" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "How is foul sewage to be disposed of?", + "responses": [ + { + "value": "Main sewer" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Are you proposing to connect to the existing drainage system?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Is the project likely to affect biodiversity or geological conservation in any of these areas?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Could the project affect the biodiversity or geology on the development site or land adjacent to or near it?", + "responses": [ + { + "value": "No, definitely not" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Are there any protected trees on the property?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Are there trees or hedges on the proposed development site?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Are there trees or hedges on land adjacent to the proposed development site that could influence the development or might be important as part of the local landscape character?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the proposal involve the need to dispose of trade effluents or waste?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the proposal involve the use or storage of any of the following materials?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "What type of application are you submitting?", + "responses": [ + { + "value": "Something else" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Does your proposal involve the loss, gain or change of use of non-residential floorspace?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the development involve the loss or gain of rooms in hotels or residential institutions and hostels?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the development concern industrial or commercial processes?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Is the proposal a waste management development?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Is the property in a flood zone?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Is the property in flood zone 1?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Is the property in an area vulnerable to flooding?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Is the development within 20 metres of a watercourse (e.g. river, stream or canal)?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Will the development increase the flood risk elsewhere?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "How will surface water be disposed of?", + "responses": [ + { + "value": "Sustainable drainage system" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Is the site of the development currently vacant?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Please describe the current use of the site", + "responses": [ + { + "value": "Vacant brownfield" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the project involve any of the following?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Is the property in Greater London?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Does your project result in the gain or loss of any homes?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Which of these does your project involve?", + "responses": [ + { + "value": "Proposing one or more new residential units" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the project affect any residential units?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Are there any existing employees on the site or will the development lead to new employees on the site?", + "responses": [ + { + "value": "None of the above" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Are hours of opening relevant to this development?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Is the property in Greater London?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "What type of application is this?", + "responses": [ + { + "value": "Major development" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "How do you want to submit this information?", + "responses": [ + { + "value": "Upload a document" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Does the property include any of these?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Does the property include any of these?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Heritage Statement needed?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Do you believe that, if the development is granted planning permission, the Biodiversity Gain Condition would apply? ", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Part 2, Schedule 7A of the Town and Country Planning Act 1990", + "url": "https://www.legislation.gov.uk/ukpga/2021/30/schedule/14/enacted" + } + ], + "sectionName": "The project" + } + }, + { + "question": "When was the pre-development biodiversity value of onsite habitat(s) calculated?", + "responses": [ + { + "value": "An earlier proposed date" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "On what date was the pre-development biodiversity value of onsite habitat(s) calculated?", + "responses": [ + { + "value": "2024-05-01" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Why was this date used?", + "responses": [ + { + "value": "N/A" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "What was the pre-development biodiversity value of onsite habitats on the provided date?", + "responses": [ + { + "value": "0" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "What was the publication date of the biodiversity metric tool(s) used to calculate the onsite biodiversity value(s)?", + "responses": [ + { + "value": "2024-04-07" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Has there been any loss (or degradation) of any onsite habitat(s), resulting from activities carried out before the provided date?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the application site have irreplaceable habitat(s) which exist on land to which this application relates?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Biodiversity Gain Requirements (Irreplaceable Habitat) Regulations 2024", + "url": "https://www.legislation.gov.uk/uksi/2024/48/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Please confirm your application is accompanied by the following", + "responses": [ + { + "value": "I confirm the above" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Please provide any other details (for example references to relevant documents)", + "responses": [ + { + "value": "N/A" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Did you get any pre-application advice from the council before making this application?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "Your application" + } + }, + { + "question": "What was the name of the planning officer you spoke to?", + "responses": [ + { + "value": "Paul the Planner" + } + ], + "metadata": { + "sectionName": "Your application" + } + }, + { + "question": "What was your reference?", + "responses": [ + { + "value": "PP420" + } + ], + "metadata": { + "sectionName": "Your application" + } + }, + { + "question": "What date was the pre-application advice given on?", + "responses": [ + { + "value": "2024-05-01" + } + ], + "metadata": { + "sectionName": "Your application" + } + }, + { + "question": "What was the pre-application advice you have received?", + "responses": [ + { + "value": "The proposal will require the new Biodiversity Net Gain conditions." + } + ], + "metadata": { + "sectionName": "Your application" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Full planning permission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "What type of development are you applying for?", + "responses": [ + { + "value": "Major development" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made" + } + ], + "sectionName": "Your application" + } + }, + { + "question": "Is the property a home?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Are you building fewer than 10 new homes?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "What types of changes does the application relate to?", + "responses": [ + { + "value": "New buildings" + }, + { + "value": "Alterations" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "What types of changes does the application relate to?", + "responses": [ + { + "value": "New build homes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "What types of changes does the application relate to?", + "responses": [ + { + "value": "Hard surfaces used for car parking" + }, + { + "value": "Access roads" + }, + { + "value": "Other alterations" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Check for multiple fees?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Does the proposal include fees in category 1 or 2 to 13?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Does the proposal include developments in category 1?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Does the proposal include development in categories 2, 3 or 4?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Does the proposal include developments in category 5 to 13?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Another application type" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Is the property a home?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Does the project involve any of these changes?", + "responses": [ + { + "value": "Construction of a new building" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Does the application qualify for a disability exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Is the site a sports field?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Is the application being made by (or on behalf of) a parish or community council?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/11" + } + ], + "sectionName": "Your application" + } + }, + { + "question": "Are you also submitting another proposal for the same site today?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/schedule/1" + } + ], + "sectionName": "Your application" + } + }, + { + "question": "Does the application qualify for the sports club fee reduction?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Does the application qualify for the parish council reduction?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/11" + } + ], + "sectionName": "Your application" + } + }, + { + "question": "Does the application qualify for the alternative application reduction?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/schedule/1" + } + ], + "sectionName": "Your application" + } + }, + { + "question": "What type of development are you applying for?", + "responses": [ + { + "value": "Major development" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made" + } + ], + "sectionName": "Upload application documents" + } + }, + { + "question": "What type of application are you submitting?", + "responses": [ + { + "value": "Major" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload application documents" + } + }, + { + "question": "Is the application for a waste development?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload application documents" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Buckinghamshire" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Review and confirm" + } + }, + { + "question": "Connections with Buckinghamshire Council", + "responses": [ + { + "value": "None of the above apply to me" + } + ], + "metadata": { + "sectionName": "Review and confirm" + } + }, + { + "question": "I confirm that:", + "responses": [ + { + "value": "The information contained in this application is truthful, accurate and complete, to the best of my knowledge" + } + ], + "metadata": { + "sectionName": "Review and confirm" + } + }, + { + "question": "Does the application qualify for a disability exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and send" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Full planning permission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and send" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Buckinghamshire" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and send" + } + } + ], + "files": [ + { + "name": "https://api.editor.planx.dev/file/private/k9n2v5rn/Site-location-plan-example.pdf", + "type": [ + "relevantInformation" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/a8i079zc/Elevations-best-practice.pdf", + "type": [ + "necessaryInformation" + ] + } + ], + "metadata": { + "id": "180da003-279d-40dc-b538-a616c8c2a700", + "organisation": "BKM", + "submittedAt": "2024-07-03T06:57:54.645Z", + "source": "PlanX", + "service": { + "flowId": "28e258a7-812f-4390-b520-7c00e7f5cd77", + "url": "https://editor.planx.dev/buckinghamshire/apply-for-planning-permission/published", + "files": { + "required": [ + { + "value": "necessaryInformation", + "description": "Information the authority considers necessary for the application" + } + ], + "recommended": [ + { + "value": "relevantInformation", + "description": "Information the applicant considers relevant to the application" + } + ], + "optional": [] + }, + "fee": { + "calculated": [], + "payable": [] + } + }, + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + } +} \ No newline at end of file diff --git a/examples/prototypeApplication/planningPermission/minor.json b/examples/prototypeApplication/planningPermission/minor.json index e69de29b..be2480f5 100644 --- a/examples/prototypeApplication/planningPermission/minor.json +++ b/examples/prototypeApplication/planningPermission/minor.json @@ -0,0 +1,1608 @@ +{ + "applicationType": "pp.full.minor", + "data": { + "user": { + "role": "applicant" + }, + "applicant": { + "type": "individual", + "name": { + "first": "Richard", + "last": "Gambier-Parry" + }, + "email": "richardgambierparry@secretmi6hq.ss", + "phone": { + "primary": "0123456789" + }, + "address": { + "sameAsSiteAddress": true + }, + "siteContact": { + "role": "applicant" + }, + "ownership": { + "interest": "owner.sole", + "certificate": "a", + "agriculturalTenants": false, + "declaration": { + "accurate": true + } + } + }, + "property": { + "address": { + "latitude": 52.0003007, + "longitude": -0.8271026, + "x": 480616, + "y": 234188, + "title": "WHADDON JUBILEE HALL, STOCK LANE, WHADDON", + "source": "Ordnance Survey", + "uprn": "000766301871", + "usrn": "1400167", + "pao": "WHADDON JUBILEE HALL", + "street": "STOCK LANE", + "town": "WHADDON", + "postcode": "MK17 0LS", + "singleLine": "WHADDON JUBILEE HALL, STOCK LANE, WHADDON, BUCKINGHAMSHIRE, MK17 0LS" + }, + "localAuthorityDistrict": [ + "Aylesbury Vale", + "Buckinghamshire" + ], + "region": "South East", + "type": "commercial.community.hall", + "planning": { + "sources": [ + "https://api.editor.planx.dev/gis/buckinghamshire?geom=POLYGON+%28%28-0.8271436393261123+52.00047292273189%2C+-0.8268579840660265+52.000354853531235%2C+-0.8271127939224412+52.00012862216494%2C+-0.8273246884346175+52.00021366547688%2C+-0.8272831141948866+52.000249994609476%2C+-0.8273608982563186+52.00027971842326%2C+-0.8271436393261123+52.00047292273189%29%29&sessionId=24ef1013-c18e-456a-bcc6-e7901ec86270", + "https://api.editor.planx.dev/roads?usrn=1400167" + ], + "designations": [ + { + "value": "tpo", + "intersects": false + }, + { + "value": "flood", + "intersects": false + }, + { + "value": "listed", + "intersects": false + }, + { + "value": "article4", + "intersects": false + }, + { + "value": "monument", + "intersects": false + }, + { + "value": "greenBelt", + "intersects": false + }, + { + "value": "designated", + "intersects": false + }, + { + "value": "nature.SAC", + "intersects": false + }, + { + "value": "nature.SPA", + "intersects": false + }, + { + "value": "nature.ASNW", + "intersects": false + }, + { + "value": "nature.SSSI", + "intersects": false + }, + { + "value": "brownfieldSite", + "intersects": false + }, + { + "value": "designated.WHS", + "intersects": false + }, + { + "value": "registeredPark", + "intersects": false + }, + { + "value": "designated.AONB", + "intersects": false + }, + { + "value": "nature.ramsarSite", + "intersects": false + }, + { + "value": "designated.nationalPark", + "intersects": false + }, + { + "value": "designated.conservationArea", + "intersects": false + }, + { + "value": "designated.nationalPark.broads", + "intersects": false + }, + { + "value": "road.classified", + "intersects": true, + "entities": [ + { + "name": "Stock Lane - Classified Unnumbered", + "source": { + "text": "Ordnance Survey MasterMap Highways" + } + } + ] + } + ] + } + }, + "application": { + "fee": { + "calculated": 578, + "payable": 578, + "category": { + "fourteen": 578 + }, + "exemption": { + "disability": false, + "resubmission": false + }, + "reduction": { + "sports": false, + "parishCouncil": false, + "alternative": false + }, + "reference": { + "govPay": "sandbox-123" + } + }, + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } + }, + "preApp": { + "reference": "0123456789", + "date": "2020-01-01", + "officer": "Pete the Planning Person", + "summary": "Not provided" + } + }, + "proposal": { + "projectType": [ + "changeOfUse" + ], + "description": "Change of use from sui generis (top secret HQ of MI6 Section VIII) to home", + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -0.8271436393261123, + 52.00047292273189 + ], + [ + -0.8268579840660265, + 52.000354853531235 + ], + [ + -0.8271127939224412, + 52.00012862216494 + ], + [ + -0.8273246884346175, + 52.00021366547688 + ], + [ + -0.8272831141948866, + 52.000249994609476 + ], + [ + -0.8273608982563186, + 52.00027971842326 + ], + [ + -0.8271436393261123, + 52.00047292273189 + ] + ] + ] + }, + "properties": null + }, + "area": { + "hectares": 0.069395, + "squareMetres": 693.95 + } + }, + "materials": { + "boundary": "white painted timber" + }, + "units": { + "total": 1, + "residential": [ + { + "type": "house", + "tenure": "selfCustomBuild", + "bedrooms": 4, + "identicalUnits": 1 + } + ] + } + } + }, + "responses": [ + { + "question": "Is the property in Buckinghamshire?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Something else" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "Which of these best describes the use of the property?", + "responses": [ + { + "value": "Institutions and community buildings" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of institutional building is it?", + "responses": [ + { + "value": "Community hall" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "Is the property in a flood zone?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Apply for planning permission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Are you applying on behalf of someone else?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "Private individual" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Your contact details", + "responses": [ + { + "value": "Richard Gambier-Parry 0123456789 richardgambierparry@secretmi6hq.ss" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Is your contact address the same as the property address?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Can a planning officer see the works from public land?", + "responses": [ + { + "value": "Yes, it's visible from the road or somewhere else" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "We may need to visit the site to assess your application. If we do, who should we contact to arrange the visit?", + "responses": [ + { + "value": "Me, the applicant" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "What type of application is this?", + "responses": [ + { + "value": "Planning Permission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "I'm the applicant" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Are you the sole owner of the land?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/13/made" + } + ], + "sectionName": "About you" + } + }, + { + "question": "Does the land have any agricultural tenants?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/13/made" + } + ], + "sectionName": "About you" + } + }, + { + "question": "Certificate of ownership declaration - Certificate A", + "responses": [ + { + "value": "I certify the above" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/13/made" + } + ], + "sectionName": "About you" + } + }, + { + "question": "What type of application are you submitting?", + "responses": [ + { + "value": "Minor development" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Does your project involve changes to an existing roof?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Select the changes involved in the project", + "responses": [ + { + "value": "Change of use" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does your project involve any alterations to ground or floor levels?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "What is the proposed new use?", + "responses": [ + { + "value": "Home" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Have works already started?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "What type of development are you applying for?", + "responses": [ + { + "value": "Minor development" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "What type of application are you submitting?", + "responses": [ + { + "value": "Something else" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Does the development involve any of the following?", + "responses": [ + { + "value": "New or altered vehicle access proposed to or from the public highway" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Do your plans and drawings identify areas to store and aid the collection of waste?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Have arrangements been made for the separate storage and collection of recyclable waste?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the project introduce any external materials?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Do all the new materials match the existing?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "What external materials are you adding?", + "responses": [ + { + "value": "Fences, walls and gates on the boundary" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Describe the existing materials of fences, walls and gates on the boundary of the property", + "responses": [ + { + "value": "black painted timber" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Describe the new materials of fences, walls and gates on the boundary of the property", + "responses": [ + { + "value": "white painted timber" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended)", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Are you providing further details about existing or proposed materials through your plans, drawings, or a design and access statement?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Is the property in Greater London?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Are there existing or are you proposing parking spaces for any of these on the site?", + "responses": [ + { + "value": "Cars" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "What is the number of existing car parking spaces?", + "responses": [ + { + "value": "2" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "What is the proposed total number of car parking spaces?", + "responses": [ + { + "value": "2" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "How is foul sewage to be disposed of?", + "responses": [ + { + "value": "Main sewer" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Are you proposing to connect to the existing drainage system?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Is the project likely to affect biodiversity or geological conservation in any of these areas?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Could the project affect the biodiversity or geology on the development site or land adjacent to or near it?", + "responses": [ + { + "value": "No, definitely not" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Are there any protected trees on the property?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Are there trees or hedges on the proposed development site?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Are there trees or hedges on land adjacent to the proposed development site that could influence the development or might be important as part of the local landscape character?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the proposal involve the need to dispose of trade effluents or waste?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the proposal involve the use or storage of any of the following materials?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "What type of application are you submitting?", + "responses": [ + { + "value": "Something else" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Does your proposal involve the loss, gain or change of use of non-residential floorspace?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the development involve the loss or gain of rooms in hotels or residential institutions and hostels?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the development concern industrial or commercial processes?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Is the proposal a waste management development?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Is the property in a flood zone?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Is the property in flood zone 1?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Is the property in an area vulnerable to flooding?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Is the development within 20 metres of a watercourse (e.g. river, stream or canal)?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Will the development increase the flood risk elsewhere?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "How will surface water be disposed of?", + "responses": [ + { + "value": "Soakaway" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Is the site of the development currently vacant?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Please describe the current use of the site", + "responses": [ + { + "value": "Top secret HQ of MI6 Section VIII" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the project involve any of the following?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Is the property in Greater London?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Does your project result in the gain or loss of any homes?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Which of these does your project involve?", + "responses": [ + { + "value": "Proposing one or more new residential units" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Does the project affect any residential units?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Are there any existing employees on the site or will the development lead to new employees on the site?", + "responses": [ + { + "value": "None of the above" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Are hours of opening relevant to this development?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Is the property in Greater London?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "What type of application is this?", + "responses": [ + { + "value": "Minor development" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Is the property on designated land?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Does the property include any of these?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Does the property include any of these?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Development Management Procedure) (England) 2015 (as amended", + "url": "http://www.legislation.gov.uk/uksi/2015/595/article/7/made" + } + ], + "sectionName": "The project" + } + }, + { + "question": "Heritage Statement needed?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The project" + } + }, + { + "question": "Do you believe that, if the development is granted planning permission, the Biodiversity Gain Condition would apply? ", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Part 2, Schedule 7A of the Town and Country Planning Act 1990", + "url": "https://www.legislation.gov.uk/ukpga/2021/30/schedule/14/enacted" + } + ], + "sectionName": "The project" + } + }, + { + "question": "What are the reasons why the Biodiversity Gain Condition does not apply?", + "responses": [ + { + "value": "Development is below de minimis threshold" + } + ], + "metadata": { + "sectionName": "The project" + } + }, + { + "question": "Did you get any pre-application advice from the council before making this application?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "Your application" + } + }, + { + "question": "What was the name of the planning officer you spoke to?", + "responses": [ + { + "value": "Pete the Planning Person" + } + ], + "metadata": { + "sectionName": "Your application" + } + }, + { + "question": "What was your reference?", + "responses": [ + { + "value": "0123456789" + } + ], + "metadata": { + "sectionName": "Your application" + } + }, + { + "question": "What date was the pre-application advice given on?", + "responses": [ + { + "value": "2020-01-01" + } + ], + "metadata": { + "sectionName": "Your application" + } + }, + { + "question": "What was the pre-application advice you have received?", + "responses": [ + { + "value": "I was recommended to submit a design and access statement due to the resulting access changes." + } + ], + "metadata": { + "sectionName": "Your application" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Full planning permission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "What type of development are you applying for?", + "responses": [ + { + "value": "Minor development" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made" + } + ], + "sectionName": "Your application" + } + }, + { + "question": "Is the property a home?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "What types of changes does the application relate to?", + "responses": [ + { + "value": "Change use" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "What is the new use?", + "responses": [ + { + "value": "Something else" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Check for multiple fees?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Does the proposal include fees in category 1 or 2 to 13?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Another application type" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Is the property a home?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Does the project involve any of these changes?", + "responses": [ + { + "value": "Changing the use of a property" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Does the application qualify for a disability exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Is the site a sports field?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Is the application being made by (or on behalf of) a parish or community council?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/11" + } + ], + "sectionName": "Your application" + } + }, + { + "question": "Are you also submitting another proposal for the same site today?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/schedule/1" + } + ], + "sectionName": "Your application" + } + }, + { + "question": "Does the application qualify for the sports club fee reduction?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Your application" + } + }, + { + "question": "Does the application qualify for the parish council reduction?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 - Regulation 11", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/11" + } + ], + "sectionName": "Your application" + } + }, + { + "question": "Does the application qualify for the alternative application reduction?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012 Chapter 2, Paragraph 10", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/schedule/1" + } + ], + "sectionName": "Your application" + } + }, + { + "question": "What type of development are you applying for?", + "responses": [ + { + "value": "Minor development" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made" + } + ], + "sectionName": "Upload application documents" + } + }, + { + "question": "What type of application are you submitting?", + "responses": [ + { + "value": "Minor" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload application documents" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Buckinghamshire" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Review and confirm" + } + }, + { + "question": "Connections with Buckinghamshire Council", + "responses": [ + { + "value": "None of the above apply to me" + } + ], + "metadata": { + "sectionName": "Review and confirm" + } + }, + { + "question": "I confirm that:", + "responses": [ + { + "value": "The information contained in this application is truthful, accurate and complete, to the best of my knowledge" + } + ], + "metadata": { + "sectionName": "Review and confirm" + } + }, + { + "question": "Does the application qualify for a disability exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and send" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Full planning permission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and send" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Buckinghamshire" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and send" + } + } + ], + "files": [ + { + "name": "https://api.editor.planx.dev/file/private/k9n2v5rn/Site-location-plan-example.pdf", + "type": [ + "relevantInformation" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/vxui6fxw/Rooftype_pyramid%404x.png", + "type": [ + "necessaryInformation" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/a8i079zc/Elevations-best-practice.pdf", + "type": [ + "necessaryInformation" + ] + } + ], + "metadata": { + "id": "24ef1013-c18e-456a-bcc6-e7901ec86270", + "organisation": "BKM", + "submittedAt": "2024-07-02T06:52:42.466Z", + "source": "PlanX", + "service": { + "flowId": "28e258a7-812f-4390-b520-7c00e7f5cd77", + "url": "https://editor.planx.dev/buckinghamshire/apply-for-planning-permission/published", + "files": { + "required": [ + { + "value": "necessaryInformation", + "description": "Information the authority considers necessary for the application" + } + ], + "recommended": [ + { + "value": "relevantInformation", + "description": "Information the applicant considers relevant to the application" + } + ], + "optional": [] + }, + "fee": { + "calculated": [], + "payable": [] + } + }, + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + } +} \ No newline at end of file diff --git a/schemas/prototypeApplication.json b/schemas/prototypeApplication.json index 3bedb56c..c7531bd2 100644 --- a/schemas/prototypeApplication.json +++ b/schemas/prototypeApplication.json @@ -6730,8 +6730,7 @@ "description": "Details of the planning application linked to this application, if applicable", "properties": { "date": { - "format": "date-time", - "type": "string" + "$ref": "#/definitions/Date" }, "localPlanningAuthority": { "type": "string" @@ -7190,8 +7189,7 @@ "description": "Details of the pre-application preceeding this application, if applicable", "properties": { "date": { - "format": "date-time", - "type": "string" + "$ref": "#/definitions/Date" }, "officer": { "type": "string" diff --git a/types/schemas/prototypeApplication/data/ApplicationData.ts b/types/schemas/prototypeApplication/data/ApplicationData.ts index fde784fe..2eac0984 100644 --- a/types/schemas/prototypeApplication/data/ApplicationData.ts +++ b/types/schemas/prototypeApplication/data/ApplicationData.ts @@ -1,4 +1,5 @@ import {PrimaryApplicationType} from '../enums/ApplicationType'; +import {Date} from '../../../shared/utils'; /** * Base type for ApplicationData. Contains all shared properties across all application types From 5ccaad1235c4be0e34df0496e8c8c89a3d3eb6c0 Mon Sep 17 00:00:00 2001 From: Jessica McInchak Date: Wed, 18 Sep 2024 12:40:49 +0200 Subject: [PATCH 08/13] all remaining PA examples --- .../data/landDrainageConsent.ts | 672 ++++++ .../data/listedBuildingConsent.ts | 1116 ++++++++++ .../data/priorApproval/buildHomes.ts | 1758 ++++++++++++++++ .../priorApproval/convertCommercialToHome.ts | 1531 ++++++++++++++ .../data/priorApproval/extendUniversity.ts | 1731 ++++++++++++++++ .../data/priorApproval/largerExtension.ts | 1500 ++++++++++++++ .../data/priorApproval/solarPanels.ts | 1306 ++++++++++++ .../landDrainageConsent.json | 1063 ++++++++++ .../listedBuildingConsent.json | 1126 ++++++++++ .../priorApproval/buildHomes.json | 1832 +++++++++++++++++ .../convertCommercialToHome.json | 1594 ++++++++++++++ .../priorApproval/extendUniversity.json | 1757 ++++++++++++++++ .../priorApproval/largerExtension.json | 1534 ++++++++++++++ .../priorApproval/solarPanels.json | 1492 ++++++++++++++ tests/usage.test.ts | 12 +- 15 files changed, 20023 insertions(+), 1 deletion(-) create mode 100644 examples/prototypeApplication/landDrainageConsent.json create mode 100644 examples/prototypeApplication/listedBuildingConsent.json create mode 100644 examples/prototypeApplication/priorApproval/buildHomes.json create mode 100644 examples/prototypeApplication/priorApproval/convertCommercialToHome.json create mode 100644 examples/prototypeApplication/priorApproval/extendUniversity.json create mode 100644 examples/prototypeApplication/priorApproval/largerExtension.json create mode 100644 examples/prototypeApplication/priorApproval/solarPanels.json diff --git a/examples/prototypeApplication/data/landDrainageConsent.ts b/examples/prototypeApplication/data/landDrainageConsent.ts index e69de29b..62255aa4 100644 --- a/examples/prototypeApplication/data/landDrainageConsent.ts +++ b/examples/prototypeApplication/data/landDrainageConsent.ts @@ -0,0 +1,672 @@ +import {PrototypeApplication} from '../../../types/schemas/prototypeApplication'; + +const version = process.env['VERSION'] || '@next'; + +export const landDrainageConsentPrototype: PrototypeApplication = { + applicationType: 'landDrainageConsent', + data: { + user: { + role: 'applicant', + }, + applicant: { + type: 'company', + name: { + title: 'Bishop', + first: 'Gundulf', + last: 'of Rochester', + }, + email: 'Gundulf1066@email.org', + phone: { + primary: '012345678900', + }, + company: { + name: 'The Normans', + }, + address: { + sameAsSiteAddress: true, + }, + siteContact: { + role: 'applicant', + }, + // ownership: { + // interest: 'other', + // }, + // maintenanceContact: [ + // { + // when: 'duringConstruction', + // address: { + // line1: 'Pevensey Castle', + // town: 'Pevensey', + // postcode: 'PE737SY', + // }, + // contact: { + // name: { + // title: 'Count', + // first: 'Robert', + // last: 'of Mortain', + // }, + // email: 'countbobby@email.org', + // phone: '012345678901', + // }, + // }, + // { + // when: 'afterConstruction', + // address: { + // line1: 'Dover Castle', + // town: 'Dover', + // postcode: 'DO737CA', + // }, + // contact: { + // name: { + // title: 'Baron', + // first: 'Roger', + // last: 'De Leybourne', + // }, + // email: 'baronsarerevolting@email.org', + // phone: '098765432109', + // company: { + // name: "The Barons' Revolt", + // }, + // }, + // }, + // ], + }, + property: { + address: { + latitude: 51.3893641, + longitude: 0.5014056, + x: 574136.97, + y: 168560.23, + title: 'ROCHESTER CASTLE, CASTLE HILL, ROCHESTER', + source: 'Ordnance Survey', + uprn: '000044026089', + usrn: '32100321', + pao: 'ROCHESTER CASTLE', + street: 'CASTLE HILL', + town: 'ROCHESTER', + postcode: 'ME1 1SW', + singleLine: 'ROCHESTER CASTLE, CASTLE HILL, ROCHESTER, MEDWAY, ME1 1SW', + }, + localAuthorityDistrict: ['Medway'], + region: 'South East', + type: 'object.monument.ruin', + planning: { + sources: [ + 'https://api.editor.planx.dev/gis/medway?geom=MULTIPOLYGON+%28%28%280.501333+51.389204%2C+0.501327+51.389199%2C+0.501346+51.38919%2C+0.501352+51.389196%2C+0.5014+51.389172%2C+0.501397+51.389144%2C+0.501411+51.389132%2C+0.501444+51.389121%2C+0.501496+51.389119%2C+0.501434+51.389032%2C+0.501347+51.388881%2C+0.501359+51.388874%2C+0.501334+51.388851%2C+0.501338+51.388839%2C+0.501489+51.388798%2C+0.501726+51.388796%2C+0.502053+51.389053%2C+0.50167+51.389267%2C+0.501967+51.38942%2C+0.501988+51.389411%2C+0.50202+51.389429%2C+0.502181+51.389535%2C+0.502302+51.389655%2C+0.502374+51.38964%2C+0.502416+51.389716%2C+0.502369+51.389725%2C+0.502368+51.389734%2C+0.502346+51.389744%2C+0.502395+51.389854%2C+0.502762+51.389814%2C+0.502818+51.389814%2C+0.50282+51.389997%2C+0.5028+51.390009%2C+0.502456+51.390001%2C+0.502391+51.390006%2C+0.502379+51.390081%2C+0.502361+51.390118%2C+0.50232+51.390174%2C+0.502262+51.390227%2C+0.502188+51.390267%2C+0.502061+51.390275%2C+0.502009+51.390294%2C+0.501308+51.390767%2C+0.501288+51.390844%2C+0.501277+51.390848%2C+0.501089+51.390825%2C+0.501085+51.390821%2C+0.501112+51.390769%2C+0.501038+51.390767%2C+0.501053+51.390696%2C+0.501025+51.390664%2C+0.501099+51.390638%2C+0.501106+51.390622%2C+0.501062+51.390559%2C+0.501022+51.390527%2C+0.50097+51.390464%2C+0.50088+51.390319%2C+0.500776+51.390202%2C+0.500592+51.389857%2C+0.500495+51.389655%2C+0.500548+51.38964%2C+0.500614+51.389683%2C+0.500618+51.389621%2C+0.500633+51.38958%2C+0.500721+51.389489%2C+0.500771+51.389459%2C+0.501262+51.389242%2C+0.501258+51.389238%2C+0.501285+51.389225%2C+0.501279+51.389219%2C+0.501296+51.389212%2C+0.501302+51.389218%2C+0.501333+51.389204%29%29%29&analytics=false&sessionId=8e372199-30e8-4b01-aef0-0745195b0e14', + 'https://api.editor.planx.dev/roads?usrn=32100321', + ], + designations: [ + { + value: 'tpo', + intersects: false, + }, + { + value: 'flood', + intersects: true, + entities: [ + { + name: 'Tidal Models - Risk level 3', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/65104983', + }, + }, + { + name: 'Tidal Models - Risk level 2', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/65230121', + }, + }, + ], + }, + { + value: 'listed', + intersects: true, + entities: [ + { + name: 'ROCHESTER CASTLE', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/31792007', + }, + }, + { + name: 'Rochester Castle', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/42127185', + }, + }, + ], + }, + { + value: 'article4', + intersects: false, + }, + { + value: 'monument', + intersects: true, + entities: [ + { + name: 'Rochester Castle', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/13909855', + }, + }, + ], + }, + { + value: 'greenBelt', + intersects: false, + }, + { + value: 'designated', + intersects: true, + }, + { + value: 'nature.SAC', + intersects: false, + }, + { + value: 'nature.SPA', + intersects: false, + }, + { + value: 'nature.ASNW', + intersects: false, + }, + { + value: 'nature.SSSI', + intersects: false, + }, + { + value: 'flood.zone.1', + intersects: false, + }, + { + value: 'flood.zone.2', + intersects: true, + }, + { + value: 'flood.zone.3', + intersects: true, + }, + { + value: 'brownfieldSite', + intersects: false, + }, + { + value: 'designated.WHS', + intersects: false, + }, + { + value: 'listed.grade.I', + intersects: true, + }, + { + value: 'registeredPark', + intersects: false, + }, + { + value: 'designated.AONB', + intersects: false, + }, + { + value: 'listed.grade.II', + intersects: false, + }, + { + value: 'listed.grade.II*', + intersects: false, + }, + { + value: 'nature.ramsarSite', + intersects: false, + }, + { + value: 'designated.nationalPark', + intersects: false, + }, + { + value: 'designated.conservationArea', + intersects: true, + entities: [ + { + name: 'Polygon', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/44009809', + }, + }, + ], + }, + { + value: 'designated.nationalPark.broads', + intersects: false, + }, + { + value: 'road.classified', + intersects: false, + }, + ], + }, + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'MultiPolygon', + coordinates: [ + [ + [ + [0.501333, 51.389204], + [0.501327, 51.389199], + [0.501346, 51.38919], + [0.501352, 51.389196], + [0.5014, 51.389172], + [0.501397, 51.389144], + [0.501411, 51.389132], + [0.501444, 51.389121], + [0.501496, 51.389119], + [0.501434, 51.389032], + [0.501347, 51.388881], + [0.501359, 51.388874], + [0.501334, 51.388851], + [0.501338, 51.388839], + [0.501489, 51.388798], + [0.501726, 51.388796], + [0.502053, 51.389053], + [0.50167, 51.389267], + [0.501967, 51.38942], + [0.501988, 51.389411], + [0.50202, 51.389429], + [0.502181, 51.389535], + [0.502302, 51.389655], + [0.502374, 51.38964], + [0.502416, 51.389716], + [0.502369, 51.389725], + [0.502368, 51.389734], + [0.502346, 51.389744], + [0.502395, 51.389854], + [0.502762, 51.389814], + [0.502818, 51.389814], + [0.50282, 51.389997], + [0.5028, 51.390009], + [0.502456, 51.390001], + [0.502391, 51.390006], + [0.502379, 51.390081], + [0.502361, 51.390118], + [0.50232, 51.390174], + [0.502262, 51.390227], + [0.502188, 51.390267], + [0.502061, 51.390275], + [0.502009, 51.390294], + [0.501308, 51.390767], + [0.501288, 51.390844], + [0.501277, 51.390848], + [0.501089, 51.390825], + [0.501085, 51.390821], + [0.501112, 51.390769], + [0.501038, 51.390767], + [0.501053, 51.390696], + [0.501025, 51.390664], + [0.501099, 51.390638], + [0.501106, 51.390622], + [0.501062, 51.390559], + [0.501022, 51.390527], + [0.50097, 51.390464], + [0.50088, 51.390319], + [0.500776, 51.390202], + [0.500592, 51.389857], + [0.500495, 51.389655], + [0.500548, 51.38964], + [0.500614, 51.389683], + [0.500618, 51.389621], + [0.500633, 51.38958], + [0.500721, 51.389489], + [0.500771, 51.389459], + [0.501262, 51.389242], + [0.501258, 51.389238], + [0.501285, 51.389225], + [0.501279, 51.389219], + [0.501296, 51.389212], + [0.501302, 51.389218], + [0.501333, 51.389204], + ], + ], + ], + }, + properties: { + name: '', + entity: 12000665421, + prefix: 'title-boundary', + dataset: 'title-boundary', + 'end-date': '', + typology: 'geography', + reference: '45856207', + 'entry-date': '2024-05-06', + 'start-date': '2010-06-08', + 'organisation-entity': '13', + }, + }, + area: { + hectares: 1.684864, + squareMetres: 16848.64, + }, + }, + }, + application: { + fee: { + calculated: 200, + payable: 200, + exemption: { + disability: false, + resubmission: false, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + reference: { + govPay: 'sandbox-456', + }, + }, + declaration: { + accurate: true, + connection: { + value: 'none', + }, + }, + preApp: { + reference: '24/12345/PRE', + date: '2024-06-08', + officer: 'Unknown', + summary: 'Not provided', + }, + planningApp: { + reference: '24/12345/FUL', + date: '2024-06-28', + localPlanningAuthority: 'Medway', + }, + }, + proposal: { + projectType: ['alter'], + description: + 'Upgrading of our drawbridge as it needs a bit of work - retarring, sharpen the spikes, derust the chains etc. We will need to access the lifting gear which is situated in the moat so will need to temporarily divert the water ', + date: { + start: '2024-07-08', + completion: '2024-08-08', + }, + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'MultiPolygon', + coordinates: [ + [ + [ + [0.501333, 51.389204], + [0.501327, 51.389199], + [0.501346, 51.38919], + [0.501352, 51.389196], + [0.5014, 51.389172], + [0.501397, 51.389144], + [0.501411, 51.389132], + [0.501444, 51.389121], + [0.501496, 51.389119], + [0.501434, 51.389032], + [0.501347, 51.388881], + [0.501359, 51.388874], + [0.501334, 51.388851], + [0.501338, 51.388839], + [0.501489, 51.388798], + [0.501726, 51.388796], + [0.502053, 51.389053], + [0.50167, 51.389267], + [0.501967, 51.38942], + [0.501988, 51.389411], + [0.50202, 51.389429], + [0.502181, 51.389535], + [0.502302, 51.389655], + [0.502374, 51.38964], + [0.502416, 51.389716], + [0.502369, 51.389725], + [0.502368, 51.389734], + [0.502346, 51.389744], + [0.502395, 51.389854], + [0.502762, 51.389814], + [0.502818, 51.389814], + [0.50282, 51.389997], + [0.5028, 51.390009], + [0.502456, 51.390001], + [0.502391, 51.390006], + [0.502379, 51.390081], + [0.502361, 51.390118], + [0.50232, 51.390174], + [0.502262, 51.390227], + [0.502188, 51.390267], + [0.502061, 51.390275], + [0.502009, 51.390294], + [0.501308, 51.390767], + [0.501288, 51.390844], + [0.501277, 51.390848], + [0.501089, 51.390825], + [0.501085, 51.390821], + [0.501112, 51.390769], + [0.501038, 51.390767], + [0.501053, 51.390696], + [0.501025, 51.390664], + [0.501099, 51.390638], + [0.501106, 51.390622], + [0.501062, 51.390559], + [0.501022, 51.390527], + [0.50097, 51.390464], + [0.50088, 51.390319], + [0.500776, 51.390202], + [0.500592, 51.389857], + [0.500495, 51.389655], + [0.500548, 51.38964], + [0.500614, 51.389683], + [0.500618, 51.389621], + [0.500633, 51.38958], + [0.500721, 51.389489], + [0.500771, 51.389459], + [0.501262, 51.389242], + [0.501258, 51.389238], + [0.501285, 51.389225], + [0.501279, 51.389219], + [0.501296, 51.389212], + [0.501302, 51.389218], + [0.501333, 51.389204], + ], + ], + ], + }, + properties: { + name: '', + entity: 12000665421, + prefix: 'title-boundary', + dataset: 'title-boundary', + 'end-date': '', + typology: 'geography', + reference: '45856207', + 'entry-date': '2024-05-06', + 'start-date': '2010-06-08', + 'organisation-entity': '13', + planx_user_action: 'Accepted the title boundary', + }, + }, + area: { + hectares: 1.684864, + squareMetres: 16848.64, + }, + }, + watercourse: { + name: 'Rochester Castle Moat', + type: 'ditch', + }, + structures: { + type: 'bridge', + total: 4, + permanent: { + count: 1, + }, + temporary: { + count: 3, + }, + }, + environmentalImpactDescription: + 'These are the environmental impact of the works to be undertaken: A, B, C. And this is how we are mitigating them: 1, 2, 3', + }, + }, + responses: [ + { + question: 'What type of property is it?', + responses: [ + { + value: 'Something else', + }, + ], + metadata: { + autoAnswered: true, + }, + }, + { + question: 'Which of these best describes the use of the property?', + responses: [ + { + value: 'Other', + }, + ], + metadata: { + autoAnswered: true, + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Historic site', + }, + ], + metadata: {}, + }, + { + question: + 'Did you get any pre-application advice from the council before making this application?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: {}, + }, + { + question: 'What was the name of the planning officer you spoke to?', + responses: [ + { + value: 'unknown', + }, + ], + metadata: {}, + }, + { + question: 'What was your reference?', + responses: [ + { + value: '24/12345/PRE', + }, + ], + metadata: {}, + }, + { + question: 'What date was the pre-application advice given on?', + responses: [ + { + value: '2024-06-08', + }, + ], + metadata: {}, + }, + { + question: 'What was the pre-application advice you have received?', + responses: [ + { + value: + 'this is the advice received. this is the advice received.this is the advice received.this is the advice received.this is the advice received.', + }, + ], + metadata: {}, + }, + { + question: 'Which Local Planning authority is it?', + responses: [ + { + value: 'Medway', + }, + ], + metadata: { + autoAnswered: true, + }, + }, + { + question: 'Connections with Medway Council', + responses: [ + { + value: 'None of the above apply to me', + }, + ], + metadata: {}, + }, + { + question: 'I confirm that:', + responses: [ + { + value: + 'The information contained in this application is truthful, accurate and complete, to the best of my knowledge', + }, + ], + metadata: {}, + }, + ], + files: [ + { + name: 'https://api.editor.planx.dev/file/private/40z9r39r/test%20document.pdf', + type: ['relevantInformation'], + }, + ], + metadata: { + id: '8e372199-30e8-4b01-aef0-0745195b0e14', + organisation: 'MDW', + submittedAt: '2024-07-11T08:28:22.493Z', + source: 'PlanX', + service: { + flowId: '5aab3466-8fb0-4e73-b51d-347d61ad5547', + url: 'https://editor.planx.dev/medway/apply-for-land-drainage-consent-copy/published', + files: { + required: [ + { + value: 'necessaryInformation', + description: + 'Information the authority considers necessary for the application', + }, + ], + recommended: [ + { + value: 'relevantInformation', + description: + 'Information the applicant considers relevant to the application', + }, + ], + optional: [], + }, + fee: { + calculated: [], + payable: [], + }, + }, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + }, +}; diff --git a/examples/prototypeApplication/data/listedBuildingConsent.ts b/examples/prototypeApplication/data/listedBuildingConsent.ts index e69de29b..acbbc5fd 100644 --- a/examples/prototypeApplication/data/listedBuildingConsent.ts +++ b/examples/prototypeApplication/data/listedBuildingConsent.ts @@ -0,0 +1,1116 @@ +import {PrototypeApplication} from '../../../types/schemas/prototypeApplication'; + +const version = process.env['VERSION'] || '@next'; + +export const listedBuildingConsentPrototype: PrototypeApplication = { + applicationType: 'listed', + data: { + user: { + role: 'applicant', + }, + applicant: { + type: 'company', + name: { + first: 'Jim', + last: 'Henson', + }, + email: 'jim@muppets.org', + phone: { + primary: '0123456789', + }, + company: { + name: 'The Jim Henson Company', + }, + address: { + sameAsSiteAddress: true, + }, + siteContact: { + role: 'other', + name: 'Gonzo The Great', + email: 'gonzo@muppets.org', + phone: '987654321', + }, + // ownership: { + // interest: 'owner.sole', + // certificate: 'b', + // noticeGiven: true, + // agriculturalTenants: true, + // ownersKnown: 'all', + // owners: [ + // { + // name: 'Rowlf the Dog', + // address: { + // line1: '123 Sesame Street', + // town: 'New York City', + // postcode: '10023', + // country: 'USA', + // }, + // noticeDate: '2024-04-01', + // }, + // { + // name: 'Rizzo the Rat', + // address: { + // line1: '123 Sesame Street', + // town: 'New York City', + // postcode: '10023', + // country: 'USA', + // }, + // noticeDate: '2024-04-01', + // }, + // ], + // declaration: { + // accurate: true, + // }, + // }, + }, + property: { + address: { + latitude: 51.554865, + longitude: -0.1711756, + x: 526885, + y: 185582, + title: '50, DOWNSHIRE HILL, LONDON', + source: 'Ordnance Survey', + uprn: '000005023627', + usrn: '20400184', + pao: '50', + street: 'DOWNSHIRE HILL', + town: 'LONDON', + postcode: 'NW3 1PA', + singleLine: '50, DOWNSHIRE HILL, LONDON, CAMDEN, NW3 1PA', + }, + localAuthorityDistrict: ['Camden'], + region: 'London', + type: 'residential.dwelling.flat', + planning: { + sources: [ + 'https://api.editor.planx.dev/gis/camden?geom=MULTIPOLYGON+%28%28%28-0.171042+51.554871%2C+-0.171026+51.554883%2C+-0.171194+51.554968%2C+-0.171312+51.554881%2C+-0.171287+51.554867%2C+-0.171275+51.554876%2C+-0.17114+51.554804%2C+-0.171042+51.554871%29%29%29&analytics=false&sessionId=0f2abdbd-2ec5-4918-979b-123bd856b94f', + 'https://api.editor.planx.dev/roads?usrn=20400184', + ], + designations: [ + { + value: 'tpo', + intersects: false, + }, + { + value: 'flood', + intersects: false, + }, + { + value: 'listed', + intersects: true, + }, + { + value: 'article4', + intersects: true, + entities: [ + { + name: 'Basements', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/7010002613', + }, + }, + ], + }, + { + value: 'monument', + intersects: false, + }, + { + value: 'greenBelt', + intersects: false, + }, + { + value: 'designated', + intersects: true, + }, + { + value: 'nature.SAC', + intersects: false, + }, + { + value: 'nature.SPA', + intersects: false, + }, + { + value: 'nature.ASNW', + intersects: false, + }, + { + value: 'nature.SSSI', + intersects: false, + }, + { + value: 'brownfieldSite', + intersects: false, + }, + { + value: 'designated.WHS', + intersects: false, + }, + { + value: 'listed.grade.I', + intersects: false, + }, + { + value: 'registeredPark', + intersects: false, + }, + { + value: 'designated.AONB', + intersects: false, + }, + { + value: 'listed.grade.II', + intersects: true, + entities: [ + { + name: 'NUMBERS 50 AND 51 AND ATTACHED AREA WALLS AND BALUSTRADE', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/31535771', + }, + }, + { + name: '(South side) Nos.50 AND 51 and attached area walls & balustrade', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/42115931', + }, + }, + ], + }, + { + value: 'listed.grade.II*', + intersects: false, + }, + { + value: 'nature.ramsarSite', + intersects: false, + }, + { + value: 'designated.nationalPark', + intersects: false, + }, + { + value: 'designated.conservationArea', + intersects: true, + entities: [ + { + name: 'Hampstead', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/44009659', + }, + }, + ], + }, + { + value: 'designated.nationalPark.broads', + intersects: false, + }, + { + value: 'road.classified', + intersects: false, + }, + ], + }, + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'MultiPolygon', + coordinates: [ + [ + [ + [-0.171042, 51.554871], + [-0.171026, 51.554883], + [-0.171194, 51.554968], + [-0.171312, 51.554881], + [-0.171287, 51.554867], + [-0.171275, 51.554876], + [-0.17114, 51.554804], + [-0.171042, 51.554871], + ], + ], + ], + }, + properties: { + name: '', + entity: 12000495084, + prefix: 'title-boundary', + dataset: 'title-boundary', + 'end-date': '', + typology: 'geography', + reference: '48946667', + 'entry-date': '2023-12-12', + 'start-date': '2010-12-02', + 'organisation-entity': '13', + }, + }, + area: { + hectares: 0.017536000000000003, + squareMetres: 175.36, + }, + }, + }, + application: { + fee: { + notApplicable: true, + }, + declaration: { + accurate: true, + connection: { + value: 'none', + }, + }, + preApp: { + reference: '123-TEST-REF', + date: '2024-01-15', + officer: 'Miss Piggy', + summary: 'Not provided', + }, + }, + proposal: { + projectType: [ + 'internal', + 'alter.changeOfMaterials.floors', + 'alter.changeOfMaterials.internalWalls', + ], + description: 'Remove an internal wall and construct a puppet theatre', + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'MultiPolygon', + coordinates: [ + [ + [ + [-0.171042, 51.554871], + [-0.171026, 51.554883], + [-0.171194, 51.554968], + [-0.171312, 51.554881], + [-0.171287, 51.554867], + [-0.171275, 51.554876], + [-0.17114, 51.554804], + [-0.171042, 51.554871], + ], + ], + ], + }, + properties: { + name: '', + entity: 12000495084, + prefix: 'title-boundary', + dataset: 'title-boundary', + 'end-date': '', + typology: 'geography', + reference: '48946667', + 'entry-date': '2023-12-12', + 'start-date': '2010-12-02', + 'organisation-entity': '13', + planx_user_action: 'Accepted the title boundary', + }, + }, + area: { + hectares: 0.017536000000000003, + squareMetres: 175.36, + }, + }, + }, + }, + responses: [ + { + question: 'Is the property in Camden?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Flat (or building containing flats)', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'Is it a listed building?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Residential', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Select the types of changes involved in the project', + responses: [ + { + value: 'Carry out internal work', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What does the project involve?', + responses: [ + { + value: 'Internal works', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Do the internal works involve any of these types of changes?', + responses: [ + { + value: 'Demolishing internal walls', + }, + ], + metadata: { + policyRefs: [ + { + text: 'National Planning Policy Framework, Section 16', + url: 'https://www.gov.uk/guidance/national-planning-policy-framework/16-conserving-and-enhancing-the-historic-environment', + }, + { + text: 'Planning (Listed Buildings and Conservation Areas) Act 1990, section 8', + url: 'https://www.legislation.gov.uk/ukpga/1990/9/section/8', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Does the project introduce new materials?', + responses: [ + { + value: 'Some new materials, some to match the existing', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Select where the project introduces new materials', + responses: [ + { + value: 'Floors', + }, + { + value: 'Internal walls', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Floors: describe the existing and new materials', + responses: [ + { + value: + "The existing rooms have original wide oak floorboards, but I'm going to patch the area where the walls are coming down with narrow new oak boards.", + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Is it a repair, replacement or new flooring?', + responses: [ + { + value: 'Something else', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Internal walls: describe the existing and new materials', + responses: [ + { + value: + "The existing walls are off-white plaster. After removing a dividing internal wall, we'll patch and paint the new merged room Kermit green.", + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Is it an ecclesiastical building?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'What grading is the building?', + responses: [ + { + value: 'Unsure', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: + 'Is the building subject to a Certificate of Immunity from Listing?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Section 6 of the Planning (Listed Buildings and Conservation Areas) Act 1990', + url: 'https://www.legislation.gov.uk/ukpga/1990/9/section/6', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the property in a conservation area?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'How do you want to submit this information?', + responses: [ + { + value: 'Upload a document', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Apply for listed building consent', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'Are you applying on behalf of someone else?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Which of these best describes you?', + responses: [ + { + value: 'Company', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Your contact details', + responses: [ + { + value: 'Jim Henson The Jim Henson Company 0123456789 jim@muppets.org', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Is your contact address the same as the property address?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Can a planning officer see the works from public land?', + responses: [ + { + value: "Yes, it's visible from the road or somewhere else", + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: + 'We may need to visit the site to assess your application. If we do, who should we contact to arrange the visit?', + responses: [ + { + value: 'Someone else', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: + 'Contact details of the person we should contact about a site visit', + responses: [ + { + value: + 'Gonzo The Great The Jim Henson Company 987654321 gonzo@muppets.org', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'What type of application is this?', + responses: [ + { + value: 'LBC', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'Which of these best describes you?', + responses: [ + { + value: "I'm the applicant", + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'Are you the sole owner of the land?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/13/made', + }, + ], + sectionName: 'About you', + }, + }, + { + question: 'Does the land have any agricultural tenants?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/13/made', + }, + ], + sectionName: 'About you', + }, + }, + { + question: + 'Do you know the names and addresses of all agricultural tenants?', + responses: [ + { + value: 'Yes, all of them', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: + 'Have you given requisite notice to all the agricultural tenants?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/13/made', + }, + ], + sectionName: 'About you', + }, + }, + { + question: 'How many owners or agricultural tenants have been notified?', + responses: [ + { + value: '2', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Full name of the first notified owner or agricultural tenant', + responses: [ + { + value: 'Rowlf the Dog', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Address of the first notified owner or agricultural tenant', + responses: [ + { + value: '123 Sesame Street, New York City, 10023, USA', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: + 'Date on which notice was given to the first owner or agricultural tenant', + responses: [ + { + value: '2024-04-01', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Full name of the second notified owner or agricultural tenant', + responses: [ + { + value: 'Rizzo the Rat', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Address of the second notified owner or agricultural tenant', + responses: [ + { + value: '123 Sesame Street, New York City, 10023, USA', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: + 'Date on which notice was given to the second owner or agricultural tenant', + responses: [ + { + value: '2024-04-01', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Certificate of ownership declaration - Certificate B', + responses: [ + { + value: 'I certify that the above is true', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/13/made', + }, + { + text: 'Schedule 2 to the Town and Country Planning (Development Management Procedure (England) (Order) 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/595/schedule/2/made', + }, + ], + sectionName: 'About you', + }, + }, + { + question: + 'Did you get any pre-application advice from the council before making this application?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'What was the name of the planning officer you spoke to?', + responses: [ + { + value: 'Miss Piggy', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'What was your reference?', + responses: [ + { + value: '123-TEST-REF', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'What date was the pre-application advice given on?', + responses: [ + { + value: '2024-01-15', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Listed Building Consent', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Listed building consent', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'What changes does the project involve?', + responses: [ + { + value: 'Alter', + }, + { + value: 'Internal works', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Upload application documents', + }, + }, + { + question: 'Where do you want to alter the property?', + responses: [ + { + value: 'Inside the listed building', + }, + ], + metadata: { + sectionName: 'Upload application documents', + }, + }, + { + question: 'Does the project involve any of these alterations?', + responses: [ + { + value: 'Apply plaster or paint', + }, + { + value: 'Remove internal wall', + }, + { + value: 'Replace joinery, including internal doors', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Section 7 of the Planning (Listed Buildings and Conservation Areas) Act 1990', + url: 'https://www.legislation.gov.uk/ukpga/1990/9/section/8', + }, + ], + sectionName: 'Upload application documents', + }, + }, + { + question: 'Is the wall load bearing?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'Upload application documents', + }, + }, + { + question: 'Do the internal works involve any of these?', + responses: [ + { + value: 'Demolishing internal walls', + }, + ], + metadata: { + sectionName: 'Upload application documents', + }, + }, + { + question: 'Is this for submission or information only?', + responses: [ + { + value: 'Submission', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Upload application documents', + }, + }, + { + question: 'Which Local Planning authority is it?', + responses: [ + { + value: 'Camden', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Review the application', + }, + }, + { + question: 'Connections with London Borough of Camden', + responses: [ + { + value: 'None of the above apply to me', + }, + ], + metadata: { + sectionName: 'Review the application', + }, + }, + { + question: 'I confirm that:', + responses: [ + { + value: + 'The information contained in this application is truthful, accurate and complete, to the best of my knowledge', + }, + ], + metadata: { + sectionName: 'Review the application', + }, + }, + { + question: 'Which Local Planning authority is it?', + responses: [ + { + value: 'Camden', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Submit the appliction', + }, + }, + ], + files: [ + { + name: 'https://api.editor.planx.dev/file/private/c6mo049s/other.pdf', + type: ['otherDrawing', 'visualisations'], + }, + { + name: 'https://api.editor.planx.dev/file/private/n0akv537/myPlans.pdf', + type: [ + 'joinerySections', + 'sitePlan.existing', + 'sitePlan.proposed', + 'floorPlan.existing', + 'floorPlan.proposed', + ], + }, + { + name: 'https://api.editor.planx.dev/file/private/yencabq4/heritageStatement.pdf', + type: ['heritageStatement'], + }, + { + name: 'https://api.editor.planx.dev/file/private/p2ryla48/elevations.pdf', + type: ['elevations.existing', 'elevations.proposed'], + }, + ], + metadata: { + id: '0f2abdbd-2ec5-4918-979b-123bd856b94f', + organisation: 'CMD', + submittedAt: '2024-04-30T19:13:34.288Z', + source: 'PlanX', + service: { + flowId: '2677568c-00d2-4391-98ea-f34a4e743437', + url: 'https://www.editor.planx.uk/camden/apply-for-listed-building-consent/published', + files: { + required: [ + { + value: 'sitePlan.existing', + description: 'Site plan - existing', + }, + { + value: 'sitePlan.proposed', + description: 'Site plan - proposed', + }, + { + value: 'elevations.existing', + description: 'Elevations - existing', + }, + { + value: 'elevations.proposed', + description: 'Elevations - proposed', + }, + { + value: 'floorPlan.existing', + description: 'Floor plan - existing', + }, + { + value: 'floorPlan.proposed', + description: 'Floor plan - proposed', + }, + { + value: 'joinerySections', + description: 'Joinery section report', + }, + ], + recommended: [ + { + value: 'heritageStatement', + description: 'Heritage Statement', + }, + ], + optional: [ + { + value: 'photographs.existing', + description: 'Photographs - existing', + }, + { + value: 'otherDrawing', + description: 'Other - drawing', + }, + { + value: 'otherDocument', + description: 'Other - document', + }, + { + value: 'visualisations', + description: 'Visualisations', + }, + ], + }, + fee: { + notApplicable: true, + }, + }, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + }, +}; diff --git a/examples/prototypeApplication/data/priorApproval/buildHomes.ts b/examples/prototypeApplication/data/priorApproval/buildHomes.ts index e69de29b..33fbc461 100644 --- a/examples/prototypeApplication/data/priorApproval/buildHomes.ts +++ b/examples/prototypeApplication/data/priorApproval/buildHomes.ts @@ -0,0 +1,1758 @@ +import {PrototypeApplication} from '../../../../types/schemas/prototypeApplication'; + +const version = process.env['VERSION'] || '@next'; + +export const priorApprovalBuildHomesPrototype: PrototypeApplication = { + applicationType: 'pa.part20.classAB', + data: { + user: { + role: 'applicant', + }, + applicant: { + type: 'company', + name: { + first: 'Enid', + last: 'Blyton', + }, + email: 'ennyblizzle@email.org', + phone: { + primary: '098765432109', + }, + address: { + sameAsSiteAddress: true, + }, + siteContact: { + role: 'applicant', + }, + }, + property: { + address: { + latitude: 51.6154485, + longitude: -0.6463076, + x: 493822, + y: 191603, + title: '7, BLYTON CLOSE, BEACONSFIELD', + source: 'Ordnance Survey', + uprn: '100080482163', + usrn: '35200844', + pao: '7', + street: 'BLYTON CLOSE', + town: 'BEACONSFIELD', + postcode: 'HP9 2LX', + singleLine: '7, BLYTON CLOSE, BEACONSFIELD, BUCKINGHAMSHIRE, HP9 2LX', + }, + localAuthorityDistrict: ['Buckinghamshire', 'South Bucks'], + region: 'South East', + type: 'commercial.office', + planning: { + sources: [ + 'https://api.editor.planx.dev/gis/buckinghamshire?geom=MULTIPOLYGON+%28%28%28-0.646634+51.615571%2C+-0.646629+51.615545%2C+-0.646505+51.615512%2C+-0.646452+51.61522%2C+-0.646313+51.61523%2C+-0.646304+51.615207%2C+-0.645951+51.615311%2C+-0.646049+51.615615%2C+-0.646634+51.615571%29%29%29&analytics=false&sessionId=312c81fd-7368-4f0b-92d8-91de4033312a', + 'https://api.editor.planx.dev/roads?usrn=35200844', + ], + designations: [ + { + value: 'tpo', + intersects: false, + }, + { + value: 'flood', + intersects: false, + }, + { + value: 'listed', + intersects: false, + }, + { + value: 'article4', + intersects: false, + }, + { + value: 'monument', + intersects: false, + }, + { + value: 'greenBelt', + intersects: false, + }, + { + value: 'designated', + intersects: false, + }, + { + value: 'nature.SAC', + intersects: false, + }, + { + value: 'nature.SPA', + intersects: false, + }, + { + value: 'nature.ASNW', + intersects: false, + }, + { + value: 'nature.SSSI', + intersects: false, + }, + { + value: 'brownfieldSite', + intersects: false, + }, + { + value: 'designated.WHS', + intersects: false, + }, + { + value: 'registeredPark', + intersects: false, + }, + { + value: 'designated.AONB', + intersects: false, + }, + { + value: 'nature.ramsarSite', + intersects: false, + }, + { + value: 'designated.nationalPark', + intersects: false, + }, + { + value: 'designated.conservationArea', + intersects: false, + }, + { + value: 'designated.nationalPark.broads', + intersects: false, + }, + { + value: 'road.classified', + intersects: false, + }, + ], + }, + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'MultiPolygon', + coordinates: [ + [ + [ + [-0.646634, 51.615571], + [-0.646629, 51.615545], + [-0.646505, 51.615512], + [-0.646452, 51.61522], + [-0.646313, 51.61523], + [-0.646304, 51.615207], + [-0.645951, 51.615311], + [-0.646049, 51.615615], + [-0.646634, 51.615571], + ], + ], + ], + }, + properties: { + name: '', + entity: 12000048511, + prefix: 'title-boundary', + dataset: 'title-boundary', + 'end-date': '', + typology: 'geography', + reference: '44530928', + 'entry-date': '2024-05-06', + 'start-date': '2010-04-21', + 'organisation-entity': '13', + }, + }, + area: { + hectares: 0.138418, + squareMetres: 1384.18, + }, + }, + }, + application: { + fee: { + calculated: 4510, + payable: 0, + exemption: { + disability: false, + resubmission: true, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + }, + declaration: { + accurate: true, + connection: { + value: 'none', + }, + }, + }, + proposal: { + projectType: ['new.residential.dwelling'], + description: + 'The addition of homes as upper storeys to the existing commercial premises.', + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'MultiPolygon', + coordinates: [ + [ + [ + [-0.646634, 51.615571], + [-0.646629, 51.615545], + [-0.646505, 51.615512], + [-0.646452, 51.61522], + [-0.646313, 51.61523], + [-0.646304, 51.615207], + [-0.645951, 51.615311], + [-0.646049, 51.615615], + [-0.646634, 51.615571], + ], + ], + ], + }, + properties: { + name: '', + entity: 12000048511, + prefix: 'title-boundary', + dataset: 'title-boundary', + 'end-date': '', + typology: 'geography', + reference: '44530928', + 'entry-date': '2024-05-06', + 'start-date': '2010-04-21', + 'organisation-entity': '13', + planx_user_action: 'Accepted the title boundary', + }, + }, + area: { + hectares: 0.138418, + squareMetres: 1384.18, + }, + }, + newDwellings: { + newBuild: {count: 10}, + }, + }, + }, + preAssessment: [ + { + value: 'Planning permission / Prior approval', + description: + 'It looks like the proposed changes do not require planning permission, however the applicant must apply for Prior Approval before proceeding.', + }, + ], + responses: [ + { + question: 'Is the property in Buckinghamshire?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Something else', + }, + ], + metadata: { + sectionName: 'The property', + }, + }, + { + question: 'Which of these best describes the use of the property?', + responses: [ + { + value: 'Commercial', + }, + ], + metadata: { + sectionName: 'The property', + }, + }, + { + question: 'What type of commercial property is it?', + responses: [ + { + value: 'Office', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'Has work already started?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Town and Country Planning Act 1990, Part III, Section 55', + url: 'https://www.legislation.gov.uk/ukpga/1990/8/section/55', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Commercial building', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Is the building detached?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'How was the building was converted to a home?', + responses: [ + { + value: 'With planning permission', + metadata: { + flags: ['Planning permission / Permitted development'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AA', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the property on designated land?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the property a site of special scientific interest?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is any part of the property listed?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is any part of the property a scheduled monument?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB.', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the property in a safety hazard area?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the property in a military explosives storage area?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) (Amendment) (No. 2) Order 2020 Schedule 2, Part 1, Class AB.1 (p)', + url: 'https://www.legislation.gov.uk/uksi/2020/755/pdfs/uksi_20200755_en.pdf', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the property within 3km of the perimeter of an aerodrome?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Has the original building has already had storeys added to it?', + responses: [ + { + value: 'No', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'How many uses did the building have on 5 March 2018?', + responses: [ + { + value: '1 use', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'How was the building used on 5 March 2018?', + responses: [ + { + value: 'Offices', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB.', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'When was the building constructed?', + responses: [ + { + value: 'Between 1 July 1948 and 5 March 2018', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'How many storeys does the existing building have?', + responses: [ + { + value: '2 or more storeys', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'How many new storeys do you want to add?', + responses: [ + { + value: '1 or 2', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'After the works, how much higher is the building?', + responses: [ + { + value: '7m or less', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Are the new homes added onto the main part of the building?', + responses: [ + { + value: 'Yes', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What is the floor to ceiling height of the new storeys?', + responses: [ + { + value: 'The same as those in the existing building', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Are the new storeys more than 3m high?', + responses: [ + { + value: 'No, 3m or less', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-a-new-dwellinghouses-on-detached-blocks-of-flats', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'After the works, is the building higher than others in the row?', + responses: [ + { + value: 'Yes, higher', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'After the changes, how much higher is the extended building compared to others in its row?', + responses: [ + { + value: '3.5m or less', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the highest part of the new roof more than 18m high?', + responses: [ + { + value: 'No, it is 18m or less', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Are the new homes flats?', + responses: [ + { + value: 'Yes', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Does the project involve any engineering works to the existing building?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What do the engineering works involve?', + responses: [ + { + value: 'Strengthening existing walls', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + { + value: 'Strengthening existing foundations', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Do the works result in visible support structures on the outside of the building?', + responses: [ + { + value: 'No', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Are the engineering works within the curtilage of the building?', + responses: [ + { + value: 'Yes', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Do the engineering operations include other changes to the building?', + responses: [ + { + value: + 'No, the engineering operations are only to add new storeys to the building', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) (Amendment) (No. 2) Order 2020 Schedule 2, Part 20, Class AC', + url: 'https://www.legislation.gov.uk/uksi/2020/755/pdfs/uksi_20200755_en.pdf', + }, + { + text: 'The Town and Country Planning (General Permitted Development) (England) (Amendment) (No. 2) Order 2020 Schedule 2, Part 20, Class AD', + url: 'https://www.legislation.gov.uk/uksi/2020/755/pdfs/uksi_20200755_en.pdf', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Does the new storey have side-facing windows or rooflights?', + responses: [ + { + value: 'No', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Does the project include new external staircases or doors?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Does the external staircases and doors extend beyond the curtilage of the existing building?', + responses: [ + { + value: 'No', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Does the project involve adding new storage, waste or other ancillary features?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Are the facilities entirely within the curtilage of the building?', + responses: [ + { + value: 'Yes', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Where are the facilities located?', + responses: [ + { + value: 'To the rear of the building', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB.', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Is there any plant equipment on the roof of the existing building?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Is there any new plant equipment on the roof of the new storeys?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Do any new homes have a floor area of less than 37m²?', + responses: [ + { + value: 'No', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Section 3, paragraph 9A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/article/3', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Do all new homes meet the nationally described space standards?', + responses: [ + { + value: 'Yes', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Section 3, 9A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/article/3', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Does the design seek to minimise negative impacts on light, views and privacy for neighbours as far as possible?', + responses: [ + { + value: 'Yes', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB.', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Office space', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'What type of application is being applied for?', + responses: [ + { + value: 'Part 20 Class AB', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'What type of application is being applied for?', + responses: [ + { + value: 'Part 20 Class AB', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Is the property subject to any Article 4 directions?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Build homes on an adjoining commercial or mixed use building', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'What type or prior approval application is it?', + responses: [ + { + value: 'Build homes on an adjoining commercial or mixed use building', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: + 'Describe any potential impacts on adjoining properties and how these will be mitigated', + responses: [ + { + value: + 'These are the potential impacts on the adjoining properties:\n1\n2\n3\nAnd this is how they are to be mitigated:\nA\nB\nC\n', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Is the property located near any air traffic or defence assets?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Describe the impact of the extended building on any protected view.', + responses: [ + { + value: + 'This is the impact of the extended building on any protected view.', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'How many new homes are being build?', + responses: [ + { + value: '10', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Has any part of the site been identified as contaminated land?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Was the building previously used for any of these?', + responses: [ + { + value: 'None of these', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Is the building in a flood risk area?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'You need to submit a Noise Assessment', + responses: [ + { + value: 'Upload a document later', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'You need to submit a Transport Assessment', + responses: [ + { + value: 'Upload a document later', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'The project will result in an increase in the number of people living in the area. What impacts will this have on businesses and new residents, and how will this be mitigated?', + responses: [ + { + value: + 'Here are the impacts that the development will have:\n1\n2\n3\nAnd these are the mitigation measures:\nA\nB\nC', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Describe the impact of the project on residential amenity and facilities', + responses: [ + { + value: + 'the impact of the project on residential amenity and facilities. the impact of the project on residential amenity and facilities.the impact of the project on residential amenity and facilities', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Apply for prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'Are you applying on behalf of someone else?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Which of these best describes you?', + responses: [ + { + value: 'Company', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Your contact details', + responses: [ + { + value: 'Enid Blyton 098765432109 ennyblizzle@email.org', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Is your contact address the same as the property address?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Can a planning officer see the works from public land?', + responses: [ + { + value: "Yes, it's visible from the road or somewhere else", + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: + 'We may need to visit the site to assess your application. If we do, who should we contact to arrange the visit?', + responses: [ + { + value: 'Me, the applicant', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Build homes on an adjoining commercial or mixed use building', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Upload drawings', + }, + }, + { + question: + 'Do the changes involve any alterations to ground or floor levels?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'Upload drawings', + }, + }, + { + question: 'Is this for submission or information only?', + responses: [ + { + value: 'Submission', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Upload drawings', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Build homes on an adjoining commercial or mixed use building', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Are you building fewer than 10 new homes?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Are you building fewer than 51 new homes?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Is the property a home?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'What type of changes does the project involve?', + responses: [ + { + value: 'New build', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Build homes on an adjoining commercial or mixed use building', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Is this application a resubmission?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + ], + sectionName: 'Check your application', + }, + }, + { + question: + 'Is this the first time you have resubmitted an application for this site?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + ], + sectionName: 'Check your application', + }, + }, + { + question: 'What was the result of the original application?', + responses: [ + { + value: 'Withdrawn', + }, + ], + metadata: { + sectionName: 'Check your application', + }, + }, + { + question: 'When did you submit the original application?', + responses: [ + { + value: 'Within the last 12 months', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + ], + sectionName: 'Check your application', + }, + }, + { + question: + 'To qualify for a fee exemption, the proposed works must be of a similar description to the original application', + responses: [ + { + value: 'I understand', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + ], + sectionName: 'Check your application', + }, + }, + { + question: 'Does the application qualify for a disability exemption?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Does the application qualify for a resubmission exemption?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Check for multiple fees?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Connections with Buckinghamshire Council', + responses: [ + { + value: 'None of the above apply to me', + }, + ], + metadata: { + sectionName: 'Check your application', + }, + }, + { + question: 'I confirm that:', + responses: [ + { + value: + 'The information contained in this application is truthful, accurate and complete, to the best of my knowledge', + }, + ], + metadata: { + sectionName: 'Check your application', + }, + }, + { + question: 'Which Local Planning authority is it?', + responses: [ + { + value: 'Buckinghamshire', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Pay and submit', + }, + }, + { + question: + 'What type of prior approval application is it?application.type', + responses: [ + { + value: 'Build homes on an adjoining commercial or mixed use building', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Pay and submit', + }, + }, + ], + files: [ + { + name: 'https://api.editor.planx.dev/file/private/xdaaquh0/test%20document.pdf', + type: ['noiseAssessment'], + }, + { + name: 'https://api.editor.planx.dev/file/private/kk01qq8t/test%20document.pdf', + type: [ + 'roofPlan.proposed', + 'sections.existing', + 'sections.proposed', + 'floorPlan.existing', + 'floorPlan.proposed', + 'elevations.existing', + 'elevations.proposed', + ], + }, + { + name: 'https://api.editor.planx.dev/file/private/knu6huv7/test%20document.pdf', + type: ['sitePlan.proposed'], + }, + ], + metadata: { + id: '312c81fd-7368-4f0b-92d8-91de4033312a', + organisation: 'BKM', + submittedAt: '2024-06-29T12:31:34.837Z', + source: 'PlanX', + service: { + flowId: '6f76e837-7a42-40f3-80e9-a9482dce5982', + url: 'https://editor.planx.uk/buckinghamshire/apply-for-prior-approval/published', + files: { + required: [ + { + value: 'sitePlan.proposed', + description: 'Site plan - proposed', + }, + { + value: 'elevations.existing', + description: 'Elevations - existing', + }, + { + value: 'elevations.proposed', + description: 'Elevations - proposed', + }, + { + value: 'floorPlan.existing', + description: 'Floor plan - existing', + }, + { + value: 'floorPlan.proposed', + description: 'Floor plan - proposed', + }, + { + value: 'roofPlan.proposed', + description: 'Roof plan - proposed', + }, + { + value: 'sections.existing', + description: 'Sections - existing', + }, + { + value: 'sections.proposed', + description: 'Sections - proposed', + }, + { + value: 'noiseAssessment', + description: 'Noise assessment', + }, + ], + recommended: [], + optional: [ + { + value: 'photographs.existing', + description: 'Photographs - existing', + }, + { + value: 'otherDrawing', + description: 'Other - drawing', + }, + { + value: 'otherDocument', + description: 'Other - document', + }, + { + value: 'visualisations', + description: 'Visualisations', + }, + ], + }, + fee: { + calculated: [ + { + description: + '

The plannning fee for a Prior Approval application relating to creation of at least 10 but no more than 50 new homes on rooftops, or on a site created by demolishing vacant buildings is £451 per new home

', + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) (Amendment) Regulations 2023', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + payable: [ + { + description: + '

In the case of an application that is the first resubmission of an application on the same site that is similar in character and description, no planning fee is payable.

', + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + ], + }, + ], + }, + }, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + }, +}; diff --git a/examples/prototypeApplication/data/priorApproval/convertCommercialToHome.ts b/examples/prototypeApplication/data/priorApproval/convertCommercialToHome.ts index e69de29b..eab68744 100644 --- a/examples/prototypeApplication/data/priorApproval/convertCommercialToHome.ts +++ b/examples/prototypeApplication/data/priorApproval/convertCommercialToHome.ts @@ -0,0 +1,1531 @@ +import {PrototypeApplication} from '../../../../types/schemas/prototypeApplication'; + +const version = process.env['VERSION'] || '@next'; + +export const priorApprovalConvertCommercialToHomePrototype: PrototypeApplication = + { + applicationType: 'pa.part3.classMA', + data: { + user: { + role: 'agent', + }, + applicant: { + type: 'individual', + name: { + first: 'Vincent', + last: 'Van Gogh', + }, + email: 'ouchmyear@email.org', + phone: { + primary: '012345678901', + }, + address: { + sameAsSiteAddress: true, + }, + siteContact: { + role: 'agent', + }, + agent: { + name: { + first: 'Alan', + last: 'Agent', + }, + email: 'alanagent@email.org', + phone: { + primary: '098765432109', + }, + company: { + name: "Alan's Property & Fine Art Consultants PLC", + }, + address: { + line1: '12 Agent Avenue', + line2: '', + town: 'Plantown', + county: '', + postcode: 'PL47TN', + country: '', + }, + }, + }, + property: { + address: { + latitude: 51.4745098, + longitude: -0.1151501, + x: 530999, + y: 176745, + title: '87, HACKFORD ROAD, LONDON', + source: 'Ordnance Survey', + uprn: '100021847182', + usrn: '21900651', + pao: '87', + street: 'HACKFORD ROAD', + town: 'LONDON', + postcode: 'SW9 0RE', + singleLine: '87, HACKFORD ROAD, LONDON, LAMBETH, SW9 0RE', + }, + localAuthorityDistrict: ['Lambeth'], + region: 'London', + type: 'commercial.retail.shop', + planning: { + sources: [ + 'https://api.editor.planx.dev/gis/lambeth?geom=MULTIPOLYGON+%28%28%28-0.114876+51.474474%2C+-0.114863+51.474517%2C+-0.115261+51.474548%2C+-0.11527+51.474504%2C+-0.114876+51.474474%29%29%29&analytics=false&sessionId=86a5ba3e-1a7f-4460-bf46-826c3f982a92', + 'https://api.editor.planx.dev/roads?usrn=21900651', + ], + designations: [ + { + value: 'tpo', + intersects: false, + }, + { + value: 'flood', + intersects: false, + }, + { + value: 'listed', + intersects: true, + entities: [ + { + name: '87, HACKFORD ROAD SW9', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/31537921', + }, + }, + { + name: 'No Address Supplied', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/42103309', + }, + }, + ], + }, + { + value: 'article4', + intersects: false, + }, + { + value: 'monument', + intersects: false, + }, + { + value: 'greenBelt', + intersects: false, + }, + { + value: 'designated', + intersects: true, + }, + { + value: 'nature.SAC', + intersects: false, + }, + { + value: 'nature.SPA', + intersects: false, + }, + { + value: 'nature.ASNW', + intersects: false, + }, + { + value: 'nature.SSSI', + intersects: false, + }, + { + value: 'brownfieldSite', + intersects: false, + }, + { + value: 'designated.WHS', + intersects: false, + }, + { + value: 'listed.grade.I', + intersects: false, + }, + { + value: 'registeredPark', + intersects: false, + }, + { + value: 'designated.AONB', + intersects: false, + }, + { + value: 'listed.grade.II', + intersects: true, + }, + { + value: 'listed.grade.II*', + intersects: false, + }, + { + value: 'nature.ramsarSite', + intersects: false, + }, + { + value: 'designated.nationalPark', + intersects: false, + }, + { + value: 'designated.conservationArea', + intersects: true, + entities: [ + { + name: 'Hackford Road', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/44000877', + }, + }, + ], + }, + { + value: 'designated.nationalPark.broads', + intersects: false, + }, + { + value: 'road.classified', + intersects: false, + }, + ], + }, + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'MultiPolygon', + coordinates: [ + [ + [ + [-0.114876, 51.474474], + [-0.114863, 51.474517], + [-0.115261, 51.474548], + [-0.11527, 51.474504], + [-0.114876, 51.474474], + ], + ], + ], + }, + properties: { + name: '', + entity: 12000528882, + prefix: 'title-boundary', + dataset: 'title-boundary', + 'end-date': '', + typology: 'geography', + reference: '51792928', + 'entry-date': '2024-05-06', + 'start-date': '2011-05-10', + 'organisation-entity': '13', + }, + }, + area: { + hectares: 0.013555000000000001, + squareMetres: 135.55, + }, + }, + titleNumber: { + known: 'Yes', + number: '24/12345/FUL', + }, + EPC: { + known: 'Yes', + number: '1234-1234-1234-1234', + }, + parking: { + cars: { + count: 1, + }, + vans: { + count: 0, + }, + motorcycles: { + count: 0, + }, + cycles: { + count: 0, + }, + buses: { + count: 0, + }, + disabled: { + count: 0, + }, + carClub: { + count: 0, + }, + offStreet: { + residential: { + count: 0, + }, + }, + other: { + count: 0, + }, + }, + // occupation: { + // status: 'vacant', + // }, + }, + application: { + fee: { + calculated: 258, + payable: 258, + exemption: { + disability: false, + resubmission: false, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + reference: { + govPay: 'sandbox-789', + }, + }, + leadDeveloper: { + type: 'overseasCompany', + company: { + name: 'Impression Developments Inc.', + registrationNumber: '12345679ABC', + }, + }, + declaration: { + accurate: true, + connection: { + value: 'none', + }, + }, + }, + proposal: { + projectType: ['changeOfUse'], + description: + 'Change of use from my sunflower and art supplies shop into a home.', + schemeName: "Vincent's New Property Venture", + date: { + start: '2024-07-28', + completion: '2035-07-28', + }, + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'MultiPolygon', + coordinates: [ + [ + [ + [-0.114876, 51.474474], + [-0.114863, 51.474517], + [-0.115261, 51.474548], + [-0.11527, 51.474504], + [-0.114876, 51.474474], + ], + ], + ], + }, + properties: { + name: '', + entity: 12000528882, + prefix: 'title-boundary', + dataset: 'title-boundary', + 'end-date': '', + typology: 'geography', + reference: '51792928', + 'entry-date': '2024-05-06', + 'start-date': '2011-05-10', + 'organisation-entity': '13', + planx_user_action: 'Accepted the title boundary', + }, + }, + area: { + hectares: 0.013555000000000001, + squareMetres: 135.55, + }, + }, + parking: { + cars: { + count: 1, + difference: 0, + }, + vans: { + count: 0, + difference: 0, + }, + motorcycles: { + count: 0, + difference: 0, + }, + cycles: { + count: 2, + difference: 2, + }, + buses: { + count: 0, + difference: 0, + }, + disabled: { + count: 0, + difference: 0, + }, + carClub: { + count: 0, + difference: 0, + }, + offStreet: { + residential: { + count: 0, + difference: 0, + }, + }, + other: { + count: 0, + difference: 0, + }, + }, + units: { + residential: { + rebuilt: [ + { + development: 'changeOfUse', + type: 'terraced', + bedrooms: 3, + habitableRooms: 7, + area: {squareMetres: 300}, + tenure: 'marketForRent', + provider: 'private', + garden: false, + sheltered: false, + olderPersons: false, + compliance: ['m42', 'm432a', 'm432b'], + identicalUnits: 1, + }, + ], + }, + }, + energy: { + type: ['heatPump'], + heatPumps: { + capacity: {megawatts: 2}, + }, + }, + greenRoof: { + area: {squareMetres: 0}, + }, + urbanGreeningFactor: { + score: 4, + }, + utilities: { + gas: {connections: {count: 1}}, + water: {connections: {count: 1}}, + internet: { + residentialUnits: {count: 1}, + commercialUnits: {count: 0}, + }, + }, + waste: { + reuseRecycle: {percent: 2}, + }, + }, + }, + preAssessment: [ + { + value: 'Planning permission / Permission needed', + description: + 'It looks like the proposed changes may require planning permission.', + }, + ], + responses: [ + { + question: 'Is the property in Lambeth?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Something else', + }, + ], + metadata: { + sectionName: 'The property', + }, + }, + { + question: 'Which of these best describes the use of the property?', + responses: [ + { + value: 'Retail and services', + }, + ], + metadata: { + sectionName: 'The property', + }, + }, + { + question: 'What type of retail unit is it?', + responses: [ + { + value: 'Shop', + }, + ], + metadata: { + sectionName: 'The property', + }, + }, + { + question: 'Have the works already started?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Commercial building', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'What is the property used as?', + responses: [ + { + value: 'Shop', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Use Classes) (Amendment) (England) Regulations 2020', + url: 'https://www.legislation.gov.uk/uksi/2020/757/made', + }, + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/596/contents', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the shop any of these?', + responses: [ + { + value: "No, it's another kind of shop", + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What does the shop sell?', + responses: [ + { + value: 'Other goods', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What do you want to change its use to?', + responses: [ + { + value: 'Single house', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Use Classes) (Amendment) (England) Regulations 2020', + url: 'https://www.legislation.gov.uk/uksi/2020/757/made', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What part of the building will be converted?', + responses: [ + { + value: 'The entire building', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Is the site within an Area of Outstanding Natural Beauty?', + responses: [ + { + value: 'No', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the site in the Broads?', + responses: [ + { + value: 'No', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the site in a National Park?', + responses: [ + { + value: 'No', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the site part of a World Heritage Site?', + responses: [ + { + value: 'No', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the site in an area of Special Scientific Interest?', + responses: [ + { + value: 'No', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the site in a safety hazard area?', + responses: [ + { + value: 'No', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the site in a military explosives storage area?', + responses: [ + { + value: 'No', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is any part of the property a scheduled monument?', + responses: [ + { + value: 'No', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is any part of the property listed?', + responses: [ + { + value: 'Yes', + metadata: { + flags: ['Planning permission / Permission needed'], + }, + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Shop', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Convert a commercial building into a home or homes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'What type or prior approval application is it?', + responses: [ + { + value: 'Convert a commercial building into a home or homes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'You need to submit a Sunlight and Daylight Report', + responses: [ + { + value: 'Upload a document later', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'How many new homes are being build?', + responses: [ + { + value: '1', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Has any part of the site been identified as contaminated land?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Was the building previously used for any of these?', + responses: [ + { + value: 'None of these', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Is the building in a flood risk area?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'You need to submit a Noise Assessment', + responses: [ + { + value: 'Upload a document later', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'You need to submit a Transport Assessment', + responses: [ + { + value: 'Upload a document later', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Describe the design and external appearance of the project', + responses: [ + { + value: + 'The existing shop front will be replaced by a new wall with a large painting of some hay stacks on it. Some more information about the appearance of the building. ', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Is the building currently used as a nursery?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Is the building currently used for healthcare?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Is the property in a conservation area?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: + 'Does the project involve changing the use of any part of the ground floor?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Describe the impacts that the change of use will have on the character or sustainability of the conservation area and how these will be mitigated', + responses: [ + { + value: + 'These are the impacts that the change of use will have:\n1\n2\n3\nAnd this is how it will be mitigated:\nA\nB\nC', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Will the building be 18 metres or more in height?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Fire safety guidance, 2021', + url: 'https://www.gov.uk/guidance/fire-safety-and-high-rise-residential-buildings-from-1-august-2021', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Will the building be 7 or more storeys tall?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Fire safety guidance, 2021', + url: 'https://www.gov.uk/guidance/fire-safety-and-high-rise-residential-buildings-from-1-august-2021', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Is the building in an area that is also used for heavy industry, waste management, storage or distribution?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Apply for prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'Your contact details', + responses: [ + { + value: + "Alan Agent Alan's Property & Fine Art Consultants PLC 098765432109 alanagent@email.org", + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Are you applying on behalf of someone else?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Which of these best describes you?', + responses: [ + { + value: 'Professional agent', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Your contact address', + responses: [ + { + value: '12 Agent Avenue, Plantown, PL47TN', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Which of these best describes the applicant?', + responses: [ + { + value: 'Private individual', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: "Applicant's contact details", + responses: [ + { + value: 'Vincent Van Gogh 012345678901 ouchmyear@email.org', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: + "Is the applicant's contact address the same as the property address?", + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: "Applicant's contact address", + responses: [ + { + value: 'Haywain House, Rotterdam, 12543, The Netherlands', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Can a planning officer see the works from public land?', + responses: [ + { + value: "Yes, it's visible from the road or somewhere else", + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Which of these best describes you?', + responses: [ + { + value: 'Professional agent', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'If we need to make a site visit, who should we contact?', + responses: [ + { + value: 'Me, the agent', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Convert a commercial building into a home or homes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Upload drawings', + }, + }, + { + question: 'Is this for submission or information only?', + responses: [ + { + value: 'Submission', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Upload drawings', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Convert a commercial building into a home or homes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Does the project involve any building works?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) (Amendment) Regulations 2023', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + sectionName: 'Check your application', + }, + }, + { + question: 'Is the property a home?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'What type of changes does the project involve?', + responses: [ + { + value: 'Change use', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Convert a commercial building into a home or homes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: + 'Are you submitting any other planning applications about the same works or changes?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + ], + sectionName: 'Check your application', + }, + }, + { + question: 'Is this application a resubmission?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + ], + sectionName: 'Check your application', + }, + }, + { + question: 'Does the application qualify for a disability exemption?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Does the application qualify for a resubmission exemption?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: + 'Does the application qualify to the same-day-planning-application exemption?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + ], + sectionName: 'Check your application', + }, + }, + { + question: 'Check for multiple fees?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Which Local Planning authority is it?', + responses: [ + { + value: 'Lambeth', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Connections with London Borough of Lambeth', + responses: [ + { + value: 'None of the above apply to me', + }, + ], + metadata: { + sectionName: 'Check your application', + }, + }, + { + question: 'I confirm that:', + responses: [ + { + value: + 'The information contained in this application is truthful, accurate and complete, to the best of my knowledge', + }, + ], + metadata: { + sectionName: 'Check your application', + }, + }, + { + question: 'Connections with London Borough of Lambeth', + responses: [ + { + value: 'None of the above apply to me', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'I confirm that:', + responses: [ + { + value: + 'The information contained in this application is truthful, accurate and complete, to the best of my knowledge', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Which Local Planning authority is it?', + responses: [ + { + value: 'Lambeth', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Pay and submit', + }, + }, + { + question: + 'What type of prior approval application is it?application.type', + responses: [ + { + value: 'Convert a commercial building into a home or homes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Pay and submit', + }, + }, + ], + files: [ + { + name: 'https://api.editor.planx.dev/file/private/bpxw8ekr/test%20document.pdf', + type: ['noiseAssessment'], + }, + { + name: 'https://api.editor.planx.dev/file/private/2mrowm3t/test%20document.pdf', + type: ['usePlan.proposed', 'sitePlan.proposed'], + }, + { + name: 'https://api.editor.planx.dev/file/private/eu61v4yk/test%20document.pdf', + type: ['sitePlan.existing'], + }, + { + name: 'https://api.editor.planx.dev/file/private/fd7o1wnh/test%20document.pdf', + type: ['sunlightAndDaylightReport'], + }, + ], + metadata: { + id: '86a5ba3e-1a7f-4460-bf46-826c3f982a92', + organisation: 'LBH', + submittedAt: '2024-06-29T12:25:58.777Z', + source: 'PlanX', + service: { + flowId: 'f3cae2c8-9a64-4ce1-8cef-8e6832ad383d', + url: 'https://editor.planx.dev/lambeth/apply-for-prior-approval/published', + files: { + required: [ + { + value: 'sitePlan.proposed', + description: 'Site plan - proposed', + }, + { + value: 'usePlan.proposed', + description: 'Use plan - proposed', + }, + { + value: 'noiseAssessment', + description: 'Noise assessment', + }, + { + value: 'sunlightAndDaylightReport', + description: 'Sunlight and daylight report', + }, + ], + recommended: [ + { + value: 'sitePlan.existing', + description: 'Site plan - existing', + }, + ], + optional: [ + { + value: 'photographs.existing', + description: 'Photographs - existing', + }, + { + value: 'otherDrawing', + description: 'Other - drawing', + }, + { + value: 'otherDocument', + description: 'Other - document', + }, + { + value: 'visualisations', + description: 'Visualisations', + }, + ], + }, + fee: { + calculated: [ + { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) (Amendment) Regulations 2023', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + payable: [ + { + description: + '

This application does not qualify for any exemptions or reductions

', + }, + ], + }, + }, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + }, + }; diff --git a/examples/prototypeApplication/data/priorApproval/extendUniversity.ts b/examples/prototypeApplication/data/priorApproval/extendUniversity.ts index e69de29b..50efe195 100644 --- a/examples/prototypeApplication/data/priorApproval/extendUniversity.ts +++ b/examples/prototypeApplication/data/priorApproval/extendUniversity.ts @@ -0,0 +1,1731 @@ +import {PrototypeApplication} from '../../../../types/schemas/prototypeApplication'; + +const version = process.env['VERSION'] || '@next'; + +export const priorApprovalExtendUniversityPrototype: PrototypeApplication = { + applicationType: 'pa.part7.classM', + data: { + user: { + role: 'applicant', + }, + applicant: { + type: 'company', + name: { + first: 'John', + last: 'Betjeman', + }, + email: 'johnnybthepoet@email.org', + phone: { + primary: '012345678901', + }, + address: { + sameAsSiteAddress: true, + }, + siteContact: { + role: 'applicant', + }, + }, + property: { + address: { + latitude: 51.5647555, + longitude: -0.1532914, + x: 528097, + y: 186713, + title: '31, HIGHGATE WEST HILL, LONDON', + source: 'Ordnance Survey', + uprn: '000005008312', + usrn: '20400012', + pao: '31', + street: 'HIGHGATE WEST HILL', + town: 'LONDON', + postcode: 'N6 6NP', + singleLine: '31, HIGHGATE WEST HILL, LONDON, CAMDEN, N6 6NP', + }, + localAuthorityDistrict: ['Camden'], + region: 'London', + type: 'commercial.education.university', + planning: { + sources: [ + 'https://api.editor.planx.dev/gis/camden?geom=MULTIPOLYGON+%28%28%28-0.153392+51.564734%2C+-0.153391+51.564724%2C+-0.153376+51.564725%2C+-0.153085+51.564757%2C+-0.1531+51.564806%2C+-0.15335+51.564785%2C+-0.153392+51.564734%29%29%29&analytics=false&sessionId=7e147b04-0a8b-44fc-a249-c36ef6407f84', + 'https://api.editor.planx.dev/roads?usrn=20400012', + ], + designations: [ + { + value: 'tpo', + intersects: false, + }, + { + value: 'flood', + intersects: false, + }, + { + value: 'listed', + intersects: false, + }, + { + value: 'article4', + intersects: true, + entities: [ + { + name: 'Basements', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/7010002613', + }, + }, + ], + }, + { + value: 'monument', + intersects: false, + }, + { + value: 'greenBelt', + intersects: false, + }, + { + value: 'designated', + intersects: true, + }, + { + value: 'nature.SAC', + intersects: false, + }, + { + value: 'nature.SPA', + intersects: false, + }, + { + value: 'nature.ASNW', + intersects: false, + }, + { + value: 'nature.SSSI', + intersects: false, + }, + { + value: 'brownfieldSite', + intersects: false, + }, + { + value: 'designated.WHS', + intersects: false, + }, + { + value: 'registeredPark', + intersects: false, + }, + { + value: 'designated.AONB', + intersects: false, + }, + { + value: 'nature.ramsarSite', + intersects: false, + }, + { + value: 'designated.nationalPark', + intersects: false, + }, + { + value: 'designated.conservationArea', + intersects: true, + entities: [ + { + name: 'Highgate Village', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/44009654', + }, + }, + ], + }, + { + value: 'designated.nationalPark.broads', + intersects: false, + }, + { + value: 'road.classified', + intersects: false, + }, + ], + }, + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'MultiPolygon', + coordinates: [ + [ + [ + [-0.153392, 51.564734], + [-0.153391, 51.564724], + [-0.153376, 51.564725], + [-0.153085, 51.564757], + [-0.1531, 51.564806], + [-0.15335, 51.564785], + [-0.153392, 51.564734], + ], + ], + ], + }, + properties: { + name: '', + entity: 12000488653, + prefix: 'title-boundary', + dataset: 'title-boundary', + 'end-date': '', + typology: 'geography', + reference: '36535150', + 'entry-date': '2024-05-06', + 'start-date': '2008-08-14', + 'organisation-entity': '13', + }, + }, + area: { + hectares: 0.011762, + squareMetres: 117.62, + }, + }, + titleNumber: { + known: 'No', + }, + EPC: { + known: 'The property does not have one', + }, + parking: { + cars: { + count: 0, + }, + vans: { + count: 0, + }, + motorcycles: { + count: 0, + }, + cycles: { + count: 5, + }, + buses: { + count: 0, + }, + disabled: { + count: 0, + }, + carClub: { + count: 0, + }, + offStreet: { + residential: { + count: 0, + }, + }, + other: { + count: 0, + }, + }, + }, + application: { + fee: { + calculated: 120, + payable: 120, + exemption: { + disability: false, + resubmission: false, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + reference: { + govPay: 'sandbox-123', + }, + }, + leadDeveloper: { + type: 'ukCompany', + company: { + name: 'Fit For Cabbages Developments', + registrationNumber: '12345679ABC', + }, + }, + declaration: { + accurate: true, + connection: { + value: 'none', + }, + }, + }, + proposal: { + projectType: ['extend'], + description: + 'New extension to university building, for the purposes of teaching downbeat poetry about Slough to the masses. 6 metres to the rear and 4 metres in height.', + date: { + start: '2024-07-28', + completion: '2024-07-28', + }, + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'MultiPolygon', + coordinates: [ + [ + [ + [-0.153392, 51.564734], + [-0.153391, 51.564724], + [-0.153376, 51.564725], + [-0.153085, 51.564757], + [-0.1531, 51.564806], + [-0.15335, 51.564785], + [-0.153392, 51.564734], + ], + ], + ], + }, + properties: { + name: '', + entity: 12000488653, + prefix: 'title-boundary', + dataset: 'title-boundary', + 'end-date': '', + typology: 'geography', + reference: '36535150', + 'entry-date': '2024-05-06', + 'start-date': '2008-08-14', + 'organisation-entity': '13', + planx_user_action: 'Accepted the title boundary', + }, + }, + area: { + hectares: 0.011762, + squareMetres: 117.62, + }, + }, + parking: { + cars: { + count: 0, + difference: 0, + }, + vans: { + count: 0, + difference: 0, + }, + motorcycles: { + count: 0, + difference: 0, + }, + cycles: { + count: 8, + difference: 3, + }, + buses: { + count: 0, + difference: 0, + }, + disabled: { + count: 0, + difference: 0, + }, + carClub: { + count: 0, + difference: 0, + }, + offStreet: { + residential: { + count: 0, + difference: 0, + }, + }, + other: { + count: 0, + difference: 0, + }, + }, + schemeName: "Sir John Betjeman's New Extension", + utilities: { + internet: { + commercialUnits: {count: 1}, + residentialUnits: {count: 0}, + }, + fire: { + suppression: true, + }, + }, + energy: { + type: ['solar'], + solar: { + capacity: {megawatts: 6}, + }, + }, + urbanGreeningFactor: {score: 2}, + greenRoof: { + area: {squareMetres: 12}, + }, + waste: { + reuseRecycle: {percent: 0}, + }, + charging: { + active: {count: 3}, + }, + }, + }, + preAssessment: [ + { + value: 'Planning permission / Prior approval', + description: + 'It looks like the proposed changes do not require planning permission, however the applicant must apply for Prior Approval before proceeding.', + }, + ], + responses: [ + { + question: 'Is the property in Camden?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Something else', + }, + ], + metadata: { + sectionName: 'The property', + }, + }, + { + question: 'Which of these best describes the use of the property?', + responses: [ + { + value: 'Education', + }, + ], + metadata: { + sectionName: 'The property', + }, + }, + { + question: 'What type of educational building is it?', + responses: [ + { + value: 'University', + }, + ], + metadata: { + sectionName: 'The property', + }, + }, + { + question: 'Have the works already started?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Town and Country Planning Act 1990, Part III, Section 55', + url: 'https://www.legislation.gov.uk/ukpga/1990/8/section/55', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Commercial building', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: + 'Is the site of the proposed development within the curtilage of a listed building?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: + 'Would the development prevent the ongoing use of land used as a playing field for that purpose?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What is the footprint of the proposed development?', + responses: [ + { + value: '250 square metres or less', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Will the footprint of the proposed development be greater than 25% of the cumulative footprint of existing buildings?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Will any part of the proposed development be closer than 5 metres to the site boundary?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Will any rooftop structures, such as plant or machinery, exceed 1.5 metres in height?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What does the proposed development consist of?', + responses: [ + { + value: 'Extension of an existing building', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Can you confirm that both of the following statements with regard to the height of the proposed development are true?', + responses: [ + { + value: 'Yes, I can confirm that both of these statements are true.', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: '[HIDDEN] proposal in scope?', + responses: [ + { + value: 'Yes', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: + 'Is the proposed development located within any of the following types of site?', + responses: [ + { + value: + 'No, the site is not located within any of the described areas', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Another use', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Select your project', + responses: [ + { + value: 'Erect, extend or alter a university building', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What type of application is being applied for?', + responses: [ + { + value: 'Part 7 Class M', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Is the property subject to any Article 4 directions?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'List all the changes involved in the project', + responses: [ + { + value: 'Add a storey', + }, + { + value: 'Convert a garage', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: + 'Is the property affected by any Article 4 directions removing this type of permitted development right?', + responses: [ + { + value: 'None of these', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: + 'Is the property affected by any Aticle 4 directions removing this type of permitted development right?', + responses: [ + { + value: 'None of these', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: + 'Is the property affected by any Aticle 4 directions removing this type of permitted development right?', + responses: [ + { + value: 'None of these', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Extend a university building', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'You need to submit a Transport Assessment', + responses: [ + { + value: 'Upload a document later', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Describe the proposed work', + responses: [ + { + value: + 'New extension to university building, 6 metres to the rear and 4 metres in height, clad in books of poetry.', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Is any part of the site on designated land?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Describe the materials of the buildings', + responses: [ + { + value: + 'The facade treatment will be sympathetic with the existing building and character of the area, using namely glazed tiles, london stock brick and standing seam zinc roofing.', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015, Schedule 2, Part 7, Class', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/7/crossheading/class-m-extensions-etc-for-schools-colleges-universities-and-hospitals', + }, + { + text: 'M', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/7/crossheading/class-m-extensions-etc-for-schools-colleges-universities-and-hospitals', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Is the project within, or near, a Conservation Area, a Listed Building or a site of Archaeological interest?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Describe any impacts on heritage areas, historic buildings or archaeological remains, and how these will be mitigated', + responses: [ + { + value: + 'These are the impacts on heritage:\nA\nB\nC\n and this is how they will be mitigated:\n1\n2\n3', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Is the proposal within the Greater London Authority?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Does the site include more than one property?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Do you know the title number of the property?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Does the property have an Energy Performance Certificate (EPC)?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What type of application is this?', + responses: [ + { + value: 'Prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'When are the works planned to start?', + responses: [ + { + value: '2024-07-28', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'When are the works planned to be completed?', + responses: [ + { + value: '2024-07-28', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + '[HIDDEN] Is the application for prior approval for an extension to a dwelling house?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Does the project have a known intended name?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Please provide the project name', + responses: [ + { + value: "Sir John Betjeman's New Extension", + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Has a lead developer been assigned to the project?', + responses: [ + { + value: 'Yes, a registered company in the UK', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Please provide the full company name of the lead developer', + responses: [ + { + value: 'Fit For Cabbages Developments', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Please provide the UK company registration number', + responses: [ + { + value: '12345679ABC', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Does this application replace or amend a previously granted planning permission?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: '[HIDDEN] Part 3 class MA?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'What is the existing gross internal floor area?', + responses: [ + { + value: '400', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'What existing gross internal floor area will be lost as a result of the proposed development?', + responses: [ + { + value: '10', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The London Plan', + url: 'https://www.london.gov.uk/sites/default/files/intend_to_publish_-_clean.pdf', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'What gross internal floor area will be gained as a result of the proposed development?', + responses: [ + { + value: '390', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The London Plan', + url: 'https://www.london.gov.uk/sites/default/files/intend_to_publish_-_clean.pdf', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Are any vehicle charging or hydrogen refuelling points being added as part of the proposal?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What type of vehicle charging points are being created?', + responses: [ + { + value: 'Active charging points', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'How many active charging points are being created?', + responses: [ + { + value: '3', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What type of vehicle charging points are being created', + responses: [ + { + value: 'Fast chargers', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Does the project involve the development of new building units?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: + 'Which if any of the following will be required as part of the proposed development?', + responses: [ + { + value: 'Full fibre internet connection', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'How many residential units will be served by a full fibre internet connection?', + responses: [ + { + value: '0', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'How many commercial units will be served by a full fibre internet connection?', + responses: [ + { + value: '1', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Is a fire suppression system proposed?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Have you consulted with mobile network operators?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Will the proposal provide any of the following?', + responses: [ + { + value: 'Solar energy', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'What is the proposed total capacity of any solar energy generation?', + responses: [ + { + value: '6', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What is the Urban Greening Factor Score?', + responses: [ + { + value: '2', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What area of green roof is proposed?', + responses: [ + { + value: '12', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'What percentage of material from demolition and construction will be re-used or recycled?', + responses: [ + { + value: '0', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Does the proposal constitute a major development?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + url: 'https://www.legislation.gov.uk/uksi/2015/595/article/2/made', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Does the project involve the addition of self-contained residential units or student accommodation on the site?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The London Plan', + url: 'https://www.london.gov.uk/sites/default/files/intend_to_publish_-_clean.pdf', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Does the project involve the removal of self-contained residential units or student accommodation on the site?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The London Plan', + url: 'https://www.london.gov.uk/sites/default/files/intend_to_publish_-_clean.pdf', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Are there existing or are you proposing parking spaces for any of these on the site?', + responses: [ + { + value: 'Bicycles', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What is the number of existing bicycle parking spaces?', + responses: [ + { + value: '5', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What is the proposed total number of bicycle parking spaces?', + responses: [ + { + value: '8', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Apply for prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'Are you applying on behalf of someone else?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Which of these best describes you?', + responses: [ + { + value: 'Company', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Your contact details', + responses: [ + { + value: 'Sir John Betjeman 012345678901 johnnybthepoet@email.org', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Is your contact address the same as the property address?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Your contact address', + responses: [ + { + value: '12 Cabbage Lane, Slough, FR1 3ND', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Can a planning officer see the works from public land?', + responses: [ + { + value: "Yes, it's visible from the road or somewhere else", + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: + 'We may need to visit the site to assess your application. If we do, who should we contact to arrange the visit?', + responses: [ + { + value: 'Me, the applicant', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Extend a university', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Upload drawings', + }, + }, + { + question: + 'Does the proposal involve extending or altering an existing building?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'Upload drawings', + }, + }, + { + question: 'Is this for submission or information only?', + responses: [ + { + value: 'Submission', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Upload drawings', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Extend a university', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Is the property a home?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'What type of changes does the project involve?', + responses: [ + { + value: 'Extension', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Are the public allowed to access the building?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'Check your application', + }, + }, + { + question: + 'Is the sole purpose of the project to provide disabled access to (or within) the building?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + { + text: 'Regulation 4 (1)(b)', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/4', + }, + ], + sectionName: 'Check your application', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Erect, extend or alter a university', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Is this application a resubmission?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + ], + sectionName: 'Check your application', + }, + }, + { + question: 'Does the application qualify for a disability exemption?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Does the application qualify for a resubmission exemption?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: + 'Does the application qualify to the same-day-planning-application exemption?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + ], + sectionName: 'Check your application', + }, + }, + { + question: 'Check for multiple fees?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Which Local Planning authority is it?', + responses: [ + { + value: 'Camden', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Connections with London Borough of Camden', + responses: [ + { + value: 'None of the above apply to me', + }, + ], + metadata: { + sectionName: 'Check your application', + }, + }, + { + question: 'I confirm that:', + responses: [ + { + value: + 'The information contained in this application is truthful, accurate and complete, to the best of my knowledge', + }, + ], + metadata: { + sectionName: 'Check your application', + }, + }, + { + question: 'Which Local Planning authority is it?', + responses: [ + { + value: 'Camden', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Pay and submit', + }, + }, + { + question: + 'What type of prior approval application is it?application.type', + responses: [ + { + value: 'Extend a school, college, university, prison or hospital', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Pay and submit', + }, + }, + ], + files: [ + { + name: 'https://api.editor.planx.dev/file/private/o9ckva99/test%20document.pdf', + type: ['otherDocument'], + }, + { + name: 'https://api.editor.planx.dev/file/private/p3e01fea/test%20document.pdf', + type: ['sitePlan.proposed', 'elevations.existing', 'elevations.proposed'], + }, + ], + metadata: { + id: '7e147b04-0a8b-44fc-a249-c36ef6407f84', + organisation: 'CMD', + submittedAt: '2024-06-29T11:11:11.143Z', + source: 'PlanX', + service: { + flowId: '3245f1f1-d044-4e73-a819-20a7ff730964', + url: 'https://editor.planx.dev/camden/apply-for-prior-approval/published', + files: { + required: [ + { + value: 'sitePlan.proposed', + description: 'Site plan - proposed', + }, + { + value: 'elevations.existing', + description: 'Elevations - existing', + }, + { + value: 'elevations.proposed', + description: 'Elevations - proposed', + }, + ], + recommended: [], + optional: [ + { + value: 'photographs.existing', + description: 'Photographs - existing', + }, + { + value: 'otherDrawing', + description: 'Other - drawing', + }, + { + value: 'otherDocument', + description: 'Other - document', + }, + { + value: 'visualisations', + description: 'Visualisations', + }, + ], + }, + fee: { + calculated: [ + { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) (Amendment) Regulations 2023', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + payable: [ + { + description: + '

This application does not qualify for any exemptions or reductions

', + }, + ], + }, + }, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + }, +}; diff --git a/examples/prototypeApplication/data/priorApproval/largerExtension.ts b/examples/prototypeApplication/data/priorApproval/largerExtension.ts index e69de29b..59d4cacf 100644 --- a/examples/prototypeApplication/data/priorApproval/largerExtension.ts +++ b/examples/prototypeApplication/data/priorApproval/largerExtension.ts @@ -0,0 +1,1500 @@ +import {PrototypeApplication} from '../../../../types/schemas/prototypeApplication'; + +const version = process.env['VERSION'] || '@next'; + +export const priorApprovalLargerExtensionPrototype: PrototypeApplication = { + applicationType: 'pa.part1.classA', + data: { + user: { + role: 'applicant', + }, + applicant: { + type: 'individual', + name: { + first: 'William', + last: 'Zane', + }, + email: 'areyouon@email.org', + phone: { + primary: '01234000000', + }, + address: { + sameAsSiteAddress: true, + }, + siteContact: { + role: 'applicant', + }, + }, + property: { + address: { + latitude: 51.3304155, + longitude: -0.1043842, + x: 532161, + y: 160741, + title: '32, ST JAMES ROAD, PURLEY', + source: 'Ordnance Survey', + uprn: '100020623888', + usrn: '20502851', + pao: '32', + street: 'ST JAMES ROAD', + town: 'PURLEY', + postcode: 'CR8 2DL', + singleLine: '32 ST JAMES ROAD, PURLEY, CROYDON, CR8 2DL', + }, + localAuthorityDistrict: ['Croydon'], + region: 'London', + type: 'residential.dwelling.house.detached', + planning: { + sources: [ + 'https://api.editor.planx.dev/gis/southwark?geom=MULTIPOLYGON+%28%28%28-0.072763+51.456622%2C+-0.072749+51.456669%2C+-0.073167+51.456732%2C+-0.073195+51.456736%2C+-0.073213+51.456688%2C+-0.072763+51.456622%29%29%29&analytics=false&sessionId=80d3c3c2-0d1c-4a79-be99-912f488c2f02', + 'https://api.editor.planx.dev/roads?usrn=22500947', + ], + designations: [ + { + value: 'tpo', + intersects: false, + }, + { + value: 'flood', + intersects: false, + }, + { + value: 'listed', + intersects: false, + }, + { + value: 'article4', + intersects: false, + }, + { + value: 'monument', + intersects: false, + }, + { + value: 'greenBelt', + intersects: false, + }, + { + value: 'designated', + intersects: false, + }, + { + value: 'nature.SAC', + intersects: false, + }, + { + value: 'nature.SPA', + intersects: false, + }, + { + value: 'nature.ASNW', + intersects: false, + }, + { + value: 'nature.SSSI', + intersects: false, + }, + { + value: 'brownfieldSite', + intersects: false, + }, + { + value: 'designated.WHS', + intersects: false, + }, + { + value: 'registeredPark', + intersects: false, + }, + { + value: 'designated.AONB', + intersects: false, + }, + { + value: 'nature.ramsarSite', + intersects: false, + }, + { + value: 'designated.nationalPark', + intersects: false, + }, + { + value: 'designated.conservationArea', + intersects: false, + }, + { + value: 'designated.nationalPark.broads', + intersects: false, + }, + { + value: 'road.classified', + intersects: false, + }, + ], + }, + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'MultiPolygon', + coordinates: [ + [ + [ + [-0.072763, 51.456622], + [-0.072749, 51.456669], + [-0.073167, 51.456732], + [-0.073195, 51.456736], + [-0.073213, 51.456688], + [-0.072763, 51.456622], + ], + ], + ], + }, + properties: { + name: '', + entity: 12000593377, + prefix: 'title-boundary', + dataset: 'title-boundary', + 'end-date': '', + typology: 'geography', + reference: '37786766', + 'entry-date': '2024-05-06', + 'start-date': '2002-06-26', + 'organisation-entity': '13', + }, + }, + area: { + hectares: 0.017289, + squareMetres: 172.89, + }, + }, + }, + application: { + fee: { + calculated: 120, + payable: 0, + exemption: { + disability: true, + resubmission: false, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + }, + declaration: { + accurate: true, + connection: { + value: 'none', + }, + }, + }, + proposal: { + projectType: ['extend.rear'], + description: + 'A 2 storey rear extension with a roof garden and built in pizza oven', + date: { + start: '2024-06-17', + completion: '2050-06-18', + }, + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'MultiPolygon', + coordinates: [ + [ + [ + [-0.072763, 51.456622], + [-0.072749, 51.456669], + [-0.073167, 51.456732], + [-0.073195, 51.456736], + [-0.073213, 51.456688], + [-0.072763, 51.456622], + ], + ], + ], + }, + properties: { + name: '', + entity: 12000593377, + prefix: 'title-boundary', + dataset: 'title-boundary', + 'end-date': '', + typology: 'geography', + reference: '37786766', + 'entry-date': '2024-05-06', + 'start-date': '2002-06-26', + 'organisation-entity': '13', + planx_user_action: 'Accepted the title boundary', + }, + }, + area: { + hectares: 0.017289, + squareMetres: 172.89, + }, + }, + }, + }, + preAssessment: [ + { + value: 'Planning permission / Prior approval', + description: + 'It looks like the proposed changes do not require planning permission, however the applicant must apply for Prior Approval before proceeding.', + }, + ], + responses: [ + { + question: 'Is the property in Southwark?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'House', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'What type of house is it?', + responses: [ + { + value: 'Terrace', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'Have the works already started?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Describe the project.', + responses: [ + { + value: + 'A 2 storey rear extension with a roof garden and built in pizza oven.', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'House', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Select your project', + responses: [ + { + value: 'Add a rear extension', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'House', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015', + url: 'https://www.legislation.gov.uk/uksi/2015/596/contents/made', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What type of house is it?', + responses: [ + { + value: 'Mid terrace', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'How many storeys does the original house have?', + responses: [ + { + value: '2 or more', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Does the original house have a projection to the rear?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Was the house always a house?', + responses: [ + { + value: 'Yes, it was built as a house', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015, Schedule 2, Part 1, Class A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Was the house built before 2020?', + responses: [ + { + value: 'Yes, it was built before 2020', + metadata: { + flags: ['Planning permission / Permitted development'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class 1 A.', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Which of these best describes the new extension?', + responses: [ + { + value: 'Single storey', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Section 2, Part 1, Class A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Does the original house have a projection to the rear?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Which of these best describes your extension?', + responses: [ + { + value: 'Rear', + }, + ], + metadata: { + policyRefs: [ + { + text: 'General Permitted Development Order 2015, Technical Guidance (PDF, 500KB)', + url: 'https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/830643/190910_Tech_Guide_for_publishing.pdf', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is any part of the extension within 2 metres of the boundary?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the property on designated land?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Is the property a site of special scientific interest?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'What type of house is it?', + responses: [ + { + value: 'A terrace', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: + 'How far does the new rear addition extend beyond the back wall of the original house?', + responses: [ + { + value: '3 to 6m', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A.1 (f)(i)', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Is this a prior approval application for a larger rear extension?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: + 'Exactly how far will the new addition extend beyond the back wall of the original house?', + responses: [ + { + value: '5', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What type of roof does the extension have?', + responses: [ + { + value: 'Flat', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Will any part of the extension be higher than 4m?', + responses: [ + { + value: 'No', + metadata: { + flags: ['Planning permission / Permitted development'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A.1 (g)(ii)', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + { + text: 'Permitted Development Rights for Householders Technical Guidance (PDF, 500KB)', + url: 'https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/830643/190910_Tech_Guide_for_publishing.pdf', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Is this a prior approval application for a larger rear extension?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'What is the exact height of the extension?', + responses: [ + { + value: '3.6', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'How many storeys does the original house have?', + responses: [ + { + value: '2 or more', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: + 'Is any part of the extension within 2 metres of a boundary of the house?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'How many storeys does the original house have?', + responses: [ + { + value: '2 or more', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: + 'Are the materials of the extension similar to the original house?', + responses: [ + { + value: 'Yes', + metadata: { + flags: ['Planning permission / Permitted development'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the property on designated land?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: + 'How much of the available area around the house is covered by extensions and outbuildings?', + responses: [ + { + value: '50% or less of the available area around the original house', + metadata: { + flags: ['Planning permission / Permitted development'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What will you use the extension for?', + responses: [ + { + value: 'Hobby space or similar', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1', + }, + { + text: 'Town and Country Planning Act 1990, Section 55', + url: 'https://www.legislation.gov.uk/ukpga/1990/8/section/55', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Who will use the hobby space?', + responses: [ + { + value: 'Me and my family, personal use only', + metadata: { + flags: ['Planning permission / Permitted development'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'Town and Country Planning Act 1990, Section 55', + url: 'https://www.legislation.gov.uk/ukpga/1990/8/section/55', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What type of application is being applied for?', + responses: [ + { + value: 'Part 1 Class A', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Is the property subject to any Article 4 directions?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Larger extension to a house', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'How many properties adjoin yours?', + responses: [ + { + value: '2', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015, Schedule 2, Part 1, Class A.4 (5)', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-a-enlargement-improvement-or-other-alteration-of-a-dwellinghouse', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Enter the address of the first adjoining property', + responses: [ + { + value: '21 Fellbrigg Road, London, SE22 9HQ', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015, Schedule 2, Part 1, Class A.4 (5)', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-a-enlargement-improvement-or-other-alteration-of-a-dwellinghouse', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Enter the address of the second adjoining property', + responses: [ + { + value: '25 Fellbrigg Road, London, SE22 9HQ', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015, Schedule 2, Part 1, Class A.4 (5)', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-a-enlargement-improvement-or-other-alteration-of-a-dwellinghouse', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the proposal within the Greater London Authority?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Does the site include more than one property?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Do you know the title number of the property?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Does the property have an Energy Performance Certificate (EPC)?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Enter the reference number (RRN) from the most recent EPC', + responses: [ + { + value: '1234-1234-1234-1234-1234', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What type of application is this?', + responses: [ + { + value: 'Prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'When are the works planned to start?', + responses: [ + { + value: '2024-06-17', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'When are the works planned to be completed?', + responses: [ + { + value: '2050-06-18', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + '[HIDDEN] Is the application for prior approval for an extension to a dwelling house?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'What is the gross internal floor area to be added?', + responses: [ + { + value: '40', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Do the changes involve creating any new bedrooms or bathrooms?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Are there existing or are you proposing parking spaces for any of these on the site?', + responses: [ + { + value: 'Bicycles', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What is the number of existing bicycle parking spaces?', + responses: [ + { + value: '2', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What is the proposed total number of bicycle parking spaces?', + responses: [ + { + value: '2', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Apply for prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'Are you applying on behalf of someone else?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Which of these best describes you?', + responses: [ + { + value: 'Private individual', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Your contact details', + responses: [ + { + value: 'William Zane 01234000000 areyouon@email.org', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Is your contact address the same as the property address?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Can a planning officer see the works from public land?', + responses: [ + { + value: "Yes, it's visible from the road or somewhere else", + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: + 'We may need to visit the site to assess your application. If we do, who should we contact to arrange the visit?', + responses: [ + { + value: 'Me, the applicant', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Larger extension to a house', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Upload drawings', + }, + }, + { + question: 'Has the house already been extended?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'Upload drawings', + }, + }, + { + question: 'Is this for submission or information only?', + responses: [ + { + value: 'Submission', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Upload drawings', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Larger extension to a house', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Is the property a home?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'What works does the project involve?', + responses: [ + { + value: 'Extension', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: + 'Is the purpose of the project to support the needs of a disabled resident?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + { + text: 'UK Statutory Instruments 2012 No. 2920 Regulation 4', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/4/made', + }, + { + text: 'Equalities Act 2010, Section 6', + url: 'https://www.legislation.gov.uk/ukpga/2010/15/section/6', + }, + { + text: 'Children Act 1989, Part 3', + url: 'https://www.legislation.gov.uk/ukpga/1989/41/part/III', + }, + ], + sectionName: 'Check your application', + }, + }, + { + question: 'Are you the applicant?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Would you like to upload evidence of your disability?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'Check your application', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Larger extension to a house', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: + 'Are you submitting any other planning applications about the same works or changes?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + ], + sectionName: 'Check your application', + }, + }, + { + question: 'Does the application qualify for a disability exemption?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Is it any of these?', + responses: [ + { + value: 'None of these', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Check for multiple fees?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Which Local Planning authority is it?', + responses: [ + { + value: 'Southwark', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Connections with Southwark Council', + responses: [ + { + value: 'None of the above apply to me', + }, + ], + metadata: { + sectionName: 'Check your application', + }, + }, + { + question: 'I confirm that:', + responses: [ + { + value: + 'The information contained in this application is truthful, accurate and complete, to the best of my knowledge', + }, + ], + metadata: { + sectionName: 'Check your application', + }, + }, + { + question: 'Which Local Planning authority is it?', + responses: [ + { + value: 'Southwark', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Pay and submit', + }, + }, + { + question: + 'What type of prior approval application is it?application.type', + responses: [ + { + value: 'Larger extension to a house', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Pay and submit', + }, + }, + ], + files: [ + { + name: 'https://api.editor.planx.dev/file/private/dfaz9qu5/location%20plan_proposed_01.jpg', + type: ['sitePlan.proposed'], + }, + { + name: 'https://api.editor.planx.dev/file/private/avilhq1j/elevations_existing_01.jpg', + type: ['elevations.existing'], + }, + { + name: 'https://api.editor.planx.dev/file/private/tis6f8hh/elevations_proposed_01.jpg', + type: ['elevations.proposed'], + }, + ], + metadata: { + id: '80d3c3c2-0d1c-4a79-be99-912f488c2f02', + organisation: 'SWK', + submittedAt: '2024-06-26T18:14:45.726Z', + source: 'PlanX', + service: { + flowId: 'c6628103-c648-4663-81e1-bfa0a1a18340', + url: 'https://editor.planx.uk/southwark/apply-for-prior-approval/published', + files: { + required: [ + { + value: 'sitePlan.proposed', + description: 'Site plan - proposed', + }, + ], + recommended: [ + { + value: 'elevations.existing', + description: 'Elevations - existing', + }, + { + value: 'elevations.proposed', + description: 'Elevations - proposed', + }, + ], + optional: [ + { + value: 'photographs.existing', + description: 'Photographs - existing', + }, + { + value: 'otherDrawing', + description: 'Other - drawing', + }, + { + value: 'otherDocument', + description: 'Other - document', + }, + { + value: 'visualisations', + description: 'Visualisations', + }, + ], + }, + fee: { + calculated: [ + { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) (Amendment) Regulations 2023', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + payable: [ + { + description: + '

If the proposed works (to either a home or within the curtilage of a home) is for the sole purpose of providing either:

\n

\n

- A means of access to (or within) the dwellinghouse for a disabled resident (current or future)

\n

\n

OR

\n

\n

- Providing facilities that are designed to ensure the disabled persons safety, health or comfort

\n

\n

OR

\n

\n

- Providing disabled access to a public building

\n

\n

Then no planning fee will be payable for this application.

', + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + { + text: 'Regulation 4', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/4/made', + }, + ], + }, + ], + }, + }, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + }, +}; diff --git a/examples/prototypeApplication/data/priorApproval/solarPanels.ts b/examples/prototypeApplication/data/priorApproval/solarPanels.ts index e69de29b..2cd4f15e 100644 --- a/examples/prototypeApplication/data/priorApproval/solarPanels.ts +++ b/examples/prototypeApplication/data/priorApproval/solarPanels.ts @@ -0,0 +1,1306 @@ +import {PrototypeApplication} from '../../../../types/schemas/prototypeApplication'; + +const version = process.env['VERSION'] || '@next'; + +export const priorApprovalSolarPanelsPrototype: PrototypeApplication = { + applicationType: 'pa.part14.classJ', + data: { + user: { + role: 'applicant', + }, + applicant: { + type: 'individual', + name: { + first: 'Bill', + last: 'Shakespeare', + }, + email: 'byanyothername@email.org', + phone: { + primary: '012345678901', + }, + address: { + sameAsSiteAddress: true, + }, + siteContact: { + role: 'applicant', + }, + }, + property: { + address: { + latitude: 51.5081124, + longitude: -0.0965717, + x: 532192, + y: 180515, + title: + 'INTERNATIONAL SHAKESPEARE GLOBE CENTRE LTD, SHAKESPEARE GLOBE THEATRE, 21, NEW GLOBE WALK, LONDON', + source: 'Ordnance Survey', + uprn: '200003377200', + usrn: '22503078', + pao: '21SHAKESPEARE GLOBE THEATRE', + street: 'NEW GLOBE WALK', + town: 'LONDON', + postcode: 'SE1 9DT', + singleLine: + 'INTERNATIONAL SHAKESPEARE GLOBE CENTRE LTD, SHAKESPEARE GLOBE THEATRE, 21, NEW GLOBE WALK, LONDON, SOUTHWARK, SE1 9DT', + }, + localAuthorityDistrict: ['Southwark'], + region: 'London', + type: 'commercial.leisure.entertainment', + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'MultiPolygon', + coordinates: [ + [ + [ + [-0.097554, 51.507945], + [-0.097612, 51.507942], + [-0.097592, 51.507805], + [-0.097442, 51.507818], + [-0.097257, 51.507806], + [-0.097255, 51.507821], + [-0.096964, 51.507802], + [-0.096853, 51.507857], + [-0.096465, 51.507835], + [-0.096391, 51.508281], + [-0.096748, 51.508303], + [-0.096891, 51.508319], + [-0.097056, 51.5083], + [-0.097068, 51.508316], + [-0.097096, 51.508318], + [-0.097232, 51.508312], + [-0.09723, 51.508301], + [-0.097249, 51.508299], + [-0.097247, 51.508292], + [-0.097277, 51.50829], + [-0.097279, 51.508302], + [-0.097362, 51.508296], + [-0.097358, 51.508284], + [-0.09741, 51.50828], + [-0.097414, 51.508291], + [-0.097452, 51.508288], + [-0.09745, 51.508279], + [-0.097626, 51.508267], + [-0.097607, 51.508177], + [-0.097597, 51.508177], + [-0.097554, 51.507945], + ], + ], + ], + }, + properties: { + name: '', + entity: 12000608797, + prefix: 'title-boundary', + dataset: 'title-boundary', + 'end-date': '', + typology: 'geography', + reference: '53336201', + 'entry-date': '2024-05-06', + 'start-date': '2011-12-01', + 'organisation-entity': '13', + }, + }, + area: { + hectares: 0.424414, + squareMetres: 4244.14, + }, + }, + titleNumber: { + known: 'Yes', + number: '24/12345/FUL', + }, + EPC: { + known: 'Yes', + number: '1234-1234-1234-1234', + }, + parking: { + cars: { + count: 0, + }, + vans: { + count: 0, + }, + motorcycles: { + count: 0, + }, + cycles: { + count: 30, + }, + buses: { + count: 0, + }, + disabled: { + count: 0, + }, + carClub: { + count: 0, + }, + offStreet: { + residential: { + count: 0, + }, + }, + other: { + count: 0, + }, + }, + }, + application: { + fee: { + calculated: 120, + payable: 120, + exemption: { + disability: false, + resubmission: false, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + reference: { + govPay: 'mfm6s5irae9bh5g75p3ks5opng', + }, + }, + declaration: { + accurate: true, + connection: { + value: 'none', + }, + }, + }, + proposal: { + projectType: ['alter.equipment.solar'], + description: 'Not provided', + date: { + start: '2024-07-28', + completion: '2030-07-28', + }, + boundary: { + site: { + type: 'Feature', + geometry: { + type: 'MultiPolygon', + coordinates: [ + [ + [ + [-0.097554, 51.507945], + [-0.097612, 51.507942], + [-0.097592, 51.507805], + [-0.097442, 51.507818], + [-0.097257, 51.507806], + [-0.097255, 51.507821], + [-0.096964, 51.507802], + [-0.096853, 51.507857], + [-0.096465, 51.507835], + [-0.096391, 51.508281], + [-0.096748, 51.508303], + [-0.096891, 51.508319], + [-0.097056, 51.5083], + [-0.097068, 51.508316], + [-0.097096, 51.508318], + [-0.097232, 51.508312], + [-0.09723, 51.508301], + [-0.097249, 51.508299], + [-0.097247, 51.508292], + [-0.097277, 51.50829], + [-0.097279, 51.508302], + [-0.097362, 51.508296], + [-0.097358, 51.508284], + [-0.09741, 51.50828], + [-0.097414, 51.508291], + [-0.097452, 51.508288], + [-0.09745, 51.508279], + [-0.097626, 51.508267], + [-0.097607, 51.508177], + [-0.097597, 51.508177], + [-0.097554, 51.507945], + ], + ], + ], + }, + properties: { + name: '', + entity: 12000608797, + prefix: 'title-boundary', + dataset: 'title-boundary', + 'end-date': '', + typology: 'geography', + reference: '53336201', + 'entry-date': '2024-05-06', + 'start-date': '2011-12-01', + 'organisation-entity': '13', + planx_user_action: 'Accepted the title boundary', + }, + }, + area: { + hectares: 0.424414, + squareMetres: 4244.14, + }, + }, + parking: { + cars: { + count: 0, + difference: 0, + }, + vans: { + count: 0, + difference: 0, + }, + motorcycles: { + count: 0, + difference: 0, + }, + cycles: { + count: 30, + difference: 0, + }, + buses: { + count: 0, + difference: 0, + }, + disabled: { + count: 0, + difference: 0, + }, + carClub: { + count: 0, + difference: 0, + }, + offStreet: { + residential: { + count: 0, + difference: 0, + }, + }, + other: { + count: 0, + difference: 0, + }, + }, + }, + }, + preAssessment: [ + { + value: 'Planning permission / Prior approval', + description: + 'It looks like the proposed changes do not require planning permission, however the applicant must apply for Prior Approval before proceeding.', + }, + ], + responses: [ + { + question: 'Is the property in Southwark?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Something else', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'Which of these best describes the use of the property?', + responses: [ + { + value: 'Leisure and sport', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'What type of leisure property is it?', + responses: [ + { + value: 'Entertainment', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, + }, + { + question: 'Have the works already started?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Describe the project.', + responses: [ + { + value: + 'Installation of solar panels on the roof of the globe theatre', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Commercial building', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Neither a house nor a flat', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'What do you want to install?', + responses: [ + { + value: 'Solar photovoltaics (PV)', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Are there any other locations where the equipment could be installed?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14/crossheading/class-a-installation-or-alteration-etc-of-solar-equipment-on-domestic-premises', + }, + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class K', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14/crossheading/class-k-installation-or-alteration-etc-of-standalone-solar-equipment-on-nondomestic-premises', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Would the solar panels would be less visible from the highway in these other locations?', + responses: [ + { + value: 'No', + metadata: { + flags: ['Planning permission / Permitted development'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14/crossheading/class-a-installation-or-alteration-etc-of-solar-equipment-on-domestic-premises', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the building listed?', + responses: [ + { + value: 'No', + metadata: { + flags: ['Planning permission / Permitted development'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class J', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14/crossheading/class-j-installation-or-alteration-etc-of-solar-equipment-on-nondomestic-premises', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Is the property a scheduled monument?', + responses: [ + { + value: 'No', + metadata: { + flags: ['Planning permission / Permitted development'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class J', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14/crossheading/class-j-installation-or-alteration-etc-of-solar-equipment-on-nondomestic-premises', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Where are the new solar panels?', + responses: [ + { + value: 'On roofs', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What type of roofs are they?', + responses: [ + { + value: 'Pitched', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'How far do the new solar panels stick out from the pitched roofs?', + responses: [ + { + value: '0.2m or less', + metadata: { + flags: ['Planning permission / Permitted development'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class J', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'How far are the new solar panels from the edge of the roof?', + responses: [ + { + value: '1m or more from the edge of the roof', + metadata: { + flags: ['Planning permission / Permitted development'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class J', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What do you want to install?', + responses: [ + { + value: 'Solar photovoltaics (PV)', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What is the total capacity of all solar photovoltaics (PV)?', + responses: [ + { + value: 'More than 50kW', + metadata: { + flags: ['Planning permission / Prior approval'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class J', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'The solar panels must be removed when no longer needed.', + responses: [ + { + value: 'OK', + metadata: { + flags: ['Planning permission / Permitted development'], + }, + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class A', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14/crossheading/class-a-installation-or-alteration-etc-of-solar-equipment-on-domestic-premises', + }, + { + text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class K', + url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14/crossheading/class-k-installation-or-alteration-etc-of-standalone-solar-equipment-on-nondomestic-premises', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What type of property is it?', + responses: [ + { + value: 'Another use', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'Select your project', + responses: [ + { + value: 'Install solar panels', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What type of application is being applied for?', + responses: [ + { + value: 'Part 14 Class J', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Is the property subject to any Article 4 directions?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Install or change solar panels', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Is the proposal within the Greater London Authority?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'Does the site include more than one property?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Do you know the title number of the property?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What is the title number of the property?', + responses: [ + { + value: '24/12345/FUL', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + 'Does the property have an Energy Performance Certificate (EPC)?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'Enter the reference number (RRN) from the most recent EPC', + responses: [ + { + value: '1234-1234-1234-1234', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: 'What type of application is this?', + responses: [ + { + value: 'Prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'When are the works planned to start?', + responses: [ + { + value: '2024-07-28', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'When are the works planned to be completed?', + responses: [ + { + value: '2030-07-28', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: + '[HIDDEN] Is the application for prior approval for an extension to a dwelling house?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About the project', + }, + }, + { + question: 'What is the gross internal floor area to be added?', + responses: [ + { + value: '0', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Do the changes involve creating any new bedrooms or bathrooms?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, + { + question: + 'Are there existing or are you proposing parking spaces for any of these on the site?', + responses: [ + { + value: 'Bicycles', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What is the number of existing bicycle parking spaces?', + responses: [ + { + value: '30', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What is the proposed total number of bicycle parking spaces?', + responses: [ + { + value: '30', + }, + ], + metadata: { + policyRefs: [ + { + text: 'Greater London Authority Act 1999', + url: 'https://www.legislation.gov.uk/ukpga/1999/29/section/346', + }, + ], + sectionName: 'About the project', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Apply for prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'About you', + }, + }, + { + question: 'Are you applying on behalf of someone else?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Which of these best describes you?', + responses: [ + { + value: 'Private individual', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Your contact details', + responses: [ + { + value: 'Bill Shakespeare 012345678901 byanyothername@email.org', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Is your contact address the same as the property address?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Your contact address', + responses: [ + { + value: '12 Sonnet Street, Stratford upon Avon, TH334RD', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'Can a planning officer see the works from public land?', + responses: [ + { + value: "Yes, it's visible from the road or somewhere else", + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: + 'We may need to visit the site to assess your application. If we do, who should we contact to arrange the visit?', + responses: [ + { + value: 'Me, the applicant', + }, + ], + metadata: { + sectionName: 'About you', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Install or change solar panels', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Upload drawings', + }, + }, + { + question: 'Where will the solar panels be installed?', + responses: [ + { + value: 'On roofs', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Upload drawings', + }, + }, + { + question: + 'Your planning officer will need to check how far the solar panels stick out beyond the surface of the roof. What do you have that shows this?', + responses: [ + { + value: 'Section drawing of the building', + }, + ], + metadata: { + sectionName: 'Upload drawings', + }, + }, + { + question: 'Is this for submission or information only?', + responses: [ + { + value: 'Submission', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Upload drawings', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Install or change solar panels', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Is the property a home?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'What type of changes does the project involve?', + responses: [ + { + value: 'Alteration', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Are the public allowed to access the building?', + responses: [ + { + value: 'Yes', + }, + ], + metadata: { + sectionName: 'Check your application', + }, + }, + { + question: + 'Is the sole purpose of the project to provide disabled access to (or within) the building?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + { + text: 'Regulation 4 (1)(b)', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/4', + }, + ], + sectionName: 'Check your application', + }, + }, + { + question: 'What type of prior approval application is it?', + responses: [ + { + value: 'Install or change solar panels', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Does the application qualify for a disability exemption?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Does the application qualify for a resubmission exemption?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: + 'Does the application qualify to the same-day-planning-application exemption?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14', + url: 'https://www.legislation.gov.uk/uksi/2012/2920/regulation/14', + }, + ], + sectionName: 'Check your application', + }, + }, + { + question: 'Check for multiple fees?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'What type of application is it?', + responses: [ + { + value: 'Prior approval', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Which Local Planning authority is it?', + responses: [ + { + value: 'Southwark', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, + }, + { + question: 'Connections with Southwark Council', + responses: [ + { + value: 'None of the above apply to me', + }, + ], + metadata: { + sectionName: 'Check your application', + }, + }, + { + question: 'I confirm that:', + responses: [ + { + value: + 'The information contained in this application is truthful, accurate and complete, to the best of my knowledge', + }, + ], + metadata: { + sectionName: 'Check your application', + }, + }, + { + question: 'Which Local Planning authority is it?', + responses: [ + { + value: 'Southwark', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Pay and submit', + }, + }, + { + question: + 'What type of prior approval application is it?application.type', + responses: [ + { + value: 'Install or change solar panels', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Pay and submit', + }, + }, + ], + files: [ + { + name: 'https://api.editor.planx.dev/file/private/mq2iovsi/test%20document.pdf', + type: ['sections.proposed'], + }, + { + name: 'https://api.editor.planx.dev/file/private/czxk98ug/test%20document.pdf', + type: ['sitePlan.proposed'], + }, + ], + metadata: { + id: 'dee911d0-48b4-438c-96b6-2bb12ae46335', + organisation: 'SWK', + submittedAt: '2024-06-29T13:06:44.801Z', + source: 'PlanX', + service: { + flowId: 'c6628103-c648-4663-81e1-bfa0a1a18340', + url: 'https://editor.planx.uk/southwark/apply-for-prior-approval/published', + files: { + required: [ + { + value: 'sitePlan.proposed', + description: 'Site plan - proposed', + }, + { + value: 'sections.proposed', + description: 'Sections - proposed', + }, + ], + recommended: [], + optional: [ + { + value: 'photographs.existing', + description: 'Photographs - existing', + }, + { + value: 'otherDrawing', + description: 'Other - drawing', + }, + { + value: 'otherDocument', + description: 'Other - document', + }, + { + value: 'visualisations', + description: 'Visualisations', + }, + ], + }, + fee: { + calculated: [ + { + policyRefs: [ + { + text: 'The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) (Amendment) Regulations 2023', + url: 'https://www.legislation.gov.uk/uksi/2023/1197/made', + }, + ], + }, + ], + payable: [ + { + description: + '

This application does not qualify for any exemptions or reductions

', + }, + ], + }, + }, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + }, +}; diff --git a/examples/prototypeApplication/landDrainageConsent.json b/examples/prototypeApplication/landDrainageConsent.json new file mode 100644 index 00000000..c75b2253 --- /dev/null +++ b/examples/prototypeApplication/landDrainageConsent.json @@ -0,0 +1,1063 @@ +{ + "applicationType": "landDrainageConsent", + "data": { + "user": { + "role": "applicant" + }, + "applicant": { + "type": "company", + "name": { + "title": "Bishop", + "first": "Gundulf", + "last": "of Rochester" + }, + "email": "Gundulf1066@email.org", + "phone": { + "primary": "012345678900" + }, + "company": { + "name": "The Normans" + }, + "address": { + "sameAsSiteAddress": true + }, + "siteContact": { + "role": "applicant" + } + }, + "property": { + "address": { + "latitude": 51.3893641, + "longitude": 0.5014056, + "x": 574136.97, + "y": 168560.23, + "title": "ROCHESTER CASTLE, CASTLE HILL, ROCHESTER", + "source": "Ordnance Survey", + "uprn": "000044026089", + "usrn": "32100321", + "pao": "ROCHESTER CASTLE", + "street": "CASTLE HILL", + "town": "ROCHESTER", + "postcode": "ME1 1SW", + "singleLine": "ROCHESTER CASTLE, CASTLE HILL, ROCHESTER, MEDWAY, ME1 1SW" + }, + "localAuthorityDistrict": [ + "Medway" + ], + "region": "South East", + "type": "object.monument.ruin", + "planning": { + "sources": [ + "https://api.editor.planx.dev/gis/medway?geom=MULTIPOLYGON+%28%28%280.501333+51.389204%2C+0.501327+51.389199%2C+0.501346+51.38919%2C+0.501352+51.389196%2C+0.5014+51.389172%2C+0.501397+51.389144%2C+0.501411+51.389132%2C+0.501444+51.389121%2C+0.501496+51.389119%2C+0.501434+51.389032%2C+0.501347+51.388881%2C+0.501359+51.388874%2C+0.501334+51.388851%2C+0.501338+51.388839%2C+0.501489+51.388798%2C+0.501726+51.388796%2C+0.502053+51.389053%2C+0.50167+51.389267%2C+0.501967+51.38942%2C+0.501988+51.389411%2C+0.50202+51.389429%2C+0.502181+51.389535%2C+0.502302+51.389655%2C+0.502374+51.38964%2C+0.502416+51.389716%2C+0.502369+51.389725%2C+0.502368+51.389734%2C+0.502346+51.389744%2C+0.502395+51.389854%2C+0.502762+51.389814%2C+0.502818+51.389814%2C+0.50282+51.389997%2C+0.5028+51.390009%2C+0.502456+51.390001%2C+0.502391+51.390006%2C+0.502379+51.390081%2C+0.502361+51.390118%2C+0.50232+51.390174%2C+0.502262+51.390227%2C+0.502188+51.390267%2C+0.502061+51.390275%2C+0.502009+51.390294%2C+0.501308+51.390767%2C+0.501288+51.390844%2C+0.501277+51.390848%2C+0.501089+51.390825%2C+0.501085+51.390821%2C+0.501112+51.390769%2C+0.501038+51.390767%2C+0.501053+51.390696%2C+0.501025+51.390664%2C+0.501099+51.390638%2C+0.501106+51.390622%2C+0.501062+51.390559%2C+0.501022+51.390527%2C+0.50097+51.390464%2C+0.50088+51.390319%2C+0.500776+51.390202%2C+0.500592+51.389857%2C+0.500495+51.389655%2C+0.500548+51.38964%2C+0.500614+51.389683%2C+0.500618+51.389621%2C+0.500633+51.38958%2C+0.500721+51.389489%2C+0.500771+51.389459%2C+0.501262+51.389242%2C+0.501258+51.389238%2C+0.501285+51.389225%2C+0.501279+51.389219%2C+0.501296+51.389212%2C+0.501302+51.389218%2C+0.501333+51.389204%29%29%29&analytics=false&sessionId=8e372199-30e8-4b01-aef0-0745195b0e14", + "https://api.editor.planx.dev/roads?usrn=32100321" + ], + "designations": [ + { + "value": "tpo", + "intersects": false + }, + { + "value": "flood", + "intersects": true, + "entities": [ + { + "name": "Tidal Models - Risk level 3", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/65104983" + } + }, + { + "name": "Tidal Models - Risk level 2", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/65230121" + } + } + ] + }, + { + "value": "listed", + "intersects": true, + "entities": [ + { + "name": "ROCHESTER CASTLE", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/31792007" + } + }, + { + "name": "Rochester Castle", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/42127185" + } + } + ] + }, + { + "value": "article4", + "intersects": false + }, + { + "value": "monument", + "intersects": true, + "entities": [ + { + "name": "Rochester Castle", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/13909855" + } + } + ] + }, + { + "value": "greenBelt", + "intersects": false + }, + { + "value": "designated", + "intersects": true + }, + { + "value": "nature.SAC", + "intersects": false + }, + { + "value": "nature.SPA", + "intersects": false + }, + { + "value": "nature.ASNW", + "intersects": false + }, + { + "value": "nature.SSSI", + "intersects": false + }, + { + "value": "flood.zone.1", + "intersects": false + }, + { + "value": "flood.zone.2", + "intersects": true + }, + { + "value": "flood.zone.3", + "intersects": true + }, + { + "value": "brownfieldSite", + "intersects": false + }, + { + "value": "designated.WHS", + "intersects": false + }, + { + "value": "listed.grade.I", + "intersects": true + }, + { + "value": "registeredPark", + "intersects": false + }, + { + "value": "designated.AONB", + "intersects": false + }, + { + "value": "listed.grade.II", + "intersects": false + }, + { + "value": "listed.grade.II*", + "intersects": false + }, + { + "value": "nature.ramsarSite", + "intersects": false + }, + { + "value": "designated.nationalPark", + "intersects": false + }, + { + "value": "designated.conservationArea", + "intersects": true, + "entities": [ + { + "name": "Polygon", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/44009809" + } + } + ] + }, + { + "value": "designated.nationalPark.broads", + "intersects": false + }, + { + "value": "road.classified", + "intersects": false + } + ] + }, + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 0.501333, + 51.389204 + ], + [ + 0.501327, + 51.389199 + ], + [ + 0.501346, + 51.38919 + ], + [ + 0.501352, + 51.389196 + ], + [ + 0.5014, + 51.389172 + ], + [ + 0.501397, + 51.389144 + ], + [ + 0.501411, + 51.389132 + ], + [ + 0.501444, + 51.389121 + ], + [ + 0.501496, + 51.389119 + ], + [ + 0.501434, + 51.389032 + ], + [ + 0.501347, + 51.388881 + ], + [ + 0.501359, + 51.388874 + ], + [ + 0.501334, + 51.388851 + ], + [ + 0.501338, + 51.388839 + ], + [ + 0.501489, + 51.388798 + ], + [ + 0.501726, + 51.388796 + ], + [ + 0.502053, + 51.389053 + ], + [ + 0.50167, + 51.389267 + ], + [ + 0.501967, + 51.38942 + ], + [ + 0.501988, + 51.389411 + ], + [ + 0.50202, + 51.389429 + ], + [ + 0.502181, + 51.389535 + ], + [ + 0.502302, + 51.389655 + ], + [ + 0.502374, + 51.38964 + ], + [ + 0.502416, + 51.389716 + ], + [ + 0.502369, + 51.389725 + ], + [ + 0.502368, + 51.389734 + ], + [ + 0.502346, + 51.389744 + ], + [ + 0.502395, + 51.389854 + ], + [ + 0.502762, + 51.389814 + ], + [ + 0.502818, + 51.389814 + ], + [ + 0.50282, + 51.389997 + ], + [ + 0.5028, + 51.390009 + ], + [ + 0.502456, + 51.390001 + ], + [ + 0.502391, + 51.390006 + ], + [ + 0.502379, + 51.390081 + ], + [ + 0.502361, + 51.390118 + ], + [ + 0.50232, + 51.390174 + ], + [ + 0.502262, + 51.390227 + ], + [ + 0.502188, + 51.390267 + ], + [ + 0.502061, + 51.390275 + ], + [ + 0.502009, + 51.390294 + ], + [ + 0.501308, + 51.390767 + ], + [ + 0.501288, + 51.390844 + ], + [ + 0.501277, + 51.390848 + ], + [ + 0.501089, + 51.390825 + ], + [ + 0.501085, + 51.390821 + ], + [ + 0.501112, + 51.390769 + ], + [ + 0.501038, + 51.390767 + ], + [ + 0.501053, + 51.390696 + ], + [ + 0.501025, + 51.390664 + ], + [ + 0.501099, + 51.390638 + ], + [ + 0.501106, + 51.390622 + ], + [ + 0.501062, + 51.390559 + ], + [ + 0.501022, + 51.390527 + ], + [ + 0.50097, + 51.390464 + ], + [ + 0.50088, + 51.390319 + ], + [ + 0.500776, + 51.390202 + ], + [ + 0.500592, + 51.389857 + ], + [ + 0.500495, + 51.389655 + ], + [ + 0.500548, + 51.38964 + ], + [ + 0.500614, + 51.389683 + ], + [ + 0.500618, + 51.389621 + ], + [ + 0.500633, + 51.38958 + ], + [ + 0.500721, + 51.389489 + ], + [ + 0.500771, + 51.389459 + ], + [ + 0.501262, + 51.389242 + ], + [ + 0.501258, + 51.389238 + ], + [ + 0.501285, + 51.389225 + ], + [ + 0.501279, + 51.389219 + ], + [ + 0.501296, + 51.389212 + ], + [ + 0.501302, + 51.389218 + ], + [ + 0.501333, + 51.389204 + ] + ] + ] + ] + }, + "properties": { + "name": "", + "entity": 12000665421, + "prefix": "title-boundary", + "dataset": "title-boundary", + "end-date": "", + "typology": "geography", + "reference": "45856207", + "entry-date": "2024-05-06", + "start-date": "2010-06-08", + "organisation-entity": "13" + } + }, + "area": { + "hectares": 1.684864, + "squareMetres": 16848.64 + } + } + }, + "application": { + "fee": { + "calculated": 200, + "payable": 200, + "exemption": { + "disability": false, + "resubmission": false + }, + "reduction": { + "sports": false, + "parishCouncil": false, + "alternative": false + }, + "reference": { + "govPay": "sandbox-456" + } + }, + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } + }, + "preApp": { + "reference": "24/12345/PRE", + "date": "2024-06-08", + "officer": "Unknown", + "summary": "Not provided" + }, + "planningApp": { + "reference": "24/12345/FUL", + "date": "2024-06-28", + "localPlanningAuthority": "Medway" + } + }, + "proposal": { + "projectType": [ + "alter" + ], + "description": "Upgrading of our drawbridge as it needs a bit of work - retarring, sharpen the spikes, derust the chains etc. We will need to access the lifting gear which is situated in the moat so will need to temporarily divert the water ", + "date": { + "start": "2024-07-08", + "completion": "2024-08-08" + }, + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 0.501333, + 51.389204 + ], + [ + 0.501327, + 51.389199 + ], + [ + 0.501346, + 51.38919 + ], + [ + 0.501352, + 51.389196 + ], + [ + 0.5014, + 51.389172 + ], + [ + 0.501397, + 51.389144 + ], + [ + 0.501411, + 51.389132 + ], + [ + 0.501444, + 51.389121 + ], + [ + 0.501496, + 51.389119 + ], + [ + 0.501434, + 51.389032 + ], + [ + 0.501347, + 51.388881 + ], + [ + 0.501359, + 51.388874 + ], + [ + 0.501334, + 51.388851 + ], + [ + 0.501338, + 51.388839 + ], + [ + 0.501489, + 51.388798 + ], + [ + 0.501726, + 51.388796 + ], + [ + 0.502053, + 51.389053 + ], + [ + 0.50167, + 51.389267 + ], + [ + 0.501967, + 51.38942 + ], + [ + 0.501988, + 51.389411 + ], + [ + 0.50202, + 51.389429 + ], + [ + 0.502181, + 51.389535 + ], + [ + 0.502302, + 51.389655 + ], + [ + 0.502374, + 51.38964 + ], + [ + 0.502416, + 51.389716 + ], + [ + 0.502369, + 51.389725 + ], + [ + 0.502368, + 51.389734 + ], + [ + 0.502346, + 51.389744 + ], + [ + 0.502395, + 51.389854 + ], + [ + 0.502762, + 51.389814 + ], + [ + 0.502818, + 51.389814 + ], + [ + 0.50282, + 51.389997 + ], + [ + 0.5028, + 51.390009 + ], + [ + 0.502456, + 51.390001 + ], + [ + 0.502391, + 51.390006 + ], + [ + 0.502379, + 51.390081 + ], + [ + 0.502361, + 51.390118 + ], + [ + 0.50232, + 51.390174 + ], + [ + 0.502262, + 51.390227 + ], + [ + 0.502188, + 51.390267 + ], + [ + 0.502061, + 51.390275 + ], + [ + 0.502009, + 51.390294 + ], + [ + 0.501308, + 51.390767 + ], + [ + 0.501288, + 51.390844 + ], + [ + 0.501277, + 51.390848 + ], + [ + 0.501089, + 51.390825 + ], + [ + 0.501085, + 51.390821 + ], + [ + 0.501112, + 51.390769 + ], + [ + 0.501038, + 51.390767 + ], + [ + 0.501053, + 51.390696 + ], + [ + 0.501025, + 51.390664 + ], + [ + 0.501099, + 51.390638 + ], + [ + 0.501106, + 51.390622 + ], + [ + 0.501062, + 51.390559 + ], + [ + 0.501022, + 51.390527 + ], + [ + 0.50097, + 51.390464 + ], + [ + 0.50088, + 51.390319 + ], + [ + 0.500776, + 51.390202 + ], + [ + 0.500592, + 51.389857 + ], + [ + 0.500495, + 51.389655 + ], + [ + 0.500548, + 51.38964 + ], + [ + 0.500614, + 51.389683 + ], + [ + 0.500618, + 51.389621 + ], + [ + 0.500633, + 51.38958 + ], + [ + 0.500721, + 51.389489 + ], + [ + 0.500771, + 51.389459 + ], + [ + 0.501262, + 51.389242 + ], + [ + 0.501258, + 51.389238 + ], + [ + 0.501285, + 51.389225 + ], + [ + 0.501279, + 51.389219 + ], + [ + 0.501296, + 51.389212 + ], + [ + 0.501302, + 51.389218 + ], + [ + 0.501333, + 51.389204 + ] + ] + ] + ] + }, + "properties": { + "name": "", + "entity": 12000665421, + "prefix": "title-boundary", + "dataset": "title-boundary", + "end-date": "", + "typology": "geography", + "reference": "45856207", + "entry-date": "2024-05-06", + "start-date": "2010-06-08", + "organisation-entity": "13", + "planx_user_action": "Accepted the title boundary" + } + }, + "area": { + "hectares": 1.684864, + "squareMetres": 16848.64 + } + }, + "watercourse": { + "name": "Rochester Castle Moat", + "type": "ditch" + }, + "structures": { + "type": "bridge", + "total": 4, + "permanent": { + "count": 1 + }, + "temporary": { + "count": 3 + } + }, + "environmentalImpactDescription": "These are the environmental impact of the works to be undertaken: A, B, C. And this is how we are mitigating them: 1, 2, 3" + } + }, + "responses": [ + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Something else" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Which of these best describes the use of the property?", + "responses": [ + { + "value": "Other" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Historic site" + } + ], + "metadata": {} + }, + { + "question": "Did you get any pre-application advice from the council before making this application?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": {} + }, + { + "question": "What was the name of the planning officer you spoke to?", + "responses": [ + { + "value": "unknown" + } + ], + "metadata": {} + }, + { + "question": "What was your reference?", + "responses": [ + { + "value": "24/12345/PRE" + } + ], + "metadata": {} + }, + { + "question": "What date was the pre-application advice given on?", + "responses": [ + { + "value": "2024-06-08" + } + ], + "metadata": {} + }, + { + "question": "What was the pre-application advice you have received?", + "responses": [ + { + "value": "this is the advice received. this is the advice received.this is the advice received.this is the advice received.this is the advice received." + } + ], + "metadata": {} + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Medway" + } + ], + "metadata": { + "autoAnswered": true + } + }, + { + "question": "Connections with Medway Council", + "responses": [ + { + "value": "None of the above apply to me" + } + ], + "metadata": {} + }, + { + "question": "I confirm that:", + "responses": [ + { + "value": "The information contained in this application is truthful, accurate and complete, to the best of my knowledge" + } + ], + "metadata": {} + } + ], + "files": [ + { + "name": "https://api.editor.planx.dev/file/private/40z9r39r/test%20document.pdf", + "type": [ + "relevantInformation" + ] + } + ], + "metadata": { + "id": "8e372199-30e8-4b01-aef0-0745195b0e14", + "organisation": "MDW", + "submittedAt": "2024-07-11T08:28:22.493Z", + "source": "PlanX", + "service": { + "flowId": "5aab3466-8fb0-4e73-b51d-347d61ad5547", + "url": "https://editor.planx.dev/medway/apply-for-land-drainage-consent-copy/published", + "files": { + "required": [ + { + "value": "necessaryInformation", + "description": "Information the authority considers necessary for the application" + } + ], + "recommended": [ + { + "value": "relevantInformation", + "description": "Information the applicant considers relevant to the application" + } + ], + "optional": [] + }, + "fee": { + "calculated": [], + "payable": [] + } + }, + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + } +} \ No newline at end of file diff --git a/examples/prototypeApplication/listedBuildingConsent.json b/examples/prototypeApplication/listedBuildingConsent.json new file mode 100644 index 00000000..8d4a4920 --- /dev/null +++ b/examples/prototypeApplication/listedBuildingConsent.json @@ -0,0 +1,1126 @@ +{ + "applicationType": "listed", + "data": { + "user": { + "role": "applicant" + }, + "applicant": { + "type": "company", + "name": { + "first": "Jim", + "last": "Henson" + }, + "email": "jim@muppets.org", + "phone": { + "primary": "0123456789" + }, + "company": { + "name": "The Jim Henson Company" + }, + "address": { + "sameAsSiteAddress": true + }, + "siteContact": { + "role": "other", + "name": "Gonzo The Great", + "email": "gonzo@muppets.org", + "phone": "987654321" + } + }, + "property": { + "address": { + "latitude": 51.554865, + "longitude": -0.1711756, + "x": 526885, + "y": 185582, + "title": "50, DOWNSHIRE HILL, LONDON", + "source": "Ordnance Survey", + "uprn": "000005023627", + "usrn": "20400184", + "pao": "50", + "street": "DOWNSHIRE HILL", + "town": "LONDON", + "postcode": "NW3 1PA", + "singleLine": "50, DOWNSHIRE HILL, LONDON, CAMDEN, NW3 1PA" + }, + "localAuthorityDistrict": [ + "Camden" + ], + "region": "London", + "type": "residential.dwelling.flat", + "planning": { + "sources": [ + "https://api.editor.planx.dev/gis/camden?geom=MULTIPOLYGON+%28%28%28-0.171042+51.554871%2C+-0.171026+51.554883%2C+-0.171194+51.554968%2C+-0.171312+51.554881%2C+-0.171287+51.554867%2C+-0.171275+51.554876%2C+-0.17114+51.554804%2C+-0.171042+51.554871%29%29%29&analytics=false&sessionId=0f2abdbd-2ec5-4918-979b-123bd856b94f", + "https://api.editor.planx.dev/roads?usrn=20400184" + ], + "designations": [ + { + "value": "tpo", + "intersects": false + }, + { + "value": "flood", + "intersects": false + }, + { + "value": "listed", + "intersects": true + }, + { + "value": "article4", + "intersects": true, + "entities": [ + { + "name": "Basements", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/7010002613" + } + } + ] + }, + { + "value": "monument", + "intersects": false + }, + { + "value": "greenBelt", + "intersects": false + }, + { + "value": "designated", + "intersects": true + }, + { + "value": "nature.SAC", + "intersects": false + }, + { + "value": "nature.SPA", + "intersects": false + }, + { + "value": "nature.ASNW", + "intersects": false + }, + { + "value": "nature.SSSI", + "intersects": false + }, + { + "value": "brownfieldSite", + "intersects": false + }, + { + "value": "designated.WHS", + "intersects": false + }, + { + "value": "listed.grade.I", + "intersects": false + }, + { + "value": "registeredPark", + "intersects": false + }, + { + "value": "designated.AONB", + "intersects": false + }, + { + "value": "listed.grade.II", + "intersects": true, + "entities": [ + { + "name": "NUMBERS 50 AND 51 AND ATTACHED AREA WALLS AND BALUSTRADE", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/31535771" + } + }, + { + "name": "(South side) Nos.50 AND 51 and attached area walls & balustrade", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/42115931" + } + } + ] + }, + { + "value": "listed.grade.II*", + "intersects": false + }, + { + "value": "nature.ramsarSite", + "intersects": false + }, + { + "value": "designated.nationalPark", + "intersects": false + }, + { + "value": "designated.conservationArea", + "intersects": true, + "entities": [ + { + "name": "Hampstead", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/44009659" + } + } + ] + }, + { + "value": "designated.nationalPark.broads", + "intersects": false + }, + { + "value": "road.classified", + "intersects": false + } + ] + }, + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -0.171042, + 51.554871 + ], + [ + -0.171026, + 51.554883 + ], + [ + -0.171194, + 51.554968 + ], + [ + -0.171312, + 51.554881 + ], + [ + -0.171287, + 51.554867 + ], + [ + -0.171275, + 51.554876 + ], + [ + -0.17114, + 51.554804 + ], + [ + -0.171042, + 51.554871 + ] + ] + ] + ] + }, + "properties": { + "name": "", + "entity": 12000495084, + "prefix": "title-boundary", + "dataset": "title-boundary", + "end-date": "", + "typology": "geography", + "reference": "48946667", + "entry-date": "2023-12-12", + "start-date": "2010-12-02", + "organisation-entity": "13" + } + }, + "area": { + "hectares": 0.017536000000000003, + "squareMetres": 175.36 + } + } + }, + "application": { + "fee": { + "notApplicable": true + }, + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } + }, + "preApp": { + "reference": "123-TEST-REF", + "date": "2024-01-15", + "officer": "Miss Piggy", + "summary": "Not provided" + } + }, + "proposal": { + "projectType": [ + "internal", + "alter.changeOfMaterials.floors", + "alter.changeOfMaterials.internalWalls" + ], + "description": "Remove an internal wall and construct a puppet theatre", + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -0.171042, + 51.554871 + ], + [ + -0.171026, + 51.554883 + ], + [ + -0.171194, + 51.554968 + ], + [ + -0.171312, + 51.554881 + ], + [ + -0.171287, + 51.554867 + ], + [ + -0.171275, + 51.554876 + ], + [ + -0.17114, + 51.554804 + ], + [ + -0.171042, + 51.554871 + ] + ] + ] + ] + }, + "properties": { + "name": "", + "entity": 12000495084, + "prefix": "title-boundary", + "dataset": "title-boundary", + "end-date": "", + "typology": "geography", + "reference": "48946667", + "entry-date": "2023-12-12", + "start-date": "2010-12-02", + "organisation-entity": "13", + "planx_user_action": "Accepted the title boundary" + } + }, + "area": { + "hectares": 0.017536000000000003, + "squareMetres": 175.36 + } + } + } + }, + "responses": [ + { + "question": "Is the property in Camden?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Flat (or building containing flats)" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "Is it a listed building?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Residential" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Select the types of changes involved in the project", + "responses": [ + { + "value": "Carry out internal work" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What does the project involve?", + "responses": [ + { + "value": "Internal works" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Do the internal works involve any of these types of changes?", + "responses": [ + { + "value": "Demolishing internal walls" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "National Planning Policy Framework, Section 16", + "url": "https://www.gov.uk/guidance/national-planning-policy-framework/16-conserving-and-enhancing-the-historic-environment" + }, + { + "text": "Planning (Listed Buildings and Conservation Areas) Act 1990, section 8", + "url": "https://www.legislation.gov.uk/ukpga/1990/9/section/8" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Does the project introduce new materials?", + "responses": [ + { + "value": "Some new materials, some to match the existing" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Select where the project introduces new materials", + "responses": [ + { + "value": "Floors" + }, + { + "value": "Internal walls" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Floors: describe the existing and new materials", + "responses": [ + { + "value": "The existing rooms have original wide oak floorboards, but I'm going to patch the area where the walls are coming down with narrow new oak boards." + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Is it a repair, replacement or new flooring?", + "responses": [ + { + "value": "Something else" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Internal walls: describe the existing and new materials", + "responses": [ + { + "value": "The existing walls are off-white plaster. After removing a dividing internal wall, we'll patch and paint the new merged room Kermit green." + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Is it an ecclesiastical building?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What grading is the building?", + "responses": [ + { + "value": "Unsure" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is the building subject to a Certificate of Immunity from Listing?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Section 6 of the Planning (Listed Buildings and Conservation Areas) Act 1990", + "url": "https://www.legislation.gov.uk/ukpga/1990/9/section/6" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the property in a conservation area?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "How do you want to submit this information?", + "responses": [ + { + "value": "Upload a document" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Apply for listed building consent" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Are you applying on behalf of someone else?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "Company" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Your contact details", + "responses": [ + { + "value": "Jim Henson The Jim Henson Company 0123456789 jim@muppets.org" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Is your contact address the same as the property address?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Can a planning officer see the works from public land?", + "responses": [ + { + "value": "Yes, it's visible from the road or somewhere else" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "We may need to visit the site to assess your application. If we do, who should we contact to arrange the visit?", + "responses": [ + { + "value": "Someone else" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Contact details of the person we should contact about a site visit", + "responses": [ + { + "value": "Gonzo The Great The Jim Henson Company 987654321 gonzo@muppets.org" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "What type of application is this?", + "responses": [ + { + "value": "LBC" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "I'm the applicant" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Are you the sole owner of the land?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/13/made" + } + ], + "sectionName": "About you" + } + }, + { + "question": "Does the land have any agricultural tenants?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/13/made" + } + ], + "sectionName": "About you" + } + }, + { + "question": "Do you know the names and addresses of all agricultural tenants?", + "responses": [ + { + "value": "Yes, all of them" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Have you given requisite notice to all the agricultural tenants?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/13/made" + } + ], + "sectionName": "About you" + } + }, + { + "question": "How many owners or agricultural tenants have been notified?", + "responses": [ + { + "value": "2" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Full name of the first notified owner or agricultural tenant", + "responses": [ + { + "value": "Rowlf the Dog" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Address of the first notified owner or agricultural tenant", + "responses": [ + { + "value": "123 Sesame Street, New York City, 10023, USA" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Date on which notice was given to the first owner or agricultural tenant", + "responses": [ + { + "value": "2024-04-01" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Full name of the second notified owner or agricultural tenant", + "responses": [ + { + "value": "Rizzo the Rat" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Address of the second notified owner or agricultural tenant", + "responses": [ + { + "value": "123 Sesame Street, New York City, 10023, USA" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Date on which notice was given to the second owner or agricultural tenant", + "responses": [ + { + "value": "2024-04-01" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Certificate of ownership declaration - Certificate B", + "responses": [ + { + "value": "I certify that the above is true" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Article 13 of the Town and Country Planning (Development Management Procedure) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/13/made" + }, + { + "text": "Schedule 2 to the Town and Country Planning (Development Management Procedure (England) (Order) 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/595/schedule/2/made" + } + ], + "sectionName": "About you" + } + }, + { + "question": "Did you get any pre-application advice from the council before making this application?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "What was the name of the planning officer you spoke to?", + "responses": [ + { + "value": "Miss Piggy" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "What was your reference?", + "responses": [ + { + "value": "123-TEST-REF" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "What date was the pre-application advice given on?", + "responses": [ + { + "value": "2024-01-15" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Listed Building Consent" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Listed building consent" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "What changes does the project involve?", + "responses": [ + { + "value": "Alter" + }, + { + "value": "Internal works" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload application documents" + } + }, + { + "question": "Where do you want to alter the property?", + "responses": [ + { + "value": "Inside the listed building" + } + ], + "metadata": { + "sectionName": "Upload application documents" + } + }, + { + "question": "Does the project involve any of these alterations?", + "responses": [ + { + "value": "Apply plaster or paint" + }, + { + "value": "Remove internal wall" + }, + { + "value": "Replace joinery, including internal doors" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Section 7 of the Planning (Listed Buildings and Conservation Areas) Act 1990", + "url": "https://www.legislation.gov.uk/ukpga/1990/9/section/8" + } + ], + "sectionName": "Upload application documents" + } + }, + { + "question": "Is the wall load bearing?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "Upload application documents" + } + }, + { + "question": "Do the internal works involve any of these?", + "responses": [ + { + "value": "Demolishing internal walls" + } + ], + "metadata": { + "sectionName": "Upload application documents" + } + }, + { + "question": "Is this for submission or information only?", + "responses": [ + { + "value": "Submission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload application documents" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Camden" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Review the application" + } + }, + { + "question": "Connections with London Borough of Camden", + "responses": [ + { + "value": "None of the above apply to me" + } + ], + "metadata": { + "sectionName": "Review the application" + } + }, + { + "question": "I confirm that:", + "responses": [ + { + "value": "The information contained in this application is truthful, accurate and complete, to the best of my knowledge" + } + ], + "metadata": { + "sectionName": "Review the application" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Camden" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Submit the appliction" + } + } + ], + "files": [ + { + "name": "https://api.editor.planx.dev/file/private/c6mo049s/other.pdf", + "type": [ + "otherDrawing", + "visualisations" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/n0akv537/myPlans.pdf", + "type": [ + "joinerySections", + "sitePlan.existing", + "sitePlan.proposed", + "floorPlan.existing", + "floorPlan.proposed" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/yencabq4/heritageStatement.pdf", + "type": [ + "heritageStatement" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/p2ryla48/elevations.pdf", + "type": [ + "elevations.existing", + "elevations.proposed" + ] + } + ], + "metadata": { + "id": "0f2abdbd-2ec5-4918-979b-123bd856b94f", + "organisation": "CMD", + "submittedAt": "2024-04-30T19:13:34.288Z", + "source": "PlanX", + "service": { + "flowId": "2677568c-00d2-4391-98ea-f34a4e743437", + "url": "https://www.editor.planx.uk/camden/apply-for-listed-building-consent/published", + "files": { + "required": [ + { + "value": "sitePlan.existing", + "description": "Site plan - existing" + }, + { + "value": "sitePlan.proposed", + "description": "Site plan - proposed" + }, + { + "value": "elevations.existing", + "description": "Elevations - existing" + }, + { + "value": "elevations.proposed", + "description": "Elevations - proposed" + }, + { + "value": "floorPlan.existing", + "description": "Floor plan - existing" + }, + { + "value": "floorPlan.proposed", + "description": "Floor plan - proposed" + }, + { + "value": "joinerySections", + "description": "Joinery section report" + } + ], + "recommended": [ + { + "value": "heritageStatement", + "description": "Heritage Statement" + } + ], + "optional": [ + { + "value": "photographs.existing", + "description": "Photographs - existing" + }, + { + "value": "otherDrawing", + "description": "Other - drawing" + }, + { + "value": "otherDocument", + "description": "Other - document" + }, + { + "value": "visualisations", + "description": "Visualisations" + } + ] + }, + "fee": { + "notApplicable": true + } + }, + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + } +} \ No newline at end of file diff --git a/examples/prototypeApplication/priorApproval/buildHomes.json b/examples/prototypeApplication/priorApproval/buildHomes.json new file mode 100644 index 00000000..440d180d --- /dev/null +++ b/examples/prototypeApplication/priorApproval/buildHomes.json @@ -0,0 +1,1832 @@ +{ + "applicationType": "pa.part20.classAB", + "data": { + "user": { + "role": "applicant" + }, + "applicant": { + "type": "company", + "name": { + "first": "Enid", + "last": "Blyton" + }, + "email": "ennyblizzle@email.org", + "phone": { + "primary": "098765432109" + }, + "address": { + "sameAsSiteAddress": true + }, + "siteContact": { + "role": "applicant" + } + }, + "property": { + "address": { + "latitude": 51.6154485, + "longitude": -0.6463076, + "x": 493822, + "y": 191603, + "title": "7, BLYTON CLOSE, BEACONSFIELD", + "source": "Ordnance Survey", + "uprn": "100080482163", + "usrn": "35200844", + "pao": "7", + "street": "BLYTON CLOSE", + "town": "BEACONSFIELD", + "postcode": "HP9 2LX", + "singleLine": "7, BLYTON CLOSE, BEACONSFIELD, BUCKINGHAMSHIRE, HP9 2LX" + }, + "localAuthorityDistrict": [ + "Buckinghamshire", + "South Bucks" + ], + "region": "South East", + "type": "commercial.office", + "planning": { + "sources": [ + "https://api.editor.planx.dev/gis/buckinghamshire?geom=MULTIPOLYGON+%28%28%28-0.646634+51.615571%2C+-0.646629+51.615545%2C+-0.646505+51.615512%2C+-0.646452+51.61522%2C+-0.646313+51.61523%2C+-0.646304+51.615207%2C+-0.645951+51.615311%2C+-0.646049+51.615615%2C+-0.646634+51.615571%29%29%29&analytics=false&sessionId=312c81fd-7368-4f0b-92d8-91de4033312a", + "https://api.editor.planx.dev/roads?usrn=35200844" + ], + "designations": [ + { + "value": "tpo", + "intersects": false + }, + { + "value": "flood", + "intersects": false + }, + { + "value": "listed", + "intersects": false + }, + { + "value": "article4", + "intersects": false + }, + { + "value": "monument", + "intersects": false + }, + { + "value": "greenBelt", + "intersects": false + }, + { + "value": "designated", + "intersects": false + }, + { + "value": "nature.SAC", + "intersects": false + }, + { + "value": "nature.SPA", + "intersects": false + }, + { + "value": "nature.ASNW", + "intersects": false + }, + { + "value": "nature.SSSI", + "intersects": false + }, + { + "value": "brownfieldSite", + "intersects": false + }, + { + "value": "designated.WHS", + "intersects": false + }, + { + "value": "registeredPark", + "intersects": false + }, + { + "value": "designated.AONB", + "intersects": false + }, + { + "value": "nature.ramsarSite", + "intersects": false + }, + { + "value": "designated.nationalPark", + "intersects": false + }, + { + "value": "designated.conservationArea", + "intersects": false + }, + { + "value": "designated.nationalPark.broads", + "intersects": false + }, + { + "value": "road.classified", + "intersects": false + } + ] + }, + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -0.646634, + 51.615571 + ], + [ + -0.646629, + 51.615545 + ], + [ + -0.646505, + 51.615512 + ], + [ + -0.646452, + 51.61522 + ], + [ + -0.646313, + 51.61523 + ], + [ + -0.646304, + 51.615207 + ], + [ + -0.645951, + 51.615311 + ], + [ + -0.646049, + 51.615615 + ], + [ + -0.646634, + 51.615571 + ] + ] + ] + ] + }, + "properties": { + "name": "", + "entity": 12000048511, + "prefix": "title-boundary", + "dataset": "title-boundary", + "end-date": "", + "typology": "geography", + "reference": "44530928", + "entry-date": "2024-05-06", + "start-date": "2010-04-21", + "organisation-entity": "13" + } + }, + "area": { + "hectares": 0.138418, + "squareMetres": 1384.18 + } + } + }, + "application": { + "fee": { + "calculated": 4510, + "payable": 0, + "exemption": { + "disability": false, + "resubmission": true + }, + "reduction": { + "sports": false, + "parishCouncil": false, + "alternative": false + } + }, + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } + } + }, + "proposal": { + "projectType": [ + "new.residential.dwelling" + ], + "description": "The addition of homes as upper storeys to the existing commercial premises.", + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -0.646634, + 51.615571 + ], + [ + -0.646629, + 51.615545 + ], + [ + -0.646505, + 51.615512 + ], + [ + -0.646452, + 51.61522 + ], + [ + -0.646313, + 51.61523 + ], + [ + -0.646304, + 51.615207 + ], + [ + -0.645951, + 51.615311 + ], + [ + -0.646049, + 51.615615 + ], + [ + -0.646634, + 51.615571 + ] + ] + ] + ] + }, + "properties": { + "name": "", + "entity": 12000048511, + "prefix": "title-boundary", + "dataset": "title-boundary", + "end-date": "", + "typology": "geography", + "reference": "44530928", + "entry-date": "2024-05-06", + "start-date": "2010-04-21", + "organisation-entity": "13", + "planx_user_action": "Accepted the title boundary" + } + }, + "area": { + "hectares": 0.138418, + "squareMetres": 1384.18 + } + }, + "newDwellings": { + "newBuild": { + "count": 10 + } + } + } + }, + "preAssessment": [ + { + "value": "Planning permission / Prior approval", + "description": "It looks like the proposed changes do not require planning permission, however the applicant must apply for Prior Approval before proceeding." + } + ], + "responses": [ + { + "question": "Is the property in Buckinghamshire?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Something else" + } + ], + "metadata": { + "sectionName": "The property" + } + }, + { + "question": "Which of these best describes the use of the property?", + "responses": [ + { + "value": "Commercial" + } + ], + "metadata": { + "sectionName": "The property" + } + }, + { + "question": "What type of commercial property is it?", + "responses": [ + { + "value": "Office" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "Has work already started?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Town and Country Planning Act 1990, Part III, Section 55", + "url": "https://www.legislation.gov.uk/ukpga/1990/8/section/55" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Commercial building" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is the building detached?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "How was the building was converted to a home?", + "responses": [ + { + "value": "With planning permission", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AA", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the property on designated land?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the property a site of special scientific interest?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is any part of the property listed?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is any part of the property a scheduled monument?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB.", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the property in a safety hazard area?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the property in a military explosives storage area?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) (Amendment) (No. 2) Order 2020 Schedule 2, Part 1, Class AB.1 (p)", + "url": "https://www.legislation.gov.uk/uksi/2020/755/pdfs/uksi_20200755_en.pdf" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the property within 3km of the perimeter of an aerodrome?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Has the original building has already had storeys added to it?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "How many uses did the building have on 5 March 2018?", + "responses": [ + { + "value": "1 use" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "How was the building used on 5 March 2018?", + "responses": [ + { + "value": "Offices", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB.", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "When was the building constructed?", + "responses": [ + { + "value": "Between 1 July 1948 and 5 March 2018", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "How many storeys does the existing building have?", + "responses": [ + { + "value": "2 or more storeys" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "How many new storeys do you want to add?", + "responses": [ + { + "value": "1 or 2", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "After the works, how much higher is the building?", + "responses": [ + { + "value": "7m or less", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Are the new homes added onto the main part of the building?", + "responses": [ + { + "value": "Yes", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What is the floor to ceiling height of the new storeys?", + "responses": [ + { + "value": "The same as those in the existing building", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Are the new storeys more than 3m high?", + "responses": [ + { + "value": "No, 3m or less", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-a-new-dwellinghouses-on-detached-blocks-of-flats" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "After the works, is the building higher than others in the row?", + "responses": [ + { + "value": "Yes, higher" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "After the changes, how much higher is the extended building compared to others in its row?", + "responses": [ + { + "value": "3.5m or less", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the highest part of the new roof more than 18m high?", + "responses": [ + { + "value": "No, it is 18m or less", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Are the new homes flats?", + "responses": [ + { + "value": "Yes", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Does the project involve any engineering works to the existing building?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What do the engineering works involve?", + "responses": [ + { + "value": "Strengthening existing walls", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + }, + { + "value": "Strengthening existing foundations", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Do the works result in visible support structures on the outside of the building?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Are the engineering works within the curtilage of the building?", + "responses": [ + { + "value": "Yes", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Do the engineering operations include other changes to the building?", + "responses": [ + { + "value": "No, the engineering operations are only to add new storeys to the building", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) (Amendment) (No. 2) Order 2020 Schedule 2, Part 20, Class AC", + "url": "https://www.legislation.gov.uk/uksi/2020/755/pdfs/uksi_20200755_en.pdf" + }, + { + "text": "The Town and Country Planning (General Permitted Development) (England) (Amendment) (No. 2) Order 2020 Schedule 2, Part 20, Class AD", + "url": "https://www.legislation.gov.uk/uksi/2020/755/pdfs/uksi_20200755_en.pdf" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Does the new storey have side-facing windows or rooflights?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Does the project include new external staircases or doors?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Does the external staircases and doors extend beyond the curtilage of the existing building?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Does the project involve adding new storage, waste or other ancillary features?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Are the facilities entirely within the curtilage of the building?", + "responses": [ + { + "value": "Yes", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Where are the facilities located?", + "responses": [ + { + "value": "To the rear of the building", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB.", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is there any plant equipment on the roof of the existing building?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is there any new plant equipment on the roof of the new storeys?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Do any new homes have a floor area of less than 37m²?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Section 3, paragraph 9A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/article/3" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Do all new homes meet the nationally described space standards?", + "responses": [ + { + "value": "Yes", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Section 3, 9A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/article/3" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Does the design seek to minimise negative impacts on light, views and privacy for neighbours as far as possible?", + "responses": [ + { + "value": "Yes", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 20, Class AB.", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/20/crossheading/class-ab-new-dwellinghouses-on-terrace-buildings-in-commercial-or-mixed-use" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Office space" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What type of application is being applied for?", + "responses": [ + { + "value": "Part 20 Class AB" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What type of application is being applied for?", + "responses": [ + { + "value": "Part 20 Class AB" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is the property subject to any Article 4 directions?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Build homes on an adjoining commercial or mixed use building" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What type or prior approval application is it?", + "responses": [ + { + "value": "Build homes on an adjoining commercial or mixed use building" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Describe any potential impacts on adjoining properties and how these will be mitigated", + "responses": [ + { + "value": "These are the potential impacts on the adjoining properties:\n1\n2\n3\nAnd this is how they are to be mitigated:\nA\nB\nC\n" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Is the property located near any air traffic or defence assets?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Describe the impact of the extended building on any protected view.", + "responses": [ + { + "value": "This is the impact of the extended building on any protected view." + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "How many new homes are being build?", + "responses": [ + { + "value": "10" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Has any part of the site been identified as contaminated land?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Was the building previously used for any of these?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Is the building in a flood risk area?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "You need to submit a Noise Assessment", + "responses": [ + { + "value": "Upload a document later" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "You need to submit a Transport Assessment", + "responses": [ + { + "value": "Upload a document later" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "The project will result in an increase in the number of people living in the area. What impacts will this have on businesses and new residents, and how will this be mitigated?", + "responses": [ + { + "value": "Here are the impacts that the development will have:\n1\n2\n3\nAnd these are the mitigation measures:\nA\nB\nC" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Describe the impact of the project on residential amenity and facilities", + "responses": [ + { + "value": "the impact of the project on residential amenity and facilities. the impact of the project on residential amenity and facilities.the impact of the project on residential amenity and facilities" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Apply for prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Are you applying on behalf of someone else?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "Company" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Your contact details", + "responses": [ + { + "value": "Enid Blyton 098765432109 ennyblizzle@email.org" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Is your contact address the same as the property address?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Can a planning officer see the works from public land?", + "responses": [ + { + "value": "Yes, it's visible from the road or somewhere else" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "We may need to visit the site to assess your application. If we do, who should we contact to arrange the visit?", + "responses": [ + { + "value": "Me, the applicant" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Build homes on an adjoining commercial or mixed use building" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload drawings" + } + }, + { + "question": "Do the changes involve any alterations to ground or floor levels?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "Upload drawings" + } + }, + { + "question": "Is this for submission or information only?", + "responses": [ + { + "value": "Submission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload drawings" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Build homes on an adjoining commercial or mixed use building" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Are you building fewer than 10 new homes?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Are you building fewer than 51 new homes?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Is the property a home?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What type of changes does the project involve?", + "responses": [ + { + "value": "New build" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Build homes on an adjoining commercial or mixed use building" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Is this application a resubmission?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + } + ], + "sectionName": "Check your application" + } + }, + { + "question": "Is this the first time you have resubmitted an application for this site?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + } + ], + "sectionName": "Check your application" + } + }, + { + "question": "What was the result of the original application?", + "responses": [ + { + "value": "Withdrawn" + } + ], + "metadata": { + "sectionName": "Check your application" + } + }, + { + "question": "When did you submit the original application?", + "responses": [ + { + "value": "Within the last 12 months" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + } + ], + "sectionName": "Check your application" + } + }, + { + "question": "To qualify for a fee exemption, the proposed works must be of a similar description to the original application", + "responses": [ + { + "value": "I understand" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + } + ], + "sectionName": "Check your application" + } + }, + { + "question": "Does the application qualify for a disability exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Does the application qualify for a resubmission exemption?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Check for multiple fees?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Connections with Buckinghamshire Council", + "responses": [ + { + "value": "None of the above apply to me" + } + ], + "metadata": { + "sectionName": "Check your application" + } + }, + { + "question": "I confirm that:", + "responses": [ + { + "value": "The information contained in this application is truthful, accurate and complete, to the best of my knowledge" + } + ], + "metadata": { + "sectionName": "Check your application" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Buckinghamshire" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and submit" + } + }, + { + "question": "What type of prior approval application is it?application.type", + "responses": [ + { + "value": "Build homes on an adjoining commercial or mixed use building" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and submit" + } + } + ], + "files": [ + { + "name": "https://api.editor.planx.dev/file/private/xdaaquh0/test%20document.pdf", + "type": [ + "noiseAssessment" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/kk01qq8t/test%20document.pdf", + "type": [ + "roofPlan.proposed", + "sections.existing", + "sections.proposed", + "floorPlan.existing", + "floorPlan.proposed", + "elevations.existing", + "elevations.proposed" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/knu6huv7/test%20document.pdf", + "type": [ + "sitePlan.proposed" + ] + } + ], + "metadata": { + "id": "312c81fd-7368-4f0b-92d8-91de4033312a", + "organisation": "BKM", + "submittedAt": "2024-06-29T12:31:34.837Z", + "source": "PlanX", + "service": { + "flowId": "6f76e837-7a42-40f3-80e9-a9482dce5982", + "url": "https://editor.planx.uk/buckinghamshire/apply-for-prior-approval/published", + "files": { + "required": [ + { + "value": "sitePlan.proposed", + "description": "Site plan - proposed" + }, + { + "value": "elevations.existing", + "description": "Elevations - existing" + }, + { + "value": "elevations.proposed", + "description": "Elevations - proposed" + }, + { + "value": "floorPlan.existing", + "description": "Floor plan - existing" + }, + { + "value": "floorPlan.proposed", + "description": "Floor plan - proposed" + }, + { + "value": "roofPlan.proposed", + "description": "Roof plan - proposed" + }, + { + "value": "sections.existing", + "description": "Sections - existing" + }, + { + "value": "sections.proposed", + "description": "Sections - proposed" + }, + { + "value": "noiseAssessment", + "description": "Noise assessment" + } + ], + "recommended": [], + "optional": [ + { + "value": "photographs.existing", + "description": "Photographs - existing" + }, + { + "value": "otherDrawing", + "description": "Other - drawing" + }, + { + "value": "otherDocument", + "description": "Other - document" + }, + { + "value": "visualisations", + "description": "Visualisations" + } + ] + }, + "fee": { + "calculated": [ + { + "description": "

The plannning fee for a Prior Approval application relating to creation of at least 10 but no more than 50 new homes on rooftops, or on a site created by demolishing vacant buildings is £451 per new home

", + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) (Amendment) Regulations 2023", + "url": "https://www.legislation.gov.uk/uksi/2023/1197/made" + } + ] + } + ], + "payable": [ + { + "description": "

In the case of an application that is the first resubmission of an application on the same site that is similar in character and description, no planning fee is payable.

", + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + } + ] + } + ] + } + }, + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + } +} \ No newline at end of file diff --git a/examples/prototypeApplication/priorApproval/convertCommercialToHome.json b/examples/prototypeApplication/priorApproval/convertCommercialToHome.json new file mode 100644 index 00000000..c7157d82 --- /dev/null +++ b/examples/prototypeApplication/priorApproval/convertCommercialToHome.json @@ -0,0 +1,1594 @@ +{ + "applicationType": "pa.part3.classMA", + "data": { + "user": { + "role": "agent" + }, + "applicant": { + "type": "individual", + "name": { + "first": "Vincent", + "last": "Van Gogh" + }, + "email": "ouchmyear@email.org", + "phone": { + "primary": "012345678901" + }, + "address": { + "sameAsSiteAddress": true + }, + "siteContact": { + "role": "agent" + }, + "agent": { + "name": { + "first": "Alan", + "last": "Agent" + }, + "email": "alanagent@email.org", + "phone": { + "primary": "098765432109" + }, + "company": { + "name": "Alan's Property & Fine Art Consultants PLC" + }, + "address": { + "line1": "12 Agent Avenue", + "line2": "", + "town": "Plantown", + "county": "", + "postcode": "PL47TN", + "country": "" + } + } + }, + "property": { + "address": { + "latitude": 51.4745098, + "longitude": -0.1151501, + "x": 530999, + "y": 176745, + "title": "87, HACKFORD ROAD, LONDON", + "source": "Ordnance Survey", + "uprn": "100021847182", + "usrn": "21900651", + "pao": "87", + "street": "HACKFORD ROAD", + "town": "LONDON", + "postcode": "SW9 0RE", + "singleLine": "87, HACKFORD ROAD, LONDON, LAMBETH, SW9 0RE" + }, + "localAuthorityDistrict": [ + "Lambeth" + ], + "region": "London", + "type": "commercial.retail.shop", + "planning": { + "sources": [ + "https://api.editor.planx.dev/gis/lambeth?geom=MULTIPOLYGON+%28%28%28-0.114876+51.474474%2C+-0.114863+51.474517%2C+-0.115261+51.474548%2C+-0.11527+51.474504%2C+-0.114876+51.474474%29%29%29&analytics=false&sessionId=86a5ba3e-1a7f-4460-bf46-826c3f982a92", + "https://api.editor.planx.dev/roads?usrn=21900651" + ], + "designations": [ + { + "value": "tpo", + "intersects": false + }, + { + "value": "flood", + "intersects": false + }, + { + "value": "listed", + "intersects": true, + "entities": [ + { + "name": "87, HACKFORD ROAD SW9", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/31537921" + } + }, + { + "name": "No Address Supplied", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/42103309" + } + } + ] + }, + { + "value": "article4", + "intersects": false + }, + { + "value": "monument", + "intersects": false + }, + { + "value": "greenBelt", + "intersects": false + }, + { + "value": "designated", + "intersects": true + }, + { + "value": "nature.SAC", + "intersects": false + }, + { + "value": "nature.SPA", + "intersects": false + }, + { + "value": "nature.ASNW", + "intersects": false + }, + { + "value": "nature.SSSI", + "intersects": false + }, + { + "value": "brownfieldSite", + "intersects": false + }, + { + "value": "designated.WHS", + "intersects": false + }, + { + "value": "listed.grade.I", + "intersects": false + }, + { + "value": "registeredPark", + "intersects": false + }, + { + "value": "designated.AONB", + "intersects": false + }, + { + "value": "listed.grade.II", + "intersects": true + }, + { + "value": "listed.grade.II*", + "intersects": false + }, + { + "value": "nature.ramsarSite", + "intersects": false + }, + { + "value": "designated.nationalPark", + "intersects": false + }, + { + "value": "designated.conservationArea", + "intersects": true, + "entities": [ + { + "name": "Hackford Road", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/44000877" + } + } + ] + }, + { + "value": "designated.nationalPark.broads", + "intersects": false + }, + { + "value": "road.classified", + "intersects": false + } + ] + }, + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -0.114876, + 51.474474 + ], + [ + -0.114863, + 51.474517 + ], + [ + -0.115261, + 51.474548 + ], + [ + -0.11527, + 51.474504 + ], + [ + -0.114876, + 51.474474 + ] + ] + ] + ] + }, + "properties": { + "name": "", + "entity": 12000528882, + "prefix": "title-boundary", + "dataset": "title-boundary", + "end-date": "", + "typology": "geography", + "reference": "51792928", + "entry-date": "2024-05-06", + "start-date": "2011-05-10", + "organisation-entity": "13" + } + }, + "area": { + "hectares": 0.013555000000000001, + "squareMetres": 135.55 + } + }, + "titleNumber": { + "known": "Yes", + "number": "24/12345/FUL" + }, + "EPC": { + "known": "Yes", + "number": "1234-1234-1234-1234" + }, + "parking": { + "cars": { + "count": 1 + }, + "vans": { + "count": 0 + }, + "motorcycles": { + "count": 0 + }, + "cycles": { + "count": 0 + }, + "buses": { + "count": 0 + }, + "disabled": { + "count": 0 + }, + "carClub": { + "count": 0 + }, + "offStreet": { + "residential": { + "count": 0 + } + }, + "other": { + "count": 0 + } + } + }, + "application": { + "fee": { + "calculated": 258, + "payable": 258, + "exemption": { + "disability": false, + "resubmission": false + }, + "reduction": { + "sports": false, + "parishCouncil": false, + "alternative": false + }, + "reference": { + "govPay": "sandbox-789" + } + }, + "leadDeveloper": { + "type": "overseasCompany", + "company": { + "name": "Impression Developments Inc.", + "registrationNumber": "12345679ABC" + } + }, + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } + } + }, + "proposal": { + "projectType": [ + "changeOfUse" + ], + "description": "Change of use from my sunflower and art supplies shop into a home.", + "schemeName": "Vincent's New Property Venture", + "date": { + "start": "2024-07-28", + "completion": "2035-07-28" + }, + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -0.114876, + 51.474474 + ], + [ + -0.114863, + 51.474517 + ], + [ + -0.115261, + 51.474548 + ], + [ + -0.11527, + 51.474504 + ], + [ + -0.114876, + 51.474474 + ] + ] + ] + ] + }, + "properties": { + "name": "", + "entity": 12000528882, + "prefix": "title-boundary", + "dataset": "title-boundary", + "end-date": "", + "typology": "geography", + "reference": "51792928", + "entry-date": "2024-05-06", + "start-date": "2011-05-10", + "organisation-entity": "13", + "planx_user_action": "Accepted the title boundary" + } + }, + "area": { + "hectares": 0.013555000000000001, + "squareMetres": 135.55 + } + }, + "parking": { + "cars": { + "count": 1, + "difference": 0 + }, + "vans": { + "count": 0, + "difference": 0 + }, + "motorcycles": { + "count": 0, + "difference": 0 + }, + "cycles": { + "count": 2, + "difference": 2 + }, + "buses": { + "count": 0, + "difference": 0 + }, + "disabled": { + "count": 0, + "difference": 0 + }, + "carClub": { + "count": 0, + "difference": 0 + }, + "offStreet": { + "residential": { + "count": 0, + "difference": 0 + } + }, + "other": { + "count": 0, + "difference": 0 + } + }, + "units": { + "residential": { + "rebuilt": [ + { + "development": "changeOfUse", + "type": "terraced", + "bedrooms": 3, + "habitableRooms": 7, + "area": { + "squareMetres": 300 + }, + "tenure": "marketForRent", + "provider": "private", + "garden": false, + "sheltered": false, + "olderPersons": false, + "compliance": [ + "m42", + "m432a", + "m432b" + ], + "identicalUnits": 1 + } + ] + } + }, + "energy": { + "type": [ + "heatPump" + ], + "heatPumps": { + "capacity": { + "megawatts": 2 + } + } + }, + "greenRoof": { + "area": { + "squareMetres": 0 + } + }, + "urbanGreeningFactor": { + "score": 4 + }, + "utilities": { + "gas": { + "connections": { + "count": 1 + } + }, + "water": { + "connections": { + "count": 1 + } + }, + "internet": { + "residentialUnits": { + "count": 1 + }, + "commercialUnits": { + "count": 0 + } + } + }, + "waste": { + "reuseRecycle": { + "percent": 2 + } + } + } + }, + "preAssessment": [ + { + "value": "Planning permission / Permission needed", + "description": "It looks like the proposed changes may require planning permission." + } + ], + "responses": [ + { + "question": "Is the property in Lambeth?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Something else" + } + ], + "metadata": { + "sectionName": "The property" + } + }, + { + "question": "Which of these best describes the use of the property?", + "responses": [ + { + "value": "Retail and services" + } + ], + "metadata": { + "sectionName": "The property" + } + }, + { + "question": "What type of retail unit is it?", + "responses": [ + { + "value": "Shop" + } + ], + "metadata": { + "sectionName": "The property" + } + }, + { + "question": "Have the works already started?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Commercial building" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What is the property used as?", + "responses": [ + { + "value": "Shop" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Use Classes) (Amendment) (England) Regulations 2020", + "url": "https://www.legislation.gov.uk/uksi/2020/757/made" + }, + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/596/contents" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the shop any of these?", + "responses": [ + { + "value": "No, it's another kind of shop" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What does the shop sell?", + "responses": [ + { + "value": "Other goods" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What do you want to change its use to?", + "responses": [ + { + "value": "Single house" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Use Classes) (Amendment) (England) Regulations 2020", + "url": "https://www.legislation.gov.uk/uksi/2020/757/made" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What part of the building will be converted?", + "responses": [ + { + "value": "The entire building" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Is the site within an Area of Outstanding Natural Beauty?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the site in the Broads?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the site in a National Park?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the site part of a World Heritage Site?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the site in an area of Special Scientific Interest?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the site in a safety hazard area?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the site in a military explosives storage area?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is any part of the property a scheduled monument?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is any part of the property listed?", + "responses": [ + { + "value": "Yes", + "metadata": { + "flags": [ + "Planning permission / Permission needed" + ] + } + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 3, Class MA", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/3" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Shop" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Convert a commercial building into a home or homes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What type or prior approval application is it?", + "responses": [ + { + "value": "Convert a commercial building into a home or homes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "You need to submit a Sunlight and Daylight Report", + "responses": [ + { + "value": "Upload a document later" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "How many new homes are being build?", + "responses": [ + { + "value": "1" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Has any part of the site been identified as contaminated land?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Was the building previously used for any of these?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Is the building in a flood risk area?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "You need to submit a Noise Assessment", + "responses": [ + { + "value": "Upload a document later" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "You need to submit a Transport Assessment", + "responses": [ + { + "value": "Upload a document later" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Describe the design and external appearance of the project", + "responses": [ + { + "value": "The existing shop front will be replaced by a new wall with a large painting of some hay stacks on it. Some more information about the appearance of the building. " + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Is the building currently used as a nursery?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is the building currently used for healthcare?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is the property in a conservation area?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Does the project involve changing the use of any part of the ground floor?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Describe the impacts that the change of use will have on the character or sustainability of the conservation area and how these will be mitigated", + "responses": [ + { + "value": "These are the impacts that the change of use will have:\n1\n2\n3\nAnd this is how it will be mitigated:\nA\nB\nC" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Will the building be 18 metres or more in height?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Fire safety guidance, 2021", + "url": "https://www.gov.uk/guidance/fire-safety-and-high-rise-residential-buildings-from-1-august-2021" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Will the building be 7 or more storeys tall?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Fire safety guidance, 2021", + "url": "https://www.gov.uk/guidance/fire-safety-and-high-rise-residential-buildings-from-1-august-2021" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the building in an area that is also used for heavy industry, waste management, storage or distribution?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Apply for prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Your contact details", + "responses": [ + { + "value": "Alan Agent Alan's Property & Fine Art Consultants PLC 098765432109 alanagent@email.org" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Are you applying on behalf of someone else?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "Professional agent" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Your contact address", + "responses": [ + { + "value": "12 Agent Avenue, Plantown, PL47TN" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes the applicant?", + "responses": [ + { + "value": "Private individual" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Applicant's contact details", + "responses": [ + { + "value": "Vincent Van Gogh 012345678901 ouchmyear@email.org" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Is the applicant's contact address the same as the property address?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Applicant's contact address", + "responses": [ + { + "value": "Haywain House, Rotterdam, 12543, The Netherlands" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Can a planning officer see the works from public land?", + "responses": [ + { + "value": "Yes, it's visible from the road or somewhere else" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "Professional agent" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "If we need to make a site visit, who should we contact?", + "responses": [ + { + "value": "Me, the agent" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Convert a commercial building into a home or homes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload drawings" + } + }, + { + "question": "Is this for submission or information only?", + "responses": [ + { + "value": "Submission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload drawings" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Convert a commercial building into a home or homes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Does the project involve any building works?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) (Amendment) Regulations 2023", + "url": "https://www.legislation.gov.uk/uksi/2023/1197/made" + } + ], + "sectionName": "Check your application" + } + }, + { + "question": "Is the property a home?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What type of changes does the project involve?", + "responses": [ + { + "value": "Change use" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Convert a commercial building into a home or homes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Are you submitting any other planning applications about the same works or changes?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + } + ], + "sectionName": "Check your application" + } + }, + { + "question": "Is this application a resubmission?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + } + ], + "sectionName": "Check your application" + } + }, + { + "question": "Does the application qualify for a disability exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Does the application qualify for a resubmission exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Does the application qualify to the same-day-planning-application exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + } + ], + "sectionName": "Check your application" + } + }, + { + "question": "Check for multiple fees?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Lambeth" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Connections with London Borough of Lambeth", + "responses": [ + { + "value": "None of the above apply to me" + } + ], + "metadata": { + "sectionName": "Check your application" + } + }, + { + "question": "I confirm that:", + "responses": [ + { + "value": "The information contained in this application is truthful, accurate and complete, to the best of my knowledge" + } + ], + "metadata": { + "sectionName": "Check your application" + } + }, + { + "question": "Connections with London Borough of Lambeth", + "responses": [ + { + "value": "None of the above apply to me" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "I confirm that:", + "responses": [ + { + "value": "The information contained in this application is truthful, accurate and complete, to the best of my knowledge" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Lambeth" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and submit" + } + }, + { + "question": "What type of prior approval application is it?application.type", + "responses": [ + { + "value": "Convert a commercial building into a home or homes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and submit" + } + } + ], + "files": [ + { + "name": "https://api.editor.planx.dev/file/private/bpxw8ekr/test%20document.pdf", + "type": [ + "noiseAssessment" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/2mrowm3t/test%20document.pdf", + "type": [ + "usePlan.proposed", + "sitePlan.proposed" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/eu61v4yk/test%20document.pdf", + "type": [ + "sitePlan.existing" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/fd7o1wnh/test%20document.pdf", + "type": [ + "sunlightAndDaylightReport" + ] + } + ], + "metadata": { + "id": "86a5ba3e-1a7f-4460-bf46-826c3f982a92", + "organisation": "LBH", + "submittedAt": "2024-06-29T12:25:58.777Z", + "source": "PlanX", + "service": { + "flowId": "f3cae2c8-9a64-4ce1-8cef-8e6832ad383d", + "url": "https://editor.planx.dev/lambeth/apply-for-prior-approval/published", + "files": { + "required": [ + { + "value": "sitePlan.proposed", + "description": "Site plan - proposed" + }, + { + "value": "usePlan.proposed", + "description": "Use plan - proposed" + }, + { + "value": "noiseAssessment", + "description": "Noise assessment" + }, + { + "value": "sunlightAndDaylightReport", + "description": "Sunlight and daylight report" + } + ], + "recommended": [ + { + "value": "sitePlan.existing", + "description": "Site plan - existing" + } + ], + "optional": [ + { + "value": "photographs.existing", + "description": "Photographs - existing" + }, + { + "value": "otherDrawing", + "description": "Other - drawing" + }, + { + "value": "otherDocument", + "description": "Other - document" + }, + { + "value": "visualisations", + "description": "Visualisations" + } + ] + }, + "fee": { + "calculated": [ + { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) (Amendment) Regulations 2023", + "url": "https://www.legislation.gov.uk/uksi/2023/1197/made" + } + ] + } + ], + "payable": [ + { + "description": "

This application does not qualify for any exemptions or reductions

" + } + ] + } + }, + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + } +} \ No newline at end of file diff --git a/examples/prototypeApplication/priorApproval/extendUniversity.json b/examples/prototypeApplication/priorApproval/extendUniversity.json new file mode 100644 index 00000000..ff29152d --- /dev/null +++ b/examples/prototypeApplication/priorApproval/extendUniversity.json @@ -0,0 +1,1757 @@ +{ + "applicationType": "pa.part7.classM", + "data": { + "user": { + "role": "applicant" + }, + "applicant": { + "type": "company", + "name": { + "first": "John", + "last": "Betjeman" + }, + "email": "johnnybthepoet@email.org", + "phone": { + "primary": "012345678901" + }, + "address": { + "sameAsSiteAddress": true + }, + "siteContact": { + "role": "applicant" + } + }, + "property": { + "address": { + "latitude": 51.5647555, + "longitude": -0.1532914, + "x": 528097, + "y": 186713, + "title": "31, HIGHGATE WEST HILL, LONDON", + "source": "Ordnance Survey", + "uprn": "000005008312", + "usrn": "20400012", + "pao": "31", + "street": "HIGHGATE WEST HILL", + "town": "LONDON", + "postcode": "N6 6NP", + "singleLine": "31, HIGHGATE WEST HILL, LONDON, CAMDEN, N6 6NP" + }, + "localAuthorityDistrict": [ + "Camden" + ], + "region": "London", + "type": "commercial.education.university", + "planning": { + "sources": [ + "https://api.editor.planx.dev/gis/camden?geom=MULTIPOLYGON+%28%28%28-0.153392+51.564734%2C+-0.153391+51.564724%2C+-0.153376+51.564725%2C+-0.153085+51.564757%2C+-0.1531+51.564806%2C+-0.15335+51.564785%2C+-0.153392+51.564734%29%29%29&analytics=false&sessionId=7e147b04-0a8b-44fc-a249-c36ef6407f84", + "https://api.editor.planx.dev/roads?usrn=20400012" + ], + "designations": [ + { + "value": "tpo", + "intersects": false + }, + { + "value": "flood", + "intersects": false + }, + { + "value": "listed", + "intersects": false + }, + { + "value": "article4", + "intersects": true, + "entities": [ + { + "name": "Basements", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/7010002613" + } + } + ] + }, + { + "value": "monument", + "intersects": false + }, + { + "value": "greenBelt", + "intersects": false + }, + { + "value": "designated", + "intersects": true + }, + { + "value": "nature.SAC", + "intersects": false + }, + { + "value": "nature.SPA", + "intersects": false + }, + { + "value": "nature.ASNW", + "intersects": false + }, + { + "value": "nature.SSSI", + "intersects": false + }, + { + "value": "brownfieldSite", + "intersects": false + }, + { + "value": "designated.WHS", + "intersects": false + }, + { + "value": "registeredPark", + "intersects": false + }, + { + "value": "designated.AONB", + "intersects": false + }, + { + "value": "nature.ramsarSite", + "intersects": false + }, + { + "value": "designated.nationalPark", + "intersects": false + }, + { + "value": "designated.conservationArea", + "intersects": true, + "entities": [ + { + "name": "Highgate Village", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/44009654" + } + } + ] + }, + { + "value": "designated.nationalPark.broads", + "intersects": false + }, + { + "value": "road.classified", + "intersects": false + } + ] + }, + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -0.153392, + 51.564734 + ], + [ + -0.153391, + 51.564724 + ], + [ + -0.153376, + 51.564725 + ], + [ + -0.153085, + 51.564757 + ], + [ + -0.1531, + 51.564806 + ], + [ + -0.15335, + 51.564785 + ], + [ + -0.153392, + 51.564734 + ] + ] + ] + ] + }, + "properties": { + "name": "", + "entity": 12000488653, + "prefix": "title-boundary", + "dataset": "title-boundary", + "end-date": "", + "typology": "geography", + "reference": "36535150", + "entry-date": "2024-05-06", + "start-date": "2008-08-14", + "organisation-entity": "13" + } + }, + "area": { + "hectares": 0.011762, + "squareMetres": 117.62 + } + }, + "titleNumber": { + "known": "No" + }, + "EPC": { + "known": "The property does not have one" + }, + "parking": { + "cars": { + "count": 0 + }, + "vans": { + "count": 0 + }, + "motorcycles": { + "count": 0 + }, + "cycles": { + "count": 5 + }, + "buses": { + "count": 0 + }, + "disabled": { + "count": 0 + }, + "carClub": { + "count": 0 + }, + "offStreet": { + "residential": { + "count": 0 + } + }, + "other": { + "count": 0 + } + } + }, + "application": { + "fee": { + "calculated": 120, + "payable": 120, + "exemption": { + "disability": false, + "resubmission": false + }, + "reduction": { + "sports": false, + "parishCouncil": false, + "alternative": false + }, + "reference": { + "govPay": "sandbox-123" + } + }, + "leadDeveloper": { + "type": "ukCompany", + "company": { + "name": "Fit For Cabbages Developments", + "registrationNumber": "12345679ABC" + } + }, + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } + } + }, + "proposal": { + "projectType": [ + "extend" + ], + "description": "New extension to university building, for the purposes of teaching downbeat poetry about Slough to the masses. 6 metres to the rear and 4 metres in height.", + "date": { + "start": "2024-07-28", + "completion": "2024-07-28" + }, + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -0.153392, + 51.564734 + ], + [ + -0.153391, + 51.564724 + ], + [ + -0.153376, + 51.564725 + ], + [ + -0.153085, + 51.564757 + ], + [ + -0.1531, + 51.564806 + ], + [ + -0.15335, + 51.564785 + ], + [ + -0.153392, + 51.564734 + ] + ] + ] + ] + }, + "properties": { + "name": "", + "entity": 12000488653, + "prefix": "title-boundary", + "dataset": "title-boundary", + "end-date": "", + "typology": "geography", + "reference": "36535150", + "entry-date": "2024-05-06", + "start-date": "2008-08-14", + "organisation-entity": "13", + "planx_user_action": "Accepted the title boundary" + } + }, + "area": { + "hectares": 0.011762, + "squareMetres": 117.62 + } + }, + "parking": { + "cars": { + "count": 0, + "difference": 0 + }, + "vans": { + "count": 0, + "difference": 0 + }, + "motorcycles": { + "count": 0, + "difference": 0 + }, + "cycles": { + "count": 8, + "difference": 3 + }, + "buses": { + "count": 0, + "difference": 0 + }, + "disabled": { + "count": 0, + "difference": 0 + }, + "carClub": { + "count": 0, + "difference": 0 + }, + "offStreet": { + "residential": { + "count": 0, + "difference": 0 + } + }, + "other": { + "count": 0, + "difference": 0 + } + }, + "schemeName": "Sir John Betjeman's New Extension", + "utilities": { + "internet": { + "commercialUnits": { + "count": 1 + }, + "residentialUnits": { + "count": 0 + } + }, + "fire": { + "suppression": true + } + }, + "energy": { + "type": [ + "solar" + ], + "solar": { + "capacity": { + "megawatts": 6 + } + } + }, + "urbanGreeningFactor": { + "score": 2 + }, + "greenRoof": { + "area": { + "squareMetres": 12 + } + }, + "waste": { + "reuseRecycle": { + "percent": 0 + } + }, + "charging": { + "active": { + "count": 3 + } + } + } + }, + "preAssessment": [ + { + "value": "Planning permission / Prior approval", + "description": "It looks like the proposed changes do not require planning permission, however the applicant must apply for Prior Approval before proceeding." + } + ], + "responses": [ + { + "question": "Is the property in Camden?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Something else" + } + ], + "metadata": { + "sectionName": "The property" + } + }, + { + "question": "Which of these best describes the use of the property?", + "responses": [ + { + "value": "Education" + } + ], + "metadata": { + "sectionName": "The property" + } + }, + { + "question": "What type of educational building is it?", + "responses": [ + { + "value": "University" + } + ], + "metadata": { + "sectionName": "The property" + } + }, + { + "question": "Have the works already started?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Town and Country Planning Act 1990, Part III, Section 55", + "url": "https://www.legislation.gov.uk/ukpga/1990/8/section/55" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Commercial building" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is the site of the proposed development within the curtilage of a listed building?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Would the development prevent the ongoing use of land used as a playing field for that purpose?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What is the footprint of the proposed development?", + "responses": [ + { + "value": "250 square metres or less" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Will the footprint of the proposed development be greater than 25% of the cumulative footprint of existing buildings?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Will any part of the proposed development be closer than 5 metres to the site boundary?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Will any rooftop structures, such as plant or machinery, exceed 1.5 metres in height?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What does the proposed development consist of?", + "responses": [ + { + "value": "Extension of an existing building" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Can you confirm that both of the following statements with regard to the height of the proposed development are true?", + "responses": [ + { + "value": "Yes, I can confirm that both of these statements are true." + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "[HIDDEN] proposal in scope?", + "responses": [ + { + "value": "Yes", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is the proposed development located within any of the following types of site?", + "responses": [ + { + "value": "No, the site is not located within any of the described areas" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Another use" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Select your project", + "responses": [ + { + "value": "Erect, extend or alter a university building" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What type of application is being applied for?", + "responses": [ + { + "value": "Part 7 Class M" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is the property subject to any Article 4 directions?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "List all the changes involved in the project", + "responses": [ + { + "value": "Add a storey" + }, + { + "value": "Convert a garage" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is the property affected by any Article 4 directions removing this type of permitted development right?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is the property affected by any Aticle 4 directions removing this type of permitted development right?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is the property affected by any Aticle 4 directions removing this type of permitted development right?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Extend a university building" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "You need to submit a Transport Assessment", + "responses": [ + { + "value": "Upload a document later" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Describe the proposed work", + "responses": [ + { + "value": "New extension to university building, 6 metres to the rear and 4 metres in height, clad in books of poetry." + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Is any part of the site on designated land?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Describe the materials of the buildings", + "responses": [ + { + "value": "The facade treatment will be sympathetic with the existing building and character of the area, using namely glazed tiles, london stock brick and standing seam zinc roofing." + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015, Schedule 2, Part 7, Class", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/7/crossheading/class-m-extensions-etc-for-schools-colleges-universities-and-hospitals" + }, + { + "text": "M", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/7/crossheading/class-m-extensions-etc-for-schools-colleges-universities-and-hospitals" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the project within, or near, a Conservation Area, a Listed Building or a site of Archaeological interest?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Describe any impacts on heritage areas, historic buildings or archaeological remains, and how these will be mitigated", + "responses": [ + { + "value": "These are the impacts on heritage:\nA\nB\nC\n and this is how they will be mitigated:\n1\n2\n3" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Is the proposal within the Greater London Authority?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Does the site include more than one property?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Do you know the title number of the property?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Does the property have an Energy Performance Certificate (EPC)?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What type of application is this?", + "responses": [ + { + "value": "Prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "When are the works planned to start?", + "responses": [ + { + "value": "2024-07-28" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "When are the works planned to be completed?", + "responses": [ + { + "value": "2024-07-28" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "[HIDDEN] Is the application for prior approval for an extension to a dwelling house?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Does the project have a known intended name?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Please provide the project name", + "responses": [ + { + "value": "Sir John Betjeman's New Extension" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Has a lead developer been assigned to the project?", + "responses": [ + { + "value": "Yes, a registered company in the UK" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Please provide the full company name of the lead developer", + "responses": [ + { + "value": "Fit For Cabbages Developments" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Please provide the UK company registration number", + "responses": [ + { + "value": "12345679ABC" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Does this application replace or amend a previously granted planning permission?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "[HIDDEN] Part 3 class MA?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What is the existing gross internal floor area?", + "responses": [ + { + "value": "400" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What existing gross internal floor area will be lost as a result of the proposed development?", + "responses": [ + { + "value": "10" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The London Plan", + "url": "https://www.london.gov.uk/sites/default/files/intend_to_publish_-_clean.pdf" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What gross internal floor area will be gained as a result of the proposed development?", + "responses": [ + { + "value": "390" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The London Plan", + "url": "https://www.london.gov.uk/sites/default/files/intend_to_publish_-_clean.pdf" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Are any vehicle charging or hydrogen refuelling points being added as part of the proposal?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What type of vehicle charging points are being created?", + "responses": [ + { + "value": "Active charging points" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "How many active charging points are being created?", + "responses": [ + { + "value": "3" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What type of vehicle charging points are being created", + "responses": [ + { + "value": "Fast chargers" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Does the project involve the development of new building units?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Which if any of the following will be required as part of the proposed development?", + "responses": [ + { + "value": "Full fibre internet connection" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "How many residential units will be served by a full fibre internet connection?", + "responses": [ + { + "value": "0" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "How many commercial units will be served by a full fibre internet connection?", + "responses": [ + { + "value": "1" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Is a fire suppression system proposed?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Have you consulted with mobile network operators?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Will the proposal provide any of the following?", + "responses": [ + { + "value": "Solar energy" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What is the proposed total capacity of any solar energy generation?", + "responses": [ + { + "value": "6" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What is the Urban Greening Factor Score?", + "responses": [ + { + "value": "2" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What area of green roof is proposed?", + "responses": [ + { + "value": "12" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What percentage of material from demolition and construction will be re-used or recycled?", + "responses": [ + { + "value": "0" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Does the proposal constitute a major development?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made", + "url": "https://www.legislation.gov.uk/uksi/2015/595/article/2/made" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Does the project involve the addition of self-contained residential units or student accommodation on the site?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The London Plan", + "url": "https://www.london.gov.uk/sites/default/files/intend_to_publish_-_clean.pdf" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Does the project involve the removal of self-contained residential units or student accommodation on the site?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The London Plan", + "url": "https://www.london.gov.uk/sites/default/files/intend_to_publish_-_clean.pdf" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Are there existing or are you proposing parking spaces for any of these on the site?", + "responses": [ + { + "value": "Bicycles" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What is the number of existing bicycle parking spaces?", + "responses": [ + { + "value": "5" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What is the proposed total number of bicycle parking spaces?", + "responses": [ + { + "value": "8" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Apply for prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Are you applying on behalf of someone else?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "Company" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Your contact details", + "responses": [ + { + "value": "Sir John Betjeman 012345678901 johnnybthepoet@email.org" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Is your contact address the same as the property address?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Your contact address", + "responses": [ + { + "value": "12 Cabbage Lane, Slough, FR1 3ND" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Can a planning officer see the works from public land?", + "responses": [ + { + "value": "Yes, it's visible from the road or somewhere else" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "We may need to visit the site to assess your application. If we do, who should we contact to arrange the visit?", + "responses": [ + { + "value": "Me, the applicant" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Extend a university" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload drawings" + } + }, + { + "question": "Does the proposal involve extending or altering an existing building?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "Upload drawings" + } + }, + { + "question": "Is this for submission or information only?", + "responses": [ + { + "value": "Submission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload drawings" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Extend a university" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Is the property a home?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What type of changes does the project involve?", + "responses": [ + { + "value": "Extension" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Are the public allowed to access the building?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "Check your application" + } + }, + { + "question": "Is the sole purpose of the project to provide disabled access to (or within) the building?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + }, + { + "text": "Regulation 4 (1)(b)", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/4" + } + ], + "sectionName": "Check your application" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Erect, extend or alter a university" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Is this application a resubmission?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + } + ], + "sectionName": "Check your application" + } + }, + { + "question": "Does the application qualify for a disability exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Does the application qualify for a resubmission exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Does the application qualify to the same-day-planning-application exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + } + ], + "sectionName": "Check your application" + } + }, + { + "question": "Check for multiple fees?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Camden" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Connections with London Borough of Camden", + "responses": [ + { + "value": "None of the above apply to me" + } + ], + "metadata": { + "sectionName": "Check your application" + } + }, + { + "question": "I confirm that:", + "responses": [ + { + "value": "The information contained in this application is truthful, accurate and complete, to the best of my knowledge" + } + ], + "metadata": { + "sectionName": "Check your application" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Camden" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and submit" + } + }, + { + "question": "What type of prior approval application is it?application.type", + "responses": [ + { + "value": "Extend a school, college, university, prison or hospital" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and submit" + } + } + ], + "files": [ + { + "name": "https://api.editor.planx.dev/file/private/o9ckva99/test%20document.pdf", + "type": [ + "otherDocument" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/p3e01fea/test%20document.pdf", + "type": [ + "sitePlan.proposed", + "elevations.existing", + "elevations.proposed" + ] + } + ], + "metadata": { + "id": "7e147b04-0a8b-44fc-a249-c36ef6407f84", + "organisation": "CMD", + "submittedAt": "2024-06-29T11:11:11.143Z", + "source": "PlanX", + "service": { + "flowId": "3245f1f1-d044-4e73-a819-20a7ff730964", + "url": "https://editor.planx.dev/camden/apply-for-prior-approval/published", + "files": { + "required": [ + { + "value": "sitePlan.proposed", + "description": "Site plan - proposed" + }, + { + "value": "elevations.existing", + "description": "Elevations - existing" + }, + { + "value": "elevations.proposed", + "description": "Elevations - proposed" + } + ], + "recommended": [], + "optional": [ + { + "value": "photographs.existing", + "description": "Photographs - existing" + }, + { + "value": "otherDrawing", + "description": "Other - drawing" + }, + { + "value": "otherDocument", + "description": "Other - document" + }, + { + "value": "visualisations", + "description": "Visualisations" + } + ] + }, + "fee": { + "calculated": [ + { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) (Amendment) Regulations 2023", + "url": "https://www.legislation.gov.uk/uksi/2023/1197/made" + } + ] + } + ], + "payable": [ + { + "description": "

This application does not qualify for any exemptions or reductions

" + } + ] + } + }, + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + } +} \ No newline at end of file diff --git a/examples/prototypeApplication/priorApproval/largerExtension.json b/examples/prototypeApplication/priorApproval/largerExtension.json new file mode 100644 index 00000000..80de0e26 --- /dev/null +++ b/examples/prototypeApplication/priorApproval/largerExtension.json @@ -0,0 +1,1534 @@ +{ + "applicationType": "pa.part1.classA", + "data": { + "user": { + "role": "applicant" + }, + "applicant": { + "type": "individual", + "name": { + "first": "William", + "last": "Zane" + }, + "email": "areyouon@email.org", + "phone": { + "primary": "01234000000" + }, + "address": { + "sameAsSiteAddress": true + }, + "siteContact": { + "role": "applicant" + } + }, + "property": { + "address": { + "latitude": 51.3304155, + "longitude": -0.1043842, + "x": 532161, + "y": 160741, + "title": "32, ST JAMES ROAD, PURLEY", + "source": "Ordnance Survey", + "uprn": "100020623888", + "usrn": "20502851", + "pao": "32", + "street": "ST JAMES ROAD", + "town": "PURLEY", + "postcode": "CR8 2DL", + "singleLine": "32 ST JAMES ROAD, PURLEY, CROYDON, CR8 2DL" + }, + "localAuthorityDistrict": [ + "Croydon" + ], + "region": "London", + "type": "residential.dwelling.house.detached", + "planning": { + "sources": [ + "https://api.editor.planx.dev/gis/southwark?geom=MULTIPOLYGON+%28%28%28-0.072763+51.456622%2C+-0.072749+51.456669%2C+-0.073167+51.456732%2C+-0.073195+51.456736%2C+-0.073213+51.456688%2C+-0.072763+51.456622%29%29%29&analytics=false&sessionId=80d3c3c2-0d1c-4a79-be99-912f488c2f02", + "https://api.editor.planx.dev/roads?usrn=22500947" + ], + "designations": [ + { + "value": "tpo", + "intersects": false + }, + { + "value": "flood", + "intersects": false + }, + { + "value": "listed", + "intersects": false + }, + { + "value": "article4", + "intersects": false + }, + { + "value": "monument", + "intersects": false + }, + { + "value": "greenBelt", + "intersects": false + }, + { + "value": "designated", + "intersects": false + }, + { + "value": "nature.SAC", + "intersects": false + }, + { + "value": "nature.SPA", + "intersects": false + }, + { + "value": "nature.ASNW", + "intersects": false + }, + { + "value": "nature.SSSI", + "intersects": false + }, + { + "value": "brownfieldSite", + "intersects": false + }, + { + "value": "designated.WHS", + "intersects": false + }, + { + "value": "registeredPark", + "intersects": false + }, + { + "value": "designated.AONB", + "intersects": false + }, + { + "value": "nature.ramsarSite", + "intersects": false + }, + { + "value": "designated.nationalPark", + "intersects": false + }, + { + "value": "designated.conservationArea", + "intersects": false + }, + { + "value": "designated.nationalPark.broads", + "intersects": false + }, + { + "value": "road.classified", + "intersects": false + } + ] + }, + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -0.072763, + 51.456622 + ], + [ + -0.072749, + 51.456669 + ], + [ + -0.073167, + 51.456732 + ], + [ + -0.073195, + 51.456736 + ], + [ + -0.073213, + 51.456688 + ], + [ + -0.072763, + 51.456622 + ] + ] + ] + ] + }, + "properties": { + "name": "", + "entity": 12000593377, + "prefix": "title-boundary", + "dataset": "title-boundary", + "end-date": "", + "typology": "geography", + "reference": "37786766", + "entry-date": "2024-05-06", + "start-date": "2002-06-26", + "organisation-entity": "13" + } + }, + "area": { + "hectares": 0.017289, + "squareMetres": 172.89 + } + } + }, + "application": { + "fee": { + "calculated": 120, + "payable": 0, + "exemption": { + "disability": true, + "resubmission": false + }, + "reduction": { + "sports": false, + "parishCouncil": false, + "alternative": false + } + }, + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } + } + }, + "proposal": { + "projectType": [ + "extend.rear" + ], + "description": "A 2 storey rear extension with a roof garden and built in pizza oven", + "date": { + "start": "2024-06-17", + "completion": "2050-06-18" + }, + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -0.072763, + 51.456622 + ], + [ + -0.072749, + 51.456669 + ], + [ + -0.073167, + 51.456732 + ], + [ + -0.073195, + 51.456736 + ], + [ + -0.073213, + 51.456688 + ], + [ + -0.072763, + 51.456622 + ] + ] + ] + ] + }, + "properties": { + "name": "", + "entity": 12000593377, + "prefix": "title-boundary", + "dataset": "title-boundary", + "end-date": "", + "typology": "geography", + "reference": "37786766", + "entry-date": "2024-05-06", + "start-date": "2002-06-26", + "organisation-entity": "13", + "planx_user_action": "Accepted the title boundary" + } + }, + "area": { + "hectares": 0.017289, + "squareMetres": 172.89 + } + } + } + }, + "preAssessment": [ + { + "value": "Planning permission / Prior approval", + "description": "It looks like the proposed changes do not require planning permission, however the applicant must apply for Prior Approval before proceeding." + } + ], + "responses": [ + { + "question": "Is the property in Southwark?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "House" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of house is it?", + "responses": [ + { + "value": "Terrace" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "Have the works already started?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Describe the project.", + "responses": [ + { + "value": "A 2 storey rear extension with a roof garden and built in pizza oven." + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "House" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Select your project", + "responses": [ + { + "value": "Add a rear extension" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "House" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015", + "url": "https://www.legislation.gov.uk/uksi/2015/596/contents/made" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What type of house is it?", + "responses": [ + { + "value": "Mid terrace" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "How many storeys does the original house have?", + "responses": [ + { + "value": "2 or more" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Does the original house have a projection to the rear?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Was the house always a house?", + "responses": [ + { + "value": "Yes, it was built as a house" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015, Schedule 2, Part 1, Class A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Was the house built before 2020?", + "responses": [ + { + "value": "Yes, it was built before 2020", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class 1 A.", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Which of these best describes the new extension?", + "responses": [ + { + "value": "Single storey" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Section 2, Part 1, Class A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Does the original house have a projection to the rear?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Which of these best describes your extension?", + "responses": [ + { + "value": "Rear" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "General Permitted Development Order 2015, Technical Guidance (PDF, 500KB)", + "url": "https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/830643/190910_Tech_Guide_for_publishing.pdf" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is any part of the extension within 2 metres of the boundary?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the property on designated land?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is the property a site of special scientific interest?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What type of house is it?", + "responses": [ + { + "value": "A terrace" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "How far does the new rear addition extend beyond the back wall of the original house?", + "responses": [ + { + "value": "3 to 6m", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A.1 (f)(i)", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is this a prior approval application for a larger rear extension?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Exactly how far will the new addition extend beyond the back wall of the original house?", + "responses": [ + { + "value": "5" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What type of roof does the extension have?", + "responses": [ + { + "value": "Flat" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Will any part of the extension be higher than 4m?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A.1 (g)(ii)", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + }, + { + "text": "Permitted Development Rights for Householders Technical Guidance (PDF, 500KB)", + "url": "https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/830643/190910_Tech_Guide_for_publishing.pdf" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is this a prior approval application for a larger rear extension?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What is the exact height of the extension?", + "responses": [ + { + "value": "3.6" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "How many storeys does the original house have?", + "responses": [ + { + "value": "2 or more" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is any part of the extension within 2 metres of a boundary of the house?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "How many storeys does the original house have?", + "responses": [ + { + "value": "2 or more" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Are the materials of the extension similar to the original house?", + "responses": [ + { + "value": "Yes", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the property on designated land?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "How much of the available area around the house is covered by extensions and outbuildings?", + "responses": [ + { + "value": "50% or less of the available area around the original house", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What will you use the extension for?", + "responses": [ + { + "value": "Hobby space or similar" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 1, Class A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1" + }, + { + "text": "Town and Country Planning Act 1990, Section 55", + "url": "https://www.legislation.gov.uk/ukpga/1990/8/section/55" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Who will use the hobby space?", + "responses": [ + { + "value": "Me and my family, personal use only", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Town and Country Planning Act 1990, Section 55", + "url": "https://www.legislation.gov.uk/ukpga/1990/8/section/55" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What type of application is being applied for?", + "responses": [ + { + "value": "Part 1 Class A" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is the property subject to any Article 4 directions?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Larger extension to a house" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "How many properties adjoin yours?", + "responses": [ + { + "value": "2" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015, Schedule 2, Part 1, Class A.4 (5)", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-a-enlargement-improvement-or-other-alteration-of-a-dwellinghouse" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Enter the address of the first adjoining property", + "responses": [ + { + "value": "21 Fellbrigg Road, London, SE22 9HQ" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015, Schedule 2, Part 1, Class A.4 (5)", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-a-enlargement-improvement-or-other-alteration-of-a-dwellinghouse" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Enter the address of the second adjoining property", + "responses": [ + { + "value": "25 Fellbrigg Road, London, SE22 9HQ" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015, Schedule 2, Part 1, Class A.4 (5)", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/1/crossheading/class-a-enlargement-improvement-or-other-alteration-of-a-dwellinghouse" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the proposal within the Greater London Authority?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Does the site include more than one property?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Do you know the title number of the property?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Does the property have an Energy Performance Certificate (EPC)?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Enter the reference number (RRN) from the most recent EPC", + "responses": [ + { + "value": "1234-1234-1234-1234-1234" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What type of application is this?", + "responses": [ + { + "value": "Prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "When are the works planned to start?", + "responses": [ + { + "value": "2024-06-17" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "When are the works planned to be completed?", + "responses": [ + { + "value": "2050-06-18" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "[HIDDEN] Is the application for prior approval for an extension to a dwelling house?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What is the gross internal floor area to be added?", + "responses": [ + { + "value": "40" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Do the changes involve creating any new bedrooms or bathrooms?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Are there existing or are you proposing parking spaces for any of these on the site?", + "responses": [ + { + "value": "Bicycles" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What is the number of existing bicycle parking spaces?", + "responses": [ + { + "value": "2" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What is the proposed total number of bicycle parking spaces?", + "responses": [ + { + "value": "2" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Apply for prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Are you applying on behalf of someone else?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "Private individual" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Your contact details", + "responses": [ + { + "value": "William Zane 01234000000 areyouon@email.org" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Is your contact address the same as the property address?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Can a planning officer see the works from public land?", + "responses": [ + { + "value": "Yes, it's visible from the road or somewhere else" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "We may need to visit the site to assess your application. If we do, who should we contact to arrange the visit?", + "responses": [ + { + "value": "Me, the applicant" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Larger extension to a house" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload drawings" + } + }, + { + "question": "Has the house already been extended?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "Upload drawings" + } + }, + { + "question": "Is this for submission or information only?", + "responses": [ + { + "value": "Submission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload drawings" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Larger extension to a house" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Is the property a home?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What works does the project involve?", + "responses": [ + { + "value": "Extension" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Is the purpose of the project to support the needs of a disabled resident?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + }, + { + "text": "UK Statutory Instruments 2012 No. 2920 Regulation 4", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/4/made" + }, + { + "text": "Equalities Act 2010, Section 6", + "url": "https://www.legislation.gov.uk/ukpga/2010/15/section/6" + }, + { + "text": "Children Act 1989, Part 3", + "url": "https://www.legislation.gov.uk/ukpga/1989/41/part/III" + } + ], + "sectionName": "Check your application" + } + }, + { + "question": "Are you the applicant?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Would you like to upload evidence of your disability?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "Check your application" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Larger extension to a house" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Are you submitting any other planning applications about the same works or changes?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + } + ], + "sectionName": "Check your application" + } + }, + { + "question": "Does the application qualify for a disability exemption?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Is it any of these?", + "responses": [ + { + "value": "None of these" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Check for multiple fees?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Southwark" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Connections with Southwark Council", + "responses": [ + { + "value": "None of the above apply to me" + } + ], + "metadata": { + "sectionName": "Check your application" + } + }, + { + "question": "I confirm that:", + "responses": [ + { + "value": "The information contained in this application is truthful, accurate and complete, to the best of my knowledge" + } + ], + "metadata": { + "sectionName": "Check your application" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Southwark" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and submit" + } + }, + { + "question": "What type of prior approval application is it?application.type", + "responses": [ + { + "value": "Larger extension to a house" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and submit" + } + } + ], + "files": [ + { + "name": "https://api.editor.planx.dev/file/private/dfaz9qu5/location%20plan_proposed_01.jpg", + "type": [ + "sitePlan.proposed" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/avilhq1j/elevations_existing_01.jpg", + "type": [ + "elevations.existing" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/tis6f8hh/elevations_proposed_01.jpg", + "type": [ + "elevations.proposed" + ] + } + ], + "metadata": { + "id": "80d3c3c2-0d1c-4a79-be99-912f488c2f02", + "organisation": "SWK", + "submittedAt": "2024-06-26T18:14:45.726Z", + "source": "PlanX", + "service": { + "flowId": "c6628103-c648-4663-81e1-bfa0a1a18340", + "url": "https://editor.planx.uk/southwark/apply-for-prior-approval/published", + "files": { + "required": [ + { + "value": "sitePlan.proposed", + "description": "Site plan - proposed" + } + ], + "recommended": [ + { + "value": "elevations.existing", + "description": "Elevations - existing" + }, + { + "value": "elevations.proposed", + "description": "Elevations - proposed" + } + ], + "optional": [ + { + "value": "photographs.existing", + "description": "Photographs - existing" + }, + { + "value": "otherDrawing", + "description": "Other - drawing" + }, + { + "value": "otherDocument", + "description": "Other - document" + }, + { + "value": "visualisations", + "description": "Visualisations" + } + ] + }, + "fee": { + "calculated": [ + { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) (Amendment) Regulations 2023", + "url": "https://www.legislation.gov.uk/uksi/2023/1197/made" + } + ] + } + ], + "payable": [ + { + "description": "

If the proposed works (to either a home or within the curtilage of a home) is for the sole purpose of providing either:

\n

\n

- A means of access to (or within) the dwellinghouse for a disabled resident (current or future)

\n

\n

OR

\n

\n

- Providing facilities that are designed to ensure the disabled persons safety, health or comfort

\n

\n

OR

\n

\n

- Providing disabled access to a public building

\n

\n

Then no planning fee will be payable for this application.

", + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + }, + { + "text": "Regulation 4", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/4/made" + } + ] + } + ] + } + }, + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + } +} \ No newline at end of file diff --git a/examples/prototypeApplication/priorApproval/solarPanels.json b/examples/prototypeApplication/priorApproval/solarPanels.json new file mode 100644 index 00000000..54e68fae --- /dev/null +++ b/examples/prototypeApplication/priorApproval/solarPanels.json @@ -0,0 +1,1492 @@ +{ + "applicationType": "pa.part14.classJ", + "data": { + "user": { + "role": "applicant" + }, + "applicant": { + "type": "individual", + "name": { + "first": "Bill", + "last": "Shakespeare" + }, + "email": "byanyothername@email.org", + "phone": { + "primary": "012345678901" + }, + "address": { + "sameAsSiteAddress": true + }, + "siteContact": { + "role": "applicant" + } + }, + "property": { + "address": { + "latitude": 51.5081124, + "longitude": -0.0965717, + "x": 532192, + "y": 180515, + "title": "INTERNATIONAL SHAKESPEARE GLOBE CENTRE LTD, SHAKESPEARE GLOBE THEATRE, 21, NEW GLOBE WALK, LONDON", + "source": "Ordnance Survey", + "uprn": "200003377200", + "usrn": "22503078", + "pao": "21SHAKESPEARE GLOBE THEATRE", + "street": "NEW GLOBE WALK", + "town": "LONDON", + "postcode": "SE1 9DT", + "singleLine": "INTERNATIONAL SHAKESPEARE GLOBE CENTRE LTD, SHAKESPEARE GLOBE THEATRE, 21, NEW GLOBE WALK, LONDON, SOUTHWARK, SE1 9DT" + }, + "localAuthorityDistrict": [ + "Southwark" + ], + "region": "London", + "type": "commercial.leisure.entertainment", + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -0.097554, + 51.507945 + ], + [ + -0.097612, + 51.507942 + ], + [ + -0.097592, + 51.507805 + ], + [ + -0.097442, + 51.507818 + ], + [ + -0.097257, + 51.507806 + ], + [ + -0.097255, + 51.507821 + ], + [ + -0.096964, + 51.507802 + ], + [ + -0.096853, + 51.507857 + ], + [ + -0.096465, + 51.507835 + ], + [ + -0.096391, + 51.508281 + ], + [ + -0.096748, + 51.508303 + ], + [ + -0.096891, + 51.508319 + ], + [ + -0.097056, + 51.5083 + ], + [ + -0.097068, + 51.508316 + ], + [ + -0.097096, + 51.508318 + ], + [ + -0.097232, + 51.508312 + ], + [ + -0.09723, + 51.508301 + ], + [ + -0.097249, + 51.508299 + ], + [ + -0.097247, + 51.508292 + ], + [ + -0.097277, + 51.50829 + ], + [ + -0.097279, + 51.508302 + ], + [ + -0.097362, + 51.508296 + ], + [ + -0.097358, + 51.508284 + ], + [ + -0.09741, + 51.50828 + ], + [ + -0.097414, + 51.508291 + ], + [ + -0.097452, + 51.508288 + ], + [ + -0.09745, + 51.508279 + ], + [ + -0.097626, + 51.508267 + ], + [ + -0.097607, + 51.508177 + ], + [ + -0.097597, + 51.508177 + ], + [ + -0.097554, + 51.507945 + ] + ] + ] + ] + }, + "properties": { + "name": "", + "entity": 12000608797, + "prefix": "title-boundary", + "dataset": "title-boundary", + "end-date": "", + "typology": "geography", + "reference": "53336201", + "entry-date": "2024-05-06", + "start-date": "2011-12-01", + "organisation-entity": "13" + } + }, + "area": { + "hectares": 0.424414, + "squareMetres": 4244.14 + } + }, + "titleNumber": { + "known": "Yes", + "number": "24/12345/FUL" + }, + "EPC": { + "known": "Yes", + "number": "1234-1234-1234-1234" + }, + "parking": { + "cars": { + "count": 0 + }, + "vans": { + "count": 0 + }, + "motorcycles": { + "count": 0 + }, + "cycles": { + "count": 30 + }, + "buses": { + "count": 0 + }, + "disabled": { + "count": 0 + }, + "carClub": { + "count": 0 + }, + "offStreet": { + "residential": { + "count": 0 + } + }, + "other": { + "count": 0 + } + } + }, + "application": { + "fee": { + "calculated": 120, + "payable": 120, + "exemption": { + "disability": false, + "resubmission": false + }, + "reduction": { + "sports": false, + "parishCouncil": false, + "alternative": false + }, + "reference": { + "govPay": "mfm6s5irae9bh5g75p3ks5opng" + } + }, + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } + } + }, + "proposal": { + "projectType": [ + "alter.equipment.solar" + ], + "description": "Not provided", + "date": { + "start": "2024-07-28", + "completion": "2030-07-28" + }, + "boundary": { + "site": { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -0.097554, + 51.507945 + ], + [ + -0.097612, + 51.507942 + ], + [ + -0.097592, + 51.507805 + ], + [ + -0.097442, + 51.507818 + ], + [ + -0.097257, + 51.507806 + ], + [ + -0.097255, + 51.507821 + ], + [ + -0.096964, + 51.507802 + ], + [ + -0.096853, + 51.507857 + ], + [ + -0.096465, + 51.507835 + ], + [ + -0.096391, + 51.508281 + ], + [ + -0.096748, + 51.508303 + ], + [ + -0.096891, + 51.508319 + ], + [ + -0.097056, + 51.5083 + ], + [ + -0.097068, + 51.508316 + ], + [ + -0.097096, + 51.508318 + ], + [ + -0.097232, + 51.508312 + ], + [ + -0.09723, + 51.508301 + ], + [ + -0.097249, + 51.508299 + ], + [ + -0.097247, + 51.508292 + ], + [ + -0.097277, + 51.50829 + ], + [ + -0.097279, + 51.508302 + ], + [ + -0.097362, + 51.508296 + ], + [ + -0.097358, + 51.508284 + ], + [ + -0.09741, + 51.50828 + ], + [ + -0.097414, + 51.508291 + ], + [ + -0.097452, + 51.508288 + ], + [ + -0.09745, + 51.508279 + ], + [ + -0.097626, + 51.508267 + ], + [ + -0.097607, + 51.508177 + ], + [ + -0.097597, + 51.508177 + ], + [ + -0.097554, + 51.507945 + ] + ] + ] + ] + }, + "properties": { + "name": "", + "entity": 12000608797, + "prefix": "title-boundary", + "dataset": "title-boundary", + "end-date": "", + "typology": "geography", + "reference": "53336201", + "entry-date": "2024-05-06", + "start-date": "2011-12-01", + "organisation-entity": "13", + "planx_user_action": "Accepted the title boundary" + } + }, + "area": { + "hectares": 0.424414, + "squareMetres": 4244.14 + } + }, + "parking": { + "cars": { + "count": 0, + "difference": 0 + }, + "vans": { + "count": 0, + "difference": 0 + }, + "motorcycles": { + "count": 0, + "difference": 0 + }, + "cycles": { + "count": 30, + "difference": 0 + }, + "buses": { + "count": 0, + "difference": 0 + }, + "disabled": { + "count": 0, + "difference": 0 + }, + "carClub": { + "count": 0, + "difference": 0 + }, + "offStreet": { + "residential": { + "count": 0, + "difference": 0 + } + }, + "other": { + "count": 0, + "difference": 0 + } + } + } + }, + "preAssessment": [ + { + "value": "Planning permission / Prior approval", + "description": "It looks like the proposed changes do not require planning permission, however the applicant must apply for Prior Approval before proceeding." + } + ], + "responses": [ + { + "question": "Is the property in Southwark?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Something else" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "Which of these best describes the use of the property?", + "responses": [ + { + "value": "Leisure and sport" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "What type of leisure property is it?", + "responses": [ + { + "value": "Entertainment" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "The property" + } + }, + { + "question": "Have the works already started?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Describe the project.", + "responses": [ + { + "value": "Installation of solar panels on the roof of the globe theatre" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Commercial building" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Neither a house nor a flat" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What do you want to install?", + "responses": [ + { + "value": "Solar photovoltaics (PV)" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Are there any other locations where the equipment could be installed?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14/crossheading/class-a-installation-or-alteration-etc-of-solar-equipment-on-domestic-premises" + }, + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class K", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14/crossheading/class-k-installation-or-alteration-etc-of-standalone-solar-equipment-on-nondomestic-premises" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Would the solar panels would be less visible from the highway in these other locations?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14/crossheading/class-a-installation-or-alteration-etc-of-solar-equipment-on-domestic-premises" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the building listed?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class J", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14/crossheading/class-j-installation-or-alteration-etc-of-solar-equipment-on-nondomestic-premises" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Is the property a scheduled monument?", + "responses": [ + { + "value": "No", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class J", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14/crossheading/class-j-installation-or-alteration-etc-of-solar-equipment-on-nondomestic-premises" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Where are the new solar panels?", + "responses": [ + { + "value": "On roofs" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What type of roofs are they?", + "responses": [ + { + "value": "Pitched" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "How far do the new solar panels stick out from the pitched roofs?", + "responses": [ + { + "value": "0.2m or less", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class J", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "How far are the new solar panels from the edge of the roof?", + "responses": [ + { + "value": "1m or more from the edge of the roof", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class J", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What do you want to install?", + "responses": [ + { + "value": "Solar photovoltaics (PV)" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What is the total capacity of all solar photovoltaics (PV)?", + "responses": [ + { + "value": "More than 50kW", + "metadata": { + "flags": [ + "Planning permission / Prior approval" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class J", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "The solar panels must be removed when no longer needed.", + "responses": [ + { + "value": "OK", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class A", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14/crossheading/class-a-installation-or-alteration-etc-of-solar-equipment-on-domestic-premises" + }, + { + "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class K", + "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14/crossheading/class-k-installation-or-alteration-etc-of-standalone-solar-equipment-on-nondomestic-premises" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What type of property is it?", + "responses": [ + { + "value": "Another use" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Select your project", + "responses": [ + { + "value": "Install solar panels" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What type of application is being applied for?", + "responses": [ + { + "value": "Part 14 Class J" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is the property subject to any Article 4 directions?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Install or change solar panels" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Is the proposal within the Greater London Authority?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "Does the site include more than one property?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Do you know the title number of the property?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What is the title number of the property?", + "responses": [ + { + "value": "24/12345/FUL" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Does the property have an Energy Performance Certificate (EPC)?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "Enter the reference number (RRN) from the most recent EPC", + "responses": [ + { + "value": "1234-1234-1234-1234" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "What type of application is this?", + "responses": [ + { + "value": "Prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "When are the works planned to start?", + "responses": [ + { + "value": "2024-07-28" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "When are the works planned to be completed?", + "responses": [ + { + "value": "2030-07-28" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "[HIDDEN] Is the application for prior approval for an extension to a dwelling house?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About the project" + } + }, + { + "question": "What is the gross internal floor area to be added?", + "responses": [ + { + "value": "0" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Do the changes involve creating any new bedrooms or bathrooms?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About the project" + } + }, + { + "question": "Are there existing or are you proposing parking spaces for any of these on the site?", + "responses": [ + { + "value": "Bicycles" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What is the number of existing bicycle parking spaces?", + "responses": [ + { + "value": "30" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What is the proposed total number of bicycle parking spaces?", + "responses": [ + { + "value": "30" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" + } + ], + "sectionName": "About the project" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Apply for prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "About you" + } + }, + { + "question": "Are you applying on behalf of someone else?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Which of these best describes you?", + "responses": [ + { + "value": "Private individual" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Your contact details", + "responses": [ + { + "value": "Bill Shakespeare 012345678901 byanyothername@email.org" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Is your contact address the same as the property address?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Your contact address", + "responses": [ + { + "value": "12 Sonnet Street, Stratford upon Avon, TH334RD" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "Can a planning officer see the works from public land?", + "responses": [ + { + "value": "Yes, it's visible from the road or somewhere else" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "We may need to visit the site to assess your application. If we do, who should we contact to arrange the visit?", + "responses": [ + { + "value": "Me, the applicant" + } + ], + "metadata": { + "sectionName": "About you" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Install or change solar panels" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload drawings" + } + }, + { + "question": "Where will the solar panels be installed?", + "responses": [ + { + "value": "On roofs" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload drawings" + } + }, + { + "question": "Your planning officer will need to check how far the solar panels stick out beyond the surface of the roof. What do you have that shows this?", + "responses": [ + { + "value": "Section drawing of the building" + } + ], + "metadata": { + "sectionName": "Upload drawings" + } + }, + { + "question": "Is this for submission or information only?", + "responses": [ + { + "value": "Submission" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Upload drawings" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Install or change solar panels" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Is the property a home?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What type of changes does the project involve?", + "responses": [ + { + "value": "Alteration" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Are the public allowed to access the building?", + "responses": [ + { + "value": "Yes" + } + ], + "metadata": { + "sectionName": "Check your application" + } + }, + { + "question": "Is the sole purpose of the project to provide disabled access to (or within) the building?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + }, + { + "text": "Regulation 4 (1)(b)", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/4" + } + ], + "sectionName": "Check your application" + } + }, + { + "question": "What type of prior approval application is it?", + "responses": [ + { + "value": "Install or change solar panels" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Does the application qualify for a disability exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Does the application qualify for a resubmission exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Does the application qualify to the same-day-planning-application exemption?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) Regulations 2012, Regulation 14", + "url": "https://www.legislation.gov.uk/uksi/2012/2920/regulation/14" + } + ], + "sectionName": "Check your application" + } + }, + { + "question": "Check for multiple fees?", + "responses": [ + { + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Prior approval" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Southwark" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "Connections with Southwark Council", + "responses": [ + { + "value": "None of the above apply to me" + } + ], + "metadata": { + "sectionName": "Check your application" + } + }, + { + "question": "I confirm that:", + "responses": [ + { + "value": "The information contained in this application is truthful, accurate and complete, to the best of my knowledge" + } + ], + "metadata": { + "sectionName": "Check your application" + } + }, + { + "question": "Which Local Planning authority is it?", + "responses": [ + { + "value": "Southwark" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and submit" + } + }, + { + "question": "What type of prior approval application is it?application.type", + "responses": [ + { + "value": "Install or change solar panels" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Pay and submit" + } + } + ], + "files": [ + { + "name": "https://api.editor.planx.dev/file/private/mq2iovsi/test%20document.pdf", + "type": [ + "sections.proposed" + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/czxk98ug/test%20document.pdf", + "type": [ + "sitePlan.proposed" + ] + } + ], + "metadata": { + "id": "dee911d0-48b4-438c-96b6-2bb12ae46335", + "organisation": "SWK", + "submittedAt": "2024-06-29T13:06:44.801Z", + "source": "PlanX", + "service": { + "flowId": "c6628103-c648-4663-81e1-bfa0a1a18340", + "url": "https://editor.planx.uk/southwark/apply-for-prior-approval/published", + "files": { + "required": [ + { + "value": "sitePlan.proposed", + "description": "Site plan - proposed" + }, + { + "value": "sections.proposed", + "description": "Sections - proposed" + } + ], + "recommended": [], + "optional": [ + { + "value": "photographs.existing", + "description": "Photographs - existing" + }, + { + "value": "otherDrawing", + "description": "Other - drawing" + }, + { + "value": "otherDocument", + "description": "Other - document" + }, + { + "value": "visualisations", + "description": "Visualisations" + } + ] + }, + "fee": { + "calculated": [ + { + "policyRefs": [ + { + "text": "The Town and Country Planning (Fees for Applications, Deemed Applications, Requests and Site Visits) (England) (Amendment) Regulations 2023", + "url": "https://www.legislation.gov.uk/uksi/2023/1197/made" + } + ] + } + ], + "payable": [ + { + "description": "

This application does not qualify for any exemptions or reductions

" + } + ] + } + }, + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + } +} \ No newline at end of file diff --git a/tests/usage.test.ts b/tests/usage.test.ts index 9c8800ad..4d938b31 100644 --- a/tests/usage.test.ts +++ b/tests/usage.test.ts @@ -4,9 +4,11 @@ import * as path from 'path'; import Ajv from 'ajv'; import addFormats from 'ajv-formats'; import {Schema, Validator} from 'jsonschema'; +import {describe, expect, test} from 'vitest'; import applicationSchema from '../schemas/application.json'; +import prototypeApplicationSchema from '../schemas/prototypeApplication.json'; import {Application} from '../types/schemas/application'; -import {describe, test, expect} from 'vitest'; +import {PrototypeApplication} from '../types/schemas/prototypeApplication'; /** * Helper function to walk /examples directory and collect generated JSON files @@ -41,11 +43,19 @@ const schemas = [ schema: applicationSchema, examples: getJSONExamples('application'), }, + // { + // name: 'PrototypeApplication', + // schema: prototypeApplicationSchema, + // examples: getJSONExamples('prototypeApplication'), + // }, ]; describe.each(schemas)('$name', ({schema, examples}) => { const validator = new Validator(); + const _applicationTypeProperty = + '$data.application.type.description' || '$applicationType'; + describe("parsing using the 'jsonschema' library", () => { describe.each(examples)('$data.application.type.description', example => { test('accepts a valid example', async () => { From 7bc00b42e17230db523ee322efcbc4c29aa01c08 Mon Sep 17 00:00:00 2001 From: Jessica McInchak Date: Wed, 18 Sep 2024 13:13:49 +0200 Subject: [PATCH 09/13] correct metadata file requirement enums --- .../data/landDrainageConsent.ts | 16 +- .../lawfulDevelopmentCertificate/existing.ts | 35 +- .../lawfulDevelopmentCertificate/proposed.ts | 40 +- .../data/listedBuildingConsent.ts | 65 +- .../planningPermission/fullHouseholder.ts | 41 +- .../fullHouseholderInConservationArea.ts | 57 +- .../data/planningPermission/major.ts | 16 +- .../data/planningPermission/minor.ts | 16 +- .../data/priorApproval/buildHomes.ts | 67 +- .../priorApproval/convertCommercialToHome.ts | 47 +- .../data/priorApproval/extendUniversity.ts | 35 +- .../data/priorApproval/largerExtension.ts | 40 +- .../data/priorApproval/solarPanels.ts | 33 +- .../landDrainageConsent.json | 10 +- .../existing.json | 34 +- .../proposed.json | 40 +- .../listedBuildingConsent.json | 63 +- .../planningPermission/fullHouseholder.json | 40 +- .../fullHouseholderInConservationArea.json | 57 +- .../planningPermission/major.json | 10 +- .../planningPermission/minor.json | 10 +- .../priorApproval/buildHomes.json | 67 +- .../convertCommercialToHome.json | 45 +- .../priorApproval/extendUniversity.json | 35 +- .../priorApproval/largerExtension.json | 37 +- .../priorApproval/solarPanels.json | 32 +- schemas/prototypeApplication.json | 2159 ++--------------- types/schemas/prototypeApplication/index.ts | 31 +- 28 files changed, 375 insertions(+), 2803 deletions(-) diff --git a/examples/prototypeApplication/data/landDrainageConsent.ts b/examples/prototypeApplication/data/landDrainageConsent.ts index 62255aa4..00f99f02 100644 --- a/examples/prototypeApplication/data/landDrainageConsent.ts +++ b/examples/prototypeApplication/data/landDrainageConsent.ts @@ -646,20 +646,8 @@ export const landDrainageConsentPrototype: PrototypeApplication = { flowId: '5aab3466-8fb0-4e73-b51d-347d61ad5547', url: 'https://editor.planx.dev/medway/apply-for-land-drainage-consent-copy/published', files: { - required: [ - { - value: 'necessaryInformation', - description: - 'Information the authority considers necessary for the application', - }, - ], - recommended: [ - { - value: 'relevantInformation', - description: - 'Information the applicant considers relevant to the application', - }, - ], + required: ['necessaryInformation'], + recommended: ['relevantInformation'], optional: [], }, fee: { diff --git a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts index 8451e98a..326846c8 100644 --- a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts +++ b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts @@ -1182,37 +1182,12 @@ export const lawfulDevelopmentCertificateExistingPrototype: PrototypeApplication url: 'https://www.editor.planx.dev/buckinghamshire/apply-for-a-lawful-development-certificate/preview', files: { required: [ - { - value: 'photographs.proposed', - description: 'Photographs - proposed', - }, - { - value: 'sitePlan.proposed', - description: 'Site plan - proposed', - }, - { - value: 'elevations.proposed', - description: 'Elevations - proposed', - }, - { - value: 'floorPlan.proposed', - description: 'Floor plan - proposed', - }, - { - value: 'floorPlan.proposed', - description: 'Floor plan - proposed', - }, - ], - recommended: [ - { - value: 'otherEvidence', - description: 'Other - evidence or correspondence', - }, - { - value: 'constructionInvoice', - description: 'Construction invoice', - }, + 'photographs.proposed', + 'sitePlan.proposed', + 'elevations.proposed', + 'floorPlan.proposed', ], + recommended: ['otherEvidence', 'constructionInvoice'], optional: [], }, fee: { diff --git a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts index 6e8ee82c..7fb03fac 100644 --- a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts +++ b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts @@ -756,38 +756,14 @@ export const lawfulDevelopmentCertificateProposedPrototype: PrototypeApplication url: 'https://www.editor.planx.dev/buckinghamshire/apply-for-a-lawful-development-certificate/preview', files: { required: [ - { - value: 'roofPlan.existing', - description: 'Roof plan - existing', - }, - { - value: 'sitePlan.existing', - description: 'Site plan - existing', - }, - { - value: 'roofPlan.proposed', - description: 'Roof plan - proposed', - }, - { - value: 'sitePlan.proposed', - description: 'Site plan - proposed', - }, - { - value: 'elevations.existing', - description: 'Elevations - existing', - }, - { - value: 'floorPlan.existing', - description: 'Floor plan - existing', - }, - { - value: 'elevations.proposed', - description: 'Elevations - proposed', - }, - { - value: 'floorPlan.proposed', - description: 'Floor plan - proposed', - }, + 'roofPlan.existing', + 'sitePlan.existing', + 'roofPlan.proposed', + 'sitePlan.proposed', + 'elevations.existing', + 'floorPlan.existing', + 'elevations.proposed', + 'floorPlan.proposed', ], recommended: [], optional: [], diff --git a/examples/prototypeApplication/data/listedBuildingConsent.ts b/examples/prototypeApplication/data/listedBuildingConsent.ts index acbbc5fd..5a687f74 100644 --- a/examples/prototypeApplication/data/listedBuildingConsent.ts +++ b/examples/prototypeApplication/data/listedBuildingConsent.ts @@ -1050,61 +1050,24 @@ export const listedBuildingConsentPrototype: PrototypeApplication = { source: 'PlanX', service: { flowId: '2677568c-00d2-4391-98ea-f34a4e743437', - url: 'https://www.editor.planx.uk/camden/apply-for-listed-building-consent/published', + url: 'https://www.editor.planx.dev/camden/apply-for-listed-building-consent/published', files: { required: [ - { - value: 'sitePlan.existing', - description: 'Site plan - existing', - }, - { - value: 'sitePlan.proposed', - description: 'Site plan - proposed', - }, - { - value: 'elevations.existing', - description: 'Elevations - existing', - }, - { - value: 'elevations.proposed', - description: 'Elevations - proposed', - }, - { - value: 'floorPlan.existing', - description: 'Floor plan - existing', - }, - { - value: 'floorPlan.proposed', - description: 'Floor plan - proposed', - }, - { - value: 'joinerySections', - description: 'Joinery section report', - }, - ], - recommended: [ - { - value: 'heritageStatement', - description: 'Heritage Statement', - }, + 'sitePlan.existing', + 'sitePlan.proposed', + 'elevations.existing', + 'elevations.proposed', + 'floorPlan.existing', + 'floorPlan.proposed', + 'joinerySections', ], + recommended: ['heritageStatement'], optional: [ - { - value: 'photographs.existing', - description: 'Photographs - existing', - }, - { - value: 'otherDrawing', - description: 'Other - drawing', - }, - { - value: 'otherDocument', - description: 'Other - document', - }, - { - value: 'visualisations', - description: 'Visualisations', - }, + 'photographs.existing', + 'photographs.proposed', + 'otherDrawing', + 'otherDocument', + 'visualisations', ], }, fee: { diff --git a/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts b/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts index bba434a3..35d83b19 100644 --- a/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts +++ b/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts @@ -1076,41 +1076,14 @@ export const planningPermissionFullHouseholderPrototype: PrototypeApplication = url: 'https://www.editor.planx.dev/lambeth/apply-for-planning-permission/preview', files: { required: [ - { - value: 'roofPlan.existing', - description: 'Roof plan - existing', - }, - { - value: 'roofPlan.proposed', - description: 'Roof plan - proposed', - }, - { - value: 'sitePlan.existing', - description: 'Site plan - existing', - }, - { - value: 'sitePlan.proposed', - description: 'Site plan - proposed', - }, - { - value: 'elevations.existing', - description: 'Elevations - existing', - }, - { - value: 'elevations.proposed', - description: 'Elevations - proposed', - }, - ], - recommended: [ - { - value: 'floorPlan.existing', - description: 'Floor plan - existing', - }, - { - value: 'floorPlan.proposed', - description: 'Floor plan - proposed', - }, + 'roofPlan.existing', + 'roofPlan.proposed', + 'sitePlan.existing', + 'sitePlan.proposed', + 'elevations.existing', + 'elevations.proposed', ], + recommended: ['floorPlan.existing', 'floorPlan.proposed'], optional: [], }, fee: { diff --git a/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts b/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts index d99b1f8d..5b5f9f1b 100644 --- a/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts +++ b/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts @@ -1149,56 +1149,23 @@ export const planningPermissionFullHouseholderInConservationAreaPrototype: Proto source: 'PlanX', service: { flowId: 'bba306e7-15c8-438f-a71e-a1e5d3a99caf', - url: 'https://editor.planx.uk/southwark/apply-for-planning-permission/published', + url: 'https://editor.planx.dev/southwark/apply-for-planning-permission/published', files: { required: [ - { - value: 'sitePlan.existing', - description: 'Site plan - existing', - }, - { - value: 'sitePlan.proposed', - description: 'Site plan - proposed', - }, - { - value: 'elevations.existing', - description: 'Elevations - existing', - }, - { - value: 'elevations.proposed', - description: 'Elevations - proposed', - }, - { - value: 'floorPlan.existing', - description: 'Floor plan - existing', - }, - { - value: 'floorPlan.proposed', - description: 'Floor plan - proposed', - }, - { - value: 'heritageStatement', - description: 'Heritage Statement', - }, + 'sitePlan.existing', + 'sitePlan.proposed', + 'elevations.existing', + 'elevations.proposed', + 'floorPlan.existing', + 'floorPlan.proposed', + 'heritageStatement', ], recommended: [], optional: [ - { - value: 'photographs.existing', - description: 'Photographs - existing', - }, - { - value: 'otherDrawing', - description: 'Other - drawing', - }, - { - value: 'otherDocument', - description: 'Other - document', - }, - { - value: 'visualisations', - description: 'Visualisations', - }, + 'photographs.existing', + 'otherDocument', + 'otherDrawing', + 'visualisations', ], }, fee: { diff --git a/examples/prototypeApplication/data/planningPermission/major.ts b/examples/prototypeApplication/data/planningPermission/major.ts index 089b4fcf..05863d7f 100644 --- a/examples/prototypeApplication/data/planningPermission/major.ts +++ b/examples/prototypeApplication/data/planningPermission/major.ts @@ -2095,20 +2095,8 @@ export const planningPermissionMajorPrototype: PrototypeApplication = { flowId: '28e258a7-812f-4390-b520-7c00e7f5cd77', url: 'https://editor.planx.dev/buckinghamshire/apply-for-planning-permission/published', files: { - required: [ - { - value: 'necessaryInformation', - description: - 'Information the authority considers necessary for the application', - }, - ], - recommended: [ - { - value: 'relevantInformation', - description: - 'Information the applicant considers relevant to the application', - }, - ], + required: ['necessaryInformation'], + recommended: ['relevantInformation'], optional: [], }, fee: { diff --git a/examples/prototypeApplication/data/planningPermission/minor.ts b/examples/prototypeApplication/data/planningPermission/minor.ts index 003c1a29..3e876543 100644 --- a/examples/prototypeApplication/data/planningPermission/minor.ts +++ b/examples/prototypeApplication/data/planningPermission/minor.ts @@ -1591,20 +1591,8 @@ export const planningPermissionMinorPrototype: PrototypeApplication = { flowId: '28e258a7-812f-4390-b520-7c00e7f5cd77', url: 'https://editor.planx.dev/buckinghamshire/apply-for-planning-permission/published', files: { - required: [ - { - value: 'necessaryInformation', - description: - 'Information the authority considers necessary for the application', - }, - ], - recommended: [ - { - value: 'relevantInformation', - description: - 'Information the applicant considers relevant to the application', - }, - ], + required: ['necessaryInformation'], + recommended: ['relevantInformation'], optional: [], }, fee: { diff --git a/examples/prototypeApplication/data/priorApproval/buildHomes.ts b/examples/prototypeApplication/data/priorApproval/buildHomes.ts index 33fbc461..d53fd30d 100644 --- a/examples/prototypeApplication/data/priorApproval/buildHomes.ts +++ b/examples/prototypeApplication/data/priorApproval/buildHomes.ts @@ -1666,64 +1666,25 @@ export const priorApprovalBuildHomesPrototype: PrototypeApplication = { source: 'PlanX', service: { flowId: '6f76e837-7a42-40f3-80e9-a9482dce5982', - url: 'https://editor.planx.uk/buckinghamshire/apply-for-prior-approval/published', + url: 'https://editor.planx.dev/buckinghamshire/apply-for-prior-approval/published', files: { required: [ - { - value: 'sitePlan.proposed', - description: 'Site plan - proposed', - }, - { - value: 'elevations.existing', - description: 'Elevations - existing', - }, - { - value: 'elevations.proposed', - description: 'Elevations - proposed', - }, - { - value: 'floorPlan.existing', - description: 'Floor plan - existing', - }, - { - value: 'floorPlan.proposed', - description: 'Floor plan - proposed', - }, - { - value: 'roofPlan.proposed', - description: 'Roof plan - proposed', - }, - { - value: 'sections.existing', - description: 'Sections - existing', - }, - { - value: 'sections.proposed', - description: 'Sections - proposed', - }, - { - value: 'noiseAssessment', - description: 'Noise assessment', - }, + 'sitePlan.proposed', + 'elevations.existing', + 'elevations.proposed', + 'floorPlan.existing', + 'floorPlan.proposed', + 'roofPlan.proposed', + 'sections.existing', + 'sections.proposed', + 'noiseAssessment', ], recommended: [], optional: [ - { - value: 'photographs.existing', - description: 'Photographs - existing', - }, - { - value: 'otherDrawing', - description: 'Other - drawing', - }, - { - value: 'otherDocument', - description: 'Other - document', - }, - { - value: 'visualisations', - description: 'Visualisations', - }, + 'photographs.existing', + 'otherDrawing', + 'otherDocument', + 'visualisations', ], }, fee: { diff --git a/examples/prototypeApplication/data/priorApproval/convertCommercialToHome.ts b/examples/prototypeApplication/data/priorApproval/convertCommercialToHome.ts index eab68744..4755c489 100644 --- a/examples/prototypeApplication/data/priorApproval/convertCommercialToHome.ts +++ b/examples/prototypeApplication/data/priorApproval/convertCommercialToHome.ts @@ -1465,46 +1465,17 @@ export const priorApprovalConvertCommercialToHomePrototype: PrototypeApplication url: 'https://editor.planx.dev/lambeth/apply-for-prior-approval/published', files: { required: [ - { - value: 'sitePlan.proposed', - description: 'Site plan - proposed', - }, - { - value: 'usePlan.proposed', - description: 'Use plan - proposed', - }, - { - value: 'noiseAssessment', - description: 'Noise assessment', - }, - { - value: 'sunlightAndDaylightReport', - description: 'Sunlight and daylight report', - }, - ], - recommended: [ - { - value: 'sitePlan.existing', - description: 'Site plan - existing', - }, + 'sitePlan.proposed', + 'usePlan.proposed', + 'noiseAssessment', + 'sunlightAndDaylightReport', ], + recommended: ['sitePlan.existing'], optional: [ - { - value: 'photographs.existing', - description: 'Photographs - existing', - }, - { - value: 'otherDrawing', - description: 'Other - drawing', - }, - { - value: 'otherDocument', - description: 'Other - document', - }, - { - value: 'visualisations', - description: 'Visualisations', - }, + 'photographs.existing', + 'otherDrawing', + 'otherDocument', + 'visualisations', ], }, fee: { diff --git a/examples/prototypeApplication/data/priorApproval/extendUniversity.ts b/examples/prototypeApplication/data/priorApproval/extendUniversity.ts index 50efe195..a332ee26 100644 --- a/examples/prototypeApplication/data/priorApproval/extendUniversity.ts +++ b/examples/prototypeApplication/data/priorApproval/extendUniversity.ts @@ -1674,37 +1674,16 @@ export const priorApprovalExtendUniversityPrototype: PrototypeApplication = { url: 'https://editor.planx.dev/camden/apply-for-prior-approval/published', files: { required: [ - { - value: 'sitePlan.proposed', - description: 'Site plan - proposed', - }, - { - value: 'elevations.existing', - description: 'Elevations - existing', - }, - { - value: 'elevations.proposed', - description: 'Elevations - proposed', - }, + 'sitePlan.proposed', + 'elevations.existing', + 'elevations.proposed', ], recommended: [], optional: [ - { - value: 'photographs.existing', - description: 'Photographs - existing', - }, - { - value: 'otherDrawing', - description: 'Other - drawing', - }, - { - value: 'otherDocument', - description: 'Other - document', - }, - { - value: 'visualisations', - description: 'Visualisations', - }, + 'photographs.existing', + 'otherDrawing', + 'otherDocument', + 'visualisations', ], }, fee: { diff --git a/examples/prototypeApplication/data/priorApproval/largerExtension.ts b/examples/prototypeApplication/data/priorApproval/largerExtension.ts index 59d4cacf..f16cb501 100644 --- a/examples/prototypeApplication/data/priorApproval/largerExtension.ts +++ b/examples/prototypeApplication/data/priorApproval/largerExtension.ts @@ -1429,41 +1429,15 @@ export const priorApprovalLargerExtensionPrototype: PrototypeApplication = { source: 'PlanX', service: { flowId: 'c6628103-c648-4663-81e1-bfa0a1a18340', - url: 'https://editor.planx.uk/southwark/apply-for-prior-approval/published', + url: 'https://editor.planx.dev/southwark/apply-for-prior-approval/published', files: { - required: [ - { - value: 'sitePlan.proposed', - description: 'Site plan - proposed', - }, - ], - recommended: [ - { - value: 'elevations.existing', - description: 'Elevations - existing', - }, - { - value: 'elevations.proposed', - description: 'Elevations - proposed', - }, - ], + required: ['sitePlan.proposed'], + recommended: ['elevations.existing', 'elevations.proposed'], optional: [ - { - value: 'photographs.existing', - description: 'Photographs - existing', - }, - { - value: 'otherDrawing', - description: 'Other - drawing', - }, - { - value: 'otherDocument', - description: 'Other - document', - }, - { - value: 'visualisations', - description: 'Visualisations', - }, + 'photographs.existing', + 'otherDrawing', + 'otherDocument', + 'visualisations', ], }, fee: { diff --git a/examples/prototypeApplication/data/priorApproval/solarPanels.ts b/examples/prototypeApplication/data/priorApproval/solarPanels.ts index 2cd4f15e..a2ce339c 100644 --- a/examples/prototypeApplication/data/priorApproval/solarPanels.ts +++ b/examples/prototypeApplication/data/priorApproval/solarPanels.ts @@ -1250,36 +1250,15 @@ export const priorApprovalSolarPanelsPrototype: PrototypeApplication = { source: 'PlanX', service: { flowId: 'c6628103-c648-4663-81e1-bfa0a1a18340', - url: 'https://editor.planx.uk/southwark/apply-for-prior-approval/published', + url: 'https://editor.planx.dev/southwark/apply-for-prior-approval/published', files: { - required: [ - { - value: 'sitePlan.proposed', - description: 'Site plan - proposed', - }, - { - value: 'sections.proposed', - description: 'Sections - proposed', - }, - ], + required: ['sitePlan.proposed', 'sections.proposed'], recommended: [], optional: [ - { - value: 'photographs.existing', - description: 'Photographs - existing', - }, - { - value: 'otherDrawing', - description: 'Other - drawing', - }, - { - value: 'otherDocument', - description: 'Other - document', - }, - { - value: 'visualisations', - description: 'Visualisations', - }, + 'photographs.existing', + 'otherDrawing', + 'otherDocument', + 'visualisations', ], }, fee: { diff --git a/examples/prototypeApplication/landDrainageConsent.json b/examples/prototypeApplication/landDrainageConsent.json index c75b2253..eb265ef6 100644 --- a/examples/prototypeApplication/landDrainageConsent.json +++ b/examples/prototypeApplication/landDrainageConsent.json @@ -1040,16 +1040,10 @@ "url": "https://editor.planx.dev/medway/apply-for-land-drainage-consent-copy/published", "files": { "required": [ - { - "value": "necessaryInformation", - "description": "Information the authority considers necessary for the application" - } + "necessaryInformation" ], "recommended": [ - { - "value": "relevantInformation", - "description": "Information the applicant considers relevant to the application" - } + "relevantInformation" ], "optional": [] }, diff --git a/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json b/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json index 54129ed1..9c6efb82 100644 --- a/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json +++ b/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json @@ -1803,36 +1803,14 @@ "url": "https://www.editor.planx.dev/buckinghamshire/apply-for-a-lawful-development-certificate/preview", "files": { "required": [ - { - "value": "photographs.proposed", - "description": "Photographs - proposed" - }, - { - "value": "sitePlan.proposed", - "description": "Site plan - proposed" - }, - { - "value": "elevations.proposed", - "description": "Elevations - proposed" - }, - { - "value": "floorPlan.proposed", - "description": "Floor plan - proposed" - }, - { - "value": "floorPlan.proposed", - "description": "Floor plan - proposed" - } + "photographs.proposed", + "sitePlan.proposed", + "elevations.proposed", + "floorPlan.proposed" ], "recommended": [ - { - "value": "otherEvidence", - "description": "Other - evidence or correspondence" - }, - { - "value": "constructionInvoice", - "description": "Construction invoice" - } + "otherEvidence", + "constructionInvoice" ], "optional": [] }, diff --git a/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json b/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json index b178ecbb..b90757bf 100644 --- a/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json +++ b/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json @@ -1137,38 +1137,14 @@ "url": "https://www.editor.planx.dev/buckinghamshire/apply-for-a-lawful-development-certificate/preview", "files": { "required": [ - { - "value": "roofPlan.existing", - "description": "Roof plan - existing" - }, - { - "value": "sitePlan.existing", - "description": "Site plan - existing" - }, - { - "value": "roofPlan.proposed", - "description": "Roof plan - proposed" - }, - { - "value": "sitePlan.proposed", - "description": "Site plan - proposed" - }, - { - "value": "elevations.existing", - "description": "Elevations - existing" - }, - { - "value": "floorPlan.existing", - "description": "Floor plan - existing" - }, - { - "value": "elevations.proposed", - "description": "Elevations - proposed" - }, - { - "value": "floorPlan.proposed", - "description": "Floor plan - proposed" - } + "roofPlan.existing", + "sitePlan.existing", + "roofPlan.proposed", + "sitePlan.proposed", + "elevations.existing", + "floorPlan.existing", + "elevations.proposed", + "floorPlan.proposed" ], "recommended": [], "optional": [] diff --git a/examples/prototypeApplication/listedBuildingConsent.json b/examples/prototypeApplication/listedBuildingConsent.json index 8d4a4920..b8d348d6 100644 --- a/examples/prototypeApplication/listedBuildingConsent.json +++ b/examples/prototypeApplication/listedBuildingConsent.json @@ -1060,61 +1060,26 @@ "source": "PlanX", "service": { "flowId": "2677568c-00d2-4391-98ea-f34a4e743437", - "url": "https://www.editor.planx.uk/camden/apply-for-listed-building-consent/published", + "url": "https://www.editor.planx.dev/camden/apply-for-listed-building-consent/published", "files": { "required": [ - { - "value": "sitePlan.existing", - "description": "Site plan - existing" - }, - { - "value": "sitePlan.proposed", - "description": "Site plan - proposed" - }, - { - "value": "elevations.existing", - "description": "Elevations - existing" - }, - { - "value": "elevations.proposed", - "description": "Elevations - proposed" - }, - { - "value": "floorPlan.existing", - "description": "Floor plan - existing" - }, - { - "value": "floorPlan.proposed", - "description": "Floor plan - proposed" - }, - { - "value": "joinerySections", - "description": "Joinery section report" - } + "sitePlan.existing", + "sitePlan.proposed", + "elevations.existing", + "elevations.proposed", + "floorPlan.existing", + "floorPlan.proposed", + "joinerySections" ], "recommended": [ - { - "value": "heritageStatement", - "description": "Heritage Statement" - } + "heritageStatement" ], "optional": [ - { - "value": "photographs.existing", - "description": "Photographs - existing" - }, - { - "value": "otherDrawing", - "description": "Other - drawing" - }, - { - "value": "otherDocument", - "description": "Other - document" - }, - { - "value": "visualisations", - "description": "Visualisations" - } + "photographs.existing", + "photographs.proposed", + "otherDrawing", + "otherDocument", + "visualisations" ] }, "fee": { diff --git a/examples/prototypeApplication/planningPermission/fullHouseholder.json b/examples/prototypeApplication/planningPermission/fullHouseholder.json index 86b7c832..43986742 100644 --- a/examples/prototypeApplication/planningPermission/fullHouseholder.json +++ b/examples/prototypeApplication/planningPermission/fullHouseholder.json @@ -1595,40 +1595,16 @@ "url": "https://www.editor.planx.dev/lambeth/apply-for-planning-permission/preview", "files": { "required": [ - { - "value": "roofPlan.existing", - "description": "Roof plan - existing" - }, - { - "value": "roofPlan.proposed", - "description": "Roof plan - proposed" - }, - { - "value": "sitePlan.existing", - "description": "Site plan - existing" - }, - { - "value": "sitePlan.proposed", - "description": "Site plan - proposed" - }, - { - "value": "elevations.existing", - "description": "Elevations - existing" - }, - { - "value": "elevations.proposed", - "description": "Elevations - proposed" - } + "roofPlan.existing", + "roofPlan.proposed", + "sitePlan.existing", + "sitePlan.proposed", + "elevations.existing", + "elevations.proposed" ], "recommended": [ - { - "value": "floorPlan.existing", - "description": "Floor plan - existing" - }, - { - "value": "floorPlan.proposed", - "description": "Floor plan - proposed" - } + "floorPlan.existing", + "floorPlan.proposed" ], "optional": [] }, diff --git a/examples/prototypeApplication/planningPermission/fullHouseholderInConservationArea.json b/examples/prototypeApplication/planningPermission/fullHouseholderInConservationArea.json index be6d9eb2..23aa16ee 100644 --- a/examples/prototypeApplication/planningPermission/fullHouseholderInConservationArea.json +++ b/examples/prototypeApplication/planningPermission/fullHouseholderInConservationArea.json @@ -1716,56 +1716,23 @@ "source": "PlanX", "service": { "flowId": "bba306e7-15c8-438f-a71e-a1e5d3a99caf", - "url": "https://editor.planx.uk/southwark/apply-for-planning-permission/published", + "url": "https://editor.planx.dev/southwark/apply-for-planning-permission/published", "files": { "required": [ - { - "value": "sitePlan.existing", - "description": "Site plan - existing" - }, - { - "value": "sitePlan.proposed", - "description": "Site plan - proposed" - }, - { - "value": "elevations.existing", - "description": "Elevations - existing" - }, - { - "value": "elevations.proposed", - "description": "Elevations - proposed" - }, - { - "value": "floorPlan.existing", - "description": "Floor plan - existing" - }, - { - "value": "floorPlan.proposed", - "description": "Floor plan - proposed" - }, - { - "value": "heritageStatement", - "description": "Heritage Statement" - } + "sitePlan.existing", + "sitePlan.proposed", + "elevations.existing", + "elevations.proposed", + "floorPlan.existing", + "floorPlan.proposed", + "heritageStatement" ], "recommended": [], "optional": [ - { - "value": "photographs.existing", - "description": "Photographs - existing" - }, - { - "value": "otherDrawing", - "description": "Other - drawing" - }, - { - "value": "otherDocument", - "description": "Other - document" - }, - { - "value": "visualisations", - "description": "Visualisations" - } + "photographs.existing", + "otherDocument", + "otherDrawing", + "visualisations" ] }, "fee": { diff --git a/examples/prototypeApplication/planningPermission/major.json b/examples/prototypeApplication/planningPermission/major.json index dca1d668..e9209002 100644 --- a/examples/prototypeApplication/planningPermission/major.json +++ b/examples/prototypeApplication/planningPermission/major.json @@ -2312,16 +2312,10 @@ "url": "https://editor.planx.dev/buckinghamshire/apply-for-planning-permission/published", "files": { "required": [ - { - "value": "necessaryInformation", - "description": "Information the authority considers necessary for the application" - } + "necessaryInformation" ], "recommended": [ - { - "value": "relevantInformation", - "description": "Information the applicant considers relevant to the application" - } + "relevantInformation" ], "optional": [] }, diff --git a/examples/prototypeApplication/planningPermission/minor.json b/examples/prototypeApplication/planningPermission/minor.json index be2480f5..8b6f92e5 100644 --- a/examples/prototypeApplication/planningPermission/minor.json +++ b/examples/prototypeApplication/planningPermission/minor.json @@ -1585,16 +1585,10 @@ "url": "https://editor.planx.dev/buckinghamshire/apply-for-planning-permission/published", "files": { "required": [ - { - "value": "necessaryInformation", - "description": "Information the authority considers necessary for the application" - } + "necessaryInformation" ], "recommended": [ - { - "value": "relevantInformation", - "description": "Information the applicant considers relevant to the application" - } + "relevantInformation" ], "optional": [] }, diff --git a/examples/prototypeApplication/priorApproval/buildHomes.json b/examples/prototypeApplication/priorApproval/buildHomes.json index 440d180d..e71e4442 100644 --- a/examples/prototypeApplication/priorApproval/buildHomes.json +++ b/examples/prototypeApplication/priorApproval/buildHomes.json @@ -1742,64 +1742,25 @@ "source": "PlanX", "service": { "flowId": "6f76e837-7a42-40f3-80e9-a9482dce5982", - "url": "https://editor.planx.uk/buckinghamshire/apply-for-prior-approval/published", + "url": "https://editor.planx.dev/buckinghamshire/apply-for-prior-approval/published", "files": { "required": [ - { - "value": "sitePlan.proposed", - "description": "Site plan - proposed" - }, - { - "value": "elevations.existing", - "description": "Elevations - existing" - }, - { - "value": "elevations.proposed", - "description": "Elevations - proposed" - }, - { - "value": "floorPlan.existing", - "description": "Floor plan - existing" - }, - { - "value": "floorPlan.proposed", - "description": "Floor plan - proposed" - }, - { - "value": "roofPlan.proposed", - "description": "Roof plan - proposed" - }, - { - "value": "sections.existing", - "description": "Sections - existing" - }, - { - "value": "sections.proposed", - "description": "Sections - proposed" - }, - { - "value": "noiseAssessment", - "description": "Noise assessment" - } + "sitePlan.proposed", + "elevations.existing", + "elevations.proposed", + "floorPlan.existing", + "floorPlan.proposed", + "roofPlan.proposed", + "sections.existing", + "sections.proposed", + "noiseAssessment" ], "recommended": [], "optional": [ - { - "value": "photographs.existing", - "description": "Photographs - existing" - }, - { - "value": "otherDrawing", - "description": "Other - drawing" - }, - { - "value": "otherDocument", - "description": "Other - document" - }, - { - "value": "visualisations", - "description": "Visualisations" - } + "photographs.existing", + "otherDrawing", + "otherDocument", + "visualisations" ] }, "fee": { diff --git a/examples/prototypeApplication/priorApproval/convertCommercialToHome.json b/examples/prototypeApplication/priorApproval/convertCommercialToHome.json index c7157d82..52e8408e 100644 --- a/examples/prototypeApplication/priorApproval/convertCommercialToHome.json +++ b/examples/prototypeApplication/priorApproval/convertCommercialToHome.json @@ -1529,46 +1529,19 @@ "url": "https://editor.planx.dev/lambeth/apply-for-prior-approval/published", "files": { "required": [ - { - "value": "sitePlan.proposed", - "description": "Site plan - proposed" - }, - { - "value": "usePlan.proposed", - "description": "Use plan - proposed" - }, - { - "value": "noiseAssessment", - "description": "Noise assessment" - }, - { - "value": "sunlightAndDaylightReport", - "description": "Sunlight and daylight report" - } + "sitePlan.proposed", + "usePlan.proposed", + "noiseAssessment", + "sunlightAndDaylightReport" ], "recommended": [ - { - "value": "sitePlan.existing", - "description": "Site plan - existing" - } + "sitePlan.existing" ], "optional": [ - { - "value": "photographs.existing", - "description": "Photographs - existing" - }, - { - "value": "otherDrawing", - "description": "Other - drawing" - }, - { - "value": "otherDocument", - "description": "Other - document" - }, - { - "value": "visualisations", - "description": "Visualisations" - } + "photographs.existing", + "otherDrawing", + "otherDocument", + "visualisations" ] }, "fee": { diff --git a/examples/prototypeApplication/priorApproval/extendUniversity.json b/examples/prototypeApplication/priorApproval/extendUniversity.json index ff29152d..42cc0e65 100644 --- a/examples/prototypeApplication/priorApproval/extendUniversity.json +++ b/examples/prototypeApplication/priorApproval/extendUniversity.json @@ -1701,37 +1701,16 @@ "url": "https://editor.planx.dev/camden/apply-for-prior-approval/published", "files": { "required": [ - { - "value": "sitePlan.proposed", - "description": "Site plan - proposed" - }, - { - "value": "elevations.existing", - "description": "Elevations - existing" - }, - { - "value": "elevations.proposed", - "description": "Elevations - proposed" - } + "sitePlan.proposed", + "elevations.existing", + "elevations.proposed" ], "recommended": [], "optional": [ - { - "value": "photographs.existing", - "description": "Photographs - existing" - }, - { - "value": "otherDrawing", - "description": "Other - drawing" - }, - { - "value": "otherDocument", - "description": "Other - document" - }, - { - "value": "visualisations", - "description": "Visualisations" - } + "photographs.existing", + "otherDrawing", + "otherDocument", + "visualisations" ] }, "fee": { diff --git a/examples/prototypeApplication/priorApproval/largerExtension.json b/examples/prototypeApplication/priorApproval/largerExtension.json index 80de0e26..3cc953d4 100644 --- a/examples/prototypeApplication/priorApproval/largerExtension.json +++ b/examples/prototypeApplication/priorApproval/largerExtension.json @@ -1464,41 +1464,20 @@ "source": "PlanX", "service": { "flowId": "c6628103-c648-4663-81e1-bfa0a1a18340", - "url": "https://editor.planx.uk/southwark/apply-for-prior-approval/published", + "url": "https://editor.planx.dev/southwark/apply-for-prior-approval/published", "files": { "required": [ - { - "value": "sitePlan.proposed", - "description": "Site plan - proposed" - } + "sitePlan.proposed" ], "recommended": [ - { - "value": "elevations.existing", - "description": "Elevations - existing" - }, - { - "value": "elevations.proposed", - "description": "Elevations - proposed" - } + "elevations.existing", + "elevations.proposed" ], "optional": [ - { - "value": "photographs.existing", - "description": "Photographs - existing" - }, - { - "value": "otherDrawing", - "description": "Other - drawing" - }, - { - "value": "otherDocument", - "description": "Other - document" - }, - { - "value": "visualisations", - "description": "Visualisations" - } + "photographs.existing", + "otherDrawing", + "otherDocument", + "visualisations" ] }, "fee": { diff --git a/examples/prototypeApplication/priorApproval/solarPanels.json b/examples/prototypeApplication/priorApproval/solarPanels.json index 54e68fae..db1c3bef 100644 --- a/examples/prototypeApplication/priorApproval/solarPanels.json +++ b/examples/prototypeApplication/priorApproval/solarPanels.json @@ -1437,36 +1437,18 @@ "source": "PlanX", "service": { "flowId": "c6628103-c648-4663-81e1-bfa0a1a18340", - "url": "https://editor.planx.uk/southwark/apply-for-prior-approval/published", + "url": "https://editor.planx.dev/southwark/apply-for-prior-approval/published", "files": { "required": [ - { - "value": "sitePlan.proposed", - "description": "Site plan - proposed" - }, - { - "value": "sections.proposed", - "description": "Sections - proposed" - } + "sitePlan.proposed", + "sections.proposed" ], "recommended": [], "optional": [ - { - "value": "photographs.existing", - "description": "Photographs - existing" - }, - { - "value": "otherDrawing", - "description": "Other - drawing" - }, - { - "value": "otherDocument", - "description": "Other - document" - }, - { - "value": "visualisations", - "description": "Visualisations" - } + "photographs.existing", + "otherDrawing", + "otherDocument", + "visualisations" ] }, "fee": { diff --git a/schemas/prototypeApplication.json b/schemas/prototypeApplication.json index c7531bd2..7d962eec 100644 --- a/schemas/prototypeApplication.json +++ b/schemas/prototypeApplication.json @@ -160,40 +160,6 @@ ], "type": "object" }, - "AnyProviderMetadata": { - "$id": "#AnyProviderMetadata", - "additionalProperties": false, - "description": "Base metadata associated with applications submitted via any provider", - "properties": { - "id": { - "$ref": "#/definitions/UUID", - "description": "Unique identifier for this application" - }, - "organisation": { - "description": "The reference code for the organisation responsible for processing this planning application, sourced from planning.data.gov.uk/dataset/local-authority", - "maxLength": 4, - "type": "string" - }, - "schema": { - "$ref": "#/definitions/URL" - }, - "source": { - "const": "Any", - "type": "string" - }, - "submittedAt": { - "$ref": "#/definitions/DateTime" - } - }, - "required": [ - "id", - "organisation", - "schema", - "source", - "submittedAt" - ], - "type": "object" - }, "ApplicantAddress": { "anyOf": [ { @@ -1071,1872 +1037,66 @@ }, "type": "object" }, - "two": { - "items": { - "$ref": "#/definitions/CalculateMetadata" - }, - "type": "array" - } - }, - "type": "object" - }, - "payable": { - "items": { - "$ref": "#/definitions/CalculateMetadata" - }, - "type": "array" - } - }, - "required": [ - "calculated", - "payable" - ], - "type": "object" - }, - "FeeExplanationNotApplicable": { - "$id": "#FeeExplanationNotApplicable", - "additionalProperties": false, - "description": "An indicator that an application fee does not apply to this application type or journey, therefore there is not an explanation of how it was calculated", - "properties": { - "notApplicable": { - "const": true, - "type": "boolean" - } - }, - "required": [ - "notApplicable" - ], - "type": "object" - }, - "File": { - "$id": "#File", - "additionalProperties": false, - "description": "File uploaded and labeled by the user to support the application", - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "type": { - "items": { - "$ref": "#/definitions/PrototypeFileType" - }, - "type": "array" - } - }, - "required": [ - "name", - "type" - ], - "type": "object" - }, - "FileType": { - "$id": "#FileType", - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Details of impact on access, roads, and rights of way", - "type": "string" - }, - "value": { - "const": "accessRoadsRightsOfWayDetails", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Affordable housing statement", - "type": "string" - }, - "value": { - "const": "affordableHousingStatement", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Arboriculturist report", - "type": "string" - }, - "value": { - "const": "arboriculturistReport", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Bank statement", - "type": "string" - }, - "value": { - "const": "bankStatement", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Basement impact statement", - "type": "string" - }, - "value": { - "const": "basementImpactStatement", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Bio-aerosol assessment", - "type": "string" - }, - "value": { - "const": "bioaerosolAssessment", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Birdstrike risk management plan", - "type": "string" - }, - "value": { - "const": "birdstrikeRiskManagementPlan", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Borehole or trial pit analysis", - "type": "string" - }, - "value": { - "const": "boreholeOrTrialPitAnalysis", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Building control certificate", - "type": "string" - }, - "value": { - "const": "buildingControlCertificate", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Structural or building condition survey", - "type": "string" - }, - "value": { - "const": "conditionSurvey", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Construction invoice", - "type": "string" - }, - "value": { - "const": "constructionInvoice", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Contamination report", - "type": "string" - }, - "value": { - "const": "contaminationReport", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Council tax bill", - "type": "string" - }, - "value": { - "const": "councilTaxBill", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Crime prevention strategy", - "type": "string" - }, - "value": { - "const": "crimePreventionStrategy", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Design and Access Statement", - "type": "string" - }, - "value": { - "const": "designAndAccessStatement", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Evidence for application fee exemption - disability", - "type": "string" - }, - "value": { - "const": "disabilityExemptionEvidence", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Ecology report", - "type": "string" - }, - "value": { - "const": "ecologyReport", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Elevations - existing", - "type": "string" - }, - "value": { - "const": "elevations.existing", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Elevations - proposed", - "type": "string" - }, - "value": { - "const": "elevations.proposed", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Scheme for mitigation and monitoring of emissions (dust, odour and vibrations)", - "type": "string" - }, - "value": { - "const": "emissionsMitigationAndMonitoringScheme", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Energy statement", - "type": "string" - }, - "value": { - "const": "energyStatement", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Environmental Impact Assessment (EIA)", - "type": "string" - }, - "value": { - "const": "environmentalImpactAssessment", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "External materials details", - "type": "string" - }, - "value": { - "const": "externalMaterialsDetails", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Fire safety report", - "type": "string" - }, - "value": { - "const": "fireSafetyReport", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Flood risk assessment (FRA)", - "type": "string" - }, - "value": { - "const": "floodRiskAssessment", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Floor plan - existing", - "type": "string" - }, - "value": { - "const": "floorPlan.existing", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Floor plan - proposed", - "type": "string" - }, - "value": { - "const": "floorPlan.proposed", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Foul drainage assessment", - "type": "string" - }, - "value": { - "const": "foulDrainageAssessment", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Geodiversity assessment", - "type": "string" - }, - "value": { - "const": "geodiversityAssessment", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Plans showing the stretches of hedgerows to be removed", - "type": "string" - }, - "value": { - "const": "hedgerowsInformation", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Evidence of the date of planting of the removed hedgerows", - "type": "string" - }, - "value": { - "const": "hedgerowsInformation.plantingDate", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Heritage Statement", - "type": "string" - }, - "value": { - "const": "heritageStatement", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Hydrological and hydrogeological assessment", - "type": "string" - }, - "value": { - "const": "hydrologicalAssessment", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Hydrology report", - "type": "string" - }, - "value": { - "const": "hydrologyReport", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Internal elevations", - "type": "string" - }, - "value": { - "const": "internalElevations", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Internal sections", - "type": "string" - }, - "value": { - "const": "internalSections", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Joiner's report", - "type": "string" - }, - "value": { - "const": "joinersReport", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Joinery section report", - "type": "string" - }, - "value": { - "const": "joinerySections", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Land contamination assessment", - "type": "string" - }, - "value": { - "const": "landContaminationAssessment", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Landscape and visual impact assessment (LVIA)", - "type": "string" - }, - "value": { - "const": "landscapeAndVisualImpactAssessment", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Landscape strategy or landscape plan", - "type": "string" - }, - "value": { - "const": "landscapeStrategy", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Lighting assessment", - "type": "string" - }, - "value": { - "const": "lightingAssessment", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Details of litter, vermin and bird control", - "type": "string" - }, - "value": { - "const": "litterVerminAndBirdControlDetails", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Location plan", - "type": "string" - }, - "value": { - "const": "locationPlan", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Method statement", - "type": "string" - }, - "value": { - "const": "methodStatement", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Minerals and waste assessment", - "type": "string" - }, - "value": { - "const": "mineralsAndWasteAssessment", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Information the authority considers necessary for the application", - "type": "string" - }, - "value": { - "const": "necessaryInformation", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "New dwellings schedule", - "type": "string" - }, - "value": { - "const": "newDwellingsSchedule", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Noise assessment", - "type": "string" - }, - "value": { - "const": "noiseAssessment", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Open space assessment", - "type": "string" - }, - "value": { - "const": "openSpaceAssessment", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Other - document", - "type": "string" - }, - "value": { - "const": "otherDocument", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Other - drawing", - "type": "string" - }, - "value": { - "const": "otherDrawing", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Other - evidence or correspondence", - "type": "string" - }, - "value": { - "const": "otherEvidence", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Parking plan", - "type": "string" - }, - "value": { - "const": "parkingPlan", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Photographs - existing", - "type": "string" - }, - "value": { - "const": "photographs.existing", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Photographs - proposed", - "type": "string" - }, - "value": { - "const": "photographs.proposed", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Planning statement", - "type": "string" - }, - "value": { - "const": "planningStatement", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Recyclable waste storage details", - "type": "string" - }, - "value": { - "const": "recycleWasteStorageDetails", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Information the applicant considers relevant to the application", - "type": "string" - }, - "value": { - "const": "relevantInformation", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Residential units details", - "type": "string" - }, - "value": { - "const": "residentialUnitsDetails", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Roof plan - existing", - "type": "string" - }, - "value": { - "const": "roofPlan.existing", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Roof plan - proposed", - "type": "string" - }, - "value": { - "const": "roofPlan.proposed", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Sections - existing", - "type": "string" - }, - "value": { - "const": "sections.existing", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Sections - proposed", - "type": "string" - }, - "value": { - "const": "sections.proposed", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Site plan - existing", - "type": "string" - }, - "value": { - "const": "sitePlan.existing", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Site plan - proposed", - "type": "string" - }, - "value": { - "const": "sitePlan.proposed", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Sketch plan", - "type": "string" - }, - "value": { - "const": "sketchPlan", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Statement of community involvement", - "type": "string" - }, - "value": { - "const": "statementOfCommunityInvolvement", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Statutory declaration", - "type": "string" - }, - "value": { - "const": "statutoryDeclaration", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Details of storage treatment or disposal of waste", - "type": "string" - }, - "value": { - "const": "storageTreatmentAndWasteDisposalDetails", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Street scene drawing", - "type": "string" - }, - "value": { - "const": "streetScene", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Subsidence report", - "type": "string" - }, - "value": { - "const": "subsidenceReport", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Sunlight and daylight report", - "type": "string" - }, - "value": { - "const": "sunlightAndDaylightReport", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Sustainability statement", - "type": "string" - }, - "value": { - "const": "sustainabilityStatement", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Technical evidence", - "type": "string" - }, - "value": { - "const": "technicalEvidence", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Technical specification", - "type": "string" - }, - "value": { - "const": "technicalSpecification", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Tenancy agreement", - "type": "string" - }, - "value": { - "const": "tenancyAgreement", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Tenancy invoice", - "type": "string" - }, - "value": { - "const": "tenancyInvoice", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Town centre uses - Impact assessment", - "type": "string" - }, - "value": { - "const": "townCentreImpactAssessment", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Town centre uses - Sequential assessment", - "type": "string" - }, - "value": { - "const": "townCentreSequentialAssessment", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Transport assessment", - "type": "string" - }, - "value": { - "const": "transportAssessment", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Travel plan", - "type": "string" - }, - "value": { - "const": "travelPlan", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Location of trees and hedges", - "type": "string" - }, - "value": { - "const": "treeAndHedgeLocation", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Removed or pruned trees and hedges", - "type": "string" - }, - "value": { - "const": "treeAndHedgeRemovedOrPruned", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Tree canopy calculator", - "type": "string" - }, - "value": { - "const": "treeCanopyCalculator", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Tree condition report", - "type": "string" - }, - "value": { - "const": "treeConditionReport", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Tree plan", - "type": "string" - }, - "value": { - "const": "treePlan", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Trees report", - "type": "string" - }, - "value": { - "const": "treesReport", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Unit plan - existing", - "type": "string" - }, - "value": { - "const": "unitPlan.existing", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Unit plan - proposed", - "type": "string" - }, - "value": { - "const": "unitPlan.proposed", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Use plan - existing", - "type": "string" - }, - "value": { - "const": "usePlan.existing", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Use plan - proposed", - "type": "string" - }, - "value": { - "const": "usePlan.proposed", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Utility bill", - "type": "string" - }, - "value": { - "const": "utilityBill", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Utilities statement", - "type": "string" - }, - "value": { - "const": "utilitiesStatement", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Ventilation or extraction statement", - "type": "string" - }, - "value": { - "const": "ventilationStatement", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Viability Appraisal", - "type": "string" - }, - "value": { - "const": "viabilityAppraisal", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Visualisations", - "type": "string" - }, - "value": { - "const": "visualisations", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Waste and recycling strategy", - "type": "string" - }, - "value": { - "const": "wasteAndRecyclingStrategy", - "type": "string" - } - }, - "required": [ - "value", - "description" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Waste storage details", - "type": "string" - }, - "value": { - "const": "wasteStorageDetails", - "type": "string" + "two": { + "items": { + "$ref": "#/definitions/CalculateMetadata" + }, + "type": "array" } }, - "required": [ - "value", - "description" - ], "type": "object" }, - { - "additionalProperties": false, - "properties": { - "description": { - "const": "Water environment assessment", - "type": "string" - }, - "value": { - "const": "waterEnvironmentAssessment", - "type": "string" - } + "payable": { + "items": { + "$ref": "#/definitions/CalculateMetadata" }, - "required": [ - "value", - "description" - ], - "type": "object" + "type": "array" } + }, + "required": [ + "calculated", + "payable" ], - "description": "Types of planning documents and drawings" + "type": "object" + }, + "FeeExplanationNotApplicable": { + "$id": "#FeeExplanationNotApplicable", + "additionalProperties": false, + "description": "An indicator that an application fee does not apply to this application type or journey, therefore there is not an explanation of how it was calculated", + "properties": { + "notApplicable": { + "const": true, + "type": "boolean" + } + }, + "required": [ + "notApplicable" + ], + "type": "object" + }, + "File": { + "$id": "#File", + "additionalProperties": false, + "description": "File uploaded and labeled by the user to support the application", + "properties": { + "description": { + "type": "string" + }, + "name": { + "type": "string" + }, + "type": { + "items": { + "$ref": "#/definitions/PrototypeFileType" + }, + "type": "array" + } + }, + "required": [ + "name", + "type" + ], + "type": "object" }, "GLAHousingProvider": { "$id": "#GLAHousingProvider", @@ -3269,7 +1429,7 @@ "type": "array" }, "metadata": { - "$ref": "#/definitions/Metadata" + "$ref": "#/definitions/PrototypePlanXMetadata" }, "preAssessment": { "$ref": "#/definitions/PreAssessment" @@ -3670,7 +1830,7 @@ "type": "array" }, "metadata": { - "$ref": "#/definitions/Metadata" + "$ref": "#/definitions/PrototypePlanXMetadata" }, "preAssessment": { "$ref": "#/definitions/PreAssessment" @@ -3793,7 +1953,7 @@ "type": "array" }, "metadata": { - "$ref": "#/definitions/Metadata" + "$ref": "#/definitions/PrototypePlanXMetadata" }, "preAssessment": { "$ref": "#/definitions/PreAssessment" @@ -5224,18 +3384,6 @@ }, "type": "object" }, - "Metadata": { - "$id": "#DigitalPlanningMetadata", - "anyOf": [ - { - "$ref": "#/definitions/AnyProviderMetadata" - }, - { - "$ref": "#/definitions/PlanXMetadata" - } - ], - "description": "Details of the digital planning service which sent this application" - }, "MultiLineString": { "additionalProperties": false, "description": "MultiLineString geometry object. https://tools.ietf.org/html/rfc7946#section-3.1.5", @@ -5740,7 +3888,7 @@ "type": "array" }, "metadata": { - "$ref": "#/definitions/Metadata" + "$ref": "#/definitions/PrototypePlanXMetadata" }, "preAssessment": { "$ref": "#/definitions/PreAssessment" @@ -6013,7 +4161,7 @@ "type": "array" }, "metadata": { - "$ref": "#/definitions/Metadata" + "$ref": "#/definitions/PrototypePlanXMetadata" }, "preAssessment": { "$ref": "#/definitions/PreAssessment" @@ -6659,72 +4807,6 @@ } ] }, - "PlanXMetadata": { - "$id": "#PlanXMetadata", - "additionalProperties": false, - "description": "Additional metadata associated with applications submitted via PlanX", - "properties": { - "id": { - "$ref": "#/definitions/UUID", - "description": "Unique identifier for this application" - }, - "organisation": { - "description": "The reference code for the organisation responsible for processing this planning application, sourced from planning.data.gov.uk/dataset/local-authority", - "maxLength": 4, - "type": "string" - }, - "schema": { - "$ref": "#/definitions/URL" - }, - "service": { - "additionalProperties": false, - "properties": { - "fee": { - "anyOf": [ - { - "$ref": "#/definitions/FeeExplanation" - }, - { - "$ref": "#/definitions/FeeExplanationNotApplicable" - } - ] - }, - "files": { - "$ref": "#/definitions/RequestedFiles" - }, - "flowId": { - "$ref": "#/definitions/UUID" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "flowId", - "url", - "files", - "fee" - ], - "type": "object" - }, - "source": { - "const": "PlanX", - "type": "string" - }, - "submittedAt": { - "$ref": "#/definitions/DateTime" - } - }, - "required": [ - "id", - "organisation", - "schema", - "service", - "source", - "submittedAt" - ], - "type": "object" - }, "PlanningApplication": { "additionalProperties": false, "description": "Details of the planning application linked to this application, if applicable", @@ -11666,6 +9748,100 @@ ], "description": "Types of planning documents and drawings" }, + "PrototypePlanXMetadata": { + "additionalProperties": false, + "properties": { + "id": { + "$ref": "#/definitions/UUID", + "description": "Unique identifier for this application" + }, + "organisation": { + "description": "The reference code for the organisation responsible for processing this planning application, sourced from planning.data.gov.uk/dataset/local-authority", + "maxLength": 4, + "type": "string" + }, + "schema": { + "$ref": "#/definitions/URL" + }, + "service": { + "additionalProperties": false, + "properties": { + "fee": { + "anyOf": [ + { + "$ref": "#/definitions/FeeExplanation" + }, + { + "$ref": "#/definitions/FeeExplanationNotApplicable" + } + ] + }, + "files": { + "$ref": "#/definitions/PrototypeRequestedFiles" + }, + "flowId": { + "$ref": "#/definitions/UUID" + }, + "url": { + "$ref": "#/definitions/URL" + } + }, + "required": [ + "flowId", + "url", + "files", + "fee" + ], + "type": "object" + }, + "source": { + "const": "PlanX", + "type": "string" + }, + "submittedAt": { + "$ref": "#/definitions/DateTime" + } + }, + "required": [ + "id", + "organisation", + "schema", + "service", + "source", + "submittedAt" + ], + "type": "object" + }, + "PrototypeRequestedFiles": { + "additionalProperties": false, + "description": "File types requested by this service. Schema[\"files\"] will be a subset of this list based on the user's journey through the service", + "properties": { + "optional": { + "items": { + "$ref": "#/definitions/PrototypeFileType" + }, + "type": "array" + }, + "recommended": { + "items": { + "$ref": "#/definitions/PrototypeFileType" + }, + "type": "array" + }, + "required": { + "items": { + "$ref": "#/definitions/PrototypeFileType" + }, + "type": "array" + } + }, + "required": [ + "required", + "recommended", + "optional" + ], + "type": "object" + }, "QuestionAndResponses": { "additionalProperties": false, "properties": { @@ -11725,37 +9901,6 @@ }, "type": "object" }, - "RequestedFiles": { - "$id": "#RequestedFiles", - "additionalProperties": false, - "description": "File types requested by this service. Schema[\"files\"] will be a subset of this list based on the user's journey through the service", - "properties": { - "optional": { - "items": { - "$ref": "#/definitions/FileType" - }, - "type": "array" - }, - "recommended": { - "items": { - "$ref": "#/definitions/FileType" - }, - "type": "array" - }, - "required": { - "items": { - "$ref": "#/definitions/FileType" - }, - "type": "array" - } - }, - "required": [ - "required", - "recommended", - "optional" - ], - "type": "object" - }, "ResidentialUnits": { "additionalProperties": false, "properties": { diff --git a/types/schemas/prototypeApplication/index.ts b/types/schemas/prototypeApplication/index.ts index 1df334fd..76b2b011 100644 --- a/types/schemas/prototypeApplication/index.ts +++ b/types/schemas/prototypeApplication/index.ts @@ -1,5 +1,12 @@ -import {Metadata} from '../../shared/Metadata'; +import { + BaseMetadata, + FeeExplanation, + FeeExplanationNotApplicable, + Metadata, + PlanXMetadata, +} from '../../shared/Metadata'; import {Responses} from '../../shared/Responses'; +import {UUID, URL} from '../../shared/utils'; import {Applicant} from './data/Applicant'; import {ApplicationData} from './data/ApplicationData'; import {PropertyBase} from './data/Property'; @@ -14,9 +21,29 @@ import { PPApplicationType, PrimaryApplicationType, } from './enums/ApplicationType'; +import {PrototypeFileType} from './enums/FileType'; import {File} from './File'; import {PreAssessment} from './PreAssessment'; +/** + * @description File types requested by this service. Schema["files"] will be a subset of this list based on the user's journey through the service + */ +export interface PrototypeRequestedFiles { + required: PrototypeFileType[]; + recommended: PrototypeFileType[]; + optional: PrototypeFileType[]; +} + +export interface PrototypePlanXMetadata extends BaseMetadata { + source: 'PlanX'; + service: { + flowId: UUID; + url: URL; + files: PrototypeRequestedFiles; + fee: FeeExplanation | FeeExplanationNotApplicable; + }; +} + /** * @internal * The generic base type for all applications @@ -38,7 +65,7 @@ interface ApplicationSpecification< preAssessment?: PreAssessment; responses: Responses; files: File[]; - metadata: Metadata; + metadata: PrototypePlanXMetadata; } export type LDC = ApplicationSpecification<'ldc', LDCApplicationType>; From c766ace9c05951069dad8861e0c85dc0f645534c Mon Sep 17 00:00:00 2001 From: Jessica McInchak Date: Wed, 18 Sep 2024 13:20:42 +0200 Subject: [PATCH 10/13] correct schema URLs for all examples --- examples/application/data/landDrainageConsent.ts | 2 +- .../application/data/lawfulDevelopmentCertificate/existing.ts | 2 +- .../application/data/lawfulDevelopmentCertificate/proposed.ts | 2 +- examples/application/data/listedBuildingConsent.ts | 2 +- examples/application/data/planningPermission/fullHouseholder.ts | 2 +- .../planningPermission/fullHouseholderInConservationArea.ts | 2 +- examples/application/data/planningPermission/major.ts | 2 +- examples/application/data/planningPermission/minor.ts | 2 +- examples/application/data/priorApproval/buildHomes.ts | 2 +- .../application/data/priorApproval/convertCommercialToHome.ts | 2 +- examples/application/data/priorApproval/extendUniversity.ts | 2 +- examples/application/data/priorApproval/largerExtension.ts | 2 +- examples/application/data/priorApproval/solarPanels.ts | 2 +- examples/application/landDrainageConsent.json | 2 +- examples/application/lawfulDevelopmentCertificate/existing.json | 2 +- examples/application/lawfulDevelopmentCertificate/proposed.json | 2 +- examples/application/listedBuildingConsent.json | 2 +- examples/application/planningPermission/fullHouseholder.json | 2 +- .../planningPermission/fullHouseholderInConservationArea.json | 2 +- examples/application/planningPermission/major.json | 2 +- examples/application/planningPermission/minor.json | 2 +- examples/application/priorApproval/buildHomes.json | 2 +- examples/application/priorApproval/convertCommercialToHome.json | 2 +- examples/application/priorApproval/extendUniversity.json | 2 +- examples/application/priorApproval/largerExtension.json | 2 +- examples/application/priorApproval/solarPanels.json | 2 +- examples/prototypeApplication/data/landDrainageConsent.ts | 2 +- .../data/lawfulDevelopmentCertificate/existing.ts | 2 +- .../data/lawfulDevelopmentCertificate/proposed.ts | 2 +- examples/prototypeApplication/data/listedBuildingConsent.ts | 2 +- .../data/planningPermission/fullHouseholder.ts | 2 +- .../planningPermission/fullHouseholderInConservationArea.ts | 2 +- examples/prototypeApplication/data/planningPermission/major.ts | 2 +- examples/prototypeApplication/data/planningPermission/minor.ts | 2 +- examples/prototypeApplication/data/priorApproval/buildHomes.ts | 2 +- .../data/priorApproval/convertCommercialToHome.ts | 2 +- .../prototypeApplication/data/priorApproval/extendUniversity.ts | 2 +- .../prototypeApplication/data/priorApproval/largerExtension.ts | 2 +- examples/prototypeApplication/data/priorApproval/solarPanels.ts | 2 +- examples/prototypeApplication/landDrainageConsent.json | 2 +- .../lawfulDevelopmentCertificate/existing.json | 2 +- .../lawfulDevelopmentCertificate/proposed.json | 2 +- examples/prototypeApplication/listedBuildingConsent.json | 2 +- .../planningPermission/fullHouseholder.json | 2 +- .../planningPermission/fullHouseholderInConservationArea.json | 2 +- examples/prototypeApplication/planningPermission/major.json | 2 +- examples/prototypeApplication/planningPermission/minor.json | 2 +- examples/prototypeApplication/priorApproval/buildHomes.json | 2 +- .../priorApproval/convertCommercialToHome.json | 2 +- .../prototypeApplication/priorApproval/extendUniversity.json | 2 +- .../prototypeApplication/priorApproval/largerExtension.json | 2 +- examples/prototypeApplication/priorApproval/solarPanels.json | 2 +- 52 files changed, 52 insertions(+), 52 deletions(-) diff --git a/examples/application/data/landDrainageConsent.ts b/examples/application/data/landDrainageConsent.ts index f6970f4c..3c235bee 100644 --- a/examples/application/data/landDrainageConsent.ts +++ b/examples/application/data/landDrainageConsent.ts @@ -712,6 +712,6 @@ export const landDrainageConsent: Application = { payable: [], }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/application.json`, }, }; diff --git a/examples/application/data/lawfulDevelopmentCertificate/existing.ts b/examples/application/data/lawfulDevelopmentCertificate/existing.ts index d2329a65..628c9bd3 100644 --- a/examples/application/data/lawfulDevelopmentCertificate/existing.ts +++ b/examples/application/data/lawfulDevelopmentCertificate/existing.ts @@ -1306,6 +1306,6 @@ export const lawfulDevelopmentCertificateExisting: Application = { }, }, submittedAt: '2023-10-02t00:00:00z', - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/application.json`, }, }; diff --git a/examples/application/data/lawfulDevelopmentCertificate/proposed.ts b/examples/application/data/lawfulDevelopmentCertificate/proposed.ts index 050fdded..a5197734 100644 --- a/examples/application/data/lawfulDevelopmentCertificate/proposed.ts +++ b/examples/application/data/lawfulDevelopmentCertificate/proposed.ts @@ -899,6 +899,6 @@ export const lawfulDevelopmentCertificateProposed: Application = { }, }, submittedAt: '2023-10-02T00:00:00+01:00', - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/application.json`, }, }; diff --git a/examples/application/data/listedBuildingConsent.ts b/examples/application/data/listedBuildingConsent.ts index b6551dce..474416be 100644 --- a/examples/application/data/listedBuildingConsent.ts +++ b/examples/application/data/listedBuildingConsent.ts @@ -1188,6 +1188,6 @@ export const listedBuildingConsent: Application = { notApplicable: true, }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/application.json`, }, }; diff --git a/examples/application/data/planningPermission/fullHouseholder.ts b/examples/application/data/planningPermission/fullHouseholder.ts index 0bb4852e..e5e3b29a 100644 --- a/examples/application/data/planningPermission/fullHouseholder.ts +++ b/examples/application/data/planningPermission/fullHouseholder.ts @@ -1217,6 +1217,6 @@ export const planningPermissionFullHouseholder: Application = { }, }, submittedAt: '2023-10-02T00:00:00.00Z', - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/application.json`, }, }; diff --git a/examples/application/data/planningPermission/fullHouseholderInConservationArea.ts b/examples/application/data/planningPermission/fullHouseholderInConservationArea.ts index 0dae1104..e3d5c567 100644 --- a/examples/application/data/planningPermission/fullHouseholderInConservationArea.ts +++ b/examples/application/data/planningPermission/fullHouseholderInConservationArea.ts @@ -1336,6 +1336,6 @@ export const planningPermissionFullHouseholderInConservationArea: Application = }, }, submittedAt: '2023-10-02T00:00:00.00Z', - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/application.json`, }, }; diff --git a/examples/application/data/planningPermission/major.ts b/examples/application/data/planningPermission/major.ts index 6b7ed169..623ba01f 100644 --- a/examples/application/data/planningPermission/major.ts +++ b/examples/application/data/planningPermission/major.ts @@ -2191,6 +2191,6 @@ export const planningPermissionMajor: Application = { payable: [], }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/application.json`, }, }; diff --git a/examples/application/data/planningPermission/minor.ts b/examples/application/data/planningPermission/minor.ts index 0bf3f3ab..5b27d1aa 100644 --- a/examples/application/data/planningPermission/minor.ts +++ b/examples/application/data/planningPermission/minor.ts @@ -1704,6 +1704,6 @@ export const planningPermissionMinor: Application = { }, }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/application.json`, }, }; diff --git a/examples/application/data/priorApproval/buildHomes.ts b/examples/application/data/priorApproval/buildHomes.ts index 919cd29a..1f4b25ce 100644 --- a/examples/application/data/priorApproval/buildHomes.ts +++ b/examples/application/data/priorApproval/buildHomes.ts @@ -1838,6 +1838,6 @@ export const priorApprovalBuildHomes: Application = { ], }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/application.json`, }, }; diff --git a/examples/application/data/priorApproval/convertCommercialToHome.ts b/examples/application/data/priorApproval/convertCommercialToHome.ts index 7913d557..77c3cd8c 100644 --- a/examples/application/data/priorApproval/convertCommercialToHome.ts +++ b/examples/application/data/priorApproval/convertCommercialToHome.ts @@ -1626,6 +1626,6 @@ export const priorApprovalConvertCommercialToHome: Application = { ], }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/application.json`, }, }; diff --git a/examples/application/data/priorApproval/extendUniversity.ts b/examples/application/data/priorApproval/extendUniversity.ts index b2c6cd7a..30155158 100644 --- a/examples/application/data/priorApproval/extendUniversity.ts +++ b/examples/application/data/priorApproval/extendUniversity.ts @@ -1797,6 +1797,6 @@ export const priorApprovalExtendUniversity: Application = { ], }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/application.json`, }, }; diff --git a/examples/application/data/priorApproval/largerExtension.ts b/examples/application/data/priorApproval/largerExtension.ts index df394e78..de517179 100644 --- a/examples/application/data/priorApproval/largerExtension.ts +++ b/examples/application/data/priorApproval/largerExtension.ts @@ -1541,6 +1541,6 @@ export const priorApprovalLargerExtension: Application = { ], }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/application.json`, }, }; diff --git a/examples/application/data/priorApproval/solarPanels.ts b/examples/application/data/priorApproval/solarPanels.ts index 547bec5a..acb2dcf8 100644 --- a/examples/application/data/priorApproval/solarPanels.ts +++ b/examples/application/data/priorApproval/solarPanels.ts @@ -1344,6 +1344,6 @@ export const priorApprovalSolarPanels: Application = { ], }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/application.json`, }, }; diff --git a/examples/application/landDrainageConsent.json b/examples/application/landDrainageConsent.json index 4b6cdfb8..97d2605d 100644 --- a/examples/application/landDrainageConsent.json +++ b/examples/application/landDrainageConsent.json @@ -1138,6 +1138,6 @@ "payable": [] } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/application.json" } } \ No newline at end of file diff --git a/examples/application/lawfulDevelopmentCertificate/existing.json b/examples/application/lawfulDevelopmentCertificate/existing.json index f8f49c7f..9ef15a7e 100644 --- a/examples/application/lawfulDevelopmentCertificate/existing.json +++ b/examples/application/lawfulDevelopmentCertificate/existing.json @@ -1921,6 +1921,6 @@ } }, "submittedAt": "2023-10-02t00:00:00z", - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/application.json" } } \ No newline at end of file diff --git a/examples/application/lawfulDevelopmentCertificate/proposed.json b/examples/application/lawfulDevelopmentCertificate/proposed.json index d891e5ad..99b95ccc 100644 --- a/examples/application/lawfulDevelopmentCertificate/proposed.json +++ b/examples/application/lawfulDevelopmentCertificate/proposed.json @@ -1273,6 +1273,6 @@ } }, "submittedAt": "2023-10-02T00:00:00+01:00", - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/application.json" } } \ No newline at end of file diff --git a/examples/application/listedBuildingConsent.json b/examples/application/listedBuildingConsent.json index 86eac98e..cab0c439 100644 --- a/examples/application/listedBuildingConsent.json +++ b/examples/application/listedBuildingConsent.json @@ -1221,6 +1221,6 @@ "notApplicable": true } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/application.json" } } \ No newline at end of file diff --git a/examples/application/planningPermission/fullHouseholder.json b/examples/application/planningPermission/fullHouseholder.json index 4326c1d3..8d258831 100644 --- a/examples/application/planningPermission/fullHouseholder.json +++ b/examples/application/planningPermission/fullHouseholder.json @@ -1723,6 +1723,6 @@ } }, "submittedAt": "2023-10-02T00:00:00.00Z", - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/application.json" } } \ No newline at end of file diff --git a/examples/application/planningPermission/fullHouseholderInConservationArea.json b/examples/application/planningPermission/fullHouseholderInConservationArea.json index e21df36d..0372e234 100644 --- a/examples/application/planningPermission/fullHouseholderInConservationArea.json +++ b/examples/application/planningPermission/fullHouseholderInConservationArea.json @@ -1885,6 +1885,6 @@ } }, "submittedAt": "2023-10-02T00:00:00.00Z", - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/application.json" } } \ No newline at end of file diff --git a/examples/application/planningPermission/major.json b/examples/application/planningPermission/major.json index 51677903..995c3101 100644 --- a/examples/application/planningPermission/major.json +++ b/examples/application/planningPermission/major.json @@ -2433,6 +2433,6 @@ "payable": [] } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/application.json" } } \ No newline at end of file diff --git a/examples/application/planningPermission/minor.json b/examples/application/planningPermission/minor.json index f2f6cb0f..40e5c002 100644 --- a/examples/application/planningPermission/minor.json +++ b/examples/application/planningPermission/minor.json @@ -1693,6 +1693,6 @@ } } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/application.json" } } \ No newline at end of file diff --git a/examples/application/priorApproval/buildHomes.json b/examples/application/priorApproval/buildHomes.json index 7c15a692..33eb7864 100644 --- a/examples/application/priorApproval/buildHomes.json +++ b/examples/application/priorApproval/buildHomes.json @@ -1905,6 +1905,6 @@ ] } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/application.json" } } \ No newline at end of file diff --git a/examples/application/priorApproval/convertCommercialToHome.json b/examples/application/priorApproval/convertCommercialToHome.json index 0879845e..11600a80 100644 --- a/examples/application/priorApproval/convertCommercialToHome.json +++ b/examples/application/priorApproval/convertCommercialToHome.json @@ -1681,6 +1681,6 @@ ] } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/application.json" } } \ No newline at end of file diff --git a/examples/application/priorApproval/extendUniversity.json b/examples/application/priorApproval/extendUniversity.json index a228c0a8..92b3c428 100644 --- a/examples/application/priorApproval/extendUniversity.json +++ b/examples/application/priorApproval/extendUniversity.json @@ -1814,6 +1814,6 @@ ] } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/application.json" } } \ No newline at end of file diff --git a/examples/application/priorApproval/largerExtension.json b/examples/application/priorApproval/largerExtension.json index d04319b8..26015462 100644 --- a/examples/application/priorApproval/largerExtension.json +++ b/examples/application/priorApproval/largerExtension.json @@ -1567,6 +1567,6 @@ ] } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/application.json" } } \ No newline at end of file diff --git a/examples/application/priorApproval/solarPanels.json b/examples/application/priorApproval/solarPanels.json index a9644fed..56775695 100644 --- a/examples/application/priorApproval/solarPanels.json +++ b/examples/application/priorApproval/solarPanels.json @@ -1523,6 +1523,6 @@ ] } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/application.json" } } \ No newline at end of file diff --git a/examples/prototypeApplication/data/landDrainageConsent.ts b/examples/prototypeApplication/data/landDrainageConsent.ts index 00f99f02..d7ca6885 100644 --- a/examples/prototypeApplication/data/landDrainageConsent.ts +++ b/examples/prototypeApplication/data/landDrainageConsent.ts @@ -655,6 +655,6 @@ export const landDrainageConsentPrototype: PrototypeApplication = { payable: [], }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/prototypeApplication.json`, }, }; diff --git a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts index 326846c8..b8d98920 100644 --- a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts +++ b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/existing.ts @@ -1232,6 +1232,6 @@ export const lawfulDevelopmentCertificateExistingPrototype: PrototypeApplication }, }, submittedAt: '2023-10-02t00:00:00z', - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/prototypeApplication.json`, }, }; diff --git a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts index 7fb03fac..3a2fca2e 100644 --- a/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts +++ b/examples/prototypeApplication/data/lawfulDevelopmentCertificate/proposed.ts @@ -820,6 +820,6 @@ export const lawfulDevelopmentCertificateProposedPrototype: PrototypeApplication }, }, submittedAt: '2023-10-02T00:00:00+01:00', - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/prototypeApplication.json`, }, }; diff --git a/examples/prototypeApplication/data/listedBuildingConsent.ts b/examples/prototypeApplication/data/listedBuildingConsent.ts index 5a687f74..ab8a469b 100644 --- a/examples/prototypeApplication/data/listedBuildingConsent.ts +++ b/examples/prototypeApplication/data/listedBuildingConsent.ts @@ -1074,6 +1074,6 @@ export const listedBuildingConsentPrototype: PrototypeApplication = { notApplicable: true, }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/prototypeApplication.json`, }, }; diff --git a/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts b/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts index 35d83b19..c791b071 100644 --- a/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts +++ b/examples/prototypeApplication/data/planningPermission/fullHouseholder.ts @@ -1128,6 +1128,6 @@ export const planningPermissionFullHouseholderPrototype: PrototypeApplication = }, }, submittedAt: '2023-10-02T00:00:00.00Z', - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/prototypeApplication.json`, }, }; diff --git a/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts b/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts index 5b5f9f1b..1138b284 100644 --- a/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts +++ b/examples/prototypeApplication/data/planningPermission/fullHouseholderInConservationArea.ts @@ -1210,6 +1210,6 @@ export const planningPermissionFullHouseholderInConservationAreaPrototype: Proto }, }, submittedAt: '2023-10-02T00:00:00.00Z', - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/prototypeApplication.json`, }, }; diff --git a/examples/prototypeApplication/data/planningPermission/major.ts b/examples/prototypeApplication/data/planningPermission/major.ts index 05863d7f..f1657a80 100644 --- a/examples/prototypeApplication/data/planningPermission/major.ts +++ b/examples/prototypeApplication/data/planningPermission/major.ts @@ -2104,6 +2104,6 @@ export const planningPermissionMajorPrototype: PrototypeApplication = { payable: [], }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/prototypeApplication.json`, }, }; diff --git a/examples/prototypeApplication/data/planningPermission/minor.ts b/examples/prototypeApplication/data/planningPermission/minor.ts index 3e876543..76f16c41 100644 --- a/examples/prototypeApplication/data/planningPermission/minor.ts +++ b/examples/prototypeApplication/data/planningPermission/minor.ts @@ -1600,6 +1600,6 @@ export const planningPermissionMinorPrototype: PrototypeApplication = { payable: [], }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/prototypeApplication.json`, }, }; diff --git a/examples/prototypeApplication/data/priorApproval/buildHomes.ts b/examples/prototypeApplication/data/priorApproval/buildHomes.ts index d53fd30d..5b88266d 100644 --- a/examples/prototypeApplication/data/priorApproval/buildHomes.ts +++ b/examples/prototypeApplication/data/priorApproval/buildHomes.ts @@ -1714,6 +1714,6 @@ export const priorApprovalBuildHomesPrototype: PrototypeApplication = { ], }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/prototypeApplication.json`, }, }; diff --git a/examples/prototypeApplication/data/priorApproval/convertCommercialToHome.ts b/examples/prototypeApplication/data/priorApproval/convertCommercialToHome.ts index 4755c489..a34b5617 100644 --- a/examples/prototypeApplication/data/priorApproval/convertCommercialToHome.ts +++ b/examples/prototypeApplication/data/priorApproval/convertCommercialToHome.ts @@ -1497,6 +1497,6 @@ export const priorApprovalConvertCommercialToHomePrototype: PrototypeApplication ], }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/prototypeApplication.json`, }, }; diff --git a/examples/prototypeApplication/data/priorApproval/extendUniversity.ts b/examples/prototypeApplication/data/priorApproval/extendUniversity.ts index a332ee26..dd3aaf76 100644 --- a/examples/prototypeApplication/data/priorApproval/extendUniversity.ts +++ b/examples/prototypeApplication/data/priorApproval/extendUniversity.ts @@ -1705,6 +1705,6 @@ export const priorApprovalExtendUniversityPrototype: PrototypeApplication = { ], }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/prototypeApplication.json`, }, }; diff --git a/examples/prototypeApplication/data/priorApproval/largerExtension.ts b/examples/prototypeApplication/data/priorApproval/largerExtension.ts index f16cb501..7da43531 100644 --- a/examples/prototypeApplication/data/priorApproval/largerExtension.ts +++ b/examples/prototypeApplication/data/priorApproval/largerExtension.ts @@ -1469,6 +1469,6 @@ export const priorApprovalLargerExtensionPrototype: PrototypeApplication = { ], }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/prototypeApplication.json`, }, }; diff --git a/examples/prototypeApplication/data/priorApproval/solarPanels.ts b/examples/prototypeApplication/data/priorApproval/solarPanels.ts index a2ce339c..2e11f780 100644 --- a/examples/prototypeApplication/data/priorApproval/solarPanels.ts +++ b/examples/prototypeApplication/data/priorApproval/solarPanels.ts @@ -1280,6 +1280,6 @@ export const priorApprovalSolarPanelsPrototype: PrototypeApplication = { ], }, }, - schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schemas/prototypeApplication.json`, }, }; diff --git a/examples/prototypeApplication/landDrainageConsent.json b/examples/prototypeApplication/landDrainageConsent.json index eb265ef6..78559b1c 100644 --- a/examples/prototypeApplication/landDrainageConsent.json +++ b/examples/prototypeApplication/landDrainageConsent.json @@ -1052,6 +1052,6 @@ "payable": [] } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/prototypeApplication.json" } } \ No newline at end of file diff --git a/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json b/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json index 9c6efb82..dd6ed99c 100644 --- a/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json +++ b/examples/prototypeApplication/lawfulDevelopmentCertificate/existing.json @@ -1853,6 +1853,6 @@ } }, "submittedAt": "2023-10-02t00:00:00z", - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/prototypeApplication.json" } } \ No newline at end of file diff --git a/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json b/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json index b90757bf..bfdf2d9a 100644 --- a/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json +++ b/examples/prototypeApplication/lawfulDevelopmentCertificate/proposed.json @@ -1197,6 +1197,6 @@ } }, "submittedAt": "2023-10-02T00:00:00+01:00", - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/prototypeApplication.json" } } \ No newline at end of file diff --git a/examples/prototypeApplication/listedBuildingConsent.json b/examples/prototypeApplication/listedBuildingConsent.json index b8d348d6..585a14e2 100644 --- a/examples/prototypeApplication/listedBuildingConsent.json +++ b/examples/prototypeApplication/listedBuildingConsent.json @@ -1086,6 +1086,6 @@ "notApplicable": true } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/prototypeApplication.json" } } \ No newline at end of file diff --git a/examples/prototypeApplication/planningPermission/fullHouseholder.json b/examples/prototypeApplication/planningPermission/fullHouseholder.json index 43986742..914ecabf 100644 --- a/examples/prototypeApplication/planningPermission/fullHouseholder.json +++ b/examples/prototypeApplication/planningPermission/fullHouseholder.json @@ -1647,6 +1647,6 @@ } }, "submittedAt": "2023-10-02T00:00:00.00Z", - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/prototypeApplication.json" } } \ No newline at end of file diff --git a/examples/prototypeApplication/planningPermission/fullHouseholderInConservationArea.json b/examples/prototypeApplication/planningPermission/fullHouseholderInConservationArea.json index 23aa16ee..8bb357fc 100644 --- a/examples/prototypeApplication/planningPermission/fullHouseholderInConservationArea.json +++ b/examples/prototypeApplication/planningPermission/fullHouseholderInConservationArea.json @@ -1774,6 +1774,6 @@ } }, "submittedAt": "2023-10-02T00:00:00.00Z", - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/prototypeApplication.json" } } \ No newline at end of file diff --git a/examples/prototypeApplication/planningPermission/major.json b/examples/prototypeApplication/planningPermission/major.json index e9209002..9723235d 100644 --- a/examples/prototypeApplication/planningPermission/major.json +++ b/examples/prototypeApplication/planningPermission/major.json @@ -2324,6 +2324,6 @@ "payable": [] } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/prototypeApplication.json" } } \ No newline at end of file diff --git a/examples/prototypeApplication/planningPermission/minor.json b/examples/prototypeApplication/planningPermission/minor.json index 8b6f92e5..f30d4dec 100644 --- a/examples/prototypeApplication/planningPermission/minor.json +++ b/examples/prototypeApplication/planningPermission/minor.json @@ -1597,6 +1597,6 @@ "payable": [] } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/prototypeApplication.json" } } \ No newline at end of file diff --git a/examples/prototypeApplication/priorApproval/buildHomes.json b/examples/prototypeApplication/priorApproval/buildHomes.json index e71e4442..11a4aedf 100644 --- a/examples/prototypeApplication/priorApproval/buildHomes.json +++ b/examples/prototypeApplication/priorApproval/buildHomes.json @@ -1788,6 +1788,6 @@ ] } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/prototypeApplication.json" } } \ No newline at end of file diff --git a/examples/prototypeApplication/priorApproval/convertCommercialToHome.json b/examples/prototypeApplication/priorApproval/convertCommercialToHome.json index 52e8408e..9018d351 100644 --- a/examples/prototypeApplication/priorApproval/convertCommercialToHome.json +++ b/examples/prototypeApplication/priorApproval/convertCommercialToHome.json @@ -1562,6 +1562,6 @@ ] } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/prototypeApplication.json" } } \ No newline at end of file diff --git a/examples/prototypeApplication/priorApproval/extendUniversity.json b/examples/prototypeApplication/priorApproval/extendUniversity.json index 42cc0e65..2a751824 100644 --- a/examples/prototypeApplication/priorApproval/extendUniversity.json +++ b/examples/prototypeApplication/priorApproval/extendUniversity.json @@ -1731,6 +1731,6 @@ ] } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/prototypeApplication.json" } } \ No newline at end of file diff --git a/examples/prototypeApplication/priorApproval/largerExtension.json b/examples/prototypeApplication/priorApproval/largerExtension.json index 3cc953d4..c64f4dbc 100644 --- a/examples/prototypeApplication/priorApproval/largerExtension.json +++ b/examples/prototypeApplication/priorApproval/largerExtension.json @@ -1508,6 +1508,6 @@ ] } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/prototypeApplication.json" } } \ No newline at end of file diff --git a/examples/prototypeApplication/priorApproval/solarPanels.json b/examples/prototypeApplication/priorApproval/solarPanels.json index db1c3bef..3bb4eaa7 100644 --- a/examples/prototypeApplication/priorApproval/solarPanels.json +++ b/examples/prototypeApplication/priorApproval/solarPanels.json @@ -1469,6 +1469,6 @@ ] } }, - "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schemas/prototypeApplication.json" } } \ No newline at end of file From e694fedeb7d61aedc8b8fa9fba08948e2839c140 Mon Sep 17 00:00:00 2001 From: Jessica McInchak Date: Wed, 18 Sep 2024 13:24:48 +0200 Subject: [PATCH 11/13] tidy unused imports --- types/schemas/prototypeApplication/index.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/types/schemas/prototypeApplication/index.ts b/types/schemas/prototypeApplication/index.ts index 76b2b011..1b07928c 100644 --- a/types/schemas/prototypeApplication/index.ts +++ b/types/schemas/prototypeApplication/index.ts @@ -2,8 +2,6 @@ import { BaseMetadata, FeeExplanation, FeeExplanationNotApplicable, - Metadata, - PlanXMetadata, } from '../../shared/Metadata'; import {Responses} from '../../shared/Responses'; import {UUID, URL} from '../../shared/utils'; From b187eae661dd676b16429e6bc77f433bea2586cc Mon Sep 17 00:00:00 2001 From: Jessica McInchak Date: Thu, 19 Sep 2024 22:25:12 +0200 Subject: [PATCH 12/13] pr feedback MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Dafydd Llŷr Pearson --- types/schemas/prototypeApplication/data/Applicant.ts | 6 +++--- types/schemas/prototypeApplication/data/Proposal.ts | 3 +++ 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/types/schemas/prototypeApplication/data/Applicant.ts b/types/schemas/prototypeApplication/data/Applicant.ts index e7675488..72a1e148 100644 --- a/types/schemas/prototypeApplication/data/Applicant.ts +++ b/types/schemas/prototypeApplication/data/Applicant.ts @@ -6,7 +6,7 @@ export type ApplicantBase = BaseApplicant | Agent; export type BaseApplicant = ContactDetails & { /** - * @Description The type of applicant + * @description The type of applicant */ type: 'individual' | 'company' | 'charity' | 'public' | 'parishCouncil'; /** @@ -99,7 +99,7 @@ export type MaintenanceContact = { export type LDCApplicant = ApplicantBase & { /** - * @description Information about the propery owners, if different than the applicant + * @description Information about the property owners, if different than the applicant */ ownership: | {interest: Extract} @@ -111,7 +111,7 @@ export type LDCApplicant = ApplicantBase & { export type PPApplicant = ApplicantBase & { /** - * @description Information about the ownership certificate and propery owners, if different than the applicant + * @description Information about the ownership certificate and property owners, if different than the applicant */ ownership: { interest: OwnershipInterest | 'owner.sole' | 'owner.co'; diff --git a/types/schemas/prototypeApplication/data/Proposal.ts b/types/schemas/prototypeApplication/data/Proposal.ts index 3de0533b..26eee25e 100644 --- a/types/schemas/prototypeApplication/data/Proposal.ts +++ b/types/schemas/prototypeApplication/data/Proposal.ts @@ -215,6 +215,9 @@ export interface LondonProposal extends Omit { * @description Proposed energy sources */ energy?: { + /** + * @uniqueItems true + */ type: Array<'communityOwned' | 'heatPump' | 'solar'>; communityOwned?: { /** @description Proposed total capacity of any on-site community-owned energy generation in megawatts (mW) */ From f88f0c1a4125070dd2a81a89bbc6a604934fbebf Mon Sep 17 00:00:00 2001 From: Jessica McInchak Date: Thu, 19 Sep 2024 22:32:13 +0200 Subject: [PATCH 13/13] add GBP units --- types/schemas/prototypeApplication/data/Proposal.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/schemas/prototypeApplication/data/Proposal.ts b/types/schemas/prototypeApplication/data/Proposal.ts index 26eee25e..56a0ce4a 100644 --- a/types/schemas/prototypeApplication/data/Proposal.ts +++ b/types/schemas/prototypeApplication/data/Proposal.ts @@ -158,7 +158,7 @@ export interface LondonProposal extends Omit { */ newStoreys?: NewBuildingsOrStoreys; /** - * @description Project cost + * @description Project cost in GBP */ cost?: { projected: '2m' | '2mTo100m' | '100m';