@pdtf/schemas 3.6.0-9 → 3.6.0-dev.10
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/README.md +57 -33
- package/docs/branch-release-workflow.md +138 -0
- package/docs/sef25-extensions-ui-spec.md +355 -0
- package/index.js +131 -75
- package/package.json +14 -2
- package/src/schemas/v3/combined.json +7952 -1721
- package/src/schemas/v3/compactSkeleton.txt +379 -5
- package/src/schemas/v3/overlays/baspi4.json +205 -93
- package/src/schemas/v3/overlays/baspi5.json +210 -95
- package/src/schemas/v3/overlays/extensions/ac.json +334 -0
- package/src/schemas/v3/overlays/extensions/as.json +4 -2
- package/src/schemas/v3/overlays/extensions/dk.json +33 -0
- package/src/schemas/v3/overlays/extensions/dr.json +9 -9
- package/src/schemas/v3/overlays/extensions/er.json +4 -2
- package/src/schemas/v3/overlays/extensions/fd.json +6 -3
- package/src/schemas/v3/overlays/extensions/hi.json +6 -3
- package/src/schemas/v3/overlays/extensions/hs.json +4 -2
- package/src/schemas/v3/overlays/extensions/ic.json +94 -0
- package/src/schemas/v3/overlays/extensions/jk.json +28 -8
- package/src/schemas/v3/overlays/extensions/la.json +4 -2
- package/src/schemas/v3/overlays/extensions/lc.json +76 -0
- package/src/schemas/v3/overlays/extensions/ma.json +6 -3
- package/src/schemas/v3/overlays/extensions/mc.json +4 -2
- package/src/schemas/v3/overlays/extensions/mi.json +70 -0
- package/src/schemas/v3/overlays/extensions/nd.json +44 -0
- package/src/schemas/v3/overlays/extensions/oa.json +4 -2
- package/src/schemas/v3/overlays/extensions/oc.json +4 -2
- package/src/schemas/v3/overlays/extensions/pc.json +38 -0
- package/src/schemas/v3/overlays/extensions/ph.json +195 -0
- package/src/schemas/v3/overlays/extensions/rw.json +69 -0
- package/src/schemas/v3/overlays/extensions/sb.json +4 -2
- package/src/schemas/v3/overlays/extensions/sc.json +133 -0
- package/src/schemas/v3/overlays/extensions/sd.json +64 -0
- package/src/schemas/v3/overlays/extensions/sf.json +4 -2
- package/src/schemas/v3/overlays/extensions/sl.json +4 -2
- package/src/schemas/v3/overlays/extensions/ta.json +204 -0
- package/src/schemas/v3/overlays/extensions/tf.json +6 -3
- package/src/schemas/v3/overlays/extensions/tr.json +74 -0
- package/src/schemas/v3/overlays/extensions/wg.json +351 -0
- package/src/schemas/v3/overlays/fme1.json +16 -14
- package/src/schemas/v3/overlays/llc1.json +1 -2
- package/src/schemas/v3/overlays/lpe1.json +61 -31
- package/src/schemas/v3/overlays/nts.json +71 -2
- package/src/schemas/v3/overlays/nts2.json +71 -5
- package/src/schemas/v3/overlays/ntsl.json +71 -2
- package/src/schemas/v3/overlays/ntsl2.json +71 -5
- package/src/schemas/v3/overlays/piq.json +60 -27
- package/src/schemas/v3/overlays/rds.json +139 -57
- package/src/schemas/v3/overlays/sef25.json +1653 -0
- package/src/schemas/v3/overlays/ta10.json +0 -9
- package/src/schemas/v3/overlays/ta6.json +83 -85
- package/src/schemas/v3/overlays/ta6ed6.json +6641 -0
- package/src/schemas/v3/overlays/ta7.json +70 -6
- package/src/schemas/v3/overlays/ta7ed5.json +1597 -0
- package/src/schemas/v3/pdtf-transaction.json +4525 -1013
- package/src/schemas/v3/skeleton.json +512 -40
- package/src/utils/extractExtensionOverlays.js +302 -31
- package/src/utils/extractOverlay.js +114 -27
- package/src/utils/pathSkeleton.js +1 -1
- package/.claude/settings.local.json +0 -42
- package/.github/workflows/pages.yml +0 -50
- package/CNAME +0 -1
- package/_config.yml +0 -1
- package/src/examples/v1/exampleAddParticipantVouch.json +0 -32
- package/src/examples/v1/exampleDocumentedVouch.json +0 -40
- package/src/examples/v1/exampleElectronicRecord.json +0 -30
- package/src/examples/v1/exampleTransaction.json +0 -878
- package/src/examples/v1/exampleVouch.json +0 -25
- package/src/examples/v2/exampleTransaction.json +0 -901
- package/src/examples/v3/exampleAddParticipantVouch.json +0 -38
- package/src/examples/v3/exampleCustomOverlay.json +0 -55
- package/src/examples/v3/exampleCustomOverlay2.json +0 -93
- package/src/examples/v3/exampleDocumentedVouch.json +0 -47
- package/src/examples/v3/exampleElectronicRecord.json +0 -36
- package/src/examples/v3/exampleTransaction.json +0 -1038
- package/src/examples/v3/exampleVouch.json +0 -32
- package/src/mappings/SendPropertyDetailsRequestSchema.json +0 -1588
- package/src/mappings/adf.js +0 -198
- package/src/tests/v3/caching.test.js +0 -591
- package/src/tests/v3/enquiries.test.js +0 -1096
- package/src/tests/v3/extensionOverlays.test.js +0 -525
- package/src/tests/v3/offers.test.js +0 -823
- package/src/tests/v3/patternProperties.test.js +0 -688
- package/src/tests/v3/transactionSchema.test.js +0 -615
- package/src/tests/v3/verifiedClaimsValidator.test.js +0 -195
|
@@ -2,9 +2,24 @@ const { dereference } = require("@jdw/jst");
|
|
|
2
2
|
const traverse = require("traverse");
|
|
3
3
|
const jp = require("jsonpointer");
|
|
4
4
|
const fs = require("fs");
|
|
5
|
+
const path = require("path");
|
|
5
6
|
const merge = require("deepmerge");
|
|
6
7
|
|
|
7
|
-
const
|
|
8
|
+
const combinedPath =
|
|
9
|
+
process.env.COMBINED_PATH ||
|
|
10
|
+
path.resolve(__dirname, "../schemas/v3/combined.json");
|
|
11
|
+
const outputDir =
|
|
12
|
+
process.env.OUTPUT_DIR ||
|
|
13
|
+
path.resolve(__dirname, "../schemas/v3");
|
|
14
|
+
|
|
15
|
+
if (!fs.existsSync(combinedPath)) {
|
|
16
|
+
throw new Error(`Combined schema not found: ${combinedPath}`);
|
|
17
|
+
}
|
|
18
|
+
if (!fs.existsSync(outputDir)) {
|
|
19
|
+
fs.mkdirSync(outputDir, { recursive: true });
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
const combinedSchema = JSON.parse(fs.readFileSync(combinedPath, "utf8"));
|
|
8
23
|
|
|
9
24
|
const extractFields = [
|
|
10
25
|
"baspi4",
|
|
@@ -14,7 +29,9 @@ const extractFields = [
|
|
|
14
29
|
"ntsl",
|
|
15
30
|
"ntsl2",
|
|
16
31
|
"ta6",
|
|
32
|
+
"ta6ed6",
|
|
17
33
|
"ta7",
|
|
34
|
+
"ta7ed5",
|
|
18
35
|
"ta10",
|
|
19
36
|
"lpe1",
|
|
20
37
|
"fme1",
|
|
@@ -25,8 +42,11 @@ const extractFields = [
|
|
|
25
42
|
"rds",
|
|
26
43
|
"oc1",
|
|
27
44
|
"sr24",
|
|
45
|
+
"sef25",
|
|
28
46
|
];
|
|
29
47
|
|
|
48
|
+
const metadataFields = [...extractFields, "ta6ed6Compat"];
|
|
49
|
+
|
|
30
50
|
const flattenSkeleton = (schema) => {
|
|
31
51
|
if (!schema) return undefined;
|
|
32
52
|
|
|
@@ -68,23 +88,21 @@ const flattenSkeleton = (schema) => {
|
|
|
68
88
|
});
|
|
69
89
|
}
|
|
70
90
|
|
|
71
|
-
// Handle oneOf - merge all possible properties
|
|
91
|
+
// Handle oneOf - merge all possible properties (recursively handles nested oneOf)
|
|
72
92
|
if (schema.oneOf) {
|
|
73
93
|
schema.oneOf.forEach((aOneOf) => {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
if (returnStructure[key] && JSON.stringify(returnStructure[key]) !== JSON.stringify(
|
|
79
|
-
|
|
80
|
-
if (typeof returnStructure[key] === "string" || typeof newValue === "string") {
|
|
94
|
+
const variantResult = flattenSkeleton(aOneOf);
|
|
95
|
+
if (variantResult && typeof variantResult === "object" && !Array.isArray(variantResult)) {
|
|
96
|
+
Object.entries(variantResult).forEach(([key, value]) => {
|
|
97
|
+
if (key === "_variants") return;
|
|
98
|
+
if (returnStructure[key] && JSON.stringify(returnStructure[key]) !== JSON.stringify(value)) {
|
|
99
|
+
if (typeof returnStructure[key] === "string" || typeof value === "string") {
|
|
81
100
|
returnStructure[key] = "variant";
|
|
82
101
|
} else {
|
|
83
|
-
|
|
84
|
-
returnStructure[key] = { ...returnStructure[key], ...newValue, _variants: true };
|
|
102
|
+
returnStructure[key] = { ...returnStructure[key], ...value, _variants: true };
|
|
85
103
|
}
|
|
86
104
|
} else {
|
|
87
|
-
returnStructure[key] =
|
|
105
|
+
returnStructure[key] = value;
|
|
88
106
|
}
|
|
89
107
|
});
|
|
90
108
|
}
|
|
@@ -97,6 +115,23 @@ const flattenSkeleton = (schema) => {
|
|
|
97
115
|
|
|
98
116
|
const extractOverlay = (sourceSchema, ref) => {
|
|
99
117
|
const refName = `${ref}Ref`;
|
|
118
|
+
const extendedTagMap = {
|
|
119
|
+
Type: "type",
|
|
120
|
+
MinLength: "minLength",
|
|
121
|
+
MaxLength: "maxLength",
|
|
122
|
+
Pattern: "pattern",
|
|
123
|
+
Minimum: "minimum",
|
|
124
|
+
Maximum: "maximum",
|
|
125
|
+
MinItems: "minItems",
|
|
126
|
+
MaxItems: "maxItems",
|
|
127
|
+
UniqueItems: "uniqueItems",
|
|
128
|
+
AdditionalProperties: "additionalProperties",
|
|
129
|
+
Format: "format",
|
|
130
|
+
MinProperties: "minProperties",
|
|
131
|
+
MaxProperties: "maxProperties",
|
|
132
|
+
MultipleOf: "multipleOf",
|
|
133
|
+
Const: "const",
|
|
134
|
+
};
|
|
100
135
|
const returnSchema = {
|
|
101
136
|
$schema: "http://json-schema.org/draft-07/schema#",
|
|
102
137
|
$id: `https://trust.propdata.org.uk/schemas/v3/overlays/${ref}.json`,
|
|
@@ -107,7 +142,7 @@ const extractOverlay = (sourceSchema, ref) => {
|
|
|
107
142
|
if (element[refName]) {
|
|
108
143
|
jp.set(returnSchema, `${path}/${refName}`, element[refName]);
|
|
109
144
|
|
|
110
|
-
if (element.discriminator) {
|
|
145
|
+
if (element.discriminator && Array.isArray(element.oneOf)) {
|
|
111
146
|
jp.set(returnSchema, `${path}/discriminator`, element.discriminator);
|
|
112
147
|
const { propertyName } = element.discriminator;
|
|
113
148
|
element.oneOf.forEach((oneOf, index) => {
|
|
@@ -134,7 +169,7 @@ const extractOverlay = (sourceSchema, ref) => {
|
|
|
134
169
|
}
|
|
135
170
|
|
|
136
171
|
// also handle discriminator properties nested in items
|
|
137
|
-
if (element.items?.discriminator) {
|
|
172
|
+
if (element.items?.discriminator && Array.isArray(element.items.oneOf)) {
|
|
138
173
|
jp.set(
|
|
139
174
|
returnSchema,
|
|
140
175
|
`${path}/items/discriminator`,
|
|
@@ -184,6 +219,37 @@ const extractOverlay = (sourceSchema, ref) => {
|
|
|
184
219
|
if (element[refEnum]) {
|
|
185
220
|
jp.set(returnSchema, `${path}/enum`, element[refEnum]);
|
|
186
221
|
}
|
|
222
|
+
|
|
223
|
+
// Per-overlay display labels for enum values. The underlying enum (the
|
|
224
|
+
// stored value) is left untouched — we only emit positional `enumNames`
|
|
225
|
+
// aligned to the effective enum, so a form-facing overlay can present the
|
|
226
|
+
// form's own wording (e.g. "Ground"/"Surface water") while the data keeps
|
|
227
|
+
// its canonical value. Invisible to the core/base schema (stripped below).
|
|
228
|
+
const refEnumNames = `${ref}EnumNames`;
|
|
229
|
+
if (element[refEnumNames]) {
|
|
230
|
+
const labelMap = element[refEnumNames];
|
|
231
|
+
const effectiveEnum = element[refEnum] || element.enum;
|
|
232
|
+
if (Array.isArray(effectiveEnum)) {
|
|
233
|
+
const enumNames = effectiveEnum.map((value) =>
|
|
234
|
+
Object.prototype.hasOwnProperty.call(labelMap, value)
|
|
235
|
+
? labelMap[value]
|
|
236
|
+
: value
|
|
237
|
+
);
|
|
238
|
+
jp.set(returnSchema, `${path}/enumNames`, enumNames);
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
const refConst = `${ref}Const`;
|
|
243
|
+
if (Object.prototype.hasOwnProperty.call(element, refConst)) {
|
|
244
|
+
jp.set(returnSchema, `${path}/const`, element[refConst]);
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
Object.entries(extendedTagMap).forEach(([suffix, schemaKey]) => {
|
|
248
|
+
const tagKey = `${ref}${suffix}`;
|
|
249
|
+
if (Object.prototype.hasOwnProperty.call(element, tagKey)) {
|
|
250
|
+
jp.set(returnSchema, `${path}/${schemaKey}`, element[tagKey]);
|
|
251
|
+
}
|
|
252
|
+
});
|
|
187
253
|
});
|
|
188
254
|
return returnSchema;
|
|
189
255
|
};
|
|
@@ -198,28 +264,49 @@ const deleteProperties = (sourceSchema, propertyNames) => {
|
|
|
198
264
|
};
|
|
199
265
|
|
|
200
266
|
const overlays = {};
|
|
267
|
+
const overlaysDir = path.join(outputDir, "overlays");
|
|
268
|
+
if (!fs.existsSync(overlaysDir)) {
|
|
269
|
+
fs.mkdirSync(overlaysDir, { recursive: true });
|
|
270
|
+
}
|
|
201
271
|
|
|
202
272
|
extractFields.forEach((key) => {
|
|
203
273
|
let overlay = extractOverlay(combinedSchema, key);
|
|
204
274
|
overlays[key] = overlay;
|
|
205
|
-
const fileName =
|
|
275
|
+
const fileName = path.join(overlaysDir, `${key}.json`);
|
|
206
276
|
fs.writeFileSync(fileName, JSON.stringify(overlay, null, 2));
|
|
207
277
|
console.log(`Overlay ${key} written to ${fileName}`);
|
|
208
278
|
});
|
|
209
279
|
|
|
210
280
|
const coreSchema = deleteProperties(combinedSchema, [
|
|
211
281
|
"discriminator",
|
|
212
|
-
...
|
|
213
|
-
...
|
|
214
|
-
...
|
|
215
|
-
...
|
|
282
|
+
...metadataFields.map((item) => `${item}Ref`),
|
|
283
|
+
...metadataFields.map((item) => `${item}Required`),
|
|
284
|
+
...metadataFields.map((item) => `${item}Title`),
|
|
285
|
+
...metadataFields.map((item) => `${item}Description`),
|
|
286
|
+
...metadataFields.map((item) => `${item}Enum`),
|
|
287
|
+
...metadataFields.map((item) => `${item}EnumNames`),
|
|
288
|
+
...metadataFields.map((item) => `${item}Type`),
|
|
289
|
+
...metadataFields.map((item) => `${item}MinLength`),
|
|
290
|
+
...metadataFields.map((item) => `${item}MaxLength`),
|
|
291
|
+
...metadataFields.map((item) => `${item}Pattern`),
|
|
292
|
+
...metadataFields.map((item) => `${item}Minimum`),
|
|
293
|
+
...metadataFields.map((item) => `${item}Maximum`),
|
|
294
|
+
...metadataFields.map((item) => `${item}MinItems`),
|
|
295
|
+
...metadataFields.map((item) => `${item}MaxItems`),
|
|
296
|
+
...metadataFields.map((item) => `${item}UniqueItems`),
|
|
297
|
+
...metadataFields.map((item) => `${item}AdditionalProperties`),
|
|
298
|
+
...metadataFields.map((item) => `${item}Format`),
|
|
299
|
+
...metadataFields.map((item) => `${item}MinProperties`),
|
|
300
|
+
...metadataFields.map((item) => `${item}MaxProperties`),
|
|
301
|
+
...metadataFields.map((item) => `${item}MultipleOf`),
|
|
302
|
+
...metadataFields.map((item) => `${item}Const`),
|
|
216
303
|
]);
|
|
217
304
|
|
|
218
305
|
fs.writeFileSync(
|
|
219
|
-
"
|
|
306
|
+
path.join(outputDir, "pdtf-transaction.json"),
|
|
220
307
|
JSON.stringify(coreSchema, null, 2)
|
|
221
308
|
);
|
|
222
|
-
console.log(
|
|
309
|
+
console.log(`Core schema written to ${path.join(outputDir, "pdtf-transaction.json")}`);
|
|
223
310
|
|
|
224
311
|
const skeletonSchema = deleteProperties(coreSchema, [
|
|
225
312
|
"$schema",
|
|
@@ -238,10 +325,10 @@ const skeletonSchema = deleteProperties(coreSchema, [
|
|
|
238
325
|
const skeletonSchemaFlattened = flattenSkeleton(skeletonSchema);
|
|
239
326
|
|
|
240
327
|
fs.writeFileSync(
|
|
241
|
-
"
|
|
328
|
+
path.join(outputDir, "skeleton.json"),
|
|
242
329
|
JSON.stringify(skeletonSchemaFlattened, null, 2)
|
|
243
330
|
);
|
|
244
|
-
console.log(
|
|
331
|
+
console.log(`Flat Skeleton schema written to ${path.join(outputDir, "skeleton.json")}`);
|
|
245
332
|
|
|
246
333
|
// Generate compact skeleton format for better token efficiency
|
|
247
334
|
const toCompact = (obj, indent = "") => {
|
|
@@ -267,8 +354,8 @@ const toCompact = (obj, indent = "") => {
|
|
|
267
354
|
// Check if this is a keyed object (has "*" key)
|
|
268
355
|
if (keys.length === 1 && keys[0] === "*") {
|
|
269
356
|
const inner = toCompact(obj["*"], indent);
|
|
270
|
-
if (inner === "") {
|
|
271
|
-
return "{*}"; // Keyed object of primitives
|
|
357
|
+
if (inner === "" || inner === "{*}") {
|
|
358
|
+
return "{*}"; // Keyed object of primitives (or nested keyed objects with no structure)
|
|
272
359
|
}
|
|
273
360
|
return `{*}\n${inner}`;
|
|
274
361
|
}
|
|
@@ -308,7 +395,7 @@ const innerContent = toCompact(skeletonSchemaFlattened, "");
|
|
|
308
395
|
const compactSkeleton = innerContent ? innerContent : "";
|
|
309
396
|
|
|
310
397
|
fs.writeFileSync(
|
|
311
|
-
"
|
|
398
|
+
path.join(outputDir, "compactSkeleton.txt"),
|
|
312
399
|
compactSkeleton
|
|
313
400
|
);
|
|
314
|
-
console.log(
|
|
401
|
+
console.log(`Compact Skeleton written to ${path.join(outputDir, "compactSkeleton.txt")}`);
|
|
@@ -6,7 +6,7 @@ const combinedSchema = require("../schemas/v3/combined.json");
|
|
|
6
6
|
// Extract fields that have overlay-specific properties
|
|
7
7
|
const extractFields = [
|
|
8
8
|
"baspi4", "baspi5", "nts", "nts2", "ntsl", "ntsl2",
|
|
9
|
-
"ta6", "ta7", "ta10", "lpe1", "fme1", "piq",
|
|
9
|
+
"ta6", "ta7", "ta7ed5", "ta10", "lpe1", "fme1", "piq",
|
|
10
10
|
"con29R", "con29DW", "llc1", "rds", "oc1", "sr24",
|
|
11
11
|
];
|
|
12
12
|
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"permissions": {
|
|
3
|
-
"allow": [
|
|
4
|
-
"Bash(rg:*)",
|
|
5
|
-
"Bash(mkdir:*)",
|
|
6
|
-
"Bash(node:*)",
|
|
7
|
-
"Bash(ls:*)",
|
|
8
|
-
"Bash(jq:*)",
|
|
9
|
-
"Bash(grep:*)",
|
|
10
|
-
"Bash(rm:*)",
|
|
11
|
-
"Bash(npm test:*)",
|
|
12
|
-
"Bash(npm install:*)",
|
|
13
|
-
"Bash(git merge:*)",
|
|
14
|
-
"Bash(git add:*)",
|
|
15
|
-
"Bash(git commit:*)",
|
|
16
|
-
"Bash(git push:*)",
|
|
17
|
-
"Bash(git fetch:*)",
|
|
18
|
-
"Bash(git checkout:*)",
|
|
19
|
-
"Bash(gh pr view:*)",
|
|
20
|
-
"WebFetch(domain:github.com)",
|
|
21
|
-
"Bash(tree:*)",
|
|
22
|
-
"Bash(sed:*)",
|
|
23
|
-
"Bash(find:*)",
|
|
24
|
-
"Bash(chmod:*)",
|
|
25
|
-
"Bash(git rev-parse:*)",
|
|
26
|
-
"Bash(/dev/null)",
|
|
27
|
-
"Bash(git log:*)",
|
|
28
|
-
"Bash(for file in src/schemas/v2/overlays/*.json)",
|
|
29
|
-
"Bash(done)",
|
|
30
|
-
"Bash(while read file)",
|
|
31
|
-
"Bash(for:*)",
|
|
32
|
-
"Bash(do echo \"=== $file ===\")",
|
|
33
|
-
"Bash(do echo \"$file:\")",
|
|
34
|
-
"Bash(npm run proposal:pdf:*)",
|
|
35
|
-
"Bash(base64:*)",
|
|
36
|
-
"Bash(gh issue view:*)",
|
|
37
|
-
"Read(//Users/ed/.claude/**)",
|
|
38
|
-
"Bash(npm init:*)"
|
|
39
|
-
],
|
|
40
|
-
"deny": []
|
|
41
|
-
}
|
|
42
|
-
}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
# Sample workflow for building and deploying a Jekyll site to GitHub Pages
|
|
2
|
-
name: Deploy Jekyll with GitHub Pages dependencies preinstalled
|
|
3
|
-
|
|
4
|
-
on:
|
|
5
|
-
# Runs on pushes targeting the default branch
|
|
6
|
-
push:
|
|
7
|
-
branches: ["master"]
|
|
8
|
-
|
|
9
|
-
# Allows you to run this workflow manually from the Actions tab
|
|
10
|
-
workflow_dispatch:
|
|
11
|
-
|
|
12
|
-
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
|
|
13
|
-
permissions:
|
|
14
|
-
contents: read
|
|
15
|
-
pages: write
|
|
16
|
-
id-token: write
|
|
17
|
-
|
|
18
|
-
# Allow one concurrent deployment
|
|
19
|
-
concurrency:
|
|
20
|
-
group: "pages"
|
|
21
|
-
cancel-in-progress: true
|
|
22
|
-
|
|
23
|
-
jobs:
|
|
24
|
-
# Build job
|
|
25
|
-
build:
|
|
26
|
-
runs-on: ubuntu-latest
|
|
27
|
-
steps:
|
|
28
|
-
- name: Checkout
|
|
29
|
-
uses: actions/checkout@v3
|
|
30
|
-
- name: Setup Pages
|
|
31
|
-
uses: actions/configure-pages@v2
|
|
32
|
-
- name: Build with Jekyll
|
|
33
|
-
uses: actions/jekyll-build-pages@v1
|
|
34
|
-
with:
|
|
35
|
-
source: src
|
|
36
|
-
destination: ./_site
|
|
37
|
-
- name: Upload artifact
|
|
38
|
-
uses: actions/upload-pages-artifact@v1
|
|
39
|
-
|
|
40
|
-
# Deployment job
|
|
41
|
-
deploy:
|
|
42
|
-
environment:
|
|
43
|
-
name: github-pages
|
|
44
|
-
url: ${{ steps.deployment.outputs.page_url }}
|
|
45
|
-
runs-on: ubuntu-latest
|
|
46
|
-
needs: build
|
|
47
|
-
steps:
|
|
48
|
-
- name: Deploy to GitHub Pages
|
|
49
|
-
id: deployment
|
|
50
|
-
uses: actions/deploy-pages@v1
|
package/CNAME
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
trust.propdata.org.uk
|
package/_config.yml
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
theme: jekyll-theme-minimal
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"verification": {
|
|
3
|
-
"trust_framework": "uk_pdtf",
|
|
4
|
-
"time": "2022-01-25T13:05:03.108Z",
|
|
5
|
-
"evidence": [
|
|
6
|
-
{
|
|
7
|
-
"type": "vouch",
|
|
8
|
-
"attestation": {
|
|
9
|
-
"type": "digital_attestation",
|
|
10
|
-
"voucher": {
|
|
11
|
-
"name": "Martin Abode"
|
|
12
|
-
}
|
|
13
|
-
},
|
|
14
|
-
"verification_method": {
|
|
15
|
-
"type": "auth"
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
]
|
|
19
|
-
},
|
|
20
|
-
"claims": {
|
|
21
|
-
"/participants/-": {
|
|
22
|
-
"name": {
|
|
23
|
-
"firstName": "Martin",
|
|
24
|
-
"lastName": "Abode"
|
|
25
|
-
},
|
|
26
|
-
"email": "martin@abode.co.uk",
|
|
27
|
-
"organisation": "Abode and Floggit Estate Agents",
|
|
28
|
-
"organisationReference": "MAR/12243/22",
|
|
29
|
-
"role": "Estate Agent"
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"verification": {
|
|
3
|
-
"trust_framework": "uk_pdtf",
|
|
4
|
-
"time": "2022-01-25T13:16:44.527Z",
|
|
5
|
-
"evidence": [
|
|
6
|
-
{
|
|
7
|
-
"type": "vouch",
|
|
8
|
-
"attachments": [
|
|
9
|
-
{
|
|
10
|
-
"digest": {
|
|
11
|
-
"alg": "md5",
|
|
12
|
-
"value": "randomHashValue"
|
|
13
|
-
},
|
|
14
|
-
"url": "https://fakeFileStore.com/some/kind/of/file",
|
|
15
|
-
"desc": "proofOfAddress.pdf",
|
|
16
|
-
"pdtfSchemaPath": "/propertyPack/materialFacts/councilTax/councilTaxAffectingAlterations/details"
|
|
17
|
-
}
|
|
18
|
-
],
|
|
19
|
-
"verification_method": {
|
|
20
|
-
"type": "auth"
|
|
21
|
-
},
|
|
22
|
-
"attestation": {
|
|
23
|
-
"voucher": {
|
|
24
|
-
"name": "Maria Harris"
|
|
25
|
-
},
|
|
26
|
-
"type": "digital_attestation"
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
]
|
|
30
|
-
},
|
|
31
|
-
"claims": {
|
|
32
|
-
"/propertyPack/materialFacts/councilTax": {
|
|
33
|
-
"councilTaxBand": "D",
|
|
34
|
-
"councilTaxAffectingAlterations": {
|
|
35
|
-
"yesNo": "Yes",
|
|
36
|
-
"details": "Extension added in 2005 to add bedroom with ensuite shower room. Certificate of Compliance issued 17th Feb 2006 and council tax updated"
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"verification": {
|
|
3
|
-
"time": "2022-01-25T07:52:14.318Z",
|
|
4
|
-
"trust_framework": "uk_pdtf",
|
|
5
|
-
"evidence": [
|
|
6
|
-
{
|
|
7
|
-
"type": "electronic_record",
|
|
8
|
-
"verifier": {
|
|
9
|
-
"organization": "Property Pack Assembly Software Ltd"
|
|
10
|
-
},
|
|
11
|
-
"record": {
|
|
12
|
-
"source": {
|
|
13
|
-
"name": "Royal Mail Postcode Address File",
|
|
14
|
-
"rights": "(c) Royal Mail"
|
|
15
|
-
},
|
|
16
|
-
"type": "postcode_address_file"
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
]
|
|
20
|
-
},
|
|
21
|
-
"claims": {
|
|
22
|
-
"/propertyPack/materialFacts/address": {
|
|
23
|
-
"line1": "3 The Hollys",
|
|
24
|
-
"line2": "Birtley",
|
|
25
|
-
"town": "CHESTER LE STREET",
|
|
26
|
-
"county": "County Durham",
|
|
27
|
-
"postcode": "DH3 1QN"
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
}
|