@vepler/sdk 2.154.1 → 2.158.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.
Files changed (163) hide show
  1. package/dist/commonjs/funcs/propertyGetPropertyTiles.js +1 -0
  2. package/dist/commonjs/funcs/propertyGetPropertyTiles.js.map +1 -1
  3. package/dist/commonjs/lib/config.d.ts +3 -3
  4. package/dist/commonjs/lib/config.js +3 -3
  5. package/dist/commonjs/lib/encodings.js +12 -12
  6. package/dist/commonjs/lib/encodings.js.map +1 -1
  7. package/dist/commonjs/lib/matchers.js +3 -3
  8. package/dist/commonjs/lib/matchers.js.map +1 -1
  9. package/dist/commonjs/lib/primitives.d.ts +1 -0
  10. package/dist/commonjs/lib/primitives.d.ts.map +1 -1
  11. package/dist/commonjs/lib/primitives.js +18 -0
  12. package/dist/commonjs/lib/primitives.js.map +1 -1
  13. package/dist/commonjs/lib/sdks.d.ts.map +1 -1
  14. package/dist/commonjs/lib/sdks.js +37 -12
  15. package/dist/commonjs/lib/sdks.js.map +1 -1
  16. package/dist/commonjs/sdk/models/operations/getpropertytiles.d.ts +19 -0
  17. package/dist/commonjs/sdk/models/operations/getpropertytiles.d.ts.map +1 -1
  18. package/dist/commonjs/sdk/models/operations/getpropertytiles.js +11 -1
  19. package/dist/commonjs/sdk/models/operations/getpropertytiles.js.map +1 -1
  20. package/dist/commonjs/sdk/models/operations/getschoolbyid.d.ts +142 -1
  21. package/dist/commonjs/sdk/models/operations/getschoolbyid.d.ts.map +1 -1
  22. package/dist/commonjs/sdk/models/operations/getschoolbyid.js +66 -1
  23. package/dist/commonjs/sdk/models/operations/getschoolbyid.js.map +1 -1
  24. package/dist/commonjs/sdk/models/operations/getschoolbysource.d.ts +142 -1
  25. package/dist/commonjs/sdk/models/operations/getschoolbysource.d.ts.map +1 -1
  26. package/dist/commonjs/sdk/models/operations/getschoolbysource.js +66 -1
  27. package/dist/commonjs/sdk/models/operations/getschoolbysource.js.map +1 -1
  28. package/dist/commonjs/sdk/models/operations/queryschools.d.ts +143 -2
  29. package/dist/commonjs/sdk/models/operations/queryschools.d.ts.map +1 -1
  30. package/dist/commonjs/sdk/models/operations/queryschools.js +63 -1
  31. package/dist/commonjs/sdk/models/operations/queryschools.js.map +1 -1
  32. package/dist/commonjs/sdk/models/operations/queryschoolsbysource.d.ts +143 -2
  33. package/dist/commonjs/sdk/models/operations/queryschoolsbysource.d.ts.map +1 -1
  34. package/dist/commonjs/sdk/models/operations/queryschoolsbysource.js +66 -1
  35. package/dist/commonjs/sdk/models/operations/queryschoolsbysource.js.map +1 -1
  36. package/dist/commonjs/sdk/models/shared/councilbranding.d.ts +5 -14
  37. package/dist/commonjs/sdk/models/shared/councilbranding.d.ts.map +1 -1
  38. package/dist/commonjs/sdk/models/shared/councilbranding.js +3 -14
  39. package/dist/commonjs/sdk/models/shared/councilbranding.js.map +1 -1
  40. package/dist/commonjs/sdk/models/shared/index.d.ts +5 -0
  41. package/dist/commonjs/sdk/models/shared/index.d.ts.map +1 -1
  42. package/dist/commonjs/sdk/models/shared/index.js +5 -0
  43. package/dist/commonjs/sdk/models/shared/index.js.map +1 -1
  44. package/dist/commonjs/sdk/models/shared/schoolaccreditation.d.ts +21 -0
  45. package/dist/commonjs/sdk/models/shared/schoolaccreditation.d.ts.map +1 -0
  46. package/dist/commonjs/sdk/models/shared/schoolaccreditation.js +52 -0
  47. package/dist/commonjs/sdk/models/shared/schoolaccreditation.js.map +1 -0
  48. package/dist/commonjs/sdk/models/shared/schoolimage.d.ts +29 -0
  49. package/dist/commonjs/sdk/models/shared/schoolimage.d.ts.map +1 -0
  50. package/dist/commonjs/sdk/models/shared/schoolimage.js +54 -0
  51. package/dist/commonjs/sdk/models/shared/schoolimage.js.map +1 -0
  52. package/dist/commonjs/sdk/models/shared/schooltermdate.d.ts +21 -0
  53. package/dist/commonjs/sdk/models/shared/schooltermdate.d.ts.map +1 -0
  54. package/dist/commonjs/sdk/models/shared/schooltermdate.js +52 -0
  55. package/dist/commonjs/sdk/models/shared/schooltermdate.js.map +1 -0
  56. package/dist/commonjs/sdk/models/shared/schoolvideo.d.ts +52 -0
  57. package/dist/commonjs/sdk/models/shared/schoolvideo.d.ts.map +1 -0
  58. package/dist/commonjs/sdk/models/shared/schoolvideo.js +67 -0
  59. package/dist/commonjs/sdk/models/shared/schoolvideo.js.map +1 -0
  60. package/dist/commonjs/sdk/models/shared/socialmedialinks.d.ts +33 -0
  61. package/dist/commonjs/sdk/models/shared/socialmedialinks.d.ts.map +1 -0
  62. package/dist/commonjs/sdk/models/shared/socialmedialinks.js +55 -0
  63. package/dist/commonjs/sdk/models/shared/socialmedialinks.js.map +1 -0
  64. package/dist/esm/funcs/propertyGetPropertyTiles.js +1 -0
  65. package/dist/esm/funcs/propertyGetPropertyTiles.js.map +1 -1
  66. package/dist/esm/lib/config.d.ts +3 -3
  67. package/dist/esm/lib/config.js +3 -3
  68. package/dist/esm/lib/encodings.js +1 -1
  69. package/dist/esm/lib/encodings.js.map +1 -1
  70. package/dist/esm/lib/matchers.js +1 -1
  71. package/dist/esm/lib/matchers.js.map +1 -1
  72. package/dist/esm/lib/primitives.d.ts +1 -0
  73. package/dist/esm/lib/primitives.d.ts.map +1 -1
  74. package/dist/esm/lib/primitives.js +17 -0
  75. package/dist/esm/lib/primitives.js.map +1 -1
  76. package/dist/esm/lib/sdks.d.ts.map +1 -1
  77. package/dist/esm/lib/sdks.js +37 -12
  78. package/dist/esm/lib/sdks.js.map +1 -1
  79. package/dist/esm/sdk/models/operations/getpropertytiles.d.ts +19 -0
  80. package/dist/esm/sdk/models/operations/getpropertytiles.d.ts.map +1 -1
  81. package/dist/esm/sdk/models/operations/getpropertytiles.js +10 -0
  82. package/dist/esm/sdk/models/operations/getpropertytiles.js.map +1 -1
  83. package/dist/esm/sdk/models/operations/getschoolbyid.d.ts +142 -1
  84. package/dist/esm/sdk/models/operations/getschoolbyid.d.ts.map +1 -1
  85. package/dist/esm/sdk/models/operations/getschoolbyid.js +60 -0
  86. package/dist/esm/sdk/models/operations/getschoolbyid.js.map +1 -1
  87. package/dist/esm/sdk/models/operations/getschoolbysource.d.ts +142 -1
  88. package/dist/esm/sdk/models/operations/getschoolbysource.d.ts.map +1 -1
  89. package/dist/esm/sdk/models/operations/getschoolbysource.js +60 -0
  90. package/dist/esm/sdk/models/operations/getschoolbysource.js.map +1 -1
  91. package/dist/esm/sdk/models/operations/queryschools.d.ts +143 -2
  92. package/dist/esm/sdk/models/operations/queryschools.d.ts.map +1 -1
  93. package/dist/esm/sdk/models/operations/queryschools.js +57 -0
  94. package/dist/esm/sdk/models/operations/queryschools.js.map +1 -1
  95. package/dist/esm/sdk/models/operations/queryschoolsbysource.d.ts +143 -2
  96. package/dist/esm/sdk/models/operations/queryschoolsbysource.d.ts.map +1 -1
  97. package/dist/esm/sdk/models/operations/queryschoolsbysource.js +60 -0
  98. package/dist/esm/sdk/models/operations/queryschoolsbysource.js.map +1 -1
  99. package/dist/esm/sdk/models/shared/councilbranding.d.ts +5 -14
  100. package/dist/esm/sdk/models/shared/councilbranding.d.ts.map +1 -1
  101. package/dist/esm/sdk/models/shared/councilbranding.js +2 -12
  102. package/dist/esm/sdk/models/shared/councilbranding.js.map +1 -1
  103. package/dist/esm/sdk/models/shared/index.d.ts +5 -0
  104. package/dist/esm/sdk/models/shared/index.d.ts.map +1 -1
  105. package/dist/esm/sdk/models/shared/index.js +5 -0
  106. package/dist/esm/sdk/models/shared/index.js.map +1 -1
  107. package/dist/esm/sdk/models/shared/schoolaccreditation.d.ts +21 -0
  108. package/dist/esm/sdk/models/shared/schoolaccreditation.d.ts.map +1 -0
  109. package/dist/esm/sdk/models/shared/schoolaccreditation.js +15 -0
  110. package/dist/esm/sdk/models/shared/schoolaccreditation.js.map +1 -0
  111. package/dist/esm/sdk/models/shared/schoolimage.d.ts +29 -0
  112. package/dist/esm/sdk/models/shared/schoolimage.d.ts.map +1 -0
  113. package/dist/esm/sdk/models/shared/schoolimage.js +17 -0
  114. package/dist/esm/sdk/models/shared/schoolimage.js.map +1 -0
  115. package/dist/esm/sdk/models/shared/schooltermdate.d.ts +21 -0
  116. package/dist/esm/sdk/models/shared/schooltermdate.d.ts.map +1 -0
  117. package/dist/esm/sdk/models/shared/schooltermdate.js +15 -0
  118. package/dist/esm/sdk/models/shared/schooltermdate.js.map +1 -0
  119. package/dist/esm/sdk/models/shared/schoolvideo.d.ts +52 -0
  120. package/dist/esm/sdk/models/shared/schoolvideo.d.ts.map +1 -0
  121. package/dist/esm/sdk/models/shared/schoolvideo.js +30 -0
  122. package/dist/esm/sdk/models/shared/schoolvideo.js.map +1 -0
  123. package/dist/esm/sdk/models/shared/socialmedialinks.d.ts +33 -0
  124. package/dist/esm/sdk/models/shared/socialmedialinks.d.ts.map +1 -0
  125. package/dist/esm/sdk/models/shared/socialmedialinks.js +18 -0
  126. package/dist/esm/sdk/models/shared/socialmedialinks.js.map +1 -0
  127. package/package.json +1 -1
  128. package/src/funcs/propertyGetPropertyTiles.ts +1 -0
  129. package/src/lib/config.ts +3 -3
  130. package/src/lib/encodings.ts +1 -1
  131. package/src/lib/matchers.ts +1 -1
  132. package/src/lib/primitives.ts +16 -0
  133. package/src/lib/sdks.ts +41 -13
  134. package/src/sdk/models/operations/getpropertytiles.ts +26 -0
  135. package/src/sdk/models/operations/getschoolbyid.ts +244 -1
  136. package/src/sdk/models/operations/getschoolbysource.ts +254 -1
  137. package/src/sdk/models/operations/queryschools.ts +252 -2
  138. package/src/sdk/models/operations/queryschoolsbysource.ts +256 -2
  139. package/src/sdk/models/shared/councilbranding.ts +9 -36
  140. package/src/sdk/models/shared/index.ts +5 -0
  141. package/src/sdk/models/shared/schoolaccreditation.ts +44 -0
  142. package/src/sdk/models/shared/schoolimage.ts +54 -0
  143. package/src/sdk/models/shared/schooltermdate.ts +44 -0
  144. package/src/sdk/models/shared/schoolvideo.ts +86 -0
  145. package/src/sdk/models/shared/socialmedialinks.ts +59 -0
  146. package/dist/commonjs/lib/dlv.d.ts +0 -14
  147. package/dist/commonjs/lib/dlv.d.ts.map +0 -1
  148. package/dist/commonjs/lib/dlv.js +0 -49
  149. package/dist/commonjs/lib/dlv.js.map +0 -1
  150. package/dist/commonjs/lib/is-plain-object.d.ts +0 -2
  151. package/dist/commonjs/lib/is-plain-object.d.ts.map +0 -1
  152. package/dist/commonjs/lib/is-plain-object.js +0 -41
  153. package/dist/commonjs/lib/is-plain-object.js.map +0 -1
  154. package/dist/esm/lib/dlv.d.ts +0 -14
  155. package/dist/esm/lib/dlv.d.ts.map +0 -1
  156. package/dist/esm/lib/dlv.js +0 -46
  157. package/dist/esm/lib/dlv.js.map +0 -1
  158. package/dist/esm/lib/is-plain-object.d.ts +0 -2
  159. package/dist/esm/lib/is-plain-object.d.ts.map +0 -1
  160. package/dist/esm/lib/is-plain-object.js +0 -38
  161. package/dist/esm/lib/is-plain-object.js.map +0 -1
  162. package/src/lib/dlv.ts +0 -53
  163. package/src/lib/is-plain-object.ts +0 -43
