@studyportals/domain-client 6.0.0-0 → 6.0.0-10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (514) hide show
  1. package/index.d.ts +88 -85
  2. package/index.js +33 -34
  3. package/package.json +10 -8
  4. package/protobuf/Area.d.ts +11 -0
  5. package/protobuf/Area.js +30 -0
  6. package/protobuf/Article.d.ts +60 -0
  7. package/protobuf/Article.js +226 -0
  8. package/protobuf/Body.d.ts +11 -0
  9. package/protobuf/Body.js +30 -0
  10. package/protobuf/CampaignInformation.d.ts +11 -0
  11. package/protobuf/CampaignInformation.js +30 -0
  12. package/protobuf/ClickTracking.d.ts +11 -0
  13. package/protobuf/ClickTracking.js +30 -0
  14. package/protobuf/CommercialEntity.d.ts +14 -0
  15. package/protobuf/CommercialEntity.js +48 -0
  16. package/protobuf/Cover.d.ts +10 -0
  17. package/protobuf/Cover.js +26 -0
  18. package/protobuf/Deadline.d.ts +11 -0
  19. package/protobuf/Deadline.js +30 -0
  20. package/protobuf/Degree.d.ts +16 -0
  21. package/protobuf/Degree.js +50 -0
  22. package/protobuf/Description.d.ts +16 -0
  23. package/protobuf/Description.js +45 -0
  24. package/protobuf/Discipline.d.ts +26 -0
  25. package/protobuf/Discipline.js +84 -0
  26. package/protobuf/Duration.d.ts +11 -0
  27. package/protobuf/Duration.js +30 -0
  28. package/protobuf/EnglishRequirement.d.ts +11 -0
  29. package/protobuf/EnglishRequirement.js +30 -0
  30. package/protobuf/EssentialInformation.d.ts +17 -0
  31. package/protobuf/EssentialInformation.js +54 -0
  32. package/protobuf/File.d.ts +22 -0
  33. package/protobuf/File.js +74 -0
  34. package/protobuf/GPARequirement.d.ts +11 -0
  35. package/protobuf/GPARequirement.js +30 -0
  36. package/protobuf/InternalLink.d.ts +12 -24
  37. package/protobuf/InternalLink.js +30 -49
  38. package/protobuf/Link.d.ts +11 -23
  39. package/protobuf/Link.js +30 -44
  40. package/protobuf/LivingCost.d.ts +11 -0
  41. package/protobuf/LivingCost.js +30 -0
  42. package/protobuf/Location.d.ts +18 -0
  43. package/protobuf/Location.js +56 -0
  44. package/protobuf/Logo.d.ts +10 -0
  45. package/protobuf/Logo.js +26 -0
  46. package/protobuf/MiniProgrammeCard.d.ts +18 -27
  47. package/protobuf/MiniProgrammeCard.js +50 -61
  48. package/protobuf/OptionalLink.d.ts +12 -0
  49. package/protobuf/OptionalLink.js +34 -0
  50. package/protobuf/Organisation.d.ts +211 -0
  51. package/protobuf/Organisation.js +853 -0
  52. package/protobuf/OrganisationInformation.d.ts +9 -0
  53. package/protobuf/OrganisationInformation.js +20 -0
  54. package/protobuf/OrganisationRanking.d.ts +15 -0
  55. package/protobuf/OrganisationRanking.js +41 -0
  56. package/protobuf/Person.d.ts +14 -0
  57. package/protobuf/Person.js +40 -0
  58. package/protobuf/ProgrammeCard.d.ts +60 -0
  59. package/protobuf/ProgrammeCard.js +197 -0
  60. package/protobuf/ProgrammeGrid.d.ts +14 -0
  61. package/protobuf/ProgrammeGrid.js +37 -0
  62. package/protobuf/Ranking.d.ts +22 -0
  63. package/protobuf/Ranking.js +76 -0
  64. package/protobuf/RankingInstitute.d.ts +15 -0
  65. package/protobuf/RankingInstitute.js +44 -0
  66. package/protobuf/Review.d.ts +17 -0
  67. package/protobuf/Review.js +52 -0
  68. package/protobuf/ReviewRating.d.ts +12 -0
  69. package/protobuf/ReviewRating.js +34 -0
  70. package/protobuf/RichText.d.ts +10 -0
  71. package/protobuf/RichText.js +28 -0
  72. package/protobuf/SocialLink.d.ts +21 -0
  73. package/protobuf/SocialLink.js +70 -0
  74. package/protobuf/StartDate.d.ts +13 -0
  75. package/protobuf/StartDate.js +38 -0
  76. package/protobuf/Timing.d.ts +17 -0
  77. package/protobuf/Timing.js +49 -0
  78. package/protobuf/Topic.d.ts +10 -0
  79. package/protobuf/Topic.js +26 -0
  80. package/protobuf/TrackedLink.d.ts +13 -0
  81. package/protobuf/TrackedLink.js +36 -0
  82. package/protobuf/Tracking.d.ts +18 -0
  83. package/protobuf/Tracking.js +58 -0
  84. package/protobuf/TuitionFee.d.ts +13 -0
  85. package/protobuf/TuitionFee.js +38 -0
  86. package/protobuf/Unibuddy.d.ts +10 -0
  87. package/protobuf/Unibuddy.js +26 -0
  88. package/protobuf/index.d.ts +45 -6
  89. package/protobuf/index.js +45 -7
  90. package/src/clients/article-detail-page-client.d.ts +8 -0
  91. package/src/clients/article-detail-page-client.js +16 -0
  92. package/src/clients/index.d.ts +7 -1
  93. package/src/clients/index.js +7 -2
  94. package/src/clients/organisation-page-client.d.ts +8 -0
  95. package/src/clients/organisation-page-client.js +16 -0
  96. package/src/clients/protobuf-client.d.ts +14 -11
  97. package/src/clients/protobuf-client.js +26 -16
  98. package/src/clients/{mini-programme-card-client.d.ts → public-mini-programme-card-client.d.ts} +8 -8
  99. package/src/clients/{mini-programme-card-client.js → public-mini-programme-card-client.js} +16 -17
  100. package/src/domain-client.d.ts +14 -14
  101. package/src/domain-client.js +89 -63
  102. package/src/exceptions/bad-request-exception.d.ts +2 -2
  103. package/src/exceptions/bad-request-exception.js +2 -3
  104. package/src/exceptions/client-exception.d.ts +2 -2
  105. package/src/exceptions/client-exception.js +2 -3
  106. package/src/exceptions/internal-server-exception.d.ts +2 -2
  107. package/src/exceptions/internal-server-exception.js +2 -3
  108. package/src/exceptions/not-found-exception.d.ts +2 -2
  109. package/src/exceptions/not-found-exception.js +2 -3
  110. package/src/exceptions/property-not-available-exception.d.ts +2 -2
  111. package/src/exceptions/property-not-available-exception.js +2 -3
  112. package/src/factories/DateFactory.d.ts +5 -5
  113. package/src/factories/DateFactory.js +5 -6
  114. package/src/factories/InternalLinkFactory.d.ts +9 -9
  115. package/src/factories/InternalLinkFactory.js +21 -17
  116. package/src/i-api-response.d.ts +6 -6
  117. package/src/i-api-response.js +1 -2
  118. package/src/i-class-factory.d.ts +4 -4
  119. package/src/i-class-factory.js +1 -2
  120. package/src/i-model-description.d.ts +7 -7
  121. package/src/i-model-description.js +5 -6
  122. package/src/model-client.d.ts +16 -16
  123. package/src/model-client.js +43 -44
  124. package/src/model-factory.d.ts +11 -11
  125. package/src/model-factory.js +68 -69
  126. package/src/models/bestfit-programme/bestfit-programme-client.d.ts +7 -7
  127. package/src/models/bestfit-programme/bestfit-programme-client.js +12 -13
  128. package/src/models/bestfit-programme/i-best-fit-programme.d.ts +82 -82
  129. package/src/models/bestfit-programme/i-best-fit-programme.js +1 -2
  130. package/src/models/bestfit-programme/i-city.d.ts +14 -14
  131. package/src/models/bestfit-programme/i-city.js +1 -2
  132. package/src/models/bestfit-programme/i-english-requirements.d.ts +51 -51
  133. package/src/models/bestfit-programme/i-english-requirements.js +1 -2
  134. package/src/models/bestfit-programme/i-g-p-a-requirement.d.ts +20 -20
  135. package/src/models/bestfit-programme/i-g-p-a-requirement.js +1 -2
  136. package/src/models/bestfit-programme/i-living-cost.d.ts +20 -20
  137. package/src/models/bestfit-programme/i-living-cost.js +1 -2
  138. package/src/models/bestfit-programme/i-tuition-fee.d.ts +50 -50
  139. package/src/models/bestfit-programme/i-tuition-fee.js +1 -2
  140. package/src/models/common/i-city.d.ts +14 -14
  141. package/src/models/common/i-city.js +1 -2
  142. package/src/models/common/i-country.d.ts +20 -20
  143. package/src/models/common/i-country.js +1 -2
  144. package/src/models/common/i-english-requirements.d.ts +51 -51
  145. package/src/models/common/i-english-requirements.js +1 -2
  146. package/src/models/common/i-g-p-a-requirement.d.ts +20 -20
  147. package/src/models/common/i-g-p-a-requirement.js +1 -2
  148. package/src/models/common/i-internal-link.d.ts +28 -28
  149. package/src/models/common/i-internal-link.js +1 -2
  150. package/src/models/common/i-logo.d.ts +14 -14
  151. package/src/models/common/i-logo.js +1 -2
  152. package/src/models/common/i-review-rating.d.ts +26 -0
  153. package/src/models/common/i-review-rating.js +1 -0
  154. package/src/models/common/i-tuition-fee.d.ts +50 -50
  155. package/src/models/common/i-tuition-fee.js +1 -2
  156. package/src/models/compare-programme/i-english-requirements.d.ts +51 -51
  157. package/src/models/compare-programme/i-english-requirements.js +1 -2
  158. package/src/models/compare-programme/i-g-p-a-requirement.d.ts +20 -20
  159. package/src/models/compare-programme/i-g-p-a-requirement.js +1 -2
  160. package/src/models/compare-programme/i-living-cost.d.ts +20 -20
  161. package/src/models/compare-programme/i-living-cost.js +1 -2
  162. package/src/models/copilot-country/copilot-country-client.d.ts +7 -7
  163. package/src/models/copilot-country/copilot-country-client.js +12 -13
  164. package/src/models/copilot-country/i-copilot-country.d.ts +39 -39
  165. package/src/models/copilot-country/i-copilot-country.js +1 -2
  166. package/src/models/copilot-country/i-copilot-ranking-card.d.ts +38 -38
  167. package/src/models/copilot-country/i-copilot-ranking-card.js +1 -2
  168. package/src/models/copilot-programme/copilot-programme-client.d.ts +7 -7
  169. package/src/models/copilot-programme/copilot-programme-client.js +12 -13
  170. package/src/models/copilot-programme/i-copilot-programme.d.ts +125 -125
  171. package/src/models/copilot-programme/i-copilot-programme.js +1 -2
  172. package/src/models/copilot-programme/i-deadline.d.ts +20 -20
  173. package/src/models/copilot-programme/i-deadline.js +1 -2
  174. package/src/models/copilot-programme/i-english-requirements.d.ts +51 -51
  175. package/src/models/copilot-programme/i-english-requirements.js +1 -2
  176. package/src/models/copilot-programme/i-g-p-a-requirement.d.ts +20 -20
  177. package/src/models/copilot-programme/i-g-p-a-requirement.js +1 -2
  178. package/src/models/copilot-programme/i-geo-targeting-configuration.d.ts +38 -38
  179. package/src/models/copilot-programme/i-geo-targeting-configuration.js +1 -2
  180. package/src/models/copilot-programme/i-geo-targeting-values.d.ts +30 -30
  181. package/src/models/copilot-programme/i-geo-targeting-values.js +1 -2
  182. package/src/models/copilot-programme/i-internal-link.d.ts +28 -28
  183. package/src/models/copilot-programme/i-internal-link.js +1 -2
  184. package/src/models/copilot-programme/i-link.d.ts +22 -22
  185. package/src/models/copilot-programme/i-link.js +1 -2
  186. package/src/models/copilot-programme/i-living-cost.d.ts +20 -20
  187. package/src/models/copilot-programme/i-living-cost.js +1 -2
  188. package/src/models/copilot-programme/i-start-date.d.ts +33 -33
  189. package/src/models/copilot-programme/i-start-date.js +1 -2
  190. package/src/models/copilot-programme/i-timing.d.ts +45 -45
  191. package/src/models/copilot-programme/i-timing.js +1 -2
  192. package/src/models/copilot-programme/i-tuition-values.d.ts +50 -50
  193. package/src/models/copilot-programme/i-tuition-values.js +1 -2
  194. package/src/models/customerio-organisation/customerio-organisation-client.d.ts +7 -7
  195. package/src/models/customerio-organisation/customerio-organisation-client.js +12 -13
  196. package/src/models/customerio-organisation/i-city.d.ts +14 -14
  197. package/src/models/customerio-organisation/i-city.js +1 -2
  198. package/src/models/customerio-organisation/i-country.d.ts +20 -20
  199. package/src/models/customerio-organisation/i-country.js +1 -2
  200. package/src/models/customerio-organisation/i-customer-i-o-organisation.d.ts +35 -35
  201. package/src/models/customerio-organisation/i-customer-i-o-organisation.js +1 -2
  202. package/src/models/customerio-organisation/i-customer-io-organisation.d.ts +35 -35
  203. package/src/models/customerio-organisation/i-customer-io-organisation.js +1 -2
  204. package/src/models/customerio-organisation/i-review.d.ts +7 -7
  205. package/src/models/customerio-organisation/i-review.js +1 -2
  206. package/src/models/customerio-programme/customerio-programme-client.d.ts +7 -7
  207. package/src/models/customerio-programme/customerio-programme-client.js +12 -13
  208. package/src/models/customerio-programme/i-country.d.ts +20 -20
  209. package/src/models/customerio-programme/i-country.js +1 -2
  210. package/src/models/customerio-programme/i-customer-i-o-programme.d.ts +107 -107
  211. package/src/models/customerio-programme/i-customer-i-o-programme.js +1 -2
  212. package/src/models/customerio-programme/i-customer-io-programme.d.ts +107 -107
  213. package/src/models/customerio-programme/i-customer-io-programme.js +1 -2
  214. package/src/models/customerio-programme/i-deadline.d.ts +20 -20
  215. package/src/models/customerio-programme/i-deadline.js +1 -2
  216. package/src/models/customerio-programme/i-english-requirements.d.ts +51 -51
  217. package/src/models/customerio-programme/i-english-requirements.js +1 -2
  218. package/src/models/customerio-programme/i-internal-link.d.ts +28 -28
  219. package/src/models/customerio-programme/i-internal-link.js +1 -2
  220. package/src/models/customerio-programme/i-logo.d.ts +14 -14
  221. package/src/models/customerio-programme/i-logo.js +1 -2
  222. package/src/models/customerio-programme/i-start-date.d.ts +33 -33
  223. package/src/models/customerio-programme/i-start-date.js +1 -2
  224. package/src/models/customerio-programme/i-timing.d.ts +45 -45
  225. package/src/models/customerio-programme/i-timing.js +1 -2
  226. package/src/models/customerio-programme/i-tuition-fee.d.ts +50 -50
  227. package/src/models/customerio-programme/i-tuition-fee.js +1 -2
  228. package/src/models/faq-static-content/i-faq-static-content.d.ts +9 -9
  229. package/src/models/faq-static-content/i-faq-static-content.js +1 -2
  230. package/src/models/faq-static-content/i-faq.d.ts +4 -4
  231. package/src/models/faq-static-content/i-faq.js +1 -2
  232. package/src/models/faq-static-content/i-static-content-url.d.ts +4 -4
  233. package/src/models/faq-static-content/i-static-content-url.js +1 -2
  234. package/src/models/faq-static-content/public-faq-static-content-client.d.ts +7 -7
  235. package/src/models/faq-static-content/public-faq-static-content-client.js +12 -13
  236. package/src/models/organisation-card/i-organisation-card.d.ts +38 -36
  237. package/src/models/organisation-card/i-organisation-card.js +1 -2
  238. package/src/models/organisation-card/i-ranking-discipline.d.ts +4 -4
  239. package/src/models/organisation-card/i-ranking-discipline.js +1 -2
  240. package/src/models/organisation-card/i-review-rating-domain.d.ts +6 -6
  241. package/src/models/organisation-card/i-review-rating-domain.js +1 -2
  242. package/src/models/organisation-card/organisation-card-client.d.ts +7 -7
  243. package/src/models/organisation-card/organisation-card-client.js +12 -13
  244. package/src/models/organisation-for-search/i-organisation-for-search.d.ts +32 -32
  245. package/src/models/organisation-for-search/i-organisation-for-search.js +1 -2
  246. package/src/models/organisation-for-search/public-organisation-for-search-client.d.ts +7 -7
  247. package/src/models/organisation-for-search/public-organisation-for-search-client.js +12 -13
  248. package/src/models/organisation-search-document/i-organisation-search-document.d.ts +122 -122
  249. package/src/models/organisation-search-document/i-organisation-search-document.js +1 -2
  250. package/src/models/organisation-search-document/organisation-search-document-client.d.ts +7 -7
  251. package/src/models/organisation-search-document/organisation-search-document-client.js +12 -13
  252. package/src/models/programme-card/i-click-tracking-data.d.ts +5 -5
  253. package/src/models/programme-card/i-click-tracking-data.js +1 -2
  254. package/src/models/programme-card/i-cover.d.ts +14 -14
  255. package/src/models/programme-card/i-cover.js +1 -2
  256. package/src/models/programme-card/i-deadline.d.ts +20 -20
  257. package/src/models/programme-card/i-deadline.js +1 -2
  258. package/src/models/programme-card/i-duration.d.ts +40 -40
  259. package/src/models/programme-card/i-duration.js +1 -2
  260. package/src/models/programme-card/i-english-requirements.d.ts +51 -51
  261. package/src/models/programme-card/i-english-requirements.js +1 -2
  262. package/src/models/programme-card/i-g-p-a-requirement.d.ts +20 -20
  263. package/src/models/programme-card/i-g-p-a-requirement.js +1 -2
  264. package/src/models/programme-card/i-internal-link.d.ts +28 -28
  265. package/src/models/programme-card/i-internal-link.js +1 -2
  266. package/src/models/programme-card/i-link.d.ts +22 -22
  267. package/src/models/programme-card/i-link.js +1 -2
  268. package/src/models/programme-card/i-living-cost.d.ts +20 -20
  269. package/src/models/programme-card/i-living-cost.js +1 -2
  270. package/src/models/programme-card/i-location.d.ts +12 -12
  271. package/src/models/programme-card/i-location.js +1 -2
  272. package/src/models/programme-card/i-logo.d.ts +14 -14
  273. package/src/models/programme-card/i-logo.js +1 -2
  274. package/src/models/programme-card/i-optional-link.d.ts +23 -23
  275. package/src/models/programme-card/i-optional-link.js +1 -2
  276. package/src/models/programme-card/i-programme-card.d.ts +212 -205
  277. package/src/models/programme-card/i-programme-card.js +1 -2
  278. package/src/models/programme-card/i-review-rating-domain.d.ts +6 -6
  279. package/src/models/programme-card/i-review-rating-domain.js +1 -2
  280. package/src/models/programme-card/i-start-date.d.ts +33 -33
  281. package/src/models/programme-card/i-start-date.js +1 -2
  282. package/src/models/programme-card/i-timing.d.ts +45 -45
  283. package/src/models/programme-card/i-timing.js +1 -2
  284. package/src/models/programme-card/i-tracked-link.d.ts +29 -29
  285. package/src/models/programme-card/i-tracked-link.js +1 -2
  286. package/src/models/programme-card/i-tracking.d.ts +46 -46
  287. package/src/models/programme-card/i-tracking.js +1 -2
  288. package/src/models/programme-card/i-tuition-fee.d.ts +50 -50
  289. package/src/models/programme-card/i-tuition-fee.js +1 -2
  290. package/src/models/programme-card/programme-card-client.d.ts +7 -7
  291. package/src/models/programme-card/programme-card-client.js +12 -13
  292. package/src/models/ranking-cards/i-ranking.d.ts +18 -18
  293. package/src/models/ranking-cards/i-ranking.js +1 -2
  294. package/src/models/scholarship-card/i-scholarship-card-v2.d.ts +20 -20
  295. package/src/models/scholarship-card/i-scholarship-card-v2.js +1 -2
  296. package/src/models/scholarship-card/i-scholarship-card.d.ts +15 -15
  297. package/src/models/scholarship-card/i-scholarship-card.js +1 -2
  298. package/src/models/scholarship-card/public-scholarship-card-client.d.ts +7 -7
  299. package/src/models/scholarship-card/public-scholarship-card-client.js +12 -13
  300. package/src/models/scholarship-card/scholarship-card-v2-client.d.ts +7 -7
  301. package/src/models/scholarship-card/scholarship-card-v2-client.js +12 -13
  302. package/src/models/scholarship-card-v2/i-scholarship-card.d.ts +15 -15
  303. package/src/models/scholarship-card-v2/i-scholarship-card.js +1 -2
  304. package/src/models/scholarship-card-v2/scholarship-card-v2-client.d.ts +7 -7
  305. package/src/models/scholarship-card-v2/scholarship-card-v2-client.js +12 -13
  306. package/src/models/scholarship-search-document/i-scholarship-search-document.d.ts +38 -38
  307. package/src/models/scholarship-search-document/i-scholarship-search-document.js +1 -2
  308. package/src/models/scholarship-search-document/scholarship-search-document-client.d.ts +7 -7
  309. package/src/models/scholarship-search-document/scholarship-search-document-client.js +12 -13
  310. package/src/models/search-discipline/i-search-discipline.d.ts +26 -26
  311. package/src/models/search-discipline/i-search-discipline.js +1 -2
  312. package/src/models/search-discipline/public-search-discipline-client.d.ts +7 -7
  313. package/src/models/search-discipline/public-search-discipline-client.js +12 -13
  314. package/src/models/search-projection/i-geo-targeting-configuration.d.ts +38 -38
  315. package/src/models/search-projection/i-geo-targeting-configuration.js +1 -2
  316. package/src/models/search-projection/i-geo-targeting-values.d.ts +30 -30
  317. package/src/models/search-projection/i-geo-targeting-values.js +1 -2
  318. package/src/models/search-projection/i-organisation-values.d.ts +46 -46
  319. package/src/models/search-projection/i-organisation-values.js +1 -2
  320. package/src/models/search-projection/i-premium-values.d.ts +35 -35
  321. package/src/models/search-projection/i-premium-values.js +1 -2
  322. package/src/models/search-projection/i-search-projection.d.ts +186 -186
  323. package/src/models/search-projection/i-search-projection.js +1 -2
  324. package/src/models/search-projection/i-tuition-values.d.ts +50 -50
  325. package/src/models/search-projection/i-tuition-values.js +1 -2
  326. package/src/models/search-projection/search-projection-client.d.ts +7 -7
  327. package/src/models/search-projection/search-projection-client.js +12 -13
  328. package/src/models/sitemap-articles-info/i-sitemap-article-info.d.ts +26 -26
  329. package/src/models/sitemap-articles-info/i-sitemap-article-info.js +1 -2
  330. package/src/models/sitemap-articles-info/sitemap-articles-info-client.d.ts +7 -7
  331. package/src/models/sitemap-articles-info/sitemap-articles-info-client.js +12 -13
  332. package/src/models/sitemap-cities-info/i-sitemap-city-info.d.ts +14 -14
  333. package/src/models/sitemap-cities-info/i-sitemap-city-info.js +1 -2
  334. package/src/models/sitemap-cities-info/sitemap-cities-info-client.d.ts +7 -7
  335. package/src/models/sitemap-cities-info/sitemap-cities-info-client.js +12 -13
  336. package/src/models/sitemap-countries-info/i-sitemap-country-info.d.ts +14 -14
  337. package/src/models/sitemap-countries-info/i-sitemap-country-info.js +1 -2
  338. package/src/models/sitemap-countries-info/sitemap-countries-info-client.d.ts +7 -7
  339. package/src/models/sitemap-countries-info/sitemap-countries-info-client.js +12 -13
  340. package/src/models/sitemap-country-degree-info/i-degree-info.d.ts +14 -14
  341. package/src/models/sitemap-country-degree-info/i-degree-info.js +1 -2
  342. package/src/models/sitemap-country-degree-info/i-sitemap-country-degree-info.d.ts +11 -11
  343. package/src/models/sitemap-country-degree-info/i-sitemap-country-degree-info.js +1 -2
  344. package/src/models/sitemap-country-degree-info/sitemap-country-degree-info-client.d.ts +7 -7
  345. package/src/models/sitemap-country-degree-info/sitemap-country-degree-info-client.js +12 -13
  346. package/src/models/sitemap-disciplines-info/i-sitemap-discipline-info.d.ts +14 -14
  347. package/src/models/sitemap-disciplines-info/i-sitemap-discipline-info.js +1 -2
  348. package/src/models/sitemap-disciplines-info/sitemap-disciplines-info-client.d.ts +7 -7
  349. package/src/models/sitemap-disciplines-info/sitemap-disciplines-info-client.js +12 -13
  350. package/src/models/sitemap-organisations-info/i-sitemap-organisation-info.d.ts +26 -26
  351. package/src/models/sitemap-organisations-info/i-sitemap-organisation-info.js +1 -2
  352. package/src/models/sitemap-organisations-info/sitemap-organisations-info-client.d.ts +7 -7
  353. package/src/models/sitemap-organisations-info/sitemap-organisations-info-client.js +12 -13
  354. package/src/models/sitemap-programme-info/i-sitemap-programme-info.d.ts +26 -26
  355. package/src/models/sitemap-programme-info/i-sitemap-programme-info.js +1 -2
  356. package/src/models/sitemap-programme-info/sitemap-programme-info-client.d.ts +7 -7
  357. package/src/models/sitemap-programme-info/sitemap-programme-info-client.js +12 -13
  358. package/src/models/sitemap-rankings-info/i-sitemap-rankings-info.d.ts +14 -14
  359. package/src/models/sitemap-rankings-info/i-sitemap-rankings-info.js +1 -2
  360. package/src/models/sitemap-rankings-info/sitemap-rankings-info-client.d.ts +7 -7
  361. package/src/models/sitemap-rankings-info/sitemap-rankings-info-client.js +12 -13
  362. package/src/types/portal-map.d.ts +2 -2
  363. package/src/types/portal-map.js +1 -2
  364. package/src/types/portal-type.d.ts +7 -7
  365. package/src/types/portal-type.js +8 -9
  366. package/src/types.d.ts +4 -4
  367. package/src/types.js +1 -2
  368. package/test.d.ts +1 -0
  369. package/test.js +5 -0
  370. package/vitest.config.d.ts +2 -0
  371. package/vitest.config.js +9 -0
  372. package/vitest.setup.d.ts +1 -0
  373. package/vitest.setup.js +4 -0
  374. package/index.js.map +0 -1
  375. package/protobuf/InternalLink.js.map +0 -1
  376. package/protobuf/Link.js.map +0 -1
  377. package/protobuf/MiniProgrammeCard.js.map +0 -1
  378. package/protobuf/index.js.map +0 -1
  379. package/src/clients/index.js.map +0 -1
  380. package/src/clients/mini-programme-card-client.js.map +0 -1
  381. package/src/clients/protobuf-client.js.map +0 -1
  382. package/src/domain-client.js.map +0 -1
  383. package/src/exceptions/bad-request-exception.js.map +0 -1
  384. package/src/exceptions/client-exception.js.map +0 -1
  385. package/src/exceptions/internal-server-exception.js.map +0 -1
  386. package/src/exceptions/not-found-exception.js.map +0 -1
  387. package/src/exceptions/property-not-available-exception.js.map +0 -1
  388. package/src/factories/DateFactory.js.map +0 -1
  389. package/src/factories/InternalLinkFactory.js.map +0 -1
  390. package/src/i-api-response.js.map +0 -1
  391. package/src/i-class-factory.js.map +0 -1
  392. package/src/i-model-description.js.map +0 -1
  393. package/src/model-client.js.map +0 -1
  394. package/src/model-factory.js.map +0 -1
  395. package/src/models/bestfit-programme/bestfit-programme-client.js.map +0 -1
  396. package/src/models/bestfit-programme/i-best-fit-programme.js.map +0 -1
  397. package/src/models/bestfit-programme/i-city.js.map +0 -1
  398. package/src/models/bestfit-programme/i-english-requirements.js.map +0 -1
  399. package/src/models/bestfit-programme/i-g-p-a-requirement.js.map +0 -1
  400. package/src/models/bestfit-programme/i-living-cost.js.map +0 -1
  401. package/src/models/bestfit-programme/i-tuition-fee.js.map +0 -1
  402. package/src/models/common/i-city.js.map +0 -1
  403. package/src/models/common/i-country.js.map +0 -1
  404. package/src/models/common/i-english-requirements.js.map +0 -1
  405. package/src/models/common/i-g-p-a-requirement.js.map +0 -1
  406. package/src/models/common/i-internal-link.js.map +0 -1
  407. package/src/models/common/i-logo.js.map +0 -1
  408. package/src/models/common/i-tuition-fee.js.map +0 -1
  409. package/src/models/compare-programme/i-english-requirements.js.map +0 -1
  410. package/src/models/compare-programme/i-g-p-a-requirement.js.map +0 -1
  411. package/src/models/compare-programme/i-living-cost.js.map +0 -1
  412. package/src/models/copilot-country/copilot-country-client.js.map +0 -1
  413. package/src/models/copilot-country/i-copilot-country.js.map +0 -1
  414. package/src/models/copilot-country/i-copilot-ranking-card.js.map +0 -1
  415. package/src/models/copilot-programme/copilot-programme-client.js.map +0 -1
  416. package/src/models/copilot-programme/i-copilot-programme.js.map +0 -1
  417. package/src/models/copilot-programme/i-deadline.js.map +0 -1
  418. package/src/models/copilot-programme/i-english-requirements.js.map +0 -1
  419. package/src/models/copilot-programme/i-g-p-a-requirement.js.map +0 -1
  420. package/src/models/copilot-programme/i-geo-targeting-configuration.js.map +0 -1
  421. package/src/models/copilot-programme/i-geo-targeting-values.js.map +0 -1
  422. package/src/models/copilot-programme/i-internal-link.js.map +0 -1
  423. package/src/models/copilot-programme/i-link.js.map +0 -1
  424. package/src/models/copilot-programme/i-living-cost.js.map +0 -1
  425. package/src/models/copilot-programme/i-start-date.js.map +0 -1
  426. package/src/models/copilot-programme/i-timing.js.map +0 -1
  427. package/src/models/copilot-programme/i-tuition-values.js.map +0 -1
  428. package/src/models/customerio-organisation/customerio-organisation-client.js.map +0 -1
  429. package/src/models/customerio-organisation/i-city.js.map +0 -1
  430. package/src/models/customerio-organisation/i-country.js.map +0 -1
  431. package/src/models/customerio-organisation/i-customer-i-o-organisation.js.map +0 -1
  432. package/src/models/customerio-organisation/i-customer-io-organisation.js.map +0 -1
  433. package/src/models/customerio-organisation/i-review.js.map +0 -1
  434. package/src/models/customerio-programme/customerio-programme-client.js.map +0 -1
  435. package/src/models/customerio-programme/i-country.js.map +0 -1
  436. package/src/models/customerio-programme/i-customer-i-o-programme.js.map +0 -1
  437. package/src/models/customerio-programme/i-customer-io-programme.js.map +0 -1
  438. package/src/models/customerio-programme/i-deadline.js.map +0 -1
  439. package/src/models/customerio-programme/i-english-requirements.js.map +0 -1
  440. package/src/models/customerio-programme/i-internal-link.js.map +0 -1
  441. package/src/models/customerio-programme/i-logo.js.map +0 -1
  442. package/src/models/customerio-programme/i-start-date.js.map +0 -1
  443. package/src/models/customerio-programme/i-timing.js.map +0 -1
  444. package/src/models/customerio-programme/i-tuition-fee.js.map +0 -1
  445. package/src/models/faq-static-content/i-faq-static-content.js.map +0 -1
  446. package/src/models/faq-static-content/i-faq.js.map +0 -1
  447. package/src/models/faq-static-content/i-static-content-url.js.map +0 -1
  448. package/src/models/faq-static-content/public-faq-static-content-client.js.map +0 -1
  449. package/src/models/organisation-card/i-organisation-card.js.map +0 -1
  450. package/src/models/organisation-card/i-ranking-discipline.js.map +0 -1
  451. package/src/models/organisation-card/i-review-rating-domain.js.map +0 -1
  452. package/src/models/organisation-card/organisation-card-client.js.map +0 -1
  453. package/src/models/organisation-for-search/i-organisation-for-search.js.map +0 -1
  454. package/src/models/organisation-for-search/public-organisation-for-search-client.js.map +0 -1
  455. package/src/models/organisation-search-document/i-organisation-search-document.js.map +0 -1
  456. package/src/models/organisation-search-document/organisation-search-document-client.js.map +0 -1
  457. package/src/models/programme-card/i-click-tracking-data.js.map +0 -1
  458. package/src/models/programme-card/i-cover.js.map +0 -1
  459. package/src/models/programme-card/i-deadline.js.map +0 -1
  460. package/src/models/programme-card/i-duration.js.map +0 -1
  461. package/src/models/programme-card/i-english-requirements.js.map +0 -1
  462. package/src/models/programme-card/i-g-p-a-requirement.js.map +0 -1
  463. package/src/models/programme-card/i-internal-link.js.map +0 -1
  464. package/src/models/programme-card/i-link.js.map +0 -1
  465. package/src/models/programme-card/i-living-cost.js.map +0 -1
  466. package/src/models/programme-card/i-location.js.map +0 -1
  467. package/src/models/programme-card/i-logo.js.map +0 -1
  468. package/src/models/programme-card/i-optional-link.js.map +0 -1
  469. package/src/models/programme-card/i-programme-card.js.map +0 -1
  470. package/src/models/programme-card/i-review-rating-domain.js.map +0 -1
  471. package/src/models/programme-card/i-start-date.js.map +0 -1
  472. package/src/models/programme-card/i-timing.js.map +0 -1
  473. package/src/models/programme-card/i-tracked-link.js.map +0 -1
  474. package/src/models/programme-card/i-tracking.js.map +0 -1
  475. package/src/models/programme-card/i-tuition-fee.js.map +0 -1
  476. package/src/models/programme-card/programme-card-client.js.map +0 -1
  477. package/src/models/ranking-cards/i-ranking.js.map +0 -1
  478. package/src/models/scholarship-card/i-scholarship-card-v2.js.map +0 -1
  479. package/src/models/scholarship-card/i-scholarship-card.js.map +0 -1
  480. package/src/models/scholarship-card/public-scholarship-card-client.js.map +0 -1
  481. package/src/models/scholarship-card/scholarship-card-v2-client.js.map +0 -1
  482. package/src/models/scholarship-card-v2/i-scholarship-card.js.map +0 -1
  483. package/src/models/scholarship-card-v2/scholarship-card-v2-client.js.map +0 -1
  484. package/src/models/scholarship-search-document/i-scholarship-search-document.js.map +0 -1
  485. package/src/models/scholarship-search-document/scholarship-search-document-client.js.map +0 -1
  486. package/src/models/search-discipline/i-search-discipline.js.map +0 -1
  487. package/src/models/search-discipline/public-search-discipline-client.js.map +0 -1
  488. package/src/models/search-projection/i-geo-targeting-configuration.js.map +0 -1
  489. package/src/models/search-projection/i-geo-targeting-values.js.map +0 -1
  490. package/src/models/search-projection/i-organisation-values.js.map +0 -1
  491. package/src/models/search-projection/i-premium-values.js.map +0 -1
  492. package/src/models/search-projection/i-search-projection.js.map +0 -1
  493. package/src/models/search-projection/i-tuition-values.js.map +0 -1
  494. package/src/models/search-projection/search-projection-client.js.map +0 -1
  495. package/src/models/sitemap-articles-info/i-sitemap-article-info.js.map +0 -1
  496. package/src/models/sitemap-articles-info/sitemap-articles-info-client.js.map +0 -1
  497. package/src/models/sitemap-cities-info/i-sitemap-city-info.js.map +0 -1
  498. package/src/models/sitemap-cities-info/sitemap-cities-info-client.js.map +0 -1
  499. package/src/models/sitemap-countries-info/i-sitemap-country-info.js.map +0 -1
  500. package/src/models/sitemap-countries-info/sitemap-countries-info-client.js.map +0 -1
  501. package/src/models/sitemap-country-degree-info/i-degree-info.js.map +0 -1
  502. package/src/models/sitemap-country-degree-info/i-sitemap-country-degree-info.js.map +0 -1
  503. package/src/models/sitemap-country-degree-info/sitemap-country-degree-info-client.js.map +0 -1
  504. package/src/models/sitemap-disciplines-info/i-sitemap-discipline-info.js.map +0 -1
  505. package/src/models/sitemap-disciplines-info/sitemap-disciplines-info-client.js.map +0 -1
  506. package/src/models/sitemap-organisations-info/i-sitemap-organisation-info.js.map +0 -1
  507. package/src/models/sitemap-organisations-info/sitemap-organisations-info-client.js.map +0 -1
  508. package/src/models/sitemap-programme-info/i-sitemap-programme-info.js.map +0 -1
  509. package/src/models/sitemap-programme-info/sitemap-programme-info-client.js.map +0 -1
  510. package/src/models/sitemap-rankings-info/i-sitemap-rankings-info.js.map +0 -1
  511. package/src/models/sitemap-rankings-info/sitemap-rankings-info-client.js.map +0 -1
  512. package/src/types/portal-map.js.map +0 -1
  513. package/src/types/portal-type.js.map +0 -1
  514. package/src/types.js.map +0 -1
