@dvsa/smc-encounter-schema 0.0.1-canary.1 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (752) hide show
  1. package/context/RuntimeContext.js +1 -1
  2. package/decorators/CloseProhibitionsAuditValidator.js +1 -1
  3. package/decorators/IsNullableNumber.d.ts +1 -1
  4. package/decorators/IsNullableNumber.js +1 -1
  5. package/decorators/IsValidLicenceNumberForUK.d.ts +1 -1
  6. package/decorators/IsValidLicenceNumberForUK.js +1 -1
  7. package/decorators/MandatoryField.d.ts +1 -1
  8. package/decorators/MandatoryField.js +1 -1
  9. package/decorators/RequiredObject.d.ts +1 -1
  10. package/decorators/RequiredObject.js +1 -1
  11. package/decorators/ValidateCloseProhibitionsNotice.js +1 -1
  12. package/decorators/ValidateDeleteEncounterMotor.js +1 -1
  13. package/decorators/ValidateDeleteEncounterNotice.js +1 -1
  14. package/decorators/ValidateDeleteEncounterTrailer.js +1 -1
  15. package/decorators/ValidateMotorObject.js +1 -1
  16. package/decorators/ValidateOperatorObject.js +1 -1
  17. package/decorators/ValidatePnoGeneratedNumber.js +1 -1
  18. package/decorators/ValidateSetupUserInput.js +1 -1
  19. package/decorators/ValidateTrailerObject.js +1 -1
  20. package/decorators/ValidateUKDateFormat.js +1 -1
  21. package/decorators/bodytype/ValidateBodyType.js +1 -1
  22. package/decorators/contact/ValidateContact.js +1 -1
  23. package/decorators/delete/ValidateDeleteEncounter.js +1 -1
  24. package/decorators/delete/ValidateDeleteEncounterAudit.js +1 -1
  25. package/decorators/delete/ValidateDeleteEncounterEncTexts.js +1 -1
  26. package/decorators/delete/ValidateIncompleteEncDeleteFixedPenalty.js +1 -1
  27. package/decorators/ethnicity/ValidateEthnicity.js +1 -1
  28. package/decorators/isNullableString.js +1 -1
  29. package/decorators/notices/ValidateFixedPenalty.js +1 -1
  30. package/decorators/objects/ValidateEncounterReqObject.js +1 -1
  31. package/decorators/objects/ValidateJourneyRequired.js +1 -1
  32. package/decorators/prohibitions/ValidateCloseProhibitions.js +1 -1
  33. package/decorators/tacho/ValidateTachoValue.js +1 -1
  34. package/index.d.ts +62 -57
  35. package/index.js +1 -1
  36. package/models/McEncounterRoot.d.ts +57 -56
  37. package/models/McEncounterRoot.js +1 -1
  38. package/models/MessageBody.d.ts +56 -55
  39. package/models/MessageBody.js +1 -1
  40. package/models/MessageHeader.js +1 -1
  41. package/models/Request.d.ts +57 -56
  42. package/models/Request.js +1 -1
  43. package/models/Transfer.d.ts +56 -55
  44. package/models/Transfer.js +1 -1
  45. package/models/audit/AuditBase.js +1 -1
  46. package/models/audit/AuditEventBase.js +1 -1
  47. package/models/common/CommonCode.js +1 -1
  48. package/models/common/CommonData.js +1 -1
  49. package/models/common/CommonDeletion.js +1 -1
  50. package/models/common/CommonDescription.js +1 -1
  51. package/models/common/CommonError.js +1 -1
  52. package/models/common/CommonOffence.js +1 -1
  53. package/models/common/CommonOffenceDetail.js +1 -1
  54. package/models/common/CommonPostAddress.js +1 -1
  55. package/models/common/CommonTradingAs.js +1 -1
  56. package/models/common/CommonVehicle.js +1 -1
  57. package/models/common/CommonVehicleWeights.js +1 -1
  58. package/models/common/CommonVersion.js +1 -1
  59. package/models/contact/Address.js +1 -1
  60. package/models/contact/Contact.d.ts +1 -1
  61. package/models/contact/Contact.js +1 -1
  62. package/models/contact/ContactType.js +1 -1
  63. package/models/contact/Examiner.js +1 -1
  64. package/models/contact/GenericContact.js +1 -1
  65. package/models/contact/HSEBriefer.js +1 -1
  66. package/models/contact/Recorder.js +1 -1
  67. package/models/contact/RteArea.js +1 -1
  68. package/models/contact/StoppingOfficer.js +1 -1
  69. package/models/dangerous/DangerousCheckListBase.d.ts +1 -1
  70. package/models/dangerous/DangerousCheckListBase.js +1 -1
  71. package/models/dangerous/DangerousCheckListItemBase.js +1 -1
  72. package/models/dangerous/DangerousCheckListItemDetailBase.js +1 -1
  73. package/models/dangerous/DangerousContainerTypeBase.js +1 -1
  74. package/models/defects/Defect.js +1 -1
  75. package/models/defects/DefectProsecution.js +1 -1
  76. package/models/defects/DefectSummary.js +1 -1
  77. package/models/defects/Part.js +1 -1
  78. package/models/defects/SignificanceReason.js +1 -1
  79. package/models/driver/DetailsOrigin.js +1 -1
  80. package/models/driver/Drivers.d.ts +3 -3
  81. package/models/driver/Drivers.js +1 -1
  82. package/models/driver/LicenceCategory.js +1 -1
  83. package/models/driver/LicenceType.js +1 -1
  84. package/models/emissions/EmissionCheckBase.js +1 -1
  85. package/models/emissions/FuelTypeBase.js +1 -1
  86. package/models/journey/Journey.js +1 -1
  87. package/models/journey/JourneyType.js +1 -1
  88. package/models/journey/PortOfExit.js +1 -1
  89. package/models/minimum/AxlesWeight.js +1 -1
  90. package/models/minimum/BodyType.js +1 -1
  91. package/models/minimum/CapturedEthnicity.js +1 -1
  92. package/models/minimum/EncounterReason.js +1 -1
  93. package/models/minimum/EncounterTexts.js +1 -1
  94. package/models/minimum/EthnicityInfo.js +1 -1
  95. package/models/minimum/InspectionType.js +1 -1
  96. package/models/minimum/Laden.js +1 -1
  97. package/models/minimum/Location.js +1 -1
  98. package/models/minimum/Motor.d.ts +14 -14
  99. package/models/minimum/Motor.js +1 -1
  100. package/models/minimum/Nationality.js +1 -1
  101. package/models/minimum/ObservedEthnicityInfo.js +1 -1
  102. package/models/minimum/RoadsideVehicleType.js +1 -1
  103. package/models/minimum/SpecialReturnCodeFlagType.js +1 -1
  104. package/models/minimum/TextType.js +1 -1
  105. package/models/minimum/VehicleIdType.js +1 -1
  106. package/models/notices/ActualOffences.js +1 -1
  107. package/models/notices/ExemptionConditionBaseType.js +1 -1
  108. package/models/notices/NoticeBase.d.ts +9 -9
  109. package/models/notices/NoticeBase.js +1 -1
  110. package/models/notices/NoticeClosureBaseType.js +1 -1
  111. package/models/notices/NoticeType.js +1 -1
  112. package/models/notices/NoticeTypeDetail.js +1 -1
  113. package/models/notices/Offence.js +1 -1
  114. package/models/notices/OffenceBaseType.js +1 -1
  115. package/models/notices/OffenceSanctionText.js +1 -1
  116. package/models/notices/OffenceSeverityBand.js +1 -1
  117. package/models/notices/Offences.js +1 -1
  118. package/models/notices/PenaltyNotice.js +1 -1
  119. package/models/notices/PenaltyNoticeStatus.js +1 -1
  120. package/models/notices/ProhibitionClosureReasonBaseType.js +1 -1
  121. package/models/notices/RemovalInstruction.js +1 -1
  122. package/models/operator/ExistingOperatorDetail.js +1 -1
  123. package/models/operator/ExistingTradingAs.js +1 -1
  124. package/models/operator/InitiatingReason.js +1 -1
  125. package/models/operator/LicenceTypeCode.js +1 -1
  126. package/models/operator/OCRSOperatorSnapshots.js +1 -1
  127. package/models/operator/Operator.d.ts +5 -5
  128. package/models/operator/Operator.js +1 -1
  129. package/models/operator/RecordType.js +1 -1
  130. package/models/operator/StateOfOpDisc.js +1 -1
  131. package/models/operator/TeHoursResult.js +1 -1
  132. package/models/operator/TeOtherResult.js +1 -1
  133. package/models/operator/VeVisitResult.js +1 -1
  134. package/models/payments/ActualPayment.js +1 -1
  135. package/models/payments/PaymentReversalReason.js +1 -1
  136. package/models/payments/PaymentStatus.js +1 -1
  137. package/models/postcode/PostcodeIn.js +1 -1
  138. package/models/postcode/PostcodeInDocument.js +1 -1
  139. package/models/queue/ClaimUserDetails.js +1 -1
  140. package/models/queue/RequestQueue.d.ts +57 -56
  141. package/models/queue/RequestQueue.js +1 -1
  142. package/models/request/EncounterReq.d.ts +55 -53
  143. package/models/request/EncounterReq.js +1 -1
  144. package/models/request/EncounterRequest.d.ts +57 -56
  145. package/models/request/EncounterRequest.js +1 -1
  146. package/models/request/InvocationRequest.js +1 -1
  147. package/models/request/OperatorRequest.d.ts +1 -1
  148. package/models/request/OperatorRequest.js +1 -1
  149. package/models/request/OperatorVisitReq.js +1 -1
  150. package/models/request/RequestMetaData.js +1 -1
  151. package/models/response/EncounterResponse.js +1 -1
  152. package/models/response/MCError.js +1 -1
  153. package/models/response/OperatorResponse.d.ts +1 -1
  154. package/models/response/OperatorResponse.js +1 -1
  155. package/models/response/ValidationError.js +1 -1
  156. package/models/roadworthiness/RoadWorthinessCheckItem.js +1 -1
  157. package/models/roadworthiness/RoadWorthinessCheckList.js +1 -1
  158. package/models/tax/TaxForm.d.ts +26 -0
  159. package/models/tax/TaxForm.js +1 -0
  160. package/models/trailer/PoliceDefect.js +1 -1
  161. package/models/trailer/Trailer.d.ts +19 -19
  162. package/models/trailer/Trailer.js +1 -1
  163. package/package.json +16 -2
  164. package/transformers/ToUpperCase.js +1 -1
  165. package/transformers/TransformUKDateTime.js +1 -1
  166. package/.idea/checkstyle-idea.xml +0 -15
  167. package/.idea/copilot.data.migration.agent.xml +0 -6
  168. package/.idea/copilot.data.migration.edit.xml +0 -6
  169. package/.idea/encounter-schema.iml +0 -9
  170. package/.idea/misc.xml +0 -6
  171. package/.idea/modules.xml +0 -8
  172. package/.idea/vcs.xml +0 -6
  173. package/.idea/workspace.xml +0 -93
  174. package/biome.json +0 -3
  175. package/chunk-244URBWR.mjs +0 -1
  176. package/chunk-2E4LGUOT.mjs +0 -1
  177. package/chunk-3B3VPUIX.mjs +0 -1
  178. package/chunk-3PIO7MWC.mjs +0 -1
  179. package/chunk-3RSURDQN.mjs +0 -1
  180. package/chunk-3UCN6V52.mjs +0 -1
  181. package/chunk-4FZDONQQ.mjs +0 -1
  182. package/chunk-4U42DW6P.mjs +0 -1
  183. package/chunk-5F4D4LQJ.mjs +0 -1
  184. package/chunk-5HEZQEQE.mjs +0 -1
  185. package/chunk-5RZRM4HB.mjs +0 -1
  186. package/chunk-6GN3UVZB.mjs +0 -1
  187. package/chunk-6IPZQIZF.mjs +0 -1
  188. package/chunk-6KCPP4B3.mjs +0 -1
  189. package/chunk-6M665UFG.mjs +0 -1
  190. package/chunk-6ROWAIDX.mjs +0 -1
  191. package/chunk-6TD5GH4D.mjs +0 -1
  192. package/chunk-6U3RAHGR.mjs +0 -1
  193. package/chunk-7KNLBUOP.mjs +0 -1
  194. package/chunk-AXDFDTKS.mjs +0 -1
  195. package/chunk-BFVDWN44.mjs +0 -1
  196. package/chunk-BK47MATU.mjs +0 -1
  197. package/chunk-BNDDBHCC.mjs +0 -1
  198. package/chunk-C3MQKMDH.mjs +0 -1
  199. package/chunk-C576ODOZ.mjs +0 -1
  200. package/chunk-CIWEZWZ3.mjs +0 -1
  201. package/chunk-CJLQ67BM.mjs +0 -1
  202. package/chunk-CMUN7Z4I.mjs +0 -1
  203. package/chunk-CU57RX4X.mjs +0 -1
  204. package/chunk-D4RSPQ2Z.mjs +0 -1
  205. package/chunk-D5CIH77U.mjs +0 -1
  206. package/chunk-DKYHBROG.mjs +0 -1
  207. package/chunk-DSBGX26J.mjs +0 -1
  208. package/chunk-DSJYYA6X.mjs +0 -1
  209. package/chunk-DSM2C32P.mjs +0 -1
  210. package/chunk-DSU43RRB.mjs +0 -1
  211. package/chunk-DWVDY3DD.mjs +0 -1
  212. package/chunk-E36DLX3M.mjs +0 -1
  213. package/chunk-E6HWUHGX.mjs +0 -1
  214. package/chunk-E7PK3XZJ.mjs +0 -1
  215. package/chunk-EQ5NKVZA.mjs +0 -1
  216. package/chunk-F3P4RXCW.mjs +0 -1
  217. package/chunk-F67BGHDC.mjs +0 -1
  218. package/chunk-FEEVVBN2.mjs +0 -1
  219. package/chunk-FFY52KEK.mjs +0 -1
  220. package/chunk-FN7TLFF3.mjs +0 -1
  221. package/chunk-FTIAG54P.mjs +0 -1
  222. package/chunk-GI6XZUY3.mjs +0 -1
  223. package/chunk-GQNFPE2A.mjs +0 -1
  224. package/chunk-GZ4IHGM5.mjs +0 -1
  225. package/chunk-H3LINJS3.mjs +0 -1
  226. package/chunk-H6EZL3A4.mjs +0 -1
  227. package/chunk-HALID3ZV.mjs +0 -1
  228. package/chunk-HCIU36QQ.mjs +0 -1
  229. package/chunk-HCIWOVRW.mjs +0 -1
  230. package/chunk-HCT4VYB2.mjs +0 -1
  231. package/chunk-HEXTWQUD.mjs +0 -1
  232. package/chunk-HKAP4O4X.mjs +0 -1
  233. package/chunk-HQ6X24KD.mjs +0 -1
  234. package/chunk-HQWVJ7QT.mjs +0 -1
  235. package/chunk-HSEMVDUJ.mjs +0 -1
  236. package/chunk-HYRXTYE2.mjs +0 -1
  237. package/chunk-I3DVCE3H.mjs +0 -1
  238. package/chunk-I5JU7RIO.mjs +0 -1
  239. package/chunk-IDUPOXS3.mjs +0 -1
  240. package/chunk-IZDKZJ26.mjs +0 -1
  241. package/chunk-JAM3VM3T.mjs +0 -1
  242. package/chunk-JM7A5HVK.mjs +0 -1
  243. package/chunk-KBIMMD4U.mjs +0 -1
  244. package/chunk-KEQ7Q2FY.mjs +0 -1
  245. package/chunk-KH3GX53K.mjs +0 -1
  246. package/chunk-KNWNMGM2.mjs +0 -1
  247. package/chunk-L7TP5YTX.mjs +0 -1
  248. package/chunk-LL462ZDD.mjs +0 -1
  249. package/chunk-LY5Y6OLB.mjs +0 -1
  250. package/chunk-LYVYMQY5.mjs +0 -1
  251. package/chunk-M3KXPMPC.mjs +0 -1
  252. package/chunk-M6NLYGGT.mjs +0 -1
  253. package/chunk-MB6X5VZD.mjs +0 -1
  254. package/chunk-MF24CPIM.mjs +0 -1
  255. package/chunk-MS6VFWPG.mjs +0 -1
  256. package/chunk-MZXJO6YD.mjs +0 -1
  257. package/chunk-NEIR2P7G.mjs +0 -1
  258. package/chunk-OIIJCPNG.mjs +0 -1
  259. package/chunk-OPGLCH4E.mjs +0 -1
  260. package/chunk-PF5TQHIX.mjs +0 -1
  261. package/chunk-PFZSIOXK.mjs +0 -1
  262. package/chunk-PHUESDI2.mjs +0 -1
  263. package/chunk-PSTIATL5.mjs +0 -1
  264. package/chunk-QDDG2SIO.mjs +0 -1
  265. package/chunk-RDO3R2WC.mjs +0 -1
  266. package/chunk-RHSE5DWH.mjs +0 -1
  267. package/chunk-RM5MUKV5.mjs +0 -1
  268. package/chunk-RNYFOQX2.mjs +0 -1
  269. package/chunk-RYTKU2FS.mjs +0 -1
  270. package/chunk-SHZOP6WH.mjs +0 -1
  271. package/chunk-STUOFVTL.mjs +0 -1
  272. package/chunk-TNVCM7CL.mjs +0 -1
  273. package/chunk-TS5MIIVI.mjs +0 -1
  274. package/chunk-TTKZWHRI.mjs +0 -1
  275. package/chunk-TYBOCTLV.mjs +0 -1
  276. package/chunk-U5MVO2PC.mjs +0 -1
  277. package/chunk-UQTY7JNV.mjs +0 -1
  278. package/chunk-UTEK6X5N.mjs +0 -1
  279. package/chunk-UZYCAZ52.mjs +0 -1
  280. package/chunk-V4USYKYO.mjs +0 -1
  281. package/chunk-VA5XJJ24.mjs +0 -1
  282. package/chunk-VEO67LPY.mjs +0 -1
  283. package/chunk-VKGVY73K.mjs +0 -1
  284. package/chunk-VO7LOEES.mjs +0 -1
  285. package/chunk-VSKQ73JF.mjs +0 -1
  286. package/chunk-W76RRUQT.mjs +0 -1
  287. package/chunk-WQ6UIMG7.mjs +0 -1
  288. package/chunk-X56JCZMH.mjs +0 -1
  289. package/chunk-X7YIMGVP.mjs +0 -1
  290. package/chunk-XAENFV6Q.mjs +0 -1
  291. package/chunk-XEFVL2OX.mjs +0 -1
  292. package/chunk-XKKXMCNT.mjs +0 -1
  293. package/chunk-XNX7KPMK.mjs +0 -1
  294. package/chunk-XQNYQEVV.mjs +0 -1
  295. package/chunk-Y7KWD3DG.mjs +0 -1
  296. package/chunk-Y7NHVDJN.mjs +0 -1
  297. package/chunk-YAHERUWI.mjs +0 -1
  298. package/chunk-YBHSAURO.mjs +0 -1
  299. package/chunk-YFGV7VN6.mjs +0 -1
  300. package/chunk-YIIRXW5G.mjs +0 -1
  301. package/chunk-YKEXHKNU.mjs +0 -1
  302. package/chunk-YKNVIQ6X.mjs +0 -1
  303. package/chunk-YTPVGXC5.mjs +0 -1
  304. package/chunk-ZOP627PX.mjs +0 -1
  305. package/chunk-ZXNI5IQW.mjs +0 -1
  306. package/context/RuntimeContext.d.mts +0 -21
  307. package/context/RuntimeContext.mjs +0 -1
  308. package/decorators/CloseProhibitionsAuditValidator.d.mts +0 -5
  309. package/decorators/CloseProhibitionsAuditValidator.mjs +0 -1
  310. package/decorators/IsNullableNumber.d.mts +0 -5
  311. package/decorators/IsNullableNumber.mjs +0 -1
  312. package/decorators/IsValidLicenceNumberForUK.d.mts +0 -9
  313. package/decorators/IsValidLicenceNumberForUK.mjs +0 -1
  314. package/decorators/MandatoryField.d.mts +0 -16
  315. package/decorators/MandatoryField.mjs +0 -1
  316. package/decorators/RequiredObject.d.mts +0 -9
  317. package/decorators/RequiredObject.mjs +0 -1
  318. package/decorators/ValidateCloseProhibitionsNotice.d.mts +0 -5
  319. package/decorators/ValidateCloseProhibitionsNotice.mjs +0 -1
  320. package/decorators/ValidateDeleteEncounterMotor.d.mts +0 -5
  321. package/decorators/ValidateDeleteEncounterMotor.mjs +0 -1
  322. package/decorators/ValidateDeleteEncounterNotice.d.mts +0 -5
  323. package/decorators/ValidateDeleteEncounterNotice.mjs +0 -1
  324. package/decorators/ValidateDeleteEncounterTrailer.d.mts +0 -8
  325. package/decorators/ValidateDeleteEncounterTrailer.mjs +0 -1
  326. package/decorators/ValidateMotorObject.d.mts +0 -5
  327. package/decorators/ValidateMotorObject.mjs +0 -1
  328. package/decorators/ValidateOperatorObject.d.mts +0 -5
  329. package/decorators/ValidateOperatorObject.mjs +0 -1
  330. package/decorators/ValidatePnoGeneratedNumber.d.mts +0 -5
  331. package/decorators/ValidatePnoGeneratedNumber.mjs +0 -1
  332. package/decorators/ValidateSetupUserInput.d.mts +0 -5
  333. package/decorators/ValidateSetupUserInput.mjs +0 -1
  334. package/decorators/ValidateTrailerObject.d.mts +0 -5
  335. package/decorators/ValidateTrailerObject.mjs +0 -1
  336. package/decorators/ValidateUKDateFormat.d.mts +0 -5
  337. package/decorators/ValidateUKDateFormat.mjs +0 -1
  338. package/decorators/bodytype/ValidateBodyType.d.mts +0 -5
  339. package/decorators/bodytype/ValidateBodyType.mjs +0 -1
  340. package/decorators/contact/ValidateContact.d.mts +0 -5
  341. package/decorators/contact/ValidateContact.mjs +0 -1
  342. package/decorators/delete/ValidateDeleteEncounter.d.mts +0 -5
  343. package/decorators/delete/ValidateDeleteEncounter.mjs +0 -1
  344. package/decorators/delete/ValidateDeleteEncounterAudit.d.mts +0 -5
  345. package/decorators/delete/ValidateDeleteEncounterAudit.mjs +0 -1
  346. package/decorators/delete/ValidateDeleteEncounterEncTexts.d.mts +0 -5
  347. package/decorators/delete/ValidateDeleteEncounterEncTexts.mjs +0 -1
  348. package/decorators/delete/ValidateIncompleteEncDeleteFixedPenalty.d.mts +0 -5
  349. package/decorators/delete/ValidateIncompleteEncDeleteFixedPenalty.mjs +0 -1
  350. package/decorators/ethnicity/ValidateEthnicity.d.mts +0 -5
  351. package/decorators/ethnicity/ValidateEthnicity.mjs +0 -1
  352. package/decorators/isNullableString.d.mts +0 -5
  353. package/decorators/isNullableString.mjs +0 -1
  354. package/decorators/notices/ValidateFixedPenalty.d.mts +0 -5
  355. package/decorators/notices/ValidateFixedPenalty.mjs +0 -1
  356. package/decorators/objects/ValidateEncounterReqObject.d.mts +0 -5
  357. package/decorators/objects/ValidateEncounterReqObject.mjs +0 -1
  358. package/decorators/objects/ValidateJourneyRequired.d.mts +0 -5
  359. package/decorators/objects/ValidateJourneyRequired.mjs +0 -1
  360. package/decorators/prohibitions/ValidateCloseProhibitions.d.mts +0 -5
  361. package/decorators/prohibitions/ValidateCloseProhibitions.mjs +0 -1
  362. package/decorators/tacho/ValidateTachoValue.d.mts +0 -5
  363. package/decorators/tacho/ValidateTachoValue.mjs +0 -1
  364. package/enums/EncounterType.d.mts +0 -9
  365. package/enums/EncounterType.mjs +0 -1
  366. package/enums/EventType.d.mts +0 -12
  367. package/enums/EventType.mjs +0 -1
  368. package/enums/ExaminerOfficerType.d.mts +0 -8
  369. package/enums/ExaminerOfficerType.mjs +0 -1
  370. package/enums/ProcessStatus.d.mts +0 -17
  371. package/enums/ProcessStatus.mjs +0 -1
  372. package/enums/RequestType.d.mts +0 -8
  373. package/enums/RequestType.mjs +0 -1
  374. package/enums/ValidationGroup.d.mts +0 -8
  375. package/enums/ValidationGroup.mjs +0 -1
  376. package/index.d.mts +0 -99
  377. package/index.mjs +0 -1
  378. package/jest.config.ts +0 -8
  379. package/models/McEncounterRoot.d.mts +0 -98
  380. package/models/McEncounterRoot.mjs +0 -1
  381. package/models/MessageBody.d.mts +0 -95
  382. package/models/MessageBody.mjs +0 -1
  383. package/models/MessageHeader.d.mts +0 -10
  384. package/models/MessageHeader.mjs +0 -1
  385. package/models/Request.d.mts +0 -98
  386. package/models/Request.mjs +0 -1
  387. package/models/Transfer.d.mts +0 -96
  388. package/models/Transfer.mjs +0 -1
  389. package/models/audit/AuditBase.d.mts +0 -17
  390. package/models/audit/AuditBase.mjs +0 -1
  391. package/models/audit/AuditEventBase.d.mts +0 -10
  392. package/models/audit/AuditEventBase.mjs +0 -1
  393. package/models/common/CommonCode.d.mts +0 -8
  394. package/models/common/CommonCode.mjs +0 -1
  395. package/models/common/CommonData.d.mts +0 -7
  396. package/models/common/CommonData.mjs +0 -1
  397. package/models/common/CommonDeletion.d.mts +0 -6
  398. package/models/common/CommonDeletion.mjs +0 -1
  399. package/models/common/CommonDescription.d.mts +0 -6
  400. package/models/common/CommonDescription.mjs +0 -1
  401. package/models/common/CommonError.d.mts +0 -6
  402. package/models/common/CommonError.mjs +0 -1
  403. package/models/common/CommonOffence.d.mts +0 -22
  404. package/models/common/CommonOffence.mjs +0 -1
  405. package/models/common/CommonOffenceDetail.d.mts +0 -10
  406. package/models/common/CommonOffenceDetail.mjs +0 -1
  407. package/models/common/CommonPostAddress.d.mts +0 -6
  408. package/models/common/CommonPostAddress.mjs +0 -1
  409. package/models/common/CommonTradingAs.d.mts +0 -9
  410. package/models/common/CommonTradingAs.mjs +0 -1
  411. package/models/common/CommonVehicle.d.mts +0 -16
  412. package/models/common/CommonVehicle.mjs +0 -1
  413. package/models/common/CommonVehicleWeights.d.mts +0 -7
  414. package/models/common/CommonVehicleWeights.mjs +0 -1
  415. package/models/common/CommonVersion.d.mts +0 -9
  416. package/models/common/CommonVersion.mjs +0 -1
  417. package/models/contact/Address.d.mts +0 -12
  418. package/models/contact/Address.mjs +0 -1
  419. package/models/contact/Contact.d.mts +0 -20
  420. package/models/contact/Contact.mjs +0 -1
  421. package/models/contact/ContactType.d.mts +0 -10
  422. package/models/contact/ContactType.mjs +0 -1
  423. package/models/contact/Examiner.d.mts +0 -8
  424. package/models/contact/Examiner.mjs +0 -1
  425. package/models/contact/GenericContact.d.mts +0 -23
  426. package/models/contact/GenericContact.mjs +0 -1
  427. package/models/contact/HSEBriefer.d.mts +0 -8
  428. package/models/contact/HSEBriefer.mjs +0 -1
  429. package/models/contact/Recorder.d.mts +0 -8
  430. package/models/contact/Recorder.mjs +0 -1
  431. package/models/contact/RteArea.d.mts +0 -14
  432. package/models/contact/RteArea.mjs +0 -1
  433. package/models/contact/StoppingOfficer.d.mts +0 -8
  434. package/models/contact/StoppingOfficer.mjs +0 -1
  435. package/models/dangerous/DangerousCheckListBase.d.mts +0 -15
  436. package/models/dangerous/DangerousCheckListBase.mjs +0 -1
  437. package/models/dangerous/DangerousCheckListItemBase.d.mts +0 -9
  438. package/models/dangerous/DangerousCheckListItemBase.mjs +0 -1
  439. package/models/dangerous/DangerousCheckListItemDetailBase.d.mts +0 -10
  440. package/models/dangerous/DangerousCheckListItemDetailBase.mjs +0 -1
  441. package/models/dangerous/DangerousContainerTypeBase.d.mts +0 -6
  442. package/models/dangerous/DangerousContainerTypeBase.mjs +0 -1
  443. package/models/defects/Defect.d.mts +0 -36
  444. package/models/defects/Defect.mjs +0 -1
  445. package/models/defects/DefectProsecution.d.mts +0 -9
  446. package/models/defects/DefectProsecution.mjs +0 -1
  447. package/models/defects/DefectSummary.d.mts +0 -20
  448. package/models/defects/DefectSummary.mjs +0 -1
  449. package/models/defects/Part.d.mts +0 -7
  450. package/models/defects/Part.mjs +0 -1
  451. package/models/defects/SignificanceReason.d.mts +0 -9
  452. package/models/defects/SignificanceReason.mjs +0 -1
  453. package/models/driver/DetailsOrigin.d.mts +0 -7
  454. package/models/driver/DetailsOrigin.mjs +0 -1
  455. package/models/driver/Drivers.d.mts +0 -48
  456. package/models/driver/Drivers.mjs +0 -1
  457. package/models/driver/LicenceCategory.d.mts +0 -6
  458. package/models/driver/LicenceCategory.mjs +0 -1
  459. package/models/driver/LicenceType.d.mts +0 -7
  460. package/models/driver/LicenceType.mjs +0 -1
  461. package/models/emissions/EmissionCheckBase.d.mts +0 -28
  462. package/models/emissions/EmissionCheckBase.mjs +0 -1
  463. package/models/emissions/FuelTypeBase.d.mts +0 -9
  464. package/models/emissions/FuelTypeBase.mjs +0 -1
  465. package/models/journey/Journey.d.mts +0 -13
  466. package/models/journey/Journey.mjs +0 -1
  467. package/models/journey/JourneyType.d.mts +0 -8
  468. package/models/journey/JourneyType.mjs +0 -1
  469. package/models/journey/PortOfExit.d.mts +0 -7
  470. package/models/journey/PortOfExit.mjs +0 -1
  471. package/models/minimum/AxlesWeight.d.mts +0 -11
  472. package/models/minimum/AxlesWeight.mjs +0 -1
  473. package/models/minimum/BodyType.d.mts +0 -10
  474. package/models/minimum/BodyType.mjs +0 -1
  475. package/models/minimum/CapturedEthnicity.d.mts +0 -9
  476. package/models/minimum/CapturedEthnicity.mjs +0 -1
  477. package/models/minimum/EncounterReason.d.mts +0 -13
  478. package/models/minimum/EncounterReason.mjs +0 -1
  479. package/models/minimum/EncounterTexts.d.mts +0 -10
  480. package/models/minimum/EncounterTexts.mjs +0 -1
  481. package/models/minimum/EthnicityInfo.d.mts +0 -10
  482. package/models/minimum/EthnicityInfo.mjs +0 -1
  483. package/models/minimum/InspectionType.d.mts +0 -7
  484. package/models/minimum/InspectionType.mjs +0 -1
  485. package/models/minimum/Laden.d.mts +0 -8
  486. package/models/minimum/Laden.mjs +0 -1
  487. package/models/minimum/Location.d.mts +0 -22
  488. package/models/minimum/Location.mjs +0 -1
  489. package/models/minimum/Motor.d.mts +0 -63
  490. package/models/minimum/Motor.mjs +0 -1
  491. package/models/minimum/Nationality.d.mts +0 -15
  492. package/models/minimum/Nationality.mjs +0 -1
  493. package/models/minimum/ObservedEthnicityInfo.d.mts +0 -9
  494. package/models/minimum/ObservedEthnicityInfo.mjs +0 -1
  495. package/models/minimum/RoadsideVehicleType.d.mts +0 -12
  496. package/models/minimum/RoadsideVehicleType.mjs +0 -1
  497. package/models/minimum/SpecialReturnCodeFlagType.d.mts +0 -8
  498. package/models/minimum/SpecialReturnCodeFlagType.mjs +0 -1
  499. package/models/minimum/TextType.d.mts +0 -9
  500. package/models/minimum/TextType.mjs +0 -1
  501. package/models/minimum/VehicleIdType.d.mts +0 -10
  502. package/models/minimum/VehicleIdType.mjs +0 -1
  503. package/models/notices/ActualOffences.d.mts +0 -26
  504. package/models/notices/ActualOffences.mjs +0 -1
  505. package/models/notices/ExemptionConditionBaseType.d.mts +0 -17
  506. package/models/notices/ExemptionConditionBaseType.mjs +0 -1
  507. package/models/notices/NoticeBase.d.mts +0 -73
  508. package/models/notices/NoticeBase.mjs +0 -1
  509. package/models/notices/NoticeClosureBaseType.d.mts +0 -6
  510. package/models/notices/NoticeClosureBaseType.mjs +0 -1
  511. package/models/notices/NoticeType.d.mts +0 -24
  512. package/models/notices/NoticeType.mjs +0 -1
  513. package/models/notices/NoticeTypeDetail.d.mts +0 -13
  514. package/models/notices/NoticeTypeDetail.mjs +0 -1
  515. package/models/notices/Offence.d.mts +0 -9
  516. package/models/notices/Offence.mjs +0 -1
  517. package/models/notices/OffenceBaseType.d.mts +0 -21
  518. package/models/notices/OffenceBaseType.mjs +0 -1
  519. package/models/notices/OffenceSanctionText.d.mts +0 -7
  520. package/models/notices/OffenceSanctionText.mjs +0 -1
  521. package/models/notices/OffenceSeverityBand.d.mts +0 -11
  522. package/models/notices/OffenceSeverityBand.mjs +0 -1
  523. package/models/notices/Offences.d.mts +0 -9
  524. package/models/notices/Offences.mjs +0 -1
  525. package/models/notices/PenaltyNotice.d.mts +0 -25
  526. package/models/notices/PenaltyNotice.mjs +0 -1
  527. package/models/notices/PenaltyNoticeStatus.d.mts +0 -9
  528. package/models/notices/PenaltyNoticeStatus.mjs +0 -1
  529. package/models/notices/ProhibitionClosureReasonBaseType.d.mts +0 -9
  530. package/models/notices/ProhibitionClosureReasonBaseType.mjs +0 -1
  531. package/models/notices/RemovalInstruction.d.mts +0 -8
  532. package/models/notices/RemovalInstruction.mjs +0 -1
  533. package/models/operator/ExistingOperatorDetail.d.mts +0 -19
  534. package/models/operator/ExistingOperatorDetail.mjs +0 -1
  535. package/models/operator/ExistingTradingAs.d.mts +0 -9
  536. package/models/operator/ExistingTradingAs.mjs +0 -1
  537. package/models/operator/InitiatingReason.d.mts +0 -9
  538. package/models/operator/InitiatingReason.mjs +0 -1
  539. package/models/operator/LicenceTypeCode.d.mts +0 -7
  540. package/models/operator/LicenceTypeCode.mjs +0 -1
  541. package/models/operator/OCRSOperatorSnapshots.d.mts +0 -11
  542. package/models/operator/OCRSOperatorSnapshots.mjs +0 -1
  543. package/models/operator/Operator.d.mts +0 -29
  544. package/models/operator/Operator.mjs +0 -1
  545. package/models/operator/RecordType.d.mts +0 -7
  546. package/models/operator/RecordType.mjs +0 -1
  547. package/models/operator/StateOfOpDisc.d.mts +0 -7
  548. package/models/operator/StateOfOpDisc.mjs +0 -1
  549. package/models/operator/TeHoursResult.d.mts +0 -8
  550. package/models/operator/TeHoursResult.mjs +0 -1
  551. package/models/operator/TeOtherResult.d.mts +0 -8
  552. package/models/operator/TeOtherResult.mjs +0 -1
  553. package/models/operator/VeVisitResult.d.mts +0 -8
  554. package/models/operator/VeVisitResult.mjs +0 -1
  555. package/models/payments/ActualPayment.d.mts +0 -23
  556. package/models/payments/ActualPayment.mjs +0 -1
  557. package/models/payments/PaymentReversalReason.d.mts +0 -9
  558. package/models/payments/PaymentReversalReason.mjs +0 -1
  559. package/models/payments/PaymentStatus.d.mts +0 -11
  560. package/models/payments/PaymentStatus.mjs +0 -1
  561. package/models/postcode/PostcodeIn.d.mts +0 -5
  562. package/models/postcode/PostcodeIn.mjs +0 -1
  563. package/models/postcode/PostcodeInDocument.d.mts +0 -7
  564. package/models/postcode/PostcodeInDocument.mjs +0 -1
  565. package/models/queue/ClaimUserDetails.d.mts +0 -10
  566. package/models/queue/ClaimUserDetails.mjs +0 -1
  567. package/models/queue/RequestQueue.d.mts +0 -126
  568. package/models/queue/RequestQueue.mjs +0 -1
  569. package/models/request/EncounterReq.d.mts +0 -154
  570. package/models/request/EncounterReq.mjs +0 -1
  571. package/models/request/EncounterRequest.d.mts +0 -91
  572. package/models/request/EncounterRequest.mjs +0 -1
  573. package/models/request/InvocationRequest.d.mts +0 -10
  574. package/models/request/InvocationRequest.mjs +0 -1
  575. package/models/request/OperatorRequest.d.mts +0 -17
  576. package/models/request/OperatorRequest.mjs +0 -1
  577. package/models/request/OperatorVisitReq.d.mts +0 -32
  578. package/models/request/OperatorVisitReq.mjs +0 -1
  579. package/models/request/RequestMetaData.d.mts +0 -7
  580. package/models/request/RequestMetaData.mjs +0 -1
  581. package/models/response/EncounterResponse.d.mts +0 -19
  582. package/models/response/EncounterResponse.mjs +0 -1
  583. package/models/response/MCError.d.mts +0 -8
  584. package/models/response/MCError.mjs +0 -1
  585. package/models/response/OperatorResponse.d.mts +0 -18
  586. package/models/response/OperatorResponse.mjs +0 -1
  587. package/models/response/ValidationError.d.mts +0 -9
  588. package/models/response/ValidationError.mjs +0 -1
  589. package/models/roadworthiness/RoadWorthinessCheckItem.d.mts +0 -9
  590. package/models/roadworthiness/RoadWorthinessCheckItem.mjs +0 -1
  591. package/models/roadworthiness/RoadWorthinessCheckList.d.mts +0 -9
  592. package/models/roadworthiness/RoadWorthinessCheckList.mjs +0 -1
  593. package/models/trailer/PoliceDefect.d.mts +0 -7
  594. package/models/trailer/PoliceDefect.mjs +0 -1
  595. package/models/trailer/Trailer.d.mts +0 -54
  596. package/models/trailer/Trailer.mjs +0 -1
  597. package/src/context/RuntimeContext.ts +0 -90
  598. package/src/decorators/CloseProhibitionsAuditValidator.ts +0 -23
  599. package/src/decorators/IsNullableNumber.ts +0 -23
  600. package/src/decorators/IsValidLicenceNumberForUK.ts +0 -47
  601. package/src/decorators/MandatoryField.ts +0 -85
  602. package/src/decorators/RequiredObject.ts +0 -44
  603. package/src/decorators/ValidateCloseProhibitionsNotice.ts +0 -25
  604. package/src/decorators/ValidateDeleteEncounterMotor.ts +0 -25
  605. package/src/decorators/ValidateDeleteEncounterNotice.ts +0 -35
  606. package/src/decorators/ValidateDeleteEncounterTrailer.ts +0 -34
  607. package/src/decorators/ValidateMotorObject.ts +0 -70
  608. package/src/decorators/ValidateOperatorObject.ts +0 -49
  609. package/src/decorators/ValidatePnoGeneratedNumber.ts +0 -60
  610. package/src/decorators/ValidateSetupUserInput.ts +0 -29
  611. package/src/decorators/ValidateTrailerObject.ts +0 -66
  612. package/src/decorators/ValidateUKDateFormat.ts +0 -33
  613. package/src/decorators/bodytype/ValidateBodyType.ts +0 -42
  614. package/src/decorators/contact/ValidateContact.ts +0 -50
  615. package/src/decorators/delete/ValidateDeleteEncounter.ts +0 -32
  616. package/src/decorators/delete/ValidateDeleteEncounterAudit.ts +0 -43
  617. package/src/decorators/delete/ValidateDeleteEncounterEncTexts.ts +0 -40
  618. package/src/decorators/delete/ValidateIncompleteEncDeleteFixedPenalty.ts +0 -85
  619. package/src/decorators/ethnicity/ValidateEthnicity.ts +0 -39
  620. package/src/decorators/isNullableString.ts +0 -22
  621. package/src/decorators/notices/ValidateFixedPenalty.ts +0 -139
  622. package/src/decorators/objects/ValidateEncounterReqObject.ts +0 -36
  623. package/src/decorators/objects/ValidateJourneyRequired.ts +0 -51
  624. package/src/decorators/prohibitions/ValidateCloseProhibitions.ts +0 -33
  625. package/src/decorators/tacho/ValidateTachoValue.ts +0 -41
  626. package/src/enums/EncounterType.ts +0 -7
  627. package/src/enums/EventType.ts +0 -10
  628. package/src/enums/ExaminerOfficerType.ts +0 -6
  629. package/src/enums/ProcessStatus.ts +0 -15
  630. package/src/enums/RequestType.ts +0 -6
  631. package/src/enums/ValidationGroup.ts +0 -6
  632. package/src/index.ts +0 -35
  633. package/src/models/McEncounterRoot.ts +0 -23
  634. package/src/models/MessageBody.ts +0 -10
  635. package/src/models/MessageHeader.ts +0 -21
  636. package/src/models/Request.ts +0 -16
  637. package/src/models/Transfer.ts +0 -19
  638. package/src/models/__mocks__/invalid/missing-mandatory.json +0 -1
  639. package/src/models/__mocks__/valid/complete-encounter.json +0 -3
  640. package/src/models/__tests__/index.spec.ts +0 -20
  641. package/src/models/audit/AuditBase.ts +0 -45
  642. package/src/models/audit/AuditEventBase.ts +0 -25
  643. package/src/models/common/CommonCode.ts +0 -16
  644. package/src/models/common/CommonData.ts +0 -12
  645. package/src/models/common/CommonDeletion.ts +0 -17
  646. package/src/models/common/CommonDescription.ts +0 -9
  647. package/src/models/common/CommonError.ts +0 -5
  648. package/src/models/common/CommonOffence.ts +0 -70
  649. package/src/models/common/CommonOffenceDetail.ts +0 -15
  650. package/src/models/common/CommonPostAddress.ts +0 -34
  651. package/src/models/common/CommonTradingAs.ts +0 -23
  652. package/src/models/common/CommonVehicle.ts +0 -45
  653. package/src/models/common/CommonVehicleWeights.ts +0 -16
  654. package/src/models/common/CommonVersion.ts +0 -12
  655. package/src/models/contact/Address.ts +0 -65
  656. package/src/models/contact/Contact.ts +0 -63
  657. package/src/models/contact/ContactType.ts +0 -35
  658. package/src/models/contact/Examiner.ts +0 -5
  659. package/src/models/contact/GenericContact.ts +0 -57
  660. package/src/models/contact/HSEBriefer.ts +0 -3
  661. package/src/models/contact/Recorder.ts +0 -3
  662. package/src/models/contact/RteArea.ts +0 -28
  663. package/src/models/contact/StoppingOfficer.ts +0 -15
  664. package/src/models/dangerous/DangerousCheckListBase.ts +0 -49
  665. package/src/models/dangerous/DangerousCheckListItemBase.ts +0 -26
  666. package/src/models/dangerous/DangerousCheckListItemDetailBase.ts +0 -38
  667. package/src/models/dangerous/DangerousContainerTypeBase.ts +0 -16
  668. package/src/models/defects/Defect.ts +0 -107
  669. package/src/models/defects/DefectProsecution.ts +0 -22
  670. package/src/models/defects/DefectSummary.ts +0 -49
  671. package/src/models/defects/Part.ts +0 -12
  672. package/src/models/defects/SignificanceReason.ts +0 -22
  673. package/src/models/driver/DetailsOrigin.ts +0 -21
  674. package/src/models/driver/Drivers.ts +0 -193
  675. package/src/models/driver/LicenceCategory.ts +0 -16
  676. package/src/models/driver/LicenceType.ts +0 -21
  677. package/src/models/emissions/EmissionCheckBase.ts +0 -80
  678. package/src/models/emissions/FuelTypeBase.ts +0 -19
  679. package/src/models/journey/Journey.ts +0 -83
  680. package/src/models/journey/JourneyType.ts +0 -30
  681. package/src/models/journey/PortOfExit.ts +0 -26
  682. package/src/models/minimum/AxlesWeight.ts +0 -50
  683. package/src/models/minimum/BodyType.ts +0 -18
  684. package/src/models/minimum/CapturedEthnicity.ts +0 -25
  685. package/src/models/minimum/EncounterReason.ts +0 -43
  686. package/src/models/minimum/EncounterTexts.ts +0 -23
  687. package/src/models/minimum/EthnicityInfo.ts +0 -21
  688. package/src/models/minimum/InspectionType.ts +0 -13
  689. package/src/models/minimum/Laden.ts +0 -13
  690. package/src/models/minimum/Location.ts +0 -85
  691. package/src/models/minimum/Motor.ts +0 -147
  692. package/src/models/minimum/Nationality.ts +0 -58
  693. package/src/models/minimum/ObservedEthnicityInfo.ts +0 -21
  694. package/src/models/minimum/RoadsideVehicleType.ts +0 -32
  695. package/src/models/minimum/SpecialReturnCodeFlagType.ts +0 -26
  696. package/src/models/minimum/TextType.ts +0 -16
  697. package/src/models/minimum/VehicleIdType.ts +0 -22
  698. package/src/models/notices/ActualOffences.ts +0 -57
  699. package/src/models/notices/ExemptionConditionBaseType.ts +0 -45
  700. package/src/models/notices/NoticeBase.ts +0 -263
  701. package/src/models/notices/NoticeClosureBaseType.ts +0 -10
  702. package/src/models/notices/NoticeType.ts +0 -83
  703. package/src/models/notices/NoticeTypeDetail.ts +0 -34
  704. package/src/models/notices/Offence.ts +0 -8
  705. package/src/models/notices/OffenceBaseType.ts +0 -48
  706. package/src/models/notices/OffenceSanctionText.ts +0 -8
  707. package/src/models/notices/OffenceSeverityBand.ts +0 -28
  708. package/src/models/notices/Offences.ts +0 -8
  709. package/src/models/notices/PenaltyNotice.ts +0 -94
  710. package/src/models/notices/PenaltyNoticeStatus.ts +0 -13
  711. package/src/models/notices/ProhibitionClosureReasonBaseType.ts +0 -19
  712. package/src/models/notices/RemovalInstruction.ts +0 -19
  713. package/src/models/operator/ExistingOperatorDetail.ts +0 -63
  714. package/src/models/operator/ExistingTradingAs.ts +0 -22
  715. package/src/models/operator/InitiatingReason.ts +0 -31
  716. package/src/models/operator/LicenceTypeCode.ts +0 -21
  717. package/src/models/operator/OCRSOperatorSnapshots.ts +0 -25
  718. package/src/models/operator/Operator.ts +0 -87
  719. package/src/models/operator/RecordType.ts +0 -13
  720. package/src/models/operator/StateOfOpDisc.ts +0 -13
  721. package/src/models/operator/TeHoursResult.ts +0 -16
  722. package/src/models/operator/TeOtherResult.ts +0 -16
  723. package/src/models/operator/VeVisitResult.ts +0 -16
  724. package/src/models/payments/ActualPayment.ts +0 -56
  725. package/src/models/payments/PaymentReversalReason.ts +0 -19
  726. package/src/models/payments/PaymentStatus.ts +0 -24
  727. package/src/models/postcode/PostcodeIn.ts +0 -6
  728. package/src/models/postcode/PostcodeInDocument.ts +0 -11
  729. package/src/models/queue/ClaimUserDetails.ts +0 -21
  730. package/src/models/queue/RequestQueue.ts +0 -98
  731. package/src/models/request/EncounterReq.ts +0 -374
  732. package/src/models/request/EncounterRequest.ts +0 -21
  733. package/src/models/request/InvocationRequest.ts +0 -15
  734. package/src/models/request/OperatorRequest.ts +0 -24
  735. package/src/models/request/OperatorVisitReq.ts +0 -116
  736. package/src/models/request/RequestMetaData.ts +0 -18
  737. package/src/models/response/EncounterResponse.ts +0 -37
  738. package/src/models/response/MCError.ts +0 -9
  739. package/src/models/response/OperatorResponse.ts +0 -34
  740. package/src/models/response/ValidationError.ts +0 -15
  741. package/src/models/roadworthiness/RoadWorthinessCheckItem.ts +0 -17
  742. package/src/models/roadworthiness/RoadWorthinessCheckList.ts +0 -21
  743. package/src/models/trailer/PoliceDefect.ts +0 -13
  744. package/src/models/trailer/Trailer.ts +0 -102
  745. package/src/transformers/ToUpperCase.ts +0 -6
  746. package/src/transformers/TransformUKDateTime.ts +0 -19
  747. package/transformers/ToUpperCase.d.mts +0 -3
  748. package/transformers/ToUpperCase.mjs +0 -1
  749. package/transformers/TransformUKDateTime.d.mts +0 -3
  750. package/transformers/TransformUKDateTime.mjs +0 -1
  751. package/tsconfig.json +0 -19
  752. package/tsup.config.ts +0 -10