@@ -12,7 +12,7 @@ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
12
12
  import * as shared from "../shared/index.js";
13
13
 
14
14
  /**
15
- * Fields/blocks to return per school. Default (omitted): the full flat record, no blocks. Aggregate blocks (`inspections`, `identifiers`, `trust`) are additive — requesting only block names keeps the full flat record and adds the blocks. List scalar field names to trim.
15
+ * Fields/blocks to return per school. Default (omitted): the full flat record, no blocks. Aggregate blocks (`inspections`, `identifiers`, `trust`, `images`, `branding`, `accreditations`, `videos`, `about`) are additive — requesting only block names keeps the full flat record and adds the blocks. List scalar field names to trim.
16
16
  */
17
17
  export type Attributes = string | Array<string>;
18
18
 
@@ -36,7 +36,7 @@ export type Provider = ClosedEnum<typeof Provider>;
36
36
  */
37
37
  export type QuerySchoolsBySourceRequestBody = {
38
38
  /**
39
- * Fields/blocks to return per school. Default (omitted): the full flat record, no blocks. Aggregate blocks (`inspections`, `identifiers`, `trust`) are additive — requesting only block names keeps the full flat record and adds the blocks. List scalar field names to trim.
39
+ * Fields/blocks to return per school. Default (omitted): the full flat record, no blocks. Aggregate blocks (`inspections`, `identifiers`, `trust`, `images`, `branding`, `accreditations`, `videos`, `about`) are additive — requesting only block names keeps the full flat record and adds the blocks. List scalar field names to trim.
40
40
  */
41
41
  attributes?: string | Array<string> | undefined;
42
42
  /**
@@ -49,6 +49,78 @@ export type QuerySchoolsBySourceRequestBody = {
49
49
  provider: Provider;
50
50
  };
51
51
 
52
+ /**
53
+ * Institutional narrative (ethos, welcome, term dates …). Opt-in via `attributes=about`.
54
+ */
55
+ export type QuerySchoolsBySourceAbout = {
56
+ /**
57
+ * General 'about the school' narrative.
58
+ */
59
+ aboutDescription?: string | null | undefined;
60
+ /**
61
+ * Whether after-school / wraparound care is offered.
62
+ */
63
+ afterSchoolCare?: boolean | null | undefined;
64
+ /**
65
+ * Whether a breakfast club is offered.
66
+ */
67
+ breakfastClub?: boolean | null | undefined;
68
+ /**
69
+ * Extra-curricular clubs description.
70
+ */
71
+ clubsDescription?: string | null | undefined;
72
+ /**
73
+ * Curriculum narrative.
74
+ */
75
+ curriculumDescription?: string | null | undefined;
76
+ /**
77
+ * The school's stated ethos / values.
78
+ */
79
+ ethos?: string | null | undefined;
80
+ /**
81
+ * Facilities description.
82
+ */
83
+ facilitiesDescription?: string | null | undefined;
84
+ /**
85
+ * Headteacher's welcome message.
86
+ */
87
+ headteacherWelcome?: string | null | undefined;
88
+ /**
89
+ * School history narrative.
90
+ */
91
+ historyDescription?: string | null | undefined;
92
+ /**
93
+ * Link to the school prospectus.
94
+ */
95
+ prospectusUrl?: string | null | undefined;
96
+ /**
97
+ * Results / outcomes summary as published.
98
+ */
99
+ resultsSummary?: string | null | undefined;
100
+ /**
101
+ * SEND / inclusion statement.
102
+ */
103
+ sendStatement?: string | null | undefined;
104
+ /**
105
+ * Published term dates.
106
+ */
107
+ termDates?: Array<shared.SchoolTermDate> | undefined;
108
+ /**
109
+ * Named uniform supplier, where stated.
110
+ */
111
+ uniformSupplier?: string | null | undefined;
112
+ };
113
+
114
+ /**
115
+ * Award / kitemark / partner badges. Opt-in via `attributes=accreditations`.
116
+ */
117
+ export type QuerySchoolsBySourceAccreditations = {
118
+ /**
119
+ * Cleared accreditation / award badges.
120
+ */
121
+ accreditations?: Array<shared.SchoolAccreditation> | undefined;
122
+ };
123
+
52
124
  /**
53
125
  * Postal address of the school
54
126
  */
@@ -75,6 +147,25 @@ export type QuerySchoolsBySourceAddress = {
75
147
  town?: string | undefined;
76
148
  };
77
149
 
150
+ /**
151
+ * School branding — logo/crest, colours, social handles. Opt-in via `attributes=branding`.
152
+ */
153
+ export type QuerySchoolsBySourceBranding = {
154
+ /**
155
+ * Public URL to the entity's logo / crest.
156
+ */
157
+ logoUrl?: string | undefined;
158
+ /**
159
+ * Primary brand colour (hex).
160
+ */
161
+ primaryColour?: string | undefined;
162
+ /**
163
+ * Secondary brand colour (hex).
164
+ */
165
+ secondaryColour?: string | undefined;
166
+ socialMedia?: shared.SocialMediaLinks | undefined;
167
+ };
168
+
78
169
  /**
79
170
  * Latest published inspection rating. Native rating from the inspector body that issued it (England: Ofsted; Wales: Estyn; Scotland: Education Scotland; NI: ETI; IE: DES Inspectorate). Rating scales differ by inspector body — do not assume cross-body equivalence.
80
171
  */
@@ -128,6 +219,16 @@ export type QuerySchoolsBySourceIdentifiers = {
128
219
  ukprn?: string | null | undefined;
129
220
  };
130
221
 
222
+ /**
223
+ * Facility / building photography, tagged. Opt-in via `attributes=images`.
224
+ */
225
+ export type QuerySchoolsBySourceImages = {
226
+ /**
227
+ * Cleared facility / building photography, newest first.
228
+ */
229
+ images?: Array<shared.SchoolImage> | undefined;
230
+ };
231
+
131
232
  /**
132
233
  * Inspection history. Present only when requested via `attributes=inspections`.
133
234
  */
@@ -232,16 +333,38 @@ export type QuerySchoolsBySourceType = OpenEnum<
232
333
  typeof QuerySchoolsBySourceType
233
334
  >;
234
335
 
336
+ /**
337
+ * Video embeds (metadata only, by reference). Opt-in via `attributes=videos`.
338
+ */
339
+ export type QuerySchoolsBySourceVideos = {
340
+ /**
341
+ * Cleared video embeds.
342
+ */
343
+ videos?: Array<shared.SchoolVideo> | undefined;
344
+ };
345
+
235
346
  /**
236
347
  * A single school record. Combines identity (country, region, provider+key) with descriptive details, location, the latest inspection rating, and source-register metadata. Use the `provider`+`key` pair as a cross-jurisdiction alternate key, and `id` as the durable internal identifier.
237
348
  */
238
349
  export type QuerySchoolsBySourceData = {
350
+ /**
351
+ * Institutional narrative (ethos, welcome, term dates …). Opt-in via `attributes=about`.
352
+ */
353
+ about?: QuerySchoolsBySourceAbout | null | undefined;
354
+ /**
355
+ * Award / kitemark / partner badges. Opt-in via `attributes=accreditations`.
356
+ */
357
+ accreditations?: QuerySchoolsBySourceAccreditations | null | undefined;
239
358
  /**
240
359
  * Postal address of the school
241
360
  */
242
361
  address?: QuerySchoolsBySourceAddress | undefined;
243
362
  admissionsPolicy?: string | undefined;
244
363
  ageRange?: string | undefined;
364
+ /**
365
+ * School branding — logo/crest, colours, social handles. Opt-in via `attributes=branding`.
366
+ */
367
+ branding?: QuerySchoolsBySourceBranding | null | undefined;
245
368
  capacity?: number | undefined;
246
369
  /**
247
370
  * Catchment match block. Present only when the request included `catchmentReference`. `matchBasis` is empty when the school is only in range (Tier 5 distance fallback); `verdict` is always populated.
@@ -274,6 +397,10 @@ export type QuerySchoolsBySourceData = {
274
397
  * Cross-register identifiers. Present only when requested via `attributes=identifiers`.
275
398
  */
276
399
  identifiers?: QuerySchoolsBySourceIdentifiers | null | undefined;
400
+ /**
401
+ * Facility / building photography, tagged. Opt-in via `attributes=images`.
402
+ */
403
+ images?: QuerySchoolsBySourceImages | null | undefined;
277
404
  /**
278
405
  * Inspection history. Present only when requested via `attributes=inspections`.
279
406
  */
@@ -348,6 +475,10 @@ export type QuerySchoolsBySourceData = {
348
475
  * ISO 8601 datetime of the most recent update to this record
349
476
  */
350
477
  updatedAt: string;
478
+ /**
479
+ * Video embeds (metadata only, by reference). Opt-in via `attributes=videos`.
480
+ */
481
+ videos?: QuerySchoolsBySourceVideos | null | undefined;
351
482
  website?: string | undefined;
352
483
  };
353
484
 
@@ -436,6 +567,58 @@ export function querySchoolsBySourceRequestBodyToJSON(
436
567
  );
437
568
  }
438
569
 
570
+ /** @internal */
571
+ export const QuerySchoolsBySourceAbout$inboundSchema: z.ZodType<
572
+ QuerySchoolsBySourceAbout,
573
+ z.ZodTypeDef,
574
+ unknown
575
+ > = z.object({
576
+ aboutDescription: z.nullable(z.string()).optional(),
577
+ afterSchoolCare: z.nullable(z.boolean()).optional(),
578
+ breakfastClub: z.nullable(z.boolean()).optional(),
579
+ clubsDescription: z.nullable(z.string()).optional(),
580
+ curriculumDescription: z.nullable(z.string()).optional(),
581
+ ethos: z.nullable(z.string()).optional(),
582
+ facilitiesDescription: z.nullable(z.string()).optional(),
583
+ headteacherWelcome: z.nullable(z.string()).optional(),
584
+ historyDescription: z.nullable(z.string()).optional(),
585
+ prospectusUrl: z.nullable(z.string()).optional(),
586
+ resultsSummary: z.nullable(z.string()).optional(),
587
+ sendStatement: z.nullable(z.string()).optional(),
588
+ termDates: z.array(shared.SchoolTermDate$inboundSchema).optional(),
589
+ uniformSupplier: z.nullable(z.string()).optional(),
590
+ });
591
+
592
+ export function querySchoolsBySourceAboutFromJSON(
593
+ jsonString: string,
594
+ ): SafeParseResult<QuerySchoolsBySourceAbout, SDKValidationError> {
595
+ return safeParse(
596
+ jsonString,
597
+ (x) => QuerySchoolsBySourceAbout$inboundSchema.parse(JSON.parse(x)),
598
+ `Failed to parse 'QuerySchoolsBySourceAbout' from JSON`,
599
+ );
600
+ }
601
+
602
+ /** @internal */
603
+ export const QuerySchoolsBySourceAccreditations$inboundSchema: z.ZodType<
604
+ QuerySchoolsBySourceAccreditations,
605
+ z.ZodTypeDef,
606
+ unknown
607
+ > = z.object({
608
+ accreditations: z.array(shared.SchoolAccreditation$inboundSchema).optional(),
609
+ });
610
+
611
+ export function querySchoolsBySourceAccreditationsFromJSON(
612
+ jsonString: string,
613
+ ): SafeParseResult<QuerySchoolsBySourceAccreditations, SDKValidationError> {
614
+ return safeParse(
615
+ jsonString,
616
+ (x) =>
617
+ QuerySchoolsBySourceAccreditations$inboundSchema.parse(JSON.parse(x)),
618
+ `Failed to parse 'QuerySchoolsBySourceAccreditations' from JSON`,
619
+ );
620
+ }
621
+
439
622
  /** @internal */
440
623
  export const QuerySchoolsBySourceAddress$inboundSchema: z.ZodType<
441
624
  QuerySchoolsBySourceAddress,
@@ -459,6 +642,28 @@ export function querySchoolsBySourceAddressFromJSON(
459
642
  );
460
643
  }
