@nnc-digital/nnc-design-system 1.0.0-alpha9 → 1.0.0-beta10

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 (580) hide show
  1. package/build/ThemeVars.types.d.ts +60 -0
  2. package/build/index.d.ts +43 -42
  3. package/build/index.js +1068 -399
  4. package/build/index.js.map +1 -1
  5. package/build/index.mjs.js +1068 -400
  6. package/build/index.mjs.js.map +1 -1
  7. package/build/library/components/AlphabeticalDirectory/AlphabeticalDirectory.d.ts +4 -4
  8. package/build/library/components/AlphabeticalDirectory/AlphabeticalDirectory.types.d.ts +26 -26
  9. package/build/library/components/Autocomplete/Autocomplete.d.ts +9 -9
  10. package/build/library/components/Autocomplete/Autocomplete.storydata.d.ts +47 -47
  11. package/build/library/components/Autocomplete/Autocomplete.test.d.ts +1 -0
  12. package/build/library/components/Autocomplete/Autocomplete.types.d.ts +78 -78
  13. package/build/library/components/BackToTop/BackToTop.d.ts +4 -4
  14. package/build/library/components/BackToTop/BackToTop.test.d.ts +1 -0
  15. package/build/library/components/BackToTop/BackToTop.types.d.ts +6 -6
  16. package/build/library/components/BinCollection/BinCollection.d.ts +7 -7
  17. package/build/library/components/BinCollection/BinCollection.styles.d.ts +2937 -15
  18. package/build/library/components/BinCollection/BinCollection.test.d.ts +1 -0
  19. package/build/library/components/BinCollection/BinCollection.testdata.d.ts +34 -34
  20. package/build/library/components/BinCollection/BinCollection.types.d.ts +68 -69
  21. package/build/library/components/Button/Button.d.ts +7 -7
  22. package/build/library/components/Button/Button.types.d.ts +43 -43
  23. package/build/library/components/Card/Card.d.ts +7 -7
  24. package/build/library/components/Card/Card.test.d.ts +1 -0
  25. package/build/library/components/Card/Card.types.d.ts +36 -36
  26. package/build/library/components/CheckboxListFilter/CheckboxListFilter.d.ts +4 -4
  27. package/build/library/components/CheckboxListFilter/CheckboxListFilter.test.d.ts +1 -0
  28. package/build/library/components/CheckboxListFilter/CheckboxListFilter.types.d.ts +36 -36
  29. package/build/library/components/Column/Column.d.ts +4 -4
  30. package/build/library/components/Column/Column.test.d.ts +1 -0
  31. package/build/library/components/Column/Column.types.d.ts +35 -36
  32. package/build/library/components/CustomSearch/CustomSearch.d.ts +4 -4
  33. package/build/library/components/CustomSearch/CustomSearch.storydata.d.ts +2 -2
  34. package/build/library/components/CustomSearch/CustomSearch.test.d.ts +1 -0
  35. package/build/library/components/CustomSearch/CustomSearch.types.d.ts +34 -34
  36. package/build/library/components/DropDownFilter/DropDownFilter.d.ts +4 -4
  37. package/build/library/components/DropDownFilter/DropDownFilter.types.d.ts +32 -32
  38. package/build/library/components/DropDownSelect/DropDownSelect.d.ts +4 -4
  39. package/build/library/components/DropDownSelect/DropDownSelect.types.d.ts +36 -36
  40. package/build/library/components/DynamicIcon/DynamicIcon.d.ts +7 -7
  41. package/build/library/components/DynamicIcon/DynamicIcon.test.d.ts +1 -0
  42. package/build/library/components/DynamicIcon/DynamicIcon.types.d.ts +10 -10
  43. package/build/library/components/FileDownload/FileDownload.d.ts +7 -7
  44. package/build/library/components/FileDownload/FileDownload.test.d.ts +1 -0
  45. package/build/library/components/FileDownload/FileDownload.types.d.ts +22 -22
  46. package/build/library/components/FormButton/FormButton.d.ts +7 -7
  47. package/build/library/components/FormButton/FormButton.types.d.ts +26 -27
  48. package/build/library/components/FormWithLine/FormWithLine.d.ts +7 -7
  49. package/build/library/components/FormWithLine/FormWithLine.types.d.ts +39 -39
  50. package/build/library/components/Heading/Heading.d.ts +7 -7
  51. package/build/library/components/Heading/Heading.types.d.ts +10 -10
  52. package/build/library/components/HeadingWithIcon/HeadingWithIcon.d.ts +7 -7
  53. package/build/library/components/HeadingWithIcon/HeadingWithIcon.test.d.ts +1 -0
  54. package/build/library/components/HeadingWithIcon/HeadingWithIcon.types.d.ts +18 -18
  55. package/build/library/components/HeadingWithIconLink/HeadingWithIconLink.d.ts +4 -4
  56. package/build/library/components/HeadingWithIconLink/HeadingWithIconLink.test.d.ts +1 -0
  57. package/build/library/components/HeadingWithIconLink/HeadingWithIconLink.types.d.ts +14 -14
  58. package/build/library/components/HintText/HintText.d.ts +7 -7
  59. package/build/library/components/HintText/HintText.types.d.ts +6 -6
  60. package/build/library/components/Input/Input.d.ts +8 -8
  61. package/build/library/components/Input/Input.types.d.ts +52 -45
  62. package/build/library/components/LoadingSpinner/LoadingSpinner.d.ts +4 -4
  63. package/build/library/components/LoadingSpinner/LoadingSpinner.types.d.ts +2 -2
  64. package/build/library/components/Map/Map.d.ts +7 -7
  65. package/build/library/components/Map/Map.types.d.ts +15 -16
  66. package/build/library/components/MapMarker/MapMarker.d.ts +6 -7
  67. package/build/library/components/Pagination/Pagination.d.ts +4 -4
  68. package/build/library/components/Pagination/Pagination.test.d.ts +1 -0
  69. package/build/library/components/Pagination/Pagination.types.d.ts +23 -23
  70. package/build/library/components/PostCodeAddressDropdown/PostCodeAddressDropdown.d.ts +7 -7
  71. package/build/library/components/PostCodeAddressDropdown/PostCodeAddressDropdown.types.d.ts +2 -2
  72. package/build/library/components/PostCodeAddressSearch/PostCodeAddressSearch.d.ts +7 -7
  73. package/build/library/components/PostCodeAddressSearch/PostCodeAddressSearch.types.d.ts +23 -23
  74. package/build/library/components/PostCodeAddressTable/PostCodeAddressTable.d.ts +4 -4
  75. package/build/library/components/PostCodeAddressTable/PostCodeAddressTable.types.d.ts +2 -2
  76. package/build/library/components/PostCodeSearch/PostCodeSearch.d.ts +7 -7
  77. package/build/library/components/PostCodeSearch/PostCodeSearch.test.d.ts +1 -0
  78. package/build/library/components/PostCodeSearch/PostCodeSearch.types.d.ts +52 -52
  79. package/build/library/components/PromotedLinks/PromotedLinks.d.ts +4 -4
  80. package/build/library/components/PromotedLinks/PromotedLinks.test.d.ts +1 -0
  81. package/build/library/components/PromotedLinks/PromotedLinks.types.d.ts +20 -20
  82. package/build/library/components/RadioCheckboxInput/RadioCheckboxInput.d.ts +4 -4
  83. package/build/library/components/RadioCheckboxInput/RadioCheckboxInput.test.d.ts +1 -0
  84. package/build/library/components/RadioCheckboxInput/RadioCheckboxInput.types.d.ts +26 -27
  85. package/build/library/components/RemovableTag/RemovableTag.d.ts +4 -4
  86. package/build/library/components/RemovableTag/RemovableTag.types.d.ts +8 -8
  87. package/build/library/components/RemoveAllFilters/RemoveAllFilters.d.ts +4 -4
  88. package/build/library/components/RemoveAllFilters/RemoveAllFilters.types.d.ts +3 -3
  89. package/build/library/components/Row/Row.d.ts +4 -4
  90. package/build/library/components/Row/Row.test.d.ts +1 -0
  91. package/build/library/components/Row/Row.types.d.ts +20 -20
  92. package/build/library/components/SignpostLinksList/SignpostLinksList.d.ts +4 -4
  93. package/build/library/components/SignpostLinksList/SignpostLinksList.types.d.ts +24 -24
  94. package/build/library/components/SortBy/SortBy.d.ts +4 -4
  95. package/build/library/components/SortBy/SortBy.types.d.ts +20 -20
  96. package/build/library/components/StaticMap/StaticMap.d.ts +7 -7
  97. package/build/library/components/StaticMap/StaticMap.test.d.ts +1 -0
  98. package/build/library/components/StaticMap/StaticMap.types.d.ts +52 -52
  99. package/build/library/components/SummaryList/SummaryList.d.ts +4 -4
  100. package/build/library/components/SummaryList/SummaryList.test.d.ts +1 -0
  101. package/build/library/components/SummaryList/SummaryList.types.d.ts +29 -21
  102. package/build/library/components/TextInput/TextInput.d.ts +7 -7
  103. package/build/library/components/TextInput/TextInput.types.d.ts +38 -38
  104. package/build/library/components/icons/ChevronIcon/ChevronIcon.d.ts +4 -4
  105. package/build/library/components/icons/ChevronIcon/ChevronIcon.types.d.ts +10 -10
  106. package/build/library/components/icons/CloseIcon/CloseIcon.d.ts +4 -4
  107. package/build/library/components/icons/CloseIcon/CloseIcon.types.d.ts +6 -6
  108. package/build/library/components/icons/DownloadFileIcon/DownloadFileIcon.d.ts +4 -4
  109. package/build/library/components/icons/DownloadFileIcon/DownloadFileIcon.types.d.ts +6 -6
  110. package/build/library/components/icons/EmailIcon/EmailIcon.d.ts +4 -4
  111. package/build/library/components/icons/EmailIcon/EmailIcon.types.d.ts +6 -6
  112. package/build/library/components/icons/FacebookIcon/Icon.d.ts +4 -4
  113. package/build/library/components/icons/HeartIcon/HeartIcon.d.ts +7 -7
  114. package/build/library/components/icons/HeartIcon/HeartIcon.types.d.ts +6 -6
  115. package/build/library/components/icons/InstagramIcon/Icon.d.ts +4 -4
  116. package/build/library/components/icons/LinkIcon/LinkIcon.d.ts +4 -4
  117. package/build/library/components/icons/LinkIcon/LinkIcon.types.d.ts +6 -6
  118. package/build/library/components/icons/LinkedInIcon/Icon.d.ts +4 -4
  119. package/build/library/components/icons/PhoneIcon/PhoneIcon.d.ts +4 -4
  120. package/build/library/components/icons/PhoneIcon/PhoneIcon.types.d.ts +6 -6
  121. package/build/library/components/icons/PinIcon/PinIcon.d.ts +7 -7
  122. package/build/library/components/icons/PinIcon/PinIcon.types.d.ts +6 -6
  123. package/build/library/components/icons/SearchIcon/SearchIcon.d.ts +4 -4
  124. package/build/library/components/icons/SearchIcon/SearchIcon.types.d.ts +6 -6
  125. package/build/library/components/icons/TwitterIcon/Icon.d.ts +4 -4
  126. package/build/library/components/icons/WebsiteIcon/WebsiteIcon.d.ts +4 -4
  127. package/build/library/components/icons/WebsiteIcon/WebsiteIcon.types.d.ts +6 -6
  128. package/build/library/components/icons/YouTubeIcon/Icon.d.ts +4 -4
  129. package/build/library/components/icons/services/AccessibleParking/Icon.d.ts +4 -4
  130. package/build/library/components/icons/services/AccessibleParking/IconHover.d.ts +4 -4
  131. package/build/library/components/icons/services/Address/Icon.d.ts +4 -4
  132. package/build/library/components/icons/services/Address/IconHover.d.ts +4 -4
  133. package/build/library/components/icons/services/AddressChange/Icon.d.ts +4 -4
  134. package/build/library/components/icons/services/AddressChange/IconHover.d.ts +4 -4
  135. package/build/library/components/icons/services/Adults/Icon.d.ts +4 -4
  136. package/build/library/components/icons/services/Adults/IconHover.d.ts +4 -4
  137. package/build/library/components/icons/services/AssistiveTechnology/Icon.d.ts +4 -4
  138. package/build/library/components/icons/services/AssistiveTechnology/IconHover.d.ts +4 -4
  139. package/build/library/components/icons/services/Benefits/Icon.d.ts +4 -4
  140. package/build/library/components/icons/services/Benefits/IconHover.d.ts +4 -4
  141. package/build/library/components/icons/services/BinDay/Icon.d.ts +4 -4
  142. package/build/library/components/icons/services/BinDay/IconHover.d.ts +4 -4
  143. package/build/library/components/icons/services/Bins/Icon.d.ts +4 -4
  144. package/build/library/components/icons/services/Bins/IconHover.d.ts +4 -4
  145. package/build/library/components/icons/services/BirthCertificate/Icon.d.ts +4 -4
  146. package/build/library/components/icons/services/BirthCertificate/IconHover.d.ts +4 -4
  147. package/build/library/components/icons/services/Births/Icon.d.ts +4 -4
  148. package/build/library/components/icons/services/Births/IconHover.d.ts +4 -4
  149. package/build/library/components/icons/services/Bollard/Icon.d.ts +4 -4
  150. package/build/library/components/icons/services/Bollard/IconHover.d.ts +4 -4
  151. package/build/library/components/icons/services/BulkWaste/Icon.d.ts +4 -4
  152. package/build/library/components/icons/services/BulkWaste/IconHover.d.ts +4 -4
  153. package/build/library/components/icons/services/Bus/Icon.d.ts +4 -4
  154. package/build/library/components/icons/services/Bus/IconHover.d.ts +4 -4
  155. package/build/library/components/icons/services/BusPass/Icon.d.ts +4 -4
  156. package/build/library/components/icons/services/BusPass/IconHover.d.ts +4 -4
  157. package/build/library/components/icons/services/Business/Icon.d.ts +4 -4
  158. package/build/library/components/icons/services/Business/IconHover.d.ts +4 -4
  159. package/build/library/components/icons/services/Careers/Icon.d.ts +4 -4
  160. package/build/library/components/icons/services/Careers/IconHover.d.ts +4 -4
  161. package/build/library/components/icons/services/Cash/Icon.d.ts +4 -4
  162. package/build/library/components/icons/services/Cash/IconHover.d.ts +4 -4
  163. package/build/library/components/icons/services/Catalogue/Icon.d.ts +4 -4
  164. package/build/library/components/icons/services/Catalogue/IconHover.d.ts +4 -4
  165. package/build/library/components/icons/services/Ceremony/Icon.d.ts +4 -4
  166. package/build/library/components/icons/services/Ceremony/IconHover.d.ts +4 -4
  167. package/build/library/components/icons/services/Charity/Icon.d.ts +4 -4
  168. package/build/library/components/icons/services/Charity/IconHover.d.ts +4 -4
  169. package/build/library/components/icons/services/Children/Icon.d.ts +4 -4
  170. package/build/library/components/icons/services/Children/IconHover.d.ts +4 -4
  171. package/build/library/components/icons/services/Computer/Icon.d.ts +4 -4
  172. package/build/library/components/icons/services/Computer/IconHover.d.ts +4 -4
  173. package/build/library/components/icons/services/CondolenceBook/Icon.d.ts +4 -4
  174. package/build/library/components/icons/services/CondolenceBook/IconHover.d.ts +4 -4
  175. package/build/library/components/icons/services/Cooking/Icon.d.ts +4 -4
  176. package/build/library/components/icons/services/Cooking/IconHover.d.ts +4 -4
  177. package/build/library/components/icons/services/Council/Icon.d.ts +4 -4
  178. package/build/library/components/icons/services/Council/IconHover.d.ts +4 -4
  179. package/build/library/components/icons/services/CouncilTax/Icon.d.ts +4 -4
  180. package/build/library/components/icons/services/CouncilTax/IconHover.d.ts +4 -4
  181. package/build/library/components/icons/services/Covid/Icon.d.ts +4 -4
  182. package/build/library/components/icons/services/Covid/IconHover.d.ts +4 -4
  183. package/build/library/components/icons/services/Culture/Icon.d.ts +4 -4
  184. package/build/library/components/icons/services/Culture/IconHover.d.ts +4 -4
  185. package/build/library/components/icons/services/CultureNorth/Icon.d.ts +4 -4
  186. package/build/library/components/icons/services/CultureNorth/IconHover.d.ts +4 -4
  187. package/build/library/components/icons/services/CultureWest/Icon.d.ts +4 -4
  188. package/build/library/components/icons/services/CultureWest/IconHover.d.ts +4 -4
  189. package/build/library/components/icons/services/DOLS/Icon.d.ts +4 -4
  190. package/build/library/components/icons/services/DOLS/IconHover.d.ts +4 -4
  191. package/build/library/components/icons/services/DeathCertificate/Icon.d.ts +4 -4
  192. package/build/library/components/icons/services/DeathCertificate/IconHover.d.ts +4 -4
  193. package/build/library/components/icons/services/Democracy/Icon.d.ts +4 -4
  194. package/build/library/components/icons/services/Democracy/IconHover.d.ts +4 -4
  195. package/build/library/components/icons/services/DogFouling/Icon.d.ts +4 -4
  196. package/build/library/components/icons/services/DogFouling/IconHover.d.ts +4 -4
  197. package/build/library/components/icons/services/Ebook/Icon.d.ts +4 -4
  198. package/build/library/components/icons/services/Ebook/IconHover.d.ts +4 -4
  199. package/build/library/components/icons/services/Edit/Icon.d.ts +4 -4
  200. package/build/library/components/icons/services/Edit/IconHover.d.ts +4 -4
  201. package/build/library/components/icons/services/Environment/Icon.d.ts +4 -4
  202. package/build/library/components/icons/services/Environment/IconHover.d.ts +4 -4
  203. package/build/library/components/icons/services/Events/Icon.d.ts +4 -4
  204. package/build/library/components/icons/services/Events/IconHover.d.ts +4 -4
  205. package/build/library/components/icons/services/Finance/Icon.d.ts +4 -4
  206. package/build/library/components/icons/services/Finance/IconHover.d.ts +4 -4
  207. package/build/library/components/icons/services/Flower/Icon.d.ts +4 -4
  208. package/build/library/components/icons/services/Flower/IconHover.d.ts +4 -4
  209. package/build/library/components/icons/services/FlyTip/Icon.d.ts +4 -4
  210. package/build/library/components/icons/services/FlyTip/IconHover.d.ts +4 -4
  211. package/build/library/components/icons/services/FoodWaste/Icon.d.ts +4 -4
  212. package/build/library/components/icons/services/FoodWaste/IconHover.d.ts +4 -4
  213. package/build/library/components/icons/services/GiveNotice/Icon.d.ts +4 -4
  214. package/build/library/components/icons/services/GiveNotice/IconHover.d.ts +4 -4
  215. package/build/library/components/icons/services/GovUK/Icon.d.ts +4 -4
  216. package/build/library/components/icons/services/GovUK/IconHover.d.ts +4 -4
  217. package/build/library/components/icons/services/Graffiti/Icon.d.ts +4 -4
  218. package/build/library/components/icons/services/Graffiti/IconHover.d.ts +4 -4
  219. package/build/library/components/icons/services/Highway/Icon.d.ts +4 -4
  220. package/build/library/components/icons/services/Highway/IconHover.d.ts +4 -4
  221. package/build/library/components/icons/services/HouseMoney/Icon.d.ts +4 -4
  222. package/build/library/components/icons/services/HouseMoney/IconHover.d.ts +4 -4
  223. package/build/library/components/icons/services/Housing/Icon.d.ts +4 -4
  224. package/build/library/components/icons/services/Housing/IconHover.d.ts +4 -4
  225. package/build/library/components/icons/services/Icon.types.d.ts +6 -6
  226. package/build/library/components/icons/services/Independence/Icon.d.ts +4 -4
  227. package/build/library/components/icons/services/Independence/IconHover.d.ts +4 -4
  228. package/build/library/components/icons/services/KeepingHealthy/Icon.d.ts +4 -4
  229. package/build/library/components/icons/services/KeepingHealthy/IconHover.d.ts +4 -4
  230. package/build/library/components/icons/services/Libraries/Icon.d.ts +4 -4
  231. package/build/library/components/icons/services/Libraries/IconHover.d.ts +4 -4
  232. package/build/library/components/icons/services/Litter/Icon.d.ts +4 -4
  233. package/build/library/components/icons/services/Litter/IconHover.d.ts +4 -4
  234. package/build/library/components/icons/services/LookingAfterYourself/Icon.d.ts +4 -4
  235. package/build/library/components/icons/services/LookingAfterYourself/IconHover.d.ts +4 -4
  236. package/build/library/components/icons/services/MapPin/Icon.d.ts +4 -4
  237. package/build/library/components/icons/services/MapPin/IconHover.d.ts +4 -4
  238. package/build/library/components/icons/services/Member/Icon.d.ts +4 -4
  239. package/build/library/components/icons/services/Member/IconHover.d.ts +4 -4
  240. package/build/library/components/icons/services/MentalHealth/Icon.d.ts +4 -4
  241. package/build/library/components/icons/services/MentalHealth/IconHover.d.ts +4 -4
  242. package/build/library/components/icons/services/MissedBin/Icon.d.ts +4 -4
  243. package/build/library/components/icons/services/MissedBin/IconHover.d.ts +4 -4
  244. package/build/library/components/icons/services/New/Icon.d.ts +4 -4
  245. package/build/library/components/icons/services/New/IconHover.d.ts +4 -4
  246. package/build/library/components/icons/services/OccupationalTherapy/Icon.d.ts +4 -4
  247. package/build/library/components/icons/services/OccupationalTherapy/IconHover.d.ts +4 -4
  248. package/build/library/components/icons/services/ParkEvent/Icon.d.ts +4 -4
  249. package/build/library/components/icons/services/ParkEvent/IconHover.d.ts +4 -4
  250. package/build/library/components/icons/services/Parking/Icon.d.ts +4 -4
  251. package/build/library/components/icons/services/Parking/IconHover.d.ts +4 -4
  252. package/build/library/components/icons/services/ParkingTicket/Icon.d.ts +4 -4
  253. package/build/library/components/icons/services/ParkingTicket/IconHover.d.ts +4 -4
  254. package/build/library/components/icons/services/Pay/Icon.d.ts +4 -4
  255. package/build/library/components/icons/services/Pay/IconHover.d.ts +4 -4
  256. package/build/library/components/icons/services/PhonePay/Icon.d.ts +4 -4
  257. package/build/library/components/icons/services/PhonePay/IconHover.d.ts +4 -4
  258. package/build/library/components/icons/services/Planning/Icon.d.ts +4 -4
  259. package/build/library/components/icons/services/Planning/IconHover.d.ts +4 -4
  260. package/build/library/components/icons/services/Pothole/Icon.d.ts +4 -4
  261. package/build/library/components/icons/services/Pothole/IconHover.d.ts +4 -4
  262. package/build/library/components/icons/services/PreventingFalls/Icon.d.ts +4 -4
  263. package/build/library/components/icons/services/PreventingFalls/IconHover.d.ts +4 -4
  264. package/build/library/components/icons/services/Protect/Icon.d.ts +4 -4
  265. package/build/library/components/icons/services/Protect/IconHover.d.ts +4 -4
  266. package/build/library/components/icons/services/RatePay/Icon.d.ts +4 -4
  267. package/build/library/components/icons/services/RatePay/IconHover.d.ts +4 -4
  268. package/build/library/components/icons/services/RegisterBirth/Icon.d.ts +4 -4
  269. package/build/library/components/icons/services/RegisterBirth/IconHover.d.ts +4 -4
  270. package/build/library/components/icons/services/RegisterDeath/Icon.d.ts +4 -4
  271. package/build/library/components/icons/services/RegisterDeath/IconHover.d.ts +4 -4
  272. package/build/library/components/icons/services/Report/Icon.d.ts +4 -4
  273. package/build/library/components/icons/services/Report/IconHover.d.ts +4 -4
  274. package/build/library/components/icons/services/Restrict/Icon.d.ts +4 -4
  275. package/build/library/components/icons/services/Restrict/IconHover.d.ts +4 -4
  276. package/build/library/components/icons/services/RoadWorks/Icon.d.ts +4 -4
  277. package/build/library/components/icons/services/RoadWorks/IconHover.d.ts +4 -4
  278. package/build/library/components/icons/services/Roads/Icon.d.ts +4 -4
  279. package/build/library/components/icons/services/Roads/IconHover.d.ts +4 -4
  280. package/build/library/components/icons/services/RoyalWebsite/Icon.d.ts +4 -4
  281. package/build/library/components/icons/services/RoyalWebsite/IconHover.d.ts +4 -4
  282. package/build/library/components/icons/services/SEND/Icon.d.ts +4 -4
  283. package/build/library/components/icons/services/SEND/IconHover.d.ts +4 -4
  284. package/build/library/components/icons/services/Safety/Icon.d.ts +4 -4
  285. package/build/library/components/icons/services/Safety/IconHover.d.ts +4 -4
  286. package/build/library/components/icons/services/SchoolAdmissions/Icon.d.ts +4 -4
  287. package/build/library/components/icons/services/SchoolAdmissions/IconHover.d.ts +4 -4
  288. package/build/library/components/icons/services/Schools/Icon.d.ts +4 -4
  289. package/build/library/components/icons/services/Schools/IconHover.d.ts +4 -4
  290. package/build/library/components/icons/services/ServicesIcons.d.ts +173 -174
  291. package/build/library/components/icons/services/SinglePerson/Icon.d.ts +4 -4
  292. package/build/library/components/icons/services/SinglePerson/IconHover.d.ts +4 -4
  293. package/build/library/components/icons/services/Sports/Icon.d.ts +4 -4
  294. package/build/library/components/icons/services/Sports/IconHover.d.ts +4 -4
  295. package/build/library/components/icons/services/Valuation/Icon.d.ts +4 -4
  296. package/build/library/components/icons/services/Valuation/IconHover.d.ts +4 -4
  297. package/build/library/components/icons/services/Venue/Icon.d.ts +4 -4
  298. package/build/library/components/icons/services/Venue/IconHover.d.ts +4 -4
  299. package/build/library/components/icons/services/WasteChecklist/Icon.d.ts +4 -4
  300. package/build/library/components/icons/services/WasteChecklist/IconHover.d.ts +4 -4
  301. package/build/library/components/icons/services/WasteSorting/Icon.d.ts +4 -4
  302. package/build/library/components/icons/services/WasteSorting/IconHover.d.ts +4 -4
  303. package/build/library/components/logos/GDSLogo/logo.d.ts +4 -4
  304. package/build/library/components/logos/GDSLogo/logo.types.d.ts +2 -2
  305. package/build/library/components/logos/NorthColouredLogo/logo.d.ts +4 -4
  306. package/build/library/components/logos/NorthColouredLogo/logo.types.d.ts +2 -2
  307. package/build/library/components/logos/NorthWhiteLogo/logo.d.ts +4 -4
  308. package/build/library/components/logos/NorthWhiteLogo/logo.types.d.ts +2 -2
  309. package/build/library/components/logos/WestColouredLogo/logo.d.ts +4 -4
  310. package/build/library/components/logos/WestColouredLogo/logo.types.d.ts +2 -2
  311. package/build/library/components/logos/WestWhiteLogo/logo.d.ts +4 -4
  312. package/build/library/components/logos/WestWhiteLogo/logo.types.d.ts +2 -2
  313. package/build/library/contexts/DirectoryShortListProvider/DirectoryShortListProvider.d.ts +4 -4
  314. package/build/library/contexts/DirectoryShortListProvider/DirectoryShortListProvider.types.d.ts +55 -41
  315. package/build/library/contexts/PostCodeAddressProvider/PostCodeAddressProvider.d.ts +6 -6
  316. package/build/library/contexts/PostCodeAddressProvider/PostCodeAddressProvider.types.d.ts +18 -18
  317. package/build/library/directory/DirectoryAddToShortList/DirectoryAddToShortList.d.ts +4 -4
  318. package/build/library/directory/DirectoryAddToShortList/DirectoryAddToShortList.test.d.ts +1 -0
  319. package/build/library/directory/DirectoryAddToShortList/DirectoryAddToShortList.types.d.ts +35 -26
  320. package/build/library/directory/DirectoryDocumentList/DirectoryDocumentList.d.ts +4 -4
  321. package/build/library/directory/DirectoryDocumentList/DirectoryDocumentList.storydata.d.ts +4 -4
  322. package/build/library/directory/DirectoryDocumentList/DirectoryDocumentList.test.d.ts +1 -0
  323. package/build/library/directory/DirectoryDocumentList/DirectoryDocumentList.types.d.ts +67 -63
  324. package/build/library/directory/DirectoryMap/DirectoryMap.d.ts +4 -4
  325. package/build/library/directory/DirectoryMap/DirectoryMap.types.d.ts +11 -11
  326. package/build/library/directory/DirectoryService/DirectoryService.d.ts +4 -4
  327. package/build/library/directory/DirectoryService/DirectoryService.storydata.d.ts +5 -4
  328. package/build/library/directory/DirectoryService/DirectoryService.test.d.ts +1 -0
  329. package/build/library/directory/DirectoryService/DirectoryService.types.d.ts +282 -278
  330. package/build/library/directory/DirectoryService/DirectoryServiceTransform.d.ts +8 -8
  331. package/build/library/directory/DirectoryService/DirectoryServiceTransform.test.d.ts +1 -0
  332. package/build/library/directory/DirectoryServiceList/DirectoryServiceList.d.ts +4 -4
  333. package/build/library/directory/DirectoryServiceList/DirectoryServiceList.storydata.d.ts +6 -6
  334. package/build/library/directory/DirectoryServiceList/DirectoryServiceList.test.d.ts +1 -0
  335. package/build/library/directory/DirectoryServiceList/DirectoryServiceList.types.d.ts +148 -136
  336. package/build/library/directory/DirectoryShortList/DirectoryShortList.d.ts +4 -4
  337. package/build/library/directory/DirectoryShortList/DirectoryShortList.test.d.ts +1 -0
  338. package/build/library/directory/DirectoryShortList/DirectoryShortList.types.d.ts +6 -6
  339. package/build/library/directory/ServiceContact/ServiceContact.d.ts +4 -4
  340. package/build/library/directory/ServiceContact/ServiceContact.test.d.ts +1 -0
  341. package/build/library/directory/ServiceContact/ServiceContact.types.d.ts +46 -42
  342. package/build/library/directory/ServiceSocialLinks/ServiceSocialLinks.d.ts +4 -4
  343. package/build/library/directory/ServiceSocialLinks/ServiceSocialLinks.storydata.d.ts +2 -2
  344. package/build/library/directory/ServiceSocialLinks/ServiceSocialLinks.test.d.ts +1 -0
  345. package/build/library/directory/ServiceSocialLinks/ServiceSocialLinks.types.d.ts +24 -24
  346. package/build/library/events/Event/Event.d.ts +4 -0
  347. package/build/library/events/Event/Event.storydata.d.ts +4 -0
  348. package/build/library/events/Event/Event.types.d.ts +206 -0
  349. package/build/library/events/Event/index.d.ts +3 -0
  350. package/build/library/events/EventList/EventList.d.ts +4 -0
  351. package/build/library/events/EventList/EventList.storydata.d.ts +3 -0
  352. package/build/library/events/EventList/EventList.types.d.ts +152 -0
  353. package/build/library/events/EventList/index.d.ts +3 -0
  354. package/build/library/events/index.d.ts +5 -0
  355. package/build/library/events/utils/EventFilters.d.ts +57 -0
  356. package/build/library/events/utils/index.d.ts +1 -0
  357. package/build/library/helpers/UseLocalStorage.d.ts +2 -2
  358. package/build/library/helpers/api-helpers.d.ts +120 -120
  359. package/build/library/pages/ContentPage/ContentPage.d.ts +4 -4
  360. package/build/library/pages/ContentPage/ContentPage.storydata.d.ts +10 -10
  361. package/build/library/pages/CouncilTaxPageExample/CouncilTaxPageExample.d.ts +5 -5
  362. package/build/library/pages/CouncilTaxParishPageExample/CouncilTaxParishPageExample.d.ts +5 -5
  363. package/build/library/pages/DirectoryServicePage/DirectoryServicePage.d.ts +2 -2
  364. package/build/library/pages/ErrorPage/ErrorPage.d.ts +6 -6
  365. package/build/library/pages/EventPage/EventPage.d.ts +13 -0
  366. package/build/library/pages/EventPage/index.d.ts +1 -0
  367. package/build/library/pages/Home/HomePage.d.ts +8 -8
  368. package/build/library/pages/Home/HomePage.types.d.ts +60 -60
  369. package/build/library/pages/MemorialPage/MemorialPage.d.ts +8 -8
  370. package/build/library/pages/MemorialPage/MemorialPage.types.d.ts +59 -59
  371. package/build/library/pages/News/News.d.ts +5 -5
  372. package/build/library/pages/NewsArticle/NewsArticle.d.ts +7 -7
  373. package/build/library/pages/SearchResultsPageExample/SearchResultsPageExample.d.ts +29 -29
  374. package/build/library/pages/ServiceLandingPageExample/ServiceLandingPageExample.d.ts +3 -3
  375. package/build/library/pages/ServiceLandingPageExample/ServiceLandingPageExample.storydata.d.ts +30 -30
  376. package/build/library/pages/ServiceLandingPageExample/ServiceLandingPageExample.types.d.ts +52 -52
  377. package/build/library/pages/ServicePageExample/ServicePageExample.d.ts +7 -7
  378. package/build/library/pages/SignpostPageExample/SignpostPageExample.d.ts +7 -7
  379. package/build/library/pages/Templates/Templates.d.ts +8 -8
  380. package/build/library/slices/Accordion/Accordion.d.ts +4 -4
  381. package/build/library/slices/Accordion/Accordion.test.d.ts +1 -0
  382. package/build/library/slices/Accordion/Accordion.types.d.ts +52 -53
  383. package/build/library/slices/Accordion/AccordionSection.d.ts +4 -4
  384. package/build/library/slices/BlockQuote/BlockQuote.d.ts +4 -4
  385. package/build/library/slices/BlockQuote/BlockQuote.types.d.ts +10 -11
  386. package/build/library/slices/CallToAction/CallToAction.d.ts +7 -7
  387. package/build/library/slices/Cards/Cards.d.ts +7 -7
  388. package/build/library/slices/Cards/Cards.test.d.ts +1 -0
  389. package/build/library/slices/Cards/Cards.types.d.ts +7 -7
  390. package/build/library/slices/CouncilTaxAlphabeticalDirectory/CouncilTaxAlphabeticalDirectory.d.ts +7 -7
  391. package/build/library/slices/CouncilTaxAlphabeticalDirectory/CouncilTaxAlphabeticalDirectory.storydata.d.ts +4 -4
  392. package/build/library/slices/CouncilTaxAlphabeticalDirectory/CouncilTaxAlphabeticalDirectory.test.d.ts +1 -0
  393. package/build/library/slices/CouncilTaxAlphabeticalDirectory/CouncilTaxAlphabeticalDirectory.types.d.ts +81 -81
  394. package/build/library/slices/Divider/Divider.d.ts +4 -4
  395. package/build/library/slices/Divider/Divider.types.d.ts +2 -2
  396. package/build/library/slices/DownloadableFiles/DownloadableFiles.d.ts +4 -4
  397. package/build/library/slices/DownloadableFiles/DownloadableFiles.types.d.ts +7 -7
  398. package/build/library/slices/GoogleMap/GoogleMap.d.ts +7 -7
  399. package/build/library/slices/GoogleMap/GoogleMap.storydata.d.ts +44 -44
  400. package/build/library/slices/GoogleMap/GoogleMap.test.d.ts +1 -0
  401. package/build/library/slices/GoogleMap/GoogleMap.types.d.ts +28 -28
  402. package/build/library/slices/Image/Image.d.ts +8 -8
  403. package/build/library/slices/Image/Image.storydata.d.ts +2 -2
  404. package/build/library/slices/Image/Image.test.d.ts +1 -0
  405. package/build/library/slices/Image/Image.types.d.ts +26 -26
  406. package/build/library/slices/ImageAndText/ImageAndText.d.ts +7 -7
  407. package/build/library/slices/ImageAndText/ImageAndText.storydata.d.ts +2 -2
  408. package/build/library/slices/ImageAndText/ImageAndText.test.d.ts +1 -0
  409. package/build/library/slices/ImageAndText/ImageAndText.types.d.ts +15 -15
  410. package/build/library/slices/InquestSchedule/InquestSchedule.d.ts +7 -7
  411. package/build/library/slices/InquestSchedule/InquestSchedule.storydata.d.ts +3 -2
  412. package/build/library/slices/InquestSchedule/InquestSchedule.test.d.ts +1 -0
  413. package/build/library/slices/InquestSchedule/InquestSchedule.types.d.ts +32 -24
  414. package/build/library/slices/Promotions/Promotions.d.ts +7 -7
  415. package/build/library/slices/RoadworksList/RoadworksList.d.ts +7 -0
  416. package/build/library/slices/RoadworksList/RoadworksList.storydata.d.ts +4 -0
  417. package/build/library/slices/RoadworksList/RoadworksList.test.d.ts +1 -0
  418. package/build/library/slices/RoadworksList/RoadworksList.types.d.ts +52 -0
  419. package/build/library/slices/SearchBox/SearchBox.d.ts +4 -4
  420. package/build/library/slices/SearchBox/SearchBox.storydata.d.ts +2 -2
  421. package/build/library/slices/SearchBox/SearchBox.test.d.ts +1 -0
  422. package/build/library/slices/SearchBox/SearchBox.types.d.ts +41 -41
  423. package/build/library/slices/Video/Video.d.ts +7 -7
  424. package/build/library/slices/Video/Video.test.d.ts +1 -0
  425. package/build/library/slices/Video/Video.types.d.ts +22 -22
  426. package/build/library/slices/WarningText/WarningText.d.ts +7 -7
  427. package/build/library/slices/WarningText/WarningText.test.d.ts +1 -0
  428. package/build/library/slices/WarningText/WarningText.types.d.ts +14 -15
  429. package/build/library/slices/WarningTextDisclaimer/WarningTextDisclaimer.d.ts +4 -4
  430. package/build/library/slices/WarningTextDisclaimer/WarningTextDisclaimer.types.d.ts +2 -2
  431. package/build/library/structure/AccessibleLinks/AccessibleLinks.d.ts +4 -4
  432. package/build/library/structure/AccessibleLinks/AccessibleLinks.types.d.ts +22 -22
  433. package/build/library/structure/AlertBanner/AlertBanner.d.ts +7 -7
  434. package/build/library/structure/AlertBanner/AlertBanner.test.d.ts +1 -0
  435. package/build/library/structure/AlertBanner/AlertBanner.types.d.ts +18 -19
  436. package/build/library/structure/AlertBannerService/AlertBannerService.d.ts +8 -8
  437. package/build/library/structure/AlertBannerService/AlertBannerService.test.d.ts +1 -0
  438. package/build/library/structure/AlertBannerService/AlertBannerService.types.d.ts +18 -19
  439. package/build/library/structure/BackLink/BackLink.d.ts +7 -7
  440. package/build/library/structure/BackLink/BackLink.test.d.ts +1 -0
  441. package/build/library/structure/BackLink/BackLink.types.d.ts +10 -10
  442. package/build/library/structure/Breadcrumbs/Breadcrumbs.d.ts +4 -4
  443. package/build/library/structure/Breadcrumbs/Breadcrumbs.test.d.ts +1 -0
  444. package/build/library/structure/Breadcrumbs/Breadcrumbs.types.d.ts +20 -20
  445. package/build/library/structure/Contents/Contents.d.ts +4 -4
  446. package/build/library/structure/Contents/Contents.storydata.d.ts +2 -2
  447. package/build/library/structure/Contents/Contents.test.d.ts +1 -0
  448. package/build/library/structure/Contents/Contents.types.d.ts +24 -24
  449. package/build/library/structure/ContentsNavigation/ContentsNavigation.d.ts +4 -4
  450. package/build/library/structure/ContentsNavigation/ContentsNavigation.test.d.ts +1 -0
  451. package/build/library/structure/CookieBanner/CookieBanner.d.ts +6 -6
  452. package/build/library/structure/CookieBanner/CookieBanner.types.d.ts +30 -31
  453. package/build/library/structure/CookieBanner/CookieClear.d.ts +5 -5
  454. package/build/library/structure/DisplayDate/DisplayDate.d.ts +7 -7
  455. package/build/library/structure/DisplayDate/DisplayDate.types.d.ts +18 -18
  456. package/build/library/structure/Footer/Footer.d.ts +4 -4
  457. package/build/library/structure/Footer/Footer.test.d.ts +1 -0
  458. package/build/library/structure/Footer/Footer.types.d.ts +24 -24
  459. package/build/library/structure/FullWidthContainer/FullWidthContainer.d.ts +7 -7
  460. package/build/library/structure/FullWidthContainer/FullWidthContainer.test.d.ts +1 -0
  461. package/build/library/structure/FullWidthContainer/FullWidthContainer.types.d.ts +15 -15
  462. package/build/library/structure/Header/Header.d.ts +7 -7
  463. package/build/library/structure/Header/Header.test.d.ts +1 -0
  464. package/build/library/structure/Header/Header.types.d.ts +30 -31
  465. package/build/library/structure/HeroImage/HeroImage.d.ts +8 -8
  466. package/build/library/structure/HeroImage/HeroImage.storydata.d.ts +6 -6
  467. package/build/library/structure/HeroImage/HeroImage.test.d.ts +1 -0
  468. package/build/library/structure/HeroImage/HeroImage.types.d.ts +52 -48
  469. package/build/library/structure/HomeHero/HomeHero.d.ts +7 -7
  470. package/build/library/structure/HomeHero/HomeHero.storydata.d.ts +14 -14
  471. package/build/library/structure/HomeHero/HomeHero.test.d.ts +1 -0
  472. package/build/library/structure/HomeHero/HomeHero.types.d.ts +54 -54
  473. package/build/library/structure/MaxWidthContainer/MaxWidthContainer.d.ts +7 -7
  474. package/build/library/structure/MaxWidthContainer/MaxWidthContainer.types.d.ts +22 -23
  475. package/build/library/structure/MemorialHero/MemorialHero.d.ts +4 -4
  476. package/build/library/structure/MemorialHero/MemorialHero.types.d.ts +27 -27
  477. package/build/library/structure/NewsArticleDate/NewsArticleDate.d.ts +7 -7
  478. package/build/library/structure/NewsArticleDate/NewsArticleDate.types.d.ts +10 -10
  479. package/build/library/structure/NewsArticleFeaturedBlock/NewsArticleFeaturedBlock.d.ts +7 -7
  480. package/build/library/structure/NewsArticleFeaturedBlock/NewsArticleFeaturedBlock.test.d.ts +1 -0
  481. package/build/library/structure/NewsArticleFeaturedBlock/NewsArticleFeaturedBlock.types.d.ts +23 -23
  482. package/build/library/structure/NewsArticleFilterAccordion/NewsArticleFilterAccordion.d.ts +4 -4
  483. package/build/library/structure/NewsArticleFilterAccordion/NewsArticleFilterAccordion.types.d.ts +7 -7
  484. package/build/library/structure/NewsArticleImage/NewsArticleImage.d.ts +7 -7
  485. package/build/library/structure/NewsArticleImage/NewsArticleImage.types.d.ts +18 -18
  486. package/build/library/structure/NewsArticleList/NewsArticleData.d.ts +7 -7
  487. package/build/library/structure/NewsArticleList/NewsArticleList.d.ts +4 -4
  488. package/build/library/structure/NewsArticleList/NewsArticleList.test.d.ts +1 -0
  489. package/build/library/structure/NewsArticleList/NewsArticleList.types.d.ts +28 -28
  490. package/build/library/structure/NewsArticleListHeader/NewsArticleListHeader.d.ts +4 -4
  491. package/build/library/structure/NewsArticleListHeader/NewsArticleListHeader.types.d.ts +6 -6
  492. package/build/library/structure/NewsArticleOldBanner/NewsArticleOldBanner.d.ts +7 -7
  493. package/build/library/structure/NewsArticleOldBanner/NewsArticleOldBanner.types.d.ts +2 -2
  494. package/build/library/structure/PageMain/PageMain.d.ts +7 -7
  495. package/build/library/structure/PageMain/PageMain.test.d.ts +1 -0
  496. package/build/library/structure/PageMain/PageMain.types.d.ts +14 -15
  497. package/build/library/structure/PageSidebar/PageSidebar.d.ts +7 -7
  498. package/build/library/structure/PageSidebar/PageSidebar.types.d.ts +6 -7
  499. package/build/library/structure/PageStructures.d.ts +42 -42
  500. package/build/library/structure/PageTitle/PageTitle.d.ts +7 -7
  501. package/build/library/structure/PageTitle/PageTitle.types.d.ts +11 -11
  502. package/build/library/structure/PageWithSidebarContainer/PageWithSidebarContainer.d.ts +7 -7
  503. package/build/library/structure/PageWithSidebarContainer/PageWithSidebarContainer.types.d.ts +10 -11
  504. package/build/library/structure/PageWrapper/PageWrapper.d.ts +4 -4
  505. package/build/library/structure/PageWrapper/PageWrapper.types.d.ts +11 -11
  506. package/build/library/structure/PhaseBanner/PhaseBanner.d.ts +4 -4
  507. package/build/library/structure/PhaseBanner/PhaseBanner.types.d.ts +3 -3
  508. package/build/library/structure/PromoBanner/PromoBanner.d.ts +8 -8
  509. package/build/library/structure/PromoBanner/PromoBanner.storydata.d.ts +9 -10
  510. package/build/library/structure/PromoBanner/PromoBanner.test.d.ts +1 -0
  511. package/build/library/structure/PromoBanner/PromoBanner.types.d.ts +26 -27
  512. package/build/library/structure/PromoBlock/PromoBlock.d.ts +8 -8
  513. package/build/library/structure/PromoBlock/PromoBlock.storydata.d.ts +5 -5
  514. package/build/library/structure/PromoBlock/PromoBlock.test.d.ts +1 -0
  515. package/build/library/structure/PromoBlock/PromoBlock.types.d.ts +36 -36
  516. package/build/library/structure/SearchHeader/SearchHeader.d.ts +4 -4
  517. package/build/library/structure/SearchHeader/SearchHeader.types.d.ts +2 -2
  518. package/build/library/structure/SearchResultsList/NoResultsMessage.d.ts +3 -3
  519. package/build/library/structure/SearchResultsList/SearchResultsList.d.ts +4 -4
  520. package/build/library/structure/SearchResultsList/SearchResultsList.test.d.ts +1 -0
  521. package/build/library/structure/SearchResultsList/SearchResultsList.types.d.ts +46 -46
  522. package/build/library/structure/Searchbar/Searchbar.d.ts +4 -4
  523. package/build/library/structure/Searchbar/Searchbar.test.d.ts +1 -0
  524. package/build/library/structure/Searchbar/Searchbar.types.d.ts +48 -48
  525. package/build/library/structure/SectionLinks/SectionLinks.d.ts +7 -7
  526. package/build/library/structure/SectionLinks/SectionLinks.storydata.d.ts +2 -2
  527. package/build/library/structure/SectionLinks/SectionLinks.test.d.ts +1 -0
  528. package/build/library/structure/SectionLinks/SectionLinks.types.d.ts +52 -52
  529. package/build/library/structure/SectionLinksMobileContents/SectionLinksMobileContents.d.ts +4 -4
  530. package/build/library/structure/SectionLinksMobileContents/SectionLinksMobileContents.types.d.ts +16 -16
  531. package/build/library/structure/SectionLinksSidebar/SectionLinksSidebar.d.ts +4 -4
  532. package/build/library/structure/SectionLinksSidebar/SectionLinksSidebar.test.d.ts +1 -0
  533. package/build/library/structure/SectionLinksSidebar/SectionLinksSidebar.types.d.ts +34 -34
  534. package/build/library/structure/ServicesLinksBoxed/ServicesLinksBoxed.d.ts +4 -4
  535. package/build/library/structure/ServicesLinksBoxed/ServicesLinksBoxed.storydata.d.ts +9 -9
  536. package/build/library/structure/ServicesLinksBoxed/ServicesLinksBoxed.test.d.ts +1 -0
  537. package/build/library/structure/ServicesLinksBoxed/ServicesLinksBoxed.types.d.ts +53 -53
  538. package/build/library/structure/ServicesLinksList/ServicesLinksList.d.ts +4 -4
  539. package/build/library/structure/ServicesLinksList/ServicesLinksList.test.d.ts +1 -0
  540. package/build/library/structure/ServicesLinksList/ServicesLinksList.types.d.ts +68 -68
  541. package/build/library/structure/SignpostLinks/SignpostLinks.d.ts +4 -4
  542. package/build/library/structure/SignpostLinks/SignpostLinks.types.d.ts +32 -32
  543. package/build/library/structure/SkipToMainContent/SkipToMainContent.d.ts +4 -4
  544. package/build/library/structure/SkipToMainContent/SkipToMainContent.test.d.ts +1 -0
  545. package/build/library/structure/SkipToMainContent/SkipToMainContent.types.d.ts +2 -2
  546. package/build/library/structure/Summary/Summary.d.ts +4 -4
  547. package/build/library/structure/Summary/Summary.test.d.ts +1 -0
  548. package/build/library/structure/Summary/Summary.types.d.ts +15 -15
  549. package/build/src/index.d.ts +2 -1
  550. package/build/src/library/components/SummaryList/SummaryList.types.d.ts +8 -0
  551. package/build/src/library/directory/DirectoryAddToShortList/DirectoryAddToShortList.types.d.ts +9 -0
  552. package/build/src/library/directory/DirectoryDocumentList/DirectoryDocumentList.types.d.ts +4 -0
  553. package/build/src/library/directory/DirectoryService/DirectoryService.storydata.d.ts +1 -0
  554. package/build/src/library/directory/DirectoryService/DirectoryService.types.d.ts +4 -0
  555. package/build/src/library/directory/DirectoryService/DirectoryServiceTransform.d.ts +1 -1
  556. package/build/src/library/directory/DirectoryService/DirectoryServiceTransform.test.d.ts +1 -0
  557. package/build/src/library/directory/DirectoryServiceList/DirectoryServiceList.types.d.ts +12 -0
  558. package/build/src/library/directory/ServiceContact/ServiceContact.types.d.ts +4 -0
  559. package/build/src/library/events/Event/Event.d.ts +4 -0
  560. package/build/src/library/events/Event/Event.storydata.d.ts +4 -0
  561. package/build/src/library/events/Event/Event.types.d.ts +206 -0
  562. package/build/src/library/events/Event/index.d.ts +3 -0
  563. package/build/src/library/events/EventList/EventList.d.ts +4 -0
  564. package/build/src/library/events/EventList/EventList.storydata.d.ts +3 -0
  565. package/build/src/library/events/EventList/EventList.types.d.ts +152 -0
  566. package/build/src/library/events/EventList/index.d.ts +3 -0
  567. package/build/src/library/events/index.d.ts +5 -0
  568. package/build/src/library/events/utils/EventFilters.d.ts +57 -0
  569. package/build/src/library/events/utils/index.d.ts +1 -0
  570. package/build/src/library/pages/EventPage/EventPage.d.ts +13 -0
  571. package/build/src/library/pages/EventPage/index.d.ts +1 -0
  572. package/build/src/library/slices/InquestSchedule/InquestSchedule.storydata.d.ts +1 -0
  573. package/build/src/library/slices/InquestSchedule/InquestSchedule.types.d.ts +8 -0
  574. package/build/src/library/slices/RoadworksList/RoadworksList.d.ts +7 -0
  575. package/build/src/library/slices/RoadworksList/RoadworksList.storydata.d.ts +4 -0
  576. package/build/src/library/slices/RoadworksList/RoadworksList.test.d.ts +1 -0
  577. package/build/src/library/slices/RoadworksList/RoadworksList.types.d.ts +52 -0
  578. package/build/src/library/structure/HeroImage/HeroImage.types.d.ts +6 -2
  579. package/build/themes/ThemeVars.types.d.ts +60 -0
  580. package/package.json +1 -1