@@ -1 +1 @@
1
- 'use strict';var r=class t{static instance;level;officerType;requestType;constructor(){this.level=1,this.officerType="ANY",this.requestType="C";}static getInstance(){return t.instance||(t.instance=new t),t.instance}getEncounterType(){return this.level}setEncounterType(e){this.level=e;}getExaminerOfficerType(){return this.officerType}setExaminerOfficerType(e){this.officerType=e;}getRequestType(){return this.requestType}setRequestType(e){this.requestType=e;}isDeletedEncounter(){return this.requestType==="D"}};exports.CurrentEncounterLevel=r;
1
+ 'use strict';var s=Object.defineProperty;var r=(t,e)=>s(t,"name",{value:e,configurable:true});var i=class t{static{r(this,"CurrentEncounterLevel");}static instance;level;officerType;requestType;constructor(){this.level=1,this.officerType="ANY",this.requestType="C";}static getInstance(){return t.instance||(t.instance=new t),t.instance}getEncounterType(){return this.level}setEncounterType(e){this.level=e;}getExaminerOfficerType(){return this.officerType}setExaminerOfficerType(e){this.officerType=e;}getRequestType(){return this.requestType}setRequestType(e){this.requestType=e;}isDeletedEncounter(){return this.requestType==="D"}};exports.CurrentEncounterLevel=i;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function d(t,o=[]){return e=>{classValidator.registerDecorator({name:"CloseProhibitionsAuditValidator",target:e,propertyName:void 0,options:t,validator:{validate(n,i){return i.object?.eventFullDescription?.trim().toUpperCase()==="CMP"},defaultMessage(n){return '"eventFullDescription" must be "CMP".'}}});}}exports.CloseProhibitionsAuditValidator=d;
1
+ 'use strict';var classValidator=require('class-validator');var r=Object.defineProperty;var n=(t,e)=>r(t,"name",{value:e,configurable:true});function g(t,e=[]){return i=>{classValidator.registerDecorator({name:"CloseProhibitionsAuditValidator",target:i,propertyName:void 0,options:t,validator:{validate(a,o){return o.object?.eventFullDescription?.trim().toUpperCase()==="CMP"},defaultMessage(a){return '"eventFullDescription" must be "CMP".'}}});}}n(g,"CloseProhibitionsAuditValidator");exports.CloseProhibitionsAuditValidator=g;
@@ -1,5 +1,5 @@
1
1
  import { ValidationOptions } from 'class-validator';