461
644
 
645
+ /** @internal */
646
+ export const QuerySchoolsBySourceBranding$inboundSchema: z.ZodType<
647
+ QuerySchoolsBySourceBranding,
648
+ z.ZodTypeDef,
649
+ unknown
650
+ > = z.object({
651
+ logoUrl: z.string().optional(),
652
+ primaryColour: z.string().optional(),
653
+ secondaryColour: z.string().optional(),
654
+ socialMedia: shared.SocialMediaLinks$inboundSchema.optional(),
655
+ });
656
+
657
+ export function querySchoolsBySourceBrandingFromJSON(
658
+ jsonString: string,
659
+ ): SafeParseResult<QuerySchoolsBySourceBranding, SDKValidationError> {
660
+ return safeParse(
661
+ jsonString,
662
+ (x) => QuerySchoolsBySourceBranding$inboundSchema.parse(JSON.parse(x)),
663
+ `Failed to parse 'QuerySchoolsBySourceBranding' from JSON`,
664
+ );
665
+ }
666
+
462
667
  /** @internal */
463
668
  export const QuerySchoolsBySourceCurrentRating$inboundSchema: z.ZodType<
464
669
  QuerySchoolsBySourceCurrentRating,
@@ -488,6 +693,25 @@ export function querySchoolsBySourceIdentifiersFromJSON(
488
693
  );