@@ -3874,7 +3874,7 @@ var Autocomplete = function (_a) {
3874
3874
  })));
3875
3875
  };
3876
3876
 
3877
- const Container$18 = styled.div`
3877
+ const Container$19 = styled.div`
3878
3878
  display: block;
3879
3879
  `;
3880
3880
 
@@ -3959,7 +3959,7 @@ var BackToTop = function (_a) {
3959
3959
  useEffect(function () {
3960
3960
  window.addEventListener('scroll', toggleVisible);
3961
3961
  });
3962
- return (React.createElement(Container$18, { "data-testid": "BackToTop" }, isActive && (React.createElement(BackToTopButton, { onClick: scrollToTop, "$visible": visible, "data-testid": "BackToTopButton", type: "button", "aria-label": "Go to the top of the page" },
3962
+ return (React.createElement(Container$19, { "data-testid": "BackToTop" }, isActive && (React.createElement(BackToTopButton, { onClick: scrollToTop, "$visible": visible, "data-testid": "BackToTopButton", type: "button", "aria-label": "Go to the top of the page" },
3963
3963
  React.createElement(ChevronIcon, { colourFill: themeContext.theme_vars.colours.white, direction: "up" })))));
3964
3964
  };
3965
3965
 
@@ -4063,9 +4063,9 @@ var Button$4 = function (_a) {
4063
4063
  return (React.createElement(StyledButton$1, __assign$2({ className: ["button--".concat(size), mode].join(' ') }, href, { title: title ? title : text, "$colourOverride": colourOverride && colourOverride }, props), text ? text : children));
4064
4064
  };
4065
4065
 
4066
- var Container$17 = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n"], ["\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n"])));
4067
- var Label$5 = styled.label(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: block;\n margin-bottom: 15px;\n"], ["\n display: block;\n margin-bottom: 15px;\n"])));
4068
- var VisuallyHiddenLabel = styled(Label$5)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n clip-path: inset(50%);\n border: 0;\n white-space: nowrap;\n"], ["\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n clip-path: inset(50%);\n border: 0;\n white-space: nowrap;\n"])));
4066
+ var Container$18 = styled.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n"], ["\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n"])));
4067
+ var Label$6 = styled.label(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: block;\n margin-bottom: 15px;\n"], ["\n display: block;\n margin-bottom: 15px;\n"])));
4068
+ var VisuallyHiddenLabel = styled(Label$6)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n clip-path: inset(50%);\n border: 0;\n white-space: nowrap;\n"], ["\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n clip-path: inset(50%);\n border: 0;\n white-space: nowrap;\n"])));
4069
4069
  var BinCollectionButtonStyles = styled.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n button {\n margin: 10px 10px 12px 10px;\n }\n"], ["\n button {\n margin: 10px 10px 12px 10px;\n }\n"])));
4070
4070
  var FormContainer$1 = styled.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n width: 100%;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n ", "\n"], ["\n width: 100%;\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n ", "\n"])), function (props) {
4071
4071
  return props.$isLoading && "\n opacity: 0.5; \n pointer-events: none;\n ";
@@ -4078,7 +4078,7 @@ styled.div(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n
4078
4078
  styled.input(templateObject_11 || (templateObject_11 = __makeTemplateObject([""], [""])));
4079
4079
  var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11;
4080
4080
 
4081
- const Container$16 = styled.div`
4081
+ const Container$17 = styled.div`
4082
4082
  display: flex;
4083
4083
  -webkit-flex-direction: row;
4084
4084
  -moz-flex-direction: row;
@@ -4115,7 +4115,7 @@ const ErrorSummary = styled.div`
4115
4115
  */