2
2
 
3
- declare function IsNullableNumber(validationOptions?: ValidationOptions): (object: Object, propertyName: string) => void;
3
+ declare function IsNullableNumber(validationOptions?: ValidationOptions): (target: object, propertyKey: string | symbol) => void;
4
4
 
5
5
  export { IsNullableNumber };
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function s(r){return (e,n)=>{classValidator.registerDecorator({name:"isNullableNumber",target:e.constructor,propertyName:n,options:r,validator:{validate(t,o){return t===null||typeof t=="number"},defaultMessage(t){return `${t.property} must be a number or null`}}});}}exports.IsNullableNumber=s;
1
+ 'use strict';var classValidator=require('class-validator');var a=Object.defineProperty;var n=(r,e)=>a(r,"name",{value:e,configurable:true});function b(r){return (e,o)=>{classValidator.registerDecorator({name:"isNullableNumber",target:e.constructor,propertyName:o,options:r,validator:{validate(t,l){return t===null||typeof t=="number"},defaultMessage(t){return `${t.property} must be a number or null`}}});}}n(b,"IsNullableNumber");exports.IsNullableNumber=b;
@@ -1,4 +1,4 @@
1
- import { ValidatorConstraintInterface, ValidationArguments, ValidationOptions } from 'class-validator';
1
+ import { ValidationOptions, ValidatorConstraintInterface, ValidationArguments } from 'class-validator';
2
2
 