489
694
  }
490
695
 
696
+ /** @internal */
697
+ export const QuerySchoolsBySourceImages$inboundSchema: z.ZodType<
698
+ QuerySchoolsBySourceImages,
699
+ z.ZodTypeDef,
700
+ unknown
701
+ > = z.object({
702
+ images: z.array(shared.SchoolImage$inboundSchema).optional(),
703
+ });
704
+
705
+ export function querySchoolsBySourceImagesFromJSON(
706
+ jsonString: string,
707
+ ): SafeParseResult<QuerySchoolsBySourceImages, SDKValidationError> {
708
+ return safeParse(
709
+ jsonString,
710
+ (x) => QuerySchoolsBySourceImages$inboundSchema.parse(JSON.parse(x)),
711
+ `Failed to parse 'QuerySchoolsBySourceImages' from JSON`,
712
+ );
713
+ }
714
+
491
715
  /** @internal */
492
716
  export const QuerySchoolsBySourceInspections$inboundSchema: z.ZodType<
493
717
  QuerySchoolsBySourceInspections,
@@ -574,15 +798,41 @@ export const QuerySchoolsBySourceType$inboundSchema: z.ZodType<
574
798
  unknown
575
799
  > = openEnums.inboundSchema(QuerySchoolsBySourceType);