4116
4116
  var FormWithLine = function (_a) {
4117
4117
  var _b = _a.lineColour, lineColour = _b === void 0 ? '#C6C6C6' : _b, _c = _a.hideLine, hideLine = _c === void 0 ? false : _c, formRole = _a.formRole, formMethod = _a.formMethod, formURL = _a.formURL, _d = _a.isError, isError = _d === void 0 ? false : _d, errorSummary = _a.errorSummary, onSubmit = _a.onSubmit, children = _a.children;
4118
- return (React.createElement(Container$16, null,
4118
+ return (React.createElement(Container$17, null,
4119
4119
  React.createElement(Line$1, { "$lineColour": lineColour, "$hideLine": hideLine, "$isError": isError }),
4120
4120
  React.createElement(Form, { onSubmit: onSubmit, "$hideLine": hideLine, role: formRole, method: formMethod, url: formURL, "data-testid": "FormWithLine" },
4121
4121
  errorSummary && React.createElement(ErrorSummary, null, errorSummary),
@@ -4193,7 +4193,7 @@ var FormButton = function (_a) {
4193
4193
  return (React.createElement(StyledButton, __assign$2({ type: type, className: ["button--".concat(size), mode].join(' ') }, props), text));
4194
4194
  };
4195
4195
 
4196
- const Container$15 = styled.div`
4196
+ const Container$16 = styled.div`
4197
4197
  ${(props) => props.theme.fontStyles};
4198
4198
  `;
4199
4199
 
@@ -4203,7 +4203,7 @@ const hideLabel$1 = (props) => {
4203
4203
  }
4204
4204
  };
4205
4205
 
4206
- const Label$4 = styled.label`
4206
+ const Label$5 = styled.label`
4207
4207
  display: block;
4208
4208
  margin-bottom: 5px;
4209
4209
  ${hideLabel$1}
@@ -4238,8 +4238,8 @@ const Option = styled.option`
4238
4238
 
4239
4239
  var DropDownSelect = function (_a) {
4240
4240
  var id = _a.id, label = _a.label, options = _a.options, onChange = _a.onChange, selected = _a.selected, _b = _a.hideLabel, hideLabel = _b === void 0 ? false : _b;
4241
- return (React.createElement(Container$15, null,
4242
- React.createElement(Label$4, { htmlFor: id, "$hideLabel": hideLabel }, label),
4241
+ return (React.createElement(Container$16, null,
4242
+ React.createElement(Label$5, { htmlFor: id, "$hideLabel": hideLabel }, label),
4243
4243
  React.createElement(Select, { id: id, name: id, onChange: onChange && onChange, defaultValue: selected && selected }, options.map(function (option, i) { return (React.createElement(Option, { key: i, value: option.value }, option.title)); }))));
4244
4244
  };
4245
4245
 
@@ -4522,7 +4522,7 @@ var BinCollection = function (_a) {
4522
4522
  useEffect(function () {
4523
4523
  seenTitles.current.clear();
4524
4524
  }, [calendarEvents]);
4525
- return (React.createElement(Container$17, { "data-testid": "BinCollection" },
4525
+ return (React.createElement(Container$18, { "data-testid": "BinCollection" },
4526
4526
  React.createElement(FormWithLine, { onSubmit: handleSubmit, isError: isError, lineColour: themeContext.theme_vars.colours.$grey_dark, hideLine: true },
4527
4527
  React.createElement(FormContainer$1, { "$isLoading": isLoading },
4528
4528
  React.createElement(Heading, { level: 2, text: "Bin collection checker" }),
@@ -6629,7 +6629,7 @@ var HeadingWithIcon = function (_a) {
6629
6629
  React.createElement(Heading, { text: text, level: level })));
6630
6630
  };
6631
6631
 
6632
- const Container$14 = styled.div`
6632
+ const Container$15 = styled.div`
6633
6633
  display: flex;
6634
6634
  width: 100%;
6635
6635
  min-height: 400px;
@@ -6653,7 +6653,7 @@ var Map$1 = function (_a) {
6653
6653
  setMap(new window.google.maps.Map(ref.current, { center: center, zoom: zoom }));
6654
6654
  }
6655
6655
  }, [ref, map]);
6656
- return (React.createElement(Container$14, { "data-testid": "Map" },
6656
+ return (React.createElement(Container$15, { "data-testid": "Map" },
6657
6657
  React.createElement("div", { ref: ref }),
6658
6658
  React.Children.map(children, function (child) {
6659
6659
  if (React.isValidElement(child)) {
@@ -6677,10 +6677,14 @@ var MapMarker = function (options) {
6677
6677
  anchor: new google.maps.Point(40, 60),
6678
6678
  labelOrigin: new google.maps.Point(21, 25),
6679
6679
  };
6680
- var mergedOptions = __assign$2(__assign$2({}, options), { anchorPoint: new google.maps.Point(-5, -40), icon: icon, label: {
6681
- text: typeof options.label === 'string' ? options.label : options.label.text,
6682
- color: 'white',
6683
- }, position: options.position, title: options.title });
6680
+ var mergedOptions = __assign$2(__assign$2({}, options), { anchorPoint: new google.maps.Point(-5, -40), icon: icon, position: options.position, title: options.title, label: options.label ?
6681
+ (typeof options.label === 'string' ?
6682
+ { text: options.label, color: '#FFFFFF' } : __assign$2(__assign$2({}, options.label), { color: '#FFFFFF' })) : undefined });
6683
+ for (var key in options) {
6684
+ if (key !== 'label' && Object.prototype.hasOwnProperty.call(options, key)) {
6685
+ mergedOptions[key] = options[key];
6686
+ }
6687
+ }
6684
6688
  React.useEffect(function () {
6685
6689
  if (!marker) {
6686
6690
  setMarker(new google.maps.Marker());
@@ -6710,7 +6714,7 @@ var MapMarker = function (options) {
6710
6714
  return null;
6711
6715
  };
6712
6716
 
6713
- const Container$13 = styled.div`
6717
+ const Container$14 = styled.div`
6714
6718
  ${(props) => props.theme.fontStyles};
6715
6719
  display: block;
6716
6720
  border-top: 1px solid ${(props) => props.theme.theme_vars.colours.grey};
@@ -7491,7 +7495,7 @@ var Pagination = function (_a) {
7491
7495
  }
7492
7496
  };
7493
7497
  if (numbers.length > 1) {
7494
- return (React.createElement(Container$13, { "data-testid": "Pagination", role: "navigation", "aria-label": "Pagination" },
7498
+ return (React.createElement(Container$14, { "data-testid": "Pagination", role: "navigation", "aria-label": "Pagination" },
7495
7499
  currentPage > 1 && (React.createElement(Previous, { onClick: function () { return buttonClick(currentPage - 1); }, title: "Go back a page" }, "Previous")),
7496
7500
  React.createElement(NumbersContainer, null, numbers.map(function (v, i) { return (React.createElement(NumberContainer, { key: i },
7497
7501
  v === '...' && React.createElement(Ellipsis, null, "..."),
@@ -7503,7 +7507,7 @@ var Pagination = function (_a) {
7503
7507
  return null;
7504
7508
  };
7505
7509
 
7506
- const Container$12 = styled.div`
7510
+ const Container$13 = styled.div`
7507
7511
  ${(props) => props.theme.fontStyles};
7508
7512
  margin-bottom: 30px;
7509
7513
  `;
@@ -7674,7 +7678,7 @@ var CheckboxListFilter = function (_a) {
7674
7678
  handleParams('news', [{ key: NewsArticleFilterFields.articleType.queryParamKey, value: articleTypes }], ['page']);
7675
7679
  };
7676
7680
  var backupLabel = Math.random().toString(36).substring(7);
7677
- return (React.createElement(Container$12, { "data-testid": "CheckboxListFilter" },
7681
+ return (React.createElement(Container$13, { "data-testid": "CheckboxListFilter" },
7678
7682
  React.createElement(Fieldset$2, { "aria-describedby": hintId },
7679
7683
  React.createElement(Legend$2, { "$labelHidden": labelHidden, "data-testid": "CheckboxListFilterLegend" }, label),
7680
7684
  React.createElement(Hint, { id: hintId, "$hintHidden": hintHidden, "data-testid": "CheckboxListFilterHint" }, hint),
@@ -7806,7 +7810,7 @@ const PromotedLink$1 = styled.a`
7806
7810
  ${oneColStyles}
7807
7811
  `;
7808
7812
 
7809
- const Container$11 = styled.div`
7813
+ const Container$12 = styled.div`
7810
7814
  box-sizing: border-box;
7811
7815
  display: flex;
7812
7816
  flex-wrap: wrap;
@@ -7829,7 +7833,7 @@ const Container$11 = styled.div`
7829
7833
 
7830
7834
  var Row$1 = function (_a) {
7831
7835
  var _b = _a.hasBorder, hasBorder = _b === void 0 ? false : _b, _c = _a.isList, isList = _c === void 0 ? false : _c, _d = _a.hasWrap, hasWrap = _d === void 0 ? true : _d, children = _a.children;
7832
- return (React.createElement(Container$11, { "data-testid": "Row", "$hasBorder": hasBorder, "$hasWrap": hasWrap, as: isList ? 'ul' : 'div' }, children));
7836
+ return (React.createElement(Container$12, { "data-testid": "Row", "$hasBorder": hasBorder, "$hasWrap": hasWrap, as: isList ? 'ul' : 'div' }, children));
7833
7837
  };
7834
7838
 
7835
7839
  const calculateWidth = (size) => {
@@ -7879,7 +7883,7 @@ const widths = (props) => {
7879
7883
  `;
7880
7884
  };
7881
7885
 
7882
- const Container$10 = styled.div`
7886
+ const Container$11 = styled.div`
7883
7887
  box-sizing: border-box;
7884
7888
  display: block;
7885
7889
  padding: ${(props) => (props.$hasPadding ? props.theme.theme_vars.spacingSizes.small : `0`)};
@@ -7890,14 +7894,14 @@ const Container$10 = styled.div`
7890
7894
 
7891
7895
  var Column = function (_a) {
7892
7896
  var _b = _a.small, small = _b === void 0 ? 'full' : _b, _c = _a.medium, medium = _c === void 0 ? 'one-half' : _c, _d = _a.large, large = _d === void 0 ? 'one-third' : _d, _e = _a.hasPadding, hasPadding = _e === void 0 ? true : _e, _f = _a.hasBorder, hasBorder = _f === void 0 ? false : _f, _g = _a.isList, isList = _g === void 0 ? false : _g, classes = _a.classes, children = _a.children;
7893
- return (React.createElement(Container$10, { "data-testid": "Column", "$small": small, "$medium": medium, "$large": large, "$hasPadding": hasPadding, "$hasBorder": hasBorder, as: isList ? 'li' : 'div', className: classes }, children));
7897
+ return (React.createElement(Container$11, { "data-testid": "Column", "$small": small, "$medium": medium, "$large": large, "$hasPadding": hasPadding, "$hasBorder": hasBorder, as: isList ? 'li' : 'div', className: classes }, children));
7894
7898
  };
7895
7899
 
7896
7900
  var PromotedLinks = function (_a) {
7897
7901
  var promotedLinksArray = _a.promotedLinksArray, oneCol = _a.oneCol;
7898
7902
  if (promotedLinksArray.length > 0) {
7899
7903
  return (React.createElement(PromotedLinks$1, { "data-testid": "PromotedLinks", "$oneCol": oneCol },
7900
- React.createElement(Row$1, { isList: true, hasWrap: false }, promotedLinksArray.map(function (link, i) { return (React.createElement(Column, { isList: true, small: "full", medium: "one-half", large: "auto", key: i },
7904
+ React.createElement(Row$1, { isList: true, hasWrap: true }, promotedLinksArray.map(function (link, i) { return (React.createElement(Column, { isList: true, small: "full", medium: "one-half", large: "one-third", key: i },
7901
7905
  React.createElement(PromotedLink$1, { "$oneCol": oneCol, href: link.url, title: link.title },
7902
7906
  React.createElement("span", null, link.title)))); }))));
7903
7907
  }
@@ -7906,7 +7910,7 @@ var PromotedLinks = function (_a) {
7906
7910
  }
7907
7911
  };
7908
7912
 
7909
- const Container$$ = styled.div`
7913
+ const Container$10 = styled.div`
7910
7914
  display: block;
7911
7915
  `;
7912
7916
 
@@ -7942,7 +7946,7 @@ const Cookies = styled.button`
7942
7946
  }
7943
7947
  `;
7944
7948
 
7945
- const Container$_ = styled.div`
7949
+ const Container$$ = styled.div`
7946
7950
  ${(props) => props.theme.fontStyles}
7947
7951
  background-color: ${(props) => props.theme.theme_vars.colours.grey_light};
7948
7952
  padding: ${(props) => props.theme.theme_vars.spacingSizes.medium} 0;
@@ -7950,6 +7954,8 @@ const Container$_ = styled.div`
7950
7954
  width: 100%;
7951
7955
  display: block;
7952
7956
  box-sizing: border-box;
7957
+ position: sticky;
7958
+ z-index: 1;
7953
7959
  `;
7954
7960
 
7955
7961
  const CookieHide = styled.button`
@@ -8143,7 +8149,7 @@ var CookieBanner = function (_a) {
8143
8149
  // on page load - look for a cookie
8144
8150
  useEffect(function () {
8145
8151
  checkCookie();
8146
- });
8152
+ }, []);
8147
8153
  var _d = useState(false), showCookieBanner = _d[0], setShowCookieBanner = _d[1];
8148
8154
  var _e = useState(false), showCookiesRejectedBanner = _e[0], setShowCookiesRejectedBanner = _e[1];
8149
8155
  var _f = useState(false), showCookiesAcceptedBanner = _f[0], setShowCookiesAcceptedBanner = _f[1];
@@ -8214,18 +8220,18 @@ var CookieBanner = function (_a) {
8214
8220
  hideCookiesAcceptedConfirmationBanner();
8215
8221
  };
8216
8222
  return (React.createElement(React.Fragment, null,
8217
- showCookieBanner && (React.createElement(Container$_, { "data-testid": "CookieBanner" },
8223
+ showCookieBanner && (React.createElement(Container$$, { "data-testid": "CookieBanner" },
8218
8224
  React.createElement(CookieMessage, null,
8219
8225
  React.createElement(CookieHeading, null, title),
8220
8226
  React.createElement(CookieParagraph, null, paragraph),
8221
8227
  React.createElement(ButtonsContainer, null,
8222
8228
  React.createElement(FormButton, { primary: true, text: acceptButtonText, isDisabled: true, onClick: acceptCookies, size: "large" }),
8223
8229
  React.createElement(FormButton, { primary: true, text: rejectButtonText, isDisabled: true, onClick: rejectCookies, size: "large" }))))),
8224
- showCookiesRejectedBanner && (React.createElement(Container$_, { "data-testid": "CookieBannerRejected", id: "CookieBannerRejected" },
8230
+ showCookiesRejectedBanner && (React.createElement(Container$$, { "data-testid": "CookieBannerRejected", id: "CookieBannerRejected" },
8225
8231
  React.createElement(CookieMessage, { isInline: true },
8226
8232
  React.createElement(CookieParagraph, null, rejectConfirmationText),
8227
8233
  React.createElement(CookieHide, { onClick: hideCookiesConfirmationBanner, "aria-controls": "CookieBannerRejected", "aria-hidden": "false" }, "Hide")))),
8228
- showCookiesAcceptedBanner && (React.createElement(Container$_, { "data-testid": "CookieBannerAccepted", id: "CookieBannerAccepted" },
8234
+ showCookiesAcceptedBanner && (React.createElement(Container$$, { "data-testid": "CookieBannerAccepted", id: "CookieBannerAccepted" },
8229
8235
  React.createElement(CookieMessage, { isInline: true },
8230
8236
  React.createElement(CookieParagraph, null, acceptConfirmationText),
8231
8237
  React.createElement(CookieHide, { onClick: hideCookiesConfirmationBanner, "aria-controls": "CookieBannerAccepted", "aria-hidden": "false" }, "Hide"))))));
@@ -8247,7 +8253,7 @@ var StaticMap = function (_a) {
8247
8253
  return "&markers=size:".concat(size, "%7Ccolor:").concat(colour).concat(label, "%7C").concat(mapMarker.lat, ",").concat(mapMarker.lng);
8248
8254
  })
8249
8255
  .join('');
8250
- return (React.createElement(Container$$, { "data-testid": "StaticMap" },
8256
+ return (React.createElement(Container$10, { "data-testid": "StaticMap" },
8251
8257
  React.createElement(Message, null,
8252
8258
  React.createElement("span", null,
8253
8259
  "To interact with the map, you need to ",
@@ -8268,7 +8274,7 @@ var TextInput = function (_a) {
8268
8274
 
8269
8275
  // Accordion
8270
8276
 
8271
- const Container$Z = styled.div`
8277
+ const Container$_ = styled.div`
8272
8278
  ${(props) => props.theme.fontStyles}
8273
8279
  margin-bottom: 20px;
8274
8280
  border-bottom: 1px solid ${(props) => props.theme.theme_vars.colours.grey};
@@ -8545,7 +8551,7 @@ var Accordion$1 = function (_a) {
8545
8551
  setAccordionStates(newStatus);
8546
8552
  };
8547
8553
  var accordionId = "accordion".concat(useId());
8548
- return (React.createElement(Container$Z, { "data-testid": "Accordion", id: accordionId },
8554
+ return (React.createElement(Container$_, { "data-testid": "Accordion", id: accordionId },
8549
8555
  showControls && sections.length > 1 && (React.createElement(AccordionControls$1, null,
8550
8556
  React.createElement(OpenAllButton, { onClick: toggleAll, type: "button", "aria-expanded": !openAll },
8551
8557
  openAll ? 'Open all' : 'Close all',
@@ -8596,7 +8602,7 @@ var BlockQuote = function (_a) {
8596
8602
  citation && React.createElement(Citation, null, citation)));
8597
8603
  };
8598
8604
 
8599
- const Container$Y = styled.div`
8605
+ const Container$Z = styled.div`
8600
8606
  margin-bottom: 30px;
8601
8607
  display: block;
8602
8608
 
@@ -8611,11 +8617,11 @@ const Container$Y = styled.div`
8611
8617
  */
8612
8618
  var CallToAction = function (_a) {
8613
8619
  var primary = _a.primary; _a.size; var text = _a.text, url = _a.url, isExternal = _a.isExternal, isDisabled = _a.isDisabled; __rest(_a, ["primary", "size", "text", "url", "isExternal", "isDisabled"]);
8614
- return (React.createElement(Container$Y, null,
8620
+ return (React.createElement(Container$Z, null,
8615
8621
  React.createElement(Button$4, { primary: primary, size: "large", text: text, url: url, isExternal: isExternal, isDisabled: isDisabled })));
8616
8622
  };
8617
8623
 
8618
- const Container$X = styled.div`
8624
+ const Container$Y = styled.div`
8619
8625
  display: block;
8620
8626
  ${(props) => props.theme.fontStyles}
8621
8627
  `;
@@ -8791,7 +8797,7 @@ var CouncilTaxAlphabeticalDirectory = function (_a) {
8791
8797
  });
8792
8798
  return letterData;
8793
8799
  });
8794
- return (React.createElement(Container$X, { "data-testid": "AlphabeticalDirectory", ref: directoryRef },
8800
+ return (React.createElement(Container$Y, { "data-testid": "AlphabeticalDirectory", ref: directoryRef },
8795
8801
  React.createElement(React.Fragment, null,
8796
8802
  parishes.length === 0 && (React.createElement(ErrorText, null, "There was an issue fetching the parish data. Please try again later.")),
8797
8803
  parish === null ? (React.createElement(React.Fragment, null, sortedData.map(function (letter, i) { return (React.createElement(Row, { key: i },
@@ -8817,9 +8823,9 @@ var CouncilTaxAlphabeticalDirectory = function (_a) {
8817
8823
  React.createElement("td", null, Number(parish.values[band]).toLocaleString('en-GB', { style: 'currency', currency: 'GBP' })))); })))))))));
8818
8824
  };
8819
8825
 
8820
- const Container$W = styled.div``;
8826
+ const Container$X = styled.div``;
8821
8827
 
8822
- const Container$V = styled.div`
8828
+ const Container$W = styled.div`
8823
8829
  display: flex;
8824
8830
  flex-direction: column;
8825
8831
  justify-content: flex-start;
@@ -19474,7 +19480,7 @@ function markDirtyUp(node) {
19474
19480
  }
19475
19481
  }
19476
19482
 
19477
- let Container$U = class Container extends Node$1 {
19483
+ let Container$V = class Container extends Node$1 {
19478
19484
  append(...children) {
19479
19485
  for (let child of children) {
19480
19486
  let nodes = this.normalize(child, this.last);
@@ -19847,27 +19853,27 @@ let Container$U = class Container extends Node$1 {
19847
19853
  }
19848
19854
  };
19849
19855
 
19850
- Container$U.registerParse = dependant => {
19856
+ Container$V.registerParse = dependant => {
19851
19857
  parse$4 = dependant;
19852
19858
  };
19853
19859
 
19854
- Container$U.registerRule = dependant => {
19860
+ Container$V.registerRule = dependant => {
19855
19861
  Rule$4 = dependant;
19856
19862
  };
19857
19863
 
19858
- Container$U.registerAtRule = dependant => {
19864
+ Container$V.registerAtRule = dependant => {
19859
19865
  AtRule$4 = dependant;
19860
19866
  };
19861
19867
 
19862
- Container$U.registerRoot = dependant => {
19868
+ Container$V.registerRoot = dependant => {
19863
19869
  Root$6 = dependant;
19864
19870
  };
19865
19871
 
19866
- var container = Container$U;
19867
- Container$U.default = Container$U;
19872
+ var container = Container$V;
19873
+ Container$V.default = Container$V;
19868
19874
 
19869
19875
  /* c8 ignore start */
19870
- Container$U.rebuild = node => {
19876
+ Container$V.rebuild = node => {
19871
19877
  if (node.type === 'atrule') {
19872
19878
  Object.setPrototypeOf(node, AtRule$4.prototype);
19873
19879
  } else if (node.type === 'rule') {
@@ -19884,16 +19890,16 @@ Container$U.rebuild = node => {
19884
19890
 
19885
19891
  if (node.nodes) {
19886
19892
  node.nodes.forEach(child => {
19887
- Container$U.rebuild(child);
19893
+ Container$V.rebuild(child);
19888
19894
  });
19889
19895
  }
19890
19896
  };
19891
19897
 
19892
- let Container$T = container;
19898
+ let Container$U = container;
19893
19899
 
19894
19900
  let LazyResult$4, Processor$3;
19895
19901
 
19896
- let Document$3 = class Document extends Container$T {
19902
+ let Document$3 = class Document extends Container$U {
19897
19903
  constructor(defaults) {
19898
19904
  // type needs to be passed to super, otherwise child roots won't be normalized correctly
19899
19905
  super({ type: 'document', ...defaults });
@@ -20011,9 +20017,9 @@ let Result$4 = class Result {
20011
20017
  var result = Result$4;
20012
20018
  Result$4.default = Result$4;
20013
20019
 
20014
- let Container$S = container;
20020
+ let Container$T = container;
20015
20021
 
20016
- let AtRule$3 = class AtRule extends Container$S {
20022
+ let AtRule$3 = class AtRule extends Container$T {
20017
20023
  constructor(defaults) {
20018
20024
  super(defaults);
20019
20025
  this.type = 'atrule';
@@ -20033,13 +20039,13 @@ let AtRule$3 = class AtRule extends Container$S {
20033
20039
  var atRule = AtRule$3;
20034
20040
  AtRule$3.default = AtRule$3;
20035
20041
 
20036
- Container$S.registerAtRule(AtRule$3);
20042
+ Container$T.registerAtRule(AtRule$3);
20037
20043
 
20038
- let Container$R = container;
20044
+ let Container$S = container;
20039
20045
 
20040
20046
  let LazyResult$3, Processor$2;
20041
20047
 
20042
- let Root$5 = class Root extends Container$R {
20048
+ let Root$5 = class Root extends Container$S {
20043
20049
  constructor(defaults) {
20044
20050
  super(defaults);
20045
20051
  this.type = 'root';
@@ -20093,7 +20099,7 @@ Root$5.registerProcessor = dependant => {
20093
20099
  var root = Root$5;
20094
20100
  Root$5.default = Root$5;
20095
20101
 
20096
- Container$R.registerRoot(Root$5);
20102
+ Container$S.registerRoot(Root$5);
20097
20103
 
20098
20104
  let list$2 = {
20099
20105
  comma(string) {
@@ -20152,10 +20158,10 @@ let list$2 = {
20152
20158
  var list_1 = list$2;
20153
20159
  list$2.default = list$2;
20154
20160
 
20155
- let Container$Q = container;
20161
+ let Container$R = container;
20156
20162
  let list$1 = list_1;
20157
20163
 
20158
- let Rule$3 = class Rule extends Container$Q {
20164
+ let Rule$3 = class Rule extends Container$R {
20159
20165
  constructor(defaults) {
20160
20166
  super(defaults);
20161
20167
  this.type = 'rule';
@@ -20176,7 +20182,7 @@ let Rule$3 = class Rule extends Container$Q {
20176
20182
  var rule = Rule$3;
20177
20183
  Rule$3.default = Rule$3;
20178
20184
 
20179
- Container$Q.registerRule(Rule$3);
20185
+ Container$R.registerRule(Rule$3);
20180
20186
 
20181
20187
  let Declaration$2 = declaration;
20182
20188
  let tokenizer = tokenize;
@@ -20786,7 +20792,7 @@ let Parser$1 = class Parser {
20786
20792
 
20787
20793
  var parser = Parser$1;
20788
20794
 
20789
- let Container$P = container;
20795
+ let Container$Q = container;
20790
20796
  let Parser = parser;
20791
20797
  let Input$3 = input;
20792
20798
 
@@ -20825,12 +20831,12 @@ function parse$3(css, opts) {
20825
20831
  var parse_1 = parse$3;
20826
20832
  parse$3.default = parse$3;
20827
20833
 
20828
- Container$P.registerParse(parse$3);
20834
+ Container$Q.registerParse(parse$3);
20829
20835
 
20830
20836
  let { isClean, my } = symbols;
20831
20837
  let MapGenerator$1 = mapGenerator;
20832
20838
  let stringify$2 = stringify_1;
20833
- let Container$O = container;
20839
+ let Container$P = container;
20834
20840
  let Document$2 = document$1;
20835
20841
  let warnOnce$1 = warnOnce$2;
20836
20842
  let Result$3 = result;
@@ -20965,7 +20971,7 @@ let LazyResult$2 = class LazyResult {
20965
20971
 
20966
20972
  if (root && !root[my]) {
20967
20973
  /* c8 ignore next 2 */
20968
- Container$O.rebuild(root);
20974
+ Container$P.rebuild(root);
20969
20975
  }
20970
20976
  }
20971
20977
 
@@ -21635,7 +21641,7 @@ fromJSON$1.default = fromJSON$1;
21635
21641
  let CssSyntaxError = cssSyntaxError;
21636
21642
  let Declaration = declaration;
21637
21643
  let LazyResult = lazyResult;
21638
- let Container$N = container;
21644
+ let Container$O = container;
21639
21645
  let Processor = processor;
21640
21646
  let stringify = stringify_1;
21641
21647
  let fromJSON = fromJSON_1;
@@ -21715,7 +21721,7 @@ postcss.document = defaults => new Document(defaults);
21715
21721
 
21716
21722
  postcss.CssSyntaxError = CssSyntaxError;
21717
21723
  postcss.Declaration = Declaration;
21718
- postcss.Container = Container$N;
21724
+ postcss.Container = Container$O;
21719
21725
  postcss.Processor = Processor;
21720
21726
  postcss.Document = Document;
21721
21727
  postcss.Comment = Comment;
@@ -22584,7 +22590,7 @@ var sanitizeHtml$1 = sanitizeHtml_1;
22584
22590
  var Card = function (_a) {
22585
22591
  var header = _a.header, content = _a.content, footerLink = _a.footerLink, imageLarge = _a.imageLarge, imageSmall = _a.imageSmall, imageAltText = _a.imageAltText;
22586
22592
  var showContent = content || header;
22587
- return (React.createElement(Container$V, { "data-testid": "Card" },
22593
+ return (React.createElement(Container$W, { "data-testid": "Card" },
22588
22594
  imageLarge && imageSmall && (React.createElement(React.Fragment, null, footerLink ? (React.createElement(ImageLink$1, { href: footerLink.url },
22589
22595
  React.createElement(Image$4, { src: imageLarge, alt: imageAltText, srcSet: "".concat(imageSmall, " 400w, ").concat(imageLarge, " 800w"), sizes: "(max-width: 550px) 400px, 800px", loading: "lazy" }))) : (React.createElement(Image$4, { src: imageLarge, alt: imageAltText, srcSet: "".concat(imageSmall, " 400w, ").concat(imageLarge, " 800w"), sizes: "(max-width: 550px) 400px, 800px", loading: "lazy" })))),
22590
22596
  showContent && (React.createElement(Content$6, null,
@@ -22600,12 +22606,12 @@ var Card = function (_a) {
22600
22606
  */
22601
22607
  var Cards = function (_a) {
22602
22608
  var cards = _a.cards;
22603
- return (React.createElement(Container$W, { "data-testid": "Cards" },
22609
+ return (React.createElement(Container$X, { "data-testid": "Cards" },
22604
22610
  React.createElement(Row$1, null, cards.map(function (card, index) { return (React.createElement(Column, { small: "full", medium: "one-half", large: "one-third", key: index },
22605
22611
  React.createElement(Card, __assign$2({}, card)))); }))));
22606
22612
  };
22607
22613
 
22608
- const Container$M = styled.div`
22614
+ const Container$N = styled.div`
22609
22615
  margin: 25px 0;
22610
22616
  `;
22611
22617
 
@@ -22723,7 +22729,7 @@ var FileDownload = function (_a) {
22723
22729
 
22724
22730
  var DownloadableFiles = function (_a) {
22725
22731
  var files = _a.files;
22726
- return (React.createElement(Container$M, { "data-testid": "DownloadableFiles" }, files.length > 0 ?
22732
+ return (React.createElement(Container$N, { "data-testid": "DownloadableFiles" }, files.length > 0 ?
22727
22733
  files.map(function (file) { return React.createElement(FileDownload, __assign$2({ key: file.title }, file)); })
22728
22734
  :
22729
22735
  React.createElement("i", null, "No file to show")));
@@ -22824,7 +22830,7 @@ const AccessibleMapLink = styled(MapLink$1)`
22824
22830
  ${(props) => props.theme.visuallyHidden};
22825
22831
  `;
22826
22832
 
22827
- const Container$L = styled.div`
22833
+ const Container$M = styled.div`
22828
22834
  border: solid 4px;
22829
22835
  border-radius: ${(props) => props.theme.theme_vars.border_radius};
22830
22836
  border-color: ${(props) =>
@@ -22878,7 +22884,7 @@ const InnerContainer$2 = styled.div`
22878
22884
  */
22879
22885
  var AlertBannerService = function (_a) {
22880
22886
  var title = _a.title, _b = _a.hasTopSpacing, hasTopSpacing = _b === void 0 ? false : _b, _c = _a.alertType, alertType = _c === void 0 ? 'alert' : _c, children = _a.children;
22881
- return (React.createElement(Container$L, { "$alertType": alertType, "data-testid": "AlertBannerService", hasTopSpacing: hasTopSpacing },
22887
+ return (React.createElement(Container$M, { "$alertType": alertType, "data-testid": "AlertBannerService", "$hasTopSpacing": hasTopSpacing },
22882
22888
  React.createElement(InnerContainer$2, { "data-testid": "AlertBannerServiceInner" },
22883
22889
  (title === null || title === void 0 ? void 0 : title.trim()) && React.createElement(Heading, { text: title }),
22884
22890
  children)));
@@ -22931,7 +22937,7 @@ var GoogleMap = function (_a) {
22931
22937
  React.createElement(MapLink$1, { href: link_url }, link_title ? link_title : 'Google Maps link')))));
22932
22938
  };
22933
22939
 
22934
- const Container$K = styled.figure`
22940
+ const Container$L = styled.figure`
22935
22941
  display: block;
22936
22942
  background: ${(props) =>
22937
22943
  props.theme.cardinal_name === 'north'
@@ -23598,7 +23604,7 @@ var LazyImage = /*@__PURE__*/getDefaultExportFromCjs(lib$1);
23598
23604
  */
23599
23605
  var Image$2 = function (_a) {
23600
23606
  var imageSmall = _a.imageSmall, imageLarge = _a.imageLarge, imageAltText = _a.imageAltText, _b = _a.ratio, ratio = _b === void 0 ? '4by3' : _b, caption = _a.caption, wrapText = _a.wrapText;
23601
- return (React.createElement(Container$K, { "data-testid": "Image", "$wrapText": wrapText },
23607
+ return (React.createElement(Container$L, { "data-testid": "Image", "$wrapText": wrapText },
23602
23608
  React.createElement(ImageContainer$4, { "data-testid": "ImageContainer", "$ratio": ratio },
23603
23609
  React.createElement(LazyImage, { placeholder: imageSmall, src: imageLarge, visibilitySensorProps: {
23604
23610
  partialVisibility: true,
@@ -23606,7 +23612,7 @@ var Image$2 = function (_a) {
23606
23612
  (caption === null || caption === void 0 ? void 0 : caption.trim()) && React.createElement(Caption, null, caption)));
23607
23613
  };
23608
23614
 
23609
- const Container$J = styled.div`
23615
+ const Container$K = styled.div`
23610
23616
  display: block;
23611
23617
  `;
23612
23618
 
@@ -23627,7 +23633,7 @@ const Content$5 = styled.div`
23627
23633
  */
23628
23634
  var ImageAndText = function (_a) {
23629
23635
  var heading = _a.heading, textContent = _a.textContent, image = _a.image;
23630
- return (React.createElement(Container$J, { "data-testid": "ImageAndText" },
23636
+ return (React.createElement(Container$K, { "data-testid": "ImageAndText" },
23631
23637
  React.createElement(Row$1, null,
23632
23638
  heading && (React.createElement(Column, { small: "full", medium: "full", large: "full" },
23633
23639
  React.createElement(HeadingContainer, null,
@@ -23640,44 +23646,296 @@ var ImageAndText = function (_a) {
23640
23646
  React.createElement(Content$5, { dangerouslySetInnerHTML: { __html: sanitizeHtml$1(textContent) } }))))));
23641
23647
  };
23642
23648
 
23643
- const Container$I = styled.div`
23649
+ var CaseAppointmentType;
23650
+ (function (CaseAppointmentType) {
23651
+ CaseAppointmentType["Formal"] = "formal";
23652
+ CaseAppointmentType["Hearing"] = "inquest hearing";
23653
+ CaseAppointmentType["Opening"] = "opening";
23654
+ CaseAppointmentType["PreInquest"] = "pre-inquest review";
23655
+ CaseAppointmentType["Writing"] = "writing";
23656
+ })(CaseAppointmentType || (CaseAppointmentType = {}));
23657
+
23658
+ const Container$J = styled.div`
23644
23659
  display: block;
23660
+ box-sizing: border-box;
23661
+ `;
23662
+
23663
+ const GroupContainer = styled.div`
23664
+ display: flex;
23665
+ flex-direction: column;
23666
+ margin-bottom: ${(props) => props.theme.theme_vars.spacingSizes.large};
23667
+ `;
23668
+
23669
+ const InquestContainer = styled.div`
23670
+ display: flex;
23671
+ flex-direction: column;
23672
+ align-items: flex-start;
23673
+ justify-content: flex-start;
23674
+ flex-wrap: wrap;
23675
+ `;
23676
+
23677
+ styled.div`
23678
+ flex-grow: 1;
23679
+ flex-shrink: 0;
23680
+
23681
+ strong {
23682
+ display: block;
23683
+ &::first-letter {
23684
+ text-transform: capitalize;
23685
+ }
23686
+ }
23687
+ `;
23688
+
23689
+ const InquestDetails = styled.div`
23690
+ flex-grow: 1;
23691
+ h3 {
23692
+ display: block;
23693
+ &::first-letter {
23694
+ text-transform: capitalize;
23695
+ }
23696
+ }
23697
+ `;
23698
+
23699
+ const SummaryContainer = styled.div`
23700
+ border: ${(props) => (props.$hasHeading ? `1px solid ${props.theme.theme_vars.colours.grey}` : `none`)};
23701
+ margin: ${(props) => (props.$hasMargin ? props.theme.theme_vars.spacingSizes.medium : 0)} 0;
23702
+ `;
23703
+
23704
+ const SummaryHeading = styled.div`
23705
+ background-color: ${(props) => props.theme.theme_vars.colours.grey_light};
23706
+ width: 100%;
23707
+ padding: ${(props) => props.theme.theme_vars.spacingSizes.small};
23708
+ margin-bottom: ${(props) => props.theme.theme_vars.spacingSizes.medium};
23709
+
23710
+ h3 {
23711
+ margin: 0;
23712
+ }
23713
+ `;
23714
+
23715
+ const SummaryList$1 = styled.dl`
23716
+ display: table;
23717
+ width: 100%;
23718
+ table-layout: fixed;
23719
+ border-collapse: collapse;
23720
+ `;
23721
+
23722
+ const SummaryRow = styled.div`
23723
+ border-bottom: ${(props) => props.$hasBorders ? `1px solid ${props.theme.theme_vars.colours.grey}` : 'none'};
23724
+ margin-bottom: ${(props) => props.theme.theme_vars.spacingSizes.small};
23725
+
23726
+ @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.m}) {
23727
+ display: table-row;
23728
+ }
23729
+
23730
+ @media print {
23731
+ display: table-row;
23732
+ border-bottom: none;
23733
+ }
23734
+ `;
23735
+
23736
+ const SummaryTerm = styled.dt`
23737
+ margin-bottom: ${(props) => props.theme.theme_vars.spacingSizes.small};
23738
+ font-weight: bold;
23739
+
23740
+ @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.m}) {
23741
+ display: table-cell;
23742
+ padding: ${(props) => props.theme.theme_vars.spacingSizes.small};
23743
+ width: 30%;
23744
+ vertical-align: middle;
23745
+ }
23746
+
23747
+ @media print {
23748
+ display: table-cell;
23749
+ width: 30%;
23750
+ }
23645
23751
  `;
23646
23752
 
23753
+ const SummaryDetail = styled.dd`
23754
+ overflow-wrap: break-word;
23755
+ width: 100%;
23756
+ margin-bottom: ${(props) => props.theme.theme_vars.spacingSizes.small};
23757
+
23758
+ @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.m}) {
23759
+ display: table-cell;
23760
+ width: 70%;
23761
+ padding: ${(props) => props.theme.theme_vars.spacingSizes.small};
23762
+ }
23763
+
23764
+ @media print {
23765
+ display: table-cell;
23766
+ width: 70%;
23767
+ }
23768
+ `;
23769
+
23770
+ var SummaryList = function (_a) {
23771
+ var terms = _a.terms, _b = _a.hasMargin, hasMargin = _b === void 0 ? true : _b, _c = _a.hasBorders, hasBorders = _c === void 0 ? true : _c, heading = _a.heading;
23772
+ return (React.createElement(SummaryContainer, { "$hasHeading": heading, "$hasMargin": hasMargin },
23773
+ heading && (React.createElement(SummaryHeading, null,
23774
+ React.createElement(Heading, { level: 3, text: heading }))),
23775
+ React.createElement(SummaryList$1, { "data-testid": "SummaryList" }, terms.map(function (summaryRow, summaryIndex) { return (React.createElement(SummaryRow, { key: summaryIndex, "$hasBorders": hasBorders },
23776
+ React.createElement(SummaryTerm, null, summaryRow.term),
23777
+ React.createElement(SummaryDetail, { dangerouslySetInnerHTML: { __html: sanitizeHtml$1(summaryRow.detail) } }))); }))));
23778
+ };
23779
+
23780
+ /**
23781
+ * Format a date string to a readable date format
23782
+ * @param {string} dateString - The date string to format
23783
+ * @returns {string} Formatted date
23784
+ */
23785
+ const formatDate = (dateString) => {
23786
+ const date = new Date(dateString);
23787
+ return date
23788
+ .toLocaleDateString('en-GB', {
23789
+ weekday: 'long',
23790
+ day: 'numeric',
23791
+ month: 'long',
23792
+ year: 'numeric',
23793
+ })
23794
+ .replace(',', '');
23795
+ };
23796
+
23797
+ /**
23798
+ * Format a date string to a time format
23799
+ * @param {string} dateString - The date string to format
23800
+ * @returns {string} Formatted time
23801
+ */
23802
+ const formatTime = (dateString) => {
23803
+ const date = new Date(dateString);
23804
+ const hours = date.getHours();
23805
+ const minutes = date.getMinutes();
23806
+
23807
+ // Convert to 12-hour format
23808
+ const hour12 = hours === 0 ? 12 : hours > 12 ? hours - 12 : hours;
23809
+ const ampm = hours < 12 ? 'am' : 'pm';
23810
+
23811
+ // Only show minutes if not zero
23812
+ if (minutes === 0) {
23813
+ return `${hour12}${ampm}`;
23814
+ } else {
23815
+ return `${hour12}:${minutes.toString().padStart(2, '0')}${ampm}`;
23816
+ }
23817
+ };
23818
+
23819
+ /**
23820
+ * Format a date string to a date and time format
23821
+ * @param {string} dateString - The date string to format
23822
+ * @returns {string} Formatted date and time
23823
+ */
23824
+ const formatDateTime = (dateString) => {
23825
+ const date = new Date(dateString);
23826
+ return date.toLocaleDateString('en-GB', {
23827
+ day: 'numeric',
23828
+ month: 'long',
23829
+ year: 'numeric',
23830
+ hour: '2-digit',
23831
+ minute: '2-digit',
23832
+ });
23833
+ };
23834
+
23647
23835
  /**
23648
23836
  * A table displaying a schedule of inquests
23649
23837
  */
23650
23838
  var InquestSchedule = function (_a) {
23651
23839
  var caseAppointments = _a.caseAppointments, title = _a.title, _b = _a.error, error = _b === void 0 ? false : _b;
23652
- return (React.createElement(Container$I, { "data-testid": "InquestSchedule" },
23653
- React.createElement("div", { className: "table-container" },
23654
- React.createElement("table", null,
23655
- React.createElement("caption", null, title),
23656
- React.createElement("thead", null,
23657
- React.createElement("tr", null,
23658
- React.createElement("th", { scope: "col" }, "Name"),
23659
- React.createElement("th", { scope: "col" }, "Age"),
23660
- React.createElement("th", { scope: "col" }, "Place of death"),
23661
- React.createElement("th", { scope: "col" }, "Date of death"),
23662
- React.createElement("th", { scope: "col" }, "Name of coroner"),
23663
- React.createElement("th", { scope: "col" }, "Location"),
23664
- React.createElement("th", { scope: "col" }, "Date and time"))),
23665
- React.createElement("tbody", null,
23666
- caseAppointments.map(function (item, index) { return (React.createElement("tr", { key: index },
23667
- React.createElement("td", null, item.fullName),
23668
- React.createElement("td", null, item.age),
23669
- React.createElement("td", null, item.placeOfDeath),
23670
- React.createElement("td", null, new Date(item.dateTimeOfDeath).toLocaleString('en-GB')),
23671
- React.createElement("td", null, item.coroner),
23672
- React.createElement("td", null, item.courtroomFullAddress),
23673
- React.createElement("td", null, new Date(item.startDateTime).toLocaleString('en-GB')))); }),
23674
- caseAppointments.length === 0 && (React.createElement("tr", null,
23675
- React.createElement("td", { colSpan: 7 },
23676
- React.createElement("p", null, "We can't find any results at the moment."),
23677
- error ? (React.createElement("p", null, " The information is currently unavailable.")) : (React.createElement("p", null, "There are no inquests scheduled for next month."))))))))));
23840
+ var hearings = caseAppointments.filter(function (appointment) {
23841
+ return appointment.appointmentType.toLowerCase().includes(CaseAppointmentType.Hearing);
23842
+ });
23843
+ var preInquest = caseAppointments.filter(function (appointment) {
23844
+ return appointment.appointmentType.toLowerCase().includes(CaseAppointmentType.PreInquest);
23845
+ });
23846
+ var openings = caseAppointments.filter(function (appointment) {
23847
+ return appointment.appointmentType.toLowerCase().includes(CaseAppointmentType.Opening);
23848
+ });
23849
+ var writings = caseAppointments.filter(function (appointment) {
23850
+ return appointment.appointmentType.toLowerCase().includes(CaseAppointmentType.Writing);
23851
+ });
23852
+ var formal = caseAppointments.filter(function (appointment) {
23853
+ return appointment.appointmentType.toLowerCase().includes(CaseAppointmentType.Formal);
23854
+ });
23855
+ var groupHearingsByDay = function (appointments) {
23856
+ return appointments.reduce(function (acc, inquest) {
23857
+ var inquestDate = new Date(inquest.startDateTime);
23858
+ var inquestISODay = inquestDate.toISOString().substring(0, 10);
23859
+ if (!acc[inquestISODay]) {
23860
+ acc[inquestISODay] = [];
23861
+ }
23862
+ acc[inquestISODay].push(inquest);
23863
+ return acc;
23864
+ }, {});
23865
+ };
23866
+ var hearingDayGrouped = groupHearingsByDay(hearings);
23867
+ var preInquestDayGrouped = groupHearingsByDay(preInquest);
23868
+ var openingDayGrouped = groupHearingsByDay(openings);
23869
+ var writingDayGrouped = groupHearingsByDay(writings);
23870
+ var formalDayGrouped = groupHearingsByDay(formal);
23871
+ var transformToSections = function (groupedData) {
23872
+ return Object.keys(groupedData).map(function (day) {
23873
+ return {
23874
+ title: formatDate(day),
23875
+ content: (React.createElement(Row$1, null, groupedData[day]
23876
+ .sort(function (a, b) {
23877
+ return new Date(a.startDateTime).getTime() - new Date(b.startDateTime).getTime();
23878
+ })
23879
+ .map(function (inquest, key) {
23880
+ var terms = [
23881
+ {
23882
+ term: 'Name',
23883
+ detail: inquest.fullName,
23884
+ },
23885
+ {
23886
+ term: 'Died',
23887
+ detail: formatDate(inquest.dateTimeOfDeath) +
23888
+ ' at ' +
23889
+ inquest.placeOfDeath +
23890
+ '. Aged ' +
23891
+ inquest.age +
23892
+ ' years.',
23893
+ },
23894
+ {
23895
+ term: 'Court location',
23896
+ detail: inquest.courtroomFullAddress + '.',
23897
+ },
23898
+ {
23899
+ term: 'Coroner',
23900
+ detail: inquest.coroner + '.',
23901
+ },
23902
+ ];
23903
+ if (inquest.endDateTime) {
23904
+ terms.push({
23905
+ term: 'End date',
23906
+ detail: formatDateTime(inquest.endDateTime) + '.',
23907
+ });
23908
+ }
23909
+ return (React.createElement(Column, { small: "full", medium: "full", large: "full", key: key },
23910
+ React.createElement(InquestContainer, null,
23911
+ React.createElement(InquestDetails, null,
23912
+ React.createElement(SummaryList, { terms: terms, hasBorders: false, heading: formatTime(inquest.startDateTime) })))));
23913
+ }))),
23914
+ };
23915
+ });
23916
+ };
23917
+ return (React.createElement(Container$J, { "data-testid": "InquestSchedule" },
23918
+ Object.keys(hearingDayGrouped).length > 0 && (React.createElement(GroupContainer, null,
23919
+ React.createElement(Heading, { level: 2, text: title }),
23920
+ React.createElement(Accordion$1, { sections: transformToSections(hearingDayGrouped) }))),
23921
+ Object.keys(openingDayGrouped).length > 0 && (React.createElement(GroupContainer, null,
23922
+ React.createElement(Heading, { level: 2, text: "Inquest Openings" }),
23923
+ React.createElement(Accordion$1, { sections: transformToSections(openingDayGrouped) }))),
23924
+ Object.keys(preInquestDayGrouped).length > 0 && (React.createElement(GroupContainer, null,
23925
+ React.createElement(Heading, { level: 2, text: "Pre-inquest Review Hearings" }),
23926
+ React.createElement(Accordion$1, { sections: transformToSections(preInquestDayGrouped) }))),
23927
+ Object.keys(writingDayGrouped).length > 0 && (React.createElement(GroupContainer, null,
23928
+ React.createElement(Heading, { level: 2, text: "Inquests in Writing" }),
23929
+ React.createElement(Accordion$1, { sections: transformToSections(writingDayGrouped) }))),
23930
+ Object.keys(formalDayGrouped).length > 0 && (React.createElement(GroupContainer, null,
23931
+ React.createElement(Heading, { level: 2, text: "Formal Suspension Hearings" }),
23932
+ React.createElement(Accordion$1, { sections: transformToSections(formalDayGrouped) }))),
23933
+ caseAppointments.length === 0 && (React.createElement("div", null,
23934
+ React.createElement("p", null, "We can't find any results at the moment."),
23935
+ error ? (React.createElement("p", null, " The information is currently unavailable.")) : (React.createElement("p", null, "There are no inquests scheduled for next month."))))));
23678
23936
  };
23679
23937
 
23680
- const Container$H = styled.div`
23938
+ const Container$I = styled.div`
23681
23939
  ${(props) => props.theme.fontStyles};
23682
23940
  overflow: hidden;
23683
23941
  margin: 40px auto 5px auto;
@@ -23757,7 +24015,7 @@ const CTA = styled.a`
23757
24015
  */
23758
24016
  var PromoBanner = function (_a) {
23759
24017
  var title = _a.title, image1440x810 = _a.image1440x810, image144x81 = _a.image144x81, ctaText = _a.ctaText, ctaUrl = _a.ctaUrl, children = _a.children;
23760
- return (React.createElement(Container$H, null,
24018
+ return (React.createElement(Container$I, null,
23761
24019
  React.createElement(LazyImage, { src: image1440x810, placeholder: image144x81, visibilitySensorProps: {
23762
24020
  partialVisibility: true,
23763
24021
  } }, function (src) { return React.createElement(ImageLink, { "$img": src, href: ctaUrl, title: ctaText }); }),
@@ -23969,63 +24227,248 @@ var Promotions = function (_a) {
23969
24227
  numberOfPromos > 1 && React.createElement(PromoBlock, { promos: promos.slice(1, numberOfPromos) })));
23970
24228
  };
23971
24229
 
23972
- const Container$G = styled.div`
23973
- padding: 0;
23974
- margin: ${(props) => props.theme.theme_vars.spacingSizes.medium} 0;
23975
- ${(props) => props.theme.fontStyles}
23976
-
23977
- @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.m}) {
23978
- background: url('${(props) => props.$image}') no-repeat center center;
23979
- background-size: cover;
23980
- padding-top: ${(props) => (props.$image ? '8rem' : 0)};
23981
- padding-bottom: ${(props) => (props.$image ? '8rem' : 0)};
23982
- padding-left: ${(props) => (props.$image ? props.theme.theme_vars.spacingSizes.x_large : 0)};
23983
- padding-right: ${(props) => (props.$image ? props.theme.theme_vars.spacingSizes.x_large : 0)};
23984
- }
23985
-
23986
- h2 {
23987
- text-align: center;
23988
- }
24230
+ const Container$H = styled.div`
24231
+ display: block;
23989
24232
  `;
23990
24233
 
23991
- const LinkContainer = styled.div`
23992
- height: 100%;
23993
- display: flex;
23994
- align-items: flex-end;
24234
+ const Label$4 = styled.label`
24235
+ margin-bottom: 5px;
24236
+ font-weight: bold;
24237
+ `;
23995
24238
 
23996
- a {
23997
- width: 100%;
23998
- height: 2.28rem;
23999
- padding: 12px !important;
24000
- @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.m}) {
24001
- height: 2.6rem;
24002
- }
24003
- }
24239
+ const RoadworkList = styled.ul`
24240
+ list-style: none;
24241
+ margin: 0;
24242
+ padding: 0;
24243
+ max-width: 100% !important;
24004
24244
  `;
24005
24245
 
24006
- const Inner = styled.div`
24246
+ const Roadwork = styled.li`
24247
+ display: block;
24248
+ width: 100%;
24249
+ margin-left: 0;
24250
+ margin-bottom: ${(props) => props.theme.theme_vars.spacingSizes.medium} !important;
24251
+ padding: ${(props) => `${props.theme.theme_vars.spacingSizes.small} ${props.theme.theme_vars.spacingSizes.medium}`};
24252
+ left: 0;
24253
+ box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.2);
24254
+ border-radius: ${(props) => props.theme.theme_vars.border_radius};
24007
24255
  background-color: ${(props) =>
24008
24256
  props.theme.cardinal_name === 'west'
24009
- ? props.theme.theme_vars.colours.grey_light
24257
+ ? props.theme.theme_vars.colours.grey_light + '7a'
24010
24258
  : props.theme.theme_vars.colours.white};
24011
- padding: ${(props) => props.theme.theme_vars.spacingSizes.small};
24012
- box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.2);
24013
- border-radius: ${(props) => props.theme.theme_vars.border_radius};
24014
24259
 
24015
- @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.m}) {
24016
- padding: ${(props) => props.theme.theme_vars.spacingSizes.large};
24017
- max-width: ${(props) => props.theme.theme_vars.breakpoints.m};
24018
- margin: 0 auto;
24260
+ h3 {
24261
+ margin-top: ${(props) => props.theme.theme_vars.spacingSizes.medium} !important;
24019
24262
  }
24020
24263
  `;
24021
24264
 
24022
- const Container$F = styled.div`
24023
- display: block;
24265
+ const IconContainer$2 = styled.div`
24266
+ display: flex;
24267
+ flex-wrap: nowrap;
24268
+ flex-direction: row;
24269
+ justify-content: flex-start;
24270
+ align-items: center;
24271
+ margin-bottom: ${(props) => props.theme.theme_vars.spacingSizes.small};
24024
24272
 
24025
- input[type='text'] {
24026
- border-top-right-radius: 0;
24027
- border-bottom-right-radius: 0;
24028
- flex-grow: 1;
24273
+ &:last-of-type {
24274
+ margin-bottom: 0;
24275
+ }
24276
+
24277
+ & span svg {
24278
+ vertical-align: middle;
24279
+ }
24280
+ `;
24281
+
24282
+ const IconText = styled.div`
24283
+ padding-left: ${(props) => props.theme.theme_vars.spacingSizes.small};
24284
+ `;
24285
+
24286
+ const NoMatches = styled.p`
24287
+ padding: ${(props) => props.theme.theme_vars.spacingSizes.small} 0;
24288
+ `;
24289
+
24290
+ const RoadworkLink = styled.a`
24291
+ color: ${(props) => props.theme.theme_vars.colours.action};
24292
+ text-decoration: underline;
24293
+
24294
+ &:hover {
24295
+ text-decoration: none;
24296
+ }
24297
+
24298
+ &:focus {
24299
+ outline: 3px solid ${(props) => props.theme.theme_vars.colours.focus};
24300
+ outline-offset: 0;
24301
+ background-color: ${(props) => props.theme.theme_vars.colours.focus};
24302
+ color: ${(props) => props.theme.theme_vars.colours.black};
24303
+ text-decoration: none;
24304
+ }
24305
+
24306
+ &:visited {
24307
+ color: ${(props) => props.theme.theme_vars.colours.action_dark};
24308
+ }
24309
+
24310
+ h3 {
24311
+ color: inherit;
24312
+ }
24313
+ `;
24314
+
24315
+ /**
24316
+ * Primary UI component for user interaction
24317
+ * If value is set then treat as controlled component
24318
+ */
24319
+ var Input = function (_a) {
24320
+ var _b = _a.type, type = _b === void 0 ? 'text' : _b, _c = _a.placeholder, placeholder = _c === void 0 ? '' : _c, _d = _a.isErrored, isErrored = _d === void 0 ? false : _d, errorText = _a.errorText, name = _a.name, maxLength = _a.maxLength, defaultValue = _a.defaultValue, onChange = _a.onChange, id = _a.id, value = _a.value, autocomplete = _a.autocomplete, _e = _a.isFullWidth, isFullWidth = _e === void 0 ? false : _e;
24321
+ return (React.createElement(React.Fragment, null,
24322
+ errorText && React.createElement(ErrorText$1, null, errorText),
24323
+ typeof value !== 'undefined' ? (React.createElement(StyledInput, { onChange: onChange, type: type, placeholder: placeholder, name: name, "$isErrored": isErrored, maxLength: maxLength, value: value, id: id, autoComplete: autocomplete, "$isFullWidth": isFullWidth })) : (React.createElement(StyledInput, { onChange: onChange, type: type, placeholder: placeholder, name: name, "$isErrored": isErrored, maxLength: maxLength, defaultValue: defaultValue, id: id, autoComplete: autocomplete, "$isFullWidth": isFullWidth }))));
24324
+ };
24325
+
24326
+ /**
24327
+ * A filterable list of roadworks
24328
+ */
24329
+ var RoadworksList = function (_a) {
24330
+ var roadworks = _a.roadworks, title = _a.title;
24331
+ var _b = useState(roadworks), filteredRoadworks = _b[0], setFilteredRoadworks = _b[1];
24332
+ // Helper function to remove trailing dot if it's the last character
24333
+ var removeTrailingDot = function (text) {
24334
+ return (text === null || text === void 0 ? void 0 : text.endsWith('.')) ? text.slice(0, -1) : text;
24335
+ };
24336
+ var handleSearch = function (e) {
24337
+ var searchTerm = e.target.value.toLowerCase();
24338
+ if (searchTerm != '') {
24339
+ var updatedRoadworks = roadworks.filter(function (roadwork) {
24340
+ return (roadwork.description.toLowerCase().includes(searchTerm) ||
24341
+ roadwork.detailedLocation.toLocaleLowerCase().includes(searchTerm) ||
24342
+ roadwork.trafficManagement.toLowerCase().includes(searchTerm));
24343
+ });
24344
+ setFilteredRoadworks(updatedRoadworks);
24345
+ }
24346
+ else {
24347
+ setFilteredRoadworks(roadworks);
24348
+ }
24349
+ };
24350
+ // Format the time to match Gov UK style guide
24351
+ // https://www.gov.uk/guidance/style-guide/a-to-z#times
24352
+ var formatTime = function (dayJsInstance) {
24353
+ if (dayJsInstance.format('HH:mm') === '00:00') {
24354
+ return 'midnight';
24355
+ }
24356
+ if (dayJsInstance.format('HH:mm') === '12:00') {
24357
+ return 'midday';
24358
+ }
24359
+ if (dayJsInstance.format('mm') === '00') {
24360
+ return dayJsInstance.format('ha');
24361
+ }
24362
+ else {
24363
+ return dayJsInstance.format('h:mma');
24364
+ }
24365
+ };
24366
+ // Format the time to match the Gov UK style guide
24367
+ // https://www.gov.uk/guidance/style-guide/a-to-z#dates
24368
+ var formatDate = function (startTime, endTime) {
24369
+ if (!endTime) {
24370
+ return dayjs(startTime).format('dddd D MMMM YYYY') + ' at ' + formatTime(dayjs(startTime));
24371
+ }
24372
+ else {
24373
+ var endDate = dayjs(endTime);
24374
+ var startDate = dayjs(startTime);
24375
+ if (startDate.format('YYYY-MM-DD') === endDate.format('YYYY-MM-DD')) {
24376
+ if (startDate.format('HH:mm') === '00:00' && endDate.format('HH:mm') === '23:59') {
24377
+ return "".concat(startDate.format('dddd D MMMM YYYY'), " - all day");
24378
+ }
24379
+ return "".concat(startDate.format('dddd D MMMM YYYY'), " at ").concat(formatTime(startDate), " to ").concat(formatTime(endDate));
24380
+ }
24381
+ else {
24382
+ return "".concat(startDate.format('dddd D MMMM YYYY'), " at ").concat(formatTime(startDate), " to ").concat(endDate.format('dddd D MMMM YYYY'), " at ").concat(formatTime(endDate));
24383
+ }
24384
+ }
24385
+ };
24386
+ return (React.createElement(Container$H, { "data-testid": "RoadworksList" },
24387
+ React.createElement(Heading, { level: 2, text: title }),
24388
+ React.createElement(Label$4, { htmlFor: "roadworksSearch" }, "Search roadworks"),
24389
+ React.createElement(Input, { id: "roadworksSearch", name: "roadworksSearch", type: "text", placeholder: "Enter a search term", maxLength: 255, onChange: handleSearch, isFullWidth: true }),
24390
+ React.createElement(RoadworkList, null, filteredRoadworks.map(function (roadwork, index) {
24391
+ var startDate = new Date(roadwork.startTime);
24392
+ var endDate = new Date(roadwork.endTime);
24393
+ return (React.createElement(Roadwork, { key: index },
24394
+ React.createElement(IconContainer$2, null,
24395
+ React.createElement(DynamicIcon, { icon: "mappin" }),
24396
+ React.createElement(IconText, null, roadwork.urlLinkAddress ? (React.createElement(RoadworkLink, { href: roadwork.urlLinkAddress, target: "_blank", rel: "noopener noreferrer" },
24397
+ React.createElement(Heading, { text: removeTrailingDot(roadwork.detailedLocation), level: 3 }))) : (React.createElement(Heading, { text: removeTrailingDot(roadwork.detailedLocation), level: 3 })))),
24398
+ React.createElement(IconContainer$2, null,
24399
+ React.createElement(DynamicIcon, { icon: "events" }),
24400
+ React.createElement(IconText, null,
24401
+ React.createElement("span", null, formatDate(startDate, endDate)))),
24402
+ React.createElement(IconContainer$2, null,
24403
+ React.createElement(DynamicIcon, { icon: "roadworks" }),
24404
+ React.createElement(IconText, null,
24405
+ React.createElement("span", null, removeTrailingDot(roadwork.description)))),
24406
+ React.createElement(IconContainer$2, null,
24407
+ React.createElement(DynamicIcon, { icon: "bollard" }),
24408
+ React.createElement(IconText, null,
24409
+ React.createElement("span", null, removeTrailingDot(roadwork.trafficManagement))))));
24410
+ })),
24411
+ roadworks.length > 0 && filteredRoadworks.length === 0 && (React.createElement(NoMatches, null, "We couldn't find any results for your search term. Please try a different search.")),
24412
+ roadworks.length == 0 && (React.createElement(NoMatches, null, "Sorry, we're not able to find any results at the moment. Please try again later."))));
24413
+ };
24414
+
24415
+ const Container$G = styled.div`
24416
+ padding: 0;
24417
+ margin: ${(props) => props.theme.theme_vars.spacingSizes.medium} 0;
24418
+ ${(props) => props.theme.fontStyles}
24419
+
24420
+ @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.m}) {
24421
+ background: url('${(props) => props.$image}') no-repeat center center;
24422
+ background-size: cover;
24423
+ padding-top: ${(props) => (props.$image ? '8rem' : 0)};
24424
+ padding-bottom: ${(props) => (props.$image ? '8rem' : 0)};
24425
+ padding-left: ${(props) => (props.$image ? props.theme.theme_vars.spacingSizes.x_large : 0)};
24426
+ padding-right: ${(props) => (props.$image ? props.theme.theme_vars.spacingSizes.x_large : 0)};
24427
+ }
24428
+
24429
+ h2 {
24430
+ text-align: center;
24431
+ }
24432
+ `;
24433
+
24434
+ const LinkContainer = styled.div`
24435
+ height: 100%;
24436
+ display: flex;
24437
+ align-items: flex-end;
24438
+
24439
+ a {
24440
+ width: 100%;
24441
+ height: 2.28rem;
24442
+ padding: 12px !important;
24443
+ @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.m}) {
24444
+ height: 2.6rem;
24445
+ }
24446
+ }
24447
+ `;
24448
+
24449
+ const Inner = styled.div`
24450
+ background-color: ${(props) =>
24451
+ props.theme.cardinal_name === 'west'
24452
+ ? props.theme.theme_vars.colours.grey_light
24453
+ : props.theme.theme_vars.colours.white};
24454
+ padding: ${(props) => props.theme.theme_vars.spacingSizes.small};
24455
+ box-shadow: 1px 1px 5px 1px rgba(0, 0, 0, 0.2);
24456
+ border-radius: ${(props) => props.theme.theme_vars.border_radius};
24457
+
24458
+ @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.m}) {
24459
+ padding: ${(props) => props.theme.theme_vars.spacingSizes.large};
24460
+ max-width: ${(props) => props.theme.theme_vars.breakpoints.m};
24461
+ margin: 0 auto;
24462
+ }
24463
+ `;
24464
+
24465
+ const Container$F = styled.div`
24466
+ display: block;
24467
+
24468
+ input[type='text'] {
24469
+ border-top-right-radius: 0;
24470
+ border-bottom-right-radius: 0;
24471
+ flex-grow: 1;
24029
24472
  margin-bottom: 0;
24030
24473
  }
24031
24474
  `;
@@ -24087,17 +24530,6 @@ const SubmitButton = styled.input`
24087
24530
  }
24088
24531
  `;
24089
24532
 
24090
- /**
24091
- * Primary UI component for user interaction
24092
- * If value is set then treat as controlled component
24093
- */
24094
- var Input = function (_a) {
24095
- var _b = _a.type, type = _b === void 0 ? 'text' : _b, _c = _a.placeholder, placeholder = _c === void 0 ? '' : _c, _d = _a.isErrored, isErrored = _d === void 0 ? false : _d, errorText = _a.errorText, name = _a.name, maxLength = _a.maxLength, defaultValue = _a.defaultValue, onChange = _a.onChange, id = _a.id, value = _a.value, autocomplete = _a.autocomplete, _e = _a.isFullWidth, isFullWidth = _e === void 0 ? false : _e;
24096
- return (React.createElement(React.Fragment, null,
24097
- errorText && React.createElement(ErrorText$1, null, errorText),
24098
- typeof value !== 'undefined' ? (React.createElement(StyledInput, { onChange: onChange, type: type, placeholder: placeholder, name: name, "$isErrored": isErrored, maxLength: maxLength, value: value, id: id, autoComplete: autocomplete, "$isFullWidth": isFullWidth })) : (React.createElement(StyledInput, { onChange: onChange, type: type, placeholder: placeholder, name: name, "$isErrored": isErrored, maxLength: maxLength, defaultValue: defaultValue, id: id, autoComplete: autocomplete, "$isFullWidth": isFullWidth }))));
24099
- };
24100
-
24101
24533
  var CustomSearch = function (_a) {
24102
24534
  var method = _a.method, path = _a.path, label = _a.label, _b = _a.hasHiddenLabel, hasHiddenLabel = _b === void 0 ? true : _b, fieldName = _a.fieldName, placeholder = _a.placeholder, searchText = _a.searchText, id = _a.id;
24103
24535
  if (!id) {
@@ -24136,7 +24568,7 @@ var VideoProvider;
24136
24568
  VideoProvider["Vimeo"] = "Vimeo";
24137
24569
  })(VideoProvider || (VideoProvider = {}));
24138
24570
 
24139
- const VideoContainer = styled.figure`
24571
+ const VideoContainer$1 = styled.figure`
24140
24572
  display: block;
24141
24573
  padding-top: 56.25%;
24142
24574
  position: relative;
@@ -24196,7 +24628,7 @@ var Video = function (_a) {
24196
24628
  useEffect(function () {
24197
24629
  setNotServer(true);
24198
24630
  }, []);
24199
- return (React.createElement(React.Fragment, null, cookiesAccepted && notServer ? (React.createElement(VideoContainer, { "data-testid": "Video" },
24631
+ return (React.createElement(React.Fragment, null, cookiesAccepted && notServer ? (React.createElement(VideoContainer$1, { "data-testid": "Video" },
24200
24632
  React.createElement("iframe", { src: embedLink, title: description, allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; fullscreen;", "data-testid": "VideoIframe" }))) : (React.createElement(VideoLink, { href: watchLink, title: description, "data-testid": "VideoLink" }, description))));
24201
24633
  };
24202
24634
 
@@ -25065,6 +25497,17 @@ const FooterLink = styled.a`
25065
25497
  -webkit-box-shadow: 0px -2px 0px 0px ${(props) => props.theme.theme_vars.colours.white} inset;
25066
25498
  -moz-box-shadow: 0px -2px 0px 0px ${(props) => props.theme.theme_vars.colours.white} inset;
25067
25499
  }
25500
+ &:focus:not(:focus-visible) {
25501
+ box-shadow: none;
25502
+ -webkit-box-shadow: none;
25503
+ -moz-box-shadow: none;
25504
+ }
25505
+ &:focus-visible {
25506
+ ${(props) => props.theme.linkStylesFocus}
25507
+ box-shadow: 0px -2px 0px 0px ${(props) => props.theme.theme_vars.colours.white} inset;
25508
+ -webkit-box-shadow: 0px -2px 0px 0px ${(props) => props.theme.theme_vars.colours.white} inset;
25509
+ -moz-box-shadow: 0px -2px 0px 0px ${(props) => props.theme.theme_vars.colours.white} inset;
25510
+ }
25068
25511
  &:active {
25069
25512
  ${(props) => props.theme.linkStylesActive}
25070
25513
  box-shadow: 0px -1px 0px 0px ${(props) => props.theme.theme_vars.colours.white} inset;
@@ -25227,6 +25670,8 @@ const headerThemeStyles = (props) => {
25227
25670
  const Container$w = styled.header`
25228
25671
  font-family: ${(props) => props.theme.theme_vars.fontstack};
25229
25672
  padding: 3px 0;
25673
+ position: sticky;
25674
+ z-index: 1;
25230
25675
  ${headerThemeStyles}
25231
25676
  `;
25232
25677
 
@@ -25289,13 +25734,11 @@ const HomeLink = styled.a`
25289
25734
  }
25290
25735
  }
25291
25736
  &:focus {
25292
- outline: 2px transparent solid;
25293
- box-shadow: ${(props) => props.theme.theme_vars.colours.focus} 0 0 0 2px,
25294
- ${(props) =>
25295
- props.theme.cardinal_name === 'north'
25296
- ? props.theme.theme_vars.colours.black
25297
- : props.theme.theme_vars.colours.focus}
25298
- 0 0 0 4px;
25737
+ outline: none;
25738
+ background: ${(props) => props.theme.theme_vars.colours.focus};
25739
+ box-shadow: 0 0 0 2px ${(props) => props.theme.theme_vars.colours.focus}, 0 0 0 4px ${(props) => props.theme.theme_vars.colours.black};
25740
+ -webkit-box-shadow: 0 0 0 2px ${(props) => props.theme.theme_vars.colours.focus}, 0 0 0 4px ${(props) => props.theme.theme_vars.colours.black};
25741
+ -moz-box-shadow: 0 0 0 2px ${(props) => props.theme.theme_vars.colours.focus}, 0 0 0 4px ${(props) => props.theme.theme_vars.colours.black};
25299
25742
  transition: box-shadow 0.3s ease 0s;
25300
25743
  }
25301
25744
  `;
@@ -25448,6 +25891,9 @@ const Button$3 = styled.button`
25448
25891
  &:focus {
25449
25892
  outline: none;
25450
25893
  background: ${(props) => props.theme.theme_vars.colours.focus};
25894
+ box-shadow: 0 0 0 2px ${(props) => props.theme.theme_vars.colours.focus}, 0 0 0 4px ${(props) => props.theme.theme_vars.colours.black};
25895
+ -webkit-box-shadow: 0 0 0 2px ${(props) => props.theme.theme_vars.colours.focus}, 0 0 0 4px ${(props) => props.theme.theme_vars.colours.black};
25896
+ -moz-box-shadow: 0 0 0 2px ${(props) => props.theme.theme_vars.colours.focus}, 0 0 0 4px ${(props) => props.theme.theme_vars.colours.black};
25451
25897
  svg {
25452
25898
  path {
25453
25899
  fill: ${(props) => props.theme.theme_vars.colours.black};
@@ -25619,9 +26065,19 @@ var Header = function (_a) {
25619
26065
  * Optimised for an image in 16:5 ratio on all but small width screens
25620
26066
  */
25621
26067
  const Container$u = styled.div`
25622
- background-image: ${(props) =>
25623
- !props.$backgroundBox ? `linear-gradient(to bottom left, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75)),` : ``}
25624
- url('${(props) => props.$image}');
26068
+ background-image: ${(props) => {
26069
+ const gradient = !props.$backgroundBox ? `linear-gradient(to bottom left, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75))` : '';
26070
+ const imageUrl = props.$image && props.$image.trim() ? `url('${props.$image}')` : '';
26071
+ if (gradient && imageUrl) {
26072
+ return `${gradient}, ${imageUrl}`;
26073
+ } else if (gradient) {
26074
+ return gradient;
26075
+ } else if (imageUrl) {
26076
+ return imageUrl;
26077
+ } else {
26078
+ return 'none';
26079
+ }
26080
+ }};
25625
26081
 
25626
26082
  padding-bottom: 10px;
25627
26083
  background-position: center;
@@ -25652,6 +26108,7 @@ const InnerContainer = styled.div`
25652
26108
  margin-right: auto;
25653
26109
  margin-left: auto;
25654
26110
  flex-grow: 1;
26111
+ z-index: 1;
25655
26112
 
25656
26113
  @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.l}) {
25657
26114
  max-width: ${(props) => props.theme.theme_vars.breakpoints.l};
@@ -25739,12 +26196,14 @@ const CallToActionLink = styled.a`
25739
26196
  display: inline-block;
25740
26197
  outline: none;
25741
26198
 
25742
- &:hover,
25743
- &:focus {
26199
+ &:hover {
25744
26200
  text-decoration-style: dotted;
25745
26201
  text-shadow: 2px 2px 4px rgba(150, 150, 150, 0.5), -2px 2px 4px rgba(150, 150, 150, 0.5),
25746
26202
  2px -2px 4px rgba(150, 150, 150, 0.5), -2px -2px 4px rgba(150, 150, 150, 0.5);
25747
26203
  }
26204
+ &:focus {
26205
+ ${(props) => props.theme.linkStylesFocus};
26206
+ }
25748
26207
  &:active {
25749
26208
  transform: translate(3px);
25750
26209
  }
@@ -25773,16 +26232,103 @@ const Search = styled.div`
25773
26232
  margin: ${(props) => props.theme.theme_vars.spacingSizes.medium} 0;
25774
26233
  `;
25775
26234
 
26235
+ const VideoContainer = styled.div`
26236
+ position: absolute;
26237
+ width: 100%;
26238
+ @media screen and (max-width: ${(props) => props.theme.theme_vars.breakpoints.m}) {
26239
+ height: 580px;
26240
+ }
26241
+ @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.m}) and (max-width: ${(props) => props.theme.theme_vars.breakpoints.l}) {
26242
+ height: 410px;
26243
+ }
26244
+ @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.l}) {
26245
+ height: 560px;
26246
+ }
26247
+ @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.xl}) {
26248
+ height: 636px;
26249
+ }
26250
+ `;
26251
+
26252
+ const VideoBackground = styled.video`
26253
+ position: absolute;
26254
+ width: 100%;
26255
+ height: 575px;
26256
+ object-fit: cover;
26257
+ @media screen and (max-width: ${(props) => props.theme.theme_vars.breakpoints.m}) {
26258
+ height: 590px;
26259
+ }
26260
+ @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.m}) and (max-width: ${(props) => props.theme.theme_vars.breakpoints.l}) {
26261
+ height: 420px;
26262
+ }
26263
+ @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.l}) {
26264
+ height: 568px;
26265
+ }
26266
+ @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.xl}) {
26267
+ height: 645px;
26268
+ }
26269
+ `;
26270
+
26271
+ const PlayPauseButton = styled.button`
26272
+ position: absolute;
26273
+ display: none;
26274
+ @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.l}) {
26275
+ bottom: 20px;
26276
+ right: 20px;
26277
+ display: flex;
26278
+ align-items: center;
26279
+ justify-content: center;
26280
+ z-index: 1;
26281
+ background: rgba(0, 0, 0, 0.5);
26282
+ border: 1px solid white;
26283
+ color: white;
26284
+ font-size: 32px;
26285
+ border-radius: 50%;
26286
+ width: 50px;
26287
+ height: 50px;
26288
+ cursor: pointer;
26289
+ &:hover {
26290
+ background: rgba(0, 0, 0, 0.7);
26291
+ }
26292
+ &:focus {
26293
+ outline: none;
26294
+ background: ${(props) => props.theme.theme_vars.colours.focus};
26295
+ color: ${(props) => props.theme.theme_vars.colours.black};
26296
+ box-shadow: 0 0 0 2px ${(props) => props.theme.theme_vars.colours.focus}, 0 0 0 4px ${(props) => props.theme.theme_vars.colours.black};
26297
+ -webkit-box-shadow: 0 0 0 2px ${(props) => props.theme.theme_vars.colours.focus}, 0 0 0 4px ${(props) => props.theme.theme_vars.colours.black};
26298
+ -moz-box-shadow: 0 0 0 2px ${(props) => props.theme.theme_vars.colours.focus}, 0 0 0 4px ${(props) => props.theme.theme_vars.colours.black};
26299
+ }
26300
+ }
26301
+ `;
26302
+
25776
26303
  /**
25777
26304
  * Hero image banner with optional text and call to action with varying presentation of text area.
25778
26305
  * For optional use at the top of a service landing page, if set in the CMS.
25779
26306
  */
25780
26307
  var HeroImage = function (_a) {
25781
- var headline = _a.headline, content = _a.content, callToActionText = _a.callToActionText, callToActionURL = _a.callToActionURL, _b = _a.callToActionIsPrimary, callToActionIsPrimary = _b === void 0 ? true : _b, _c = _a.backgroundBox, backgroundBox = _c === void 0 ? true : _c, imageLarge = _a.imageLarge, imageSmall = _a.imageSmall, imageAltText = _a.imageAltText, breadcrumb = _a.breadcrumb, customSearch = _a.customSearch;
26308
+ var headline = _a.headline, content = _a.content, callToActionText = _a.callToActionText, callToActionURL = _a.callToActionURL, _b = _a.callToActionIsPrimary, callToActionIsPrimary = _b === void 0 ? true : _b, _c = _a.backgroundBox, backgroundBox = _c === void 0 ? true : _c, imageLarge = _a.imageLarge, imageSmall = _a.imageSmall, imageAltText = _a.imageAltText, heroVideoUrl = _a.heroVideoUrl, breadcrumb = _a.breadcrumb, customSearch = _a.customSearch;
26309
+ var _d = useState(true), isPlaying = _d[0], setIsPlaying = _d[1];
26310
+ var videoRef = useRef(null);
26311
+ var togglePlay = function () {
26312
+ if (videoRef.current) {
26313
+ if (isPlaying) {
26314
+ videoRef.current.pause();
26315
+ }
26316
+ else {
26317
+ videoRef.current.play();
26318
+ }
26319
+ setIsPlaying(!isPlaying);
26320
+ }
26321
+ };
25782
26322
  return (React.createElement(React.Fragment, null,
25783
26323
  React.createElement(LazyImage, { src: imageLarge, placeholder: imageSmall, visibilitySensorProps: {
25784
26324
  partialVisibility: true,
25785
26325
  } }, function (src) { return (React.createElement(Container$u, { "$image": src, "$backgroundBox": backgroundBox, "data-testid": "HeroImage" },
26326
+ heroVideoUrl && (React.createElement(React.Fragment, null,
26327
+ React.createElement(VideoContainer, null,
26328
+ React.createElement(VideoBackground, { ref: videoRef, autoPlay: true, loop: true, muted: true },
26329
+ React.createElement("source", { src: heroVideoUrl, type: "video/mp4" }),
26330
+ "Your browser doesn't support this video."),
26331
+ React.createElement(PlayPauseButton, { onClick: togglePlay }, isPlaying ? '⏸' : '▶')))),
25786
26332
  React.createElement(InnerContainer, null,
25787
26333
  React.createElement(Overlay, { "$backgroundBox": backgroundBox, "data-testid": "HeroImageOverlay" },
25788
26334
  breadcrumb && (React.createElement(BreadcrumbLink, { href: breadcrumb.url, "$backgroundBox": backgroundBox }, breadcrumb.title)),
@@ -26990,7 +27536,10 @@ const Container$l = styled.main`
26990
27536
  }
26991
27537
 
26992
27538
  td > a:only-child {
26993
- padding: 5px 10px;
27539
+ padding: 12px 20px;
27540
+ display: inline-block;
27541
+ min-height: 44px;
27542
+ min-width: 44px;
26994
27543
  }
26995
27544
 
26996
27545
  td > a:not(:only-child) {
@@ -27852,9 +28401,9 @@ const focusListItem = css`
27852
28401
  color: ${(props) => props.theme.theme_vars.colours.black};
27853
28402
  background-color: ${(props) => props.theme.theme_vars.colours.focus};
27854
28403
  outline: none;
27855
- box-shadow: 0px -2px 0px 0px ${(props) => props.theme.theme_vars.colours.black} inset;
27856
- -webkit-box-shadow: 0px -2px 0px 0px ${(props) => props.theme.theme_vars.colours.black} inset;
27857
- -moz-box-shadow: 0px -2px 0px 0px ${(props) => props.theme.theme_vars.colours.black} inset;
28404
+ box-shadow: 0 0 0 2px ${(props) => props.theme.theme_vars.colours.focus}, 0 0 0 4px ${(props) => props.theme.theme_vars.colours.black};
28405
+ -webkit-box-shadow: 0 0 0 2px ${(props) => props.theme.theme_vars.colours.focus}, 0 0 0 4px ${(props) => props.theme.theme_vars.colours.black};
28406
+ -moz-box-shadow: 0 0 0 2px ${(props) => props.theme.theme_vars.colours.focus}, 0 0 0 4px ${(props) => props.theme.theme_vars.colours.black};
27858
28407
  `;
27859
28408
 
27860
28409
  const ListItem = styled.li`
@@ -27876,10 +28425,12 @@ const ListItem = styled.li`
27876
28425
  background-color: ${(props) => props.theme.theme_vars.colours.action_light};
27877
28426
  color: ${(props) => props.theme.theme_vars.colours.black};
27878
28427
  border-bottom-color: transparent;
27879
-
27880
28428
  &:focus {
27881
28429
  ${focusListItem}
27882
28430
  }
28431
+ &:focus-visible {
28432
+ ${focusListItem}
28433
+ }
27883
28434
  }
27884
28435
  }
27885
28436
  `;
@@ -27895,10 +28446,12 @@ const ListItemLink = styled.a`
27895
28446
  transition: background-color 0.3s ease 0s;
27896
28447
  background-color: ${(props) => props.theme.theme_vars.colours.action_light}80;
27897
28448
  }
27898
-
27899
28449
  &:focus {
27900
28450
  ${focusListItem}
27901
28451
  }
28452
+ &:focus-visible {
28453
+ ${focusListItem}
28454
+ }
27902
28455
  &:active {
27903
28456
  transform: translateY(1px);
27904
28457
  box-shadow: 0px -1px 0px 0px ${(props) => props.theme.theme_vars.colours.black} inset;
@@ -29648,9 +30201,9 @@ const generate_theme = (theme_vars) => {
29648
30201
  background: ${theme_vars.colours.focus};
29649
30202
  outline: none;
29650
30203
  text-decoration: none !important;
29651
- box-shadow: 0 0 0 1px ${theme_vars.colours.focus}, 0 0 0 3px ${theme_vars.colours.black};
29652
- -webkit-box-shadow: 0 0 0 1px ${theme_vars.colours.focus}, 0 0 0 3px ${theme_vars.colours.black};
29653
- -moz-box-shadow: 0 0 0 1px ${theme_vars.colours.focus}, 0 0 0 3px ${theme_vars.colours.black};
30204
+ box-shadow: 0 0 0 2px ${theme_vars.colours.focus}, 0 0 0 4px ${theme_vars.colours.black};
30205
+ -webkit-box-shadow: 0 0 0 2px ${theme_vars.colours.focus}, 0 0 0 4px ${theme_vars.colours.black};
30206
+ -moz-box-shadow: 0 0 0 2px ${theme_vars.colours.focus}, 0 0 0 4px ${theme_vars.colours.black};
29654
30207
  `,
29655
30208
  linkStylesActive: css`
29656
30209
  color: ${theme_vars.colours.black};
@@ -30068,7 +30621,7 @@ var PhoneIcon = function (_a) {
30068
30621
  };
30069
30622
 
30070
30623
  var ServiceContact = function (_a) {
30071
- var website = _a.website, email = _a.email, contacts = _a.contacts;
30624
+ var website = _a.website, email = _a.email, contacts = _a.contacts, websiteTitle = _a.websiteTitle;
30072
30625
  var themeContext = useContext(ThemeContext);
30073
30626
  return (React.createElement(Container$6, { "data-testid": "ServiceContact" },
30074
30627
  React.createElement(Row$1, { hasWrap: false },
@@ -30076,7 +30629,7 @@ var ServiceContact = function (_a) {
30076
30629
  React.createElement(IconContainer$1, null,
30077
30630
  React.createElement(WebsiteIcon, { colourFill: themeContext.theme_vars.colours.black })),
30078
30631
  React.createElement(Content$1, null,
30079
- React.createElement(WebLink$1, { href: website }, website)))),
30632
+ React.createElement(WebLink$1, { href: website }, websiteTitle ? "".concat(websiteTitle) : website)))),
30080
30633
  email && (React.createElement(Column, { small: "full", medium: "full", large: "auto", classes: "striped-contacts" },
30081
30634
  React.createElement(IconContainer$1, null,
30082
30635
  React.createElement(EmailIcon, { colourFill: themeContext.theme_vars.colours.black })),
@@ -30090,69 +30643,6 @@ var ServiceContact = function (_a) {
30090
30643
  contact.phones.map(function (phone, phoneIndex) { return (React.createElement(ContactLink, { href: "tel:".concat(phone.number), key: phoneIndex }, phone.number)); }))); })))))));
30091
30644
  };
30092
30645
 
30093
- const SummaryList$1 = styled.dl`
30094
- display: table;
30095
- width: 100%;
30096
- table-layout: fixed;
30097
- border-collapse: collapse;
30098
- margin: ${(props) => (props.$hasMargin ? props.theme.theme_vars.spacingSizes.medium : 0)} 0;
30099
- `;
30100
-
30101
- const SummaryRow = styled.div`
30102
- border-bottom: 1px solid ${(props) => props.theme.theme_vars.colours.grey};
30103
- margin-bottom: ${(props) => props.theme.theme_vars.spacingSizes.small};
30104
-
30105
- @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.m}) {
30106
- display: table-row;
30107
- }
30108
-
30109
- @media print {
30110
- display: table-row;
30111
- border-bottom: none;
30112
- }
30113
- `;
30114
-
30115
- const SummaryTerm = styled.dt`
30116
- margin-bottom: ${(props) => props.theme.theme_vars.spacingSizes.small};
30117
- font-weight: bold;
30118
-
30119
- @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.m}) {
30120
- display: table-cell;
30121
- padding: ${(props) => props.theme.theme_vars.spacingSizes.small};
30122
- width: 30%;
30123
- vertical-align: middle;
30124
- }
30125
-
30126
- @media print {
30127
- display: table-cell;
30128
- width: 30%;
30129
- }
30130
- `;
30131
-
30132
- const SummaryDetail = styled.dd`
30133
- overflow-wrap: break-word;
30134
- width: 100%;
30135
- margin-bottom: ${(props) => props.theme.theme_vars.spacingSizes.small};
30136
-
30137
- @media screen and (min-width: ${(props) => props.theme.theme_vars.breakpoints.m}) {
30138
- display: table-cell;
30139
- width: 70%;
30140
- padding: ${(props) => props.theme.theme_vars.spacingSizes.small};
30141
- }
30142
-
30143
- @media print {
30144
- display: table-cell;
30145
- width: 70%;
30146
- }
30147
- `;
30148
-
30149
- var SummaryList = function (_a) {
30150
- var terms = _a.terms, _b = _a.hasMargin, hasMargin = _b === void 0 ? true : _b;
30151
- return (React.createElement(SummaryList$1, { "data-testid": "SummaryList", "$hasMargin": hasMargin }, terms.map(function (summaryRow, summaryIndex) { return (React.createElement(SummaryRow, { key: summaryIndex },
30152
- React.createElement(SummaryTerm, null, summaryRow.term),
30153
- React.createElement(SummaryDetail, { dangerouslySetInnerHTML: { __html: sanitizeHtml$1(summaryRow.detail) } }))); })));
30154
- };
30155
-
30156
30646
  /**
30157
30647
  * Group an array of items by the key
30158
30648
  */
@@ -30266,10 +30756,15 @@ var transformDescriptionDetails = function (accreditations, fees, service_areas,
30266
30756
  };
30267
30757
  var transformSnippet = function (description, extractLength) {
30268
30758
  if (extractLength === void 0) { extractLength = 190; }
30269
- return (sanitizeHtml$1(description, {
30759
+ var sanitized = sanitizeHtml$1(description, {
30270
30760
  allowedTags: [],
30271
30761
  allowedAttributes: {},
30272
- }).substr(0, extractLength) + String.fromCharCode(8230));
30762
+ }).trim();
30763
+ if (!sanitized) {
30764
+ return '';
30765
+ }
30766
+ var snippet = sanitized.substr(0, extractLength);
30767
+ return sanitized.length > extractLength ? snippet + String.fromCharCode(8230) : snippet;
30273
30768
  };
30274
30769
  var transformTaxonomies = function (service_taxonomys, taxonomiesToShow) {
30275
30770
  if (taxonomiesToShow === void 0) { taxonomiesToShow = []; }
@@ -30302,11 +30797,14 @@ var transformTaxonomies = function (service_taxonomys, taxonomiesToShow) {
30302
30797
  var transformAge = function (age, ageInMonths) {
30303
30798
  if (ageInMonths === void 0) { ageInMonths = false; }
30304
30799
  if (age === 0) {
30305
- return age;
30800
+ return age.toString();
30306
30801
  }
30307
30802
  if (ageInMonths) {
30308
30803
  if (age > 36) {
30309
- return Math.ceil(age / 12) + ' years';
30804
+ if (age % 12 === 0) {
30805
+ return Math.ceil(age / 12) + ' years';
30806
+ }
30807
+ return Math.floor(age / 12) + ' years and ' + (age % 12) + (age % 12 === 1 ? ' month' : ' months');
30310
30808
  }
30311
30809
  return "".concat(age, " months");
30312
30810
  }
@@ -30319,7 +30817,7 @@ const Container$5 = styled.div`
30319
30817
 
30320
30818
  var DirectoryMap = function (_a) {
30321
30819
  var _b, _c;
30322
- var allowCookies = _a.allowCookies, mapProps = _a.mapProps;
30820
+ var _d = _a.allowCookies, allowCookies = _d === void 0 ? true : _d, mapProps = _a.mapProps;
30323
30821
  var cookiesAccepted = wereCookiesAccepted(allowCookies);
30324
30822
  var apiKey = (_b = process.env.NEXT_PUBLIC_GOOGLE_MAPS_API_KEY) !== null && _b !== void 0 ? _b : '';
30325
30823
  var latLong = mapProps.centre.split(',');
@@ -30423,11 +30921,11 @@ var HeartIcon = function (_a) {
30423
30921
  };
30424
30922
 
30425
30923
  var DirectoryAddToShortList = function (_a) {
30426
- var id = _a.id, name = _a.name, snippet = _a.snippet, email = _a.email, website = _a.website, phone = _a.phone;
30924
+ var id = _a.id, name = _a.name, snippet = _a.snippet, email = _a.email, website = _a.website, phone = _a.phone, addresses = _a.addresses, fees = _a.fees;
30427
30925
  var _b = useDirectoryShortListContext(), toggleFavourites = _b.toggleFavourites, isFavourite = _b.isFavourite;
30428
30926
  var themeContext = useContext(ThemeContext);
30429
30927
  var favourite = isFavourite(id);
30430
- return (React.createElement(AddToShortlist, { onClick: function (e) { return toggleFavourites(id, name, snippet, email, website, phone); }, "data-testid": "DirectoryAddToShortList", "$favourite": favourite },
30928
+ return (React.createElement(AddToShortlist, { onClick: function (e) { return toggleFavourites(id, name, snippet, email, website, phone, addresses, fees); }, "data-testid": "DirectoryAddToShortList", "$favourite": favourite },
30431
30929
  favourite ? (React.createElement(IconDownload$1, { colourFill: themeContext.theme_vars.colours.negative })) : (React.createElement(HeartIcon, { colourFill: themeContext.theme_vars.colours.action })),
30432
30930
  favourite ? React.createElement(React.Fragment, null, "Remove from shortlist") : React.createElement(React.Fragment, null, "Add to shortlist")));
30433
30931
  };
@@ -30496,7 +30994,7 @@ var getIcon = function (profile) {
30496
30994
 
30497
30995
  var DirectoryService = function (_a) {
30498
30996
  var _b, _c, _d, _e;
30499
- var id = _a.id, name = _a.name, accreditations = _a.accreditations, _f = _a.ageInMonths, ageInMonths = _f === void 0 ? false : _f, description = _a.description, descriptionElement = _a.descriptionElement, eligibilitys = _a.eligibilitys, email = _a.email, fees = _a.fees, languages = _a.languages, organization = _a.organization, regular_schedules = _a.regular_schedules, contacts = _a.contacts, service_areas = _a.service_areas, service_at_locations = _a.service_at_locations, service_social_profiles = _a.service_social_profiles, service_taxonomys = _a.service_taxonomys, taxonomiesToShow = _a.taxonomiesToShow, url = _a.url, uploads = _a.uploads, shortListPath = _a.shortListPath;
30997
+ var id = _a.id, name = _a.name, accreditations = _a.accreditations, _f = _a.ageInMonths, ageInMonths = _f === void 0 ? false : _f, description = _a.description, descriptionElement = _a.descriptionElement, eligibilitys = _a.eligibilitys, email = _a.email, fees = _a.fees, languages = _a.languages, organization = _a.organization, regular_schedules = _a.regular_schedules, contacts = _a.contacts, service_areas = _a.service_areas, service_at_locations = _a.service_at_locations, service_social_profiles = _a.service_social_profiles, service_taxonomys = _a.service_taxonomys, taxonomiesToShow = _a.taxonomiesToShow, url = _a.url, websiteUrlTitle = _a.websiteUrlTitle, uploads = _a.uploads, shortListPath = _a.shortListPath;
30500
30998
  var labelLetters = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L'];
30501
30999
  var _g = useState(false), notServer = _g[0], setNotServer = _g[1];
30502
31000
  var themeContext = useContext(ThemeContext);
@@ -30520,7 +31018,9 @@ var DirectoryService = function (_a) {
30520
31018
  " Shortlist (",
30521
31019
  favourites.length,
30522
31020
  ")")),
30523
- React.createElement(DirectoryAddToShortList, { id: id, name: name, snippet: transformSnippet(description, 350), email: email, website: url, phone: (_c = (_b = contacts === null || contacts === void 0 ? void 0 : contacts[0]) === null || _b === void 0 ? void 0 : _b.phones) === null || _c === void 0 ? void 0 : _c.flatMap(function (phone) { return phone.number; }).join(', ') })))))),
31021
+ React.createElement(DirectoryAddToShortList, { id: id, name: name, snippet: transformSnippet(description, 350), email: email, website: url, phone: (_c = (_b = contacts === null || contacts === void 0 ? void 0 : contacts[0]) === null || _b === void 0 ? void 0 : _b.phones) === null || _c === void 0 ? void 0 : _c.flatMap(function (phone) { return phone.number; }).join(', '), addresses: service_at_locations.flatMap(function (location) {
31022
+ return location.physical_addresses;
31023
+ }), fees: fees })))))),
30524
31024
  service_at_locations.filter(function (location) {
30525
31025
  return location.is_visitable != false;
30526
31026
  }).length > 0 && (React.createElement(Column, { small: "full", medium: "full", large: "full", classes: "striped-column" },
@@ -30535,7 +31035,7 @@ var DirectoryService = function (_a) {
30535
31035
  .filter(function (item) { return item !== '' && item !== address.id; })
30536
31036
  .join(' <br />'),
30537
31037
  } }),
30538
- React.createElement(Button$4, { url: "https://google.com/maps/dir//".concat(location.latitude, ",").concat(location.longitude), text: "Get directions" }))); }),
31038
+ location.latitude && location.longitude && (React.createElement(Button$4, { url: "https://google.com/maps/dir//".concat(location.latitude, ",").concat(location.longitude), text: "Get directions" })))); }),
30539
31039
  (location === null || location === void 0 ? void 0 : location.accessibility_for_disabilities.length) > 0 && (React.createElement(React.Fragment, null,
30540
31040
  React.createElement(Heading, { level: 3, text: "Other facilities on site" }),
30541
31041
  React.createElement("ul", null, location.accessibility_for_disabilities.map(function (accessibility) { return (React.createElement("li", { key: accessibility.id }, accessibility.accessibility)); })))))); })),
@@ -30567,7 +31067,7 @@ var DirectoryService = function (_a) {
30567
31067
  React.createElement(MapLink, { href: "https://www.google.com/maps/search/?api=1&query=".concat(service_at_locations[0].latitude, "%2C").concat(service_at_locations[0].longitude) }, "View in Google Maps"))))))),
30568
31068
  (email || url || (contacts === null || contacts === void 0 ? void 0 : contacts.length) > 0) && (React.createElement(Column, { small: "full", medium: "full", large: "full", classes: "striped-column" },
30569
31069
  React.createElement(Heading, { level: 2, text: "How to contact this service" }),
30570
- React.createElement(ServiceContact, { email: email, website: url, contacts: contacts }))),
31070
+ React.createElement(ServiceContact, { email: email, website: url, websiteTitle: websiteUrlTitle, contacts: contacts }))),
30571
31071
  React.createElement(Column, { small: "full", medium: "full", large: "full", classes: "striped-column" },
30572
31072
  React.createElement(Heading, { level: 2, text: "Description" }),
30573
31073
  React.createElement("div", null,
@@ -30580,7 +31080,7 @@ var DirectoryService = function (_a) {
30580
31080
  React.createElement("table", null,
30581
31081
  React.createElement("thead", null,
30582
31082
  React.createElement("tr", null,
30583
- React.createElement("th", { scope: "col" }, "Weekday"),
31083
+ React.createElement("th", { scope: "col" }, "Opening days"),
30584
31084
  React.createElement("th", { scope: "col" }, "Opens"),
30585
31085
  React.createElement("th", { scope: "col" }, "Closes"))),
30586
31086
  React.createElement("tbody", null, regular_schedules === null || regular_schedules === void 0 ? void 0 : regular_schedules.map(function (schedule, scheduleIndex) { return (React.createElement("tr", { key: scheduleIndex },
@@ -30646,7 +31146,7 @@ styled.div`
30646
31146
  color: ${(props) => props.theme.theme_vars.colours.grey_dark};
30647
31147
  `;
30648
31148
 
30649
- const ButtonContainer$1 = styled.div`
31149
+ const ButtonContainer$2 = styled.div`
30650
31150
  display: flex;
30651
31151
  align-items: end;
30652
31152
  padding-bottom: 0;
@@ -30654,23 +31154,49 @@ const ButtonContainer$1 = styled.div`
30654
31154
  `;
30655
31155
 
30656
31156
  const Button$1 = styled.button`
30657
- border: 1px solid ${(props) => props.theme.theme_vars.colours.white};
30658
- background: ${(props) => props.theme.theme_vars.colours.action};
30659
- color: ${(props) => props.theme.theme_vars.colours.white};
30660
- padding: ${(props) => props.theme.theme_vars.spacingSizes.small};
30661
- cursor: pointer;
30662
- border-radius: ${(props) => props.theme.theme_vars.border_radius};
30663
- min-height: 42px;
30664
- margin-right: ${(props) => props.theme.theme_vars.spacingSizes.medium};
31157
+ border: ${(props) => (props.$isWarning ? `3px` : `1px`)} solid
31158
+ ${(props) => (props.$isWarning ? props.theme.theme_vars.colours.negative : props.theme.theme_vars.colours.white)};
31159
+ background: ${(props) =>
31160
+ props.$isWarning ? props.theme.theme_vars.colours.white : props.theme.theme_vars.colours.action};
31161
+ color: ${(props) =>
31162
+ props.$isWarning ? props.theme.theme_vars.colours.negative : props.theme.theme_vars.colours.white};
31163
+ padding: ${(props) => props.theme.theme_vars.spacingSizes.small};
31164
+ cursor: pointer;
31165
+ border-radius: ${(props) => props.theme.theme_vars.border_radius};
31166
+ min-height: 42px;
31167
+ margin-right: ${(props) => props.theme.theme_vars.spacingSizes.medium};
31168
+ font-weight: bold;
30665
31169
 
30666
- &:hover {
30667
- background: ${(props) => props.theme.theme_vars.colours.action_dark};
30668
- }
31170
+ &:hover {
31171
+ background: ${(props) =>
31172
+ props.$isWarning ? props.theme.theme_vars.colours.action_light : props.theme.theme_vars.colours.action_dark};
31173
+ color: ${(props) =>
31174
+ props.$isWarning ? props.theme.theme_vars.colours.action_dark : props.theme.theme_vars.colours.white};
31175
+ text-decoration: underline;
31176
+ text-decoration-style: dotted;
31177
+ }
30669
31178
 
30670
- &:focus {
30671
- outline: none;
30672
- background: ${(props) => props.theme.theme_vars.colours.focus};
30673
- }
31179
+ &:focus {
31180
+ ${(props) => props.theme.linkStylesFocus}
31181
+ }
31182
+
31183
+ &:active {
31184
+ ${(props) => props.theme.linkStylesActive}
31185
+ }
31186
+
31187
+ ${(props) => {
31188
+ if (props.size === 'large') {
31189
+ return `
31190
+ font-size: 16px;
31191
+ padding: 14px 24px;
31192
+ `;
31193
+ }
31194
+ }}
31195
+
31196
+ ${(props) =>
31197
+ props.$isWarning && props.size === 'large' && `
31198
+ padding: 12px 24px;
31199
+ `}
30674
31200
  `;
30675
31201
 
30676
31202
  const ButtonText$1 = styled.span`
@@ -30750,28 +31276,29 @@ const Legend$1 = styled.legend`
30750
31276
  `;
30751
31277
 
30752
31278
  const LegendButton = styled.button`
30753
- position: relative;
30754
- background: none;
30755
- border: none;
30756
- color: ${(props) => props.theme.theme_vars.colours.action};
30757
- width: 100%;
30758
- white-space: normal;
30759
- cursor: pointer;
30760
- text-align: left;
30761
- padding-right: 30px;
30762
- padding-top: ${(props) => props.theme.theme_vars.spacingSizes.small};
30763
- padding-bottom: ${(props) => props.theme.theme_vars.spacingSizes.small};
30764
- ${(props) => props.theme.theme_vars.h4}
30765
- ${(props) => props.theme.linkStyles}
30766
- &:hover {
30767
- ${(props) => props.theme.linkStylesHover}
30768
- }
30769
- &:focus {
30770
- ${(props) => props.theme.linkStylesFocus}
30771
- }
30772
- &:active {
30773
- ${(props) => props.theme.linkStylesActive}
30774
- }
31279
+ position: relative;
31280
+ background: none;
31281
+ border: none;
31282
+ color: ${(props) => props.theme.theme_vars.colours.action};
31283
+ width: 100%;
31284
+ white-space: normal;
31285
+ cursor: pointer;
31286
+ text-align: left;
31287
+ padding-right: 30px;
31288
+ padding-top: ${(props) => props.theme.theme_vars.spacingSizes.small};
31289
+ padding-bottom: ${(props) => props.theme.theme_vars.spacingSizes.small};
31290
+ ${(props) => props.theme.theme_vars.h4}
31291
+ ${(props) => props.theme.linkStyles}
31292
+ &:hover {
31293
+ ${(props) => props.theme.linkStylesHover}
31294
+ }
31295
+ &:focus {
31296
+ ${(props) => props.theme.linkStylesFocus}
31297
+ }
31298
+ &:active {
31299
+ ${(props) => props.theme.linkStylesActive}
31300
+ }
31301
+ margin: 0;
30775
31302
  `;
30776
31303
 
30777
31304
  const AccordionIcon = styled.span`
@@ -30880,6 +31407,14 @@ const MapToggle = styled.button`
30880
31407
  &:active {
30881
31408
  ${(props) => props.theme.linkStylesActive}
30882
31409
  }
31410
+ ${(props) => {
31411
+ if (props.size === 'large') {
31412
+ return `
31413
+ font-size: 16px;
31414
+ padding: 14px 24px;
31415
+ `;
31416
+ }
31417
+ }}
30883
31418
  `;
30884
31419
 
30885
31420
  const Favourites = styled.a`
@@ -31085,24 +31620,24 @@ var RadioCheckboxInput = function (_a) {
31085
31620
  };
31086
31621
 
31087
31622
  var DirectoryServiceList = function (_a) {
31088
- var directoryPath = _a.directoryPath, shortListPath = _a.shortListPath, services = _a.services, _b = _a.search, search = _b === void 0 ? '' : _b, setSearch = _a.setSearch, _c = _a.postcode, postcode = _c === void 0 ? '' : _c, setPostcode = _a.setPostcode, _d = _a.totalResults, totalResults = _d === void 0 ? 0 : _d, _e = _a.pageNumber, pageNumber = _e === void 0 ? 1 : _e, setPageNumber = _a.setPageNumber, _f = _a.perPage, perPage = _f === void 0 ? 5 : _f, _g = _a.extractLength, extractLength = _g === void 0 ? 300 : _g, _h = _a.categories, categories = _h === void 0 ? [] : _h, setCategories = _a.setCategories, _j = _a.minimumAge, minimumAge = _j === void 0 ? undefined : _j, setMinimumAge = _a.setMinimumAge, _k = _a.maximumAge, maximumAge = _k === void 0 ? undefined : _k, setMaximumAge = _a.setMaximumAge, _l = _a.mapCenter, mapCenter = _l === void 0 ? '52.23555414368587,-0.8957390701320571' : _l, _m = _a.mapZoom, mapZoom = _m === void 0 ? 9 : _m, _o = _a.isLoading, isLoading = _o === void 0 ? false : _o, _p = _a.ageInMonths, ageInMonths = _p === void 0 ? false : _p, _q = _a.hasDocuments, hasDocuments = _q === void 0 ? false : _q;
31089
- var _r = useLocalStorage("".concat(directoryPath.replace(/\//g, ''), "-accordion"), []), accordions = _r[0], setAccordions = _r[1];
31090
- var _s = useLocalStorage("".concat(directoryPath.replace(/\//g, ''), "-accordion-all"), true), openAll = _s[0], setOpenAll = _s[1];
31091
- var _t = useLocalStorage("".concat(directoryPath.replace(/\//g, ''), "-show-map"), false), showMap = _t[0], setShowMap = _t[1];
31092
- var _u = useState(false), showFilters = _u[0], setShowFilters = _u[1];
31093
- var _v = useDirectoryShortListContext(), _w = _v.favourites, favourites = _w.favourites; _w.setFavourites; _v.toggleFavourites; _v.isFavourite;
31094
- var _x = useState(false), notServer = _x[0], setNotServer = _x[1];
31095
- var _y = useState(search), searchTerm = _y[0], setSearchTerm = _y[1];
31096
- var _z = useState(postcode), postcodeSearch = _z[0], setPostcodeSearch = _z[1];
31623
+ var directoryPath = _a.directoryPath, shortListPath = _a.shortListPath, services = _a.services, _b = _a.search, search = _b === void 0 ? '' : _b, setSearch = _a.setSearch, _c = _a.proximity, proximity = _c === void 0 ? 2 : _c, _d = _a.showPostcodeSearch, showPostcodeSearch = _d === void 0 ? true : _d, _e = _a.postcode, postcode = _e === void 0 ? '' : _e, setPostcode = _a.setPostcode, _f = _a.totalResults, totalResults = _f === void 0 ? 0 : _f, _g = _a.pageNumber, pageNumber = _g === void 0 ? 1 : _g, setPageNumber = _a.setPageNumber, _h = _a.perPage, perPage = _h === void 0 ? 5 : _h, _j = _a.extractLength, extractLength = _j === void 0 ? 300 : _j, _k = _a.categories, categories = _k === void 0 ? [] : _k, setCategories = _a.setCategories, _l = _a.minimumAge, minimumAge = _l === void 0 ? undefined : _l, setMinimumAge = _a.setMinimumAge, _m = _a.maximumAge, maximumAge = _m === void 0 ? undefined : _m, setMaximumAge = _a.setMaximumAge, _o = _a.mapCenter, mapCenter = _o === void 0 ? '52.40410666556486,-0.7237065995821512' : _o, _p = _a.mapZoom, mapZoom = _p === void 0 ? 9 : _p, _q = _a.isLoading, isLoading = _q === void 0 ? false : _q, _r = _a.ageInMonths, ageInMonths = _r === void 0 ? false : _r, _s = _a.hasDocuments, hasDocuments = _s === void 0 ? false : _s, _t = _a.isError, isError = _t === void 0 ? false : _t;
31624
+ var _u = useLocalStorage("".concat(directoryPath.replace(/\//g, ''), "-accordion"), []), accordions = _u[0], setAccordions = _u[1];
31625
+ var _v = useLocalStorage("".concat(directoryPath.replace(/\//g, ''), "-accordion-all"), true), openAll = _v[0], setOpenAll = _v[1];
31626
+ var _w = useLocalStorage("".concat(directoryPath.replace(/\//g, ''), "-show-map"), false), showMap = _w[0], setShowMap = _w[1];
31627
+ var _x = useState(false), showFilters = _x[0], setShowFilters = _x[1];
31628
+ var _y = useDirectoryShortListContext(), _z = _y.favourites, favourites = _z.favourites; _z.setFavourites; _y.toggleFavourites; _y.isFavourite;
31629
+ var _0 = useState(false), notServer = _0[0], setNotServer = _0[1];
31630
+ var _1 = useState(search), searchTerm = _1[0], setSearchTerm = _1[1];
31631
+ var _2 = useState(postcode), postcodeSearch = _2[0], setPostcodeSearch = _2[1];
31097
31632
  var themeContext = useContext(ThemeContext);
31098
- var _0 = useState(false), filtersActive = _0[0], setFiltersActive = _0[1];
31633
+ var _3 = useState(false), filtersActive = _3[0], setFiltersActive = _3[1];
31099
31634
  useEffect(function () {
31100
31635
  setNotServer(true);
31101
31636
  setFiltersActive(hasActiveFilters());
31102
31637
  }, []);
31103
31638
  useEffect(function () {
31104
31639
  setFiltersActive(hasActiveFilters());
31105
- }, [minimumAge, maximumAge, categories]);
31640
+ }, [minimumAge, maximumAge, categories, search, postcode]);
31106
31641
  if (accordions.length === 0) {
31107
31642
  var tempAccordions_1 = [];
31108
31643
  categories === null || categories === void 0 ? void 0 : categories.forEach(function () {
@@ -31180,7 +31715,7 @@ var DirectoryServiceList = function (_a) {
31180
31715
  lat: parseFloat((_a = service.service_at_locations[0]) === null || _a === void 0 ? void 0 : _a.latitude),
31181
31716
  lng: parseFloat((_b = service.service_at_locations[0]) === null || _b === void 0 ? void 0 : _b.longitude),
31182
31717
  label: labelLetters[index],
31183
- title: "<a href=\"".concat(directoryPath, "/").concat(service.id, "\">").concat(service.name, "</a>"),
31718
+ title: "<a href=".concat(service.id, ">").concat(service.name, "</a>"),
31184
31719
  };
31185
31720
  }),
31186
31721
  };
@@ -31197,7 +31732,9 @@ var DirectoryServiceList = function (_a) {
31197
31732
  }
31198
31733
  };
31199
31734
  var hasActiveFilters = function () {
31200
- return (maximumAge !== '' ||
31735
+ return (search !== '' ||
31736
+ postcode !== '' ||
31737
+ maximumAge !== '' ||
31201
31738
  minimumAge !== '' ||
31202
31739
  categories.some(function (category) {
31203
31740
  return category.options.some(function (option) {
@@ -31213,21 +31750,23 @@ var DirectoryServiceList = function (_a) {
31213
31750
  React.createElement(Row$1, null,
31214
31751
  React.createElement(Column, { small: "full", medium: "one-half", large: "one-third" },
31215
31752
  React.createElement(Label$1, { htmlFor: "directorySearch" }, "What are you looking for?"),
31216
- React.createElement(HintText, { text: "Enter a search word or phrase" }),
31753
+ React.createElement(HintText, { text: "Enter the name of a specific organisation" }),
31217
31754
  React.createElement(Input, { name: "directorySearch", type: "text", defaultValue: searchTerm, id: "directorySearch", onChange: function (e) {
31218
31755
  setSearchTerm(e.target.value);
31219
31756
  } })),
31220
- React.createElement(Column, { small: "full", medium: "one-half", large: "one-third" },
31757
+ showPostcodeSearch && (React.createElement(Column, { small: "full", medium: "one-half", large: "one-third" },
31221
31758
  React.createElement(Label$1, { htmlFor: "postcode" }, "Postcode (optional)"),
31222
- React.createElement(HintText, { text: "Enter a postcode" }),
31223
- React.createElement(Input, { name: "postcode", type: "text", defaultValue: postcodeSearch, id: "postcode", onChange: function (e) { return setPostcodeSearch(e.target.value); }, autocomplete: "postal-code" })),
31759
+ React.createElement(HintText, { text: "Enter a postcode to see results within ".concat(proximity, " miles") }),
31760
+ React.createElement(Input, { name: "postcode", type: "text", defaultValue: postcodeSearch, id: "postcode", onChange: function (e) { return setPostcodeSearch(e.target.value); }, autocomplete: "postal-code" }))),
31224
31761
  React.createElement(Column, { small: "full", medium: "one-half", large: "one-third" },
31225
- React.createElement(ButtonContainer$1, null,
31226
- React.createElement(Button$1, { onClick: submitSearch, type: "submit" },
31762
+ React.createElement(ButtonContainer$2, null,
31763
+ React.createElement(Button$1, { size: "large", onClick: submitSearch, type: "submit" },
31227
31764
  React.createElement(ButtonText$1, null, "Search"),
31228
- React.createElement(IconDownload, { colourFill: "#fff" })))),
31765
+ React.createElement(IconDownload, { colourFill: "#fff" })),
31766
+ filtersActive && (React.createElement(Button$1, { size: "large", onClick: clearSearch, type: "button", "$isWarning": true },
31767
+ React.createElement(ButtonText$1, null, "Clear search"))))),
31229
31768
  hasDocuments && (React.createElement(Column, { small: "full", medium: "full", large: "full" },
31230
- React.createElement(Button$4, { url: "".concat(directoryPath, "/documents?search=").concat(searchTerm), text: "View documents and resources", primary: false }))))))),
31769
+ React.createElement(Button$4, { url: "".concat(directoryPath, "/documents?search=").concat(searchTerm), text: "View documents and resources", primary: false, size: "large" }))))))),
31231
31770
  React.createElement(Column, { small: "full", medium: "one-third", large: "one-third" },
31232
31771
  React.createElement(FilterToggle, { type: "button", onClick: function (e) { return setShowFilters(!showFilters); } }, showFilters ? "Hide Filters" : "Show Filters"),
31233
31772
  React.createElement(FilterContainer, { "$showFilters": showFilters },
@@ -31263,14 +31802,16 @@ var DirectoryServiceList = function (_a) {
31263
31802
  React.createElement(Legend$1, null,
31264
31803
  React.createElement(LegendButton, { onClick: function (e) { return toggleAccordion(categoryIndex + 1); }, type: "button" },
31265
31804
  category.label,
31266
- React.createElement(AccordionIcon, { isOpen: accordions[categoryIndex + 1] }))),
31805
+ React.createElement(AccordionIcon, { "$isOpen": accordions[categoryIndex + 1] }))),
31267
31806
  React.createElement(Accordion, { "$isOpen": accordions[categoryIndex + 1] },
31268
31807
  React.createElement(ClearFilter$1, null,
31269
31808
  React.createElement(TextLink$1, { onClick: function (e) { return clearCategory(categoryIndex); } }, "Clear filter")),
31270
31809
  category.options.map(function (taxonomy) { return (React.createElement(Category$2, { key: taxonomy.id },
31271
31810
  React.createElement(RadioCheckboxInput, { name: taxonomy.vocabulary, value: taxonomy.id, label: taxonomy.name, singleSelection: category.singleSelection, checked: taxonomy.checked, onChange: function (e) { return optionChecked(e, categoryIndex, category.singleSelection); } }))); }))))); })))))),
31272
31811
  React.createElement(Column, { small: "full", medium: "two-thirds", large: "two-thirds" },
31273
- React.createElement(Row$1, null, isLoading ? (React.createElement(LoadingContainer$1, null,
31812
+ React.createElement(Row$1, null, isError ? (React.createElement(Column, { small: "full", medium: "full", large: "full" },
31813
+ React.createElement(AlertBannerService, null,
31814
+ React.createElement("p", null, "Sorry, there was a problem fetching results. Please try again later.")))) : isLoading ? (React.createElement(LoadingContainer$1, null,
31274
31815
  React.createElement(LoadingSpinner, null),
31275
31816
  React.createElement("p", null, "Loading"))) : (React.createElement(React.Fragment, null,
31276
31817
  React.createElement(Column, { small: "full", medium: "full", large: "full" },
@@ -31282,7 +31823,7 @@ var DirectoryServiceList = function (_a) {
31282
31823
  " out of ",
31283
31824
  totalResults.toLocaleString())) : (React.createElement(ResultInfo$1, null, "No results found")),
31284
31825
  React.createElement(FavouritesContainer, null,
31285
- (services === null || services === void 0 ? void 0 : services.length) > 0 && (React.createElement(MapToggle, { type: "button", onClick: function (e) { return setShowMap(!showMap); } }, showMap ? "Hide Map" : "Show Map")),
31826
+ (services === null || services === void 0 ? void 0 : services.length) > 0 && (React.createElement(MapToggle, { type: "button", size: "large", onClick: function (e) { return setShowMap(!showMap); } }, showMap ? "Hide Map" : "Show Map")),
31286
31827
  React.createElement(Favourites, { href: shortListPath },
31287
31828
  React.createElement(HeartIcon, { colourFill: themeContext.theme_vars.colours.action }),
31288
31829
  " Shortlist (",
@@ -31292,14 +31833,14 @@ var DirectoryServiceList = function (_a) {
31292
31833
  React.createElement(Pagination, { currentPage: pageNumber, totalResults: totalResults, resultsPerPage: perPage, postTo: directoryPath, buttonClickOverride: setPageNumber })),
31293
31834
  React.createElement(Column, { small: "full", medium: "full", large: "full" }, notServer && React.createElement(React.Fragment, null, (services === null || services === void 0 ? void 0 : services.length) > 0 && showMap && React.createElement(DirectoryMap, { mapProps: mapProps }))),
31294
31835
  services.map(function (service, index) {
31295
- var _a, _b, _c, _d, _e, _f;
31836
+ var _a, _b, _c, _d, _e, _f, _g;
31296
31837
  var snippet = transformSnippet(service.description, extractLength);
31297
31838
  return (React.createElement(Column, { small: "full", medium: "full", large: "full", key: service.id },
31298
31839
  React.createElement(ServiceContainer, { "$resultNumber": index },
31299
31840
  React.createElement(Row$1, null,
31300
31841
  React.createElement(Column, { small: "full", medium: "full", large: "full" },
31301
31842
  React.createElement(ServiceHeader, null,
31302
- React.createElement(ServiceLink$1, { href: "".concat(directoryPath, "/").concat(service.id) }, service.name),
31843
+ React.createElement(ServiceLink$1, { href: "".concat(service.id) }, service.name),
31303
31844
  showMap && (React.createElement(MarkerContainer, null,
31304
31845
  React.createElement("span", null, labelLetters[index]),
31305
31846
  React.createElement(PinIcon, { colourFill: themeContext.theme_vars.colours.action_dark }))))),
@@ -31315,7 +31856,9 @@ var DirectoryServiceList = function (_a) {
31315
31856
  ' ',
31316
31857
  transformAge(eligibility.maximum_age, ageInMonths))); })))),
31317
31858
  React.createElement(Column, { small: "full", medium: "full", large: "full" },
31318
- React.createElement(DirectoryAddToShortList, { id: service.id, name: service.name, snippet: snippet, email: service.email, website: service.url, phone: (_f = (_e = (_d = service.contacts) === null || _d === void 0 ? void 0 : _d[0]) === null || _e === void 0 ? void 0 : _e.phones) === null || _f === void 0 ? void 0 : _f.flatMap(function (phone) { return phone.number; }).join(', ') }))))));
31859
+ React.createElement(DirectoryAddToShortList, { id: service.id, name: service.name, snippet: snippet, email: service.email, website: service.url, phone: (_f = (_e = (_d = service.contacts) === null || _d === void 0 ? void 0 : _d[0]) === null || _e === void 0 ? void 0 : _e.phones) === null || _f === void 0 ? void 0 : _f.flatMap(function (phone) { return phone.number; }).join(', '), addresses: (_g = service.service_at_locations) === null || _g === void 0 ? void 0 : _g.flatMap(function (location) {
31860
+ return location.physical_addresses;
31861
+ }), fees: service.fees }))))));
31319
31862
  }),
31320
31863
  React.createElement(Column, { small: "full", medium: "full", large: "full" },
31321
31864
  React.createElement(Pagination, { currentPage: pageNumber, totalResults: totalResults, resultsPerPage: perPage, postTo: directoryPath, buttonClickOverride: setPageNumber })))))))));
@@ -31323,71 +31866,96 @@ var DirectoryServiceList = function (_a) {
31323
31866
 
31324
31867
  const Container$1 = styled.div`
31325
31868
  display: block;
31869
+
31870
+ @media print {
31871
+ font-size: ${(props) => props.theme.theme_vars.fontSizes.extra_small} !important;
31872
+ [data-testid='Column'] {
31873
+ padding: ${(props) => props.theme.theme_vars.spacingSizes.extra_small} !important;
31874
+ }
31875
+
31876
+ .favourite-outer:nth-of-type(2n + 1) {
31877
+ page-break-after: always;
31878
+ }
31879
+
31880
+ .favourite-outer:last-of-type {
31881
+ page-break-after: avoid !important;
31882
+ }
31883
+ }
31326
31884
  `;
31327
31885
 
31328
31886
  const ServiceLink = styled.a`
31329
- display: block;
31330
- margin-bottom: ${(props) => props.theme.theme_vars.spacingSizes.small};
31331
- ${(props) => props.theme.theme_vars.h4}
31332
- ${(props) => props.theme.linkStyles}
31333
- &:hover {
31334
- ${(props) => props.theme.linkStylesHover}
31335
- }
31336
- &:focus {
31337
- ${(props) => props.theme.linkStylesFocus}
31338
- }
31339
- &:active {
31340
- ${(props) => props.theme.linkStylesActive}
31341
- }
31887
+ display: block;
31888
+ margin-bottom: ${(props) => props.theme.theme_vars.spacingSizes.small};
31889
+ ${(props) => props.theme.theme_vars.h4}
31890
+ ${(props) => props.theme.linkStyles}
31891
+ &:hover {
31892
+ ${(props) => props.theme.linkStylesHover}
31893
+ }
31894
+ &:focus {
31895
+ ${(props) => props.theme.linkStylesFocus}
31896
+ }
31897
+ &:active {
31898
+ ${(props) => props.theme.linkStylesActive}
31899
+ }
31342
31900
 
31343
- @media print {
31344
- color: ${(props) => props.theme.theme_vars.colours.black} !important;
31345
- text-decoration: none !important;
31346
- }
31901
+ @media print {
31902
+ color: ${(props) => props.theme.theme_vars.colours.black} !important;
31903
+ text-decoration: none !important;
31904
+ font-size: ${(props) => props.theme.theme_vars.fontSizes.small};
31905
+ margin-bottom: 0;
31906
+ }
31347
31907
  `;
31348
31908
 
31349
31909
  const PrintLink = styled.div`
31350
- p {
31351
- display: none;
31352
- }
31353
-
31354
- @media print {
31355
31910
  p {
31356
- display: block;
31911
+ display: none;
31357
31912
  }
31913
+
31914
+ @media print {
31915
+ p {
31916
+ display: none;
31917
+ margin-bottom: 0 !important;
31918
+ }
31919
+ }
31920
+ `;
31921
+
31922
+ const SnippetContainer = styled.div`
31923
+ @media print {
31924
+ display: flex;
31925
+ flex-wrap: nowrap;
31358
31926
  }
31359
31927
  `;
31360
31928
 
31361
31929
  const QRCodeContainer = styled.div`
31362
- max-width: 80px;
31363
- margin: ${(props) => props.theme.theme_vars.spacingSizes.medium} 0;
31364
- display: none;
31365
- float: right;
31930
+ max-width: 80px;
31931
+ display: none;
31366
31932
 
31367
- @media print {
31368
- display: block;
31369
- }
31933
+ @media print {
31934
+ display: block;
31935
+ margin-left: ${(props) => props.theme.theme_vars.spacingSizes.small};
31936
+ }
31370
31937
  `;
31371
31938
 
31372
31939
  const FavouriteContainer = styled.div`
31373
- background: ${(props) =>
31374
- props.theme.cardinal_name === 'north'
31375
- ? props.theme.theme_vars.colours.white
31376
- : props.theme.theme_vars.colours.grey_light};
31377
- box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.08);
31378
- transition: box-shadow 0.3s ease;
31379
- border-bottom: 5px solid ${(props) => props.theme.theme_vars.colours.action};
31380
- border-radius: ${(props) => props.theme.theme_vars.border_radius};
31381
- padding: ${(props) => props.theme.theme_vars.spacingSizes.medium};
31940
+ background: ${(props) =>
31941
+ props.theme.cardinal_name === 'north'
31942
+ ? props.theme.theme_vars.colours.white
31943
+ : props.theme.theme_vars.colours.grey_light};
31944
+ box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.08);
31945
+ transition: box-shadow 0.3s ease;
31946
+ border-bottom: 5px solid ${(props) => props.theme.theme_vars.colours.action};
31947
+ border-radius: ${(props) => props.theme.theme_vars.border_radius};
31948
+ padding: ${(props) => props.theme.theme_vars.spacingSizes.medium};
31382
31949
 
31383
- @media print {
31384
- box-shadow: none;
31385
- border: 1px solid ${(props) => props.theme.theme_vars.colours.grey};
31386
- background: none;
31387
- }
31950
+ @media print {
31951
+ box-shadow: none;
31952
+ border: 1px solid ${(props) => props.theme.theme_vars.colours.grey};
31953
+ background: none;
31954
+ padding: 0 ${(props) => props.theme.theme_vars.spacingSizes.small};
31955
+ }
31388
31956
  `;
31389
31957
 
31390
- const PrintContainer = styled.div`
31958
+ const ButtonContainer$1 = styled.div`
31391
31959
  display: flex;
31392
31960
  justify-content: flex-end;
31393
31961
 
@@ -31396,7 +31964,7 @@ const PrintContainer = styled.div`
31396
31964
  }
31397
31965
  `;
31398
31966
 
31399
- const PrintButton = styled.button`
31967
+ const ActionButton = styled.button`
31400
31968
  border: 2px solid ${(props) => props.theme.theme_vars.colours.action};
31401
31969
  border-radius: ${(props) => props.theme.theme_vars.border_radius};
31402
31970
  background: ${(props) => props.theme.theme_vars.colours.action};
@@ -31408,6 +31976,7 @@ const PrintButton = styled.button`
31408
31976
  flex-direction: row;
31409
31977
  justify-content: flex-start;
31410
31978
  align-items: center;
31979
+ margin-left: ${(props) => props.theme.theme_vars.spacingSizes.medium};
31411
31980
  &:hover {
31412
31981
  ${(props) => props.theme.linkStylesHover}
31413
31982
  color: ${(props) => props.theme.theme_vars.colours.white};
@@ -31430,6 +31999,53 @@ const AddContainer = styled.div`
31430
31999
  }
31431
32000
  `;
31432
32001
 
32002
+ const SubTitle = styled.p`
32003
+ font-weight: bold;
32004
+ margin-top: ${(props) => props.theme.theme_vars.spacingSizes.medium};
32005
+ `;
32006
+
32007
+ const ClearShortlistButton = styled.button`
32008
+ border: 1px solid ${(props) => props.theme.theme_vars.colours.negative};
32009
+ background: ${(props) => props.theme.theme_vars.colours.white};
32010
+ color: ${(props) => props.theme.theme_vars.colours.negative};
32011
+ padding: ${(props) => props.theme.theme_vars.spacingSizes.small};
32012
+ cursor: pointer;
32013
+ border-radius: ${(props) => props.theme.theme_vars.border_radius};
32014
+ min-height: 42px;
32015
+ font-weight: bold;
32016
+
32017
+ &:hover {
32018
+ background: ${(props) => props.theme.theme_vars.colours.action_light};
32019
+ color: ${(props) => props.theme.theme_vars.colours.action_dark};
32020
+ text-decoration: underline;
32021
+ text-decoration-style: dotted;
32022
+ }
32023
+
32024
+ &:focus {
32025
+ ${(props) => props.theme.linkStylesFocus}
32026
+ }
32027
+
32028
+ &:active {
32029
+ ${(props) => props.theme.linkStylesActive}
32030
+ }
32031
+ `;
32032
+
32033
+ const AddressContainer = styled.div`
32034
+ display: block;
32035
+
32036
+ @media print {
32037
+ display: none;
32038
+ }
32039
+ `;
32040
+
32041
+ const PrintAddress = styled.div`
32042
+ display: none;
32043
+
32044
+ @media print {
32045
+ display: block;
32046
+ }
32047
+ `;
32048
+
31433
32049
  var lib = {};
31434
32050
 
31435
32051
  var mode$1 = {
@@ -32789,32 +33405,82 @@ QRCode.defaultProps = defaultProps;
32789
33405
  var _default = lib.default = QRCode;
32790
33406
 
32791
33407
  var DirectoryShortList = function (_a) {
32792
- var directoryPath = _a.directoryPath;
32793
- var favourites = useDirectoryShortListContext().favourites.favourites;
32794
- var _b = useState(false), notServer = _b[0], setNotServer = _b[1];
33408
+ _a.directoryPath;
33409
+ var _b = useDirectoryShortListContext(), favourites = _b.favourites.favourites, clearShortlist = _b.clearShortlist;
33410
+ var _c = useState(false), notServer = _c[0], setNotServer = _c[1];
32795
33411
  useEffect(function () {
32796
33412
  setNotServer(true);
32797
33413
  }, []);
33414
+ var confirmClear = function () {
33415
+ if (window.confirm('Are you sure you want to clear your shortlist?')) {
33416
+ clearShortlist();
33417
+ }
33418
+ };
33419
+ var formatAddress = function (address) {
33420
+ return Object.values(address)
33421
+ .filter(function (item) { return item !== '' && item !== address.id && item !== address.country; })
33422
+ .join(', ');
33423
+ };
33424
+ var copyToClipboard = function () { return __awaiter(void 0, void 0, void 0, function () {
33425
+ var data;
33426
+ return __generator(this, function (_b) {
33427
+ switch (_b.label) {
33428
+ case 0:
33429
+ data = favourites.map(function (favourite) {
33430
+ var _a, _b, _c, _d;
33431
+ var address = favourite.addresses.length > 0 ? formatAddress(favourite.addresses[0]) : '';
33432
+ return "\nName: ".concat(favourite.name, "\nLink: ").concat(favourite.id, "\nAddress: ").concat(address, "\nEmail: ").concat((_a = favourite.email) !== null && _a !== void 0 ? _a : '', "\nWebsite: ").concat((_b = favourite.website) !== null && _b !== void 0 ? _b : '', "\nTelephone: ").concat((_c = favourite.phone) !== null && _c !== void 0 ? _c : '', "\nAbout: ").concat((_d = favourite.snippet.replace(/(\r\n|\n|\r)/gm, '').replace(/\s+/g, ' ')) !== null && _d !== void 0 ? _d : '', "\n\n ");
33433
+ });
33434
+ _b.label = 1;
33435
+ case 1:
33436
+ _b.trys.push([1, 3, , 4]);
33437
+ return [4 /*yield*/, navigator.clipboard.writeText(data.join('')).then(function () {
33438
+ window.alert('Copied to clipboard');
33439
+ })];
33440
+ case 2:
33441
+ _b.sent();
33442
+ return [3 /*break*/, 4];
33443
+ case 3:
33444
+ _b.sent();
33445
+ window.alert('Unable to copy');
33446
+ return [3 /*break*/, 4];
33447
+ case 4: return [2 /*return*/];
33448
+ }
33449
+ });
33450
+ }); };
32798
33451
  return (React.createElement(Container$1, { "data-testid": "DirectoryShortList" }, notServer && (React.createElement(Row$1, null, favourites.length > 0 ? (React.createElement(React.Fragment, null,
32799
33452
  React.createElement(Column, { small: "full", medium: "full", large: "full" },
32800
- React.createElement(PrintContainer, null,
32801
- React.createElement(PrintButton, { onClick: function () { return window.print(); } }, "Print Shortlist"))),
32802
- favourites.map(function (favourite) { return (React.createElement(Column, { key: favourite.id, small: "full", medium: "full", large: "full" },
32803
- React.createElement(FavouriteContainer, null,
32804
- React.createElement(Row$1, null,
32805
- React.createElement(Column, { small: "full", medium: "full", large: "full" },
32806
- React.createElement(QRCodeContainer, null,
32807
- React.createElement(_default, { value: "".concat(directoryPath, "/").concat(favourite.id), size: 256, style: { height: 'auto', maxWidth: '100%', width: '100%' }, viewBox: "0 0 256 256" })),
32808
- React.createElement(ServiceLink, { href: "".concat(directoryPath, "/").concat(favourite.id) }, favourite.name),
32809
- React.createElement(PrintLink, null,
32810
- React.createElement("p", null, "".concat(directoryPath, "/").concat(favourite.id)))),
32811
- React.createElement(Column, { small: "full", medium: "full", large: "one-half" },
32812
- React.createElement("div", null, favourite.snippet)),
32813
- React.createElement(Column, { small: "full", medium: "full", large: "one-half" },
32814
- React.createElement(SummaryList, { terms: transformService(favourite.email, favourite.website, favourite.phone), hasMargin: false })),
32815
- React.createElement(Column, { small: "full", medium: "full", large: "full" },
32816
- React.createElement(AddContainer, null,
32817
- React.createElement(DirectoryAddToShortList, { id: favourite.id, name: favourite.name, snippet: favourite.snippet, email: favourite.email, website: favourite.website, phone: favourite.phone }))))))); }))) : (React.createElement(Column, { small: "full", medium: "full", large: "full" },
33453
+ React.createElement(ButtonContainer$1, null,
33454
+ React.createElement(ClearShortlistButton, { onClick: confirmClear }, "Clear Shortlist"),
33455
+ React.createElement(ActionButton, { onClick: copyToClipboard }, "Copy To Clipboard"),
33456
+ React.createElement(ActionButton, { onClick: function () { return window.print(); } }, "Print Shortlist"))),
33457
+ favourites.map(function (favourite) {
33458
+ var _a, _b;
33459
+ return (React.createElement(Column, { key: favourite.id, small: "full", medium: "full", large: "full", classes: "favourite-outer" },
33460
+ React.createElement(FavouriteContainer, null,
33461
+ React.createElement(Row$1, null,
33462
+ React.createElement(Column, { small: "full", medium: "full", large: "full" },
33463
+ React.createElement(ServiceLink, { href: "".concat(favourite.id) }, favourite.name),
33464
+ React.createElement(PrintLink, null,
33465
+ React.createElement("p", null, "".concat(favourite.id)))),
33466
+ React.createElement(Column, { small: "full", medium: "full", large: "one-half" },
33467
+ React.createElement(SnippetContainer, null,
33468
+ React.createElement("div", null, favourite.snippet),
33469
+ React.createElement(QRCodeContainer, null,
33470
+ React.createElement(_default, { value: "".concat(favourite.id), size: 256, style: { height: 'auto', maxWidth: '100%', width: '100%' }, viewBox: "0 0 256 256" }))),
33471
+ ((_a = favourite.addresses) === null || _a === void 0 ? void 0 : _a.length) > 0 && (React.createElement(React.Fragment, null,
33472
+ React.createElement(AddressContainer, null,
33473
+ React.createElement(SubTitle, null, "Address"),
33474
+ ((_b = favourite.addresses) === null || _b === void 0 ? void 0 : _b.length) === 1 ? (React.createElement("p", null, formatAddress(favourite.addresses[0]))) : (React.createElement("ul", null, favourite.addresses.map(function (address) { return (React.createElement("li", { key: address.id }, formatAddress(address))); })))),
33475
+ React.createElement(PrintAddress, null,
33476
+ React.createElement(SummaryList, { terms: [{ term: 'Address', detail: formatAddress(favourite.addresses[0]) }], hasMargin: false }))))),
33477
+ React.createElement(Column, { small: "full", medium: "full", large: "one-half" },
33478
+ React.createElement(SummaryList, { terms: transformService(favourite.email, favourite.website, favourite.phone), hasMargin: false }),
33479
+ favourite.fees && (React.createElement(SummaryList, { terms: [{ term: 'Cost', detail: favourite.fees }], hasMargin: false }))),
33480
+ React.createElement(Column, { small: "full", medium: "full", large: "full" },
33481
+ React.createElement(AddContainer, null,
33482
+ React.createElement(DirectoryAddToShortList, { id: favourite.id, name: favourite.name, snippet: favourite.snippet, email: favourite.email, website: favourite.website, phone: favourite.phone, addresses: favourite.addresses })))))));
33483
+ }))) : (React.createElement(Column, { small: "full", medium: "full", large: "full" },
32818
33484
  React.createElement(FavouriteContainer, null,
32819
33485
  React.createElement("p", null, "No items in the shortlist"))))))));
32820
33486
  };
@@ -32949,8 +33615,8 @@ const LoadingContainer = styled.div`
32949
33615
  `;
32950
33616
 
32951
33617
  var DirectoryDocumentList = function (_a) {
32952
- var directoryPath = _a.directoryPath, documents = _a.documents, _b = _a.search, search = _b === void 0 ? '' : _b, setSearch = _a.setSearch, _c = _a.totalResults, totalResults = _c === void 0 ? 0 : _c, _d = _a.pageNumber, pageNumber = _d === void 0 ? 1 : _d, setPageNumber = _a.setPageNumber, _e = _a.perPage, perPage = _e === void 0 ? 10 : _e, categories = _a.categories, setCategories = _a.setCategories, _f = _a.isLoading, isLoading = _f === void 0 ? false : _f;
32953
- var _g = useState(search), searchTerm = _g[0], setSearchTerm = _g[1];
33618
+ var directoryPath = _a.directoryPath, documents = _a.documents, _b = _a.search, search = _b === void 0 ? '' : _b, setSearch = _a.setSearch, _c = _a.totalResults, totalResults = _c === void 0 ? 0 : _c, _d = _a.pageNumber, pageNumber = _d === void 0 ? 1 : _d, setPageNumber = _a.setPageNumber, _e = _a.perPage, perPage = _e === void 0 ? 10 : _e, categories = _a.categories, setCategories = _a.setCategories, _f = _a.isLoading, isLoading = _f === void 0 ? false : _f, _g = _a.isError, isError = _g === void 0 ? false : _g;
33619
+ var _h = useState(search), searchTerm = _h[0], setSearchTerm = _h[1];
32954
33620
  var submitSearch = function (e) {
32955
33621
  e.preventDefault();
32956
33622
  setSearch(searchTerm);
@@ -32989,7 +33655,7 @@ var DirectoryDocumentList = function (_a) {
32989
33655
  React.createElement(Row$1, null,
32990
33656
  React.createElement(Column, { small: "full", medium: "one-half", large: "one-third" },
32991
33657
  React.createElement(Label, { htmlFor: "directorySearch" }, "What are you looking for?"),
32992
- React.createElement(HintText, { text: "Enter a search word or phrase" }),
33658
+ React.createElement(HintText, { text: "Enter the name of a specific organisation" }),
32993
33659
  React.createElement(Input, { name: "directorySearch", type: "text", defaultValue: searchTerm, id: "directorySearch", onChange: function (e) {
32994
33660
  setSearchTerm(e.target.value);
32995
33661
  } })),
@@ -33013,7 +33679,9 @@ var DirectoryDocumentList = function (_a) {
33013
33679
  React.createElement(RadioCheckboxInput, { name: taxonomy.vocabulary, value: taxonomy.id, label: taxonomy.name, singleSelection: category.singleSelection, checked: taxonomy.checked, onChange: function (e) { return optionChecked(e, categoryIndex, category.singleSelection); } }))); })))); }))),
33014
33680
  React.createElement(Column, { small: "full", medium: "two-thirds", large: "two-thirds" },
33015
33681
  React.createElement(Row$1, null,
33016
- isLoading ? (React.createElement(LoadingContainer, null,
33682
+ isError ? (React.createElement(Column, { small: "full", medium: "full", large: "full" },
33683
+ React.createElement(AlertBannerService, null,
33684
+ React.createElement("p", null, "Sorry, there was a problem fetching results. Please try again later.")))) : isLoading ? (React.createElement(LoadingContainer, null,
33017
33685
  React.createElement(LoadingSpinner, null),
33018
33686
  React.createElement("p", null, "Loading"))) : (React.createElement(React.Fragment, null,
33019
33687
  React.createElement(Column, { small: "full", medium: "full", large: "full" }, (documents === null || documents === void 0 ? void 0 : documents.length) > 0 ? (React.createElement(ResultInfo, null,
@@ -33030,5 +33698,5 @@ var DirectoryDocumentList = function (_a) {
33030
33698
  React.createElement(Column, { small: "full", medium: "full", large: "full" }, !isLoading && (React.createElement(Pagination, { currentPage: pageNumber, totalResults: totalResults, resultsPerPage: perPage, postTo: directoryPath, buttonClickOverride: setPageNumber }))))))));
33031
33699
  };
33032
33700
 
33033
- export { AccessibleLink as AccessibleLinks, Accordion$1 as Accordion, AlertBanner, AlertBannerService, Autocomplete, BackLink, BackToTop, BinCollection, BlockQuote, Breadcrumbs, Button$4 as Button, CallToAction, Cards, CheckboxListFilter, Contents$1 as Contents, ContentsNavigation, CookieBanner, CouncilTaxAlphabeticalDirectory, DirectoryDocumentList, DirectoryService, DirectoryServiceList, DirectoryShortList, DirectoryShortListProvider, DisplayDate, Divider, DownloadableFiles, DropDownFilter, DynamicIcon, Footer, FullWidthContainer, GDS_theme, GlobalStyleReset, GoogleMap, Header, Heading, HeadingWithIcon, HeroImage, HomeHero, Image$2 as Image, ImageAndText, InquestSchedule, Map$1 as Map, MapMarker, MaxWidthContainer, MemorialHero, NewsArticleDate, NewsArticleFeaturedBlock, NewsArticleFilterAccordion, NewsArticleImage, NewsArticleList, NewsArticleListHeader, NewsArticleOldBanner, PageMain, PageSidebar, PageTitle, PageWithSidebarContainer, PageWrapper, Pagination, PhaseBanner, PromoBanner, PromoBlock, PromotedLinks, Promotions, SearchBox, SearchResultsList, Searchbar, SectionLinks, SectionLinksMobileContents, SectionLinksSidebar, ServiceLinksBoxed, ServicesLinksList, SignpostLinks, SkipToMainContent, StaticMap, Summary, TextInput, Video, WarningText, WarningTextDisclaimer, lb_theme_north, lb_theme_west, north_theme, useDirectoryShortListContext, west_theme };
33701
+ export { AccessibleLink as AccessibleLinks, Accordion$1 as Accordion, AlertBanner, AlertBannerService, Autocomplete, BackLink, BackToTop, BinCollection, BlockQuote, Breadcrumbs, Button$4 as Button, CallToAction, Cards, CheckboxListFilter, Contents$1 as Contents, ContentsNavigation, CookieBanner, CouncilTaxAlphabeticalDirectory, DirectoryDocumentList, DirectoryService, DirectoryServiceList, DirectoryShortList, DirectoryShortListProvider, DisplayDate, Divider, DownloadableFiles, DropDownFilter, DynamicIcon, Footer, FullWidthContainer, GDS_theme, GlobalStyleReset, GoogleMap, Header, Heading, HeadingWithIcon, HeroImage, HomeHero, Image$2 as Image, ImageAndText, InquestSchedule, Map$1 as Map, MapMarker, MaxWidthContainer, MemorialHero, NewsArticleDate, NewsArticleFeaturedBlock, NewsArticleFilterAccordion, NewsArticleImage, NewsArticleList, NewsArticleListHeader, NewsArticleOldBanner, PageMain, PageSidebar, PageTitle, PageWithSidebarContainer, PageWrapper, Pagination, PhaseBanner, PromoBanner, PromoBlock, PromotedLinks, Promotions, RoadworksList, SearchBox, SearchResultsList, Searchbar, SectionLinks, SectionLinksMobileContents, SectionLinksSidebar, ServiceLinksBoxed, ServicesLinksList, SignpostLinks, SkipToMainContent, StaticMap, Summary, TextInput, Video, WarningText, WarningTextDisclaimer, lb_theme_north, lb_theme_west, north_theme, useDirectoryShortListContext, west_theme };
33034
33702
  //# sourceMappingURL=index.mjs.js.map