@studyportals/domain-client 3.18.0 → 3.19.1-beta.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.
- package/{bin/index.d.ts → index.d.ts} +73 -73
- package/{bin/index.js → index.js} +53 -53
- package/package.json +55 -55
- package/{bin/src → src}/domain-client.d.ts +14 -14
- package/{bin/src → src}/domain-client.js +60 -60
- package/{bin/src → src}/exceptions/bad-request-exception.d.ts +2 -2
- package/{bin/src → src}/exceptions/bad-request-exception.js +6 -6
- package/{bin/src → src}/exceptions/client-exception.d.ts +2 -2
- package/{bin/src → src}/exceptions/client-exception.js +6 -6
- package/{bin/src → src}/exceptions/internal-server-exception.d.ts +2 -2
- package/{bin/src → src}/exceptions/internal-server-exception.js +6 -6
- package/{bin/src → src}/exceptions/not-found-exception.d.ts +2 -2
- package/{bin/src → src}/exceptions/not-found-exception.js +6 -6
- package/{bin/src → src}/exceptions/property-not-available-exception.d.ts +2 -2
- package/{bin/src → src}/exceptions/property-not-available-exception.js +6 -6
- package/{bin/src → src}/factories/DateFactory.d.ts +5 -5
- package/{bin/src → src}/factories/DateFactory.js +9 -9
- package/{bin/src → src}/factories/InternalLinkFactory.d.ts +9 -9
- package/{bin/src → src}/factories/InternalLinkFactory.js +19 -19
- package/{bin/src → src}/i-api-response.d.ts +6 -6
- package/{bin/src → src}/i-api-response.js +2 -2
- package/{bin/src → src}/i-class-factory.d.ts +4 -4
- package/{bin/src → src}/i-class-factory.js +2 -2
- package/{bin/src → src}/i-model-description.d.ts +7 -7
- package/{bin/src → src}/i-model-description.js +9 -9
- package/{bin/src → src}/model-client.d.ts +16 -16
- package/{bin/src → src}/model-client.js +45 -45
- package/{bin/src → src}/model-factory.d.ts +11 -11
- package/{bin/src → src}/model-factory.js +71 -71
- package/{bin/src → src}/models/bestfit-programme/bestfit-programme-client.d.ts +7 -7
- package/{bin/src → src}/models/bestfit-programme/bestfit-programme-client.js +16 -16
- package/{bin/src → src}/models/bestfit-programme/i-best-fit-programme.d.ts +82 -82
- package/{bin/src → src}/models/bestfit-programme/i-best-fit-programme.js +2 -2
- package/{bin/src/models/common → src/models/bestfit-programme}/i-city.d.ts +14 -14
- package/{bin/src/models/common → src/models/bestfit-programme}/i-city.js +2 -2
- package/{bin/src → src}/models/bestfit-programme/i-living-cost.d.ts +20 -20
- package/{bin/src → src}/models/bestfit-programme/i-living-cost.js +2 -2
- package/{bin/src/models/bestfit-programme → src/models/common}/i-city.d.ts +14 -14
- package/{bin/src/models/bestfit-programme → src/models/common}/i-city.js +2 -2
- package/{bin/src → src}/models/common/i-country.d.ts +20 -20
- package/{bin/src → src}/models/common/i-country.js +2 -2
- package/{bin/src → src}/models/common/i-english-requirements.d.ts +44 -44
- package/{bin/src → src}/models/common/i-english-requirements.js +2 -2
- package/{bin/src → src}/models/common/i-g-p-a-requirement.d.ts +20 -20
- package/{bin/src → src}/models/common/i-g-p-a-requirement.js +2 -2
- package/{bin/src → src}/models/common/i-internal-link.d.ts +28 -28
- package/{bin/src → src}/models/common/i-internal-link.js +2 -2
- package/{bin/src/models/programme-card → src/models/common}/i-logo.d.ts +14 -14
- package/{bin/src/models/programme-card → src/models/common}/i-logo.js +2 -2
- package/{bin/src/models/programme-card → src/models/common}/i-tuition-fee.d.ts +50 -50
- package/{bin/src → src}/models/common/i-tuition-fee.js +2 -2
- package/{bin/src → src}/models/compare-programme/compare-programme-client.d.ts +7 -7
- package/{bin/src → src}/models/compare-programme/compare-programme-client.js +16 -16
- package/{bin/src → src}/models/compare-programme/i-compare-programme.d.ts +108 -108
- package/{bin/src → src}/models/compare-programme/i-compare-programme.js +2 -2
- package/{bin/src → src}/models/dotdigital-organisation/dotdigital-organisation-client.d.ts +7 -7
- package/{bin/src → src}/models/dotdigital-organisation/dotdigital-organisation-client.js +16 -16
- package/{bin/src → src}/models/dotdigital-organisation/i-dot-digital-organisation.d.ts +35 -35
- package/{bin/src → src}/models/dotdigital-organisation/i-dot-digital-organisation.js +2 -2
- package/{bin/src → src}/models/dotdigital-organisation/i-review.d.ts +7 -7
- package/{bin/src → src}/models/dotdigital-organisation/i-review.js +2 -2
- package/{bin/src → src}/models/dotdigital-programme/dotdigital-programme-client.d.ts +7 -7
- package/{bin/src → src}/models/dotdigital-programme/dotdigital-programme-client.js +16 -16
- package/{bin/src → src}/models/dotdigital-programme/i-dot-digital-programme.d.ts +101 -101
- package/{bin/src → src}/models/dotdigital-programme/i-dot-digital-programme.js +2 -2
- package/{bin/src/models/programme-card → src/models/dotdigital-programme}/i-internal-link.d.ts +28 -28
- package/{bin/src → src}/models/dotdigital-programme/i-internal-link.js +2 -2
- package/{bin/src → src}/models/programme-card/i-click-tracking-data.d.ts +5 -5
- package/{bin/src → src}/models/programme-card/i-click-tracking-data.js +2 -2
- package/{bin/src → src}/models/programme-card/i-cover.d.ts +14 -14
- package/{bin/src → src}/models/programme-card/i-cover.js +2 -2
- package/{bin/src → src}/models/programme-card/i-deadline.d.ts +20 -20
- package/{bin/src → src}/models/programme-card/i-deadline.js +2 -2
- package/{bin/src → src}/models/programme-card/i-duration.d.ts +40 -40
- package/{bin/src → src}/models/programme-card/i-duration.js +2 -2
- package/{bin/src/models/dotdigital-programme → src/models/programme-card}/i-internal-link.d.ts +28 -28
- package/{bin/src → src}/models/programme-card/i-internal-link.js +2 -2
- package/{bin/src → src}/models/programme-card/i-link.d.ts +22 -22
- package/{bin/src → src}/models/programme-card/i-link.js +2 -2
- package/{bin/src → src}/models/programme-card/i-location.d.ts +12 -12
- package/{bin/src → src}/models/programme-card/i-location.js +2 -2
- package/{bin/src/models/common → src/models/programme-card}/i-logo.d.ts +14 -14
- package/{bin/src/models/common → src/models/programme-card}/i-logo.js +2 -2
- package/{bin/src → src}/models/programme-card/i-optional-link.d.ts +23 -23
- package/{bin/src → src}/models/programme-card/i-optional-link.js +2 -2
- package/{bin/src → src}/models/programme-card/i-programme-card.d.ts +186 -178
- package/{bin/src → src}/models/programme-card/i-programme-card.js +2 -2
- package/{bin/src → src}/models/programme-card/i-start-date.d.ts +33 -33
- package/{bin/src → src}/models/programme-card/i-start-date.js +2 -2
- package/{bin/src → src}/models/programme-card/i-timing.d.ts +45 -45
- package/{bin/src → src}/models/programme-card/i-timing.js +2 -2
- package/{bin/src → src}/models/programme-card/i-tracked-link.d.ts +29 -29
- package/{bin/src → src}/models/programme-card/i-tracked-link.js +2 -2
- package/{bin/src → src}/models/programme-card/i-tracking.d.ts +46 -46
- package/{bin/src → src}/models/programme-card/i-tracking.js +2 -2
- package/{bin/src/models/common → src/models/programme-card}/i-tuition-fee.d.ts +50 -50
- package/{bin/src → src}/models/programme-card/i-tuition-fee.js +2 -2
- package/{bin/src → src}/models/programme-card/programme-card-client.d.ts +7 -7
- package/{bin/src → src}/models/programme-card/programme-card-client.js +16 -16
- package/{bin/src → src}/models/ranking-cards/i-ranking-card.d.ts +69 -63
- package/{bin/src → src}/models/ranking-cards/i-ranking-card.js +2 -2
- package/{bin/src → src}/models/ranking-cards/i-ranking-cards.d.ts +15 -15
- package/{bin/src → src}/models/ranking-cards/i-ranking-cards.js +2 -2
- package/{bin/src → src}/models/ranking-cards/i-ranking.d.ts +18 -18
- package/{bin/src → src}/models/ranking-cards/i-ranking.js +2 -2
- package/{bin/src → src}/models/ranking-cards/public-ranking-cards-client.d.ts +7 -7
- package/{bin/src → src}/models/ranking-cards/public-ranking-cards-client.js +16 -16
- package/{bin/src → src}/models/scholarship-card/i-scholarship-card.d.ts +14 -14
- package/{bin/src → src}/models/scholarship-card/i-scholarship-card.js +2 -2
- package/{bin/src → src}/models/scholarship-card/public-scholarship-card-client.d.ts +7 -7
- package/{bin/src → src}/models/scholarship-card/public-scholarship-card-client.js +16 -16
- package/{bin/src → src}/models/search-country-faq/i-search-country-faq.d.ts +18 -18
- package/{bin/src → src}/models/search-country-faq/i-search-country-faq.js +2 -2
- package/{bin/src → src}/models/search-country-faq/public-search-country-faq-client.d.ts +7 -7
- package/{bin/src → src}/models/search-country-faq/public-search-country-faq-client.js +16 -16
- package/{bin/src → src}/models/search-discipline/i-search-discipline.d.ts +26 -26
- package/{bin/src → src}/models/search-discipline/i-search-discipline.js +2 -2
- package/{bin/src → src}/models/search-discipline/public-search-discipline-client.d.ts +7 -7
- package/{bin/src → src}/models/search-discipline/public-search-discipline-client.js +16 -16
- package/{bin/src → src}/models/search-projection/i-geo-targeting-configuration.d.ts +38 -38
- package/{bin/src → src}/models/search-projection/i-geo-targeting-configuration.js +2 -2
- package/{bin/src → src}/models/search-projection/i-geo-targeting-values.d.ts +30 -30
- package/{bin/src → src}/models/search-projection/i-geo-targeting-values.js +2 -2
- package/{bin/src → src}/models/search-projection/i-organisation-values.d.ts +40 -40
- package/{bin/src → src}/models/search-projection/i-organisation-values.js +2 -2
- package/{bin/src → src}/models/search-projection/i-premium-values.d.ts +35 -35
- package/{bin/src → src}/models/search-projection/i-premium-values.js +2 -2
- package/{bin/src → src}/models/search-projection/i-search-projection.d.ts +180 -180
- package/{bin/src → src}/models/search-projection/i-search-projection.js +2 -2
- package/{bin/src → src}/models/search-projection/i-tuition-values.d.ts +50 -50
- package/{bin/src → src}/models/search-projection/i-tuition-values.js +2 -2
- package/{bin/src → src}/models/search-projection/search-projection-client.d.ts +7 -7
- package/{bin/src → src}/models/search-projection/search-projection-client.js +16 -16
- package/{bin/src → src}/models/sitemap-articles-info/i-sitemap-article-info.d.ts +14 -14
- package/{bin/src → src}/models/sitemap-articles-info/i-sitemap-article-info.js +2 -2
- package/{bin/src → src}/models/sitemap-articles-info/sitemap-articles-info-client.d.ts +7 -7
- package/{bin/src → src}/models/sitemap-articles-info/sitemap-articles-info-client.js +16 -16
- package/{bin/src → src}/models/sitemap-cities-info/i-sitemap-city-info.d.ts +14 -14
- package/{bin/src → src}/models/sitemap-cities-info/i-sitemap-city-info.js +2 -2
- package/{bin/src → src}/models/sitemap-cities-info/sitemap-cities-info-client.d.ts +7 -7
- package/{bin/src → src}/models/sitemap-cities-info/sitemap-cities-info-client.js +16 -16
- package/{bin/src → src}/models/sitemap-countries-info/i-sitemap-country-info.d.ts +14 -14
- package/{bin/src → src}/models/sitemap-countries-info/i-sitemap-country-info.js +2 -2
- package/{bin/src → src}/models/sitemap-countries-info/sitemap-countries-info-client.d.ts +7 -7
- package/{bin/src → src}/models/sitemap-countries-info/sitemap-countries-info-client.js +16 -16
- package/{bin/src → src}/models/sitemap-country-degree-info/i-degree-info.d.ts +14 -14
- package/{bin/src → src}/models/sitemap-country-degree-info/i-degree-info.js +2 -2
- package/{bin/src → src}/models/sitemap-country-degree-info/i-sitemap-country-degree-info.d.ts +11 -11
- package/{bin/src → src}/models/sitemap-country-degree-info/i-sitemap-country-degree-info.js +2 -2
- package/{bin/src → src}/models/sitemap-country-degree-info/sitemap-country-degree-info-client.d.ts +7 -7
- package/{bin/src → src}/models/sitemap-country-degree-info/sitemap-country-degree-info-client.js +16 -16
- package/{bin/src → src}/models/sitemap-disciplines-info/i-sitemap-discipline-info.d.ts +14 -14
- package/{bin/src → src}/models/sitemap-disciplines-info/i-sitemap-discipline-info.js +2 -2
- package/{bin/src → src}/models/sitemap-disciplines-info/sitemap-disciplines-info-client.d.ts +7 -7
- package/{bin/src → src}/models/sitemap-disciplines-info/sitemap-disciplines-info-client.js +16 -16
- package/{bin/src → src}/models/sitemap-organisations-info/i-sitemap-organisation-info.d.ts +26 -26
- package/{bin/src → src}/models/sitemap-organisations-info/i-sitemap-organisation-info.js +2 -2
- package/{bin/src → src}/models/sitemap-organisations-info/sitemap-organisations-info-client.d.ts +7 -7
- package/{bin/src → src}/models/sitemap-organisations-info/sitemap-organisations-info-client.js +16 -16
- package/{bin/src → src}/models/sitemap-programme-info/i-sitemap-programme-info.d.ts +26 -26
- package/{bin/src → src}/models/sitemap-programme-info/i-sitemap-programme-info.js +2 -2
- package/{bin/src → src}/models/sitemap-programme-info/sitemap-programme-info-client.d.ts +7 -7
- package/{bin/src → src}/models/sitemap-programme-info/sitemap-programme-info-client.js +16 -16
- package/{bin/src → src}/models/sitemap-rankings-info/i-sitemap-rankings-info.d.ts +14 -14
- package/{bin/src → src}/models/sitemap-rankings-info/i-sitemap-rankings-info.js +2 -2
- package/{bin/src → src}/models/sitemap-rankings-info/sitemap-rankings-info-client.d.ts +7 -7
- package/{bin/src → src}/models/sitemap-rankings-info/sitemap-rankings-info-client.js +16 -16
- package/{bin/src → src}/types/portal-map.d.ts +2 -2
- package/{bin/src → src}/types/portal-map.js +2 -2
- package/{bin/src → src}/types/portal-type.d.ts +7 -7
- package/{bin/src → src}/types/portal-type.js +11 -11
- package/{bin/src → src}/types.d.ts +4 -4
- package/{bin/src → src}/types.js +2 -2
- package/.eslintignore +0 -3
- package/.eslintrc.js +0 -13
- package/.github/dependabot.yml +0 -17
- package/.github/stale.yml +0 -10
- package/.mocharc.yml +0 -3
- package/.nycrc +0 -15
- package/README.md +0 -117
- package/bin/package.json +0 -55
- package/index.ts +0 -147
- package/src/domain-client.ts +0 -70
- package/src/exceptions/bad-request-exception.ts +0 -2
- package/src/exceptions/client-exception.ts +0 -2
- package/src/exceptions/internal-server-exception.ts +0 -2
- package/src/exceptions/not-found-exception.ts +0 -2
- package/src/exceptions/property-not-available-exception.ts +0 -2
- package/src/factories/DateFactory.ts +0 -8
- package/src/factories/InternalLinkFactory.ts +0 -27
- package/src/i-api-response.ts +0 -7
- package/src/i-class-factory.ts +0 -5
- package/src/i-model-description.ts +0 -13
- package/src/model-client.ts +0 -77
- package/src/model-factory.ts +0 -94
- package/src/models/bestfit-programme/bestfit-programme-client.ts +0 -16
- package/src/models/bestfit-programme/i-best-fit-programme.ts +0 -102
- package/src/models/bestfit-programme/i-city.ts +0 -16
- package/src/models/bestfit-programme/i-living-cost.ts +0 -23
- package/src/models/common/i-city.ts +0 -16
- package/src/models/common/i-country.ts +0 -23
- package/src/models/common/i-english-requirements.ts +0 -56
- package/src/models/common/i-g-p-a-requirement.ts +0 -23
- package/src/models/common/i-internal-link.ts +0 -32
- package/src/models/common/i-logo.ts +0 -16
- package/src/models/common/i-tuition-fee.ts +0 -57
- package/src/models/compare-programme/compare-programme-client.ts +0 -16
- package/src/models/compare-programme/i-compare-programme.ts +0 -126
- package/src/models/dotdigital-organisation/dotdigital-organisation-client.ts +0 -16
- package/src/models/dotdigital-organisation/i-dot-digital-organisation.ts +0 -62
- package/src/models/dotdigital-organisation/i-review.ts +0 -12
- package/src/models/dotdigital-programme/dotdigital-programme-client.ts +0 -16
- package/src/models/dotdigital-programme/i-dot-digital-programme.ts +0 -122
- package/src/models/dotdigital-programme/i-internal-link.ts +0 -32
- package/src/models/programme-card/i-click-tracking-data.ts +0 -8
- package/src/models/programme-card/i-cover.ts +0 -16
- package/src/models/programme-card/i-deadline.ts +0 -23
- package/src/models/programme-card/i-duration.ts +0 -46
- package/src/models/programme-card/i-internal-link.ts +0 -32
- package/src/models/programme-card/i-link.ts +0 -25
- package/src/models/programme-card/i-location.ts +0 -22
- package/src/models/programme-card/i-logo.ts +0 -16
- package/src/models/programme-card/i-optional-link.ts +0 -27
- package/src/models/programme-card/i-programme-card.ts +0 -212
- package/src/models/programme-card/i-start-date.ts +0 -39
- package/src/models/programme-card/i-timing.ts +0 -53
- package/src/models/programme-card/i-tracked-link.ts +0 -34
- package/src/models/programme-card/i-tracking.ts +0 -55
- package/src/models/programme-card/i-tuition-fee.ts +0 -57
- package/src/models/programme-card/programme-card-client.ts +0 -16
- package/src/models/ranking-cards/i-ranking-card.ts +0 -74
- package/src/models/ranking-cards/i-ranking-cards.ts +0 -18
- package/src/models/ranking-cards/i-ranking.ts +0 -22
- package/src/models/ranking-cards/public-ranking-cards-client.ts +0 -16
- package/src/models/scholarship-card/i-scholarship-card.ts +0 -26
- package/src/models/scholarship-card/public-scholarship-card-client.ts +0 -16
- package/src/models/search-country-faq/i-search-country-faq.ts +0 -22
- package/src/models/search-country-faq/public-search-country-faq-client.ts +0 -16
- package/src/models/search-discipline/i-search-discipline.ts +0 -32
- package/src/models/search-discipline/public-search-discipline-client.ts +0 -16
- package/src/models/search-projection/i-geo-targeting-configuration.ts +0 -44
- package/src/models/search-projection/i-geo-targeting-values.ts +0 -38
- package/src/models/search-projection/i-organisation-values.ts +0 -46
- package/src/models/search-projection/i-premium-values.ts +0 -43
- package/src/models/search-projection/i-search-projection.ts +0 -216
- package/src/models/search-projection/i-tuition-values.ts +0 -63
- package/src/models/search-projection/search-projection-client.ts +0 -16
- package/src/models/sitemap-articles-info/i-sitemap-article-info.ts +0 -17
- package/src/models/sitemap-articles-info/sitemap-articles-info-client.ts +0 -16
- package/src/models/sitemap-cities-info/i-sitemap-city-info.ts +0 -17
- package/src/models/sitemap-cities-info/sitemap-cities-info-client.ts +0 -16
- package/src/models/sitemap-countries-info/i-sitemap-country-info.ts +0 -17
- package/src/models/sitemap-countries-info/sitemap-countries-info-client.ts +0 -16
- package/src/models/sitemap-country-degree-info/i-degree-info.ts +0 -17
- package/src/models/sitemap-country-degree-info/i-sitemap-country-degree-info.ts +0 -14
- package/src/models/sitemap-country-degree-info/sitemap-country-degree-info-client.ts +0 -16
- package/src/models/sitemap-disciplines-info/i-sitemap-discipline-info.ts +0 -17
- package/src/models/sitemap-disciplines-info/sitemap-disciplines-info-client.ts +0 -16
- package/src/models/sitemap-organisations-info/i-sitemap-organisation-info.ts +0 -32
- package/src/models/sitemap-organisations-info/sitemap-organisations-info-client.ts +0 -16
- package/src/models/sitemap-programme-info/i-sitemap-programme-info.ts +0 -32
- package/src/models/sitemap-programme-info/sitemap-programme-info-client.ts +0 -16
- package/src/models/sitemap-rankings-info/i-sitemap-rankings-info.ts +0 -17
- package/src/models/sitemap-rankings-info/sitemap-rankings-info-client.ts +0 -16
- package/src/types/portal-map.ts +0 -3
- package/src/types/portal-type.ts +0 -7
- package/src/types.ts +0 -4
- package/tsconfig.json +0 -40
- /package/{bin/index.js.map → index.js.map} +0 -0
- /package/{bin/src → src}/domain-client.js.map +0 -0
- /package/{bin/src → src}/exceptions/bad-request-exception.js.map +0 -0
- /package/{bin/src → src}/exceptions/client-exception.js.map +0 -0
- /package/{bin/src → src}/exceptions/internal-server-exception.js.map +0 -0
- /package/{bin/src → src}/exceptions/not-found-exception.js.map +0 -0
- /package/{bin/src → src}/exceptions/property-not-available-exception.js.map +0 -0
- /package/{bin/src → src}/factories/DateFactory.js.map +0 -0
- /package/{bin/src → src}/factories/InternalLinkFactory.js.map +0 -0
- /package/{bin/src → src}/i-api-response.js.map +0 -0
- /package/{bin/src → src}/i-class-factory.js.map +0 -0
- /package/{bin/src → src}/i-model-description.js.map +0 -0
- /package/{bin/src → src}/model-client.js.map +0 -0
- /package/{bin/src → src}/model-factory.js.map +0 -0
- /package/{bin/src → src}/models/bestfit-programme/bestfit-programme-client.js.map +0 -0
- /package/{bin/src → src}/models/bestfit-programme/i-best-fit-programme.js.map +0 -0
- /package/{bin/src → src}/models/bestfit-programme/i-city.js.map +0 -0
- /package/{bin/src → src}/models/bestfit-programme/i-living-cost.js.map +0 -0
- /package/{bin/src → src}/models/common/i-city.js.map +0 -0
- /package/{bin/src → src}/models/common/i-country.js.map +0 -0
- /package/{bin/src → src}/models/common/i-english-requirements.js.map +0 -0
- /package/{bin/src → src}/models/common/i-g-p-a-requirement.js.map +0 -0
- /package/{bin/src → src}/models/common/i-internal-link.js.map +0 -0
- /package/{bin/src → src}/models/common/i-logo.js.map +0 -0
- /package/{bin/src → src}/models/common/i-tuition-fee.js.map +0 -0
- /package/{bin/src → src}/models/compare-programme/compare-programme-client.js.map +0 -0
- /package/{bin/src → src}/models/compare-programme/i-compare-programme.js.map +0 -0
- /package/{bin/src → src}/models/dotdigital-organisation/dotdigital-organisation-client.js.map +0 -0
- /package/{bin/src → src}/models/dotdigital-organisation/i-dot-digital-organisation.js.map +0 -0
- /package/{bin/src → src}/models/dotdigital-organisation/i-review.js.map +0 -0
- /package/{bin/src → src}/models/dotdigital-programme/dotdigital-programme-client.js.map +0 -0
- /package/{bin/src → src}/models/dotdigital-programme/i-dot-digital-programme.js.map +0 -0
- /package/{bin/src → src}/models/dotdigital-programme/i-internal-link.js.map +0 -0
- /package/{bin/src → src}/models/programme-card/i-click-tracking-data.js.map +0 -0
- /package/{bin/src → src}/models/programme-card/i-cover.js.map +0 -0
- /package/{bin/src → src}/models/programme-card/i-deadline.js.map +0 -0
- /package/{bin/src → src}/models/programme-card/i-duration.js.map +0 -0
- /package/{bin/src → src}/models/programme-card/i-internal-link.js.map +0 -0
- /package/{bin/src → src}/models/programme-card/i-link.js.map +0 -0
- /package/{bin/src → src}/models/programme-card/i-location.js.map +0 -0
- /package/{bin/src → src}/models/programme-card/i-logo.js.map +0 -0
- /package/{bin/src → src}/models/programme-card/i-optional-link.js.map +0 -0
- /package/{bin/src → src}/models/programme-card/i-programme-card.js.map +0 -0
- /package/{bin/src → src}/models/programme-card/i-start-date.js.map +0 -0
- /package/{bin/src → src}/models/programme-card/i-timing.js.map +0 -0
- /package/{bin/src → src}/models/programme-card/i-tracked-link.js.map +0 -0
- /package/{bin/src → src}/models/programme-card/i-tracking.js.map +0 -0
- /package/{bin/src → src}/models/programme-card/i-tuition-fee.js.map +0 -0
- /package/{bin/src → src}/models/programme-card/programme-card-client.js.map +0 -0
- /package/{bin/src → src}/models/ranking-cards/i-ranking-card.js.map +0 -0
- /package/{bin/src → src}/models/ranking-cards/i-ranking-cards.js.map +0 -0
- /package/{bin/src → src}/models/ranking-cards/i-ranking.js.map +0 -0
- /package/{bin/src → src}/models/ranking-cards/public-ranking-cards-client.js.map +0 -0
- /package/{bin/src → src}/models/scholarship-card/i-scholarship-card.js.map +0 -0
- /package/{bin/src → src}/models/scholarship-card/public-scholarship-card-client.js.map +0 -0
- /package/{bin/src → src}/models/search-country-faq/i-search-country-faq.js.map +0 -0
- /package/{bin/src → src}/models/search-country-faq/public-search-country-faq-client.js.map +0 -0
- /package/{bin/src → src}/models/search-discipline/i-search-discipline.js.map +0 -0
- /package/{bin/src → src}/models/search-discipline/public-search-discipline-client.js.map +0 -0
- /package/{bin/src → src}/models/search-projection/i-geo-targeting-configuration.js.map +0 -0
- /package/{bin/src → src}/models/search-projection/i-geo-targeting-values.js.map +0 -0
- /package/{bin/src → src}/models/search-projection/i-organisation-values.js.map +0 -0
- /package/{bin/src → src}/models/search-projection/i-premium-values.js.map +0 -0
- /package/{bin/src → src}/models/search-projection/i-search-projection.js.map +0 -0
- /package/{bin/src → src}/models/search-projection/i-tuition-values.js.map +0 -0
- /package/{bin/src → src}/models/search-projection/search-projection-client.js.map +0 -0
- /package/{bin/src → src}/models/sitemap-articles-info/i-sitemap-article-info.js.map +0 -0
- /package/{bin/src → src}/models/sitemap-articles-info/sitemap-articles-info-client.js.map +0 -0
- /package/{bin/src → src}/models/sitemap-cities-info/i-sitemap-city-info.js.map +0 -0
- /package/{bin/src → src}/models/sitemap-cities-info/sitemap-cities-info-client.js.map +0 -0
- /package/{bin/src → src}/models/sitemap-countries-info/i-sitemap-country-info.js.map +0 -0
- /package/{bin/src → src}/models/sitemap-countries-info/sitemap-countries-info-client.js.map +0 -0
- /package/{bin/src → src}/models/sitemap-country-degree-info/i-degree-info.js.map +0 -0
- /package/{bin/src → src}/models/sitemap-country-degree-info/i-sitemap-country-degree-info.js.map +0 -0
- /package/{bin/src → src}/models/sitemap-country-degree-info/sitemap-country-degree-info-client.js.map +0 -0
- /package/{bin/src → src}/models/sitemap-disciplines-info/i-sitemap-discipline-info.js.map +0 -0
- /package/{bin/src → src}/models/sitemap-disciplines-info/sitemap-disciplines-info-client.js.map +0 -0
- /package/{bin/src → src}/models/sitemap-organisations-info/i-sitemap-organisation-info.js.map +0 -0
- /package/{bin/src → src}/models/sitemap-organisations-info/sitemap-organisations-info-client.js.map +0 -0
- /package/{bin/src → src}/models/sitemap-programme-info/i-sitemap-programme-info.js.map +0 -0
- /package/{bin/src → src}/models/sitemap-programme-info/sitemap-programme-info-client.js.map +0 -0
- /package/{bin/src → src}/models/sitemap-rankings-info/i-sitemap-rankings-info.js.map +0 -0
- /package/{bin/src → src}/models/sitemap-rankings-info/sitemap-rankings-info-client.js.map +0 -0
- /package/{bin/src → src}/types/portal-map.js.map +0 -0
- /package/{bin/src → src}/types/portal-type.js.map +0 -0
- /package/{bin/src → src}/types.js.map +0 -0
package/src/model-client.ts
DELETED
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import { DomainClient } from "./domain-client";
|
|
2
|
-
import { ClientException } from "./exceptions/client-exception";
|
|
3
|
-
import { IModelDescription } from "./i-model-description";
|
|
4
|
-
import { ModelFactory } from "./model-factory";
|
|
5
|
-
import { PortalMap } from "./types/portal-map";
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
export abstract class ModelClient<T> {
|
|
9
|
-
private readonly domainClient: DomainClient | null;
|
|
10
|
-
private readonly modelFactory: ModelFactory<T>;
|
|
11
|
-
|
|
12
|
-
constructor(
|
|
13
|
-
baseUrl?: string,
|
|
14
|
-
apiKey?: string,
|
|
15
|
-
seed?: number,
|
|
16
|
-
portalMap?: PortalMap
|
|
17
|
-
) {
|
|
18
|
-
if (!baseUrl || !seed) {
|
|
19
|
-
return;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
this.modelFactory = new ModelFactory<T>(portalMap);
|
|
23
|
-
this.domainClient = new DomainClient(
|
|
24
|
-
baseUrl,
|
|
25
|
-
apiKey,
|
|
26
|
-
this.getModelName(),
|
|
27
|
-
this.getVersion(),
|
|
28
|
-
this.isPublic(),
|
|
29
|
-
seed
|
|
30
|
-
);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
public async fetch(id: number): Promise<T> {
|
|
34
|
-
const modelDescriptions = await this.fetchDescription(id);
|
|
35
|
-
return this.modelFactory.fromDescription(modelDescriptions);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
public async fetchDescription(id: number): Promise<IModelDescription> {
|
|
39
|
-
if (!this.domainClient) {
|
|
40
|
-
throw new ClientException(
|
|
41
|
-
"Offline mode active: did you provide all parameters " +
|
|
42
|
-
"in the constructor?"
|
|
43
|
-
);
|
|
44
|
-
}
|
|
45
|
-
const result = await this.domainClient.doRequest([id]);
|
|
46
|
-
return result[0];
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
public async fetchMultiple(ids: number[]): Promise<T[]> {
|
|
50
|
-
const descriptions = await this.fetchMultipleDescriptions(ids);
|
|
51
|
-
return this.modelFactory.fromDescriptions(descriptions);
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
public async fetchMultipleDescriptions(ids: number[]): Promise<IModelDescription[]> {
|
|
55
|
-
if (!this.domainClient) {
|
|
56
|
-
throw new ClientException(
|
|
57
|
-
'Offline mode active: did you provide all parameters ' +
|
|
58
|
-
'in the constructor?'
|
|
59
|
-
);
|
|
60
|
-
}
|
|
61
|
-
return await this.domainClient.doRequest(ids);
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
public fromDescription(description: IModelDescription): T {
|
|
65
|
-
return this.modelFactory.fromDescription(description);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
public fromDescriptions(descriptions: IModelDescription[]): T[] {
|
|
69
|
-
return this.modelFactory.fromDescriptions(descriptions);
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
protected abstract getModelName(): string;
|
|
73
|
-
|
|
74
|
-
protected abstract getVersion(): string;
|
|
75
|
-
|
|
76
|
-
public abstract isPublic(): boolean;
|
|
77
|
-
}
|
package/src/model-factory.ts
DELETED
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import { InternalLinkFactory } from "./factories/InternalLinkFactory";
|
|
2
|
-
import { DateFactory } from "./factories/DateFactory";
|
|
3
|
-
import { IClassFactory } from "./i-class-factory";
|
|
4
|
-
import { IModelDescription, isModelDescription } from "./i-model-description";
|
|
5
|
-
import { PropertyNotAvailableException } from "./exceptions/property-not-available-exception";
|
|
6
|
-
import { Callable, CallableReturnType, Model } from "./types";
|
|
7
|
-
import { PortalMap } from "./types/portal-map";
|
|
8
|
-
import { PortalType } from "./types/portal-type";
|
|
9
|
-
|
|
10
|
-
export class ModelFactory<T> {
|
|
11
|
-
|
|
12
|
-
private customClassFactories: Map<string, IClassFactory>;
|
|
13
|
-
|
|
14
|
-
constructor(portalMap: PortalMap = new Map<PortalType, string>()) {
|
|
15
|
-
const factories = new Map<string, IClassFactory>();
|
|
16
|
-
factories.set('IInternalLink', new InternalLinkFactory(portalMap));
|
|
17
|
-
factories.set('SerializableDateTime', new DateFactory());
|
|
18
|
-
|
|
19
|
-
this.customClassFactories = factories;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
public fromDescription(data: IModelDescription): T {
|
|
23
|
-
return this.unpackClass(data) as unknown as T;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
public fromDescriptions(data: IModelDescription[]): T[] {
|
|
27
|
-
const models: T[] = [];
|
|
28
|
-
for (const modelDescription of data) {
|
|
29
|
-
models.push(this.unpackClass(modelDescription) as unknown as T);
|
|
30
|
-
}
|
|
31
|
-
return models;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
private unpackClass(data: IModelDescription): CallableReturnType {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
const unpacked: Model = {};
|
|
38
|
-
for (const functionName in data.func) {
|
|
39
|
-
unpacked[functionName] = this.getCallable(functionName, data);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
const factory = this.customClassFactories.get(data.class);
|
|
43
|
-
if (factory !== undefined) {
|
|
44
|
-
return factory.create(unpacked, data.parameters);
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
return unpacked;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
private getCallable(
|
|
51
|
-
functionName: string,
|
|
52
|
-
data: IModelDescription
|
|
53
|
-
): Callable {
|
|
54
|
-
const propertyName = functionName.substr(3);
|
|
55
|
-
const canShowFunction = 'canShow' + propertyName;
|
|
56
|
-
|
|
57
|
-
const value: unknown = data.func[functionName];
|
|
58
|
-
let returnValue: CallableReturnType|CallableReturnType[];
|
|
59
|
-
|
|
60
|
-
if (isModelDescription(value)) {
|
|
61
|
-
returnValue = this.unpackClass(value);
|
|
62
|
-
} else if (Array.isArray(value)) {
|
|
63
|
-
returnValue = this.unpackArray(value);
|
|
64
|
-
} else {
|
|
65
|
-
returnValue = value as CallableReturnType;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
if (canShowFunction in data.func) {
|
|
69
|
-
return (): any => {
|
|
70
|
-
if (data.func[canShowFunction] === false) {
|
|
71
|
-
throw new PropertyNotAvailableException(
|
|
72
|
-
`Property '${propertyName}' not available`
|
|
73
|
-
);
|
|
74
|
-
}
|
|
75
|
-
return returnValue;
|
|
76
|
-
};
|
|
77
|
-
}
|
|
78
|
-
return (): any => {
|
|
79
|
-
return returnValue;
|
|
80
|
-
};
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
private unpackArray(list: any[]): CallableReturnType[] {
|
|
84
|
-
return list.map(
|
|
85
|
-
item => {
|
|
86
|
-
if (isModelDescription(item)) {
|
|
87
|
-
return this.unpackClass(item)
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
return item as CallableReturnType;
|
|
91
|
-
}
|
|
92
|
-
);
|
|
93
|
-
}
|
|
94
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { IBestFitProgramme } from "../../..";
|
|
2
|
-
import { ModelClient } from "../../model-client";
|
|
3
|
-
|
|
4
|
-
export class BestfitProgrammeClient extends ModelClient<IBestFitProgramme> {
|
|
5
|
-
protected getModelName(): string {
|
|
6
|
-
return 'bestfit-programme';
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
protected getVersion(): string {
|
|
10
|
-
return 'v1';
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
public isPublic(): boolean {
|
|
14
|
-
return false;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import { ICity, IEnglishRequirements, IGPARequirement, ILivingCost, ITuitionFee } from "../../..";
|
|
2
|
-
|
|
3
|
-
export interface IBestFitProgramme {
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Average university ranking across multiple ranking institutes.
|
|
7
|
-
*
|
|
8
|
-
* @return number
|
|
9
|
-
*/
|
|
10
|
-
getAverageRankingPosition(): number;
|
|
11
|
-
|
|
12
|
-
canShowAverageRankingPosition(): boolean;
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* City which programme is given in
|
|
16
|
-
*
|
|
17
|
-
* @return ICity
|
|
18
|
-
*/
|
|
19
|
-
getCity(): ICity;
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* Get country id the programme is teached in
|
|
23
|
-
*
|
|
24
|
-
* @return number
|
|
25
|
-
*/
|
|
26
|
-
getCountryId(): number;
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* Discipline ids which the program is linked to.
|
|
30
|
-
*
|
|
31
|
-
* @return number[]
|
|
32
|
-
*/
|
|
33
|
-
getDisciplineIds(): number[];
|
|
34
|
-
|
|
35
|
-
canShowDisciplineIds(): boolean;
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* English level requirements.
|
|
39
|
-
*
|
|
40
|
-
* @return IEnglishRequirements
|
|
41
|
-
*/
|
|
42
|
-
getEnglishRequirements(): IEnglishRequirements;
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* GPA requirements
|
|
46
|
-
*
|
|
47
|
-
* @return IGPARequirement
|
|
48
|
-
*/
|
|
49
|
-
getGPA(): IGPARequirement;
|
|
50
|
-
|
|
51
|
-
canShowGPA(): boolean;
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
* Id of the programme.
|
|
55
|
-
*
|
|
56
|
-
* @return number
|
|
57
|
-
*/
|
|
58
|
-
getId(): number;
|
|
59
|
-
|
|
60
|
-
/**
|
|
61
|
-
* Estimated living cost based on universities location.
|
|
62
|
-
*
|
|
63
|
-
* @return ILivingCost
|
|
64
|
-
*/
|
|
65
|
-
getLivingCost(): ILivingCost;
|
|
66
|
-
|
|
67
|
-
canShowLivingCost(): boolean;
|
|
68
|
-
|
|
69
|
-
/**
|
|
70
|
-
* Minimum required education level
|
|
71
|
-
*
|
|
72
|
-
* @return string | null
|
|
73
|
-
*/
|
|
74
|
-
getRequiredEducationalLevel(): string | null;
|
|
75
|
-
|
|
76
|
-
canShowRequiredEducationalLevel(): boolean;
|
|
77
|
-
|
|
78
|
-
/**
|
|
79
|
-
* The programmes tuition fees
|
|
80
|
-
*
|
|
81
|
-
* @return ITuitionFee[]
|
|
82
|
-
*/
|
|
83
|
-
getTuitionFees(): ITuitionFee[];
|
|
84
|
-
|
|
85
|
-
canShowTuitionFees(): boolean;
|
|
86
|
-
|
|
87
|
-
/**
|
|
88
|
-
* Amount of years required as work experience
|
|
89
|
-
*
|
|
90
|
-
* @return number
|
|
91
|
-
*/
|
|
92
|
-
getWorkExperienceYears(): number;
|
|
93
|
-
|
|
94
|
-
canShowWorkExperienceYears(): boolean;
|
|
95
|
-
|
|
96
|
-
/**
|
|
97
|
-
* Indicates whenever a programme is fully online or not
|
|
98
|
-
*
|
|
99
|
-
* @return boolean
|
|
100
|
-
*/
|
|
101
|
-
isFullyOnline(): boolean;
|
|
102
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
export interface ILivingCost {
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Get the applicable currency.
|
|
5
|
-
*
|
|
6
|
-
* @return string
|
|
7
|
-
*/
|
|
8
|
-
getCurrency(): string;
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Get the maximum living cost in the provided currency.
|
|
12
|
-
*
|
|
13
|
-
* @return number
|
|
14
|
-
*/
|
|
15
|
-
getMax(): number;
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* Get the minimum living cost in the provided currency.
|
|
19
|
-
*
|
|
20
|
-
* @return number
|
|
21
|
-
*/
|
|
22
|
-
getMin(): number;
|
|
23
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
export interface ICountry {
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Get country iso code
|
|
5
|
-
*
|
|
6
|
-
* @return string
|
|
7
|
-
*/
|
|
8
|
-
getISOCode(): string;
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Get country id
|
|
12
|
-
*
|
|
13
|
-
* @return number
|
|
14
|
-
*/
|
|
15
|
-
getId(): number;
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* Get country name
|
|
19
|
-
*
|
|
20
|
-
* @return string
|
|
21
|
-
*/
|
|
22
|
-
getName(): string;
|
|
23
|
-
}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
export interface IEnglishRequirements {
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Required score for Cambridge english
|
|
5
|
-
*
|
|
6
|
-
* @return number
|
|
7
|
-
*/
|
|
8
|
-
getCambridgeEnglish(): number;
|
|
9
|
-
|
|
10
|
-
canShowCambridgeEnglish(): boolean;
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Required score for Duolingo
|
|
14
|
-
*
|
|
15
|
-
* @return number
|
|
16
|
-
*/
|
|
17
|
-
getDuolingo(): number;
|
|
18
|
-
|
|
19
|
-
canShowDuolingo(): boolean;
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* Required score for IELTS tests
|
|
23
|
-
*
|
|
24
|
-
* @return number
|
|
25
|
-
*/
|
|
26
|
-
getIELTS(): number;
|
|
27
|
-
|
|
28
|
-
canShowIELTS(): boolean;
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* Required score for PTE
|
|
32
|
-
*
|
|
33
|
-
* @return number
|
|
34
|
-
*/
|
|
35
|
-
getPTE(): number;
|
|
36
|
-
|
|
37
|
-
canShowPTE(): boolean;
|
|
38
|
-
|
|
39
|
-
/**
|
|
40
|
-
* Required score for TOEFL internet
|
|
41
|
-
*
|
|
42
|
-
* @return number
|
|
43
|
-
*/
|
|
44
|
-
getTOEFLInternet(): number;
|
|
45
|
-
|
|
46
|
-
canShowTOEFLInternet(): boolean;
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* Required score for TOEFL paper
|
|
50
|
-
*
|
|
51
|
-
* @return number
|
|
52
|
-
*/
|
|
53
|
-
getTOEFLPaper(): number;
|
|
54
|
-
|
|
55
|
-
canShowTOEFLPaper(): boolean;
|
|
56
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
export interface IGPARequirement {
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* The used GPA scale for this requirement
|
|
5
|
-
*
|
|
6
|
-
* @return string
|
|
7
|
-
*/
|
|
8
|
-
getScale(): string;
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Required minimum score.
|
|
12
|
-
*
|
|
13
|
-
* @return string
|
|
14
|
-
*/
|
|
15
|
-
getScore(): string;
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* Is GPA recommended or required.
|
|
19
|
-
*
|
|
20
|
-
* @return boolean
|
|
21
|
-
*/
|
|
22
|
-
isRequired(): boolean;
|
|
23
|
-
}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
export interface IInternalLink {
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Get an optional text describing the link (typically <a>-tags contents).
|
|
5
|
-
*
|
|
6
|
-
* @return string
|
|
7
|
-
* @throws PropertyNotAvailableException
|
|
8
|
-
*/
|
|
9
|
-
getDescription(): string;
|
|
10
|
-
|
|
11
|
-
canShowDescription(): boolean;
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* Returns on which portal a this link should link towards.
|
|
15
|
-
*
|
|
16
|
-
* @return string
|
|
17
|
-
*/
|
|
18
|
-
getPortalType(): string;
|
|
19
|
-
|
|
20
|
-
/**
|
|
21
|
-
* Get the url to refer to.
|
|
22
|
-
*
|
|
23
|
-
* Note that the url provided is always a relative URL. A base URL is needed
|
|
24
|
-
* to make it a full valid path.
|
|
25
|
-
* The only exception is when an external link is provided (meaning, outside
|
|
26
|
-
* of StudyPortals-maintained domains). In this case a full url will be
|
|
27
|
-
* provided.
|
|
28
|
-
*
|
|
29
|
-
* @return string
|
|
30
|
-
*/
|
|
31
|
-
getUrl(): string;
|
|
32
|
-
}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
export interface ITuitionFee {
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Get the tuition amount per unit in the provided currency.
|
|
5
|
-
*
|
|
6
|
-
* Note: all transformable units will be converted to yearly amounts. This
|
|
7
|
-
* includes per semester and full programme tuition fees.
|
|
8
|
-
*
|
|
9
|
-
* @return number
|
|
10
|
-
*/
|
|
11
|
-
getAmount(): number;
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* Get the applicable currency.
|
|
15
|
-
*
|
|
16
|
-
* @return string
|
|
17
|
-
*/
|
|
18
|
-
getCurrency(): string;
|
|
19
|
-
|
|
20
|
-
/**
|
|
21
|
-
* Get the original tuition amount before any transformation step.
|
|
22
|
-
*
|
|
23
|
-
* @return number
|
|
24
|
-
*/
|
|
25
|
-
getOriginalAmount(): number;
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* Get the original tuition unit before any transformation step.
|
|
29
|
-
*
|
|
30
|
-
* @return string
|
|
31
|
-
*/
|
|
32
|
-
getOriginalUnit(): string;
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* Get targeted audience (national, international, eea, etc).
|
|
36
|
-
*
|
|
37
|
-
* @return string
|
|
38
|
-
*/
|
|
39
|
-
getTarget(): string;
|
|
40
|
-
|
|
41
|
-
/**
|
|
42
|
-
* Get the unit the tuition fee applies for.
|
|
43
|
-
*
|
|
44
|
-
* Note: all transformable units will be converted to 'year'. This means
|
|
45
|
-
* this value will be either 'year', 'module' or 'credit'.
|
|
46
|
-
*
|
|
47
|
-
* @return string
|
|
48
|
-
*/
|
|
49
|
-
getUnit(): string;
|
|
50
|
-
|
|
51
|
-
/**
|
|
52
|
-
* True if the study is free for this target audience.
|
|
53
|
-
*
|
|
54
|
-
* @return boolean
|
|
55
|
-
*/
|
|
56
|
-
isFree(): boolean;
|
|
57
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { ICompareProgramme } from "../../..";
|
|
2
|
-
import { ModelClient } from "../../model-client";
|
|
3
|
-
|
|
4
|
-
export class CompareProgrammeClient extends ModelClient<ICompareProgramme> {
|
|
5
|
-
protected getModelName(): string {
|
|
6
|
-
return 'compare-programme';
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
protected getVersion(): string {
|
|
10
|
-
return 'v1';
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
public isPublic(): boolean {
|
|
14
|
-
return false;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
import { IDuration, IEnglishRequirements, IGPARequirement, IInternalLink, ILink, ILivingCost, ILocation, ITiming, ITuitionFee } from "../../..";
|
|
2
|
-
|
|
3
|
-
export interface ICompareProgramme {
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Degree of programme
|
|
7
|
-
*
|
|
8
|
-
* @return string
|
|
9
|
-
*/
|
|
10
|
-
getDegree(): string;
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Duration of the programme
|
|
14
|
-
*
|
|
15
|
-
* @return IDuration | null
|
|
16
|
-
*/
|
|
17
|
-
getDuration(): IDuration | null;
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* English level requirements.
|
|
21
|
-
*
|
|
22
|
-
* @return IEnglishRequirements
|
|
23
|
-
*/
|
|
24
|
-
getEnglishRequirements(): IEnglishRequirements;
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* GPA requirements
|
|
28
|
-
*
|
|
29
|
-
* @return IGPARequirement | null
|
|
30
|
-
*/
|
|
31
|
-
getGPA(): IGPARequirement | null;
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* Id of the programme.
|
|
35
|
-
*
|
|
36
|
-
* @return number
|
|
37
|
-
*/
|
|
38
|
-
getId(): number;
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* Estimated living cost based on universities' location.
|
|
42
|
-
*
|
|
43
|
-
* @return ILivingCost | null
|
|
44
|
-
*/
|
|
45
|
-
getLivingCost(): ILivingCost | null;
|
|
46
|
-
|
|
47
|
-
/**
|
|
48
|
-
* Indicates where a programme is taught
|
|
49
|
-
*
|
|
50
|
-
* @return ILocation | null
|
|
51
|
-
*/
|
|
52
|
-
getLocation(): ILocation | null;
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* Get a link to the programme page.
|
|
56
|
-
*
|
|
57
|
-
* The link contains the page path as url and the programme name as the
|
|
58
|
-
* link description.
|
|
59
|
-
*
|
|
60
|
-
* @return IInternalLink
|
|
61
|
-
*/
|
|
62
|
-
getProgrammeLink(): IInternalLink;
|
|
63
|
-
|
|
64
|
-
/**
|
|
65
|
-
* The universities review quantity
|
|
66
|
-
*
|
|
67
|
-
* @return number | null
|
|
68
|
-
*/
|
|
69
|
-
getReviewQuantity(): number | null;
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* The universities review rating
|
|
73
|
-
*
|
|
74
|
-
* @return number | null
|
|
75
|
-
*/
|
|
76
|
-
getReviewRating(): number | null;
|
|
77
|
-
|
|
78
|
-
/**
|
|
79
|
-
* Get all start dates
|
|
80
|
-
*
|
|
81
|
-
* @return ITiming[]
|
|
82
|
-
*/
|
|
83
|
-
getTimings(): ITiming[];
|
|
84
|
-
|
|
85
|
-
/**
|
|
86
|
-
* Title of the programme.
|
|
87
|
-
*
|
|
88
|
-
* @return string
|
|
89
|
-
*/
|
|
90
|
-
getTitle(): string;
|
|
91
|
-
|
|
92
|
-
/**
|
|
93
|
-
* The programmes tuition fees
|
|
94
|
-
*
|
|
95
|
-
* @return ITuitionFee[]
|
|
96
|
-
*/
|
|
97
|
-
getTuitionFees(): ITuitionFee[];
|
|
98
|
-
|
|
99
|
-
/**
|
|
100
|
-
* Returns a link to the university
|
|
101
|
-
*
|
|
102
|
-
* @return ILink
|
|
103
|
-
*/
|
|
104
|
-
getUniversityLink(): ILink;
|
|
105
|
-
|
|
106
|
-
/**
|
|
107
|
-
* Amount of years required as work experience
|
|
108
|
-
*
|
|
109
|
-
* @return number | null
|
|
110
|
-
*/
|
|
111
|
-
getWorkExperienceYears(): number | null;
|
|
112
|
-
|
|
113
|
-
/**
|
|
114
|
-
* Indicates whenever a programme is fully online or not
|
|
115
|
-
*
|
|
116
|
-
* @return boolean
|
|
117
|
-
*/
|
|
118
|
-
isFullyOnline(): boolean;
|
|
119
|
-
|
|
120
|
-
/**
|
|
121
|
-
* Is programme public
|
|
122
|
-
*
|
|
123
|
-
* @return boolean
|
|
124
|
-
*/
|
|
125
|
-
isPublic(): boolean;
|
|
126
|
-
}
|