3
3
  declare class IsValidLicenceNumberForUKConstraint implements ValidatorConstraintInterface {
4
4
  validate(value: any, args: ValidationArguments): boolean;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');var l=(a,t,r,n)=>{for(var e=t,s=a.length-1,o;s>=0;s--)(o=a[s])&&(e=(o(e))||e);return e};exports.IsValidLicenceNumberForUKConstraint=class i{validate(t,r){let n=r.object,e=/(^[A-Za-z9]{5}\d[0156]\d([0][1-9]|[12]\d|3[01])\d[A-Za-z9]{2}\d[A-Za-z]{2}$)|(^[0-9]{8}$)/,o=n?.nationality?.irlCode?.toUpperCase();return (o==="GB"||o==="UK")&&n?.licenceIssueNo!=null&&t!=null?e.test(t):true}defaultMessage(){return "Driver licence number for GB/UK does not match the expected format."}};exports.IsValidLicenceNumberForUKConstraint=l([classValidator.ValidatorConstraint({name:"IsValidLicenceNumberForUK",async:false})],exports.IsValidLicenceNumberForUKConstraint);function b(a){return (t,r)=>{classValidator.registerDecorator({target:t.constructor,propertyName:r,options:a,validator:exports.IsValidLicenceNumberForUKConstraint});}}exports.IsValidLicenceNumberForUK=b;
1
+ 'use strict';var classValidator=require('class-validator');var c=Object.defineProperty;var l=(a,t)=>c(a,"name",{value:t,configurable:true});var d=(a,t,o,r)=>{for(var e=t,s=a.length-1,i;s>=0;s--)(i=a[s])&&(e=(i(e))||e);return e};exports.IsValidLicenceNumberForUKConstraint=class n{validate(t,o){let r=o.object,e=/(^[A-Za-z9]{5}\d[0156]\d([0][1-9]|[12]\d|3[01])\d[A-Za-z9]{2}\d[A-Za-z]{2}$)|(^[0-9]{8}$)/,i=r?.nationality?.irlCode?.toUpperCase();return (i==="GB"||i==="UK")&&r?.licenceIssueNo!=null&&t!=null?e.test(t):true}defaultMessage(){return "Driver licence number for GB/UK does not match the expected format."}};l(exports.IsValidLicenceNumberForUKConstraint,"IsValidLicenceNumberForUKConstraint"),exports.IsValidLicenceNumberForUKConstraint=d([classValidator.ValidatorConstraint({name:"IsValidLicenceNumberForUK",async:false})],exports.IsValidLicenceNumberForUKConstraint);function D(a){return (t,o)=>{classValidator.registerDecorator({target:t.constructor,propertyName:o,options:a,validator:exports.IsValidLicenceNumberForUKConstraint});}}l(D,"IsValidLicenceNumberForUK");exports.IsValidLicenceNumberForUK=D;
@@ -1,4 +1,4 @@
1
- import { ValidatorConstraintInterface, ValidationArguments, ValidationOptions } from 'class-validator';
1
+ import { ValidationOptions, ValidatorConstraintInterface, ValidationArguments } from 'class-validator';
2
2
  import { EncounterType } from '../enums/EncounterType.js';
3
3
  import { ExaminerOfficerType } from '../enums/ExaminerOfficerType.js';
4
4
 
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');var c=(r,e,i,t)=>{for(var n=e,o=r.length-1,s;o>=0;o--)(s=r[o])&&(n=(s(n))||n);return n};var u=class r{static instance;level;officerType;requestType;constructor(){this.level=1,this.officerType="ANY",this.requestType="C";}static getInstance(){return r.instance||(r.instance=new r),r.instance}getEncounterType(){return this.level}setEncounterType(e){this.level=e;}getExaminerOfficerType(){return this.officerType}setExaminerOfficerType(e){this.officerType=e;}getRequestType(){return this.requestType}setRequestType(e){this.requestType=e;}isDeletedEncounter(){return this.requestType==="D"}};exports.MandatoryFieldConstraint=class a{validate(e,i){let t=i.constraints[0],n=u.getInstance(),o=n.getEncounterType(),s=n.getExaminerOfficerType();return t.level===0||t.exceptions?.includes(o)||t.level!==void 0&&t.level>o||t.roles?.length&&!t.roles.includes(s)&&!t.roles.includes("ANY")?true:e==null?false:typeof e=="string"?t.allowEmpty?true:e.trim().length>0:Array.isArray(e)?e.length===0?false:e.every((f,O)=>f==null?false:Object.entries(f).every(([g,l])=>typeof l=="string"?l.trim().length>0:l!=null)):true}};exports.MandatoryFieldConstraint=c([classValidator.ValidatorConstraint({name:"MandatoryField",async:false})],exports.MandatoryFieldConstraint);function Y(r,e){return (i,t)=>{classValidator.registerDecorator({name:"MandatoryField",target:i.constructor,propertyName:t,constraints:[r],options:e,validator:exports.MandatoryFieldConstraint});}}exports.MandatoryField=Y;
1
+ 'use strict';var classValidator=require('class-validator');var p=Object.defineProperty;var a=(r,e)=>p(r,"name",{value:e,configurable:true});var E=(r,e,i,t)=>{for(var n=e,s=r.length-1,l;s>=0;s--)(l=r[s])&&(n=(l(n))||n);return n};var f=class r{static{a(this,"CurrentEncounterLevel");}static instance;level;officerType;requestType;constructor(){this.level=1,this.officerType="ANY",this.requestType="C";}static getInstance(){return r.instance||(r.instance=new r),r.instance}getEncounterType(){return this.level}setEncounterType(e){this.level=e;}getExaminerOfficerType(){return this.officerType}setExaminerOfficerType(e){this.officerType=e;}getRequestType(){return this.requestType}setRequestType(e){this.requestType=e;}isDeletedEncounter(){return this.requestType==="D"}};exports.MandatoryFieldConstraint=class o{validate(e,i){let t=i.constraints[0],n=f.getInstance(),s=n.getEncounterType(),l=n.getExaminerOfficerType();return t.level===0||t.exceptions?.includes(s)||t.level!==void 0&&t.level>s||t.roles?.length&&!t.roles.includes(l)&&!t.roles.includes("ANY")?true:e==null?false:typeof e=="string"?t.allowEmpty?true:e.trim().length>0:Array.isArray(e)?e.length===0?false:e.every((c,g)=>c==null?false:Object.entries(c).every(([x,u])=>typeof u=="string"?u.trim().length>0:u!=null)):true}};a(exports.MandatoryFieldConstraint,"MandatoryFieldConstraint"),exports.MandatoryFieldConstraint=E([classValidator.ValidatorConstraint({name:"MandatoryField",async:false})],exports.MandatoryFieldConstraint);function P(r,e){return (i,t)=>{classValidator.registerDecorator({name:"MandatoryField",target:i.constructor,propertyName:t,constraints:[r],options:e,validator:exports.MandatoryFieldConstraint});}}a(P,"MandatoryField");exports.MandatoryField=P;
@@ -1,4 +1,4 @@
1
- import { ValidatorConstraintInterface, ValidationArguments, ValidationOptions } from 'class-validator';
1
+ import { ValidationOptions, ValidatorConstraintInterface, ValidationArguments } from 'class-validator';
2
2
 
3
3
  declare class RequiredObjectConstraint implements ValidatorConstraintInterface {
4
4
  validate(value: any, _args: ValidationArguments): boolean;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');var l=(n,t,r,i)=>{for(var e=t,o=n.length-1,s;o>=0;o--)(s=n[o])&&(e=(s(e))||e);return e};exports.RequiredObjectConstraint=class a{validate(t,r){return t==null?false:typeof t=="object"?Object.keys(t).length>0:true}defaultMessage(t){return `${t.property} is required at this encounter level.`}};exports.RequiredObjectConstraint=l([classValidator.ValidatorConstraint({name:"RequiredObject",async:false})],exports.RequiredObjectConstraint);function b(n){return (t,r)=>{classValidator.registerDecorator({name:"RequiredObject",target:t.constructor,propertyName:r,options:n,validator:exports.RequiredObjectConstraint});}}exports.RequiredObject=b;
1
+ 'use strict';var classValidator=require('class-validator');var d=Object.defineProperty;var l=(a,t)=>d(a,"name",{value:t,configurable:true});var f=(a,t,n,i)=>{for(var e=t,o=a.length-1,s;o>=0;o--)(s=a[o])&&(e=(s(e))||e);return e};exports.RequiredObjectConstraint=class r{validate(t,n){return t==null?false:typeof t=="object"?Object.keys(t).length>0:true}defaultMessage(t){return `${t.property} is required at this encounter level.`}};l(exports.RequiredObjectConstraint,"RequiredObjectConstraint"),exports.RequiredObjectConstraint=f([classValidator.ValidatorConstraint({name:"RequiredObject",async:false})],exports.RequiredObjectConstraint);function b(a){return (t,n)=>{classValidator.registerDecorator({name:"RequiredObject",target:t.constructor,propertyName:n,options:a,validator:exports.RequiredObjectConstraint});}}l(b,"RequiredObject");exports.RequiredObject=b;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function u(e){return o=>{classValidator.registerDecorator({name:"ValidateCloseProhibitionsNotice",target:o,propertyName:void 0,options:e,validator:{validate(i,a){let t=a.object;return t?t.noticeStatus?.toUpperCase?.()==="C":false},defaultMessage(i){return "Notices noticeStatus must be 'C'."}}});}}exports.ValidateCloseProhibitionsNotice=u;
1
+ 'use strict';var classValidator=require('class-validator');var r=Object.defineProperty;var i=(t,e)=>r(t,"name",{value:e,configurable:true});function m(t){return e=>{classValidator.registerDecorator({name:"ValidateCloseProhibitionsNotice",target:e,propertyName:void 0,options:t,validator:{validate(a,n){let o=n.object;return o?o.noticeStatus?.toUpperCase?.()==="C":false},defaultMessage(a){return "Notices noticeStatus must be 'C'."}}});}}i(m,"ValidateCloseProhibitionsNotice");exports.ValidateCloseProhibitionsNotice=m;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function u(o){return e=>{classValidator.registerDecorator({name:"ValidateDeleteEncounterMotor",target:e,propertyName:void 0,options:o,validator:{validate(n,r){let t=r.object;return t?t.vehicleId!=null:false},defaultMessage(n){return "Motor vehicleId must not be null."}}});}}exports.ValidateDeleteEncounterMotor=u;
1
+ 'use strict';var classValidator=require('class-validator');var i=Object.defineProperty;var n=(t,o)=>i(t,"name",{value:o,configurable:true});function c(t){return o=>{classValidator.registerDecorator({name:"ValidateDeleteEncounterMotor",target:o,propertyName:void 0,options:t,validator:{validate(r,a){let e=a.object;return e?e.vehicleId!=null:false},defaultMessage(r){return "Motor vehicleId must not be null."}}});}}n(c,"ValidateDeleteEncounterMotor");exports.ValidateDeleteEncounterMotor=c;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function m(e){return n=>{classValidator.registerDecorator({name:"ValidateDeleteEncounterNotice",target:n,propertyName:void 0,options:e,validator:{validate(o,a){let t=a.object;if(!t)return false;let s=t.noticeType?.code!=null,i=t.noticeStatus?.toUpperCase?.()==="W",u=t.issueDate!=null,r=t.inputDate!=null;return s&&i&&u&&r},defaultMessage(o){return ["Notices noticeType.code must not be null.","Notices noticeStatus must be 'W'.","Notices issueDate must not be null.","Notices inputDate must not be null."].join(" ")}}});}}exports.ValidateDeleteEncounterNotice=m;
1
+ 'use strict';var classValidator=require('class-validator');var c=Object.defineProperty;var o=(e,n)=>c(e,"name",{value:n,configurable:true});function g(e){return n=>{classValidator.registerDecorator({name:"ValidateDeleteEncounterNotice",target:n,propertyName:void 0,options:e,validator:{validate(a,s){let t=s.object;if(!t)return false;let i=t.noticeType?.code!=null,u=t.noticeStatus?.toUpperCase?.()==="W",r=t.issueDate!=null,l=t.inputDate!=null;return i&&u&&r&&l},defaultMessage(a){return ["Notices noticeType.code must not be null.","Notices noticeStatus must be 'W'.","Notices issueDate must not be null.","Notices inputDate must not be null."].join(" ")}}});}}o(g,"ValidateDeleteEncounterNotice");exports.ValidateDeleteEncounterNotice=g;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function s(r){return t=>{classValidator.registerDecorator({name:"ValidateDeleteEncounterTrailer",target:t,propertyName:"trailer",options:r,validator:{validate(a,i){let e=i.object;return e?e.vehicleId!=null:true},defaultMessage(a){return "Trailer vehicleId must not be null."}}});}}exports.ValidateDeleteEncounterTrailer=s;
1
+ 'use strict';var classValidator=require('class-validator');var l=Object.defineProperty;var a=(e,r)=>l(e,"name",{value:r,configurable:true});function c(e){return r=>{classValidator.registerDecorator({name:"ValidateDeleteEncounterTrailer",target:r,propertyName:"trailer",options:e,validator:{validate(i,n){let t=n.object;return t?t.vehicleId!=null:true},defaultMessage(i){return "Trailer vehicleId must not be null."}}});}}a(c,"ValidateDeleteEncounterTrailer");exports.ValidateDeleteEncounterTrailer=c;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');var i=class r{static instance;level;officerType;requestType;constructor(){this.level=1,this.officerType="ANY",this.requestType="C";}static getInstance(){return r.instance||(r.instance=new r),r.instance}getEncounterType(){return this.level}setEncounterType(t){this.level=t;}getExaminerOfficerType(){return this.officerType}setExaminerOfficerType(t){this.officerType=t;}getRequestType(){return this.requestType}setRequestType(t){this.requestType=t;}isDeletedEncounter(){return this.requestType==="D"}};function M(r){return t=>{classValidator.registerDecorator({name:"ValidateMotorObject",target:t,propertyName:"motor",options:r,validator:{validate(a,s){let e=s.object;if(!e)return false;let l=!!e.nationality,c=!!e.vehicleIdType,d=!!e.roadsideVehicleType;if(!e.vehicleId||!l||!e.nationality?.irlCode||!c||!e.vehicleIdType?.shortCode||!d)return false;let p=e.vehicleId.toLowerCase(),u=e.vehicleIdType.shortCode.toLowerCase();e.nationality.irlCode.toLowerCase();let T=e.roadsideVehicleType.tractorIndicator?.toUpperCase()==="N",o=0,n=i.getInstance().getEncounterType();return ["vrm","vin"].includes(u)||o++,n!==2&&e.odometerReading==null&&o++,(n===2||e.actionCode?.toUpperCase()==="C")&&e.odometerReadingUnit==null&&o++,T&&o++,/^[a-z0-9]+$/i.test(p)||o++,o===0},defaultMessage(a){return "Motor requires VehicleId, Nationality, VehicleIdType and RoadsideVehicleType. Odometer or format may also be invalid."}}});}}exports.ValidateMotorObject=M;
1
+ 'use strict';var classValidator=require('class-validator');var m=Object.defineProperty;var i=(r,t)=>m(r,"name",{value:t,configurable:true});var n=class r{static{i(this,"CurrentEncounterLevel");}static instance;level;officerType;requestType;constructor(){this.level=1,this.officerType="ANY",this.requestType="C";}static getInstance(){return r.instance||(r.instance=new r),r.instance}getEncounterType(){return this.level}setEncounterType(t){this.level=t;}getExaminerOfficerType(){return this.officerType}setExaminerOfficerType(t){this.officerType=t;}getRequestType(){return this.requestType}setRequestType(t){this.requestType=t;}isDeletedEncounter(){return this.requestType==="D"}};function b(r){return t=>{classValidator.registerDecorator({name:"ValidateMotorObject",target:t,propertyName:"motor",options:r,validator:{validate(s,l){let e=l.object;if(!e)return false;let c=!!e.nationality,d=!!e.vehicleIdType,p=!!e.roadsideVehicleType;if(!e.vehicleId||!c||!e.nationality?.irlCode||!d||!e.vehicleIdType?.shortCode||!p)return false;let u=e.vehicleId.toLowerCase(),T=e.vehicleIdType.shortCode.toLowerCase();e.nationality.irlCode.toLowerCase();let f=e.roadsideVehicleType.tractorIndicator?.toUpperCase()==="N",o=0,a=n.getInstance().getEncounterType();return ["vrm","vin"].includes(T)||o++,a!==2&&e.odometerReading==null&&o++,(a===2||e.actionCode?.toUpperCase()==="C")&&e.odometerReadingUnit==null&&o++,f&&o++,/^[a-z0-9]+$/i.test(u)||o++,o===0},defaultMessage(s){return "Motor requires VehicleId, Nationality, VehicleIdType and RoadsideVehicleType. Odometer or format may also be invalid."}}});}}i(b,"ValidateMotorObject");exports.ValidateMotorObject=b;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function O(o){return n=>{classValidator.registerDecorator({name:"ValidateOperatorObject",target:n,propertyName:void 0,options:o,validator:{validate(r,s){let e=s.object;if(!e)return false;let t=0,a=e.stateOfOpDisc?.licenceDiscType,i=e.odtOliLicenceNumber;return a?.toUpperCase()==="V"&&!i&&t++,i&&e.licenceTypeCode?.licenceTypeCode&&(e.licenceTypeCode.licenceTypeCode.toUpperCase()==="CA"?/^[^*?]*$/.test(i)||t++:/^([a-zA-Z]{2}[0-9]{0,23})$/.test(i)||t++),t===0},defaultMessage(r){return "odtOliLicenceNumber must exist if licenceDiscType is 'V'. If licenceTypeCode is 'CA', it must not contain * or ?. Otherwise, it must start with 2 letters followed by up to 23 digits."}}});}}exports.ValidateOperatorObject=O;
1
+ 'use strict';var classValidator=require('class-validator');var p=Object.defineProperty;var r=(o,n)=>p(o,"name",{value:n,configurable:true});function C(o){return n=>{classValidator.registerDecorator({name:"ValidateOperatorObject",target:n,propertyName:void 0,options:o,validator:{validate(s,a){let e=a.object;if(!e)return false;let t=0,c=e.stateOfOpDisc?.licenceDiscType,i=e.odtOliLicenceNumber;return c?.toUpperCase()==="V"&&!i&&t++,i&&e.licenceTypeCode?.licenceTypeCode&&(e.licenceTypeCode.licenceTypeCode.toUpperCase()==="CA"?/^[^*?]*$/.test(i)||t++:/^([a-zA-Z]{2}[0-9]{0,23})$/.test(i)||t++),t===0},defaultMessage(s){return "odtOliLicenceNumber must exist if licenceDiscType is 'V'. If licenceTypeCode is 'CA', it must not contain * or ?. Otherwise, it must start with 2 letters followed by up to 23 digits."}}});}}r(C,"ValidateOperatorObject");exports.ValidateOperatorObject=C;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function p(t){return i=>{classValidator.registerDecorator({name:"ValidatePnoGeneratedNumber",target:i,propertyName:void 0,options:t,validator:{validate(r,s){let e=s.object;if(!e)return false;let n=e.pnoGeneratedNumber,o=e.noticeRefSource?.toUpperCase?.()==="GEN";return !(n==null||o&&!/^[A-Za-z0-9]+$/.test(n)||o&&!u(n))},defaultMessage(r){return "pnoGeneratedNumber is invalid or does not match the check digit."}}});}}function u(t){if(!t||t.length<2)return false;let r=t.charAt(t.length-1).charCodeAt(0)-48,e=t.slice(0,-1).toUpperCase().split(""),n=0;for(let a=0;a<e.length;a++)n+=e[a].charCodeAt(0)*(a+1);let o=48+n%10;return r===o-48}exports.ValidatePnoGeneratedNumber=p;
1
+ 'use strict';var classValidator=require('class-validator');var u=Object.defineProperty;var s=(t,o)=>u(t,"name",{value:o,configurable:true});function C(t){return o=>{classValidator.registerDecorator({name:"ValidatePnoGeneratedNumber",target:o,propertyName:void 0,options:t,validator:{validate(i,c){let e=c.object;if(!e)return false;let n=e.pnoGeneratedNumber,a=e.noticeRefSource?.toUpperCase?.()==="GEN";return !(n==null||a&&!/^[A-Za-z0-9]+$/.test(n)||a&&!f(n))},defaultMessage(i){return "pnoGeneratedNumber is invalid or does not match the check digit."}}});}}s(C,"ValidatePnoGeneratedNumber");function f(t){if(!t||t.length<2)return false;let i=t.charAt(t.length-1).charCodeAt(0)-48,e=t.slice(0,-1).toUpperCase().split(""),n=0;for(let r=0;r<e.length;r++)n+=e[r].charCodeAt(0)*(r+1);let a=48+n%10;return i===a-48}s(f,"calculateCheckDigit");exports.ValidatePnoGeneratedNumber=C;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function d(t){return n=>{classValidator.registerDecorator({name:"ValidateSetupUserInput",target:n,propertyName:void 0,options:t,validator:{validate(a,s){let e=s.object;if(!e)return false;let o=e.csiType?.toUpperCase?.()==="P",r=e.setupUser!==null&&e.setupUser!==void 0;return o||r},defaultMessage(a){return 'setupUser must be present when csiType is not "P"'}}});}}exports.ValidateSetupUserInput=d;
1
+ 'use strict';var classValidator=require('class-validator');var u=Object.defineProperty;var a=(t,n)=>u(t,"name",{value:n,configurable:true});function f(t){return n=>{classValidator.registerDecorator({name:"ValidateSetupUserInput",target:n,propertyName:void 0,options:t,validator:{validate(s,o){let e=o.object;if(!e)return false;let r=e.csiType?.toUpperCase?.()==="P",i=e.setupUser!==null&&e.setupUser!==void 0;return r||i},defaultMessage(s){return 'setupUser must be present when csiType is not "P"'}}});}}a(f,"ValidateSetupUserInput");exports.ValidateSetupUserInput=f;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function y(o){return t=>{classValidator.registerDecorator({name:"ValidateTrailerObject",target:t,propertyName:"trailer",options:o,validator:{validate(i,n){let e=n.object;if(!e||!e.vehicleId||!e.nationality?.irlCode||!e.vehicleIdType?.shortCode||!e.roadsideVehicleType?.key)return false;let l=e.vehicleId.toLowerCase(),a=e.vehicleIdType.shortCode.toLowerCase(),s=e.nationality.irlCode.toLowerCase(),d=e.roadsideVehicleType.tractorIndicator?.toUpperCase()==="N",r=0;return /^(tin|tra)+$/.test(a)||r++,d||r++,u(s,a,l)||r++,r===0},defaultMessage(i){return "Trailer object validation failed: invalid VehicleId, VehicleIdType, or RoadsideVehicleType."}}});}}function u(o,t,i){return t==="tin"||t==="tra"?/^[a-z0-9]+$/i.test(i):false}exports.ValidateTrailerObject=y;
1
+ 'use strict';var classValidator=require('class-validator');var u=Object.defineProperty;var a=(r,t)=>u(r,"name",{value:t,configurable:true});function T(r){return t=>{classValidator.registerDecorator({name:"ValidateTrailerObject",target:t,propertyName:"trailer",options:r,validator:{validate(o,l){let e=l.object;if(!e||!e.vehicleId||!e.nationality?.irlCode||!e.vehicleIdType?.shortCode||!e.roadsideVehicleType?.key)return false;let s=e.vehicleId.toLowerCase(),n=e.vehicleIdType.shortCode.toLowerCase(),d=e.nationality.irlCode.toLowerCase(),c=e.roadsideVehicleType.tractorIndicator?.toUpperCase()==="N",i=0;return /^(tin|tra)+$/.test(n)||i++,c||i++,f(d,n,s)||i++,i===0},defaultMessage(o){return "Trailer object validation failed: invalid VehicleId, VehicleIdType, or RoadsideVehicleType."}}});}}a(T,"ValidateTrailerObject");function f(r,t,o){return t==="tin"||t==="tra"?/^[a-z0-9]+$/i.test(o):false}a(f,"checkVehicleIdentifier");exports.ValidateTrailerObject=T;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');var d=(e,t,r,n)=>{for(var a=t,s=e.length-1,o;s>=0;s--)(o=e[s])&&(a=(o(a))||a);return a};var i=class{validate(t,r){return t==null?true:/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/.test(t)}defaultMessage(t){return `${t.property} must match format YYYY-MM-DD HH:mm:ss`}};i=d([classValidator.ValidatorConstraint({name:"ValidateUKDateFormat",async:false})],i);function x(e){return (t,r)=>{classValidator.registerDecorator({name:"ValidateUKDateFormat",target:t.constructor,propertyName:r,options:e,validator:i});}}exports.ValidateUKDateFormat=x;
1
+ 'use strict';var classValidator=require('class-validator');var l=Object.defineProperty;var d=(r,t)=>l(r,"name",{value:t,configurable:true});var g=(r,t,a,i)=>{for(var n=t,s=r.length-1,o;s>=0;s--)(o=r[s])&&(n=(o(n))||n);return n};var e=class{validate(t,a){return t==null?true:/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/.test(t)}defaultMessage(t){return `${t.property} must match format YYYY-MM-DD HH:mm:ss`}};d(e,"UKDateFormatValidator"),e=g([classValidator.ValidatorConstraint({name:"ValidateUKDateFormat",async:false})],e);function A(r){return (t,a)=>{classValidator.registerDecorator({name:"ValidateUKDateFormat",target:t.constructor,propertyName:a,options:r,validator:e});}}d(A,"ValidateUKDateFormat");exports.ValidateUKDateFormat=A;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');var r=class t{static instance;level;officerType;requestType;constructor(){this.level=1,this.officerType="ANY",this.requestType="C";}static getInstance(){return t.instance||(t.instance=new t),t.instance}getEncounterType(){return this.level}setEncounterType(e){this.level=e;}getExaminerOfficerType(){return this.officerType}setExaminerOfficerType(e){this.officerType=e;}getRequestType(){return this.requestType}setRequestType(e){this.requestType=e;}isDeletedEncounter(){return this.requestType==="D"}};function R(t){return e=>{classValidator.registerDecorator({name:"ValidateBodyType",target:e,propertyName:void 0,options:t,validator:{validate(n,s){let o=s.object;if(!o)return false;let i=o.roadsideVehicleType?.description,a=r.getInstance().getEncounterType();if(!i)return false;let p=i.toLowerCase()==="category t",u=a===2;return !(!p&&!u&&o.bodyType==null)},defaultMessage(n){return 'bodyType must not be null unless body type is "category T" or encounter level is SIFT'}}});}}exports.ValidateBodyType=R;
1
+ 'use strict';var classValidator=require('class-validator');var c=Object.defineProperty;var r=(t,e)=>c(t,"name",{value:e,configurable:true});var o=class t{static{r(this,"CurrentEncounterLevel");}static instance;level;officerType;requestType;constructor(){this.level=1,this.officerType="ANY",this.requestType="C";}static getInstance(){return t.instance||(t.instance=new t),t.instance}getEncounterType(){return this.level}setEncounterType(e){this.level=e;}getExaminerOfficerType(){return this.officerType}setExaminerOfficerType(e){this.officerType=e;}getRequestType(){return this.requestType}setRequestType(e){this.requestType=e;}isDeletedEncounter(){return this.requestType==="D"}};function q(t){return e=>{classValidator.registerDecorator({name:"ValidateBodyType",target:e,propertyName:void 0,options:t,validator:{validate(s,a){let i=a.object;if(!i)return false;let n=i.roadsideVehicleType?.description,p=o.getInstance().getEncounterType();if(!n)return false;let u=n.toLowerCase()==="category t",l=p===2;return !(!u&&!l&&i.bodyType==null)},defaultMessage(s){return 'bodyType must not be null unless body type is "category T" or encounter level is SIFT'}}});}}r(q,"ValidateBodyType");exports.ValidateBodyType=q;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');var n=class t{static instance;level;officerType;requestType;constructor(){this.level=1,this.officerType="ANY",this.requestType="C";}static getInstance(){return t.instance||(t.instance=new t),t.instance}getEncounterType(){return this.level}setEncounterType(e){this.level=e;}getExaminerOfficerType(){return this.officerType}setExaminerOfficerType(e){this.officerType=e;}getRequestType(){return this.requestType}setRequestType(e){this.requestType=e;}isDeletedEncounter(){return this.requestType==="D"}};function y(t){return e=>{classValidator.registerDecorator({name:"ValidateContact",target:e,propertyName:void 0,options:t,validator:{validate(o,i){let r=i.object;if(!r)return false;let u=n.getInstance().isDeletedEncounter()?"^(?!.*[\u2018\u2019',.-]{2})[A-Za-z\u2018\u2019',. -]*$":"^(?!-|\\s)(?!.*[\u2018\u2019',.-]{2})[A-Za-z\u2018\u2019',. -]*$",s=new RegExp(u),a=true;return r.forename!=null&&(s.test(r.forename)||(a=false)),r.surname!=null&&(s.test(r.surname)||(a=false)),a},defaultMessage(o){return `forename and surname must match ${n.getInstance().isDeletedEncounter()?"^(?!.*[\u2018\u2019',.-]{2})[A-Za-z\u2018\u2019',. -]*$":"^(?!-|\\s)(?!.*[\u2018\u2019',.-]{2})[A-Za-z\u2018\u2019',. -]*$"}`}}});}}exports.ValidateContact=y;
1
+ 'use strict';var classValidator=require('class-validator');var l=Object.defineProperty;var a=(t,e)=>l(t,"name",{value:e,configurable:true});var n=class t{static{a(this,"CurrentEncounterLevel");}static instance;level;officerType;requestType;constructor(){this.level=1,this.officerType="ANY",this.requestType="C";}static getInstance(){return t.instance||(t.instance=new t),t.instance}getEncounterType(){return this.level}setEncounterType(e){this.level=e;}getExaminerOfficerType(){return this.officerType}setExaminerOfficerType(e){this.officerType=e;}getRequestType(){return this.requestType}setRequestType(e){this.requestType=e;}isDeletedEncounter(){return this.requestType==="D"}};function D(t){return e=>{classValidator.registerDecorator({name:"ValidateContact",target:e,propertyName:void 0,options:t,validator:{validate(u,s){let r=s.object;if(!r)return false;let c=n.getInstance().isDeletedEncounter()?"^(?!.*[\u2018\u2019',.-]{2})[A-Za-z\u2018\u2019',. -]*$":"^(?!-|\\s)(?!.*[\u2018\u2019',.-]{2})[A-Za-z\u2018\u2019',. -]*$",o=new RegExp(c),i=true;return r.forename!=null&&(o.test(r.forename)||(i=false)),r.surname!=null&&(o.test(r.surname)||(i=false)),i},defaultMessage(u){return `forename and surname must match ${n.getInstance().isDeletedEncounter()?"^(?!.*[\u2018\u2019',.-]{2})[A-Za-z\u2018\u2019',. -]*$":"^(?!-|\\s)(?!.*[\u2018\u2019',.-]{2})[A-Za-z\u2018\u2019',. -]*$"}`}}});}}a(D,"ValidateContact");exports.ValidateContact=D;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function c(e){return n=>{classValidator.registerDecorator({name:"ValidateDeleteEncounter",target:n,propertyName:void 0,options:e,validator:{validate(t,r){let a=r.object;try{return a.generatedNumber!=null}catch(o){return console.error("Failed to validate DeleteEncounter on EncounterReq:",o),false}},defaultMessage(t){return "generatedNumber cannot be null when deleting an existing encounter."}}});}}exports.ValidateDeleteEncounter=c;
1
+ 'use strict';var classValidator=require('class-validator');var l=Object.defineProperty;var t=(e,n)=>l(e,"name",{value:n,configurable:true});function m(e){return n=>{classValidator.registerDecorator({name:"ValidateDeleteEncounter",target:n,propertyName:void 0,options:e,validator:{validate(r,a){let o=a.object;try{return o.generatedNumber!=null}catch(i){return console.error("Failed to validate DeleteEncounter on EncounterReq:",i),false}},defaultMessage(r){return "generatedNumber cannot be null when deleting an existing encounter."}}});}}t(m,"ValidateDeleteEncounter");exports.ValidateDeleteEncounter=m;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function c(n){return a=>{classValidator.registerDecorator({name:"ValidateDeleteEncounterAudit",target:a,propertyName:void 0,options:n,validator:{validate(o,r){let t=r.object;if(!t||!t.audits)return false;let i=t.audits;for(let e of i)if(e&&e.aevEventCode&&(e.aevEventCode.eventShortDescription?.toUpperCase()==="DEL"||e.aevEventCode.eventShortDescription?.toUpperCase()==="TFC"))return true;return false},defaultMessage(o){return "AuditBase aevEventCode must have description values of DEL and TFC at minimum."}}});}}exports.ValidateDeleteEncounterAudit=c;
1
+ 'use strict';var classValidator=require('class-validator');var u=Object.defineProperty;var o=(t,n)=>u(t,"name",{value:n,configurable:true});function m(t){return n=>{classValidator.registerDecorator({name:"ValidateDeleteEncounterAudit",target:n,propertyName:void 0,options:t,validator:{validate(r,i){let a=i.object;if(!a||!a.audits)return false;let s=a.audits;for(let e of s)if(e&&e.aevEventCode&&(e.aevEventCode.eventShortDescription?.toUpperCase()==="DEL"||e.aevEventCode.eventShortDescription?.toUpperCase()==="TFC"))return true;return false},defaultMessage(r){return "AuditBase aevEventCode must have description values of DEL and TFC at minimum."}}});}}o(m,"ValidateDeleteEncounterAudit");exports.ValidateDeleteEncounterAudit=m;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function d(n){return o=>{classValidator.registerDecorator({name:"ValidateDeleteEncounterEncTexts",target:o,propertyName:void 0,options:n,validator:{validate(r,a){let e=a.object;if(!e||!e.encounterTexts)return false;let s=e.encounterTexts;for(let t of s)if(t?.textType&&t.textType.code?.toUpperCase()==="DEL")return true;return false},defaultMessage(r){return "Encounter Texts TextType code must have value of DEL"}}});}}exports.ValidateDeleteEncounterEncTexts=d;
1
+ 'use strict';var classValidator=require('class-validator');var u=Object.defineProperty;var r=(e,t)=>u(e,"name",{value:t,configurable:true});function x(e){return t=>{classValidator.registerDecorator({name:"ValidateDeleteEncounterEncTexts",target:t,propertyName:void 0,options:e,validator:{validate(a,s){let n=s.object;if(!n||!n.encounterTexts)return false;let i=n.encounterTexts;for(let o of i)if(o?.textType&&o.textType.code?.toUpperCase()==="DEL")return true;return false},defaultMessage(a){return "Encounter Texts TextType code must have value of DEL"}}});}}r(x,"ValidateDeleteEncounterEncTexts");exports.ValidateDeleteEncounterEncTexts=x;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');var i=class e{static instance;level;officerType;requestType;constructor(){this.level=1,this.officerType="ANY",this.requestType="C";}static getInstance(){return e.instance||(e.instance=new e),e.instance}getEncounterType(){return this.level}setEncounterType(n){this.level=n;}getExaminerOfficerType(){return this.officerType}setExaminerOfficerType(n){this.officerType=n;}getRequestType(){return this.requestType}setRequestType(n){this.requestType=n;}isDeletedEncounter(){return this.requestType==="D"}};function U(e){return n=>{classValidator.registerDecorator({name:"ValidateIncompleteEncDeleteFixedPenalty",target:n,propertyName:void 0,options:e,validator:{validate(o,a){let s=a.object;if(!s||!i.getInstance().isDeletedEncounter())return true;let E=s.drivers||[],u=g(s);function p(r){return E.some(t=>t.driverType===r&&t.actualPayments&&t.actualPayments.length>0)}function m(r){return u.some(t=>t.penaltyNotice&&t.penaltyNotice.penaltyNoticeStatus?.code==="P"&&t.penaltyNotice.driverType===r)}function d(r){return u.some(t=>t.penaltyNotice&&t.penaltyNotice.driverType===r)}let c="A",l="O",y=p(c),f=p(l),T=m(c),N=m(l),v=d(c),P=d(l);return !(y&&T&&v||f&&N&&P)},defaultMessage(o){return "Cannot delete encounter with paid fixed penalty"}}});}}function g(e){let n=e.motor?.notices||[],o=e.trailer1?.notices||[],a=e.trailer2?.notices||[];return [...n,...o,...a]}exports.ValidateIncompleteEncDeleteFixedPenalty=U;
1
+ 'use strict';var classValidator=require('class-validator');var g=Object.defineProperty;var r=(e,t)=>g(e,"name",{value:t,configurable:true});var o=class e{static{r(this,"CurrentEncounterLevel");}static instance;level;officerType;requestType;constructor(){this.level=1,this.officerType="ANY",this.requestType="C";}static getInstance(){return e.instance||(e.instance=new e),e.instance}getEncounterType(){return this.level}setEncounterType(t){this.level=t;}getExaminerOfficerType(){return this.officerType}setExaminerOfficerType(t){this.officerType=t;}getRequestType(){return this.requestType}setRequestType(t){this.requestType=t;}isDeletedEncounter(){return this.requestType==="D"}};function _(e){return t=>{classValidator.registerDecorator({name:"ValidateIncompleteEncDeleteFixedPenalty",target:t,propertyName:void 0,options:e,validator:{validate(a,s){let c=s.object;if(!c||!o.getInstance().isDeletedEncounter())return true;let y=c.drivers||[],p=x(c);function m(i){return y.some(n=>n.driverType===i&&n.actualPayments&&n.actualPayments.length>0)}r(m,"driverHasActualPayment");function d(i){return p.some(n=>n.penaltyNotice&&n.penaltyNotice.penaltyNoticeStatus?.code==="P"&&n.penaltyNotice.driverType===i)}r(d,"driverHasPenaltyNoticePaid");function E(i){return p.some(n=>n.penaltyNotice&&n.penaltyNotice.driverType===i)}r(E,"driverHasFixedPenalty");let l="A",u="O",f=m(l),T=m(u),N=d(l),v=d(u),P=E(l),A=E(u);return !(f&&N&&P||T&&v&&A)},defaultMessage(a){return "Cannot delete encounter with paid fixed penalty"}}});}}r(_,"ValidateIncompleteEncDeleteFixedPenalty");function x(e){let t=e.motor?.notices||[],a=e.trailer1?.notices||[],s=e.trailer2?.notices||[];return [...t,...a,...s]}r(x,"getAllNotices");exports.ValidateIncompleteEncDeleteFixedPenalty=_;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function p(t){return n=>{classValidator.registerDecorator({name:"ValidateEthnicity",target:n,propertyName:void 0,options:t,validator:{validate(r,o){let e=o.object;if(!e)return false;let i=e.ethnicityInfo!=null;Array.isArray(e.encounterTexts)&&e.encounterTexts.length>0;let a=Array.isArray(e.encounterTexts)&&e.encounterTexts.some(s=>s.textType?.code?.toUpperCase()==="EMR");return !!(i||a)},defaultMessage(r){return "A reason must be given when ethnicity is not provided"}}});}}exports.ValidateEthnicity=p;
1
+ 'use strict';var classValidator=require('class-validator');var c=Object.defineProperty;var r=(t,n)=>c(t,"name",{value:n,configurable:true});function g(t){return n=>{classValidator.registerDecorator({name:"ValidateEthnicity",target:n,propertyName:void 0,options:t,validator:{validate(o,i){let e=i.object;if(!e)return false;let a=e.ethnicityInfo!=null;Array.isArray(e.encounterTexts)&&e.encounterTexts.length>0;let s=Array.isArray(e.encounterTexts)&&e.encounterTexts.some(u=>u?.textType?.code?.toUpperCase()==="EMR");return !!(a||s)},defaultMessage(o){return "A reason must be given when ethnicity is not provided"}}});}}r(g,"ValidateEthnicity");exports.ValidateEthnicity=g;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function u(r){return (n,i)=>{classValidator.registerDecorator({name:"isNullableString",target:n.constructor,propertyName:i,options:r,validator:{validate(t,e){return t===null||typeof t=="string"},defaultMessage(t){return `${t.property} must be a string or null`}}});}}exports.IsNullableString=u;
1
+ 'use strict';var classValidator=require('class-validator');var e=Object.defineProperty;var i=(r,n)=>e(r,"name",{value:n,configurable:true});function p(r){return (n,a)=>{classValidator.registerDecorator({name:"isNullableString",target:n.constructor,propertyName:a,options:r,validator:{validate(t,l){return t===null||typeof t=="string"},defaultMessage(t){return `${t.property} must be a string or null`}}});}}i(p,"IsNullableString");exports.IsNullableString=p;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');var p=class n{static instance;level;officerType;requestType;constructor(){this.level=1,this.officerType="ANY",this.requestType="C";}static getInstance(){return n.instance||(n.instance=new n),n.instance}getEncounterType(){return this.level}setEncounterType(r){this.level=r;}getExaminerOfficerType(){return this.officerType}setExaminerOfficerType(r){this.officerType=r;}getRequestType(){return this.requestType}setRequestType(r){this.requestType=r;}isDeletedEncounter(){return this.requestType==="D"}};function z(n){return r=>{classValidator.registerDecorator({name:"ValidateFixedPenalty",target:r,propertyName:void 0,options:n,validator:{validate(I,P){let i=P.object;if(!i||p.getInstance().isDeletedEncounter())return true;let A=i.motor?.notices??[],F=i.trailer1?.notices??[],D=i.trailer2?.notices??[],f=[...A,...F,...D],R=["BFPN01","FFPN01","FDEN01"],T=f.filter(e=>e.noticeType?.code&&R.includes(e.noticeType.code)),o=f.filter(e=>e.noticeType?.code==="FFPN01"),a=f.filter(e=>e.noticeType?.code==="FDEN01"),x=T.filter(e=>e.noticeStatus==="W"),d="NO IMMEDIATE PAYMENT",h="FP WITHDRAWAL REASON";function s(e){return (i.encounterTexts??[]).some(t=>t.textType?.name?.trim().toUpperCase()===e)}function c(e){return e.every(t=>["P","W"].includes(t.penaltyNotice?.penaltyNoticeStatus?.code??""))}function C(e,t){return e.some(l=>t.some(u=>l.penaltyNotice?.driverType&&u.penaltyNotice?.driverType&&l.penaltyNotice.driverType===u.penaltyNotice.driverType))}let m=o.some(e=>e.noticeStatus!=="W"),y=a.some(e=>e.noticeStatus!=="W");if(m&&!y&&!c(o)&&!s(d)||y&&!m&&!c(a)&&!s(d)||m&&y&&!C(o,a)&&(!c(o)||!c(a))&&!s(d)||x.length>0&&!s(h))return false;let N=i.drivers??[],g=N.flatMap(e=>e.actualPayments??[]),S=["C","Y","N"],E="R";for(let e of g){let t=e.paymentStatus?.code;if(!e.paymentDate||!e.inputDate||!e.amount||!e.paymentMethod||!e.recorder||!e.clientGuid||t&&S.includes(t)&&e.reversalDate||t===E&&!e.reversalDate||e.reversalDate&&t!==E||!e.reversalDate&&t===E)return false}for(let e of N){let t=e.driverType,l=T.filter(v=>v.penaltyNotice?.driverType===t&&v.penaltyNotice?.penaltyNoticeStatus?.code==="P"),u=e.actualPayments&&e.actualPayments.length>0;if(l.length>0&&!u)return false}return true},defaultMessage(){return "Invalid fixed penalty data: Please check notices, actual payments, and related rules."}}});}}exports.ValidateFixedPenalty=z;
1
+ 'use strict';var classValidator=require('class-validator');var I=Object.defineProperty;var i=(n,r)=>I(n,"name",{value:r,configurable:true});var f=class n{static{i(this,"CurrentEncounterLevel");}static instance;level;officerType;requestType;constructor(){this.level=1,this.officerType="ANY",this.requestType="C";}static getInstance(){return n.instance||(n.instance=new n),n.instance}getEncounterType(){return this.level}setEncounterType(r){this.level=r;}getExaminerOfficerType(){return this.officerType}setExaminerOfficerType(r){this.officerType=r;}getRequestType(){return this.requestType}setRequestType(r){this.requestType=r;}isDeletedEncounter(){return this.requestType==="D"}};function X(n){return r=>{classValidator.registerDecorator({name:"ValidateFixedPenalty",target:r,propertyName:void 0,options:n,validator:{validate(M,A){let o=A.object;if(!o||f.getInstance().isDeletedEncounter())return true;let F=o.motor?.notices??[],D=o.trailer1?.notices??[],R=o.trailer2?.notices??[],d=[...F,...D,...R],x=["BFPN01","FFPN01","FDEN01"],N=d.filter(e=>e.noticeType?.code&&x.includes(e.noticeType.code)),a=d.filter(e=>e.noticeType?.code==="FFPN01"),s=d.filter(e=>e.noticeType?.code==="FDEN01"),h=N.filter(e=>e.noticeStatus==="W"),m="NO IMMEDIATE PAYMENT",C="FP WITHDRAWAL REASON";function c(e){return (o.encounterTexts??[]).some(t=>t.textType?.name?.trim().toUpperCase()===e)}i(c,"encounterTextCorrect");function l(e){return e.every(t=>["P","W"].includes(t.penaltyNotice?.penaltyNoticeStatus?.code??""))}i(l,"allNoticesPaid");function g(e,t){return e.some(u=>t.some(p=>u.penaltyNotice?.driverType&&p.penaltyNotice?.driverType&&u.penaltyNotice.driverType===p.penaltyNotice.driverType))}i(g,"sameDriver");let y=a.some(e=>e.noticeStatus!=="W"),E=s.some(e=>e.noticeStatus!=="W");if(y&&!E&&!l(a)&&!c(m)||E&&!y&&!l(s)&&!c(m)||y&&E&&!g(a,s)&&(!l(a)||!l(s))&&!c(m)||h.length>0&&!c(C))return false;let v=o.drivers??[],S=v.flatMap(e=>e.actualPayments??[]),L=["C","Y","N"],T="R";for(let e of S){let t=e.paymentStatus?.code;if(!e.paymentDate||!e.inputDate||!e.amount||!e.paymentMethod||!e.recorder||!e.clientGuid||t&&L.includes(t)&&e.reversalDate||t===T&&!e.reversalDate||e.reversalDate&&t!==T||!e.reversalDate&&t===T)return false}for(let e of v){let t=e.driverType,u=N.filter(P=>P.penaltyNotice?.driverType===t&&P.penaltyNotice?.penaltyNoticeStatus?.code==="P"),p=e.actualPayments&&e.actualPayments.length>0;if(u.length>0&&!p)return false}return true},defaultMessage(){return "Invalid fixed penalty data: Please check notices, actual payments, and related rules."}}});}}i(X,"ValidateFixedPenalty");exports.ValidateFixedPenalty=X;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function d(r){return n=>{classValidator.registerDecorator({name:"ValidateEncounterReqObject",target:n,propertyName:void 0,options:r,validator:{validate(o,a){let t=a.object;try{let e=t.motor==null,i=t.trailer1==null;return !(e&&i)}catch(e){return console.error("Failed to validate EncounterReqObject:",e),false}},defaultMessage(o){return "At least either motor or trailer1 must be present during an encounter."}}});}}exports.ValidateEncounterReqObject=d;
1
+ 'use strict';var classValidator=require('class-validator');var l=Object.defineProperty;var o=(e,t)=>l(e,"name",{value:t,configurable:true});function p(e){return t=>{classValidator.registerDecorator({name:"ValidateEncounterReqObject",target:t,propertyName:void 0,options:e,validator:{validate(a,i){let n=i.object;try{let r=n.motor==null,s=n.trailer1==null;return !(r&&s)}catch(r){return console.error("Failed to validate EncounterReqObject:",r),false}},defaultMessage(a){return "At least either motor or trailer1 must be present during an encounter."}}});}}o(p,"ValidateEncounterReqObject");exports.ValidateEncounterReqObject=p;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function y(o){return a=>{classValidator.registerDecorator({name:"ValidateJourneyRequired",target:a,propertyName:void 0,options:o,validator:{validate(u,i){let r=i.object;try{let e=r.encounterReason,n=r.journey,t=!1;return e&&e.name&&(t=!e.name.match(/^(ANNUAL TEST|VE OPERATOR VISIT)$/)),t?!!(n&&n.journeyStartLctn!=null&&n.journeyEndLocatn!=null&&n.goodsCarried!=null):!0}catch(e){return console.error("Failed to validate JourneyRequired on EncounterReq:",e),false}},defaultMessage(u){return "Journey start, end locations and goodsCarried are required for this encounter."}}});}}exports.ValidateJourneyRequired=y;
1
+ 'use strict';var classValidator=require('class-validator');var d=Object.defineProperty;var u=(r,o)=>d(r,"name",{value:o,configurable:true});function f(r){return o=>{classValidator.registerDecorator({name:"ValidateJourneyRequired",target:o,propertyName:void 0,options:r,validator:{validate(i,s){let t=s.object;try{let e=t.encounterReason,n=t.journey,a=!1;return e&&e.name&&(a=!e.name.match(/^(ANNUAL TEST|VE OPERATOR VISIT)$/)),a?!!(n&&n.journeyStartLctn!=null&&n.journeyEndLocatn!=null&&n.goodsCarried!=null):!0}catch(e){return console.error("Failed to validate JourneyRequired on EncounterReq:",e),false}},defaultMessage(i){return "Journey start, end locations and goodsCarried are required for this encounter."}}});}}u(f,"ValidateJourneyRequired");exports.ValidateJourneyRequired=f;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function d(e){return n=>{classValidator.registerDecorator({name:"ValidateCloseProhibitions",target:n,propertyName:void 0,options:e,validator:{validate(t,o){let r=o.object;try{return r.generatedNumber!=null}catch(a){return console.error("Failed to validate CloseProhibitions on EncounterReq:",a),false}},defaultMessage(t){return "generatedNumber cannot be null when closing an existing prohibition."}}});}}exports.ValidateCloseProhibitions=d;
1
+ 'use strict';var classValidator=require('class-validator');var s=Object.defineProperty;var t=(e,n)=>s(e,"name",{value:n,configurable:true});function m(e){return n=>{classValidator.registerDecorator({name:"ValidateCloseProhibitions",target:n,propertyName:void 0,options:e,validator:{validate(o,r){let a=r.object;try{return a.generatedNumber!=null}catch(i){return console.error("Failed to validate CloseProhibitions on EncounterReq:",i),false}},defaultMessage(o){return "generatedNumber cannot be null when closing an existing prohibition."}}});}}t(m,"ValidateCloseProhibitions");exports.ValidateCloseProhibitions=m;
@@ -1 +1 @@
1
- 'use strict';var classValidator=require('class-validator');function v(e){return r=>{classValidator.registerDecorator({name:"ValidateTachoValue",target:r,propertyName:void 0,options:e,validator:{validate(i,n){let t=n.object;try{let a=t.tachoCheckQuantity;if(a!=null){let c=t.otherDriverDigitacCheckQuantity!=null?t.otherDriverDigitacCheckQuantity:0,o=t.actualDriverDigitacCheckQuantity!=null?t.actualDriverDigitacCheckQuantity:0,u=t.otherDriverPaperChartCheckQuantity!=null?t.otherDriverPaperChartCheckQuantity:0,h=t.actualDriverPaperChartCheckQuantity!=null?t.actualDriverPaperChartCheckQuantity:0;return o+h+u+c===a}return !0}catch(a){return console.error("Failed to validate EncounterReq tacho check quantities",a),false}},defaultMessage(i){return "tachoCheckQuantity must equal the sum of actualDriverDigitacCheckQuantity, actualDriverPaperChartCheckQuantity, otherDriverDigitacCheckQuantity, and otherDriverPaperChartCheckQuantity."}}});}}exports.ValidateTachoValue=v;
1
+ 'use strict';var classValidator=require('class-validator');var s=Object.defineProperty;var i=(e,r)=>s(e,"name",{value:r,configurable:true});function g(e){return r=>{classValidator.registerDecorator({name:"ValidateTachoValue",target:r,propertyName:void 0,options:e,validator:{validate(n,c){let t=c.object;try{let a=t.tachoCheckQuantity;if(a!=null){let o=t.otherDriverDigitacCheckQuantity!=null?t.otherDriverDigitacCheckQuantity:0,u=t.actualDriverDigitacCheckQuantity!=null?t.actualDriverDigitacCheckQuantity:0,h=t.otherDriverPaperChartCheckQuantity!=null?t.otherDriverPaperChartCheckQuantity:0,l=t.actualDriverPaperChartCheckQuantity!=null?t.actualDriverPaperChartCheckQuantity:0;return u+l+h+o===a}return !0}catch(a){return console.error("Failed to validate EncounterReq tacho check quantities",a),false}},defaultMessage(n){return "tachoCheckQuantity must equal the sum of actualDriverDigitacCheckQuantity, actualDriverPaperChartCheckQuantity, otherDriverDigitacCheckQuantity, and otherDriverPaperChartCheckQuantity."}}});}}i(g,"ValidateTachoValue");exports.ValidateTachoValue=g;
package/index.d.ts CHANGED
@@ -1,26 +1,47 @@
1
1
  import * as class_validator from 'class-validator';
2
2
  import { ValidatorOptions } from 'class-validator/types/validation/ValidatorOptions';
3
3
  import { EncounterReq } from './models/request/EncounterReq.js';
4
- import './models/minimum/Location.js';
5
- import './models/contact/GenericContact.js';
6
- import './models/contact/RteArea.js';
7
- import './models/common/CommonPostAddress.js';
4
+ import './models/audit/AuditBase.js';
5
+ import './models/audit/AuditEventBase.js';
8
6
  import './models/contact/Contact.js';
9
- import './models/contact/ContactType.js';
10
7
  import './models/common/CommonTradingAs.js';
11
8
  import './models/contact/Address.js';
9
+ import './models/common/CommonPostAddress.js';
10
+ import './models/contact/ContactType.js';
11
+ import './models/contact/GenericContact.js';
12
+ import './models/contact/RteArea.js';
13
+ import './models/contact/StoppingOfficer.js';
14
+ import './models/dangerous/DangerousCheckListBase.js';
15
+ import './models/dangerous/DangerousCheckListItemBase.js';
16
+ import './models/dangerous/DangerousCheckListItemDetailBase.js';
17
+ import './models/dangerous/DangerousContainerTypeBase.js';
18
+ import './models/defects/DefectProsecution.js';
19
+ import './models/common/CommonDeletion.js';
20
+ import './models/driver/Drivers.js';
21
+ import './models/minimum/Nationality.js';
22
+ import './models/payments/ActualPayment.js';
23
+ import './models/payments/PaymentReversalReason.js';
24
+ import './models/payments/PaymentStatus.js';
25
+ import './models/driver/DetailsOrigin.js';
26
+ import './models/driver/LicenceCategory.js';
27
+ import './models/driver/LicenceType.js';
28
+ import './models/journey/Journey.js';
29
+ import './models/journey/JourneyType.js';
30
+ import './models/journey/PortOfExit.js';
31
+ import './models/minimum/EncounterReason.js';
32
+ import './models/common/CommonCode.js';
33
+ import './models/minimum/EncounterTexts.js';
34
+ import './models/minimum/TextType.js';
35
+ import './models/minimum/EthnicityInfo.js';
36
+ import './models/minimum/ObservedEthnicityInfo.js';
37
+ import './models/minimum/CapturedEthnicity.js';
38
+ import './models/common/CommonDescription.js';
39
+ import './models/minimum/InspectionType.js';
40
+ import './models/minimum/Location.js';
12
41
  import './models/minimum/Motor.js';
13
42
  import './models/common/CommonVehicle.js';
14
- import './models/minimum/Nationality.js';
15
43
  import './models/trailer/PoliceDefect.js';
16
44
  import './models/common/CommonVehicleWeights.js';
17
- import './models/minimum/RoadsideVehicleType.js';
18
- import './models/common/CommonData.js';
19
- import './models/common/CommonDeletion.js';
20
- import './models/minimum/VehicleIdType.js';
21
- import './models/minimum/AxlesWeight.js';
22
- import './models/minimum/BodyType.js';
23
- import './models/common/CommonVersion.js';
24
45
  import './models/defects/Defect.js';
25
46
  import './models/defects/Part.js';
26
47
  import './models/defects/DefectSummary.js';
@@ -28,72 +49,56 @@ import './models/defects/SignificanceReason.js';
28
49
  import './models/emissions/EmissionCheckBase.js';
29
50
  import './models/emissions/FuelTypeBase.js';
30
51
  import './models/notices/NoticeBase.js';
52
+ import './models/minimum/VehicleIdType.js';
53
+ import './models/common/CommonData.js';
54
+ import './models/notices/ExemptionConditionBaseType.js';
55
+ import './models/notices/NoticeClosureBaseType.js';
31
56
  import './models/notices/NoticeType.js';
32
- import './models/notices/PenaltyNotice.js';
33
- import './models/notices/PenaltyNoticeStatus.js';
57
+ import './models/notices/NoticeTypeDetail.js';
58
+ import './models/notices/OffenceBaseType.js';
59
+ import './models/common/CommonVersion.js';
34
60
  import './models/notices/Offences.js';
35
61
  import './models/common/CommonOffence.js';
36
- import './models/notices/RemovalInstruction.js';
37
- import './models/common/CommonDescription.js';
62
+ import './models/notices/PenaltyNotice.js';
63
+ import './models/notices/PenaltyNoticeStatus.js';
38
64
  import './models/notices/ProhibitionClosureReasonBaseType.js';
39
- import './models/notices/NoticeClosureBaseType.js';
40
- import './models/notices/OffenceBaseType.js';
41
- import './models/notices/ExemptionConditionBaseType.js';
42
- import './models/notices/NoticeTypeDetail.js';
65
+ import './models/notices/RemovalInstruction.js';
66
+ import './models/minimum/AxlesWeight.js';
67
+ import './models/minimum/BodyType.js';
43
68
  import './models/minimum/Laden.js';
44
- import './models/driver/Drivers.js';
45
- import './models/driver/LicenceType.js';
46
- import './models/driver/LicenceCategory.js';
47
- import './models/driver/DetailsOrigin.js';
48
- import './models/payments/ActualPayment.js';
49
- import './models/payments/PaymentReversalReason.js';
50
- import './models/payments/PaymentStatus.js';
51
- import './models/minimum/InspectionType.js';
52
- import './models/minimum/EncounterReason.js';
53
- import './models/common/CommonCode.js';
54
- import './models/minimum/EthnicityInfo.js';
55
- import './models/minimum/ObservedEthnicityInfo.js';
56
- import './models/minimum/CapturedEthnicity.js';
57
- import './models/journey/Journey.js';
58
- import './models/journey/JourneyType.js';
59
- import './models/journey/PortOfExit.js';
69
+ import './models/minimum/RoadsideVehicleType.js';
70
+ import './models/minimum/SpecialReturnCodeFlagType.js';
71
+ import './models/notices/ActualOffences.js';
72
+ import './models/notices/Offence.js';
73
+ import './models/notices/OffenceSanctionText.js';
74
+ import './models/common/CommonOffenceDetail.js';
75
+ import './models/notices/OffenceSeverityBand.js';
60
76
  import './models/operator/Operator.js';
61
- import './models/operator/LicenceTypeCode.js';
62
77
  import './models/operator/ExistingOperatorDetail.js';
63
78
  import './models/operator/ExistingTradingAs.js';
64
79
  import './models/operator/RecordType.js';
80
+ import './models/operator/LicenceTypeCode.js';
65
81
  import './models/operator/OCRSOperatorSnapshots.js';
66
82
  import './models/operator/StateOfOpDisc.js';
67
- import './models/trailer/Trailer.js';
68
- import './models/audit/AuditBase.js';
69
- import './models/audit/AuditEventBase.js';
70
- import './models/minimum/EncounterTexts.js';
71
- import './models/minimum/TextType.js';
72
83
  import './models/roadworthiness/RoadWorthinessCheckList.js';
73
84
  import './models/roadworthiness/RoadWorthinessCheckItem.js';
74
- import './models/notices/ActualOffences.js';
75
- import './models/notices/Offence.js';
76
- import './models/notices/OffenceSanctionText.js';
77
- import './models/common/CommonOffenceDetail.js';
78
- import './models/notices/OffenceSeverityBand.js';
79
- import './models/defects/DefectProsecution.js';
80
- import './models/minimum/SpecialReturnCodeFlagType.js';
81
- import './models/dangerous/DangerousCheckListBase.js';
82
- import './models/dangerous/DangerousContainerTypeBase.js';
83
- import './models/dangerous/DangerousCheckListItemBase.js';
84
- import './models/dangerous/DangerousCheckListItemDetailBase.js';
85
- import './models/contact/StoppingOfficer.js';
85
+ import './models/tax/TaxForm.js';
86
+ import './models/trailer/Trailer.js';
86
87
 
87
88
  declare abstract class ValidatorBase {
88
- private static _encounterReq;
89
+ protected readonly encounterReq: Readonly<Partial<EncounterReq>>;
89
90
  protected constructor(encounterReq: Readonly<Partial<EncounterReq>>);
90
- static get encounterReq(): Readonly<Partial<EncounterReq>>;
91
91
  }
92
92
  declare class EncounterSchema extends ValidatorBase {
93
93
  private validationOptions;
94
94
  private static readonly _defaultValidatorOptions;
95
95
  constructor(encounterReq: Partial<EncounterReq>, validationOptions?: ValidatorOptions);
96
96
  validate(): Promise<class_validator.ValidationError[]>;
97
+ private initialiseRuntimeContext;
98
+ private resolveEncounterType;
99
+ private resolveExaminerOfficerType;
100
+ private resolveRequestType;
101
+ private hasValidationGroup;
97
102
  }
98
103
 
99
104
  export { EncounterSchema, ValidatorBase };