@planning-inspectorate/data-model 2.31.3 → 2.33.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/appeal-s78.md +0 -4
- package/docs/nsip-document.md +1 -0
- package/package.json +1 -1
- package/pins_data_model/models/model_appeal_document.py +1 -1
- package/pins_data_model/models/model_appeal_event.py +1 -1
- package/pins_data_model/models/model_appeal_event_estimate.py +1 -1
- package/pins_data_model/models/model_appeal_has.py +1 -1
- package/pins_data_model/models/model_appeal_representation.py +1 -1
- package/pins_data_model/models/model_appeal_s78.py +3 -3
- package/pins_data_model/models/model_dart_response.py +1 -1
- package/pins_data_model/models/model_entraid.py +1 -1
- package/pins_data_model/models/model_folder.py +1 -1
- package/pins_data_model/models/model_gettimesheets_response.py +1 -1
- package/pins_data_model/models/model_listed_building.py +1 -1
- package/pins_data_model/models/model_listed_buildings.py +1 -1
- package/pins_data_model/models/model_nsip_document.py +2 -1
- package/pins_data_model/models/model_nsip_exam_timetable.py +1 -1
- package/pins_data_model/models/model_nsip_invoice.py +1 -1
- package/pins_data_model/models/model_nsip_meeting.py +1 -1
- package/pins_data_model/models/model_nsip_project.py +1 -1
- package/pins_data_model/models/model_nsip_project_update.py +1 -1
- package/pins_data_model/models/model_nsip_representation.py +1 -1
- package/pins_data_model/models/model_nsip_subscription.py +1 -1
- package/pins_data_model/models/model_pins_inspector.py +1 -1
- package/pins_data_model/models/model_pins_lpa.py +1 -1
- package/pins_data_model/models/model_s51_advice.py +1 -1
- package/pins_data_model/models/model_service_user.py +1 -1
- package/schemas/appeal-s78.schema.json +0 -1
- package/schemas/nsip-document.schema.json +9 -1
- package/src/enums.cjs +1 -0
- package/src/enums.d.ts +1 -0
- package/src/enums.js +1 -0
- package/src/index.cjs +1 -0
- package/src/schemas.d.ts +8 -1
- package/tests/appeals/expedited-appeals.test.js +0 -7
package/docs/appeal-s78.md
CHANGED
|
@@ -4829,10 +4829,6 @@ Reason for appeal as provided by the appellant (Expedited Appeals)
|
|
|
4829
4829
|
|
|
4830
4830
|
`string`
|
|
4831
4831
|
|
|
4832
|
-
### reasonForAppealAppellant Constraints
|
|
4833
|
-
|
|
4834
|
-
**maximum length**: the maximum number of characters for this string is: `250`
|
|
4835
|
-
|
|
4836
4832
|
## screeningOpinionIndicatesEiaRequired
|
|
4837
4833
|
|
|
4838
4834
|
Indicates if the screening opinion specifies that an EIA is required (Expedited Appeals)
|
package/docs/nsip-document.md
CHANGED
|
@@ -672,6 +672,7 @@ The location of the published document. Only applicable to documents which are p
|
|
|
672
672
|
| :--------------------------- | :---------- |
|
|
673
673
|
| `"back-office-appeals"` | |
|
|
674
674
|
| `"back-office-applications"` | |
|
|
675
|
+
| `"dco-portal"` | |
|
|
675
676
|
| `"horizon"` | |
|
|
676
677
|
| `"ni_file"` | |
|
|
677
678
|
| `"sharepoint"` | |
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# generated by datamodel-codegen:
|
|
2
2
|
# filename: appeal-s78.schema.json
|
|
3
|
-
# timestamp: 2026-04-
|
|
3
|
+
# timestamp: 2026-04-22T14:15:03+00:00
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
@@ -1251,7 +1251,7 @@ class AppealS78Case1(BaseModel):
|
|
|
1251
1251
|
Other reason for serving a discontinuance notice, for discontinuanceNoticeServedReason: other
|
|
1252
1252
|
"""
|
|
1253
1253
|
wasRetrospectivePlanningApplicationMade: bool | None = None
|
|
1254
|
-
reasonForAppealAppellant:
|
|
1254
|
+
reasonForAppealAppellant: str | None = None
|
|
1255
1255
|
"""
|
|
1256
1256
|
Reason for appeal as provided by the appellant (Expedited Appeals)
|
|
1257
1257
|
"""
|
|
@@ -2010,7 +2010,7 @@ class AppealS78Case2(BaseModel):
|
|
|
2010
2010
|
Other reason for serving a discontinuance notice, for discontinuanceNoticeServedReason: other
|
|
2011
2011
|
"""
|
|
2012
2012
|
wasRetrospectivePlanningApplicationMade: bool | None = None
|
|
2013
|
-
reasonForAppealAppellant:
|
|
2013
|
+
reasonForAppealAppellant: str | None = None
|
|
2014
2014
|
"""
|
|
2015
2015
|
Reason for appeal as provided by the appellant (Expedited Appeals)
|
|
2016
2016
|
"""
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# generated by datamodel-codegen:
|
|
2
2
|
# filename: nsip-document.schema.json
|
|
3
|
-
# timestamp: 2026-04-
|
|
3
|
+
# timestamp: 2026-04-22T14:15:02+00:00
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
@@ -59,6 +59,7 @@ class SecurityClassification(Enum):
|
|
|
59
59
|
class SourceSystem(Enum):
|
|
60
60
|
back_office_appeals = "back-office-appeals"
|
|
61
61
|
back_office_applications = "back-office-applications"
|
|
62
|
+
dco_portal = "dco-portal"
|
|
62
63
|
horizon = "horizon"
|
|
63
64
|
ni_file = "ni_file"
|
|
64
65
|
sharepoint = "sharepoint"
|
|
@@ -172,7 +172,15 @@
|
|
|
172
172
|
},
|
|
173
173
|
"sourceSystem": {
|
|
174
174
|
"type": ["string", "null"],
|
|
175
|
-
"enum": [
|
|
175
|
+
"enum": [
|
|
176
|
+
"back-office-appeals",
|
|
177
|
+
"back-office-applications",
|
|
178
|
+
"dco-portal",
|
|
179
|
+
"horizon",
|
|
180
|
+
"ni_file",
|
|
181
|
+
"sharepoint",
|
|
182
|
+
null
|
|
183
|
+
]
|
|
176
184
|
},
|
|
177
185
|
"origin": {
|
|
178
186
|
"type": ["string", "null"],
|
package/src/enums.cjs
CHANGED
|
@@ -719,6 +719,7 @@ const NSIP_SECURITY_CLASSIFICATION = Object.freeze({
|
|
|
719
719
|
const NSIP_SOURCE_SYSTEM = Object.freeze({
|
|
720
720
|
BACK_OFFICE_APPEALS: 'back-office-appeals',
|
|
721
721
|
BACK_OFFICE_APPLICATIONS: 'back-office-applications',
|
|
722
|
+
DCO_PORTAL: 'dco-portal',
|
|
722
723
|
HORIZON: 'horizon',
|
|
723
724
|
NI_FILE: 'ni_file',
|
|
724
725
|
SHAREPOINT: 'sharepoint',
|
package/src/enums.d.ts
CHANGED
|
@@ -717,6 +717,7 @@ export const NSIP_SECURITY_CLASSIFICATION = {
|
|
|
717
717
|
export const NSIP_SOURCE_SYSTEM = {
|
|
718
718
|
BACK_OFFICE_APPEALS: 'back-office-appeals',
|
|
719
719
|
BACK_OFFICE_APPLICATIONS: 'back-office-applications',
|
|
720
|
+
DCO_PORTAL: 'dco-portal',
|
|
720
721
|
HORIZON: 'horizon',
|
|
721
722
|
NI_FILE: 'ni_file',
|
|
722
723
|
SHAREPOINT: 'sharepoint',
|
package/src/enums.js
CHANGED
|
@@ -717,6 +717,7 @@ export const NSIP_SECURITY_CLASSIFICATION = Object.freeze({
|
|
|
717
717
|
export const NSIP_SOURCE_SYSTEM = Object.freeze({
|
|
718
718
|
BACK_OFFICE_APPEALS: 'back-office-appeals',
|
|
719
719
|
BACK_OFFICE_APPLICATIONS: 'back-office-applications',
|
|
720
|
+
DCO_PORTAL: 'dco-portal',
|
|
720
721
|
HORIZON: 'horizon',
|
|
721
722
|
NI_FILE: 'ni_file',
|
|
722
723
|
SHAREPOINT: 'sharepoint',
|
package/src/index.cjs
CHANGED
|
@@ -800,6 +800,7 @@ const NSIP_SECURITY_CLASSIFICATION = Object.freeze({
|
|
|
800
800
|
const NSIP_SOURCE_SYSTEM = Object.freeze({
|
|
801
801
|
BACK_OFFICE_APPEALS: 'back-office-appeals',
|
|
802
802
|
BACK_OFFICE_APPLICATIONS: 'back-office-applications',
|
|
803
|
+
DCO_PORTAL: 'dco-portal',
|
|
803
804
|
HORIZON: 'horizon',
|
|
804
805
|
NI_FILE: 'ni_file',
|
|
805
806
|
SHAREPOINT: 'sharepoint',
|
package/src/schemas.d.ts
CHANGED
|
@@ -2216,7 +2216,14 @@ export interface NSIPDocument {
|
|
|
2216
2216
|
datePublished: string | null;
|
|
2217
2217
|
documentType: string | null;
|
|
2218
2218
|
securityClassification: 'public' | 'official' | 'secret' | 'top-secret' | null;
|
|
2219
|
-
sourceSystem:
|
|
2219
|
+
sourceSystem:
|
|
2220
|
+
| 'back-office-appeals'
|
|
2221
|
+
| 'back-office-applications'
|
|
2222
|
+
| 'dco-portal'
|
|
2223
|
+
| 'horizon'
|
|
2224
|
+
| 'ni_file'
|
|
2225
|
+
| 'sharepoint'
|
|
2226
|
+
| null;
|
|
2220
2227
|
origin: 'pins' | 'citizen' | 'lpa' | 'ogd' | null;
|
|
2221
2228
|
owner: string | null;
|
|
2222
2229
|
/**
|
|
@@ -183,13 +183,6 @@ describe('Expedited S78 Appeals', () => {
|
|
|
183
183
|
assert.strictEqual(validationResult, true);
|
|
184
184
|
});
|
|
185
185
|
|
|
186
|
-
it('should enforce maxLength for reasonForAppealAppellant', () => {
|
|
187
|
-
const test = structuredClone(expeditedAppealPayload);
|
|
188
|
-
test.reasonForAppealAppellant = 'a'.repeat(251);
|
|
189
|
-
const validationResult = ajv.validate(schema, test);
|
|
190
|
-
assert.strictEqual(validationResult, false);
|
|
191
|
-
});
|
|
192
|
-
|
|
193
186
|
it('should enforce enum for significantChangesAffectingApplication', () => {
|
|
194
187
|
const test = structuredClone(expeditedAppealPayload);
|
|
195
188
|
test.significantChangesAffectingApplicationAppellant = [{ value: 'invalid-enum-value', comment: 'some comment' }];
|