576
800
 
801
+ /** @internal */
802
+ export const QuerySchoolsBySourceVideos$inboundSchema: z.ZodType<
803
+ QuerySchoolsBySourceVideos,
804
+ z.ZodTypeDef,
805
+ unknown
806
+ > = z.object({
807
+ videos: z.array(shared.SchoolVideo$inboundSchema).optional(),
808
+ });
809
+
810
+ export function querySchoolsBySourceVideosFromJSON(
811
+ jsonString: string,
812
+ ): SafeParseResult<QuerySchoolsBySourceVideos, SDKValidationError> {
813
+ return safeParse(
814
+ jsonString,
815
+ (x) => QuerySchoolsBySourceVideos$inboundSchema.parse(JSON.parse(x)),
816
+ `Failed to parse 'QuerySchoolsBySourceVideos' from JSON`,
817
+ );
818
+ }
819
+
577
820
  /** @internal */
578
821
  export const QuerySchoolsBySourceData$inboundSchema: z.ZodType<
579
822
  QuerySchoolsBySourceData,
580
823
  z.ZodTypeDef,
581
824
  unknown
582
825
  > = z.object({
826
+ about: z.nullable(z.lazy(() => QuerySchoolsBySourceAbout$inboundSchema))
827
+ .optional(),
828
+ accreditations: z.nullable(
829
+ z.lazy(() => QuerySchoolsBySourceAccreditations$inboundSchema),
830
+ ).optional(),
583
831
  address: z.lazy(() => QuerySchoolsBySourceAddress$inboundSchema).optional(),
584
832
  admissionsPolicy: z.string().optional(),
585
833
  ageRange: z.string().optional(),
834
+ branding: z.nullable(z.lazy(() => QuerySchoolsBySourceBranding$inboundSchema))
835
+ .optional(),
586
836
  capacity: z.number().int().optional(),
587
837
  catchment: shared.SchoolCatchmentBlock$inboundSchema.optional(),
588
838
  country: z.string().default("GB"),
@@ -597,6 +847,8 @@ export const QuerySchoolsBySourceData$inboundSchema: z.ZodType<
597
847
  identifiers: z.nullable(
598
848
  z.lazy(() => QuerySchoolsBySourceIdentifiers$inboundSchema),
599
849
  ).optional(),
850
+ images: z.nullable(z.lazy(() => QuerySchoolsBySourceImages$inboundSchema))
851
+ .optional(),
600
852
  inspections: z.nullable(
601
853
  z.lazy(() => QuerySchoolsBySourceInspections$inboundSchema),
602
854
  ).optional(),
@@ -627,6 +879,8 @@ export const QuerySchoolsBySourceData$inboundSchema: z.ZodType<
627
879
  trustName: z.string().optional(),
628
880
  type: QuerySchoolsBySourceType$inboundSchema,
629
881
  updatedAt: z.string(),
882
+ videos: z.nullable(z.lazy(() => QuerySchoolsBySourceVideos$inboundSchema))
883
+ .optional(),
630
884
  website: z.string().optional(),
631
885
  });
