@planning-inspectorate/data-model 2.49.0 → 2.51.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/README.md +23 -1
- package/docs/address.md +366 -0
- package/docs/applications-application-defs-address.md +108 -0
- package/docs/applications-application-defs-contact.md +98 -0
- package/docs/applications-application-defs-organisation.md +117 -0
- package/docs/applications-application-defs.md +3 -0
- package/docs/{application-update.md → applications-application-update.md} +22 -22
- package/docs/applications-application.md +2250 -0
- package/docs/applications-notify-email-defs-contact.md +93 -0
- package/docs/applications-notify-email-defs.md +3 -0
- package/docs/applications-notify-email.md +458 -0
- package/docs/applications-representation-definitions-contact.md +93 -0
- package/docs/applications-representation-definitions-representationdocument.md +152 -0
- package/docs/applications-representation-definitions.md +3 -0
- package/docs/applications-representation.md +834 -0
- package/docs/nsip-exam-timetable-defs-event.md +1 -0
- package/docs/nsip-exam-timetable.md +1 -0
- package/package.json +1 -1
- package/pins_data_model/gen_models.py +2 -1
- package/pins_data_model/models/model_address.py +69 -0
- package/pins_data_model/models/model_appeal_document.py +11 -11
- package/pins_data_model/models/model_appeal_event.py +4 -4
- package/pins_data_model/models/model_appeal_event_estimate.py +3 -3
- package/pins_data_model/models/model_appeal_has.py +111 -93
- package/pins_data_model/models/model_appeal_representation.py +12 -12
- package/pins_data_model/models/model_appeal_s78.py +246 -228
- package/pins_data_model/models/model_application_update.py +2 -2
- package/pins_data_model/models/model_applications_application.py +518 -0
- package/pins_data_model/models/model_applications_application_update.py +55 -0
- package/pins_data_model/models/model_applications_notify_email.py +124 -0
- package/pins_data_model/models/model_applications_representation.py +207 -0
- package/pins_data_model/models/model_dart_response.py +1 -1
- package/pins_data_model/models/model_folder.py +3 -3
- package/pins_data_model/models/model_nsip_document.py +12 -12
- package/pins_data_model/models/model_nsip_exam_timetable.py +3 -2
- package/pins_data_model/models/model_nsip_invoice.py +2 -2
- package/pins_data_model/models/model_nsip_project.py +19 -19
- package/pins_data_model/models/model_nsip_project_update.py +5 -5
- package/pins_data_model/models/model_nsip_representation.py +7 -7
- package/pins_data_model/models/model_nsip_subscription.py +6 -6
- package/pins_data_model/models/model_pins_inspector.py +5 -5
- package/pins_data_model/models/model_s51_advice.py +7 -7
- package/pins_data_model/models/model_service_user.py +2 -2
- package/requirements.txt +1 -1
- package/schemas/address.schema.json +87 -0
- package/schemas/{application-update.schema.json → applications-application-update.schema.json} +1 -1
- package/schemas/applications-application.schema.json +539 -0
- package/schemas/applications-notify-email.schema.json +118 -0
- package/schemas/applications-representation.schema.json +202 -0
- package/schemas/nsip-exam-timetable.schema.json +2 -1
- package/src/enums.cjs +147 -0
- package/src/enums.d.ts +131 -0
- package/src/enums.js +131 -0
- package/src/index.cjs +147 -0
- package/src/schemas.d.ts +680 -2
|
@@ -10,11 +10,11 @@ class Address(BaseModel):
|
|
|
10
10
|
model_config = ConfigDict(
|
|
11
11
|
extra="allow",
|
|
12
12
|
)
|
|
13
|
-
addressLine1: str | None
|
|
14
|
-
addressLine2: str | None
|
|
15
|
-
townCity: str | None
|
|
16
|
-
county: str | None
|
|
17
|
-
postcode: str | None
|
|
13
|
+
addressLine1: str | None
|
|
14
|
+
addressLine2: str | None
|
|
15
|
+
townCity: str | None
|
|
16
|
+
county: str | None
|
|
17
|
+
postcode: str | None
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
class Specialism(BaseModel):
|
|
@@ -65,11 +65,11 @@ class S51Advice(BaseModel):
|
|
|
65
65
|
"""
|
|
66
66
|
Who the enquiry is from
|
|
67
67
|
"""
|
|
68
|
-
agent: str | None
|
|
68
|
+
agent: str | None
|
|
69
69
|
"""
|
|
70
70
|
Who the enquiry is on behalf of
|
|
71
71
|
"""
|
|
72
|
-
method: Method
|
|
72
|
+
method: Method | None
|
|
73
73
|
"""
|
|
74
74
|
How the enquiry was made
|
|
75
75
|
"""
|
|
@@ -79,7 +79,7 @@ class S51Advice(BaseModel):
|
|
|
79
79
|
"""
|
|
80
80
|
Date the enquiry was made
|
|
81
81
|
"""
|
|
82
|
-
enquiryDetails: str | None
|
|
82
|
+
enquiryDetails: str | None
|
|
83
83
|
"""
|
|
84
84
|
Details of the enquiry
|
|
85
85
|
"""
|
|
@@ -87,7 +87,7 @@ class S51Advice(BaseModel):
|
|
|
87
87
|
"""
|
|
88
88
|
Details of the enquiry in Welsh
|
|
89
89
|
"""
|
|
90
|
-
adviceGivenBy: str | None
|
|
90
|
+
adviceGivenBy: str | None
|
|
91
91
|
"""
|
|
92
92
|
Who issued the advice
|
|
93
93
|
"""
|
|
@@ -95,7 +95,7 @@ class S51Advice(BaseModel):
|
|
|
95
95
|
"""
|
|
96
96
|
Date the advice was given
|
|
97
97
|
"""
|
|
98
|
-
adviceDetails: str | None
|
|
98
|
+
adviceDetails: str | None
|
|
99
99
|
"""
|
|
100
100
|
Details of the advice
|
|
101
101
|
"""
|
|
@@ -103,6 +103,6 @@ class S51Advice(BaseModel):
|
|
|
103
103
|
"""
|
|
104
104
|
Details of the advice in Welsh
|
|
105
105
|
"""
|
|
106
|
-
status: Status
|
|
107
|
-
redactionStatus: RedactionStatus
|
|
106
|
+
status: Status | None
|
|
107
|
+
redactionStatus: RedactionStatus | None
|
|
108
108
|
attachmentIds: list[str]
|
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
|
|
4
4
|
from __future__ import annotations
|
|
5
5
|
|
|
6
|
-
from enum import
|
|
6
|
+
from enum import StrEnum
|
|
7
7
|
|
|
8
8
|
from pydantic import BaseModel, ConfigDict, Field
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
class ServiceUserType(
|
|
11
|
+
class ServiceUserType(StrEnum):
|
|
12
12
|
"""
|
|
13
13
|
Type or category of the service user.
|
|
14
14
|
"""
|
package/requirements.txt
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
datamodel-code-generator==0.
|
|
1
|
+
datamodel-code-generator==0.64.0
|
|
2
2
|
jsonc-parser==1.1.0
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"$id": "address.schema.json",
|
|
4
|
+
"title": "PINS Address Schema",
|
|
5
|
+
"description": "A schema to define the structure of an Address object in PINS.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"additionalProperties": true,
|
|
8
|
+
"required": ["addressDimKey", "caseReference", "caseId", "caseType"],
|
|
9
|
+
"properties": {
|
|
10
|
+
"addressDimKey": {
|
|
11
|
+
"type": "number",
|
|
12
|
+
"description": "Primary Key for an Address.",
|
|
13
|
+
"example": 12345
|
|
14
|
+
},
|
|
15
|
+
"addressType": {
|
|
16
|
+
"type": "string",
|
|
17
|
+
"description": "The type of thing this address is for.",
|
|
18
|
+
"example": "site",
|
|
19
|
+
"enum": ["site", "neighbouring", "organisation", "contact"]
|
|
20
|
+
},
|
|
21
|
+
"caseReference": {
|
|
22
|
+
"type": "string",
|
|
23
|
+
"description": "Business Key for the related case",
|
|
24
|
+
"example": "CROWN/2025/12345"
|
|
25
|
+
},
|
|
26
|
+
"caseId": {
|
|
27
|
+
"type": "string",
|
|
28
|
+
"description": "The unique ID for the case this representation belongs to.",
|
|
29
|
+
"example": "AAAAAAAA-1234-1234-1234-AAAAAAAAAAAA"
|
|
30
|
+
},
|
|
31
|
+
"caseType": {
|
|
32
|
+
"type": "string",
|
|
33
|
+
"description": "The type of case this representation is for.",
|
|
34
|
+
"example": "Crown Development Application"
|
|
35
|
+
},
|
|
36
|
+
"description": {
|
|
37
|
+
"type": ["string", "null"],
|
|
38
|
+
"description": "Some sites may have a postcode, but do not have postal addresses.",
|
|
39
|
+
"example": "The field behind the crown pub"
|
|
40
|
+
},
|
|
41
|
+
"line1": {
|
|
42
|
+
"type": ["string", "null"]
|
|
43
|
+
},
|
|
44
|
+
"line2": {
|
|
45
|
+
"type": ["string", "null"]
|
|
46
|
+
},
|
|
47
|
+
"townCity": {
|
|
48
|
+
"type": ["string", "null"]
|
|
49
|
+
},
|
|
50
|
+
"county": {
|
|
51
|
+
"type": ["string", "null"]
|
|
52
|
+
},
|
|
53
|
+
"postcode": {
|
|
54
|
+
"type": ["string", "null"]
|
|
55
|
+
},
|
|
56
|
+
"country": {
|
|
57
|
+
"type": ["string", "null"]
|
|
58
|
+
},
|
|
59
|
+
"easting": {
|
|
60
|
+
"type": ["string", "null"],
|
|
61
|
+
"example": "358267"
|
|
62
|
+
},
|
|
63
|
+
"northing": {
|
|
64
|
+
"type": ["string", "null"],
|
|
65
|
+
"example": "172797"
|
|
66
|
+
},
|
|
67
|
+
"latitudeWGS84": {
|
|
68
|
+
"type": ["number", "null"],
|
|
69
|
+
"example": 51.452608
|
|
70
|
+
},
|
|
71
|
+
"longitudeWGS84": {
|
|
72
|
+
"type": ["number", "null"],
|
|
73
|
+
"example": -2.6019821
|
|
74
|
+
},
|
|
75
|
+
"UPRN": {
|
|
76
|
+
"type": ["string", "null"],
|
|
77
|
+
"example": 100023336956,
|
|
78
|
+
"description": "The Unique Property Reference Number (UPRN) is a unique number (a geocode) for every addressable location—e.g., a building, a bus stop, a post box, a feature in the landscape, or a defibrillator—in Great Britain."
|
|
79
|
+
},
|
|
80
|
+
"dependentRequired": {
|
|
81
|
+
"easting": ["northing"],
|
|
82
|
+
"northing": ["easting"],
|
|
83
|
+
"latitudeWGS84": ["longitudeWGS84"],
|
|
84
|
+
"longitudeWGS84": ["latitudeWGS84"]
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
package/schemas/{application-update.schema.json → applications-application-update.schema.json}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
-
"$id": "application-update.schema.json",
|
|
3
|
+
"$id": "applications-application-update.schema.json",
|
|
4
4
|
"title": "Application Update Schema",
|
|
5
5
|
"description": "Application Update for Casework Project",
|
|
6
6
|
"type": "object",
|