package/protobuf/index.js CHANGED
@@ -1,7 +1,45 @@
1
- /**
2
- * @file Automatically generated by barrelsby.
3
- */
4
- export * from "./InternalLink";
5
- export * from "./Link";
6
- export * from "./MiniProgrammeCard";
7
- //# sourceMappingURL=index.js.map
1
+ /**
2
+ * @file Automatically generated by barrelsby.
3
+ */
4
+ export * from "./Area";
5
+ export * from "./Article";
6
+ export * from "./Body";
7
+ export * from "./CampaignInformation";
8
+ export * from "./ClickTracking";
9
+ export * from "./CommercialEntity";
10
+ export * from "./Cover";
11
+ export * from "./Deadline";
12
+ export * from "./Degree";
13
+ export * from "./Description";
14
+ export * from "./Discipline";
15
+ export * from "./Duration";
16
+ export * from "./EnglishRequirement";
17
+ export * from "./EssentialInformation";
18
+ export * from "./File";
19
+ export * from "./GPARequirement";
20
+ export * from "./InternalLink";
21
+ export * from "./Link";
22
+ export * from "./LivingCost";
23
+ export * from "./Location";
24
+ export * from "./Logo";
25
+ export * from "./MiniProgrammeCard";
26
+ export * from "./OptionalLink";
27
+ export * from "./Organisation";
28
+ export * from "./OrganisationInformation";
29
+ export * from "./OrganisationRanking";
30
+ export * from "./Person";
31
+ export * from "./ProgrammeCard";
32
+ export * from "./ProgrammeGrid";
33
+ export * from "./Ranking";
34
+ export * from "./RankingInstitute";
35
+ export * from "./Review";
36
+ export * from "./ReviewRating";
37
+ export * from "./RichText";
38
+ export * from "./SocialLink";
39
+ export * from "./StartDate";
40
+ export * from "./Timing";
41
+ export * from "./Topic";
42
+ export * from "./TrackedLink";
43
+ export * from "./Tracking";
44
+ export * from "./TuitionFee";
45
+ export * from "./Unibuddy";
@@ -0,0 +1,8 @@
1
+ import { Article } from "../../protobuf";
2
+ import { ProtobufClient } from "./protobuf-client";
3
+ export declare class ArticleDetailPageClient extends ProtobufClient<Article> {
4
+ protected constructModel(data: Record<string, any>): Article;
5
+ protected getModelName(): string;
6
+ protected getVersion(): string;
7
+ isPublic(): boolean;
8
+ }
@@ -0,0 +1,16 @@
1
+ import { Article } from "../../protobuf";
2
+ import { ProtobufClient } from "./protobuf-client";
3
+ export class ArticleDetailPageClient extends ProtobufClient {
4
+ constructModel(data) {
5
+ return Article.fromJSON(data);
6
+ }
7
+ getModelName() {
8
+ return 'article-detail-page';
9
+ }
10
+ getVersion() {
11
+ return 'v1';
12
+ }
13
+ isPublic() {
14
+ return false;
15
+ }
16
+ }
@@ -1 +1,7 @@
1
- export * from './mini-programme-card-client';
1
+ /**
2
+ * @file Automatically generated by barrelsby.
3
+ */
4
+ export * from "./article-detail-page-client";
5
+ export * from "./organisation-page-client";
6
+ export * from "./protobuf-client";
7
+ export * from "./public-mini-programme-card-client";
@@ -1,2 +1,7 @@
1
- export * from './mini-programme-card-client';
2
- //# sourceMappingURL=index.js.map
1
+ /**
2
+ * @file Automatically generated by barrelsby.
3
+ */
4
+ export * from "./article-detail-page-client";
5
+ export * from "./organisation-page-client";
6
+ export * from "./protobuf-client";
7
+ export * from "./public-mini-programme-card-client";
@@ -0,0 +1,8 @@
1
+ import { Organisation } from "../../protobuf";
2
+ import { ProtobufClient } from "./protobuf-client";
3
+ export declare class OrganisationPageClient extends ProtobufClient<Organisation> {
4
+ protected constructModel(data: Record<string, any>): Organisation;
5
+ protected getModelName(): string;
6
+ protected getVersion(): string;
7
+ isPublic(): boolean;
8
+ }
@@ -0,0 +1,16 @@
1
+ import { Organisation } from "../../protobuf";
2
+ import { ProtobufClient } from "./protobuf-client";
3
+ export class OrganisationPageClient extends ProtobufClient {
4
+ constructModel(data) {
5
+ return Organisation.fromJSON(data);
6
+ }
7
+ getModelName() {
8
+ return 'organisation-page';
9
+ }
10
+ getVersion() {
11
+ return 'v1';
12
+ }
13
+ isPublic() {
14
+ return false;
15
+ }
16
+ }
@@ -1,11 +1,14 @@
1
- import { PortalMap } from "../types/portal-map";
2
- export declare abstract class ProtobufClient<T> {
3
- private readonly domainClient;
4
- constructor(baseUrl: string, seed: number, apiKey?: string, portalMap?: PortalMap);
5
- fetch(id: number): Promise<T>;
6
- fetchMultiple(ids: number[]): Promise<T[]>;
7
- protected abstract constructModel(data: Record<string, any>): T;
8
- protected abstract getModelName(): string;
9
- protected abstract getVersion(): string;
10
- abstract isPublic(): boolean;
11
- }
1
+ import { PortalMap } from "../types/portal-map";
2
+ import { PortalType } from "../types/portal-type";
3
+ export declare abstract class ProtobufClient<T> {
4
+ static portalMap: PortalMap;
5
+ private readonly domainClient;
6
+ constructor(baseUrl: string, seed: number, apiKey?: string, portalMap?: PortalMap);
7
+ fetch(id: number): Promise<T>;
8
+ fetchMultiple(ids: number[]): Promise<T[]>;
9
+ protected abstract constructModel(data: Record<string, any>): T;
10
+ protected abstract getModelName(): string;
11
+ protected abstract getVersion(): string;
12
+ abstract isPublic(): boolean;
13
+ static transformUrlUsingPortalMap(path: string, portalType: PortalType): string;
14
+ }
@@ -1,16 +1,26 @@
1
- import { DomainClient } from "../domain-client";
2
- export class ProtobufClient {
3
- domainClient;
4
- constructor(baseUrl, seed, apiKey, portalMap) {
5
- this.domainClient = new DomainClient(baseUrl, apiKey, this.getModelName(), this.getVersion(), this.isPublic(), seed);
6
- }
7
- async fetch(id) {
8
- const results = await this.domainClient.doRequest([id]);
9
- return this.constructModel(results[0]);
10
- }
11
- async fetchMultiple(ids) {
12
- const results = await this.domainClient.doRequest(ids);
13
- return results.map((data) => this.constructModel(data));
14
- }
15
- }
16
- //# sourceMappingURL=protobuf-client.js.map
1
+ import { DomainClient } from "../domain-client";
2
+ export class ProtobufClient {
3
+ static portalMap = new Map();
4
+ domainClient;
5
+ constructor(baseUrl, seed, apiKey, portalMap) {
6
+ if (portalMap) {
7
+ ProtobufClient.portalMap = portalMap;
8
+ }
9
+ this.domainClient = new DomainClient(baseUrl, apiKey, this.getModelName(), this.getVersion(), this.isPublic(), seed);
10
+ }
11
+ async fetch(id) {
12
+ const results = await this.domainClient.doRequest([id]);
13
+ return this.constructModel(results[0]);
14
+ }
15
+ async fetchMultiple(ids) {
16
+ const results = await this.domainClient.doRequest(ids);
17
+ return results.map((data) => this.constructModel(data));
18
+ }
19
+ static transformUrlUsingPortalMap(path, portalType) {
20
+ const baseUrl = ProtobufClient.portalMap.get(portalType);
21
+ if (baseUrl && !path.includes('https')) {
22
+ return baseUrl + path;
23
+ }
24
+ return path;
25
+ }
26
+ }
@@ -1,8 +1,8 @@
1
- import { ProtobufClient } from "./protobuf-client";
2
- import { MiniProgrammeCard } from "../../protobuf/MiniProgrammeCard";
3
- export declare class MiniProgrammeCardClient extends ProtobufClient<MiniProgrammeCard> {
4
- protected constructModel(data: Record<string, any>): MiniProgrammeCard;
5
- protected getModelName(): string;
6
- protected getVersion(): string;
7
- isPublic(): boolean;
8
- }
1
+ import { MiniProgrammeCard } from "../../protobuf";
2
+ import { ProtobufClient } from "./protobuf-client";
3
+ export declare class PublicMiniProgrammeCardClient extends ProtobufClient<MiniProgrammeCard> {
4
+ protected constructModel(data: Record<string, any>): MiniProgrammeCard;
5
+ protected getModelName(): string;
6
+ protected getVersion(): string;
7
+ isPublic(): boolean;
8
+ }
@@ -1,17 +1,16 @@
1
- import { ProtobufClient } from "./protobuf-client";
2
- import { MiniProgrammeCard } from "../../protobuf/MiniProgrammeCard";
3
- export class MiniProgrammeCardClient extends ProtobufClient {
4
- constructModel(data) {
5
- return MiniProgrammeCard.fromJSON(data);
6
- }
7
- getModelName() {
8
- return 'mini-programme-card';
9
- }
10
- getVersion() {
11
- return 'v1';
12
- }
13
- isPublic() {
14
- return true;
15
- }
16
- }
17
- //# sourceMappingURL=mini-programme-card-client.js.map
1
+ import { MiniProgrammeCard } from "../../protobuf";
2
+ import { ProtobufClient } from "./protobuf-client";
3
+ export class PublicMiniProgrammeCardClient extends ProtobufClient {
4
+ constructModel(data) {
5
+ return MiniProgrammeCard.fromJSON(data);
6
+ }
7
+ getModelName() {
8
+ return 'mini-programme-card';
9
+ }
10
+ getVersion() {
11
+ return 'v1';
12
+ }
13
+ isPublic() {
14
+ return true;
15
+ }
16
+ }
@@ -1,14 +1,14 @@
1
- import { IModelDescription } from "./i-model-description";
2
- export declare class DomainClient {
3
- readonly baseUrl: string;
4
- readonly apiKey: string | undefined;
5
- readonly model: string;
6
- readonly version: string;
7
- readonly isPublic: boolean;
8
- readonly seed: number;
9
- constructor(baseUrl: string, apiKey: string | undefined, model: string, version: string, isPublic: boolean, seed: number);
10
- doRequest(ids: number[]): Promise<IModelDescription[]>;
11
- private handleErrors;
12
- private buildUrl;
13
- private shouldAddPublicPrefix;
14
- }
1
+ export declare class DomainClient<T> {
2
+ readonly baseUrl: string;
3
+ readonly apiKey: string | undefined;
4
+ readonly model: string;
5
+ readonly version: string;
6
+ readonly isPublic: boolean;
7
+ readonly seed: number;
8
+ constructor(baseUrl: string, apiKey: string | undefined, model: string, version: string, isPublic: boolean, seed: number);
9
+ doRequest(ids: number[]): Promise<T[]>;
10
+ private decompressData;
11
+ private handleErrors;
12
+ private buildUrl;
13
+ private shouldAddPublicPrefix;
14
+ }
@@ -1,63 +1,89 @@
1
- import Axios from "axios";
2
- import { BadRequestException } from "./exceptions/bad-request-exception";
3
- import { InternalServerException } from "./exceptions/internal-server-exception";
4
- import { NotFoundException } from "./exceptions/not-found-exception";
5
- export class DomainClient {
6
- baseUrl;
7
- apiKey;
8
- model;
9
- version;
10
- isPublic;
11
- seed;
12
- constructor(baseUrl, apiKey, model, version, isPublic, seed) {
13
- this.baseUrl = baseUrl;
14
- this.apiKey = apiKey;
15
- this.model = model;
16
- this.version = version;
17
- this.isPublic = isPublic;
18
- this.seed = seed;
19
- }
20
- async doRequest(ids) {
21
- const url = this.buildUrl(ids);
22
- const config = { baseURL: this.baseUrl };
23
- if (this.apiKey !== undefined) {
24
- // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
25
- config["headers"] = { 'x-api-key': this.apiKey };
26
- }
27
- const axiosResponse = await Axios.get(url, config);
28
- const response = axiosResponse.data;
29
- this.handleErrors(response);
30
- const models = [];
31
- for (const id of ids) {
32
- const modelData = response.data[id];
33
- if (!modelData) {
34
- continue;
35
- }
36
- models.push(modelData);
37
- }
38
- return models;
39
- }
40
- handleErrors(response) {
41
- if (!response.status) {
42
- throw new InternalServerException(response.message);
43
- }
44
- if (response.status === 400) {
45
- throw new BadRequestException(response.message);
46
- }
47
- if (response.status === 404) {
48
- throw new NotFoundException(response.message);
49
- }
50
- }
51
- buildUrl(ids) {
52
- const publicPrefix = this.shouldAddPublicPrefix() ? 'public/' : '';
53
- let query = `${publicPrefix}${this.model}/${this.version}/?seed=${this.seed}`;
54
- for (const id of ids) {
55
- query += `&id=${id}`;
56
- }
57
- return query;
58
- }
59
- shouldAddPublicPrefix() {
60
- return this.isPublic && this.apiKey === undefined;
61
- }
62
- }
63
- //# sourceMappingURL=domain-client.js.map
1
+ import { BadRequestException } from "./exceptions/bad-request-exception";
2
+ import { InternalServerException } from "./exceptions/internal-server-exception";
3
+ import { NotFoundException } from "./exceptions/not-found-exception";
4
+ const decoder = new TextDecoder();
5
+ export class DomainClient {
6
+ baseUrl;
7
+ apiKey;
8
+ model;
9
+ version;
10
+ isPublic;
11
+ seed;
12
+ constructor(baseUrl, apiKey, model, version, isPublic, seed) {
13
+ this.baseUrl = baseUrl;
14
+ this.apiKey = apiKey;
15
+ this.model = model;
16
+ this.version = version;
17
+ this.isPublic = isPublic;
18
+ this.seed = seed;
19
+ }
20
+ async doRequest(ids) {
21
+ const url = `${this.baseUrl}/${this.buildUrl(ids)}`;
22
+ const headers = {};
23
+ if (this.apiKey !== undefined) {
24
+ headers["x-api-key"] = this.apiKey;
25
+ }
26
+ try {
27
+ const response = await fetch(url, { headers });
28
+ const data = await response.json();
29
+ if (!response.ok || data.status !== 200) {
30
+ this.handleErrors(data);
31
+ }
32
+ const models = [];
33
+ for (const id of ids) {
34
+ let modelData = data.data[id];
35
+ if (typeof modelData === 'string') {
36
+ try {
37
+ const bytes = Uint8Array.from(Buffer.from(modelData, 'base64'));
38
+ const decompressedBytes = await this.decompressData(bytes);
39
+ modelData = JSON.parse(decoder.decode(decompressedBytes));
40
+ }
41
+ catch (error) {
42
+ console.error(error);
43
+ continue;
44
+ }
45
+ }
46
+ if (!modelData) {
47
+ continue;
48
+ }
49
+ models.push(modelData);
50
+ }
51
+ return models;
52
+ }
53
+ catch (error) {
54
+ console.error('Error fetching data from API:', error);
55
+ if (error instanceof InternalServerException || error instanceof BadRequestException || error instanceof NotFoundException) {
56
+ throw error;
57
+ }
58
+ throw new InternalServerException('Unable to fetch data from the API', error);
59
+ }
60
+ }
61
+ async decompressData(compressedData) {
62
+ const stream = new DecompressionStream('deflate');
63
+ const response = new Response(compressedData);
64
+ const decompressed = response.body?.pipeThrough(stream);
65
+ return new Uint8Array(await new Response(decompressed).arrayBuffer());
66
+ }
67
+ handleErrors(response) {
68
+ if (!response.status) {
69
+ throw new InternalServerException(response.message);
70
+ }
71
+ if (response.status === 400) {
72
+ throw new BadRequestException(response.message);
73
+ }
74
+ if (response.status === 404) {
75
+ throw new NotFoundException(response.message);
76
+ }
77
+ }
78
+ buildUrl(ids) {
79
+ const publicPrefix = this.shouldAddPublicPrefix() ? 'public/' : '';
80
+ let query = `${publicPrefix}${this.model}/${this.version}/?seed=${this.seed}`;
81
+ for (const id of ids) {
82
+ query += `&id=${id}`;
83
+ }
84
+ return query;
85
+ }
86
+ shouldAddPublicPrefix() {
87
+ return this.isPublic && this.apiKey === undefined;
88
+ }
89
+ }
@@ -1,2 +1,2 @@
1
- export declare class BadRequestException extends Error {
2
- }
1
+ export declare class BadRequestException extends Error {
2
+ }
@@ -1,3 +1,2 @@
1
- export class BadRequestException extends Error {
2
- }
3
- //# sourceMappingURL=bad-request-exception.js.map
1
+ export class BadRequestException extends Error {
2
+ }
@@ -1,2 +1,2 @@
1
- export declare class ClientException extends Error {
2
- }
1
+ export declare class ClientException extends Error {
2
+ }
@@ -1,3 +1,2 @@
1
- export class ClientException extends Error {
2
- }
3
- //# sourceMappingURL=client-exception.js.map
1
+ export class ClientException extends Error {
2
+ }
@@ -1,2 +1,2 @@
1
- export declare class InternalServerException extends Error {
2
- }
1
+ export declare class InternalServerException extends Error {
2
+ }
@@ -1,3 +1,2 @@
1
- export class InternalServerException extends Error {
2
- }
3
- //# sourceMappingURL=internal-server-exception.js.map
1
+ export class InternalServerException extends Error {
2
+ }
@@ -1,2 +1,2 @@
1
- export declare class NotFoundException extends Error {
2
- }
1
+ export declare class NotFoundException extends Error {
2
+ }
@@ -1,3 +1,2 @@
1
- export class NotFoundException extends Error {
2
- }
3
- //# sourceMappingURL=not-found-exception.js.map
1
+ export class NotFoundException extends Error {
2
+ }
@@ -1,2 +1,2 @@
1
- export declare class PropertyNotAvailableException extends Error {
2
- }
1
+ export declare class PropertyNotAvailableException extends Error {
2
+ }
@@ -1,3 +1,2 @@
1
- export class PropertyNotAvailableException extends Error {
2
- }
3
- //# sourceMappingURL=property-not-available-exception.js.map
1
+ export class PropertyNotAvailableException extends Error {
2
+ }
@@ -1,5 +1,5 @@
1
- import { IClassFactory } from "../i-class-factory";
2
- import { CallableReturnType, Model } from "../types";
3
- export declare class DateFactory implements IClassFactory {
4
- create(data: Model, parameters: string[]): CallableReturnType;
5
- }
1
+ import { IClassFactory } from "../i-class-factory";
2
+ import { CallableReturnType, Model } from "../types";
3
+ export declare class DateFactory implements IClassFactory {
4
+ create(data: Model, parameters: string[]): CallableReturnType;
5
+ }
@@ -1,6 +1,5 @@
1
- export class DateFactory {
2
- create(data, parameters) {
3
- return new Date(parameters[0]);
4
- }
5
- }
6
- //# sourceMappingURL=DateFactory.js.map
1
+ export class DateFactory {
2
+ create(data, parameters) {
3
+ return new Date(parameters[0]);
4
+ }
5
+ }
@@ -1,9 +1,9 @@
1
- import { IClassFactory } from "../i-class-factory";
2
- import { CallableReturnType, Model } from "../types";
3
- import { PortalMap } from "../types/portal-map";
4
- export declare class InternalLinkFactory implements IClassFactory {
5
- private portalMap;
6
- constructor(portalMap: PortalMap);
7
- create(link: Model): CallableReturnType;
8
- private getPortalBaseUrl;
9
- }
1
+ import { IClassFactory } from "../i-class-factory";
2
+ import { CallableReturnType, Model } from "../types";
3
+ import { PortalMap } from "../types/portal-map";
4
+ export declare class InternalLinkFactory implements IClassFactory {
5
+ private portalMap;
6
+ constructor(portalMap: PortalMap);
7
+ create(link: Model, parameters?: unknown): CallableReturnType;
8
+ private getPortalBaseUrl;
9
+ }
@@ -1,17 +1,21 @@
1
- export class InternalLinkFactory {
2
- portalMap;
3
- constructor(portalMap) {
4
- this.portalMap = portalMap;
5
- }
6
- create(link) {
7
- const portalBaseUrl = this.getPortalBaseUrl(link.getPortalType());
8
- const path = link['getUrl']();
9
- link['getUrl'] = () => portalBaseUrl + path;
10
- return link;
11
- }
12
- getPortalBaseUrl(portalType) {
13
- const url = this.portalMap.get(portalType);
14
- return url || '';
15
- }
16
- }
17
- //# sourceMappingURL=InternalLinkFactory.js.map
1
+ export class InternalLinkFactory {
2
+ portalMap;
3
+ constructor(portalMap) {
4
+ this.portalMap = portalMap;
5
+ }
6
+ create(link, parameters) {
7
+ const getPortalType = link['getPortalType'];
8
+ const portalType = getPortalType ? getPortalType() : null;
9
+ const portalBaseUrl = portalType ? this.getPortalBaseUrl(portalType) : '';
10
+ const getUrl = link['getUrl'];
11
+ if (getUrl) {
12
+ const path = getUrl();
13
+ link['getUrl'] = () => portalBaseUrl + path;
14
+ }
15
+ return link;
16
+ }
17
+ getPortalBaseUrl(portalType) {
18
+ const url = this.portalMap.get(portalType);
19
+ return url || '';
20
+ }
21
+ }
@@ -1,6 +1,6 @@
1
- import { IModelDescription } from "./i-model-description";
2
- export interface IApiResponse {
3
- status: number;
4
- data: Record<number, IModelDescription>;
5
- message: string;
6
- }
1
+ import { IModelDescription } from "./i-model-description";
2
+ export interface IApiResponse {
3
+ status: number;
4
+ data: Record<number, IModelDescription | string>;
5
+ message: string;
6
+ }
@@ -1,2 +1 @@
1
- export {};
2
- //# sourceMappingURL=i-api-response.js.map
1
+ export {};
@@ -1,4 +1,4 @@
1
- import { CallableReturnType, Model } from "./types";
2
- export interface IClassFactory {
3
- create(data: Model, parameters?: any[]): CallableReturnType;
4
- }
1
+ import { CallableReturnType, Model } from "./types";
2
+ export interface IClassFactory {
3
+ create(data: Model, parameters?: any[]): CallableReturnType;
4
+ }
@@ -1,2 +1 @@
1
- export {};
2
- //# sourceMappingURL=i-class-factory.js.map
1
+ export {};
@@ -1,7 +1,7 @@
1
- import { AcceptedType } from "./types";
2
- export interface IModelDescription {
3
- class: string;
4
- func: Record<string, AcceptedType | IModelDescription>;
5
- parameters?: any[];
6
- }
7
- export declare function isModelDescription(arg: any): arg is IModelDescription;
1
+ import { AcceptedType } from "./types";
2
+ export interface IModelDescription {
3
+ class: string;
4
+ func: Record<string, AcceptedType | IModelDescription>;
5
+ parameters?: any[];
6
+ }
7
+ export declare function isModelDescription(arg: any): arg is IModelDescription;