diff --git a/examples/data/lawfulDevelopmentCertificate/existing.ts b/examples/data/lawfulDevelopmentCertificate/existing.ts index efdd09a6..4096474f 100644 --- a/examples/data/lawfulDevelopmentCertificate/existing.ts +++ b/examples/data/lawfulDevelopmentCertificate/existing.ts @@ -201,7 +201,6 @@ export const lawfulDevelopmentCertificateExisting: Schema = { value: 'designated', description: 'Designated land', intersects: true, - entities: [], }, { value: 'nature.SAC', diff --git a/examples/data/listedBuildingConsent.ts b/examples/data/listedBuildingConsent.ts index 68ab24e2..abce8801 100644 --- a/examples/data/listedBuildingConsent.ts +++ b/examples/data/listedBuildingConsent.ts @@ -104,7 +104,6 @@ export const listedBuildingConsent: Schema = { value: 'listed', description: 'Listed Building', intersects: true, - entities: [], }, { value: 'article4', @@ -134,7 +133,6 @@ export const listedBuildingConsent: Schema = { value: 'designated', description: 'Designated land', intersects: true, - entities: [], }, { value: 'nature.SAC', diff --git a/examples/data/planningPermission/major.ts b/examples/data/planningPermission/major.ts new file mode 100644 index 00000000..77131639 --- /dev/null +++ b/examples/data/planningPermission/major.ts @@ -0,0 +1,2196 @@ +import {Schema} from '../../../types/Schema'; +import {BaseProposal} from '../../../types/schema/data/Proposal'; + +const version = process.env['VERSION'] || '@next'; + +export const planningPermissionMajor: Schema = { + 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: { + value: 'other.unsupported', + description: 'Unsupported Site', + }, + 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', + description: 'Tree Preservation Order (TPO) or zone', + intersects: false, + }, + { + value: 'flood', + description: 'Flood Risk Zone', + intersects: false, + }, + { + value: 'listed', + description: 'Listed Building', + intersects: false, + }, + { + value: 'article4', + description: 'Article 4 Direction area', + intersects: false, + }, + { + value: 'monument', + description: 'Site of a Scheduled Monument', + intersects: false, + }, + { + value: 'greenBelt', + description: 'Green Belt', + intersects: true, + entities: [ + { + name: 'Buckinghamshire', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/610030', + }, + }, + ], + }, + { + value: 'designated', + description: 'Designated land', + intersects: false, + }, + { + value: 'nature.SAC', + description: 'Special Area of Conservation (SAC)', + intersects: false, + }, + { + value: 'nature.SPA', + description: 'Special Protection Area (SPA)', + intersects: false, + }, + { + value: 'nature.ASNW', + description: 'Ancient Semi-Natural Woodland (ASNW)', + intersects: false, + }, + { + value: 'nature.SSSI', + description: 'Site of Special Scientific Interest (SSSI)', + intersects: false, + }, + { + value: 'brownfieldSite', + description: 'Brownfield site', + intersects: false, + }, + { + value: 'designated.WHS', + description: 'UNESCO World Heritage Site or buffer zone', + intersects: false, + }, + { + value: 'registeredPark', + description: 'Historic Park or Garden', + intersects: false, + }, + { + value: 'designated.AONB', + description: 'Area of Outstanding Natural Beauty (AONB)', + intersects: false, + }, + { + value: 'nature.ramsarSite', + description: 'Ramsar site', + intersects: false, + }, + { + value: 'designated.nationalPark', + description: 'National Park', + intersects: false, + }, + { + value: 'designated.conservationArea', + description: 'Conservation Area', + intersects: false, + }, + { + value: 'designated.nationalPark.broads', + description: 'National Park - 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, + }, + }, + flood: { + '20mFromWatercourse': false, + increasedRiskElsewhere: false, + }, + trees: { + present: false, + adjacent: true, + }, + }, + application: { + type: { + value: 'pp.full.major', + description: 'Planning Permission - Major 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: [ + { + value: 'new.residential.dwelling', + description: 'Build new homes', + }, + { + value: 'alter.surfaces.parking', + description: 'Add a driveway or parking area', + }, + { + value: 'alter.highways.access', + description: 'Create a point of access to a highway', + }, + ], + 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: {value: 'house', description: 'House'}, + tenure: {value: 'MH', description: 'Market housing'}, + bedrooms: 3, + identicalUnits: 10, + }, + { + type: {value: 'house', description: 'House'}, + tenure: {value: 'MH', description: 'Market housing'}, + bedrooms: 4, + identicalUnits: 5, + }, + { + type: {value: 'flat', description: 'Flat'}, + tenure: { + value: 'SAIR', + description: 'Social, affordable or interim rent', + }, + bedrooms: 1, + identicalUnits: 8, + }, + { + type: {value: 'house', description: 'House'}, + tenure: { + value: 'SAIR', + description: 'Social, affordable or interim rent', + }, + bedrooms: 2, + identicalUnits: 2, + }, + ], + } as BaseProposal['units'], + }, + }, + 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: [ + { + value: 'relevantInformation', + description: + 'Information the applicant considers relevant to the application', + }, + ], + }, + { + name: 'https://api.editor.planx.dev/file/private/a8i079zc/Elevations-best-practice.pdf', + type: [ + { + value: 'necessaryInformation', + description: + 'Information the authority considers necessary for the application', + }, + ], + }, + ], + 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/data/planningPermission/minor.ts b/examples/data/planningPermission/minor.ts new file mode 100644 index 00000000..bfa7a990 --- /dev/null +++ b/examples/data/planningPermission/minor.ts @@ -0,0 +1,1709 @@ +import {Schema} from '../../../types/Schema'; +import {BaseProposal} from '../../../types/schema/data/Proposal'; + +const version = process.env['VERSION'] || '@next'; + +export const planningPermissionMinor: Schema = { + 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: { + value: 'commercial.community.hall', + description: 'Public / Village Hall / Other Community Facility', + }, + 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', + description: 'Tree Preservation Order (TPO) or zone', + intersects: false, + }, + { + value: 'flood', + description: 'Flood Risk Zone', + intersects: false, + }, + { + value: 'listed', + description: 'Listed Building', + intersects: false, + }, + { + value: 'article4', + description: 'Article 4 Direction area', + intersects: false, + }, + { + value: 'monument', + description: 'Site of a Scheduled Monument', + intersects: false, + }, + { + value: 'greenBelt', + description: 'Green Belt', + intersects: false, + }, + { + value: 'designated', + description: 'Designated land', + intersects: false, + }, + { + value: 'nature.SAC', + description: 'Special Area of Conservation (SAC)', + intersects: false, + }, + { + value: 'nature.SPA', + description: 'Special Protection Area (SPA)', + intersects: false, + }, + { + value: 'nature.ASNW', + description: 'Ancient Semi-Natural Woodland (ASNW)', + intersects: false, + }, + { + value: 'nature.SSSI', + description: 'Site of Special Scientific Interest (SSSI)', + intersects: false, + }, + { + value: 'brownfieldSite', + description: 'Brownfield site', + intersects: false, + }, + { + value: 'designated.WHS', + description: 'UNESCO World Heritage Site or buffer zone', + intersects: false, + }, + { + value: 'registeredPark', + description: 'Historic Park or Garden', + intersects: false, + }, + { + value: 'designated.AONB', + description: 'Area of Outstanding Natural Beauty (AONB)', + intersects: false, + }, + { + value: 'nature.ramsarSite', + description: 'Ramsar site', + intersects: false, + }, + { + value: 'designated.nationalPark', + description: 'National Park', + intersects: false, + }, + { + value: 'designated.conservationArea', + description: 'Conservation Area', + intersects: false, + }, + { + value: 'designated.nationalPark.broads', + description: 'National Park - Broads', + intersects: false, + }, + { + value: 'road.classified', + description: 'Classified Road', + intersects: true, + entities: [ + { + name: 'Stock Lane - Classified Unnumbered', + source: { + text: 'Ordnance Survey MasterMap Highways', + }, + }, + ], + }, + ], + }, + materials: { + boundary: 'black painted timber', + }, + }, + application: { + type: { + value: 'pp.full.minor', + description: 'Planning Permission - Minor application', + }, + fee: { + calculated: 578, + payable: 578, + category: { + one: 0, + two: 0, + three: 0, + four: 0, + five: 0, + sixAndSeven: 0, + eight: 0, + nine: 0, + ten: 0, + eleven: { + one: 0, + two: 0, + }, + twelve: { + one: 0, + two: 0, + }, + thirteen: 0, + fourteen: 578, + }, + exemption: { + disability: false, + resubmission: false, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + reference: { + govPay: 'j0pg5aq9slgp52n40k9b390u22', + }, + }, + declaration: { + accurate: true, + connection: { + value: 'none', + }, + }, + preApp: { + reference: '0123456789', + date: '2020-01-01', + officer: 'Pete the Planning Person', + summary: 'Not provided', + }, + }, + proposal: { + projectType: [ + { + value: 'changeOfUse', + description: 'Change the use of a building', + }, + ], + description: + 'Change of use from sui generis (top secret HQ of MI6 Section VIII) to home', + date: {}, + 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: {value: 'house', description: 'House'}, + tenure: { + value: 'selfCustomBuild', + description: 'Self-build and custom build', + }, + bedrooms: 4, + identicalUnits: 1, + }, + ], + } as BaseProposal['units'], + }, + }, + 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: [ + { + value: 'relevantInformation', + description: + 'Information the applicant considers relevant to the application', + }, + ], + }, + { + name: 'https://api.editor.planx.dev/file/private/vxui6fxw/Rooftype_pyramid%404x.png', + type: [ + { + value: 'necessaryInformation', + description: + 'Information the authority considers necessary for the application', + }, + ], + }, + { + name: 'https://api.editor.planx.dev/file/private/a8i079zc/Elevations-best-practice.pdf', + type: [ + { + value: 'necessaryInformation', + description: + 'Information the authority considers necessary for the application', + }, + ], + }, + ], + 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: [{}], + category: { + one: [], + two: [], + three: [], + four: [], + five: [], + sixAndSeven: [], + eight: [], + nine: [], + ten: [], + eleven: { + one: [], + }, + twelve: { + one: [], + two: [], + }, + thirteen: [], + fourteen: [], + }, + }, + }, + schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, + }, +}; diff --git a/examples/data/priorApproval/buildHomes.ts b/examples/data/priorApproval/buildHomes.ts new file mode 100644 index 00000000..855c7ff5 --- /dev/null +++ b/examples/data/priorApproval/buildHomes.ts @@ -0,0 +1,1843 @@ +import {Schema} from '../../../types/Schema'; + +const version = process.env['VERSION'] || '@next'; + +export const priorApprovalBuildHomes: Schema = { + 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: { + value: 'commercial.office', + description: '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', + description: 'Tree Preservation Order (TPO) or zone', + intersects: false, + }, + { + value: 'flood', + description: 'Flood Risk Zone', + intersects: false, + }, + { + value: 'listed', + description: 'Listed Building', + intersects: false, + }, + { + value: 'article4', + description: 'Article 4 Direction area', + intersects: false, + }, + { + value: 'monument', + description: 'Site of a Scheduled Monument', + intersects: false, + }, + { + value: 'greenBelt', + description: 'Green Belt', + intersects: false, + }, + { + value: 'designated', + description: 'Designated land', + intersects: false, + }, + { + value: 'nature.SAC', + description: 'Special Area of Conservation (SAC)', + intersects: false, + }, + { + value: 'nature.SPA', + description: 'Special Protection Area (SPA)', + intersects: false, + }, + { + value: 'nature.ASNW', + description: 'Ancient Semi-Natural Woodland (ASNW)', + intersects: false, + }, + { + value: 'nature.SSSI', + description: 'Site of Special Scientific Interest (SSSI)', + intersects: false, + }, + { + value: 'brownfieldSite', + description: 'Brownfield site', + intersects: false, + }, + { + value: 'designated.WHS', + description: 'UNESCO World Heritage Site or buffer zone', + intersects: false, + }, + { + value: 'registeredPark', + description: 'Historic Park or Garden', + intersects: false, + }, + { + value: 'designated.AONB', + description: 'Area of Outstanding Natural Beauty (AONB)', + intersects: false, + }, + { + value: 'nature.ramsarSite', + description: 'Ramsar site', + intersects: false, + }, + { + value: 'designated.nationalPark', + description: 'National Park', + intersects: false, + }, + { + value: 'designated.conservationArea', + description: 'Conservation Area', + intersects: false, + }, + { + value: 'designated.nationalPark.broads', + description: 'National Park - Broads', + intersects: false, + }, + { + value: 'road.classified', + description: 'Classified Road', + 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: { + type: { + value: 'pa.part20.classAB', + description: + 'Prior Approval - Build homes on an adjoining commercial or mixed use building', + }, + fee: { + calculated: 4510, + payable: 0, + category: { + one: 0, + two: 0, + three: 0, + four: 0, + five: 0, + sixAndSeven: 0, + eight: 0, + nine: 0, + ten: 0, + eleven: { + one: 0, + two: 0, + }, + twelve: { + one: 0, + two: 0, + }, + thirteen: 0, + fourteen: 0, + }, + exemption: { + disability: false, + resubmission: true, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + }, + declaration: { + accurate: true, + connection: { + value: 'none', + }, + }, + }, + proposal: { + projectType: [ + { + value: 'new.residential.dwelling', + description: 'Build new homes', + }, + ], + description: + 'The addition of homes as upper storeys to the existing commercial premises.', + date: {}, + 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: [ + { + value: 'noiseAssessment', + description: 'Noise assessment', + }, + ], + }, + { + name: 'https://api.editor.planx.dev/file/private/kk01qq8t/test%20document.pdf', + type: [ + { + value: 'roofPlan.proposed', + description: 'Roof plan - proposed', + }, + { + value: 'sections.existing', + description: 'Sections - existing', + }, + { + value: 'sections.proposed', + description: 'Sections - proposed', + }, + { + value: 'floorPlan.existing', + description: 'Floor plan - existing', + }, + { + value: 'floorPlan.proposed', + description: 'Floor plan - proposed', + }, + { + value: 'elevations.existing', + description: 'Elevations - existing', + }, + { + value: 'elevations.proposed', + description: 'Elevations - proposed', + }, + ], + }, + { + name: 'https://api.editor.planx.dev/file/private/knu6huv7/test%20document.pdf', + type: [ + { + value: 'sitePlan.proposed', + description: 'Site plan - 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/data/priorApproval/convertCommercialToHome.ts b/examples/data/priorApproval/convertCommercialToHome.ts new file mode 100644 index 00000000..159ca94f --- /dev/null +++ b/examples/data/priorApproval/convertCommercialToHome.ts @@ -0,0 +1,1625 @@ +import {Schema} from '../../../types/Schema'; + +const version = process.env['VERSION'] || '@next'; + +export const priorApprovalConvertCommercialToHome: Schema = { + 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: { + value: 'commercial.retail.shop', + description: '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', + description: 'Tree Preservation Order (TPO) or zone', + intersects: false, + }, + { + value: 'flood', + description: 'Flood Risk Zone', + intersects: false, + }, + { + value: 'listed', + description: 'Listed Building', + 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', + description: 'Article 4 Direction area', + intersects: false, + }, + { + value: 'monument', + description: 'Site of a Scheduled Monument', + intersects: false, + }, + { + value: 'greenBelt', + description: 'Green Belt', + intersects: false, + }, + { + value: 'designated', + description: 'Designated land', + intersects: true, + }, + { + value: 'nature.SAC', + description: 'Special Area of Conservation (SAC)', + intersects: false, + }, + { + value: 'nature.SPA', + description: 'Special Protection Area (SPA)', + intersects: false, + }, + { + value: 'nature.ASNW', + description: 'Ancient Semi-Natural Woodland (ASNW)', + intersects: false, + }, + { + value: 'nature.SSSI', + description: 'Site of Special Scientific Interest (SSSI)', + intersects: false, + }, + { + value: 'brownfieldSite', + description: 'Brownfield site', + intersects: false, + }, + { + value: 'designated.WHS', + description: 'UNESCO World Heritage Site or buffer zone', + intersects: false, + }, + { + value: 'listed.grade.I', + description: 'Listed Building - Grade I', + intersects: false, + }, + { + value: 'registeredPark', + description: 'Historic Park or Garden', + intersects: false, + }, + { + value: 'designated.AONB', + description: 'Area of Outstanding Natural Beauty (AONB)', + intersects: false, + }, + { + value: 'listed.grade.II', + description: 'Listed Building - Grade II', + intersects: true, + }, + { + value: 'listed.grade.II*', + description: 'Listed Building - Grade II*', + intersects: false, + }, + { + value: 'nature.ramsarSite', + description: 'Ramsar site', + intersects: false, + }, + { + value: 'designated.nationalPark', + description: 'National Park', + intersects: false, + }, + { + value: 'designated.conservationArea', + description: 'Conservation Area', + intersects: true, + entities: [ + { + name: 'Hackford Road', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/44000877', + }, + }, + ], + }, + { + value: 'designated.nationalPark.broads', + description: 'National Park - Broads', + intersects: false, + }, + { + value: 'road.classified', + description: 'Classified Road', + 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: { + type: { + value: 'pa.part3.classMA', + description: + 'Prior Approval - Convert a commercial building into a home or homes', + }, + fee: { + calculated: 258, + payable: 258, + category: { + one: 0, + two: 0, + three: 0, + four: 0, + five: 0, + sixAndSeven: 0, + eight: 0, + nine: 0, + ten: 0, + eleven: { + one: 0, + two: 0, + }, + twelve: { + one: 0, + two: 0, + }, + thirteen: 0, + fourteen: 0, + }, + exemption: { + disability: false, + resubmission: false, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + reference: { + govPay: 'p88epskokjikus74eafr36tfc1', + }, + }, + leadDeveloper: { + type: 'overseasCompany', + company: { + name: 'Impression Developments Inc.', + registrationNumber: '12345679ABC', + }, + }, + declaration: { + accurate: true, + connection: { + value: 'none', + }, + }, + }, + proposal: { + projectType: [ + { + value: 'changeOfUse', + description: 'Change the use of a building', + }, + ], + 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: {value: 'changeOfUse', description: 'Change of use'}, + type: {value: 'terraced', description: 'Terraced home'}, + bedrooms: 3, + habitableRooms: 7, + area: {squareMetres: 300}, + tenure: {value: 'marketForRent', description: 'Market for rent'}, + provider: {value: 'private', description: 'Private'}, + garden: false, + sheltered: false, + olderPersons: false, + compliance: [ + { + value: 'm42', + description: 'Part M4(2) of the Building Regulations 2010', + }, + { + value: 'm432a', + description: + 'Part M4(3)(2a) of the Building Regulations 2010', + }, + { + value: 'm432b', + description: + 'Part M4(3)(2b) of the Building Regulations 2010', + }, + ], + 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: [ + { + value: 'noiseAssessment', + description: 'Noise assessment', + }, + ], + }, + { + name: 'https://api.editor.planx.dev/file/private/2mrowm3t/test%20document.pdf', + type: [ + { + value: 'usePlan.proposed', + description: 'Use plan - proposed', + }, + { + value: 'sitePlan.proposed', + description: 'Site plan - proposed', + }, + ], + }, + { + name: 'https://api.editor.planx.dev/file/private/eu61v4yk/test%20document.pdf', + type: [ + { + value: 'sitePlan.existing', + description: 'Site plan - existing', + }, + ], + }, + { + name: 'https://api.editor.planx.dev/file/private/fd7o1wnh/test%20document.pdf', + type: [ + { + value: 'sunlightAndDaylightReport', + description: 'Sunlight and daylight report', + }, + ], + }, + ], + 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/data/priorApproval/extendUniversity.ts b/examples/data/priorApproval/extendUniversity.ts new file mode 100644 index 00000000..dacd79a5 --- /dev/null +++ b/examples/data/priorApproval/extendUniversity.ts @@ -0,0 +1,1802 @@ +import {Schema} from '../../../types/Schema'; + +const version = process.env['VERSION'] || '@next'; + +export const priorApprovalExtendUniversity: Schema = { + 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: { + value: 'commercial.education.university', + description: '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', + description: 'Tree Preservation Order (TPO) or zone', + intersects: false, + }, + { + value: 'flood', + description: 'Flood Risk Zone', + intersects: false, + }, + { + value: 'listed', + description: 'Listed Building', + intersects: false, + }, + { + value: 'article4', + description: 'Article 4 Direction area', + intersects: true, + entities: [ + { + name: 'Basements', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/7010002613', + }, + }, + ], + }, + { + value: 'monument', + description: 'Site of a Scheduled Monument', + intersects: false, + }, + { + value: 'greenBelt', + description: 'Green Belt', + intersects: false, + }, + { + value: 'designated', + description: 'Designated land', + intersects: true, + }, + { + value: 'nature.SAC', + description: 'Special Area of Conservation (SAC)', + intersects: false, + }, + { + value: 'nature.SPA', + description: 'Special Protection Area (SPA)', + intersects: false, + }, + { + value: 'nature.ASNW', + description: 'Ancient Semi-Natural Woodland (ASNW)', + intersects: false, + }, + { + value: 'nature.SSSI', + description: 'Site of Special Scientific Interest (SSSI)', + intersects: false, + }, + { + value: 'brownfieldSite', + description: 'Brownfield site', + intersects: false, + }, + { + value: 'designated.WHS', + description: 'UNESCO World Heritage Site or buffer zone', + intersects: false, + }, + { + value: 'registeredPark', + description: 'Historic Park or Garden', + intersects: false, + }, + { + value: 'designated.AONB', + description: 'Area of Outstanding Natural Beauty (AONB)', + intersects: false, + }, + { + value: 'nature.ramsarSite', + description: 'Ramsar site', + intersects: false, + }, + { + value: 'designated.nationalPark', + description: 'National Park', + intersects: false, + }, + { + value: 'designated.conservationArea', + description: 'Conservation Area', + intersects: true, + entities: [ + { + name: 'Highgate Village', + source: { + text: 'Planning Data', + url: 'https://www.planning.data.gov.uk/entity/44009654', + }, + }, + ], + }, + { + value: 'designated.nationalPark.broads', + description: 'National Park - Broads', + intersects: false, + }, + { + value: 'road.classified', + description: 'Classified Road', + 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: { + type: { + value: 'pa.part7.classM', + description: + 'Prior Approval - Extend a school, college, university, prison or hospital', + }, + fee: { + calculated: 120, + payable: 120, + category: { + one: 0, + two: 0, + three: 0, + four: 0, + five: 0, + sixAndSeven: 0, + eight: 0, + nine: 0, + ten: 0, + eleven: { + one: 0, + two: 0, + }, + twelve: { + one: 0, + two: 0, + }, + thirteen: 0, + fourteen: 0, + }, + exemption: { + disability: false, + resubmission: false, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + reference: { + govPay: '90u259k4b9qh4tn2h220ui2um3', + }, + }, + leadDeveloper: { + type: 'ukCompany', + company: { + name: 'Fit For Cabbages Developments', + registrationNumber: '12345679ABC', + }, + }, + declaration: { + accurate: true, + connection: { + value: 'none', + }, + }, + }, + proposal: { + projectType: [ + { + value: 'extend', + description: 'Extend a building or add an outbuilding', + }, + ], + 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: [ + { + value: 'otherDocument', + description: 'Other - document', + }, + ], + }, + { + name: 'https://api.editor.planx.dev/file/private/p3e01fea/test%20document.pdf', + type: [ + { + value: 'sitePlan.proposed', + description: 'Site plan - proposed', + }, + { + value: 'elevations.existing', + description: 'Elevations - existing', + }, + { + value: 'elevations.proposed', + description: '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/data/priorApproval/largerExtension.ts b/examples/data/priorApproval/largerExtension.ts new file mode 100644 index 00000000..1d633e2e --- /dev/null +++ b/examples/data/priorApproval/largerExtension.ts @@ -0,0 +1,1546 @@ +import {Schema} from '../../../types/Schema'; + +const version = process.env['VERSION'] || '@next'; + +export const priorApprovalLargerExtension: Schema = { + 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: { + value: 'residential.dwelling.house.detached', + description: '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', + description: 'Tree Preservation Order (TPO) or zone', + intersects: false, + }, + { + value: 'flood', + description: 'Flood Risk Zone', + intersects: false, + }, + { + value: 'listed', + description: 'Listed Building', + intersects: false, + }, + { + value: 'article4', + description: 'Article 4 Direction area', + intersects: false, + }, + { + value: 'monument', + description: 'Site of a Scheduled Monument', + intersects: false, + }, + { + value: 'greenBelt', + description: 'Green Belt', + intersects: false, + }, + { + value: 'designated', + description: 'Designated land', + intersects: false, + }, + { + value: 'nature.SAC', + description: 'Special Area of Conservation (SAC)', + intersects: false, + }, + { + value: 'nature.SPA', + description: 'Special Protection Area (SPA)', + intersects: false, + }, + { + value: 'nature.ASNW', + description: 'Ancient Semi-Natural Woodland (ASNW)', + intersects: false, + }, + { + value: 'nature.SSSI', + description: 'Site of Special Scientific Interest (SSSI)', + intersects: false, + }, + { + value: 'brownfieldSite', + description: 'Brownfield site', + intersects: false, + }, + { + value: 'designated.WHS', + description: 'UNESCO World Heritage Site or buffer zone', + intersects: false, + }, + { + value: 'registeredPark', + description: 'Historic Park or Garden', + intersects: false, + }, + { + value: 'designated.AONB', + description: 'Area of Outstanding Natural Beauty (AONB)', + intersects: false, + }, + { + value: 'nature.ramsarSite', + description: 'Ramsar site', + intersects: false, + }, + { + value: 'designated.nationalPark', + description: 'National Park', + intersects: false, + }, + { + value: 'designated.conservationArea', + description: 'Conservation Area', + intersects: false, + }, + { + value: 'designated.nationalPark.broads', + description: 'National Park - Broads', + intersects: false, + }, + { + value: 'road.classified', + description: 'Classified Road', + 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: { + type: { + value: 'pa.part1.classA', + description: 'Prior Approval - Larger extension to a house', + }, + 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: [ + { + value: 'extend.rear', + description: 'Add a rear or side extension (or conservatory)', + }, + ], + 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: [ + { + value: 'sitePlan.proposed', + description: 'Site plan - proposed', + }, + ], + }, + { + name: 'https://api.editor.planx.dev/file/private/avilhq1j/elevations_existing_01.jpg', + type: [ + { + value: 'elevations.existing', + description: 'Elevations - existing', + }, + ], + }, + { + name: 'https://api.editor.planx.dev/file/private/tis6f8hh/elevations_proposed_01.jpg', + type: [ + { + value: 'elevations.proposed', + description: '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/data/priorApproval/solarPanels.ts b/examples/data/priorApproval/solarPanels.ts index 41eef2d7..69725869 100644 --- a/examples/data/priorApproval/solarPanels.ts +++ b/examples/data/priorApproval/solarPanels.ts @@ -4,51 +4,18 @@ const version = process.env['VERSION'] || '@next'; export const priorApprovalSolarPanels: Schema = { data: { - application: { - type: { - value: 'pa.part14.classJ', - description: 'Prior Approval - Install or change solar panels', - }, - fee: { - calculated: 120, - payable: 120, - exemption: { - disability: false, - resubmission: false, - }, - reduction: { - sports: false, - parishCouncil: false, - alternative: false, - }, - reference: { - govPay: 'sandbox-ref-789', - }, - }, - declaration: { - accurate: true, - connection: { - value: 'relation.electedMember', - description: - 'I think the King is but a man, as I am. The violet smells to him as it doth to me. The element shows to him as it doth to me. All his senses have but human conditions. His ceremonies laid by, in his nakedness he appears but a man.', - }, - }, - }, user: { role: 'applicant', }, applicant: { - type: 'company', + type: 'individual', name: { - first: 'William', + first: 'Bill', last: 'Shakespeare', }, - email: 'thebard@example.com', + email: 'byanyothername@email.org', phone: { - primary: '2830407283', - }, - company: { - name: "Lord Chamberlain's Men", + primary: '012345678901', }, address: { sameAsSiteAddress: true, @@ -59,194 +26,177 @@ export const priorApprovalSolarPanels: Schema = { }, property: { address: { - latitude: 51.5081109, - longitude: -0.0965974, + latitude: 51.5081124, + longitude: -0.0965717, x: 532192, y: 180515, title: 'INTERNATIONAL SHAKESPEARE GLOBE CENTRE LTD, SHAKESPEARE GLOBE THEATRE, 21, NEW GLOBE WALK, LONDON', - singleLine: - 'INTERNATIONAL SHAKESPEARE GLOBE CENTRE LTD, SHAKESPEARE GLOBE THEATRE, 21, NEW GLOBE WALK, LONDON, SE1 9DT', source: 'Ordnance Survey', uprn: '200003377200', usrn: '22503078', - pao: '21', + 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: { + value: 'commercial.leisure.entertainment', + description: + 'Bingo Hall / Cinema / Conference / Exhibition Centre / Theatre / Concert Hall', }, boundary: { site: { type: 'Feature', geometry: { - type: 'Polygon', + type: 'MultiPolygon', coordinates: [ [ - [-0.0967472791671659, 51.50830340605074], - [-0.09676337242125525, 51.50830507546084], - [-0.09689748287199977, 51.50831926544436], - [-0.09693503379820824, 51.50790775412855], - [-0.09666681289671919, 51.50789439872946], - [-0.09645719784644384, 51.507889747624404], - [-0.09639290535660058, 51.50828278342658], - [-0.0967472791671659, 51.50830340605074], + [ + [-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: null, + 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.152757, - squareMetres: 1527.57, + hectares: 0.424414, + squareMetres: 4244.14, }, }, - planning: { - sources: [ - 'https://api.editor.planx.dev/gis/southwark?geom=POLYGON+%28%28-0.0967472791671659+51.50830340605074%2C+-0.09676337242125525+51.50830507546084%2C+-0.09689748287199977+51.50831926544436%2C+-0.09693503379820824+51.50790775412855%2C+-0.09666681289671919+51.50789439872946%2C+-0.09645719784644384+51.507889747624404%2C+-0.09639290535660058+51.50828278342658%2C+-0.0967472791671659+51.50830340605074%29%29&analytics=false&sessionId=b18c301b-9d44-4c6c-8d27-5b5bf33c570b', - 'https://api.editor.planx.dev/roads?usrn=22503078', - ], - designations: [ - { - value: 'article4', - description: 'Article 4 Direction area', - intersects: true, - entities: [ - { - name: 'Central Activities Zone', - description: - 'Change of use from offices to dwelling houses is restricted', - source: { - text: 'Planning Data', - url: 'https://www.planning.data.gov.uk/entity/7010000942', - }, - }, - { - name: 'Central Activities Zone', - description: - 'Demolition of commercial buildings and construction of new dwellinghouses is restricted', - source: { - text: 'Planning Data', - url: 'https://www.planning.data.gov.uk/entity/7010000944', - }, - }, - { - name: 'Bankside and Borough District Town Centre', - description: - 'Demolition of commercial buildings and construction of new dwellinghouses is restricted', - source: { - text: 'Planning Data', - url: 'https://www.planning.data.gov.uk/entity/7010001042', - }, - }, - { - name: 'Central Activities Zone', - description: - 'Change of use from Class E to residential is restricted', - source: { - text: 'Planning Data', - url: 'https://www.planning.data.gov.uk/entity/7010001055', - }, - }, - { - name: 'Bankside and Borough District Town Centre', - description: - 'Change of use from Class E to residential is restricted', - source: { - text: 'Planning Data', - url: 'https://www.planning.data.gov.uk/entity/7010001153', - }, - }, - ], - }, - { - value: 'article4.caz', - description: 'Central Activities Zone (CAZ)', - intersects: true, - entities: [], - }, - { - value: 'tpo', - description: 'Tree Preservation Order (TPO) or zone', - intersects: false, - }, - { - value: 'listed', - description: 'Listed Building', - intersects: false, - }, - { - value: 'monument', - description: 'Site of a Scheduled Monument', - intersects: false, - }, - { - value: 'designated', - description: 'Designated land', - intersects: false, - }, - { - value: 'nature.SAC', - description: 'Special Area of Conservation (SAC)', - intersects: false, - }, - { - value: 'nature.ASNW', - description: 'Ancient Semi-Natural Woodland (ASNW)', - intersects: false, - }, - { - value: 'nature.SSSI', - description: 'Site of Special Scientific Interest (SSSI)', - intersects: false, - }, - { - value: 'locallyListed', - description: 'Locally Listed Building', - intersects: false, - }, - { - value: 'nature.SPA', - description: 'Special Protection Area (SPA)', - intersects: false, - }, - { - value: 'designated.WHS', - description: 'UNESCO World Heritage Site or buffer zone', - intersects: false, - }, - { - value: 'registeredPark', - description: 'Historic Park or Garden', - intersects: false, - }, - { - value: 'designated.AONB', - description: 'Area of Outstanding Natural Beauty (AONB)', - intersects: false, - }, - { - value: 'designated.conservationArea', - description: 'Conservation Area', - intersects: false, + 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, }, - { - value: 'designated.nationalPark.broads', - description: 'National Park - Broads', - intersects: false, + }, + other: { + count: 0, + }, + }, + }, + application: { + type: { + value: 'pa.part14.classJ', + description: 'Prior Approval - Install or change solar panels', + }, + fee: { + calculated: 120, + payable: 120, + category: { + one: 0, + two: 0, + three: 0, + four: 0, + five: 0, + sixAndSeven: 0, + eight: 0, + nine: 0, + ten: 0, + eleven: { + one: 0, + two: 0, }, - { - value: 'road.classified', - description: 'Classified Road', - intersects: false, + twelve: { + one: 0, + two: 0, }, - ], + thirteen: 0, + fourteen: 0, + }, + exemption: { + disability: false, + resubmission: false, + }, + reduction: { + sports: false, + parishCouncil: false, + alternative: false, + }, + reference: { + govPay: 'mfm6s5irae9bh5g75p3ks5opng', + }, }, - localAuthorityDistrict: ['Southwark'], - region: 'London', - type: { - value: 'commercial.leisure.entertainment', - description: - 'Bingo Hall / Cinema / Conference / Exhibition Centre / Theatre / Concert Hall', + declaration: { + accurate: true, + connection: { + value: 'none', + }, }, }, proposal: { @@ -256,30 +206,111 @@ export const priorApprovalSolarPanels: Schema = { description: 'Install solar panels', }, ], - description: '@todo not provided in Prior Approval', + description: 'Not provided', + date: { + start: '2024-07-28', + completion: '2030-07-28', + }, boundary: { site: { type: 'Feature', geometry: { - type: 'Polygon', + type: 'MultiPolygon', coordinates: [ [ - [-0.0967472791671659, 51.50830340605074], - [-0.09676337242125525, 51.50830507546084], - [-0.09689748287199977, 51.50831926544436], - [-0.09693503379820824, 51.50790775412855], - [-0.09666681289671919, 51.50789439872946], - [-0.09645719784644384, 51.507889747624404], - [-0.09639290535660058, 51.50828278342658], - [-0.0967472791671659, 51.50830340605074], + [ + [-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: null, + 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.152757, - squareMetres: 1527.57, + 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, }, }, }, @@ -294,58 +325,118 @@ export const priorApprovalSolarPanels: Schema = { responses: [ { question: 'Is the property in Southwark?', - responses: [{value: 'Yes'}], - metadata: {autoAnswered: true, sectionName: 'The property'}, + 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'}, + 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'}, + 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'}, + responses: [ + { + value: 'Entertainment', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'The property', + }, }, { question: 'Have the works already started?', - responses: [{value: 'No'}], - metadata: {sectionName: 'About the project'}, + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, }, { question: 'Describe the project.', responses: [ { value: - 'Addition of solar panels in order to power the globe with green energy.', + 'Installation of solar panels on the roof of the globe theatre', }, ], - metadata: {sectionName: 'About the project'}, + metadata: { + sectionName: 'About the project', + }, }, { question: 'What type of property is it?', - responses: [{value: 'Commercial building'}], - metadata: {autoAnswered: true, sectionName: 'About the project'}, + 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'}, + 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'}, + 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'}], + responses: [ + { + value: 'Yes', + }, + ], metadata: { policyRefs: [ { @@ -366,7 +457,9 @@ export const priorApprovalSolarPanels: Schema = { responses: [ { value: 'No', - metadata: {flags: ['Planning permission / Permitted development']}, + metadata: { + flags: ['Planning permission / Permitted development'], + }, }, ], metadata: { @@ -384,11 +477,12 @@ export const priorApprovalSolarPanels: Schema = { responses: [ { value: 'No', - metadata: {flags: ['Planning permission / Permitted development']}, + metadata: { + flags: ['Planning permission / Permitted development'], + }, }, ], metadata: { - autoAnswered: true, policyRefs: [ { text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class J', @@ -403,11 +497,12 @@ export const priorApprovalSolarPanels: Schema = { responses: [ { value: 'No', - metadata: {flags: ['Planning permission / Permitted development']}, + metadata: { + flags: ['Planning permission / Permitted development'], + }, }, ], metadata: { - autoAnswered: true, policyRefs: [ { text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class J', @@ -419,39 +514,23 @@ export const priorApprovalSolarPanels: Schema = { }, { 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: 'Both pitched and flat'}], - metadata: {sectionName: 'About the project'}, - }, - { - question: 'Is the property in a conservation area?', - responses: [{value: 'No'}], + responses: [ + { + value: 'On roofs', + }, + ], metadata: { - autoAnswered: true, - policyRefs: [ - { - text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 S.2.P.14. .A.1 (c)', - url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14', - }, - ], sectionName: 'About the project', }, }, { - question: 'Is the property in a world heritage site?', - responses: [{value: 'No'}], + question: 'What type of roofs are they?', + responses: [ + { + value: 'Pitched', + }, + ], metadata: { - autoAnswered: true, - policyRefs: [ - { - text: 'The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class A.1 (c)', - url: 'https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14', - }, - ], sectionName: 'About the project', }, }, @@ -461,7 +540,9 @@ export const priorApprovalSolarPanels: Schema = { responses: [ { value: '0.2m or less', - metadata: {flags: ['Planning permission / Permitted development']}, + metadata: { + flags: ['Planning permission / Permitted development'], + }, }, ], metadata: { @@ -475,17 +556,19 @@ export const priorApprovalSolarPanels: Schema = { }, }, { - question: 'How high are the new solar panels compared to the flat roofs?', + question: 'How far are the new solar panels from the edge of the roof?', responses: [ { - value: '1m or less higher than the roof', - metadata: {flags: ['Planning permission / Permitted development']}, + 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 A', + 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', }, ], @@ -493,40 +576,30 @@ export const priorApprovalSolarPanels: Schema = { }, }, { - question: 'How far are the new solar panels from the edge of the roof?', + question: 'What do you want to install?', responses: [ { - value: '1m or more from the edge of the roof', - metadata: {flags: ['Planning permission / Permitted development']}, + value: 'Solar photovoltaics (PV)', }, ], 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: 'Between 50kW and 1,000kW (1 MW)', - metadata: {flags: ['Planning permission / Prior approval']}, + 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.3', + 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', }, ], @@ -538,7 +611,9 @@ export const priorApprovalSolarPanels: Schema = { responses: [ { value: 'OK', - metadata: {flags: ['Planning permission / Permitted development']}, + metadata: { + flags: ['Planning permission / Permitted development'], + }, }, ], metadata: { @@ -557,121 +632,486 @@ export const priorApprovalSolarPanels: Schema = { }, { question: 'What type of property is it?', - responses: [{value: 'Another use'}], - metadata: {sectionName: 'About the project'}, - }, + responses: [ + { + value: 'Another use', + }, + ], + metadata: { + sectionName: 'About the project', + }, + }, { question: 'Select your project', - responses: [{value: 'Install solar panels'}], - metadata: {sectionName: 'About the 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'}, + 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: 'Yes'}], - metadata: {autoAnswered: true, sectionName: 'About the project'}, + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About the project', + }, }, { - question: 'List all the changes involved in the project', - responses: [{value: 'Install solar panels'}], - metadata: {autoAnswered: true, 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: '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'}, + responses: [ + { + value: 'No', + }, + ], + metadata: { + sectionName: 'About you', + }, }, { question: 'Which of these best describes you?', - responses: [{value: 'Company'}], - metadata: {sectionName: 'About you'}, + responses: [ + { + value: 'Private individual', + }, + ], + metadata: { + sectionName: 'About you', + }, }, { question: 'Your contact details', responses: [ { - value: - "Mr William Shakespeare Lord Chamberlain's Men 2830407283 thebard@example.com", + value: 'Bill Shakespeare 012345678901 byanyothername@email.org', }, ], - metadata: {sectionName: 'About you'}, + metadata: { + sectionName: 'About you', + }, }, { question: 'Is your contact address the same as the property address?', - responses: [{value: 'Yes'}], - metadata: {sectionName: 'About you'}, + 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'}, + 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'}, + 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'}, + 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: "Manufacturer's specification document"}], - metadata: {sectionName: 'Upload drawings'}, - }, - { - question: 'Do you want to upload any photographs?', - responses: [{value: 'No'}], - metadata: {sectionName: 'Upload drawings'}, + responses: [ + { + value: 'Section drawing of the building', + }, + ], + metadata: { + sectionName: 'Upload drawings', + }, }, { - question: - 'Would you like to upload any additional drawings, documents or images?', - 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 planning application are you making?', - responses: [{value: 'Prior approval'}], - 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: 'What type of prior approval application is it?', - responses: [{value: 'Install or change solar panels'}], - metadata: {autoAnswered: true, sectionName: 'Check your application'}, + 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'}, + 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'}, + 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'}, + 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'}], + responses: [ + { + value: 'No', + }, + ], metadata: { policyRefs: [ { @@ -688,23 +1128,48 @@ export const priorApprovalSolarPanels: Schema = { }, { question: 'What type of prior approval application is it?', - responses: [{value: 'Install or change solar panels'}], - metadata: {autoAnswered: true, sectionName: 'Check your application'}, + 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'}, + 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'}, + 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'}], + responses: [ + { + value: 'No', + }, + ], metadata: { autoAnswered: true, policyRefs: [ @@ -717,29 +1182,51 @@ export const priorApprovalSolarPanels: Schema = { }, }, { - question: 'Which Local Planning authority is it?', - responses: [{value: 'Southwark'}], - metadata: {autoAnswered: true, sectionName: 'Check your application'}, + question: 'Check for multiple fees?', + responses: [ + { + value: 'No', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Check your application', + }, }, { - question: 'Describe your connection', + question: 'What type of application is it?', responses: [ { - value: - 'I think the King is but a man, as I am. The violet smells to him as it doth to me. The element shows to him as it doth to me. All his senses have but human conditions. His ceremonies laid by, in his nakedness he appears but a man.', + value: 'Prior approval', }, ], - metadata: {sectionName: 'Check your application'}, + 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: - 'I am related to, or partnered with, an elected member for Southwark Council', + value: 'None of the above apply to me', }, ], - metadata: {sectionName: 'Check your application'}, + metadata: { + sectionName: 'Check your application', + }, }, { question: 'I confirm that:', @@ -749,31 +1236,48 @@ export const priorApprovalSolarPanels: Schema = { 'The information contained in this application is truthful, accurate and complete, to the best of my knowledge', }, ], - metadata: {sectionName: 'Check your application'}, + metadata: { + sectionName: 'Check your application', + }, }, { question: 'Which Local Planning authority is it?', - responses: [{value: 'Southwark'}], - metadata: {autoAnswered: true, sectionName: 'Pay and submit'}, + responses: [ + { + value: 'Southwark', + }, + ], + metadata: { + autoAnswered: true, + sectionName: 'Pay and submit', + }, }, { - question: 'What type of prior approval application is it?', - responses: [{value: 'Install or change solar panels'}], - 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/5w5v8s8z/other.pdf', + name: 'https://api.editor.planx.dev/file/private/mq2iovsi/test%20document.pdf', type: [ { - value: 'otherDrawing', - description: 'Other - drawing', + value: 'sections.proposed', + description: 'Sections - proposed', }, ], }, { - name: 'https://api.editor.planx.dev/file/private/tbp4kiba/myPlans.pdf', + name: 'https://api.editor.planx.dev/file/private/czxk98ug/test%20document.pdf', type: [ { value: 'sitePlan.proposed', @@ -783,26 +1287,43 @@ export const priorApprovalSolarPanels: Schema = { }, ], metadata: { + id: 'dee911d0-48b4-438c-96b6-2bb12ae46335', organisation: 'SWK', - id: 'b18c301b-9d44-4c6c-8d27-5b5bf33c570b', + submittedAt: '2024-06-29T13:06:44.801Z', source: 'PlanX', service: { flowId: 'c6628103-c648-4663-81e1-bfa0a1a18340', - url: 'https://www.editor.planx.dev/southwark/apply-for-prior-approval/preview', + 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', }, - ], - recommended: [ { - value: 'sitePlan.proposed', - description: 'Site plan - proposed', + value: 'otherDocument', + description: 'Other - document', + }, + { + value: 'visualisations', + description: 'Visualisations', }, ], - optional: [], }, fee: { calculated: [ @@ -817,17 +1338,12 @@ export const priorApprovalSolarPanels: Schema = { ], payable: [ { - 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', - }, - ], + description: + '

This application does not qualify for any exemptions or reductions

', }, ], }, }, - submittedAt: '2023-10-02T00:00:00Z', schema: `https://theopensystemslab.github.io/digital-planning-data-schemas/${version}/schema.json`, }, }; diff --git a/examples/lawfulDevelopmentCertificate/existing.json b/examples/lawfulDevelopmentCertificate/existing.json index 7d502db6..f8f49c7f 100644 --- a/examples/lawfulDevelopmentCertificate/existing.json +++ b/examples/lawfulDevelopmentCertificate/existing.json @@ -288,8 +288,7 @@ { "value": "designated", "description": "Designated land", - "intersects": true, - "entities": [] + "intersects": true }, { "value": "nature.SAC", diff --git a/examples/listedBuildingConsent.json b/examples/listedBuildingConsent.json index 986a2e6f..86eac98e 100644 --- a/examples/listedBuildingConsent.json +++ b/examples/listedBuildingConsent.json @@ -101,8 +101,7 @@ { "value": "listed", "description": "Listed Building", - "intersects": true, - "entities": [] + "intersects": true }, { "value": "article4", @@ -131,8 +130,7 @@ { "value": "designated", "description": "Designated land", - "intersects": true, - "entities": [] + "intersects": true }, { "value": "nature.SAC", diff --git a/examples/planningPermission/major.json b/examples/planningPermission/major.json new file mode 100644 index 00000000..51677903 --- /dev/null +++ b/examples/planningPermission/major.json @@ -0,0 +1,2438 @@ +{ + "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": { + "value": "other.unsupported", + "description": "Unsupported Site" + }, + "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", + "description": "Tree Preservation Order (TPO) or zone", + "intersects": false + }, + { + "value": "flood", + "description": "Flood Risk Zone", + "intersects": false + }, + { + "value": "listed", + "description": "Listed Building", + "intersects": false + }, + { + "value": "article4", + "description": "Article 4 Direction area", + "intersects": false + }, + { + "value": "monument", + "description": "Site of a Scheduled Monument", + "intersects": false + }, + { + "value": "greenBelt", + "description": "Green Belt", + "intersects": true, + "entities": [ + { + "name": "Buckinghamshire", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/610030" + } + } + ] + }, + { + "value": "designated", + "description": "Designated land", + "intersects": false + }, + { + "value": "nature.SAC", + "description": "Special Area of Conservation (SAC)", + "intersects": false + }, + { + "value": "nature.SPA", + "description": "Special Protection Area (SPA)", + "intersects": false + }, + { + "value": "nature.ASNW", + "description": "Ancient Semi-Natural Woodland (ASNW)", + "intersects": false + }, + { + "value": "nature.SSSI", + "description": "Site of Special Scientific Interest (SSSI)", + "intersects": false + }, + { + "value": "brownfieldSite", + "description": "Brownfield site", + "intersects": false + }, + { + "value": "designated.WHS", + "description": "UNESCO World Heritage Site or buffer zone", + "intersects": false + }, + { + "value": "registeredPark", + "description": "Historic Park or Garden", + "intersects": false + }, + { + "value": "designated.AONB", + "description": "Area of Outstanding Natural Beauty (AONB)", + "intersects": false + }, + { + "value": "nature.ramsarSite", + "description": "Ramsar site", + "intersects": false + }, + { + "value": "designated.nationalPark", + "description": "National Park", + "intersects": false + }, + { + "value": "designated.conservationArea", + "description": "Conservation Area", + "intersects": false + }, + { + "value": "designated.nationalPark.broads", + "description": "National Park - 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 + } + }, + "flood": { + "20mFromWatercourse": false, + "increasedRiskElsewhere": false + }, + "trees": { + "present": false, + "adjacent": true + } + }, + "application": { + "type": { + "value": "pp.full.major", + "description": "Planning Permission - Major 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": [ + { + "value": "new.residential.dwelling", + "description": "Build new homes" + }, + { + "value": "alter.surfaces.parking", + "description": "Add a driveway or parking area" + }, + { + "value": "alter.highways.access", + "description": "Create a point of access to a highway" + } + ], + "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": { + "value": "house", + "description": "House" + }, + "tenure": { + "value": "MH", + "description": "Market housing" + }, + "bedrooms": 3, + "identicalUnits": 10 + }, + { + "type": { + "value": "house", + "description": "House" + }, + "tenure": { + "value": "MH", + "description": "Market housing" + }, + "bedrooms": 4, + "identicalUnits": 5 + }, + { + "type": { + "value": "flat", + "description": "Flat" + }, + "tenure": { + "value": "SAIR", + "description": "Social, affordable or interim rent" + }, + "bedrooms": 1, + "identicalUnits": 8 + }, + { + "type": { + "value": "house", + "description": "House" + }, + "tenure": { + "value": "SAIR", + "description": "Social, affordable or interim rent" + }, + "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": [ + { + "value": "relevantInformation", + "description": "Information the applicant considers relevant to the application" + } + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/a8i079zc/Elevations-best-practice.pdf", + "type": [ + { + "value": "necessaryInformation", + "description": "Information the authority considers necessary for the application" + } + ] + } + ], + "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/planningPermission/minor.json b/examples/planningPermission/minor.json new file mode 100644 index 00000000..f2f6cb0f --- /dev/null +++ b/examples/planningPermission/minor.json @@ -0,0 +1,1698 @@ +{ + "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": { + "value": "commercial.community.hall", + "description": "Public / Village Hall / Other Community Facility" + }, + "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", + "description": "Tree Preservation Order (TPO) or zone", + "intersects": false + }, + { + "value": "flood", + "description": "Flood Risk Zone", + "intersects": false + }, + { + "value": "listed", + "description": "Listed Building", + "intersects": false + }, + { + "value": "article4", + "description": "Article 4 Direction area", + "intersects": false + }, + { + "value": "monument", + "description": "Site of a Scheduled Monument", + "intersects": false + }, + { + "value": "greenBelt", + "description": "Green Belt", + "intersects": false + }, + { + "value": "designated", + "description": "Designated land", + "intersects": false + }, + { + "value": "nature.SAC", + "description": "Special Area of Conservation (SAC)", + "intersects": false + }, + { + "value": "nature.SPA", + "description": "Special Protection Area (SPA)", + "intersects": false + }, + { + "value": "nature.ASNW", + "description": "Ancient Semi-Natural Woodland (ASNW)", + "intersects": false + }, + { + "value": "nature.SSSI", + "description": "Site of Special Scientific Interest (SSSI)", + "intersects": false + }, + { + "value": "brownfieldSite", + "description": "Brownfield site", + "intersects": false + }, + { + "value": "designated.WHS", + "description": "UNESCO World Heritage Site or buffer zone", + "intersects": false + }, + { + "value": "registeredPark", + "description": "Historic Park or Garden", + "intersects": false + }, + { + "value": "designated.AONB", + "description": "Area of Outstanding Natural Beauty (AONB)", + "intersects": false + }, + { + "value": "nature.ramsarSite", + "description": "Ramsar site", + "intersects": false + }, + { + "value": "designated.nationalPark", + "description": "National Park", + "intersects": false + }, + { + "value": "designated.conservationArea", + "description": "Conservation Area", + "intersects": false + }, + { + "value": "designated.nationalPark.broads", + "description": "National Park - Broads", + "intersects": false + }, + { + "value": "road.classified", + "description": "Classified Road", + "intersects": true, + "entities": [ + { + "name": "Stock Lane - Classified Unnumbered", + "source": { + "text": "Ordnance Survey MasterMap Highways" + } + } + ] + } + ] + }, + "materials": { + "boundary": "black painted timber" + } + }, + "application": { + "type": { + "value": "pp.full.minor", + "description": "Planning Permission - Minor application" + }, + "fee": { + "calculated": 578, + "payable": 578, + "category": { + "one": 0, + "two": 0, + "three": 0, + "four": 0, + "five": 0, + "sixAndSeven": 0, + "eight": 0, + "nine": 0, + "ten": 0, + "eleven": { + "one": 0, + "two": 0 + }, + "twelve": { + "one": 0, + "two": 0 + }, + "thirteen": 0, + "fourteen": 578 + }, + "exemption": { + "disability": false, + "resubmission": false + }, + "reduction": { + "sports": false, + "parishCouncil": false, + "alternative": false + }, + "reference": { + "govPay": "j0pg5aq9slgp52n40k9b390u22" + } + }, + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } + }, + "preApp": { + "reference": "0123456789", + "date": "2020-01-01", + "officer": "Pete the Planning Person", + "summary": "Not provided" + } + }, + "proposal": { + "projectType": [ + { + "value": "changeOfUse", + "description": "Change the use of a building" + } + ], + "description": "Change of use from sui generis (top secret HQ of MI6 Section VIII) to home", + "date": {}, + "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": { + "value": "house", + "description": "House" + }, + "tenure": { + "value": "selfCustomBuild", + "description": "Self-build and custom build" + }, + "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": [ + { + "value": "relevantInformation", + "description": "Information the applicant considers relevant to the application" + } + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/vxui6fxw/Rooftype_pyramid%404x.png", + "type": [ + { + "value": "necessaryInformation", + "description": "Information the authority considers necessary for the application" + } + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/a8i079zc/Elevations-best-practice.pdf", + "type": [ + { + "value": "necessaryInformation", + "description": "Information the authority considers necessary for the application" + } + ] + } + ], + "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": [ + {} + ], + "category": { + "one": [], + "two": [], + "three": [], + "four": [], + "five": [], + "sixAndSeven": [], + "eight": [], + "nine": [], + "ten": [], + "eleven": { + "one": [] + }, + "twelve": { + "one": [], + "two": [] + }, + "thirteen": [], + "fourteen": [] + } + } + }, + "schema": "https://theopensystemslab.github.io/digital-planning-data-schemas/@next/schema.json" + } +} \ No newline at end of file diff --git a/examples/priorApproval/buildHomes.json b/examples/priorApproval/buildHomes.json new file mode 100644 index 00000000..7c15a692 --- /dev/null +++ b/examples/priorApproval/buildHomes.json @@ -0,0 +1,1910 @@ +{ + "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": { + "value": "commercial.office", + "description": "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", + "description": "Tree Preservation Order (TPO) or zone", + "intersects": false + }, + { + "value": "flood", + "description": "Flood Risk Zone", + "intersects": false + }, + { + "value": "listed", + "description": "Listed Building", + "intersects": false + }, + { + "value": "article4", + "description": "Article 4 Direction area", + "intersects": false + }, + { + "value": "monument", + "description": "Site of a Scheduled Monument", + "intersects": false + }, + { + "value": "greenBelt", + "description": "Green Belt", + "intersects": false + }, + { + "value": "designated", + "description": "Designated land", + "intersects": false + }, + { + "value": "nature.SAC", + "description": "Special Area of Conservation (SAC)", + "intersects": false + }, + { + "value": "nature.SPA", + "description": "Special Protection Area (SPA)", + "intersects": false + }, + { + "value": "nature.ASNW", + "description": "Ancient Semi-Natural Woodland (ASNW)", + "intersects": false + }, + { + "value": "nature.SSSI", + "description": "Site of Special Scientific Interest (SSSI)", + "intersects": false + }, + { + "value": "brownfieldSite", + "description": "Brownfield site", + "intersects": false + }, + { + "value": "designated.WHS", + "description": "UNESCO World Heritage Site or buffer zone", + "intersects": false + }, + { + "value": "registeredPark", + "description": "Historic Park or Garden", + "intersects": false + }, + { + "value": "designated.AONB", + "description": "Area of Outstanding Natural Beauty (AONB)", + "intersects": false + }, + { + "value": "nature.ramsarSite", + "description": "Ramsar site", + "intersects": false + }, + { + "value": "designated.nationalPark", + "description": "National Park", + "intersects": false + }, + { + "value": "designated.conservationArea", + "description": "Conservation Area", + "intersects": false + }, + { + "value": "designated.nationalPark.broads", + "description": "National Park - Broads", + "intersects": false + }, + { + "value": "road.classified", + "description": "Classified Road", + "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": { + "type": { + "value": "pa.part20.classAB", + "description": "Prior Approval - Build homes on an adjoining commercial or mixed use building" + }, + "fee": { + "calculated": 4510, + "payable": 0, + "category": { + "one": 0, + "two": 0, + "three": 0, + "four": 0, + "five": 0, + "sixAndSeven": 0, + "eight": 0, + "nine": 0, + "ten": 0, + "eleven": { + "one": 0, + "two": 0 + }, + "twelve": { + "one": 0, + "two": 0 + }, + "thirteen": 0, + "fourteen": 0 + }, + "exemption": { + "disability": false, + "resubmission": true + }, + "reduction": { + "sports": false, + "parishCouncil": false, + "alternative": false + } + }, + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } + } + }, + "proposal": { + "projectType": [ + { + "value": "new.residential.dwelling", + "description": "Build new homes" + } + ], + "description": "The addition of homes as upper storeys to the existing commercial premises.", + "date": {}, + "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": [ + { + "value": "noiseAssessment", + "description": "Noise assessment" + } + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/kk01qq8t/test%20document.pdf", + "type": [ + { + "value": "roofPlan.proposed", + "description": "Roof plan - proposed" + }, + { + "value": "sections.existing", + "description": "Sections - existing" + }, + { + "value": "sections.proposed", + "description": "Sections - proposed" + }, + { + "value": "floorPlan.existing", + "description": "Floor plan - existing" + }, + { + "value": "floorPlan.proposed", + "description": "Floor plan - proposed" + }, + { + "value": "elevations.existing", + "description": "Elevations - existing" + }, + { + "value": "elevations.proposed", + "description": "Elevations - proposed" + } + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/knu6huv7/test%20document.pdf", + "type": [ + { + "value": "sitePlan.proposed", + "description": "Site plan - 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/priorApproval/convertCommercialToHome.json b/examples/priorApproval/convertCommercialToHome.json new file mode 100644 index 00000000..0879845e --- /dev/null +++ b/examples/priorApproval/convertCommercialToHome.json @@ -0,0 +1,1686 @@ +{ + "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": { + "value": "commercial.retail.shop", + "description": "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", + "description": "Tree Preservation Order (TPO) or zone", + "intersects": false + }, + { + "value": "flood", + "description": "Flood Risk Zone", + "intersects": false + }, + { + "value": "listed", + "description": "Listed Building", + "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", + "description": "Article 4 Direction area", + "intersects": false + }, + { + "value": "monument", + "description": "Site of a Scheduled Monument", + "intersects": false + }, + { + "value": "greenBelt", + "description": "Green Belt", + "intersects": false + }, + { + "value": "designated", + "description": "Designated land", + "intersects": true + }, + { + "value": "nature.SAC", + "description": "Special Area of Conservation (SAC)", + "intersects": false + }, + { + "value": "nature.SPA", + "description": "Special Protection Area (SPA)", + "intersects": false + }, + { + "value": "nature.ASNW", + "description": "Ancient Semi-Natural Woodland (ASNW)", + "intersects": false + }, + { + "value": "nature.SSSI", + "description": "Site of Special Scientific Interest (SSSI)", + "intersects": false + }, + { + "value": "brownfieldSite", + "description": "Brownfield site", + "intersects": false + }, + { + "value": "designated.WHS", + "description": "UNESCO World Heritage Site or buffer zone", + "intersects": false + }, + { + "value": "listed.grade.I", + "description": "Listed Building - Grade I", + "intersects": false + }, + { + "value": "registeredPark", + "description": "Historic Park or Garden", + "intersects": false + }, + { + "value": "designated.AONB", + "description": "Area of Outstanding Natural Beauty (AONB)", + "intersects": false + }, + { + "value": "listed.grade.II", + "description": "Listed Building - Grade II", + "intersects": true + }, + { + "value": "listed.grade.II*", + "description": "Listed Building - Grade II*", + "intersects": false + }, + { + "value": "nature.ramsarSite", + "description": "Ramsar site", + "intersects": false + }, + { + "value": "designated.nationalPark", + "description": "National Park", + "intersects": false + }, + { + "value": "designated.conservationArea", + "description": "Conservation Area", + "intersects": true, + "entities": [ + { + "name": "Hackford Road", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/44000877" + } + } + ] + }, + { + "value": "designated.nationalPark.broads", + "description": "National Park - Broads", + "intersects": false + }, + { + "value": "road.classified", + "description": "Classified Road", + "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": { + "type": { + "value": "pa.part3.classMA", + "description": "Prior Approval - Convert a commercial building into a home or homes" + }, + "fee": { + "calculated": 258, + "payable": 258, + "category": { + "one": 0, + "two": 0, + "three": 0, + "four": 0, + "five": 0, + "sixAndSeven": 0, + "eight": 0, + "nine": 0, + "ten": 0, + "eleven": { + "one": 0, + "two": 0 + }, + "twelve": { + "one": 0, + "two": 0 + }, + "thirteen": 0, + "fourteen": 0 + }, + "exemption": { + "disability": false, + "resubmission": false + }, + "reduction": { + "sports": false, + "parishCouncil": false, + "alternative": false + }, + "reference": { + "govPay": "p88epskokjikus74eafr36tfc1" + } + }, + "leadDeveloper": { + "type": "overseasCompany", + "company": { + "name": "Impression Developments Inc.", + "registrationNumber": "12345679ABC" + } + }, + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } + } + }, + "proposal": { + "projectType": [ + { + "value": "changeOfUse", + "description": "Change the use of a building" + } + ], + "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": { + "value": "changeOfUse", + "description": "Change of use" + }, + "type": { + "value": "terraced", + "description": "Terraced home" + }, + "bedrooms": 3, + "habitableRooms": 7, + "area": { + "squareMetres": 300 + }, + "tenure": { + "value": "marketForRent", + "description": "Market for rent" + }, + "provider": { + "value": "private", + "description": "Private" + }, + "garden": false, + "sheltered": false, + "olderPersons": false, + "compliance": [ + { + "value": "m42", + "description": "Part M4(2) of the Building Regulations 2010" + }, + { + "value": "m432a", + "description": "Part M4(3)(2a) of the Building Regulations 2010" + }, + { + "value": "m432b", + "description": "Part M4(3)(2b) of the Building Regulations 2010" + } + ], + "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": [ + { + "value": "noiseAssessment", + "description": "Noise assessment" + } + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/2mrowm3t/test%20document.pdf", + "type": [ + { + "value": "usePlan.proposed", + "description": "Use plan - proposed" + }, + { + "value": "sitePlan.proposed", + "description": "Site plan - proposed" + } + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/eu61v4yk/test%20document.pdf", + "type": [ + { + "value": "sitePlan.existing", + "description": "Site plan - existing" + } + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/fd7o1wnh/test%20document.pdf", + "type": [ + { + "value": "sunlightAndDaylightReport", + "description": "Sunlight and daylight report" + } + ] + } + ], + "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/priorApproval/extendUniversity.json b/examples/priorApproval/extendUniversity.json new file mode 100644 index 00000000..a228c0a8 --- /dev/null +++ b/examples/priorApproval/extendUniversity.json @@ -0,0 +1,1819 @@ +{ + "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": { + "value": "commercial.education.university", + "description": "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", + "description": "Tree Preservation Order (TPO) or zone", + "intersects": false + }, + { + "value": "flood", + "description": "Flood Risk Zone", + "intersects": false + }, + { + "value": "listed", + "description": "Listed Building", + "intersects": false + }, + { + "value": "article4", + "description": "Article 4 Direction area", + "intersects": true, + "entities": [ + { + "name": "Basements", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/7010002613" + } + } + ] + }, + { + "value": "monument", + "description": "Site of a Scheduled Monument", + "intersects": false + }, + { + "value": "greenBelt", + "description": "Green Belt", + "intersects": false + }, + { + "value": "designated", + "description": "Designated land", + "intersects": true + }, + { + "value": "nature.SAC", + "description": "Special Area of Conservation (SAC)", + "intersects": false + }, + { + "value": "nature.SPA", + "description": "Special Protection Area (SPA)", + "intersects": false + }, + { + "value": "nature.ASNW", + "description": "Ancient Semi-Natural Woodland (ASNW)", + "intersects": false + }, + { + "value": "nature.SSSI", + "description": "Site of Special Scientific Interest (SSSI)", + "intersects": false + }, + { + "value": "brownfieldSite", + "description": "Brownfield site", + "intersects": false + }, + { + "value": "designated.WHS", + "description": "UNESCO World Heritage Site or buffer zone", + "intersects": false + }, + { + "value": "registeredPark", + "description": "Historic Park or Garden", + "intersects": false + }, + { + "value": "designated.AONB", + "description": "Area of Outstanding Natural Beauty (AONB)", + "intersects": false + }, + { + "value": "nature.ramsarSite", + "description": "Ramsar site", + "intersects": false + }, + { + "value": "designated.nationalPark", + "description": "National Park", + "intersects": false + }, + { + "value": "designated.conservationArea", + "description": "Conservation Area", + "intersects": true, + "entities": [ + { + "name": "Highgate Village", + "source": { + "text": "Planning Data", + "url": "https://www.planning.data.gov.uk/entity/44009654" + } + } + ] + }, + { + "value": "designated.nationalPark.broads", + "description": "National Park - Broads", + "intersects": false + }, + { + "value": "road.classified", + "description": "Classified Road", + "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": { + "type": { + "value": "pa.part7.classM", + "description": "Prior Approval - Extend a school, college, university, prison or hospital" + }, + "fee": { + "calculated": 120, + "payable": 120, + "category": { + "one": 0, + "two": 0, + "three": 0, + "four": 0, + "five": 0, + "sixAndSeven": 0, + "eight": 0, + "nine": 0, + "ten": 0, + "eleven": { + "one": 0, + "two": 0 + }, + "twelve": { + "one": 0, + "two": 0 + }, + "thirteen": 0, + "fourteen": 0 + }, + "exemption": { + "disability": false, + "resubmission": false + }, + "reduction": { + "sports": false, + "parishCouncil": false, + "alternative": false + }, + "reference": { + "govPay": "90u259k4b9qh4tn2h220ui2um3" + } + }, + "leadDeveloper": { + "type": "ukCompany", + "company": { + "name": "Fit For Cabbages Developments", + "registrationNumber": "12345679ABC" + } + }, + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } + } + }, + "proposal": { + "projectType": [ + { + "value": "extend", + "description": "Extend a building or add an outbuilding" + } + ], + "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": [ + { + "value": "otherDocument", + "description": "Other - document" + } + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/p3e01fea/test%20document.pdf", + "type": [ + { + "value": "sitePlan.proposed", + "description": "Site plan - proposed" + }, + { + "value": "elevations.existing", + "description": "Elevations - existing" + }, + { + "value": "elevations.proposed", + "description": "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/priorApproval/largerExtension.json b/examples/priorApproval/largerExtension.json new file mode 100644 index 00000000..d04319b8 --- /dev/null +++ b/examples/priorApproval/largerExtension.json @@ -0,0 +1,1572 @@ +{ + "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": { + "value": "residential.dwelling.house.detached", + "description": "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", + "description": "Tree Preservation Order (TPO) or zone", + "intersects": false + }, + { + "value": "flood", + "description": "Flood Risk Zone", + "intersects": false + }, + { + "value": "listed", + "description": "Listed Building", + "intersects": false + }, + { + "value": "article4", + "description": "Article 4 Direction area", + "intersects": false + }, + { + "value": "monument", + "description": "Site of a Scheduled Monument", + "intersects": false + }, + { + "value": "greenBelt", + "description": "Green Belt", + "intersects": false + }, + { + "value": "designated", + "description": "Designated land", + "intersects": false + }, + { + "value": "nature.SAC", + "description": "Special Area of Conservation (SAC)", + "intersects": false + }, + { + "value": "nature.SPA", + "description": "Special Protection Area (SPA)", + "intersects": false + }, + { + "value": "nature.ASNW", + "description": "Ancient Semi-Natural Woodland (ASNW)", + "intersects": false + }, + { + "value": "nature.SSSI", + "description": "Site of Special Scientific Interest (SSSI)", + "intersects": false + }, + { + "value": "brownfieldSite", + "description": "Brownfield site", + "intersects": false + }, + { + "value": "designated.WHS", + "description": "UNESCO World Heritage Site or buffer zone", + "intersects": false + }, + { + "value": "registeredPark", + "description": "Historic Park or Garden", + "intersects": false + }, + { + "value": "designated.AONB", + "description": "Area of Outstanding Natural Beauty (AONB)", + "intersects": false + }, + { + "value": "nature.ramsarSite", + "description": "Ramsar site", + "intersects": false + }, + { + "value": "designated.nationalPark", + "description": "National Park", + "intersects": false + }, + { + "value": "designated.conservationArea", + "description": "Conservation Area", + "intersects": false + }, + { + "value": "designated.nationalPark.broads", + "description": "National Park - Broads", + "intersects": false + }, + { + "value": "road.classified", + "description": "Classified Road", + "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": { + "type": { + "value": "pa.part1.classA", + "description": "Prior Approval - Larger extension to a house" + }, + "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": [ + { + "value": "extend.rear", + "description": "Add a rear or side extension (or conservatory)" + } + ], + "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": [ + { + "value": "sitePlan.proposed", + "description": "Site plan - proposed" + } + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/avilhq1j/elevations_existing_01.jpg", + "type": [ + { + "value": "elevations.existing", + "description": "Elevations - existing" + } + ] + }, + { + "name": "https://api.editor.planx.dev/file/private/tis6f8hh/elevations_proposed_01.jpg", + "type": [ + { + "value": "elevations.proposed", + "description": "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/priorApproval/solarPanels.json b/examples/priorApproval/solarPanels.json index 46ae8b06..a9644fed 100644 --- a/examples/priorApproval/solarPanels.json +++ b/examples/priorApproval/solarPanels.json @@ -1,49 +1,17 @@ { "data": { - "application": { - "type": { - "value": "pa.part14.classJ", - "description": "Prior Approval - Install or change solar panels" - }, - "fee": { - "calculated": 120, - "payable": 120, - "exemption": { - "disability": false, - "resubmission": false - }, - "reduction": { - "sports": false, - "parishCouncil": false, - "alternative": false - }, - "reference": { - "govPay": "sandbox-ref-789" - } - }, - "declaration": { - "accurate": true, - "connection": { - "value": "relation.electedMember", - "description": "I think the King is but a man, as I am. The violet smells to him as it doth to me. The element shows to him as it doth to me. All his senses have but human conditions. His ceremonies laid by, in his nakedness he appears but a man." - } - } - }, "user": { "role": "applicant" }, "applicant": { - "type": "company", + "type": "individual", "name": { - "first": "William", + "first": "Bill", "last": "Shakespeare" }, - "email": "thebard@example.com", + "email": "byanyothername@email.org", "phone": { - "primary": "2830407283" - }, - "company": { - "name": "Lord Chamberlain's Men" + "primary": "012345678901" }, "address": { "sameAsSiteAddress": true @@ -54,212 +22,269 @@ }, "property": { "address": { - "latitude": 51.5081109, - "longitude": -0.0965974, + "latitude": 51.5081124, + "longitude": -0.0965717, "x": 532192, "y": 180515, "title": "INTERNATIONAL SHAKESPEARE GLOBE CENTRE LTD, SHAKESPEARE GLOBE THEATRE, 21, NEW GLOBE WALK, LONDON", - "singleLine": "INTERNATIONAL SHAKESPEARE GLOBE CENTRE LTD, SHAKESPEARE GLOBE THEATRE, 21, NEW GLOBE WALK, LONDON, SE1 9DT", "source": "Ordnance Survey", "uprn": "200003377200", "usrn": "22503078", - "pao": "21", + "pao": "21SHAKESPEARE GLOBE THEATRE", "street": "NEW GLOBE WALK", "town": "LONDON", - "postcode": "SE1 9DT" + "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": { + "value": "commercial.leisure.entertainment", + "description": "Bingo Hall / Cinema / Conference / Exhibition Centre / Theatre / Concert Hall" }, "boundary": { "site": { "type": "Feature", "geometry": { - "type": "Polygon", + "type": "MultiPolygon", "coordinates": [ [ [ - -0.0967472791671659, - 51.50830340605074 - ], - [ - -0.09676337242125525, - 51.50830507546084 - ], - [ - -0.09689748287199977, - 51.50831926544436 - ], - [ - -0.09693503379820824, - 51.50790775412855 - ], - [ - -0.09666681289671919, - 51.50789439872946 - ], - [ - -0.09645719784644384, - 51.507889747624404 - ], - [ - -0.09639290535660058, - 51.50828278342658 - ], - [ - -0.0967472791671659, - 51.50830340605074 + [ + -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": null + "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.152757, - "squareMetres": 1527.57 + "hectares": 0.424414, + "squareMetres": 4244.14 } }, - "planning": { - "sources": [ - "https://api.editor.planx.dev/gis/southwark?geom=POLYGON+%28%28-0.0967472791671659+51.50830340605074%2C+-0.09676337242125525+51.50830507546084%2C+-0.09689748287199977+51.50831926544436%2C+-0.09693503379820824+51.50790775412855%2C+-0.09666681289671919+51.50789439872946%2C+-0.09645719784644384+51.507889747624404%2C+-0.09639290535660058+51.50828278342658%2C+-0.0967472791671659+51.50830340605074%29%29&analytics=false&sessionId=b18c301b-9d44-4c6c-8d27-5b5bf33c570b", - "https://api.editor.planx.dev/roads?usrn=22503078" - ], - "designations": [ - { - "value": "article4", - "description": "Article 4 Direction area", - "intersects": true, - "entities": [ - { - "name": "Central Activities Zone", - "description": "Change of use from offices to dwelling houses is restricted", - "source": { - "text": "Planning Data", - "url": "https://www.planning.data.gov.uk/entity/7010000942" - } - }, - { - "name": "Central Activities Zone", - "description": "Demolition of commercial buildings and construction of new dwellinghouses is restricted", - "source": { - "text": "Planning Data", - "url": "https://www.planning.data.gov.uk/entity/7010000944" - } - }, - { - "name": "Bankside and Borough District Town Centre", - "description": "Demolition of commercial buildings and construction of new dwellinghouses is restricted", - "source": { - "text": "Planning Data", - "url": "https://www.planning.data.gov.uk/entity/7010001042" - } - }, - { - "name": "Central Activities Zone", - "description": "Change of use from Class E to residential is restricted", - "source": { - "text": "Planning Data", - "url": "https://www.planning.data.gov.uk/entity/7010001055" - } - }, - { - "name": "Bankside and Borough District Town Centre", - "description": "Change of use from Class E to residential is restricted", - "source": { - "text": "Planning Data", - "url": "https://www.planning.data.gov.uk/entity/7010001153" - } - } - ] - }, - { - "value": "article4.caz", - "description": "Central Activities Zone (CAZ)", - "intersects": true, - "entities": [] - }, - { - "value": "tpo", - "description": "Tree Preservation Order (TPO) or zone", - "intersects": false - }, - { - "value": "listed", - "description": "Listed Building", - "intersects": false - }, - { - "value": "monument", - "description": "Site of a Scheduled Monument", - "intersects": false - }, - { - "value": "designated", - "description": "Designated land", - "intersects": false - }, - { - "value": "nature.SAC", - "description": "Special Area of Conservation (SAC)", - "intersects": false - }, - { - "value": "nature.ASNW", - "description": "Ancient Semi-Natural Woodland (ASNW)", - "intersects": false - }, - { - "value": "nature.SSSI", - "description": "Site of Special Scientific Interest (SSSI)", - "intersects": false - }, - { - "value": "locallyListed", - "description": "Locally Listed Building", - "intersects": false - }, - { - "value": "nature.SPA", - "description": "Special Protection Area (SPA)", - "intersects": false - }, - { - "value": "designated.WHS", - "description": "UNESCO World Heritage Site or buffer zone", - "intersects": false - }, - { - "value": "registeredPark", - "description": "Historic Park or Garden", - "intersects": false - }, - { - "value": "designated.AONB", - "description": "Area of Outstanding Natural Beauty (AONB)", - "intersects": false - }, - { - "value": "designated.conservationArea", - "description": "Conservation Area", - "intersects": false + "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": { + "type": { + "value": "pa.part14.classJ", + "description": "Prior Approval - Install or change solar panels" + }, + "fee": { + "calculated": 120, + "payable": 120, + "category": { + "one": 0, + "two": 0, + "three": 0, + "four": 0, + "five": 0, + "sixAndSeven": 0, + "eight": 0, + "nine": 0, + "ten": 0, + "eleven": { + "one": 0, + "two": 0 }, - { - "value": "designated.nationalPark.broads", - "description": "National Park - Broads", - "intersects": false + "twelve": { + "one": 0, + "two": 0 }, - { - "value": "road.classified", - "description": "Classified Road", - "intersects": false - } - ] + "thirteen": 0, + "fourteen": 0 + }, + "exemption": { + "disability": false, + "resubmission": false + }, + "reduction": { + "sports": false, + "parishCouncil": false, + "alternative": false + }, + "reference": { + "govPay": "mfm6s5irae9bh5g75p3ks5opng" + } }, - "localAuthorityDistrict": [ - "Southwark" - ], - "region": "London", - "type": { - "value": "commercial.leisure.entertainment", - "description": "Bingo Hall / Cinema / Conference / Exhibition Centre / Theatre / Concert Hall" + "declaration": { + "accurate": true, + "connection": { + "value": "none" + } } }, "proposal": { @@ -269,54 +294,204 @@ "description": "Install solar panels" } ], - "description": "@todo not provided in Prior Approval", + "description": "Not provided", + "date": { + "start": "2024-07-28", + "completion": "2030-07-28" + }, "boundary": { "site": { "type": "Feature", "geometry": { - "type": "Polygon", + "type": "MultiPolygon", "coordinates": [ [ [ - -0.0967472791671659, - 51.50830340605074 - ], - [ - -0.09676337242125525, - 51.50830507546084 - ], - [ - -0.09689748287199977, - 51.50831926544436 - ], - [ - -0.09693503379820824, - 51.50790775412855 - ], - [ - -0.09666681289671919, - 51.50789439872946 - ], - [ - -0.09645719784644384, - 51.507889747624404 - ], - [ - -0.09639290535660058, - 51.50828278342658 - ], - [ - -0.0967472791671659, - 51.50830340605074 + [ + -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": null + "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.152757, - "squareMetres": 1527.57 + "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 } } } @@ -391,7 +566,7 @@ "question": "Describe the project.", "responses": [ { - "value": "Addition of solar panels in order to power the globe with green energy." + "value": "Installation of solar panels on the roof of the globe theatre" } ], "metadata": { @@ -489,7 +664,6 @@ } ], "metadata": { - "autoAnswered": true, "policyRefs": [ { "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class J", @@ -512,7 +686,6 @@ } ], "metadata": { - "autoAnswered": true, "policyRefs": [ { "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class J", @@ -537,7 +710,7 @@ "question": "What type of roofs are they?", "responses": [ { - "value": "Both pitched and flat" + "value": "Pitched" } ], "metadata": { @@ -545,17 +718,21 @@ } }, { - "question": "Is the property in a conservation area?", + "question": "How far do the new solar panels stick out from the pitched roofs?", "responses": [ { - "value": "No" + "value": "0.2m or less", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } } ], "metadata": { - "autoAnswered": true, "policyRefs": [ { - "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 S.2.P.14. .A.1 (c)", + "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" } ], @@ -563,17 +740,21 @@ } }, { - "question": "Is the property in a world heritage site?", + "question": "How far are the new solar panels from the edge of the roof?", "responses": [ { - "value": "No" + "value": "1m or more from the edge of the roof", + "metadata": { + "flags": [ + "Planning permission / Permitted development" + ] + } } ], "metadata": { - "autoAnswered": true, "policyRefs": [ { - "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class A.1 (c)", + "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" } ], @@ -581,13 +762,24 @@ } }, { - "question": "How far do the new solar panels stick out from the pitched roofs?", + "question": "What do you want to install?", "responses": [ { - "value": "0.2m or less", + "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 / Permitted development" + "Planning permission / Prior approval" ] } } @@ -603,10 +795,10 @@ } }, { - "question": "How high are the new solar panels compared to the flat roofs?", + "question": "The solar panels must be removed when no longer needed.", "responses": [ { - "value": "1m or less higher than the roof", + "value": "OK", "metadata": { "flags": [ "Planning permission / Permitted development" @@ -618,39 +810,107 @@ "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" + "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": "How far are the new solar panels from the edge of the roof?", + "question": "What type of property is it?", "responses": [ { - "value": "1m or more from the edge of the roof", - "metadata": { - "flags": [ - "Planning permission / Permitted development" - ] - } + "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": "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" + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" } ], "sectionName": "About the project" } }, { - "question": "What do you want to install?", + "question": "Do you know the title number of the property?", "responses": [ { - "value": "Solar photovoltaics (PV)" + "value": "Yes" } ], "metadata": { @@ -658,58 +918,44 @@ } }, { - "question": "What is the total capacity of all solar photovoltaics (PV)?", + "question": "What is the title number of the property?", "responses": [ { - "value": "Between 50kW and 1,000kW (1 MW)", - "metadata": { - "flags": [ - "Planning permission / Prior approval" - ] - } + "value": "24/12345/FUL" } ], "metadata": { "policyRefs": [ { - "text": "The Town and Country Planning (General Permitted Development) (England) Order 2015 Schedule 2, Part 14, Class J.3", - "url": "https://www.legislation.gov.uk/uksi/2015/596/schedule/2/part/14" + "text": "Greater London Authority Act 1999", + "url": "https://www.legislation.gov.uk/ukpga/1999/29/section/346" } ], "sectionName": "About the project" } }, { - "question": "The solar panels must be removed when no longer needed.", + "question": "Does the property have an Energy Performance Certificate (EPC)?", "responses": [ { - "value": "OK", - "metadata": { - "flags": [ - "Planning permission / Permitted development" - ] - } + "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" + "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 property is it?", + "question": "Enter the reference number (RRN) from the most recent EPC", "responses": [ { - "value": "Another use" + "value": "1234-1234-1234-1234" } ], "metadata": { @@ -717,30 +963,53 @@ } }, { - "question": "Select your project", + "question": "What type of application is this?", "responses": [ { - "value": "Install solar panels" + "value": "Prior approval" } ], "metadata": { + "autoAnswered": true, "sectionName": "About the project" } }, { - "question": "What type of application is being applied for?", + "question": "When are the works planned to start?", "responses": [ { - "value": "Part 14 Class J" + "value": "2024-07-28" } ], "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": "Is the property subject to any Article 4 directions?", + "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" @@ -752,29 +1021,90 @@ } }, { - "question": "List all the changes involved in the project", + "question": "What is the gross internal floor area to be added?", "responses": [ { - "value": "Install solar panels" + "value": "0" } ], "metadata": { - "autoAnswered": true, "sectionName": "About the project" } }, { - "question": "What type of prior approval application is it?", + "question": "Do the changes involve creating any new bedrooms or bathrooms?", "responses": [ { - "value": "Install or change solar panels" + "value": "No" } ], "metadata": { - "autoAnswered": true, "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": [ @@ -790,7 +1120,7 @@ "question": "Which of these best describes you?", "responses": [ { - "value": "Company" + "value": "Private individual" } ], "metadata": { @@ -801,7 +1131,7 @@ "question": "Your contact details", "responses": [ { - "value": "Mr William Shakespeare Lord Chamberlain's Men 2830407283 thebard@example.com" + "value": "Bill Shakespeare 012345678901 byanyothername@email.org" } ], "metadata": { @@ -812,7 +1142,7 @@ "question": "Is your contact address the same as the property address?", "responses": [ { - "value": "Yes" + "value": "No" } ], "metadata": { @@ -820,10 +1150,10 @@ } }, { - "question": "We may need to visit the site to assess your application. If we do, who should we contact to arrange the visit?", + "question": "Your contact address", "responses": [ { - "value": "Me, the applicant" + "value": "12 Sonnet Street, Stratford upon Avon, TH334RD" } ], "metadata": { @@ -831,22 +1161,32 @@ } }, { - "question": "What type of prior approval application is it?", + "question": "Can a planning officer see the works from public land?", "responses": [ { - "value": "Install or change solar panels" + "value": "Yes, it's visible from the road or somewhere else" } ], "metadata": { - "autoAnswered": true, - "sectionName": "Upload drawings" + "sectionName": "About you" } }, { - "question": "Where will the solar panels be installed?", + "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": "On roofs" + "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": { @@ -855,21 +1195,22 @@ } }, { - "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?", + "question": "Where will the solar panels be installed?", "responses": [ { - "value": "Manufacturer's specification document" + "value": "On roofs" } ], "metadata": { + "autoAnswered": true, "sectionName": "Upload drawings" } }, { - "question": "Do you want to upload any photographs?", + "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": "No" + "value": "Section drawing of the building" } ], "metadata": { @@ -877,18 +1218,19 @@ } }, { - "question": "Would you like to upload any additional drawings, documents or images?", + "question": "Is this for submission or information only?", "responses": [ { - "value": "No" + "value": "Submission" } ], "metadata": { + "autoAnswered": true, "sectionName": "Upload drawings" } }, { - "question": "What type of planning application are you making?", + "question": "What type of application is it?", "responses": [ { "value": "Prior approval" @@ -1022,10 +1364,22 @@ } }, { - "question": "Which Local Planning authority is it?", + "question": "Check for multiple fees?", "responses": [ { - "value": "Southwark" + "value": "No" + } + ], + "metadata": { + "autoAnswered": true, + "sectionName": "Check your application" + } + }, + { + "question": "What type of application is it?", + "responses": [ + { + "value": "Prior approval" } ], "metadata": { @@ -1034,13 +1388,14 @@ } }, { - "question": "Describe your connection", + "question": "Which Local Planning authority is it?", "responses": [ { - "value": "I think the King is but a man, as I am. The violet smells to him as it doth to me. The element shows to him as it doth to me. All his senses have but human conditions. His ceremonies laid by, in his nakedness he appears but a man." + "value": "Southwark" } ], "metadata": { + "autoAnswered": true, "sectionName": "Check your application" } }, @@ -1048,7 +1403,7 @@ "question": "Connections with Southwark Council", "responses": [ { - "value": "I am related to, or partnered with, an elected member for Southwark Council" + "value": "None of the above apply to me" } ], "metadata": { @@ -1079,7 +1434,7 @@ } }, { - "question": "What type of prior approval application is it?", + "question": "What type of prior approval application is it?application.type", "responses": [ { "value": "Install or change solar panels" @@ -1093,16 +1448,16 @@ ], "files": [ { - "name": "https://api.editor.planx.dev/file/private/5w5v8s8z/other.pdf", + "name": "https://api.editor.planx.dev/file/private/mq2iovsi/test%20document.pdf", "type": [ { - "value": "otherDrawing", - "description": "Other - drawing" + "value": "sections.proposed", + "description": "Sections - proposed" } ] }, { - "name": "https://api.editor.planx.dev/file/private/tbp4kiba/myPlans.pdf", + "name": "https://api.editor.planx.dev/file/private/czxk98ug/test%20document.pdf", "type": [ { "value": "sitePlan.proposed", @@ -1112,26 +1467,43 @@ } ], "metadata": { + "id": "dee911d0-48b4-438c-96b6-2bb12ae46335", "organisation": "SWK", - "id": "b18c301b-9d44-4c6c-8d27-5b5bf33c570b", + "submittedAt": "2024-06-29T13:06:44.801Z", "source": "PlanX", "service": { "flowId": "c6628103-c648-4663-81e1-bfa0a1a18340", - "url": "https://www.editor.planx.dev/southwark/apply-for-prior-approval/preview", + "url": "https://editor.planx.uk/southwark/apply-for-prior-approval/published", "files": { "required": [ - { - "value": "otherDrawing", - "description": "Other - drawing" - } - ], - "recommended": [ { "value": "sitePlan.proposed", "description": "Site plan - proposed" + }, + { + "value": "sections.proposed", + "description": "Sections - proposed" } ], - "optional": [] + "recommended": [], + "optional": [ + { + "value": "photographs.existing", + "description": "Photographs - existing" + }, + { + "value": "otherDrawing", + "description": "Other - drawing" + }, + { + "value": "otherDocument", + "description": "Other - document" + }, + { + "value": "visualisations", + "description": "Visualisations" + } + ] }, "fee": { "calculated": [ @@ -1146,17 +1518,11 @@ ], "payable": [ { - "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" - } - ] + "description": "

This application does not qualify for any exemptions or reductions

" } ] } }, - "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/package.json b/package.json index 20d9bdd3..7c8073ea 100644 --- a/package.json +++ b/package.json @@ -20,16 +20,16 @@ "devDependencies": { "@types/geojson": "^7946.0.14", "@types/node": "18.16.1", - "gts": "^5.3.0", + "gts": "^5.3.1", "husky": "^8.0.0", "jsonschema": "^1.4.1", - "typescript": "~5.4.5", + "typescript": "~5.5.2", "vitest": "^1.6.0" }, "dependencies": { - "ajv": "^8.14.0", + "ajv": "^8.16.0", "ajv-formats": "^2.1.1", - "ts-json-schema-generator": "^2.2.0", + "ts-json-schema-generator": "^2.3.0", "ts-node": "^10.9.2" }, "pnpm": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8ba47c89..bf7cf6c0 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,4 +1,4 @@ -lockfileVersion: '6.0' +lockfileVersion: '9.0' settings: autoInstallPeers: true @@ -7,585 +7,387 @@ settings: overrides: vite@>=5.0.0 <=5.0.11: '>=5.0.12' -dependencies: - ajv: - specifier: ^8.14.0 - version: 8.14.0 - ajv-formats: - specifier: ^2.1.1 - version: 2.1.1(ajv@8.14.0) - ts-json-schema-generator: - specifier: ^2.2.0 - version: 2.2.0 - ts-node: - specifier: ^10.9.2 - version: 10.9.2(@types/node@18.16.1)(typescript@5.4.5) - -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.0 - version: 5.3.0(typescript@5.4.5) - husky: - specifier: ^8.0.0 - version: 8.0.0 - jsonschema: - specifier: ^1.4.1 - version: 1.4.1 - typescript: - specifier: ~5.4.5 - version: 5.4.5 - vitest: - specifier: ^1.6.0 - version: 1.6.0(@types/node@18.16.1) +importers: -packages: + .: + dependencies: + ajv: + specifier: ^8.16.0 + version: 8.16.0 + ajv-formats: + specifier: ^2.1.1 + version: 2.1.1(ajv@8.16.0) + 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.2) + 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.2) + husky: + specifier: ^8.0.0 + version: 8.0.0 + jsonschema: + specifier: ^1.4.1 + version: 1.4.1 + typescript: + specifier: ~5.5.2 + version: 5.5.2 + vitest: + specifier: ^1.6.0 + version: 1.6.0(@types/node@18.16.1) - /@aashutoshrathi/word-wrap@1.2.6: - resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} - engines: {node: '>=0.10.0'} - dev: true +packages: - /@babel/code-frame@7.23.5: - resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==} + '@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.23.4 - chalk: 2.4.2 - dev: true - /@babel/helper-validator-identifier@7.22.20: - resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} + '@babel/helper-validator-identifier@7.24.7': + resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} engines: {node: '>=6.9.0'} - dev: true - /@babel/highlight@7.23.4: - resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} + '@babel/highlight@7.24.7': + resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-validator-identifier': 7.22.20 - chalk: 2.4.2 - js-tokens: 4.0.0 - 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.20.2: - resolution: {integrity: sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==} + '@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.20.2: - resolution: {integrity: sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==} + '@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.20.2: - resolution: {integrity: sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==} + '@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.20.2: - resolution: {integrity: sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==} + '@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.20.2: - resolution: {integrity: sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==} + '@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.20.2: - resolution: {integrity: sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==} + '@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.20.2: - resolution: {integrity: sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==} + '@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.20.2: - resolution: {integrity: sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==} + '@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.20.2: - resolution: {integrity: sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==} + '@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.20.2: - resolution: {integrity: sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==} + '@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.20.2: - resolution: {integrity: sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==} + '@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.20.2: - resolution: {integrity: sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==} + '@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.20.2: - resolution: {integrity: sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==} + '@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.20.2: - resolution: {integrity: sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==} + '@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.20.2: - resolution: {integrity: sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==} + '@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.20.2: - resolution: {integrity: sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==} + '@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.20.2: - resolution: {integrity: sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==} + '@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.20.2: - resolution: {integrity: sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==} + '@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.20.2: - resolution: {integrity: sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==} + '@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.20.2: - resolution: {integrity: sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==} + '@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.20.2: - resolution: {integrity: sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==} + '@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.20.2: - resolution: {integrity: sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==} + '@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.20.2: - resolution: {integrity: sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==} + '@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@8.53.0): + '@eslint-community/eslint-utils@4.4.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.53.0 - eslint-visitor-keys: 3.4.3 - dev: true - /@eslint-community/regexpp@4.10.0: - resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} + '@eslint-community/regexpp@4.10.1': + resolution: {integrity: sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA==} 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.4 - espree: 9.6.1 - globals: 13.24.0 - ignore: 5.3.0 - 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.53.0: - resolution: {integrity: sha512-Kn7K8dx/5U6+cT1yEhpX1w4PCSg0M+XyRILPgvwcEBjerFWCwQj5sbr3/VmxqV0JGHCBCzyd6LxypEuehypY1w==} + '@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'} - dependencies: - '@humanwhocodes/object-schema': 2.0.2 - debug: 4.3.4 - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - dev: true + deprecated: Use @eslint/config-array instead - /@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.2: - resolution: {integrity: sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==} - dev: true + '@humanwhocodes/object-schema@2.0.3': + resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} + deprecated: Use @eslint/object-schema instead - /@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 - /@jest/schemas@29.6.3: + '@jest/schemas@29.6.3': resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - dependencies: - '@sinclair/typebox': 0.27.8 - dev: true - /@jridgewell/resolve-uri@3.1.1: - resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} engines: {node: '>=6.0.0'} - dev: false - /@jridgewell/sourcemap-codec@1.4.15: + '@jridgewell/sourcemap-codec@1.4.15': resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} - /@jridgewell/trace-mapping@0.3.9: + '@jridgewell/trace-mapping@0.3.9': resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} - dependencies: - '@jridgewell/resolve-uri': 3.1.1 - '@jridgewell/sourcemap-codec': 1.4.15 - 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.0 - 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.16.4: - resolution: {integrity: sha512-GkhjAaQ8oUTOKE4g4gsZ0u8K/IHU1+2WQSgS1TwTcYvL+sjbaQjNHFXbOJ6kgqGHIO1DfUhI/Sphi9GkRT9K+Q==} + '@rollup/rollup-android-arm-eabi@4.18.0': + resolution: {integrity: sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==} cpu: [arm] os: [android] - requiresBuild: true - dev: true - optional: true - /@rollup/rollup-android-arm64@4.16.4: - resolution: {integrity: sha512-Bvm6D+NPbGMQOcxvS1zUl8H7DWlywSXsphAeOnVeiZLQ+0J6Is8T7SrjGTH29KtYkiY9vld8ZnpV3G2EPbom+w==} + '@rollup/rollup-android-arm64@4.18.0': + resolution: {integrity: sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==} cpu: [arm64] os: [android] - requiresBuild: true - dev: true - optional: true - /@rollup/rollup-darwin-arm64@4.16.4: - resolution: {integrity: sha512-i5d64MlnYBO9EkCOGe5vPR/EeDwjnKOGGdd7zKFhU5y8haKhQZTN2DgVtpODDMxUr4t2K90wTUJg7ilgND6bXw==} + '@rollup/rollup-darwin-arm64@4.18.0': + resolution: {integrity: sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==} cpu: [arm64] os: [darwin] - requiresBuild: true - dev: true - optional: true - /@rollup/rollup-darwin-x64@4.16.4: - resolution: {integrity: sha512-WZupV1+CdUYehaZqjaFTClJI72fjJEgTXdf4NbW69I9XyvdmztUExBtcI2yIIU6hJtYvtwS6pkTkHJz+k08mAQ==} + '@rollup/rollup-darwin-x64@4.18.0': + resolution: {integrity: sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==} cpu: [x64] os: [darwin] - requiresBuild: true - dev: true - optional: true - /@rollup/rollup-linux-arm-gnueabihf@4.16.4: - resolution: {integrity: sha512-ADm/xt86JUnmAfA9mBqFcRp//RVRt1ohGOYF6yL+IFCYqOBNwy5lbEK05xTsEoJq+/tJzg8ICUtS82WinJRuIw==} + '@rollup/rollup-linux-arm-gnueabihf@4.18.0': + resolution: {integrity: sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==} cpu: [arm] os: [linux] - requiresBuild: true - dev: true - optional: true - /@rollup/rollup-linux-arm-musleabihf@4.16.4: - resolution: {integrity: sha512-tJfJaXPiFAG+Jn3cutp7mCs1ePltuAgRqdDZrzb1aeE3TktWWJ+g7xK9SNlaSUFw6IU4QgOxAY4rA+wZUT5Wfg==} + '@rollup/rollup-linux-arm-musleabihf@4.18.0': + resolution: {integrity: sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==} cpu: [arm] os: [linux] - requiresBuild: true - dev: true - optional: true - /@rollup/rollup-linux-arm64-gnu@4.16.4: - resolution: {integrity: sha512-7dy1BzQkgYlUTapDTvK997cgi0Orh5Iu7JlZVBy1MBURk7/HSbHkzRnXZa19ozy+wwD8/SlpJnOOckuNZtJR9w==} + '@rollup/rollup-linux-arm64-gnu@4.18.0': + resolution: {integrity: sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==} cpu: [arm64] os: [linux] - requiresBuild: true - dev: true - optional: true - /@rollup/rollup-linux-arm64-musl@4.16.4: - resolution: {integrity: sha512-zsFwdUw5XLD1gQe0aoU2HVceI6NEW7q7m05wA46eUAyrkeNYExObfRFQcvA6zw8lfRc5BHtan3tBpo+kqEOxmg==} + '@rollup/rollup-linux-arm64-musl@4.18.0': + resolution: {integrity: sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==} cpu: [arm64] os: [linux] - requiresBuild: true - dev: true - optional: true - /@rollup/rollup-linux-powerpc64le-gnu@4.16.4: - resolution: {integrity: sha512-p8C3NnxXooRdNrdv6dBmRTddEapfESEUflpICDNKXpHvTjRRq1J82CbU5G3XfebIZyI3B0s074JHMWD36qOW6w==} + '@rollup/rollup-linux-powerpc64le-gnu@4.18.0': + resolution: {integrity: sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==} cpu: [ppc64] os: [linux] - requiresBuild: true - dev: true - optional: true - /@rollup/rollup-linux-riscv64-gnu@4.16.4: - resolution: {integrity: sha512-Lh/8ckoar4s4Id2foY7jNgitTOUQczwMWNYi+Mjt0eQ9LKhr6sK477REqQkmy8YHY3Ca3A2JJVdXnfb3Rrwkng==} + '@rollup/rollup-linux-riscv64-gnu@4.18.0': + resolution: {integrity: sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==} cpu: [riscv64] os: [linux] - requiresBuild: true - dev: true - optional: true - /@rollup/rollup-linux-s390x-gnu@4.16.4: - resolution: {integrity: sha512-1xwwn9ZCQYuqGmulGsTZoKrrn0z2fAur2ujE60QgyDpHmBbXbxLaQiEvzJWDrscRq43c8DnuHx3QorhMTZgisQ==} + '@rollup/rollup-linux-s390x-gnu@4.18.0': + resolution: {integrity: sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==} cpu: [s390x] os: [linux] - requiresBuild: true - dev: true - optional: true - /@rollup/rollup-linux-x64-gnu@4.16.4: - resolution: {integrity: sha512-LuOGGKAJ7dfRtxVnO1i3qWc6N9sh0Em/8aZ3CezixSTM+E9Oq3OvTsvC4sm6wWjzpsIlOCnZjdluINKESflJLA==} + '@rollup/rollup-linux-x64-gnu@4.18.0': + resolution: {integrity: sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==} cpu: [x64] os: [linux] - requiresBuild: true - dev: true - optional: true - /@rollup/rollup-linux-x64-musl@4.16.4: - resolution: {integrity: sha512-ch86i7KkJKkLybDP2AtySFTRi5fM3KXp0PnHocHuJMdZwu7BuyIKi35BE9guMlmTpwwBTB3ljHj9IQXnTCD0vA==} + '@rollup/rollup-linux-x64-musl@4.18.0': + resolution: {integrity: sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==} cpu: [x64] os: [linux] - requiresBuild: true - dev: true - optional: true - /@rollup/rollup-win32-arm64-msvc@4.16.4: - resolution: {integrity: sha512-Ma4PwyLfOWZWayfEsNQzTDBVW8PZ6TUUN1uFTBQbF2Chv/+sjenE86lpiEwj2FiviSmSZ4Ap4MaAfl1ciF4aSA==} + '@rollup/rollup-win32-arm64-msvc@4.18.0': + resolution: {integrity: sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==} cpu: [arm64] os: [win32] - requiresBuild: true - dev: true - optional: true - /@rollup/rollup-win32-ia32-msvc@4.16.4: - resolution: {integrity: sha512-9m/ZDrQsdo/c06uOlP3W9G2ENRVzgzbSXmXHT4hwVaDQhYcRpi9bgBT0FTG9OhESxwK0WjQxYOSfv40cU+T69w==} + '@rollup/rollup-win32-ia32-msvc@4.18.0': + resolution: {integrity: sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==} cpu: [ia32] os: [win32] - requiresBuild: true - dev: true - optional: true - /@rollup/rollup-win32-x64-msvc@4.16.4: - resolution: {integrity: sha512-YunpoOAyGLDseanENHmbFvQSfVL5BxW3k7hhy0eN4rb3gS/ct75dVD0EXOWIqFT/nE8XYW6LP6vz6ctKRi0k9A==} + '@rollup/rollup-win32-x64-msvc@4.18.0': + resolution: {integrity: sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==} cpu: [x64] os: [win32] - requiresBuild: true - dev: true - optional: true - /@sinclair/typebox@0.27.8: + '@sinclair/typebox@0.27.8': resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} - dev: true - /@tsconfig/node10@1.0.9: - resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==} - dev: false + '@tsconfig/node10@1.0.11': + resolution: {integrity: sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==} - /@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.6: - resolution: {integrity: sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==} - dev: true + '@types/semver@7.5.8': + resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} - /@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0)(eslint@8.53.0)(typescript@5.4.5): + '@typescript-eslint/eslint-plugin@5.62.0': resolution: {integrity: sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -595,25 +397,8 @@ packages: peerDependenciesMeta: typescript: optional: true - dependencies: - '@eslint-community/regexpp': 4.10.0 - '@typescript-eslint/parser': 5.62.0(eslint@8.53.0)(typescript@5.4.5) - '@typescript-eslint/scope-manager': 5.62.0 - '@typescript-eslint/type-utils': 5.62.0(eslint@8.53.0)(typescript@5.4.5) - '@typescript-eslint/utils': 5.62.0(eslint@8.53.0)(typescript@5.4.5) - debug: 4.3.4 - eslint: 8.53.0 - graphemer: 1.4.0 - ignore: 5.3.0 - natural-compare-lite: 1.4.0 - semver: 7.5.4 - tsutils: 3.21.0(typescript@5.4.5) - typescript: 5.4.5 - transitivePeerDependencies: - - supports-color - dev: true - /@typescript-eslint/parser@5.62.0(eslint@8.53.0)(typescript@5.4.5): + '@typescript-eslint/parser@5.62.0': resolution: {integrity: sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -622,26 +407,12 @@ 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.4.5) - debug: 4.3.4 - eslint: 8.53.0 - typescript: 5.4.5 - 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(eslint@8.53.0)(typescript@5.4.5): + '@typescript-eslint/type-utils@5.62.0': resolution: {integrity: sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -650,23 +421,12 @@ packages: peerDependenciesMeta: typescript: optional: true - dependencies: - '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.4.5) - '@typescript-eslint/utils': 5.62.0(eslint@8.53.0)(typescript@5.4.5) - debug: 4.3.4 - eslint: 8.53.0 - tsutils: 3.21.0(typescript@5.4.5) - typescript: 5.4.5 - 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@5.4.5): + '@typescript-eslint/typescript-estree@5.62.0': resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -674,490 +434,280 @@ packages: peerDependenciesMeta: typescript: optional: true - dependencies: - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/visitor-keys': 5.62.0 - debug: 4.3.4 - globby: 11.1.0 - is-glob: 4.0.3 - semver: 7.5.4 - tsutils: 3.21.0(typescript@5.4.5) - typescript: 5.4.5 - transitivePeerDependencies: - - supports-color - dev: true - /@typescript-eslint/utils@5.62.0(eslint@8.53.0)(typescript@5.4.5): + '@typescript-eslint/utils@5.62.0': 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.53.0) - '@types/json-schema': 7.0.15 - '@types/semver': 7.5.6 - '@typescript-eslint/scope-manager': 5.62.0 - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.4.5) - eslint: 8.53.0 - eslint-scope: 5.1.1 - semver: 7.5.4 - 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@1.6.0: + '@vitest/expect@1.6.0': resolution: {integrity: sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ==} - dependencies: - '@vitest/spy': 1.6.0 - '@vitest/utils': 1.6.0 - chai: 4.4.1 - dev: true - /@vitest/runner@1.6.0: + '@vitest/runner@1.6.0': resolution: {integrity: sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg==} - dependencies: - '@vitest/utils': 1.6.0 - p-limit: 5.0.0 - pathe: 1.1.2 - dev: true - /@vitest/snapshot@1.6.0: + '@vitest/snapshot@1.6.0': resolution: {integrity: sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==} - dependencies: - magic-string: 0.30.5 - pathe: 1.1.2 - pretty-format: 29.7.0 - dev: true - /@vitest/spy@1.6.0: + '@vitest/spy@1.6.0': resolution: {integrity: sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw==} - dependencies: - tinyspy: 2.2.0 - dev: true - /@vitest/utils@1.6.0: + '@vitest/utils@1.6.0': resolution: {integrity: sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==} - dependencies: - diff-sequences: 29.6.3 - estree-walker: 3.0.3 - loupe: 2.3.7 - pretty-format: 29.7.0 - dev: true - /acorn-jsx@5.3.2(acorn@8.11.3): + acorn-jsx@5.3.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - dependencies: - acorn: 8.11.3 - dev: true - /acorn-walk@8.3.2: - resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==} + acorn-walk@8.3.3: + resolution: {integrity: sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==} engines: {node: '>=0.4.0'} - /acorn@8.11.3: - resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} + acorn@8.12.0: + resolution: {integrity: sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==} engines: {node: '>=0.4.0'} hasBin: true - /ajv-formats@2.1.1(ajv@8.14.0): + ajv-formats@2.1.1: resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==} peerDependencies: ajv: ^8.0.0 peerDependenciesMeta: ajv: optional: true - dependencies: - ajv: 8.14.0 - 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.14.0: - resolution: {integrity: sha512-oYs1UUtO97ZO2lJ4bwnWeQW8/zvOIQLGKcvPTsWmvc2SYgBb+upuNS5NxoLaMU4h8Ju3Nbj6Cq8mD2LQoqVKFA==} - dependencies: - fast-deep-equal: 3.1.3 - json-schema-traverse: 1.0.0 - require-from-string: 2.0.2 - uri-js: 4.4.1 - dev: false + ajv@8.16.0: + resolution: {integrity: sha512-F0twR8U1ZU67JIEtekUcLkXkoO5mMMmgGD8sK/xUFzJ805jxHQl92hImFAqqXMyMYjSPOyUPAwHYhB72g5sTXw==} - /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@5.2.0: + ansi-styles@5.2.0: resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} engines: {node: '>=10'} - dev: true - /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@1.1.0: + assertion-error@1.1.0: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} - 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.2: - resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} - dependencies: - fill-range: 7.0.1 - dev: true - /cac@6.7.14: + builtins@5.1.0: + resolution: {integrity: sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==} + + 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@4.4.1: + chai@4.4.1: resolution: {integrity: sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==} engines: {node: '>=4'} - dependencies: - assertion-error: 1.1.0 - check-error: 1.0.3 - deep-eql: 4.1.3 - get-func-name: 2.0.2 - loupe: 2.3.7 - pathval: 1.1.1 - type-detect: 4.0.8 - 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@1.0.3: + check-error@1.0.3: resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} - dependencies: - get-func-name: 2.0.2 - 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.0.0: - resolution: {integrity: sha512-MwVNWlYjDTtOjX5PiD7o5pK0UrFU/OYgcJfjjK4RaHZETNtjJqrZa9Y9ds88+A+f+d5lv+561eZ+yCKoS3gbAA==} + 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: + confbox@0.1.7: + resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==} + + 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.4: - resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} + debug@4.3.5: + resolution: {integrity: sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==} engines: {node: '>=6.0'} peerDependencies: supports-color: '*' 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@4.1.3: - resolution: {integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==} + deep-eql@4.1.4: + resolution: {integrity: sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==} engines: {node: '>=6'} - dependencies: - type-detect: 4.0.8 - 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-sequences@29.6.3: + diff-sequences@29.6.3: resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - 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.20.2: - resolution: {integrity: sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==} + esbuild@0.21.5: + resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} engines: {node: '>=12'} hasBin: true - requiresBuild: true - optionalDependencies: - '@esbuild/aix-ppc64': 0.20.2 - '@esbuild/android-arm': 0.20.2 - '@esbuild/android-arm64': 0.20.2 - '@esbuild/android-x64': 0.20.2 - '@esbuild/darwin-arm64': 0.20.2 - '@esbuild/darwin-x64': 0.20.2 - '@esbuild/freebsd-arm64': 0.20.2 - '@esbuild/freebsd-x64': 0.20.2 - '@esbuild/linux-arm': 0.20.2 - '@esbuild/linux-arm64': 0.20.2 - '@esbuild/linux-ia32': 0.20.2 - '@esbuild/linux-loong64': 0.20.2 - '@esbuild/linux-mips64el': 0.20.2 - '@esbuild/linux-ppc64': 0.20.2 - '@esbuild/linux-riscv64': 0.20.2 - '@esbuild/linux-s390x': 0.20.2 - '@esbuild/linux-x64': 0.20.2 - '@esbuild/netbsd-x64': 0.20.2 - '@esbuild/openbsd-x64': 0.20.2 - '@esbuild/sunos-x64': 0.20.2 - '@esbuild/win32-arm64': 0.20.2 - '@esbuild/win32-ia32': 0.20.2 - '@esbuild/win32-x64': 0.20.2 - 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.53.0): + eslint-config-prettier@9.1.0: resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} hasBin: true peerDependencies: eslint: '>=7.0.0' - dependencies: - eslint: 8.53.0 - dev: true - /eslint-plugin-es@3.0.1(eslint@8.53.0): - resolution: {integrity: sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==} + eslint-plugin-es@4.1.0: + resolution: {integrity: sha512-GILhQTnjYE2WorX5Jyi5i4dz5ALWxBIdQECVQavL6s7cI76IZTDWleTHkxz/QT3kvcs2QlGHvKLYsSlPOlPXnQ==} engines: {node: '>=8.10.0'} peerDependencies: eslint: '>=4.19.1' - dependencies: - eslint: 8.53.0 - eslint-utils: 2.1.0 - regexpp: 3.2.0 - dev: true - /eslint-plugin-node@11.1.0(eslint@8.53.0): - resolution: {integrity: sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==} - engines: {node: '>=8.10.0'} + eslint-plugin-n@15.7.0: + resolution: {integrity: sha512-jDex9s7D/Qial8AGVIHq4W7NswpUD5DPDL2RH8Lzd9EloWUuvUkHfv4FRLMipH5q2UtyurorBkPeNi1wVWNh3Q==} + engines: {node: '>=12.22.0'} peerDependencies: - eslint: '>=5.16.0' - dependencies: - eslint: 8.53.0 - eslint-plugin-es: 3.0.1(eslint@8.53.0) - eslint-utils: 2.1.0 - ignore: 5.3.0 - minimatch: 3.1.2 - resolve: 1.22.8 - semver: 6.3.1 - dev: true + eslint: '>=7.0.0' - /eslint-plugin-prettier@5.1.3(eslint-config-prettier@9.1.0)(eslint@8.53.0)(prettier@3.1.1): + eslint-plugin-prettier@5.1.3: resolution: {integrity: sha512-C9GCVAs4Eq7ZC/XFQHITLiHJxQngdtraXaM+LoUFoFp/lHNl2Zn8f3WQbe9HvTBBQ9YnKFB0/2Ajdqwo5D1EAw==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: @@ -1170,1402 +720,811 @@ packages: optional: true eslint-config-prettier: optional: true - dependencies: - eslint: 8.53.0 - eslint-config-prettier: 9.1.0(eslint@8.53.0) - prettier: 3.1.1 - prettier-linter-helpers: 1.0.0 - synckit: 0.8.8 - 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-visitor-keys@1.3.0: + 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'} - dev: true - /eslint-visitor-keys@3.4.3: + 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} - dev: true - /eslint@8.53.0: - resolution: {integrity: sha512-N4VuiPjXDUa4xVeV/GC/RV3hQW9Nw+Y463lkWaKKXKYMvmRiRDAtfpuPFLN+E1/6ZhyR8J2ig+eVREnYgUsiag==} + 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.53.0) - '@eslint-community/regexpp': 4.10.0 - '@eslint/eslintrc': 2.1.4 - '@eslint/js': 8.53.0 - '@humanwhocodes/config-array': 0.11.14 - '@humanwhocodes/module-importer': 1.0.1 - '@nodelib/fs.walk': 1.2.8 - '@ungap/structured-clone': 1.2.0 - ajv: 6.12.6 - chalk: 4.1.2 - cross-spawn: 7.0.3 - debug: 4.3.4 - doctrine: 3.0.0 - escape-string-regexp: 4.0.0 - eslint-scope: 7.2.2 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 - esquery: 1.5.0 - esutils: 2.0.3 - fast-deep-equal: 3.1.3 - file-entry-cache: 6.0.1 - find-up: 5.0.0 - glob-parent: 6.0.2 - globals: 13.24.0 - graphemer: 1.4.0 - ignore: 5.3.0 - imurmurhash: 0.1.4 - is-glob: 4.0.3 - is-path-inside: 3.0.3 - js-yaml: 4.1.0 - json-stable-stringify-without-jsonify: 1.0.1 - levn: 0.4.1 - lodash.merge: 4.6.2 - minimatch: 3.1.2 - natural-compare: 1.4.0 - optionator: 0.9.3 - strip-ansi: 6.0.1 - 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.11.3 - acorn-jsx: 5.3.2(acorn@8.11.3) - eslint-visitor-keys: 3.4.3 - dev: true - /esquery@1.5.0: + esquery@1.5.0: resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} 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 - human-signals: 2.1.0 - is-stream: 2.0.1 - merge-stream: 2.0.0 - npm-run-path: 4.0.1 - 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 - human-signals: 5.0.0 - is-stream: 3.0.0 - merge-stream: 2.0.0 - npm-run-path: 5.2.0 - 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.5 - 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 - /fastq@1.17.0: - resolution: {integrity: sha512-zGygtijUMT7jnk3h26kUms3BkSDp4IfIKjmnqI2tvx6nuBfiF1UqOxbnLfzdv+apBy+53oaImsKtMw/xYbW+1w==} - dependencies: - reusify: 1.0.4 - dev: true + fastq@1.17.1: + resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} - /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.0.1: - resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} + 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.2.9 - keyv: 4.5.4 - rimraf: 3.0.2 - dev: true - /flatted@3.2.9: - resolution: {integrity: sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==} - dev: true + flatted@3.3.1: + resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} - /foreground-child@3.1.1: - resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} + 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.3.12: - resolution: {integrity: sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==} - engines: {node: '>=16 || 14 >=14.17'} + glob@10.4.2: + resolution: {integrity: sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==} + engines: {node: '>=16 || 14 >=14.18'} hasBin: true - dependencies: - foreground-child: 3.1.1 - jackspeak: 2.3.6 - minimatch: 9.0.4 - minipass: 7.0.4 - path-scurry: 1.10.2 - dev: false - /glob@7.2.3: + glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.1.2 - once: 1.4.0 - path-is-absolute: 1.0.1 - dev: true + deprecated: Glob versions prior to v9 are no longer supported - /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 - fast-glob: 3.3.2 - ignore: 5.3.0 - 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.0(typescript@5.4.5): - resolution: {integrity: sha512-/V0nbaWLBv8g0v2kol5M7Vf+kHXk19Ew5sa3wQJXeUaccesXg7AFo7eEInoIpR+aIJ3QDjoYt4zHYeFr8w8rng==} + gts@5.3.1: + 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.53.0)(typescript@5.4.5) - '@typescript-eslint/parser': 5.62.0(eslint@8.53.0)(typescript@5.4.5) - chalk: 4.1.2 - eslint: 8.53.0 - eslint-config-prettier: 9.1.0(eslint@8.53.0) - eslint-plugin-node: 11.1.0(eslint@8.53.0) - eslint-plugin-prettier: 5.1.3(eslint-config-prettier@9.1.0)(eslint@8.53.0)(prettier@3.1.1) - execa: 5.1.1 - inquirer: 7.3.3 - json5: 2.2.3 - meow: 9.0.0 - ncp: 2.0.0 - prettier: 3.1.1 - rimraf: 3.0.2 - typescript: 5.4.5 - write-file-atomic: 4.0.2 - 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.0: - resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} + 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.0: - resolution: {integrity: sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==} + 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==} - dependencies: - once: 1.4.0 - wrappy: 1.0.2 - dev: true + 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: + 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 - cli-cursor: 3.1.0 - cli-width: 3.0.0 - external-editor: 3.1.0 - figures: 3.2.0 - lodash: 4.17.21 - mute-stream: 0.0.8 - run-async: 2.4.1 - rxjs: 6.6.7 - 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.13.1: - resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} - dependencies: - hasown: 2.0.0 - dev: true + is-core-module@2.14.0: + resolution: {integrity: sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==} + engines: {node: '>= 0.4'} - /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@2.3.6: - resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} + jackspeak@3.4.0: + resolution: {integrity: sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==} engines: {node: '>=14'} - 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-tokens@8.0.3: - resolution: {integrity: sha512-UfJMcSJc+SEXEl9lH/VLHSZbThQyLpw1vLO1Lb+j4RWDvG3N2f7yj3PVQA3cmkTBNldJ9eFnM+xEXxHIXrYiJw==} - dev: true + js-tokens@9.0.0: + resolution: {integrity: sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==} - /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 - /jsonc-parser@3.2.1: - resolution: {integrity: sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==} - dev: 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 - /local-pkg@0.5.0: + local-pkg@0.5.0: resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==} engines: {node: '>=14'} - dependencies: - mlly: 1.5.0 - pkg-types: 1.0.3 - 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@2.3.7: + loupe@2.3.7: resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} - dependencies: - get-func-name: 2.0.2 - dev: true - /lru-cache@10.2.2: + lru-cache@10.2.2: resolution: {integrity: sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==} engines: {node: 14 || >=16.14} - 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.5: - resolution: {integrity: sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==} - engines: {node: '>=12'} - dependencies: - '@jridgewell/sourcemap-codec': 1.4.15 - dev: true + magic-string@0.30.10: + resolution: {integrity: sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==} - /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 - decamelize: 1.2.0 - decamelize-keys: 1.1.1 - hard-rejection: 2.1.0 - minimist-options: 4.1.0 - normalize-package-data: 3.0.3 - read-pkg-up: 7.0.1 - redent: 3.0.0 - 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.5: - resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} + micromatch@4.0.7: + resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} engines: {node: '>=8.6'} - dependencies: - braces: 3.0.2 - 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.4: - resolution: {integrity: sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==} + 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.0.4: - resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==} + minipass@7.1.2: + resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} engines: {node: '>=16 || 14 >=14.17'} - dev: false - /mlly@1.5.0: - resolution: {integrity: sha512-NPVQvAY1xr1QoVeG0cy8yUYC7FQcOx6evl/RjT1wL5FvzPnzOysoqB/jmx/DhssT2dYa8nxECLAaFI/+gVLhDQ==} - dependencies: - acorn: 8.11.3 - pathe: 1.1.2 - pkg-types: 1.0.3 - ufo: 1.3.2 - dev: true + mlly@1.7.1: + resolution: {integrity: sha512-rrVRZRELyQzrIUAVMHxP97kv+G786pHmOKzuFII8zDYahFBS7qnHh2AlYSl1GAHhaMPCz6/oHjVMcfFYgFYHgA==} - /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.13.1 - semver: 7.5.4 - 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.2.0: - resolution: {integrity: sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==} + 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.3: - resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} + optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} engines: {node: '>= 0.8.0'} - dependencies: - '@aashutoshrathi/word-wrap': 1.2.6 - deep-is: 0.1.4 - fast-levenshtein: 2.0.6 - levn: 0.4.1 - prelude-ls: 1.2.1 - type-check: 0.4.0 - 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-limit@5.0.0: + p-limit@5.0.0: resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==} engines: {node: '>=18'} - dependencies: - yocto-queue: 1.0.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 - /parent-module@1.0.1: + 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'} - 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.23.5 - 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.10.2: - resolution: {integrity: sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==} - engines: {node: '>=16 || 14 >=14.17'} - dependencies: - lru-cache: 10.2.2 - minipass: 7.0.4 - dev: false + path-scurry@1.11.1: + resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} + engines: {node: '>=16 || 14 >=14.18'} - /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@1.1.1: + pathval@1.1.1: resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} - dev: true - /picocolors@1.0.0: - resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} - dev: true + picocolors@1.0.1: + resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} - /picomatch@2.3.1: + picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} - dev: true - /pkg-types@1.0.3: - resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==} - dependencies: - jsonc-parser: 3.2.1 - mlly: 1.5.0 - pathe: 1.1.2 - dev: true + pkg-types@1.1.1: + resolution: {integrity: sha512-ko14TjmDuQJ14zsotODv7dBlwxKhUKQEhuhmbqo1uCi9BB0Z2alo/wAXg6q1dTR5TyuqYyWhjtfe/Tsh+X28jQ==} - /postcss@8.4.38: + postcss@8.4.38: resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} engines: {node: ^10 || ^12 || >=14} - dependencies: - nanoid: 3.3.7 - picocolors: 1.0.0 - 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.1.1: - resolution: {integrity: sha512-22UbSzg8luF4UuZtzgiUOfcGM8s4tjBv6dJRT7j275NXsy2jb4aJa4NNveul5x4eqlF1wuhuR2RElK71RvmVaw==} + prettier@3.2.5: + resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} engines: {node: '>=14'} hasBin: true - dev: true - /pretty-format@29.7.0: + pretty-format@29.7.0: resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - dependencies: - '@jest/schemas': 29.6.3 - ansi-styles: 5.2.0 - react-is: 18.2.0 - dev: true - /punycode@2.3.1: + punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} - /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 - /react-is@18.2.0: - resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} - dev: true + react-is@18.3.1: + resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} - /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.13.1 - 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.16.4: - resolution: {integrity: sha512-kuaTJSUbz+Wsb2ATGvEknkI12XV40vIiHmLuFlejoo7HtDok/O5eDDD0UpCVY5bBX5U5RYo8wWP83H7ZsqVEnA==} + rollup@4.18.0: + resolution: {integrity: sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true - dependencies: - '@types/estree': 1.0.5 - optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.16.4 - '@rollup/rollup-android-arm64': 4.16.4 - '@rollup/rollup-darwin-arm64': 4.16.4 - '@rollup/rollup-darwin-x64': 4.16.4 - '@rollup/rollup-linux-arm-gnueabihf': 4.16.4 - '@rollup/rollup-linux-arm-musleabihf': 4.16.4 - '@rollup/rollup-linux-arm64-gnu': 4.16.4 - '@rollup/rollup-linux-arm64-musl': 4.16.4 - '@rollup/rollup-linux-powerpc64le-gnu': 4.16.4 - '@rollup/rollup-linux-riscv64-gnu': 4.16.4 - '@rollup/rollup-linux-s390x-gnu': 4.16.4 - '@rollup/rollup-linux-x64-gnu': 4.16.4 - '@rollup/rollup-linux-x64-musl': 4.16.4 - '@rollup/rollup-win32-arm64-msvc': 4.16.4 - '@rollup/rollup-win32-ia32-msvc': 4.16.4 - '@rollup/rollup-win32-x64-msvc': 4.16.4 - 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@6.3.1: - resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} - hasBin: true - dev: true - /semver@7.5.4: - resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} + semver@7.6.2: + resolution: {integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==} engines: {node: '>=10'} hasBin: true - dependencies: - lru-cache: 6.0.0 - 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.16 - dev: true - /spdx-exceptions@2.4.0: - resolution: {integrity: sha512-hcjppoJ68fhxA/cjbN4T8N6uCUejN8yFw69ttpqtBeCbF3u13n7mb31NB9jKwGTTWWnt9IbRA/mf1FprYS8wfw==} - dev: true + spdx-exceptions@2.5.0: + resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==} - /spdx-expression-parse@3.0.1: + spdx-expression-parse@3.0.1: resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} - dependencies: - spdx-exceptions: 2.4.0 - spdx-license-ids: 3.0.16 - dev: true - /spdx-license-ids@3.0.16: - resolution: {integrity: sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==} - dev: true + spdx-license-ids@3.0.18: + resolution: {integrity: sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==} - /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 - /strip-literal@2.0.0: - resolution: {integrity: sha512-f9vHgsCWBq2ugHAkGMiiYY+AYG0D/cbloKKg0nhaaaSNsujdGIpVXCNsrJpCKr5M0f4aI31mr13UjY6GAuXCKA==} - dependencies: - js-tokens: 8.0.3 - dev: true + strip-literal@2.1.0: + resolution: {integrity: sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==} - /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.2 - 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.6.0: - resolution: {integrity: sha512-N8hW3PG/3aOoZAN5V/NSAEDz0ZixDSSt5b/a05iqtpgfLWMSVuCo7w0k2vVvEjdrIoeGqZzweX2WlyioNIHchA==} - dev: true + tinybench@2.8.0: + resolution: {integrity: sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw==} - /tinypool@0.8.4: + tinypool@0.8.4: resolution: {integrity: sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==} engines: {node: '>=14.0.0'} - dev: true - /tinyspy@2.2.0: - resolution: {integrity: sha512-d2eda04AN/cPOR89F7Xv5bK/jrQEhmcLFe6HFldoeO9AJtps+fqEnh486vnT/8y4bw38pSyxDcTCAq+Ks2aJTg==} + tinyspy@2.2.1: + resolution: {integrity: sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==} 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.2.0: - resolution: {integrity: sha512-Fo9pcSb6PIvCSapoJR4VJlcCFC67d7yBWqbctNU6ShfXSMHItkjiLl3e9KGA1bu2S3jVYOFjUdPfWtfRdnMorA==} + 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.0.0 - glob: 10.3.12 - json5: 2.2.3 - normalize-path: 3.0.0 - safe-stable-stringify: 2.4.3 - tslib: 2.6.2 - typescript: 5.4.5 - dev: false - /ts-node@10.9.2(@types/node@18.16.1)(typescript@5.4.5): + ts-node@10.9.2: resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} hasBin: true peerDependencies: @@ -2578,126 +1537,76 @@ packages: optional: true '@swc/wasm': optional: true - dependencies: - '@cspotcode/source-map-support': 0.8.1 - '@tsconfig/node10': 1.0.9 - '@tsconfig/node12': 1.0.11 - '@tsconfig/node14': 1.0.3 - '@tsconfig/node16': 1.0.4 - '@types/node': 18.16.1 - acorn: 8.11.3 - acorn-walk: 8.3.2 - arg: 4.1.3 - create-require: 1.1.1 - diff: 4.0.2 - make-error: 1.3.6 - typescript: 5.4.5 - 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.2: - resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} + tslib@2.6.3: + resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==} - /tsutils@3.21.0(typescript@5.4.5): + 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' - dependencies: - tslib: 1.14.1 - typescript: 5.4.5 - 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-detect@4.0.8: + type-detect@4.0.8: resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} engines: {node: '>=4'} - 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.4.5: + typescript@5.4.5: resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==} engines: {node: '>=14.17'} hasBin: true - /ufo@1.3.2: - resolution: {integrity: sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==} - dev: true + typescript@5.5.2: + resolution: {integrity: sha512-NcRtPEOsPFFWjobJEtfihkLCZCXZt/os3zf8nTxjVH3RvTSxjrCamJpbExGvYOF+tFHc3pA65qpdwPbzjohhew==} + engines: {node: '>=14.17'} + hasBin: true - /uri-js@4.4.1: + ufo@1.5.3: + resolution: {integrity: sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==} + + uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} - dependencies: - punycode: 2.3.1 - /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@1.6.0(@types/node@18.16.1): + vite-node@1.6.0: resolution: {integrity: sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true - dependencies: - cac: 6.7.14 - debug: 4.3.4 - pathe: 1.1.2 - picocolors: 1.0.0 - vite: 5.2.10(@types/node@18.16.1) - transitivePeerDependencies: - - '@types/node' - - less - - lightningcss - - sass - - stylus - - sugarss - - supports-color - - terser - dev: true - /vite@5.2.10(@types/node@18.16.1): - resolution: {integrity: sha512-PAzgUZbP7msvQvqdSD+ErD5qGnSFiGOoWmV5yAKUEI0kdhjbH6nMWVyZQC/hSc4aXwc0oJ9aEdIiF9Oje0JFCw==} + vite@5.3.2: + resolution: {integrity: sha512-6lA7OBHBlXUxiJxbO5aAY2fsHHzDr1q7DvXYnyZycRs2Dz+dXBWuhpWHvmljTRTpQC2uvGmUFFkSHF2vGo90MA==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: @@ -2723,16 +1632,8 @@ packages: optional: true terser: optional: true - dependencies: - '@types/node': 18.16.1 - esbuild: 0.20.2 - postcss: 8.4.38 - rollup: 4.16.4 - optionalDependencies: - fsevents: 2.3.3 - dev: true - /vitest@1.6.0(@types/node@18.16.1): + vitest@1.6.0: resolution: {integrity: sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true @@ -2756,104 +1657,1626 @@ packages: optional: true jsdom: optional: true - dependencies: - '@types/node': 18.16.1 - '@vitest/expect': 1.6.0 - '@vitest/runner': 1.6.0 - '@vitest/snapshot': 1.6.0 - '@vitest/spy': 1.6.0 - '@vitest/utils': 1.6.0 - acorn-walk: 8.3.2 - chai: 4.4.1 - debug: 4.3.4 - execa: 8.0.1 - local-pkg: 0.5.0 - magic-string: 0.30.5 - pathe: 1.1.2 - picocolors: 1.0.0 - std-env: 3.7.0 - strip-literal: 2.0.0 - tinybench: 2.6.0 - tinypool: 0.8.4 - vite: 5.2.10(@types/node@18.16.1) - vite-node: 1.6.0(@types/node@18.16.1) - why-is-node-running: 2.2.2 - transitivePeerDependencies: - - less - - lightningcss - - sass - - stylus - - 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.2.2: + why-is-node-running@2.2.2: resolution: {integrity: sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==} engines: {node: '>=8'} hasBin: true - dependencies: - siginfo: 2.0.0 - stackback: 0.0.2 - dev: true - /wrap-ansi@7.0.0: + 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'} - 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 - /yocto-queue@1.0.0: + yocto-queue@1.0.0: resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} engines: {node: '>=12.20'} - dev: true + +snapshots: + + '@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.10.1': {} + + '@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 + + '@jest/schemas@29.6.3': + dependencies: + '@sinclair/typebox': 0.27.8 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/sourcemap-codec@1.4.15': {} + + '@jridgewell/trace-mapping@0.3.9': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.4.15 + + '@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.0': + optional: true + + '@rollup/rollup-android-arm64@4.18.0': + optional: true + + '@rollup/rollup-darwin-arm64@4.18.0': + optional: true + + '@rollup/rollup-darwin-x64@4.18.0': + optional: true + + '@rollup/rollup-linux-arm-gnueabihf@4.18.0': + optional: true + + '@rollup/rollup-linux-arm-musleabihf@4.18.0': + optional: true + + '@rollup/rollup-linux-arm64-gnu@4.18.0': + optional: true + + '@rollup/rollup-linux-arm64-musl@4.18.0': + optional: true + + '@rollup/rollup-linux-powerpc64le-gnu@4.18.0': + optional: true + + '@rollup/rollup-linux-riscv64-gnu@4.18.0': + optional: true + + '@rollup/rollup-linux-s390x-gnu@4.18.0': + optional: true + + '@rollup/rollup-linux-x64-gnu@4.18.0': + optional: true + + '@rollup/rollup-linux-x64-musl@4.18.0': + optional: true + + '@rollup/rollup-win32-arm64-msvc@4.18.0': + optional: true + + '@rollup/rollup-win32-ia32-msvc@4.18.0': + optional: true + + '@rollup/rollup-win32-x64-msvc@4.18.0': + optional: true + + '@sinclair/typebox@0.27.8': {} + + '@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.2))(eslint@8.57.0)(typescript@5.5.2)': + dependencies: + '@eslint-community/regexpp': 4.10.1 + '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.5.2) + '@typescript-eslint/scope-manager': 5.62.0 + '@typescript-eslint/type-utils': 5.62.0(eslint@8.57.0)(typescript@5.5.2) + '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.5.2) + 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.2) + optionalDependencies: + typescript: 5.5.2 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.5.2)': + dependencies: + '@typescript-eslint/scope-manager': 5.62.0 + '@typescript-eslint/types': 5.62.0 + '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.5.2) + debug: 4.3.5 + eslint: 8.57.0 + optionalDependencies: + typescript: 5.5.2 + 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.2)': + dependencies: + '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.5.2) + '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.5.2) + debug: 4.3.5 + eslint: 8.57.0 + tsutils: 3.21.0(typescript@5.5.2) + optionalDependencies: + typescript: 5.5.2 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/types@5.62.0': {} + + '@typescript-eslint/typescript-estree@5.62.0(typescript@5.5.2)': + 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.2) + optionalDependencies: + typescript: 5.5.2 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/utils@5.62.0(eslint@8.57.0)(typescript@5.5.2)': + 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.2) + 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@1.6.0': + dependencies: + '@vitest/spy': 1.6.0 + '@vitest/utils': 1.6.0 + chai: 4.4.1 + + '@vitest/runner@1.6.0': + dependencies: + '@vitest/utils': 1.6.0 + p-limit: 5.0.0 + pathe: 1.1.2 + + '@vitest/snapshot@1.6.0': + dependencies: + magic-string: 0.30.10 + pathe: 1.1.2 + pretty-format: 29.7.0 + + '@vitest/spy@1.6.0': + dependencies: + tinyspy: 2.2.1 + + '@vitest/utils@1.6.0': + dependencies: + diff-sequences: 29.6.3 + estree-walker: 3.0.3 + loupe: 2.3.7 + pretty-format: 29.7.0 + + acorn-jsx@5.3.2(acorn@8.12.0): + dependencies: + acorn: 8.12.0 + + acorn-walk@8.3.3: + dependencies: + acorn: 8.12.0 + + acorn@8.12.0: {} + + ajv-formats@2.1.1(ajv@8.16.0): + optionalDependencies: + ajv: 8.16.0 + + 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.16.0: + dependencies: + fast-deep-equal: 3.1.3 + json-schema-traverse: 1.0.0 + require-from-string: 2.0.2 + uri-js: 4.4.1 + + 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@5.2.0: {} + + ansi-styles@6.2.1: {} + + arg@4.1.3: {} + + argparse@2.0.1: {} + + array-union@2.1.0: {} + + arrify@1.0.1: {} + + assertion-error@1.1.0: {} + + 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@4.4.1: + dependencies: + assertion-error: 1.1.0 + check-error: 1.0.3 + deep-eql: 4.1.4 + get-func-name: 2.0.2 + loupe: 2.3.7 + pathval: 1.1.1 + type-detect: 4.0.8 + + 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@1.0.3: + dependencies: + get-func-name: 2.0.2 + + 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: {} + + confbox@0.1.7: {} + + 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@4.1.4: + dependencies: + type-detect: 4.0.8 + + deep-is@0.1.4: {} + + diff-sequences@29.6.3: {} + + 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: + optionalDependencies: + '@esbuild/aix-ppc64': 0.21.5 + '@esbuild/android-arm': 0.21.5 + '@esbuild/android-arm64': 0.21.5 + '@esbuild/android-x64': 0.21.5 + '@esbuild/darwin-arm64': 0.21.5 + '@esbuild/darwin-x64': 0.21.5 + '@esbuild/freebsd-arm64': 0.21.5 + '@esbuild/freebsd-x64': 0.21.5 + '@esbuild/linux-arm': 0.21.5 + '@esbuild/linux-arm64': 0.21.5 + '@esbuild/linux-ia32': 0.21.5 + '@esbuild/linux-loong64': 0.21.5 + '@esbuild/linux-mips64el': 0.21.5 + '@esbuild/linux-ppc64': 0.21.5 + '@esbuild/linux-riscv64': 0.21.5 + '@esbuild/linux-s390x': 0.21.5 + '@esbuild/linux-x64': 0.21.5 + '@esbuild/netbsd-x64': 0.21.5 + '@esbuild/openbsd-x64': 0.21.5 + '@esbuild/sunos-x64': 0.21.5 + '@esbuild/win32-arm64': 0.21.5 + '@esbuild/win32-ia32': 0.21.5 + '@esbuild/win32-x64': 0.21.5 + + escape-string-regexp@1.0.5: {} + + escape-string-regexp@4.0.0: {} + + eslint-config-prettier@9.1.0(eslint@8.57.0): + dependencies: + eslint: 8.57.0 + + eslint-plugin-es@4.1.0(eslint@8.57.0): + dependencies: + eslint: 8.57.0 + eslint-utils: 2.1.0 + regexpp: 3.2.0 + + eslint-plugin-n@15.7.0(eslint@8.57.0): + dependencies: + builtins: 5.1.0 + eslint: 8.57.0 + eslint-plugin-es: 4.1.0(eslint@8.57.0) + eslint-utils: 3.0.0(eslint@8.57.0) + ignore: 5.3.1 + is-core-module: 2.14.0 + minimatch: 3.1.2 + resolve: 1.22.8 + semver: 7.6.2 + + eslint-plugin-prettier@5.1.3(eslint-config-prettier@9.1.0(eslint@8.57.0))(eslint@8.57.0)(prettier@3.2.5): + dependencies: + 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) + + eslint-scope@5.1.1: + dependencies: + esrecurse: 4.3.0 + estraverse: 4.3.0 + + eslint-scope@7.2.2: + dependencies: + esrecurse: 4.3.0 + estraverse: 5.3.0 + + eslint-utils@2.1.0: + dependencies: + eslint-visitor-keys: 1.3.0 + + eslint-utils@3.0.0(eslint@8.57.0): + dependencies: + eslint: 8.57.0 + eslint-visitor-keys: 2.1.0 + + eslint-visitor-keys@1.3.0: {} + + eslint-visitor-keys@2.1.0: {} + + eslint-visitor-keys@3.4.3: {} + + eslint@8.57.0: + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) + '@eslint-community/regexpp': 4.10.1 + '@eslint/eslintrc': 2.1.4 + '@eslint/js': 8.57.0 + '@humanwhocodes/config-array': 0.11.14 + '@humanwhocodes/module-importer': 1.0.1 + '@nodelib/fs.walk': 1.2.8 + '@ungap/structured-clone': 1.2.0 + ajv: 6.12.6 + chalk: 4.1.2 + cross-spawn: 7.0.3 + debug: 4.3.5 + doctrine: 3.0.0 + escape-string-regexp: 4.0.0 + eslint-scope: 7.2.2 + eslint-visitor-keys: 3.4.3 + espree: 9.6.1 + esquery: 1.5.0 + esutils: 2.0.3 + fast-deep-equal: 3.1.3 + file-entry-cache: 6.0.1 + find-up: 5.0.0 + glob-parent: 6.0.2 + globals: 13.24.0 + graphemer: 1.4.0 + ignore: 5.3.1 + imurmurhash: 0.1.4 + is-glob: 4.0.3 + is-path-inside: 3.0.3 + js-yaml: 4.1.0 + json-stable-stringify-without-jsonify: 1.0.1 + levn: 0.4.1 + lodash.merge: 4.6.2 + minimatch: 3.1.2 + natural-compare: 1.4.0 + optionator: 0.9.4 + strip-ansi: 6.0.1 + text-table: 0.2.0 + transitivePeerDependencies: + - supports-color + + espree@9.6.1: + dependencies: + acorn: 8.12.0 + acorn-jsx: 5.3.2(acorn@8.12.0) + eslint-visitor-keys: 3.4.3 + + esquery@1.5.0: + dependencies: + estraverse: 5.3.0 + + esrecurse@4.3.0: + dependencies: + estraverse: 5.3.0 + + estraverse@4.3.0: {} + + estraverse@5.3.0: {} + + estree-walker@3.0.3: + dependencies: + '@types/estree': 1.0.5 + + esutils@2.0.3: {} + + execa@5.1.1: + dependencies: + cross-spawn: 7.0.3 + get-stream: 6.0.1 + human-signals: 2.1.0 + is-stream: 2.0.1 + merge-stream: 2.0.0 + npm-run-path: 4.0.1 + onetime: 5.1.2 + signal-exit: 3.0.7 + strip-final-newline: 2.0.0 + + execa@8.0.1: + dependencies: + cross-spawn: 7.0.3 + get-stream: 8.0.1 + human-signals: 5.0.0 + is-stream: 3.0.0 + merge-stream: 2.0.0 + npm-run-path: 5.3.0 + onetime: 6.0.0 + signal-exit: 4.1.0 + strip-final-newline: 3.0.0 + + external-editor@3.1.0: + dependencies: + chardet: 0.7.0 + iconv-lite: 0.4.24 + tmp: 0.0.33 + + fast-deep-equal@3.1.3: {} + + fast-diff@1.3.0: {} + + fast-glob@3.3.2: + 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 + + fast-json-stable-stringify@2.1.0: {} + + fast-levenshtein@2.0.6: {} + + fastq@1.17.1: + dependencies: + reusify: 1.0.4 + + figures@3.2.0: + dependencies: + escape-string-regexp: 1.0.5 + + file-entry-cache@6.0.1: + dependencies: + flat-cache: 3.2.0 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + find-up@4.1.0: + dependencies: + locate-path: 5.0.0 + path-exists: 4.0.0 + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + flat-cache@3.2.0: + dependencies: + flatted: 3.3.1 + keyv: 4.5.4 + rimraf: 3.0.2 + + flatted@3.3.1: {} + + foreground-child@3.2.1: + dependencies: + cross-spawn: 7.0.3 + signal-exit: 4.1.0 + + fs.realpath@1.0.0: {} + + fsevents@2.3.3: + optional: true + + function-bind@1.1.2: {} + + get-func-name@2.0.2: {} + + get-stream@6.0.1: {} + + get-stream@8.0.1: {} + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + glob-parent@6.0.2: + dependencies: + is-glob: 4.0.3 + + glob@10.4.2: + dependencies: + foreground-child: 3.2.1 + jackspeak: 3.4.0 + minimatch: 9.0.5 + minipass: 7.1.2 + package-json-from-dist: 1.0.0 + path-scurry: 1.11.1 + + glob@7.2.3: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + + globals@13.24.0: + dependencies: + type-fest: 0.20.2 + + globby@11.1.0: + dependencies: + array-union: 2.1.0 + dir-glob: 3.0.1 + fast-glob: 3.3.2 + ignore: 5.3.1 + merge2: 1.4.1 + slash: 3.0.0 + + graphemer@1.4.0: {} + + gts@5.3.1(typescript@5.5.2): + dependencies: + '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.5.2))(eslint@8.57.0)(typescript@5.5.2) + '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.5.2) + 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) + execa: 5.1.1 + inquirer: 7.3.3 + json5: 2.2.3 + meow: 9.0.0 + ncp: 2.0.0 + prettier: 3.2.5 + rimraf: 3.0.2 + typescript: 5.5.2 + write-file-atomic: 4.0.2 + transitivePeerDependencies: + - '@types/eslint' + - supports-color + + hard-rejection@2.1.0: {} + + has-flag@3.0.0: {} + + has-flag@4.0.0: {} + + hasown@2.0.2: + dependencies: + function-bind: 1.1.2 + + hosted-git-info@2.8.9: {} + + hosted-git-info@4.1.0: + dependencies: + lru-cache: 6.0.0 + + human-signals@2.1.0: {} + + human-signals@5.0.0: {} + + husky@8.0.0: {} + + iconv-lite@0.4.24: + dependencies: + safer-buffer: 2.1.2 + + ignore@5.3.1: {} + + import-fresh@3.3.0: + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + + imurmurhash@0.1.4: {} + + indent-string@4.0.0: {} + + inflight@1.0.6: + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + + inherits@2.0.4: {} + + inquirer@7.3.3: + dependencies: + ansi-escapes: 4.3.2 + chalk: 4.1.2 + cli-cursor: 3.1.0 + cli-width: 3.0.0 + external-editor: 3.1.0 + figures: 3.2.0 + lodash: 4.17.21 + mute-stream: 0.0.8 + run-async: 2.4.1 + rxjs: 6.6.7 + string-width: 4.2.3 + strip-ansi: 6.0.1 + through: 2.3.8 + + is-arrayish@0.2.1: {} + + is-core-module@2.14.0: + dependencies: + hasown: 2.0.2 + + is-extglob@2.1.1: {} + + is-fullwidth-code-point@3.0.0: {} + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-number@7.0.0: {} + + is-path-inside@3.0.3: {} + + is-plain-obj@1.1.0: {} + + is-stream@2.0.1: {} + + is-stream@3.0.0: {} + + isexe@2.0.0: {} + + jackspeak@3.4.0: + dependencies: + '@isaacs/cliui': 8.0.2 + optionalDependencies: + '@pkgjs/parseargs': 0.11.0 + + js-tokens@4.0.0: {} + + js-tokens@9.0.0: {} + + js-yaml@4.1.0: + dependencies: + argparse: 2.0.1 + + json-buffer@3.0.1: {} + + json-parse-even-better-errors@2.3.1: {} + + json-schema-traverse@0.4.1: {} + + json-schema-traverse@1.0.0: {} + + json-stable-stringify-without-jsonify@1.0.1: {} + + json5@2.2.3: {} + + jsonschema@1.4.1: {} + + keyv@4.5.4: + dependencies: + json-buffer: 3.0.1 + + kind-of@6.0.3: {} + + levn@0.4.1: + dependencies: + prelude-ls: 1.2.1 + type-check: 0.4.0 + + lines-and-columns@1.2.4: {} + + local-pkg@0.5.0: + dependencies: + mlly: 1.7.1 + pkg-types: 1.1.1 + + locate-path@5.0.0: + dependencies: + p-locate: 4.1.0 + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + lodash.merge@4.6.2: {} + + lodash@4.17.21: {} + + loupe@2.3.7: + dependencies: + get-func-name: 2.0.2 + + lru-cache@10.2.2: {} + + lru-cache@6.0.0: + dependencies: + yallist: 4.0.0 + + magic-string@0.30.10: + dependencies: + '@jridgewell/sourcemap-codec': 1.4.15 + + make-error@1.3.6: {} + + map-obj@1.0.1: {} + + map-obj@4.3.0: {} + + meow@9.0.0: + dependencies: + '@types/minimist': 1.2.5 + camelcase-keys: 6.2.2 + decamelize: 1.2.0 + decamelize-keys: 1.1.1 + hard-rejection: 2.1.0 + minimist-options: 4.1.0 + normalize-package-data: 3.0.3 + read-pkg-up: 7.0.1 + redent: 3.0.0 + trim-newlines: 3.0.1 + type-fest: 0.18.1 + yargs-parser: 20.2.9 + + merge-stream@2.0.0: {} + + merge2@1.4.1: {} + + micromatch@4.0.7: + dependencies: + braces: 3.0.3 + picomatch: 2.3.1 + + mimic-fn@2.1.0: {} + + mimic-fn@4.0.0: {} + + min-indent@1.0.1: {} + + minimatch@3.1.2: + dependencies: + brace-expansion: 1.1.11 + + minimatch@9.0.5: + dependencies: + brace-expansion: 2.0.1 + + minimist-options@4.1.0: + dependencies: + arrify: 1.0.1 + is-plain-obj: 1.1.0 + kind-of: 6.0.3 + + minipass@7.1.2: {} + + mlly@1.7.1: + dependencies: + acorn: 8.12.0 + pathe: 1.1.2 + pkg-types: 1.1.1 + ufo: 1.5.3 + + ms@2.1.2: {} + + mute-stream@0.0.8: {} + + nanoid@3.3.7: {} + + natural-compare-lite@1.4.0: {} + + natural-compare@1.4.0: {} + + ncp@2.0.0: {} + + normalize-package-data@2.5.0: + dependencies: + hosted-git-info: 2.8.9 + resolve: 1.22.8 + semver: 5.7.2 + validate-npm-package-license: 3.0.4 + + normalize-package-data@3.0.3: + dependencies: + hosted-git-info: 4.1.0 + is-core-module: 2.14.0 + semver: 7.6.2 + validate-npm-package-license: 3.0.4 + + normalize-path@3.0.0: {} + + npm-run-path@4.0.1: + dependencies: + path-key: 3.1.1 + + npm-run-path@5.3.0: + dependencies: + path-key: 4.0.0 + + once@1.4.0: + dependencies: + wrappy: 1.0.2 + + onetime@5.1.2: + dependencies: + mimic-fn: 2.1.0 + + onetime@6.0.0: + dependencies: + mimic-fn: 4.0.0 + + optionator@0.9.4: + dependencies: + deep-is: 0.1.4 + fast-levenshtein: 2.0.6 + levn: 0.4.1 + prelude-ls: 1.2.1 + type-check: 0.4.0 + word-wrap: 1.2.5 + + os-tmpdir@1.0.2: {} + + p-limit@2.3.0: + dependencies: + p-try: 2.2.0 + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-limit@5.0.0: + dependencies: + yocto-queue: 1.0.0 + + p-locate@4.1.0: + dependencies: + p-limit: 2.3.0 + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + p-try@2.2.0: {} + + package-json-from-dist@1.0.0: {} + + parent-module@1.0.1: + dependencies: + callsites: 3.1.0 + + parse-json@5.2.0: + 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 + + path-exists@4.0.0: {} + + path-is-absolute@1.0.1: {} + + path-key@3.1.1: {} + + path-key@4.0.0: {} + + path-parse@1.0.7: {} + + path-scurry@1.11.1: + dependencies: + lru-cache: 10.2.2 + minipass: 7.1.2 + + path-type@4.0.0: {} + + pathe@1.1.2: {} + + pathval@1.1.1: {} + + picocolors@1.0.1: {} + + picomatch@2.3.1: {} + + pkg-types@1.1.1: + dependencies: + confbox: 0.1.7 + mlly: 1.7.1 + pathe: 1.1.2 + + postcss@8.4.38: + dependencies: + nanoid: 3.3.7 + picocolors: 1.0.1 + source-map-js: 1.2.0 + + prelude-ls@1.2.1: {} + + prettier-linter-helpers@1.0.0: + dependencies: + fast-diff: 1.3.0 + + prettier@3.2.5: {} + + pretty-format@29.7.0: + dependencies: + '@jest/schemas': 29.6.3 + ansi-styles: 5.2.0 + react-is: 18.3.1 + + punycode@2.3.1: {} + + queue-microtask@1.2.3: {} + + quick-lru@4.0.1: {} + + react-is@18.3.1: {} + + read-pkg-up@7.0.1: + dependencies: + find-up: 4.1.0 + read-pkg: 5.2.0 + type-fest: 0.8.1 + + read-pkg@5.2.0: + dependencies: + '@types/normalize-package-data': 2.4.4 + normalize-package-data: 2.5.0 + parse-json: 5.2.0 + type-fest: 0.6.0 + + redent@3.0.0: + dependencies: + indent-string: 4.0.0 + strip-indent: 3.0.0 + + regexpp@3.2.0: {} + + require-from-string@2.0.2: {} + + resolve-from@4.0.0: {} + + resolve@1.22.8: + dependencies: + is-core-module: 2.14.0 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + restore-cursor@3.1.0: + dependencies: + onetime: 5.1.2 + signal-exit: 3.0.7 + + reusify@1.0.4: {} + + rimraf@3.0.2: + dependencies: + glob: 7.2.3 + + rollup@4.18.0: + dependencies: + '@types/estree': 1.0.5 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.18.0 + '@rollup/rollup-android-arm64': 4.18.0 + '@rollup/rollup-darwin-arm64': 4.18.0 + '@rollup/rollup-darwin-x64': 4.18.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.18.0 + '@rollup/rollup-linux-arm-musleabihf': 4.18.0 + '@rollup/rollup-linux-arm64-gnu': 4.18.0 + '@rollup/rollup-linux-arm64-musl': 4.18.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.18.0 + '@rollup/rollup-linux-riscv64-gnu': 4.18.0 + '@rollup/rollup-linux-s390x-gnu': 4.18.0 + '@rollup/rollup-linux-x64-gnu': 4.18.0 + '@rollup/rollup-linux-x64-musl': 4.18.0 + '@rollup/rollup-win32-arm64-msvc': 4.18.0 + '@rollup/rollup-win32-ia32-msvc': 4.18.0 + '@rollup/rollup-win32-x64-msvc': 4.18.0 + fsevents: 2.3.3 + + run-async@2.4.1: {} + + run-parallel@1.2.0: + dependencies: + queue-microtask: 1.2.3 + + rxjs@6.6.7: + dependencies: + tslib: 1.14.1 + + safe-stable-stringify@2.4.3: {} + + safer-buffer@2.1.2: {} + + semver@5.7.2: {} + + semver@7.6.2: {} + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + siginfo@2.0.0: {} + + signal-exit@3.0.7: {} + + signal-exit@4.1.0: {} + + slash@3.0.0: {} + + source-map-js@1.2.0: {} + + spdx-correct@3.2.0: + dependencies: + spdx-expression-parse: 3.0.1 + spdx-license-ids: 3.0.18 + + spdx-exceptions@2.5.0: {} + + spdx-expression-parse@3.0.1: + dependencies: + spdx-exceptions: 2.5.0 + spdx-license-ids: 3.0.18 + + spdx-license-ids@3.0.18: {} + + stackback@0.0.2: {} + + std-env@3.7.0: {} + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + string-width@5.1.2: + dependencies: + eastasianwidth: 0.2.0 + emoji-regex: 9.2.2 + strip-ansi: 7.1.0 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-ansi@7.1.0: + dependencies: + ansi-regex: 6.0.1 + + strip-final-newline@2.0.0: {} + + strip-final-newline@3.0.0: {} + + strip-indent@3.0.0: + dependencies: + min-indent: 1.0.1 + + strip-json-comments@3.1.1: {} + + strip-literal@2.1.0: + dependencies: + js-tokens: 9.0.0 + + supports-color@5.5.0: + dependencies: + has-flag: 3.0.0 + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + supports-preserve-symlinks-flag@1.0.0: {} + + synckit@0.8.8: + dependencies: + '@pkgr/core': 0.1.1 + tslib: 2.6.3 + + text-table@0.2.0: {} + + through@2.3.8: {} + + tinybench@2.8.0: {} + + tinypool@0.8.4: {} + + tinyspy@2.2.1: {} + + tmp@0.0.33: + dependencies: + os-tmpdir: 1.0.2 + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + trim-newlines@3.0.1: {} + + ts-json-schema-generator@2.3.0: + dependencies: + '@types/json-schema': 7.0.15 + commander: 12.1.0 + glob: 10.4.2 + json5: 2.2.3 + normalize-path: 3.0.0 + safe-stable-stringify: 2.4.3 + tslib: 2.6.3 + typescript: 5.4.5 + + ts-node@10.9.2(@types/node@18.16.1)(typescript@5.5.2): + dependencies: + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.11 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.4 + '@types/node': 18.16.1 + acorn: 8.12.0 + acorn-walk: 8.3.3 + arg: 4.1.3 + create-require: 1.1.1 + diff: 4.0.2 + make-error: 1.3.6 + typescript: 5.5.2 + v8-compile-cache-lib: 3.0.1 + yn: 3.1.1 + + tslib@1.14.1: {} + + tslib@2.6.3: {} + + tsutils@3.21.0(typescript@5.5.2): + dependencies: + tslib: 1.14.1 + typescript: 5.5.2 + + type-check@0.4.0: + dependencies: + prelude-ls: 1.2.1 + + type-detect@4.0.8: {} + + type-fest@0.18.1: {} + + type-fest@0.20.2: {} + + type-fest@0.21.3: {} + + type-fest@0.6.0: {} + + type-fest@0.8.1: {} + + typescript@5.4.5: {} + + typescript@5.5.2: {} + + ufo@1.5.3: {} + + uri-js@4.4.1: + dependencies: + punycode: 2.3.1 + + v8-compile-cache-lib@3.0.1: {} + + validate-npm-package-license@3.0.4: + dependencies: + spdx-correct: 3.2.0 + spdx-expression-parse: 3.0.1 + + vite-node@1.6.0(@types/node@18.16.1): + dependencies: + cac: 6.7.14 + debug: 4.3.5 + pathe: 1.1.2 + picocolors: 1.0.1 + vite: 5.3.2(@types/node@18.16.1) + transitivePeerDependencies: + - '@types/node' + - less + - lightningcss + - sass + - stylus + - sugarss + - supports-color + - terser + + vite@5.3.2(@types/node@18.16.1): + dependencies: + esbuild: 0.21.5 + postcss: 8.4.38 + rollup: 4.18.0 + optionalDependencies: + '@types/node': 18.16.1 + fsevents: 2.3.3 + + vitest@1.6.0(@types/node@18.16.1): + dependencies: + '@vitest/expect': 1.6.0 + '@vitest/runner': 1.6.0 + '@vitest/snapshot': 1.6.0 + '@vitest/spy': 1.6.0 + '@vitest/utils': 1.6.0 + acorn-walk: 8.3.3 + chai: 4.4.1 + debug: 4.3.5 + execa: 8.0.1 + local-pkg: 0.5.0 + magic-string: 0.30.10 + pathe: 1.1.2 + picocolors: 1.0.1 + std-env: 3.7.0 + strip-literal: 2.1.0 + tinybench: 2.8.0 + tinypool: 0.8.4 + vite: 5.3.2(@types/node@18.16.1) + vite-node: 1.6.0(@types/node@18.16.1) + why-is-node-running: 2.2.2 + optionalDependencies: + '@types/node': 18.16.1 + transitivePeerDependencies: + - less + - lightningcss + - sass + - stylus + - sugarss + - supports-color + - terser + + which@2.0.2: + dependencies: + isexe: 2.0.0 + + why-is-node-running@2.2.2: + dependencies: + siginfo: 2.0.0 + stackback: 0.0.2 + + word-wrap@1.2.5: {} + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrap-ansi@8.1.0: + dependencies: + ansi-styles: 6.2.1 + string-width: 5.1.2 + strip-ansi: 7.1.0 + + wrappy@1.0.2: {} + + write-file-atomic@4.0.2: + dependencies: + imurmurhash: 0.1.4 + signal-exit: 3.0.7 + + yallist@4.0.0: {} + + yargs-parser@20.2.9: {} + + yn@3.1.1: {} + + yocto-queue@0.1.0: {} + + yocto-queue@1.0.0: {} diff --git a/schema/schema.json b/schema/schema.json index 30fa4847..9a1b019d 100644 --- a/schema/schema.json +++ b/schema/schema.json @@ -512,6 +512,114 @@ ], "type": "object" }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Planning approval", + "type": "string" + }, + "value": { + "const": "approval", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Approval of reserved matters", + "type": "string" + }, + "value": { + "const": "approval.reservedMatters", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Written confirmation of compliance with a planning condition", + "type": "string" + }, + "value": { + "const": "complianceConfirmation", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Environmental Impact Decision", + "type": "string" + }, + "value": { + "const": "environmnentalImpact", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Environmental Impact Decision - Scoping", + "type": "string" + }, + "value": { + "const": "environmentalImpact.scoping", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Environmental Impact Decision - Screening", + "type": "string" + }, + "value": { + "const": "environmentalImpact.screening", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, { "additionalProperties": false, "properties": { @@ -674,6 +782,78 @@ ], "type": "object" }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Notification of completion", + "type": "string" + }, + "value": { + "const": "notifyCompletion", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Planning obligation", + "type": "string" + }, + "value": { + "const": "obligation", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Discharge a planning obligation", + "type": "string" + }, + "value": { + "const": "obligation.discharge", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Modify a planning obligation", + "type": "string" + }, + "value": { + "const": "obligation.modify", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, { "additionalProperties": false, "properties": { @@ -930,7 +1110,7 @@ "additionalProperties": false, "properties": { "description": { - "const": "Prior Approval - Part 4 Class BC", + "const": "Prior Approval - Develop a temporary campsite", "type": "string" }, "value": { @@ -948,7 +1128,7 @@ "additionalProperties": false, "properties": { "description": { - "const": "Prior Approval - Part 4 Class CA", + "const": "Prior Approval - Put temporary school buildings on vacant commercial land", "type": "string" }, "value": { @@ -1092,11 +1272,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Prior Approval - Demolish a building", + "const": "Prior Approval - Development of toll facilities", "type": "string" }, "value": { - "const": "pa.part11.classB", + "const": "pa.part9.classD", "type": "string" } }, @@ -1110,11 +1290,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Prior Approval - Install or change solar panels", + "const": "Prior Approval - Demolish a building", "type": "string" }, "value": { - "const": "pa.part14.classJ", + "const": "pa.part11.classB", "type": "string" } }, @@ -1128,11 +1308,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Prior Approval - Install telecommunications equipment", + "const": "Prior Approval - Install or change solar panels", "type": "string" }, "value": { - "const": "pa.part16.classA", + "const": "pa.part14.classJ", "type": "string" } }, @@ -1146,11 +1326,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Prior Approval - Part 17 Class B", + "const": "Prior Approval - Install telecommunications equipment", "type": "string" }, "value": { - "const": "pa.part17.classB", + "const": "pa.part16.classA", "type": "string" } }, @@ -1164,11 +1344,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Prior Approval - Part 17 Class C", + "const": "Prior Approval - Coal mining", "type": "string" }, "value": { - "const": "pa.part17.classC", + "const": "pa.part17", "type": "string" } }, @@ -1182,11 +1362,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Prior Approval - Part 17 Class G", + "const": "Prior Approval - Part 17 Class B", "type": "string" }, "value": { - "const": "pa.part17.classG", + "const": "pa.part17.classB", "type": "string" } }, @@ -1200,11 +1380,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Prior Approval - Specific Acts of Parliament or Local Orders", + "const": "Prior Approval - Part 17 Class C", "type": "string" }, "value": { - "const": "pa.part18.classA", + "const": "pa.part17.classC", "type": "string" } }, @@ -1218,11 +1398,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Prior Approval - Part 19 Class TA", + "const": "Prior Approval - Part 17 Class G", "type": "string" }, "value": { - "const": "pa.part19.classTA", + "const": "pa.part17.classG", "type": "string" } }, @@ -1236,11 +1416,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Prior Approval - Build homes on a detached blocks of flats", + "const": "Prior Approval - Development under private acts or orders", "type": "string" }, "value": { - "const": "pa.part20.classA", + "const": "pa.part18.classA", "type": "string" } }, @@ -1254,11 +1434,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Prior Approval - Build homes on a detached commercial building", + "const": "Prior Approval - Development on a closed defence site", "type": "string" }, "value": { - "const": "pa.part20.classAA", + "const": "pa.part19.classTA", "type": "string" } }, @@ -1272,11 +1452,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Prior Approval - Build homes on an adjoining commercial or mixed use building", + "const": "Prior Approval - Build homes on a detached blocks of flats", "type": "string" }, "value": { - "const": "pa.part20.classAB", + "const": "pa.part20.classA", "type": "string" } }, @@ -1290,11 +1470,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Prior Approval - Build homes on adjoining houses", + "const": "Prior Approval - Build homes on a detached commercial building", "type": "string" }, "value": { - "const": "pa.part20.classAC", + "const": "pa.part20.classAA", "type": "string" } }, @@ -1308,11 +1488,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Prior Approval - Build homes on detached houses", + "const": "Prior Approval - Build homes on an adjoining commercial or mixed use building", "type": "string" }, "value": { - "const": "pa.part20.classAD", + "const": "pa.part20.classAB", "type": "string" } }, @@ -1326,11 +1506,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Prior Approval - Demolish buildings and build homes in their place", + "const": "Prior Approval - Build homes on adjoining houses", "type": "string" }, "value": { - "const": "pa.part20.classZA", + "const": "pa.part20.classAC", "type": "string" } }, @@ -1344,11 +1524,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Permission in Principle - Consent for the principle of a project with less than 1,000 square metres floor area on a site of less than 1 hectare", + "const": "Prior Approval - Build homes on detached houses", "type": "string" }, "value": { - "const": "pip", + "const": "pa.part20.classAD", "type": "string" } }, @@ -1362,11 +1542,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Permission in Principle - Approval of technical details", + "const": "Prior Approval - Demolish buildings and build homes in their place", "type": "string" }, "value": { - "const": "pip.technicalDetails", + "const": "pa.part20.classZA", "type": "string" } }, @@ -1542,11 +1722,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Planning Permission - Minor application", + "const": "Planning Permission - Technical details consent for major development", "type": "string" }, "value": { - "const": "pp.full.minor", + "const": "pp.full.major.technicalDetails", "type": "string" } }, @@ -1560,11 +1740,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Planning Permission - Minor application and consent to do works to a Listed Building", + "const": "Planning Permission - Technical details consent for waste development", "type": "string" }, "value": { - "const": "pp.full.minor.listed", + "const": "pp.full.major.technicalDetails.waste", "type": "string" } }, @@ -1578,11 +1758,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Planning Permission - Consent to extract minerals and related development, such as temporary buildings and roads", + "const": "Planning Permission - Full planning permission for waste development", "type": "string" }, "value": { - "const": "pp.mineralExtraction", + "const": "pp.full.major.waste", "type": "string" } }, @@ -1596,11 +1776,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Planning Permission - Consent to extract oil and gas", + "const": "Planning Permission - Minor application", "type": "string" }, "value": { - "const": "pp.onshoreExtractionOilAndGas", + "const": "pp.full.minor", "type": "string" } }, @@ -1614,11 +1794,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Planning permission - Outline for proposed development", + "const": "Planning Permission - Minor application and consent to do works to a Listed Building", "type": "string" }, "value": { - "const": "pp.outline", + "const": "pp.full.minor.listed", "type": "string" } }, @@ -1632,11 +1812,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Outline Planning Permission - Consent for the principle of a project witholding all details", + "const": "Planning Permission - Technical details consent for minor development", "type": "string" }, "value": { - "const": "pp.outline.allReserved", + "const": "pp.full.minor.technicalDetails", "type": "string" } }, @@ -1650,11 +1830,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Outline Planning Permission - Approval of reserved matters", + "const": "Planning Permission - Consent to extract minerals and related development, such as temporary buildings and roads", "type": "string" }, "value": { - "const": "pp.outline.reservedMatters", + "const": "pp.mineralExtraction", "type": "string" } }, @@ -1668,11 +1848,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Outline Planning Permission - Consent for the principle of a project specifying some details", + "const": "Planning Permission - Consent to extract oil and gas", "type": "string" }, "value": { - "const": "pp.outline.someReserved", + "const": "pp.onshoreExtractionOilAndGas", "type": "string" } }, @@ -1686,11 +1866,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Planning permission - Outline for proposed development (minor)", + "const": "Planning permission - Outline for proposed development", "type": "string" }, "value": { - "const": "pp.outline.minor", + "const": "pp.outline", "type": "string" } }, @@ -1704,11 +1884,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Outline Planning Permission - Consent for the principle of a project witholding all details (minor)", + "const": "Outline Planning Permission - Consent for the principle of a project witholding all details", "type": "string" }, "value": { - "const": "pp.outline.minor.allReserved", + "const": "pp.outline.all", "type": "string" } }, @@ -1722,11 +1902,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Outline Planning Permission - Approval of reserved matters (minor)", + "const": "Outline Planning Permission - Consent for the principle of a project specifying some details", "type": "string" }, "value": { - "const": "pp.outline.minor.reservedMatters", + "const": "pp.outline.some", "type": "string" } }, @@ -1740,11 +1920,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Outline Planning Permission - Consent for the principle of a project specifying some details (minor)", + "const": "Planning permission - Outline for proposed development (minor)", "type": "string" }, "value": { - "const": "pp.outline.minor.someReserved", + "const": "pp.outline.minor", "type": "string" } }, @@ -1758,11 +1938,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Planning permission - Outline for proposed development (major)", + "const": "Outline Planning Permission - Consent for the principle of a project witholding all details (minor)", "type": "string" }, "value": { - "const": "pp.outline.major", + "const": "pp.outline.minor.all", "type": "string" } }, @@ -1776,11 +1956,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Outline Planning Permission - Consent for the principle of a project witholding all details (major)", + "const": "Outline Planning Permission - Consent for the principle of a project specifying some details (minor)", "type": "string" }, "value": { - "const": "pp.outline.major.allReserved", + "const": "pp.outline.minor.some", "type": "string" } }, @@ -1794,11 +1974,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Outline Planning Permission - Approval of reserved matters (major)", + "const": "Planning permission - Outline for proposed development (major)", "type": "string" }, "value": { - "const": "pp.outline.major.reservedMatters", + "const": "pp.outline.major", "type": "string" } }, @@ -1812,11 +1992,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Outline Planning Permission - Consent for the principle of a project specifying some details (major)", + "const": "Outline Planning Permission - Consent for the principle of a project witholding all details (major)", "type": "string" }, "value": { - "const": "pp.outline.major.someReserved", + "const": "pp.outline.major.all", "type": "string" } }, @@ -1830,11 +2010,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Rights of Way Order - Apply to move or close a path", + "const": "Outline Planning Permission - Consent for the principle of waste development witholding all details", "type": "string" }, "value": { - "const": "rightsOfWayOrder", + "const": "pp.outline.major.all.waste", "type": "string" } }, @@ -1848,7 +2028,97 @@ "additionalProperties": false, "properties": { "description": { - "const": "Works to trees", + "const": "Outline Planning Permission - Consent for the principle of a project specifying some details (major)", + "type": "string" + }, + "value": { + "const": "pp.outline.major.some", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Outline Planning Permission - Consent for the principle of waste development witholding all details", + "type": "string" + }, + "value": { + "const": "pp.outline.major.some.waste", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Permission in Principle - Consent for the principle of a project with less than 1,000 square metres floor area on a site of less than 1 hectare", + "type": "string" + }, + "value": { + "const": "pp.pip", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Permission in Principle - Approval of technical details", + "type": "string" + }, + "value": { + "const": "pp.pip.technicalDetails", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Rights of Way Order - Apply to move or close a path", + "type": "string" + }, + "value": { + "const": "rightsOfWayOrder", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Works to trees", "type": "string" }, "value": { @@ -2131,12 +2401,6 @@ "additionalProperties": false, "description": "Assessment of flood risk, if applicable to application.type", "properties": { - "20mFromWatercourse": { - "type": "boolean" - }, - "increasedRiskElsewhere": { - "type": "boolean" - }, "surfaceWaterDisposal": { "enum": [ "drainageSystem", @@ -2182,6 +2446,24 @@ ], "type": "object" }, + "newDwellings": { + "additionalProperties": false, + "properties": { + "newBuild": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + } + }, + "required": [ + "count" + ], + "type": "object" + } + }, + "type": "object" + }, "projectType": { "items": { "$ref": "#/definitions/ProjectType" @@ -2240,6 +2522,9 @@ ], "type": "object" }, + "units": { + "$ref": "#/definitions/ResidentialUnits" + }, "use": { "additionalProperties": false, "description": "Proposed land use, including storage of hazardous materials, if applicable to application.type", @@ -2268,7 +2553,21 @@ "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", @@ -2277,6 +2576,85 @@ "other" ], "type": "string" + }, + "gas": { + "additionalProperties": false, + "description": "Count of new gas connections", + "properties": { + "connections": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + } + }, + "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": { + "type": "number" + } + }, + "required": [ + "count" + ], + "type": "object" + }, + "residentialUnits": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + } + }, + "required": [ + "count" + ], + "type": "object" + } + }, + "required": [ + "commercialUnits", + "residentialUnits" + ], + "type": "object" + }, + "water": { + "additionalProperties": false, + "description": "Count of new water connections", + "properties": { + "connections": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + } + }, + "required": [ + "count" + ], + "type": "object" + } + }, + "required": [ + "connections" + ], + "type": "object" } }, "type": "object" @@ -2312,6 +2690,84 @@ ], "type": "object" }, + "BuildingRegulation": { + "$id": "#BuildingRegulation", + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Part M4(2) of the Building Regulations 2010", + "type": "string" + }, + "value": { + "const": "m42", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Part M4(3)(2a) of the Building Regulations 2010", + "type": "string" + }, + "value": { + "const": "m432a", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Part M4(3)(2b) of the Building Regulations 2010", + "type": "string" + }, + "value": { + "const": "m432b", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "None of these", + "type": "string" + }, + "value": { + "const": "none", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + } + ], + "description": "Building regulations" + }, "CalculateMetadata": { "$id": "#CalculateMetadata", "additionalProperties": false, @@ -2397,11 +2853,193 @@ ], "type": "object" }, - "Email": { - "format": "email", - "type": "string" - }, - "Feature": { + "DevelopmentType": { + "$id": "#DevelopmentType", + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Change of use", + "type": "string" + }, + "value": { + "const": "changeOfUse", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Change of use of an existing single home", + "type": "string" + }, + "value": { + "const": "changeOfUseFrom", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Change of use to a home", + "type": "string" + }, + "value": { + "const": "changeOfUseTo", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Conversion", + "type": "string" + }, + "value": { + "const": "conversion", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Extension", + "type": "string" + }, + "value": { + "const": "extension", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "New build", + "type": "string" + }, + "value": { + "const": "newBuild", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Not known", + "type": "string" + }, + "value": { + "const": "notKnown", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + } + ], + "description": "Development types" + }, + "Email": { + "format": "email", + "type": "string" + }, + "Entity": { + "additionalProperties": false, + "properties": { + "description": { + "type": "string" + }, + "name": { + "type": "string" + }, + "source": { + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "text": { + "const": "Planning Data", + "type": "string" + }, + "url": { + "$ref": "#/definitions/URL" + } + }, + "required": [ + "text", + "url" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "text": { + "const": "Ordnance Survey MasterMap Highways", + "type": "string" + } + }, + "required": [ + "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": { @@ -3463,6 +4101,24 @@ ], "type": "object" }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Method statement", + "type": "string" + }, + "value": { + "const": "methodStatement", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, { "additionalProperties": false, "properties": { @@ -3679,6 +4335,24 @@ ], "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": { @@ -3697,6 +4371,24 @@ ], "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": { @@ -3967,6 +4659,24 @@ ], "type": "object" }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Technical specification", + "type": "string" + }, + "value": { + "const": "technicalSpecification", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, { "additionalProperties": false, "properties": { @@ -4147,6 +4857,24 @@ ], "type": "object" }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Tree plan", + "type": "string" + }, + "value": { + "const": "treePlan", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, { "additionalProperties": false, "properties": { @@ -4345,6 +5073,24 @@ ], "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": { @@ -4383,6 +5129,654 @@ }, "type": "object" }, + "GLAHousingProvider": { + "$id": "#GLAHousingProvider", + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Other affordable housing provider", + "type": "string" + }, + "value": { + "const": "affordableHousing", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Council delivered build to rent", + "type": "string" + }, + "value": { + "const": "councilBuildToRent", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Council delivery company", + "type": "string" + }, + "value": { + "const": "councilDelivery", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Housing association", + "type": "string" + }, + "value": { + "const": "HA", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Local Authority", + "type": "string" + }, + "value": { + "const": "LA", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Private", + "type": "string" + }, + "value": { + "const": "private", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Private rented sector", + "type": "string" + }, + "value": { + "const": "privateRented", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Other public authority", + "type": "string" + }, + "value": { + "const": "publicAuthority", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Self-build", + "type": "string" + }, + "value": { + "const": "selfBuild", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + } + ], + "description": "Housing provider categories tracked by the Greater London Authority (GLA)" + }, + "GLAResidentialUnitType": { + "$id": "#GLAResidentialUnitType", + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Cluster flat", + "type": "string" + }, + "value": { + "const": "cluster", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Co-living unit", + "type": "string" + }, + "value": { + "const": "coLiving", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Detached home", + "type": "string" + }, + "value": { + "const": "detached", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Flat/apartment or maisonette", + "type": "string" + }, + "value": { + "const": "flat", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "House in multiple occupation (HMO)", + "type": "string" + }, + "value": { + "const": "HMO", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Hostel room", + "type": "string" + }, + "value": { + "const": "hostel", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Live/work unit", + "type": "string" + }, + "value": { + "const": "LW", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Other", + "type": "string" + }, + "value": { + "const": "other", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Semi-detached home", + "type": "string" + }, + "value": { + "const": "semiDetached", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Student accomodation", + "type": "string" + }, + "value": { + "const": "student", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Studio or bedsit", + "type": "string" + }, + "value": { + "const": "studio", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Terraced home", + "type": "string" + }, + "value": { + "const": "terraced", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + } + ], + "description": "Residential unit types tracked by the Greater London Authority (GLA)" + }, + "GLATenureType": { + "$id": "#GLATenureType", + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Affordable rent (not at LAR benchmark rents)", + "type": "string" + }, + "value": { + "const": "AR", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Discount market rate", + "type": "string" + }, + "value": { + "const": "DMR", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Discount market rate (charged at London Living Rents)", + "type": "string" + }, + "value": { + "const": "DMRLLR", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Discount market sale", + "type": "string" + }, + "value": { + "const": "DMS", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "London Affordable Rent", + "type": "string" + }, + "value": { + "const": "LAR", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "London Living Rent", + "type": "string" + }, + "value": { + "const": "LRR", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "London Shared Ownership", + "type": "string" + }, + "value": { + "const": "LSO", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Market for rent", + "type": "string" + }, + "value": { + "const": "marketForRent", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Market for sale", + "type": "string" + }, + "value": { + "const": "marketForSale", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Other", + "type": "string" + }, + "value": { + "const": "other", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Self-build and custom build", + "type": "string" + }, + "value": { + "const": "selfCustomBuild", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Starter homes", + "type": "string" + }, + "value": { + "const": "SH", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Shared equity", + "type": "string" + }, + "value": { + "const": "sharedEquity", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Social rent", + "type": "string" + }, + "value": { + "const": "SR", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + } + ], + "description": "Tenure types tracked by the Greater London Authority (GLA)" + }, "GeoBoundary": { "additionalProperties": false, "properties": { @@ -4524,8 +5918,21 @@ "LeadDeveloper": { "additionalProperties": false, "properties": { - "companyRegistrationNumber": { - "type": "string" + "company": { + "additionalProperties": false, + "properties": { + "name": { + "type": "string" + }, + "registrationNumber": { + "type": "string" + } + }, + "required": [ + "name", + "registrationNumber" + ], + "type": "object" }, "type": { "enum": [ @@ -4649,6 +6056,19 @@ "$ref": "#/definitions/GeoBoundary", "description": "HM Land Registry Index polygon for this property, commonly referred to as the blue line boundary, sourced from planning.data.gov.uk/dataset/title-boundary" }, + "flood": { + "additionalProperties": false, + "description": "Existing flood risk, if applicable to application.type", + "properties": { + "20mFromWatercourse": { + "type": "boolean" + }, + "increasedRiskElsewhere": { + "type": "boolean" + } + }, + "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", "items": { @@ -4660,6 +6080,24 @@ "$ref": "#/definitions/Materials", "description": "Existing materials, if applicable to proposal.projectType" }, + "occupation": { + "additionalProperties": false, + "description": "Current occupation status of the property", + "properties": { + "status": { + "enum": [ + "occupied", + "partVacant", + "vacant" + ], + "type": "string" + } + }, + "required": [ + "status" + ], + "type": "object" + }, "ownership": { "additionalProperties": false, "description": "Current ownership status of the land", @@ -4916,9 +6354,29 @@ ], "type": "object" }, + "trees": { + "additionalProperties": false, + "description": "Existing trees on or near the site", + "properties": { + "adjacent": { + "type": "boolean" + }, + "present": { + "type": "boolean" + } + }, + "required": [ + "present", + "adjacent" + ], + "type": "object" + }, "type": { "$ref": "#/definitions/PropertyType" }, + "units": { + "$ref": "#/definitions/ResidentialUnits" + }, "use": { "additionalProperties": false, "description": "Existing land use, if applicable to application.type", @@ -5007,10 +6465,6 @@ "type": "object" } }, - "required": [ - "active", - "passive" - ], "type": "object" }, "cost": { @@ -5055,17 +6509,104 @@ "adjacent", "none" ], - "type": "string" + "type": "string" + }, + "speciesAffected": { + "enum": [ + "site", + "adjacent", + "none" + ], + "type": "string" + } + }, + "type": "object" + }, + "energy": { + "additionalProperties": false, + "description": "Proposed energy sources", + "properties": { + "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" + }, + "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" + }, + "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" }, - "speciesAffected": { - "enum": [ - "site", - "adjacent", - "none" - ], - "type": "string" + "type": { + "items": { + "enum": [ + "communityOwned", + "heatPump", + "solar" + ], + "type": "string" + }, + "type": "array" } }, + "required": [ + "type" + ], "type": "object" }, "environmentalImpactDescription": { @@ -5087,12 +6628,6 @@ "additionalProperties": false, "description": "Assessment of flood risk, if applicable to application.type", "properties": { - "20mFromWatercourse": { - "type": "boolean" - }, - "increasedRiskElsewhere": { - "type": "boolean" - }, "surfaceWaterDisposal": { "enum": [ "drainageSystem", @@ -5107,6 +6642,19 @@ }, "type": "object" }, + "greenRoof": { + "additionalProperties": false, + "description": "Green roof", + "properties": { + "area": { + "$ref": "#/definitions/Area" + } + }, + "required": [ + "area" + ], + "type": "object" + }, "materials": { "$ref": "#/definitions/Materials", "description": "Proposed materials, if applicable to projectType" @@ -5256,6 +6804,24 @@ "$ref": "#/definitions/NewBuildingsOrStoreys", "description": "Creating new buildings" }, + "newDwellings": { + "additionalProperties": false, + "properties": { + "newBuild": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + } + }, + "required": [ + "count" + ], + "type": "object" + } + }, + "type": "object" + }, "newStoreys": { "$ref": "#/definitions/NewBuildingsOrStoreys", "description": "Increasing the height of existing buildings" @@ -5481,6 +7047,239 @@ ], "type": "object" }, + "units": { + "additionalProperties": false, + "properties": { + "residential": { + "additionalProperties": false, + "properties": { + "new": { + "items": { + "additionalProperties": false, + "properties": { + "area": { + "$ref": "#/definitions/Area" + }, + "bedrooms": { + "type": "number" + }, + "compliance": { + "items": { + "$ref": "#/definitions/BuildingRegulation" + }, + "type": "array" + }, + "development": { + "$ref": "#/definitions/DevelopmentType" + }, + "garden": { + "type": "boolean" + }, + "habitableRooms": { + "type": "number" + }, + "identicalUnits": { + "type": "number" + }, + "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": { + "type": "number" + }, + "compliance": { + "items": { + "$ref": "#/definitions/BuildingRegulation" + }, + "type": "array" + }, + "development": { + "$ref": "#/definitions/DevelopmentType" + }, + "garden": { + "type": "boolean" + }, + "habitableRooms": { + "type": "number" + }, + "identicalUnits": { + "type": "number" + }, + "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": { + "type": "number" + }, + "compliance": { + "items": { + "$ref": "#/definitions/BuildingRegulation" + }, + "type": "array" + }, + "habitableRooms": { + "type": "number" + }, + "identicalUnits": { + "type": "number" + }, + "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": { + "type": "number" + }, + "identicalUnits": { + "type": "number" + }, + "tenure": { + "$ref": "#/definitions/GLATenureType" + }, + "type": { + "$ref": "#/definitions/GLAResidentialUnitType" + } + }, + "required": [ + "bedrooms", + "tenure", + "type", + "identicalUnits" + ], + "type": "object" + }, + "type": "array" + } + }, + "type": "object" + } + }, + "required": [ + "residential" + ], + "type": "object" + }, + "urbanGreeningFactor": { + "additionalProperties": false, + "description": "Urban Greening Factor Score", + "properties": { + "score": { + "type": "number" + } + }, + "required": [ + "score" + ], + "type": "object" + }, "use": { "additionalProperties": false, "description": "Proposed land use, including storage of hazardous materials, if applicable to application.type", @@ -5509,7 +7308,21 @@ "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", @@ -5517,9 +7330,110 @@ "pit", "other" ], - "type": "string" + "type": "string" + }, + "gas": { + "additionalProperties": false, + "description": "Count of new gas connections", + "properties": { + "connections": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + } + }, + "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": { + "type": "number" + } + }, + "required": [ + "count" + ], + "type": "object" + }, + "residentialUnits": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + } + }, + "required": [ + "count" + ], + "type": "object" + } + }, + "required": [ + "commercialUnits", + "residentialUnits" + ], + "type": "object" + }, + "water": { + "additionalProperties": false, + "description": "Count of new water connections", + "properties": { + "connections": { + "additionalProperties": false, + "properties": { + "count": { + "type": "number" + } + }, + "required": [ + "count" + ], + "type": "object" + } + }, + "required": [ + "connections" + ], + "type": "object" + } + }, + "type": "object" + }, + "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" }, "water": { @@ -6479,66 +8393,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -7221,66 +9079,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -7293,7 +9095,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -7307,66 +9108,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -7379,7 +9124,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -7393,66 +9137,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -7465,7 +9153,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -7479,66 +9166,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -7551,7 +9182,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -7565,66 +9195,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -7637,7 +9211,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -7651,66 +9224,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -7723,7 +9240,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -7737,66 +9253,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -7809,7 +9269,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -7823,66 +9282,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -7895,7 +9298,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -7909,66 +9311,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -7981,7 +9327,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -7995,66 +9340,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -8067,7 +9356,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -8081,66 +9369,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -8153,7 +9385,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -8167,66 +9398,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -8239,7 +9414,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -8253,66 +9427,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -8325,7 +9443,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -8339,66 +9456,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -8411,7 +9472,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -8425,66 +9485,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -8497,7 +9501,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -8511,66 +9514,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -8583,7 +9530,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -8597,66 +9543,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -8669,7 +9559,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -8683,66 +9572,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -8755,7 +9588,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -8769,66 +9601,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -8841,7 +9617,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -8855,66 +9630,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -8927,7 +9646,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -8941,66 +9659,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -9013,7 +9675,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -9027,66 +9688,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -9099,7 +9704,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -9113,66 +9717,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -9185,7 +9733,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -9199,66 +9746,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -9271,7 +9762,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -9285,66 +9775,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -9357,7 +9791,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -9371,66 +9804,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -9443,7 +9820,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -9457,66 +9833,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -9529,7 +9849,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -9543,66 +9862,10 @@ "type": "string" }, "entities": { - "anyOf": [ - { - "items": { - "additionalProperties": false, - "properties": { - "description": { - "type": "string" - }, - "name": { - "type": "string" - }, - "source": { - "anyOf": [ - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Planning Data", - "type": "string" - }, - "url": { - "$ref": "#/definitions/URL" - } - }, - "required": [ - "text", - "url" - ], - "type": "object" - }, - { - "additionalProperties": false, - "properties": { - "text": { - "const": "Ordnance Survey MasterMap Highways", - "type": "string" - } - }, - "required": [ - "text" - ], - "type": "object" - } - ] - } - }, - "required": [ - "name", - "source" - ], - "type": "object" - }, - "type": "array" - }, - { - "maxItems": 0, - "minItems": 0, - "type": "array" - } - ] + "items": { + "$ref": "#/definitions/Entity" + }, + "type": "array" }, "intersects": { "const": true, @@ -9615,7 +9878,6 @@ }, "required": [ "description", - "entities", "intersects", "value" ], @@ -10397,7 +10659,7 @@ "type": "string" }, "value": { - "const": "alter.deck", + "const": "alter.decks", "type": "string" } }, @@ -10731,6 +10993,24 @@ ], "type": "object" }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Install machinery", + "type": "string" + }, + "value": { + "const": "alter.equipment.machinery", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, { "additionalProperties": false, "properties": { @@ -10771,11 +11051,29 @@ "additionalProperties": false, "properties": { "description": { - "const": "Install solar thermal equipment", + "const": "Install solar thermal equipment", + "type": "string" + }, + "value": { + "const": "alter.equipment.solar.thermal", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Install an outdoor tank (for example a water tank)", "type": "string" }, "value": { - "const": "alter.equipment.solar.thermal", + "const": "alter.equipment.tank", "type": "string" } }, @@ -10789,11 +11087,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "Install an outdoor tank (for example a water tank)", + "const": "Install ventilation", "type": "string" }, "value": { - "const": "alter.equipment.tank", + "const": "alter.equipment.ventilation", "type": "string" } }, @@ -14515,11 +14813,11 @@ "additionalProperties": false, "properties": { "description": { - "const": "New agricultural buildings - glass house", + "const": "New agricultural buildings - glasshouse", "type": "string" }, "value": { - "const": "new.agriculture.glassHouse", + "const": "new.agriculture.glasshouse", "type": "string" } }, @@ -14767,7 +15065,7 @@ "additionalProperties": false, "properties": { "description": { - "const": "Build new homes on a roof", + "const": "Build new homes", "type": "string" }, "value": { @@ -23693,6 +23991,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": { @@ -24362,6 +24700,19 @@ "$ref": "#/definitions/GeoBoundary", "description": "HM Land Registry Index polygon for this property, commonly referred to as the blue line boundary, sourced from planning.data.gov.uk/dataset/title-boundary" }, + "flood": { + "additionalProperties": false, + "description": "Existing flood risk, if applicable to application.type", + "properties": { + "20mFromWatercourse": { + "type": "boolean" + }, + "increasedRiskElsewhere": { + "type": "boolean" + } + }, + "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", "items": { @@ -24433,9 +24784,29 @@ "region": { "$ref": "#/definitions/UKRegion" }, + "trees": { + "additionalProperties": false, + "description": "Existing trees on or near the site", + "properties": { + "adjacent": { + "type": "boolean" + }, + "present": { + "type": "boolean" + } + }, + "required": [ + "present", + "adjacent" + ], + "type": "object" + }, "type": { "$ref": "#/definitions/PropertyType" }, + "units": { + "$ref": "#/definitions/ResidentialUnits" + }, "use": { "additionalProperties": false, "description": "Existing land use, if applicable to application.type", @@ -24486,6 +24857,234 @@ ], "type": "string" }, + "UKResidentialUnitType": { + "$id": "#UKResidentialUnitType", + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Cluster flat", + "type": "string" + }, + "value": { + "const": "cluster", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Flat", + "type": "string" + }, + "value": { + "const": "flat", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "House", + "type": "string" + }, + "value": { + "const": "house", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Other", + "type": "string" + }, + "value": { + "const": "other", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Sheltered housing", + "type": "string" + }, + "value": { + "const": "sheltered", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Studio or bedsit", + "type": "string" + }, + "value": { + "const": "studio", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + } + ], + "description": "Residential unit types tracked throughout the UK" + }, + "UKTenureType": { + "$id": "#UKTenureType", + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Affordable home ownership", + "type": "string" + }, + "value": { + "const": "AHO", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Market housing", + "type": "string" + }, + "value": { + "const": "MH", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Other", + "type": "string" + }, + "value": { + "const": "other", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Social, affordable or interim rent", + "type": "string" + }, + "value": { + "const": "SAIR", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Self-build and custom build", + "type": "string" + }, + "value": { + "const": "selfCustomBuild", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + }, + { + "additionalProperties": false, + "properties": { + "description": { + "const": "Starter homes", + "type": "string" + }, + "value": { + "const": "SH", + "type": "string" + } + }, + "required": [ + "value", + "description" + ], + "type": "object" + } + ], + "description": "Tenure types tracked throughout the UK" + }, "URL": { "format": "uri", "pattern": "^https?://", diff --git a/scripts/build-json-examples.ts b/scripts/build-json-examples.ts index 1a0b5418..3bf2fab4 100644 --- a/scripts/build-json-examples.ts +++ b/scripts/build-json-examples.ts @@ -1,9 +1,16 @@ import * as fs from 'fs'; import * as path from 'path'; + import {lawfulDevelopmentCertificateExisting} from '../examples/data/lawfulDevelopmentCertificate/existing'; import {lawfulDevelopmentCertificateProposed} from '../examples/data/lawfulDevelopmentCertificate/proposed'; import {listedBuildingConsent} from '../examples/data/listedBuildingConsent'; import {planningPermissionFullHouseholder} from '../examples/data/planningPermission/fullHouseholder'; +import {planningPermissionMajor} from '../examples/data/planningPermission/major'; +import {planningPermissionMinor} from '../examples/data/planningPermission/minor'; +import {priorApprovalBuildHomes} from '../examples/data/priorApproval/buildHomes'; +import {priorApprovalConvertCommercialToHome} from '../examples/data/priorApproval/convertCommercialToHome'; +import {priorApprovalExtendUniversity} from '../examples/data/priorApproval/extendUniversity'; +import {priorApprovalLargerExtension} from '../examples/data/priorApproval/largerExtension'; import {priorApprovalSolarPanels} from '../examples/data/priorApproval/solarPanels'; import {Schema} from '../types/Schema'; @@ -21,14 +28,38 @@ const examplesToConvert: Example[] = [ filename: 'lawfulDevelopmentCertificate/proposed', data: lawfulDevelopmentCertificateProposed, }, + { + filename: 'priorApproval/extendUniversity', + data: priorApprovalExtendUniversity, + }, { filename: 'priorApproval/solarPanels', data: priorApprovalSolarPanels, }, + { + filename: 'priorApproval/buildHomes', + data: priorApprovalBuildHomes, + }, + { + filename: 'priorApproval/convertCommercialToHome', + data: priorApprovalConvertCommercialToHome, + }, + { + filename: 'priorApproval/largerExtension', + data: priorApprovalLargerExtension, + }, { filename: 'planningPermission/fullHouseholder', data: planningPermissionFullHouseholder, }, + { + filename: 'planningPermission/major', + data: planningPermissionMajor, + }, + { + filename: 'planningPermission/minor', + data: planningPermissionMinor, + }, { filename: 'listedBuildingConsent', data: listedBuildingConsent, diff --git a/tests/usage.test.ts b/tests/usage.test.ts index 3cfb85f0..316c9597 100644 --- a/tests/usage.test.ts +++ b/tests/usage.test.ts @@ -1,3 +1,4 @@ +import {priorApprovalLargerExtension} from './../examples/data/priorApproval/largerExtension'; import Ajv from 'ajv'; import addFormats from 'ajv-formats'; import {Validator} from 'jsonschema'; @@ -7,6 +8,11 @@ import {lawfulDevelopmentCertificateExisting} from '../examples/data/lawfulDevel import {lawfulDevelopmentCertificateProposed} from '../examples/data/lawfulDevelopmentCertificate/proposed'; import {listedBuildingConsent} from '../examples/data/listedBuildingConsent'; import {planningPermissionFullHouseholder} from '../examples/data/planningPermission/fullHouseholder'; +import {planningPermissionMajor} from '../examples/data/planningPermission/major'; +import {planningPermissionMinor} from '../examples/data/planningPermission/minor'; +import {priorApprovalBuildHomes} from '../examples/data/priorApproval/buildHomes'; +import {priorApprovalConvertCommercialToHome} from '../examples/data/priorApproval/convertCommercialToHome'; +import {priorApprovalExtendUniversity} from '../examples/data/priorApproval/extendUniversity'; import {priorApprovalSolarPanels} from '../examples/data/priorApproval/solarPanels'; import generatedSchema from '../schema/schema.json'; @@ -15,7 +21,13 @@ const examplesToTest = [ lawfulDevelopmentCertificateProposed, listedBuildingConsent, planningPermissionFullHouseholder, + planningPermissionMajor, + planningPermissionMinor, + priorApprovalExtendUniversity, priorApprovalSolarPanels, + priorApprovalBuildHomes, + priorApprovalConvertCommercialToHome, + priorApprovalLargerExtension, ]; describe("parsing using the 'jsonschema' library", () => { diff --git a/types/enums/ApplicationTypes.ts b/types/enums/ApplicationTypes.ts index 3da79458..2713d63a 100644 --- a/types/enums/ApplicationTypes.ts +++ b/types/enums/ApplicationTypes.ts @@ -9,6 +9,13 @@ export const ApplicationTypes = { 'Consent to make small (minor material) changes to a project with Planning Permission', 'amendment.nonMaterial': 'Consent to make small (non-material) changes to a project with Planning Permission', + approval: 'Planning approval', + 'approval.reservedMatters': 'Approval of reserved matters', + complianceConfirmation: + 'Written confirmation of compliance with a planning condition', + environmnentalImpact: 'Environmental Impact Decision', + 'environmentalImpact.scoping': 'Environmental Impact Decision - Scoping', + 'environmentalImpact.screening': 'Environmental Impact Decision - Screening', hazardousSubstanceConsent: 'Consent to move and dispose of hazardous substances', hedgerowRemovalNotice: 'Notice to remove a hedge', @@ -22,6 +29,10 @@ export const ApplicationTypes = { 'ldc.condition': 'Lawful Development Certificate - Lawful not to comply with a condition or limitation', listed: 'Consent to do works to a Listed Building', + notifyCompletion: 'Notification of completion', + obligation: 'Planning obligation', + 'obligation.discharge': 'Discharge a planning obligation', + 'obligation.modify': 'Modify a planning obligation', pa: 'Prior Approval', 'pa.part1.classA': 'Prior Approval - Larger extension to a house', 'pa.part1.classAA': 'Prior Approval - Adding storeys to a house', @@ -45,8 +56,9 @@ export const ApplicationTypes = { 'Prior Approval - Convert a commercial building to a school', 'pa.part3.classV': 'Prior Approval - Part 3 Class V', 'pa.part4.classBB': 'Prior Approval - Put up a temporary structure', - 'pa.part4.classBC': 'Prior Approval - Part 4 Class BC', - 'pa.part4.classCA': 'Prior Approval - Part 4 Class CA', + 'pa.part4.classBC': 'Prior Approval - Develop a temporary campsite', + 'pa.part4.classCA': + 'Prior Approval - Put temporary school buildings on vacant commercial land', 'pa.part4.classE': 'Prior Approval - Use a building or land to shoot a film', 'pa.part6': 'Prior Approval - Alter or add new buildings to agricultural or forestry sites', @@ -58,15 +70,17 @@ export const ApplicationTypes = { 'pa.part7.classC': 'Prior Approval - Install click and collect facilities', 'pa.part7.classM': 'Prior Approval - Extend a school, college, university, prison or hospital', + 'pa.part9.classD': 'Prior Approval - Development of toll facilities', 'pa.part11.classB': 'Prior Approval - Demolish a building', 'pa.part14.classJ': 'Prior Approval - Install or change solar panels', 'pa.part16.classA': 'Prior Approval - Install telecommunications equipment', + 'pa.part17': 'Prior Approval - Coal mining', 'pa.part17.classB': 'Prior Approval - Part 17 Class B', 'pa.part17.classC': 'Prior Approval - Part 17 Class C', 'pa.part17.classG': 'Prior Approval - Part 17 Class G', 'pa.part18.classA': - 'Prior Approval - Specific Acts of Parliament or Local Orders', - 'pa.part19.classTA': 'Prior Approval - Part 19 Class TA', + 'Prior Approval - Development under private acts or orders', + 'pa.part19.classTA': 'Prior Approval - Development on a closed defence site', 'pa.part20.classA': 'Prior Approval - Build homes on a detached blocks of flats', 'pa.part20.classAA': @@ -77,9 +91,6 @@ export const ApplicationTypes = { 'pa.part20.classAD': 'Prior Approval - Build homes on detached houses', 'pa.part20.classZA': 'Prior Approval - Demolish buildings and build homes in their place', - pip: 'Permission in Principle - Consent for the principle of a project with less than 1,000 square metres floor area on a site of less than 1 hectare', - 'pip.technicalDetails': - 'Permission in Principle - Approval of technical details', pp: 'Planning Permission', 'pp.full': 'Planning Permission for development, including all householder, minor, and major applications', @@ -95,36 +106,46 @@ export const ApplicationTypes = { 'pp.full.householder.retro': 'Planning Permission - Full householder retrospective', 'pp.full.major': 'Planning Permission - Major application', + 'pp.full.major.technicalDetails': + 'Planning Permission - Technical details consent for major development', + 'pp.full.major.technicalDetails.waste': + 'Planning Permission - Technical details consent for waste development', + 'pp.full.major.waste': + 'Planning Permission - Full planning permission for waste development', 'pp.full.minor': 'Planning Permission - Minor application', 'pp.full.minor.listed': 'Planning Permission - Minor application and consent to do works to a Listed Building', + 'pp.full.minor.technicalDetails': + 'Planning Permission - Technical details consent for minor development', 'pp.mineralExtraction': 'Planning Permission - Consent to extract minerals and related development, such as temporary buildings and roads', 'pp.onshoreExtractionOilAndGas': 'Planning Permission - Consent to extract oil and gas', 'pp.outline': 'Planning permission - Outline for proposed development', - 'pp.outline.allReserved': + 'pp.outline.all': 'Outline Planning Permission - Consent for the principle of a project witholding all details', - 'pp.outline.reservedMatters': - 'Outline Planning Permission - Approval of reserved matters', - 'pp.outline.someReserved': + 'pp.outline.some': 'Outline Planning Permission - Consent for the principle of a project specifying some details', 'pp.outline.minor': 'Planning permission - Outline for proposed development (minor)', - 'pp.outline.minor.allReserved': + 'pp.outline.minor.all': 'Outline Planning Permission - Consent for the principle of a project witholding all details (minor)', - 'pp.outline.minor.reservedMatters': - 'Outline Planning Permission - Approval of reserved matters (minor)', - 'pp.outline.minor.someReserved': + 'pp.outline.minor.some': 'Outline Planning Permission - Consent for the principle of a project specifying some details (minor)', 'pp.outline.major': 'Planning permission - Outline for proposed development (major)', - 'pp.outline.major.allReserved': + 'pp.outline.major.all': 'Outline Planning Permission - Consent for the principle of a project witholding all details (major)', - 'pp.outline.major.reservedMatters': - 'Outline Planning Permission - Approval of reserved matters (major)', - 'pp.outline.major.someReserved': + 'pp.outline.major.all.waste': + 'Outline Planning Permission - Consent for the principle of waste development witholding all details', + 'pp.outline.major.some': 'Outline Planning Permission - Consent for the principle of a project specifying some details (major)', + 'pp.outline.major.some.waste': + 'Outline Planning Permission - Consent for the principle of waste development witholding all details', + 'pp.pip': + 'Permission in Principle - Consent for the principle of a project with less than 1,000 square metres floor area on a site of less than 1 hectare', + 'pp.pip.technicalDetails': + 'Permission in Principle - Approval of technical details', rightsOfWayOrder: 'Rights of Way Order - Apply to move or close a path', wtt: 'Works to trees', 'wtt.consent': @@ -132,3 +153,20 @@ export const ApplicationTypes = { 'wtt.notice': 'Works to trees - Notification of proposed works to a tree in a Conservation Area', }; + +type ApplicationTypeKeys = keyof typeof ApplicationTypes; + +type GenericApplicationType = { + value: TKey; + description: (typeof ApplicationTypes)[TKey]; +}; + +type ApplicationTypeMap = { + [K in ApplicationTypeKeys]: GenericApplicationType; +}; + +/** + * @id #ApplicationType + * @description Planning application types + */ +export type ApplicationType = ApplicationTypeMap[keyof ApplicationTypeMap]; diff --git a/types/enums/BuildingRegulations.ts b/types/enums/BuildingRegulations.ts new file mode 100644 index 00000000..6d35bdc2 --- /dev/null +++ b/types/enums/BuildingRegulations.ts @@ -0,0 +1,27 @@ +/** + * Values of `data.proposal.units.residential` + */ +export const BuildingRegulations = { + m42: 'Part M4(2) of the Building Regulations 2010', + m432a: 'Part M4(3)(2a) of the Building Regulations 2010', + m432b: 'Part M4(3)(2b) of the Building Regulations 2010', + none: 'None of these', +}; + +type BuildingRegulationKeys = keyof typeof BuildingRegulations; + +type GenericBuildingRegulation = { + value: TKey; + description: (typeof BuildingRegulations)[TKey]; +}; + +type BuildingRegulationMap = { + [K in BuildingRegulationKeys]: GenericBuildingRegulation; +}; + +/** + * @id #BuildingRegulation + * @description Building regulations + */ +export type BuildingRegulation = + BuildingRegulationMap[keyof BuildingRegulationMap]; diff --git a/types/enums/DevelopmentTypes.ts b/types/enums/DevelopmentTypes.ts index ea8d5c70..671e82f5 100644 --- a/types/enums/DevelopmentTypes.ts +++ b/types/enums/DevelopmentTypes.ts @@ -7,3 +7,20 @@ export const DevelopmentTypes = { newBuild: 'New build', notKnown: 'Not known', }; + +type DevelopmentTypeKeys = keyof typeof DevelopmentTypes; + +type GenericDevelopmentType = { + value: TKey; + description: (typeof DevelopmentTypes)[TKey]; +}; + +type DevelopmentTypeMap = { + [K in DevelopmentTypeKeys]: GenericDevelopmentType; +}; + +/** + * @id #DevelopmentType + * @description Development types + */ +export type DevelopmentType = DevelopmentTypeMap[keyof DevelopmentTypeMap]; diff --git a/types/enums/FileTypes.ts b/types/enums/FileTypes.ts index ee4d1bbd..6e6f43d4 100644 --- a/types/enums/FileTypes.ts +++ b/types/enums/FileTypes.ts @@ -53,6 +53,7 @@ export const FileTypes = { litterVerminAndBirdControlDetails: 'Details of litter, vermin and bird control', locationPlan: 'Location plan', + methodStatement: 'Method statement', mineralsAndWasteAssessment: 'Minerals and waste assessment', necessaryInformation: 'Information the authority considers necessary for the application', @@ -66,8 +67,10 @@ export const FileTypes = { 'photographs.existing': 'Photographs - existing', 'photographs.proposed': 'Photographs - proposed', planningStatement: 'Planning statement', + recycleWasteStorageDetails: 'Recyclable waste storage details', relevantInformation: 'Information the applicant considers relevant to the application', + residentialUnitsDetails: 'Residential units details', 'roofPlan.existing': 'Roof plan - existing', 'roofPlan.proposed': 'Roof plan - proposed', 'sections.existing': 'Sections - existing', @@ -84,6 +87,7 @@ export const FileTypes = { sunlightAndDaylightReport: 'Sunlight and daylight report', sustainabilityStatement: 'Sustainability statement', technicalEvidence: 'Technical evidence', + technicalSpecification: 'Technical specification', tenancyAgreement: 'Tenancy agreement', tenancyInvoice: 'Tenancy invoice', townCentreImpactAssessment: 'Town centre uses - Impact assessment', @@ -94,6 +98,7 @@ export const FileTypes = { treeAndHedgeRemovedOrPruned: 'Removed or pruned trees and hedges', treeCanopyCalculator: 'Tree canopy calculator', treeConditionReport: 'Tree condition report', + treePlan: 'Tree plan', treesReport: 'Trees report', 'unitPlan.existing': 'Unit plan - existing', 'unitPlan.proposed': 'Unit plan - proposed', @@ -105,5 +110,23 @@ export const FileTypes = { viabilityAppraisal: 'Viability Appraisal', visualisations: 'Visualisations', wasteAndRecyclingStrategy: 'Waste and recycling strategy', + wasteStorageDetails: 'Waste storage details', waterEnvironmentAssessment: 'Water environment assessment', }; + +type FileTypeKeys = keyof typeof FileTypes; + +type GenericFileType = { + value: TKey; + description: (typeof FileTypes)[TKey]; +}; + +type FileTypeMap = { + [K in FileTypeKeys]: GenericFileType; +}; + +/** + * @id #FileType + * @description Types of planning documents and drawings + */ +export type FileType = FileTypeMap[keyof FileTypeMap]; diff --git a/types/enums/Flags.ts b/types/enums/Flags.ts index 3b1c6aa5..a98d3581 100644 --- a/types/enums/Flags.ts +++ b/types/enums/Flags.ts @@ -40,3 +40,20 @@ export const Flags = { 'Community infrastructure levy / Liable': '', 'Community infrastructure levy / Not liable': '', }; + +type FlagKeys = keyof typeof Flags; + +type GenericFlag = { + value: TKey; + description: (typeof Flags)[TKey]; +}; + +type FlagMap = { + [K in FlagKeys]: GenericFlag; +}; + +/** + * @id #ResultFlag + * @description The result of a single flagset + */ +export type ResultFlag = FlagMap[keyof FlagMap]; diff --git a/types/enums/HousingProviders.ts b/types/enums/HousingProviders.ts index 508f7ef5..30a28dc0 100644 --- a/types/enums/HousingProviders.ts +++ b/types/enums/HousingProviders.ts @@ -9,3 +9,21 @@ export const GLAHousingProviders = { publicAuthority: 'Other public authority', selfBuild: 'Self-build', }; + +type GLAHousingProviderKeys = keyof typeof GLAHousingProviders; + +type GenericGLAHousingProvider = { + value: TKey; + description: (typeof GLAHousingProviders)[TKey]; +}; + +type GLAHousingProviderMap = { + [K in GLAHousingProviderKeys]: GenericGLAHousingProvider; +}; + +/** + * @id #GLAHousingProvider + * @description Housing provider categories tracked by the Greater London Authority (GLA) + */ +export type GLAHousingProvider = + GLAHousingProviderMap[keyof GLAHousingProviderMap]; diff --git a/types/enums/OpenSpaces.ts b/types/enums/OpenSpaces.ts index 598b3ec8..d4c467eb 100644 --- a/types/enums/OpenSpaces.ts +++ b/types/enums/OpenSpaces.ts @@ -21,3 +21,38 @@ export const GLAOpenSpaceDesignations = { none: 'Not designated', other: 'Other designation', }; + +type OpenSpaceTypeKeys = keyof typeof GLAOpenSpaceTypes; + +type GenericOpenSpaceType = { + value: TKey; + description: (typeof GLAOpenSpaceTypes)[TKey]; +}; + +type OpenSpaceTypeMap = { + [K in OpenSpaceTypeKeys]: GenericOpenSpaceType; +}; + +/** + * @id #OpenSpaceType + * @description Types of natural open spaces + */ +export type OpenSpaceType = OpenSpaceTypeMap[keyof OpenSpaceTypeMap]; + +type OpenSpaceDesignationKeys = keyof typeof GLAOpenSpaceDesignations; + +type GenericOpenSpaceDesignation = { + value: TKey; + description: (typeof GLAOpenSpaceDesignations)[TKey]; +}; + +type OpenSpaceDesignationMap = { + [K in OpenSpaceDesignationKeys]: GenericOpenSpaceDesignation; +}; + +/** + * @id #OpenSpaceDesignation + * @description Designations of natural open spaces + */ +export type OpenSpaceDesignation = + OpenSpaceDesignationMap[keyof OpenSpaceDesignationMap]; diff --git a/types/enums/PlanningConstraints.ts b/types/enums/PlanningConstraints.ts index 10ac5fe4..ef7b87aa 100644 --- a/types/enums/PlanningConstraints.ts +++ b/types/enums/PlanningConstraints.ts @@ -1,3 +1,5 @@ +import {Entity} from '../schema/data/shared'; + /** * Values for `data.property.planning.designations` */ @@ -31,3 +33,40 @@ export const PlanningDesignations = { 'road.classified': 'Classified Road', tpo: 'Tree Preservation Order (TPO) or zone', }; + +type PlanningDesigationKeys = keyof typeof PlanningDesignations; + +type GenericPlanningDesignation = { + value: TKey; + description: (typeof PlanningDesignations)[TKey]; +}; + +type PlanningDesignationMap = { + [K in PlanningDesigationKeys]: GenericPlanningDesignation; +}; + +type BasePlanningDesignation = + PlanningDesignationMap[keyof PlanningDesignationMap]; + +/** + * @description A planning designation that does not intersect with the proposed site, per the DE-9IM spatial relationship definition of intersects + */ +type NonIntersectingPlanningDesignation = { + intersects: false; +} & BasePlanningDesignation; + +/** + * @description A planning designation that does intersect with the proposed site, per the DE-9IM spatial relationship definition of intersects + */ +type IntersectingPlanningDesignation = { + intersects: true; + entities?: Entity[]; +} & BasePlanningDesignation; + +/** + * @id #PlanningDesignation + * @description Planning designations that may intersect with the proposed site determined by spatial queries against Planning Data (planning.data.gov.uk) and Ordnance Survey + */ +export type PlanningDesignation = + | NonIntersectingPlanningDesignation + | IntersectingPlanningDesignation; diff --git a/types/enums/ProjectTypes.ts b/types/enums/ProjectTypes.ts index 9c8277ad..c9738d31 100644 --- a/types/enums/ProjectTypes.ts +++ b/types/enums/ProjectTypes.ts @@ -47,7 +47,7 @@ export const ProjectTypes = { 'alter.chimneys': 'Change chimneys', 'alter.chimneys.add': 'Add a chimney', 'alter.chimneys.replace': 'Replace a chimney', - 'alter.deck': 'Add a verandah or deck', + 'alter.decks': 'Add a verandah or deck', 'alter.decksHigh': 'Add a high verandah or deck', 'alter.drains': 'Work on drains', 'alter.equipment': 'Install equipment', @@ -66,10 +66,12 @@ export const ProjectTypes = { 'alter.equipment.heatPump.water': 'Install a water heat pump', 'alter.equipment.industrial': 'Install industrial equipment', 'alter.equipment.lighting': 'Install outdoor lights', + 'alter.equipment.machinery': 'Install machinery', 'alter.equipment.solar': 'Install solar panels', 'alter.equipment.solar.pv': 'Install solar photovoltaics (PV)', 'alter.equipment.solar.thermal': 'Install solar thermal equipment', 'alter.equipment.tank': 'Install an outdoor tank (for example a water tank)', + 'alter.equipment.ventilation': 'Install ventilation', 'alter.equipment.wifi': 'Install internet equipment', 'alter.equipment.wind': 'Install a wind turbine', 'alter.facades': 'Change the material or colour of the external walls', @@ -314,7 +316,7 @@ export const ProjectTypes = { maintain: 'Maintenance of an existing structure', new: 'Add a new separate building or self-contained units', 'new.agriculture': 'New agricultural buildings', - 'new.agriculture.glassHouse': 'New agricultural buildings - glass house', + 'new.agriculture.glasshouse': 'New agricultural buildings - glasshouse', 'new.agriculture.mining': 'New agricultural buildings - mining', 'new.agriculture.pigs': 'New agricultural buildings - pigs', 'new agriculture.poultry': 'New agricultural buildings - poultry', @@ -328,7 +330,7 @@ export const ProjectTypes = { 'new.leisure': 'New leisure premises', 'new.office': 'New offices', 'new.other': 'Add another type of building - something else', - 'new.residential.dwelling': 'Build new homes on a roof', + 'new.residential.dwelling': 'Build new homes', 'new.retail': 'New retail premises', 'new.telecoms': 'Install telecommunications equipment', 'new.temporaryStructure': @@ -345,3 +347,20 @@ export const ProjectTypes = { 'unit.merge': 'Convert two or more properties into one', 'unit.subdivide': 'Convert a home or part of a home into flats', }; + +type ProjectTypeKeys = keyof typeof ProjectTypes; + +type GenericProjectType = { + value: TKey; + description: (typeof ProjectTypes)[TKey]; +}; + +type ProjectTypeMap = { + [K in ProjectTypeKeys]: GenericProjectType; +}; + +/** + * @id #ProjectType + * @description Planning project types + */ +export type ProjectType = ProjectTypeMap[keyof ProjectTypeMap]; diff --git a/types/enums/PropertyTypes.ts b/types/enums/PropertyTypes.ts index 037757d4..6221ff58 100644 --- a/types/enums/PropertyTypes.ts +++ b/types/enums/PropertyTypes.ts @@ -503,3 +503,20 @@ export const PropertyTypes = { 'object.religious.building.synagogue': 'Synagogue', 'object.religious.building.temple': 'Temple', }; + +type PropertyTypeKeys = keyof typeof PropertyTypes; + +type GenericPropertyType = { + value: TKey; + description: (typeof PropertyTypes)[TKey]; +}; + +type PropertyTypeMap = { + [K in PropertyTypeKeys]: GenericPropertyType; +}; + +/** + * @id #PropertyType + * @description Property types derived from Basic Land and Property Unit (BLPU) classification codes + */ +export type PropertyType = PropertyTypeMap[keyof PropertyTypeMap]; diff --git a/types/enums/ProtectedSpaces.ts b/types/enums/ProtectedSpaces.ts index 3d0969be..3dd78038 100644 --- a/types/enums/ProtectedSpaces.ts +++ b/types/enums/ProtectedSpaces.ts @@ -7,3 +7,23 @@ export const GLAProtectedSpaceDesignations = { none: 'Not designated', SSSI: 'Sites of Special Scientific Interest', }; + +type ProtectedSpaceDesignationKeys = keyof typeof GLAProtectedSpaceDesignations; + +type GenericProtectedSpaceDesignation< + TKey extends ProtectedSpaceDesignationKeys, +> = { + value: TKey; + description: (typeof GLAProtectedSpaceDesignations)[TKey]; +}; + +type ProtectedSpaceDesignationMap = { + [K in ProtectedSpaceDesignationKeys]: GenericProtectedSpaceDesignation; +}; + +/** + * @id #ProtectedSpaceDesignation + * @description Designations of natural protected spaces + */ +export type ProtectedSpaceDesignation = + ProtectedSpaceDesignationMap[keyof ProtectedSpaceDesignationMap]; diff --git a/types/enums/ResidentialUnitTypes.ts b/types/enums/ResidentialUnitTypes.ts index 5519ba94..c8fb3e41 100644 --- a/types/enums/ResidentialUnitTypes.ts +++ b/types/enums/ResidentialUnitTypes.ts @@ -1,4 +1,4 @@ -export const NationalResidentialUnitTypes = { +export const UKResidentialUnitTypes = { cluster: 'Cluster flat', flat: 'Flat', house: 'House', @@ -23,6 +23,42 @@ export const GLAResidentialUnitTypes = { }; export const ResidentialUnitTypes = { - ...NationalResidentialUnitTypes, + ...UKResidentialUnitTypes, ...GLAResidentialUnitTypes, }; + +type UKResidentialUnitTypeKeys = keyof typeof UKResidentialUnitTypes; + +type GenericUKResidentialUnitType = { + value: TKey; + description: (typeof UKResidentialUnitTypes)[TKey]; +}; + +type UKResidentialUnitTypeMap = { + [K in UKResidentialUnitTypeKeys]: GenericUKResidentialUnitType; +}; + +/** + * @id #UKResidentialUnitType + * @description Residential unit types tracked throughout the UK + */ +export type UKResidentialUnitType = + UKResidentialUnitTypeMap[keyof UKResidentialUnitTypeMap]; + +type GLAResidentialUnitTypeKeys = keyof typeof GLAResidentialUnitTypes; + +type GenericGLAResidentialUnitType = { + value: TKey; + description: (typeof GLAResidentialUnitTypes)[TKey]; +}; + +type GLAResidentialUnitTypeMap = { + [K in GLAResidentialUnitTypeKeys]: GenericGLAResidentialUnitType; +}; + +/** + * @id #GLAResidentialUnitType + * @description Residential unit types tracked by the Greater London Authority (GLA) + */ +export type GLAResidentialUnitType = + GLAResidentialUnitTypeMap[keyof GLAResidentialUnitTypeMap]; diff --git a/types/enums/TenureTypes.ts b/types/enums/TenureTypes.ts index 75f07dcc..fea207b6 100644 --- a/types/enums/TenureTypes.ts +++ b/types/enums/TenureTypes.ts @@ -1,4 +1,4 @@ -export const NationalTenureTypes = { +export const UKTenureTypes = { AHO: 'Affordable home ownership', MH: 'Market housing', other: 'Other', @@ -25,6 +25,40 @@ export const GLATenureTypes = { }; export const TenureTypes = { - ...NationalTenureTypes, + ...UKTenureTypes, ...GLATenureTypes, }; + +type UKTenureTypeKeys = keyof typeof UKTenureTypes; + +type GenericUKTenureType = { + value: TKey; + description: (typeof UKTenureTypes)[TKey]; +}; + +type UKTenureTypeMap = { + [K in UKTenureTypeKeys]: GenericUKTenureType; +}; + +/** + * @id #UKTenureType + * @description Tenure types tracked throughout the UK + */ +export type UKTenureType = UKTenureTypeMap[keyof UKTenureTypeMap]; + +type GLATenureTypeKeys = keyof typeof GLATenureTypes; + +type GenericGLATenureType = { + value: TKey; + description: (typeof GLATenureTypes)[TKey]; +}; + +type GLATenureTypeMap = { + [K in GLATenureTypeKeys]: GenericGLATenureType; +}; + +/** + * @id #GLATenureType + * @description Tenure types tracked by the Greater London Authority (GLA) + */ +export type GLATenureType = GLATenureTypeMap[keyof GLATenureTypeMap]; diff --git a/types/enums/UseClasses.ts b/types/enums/UseClasses.ts index 0a158bf6..4f1ee737 100644 --- a/types/enums/UseClasses.ts +++ b/types/enums/UseClasses.ts @@ -12,3 +12,20 @@ export const GLAUseClasses = { SG: 'Sui generis', unknown: 'Not known', }; + +type GLAUseClassKeys = keyof typeof GLAUseClasses; + +type GenericGLAUseClass = { + value: TKey; + description: (typeof GLAUseClasses)[TKey]; +}; + +type GLAUseClassMap = { + [K in GLAUseClassKeys]: GenericGLAUseClass; +}; + +/** + * @id #GLAUseClass + * @description Use classes tracked by the Greater London Authority (GLA) + */ +export type GLAUseClass = GLAUseClassMap[keyof GLAUseClassMap]; diff --git a/types/schema/File.ts b/types/schema/File.ts index 0b744e42..55c55cec 100644 --- a/types/schema/File.ts +++ b/types/schema/File.ts @@ -1,4 +1,4 @@ -import {FileTypes} from '../enums/FileTypes'; +import {FileType} from '../enums/FileTypes'; /** * @id #File @@ -9,20 +9,3 @@ export interface File { type: FileType[]; description?: string; } - -type FileTypeKeys = keyof typeof FileTypes; - -type GenericFileType = { - value: TKey; - description: (typeof FileTypes)[TKey]; -}; - -type FileTypeMap = { - [K in FileTypeKeys]: GenericFileType; -}; - -/** - * @id #FileType - * @description Types of planning documents and drawings - */ -export type FileType = FileTypeMap[keyof FileTypeMap]; diff --git a/types/schema/Metadata.ts b/types/schema/Metadata.ts index a7a434b0..151aef1a 100644 --- a/types/schema/Metadata.ts +++ b/types/schema/Metadata.ts @@ -1,5 +1,5 @@ +import {FileType} from '../enums/FileTypes'; import {DateTime, URL, UUID} from './../utils'; -import {FileType} from './File'; import {QuestionMetaData} from './Responses'; /** diff --git a/types/schema/PreAssessment.ts b/types/schema/PreAssessment.ts index e11099b9..c7b1ea46 100644 --- a/types/schema/PreAssessment.ts +++ b/types/schema/PreAssessment.ts @@ -1,24 +1,7 @@ -import {Flags} from '../enums/Flags'; +import {ResultFlag} from '../enums/Flags'; /** * @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 = ResultFlag[]; // @todo validate/restrict array to one result per flagset - -type FlagKeys = keyof typeof Flags; - -type GenericFlag = { - value: TKey; - description: (typeof Flags)[TKey]; -}; - -type FlagMap = { - [K in FlagKeys]: GenericFlag; -}; - -/** - * @id #ResultFlag - * @description The result of a single flagset - */ -export type ResultFlag = FlagMap[keyof FlagMap]; diff --git a/types/schema/data/Application.ts b/types/schema/data/Application.ts index ca21bc95..1264341c 100644 --- a/types/schema/data/Application.ts +++ b/types/schema/data/Application.ts @@ -1,4 +1,4 @@ -import {ApplicationTypes} from '../../enums/ApplicationTypes'; +import {ApplicationType} from '../../enums/ApplicationTypes'; import {Date} from '../../utils'; /** @@ -175,22 +175,8 @@ export interface CommunityInfrastructureLevy { export interface LeadDeveloper { type: 'ukCompany' | 'overseasCompany' | 'none'; - companyRegistrationNumber?: string; + company?: { + name: string; + registrationNumber: string; + }; } - -type ApplicationTypeKeys = keyof typeof ApplicationTypes; - -type GenericApplicationType = { - value: TKey; - description: (typeof ApplicationTypes)[TKey]; -}; - -type ApplicationTypeMap = { - [K in ApplicationTypeKeys]: GenericApplicationType; -}; - -/** - * @id #ApplicationType - * @description Planning application types - */ -export type ApplicationType = ApplicationTypeMap[keyof ApplicationTypeMap]; diff --git a/types/schema/data/Property.ts b/types/schema/data/Property.ts index d125e44c..77c4063e 100644 --- a/types/schema/data/Property.ts +++ b/types/schema/data/Property.ts @@ -1,7 +1,7 @@ -import {PlanningDesignations} from '../../enums/PlanningConstraints'; -import {PropertyTypes} from '../../enums/PropertyTypes'; +import {PlanningDesignation} from '../../enums/PlanningConstraints'; +import {PropertyType} from '../../enums/PropertyTypes'; import {Date, URL} from '../../utils'; -import {GeoBoundary, Materials} from './shared'; +import {Entity, GeoBoundary, Materials, ResidentialUnits} from './shared'; /** * @id #Property @@ -69,6 +69,21 @@ export interface UKProperty { lastUseEndDate: Date; }; }; + /** + * @description Existing flood risk, if applicable to application.type + */ + flood?: { + '20mFromWatercourse'?: boolean; + increasedRiskElsewhere?: boolean; + }; + /** + * @description Existing trees on or near the site + */ + trees?: { + present: boolean; + adjacent: boolean; + }; + units?: ResidentialUnits; } /** @@ -102,6 +117,12 @@ export interface LondonProperty extends UKProperty { ownership?: { status: 'public' | 'private' | 'mixed'; }; + /** + * @description Current occupation status of the property + */ + occupation?: { + status: 'occupied' | 'partVacant' | 'vacant'; + }; parking?: { cars?: ExistingCount; vans?: ExistingCount; @@ -173,60 +194,6 @@ export interface OSAddress extends SiteAddress { source: 'Ordnance Survey'; } -type PropertyTypeKeys = keyof typeof PropertyTypes; - -type GenericPropertyType = { - value: TKey; - description: (typeof PropertyTypes)[TKey]; -}; - -type PropertyTypeMap = { - [K in PropertyTypeKeys]: GenericPropertyType; -}; - -/** - * @id #PropertyType - * @description Property types derived from Basic Land and Property Unit (BLPU) classification codes - */ -export type PropertyType = PropertyTypeMap[keyof PropertyTypeMap]; - -type PlanningDesigationKeys = keyof typeof PlanningDesignations; - -type GenericPlanningDesignation = { - value: TKey; - description: (typeof PlanningDesignations)[TKey]; -}; - -type PlanningDesignationMap = { - [K in PlanningDesigationKeys]: GenericPlanningDesignation; -}; - -type BasePlanningDesignation = - PlanningDesignationMap[keyof PlanningDesignationMap]; - -/** - * @description A planning designation that does not intersect with the proposed site, per the DE-9IM spatial relationship definition of intersects - */ -type NonIntersectingPlanningDesignation = { - intersects: false; -} & BasePlanningDesignation; - -/** - * @description A planning designation that does intersect with the proposed site, per the DE-9IM spatial relationship definition of intersects - */ -type IntersectingPlanningDesignation = { - intersects: true; - entities: Entity[] | []; -} & BasePlanningDesignation; - -/** - * @id #PlanningDesignation - * @description Planning designations that may intersect with the proposed site determined by spatial queries against Planning Data (planning.data.gov.uk) and Ordnance Survey - */ -export type PlanningDesignation = - | NonIntersectingPlanningDesignation - | IntersectingPlanningDesignation; - type BasePlanningConstraint = { value: string; description: string; @@ -244,7 +211,7 @@ type NonIntersectingPlanningConstraint = { */ type IntersectingPlanningConstraint = { intersects: true; - entities: Entity[] | []; + entities: Entity[]; } & BasePlanningConstraint; /** @@ -254,18 +221,3 @@ type IntersectingPlanningConstraint = { export type PlanningConstraint = | NonIntersectingPlanningConstraint | IntersectingPlanningConstraint; - -type Entity = { - name: string; - description?: string; - source: PlanningDataSource | OSRoadsSource; -}; - -type PlanningDataSource = { - text: 'Planning Data'; - url: URL; -}; - -type OSRoadsSource = { - text: 'Ordnance Survey MasterMap Highways'; -}; diff --git a/types/schema/data/Proposal.ts b/types/schema/data/Proposal.ts index 51fe7798..15fabae1 100644 --- a/types/schema/data/Proposal.ts +++ b/types/schema/data/Proposal.ts @@ -1,11 +1,13 @@ -import { - GLAOpenSpaceTypes, - GLAOpenSpaceDesignations, -} from '../../enums/OpenSpaces'; -import {GLAProtectedSpaceDesignations} from '../../enums/ProtectedSpaces'; -import {ProjectTypes} from '../../enums/ProjectTypes'; +import {BuildingRegulation} from '../../enums/BuildingRegulations'; +import {DevelopmentType} from '../../enums/DevelopmentTypes'; +import {GLAHousingProvider} from '../../enums/HousingProviders'; +import {OpenSpaceDesignation, OpenSpaceType} from '../../enums/OpenSpaces'; +import {ProjectType} from '../../enums/ProjectTypes'; +import {ProtectedSpaceDesignation} from '../../enums/ProtectedSpaces'; +import {GLAResidentialUnitType} from '../../enums/ResidentialUnitTypes'; +import {GLATenureType} from '../../enums/TenureTypes'; import {Area, Date} from '../../utils'; -import {GeoBoundary, Materials} from './shared'; +import {GeoBoundary, Materials, ResidentialUnits} from './shared'; /** * @id #Proposal @@ -40,14 +42,30 @@ export interface BaseProposal { * @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: number}; + residentialUnits: {count: number}; + }; + /** @description Whether the proposal introduces a fire suppression system */ + fire?: { + suppression: boolean; + }; + /** @description Count of new gas connections */ + gas?: { + connections: {count: number}; + }; + /** @description Count of new water connections */ + water?: { + connections: {count: number}; + }; }; /** * @description Assessment of flood risk, if applicable to application.type */ flood?: { - '20mFromWatercourse'?: boolean; - increasedRiskElsewhere?: boolean; surfaceWaterDisposal?: | 'drainageSystem' | 'soakaway' @@ -83,6 +101,10 @@ export interface BaseProposal { dwellings?: number; }; }; + newDwellings?: { + newBuild?: {count: number}; + }; + units?: ResidentialUnits; watercourse?: { name: string; type: 'ditch' | 'millStream' | 'pond' | 'river' | 'streamOrBrook' | 'other'; @@ -113,7 +135,7 @@ export interface BaseProposal { * @id #LondonProposal * @description Proposal details for project sites within the Greater London Authority (GLA) area */ -export interface LondonProposal extends BaseProposal { +export interface LondonProposal extends Omit { schemeName?: string; /** * @description Proposed parking spaces @@ -147,8 +169,8 @@ export interface LondonProposal extends BaseProposal { * @description Electric vehicle charing points */ charging?: { - active: {count: number}; - passive: {count: number}; + active?: {count: number}; + passive?: {count: number}; }; /** * @description Changes that result in the loss, gain, or change of use of natural spaces @@ -191,6 +213,50 @@ export interface LondonProposal extends BaseProposal { */ 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 = { @@ -219,74 +285,23 @@ export interface ProposalDates { completion?: Date; } -type ProjectTypeKeys = keyof typeof ProjectTypes; - -type GenericProjectType = { - value: TKey; - description: (typeof ProjectTypes)[TKey]; -}; - -type ProjectTypeMap = { - [K in ProjectTypeKeys]: GenericProjectType; -}; - -/** - * @id #ProjectType - * @description Planning project types - */ -export type ProjectType = ProjectTypeMap[keyof ProjectTypeMap]; - -type OpenSpaceTypeKeys = keyof typeof GLAOpenSpaceTypes; - -type GenericOpenSpaceType = { - value: TKey; - description: (typeof GLAOpenSpaceTypes)[TKey]; -}; - -type OpenSpaceTypeMap = { - [K in OpenSpaceTypeKeys]: GenericOpenSpaceType; -}; - -/** - * @id #OpenSpaceType - * @description Types of natural open spaces - */ -export type OpenSpaceType = OpenSpaceTypeMap[keyof OpenSpaceTypeMap]; - -type OpenSpaceDesignationKeys = keyof typeof GLAOpenSpaceDesignations; - -type GenericOpenSpaceDesignation = { - value: TKey; - description: (typeof GLAOpenSpaceDesignations)[TKey]; -}; - -type OpenSpaceDesignationMap = { - [K in OpenSpaceDesignationKeys]: GenericOpenSpaceDesignation; -}; - -/** - * @id #OpenSpaceDesignation - * @description Designations of natural open spaces - */ -export type OpenSpaceDesignation = - OpenSpaceDesignationMap[keyof OpenSpaceDesignationMap]; - -type ProtectedSpaceDesignationKeys = keyof typeof GLAProtectedSpaceDesignations; - -type GenericProtectedSpaceDesignation< - TKey extends ProtectedSpaceDesignationKeys, -> = { - value: TKey; - description: (typeof GLAProtectedSpaceDesignations)[TKey]; -}; +interface GLARetainedUnit { + bedrooms: number; + tenure: GLATenureType; + type: GLAResidentialUnitType; + identicalUnits: number; +} -type ProtectedSpaceDesignationMap = { - [K in ProtectedSpaceDesignationKeys]: GenericProtectedSpaceDesignation; -}; +interface GLALostUnit extends GLARetainedUnit { + habitableRooms: number; + compliance: BuildingRegulation[]; + provider: GLAHousingProvider; + area: Area; + sheltered: boolean; + olderPersons: boolean; +} -/** - * @id #ProtectedSpaceDesignation - * @description Designations of natural protected spaces - */ -export type ProtectedSpaceDesignation = - ProtectedSpaceDesignationMap[keyof ProtectedSpaceDesignationMap]; +interface GLAGainedUnit extends GLALostUnit { + development: DevelopmentType; + garden: boolean; +} diff --git a/types/schema/data/shared.ts b/types/schema/data/shared.ts index d2a2c603..75aa44aa 100644 --- a/types/schema/data/shared.ts +++ b/types/schema/data/shared.ts @@ -1,5 +1,7 @@ import {GeoJSON} from 'geojson'; -import {Area} from '../../utils'; +import {UKResidentialUnitType} from '../../enums/ResidentialUnitTypes'; +import {UKTenureType} from '../../enums/TenureTypes'; +import {Area, URL} from '../../utils'; export type Materials = { boundary?: string; @@ -16,3 +18,28 @@ export type GeoBoundary = { site: GeoJSON; area: Area; }; + +export type Entity = { + name: string; + description?: string; + source: PlanningDataSource | OSRoadsSource; +}; + +type PlanningDataSource = { + text: 'Planning Data'; + url: URL; +}; + +type OSRoadsSource = { + text: 'Ordnance Survey MasterMap Highways'; +}; + +export type ResidentialUnits = { + total: number; + residential: { + type: UKResidentialUnitType; + tenure: UKTenureType; + bedrooms: number; + identicalUnits: number; + }[]; +};