632
886
 
@@ -6,54 +6,27 @@ import * as z from "zod/v3";
6
6
  import { safeParse } from "../../../lib/schemas.js";
7
7
  import { Result as SafeParseResult } from "../../types/fp.js";
8
8
  import { SDKValidationError } from "../errors/sdkvalidationerror.js";
9
-
10
- export type SocialMedia = {
11
- facebook?: string | undefined;
12
- instagram?: string | undefined;
13
- linkedin?: string | undefined;
14
- twitter?: string | undefined;
15
- youtube?: string | undefined;
16
- };
9
+ import {
10
+ SocialMediaLinks,
11
+ SocialMediaLinks$inboundSchema,
12
+ } from "./socialmedialinks.js";
17
13
 
18
14
  export type CouncilBranding = {
19
15
  /**
20
- * URL to council logo
16
+ * Public URL to the entity's logo / crest.
21
17
  */
22
18
  logoUrl?: string | undefined;
23
19
  /**
24
- * Primary brand colour (hex)
20
+ * Primary brand colour (hex).
25
21
  */
26
22
  primaryColour?: string | undefined;
27
23
  /**
28
- * Secondary brand colour (hex)
24
+ * Secondary brand colour (hex).
29
25
  */
30
26
  secondaryColour?: string | undefined;
31
- socialMedia?: SocialMedia | undefined;
27
+ socialMedia?: SocialMediaLinks | undefined;
32
28
  };
