@studyportals/fawkes 7.4.2-2 → 8.0.1-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/README.md +176 -176
- package/package.json +2 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -1
- package/dist/organisations-seo/index.d.ts +0 -4
- package/dist/organisations-seo/index.js +0 -2
- package/dist/programmes-seo/index.d.ts +0 -6
- package/dist/programmes-seo/index.js +0 -2
- package/dist/scholarships-seo/index.d.ts +0 -5
- package/dist/scholarships-seo/index.js +0 -3
- package/dist/sitemap-generator-seo/index.d.ts +0 -13
- package/dist/sitemap-generator-seo/index.js +0 -4
- package/dist/src/common/FilterKeyValuesMap.d.ts +0 -2
- package/dist/src/common/FilterKeyValuesMap.js +0 -1
- package/dist/src/common/IDependencies.d.ts +0 -4
- package/dist/src/common/IDependencies.js +0 -1
- package/dist/src/common/IDocumentationManager.d.ts +0 -5
- package/dist/src/common/IDocumentationManager.js +0 -1
- package/dist/src/common/IPresenter.d.ts +0 -6
- package/dist/src/common/IPresenter.js +0 -1
- package/dist/src/common/IRule.d.ts +0 -8
- package/dist/src/common/IRule.js +0 -1
- package/dist/src/common/ISearchApplicationState.d.ts +0 -4
- package/dist/src/common/ISearchApplicationState.js +0 -1
- package/dist/src/common/ISearchDependencies.d.ts +0 -7
- package/dist/src/common/ISearchDependencies.js +0 -1
- package/dist/src/common/ISearchIndexabilityManager.d.ts +0 -4
- package/dist/src/common/ISearchIndexabilityManager.js +0 -1
- package/dist/src/common/ISeoDependencies.d.ts +0 -3
- package/dist/src/common/ISeoDependencies.js +0 -1
- package/dist/src/common/ISeoFilterState.d.ts +0 -5
- package/dist/src/common/ISeoFilterState.js +0 -1
- package/dist/src/common/ISeoIndexabilityPolicy.d.ts +0 -7
- package/dist/src/common/ISeoIndexabilityPolicy.js +0 -1
- package/dist/src/common/ISeoInfoBase.d.ts +0 -8
- package/dist/src/common/ISeoInfoBase.js +0 -1
- package/dist/src/common/ISitemapDependencies.d.ts +0 -5
- package/dist/src/common/ISitemapDependencies.js +0 -1
- package/dist/src/common/ISitemapUrlGenerator.d.ts +0 -7
- package/dist/src/common/ISitemapUrlGenerator.js +0 -1
- package/dist/src/common/index.d.ts +0 -5
- package/dist/src/common/index.js +0 -5
- package/dist/src/common/policies/BaseSeoIndexabilityPolicy.d.ts +0 -26
- package/dist/src/common/policies/BaseSeoIndexabilityPolicy.js +0 -56
- package/dist/src/common/rules/BaseFilterKeyValueRule.d.ts +0 -11
- package/dist/src/common/rules/BaseFilterKeyValueRule.js +0 -28
- package/dist/src/common/rules/IndexablePageNumberRule.d.ts +0 -9
- package/dist/src/common/rules/IndexablePageNumberRule.js +0 -17
- package/dist/src/common/rules/NoFiltersSelectedRule.d.ts +0 -9
- package/dist/src/common/rules/NoFiltersSelectedRule.js +0 -17
- package/dist/src/common/rules/OnlineAttendanceRule.d.ts +0 -6
- package/dist/src/common/rules/OnlineAttendanceRule.js +0 -14
- package/dist/src/common/rules/OnlyFiltersSelectedRule.d.ts +0 -12
- package/dist/src/common/rules/OnlyFiltersSelectedRule.js +0 -30
- package/dist/src/common/rules/SingleValueSelectedForFilterRule.d.ts +0 -12
- package/dist/src/common/rules/SingleValueSelectedForFilterRule.js +0 -24
- package/dist/src/enums/AttendanceFilterOptionValue.d.ts +0 -5
- package/dist/src/enums/AttendanceFilterOptionValue.js +0 -6
- package/dist/src/enums/DegreeTypeFilterOptionValue.d.ts +0 -29
- package/dist/src/enums/DegreeTypeFilterOptionValue.js +0 -30
- package/dist/src/enums/DependencyTypes.d.ts +0 -4
- package/dist/src/enums/DependencyTypes.js +0 -5
- package/dist/src/enums/DurationFilterOptionValue.d.ts +0 -16
- package/dist/src/enums/DurationFilterOptionValue.js +0 -17
- package/dist/src/enums/EducationalFormFilterOptionValue.d.ts +0 -8
- package/dist/src/enums/EducationalFormFilterOptionValue.js +0 -9
- package/dist/src/enums/FilterCombinations.d.ts +0 -52
- package/dist/src/enums/FilterCombinations.js +0 -53
- package/dist/src/enums/FilterKey.d.ts +0 -21
- package/dist/src/enums/FilterKey.js +0 -22
- package/dist/src/enums/FormatFilterOptionValue.d.ts +0 -4
- package/dist/src/enums/FormatFilterOptionValue.js +0 -5
- package/dist/src/enums/SortingOptions.d.ts +0 -4
- package/dist/src/enums/SortingOptions.js +0 -5
- package/dist/src/enums/SpecialProgrammesFilterOptionValue.d.ts +0 -5
- package/dist/src/enums/SpecialProgrammesFilterOptionValue.js +0 -6
- package/dist/src/enums/TuitionFeeFilterOptionValue.d.ts +0 -3
- package/dist/src/enums/TuitionFeeFilterOptionValue.js +0 -4
- package/dist/src/errors/DependencyMissingError.d.ts +0 -3
- package/dist/src/errors/DependencyMissingError.js +0 -5
- package/dist/src/errors/InvalidDependencyTypeError.d.ts +0 -3
- package/dist/src/errors/InvalidDependencyTypeError.js +0 -5
- package/dist/src/errors/InvalidFilterValueError.d.ts +0 -4
- package/dist/src/errors/InvalidFilterValueError.js +0 -5
- package/dist/src/organisations/IOrganisationSearchApplicationState.d.ts +0 -5
- package/dist/src/organisations/IOrganisationSearchApplicationState.js +0 -1
- package/dist/src/organisations/ISeoSortingState.d.ts +0 -4
- package/dist/src/organisations/ISeoSortingState.js +0 -1
- package/dist/src/organisations/SearchIndexabilityManager.d.ts +0 -12
- package/dist/src/organisations/SearchIndexabilityManager.js +0 -42
- package/dist/src/organisations/index.d.ts +0 -4
- package/dist/src/organisations/index.js +0 -4
- package/dist/src/organisations/policies/OrganisationsSeoIndexabilityPolicy.d.ts +0 -17
- package/dist/src/organisations/policies/OrganisationsSeoIndexabilityPolicy.js +0 -33
- package/dist/src/organisations/policies/RankedOrganisationsSeoIndexabilityPolicy.d.ts +0 -9
- package/dist/src/organisations/policies/RankedOrganisationsSeoIndexabilityPolicy.js +0 -22
- package/dist/src/organisations/policies/index.d.ts +0 -18
- package/dist/src/organisations/policies/index.js +0 -18
- package/dist/src/organisations/policies/our-picks/Area.d.ts +0 -13
- package/dist/src/organisations/policies/our-picks/Area.js +0 -35
- package/dist/src/organisations/policies/our-picks/AreaAttendance.d.ts +0 -15
- package/dist/src/organisations/policies/our-picks/AreaAttendance.js +0 -45
- package/dist/src/organisations/policies/our-picks/Attendance.d.ts +0 -14
- package/dist/src/organisations/policies/our-picks/Attendance.js +0 -33
- package/dist/src/organisations/policies/our-picks/Continent.d.ts +0 -13
- package/dist/src/organisations/policies/our-picks/Continent.js +0 -31
- package/dist/src/organisations/policies/our-picks/Country.d.ts +0 -13
- package/dist/src/organisations/policies/our-picks/Country.js +0 -28
- package/dist/src/organisations/policies/our-picks/CountryAttendance.d.ts +0 -15
- package/dist/src/organisations/policies/our-picks/CountryAttendance.js +0 -43
- package/dist/src/organisations/policies/our-picks/Unfiltered.d.ts +0 -12
- package/dist/src/organisations/policies/our-picks/Unfiltered.js +0 -16
- package/dist/src/organisations/policies/ranked/RankedArea.d.ts +0 -13
- package/dist/src/organisations/policies/ranked/RankedArea.js +0 -37
- package/dist/src/organisations/policies/ranked/RankedAreaDiscipline.d.ts +0 -14
- package/dist/src/organisations/policies/ranked/RankedAreaDiscipline.js +0 -45
- package/dist/src/organisations/policies/ranked/RankedAttendance.d.ts +0 -14
- package/dist/src/organisations/policies/ranked/RankedAttendance.js +0 -35
- package/dist/src/organisations/policies/ranked/RankedAttendanceDiscipline.d.ts +0 -14
- package/dist/src/organisations/policies/ranked/RankedAttendanceDiscipline.js +0 -43
- package/dist/src/organisations/policies/ranked/RankedContinent.d.ts +0 -13
- package/dist/src/organisations/policies/ranked/RankedContinent.js +0 -33
- package/dist/src/organisations/policies/ranked/RankedContinentAttendance.d.ts +0 -15
- package/dist/src/organisations/policies/ranked/RankedContinentAttendance.js +0 -45
- package/dist/src/organisations/policies/ranked/RankedCountry.d.ts +0 -13
- package/dist/src/organisations/policies/ranked/RankedCountry.js +0 -30
- package/dist/src/organisations/policies/ranked/RankedCountryAttendance.d.ts +0 -14
- package/dist/src/organisations/policies/ranked/RankedCountryAttendance.js +0 -43
- package/dist/src/organisations/policies/ranked/RankedCountryDiscipline.d.ts +0 -13
- package/dist/src/organisations/policies/ranked/RankedCountryDiscipline.js +0 -41
- package/dist/src/organisations/policies/ranked/RankedDiscipline.d.ts +0 -13
- package/dist/src/organisations/policies/ranked/RankedDiscipline.js +0 -33
- package/dist/src/organisations/policies/ranked/RankedUnfiltered.d.ts +0 -12
- package/dist/src/organisations/policies/ranked/RankedUnfiltered.js +0 -22
- package/dist/src/organisations/rules/AtLeastTwoRankedResultsRule.d.ts +0 -13
- package/dist/src/organisations/rules/AtLeastTwoRankedResultsRule.js +0 -26
- package/dist/src/organisations/rules/BaseSearchVolumeOrganisationsRule.d.ts +0 -14
- package/dist/src/organisations/rules/BaseSearchVolumeOrganisationsRule.js +0 -33
- package/dist/src/organisations/rules/ContinentIsEuropeRule.d.ts +0 -6
- package/dist/src/organisations/rules/ContinentIsEuropeRule.js +0 -15
- package/dist/src/organisations/rules/NoFiltersSelectedRule.d.ts +0 -9
- package/dist/src/organisations/rules/NoFiltersSelectedRule.js +0 -17
- package/dist/src/organisations/rules/SearchVolumeAreasAttendanceRule.d.ts +0 -6
- package/dist/src/organisations/rules/SearchVolumeAreasAttendanceRule.js +0 -17
- package/dist/src/organisations/rules/SearchVolumeAreasDisciplineRule.d.ts +0 -6
- package/dist/src/organisations/rules/SearchVolumeAreasDisciplineRule.js +0 -18
- package/dist/src/organisations/rules/SearchVolumeCountriesAttendanceRule.d.ts +0 -6
- package/dist/src/organisations/rules/SearchVolumeCountriesAttendanceRule.js +0 -17
- package/dist/src/organisations/types/IOrganisationSearchDependencies.d.ts +0 -9
- package/dist/src/organisations/types/IOrganisationSearchDependencies.js +0 -1
- package/dist/src/organisations/types/IOrganisationsSeoDependencies.d.ts +0 -3
- package/dist/src/organisations/types/IOrganisationsSeoDependencies.js +0 -1
- package/dist/src/organisations/types/IOrganisationsSitemapDependencies.d.ts +0 -9
- package/dist/src/organisations/types/IOrganisationsSitemapDependencies.js +0 -1
- package/dist/src/organisations/types.d.ts +0 -6
- package/dist/src/organisations/types.js +0 -6
- package/dist/src/presenters/AreaPresenter.d.ts +0 -12
- package/dist/src/presenters/AreaPresenter.js +0 -35
- package/dist/src/presenters/AttendancePresenter.d.ts +0 -11
- package/dist/src/presenters/AttendancePresenter.js +0 -23
- package/dist/src/presenters/ContinentPresenter.d.ts +0 -12
- package/dist/src/presenters/ContinentPresenter.js +0 -33
- package/dist/src/presenters/CountryPresenter.d.ts +0 -12
- package/dist/src/presenters/CountryPresenter.js +0 -38
- package/dist/src/presenters/DegreePresenter.d.ts +0 -12
- package/dist/src/presenters/DegreePresenter.js +0 -51
- package/dist/src/presenters/DisciplinePresenter.d.ts +0 -12
- package/dist/src/presenters/DisciplinePresenter.js +0 -33
- package/dist/src/presenters/DurationPresenter.d.ts +0 -16
- package/dist/src/presenters/DurationPresenter.js +0 -48
- package/dist/src/presenters/EducationalFormPresenter.d.ts +0 -12
- package/dist/src/presenters/EducationalFormPresenter.js +0 -46
- package/dist/src/presenters/FormatPresenter.d.ts +0 -11
- package/dist/src/presenters/FormatPresenter.js +0 -25
- package/dist/src/presenters/SpecialProgrammesPresenter.d.ts +0 -11
- package/dist/src/presenters/SpecialProgrammesPresenter.js +0 -28
- package/dist/src/presenters/TuitionFeePresenter.d.ts +0 -11
- package/dist/src/presenters/TuitionFeePresenter.js +0 -24
- package/dist/src/presenters/fragments/IAreaFragment.d.ts +0 -4
- package/dist/src/presenters/fragments/IAreaFragment.js +0 -1
- package/dist/src/presenters/fragments/ICountryFragment.d.ts +0 -4
- package/dist/src/presenters/fragments/ICountryFragment.js +0 -1
- package/dist/src/presenters/fragments/IFragment.d.ts +0 -4
- package/dist/src/presenters/fragments/IFragment.js +0 -1
- package/dist/src/programmes/BaseProgrammeFilterKeyValueRule.d.ts +0 -6
- package/dist/src/programmes/BaseProgrammeFilterKeyValueRule.js +0 -6
- package/dist/src/programmes/BaseProgrammeRule.d.ts +0 -10
- package/dist/src/programmes/BaseProgrammeRule.js +0 -5
- package/dist/src/programmes/IProgrammeRule.d.ts +0 -5
- package/dist/src/programmes/IProgrammeRule.js +0 -1
- package/dist/src/programmes/ProgrammesBaseIndexabilityPolicy.d.ts +0 -15
- package/dist/src/programmes/ProgrammesBaseIndexabilityPolicy.js +0 -42
- package/dist/src/programmes/SearchIndexabilityManager.d.ts +0 -12
- package/dist/src/programmes/SearchIndexabilityManager.js +0 -58
- package/dist/src/programmes/policies/Area.d.ts +0 -15
- package/dist/src/programmes/policies/Area.js +0 -40
- package/dist/src/programmes/policies/Attendance.d.ts +0 -16
- package/dist/src/programmes/policies/Attendance.js +0 -38
- package/dist/src/programmes/policies/AttendanceDegree.d.ts +0 -17
- package/dist/src/programmes/policies/AttendanceDegree.js +0 -48
- package/dist/src/programmes/policies/Continent.d.ts +0 -15
- package/dist/src/programmes/policies/Continent.js +0 -36
- package/dist/src/programmes/policies/ContinentTuitionFee.d.ts +0 -16
- package/dist/src/programmes/policies/ContinentTuitionFee.js +0 -46
- package/dist/src/programmes/policies/Country.d.ts +0 -15
- package/dist/src/programmes/policies/Country.js +0 -33
- package/dist/src/programmes/policies/CountryAttendance.d.ts +0 -16
- package/dist/src/programmes/policies/CountryAttendance.js +0 -46
- package/dist/src/programmes/policies/CountryAttendanceDegree.d.ts +0 -17
- package/dist/src/programmes/policies/CountryAttendanceDegree.js +0 -55
- package/dist/src/programmes/policies/CountryDegree.d.ts +0 -16
- package/dist/src/programmes/policies/CountryDegree.js +0 -46
- package/dist/src/programmes/policies/CountryDuration.d.ts +0 -16
- package/dist/src/programmes/policies/CountryDuration.js +0 -46
- package/dist/src/programmes/policies/CountryDurationDegree.d.ts +0 -17
- package/dist/src/programmes/policies/CountryDurationDegree.js +0 -55
- package/dist/src/programmes/policies/CountryEducationalForm.d.ts +0 -16
- package/dist/src/programmes/policies/CountryEducationalForm.js +0 -47
- package/dist/src/programmes/policies/CountryFormat.d.ts +0 -16
- package/dist/src/programmes/policies/CountryFormat.js +0 -46
- package/dist/src/programmes/policies/CountryTuitionFee.d.ts +0 -16
- package/dist/src/programmes/policies/CountryTuitionFee.js +0 -46
- package/dist/src/programmes/policies/Degree.d.ts +0 -15
- package/dist/src/programmes/policies/Degree.js +0 -38
- package/dist/src/programmes/policies/DegreeAttendanceDiscipline.d.ts +0 -16
- package/dist/src/programmes/policies/DegreeAttendanceDiscipline.js +0 -63
- package/dist/src/programmes/policies/DegreeCountryAttendance.d.ts +0 -16
- package/dist/src/programmes/policies/DegreeCountryAttendance.js +0 -88
- package/dist/src/programmes/policies/DegreeCountryDiscipline.d.ts +0 -16
- package/dist/src/programmes/policies/DegreeCountryDiscipline.js +0 -71
- package/dist/src/programmes/policies/DegreeCountryTuitionFee.d.ts +0 -16
- package/dist/src/programmes/policies/DegreeCountryTuitionFee.js +0 -73
- package/dist/src/programmes/policies/Discipline.d.ts +0 -15
- package/dist/src/programmes/policies/Discipline.js +0 -36
- package/dist/src/programmes/policies/DisciplineArea.d.ts +0 -15
- package/dist/src/programmes/policies/DisciplineArea.js +0 -46
- package/dist/src/programmes/policies/DisciplineAttendance.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineAttendance.js +0 -46
- package/dist/src/programmes/policies/DisciplineContinent.d.ts +0 -15
- package/dist/src/programmes/policies/DisciplineContinent.js +0 -44
- package/dist/src/programmes/policies/DisciplineCountry.d.ts +0 -15
- package/dist/src/programmes/policies/DisciplineCountry.js +0 -44
- package/dist/src/programmes/policies/DisciplineCountryEducationalForm.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineCountryEducationalForm.js +0 -53
- package/dist/src/programmes/policies/DisciplineDegree.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineDegree.js +0 -46
- package/dist/src/programmes/policies/DisciplineDuration.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineDuration.js +0 -46
- package/dist/src/programmes/policies/DisciplineEducationalForm.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineEducationalForm.js +0 -47
- package/dist/src/programmes/policies/DisciplineFormat.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineFormat.js +0 -46
- package/dist/src/programmes/policies/DisciplineTuitionFee.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineTuitionFee.js +0 -46
- package/dist/src/programmes/policies/DisciplineTuitionFeeAttendance.d.ts +0 -17
- package/dist/src/programmes/policies/DisciplineTuitionFeeAttendance.js +0 -54
- package/dist/src/programmes/policies/SpecialProgrammes.d.ts +0 -16
- package/dist/src/programmes/policies/SpecialProgrammes.js +0 -38
- package/dist/src/programmes/policies/TuitionFee.d.ts +0 -15
- package/dist/src/programmes/policies/TuitionFee.js +0 -32
- package/dist/src/programmes/policies/Unfiltered.d.ts +0 -13
- package/dist/src/programmes/policies/Unfiltered.js +0 -19
- package/dist/src/programmes/policies/index.d.ts +0 -34
- package/dist/src/programmes/policies/index.js +0 -34
- package/dist/src/programmes/rules/AffordableTuitionFeeRule.d.ts +0 -6
- package/dist/src/programmes/rules/AffordableTuitionFeeRule.js +0 -17
- package/dist/src/programmes/rules/AtLeastSevenResultsRule.d.ts +0 -15
- package/dist/src/programmes/rules/AtLeastSevenResultsRule.js +0 -30
- package/dist/src/programmes/rules/DegreeAttendanceDisciplineRule.d.ts +0 -11
- package/dist/src/programmes/rules/DegreeAttendanceDisciplineRule.js +0 -44
- package/dist/src/programmes/rules/DegreeAttendanceDisciplineSpecificRule.d.ts +0 -11
- package/dist/src/programmes/rules/DegreeAttendanceDisciplineSpecificRule.js +0 -39
- package/dist/src/programmes/rules/DegreeCountryAttendanceSpecificRule.d.ts +0 -14
- package/dist/src/programmes/rules/DegreeCountryAttendanceSpecificRule.js +0 -77
- package/dist/src/programmes/rules/DegreeCountryDisciplineSpecificRule.d.ts +0 -11
- package/dist/src/programmes/rules/DegreeCountryDisciplineSpecificRule.js +0 -76
- package/dist/src/programmes/rules/DegreeCountryTuitionFeeSpecificRule.d.ts +0 -12
- package/dist/src/programmes/rules/DegreeCountryTuitionFeeSpecificRule.js +0 -62
- package/dist/src/programmes/rules/DegreeDisciplineRule.d.ts +0 -16
- package/dist/src/programmes/rules/DegreeDisciplineRule.js +0 -189
- package/dist/src/programmes/rules/ErasmusOrJointSpecialProgrammesRule.d.ts +0 -9
- package/dist/src/programmes/rules/ErasmusOrJointSpecialProgrammesRule.js +0 -28
- package/dist/src/programmes/rules/IndexableDegreeRule.d.ts +0 -10
- package/dist/src/programmes/rules/IndexableDegreeRule.js +0 -53
- package/dist/src/programmes/rules/IndexableDurationRule.d.ts +0 -12
- package/dist/src/programmes/rules/IndexableDurationRule.js +0 -37
- package/dist/src/programmes/rules/IndexableEducationalFormRule.d.ts +0 -10
- package/dist/src/programmes/rules/IndexableEducationalFormRule.js +0 -34
- package/dist/src/programmes/rules/IndexablePageNumberRule.d.ts +0 -9
- package/dist/src/programmes/rules/IndexablePageNumberRule.js +0 -17
- package/dist/src/programmes/rules/MbaDegreeRule.d.ts +0 -6
- package/dist/src/programmes/rules/MbaDegreeRule.js +0 -15
- package/dist/src/programmes/rules/MbaOrMscDegreeRule.d.ts +0 -9
- package/dist/src/programmes/rules/MbaOrMscDegreeRule.js +0 -26
- package/dist/src/programmes/rules/NotDistanceLearningPortalRule.d.ts +0 -11
- package/dist/src/programmes/rules/NotDistanceLearningPortalRule.js +0 -28
- package/dist/src/programmes/rules/OneYearDurationRule.d.ts +0 -6
- package/dist/src/programmes/rules/OneYearDurationRule.js +0 -15
- package/dist/src/programmes/rules/PartTimeFormatRule.d.ts +0 -6
- package/dist/src/programmes/rules/PartTimeFormatRule.js +0 -15
- package/dist/src/programmes/types/IProgrammeSearchApplicationState.d.ts +0 -4
- package/dist/src/programmes/types/IProgrammeSearchApplicationState.js +0 -1
- package/dist/src/programmes/types/IProgrammeSearchDependencies.d.ts +0 -7
- package/dist/src/programmes/types/IProgrammeSearchDependencies.js +0 -1
- package/dist/src/programmes/types/IProgrammeSearchSitemapDependencies.d.ts +0 -5
- package/dist/src/programmes/types/IProgrammeSearchSitemapDependencies.js +0 -1
- package/dist/src/programmes/types/IProgrammeSeoDependencies.d.ts +0 -3
- package/dist/src/programmes/types/IProgrammeSeoDependencies.js +0 -1
- package/dist/src/programmes/types/IProgrammeSitemapDependencies.d.ts +0 -7
- package/dist/src/programmes/types/IProgrammeSitemapDependencies.js +0 -1
- package/dist/src/programmes/types/IProgrammeSitemapUrlGenerator.d.ts +0 -5
- package/dist/src/programmes/types/IProgrammeSitemapUrlGenerator.js +0 -1
- package/dist/src/scholarships/SearchIndexabilityManager.d.ts +0 -11
- package/dist/src/scholarships/SearchIndexabilityManager.js +0 -33
- package/dist/src/scholarships/index.d.ts +0 -3
- package/dist/src/scholarships/index.js +0 -3
- package/dist/src/scholarships/policies/Area.d.ts +0 -13
- package/dist/src/scholarships/policies/Area.js +0 -37
- package/dist/src/scholarships/policies/Country.d.ts +0 -12
- package/dist/src/scholarships/policies/Country.js +0 -31
- package/dist/src/scholarships/policies/Discipline.d.ts +0 -12
- package/dist/src/scholarships/policies/Discipline.js +0 -31
- package/dist/src/scholarships/policies/DisciplineCountry.d.ts +0 -12
- package/dist/src/scholarships/policies/DisciplineCountry.js +0 -39
- package/dist/src/scholarships/policies/ScholarshipSeoIndexabilityPolicy.d.ts +0 -7
- package/dist/src/scholarships/policies/ScholarshipSeoIndexabilityPolicy.js +0 -7
- package/dist/src/scholarships/policies/Unfiltered.d.ts +0 -10
- package/dist/src/scholarships/policies/Unfiltered.js +0 -16
- package/dist/src/scholarships/policies/UniversityCountry.d.ts +0 -11
- package/dist/src/scholarships/policies/UniversityCountry.js +0 -41
- package/dist/src/scholarships/rules/ExceptAustaliaAreasRule.d.ts +0 -14
- package/dist/src/scholarships/rules/ExceptAustaliaAreasRule.js +0 -42
- package/dist/src/scholarships/rules/SearchVolumeAreasRule.d.ts +0 -12
- package/dist/src/scholarships/rules/SearchVolumeAreasRule.js +0 -32
- package/dist/src/scholarships/rules/SearchVolumeCountriesDisciplinesRule.d.ts +0 -14
- package/dist/src/scholarships/rules/SearchVolumeCountriesDisciplinesRule.js +0 -43
- package/dist/src/scholarships/rules/SearchVolumeCountriesRule.d.ts +0 -12
- package/dist/src/scholarships/rules/SearchVolumeCountriesRule.js +0 -32
- package/dist/src/scholarships/rules/SearchVolumeDisciplinesRule.d.ts +0 -12
- package/dist/src/scholarships/rules/SearchVolumeDisciplinesRule.js +0 -32
- package/dist/src/scholarships/rules/files/search-volume.json +0 -39334
- package/dist/src/scholarships/types/IScholarshipSeoDependencies.d.ts +0 -3
- package/dist/src/scholarships/types/IScholarshipSeoDependencies.js +0 -1
- package/dist/src/scholarships/types/IScholarshipSitemapDependencies.d.ts +0 -5
- package/dist/src/scholarships/types/IScholarshipSitemapDependencies.js +0 -1
- package/dist/src/scholarships/types.d.ts +0 -5
- package/dist/src/scholarships/types.js +0 -5
- package/dist/src/sitemap-generator/BaseSitemapUrlGeneratorManager.d.ts +0 -14
- package/dist/src/sitemap-generator/BaseSitemapUrlGeneratorManager.js +0 -26
- package/dist/src/sitemap-generator/IOrganisation.d.ts +0 -6
- package/dist/src/sitemap-generator/IOrganisation.js +0 -1
- package/dist/src/sitemap-generator/IOrganisationsClient.d.ts +0 -4
- package/dist/src/sitemap-generator/IOrganisationsClient.js +0 -1
- package/dist/src/sitemap-generator/IRankingApiClient.d.ts +0 -4
- package/dist/src/sitemap-generator/IRankingApiClient.js +0 -1
- package/dist/src/sitemap-generator/ISearchApiClient.d.ts +0 -5
- package/dist/src/sitemap-generator/ISearchApiClient.js +0 -1
- package/dist/src/sitemap-generator/ISitemapUrlGeneratorManager.d.ts +0 -9
- package/dist/src/sitemap-generator/ISitemapUrlGeneratorManager.js +0 -1
- package/dist/src/sitemap-generator/OrganisationsSitemapUrlGeneratorManager.d.ts +0 -14
- package/dist/src/sitemap-generator/OrganisationsSitemapUrlGeneratorManager.js +0 -51
- package/dist/src/sitemap-generator/ProgrammesSitemapUrlGeneratorManager.d.ts +0 -12
- package/dist/src/sitemap-generator/ProgrammesSitemapUrlGeneratorManager.js +0 -77
- package/dist/src/sitemap-generator/ScholarshipsSitemapUrlGeneratorManager.d.ts +0 -9
- package/dist/src/sitemap-generator/ScholarshipsSitemapUrlGeneratorManager.js +0 -28
- package/dist/src/sitemap-generator/index.d.ts +0 -0
- package/dist/src/sitemap-generator/index.js +0 -1
- package/dist/src/structured-data/ProgrammeStructuredDataFactory.d.ts +0 -18
- package/dist/src/structured-data/ProgrammeStructuredDataFactory.js +0 -91
- package/dist/src/structured-data/SearchStructuredDataFactory.d.ts +0 -34
- package/dist/src/structured-data/SearchStructuredDataFactory.js +0 -144
- package/dist/src/structured-data/dto/BreadcrumbDTO.d.ts +0 -5
- package/dist/src/structured-data/dto/BreadcrumbDTO.js +0 -1
- package/dist/src/structured-data/dto/EntityDTO.d.ts +0 -7
- package/dist/src/structured-data/dto/EntityDTO.js +0 -1
- package/dist/src/structured-data/dto/FAQItemDto.d.ts +0 -4
- package/dist/src/structured-data/dto/FAQItemDto.js +0 -1
- package/dist/src/structured-data/dto/OfferDTO.d.ts +0 -5
- package/dist/src/structured-data/dto/OfferDTO.js +0 -1
- package/dist/src/structured-data/dto/ReviewRatingDTO.d.ts +0 -4
- package/dist/src/structured-data/dto/ReviewRatingDTO.js +0 -1
- package/dist/src/structured-data/dto/index.d.ts +0 -5
- package/dist/src/structured-data/dto/index.js +0 -5
- package/dist/src/structured-data/index.d.ts +0 -2
- package/dist/src/structured-data/index.js +0 -2
- package/dist/src/structured-data/interface/StructuredDataCurrencyConversionService.d.ts +0 -3
- package/dist/src/structured-data/interface/StructuredDataCurrencyConversionService.js +0 -1
- package/dist/structured-data-seo/index.d.ts +0 -1
- package/dist/structured-data-seo/index.js +0 -1
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
6
|
-
import { DisciplinePresenter } from '../../presenters/DisciplinePresenter';
|
|
7
|
-
import { CountryPresenter } from '../../presenters/CountryPresenter';
|
|
8
|
-
export class DisciplineCountry extends ProgrammesBaseIndexabilityPolicy {
|
|
9
|
-
name = 'Discipline Country Policy';
|
|
10
|
-
description = 'Determines indexing rules for pages filtered by both discipline, and country.';
|
|
11
|
-
filterKeys = [FilterKey.DISCIPLINES, FilterKey.COUNTRY];
|
|
12
|
-
rules = [
|
|
13
|
-
new SingleValueSelectedForFilterRule(FilterKey.DISCIPLINES),
|
|
14
|
-
new SingleValueSelectedForFilterRule(FilterKey.COUNTRY),
|
|
15
|
-
new OnlyFiltersSelectedRule([FilterKey.DISCIPLINES, FilterKey.COUNTRY])
|
|
16
|
-
];
|
|
17
|
-
constructor(dependencies) {
|
|
18
|
-
super(dependencies);
|
|
19
|
-
this.initateBaseRules();
|
|
20
|
-
}
|
|
21
|
-
async generateUrls() {
|
|
22
|
-
const disciplineFragments = DisciplinePresenter.getInstance().getFragments();
|
|
23
|
-
const countryFragments = CountryPresenter.getInstance().getFragments();
|
|
24
|
-
const paths = [];
|
|
25
|
-
for (const pageNumber of this.indexablePageNumbers) {
|
|
26
|
-
for (const discipline of disciplineFragments) {
|
|
27
|
-
for (const country of countryFragments) {
|
|
28
|
-
const filterKeyValues = new Map([
|
|
29
|
-
[FilterKey.DISCIPLINES, [discipline.id]],
|
|
30
|
-
[FilterKey.COUNTRY, [country.id]]
|
|
31
|
-
]);
|
|
32
|
-
const result = await this.checkRulesForSitemapWithPageNumber(filterKeyValues, pageNumber);
|
|
33
|
-
if (result) {
|
|
34
|
-
paths.push(this.getPathWithPageNumber(`${discipline.path}/${country.path}`, pageNumber));
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
return paths;
|
|
40
|
-
}
|
|
41
|
-
get filterCombination() {
|
|
42
|
-
return FilterCombinations.DISCIPLINE_COUNTRY;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { IndexableEducationalFormRule } from '../rules/IndexableEducationalFormRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { IProgrammeSeoDependencies } from '../types/IProgrammeSeoDependencies';
|
|
8
|
-
export declare class DisciplineCountryEducationalForm extends ProgrammesBaseIndexabilityPolicy {
|
|
9
|
-
readonly name: string;
|
|
10
|
-
readonly description: string;
|
|
11
|
-
readonly filterKeys: FilterKey[];
|
|
12
|
-
protected readonly rules: (SingleValueSelectedForFilterRule | OnlyFiltersSelectedRule | IndexableEducationalFormRule)[];
|
|
13
|
-
constructor(dependencies: IProgrammeSeoDependencies);
|
|
14
|
-
protected generateUrls(): Promise<string[]>;
|
|
15
|
-
get filterCombination(): FilterCombinations;
|
|
16
|
-
}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { IndexableEducationalFormRule } from '../rules/IndexableEducationalFormRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { DisciplinePresenter } from '../../presenters/DisciplinePresenter';
|
|
8
|
-
import { CountryPresenter } from '../../presenters/CountryPresenter';
|
|
9
|
-
import { EducationalFormPresenter } from '../../presenters/EducationalFormPresenter';
|
|
10
|
-
export class DisciplineCountryEducationalForm extends ProgrammesBaseIndexabilityPolicy {
|
|
11
|
-
name = 'Discipline Country Educational Form Policy';
|
|
12
|
-
description = `Determines indexing rules for pages filtered by discipline,
|
|
13
|
-
country, and educational form (academic, semester, summer school, etc.).`;
|
|
14
|
-
filterKeys = [FilterKey.DISCIPLINES, FilterKey.COUNTRY, FilterKey.EDUCATIONAL_FORM];
|
|
15
|
-
rules = [
|
|
16
|
-
new SingleValueSelectedForFilterRule(FilterKey.DISCIPLINES),
|
|
17
|
-
new SingleValueSelectedForFilterRule(FilterKey.COUNTRY),
|
|
18
|
-
new SingleValueSelectedForFilterRule(FilterKey.EDUCATIONAL_FORM),
|
|
19
|
-
new OnlyFiltersSelectedRule([FilterKey.DISCIPLINES, FilterKey.COUNTRY, FilterKey.EDUCATIONAL_FORM]),
|
|
20
|
-
new IndexableEducationalFormRule()
|
|
21
|
-
];
|
|
22
|
-
constructor(dependencies) {
|
|
23
|
-
super(dependencies);
|
|
24
|
-
this.initateBaseRules();
|
|
25
|
-
}
|
|
26
|
-
async generateUrls() {
|
|
27
|
-
const disciplineFragments = DisciplinePresenter.getInstance().getFragments();
|
|
28
|
-
const countryFragments = CountryPresenter.getInstance().getFragments();
|
|
29
|
-
const educationalFormFragments = EducationalFormPresenter.getInstance().getFragments();
|
|
30
|
-
const paths = [];
|
|
31
|
-
for (const pageNumber of this.indexablePageNumbers) {
|
|
32
|
-
for (const discipline of disciplineFragments) {
|
|
33
|
-
for (const country of countryFragments) {
|
|
34
|
-
for (const form of educationalFormFragments) {
|
|
35
|
-
const filterKeyValues = new Map([
|
|
36
|
-
[FilterKey.DISCIPLINES, [discipline.id]],
|
|
37
|
-
[FilterKey.COUNTRY, [country.id]],
|
|
38
|
-
[FilterKey.EDUCATIONAL_FORM, [form.id]]
|
|
39
|
-
]);
|
|
40
|
-
const result = await this.checkRulesForSitemapWithPageNumber(filterKeyValues, pageNumber);
|
|
41
|
-
if (result) {
|
|
42
|
-
paths.push(this.getPathWithPageNumber(`${discipline.path}/${form.path}/${country.path}`, pageNumber));
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
return paths;
|
|
49
|
-
}
|
|
50
|
-
get filterCombination() {
|
|
51
|
-
return FilterCombinations.DISCIPLINE_COUNTRY_EDUCATIONAL_FORM;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { DegreeDisciplineRule } from '../rules/DegreeDisciplineRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { IProgrammeSeoDependencies } from '../types/IProgrammeSeoDependencies';
|
|
8
|
-
export declare class DisciplineDegree extends ProgrammesBaseIndexabilityPolicy {
|
|
9
|
-
readonly name: string;
|
|
10
|
-
readonly description: string;
|
|
11
|
-
readonly filterKeys: FilterKey[];
|
|
12
|
-
protected readonly rules: (SingleValueSelectedForFilterRule | OnlyFiltersSelectedRule | DegreeDisciplineRule)[];
|
|
13
|
-
constructor(dependencies: IProgrammeSeoDependencies);
|
|
14
|
-
protected generateUrls(): Promise<string[]>;
|
|
15
|
-
get filterCombination(): FilterCombinations;
|
|
16
|
-
}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { DegreeDisciplineRule } from '../rules/DegreeDisciplineRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { DisciplinePresenter } from '../../presenters/DisciplinePresenter';
|
|
8
|
-
import { DegreePresenter } from '../../presenters/DegreePresenter';
|
|
9
|
-
export class DisciplineDegree extends ProgrammesBaseIndexabilityPolicy {
|
|
10
|
-
name = 'Discipline Degree Policy';
|
|
11
|
-
description = 'Determines indexing rules for pages filtered by both discipline, and degree type.';
|
|
12
|
-
filterKeys = [FilterKey.DISCIPLINES, FilterKey.DEGREE_TYPE];
|
|
13
|
-
rules = [
|
|
14
|
-
new SingleValueSelectedForFilterRule(FilterKey.DISCIPLINES),
|
|
15
|
-
new SingleValueSelectedForFilterRule(FilterKey.DEGREE_TYPE),
|
|
16
|
-
new OnlyFiltersSelectedRule([FilterKey.DISCIPLINES, FilterKey.DEGREE_TYPE]),
|
|
17
|
-
new DegreeDisciplineRule()
|
|
18
|
-
];
|
|
19
|
-
constructor(dependencies) {
|
|
20
|
-
super(dependencies);
|
|
21
|
-
this.initateBaseRules();
|
|
22
|
-
}
|
|
23
|
-
async generateUrls() {
|
|
24
|
-
const disciplineFragments = DisciplinePresenter.getInstance().getFragments();
|
|
25
|
-
const degreeFragments = DegreePresenter.getInstance().getFragments();
|
|
26
|
-
const paths = [];
|
|
27
|
-
for (const pageNumber of this.indexablePageNumbers) {
|
|
28
|
-
for (const discipline of disciplineFragments) {
|
|
29
|
-
for (const degree of degreeFragments) {
|
|
30
|
-
const filterKeyValues = new Map([
|
|
31
|
-
[FilterKey.DISCIPLINES, [discipline.id]],
|
|
32
|
-
[FilterKey.DEGREE_TYPE, [degree.id]]
|
|
33
|
-
]);
|
|
34
|
-
const result = await this.checkRulesForSitemapWithPageNumber(filterKeyValues, pageNumber);
|
|
35
|
-
if (result) {
|
|
36
|
-
paths.push(this.getPathWithPageNumber(`${degree.path}/${discipline.path}`, pageNumber));
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
return paths;
|
|
42
|
-
}
|
|
43
|
-
get filterCombination() {
|
|
44
|
-
return FilterCombinations.DISCIPLINE_DEGREE;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { IndexableDurationRule } from '../rules/IndexableDurationRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { IProgrammeSeoDependencies } from '../types/IProgrammeSeoDependencies';
|
|
8
|
-
export declare class DisciplineDuration extends ProgrammesBaseIndexabilityPolicy {
|
|
9
|
-
readonly name: string;
|
|
10
|
-
readonly description: string;
|
|
11
|
-
readonly filterKeys: FilterKey[];
|
|
12
|
-
protected readonly rules: (SingleValueSelectedForFilterRule | OnlyFiltersSelectedRule | IndexableDurationRule)[];
|
|
13
|
-
constructor(dependencies: IProgrammeSeoDependencies);
|
|
14
|
-
protected generateUrls(): Promise<string[]>;
|
|
15
|
-
get filterCombination(): FilterCombinations;
|
|
16
|
-
}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { IndexableDurationRule } from '../rules/IndexableDurationRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { DisciplinePresenter } from '../../presenters/DisciplinePresenter';
|
|
8
|
-
import { DurationPresenter } from '../../presenters/DurationPresenter';
|
|
9
|
-
export class DisciplineDuration extends ProgrammesBaseIndexabilityPolicy {
|
|
10
|
-
name = 'Discipline Duration Policy';
|
|
11
|
-
description = 'Determines indexing rules for pages filtered by both discipline, and duration (1 year, 2 years, etc.).';
|
|
12
|
-
filterKeys = [FilterKey.DISCIPLINES, FilterKey.DURATION];
|
|
13
|
-
rules = [
|
|
14
|
-
new SingleValueSelectedForFilterRule(FilterKey.DISCIPLINES),
|
|
15
|
-
new SingleValueSelectedForFilterRule(FilterKey.DURATION),
|
|
16
|
-
new OnlyFiltersSelectedRule([FilterKey.DISCIPLINES, FilterKey.DURATION]),
|
|
17
|
-
new IndexableDurationRule()
|
|
18
|
-
];
|
|
19
|
-
constructor(dependencies) {
|
|
20
|
-
super(dependencies);
|
|
21
|
-
this.initateBaseRules();
|
|
22
|
-
}
|
|
23
|
-
async generateUrls() {
|
|
24
|
-
const disciplineFragments = DisciplinePresenter.getInstance().getFragments();
|
|
25
|
-
const durationFragments = DurationPresenter.getInstance().getFragments();
|
|
26
|
-
const paths = [];
|
|
27
|
-
for (const pageNumber of this.indexablePageNumbers) {
|
|
28
|
-
for (const discipline of disciplineFragments) {
|
|
29
|
-
for (const duration of durationFragments) {
|
|
30
|
-
const filterKeyValues = new Map([
|
|
31
|
-
[FilterKey.DISCIPLINES, [discipline.id]],
|
|
32
|
-
[FilterKey.DURATION, [duration.id]]
|
|
33
|
-
]);
|
|
34
|
-
const result = await this.checkRulesForSitemapWithPageNumber(filterKeyValues, pageNumber);
|
|
35
|
-
if (result) {
|
|
36
|
-
paths.push(this.getPathWithPageNumber(`${duration.path}/${discipline.path}`, pageNumber));
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
return paths;
|
|
42
|
-
}
|
|
43
|
-
get filterCombination() {
|
|
44
|
-
return FilterCombinations.DISCIPLINE_DURATION;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { IndexableEducationalFormRule } from '../rules/IndexableEducationalFormRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { IProgrammeSeoDependencies } from '../types/IProgrammeSeoDependencies';
|
|
8
|
-
export declare class DisciplineEducationalForm extends ProgrammesBaseIndexabilityPolicy {
|
|
9
|
-
readonly name: string;
|
|
10
|
-
readonly description: string;
|
|
11
|
-
readonly filterKeys: FilterKey[];
|
|
12
|
-
protected readonly rules: (SingleValueSelectedForFilterRule | OnlyFiltersSelectedRule | IndexableEducationalFormRule)[];
|
|
13
|
-
constructor(dependencies: IProgrammeSeoDependencies);
|
|
14
|
-
protected generateUrls(): Promise<string[]>;
|
|
15
|
-
get filterCombination(): FilterCombinations;
|
|
16
|
-
}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { IndexableEducationalFormRule } from '../rules/IndexableEducationalFormRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { DisciplinePresenter } from '../../presenters/DisciplinePresenter';
|
|
8
|
-
import { EducationalFormPresenter } from '../../presenters/EducationalFormPresenter';
|
|
9
|
-
export class DisciplineEducationalForm extends ProgrammesBaseIndexabilityPolicy {
|
|
10
|
-
name = 'Discipline Educational Form Policy';
|
|
11
|
-
description = `Determines indexing rules for pages filtered by both discipline,
|
|
12
|
-
and educational form (academic, semester, summer school, etc.).`;
|
|
13
|
-
filterKeys = [FilterKey.DISCIPLINES, FilterKey.EDUCATIONAL_FORM];
|
|
14
|
-
rules = [
|
|
15
|
-
new SingleValueSelectedForFilterRule(FilterKey.DISCIPLINES),
|
|
16
|
-
new SingleValueSelectedForFilterRule(FilterKey.EDUCATIONAL_FORM),
|
|
17
|
-
new OnlyFiltersSelectedRule([FilterKey.DISCIPLINES, FilterKey.EDUCATIONAL_FORM]),
|
|
18
|
-
new IndexableEducationalFormRule()
|
|
19
|
-
];
|
|
20
|
-
constructor(dependencies) {
|
|
21
|
-
super(dependencies);
|
|
22
|
-
this.initateBaseRules();
|
|
23
|
-
}
|
|
24
|
-
async generateUrls() {
|
|
25
|
-
const disciplineFragments = DisciplinePresenter.getInstance().getFragments();
|
|
26
|
-
const educationalFormFragments = EducationalFormPresenter.getInstance().getFragments();
|
|
27
|
-
const paths = [];
|
|
28
|
-
for (const pageNumber of this.indexablePageNumbers) {
|
|
29
|
-
for (const discipline of disciplineFragments) {
|
|
30
|
-
for (const form of educationalFormFragments) {
|
|
31
|
-
const filterKeyValues = new Map([
|
|
32
|
-
[FilterKey.DISCIPLINES, [discipline.id]],
|
|
33
|
-
[FilterKey.EDUCATIONAL_FORM, [form.id]]
|
|
34
|
-
]);
|
|
35
|
-
const result = await this.checkRulesForSitemapWithPageNumber(filterKeyValues, pageNumber);
|
|
36
|
-
if (result) {
|
|
37
|
-
paths.push(this.getPathWithPageNumber(`${discipline.path}/${form.path}`, pageNumber));
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
return paths;
|
|
43
|
-
}
|
|
44
|
-
get filterCombination() {
|
|
45
|
-
return FilterCombinations.DISCIPLINE_EDUCATIONAL_FORM;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { PartTimeFormatRule } from '../rules/PartTimeFormatRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { IProgrammeSeoDependencies } from '../types/IProgrammeSeoDependencies';
|
|
8
|
-
export declare class DisciplineFormat extends ProgrammesBaseIndexabilityPolicy {
|
|
9
|
-
readonly name: string;
|
|
10
|
-
readonly description: string;
|
|
11
|
-
readonly filterKeys: FilterKey[];
|
|
12
|
-
protected readonly rules: (SingleValueSelectedForFilterRule | OnlyFiltersSelectedRule | PartTimeFormatRule)[];
|
|
13
|
-
constructor(dependencies: IProgrammeSeoDependencies);
|
|
14
|
-
protected generateUrls(): Promise<string[]>;
|
|
15
|
-
get filterCombination(): FilterCombinations;
|
|
16
|
-
}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { PartTimeFormatRule } from '../rules/PartTimeFormatRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { DisciplinePresenter } from '../../presenters/DisciplinePresenter';
|
|
8
|
-
import { FormatPresenter } from '../../presenters/FormatPresenter';
|
|
9
|
-
export class DisciplineFormat extends ProgrammesBaseIndexabilityPolicy {
|
|
10
|
-
name = 'Discipline Format Policy';
|
|
11
|
-
description = 'Determines indexing rules for pages filtered by both discipline, and attendance type (part-time or fulltime).';
|
|
12
|
-
filterKeys = [FilterKey.DISCIPLINES, FilterKey.ATTENDANCE];
|
|
13
|
-
rules = [
|
|
14
|
-
new SingleValueSelectedForFilterRule(FilterKey.DISCIPLINES),
|
|
15
|
-
new SingleValueSelectedForFilterRule(FilterKey.ATTENDANCE),
|
|
16
|
-
new OnlyFiltersSelectedRule([FilterKey.DISCIPLINES, FilterKey.ATTENDANCE]),
|
|
17
|
-
new PartTimeFormatRule()
|
|
18
|
-
];
|
|
19
|
-
constructor(dependencies) {
|
|
20
|
-
super(dependencies);
|
|
21
|
-
this.initateBaseRules();
|
|
22
|
-
}
|
|
23
|
-
async generateUrls() {
|
|
24
|
-
const disciplineFragments = DisciplinePresenter.getInstance().getFragments();
|
|
25
|
-
const formatFragments = FormatPresenter.getInstance().getFragments();
|
|
26
|
-
const paths = [];
|
|
27
|
-
for (const pageNumber of this.indexablePageNumbers) {
|
|
28
|
-
for (const discipline of disciplineFragments) {
|
|
29
|
-
for (const format of formatFragments) {
|
|
30
|
-
const filterKeyValues = new Map([
|
|
31
|
-
[FilterKey.DISCIPLINES, [discipline.id]],
|
|
32
|
-
[FilterKey.ATTENDANCE, [format.id]]
|
|
33
|
-
]);
|
|
34
|
-
const result = await this.checkRulesForSitemapWithPageNumber(filterKeyValues, pageNumber);
|
|
35
|
-
if (result) {
|
|
36
|
-
paths.push(this.getPathWithPageNumber(`${format.path}/${discipline.path}`, pageNumber));
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
return paths;
|
|
42
|
-
}
|
|
43
|
-
get filterCombination() {
|
|
44
|
-
return FilterCombinations.DISCIPLINE_FORMAT;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { AffordableTuitionFeeRule } from '../rules/AffordableTuitionFeeRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { IProgrammeSeoDependencies } from '../types/IProgrammeSeoDependencies';
|
|
8
|
-
export declare class DisciplineTuitionFee extends ProgrammesBaseIndexabilityPolicy {
|
|
9
|
-
readonly name: string;
|
|
10
|
-
readonly description: string;
|
|
11
|
-
readonly filterKeys: FilterKey[];
|
|
12
|
-
protected readonly rules: (SingleValueSelectedForFilterRule | OnlyFiltersSelectedRule | AffordableTuitionFeeRule)[];
|
|
13
|
-
constructor(dependencies: IProgrammeSeoDependencies);
|
|
14
|
-
protected generateUrls(): Promise<string[]>;
|
|
15
|
-
get filterCombination(): FilterCombinations;
|
|
16
|
-
}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { AffordableTuitionFeeRule } from '../rules/AffordableTuitionFeeRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { DisciplinePresenter } from '../../presenters/DisciplinePresenter';
|
|
8
|
-
import { TuitionFeePresenter } from '../../presenters/TuitionFeePresenter';
|
|
9
|
-
export class DisciplineTuitionFee extends ProgrammesBaseIndexabilityPolicy {
|
|
10
|
-
name = 'Discipline Tuition Fee Policy';
|
|
11
|
-
description = 'Determines indexing rules for pages filtered by both discipline, and tuition fee.';
|
|
12
|
-
filterKeys = [FilterKey.DISCIPLINES, FilterKey.TUITION_FEE];
|
|
13
|
-
rules = [
|
|
14
|
-
new SingleValueSelectedForFilterRule(FilterKey.DISCIPLINES),
|
|
15
|
-
new SingleValueSelectedForFilterRule(FilterKey.TUITION_FEE),
|
|
16
|
-
new OnlyFiltersSelectedRule([FilterKey.DISCIPLINES, FilterKey.TUITION_FEE]),
|
|
17
|
-
new AffordableTuitionFeeRule()
|
|
18
|
-
];
|
|
19
|
-
constructor(dependencies) {
|
|
20
|
-
super(dependencies);
|
|
21
|
-
this.initateBaseRules();
|
|
22
|
-
}
|
|
23
|
-
async generateUrls() {
|
|
24
|
-
const disciplineFragments = DisciplinePresenter.getInstance().getFragments();
|
|
25
|
-
const tuitionFeeFragments = TuitionFeePresenter.getInstance().getFragments();
|
|
26
|
-
const paths = [];
|
|
27
|
-
for (const pageNumber of this.indexablePageNumbers) {
|
|
28
|
-
for (const discipline of disciplineFragments) {
|
|
29
|
-
for (const tuitionFee of tuitionFeeFragments) {
|
|
30
|
-
const filterKeyValues = new Map([
|
|
31
|
-
[FilterKey.DISCIPLINES, [discipline.id]],
|
|
32
|
-
[FilterKey.TUITION_FEE, [tuitionFee.id]]
|
|
33
|
-
]);
|
|
34
|
-
const result = await this.checkRulesForSitemapWithPageNumber(filterKeyValues, pageNumber);
|
|
35
|
-
if (result) {
|
|
36
|
-
paths.push(this.getPathWithPageNumber(`${tuitionFee.path}/${discipline.path}`, pageNumber));
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
return paths;
|
|
42
|
-
}
|
|
43
|
-
get filterCombination() {
|
|
44
|
-
return FilterCombinations.DISCIPLINE_TUITION_FEE;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { AffordableTuitionFeeRule } from '../rules/AffordableTuitionFeeRule';
|
|
6
|
-
import { OnlineAttendanceRule } from '../../common/rules/OnlineAttendanceRule';
|
|
7
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
8
|
-
import { IProgrammeSeoDependencies } from '../types/IProgrammeSeoDependencies';
|
|
9
|
-
export declare class DisciplineTuitionFeeAttendance extends ProgrammesBaseIndexabilityPolicy {
|
|
10
|
-
readonly name: string;
|
|
11
|
-
readonly description: string;
|
|
12
|
-
readonly filterKeys: FilterKey[];
|
|
13
|
-
protected readonly rules: (SingleValueSelectedForFilterRule | OnlyFiltersSelectedRule | OnlineAttendanceRule | AffordableTuitionFeeRule)[];
|
|
14
|
-
constructor(dependencies: IProgrammeSeoDependencies);
|
|
15
|
-
protected generateUrls(): Promise<string[]>;
|
|
16
|
-
get filterCombination(): FilterCombinations;
|
|
17
|
-
}
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { AffordableTuitionFeeRule } from '../rules/AffordableTuitionFeeRule';
|
|
6
|
-
import { OnlineAttendanceRule } from '../../common/rules/OnlineAttendanceRule';
|
|
7
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
8
|
-
import { DisciplinePresenter } from '../../presenters/DisciplinePresenter';
|
|
9
|
-
import { AttendancePresenter } from '../../presenters/AttendancePresenter';
|
|
10
|
-
import { TuitionFeePresenter } from '../../presenters/TuitionFeePresenter';
|
|
11
|
-
export class DisciplineTuitionFeeAttendance extends ProgrammesBaseIndexabilityPolicy {
|
|
12
|
-
name = 'Discipline Tuition Fee Attendance Policy';
|
|
13
|
-
description = 'Determines indexing rules for pages filtered by discipline, tuition fee and study format (online, on-campus, etc.).';
|
|
14
|
-
filterKeys = [FilterKey.DISCIPLINES, FilterKey.TUITION_FEE, FilterKey.DELIVERY_METHOD];
|
|
15
|
-
rules = [
|
|
16
|
-
new SingleValueSelectedForFilterRule(FilterKey.DISCIPLINES),
|
|
17
|
-
new SingleValueSelectedForFilterRule(FilterKey.TUITION_FEE),
|
|
18
|
-
new SingleValueSelectedForFilterRule(FilterKey.DELIVERY_METHOD),
|
|
19
|
-
new OnlyFiltersSelectedRule([FilterKey.DISCIPLINES, FilterKey.TUITION_FEE, FilterKey.DELIVERY_METHOD]),
|
|
20
|
-
new AffordableTuitionFeeRule(),
|
|
21
|
-
new OnlineAttendanceRule()
|
|
22
|
-
];
|
|
23
|
-
constructor(dependencies) {
|
|
24
|
-
super(dependencies);
|
|
25
|
-
this.initateBaseRules();
|
|
26
|
-
}
|
|
27
|
-
async generateUrls() {
|
|
28
|
-
const disciplineFragments = DisciplinePresenter.getInstance().getFragments();
|
|
29
|
-
const attendanceFragments = AttendancePresenter.getInstance().getFragments();
|
|
30
|
-
const tuitionFeeFragments = TuitionFeePresenter.getInstance().getFragments();
|
|
31
|
-
const paths = [];
|
|
32
|
-
for (const pageNumber of this.indexablePageNumbers) {
|
|
33
|
-
for (const discipline of disciplineFragments) {
|
|
34
|
-
for (const attendance of attendanceFragments) {
|
|
35
|
-
for (const tuitionFee of tuitionFeeFragments) {
|
|
36
|
-
const filterKeyValues = new Map([
|
|
37
|
-
[FilterKey.DISCIPLINES, [discipline.id]],
|
|
38
|
-
[FilterKey.DELIVERY_METHOD, [attendance.id]],
|
|
39
|
-
[FilterKey.TUITION_FEE, [tuitionFee.id]]
|
|
40
|
-
]);
|
|
41
|
-
const result = await this.checkRulesForSitemapWithPageNumber(filterKeyValues, pageNumber);
|
|
42
|
-
if (result) {
|
|
43
|
-
paths.push(this.getPathWithPageNumber(`${tuitionFee.path}/${attendance.path}/${discipline.path}`, pageNumber));
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
return paths;
|
|
50
|
-
}
|
|
51
|
-
get filterCombination() {
|
|
52
|
-
return FilterCombinations.DISCIPLINE_TUITION_FEE_ATTENDANCE;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { ErasmusOrJointSpecialProgrammesRule } from '../rules/ErasmusOrJointSpecialProgrammesRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { IProgrammeSeoDependencies } from '../types/IProgrammeSeoDependencies';
|
|
8
|
-
export declare class SpecialProgrammes extends ProgrammesBaseIndexabilityPolicy {
|
|
9
|
-
readonly name: string;
|
|
10
|
-
readonly description: string;
|
|
11
|
-
readonly filterKeys: FilterKey[];
|
|
12
|
-
protected readonly rules: (SingleValueSelectedForFilterRule | OnlyFiltersSelectedRule | ErasmusOrJointSpecialProgrammesRule)[];
|
|
13
|
-
constructor(dependencies: IProgrammeSeoDependencies);
|
|
14
|
-
protected generateUrls(): Promise<string[]>;
|
|
15
|
-
get filterCombination(): FilterCombinations;
|
|
16
|
-
}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { ErasmusOrJointSpecialProgrammesRule } from '../rules/ErasmusOrJointSpecialProgrammesRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { SpecialProgrammesPresenter } from '../../presenters/SpecialProgrammesPresenter';
|
|
8
|
-
export class SpecialProgrammes extends ProgrammesBaseIndexabilityPolicy {
|
|
9
|
-
name = 'Special Programmes Policy';
|
|
10
|
-
description = 'Controls indexing of pages filtered by special programmes like Erasmus Mundus or Joint Programmes.';
|
|
11
|
-
filterKeys = [FilterKey.SPECIAL_PROGRAMMES];
|
|
12
|
-
rules = [
|
|
13
|
-
new SingleValueSelectedForFilterRule(FilterKey.SPECIAL_PROGRAMMES),
|
|
14
|
-
new OnlyFiltersSelectedRule([FilterKey.SPECIAL_PROGRAMMES]),
|
|
15
|
-
new ErasmusOrJointSpecialProgrammesRule()
|
|
16
|
-
];
|
|
17
|
-
constructor(dependencies) {
|
|
18
|
-
super(dependencies);
|
|
19
|
-
this.initateBaseRules();
|
|
20
|
-
}
|
|
21
|
-
async generateUrls() {
|
|
22
|
-
const specialProgrammeFragments = SpecialProgrammesPresenter.getInstance().getFragments();
|
|
23
|
-
const paths = [];
|
|
24
|
-
for (const pageNumber of this.indexablePageNumbers) {
|
|
25
|
-
for (const specialProgramme of specialProgrammeFragments) {
|
|
26
|
-
const filterKeyValues = new Map([[FilterKey.SPECIAL_PROGRAMMES, [specialProgramme.id]]]);
|
|
27
|
-
const result = await this.checkRulesForSitemapWithPageNumber(filterKeyValues, pageNumber);
|
|
28
|
-
if (result) {
|
|
29
|
-
paths.push(this.getPathWithPageNumber(specialProgramme.path, pageNumber));
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
return paths;
|
|
34
|
-
}
|
|
35
|
-
get filterCombination() {
|
|
36
|
-
return FilterCombinations.SPECIAL_PROGRAMMES;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
6
|
-
import { IProgrammeSeoDependencies } from '../types/IProgrammeSeoDependencies';
|
|
7
|
-
export declare class TuitionFee extends ProgrammesBaseIndexabilityPolicy {
|
|
8
|
-
readonly name: string;
|
|
9
|
-
readonly description: string;
|
|
10
|
-
readonly filterKeys: FilterKey[];
|
|
11
|
-
protected readonly rules: (SingleValueSelectedForFilterRule | OnlyFiltersSelectedRule)[];
|
|
12
|
-
constructor(dependencies: IProgrammeSeoDependencies);
|
|
13
|
-
protected generateUrls(): Promise<string[]>;
|
|
14
|
-
get filterCombination(): FilterCombinations;
|
|
15
|
-
}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from "../../enums/FilterKey";
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
6
|
-
import { TuitionFeePresenter } from '../../presenters/TuitionFeePresenter';
|
|
7
|
-
export class TuitionFee extends ProgrammesBaseIndexabilityPolicy {
|
|
8
|
-
name = 'Tuition Fee Policy';
|
|
9
|
-
description = 'Controls indexing of pages filtered by tuition fee.';
|
|
10
|
-
filterKeys = [FilterKey.TUITION_FEE];
|
|
11
|
-
rules = [
|
|
12
|
-
new SingleValueSelectedForFilterRule(FilterKey.TUITION_FEE),
|
|
13
|
-
new OnlyFiltersSelectedRule([FilterKey.TUITION_FEE])
|
|
14
|
-
];
|
|
15
|
-
constructor(dependencies) {
|
|
16
|
-
super(dependencies);
|
|
17
|
-
this.initateBaseRules();
|
|
18
|
-
}
|
|
19
|
-
async generateUrls() {
|
|
20
|
-
const tuitionFeeFragments = TuitionFeePresenter.getInstance().getFragments();
|
|
21
|
-
const paths = [];
|
|
22
|
-
for (const pageNumber of this.indexablePageNumbers) {
|
|
23
|
-
for (const tuitionFee of tuitionFeeFragments) {
|
|
24
|
-
paths.push(this.getPathWithPageNumber(tuitionFee.path, pageNumber));
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
return Promise.resolve(paths);
|
|
28
|
-
}
|
|
29
|
-
get filterCombination() {
|
|
30
|
-
return FilterCombinations.TUITION_FEE;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
2
|
-
import { NoFiltersSelectedRule } from '../../common/rules/NoFiltersSelectedRule';
|
|
3
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
4
|
-
import { IProgrammeSeoDependencies } from '../types/IProgrammeSeoDependencies';
|
|
5
|
-
export declare class Unfiltered extends ProgrammesBaseIndexabilityPolicy {
|
|
6
|
-
readonly name: string;
|
|
7
|
-
readonly description: string;
|
|
8
|
-
readonly filterKeys: never[];
|
|
9
|
-
protected readonly rules: NoFiltersSelectedRule[];
|
|
10
|
-
constructor(dependencies: IProgrammeSeoDependencies);
|
|
11
|
-
generateUrls(): Promise<string[]>;
|
|
12
|
-
get filterCombination(): FilterCombinations;
|
|
13
|
-
}
|