33
29
 
34
- /** @internal */
35
- export const SocialMedia$inboundSchema: z.ZodType<
36
- SocialMedia,
37
- z.ZodTypeDef,
38
- unknown
39
- > = z.object({
40
- facebook: z.string().optional(),
41
- instagram: z.string().optional(),
42
- linkedin: z.string().optional(),
43
- twitter: z.string().optional(),
44
- youtube: z.string().optional(),
45
- });
46
-
47
- export function socialMediaFromJSON(
48
- jsonString: string,
49
- ): SafeParseResult<SocialMedia, SDKValidationError> {
50
- return safeParse(
51
- jsonString,
52
- (x) => SocialMedia$inboundSchema.parse(JSON.parse(x)),
53
- `Failed to parse 'SocialMedia' from JSON`,
54
- );
55
- }
56
-
57
30
  /** @internal */
58
31
  export const CouncilBranding$inboundSchema: z.ZodType<
59
32
  CouncilBranding,
@@ -63,7 +36,7 @@ export const CouncilBranding$inboundSchema: z.ZodType<
63
36
  logoUrl: z.string().optional(),
64
37
  primaryColour: z.string().optional(),
65
38
  secondaryColour: z.string().optional(),
66
- socialMedia: z.lazy(() => SocialMedia$inboundSchema).optional(),
39
+ socialMedia: SocialMediaLinks$inboundSchema.optional(),
67
40
  });
68
41
 
69
42
  export function councilBrandingFromJSON(
@@ -311,15 +311,19 @@ export * from "./reversegeocoderesponse.js";
311
311
  export * from "./roomdetails.js";
312
312
  export * from "./salerecord.js";
313
313
  export * from "./scale.js";
314
+ export * from "./schoolaccreditation.js";
314
315
  export * from "./schoolcatchmentblock.js";
315
316
  export * from "./schoolframeworkcode.js";
317
+ export * from "./schoolimage.js";
316
318
  export * from "./schoolinspectionevaluationarea.js";
317
319
  export * from "./schoolinspectionevent.js";
318
320
  export * from "./schoolinspectiongrade.js";
319
321
  export * from "./schoolinspectionpredecessor.js";
320
322
  export * from "./schoolinspectorbody.js";
321
323
  export * from "./schoolmatchbasis.js";
324
+ export * from "./schooltermdate.js";
322
325
  export * from "./schooltrustmembership.js";
326
+ export * from "./schoolvideo.js";
323
327
  export * from "./searchhighlight.js";
324
328
  export * from "./searchresponse.js";
325
329
  export * from "./searchresult.js";
@@ -352,6 +356,7 @@ export * from "./sitequerygroup.js";
352
356
  export * from "./sitequeryoperator.js";
353
357
  export * from "./sitequeryrequest.js";
354
358
  export * from "./sitetags.js";
359
+ export * from "./socialmedialinks.js";
355
360
  export * from "./statsaggregationresult.js";
356
361
  export * from "./streetdescriptor.js";
357
362
  export * from "./streetdetails.js";
@@ -0,0 +1,44 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { safeParse } from "../../../lib/schemas.js";
7
+ import { Result as SafeParseResult } from "../../types/fp.js";
8
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
9
+
10
+ export type SchoolAccreditation = {
11
+ /**
12
+ * What the badge attests, where recognised.
13
+ */
14
+ description: string | null;
15
+ /**
16
+ * Badge classification, e.g. 'ofsted_badge' | 'award' | 'kitemark' | 'partner_badge'.
17
+ */
18
+ kind: string | null;
19
+ /**
20
+ * Public CDN URL for the badge image.
21
+ */
22
+ url: string;
23
+ };
24
+
25
+ /** @internal */
26
+ export const SchoolAccreditation$inboundSchema: z.ZodType<
27
+ SchoolAccreditation,
28
+ z.ZodTypeDef,
29
+ unknown
30
+ > = z.object({
31
+ description: z.nullable(z.string()),
32
+ kind: z.nullable(z.string()),
33
+ url: z.string(),
34
+ });
35
+
36
+ export function schoolAccreditationFromJSON(
37
+ jsonString: string,
38
+ ): SafeParseResult<SchoolAccreditation, SDKValidationError> {
39
+ return safeParse(
40
+ jsonString,
41
+ (x) => SchoolAccreditation$inboundSchema.parse(JSON.parse(x)),
42
+ `Failed to parse 'SchoolAccreditation' from JSON`,
43
+ );
44
+ }
@@ -0,0 +1,54 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { safeParse } from "../../../lib/schemas.js";
7
+ import { Result as SafeParseResult } from "../../types/fp.js";
8
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
9
+
10
+ export type SchoolImage = {
11
+ /**
12
+ * Short caption describing the image.
13
+ */
14
+ description: string | null;
15
+ /**
16
+ * Pixel height.
17
+ */
18
+ height?: number | null | undefined;
19
+ /**
20
+ * What the image depicts, e.g. 'classroom' | 'sports_hall' | 'library' | 'grounds'.
21
+ */
22
+ tag: string | null;
23
+ /**
24
+ * Public CDN URL for the image.
25
+ */
26
+ url: string;
27
+ /**
28
+ * Pixel width.
29
+ */
30
+ width?: number | null | undefined;
31
+ };
32
+
33
+ /** @internal */
34
+ export const SchoolImage$inboundSchema: z.ZodType<
35
+ SchoolImage,
36
+ z.ZodTypeDef,
37
+ unknown
38
+ > = z.object({
39
+ description: z.nullable(z.string()),
40
+ height: z.nullable(z.number().int()).optional(),
41
+ tag: z.nullable(z.string()),
42
+ url: z.string(),
43
+ width: z.nullable(z.number().int()).optional(),
44
+ });
45
+
46
+ export function schoolImageFromJSON(
47
+ jsonString: string,
48
+ ): SafeParseResult<SchoolImage, SDKValidationError> {
49
+ return safeParse(
50
+ jsonString,
51
+ (x) => SchoolImage$inboundSchema.parse(JSON.parse(x)),
52
+ `Failed to parse 'SchoolImage' from JSON`,
53
+ );
54
+ }
@@ -0,0 +1,44 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { safeParse } from "../../../lib/schemas.js";
7
+ import { Result as SafeParseResult } from "../../types/fp.js";
8
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
9
+
10
+ export type SchoolTermDate = {
11
+ /**
12
+ * End date as published (source text).
13
+ */
14
+ end: string | null;
15
+ /**
16
+ * Term / holiday label, e.g. 'Autumn term'.
17
+ */
18
+ label: string;
19
+ /**
20
+ * Start date as published (source text).
21
+ */
22
+ start: string | null;
23
+ };
24
+
25
+ /** @internal */
26
+ export const SchoolTermDate$inboundSchema: z.ZodType<
27
+ SchoolTermDate,
28
+ z.ZodTypeDef,
29
+ unknown
30
+ > = z.object({
31
+ end: z.nullable(z.string()),
32
+ label: z.string(),
33
+ start: z.nullable(z.string()),
34
+ });
35
+
36
+ export function schoolTermDateFromJSON(
37
+ jsonString: string,
38
+ ): SafeParseResult<SchoolTermDate, SDKValidationError> {
39
+ return safeParse(
40
+ jsonString,
41
+ (x) => SchoolTermDate$inboundSchema.parse(JSON.parse(x)),
42
+ `Failed to parse 'SchoolTermDate' from JSON`,
43
+ );
44
+ }
@@ -0,0 +1,86 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ */
4
+
5
+ import * as z from "zod/v3";
6
+ import { safeParse } from "../../../lib/schemas.js";
7
+ import * as openEnums from "../../types/enums.js";
8
+ import { OpenEnum } from "../../types/enums.js";
9
+ import { Result as SafeParseResult } from "../../types/fp.js";
10
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
11
+
12
+ /**
13
+ * Hosting provider.
14
+ */
15
+ export const SchoolVideoProvider = {
16
+ Youtube: "youtube",
17
+ Vimeo: "vimeo",
18
+ SelfHosted: "self_hosted",
19
+ } as const;
20
+ /**
21
+ * Hosting provider.
22
+ */
23
+ export type SchoolVideoProvider = OpenEnum<typeof SchoolVideoProvider>;
24
+
25
+ export type SchoolVideo = {
26
+ /**
27
+ * Runtime in seconds, where known.
28
+ */
29
+ durationSeconds?: number | null | undefined;
30
+ /**
31
+ * URL suitable for an <iframe> embed, where available.
32
+ */
33
+ embedUrl: string | null;
34
+ /**
35
+ * Provider-scoped video id (or path for self-hosted).
36
+ */
37
+ externalId: string;
38
+ /**
39
+ * Hosting provider.
40
+ */
41
+ provider: SchoolVideoProvider;
42
+ /**
43
+ * Third-party thumbnail URL — referenced, not re-hosted.
44
+ */
45
+ thumbnailUrl: string | null;
46
+ /**
47
+ * Video title as published.
48
+ */
49
+ title: string | null;
50
+ /**
51
+ * Canonical watch URL on the provider.
52
+ */
53
+ url: string;
54
+ };
55
+
56
+ /** @internal */
57
+ export const SchoolVideoProvider$inboundSchema: z.ZodType<
58
+ SchoolVideoProvider,
59
+ z.ZodTypeDef,
60
+ unknown
61
+ > = openEnums.inboundSchema(SchoolVideoProvider);
62
+
63
+ /** @internal */
64
+ export const SchoolVideo$inboundSchema: z.ZodType<
65
+ SchoolVideo,
66
+ z.ZodTypeDef,
67
+ unknown
68
+ > = z.object({
69
+ durationSeconds: z.nullable(z.number().int()).optional(),
70
+ embedUrl: z.nullable(z.string()),
71
+ externalId: z.string(),
72
+ provider: SchoolVideoProvider$inboundSchema,
73
+ thumbnailUrl: z.nullable(z.string()),
74
+ title: z.nullable(z.string()),
75
+ url: z.string(),
76
+ });
77
+
78
+ export function schoolVideoFromJSON(
79
+ jsonString: string,
80
+ ): SafeParseResult<SchoolVideo, SDKValidationError> {
81
+ return safeParse(
82
+ jsonString,
83
+ (x) => SchoolVideo$inboundSchema.parse(JSON.parse(x)),
84
+ `Failed to parse 'SchoolVideo' from JSON`,
85
+ );
86
+ }