@studyportals/fawkes 7.4.2-3 → 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/package.json +105 -105
- 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/IPolicyMetaData.d.ts +0 -6
- package/dist/src/common/IPolicyMetaData.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/DependencyTypes.d.ts +0 -4
- package/dist/src/enums/DependencyTypes.js +0 -5
- package/dist/src/enums/FilterCombinations.d.ts +0 -73
- package/dist/src/enums/FilterCombinations.js +0 -74
- package/dist/src/enums/SortingOptions.d.ts +0 -4
- package/dist/src/enums/SortingOptions.js +0 -5
- 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/OrganisationsRuleBasedIndexabilityPolicy.d.ts +0 -11
- package/dist/src/organisations/OrganisationsRuleBasedIndexabilityPolicy.js +0 -19
- 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/OnlineAttendanceRule.d.ts +0 -6
- package/dist/src/organisations/rules/OnlineAttendanceRule.js +0 -14
- 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 -27
- 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 -50
- 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 -15
- package/dist/src/presenters/DurationPresenter.js +0 -47
- package/dist/src/presenters/EducationalFormPresenter.d.ts +0 -12
- package/dist/src/presenters/EducationalFormPresenter.js +0 -45
- package/dist/src/presenters/FormatPresenter.d.ts +0 -11
- package/dist/src/presenters/FormatPresenter.js +0 -27
- package/dist/src/presenters/SpecialProgrammesPresenter.d.ts +0 -11
- package/dist/src/presenters/SpecialProgrammesPresenter.js +0 -31
- package/dist/src/presenters/TuitionFeePresenter.d.ts +0 -11
- package/dist/src/presenters/TuitionFeePresenter.js +0 -23
- 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/IProgrammeSearchApplicationState.d.ts +0 -4
- package/dist/src/programmes/IProgrammeSearchApplicationState.js +0 -1
- package/dist/src/programmes/IProgrammeSearchDependencies.d.ts +0 -7
- package/dist/src/programmes/IProgrammeSearchDependencies.js +0 -1
- package/dist/src/programmes/IProgrammesSeoDependencies.d.ts +0 -2
- package/dist/src/programmes/IProgrammesSeoDependencies.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 -82
- 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/AttendanceArea.d.ts +0 -16
- package/dist/src/programmes/policies/AttendanceArea.js +0 -48
- package/dist/src/programmes/policies/AttendanceContinent.d.ts +0 -16
- package/dist/src/programmes/policies/AttendanceContinent.js +0 -46
- package/dist/src/programmes/policies/AttendanceDegree.d.ts +0 -16
- package/dist/src/programmes/policies/AttendanceDegree.js +0 -49
- package/dist/src/programmes/policies/AttendanceDuration.d.ts +0 -16
- package/dist/src/programmes/policies/AttendanceDuration.js +0 -48
- package/dist/src/programmes/policies/AttendanceFormat.d.ts +0 -16
- package/dist/src/programmes/policies/AttendanceFormat.js +0 -48
- package/dist/src/programmes/policies/AttendanceTuitionFee.d.ts +0 -16
- package/dist/src/programmes/policies/AttendanceTuitionFee.js +0 -49
- package/dist/src/programmes/policies/Continent.d.ts +0 -15
- package/dist/src/programmes/policies/Continent.js +0 -36
- package/dist/src/programmes/policies/ContinentDuration.d.ts +0 -15
- package/dist/src/programmes/policies/ContinentDuration.js +0 -46
- package/dist/src/programmes/policies/ContinentFormat.d.ts +0 -15
- package/dist/src/programmes/policies/ContinentFormat.js +0 -46
- package/dist/src/programmes/policies/ContinentSpecialProgrammes.d.ts +0 -15
- package/dist/src/programmes/policies/ContinentSpecialProgrammes.js +0 -46
- 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 -48
- 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/CountrySpecialProgrammes.d.ts +0 -15
- package/dist/src/programmes/policies/CountrySpecialProgrammes.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/DegreeArea.d.ts +0 -15
- package/dist/src/programmes/policies/DegreeArea.js +0 -46
- package/dist/src/programmes/policies/DegreeAreaTuitionFee.d.ts +0 -15
- package/dist/src/programmes/policies/DegreeAreaTuitionFee.js +0 -52
- package/dist/src/programmes/policies/DegreeAttendanceDiscipline.d.ts +0 -17
- package/dist/src/programmes/policies/DegreeAttendanceDiscipline.js +0 -63
- package/dist/src/programmes/policies/DegreeAttendanceFormat.d.ts +0 -15
- package/dist/src/programmes/policies/DegreeAttendanceFormat.js +0 -52
- package/dist/src/programmes/policies/DegreeAttendanceSpecialProgrammes.d.ts +0 -16
- package/dist/src/programmes/policies/DegreeAttendanceSpecialProgrammes.js +0 -56
- package/dist/src/programmes/policies/DegreeAttendanceTuitionFee.d.ts +0 -16
- package/dist/src/programmes/policies/DegreeAttendanceTuitionFee.js +0 -55
- package/dist/src/programmes/policies/DegreeContinent.d.ts +0 -16
- package/dist/src/programmes/policies/DegreeContinent.js +0 -46
- package/dist/src/programmes/policies/DegreeContinentTuitionFee.d.ts +0 -16
- package/dist/src/programmes/policies/DegreeContinentTuitionFee.js +0 -52
- 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/DegreeDuration.d.ts +0 -16
- package/dist/src/programmes/policies/DegreeDuration.js +0 -48
- package/dist/src/programmes/policies/DegreeFormat.d.ts +0 -16
- package/dist/src/programmes/policies/DegreeFormat.js +0 -49
- package/dist/src/programmes/policies/DegreeFormatTuitionFee.d.ts +0 -16
- package/dist/src/programmes/policies/DegreeFormatTuitionFee.js +0 -52
- package/dist/src/programmes/policies/DegreeSpecialProgrammes.d.ts +0 -15
- package/dist/src/programmes/policies/DegreeSpecialProgrammes.js +0 -48
- package/dist/src/programmes/policies/DegreeTuitionFee.d.ts +0 -15
- package/dist/src/programmes/policies/DegreeTuitionFee.js +0 -47
- 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/DisciplineContinentAttendance.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineContinentAttendance.js +0 -54
- package/dist/src/programmes/policies/DisciplineCountry.d.ts +0 -15
- package/dist/src/programmes/policies/DisciplineCountry.js +0 -44
- package/dist/src/programmes/policies/DisciplineCountryAttendance.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineCountryAttendance.js +0 -54
- package/dist/src/programmes/policies/DisciplineCountryDegree.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineCountryDegree.js +0 -53
- package/dist/src/programmes/policies/DisciplineCountryEducationalForm.d.ts +0 -16
- package/dist/src/programmes/policies/DisciplineCountryEducationalForm.js +0 -53
- package/dist/src/programmes/policies/DisciplineCountryFormat.d.ts +0 -15
- package/dist/src/programmes/policies/DisciplineCountryFormat.js +0 -52
- 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/DisciplineSpecialProgrammes.d.ts +0 -15
- package/dist/src/programmes/policies/DisciplineSpecialProgrammes.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/Duration.d.ts +0 -15
- package/dist/src/programmes/policies/Duration.js +0 -35
- package/dist/src/programmes/policies/Format.d.ts +0 -15
- package/dist/src/programmes/policies/Format.js +0 -35
- package/dist/src/programmes/policies/SpecialProgrammes.d.ts +0 -15
- package/dist/src/programmes/policies/SpecialProgrammes.js +0 -36
- 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 -59
- package/dist/src/programmes/policies/index.js +0 -59
- 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/DegreeAttendanceSpecificRule.d.ts +0 -10
- package/dist/src/programmes/rules/DegreeAttendanceSpecificRule.js +0 -42
- package/dist/src/programmes/rules/DegreeCountryAttendanceSpecificRule.d.ts +0 -14
- package/dist/src/programmes/rules/DegreeCountryAttendanceSpecificRule.js +0 -76
- package/dist/src/programmes/rules/DegreeCountryDisciplineSpecificRule.d.ts +0 -11
- package/dist/src/programmes/rules/DegreeCountryDisciplineSpecificRule.js +0 -76
- package/dist/src/programmes/rules/DegreeCountrySpecificRule.d.ts +0 -10
- package/dist/src/programmes/rules/DegreeCountrySpecificRule.js +0 -43
- package/dist/src/programmes/rules/DegreeCountryTuitionFeeRule.d.ts +0 -11
- package/dist/src/programmes/rules/DegreeCountryTuitionFeeRule.js +0 -40
- 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/MBACountryAttendanceRule.d.ts +0 -11
- package/dist/src/programmes/rules/MBACountryAttendanceRule.js +0 -40
- package/dist/src/programmes/rules/MasterOfArtsDisciplineRule.d.ts +0 -10
- package/dist/src/programmes/rules/MasterOfArtsDisciplineRule.js +0 -41
- package/dist/src/programmes/rules/MasterOfEducationCountryDisciplineRule.d.ts +0 -11
- package/dist/src/programmes/rules/MasterOfEducationCountryDisciplineRule.js +0 -69
- package/dist/src/programmes/rules/MasterOfLawsCountryAttendanceRule.d.ts +0 -12
- package/dist/src/programmes/rules/MasterOfLawsCountryAttendanceRule.js +0 -43
- package/dist/src/programmes/rules/MasterOfLawsCountryTuitionFeeRule.d.ts +0 -12
- package/dist/src/programmes/rules/MasterOfLawsCountryTuitionFeeRule.js +0 -46
- package/dist/src/programmes/rules/MasterOfPhilosophyCountryAttendanceRule.d.ts +0 -12
- package/dist/src/programmes/rules/MasterOfPhilosophyCountryAttendanceRule.js +0 -43
- package/dist/src/programmes/rules/MasterOfScienceDisciplineRule.d.ts +0 -10
- package/dist/src/programmes/rules/MasterOfScienceDisciplineRule.js +0 -41
- 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/OneYearOnlyRule.d.ts +0 -11
- package/dist/src/programmes/rules/OneYearOnlyRule.js +0 -34
- package/dist/src/programmes/rules/OnlineAttendanceRule.d.ts +0 -6
- package/dist/src/programmes/rules/OnlineAttendanceRule.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/IPageNumberProvider.d.ts +0 -3
- package/dist/src/sitemap-generator/IPageNumberProvider.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 -101
- 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,42 +0,0 @@
|
|
|
1
|
-
import { AtLeastSevenResultsRule } from './rules/AtLeastSevenResultsRule';
|
|
2
|
-
import { IndexablePageNumberRule } from './rules/IndexablePageNumberRule';
|
|
3
|
-
import { NotDistanceLearningPortalRule } from './rules/NotDistanceLearningPortalRule';
|
|
4
|
-
import { BaseSeoIndexabilityPolicy } from '../common/policies/BaseSeoIndexabilityPolicy';
|
|
5
|
-
export class ProgrammesBaseIndexabilityPolicy extends BaseSeoIndexabilityPolicy {
|
|
6
|
-
indexablePageNumbers = [1];
|
|
7
|
-
initateBaseRules() {
|
|
8
|
-
const indexablePageNumberRule = new IndexablePageNumberRule();
|
|
9
|
-
let atLeastSevenResultsRule;
|
|
10
|
-
let notDistanceLearningPortalRule;
|
|
11
|
-
if (super.isSitemapUrlGeneratorDependencies()) {
|
|
12
|
-
const dependencies = this.dependencies;
|
|
13
|
-
atLeastSevenResultsRule = new AtLeastSevenResultsRule(dependencies.searchApiClient);
|
|
14
|
-
notDistanceLearningPortalRule = new NotDistanceLearningPortalRule(dependencies.portalType);
|
|
15
|
-
}
|
|
16
|
-
else {
|
|
17
|
-
atLeastSevenResultsRule = new AtLeastSevenResultsRule();
|
|
18
|
-
notDistanceLearningPortalRule = new NotDistanceLearningPortalRule();
|
|
19
|
-
}
|
|
20
|
-
this.rules.push(atLeastSevenResultsRule, notDistanceLearningPortalRule, indexablePageNumberRule);
|
|
21
|
-
}
|
|
22
|
-
async checkRulesForSitemapWithPageNumber(filterKeyValues, pageNumber) {
|
|
23
|
-
for (const rule of this.rules) {
|
|
24
|
-
let result;
|
|
25
|
-
if ('forSitemapGeneratorWithPageNumber' in rule) {
|
|
26
|
-
result = await rule.forSitemapGeneratorWithPageNumber(filterKeyValues, pageNumber);
|
|
27
|
-
}
|
|
28
|
-
else {
|
|
29
|
-
result = await rule.forSitemapGenerator(filterKeyValues);
|
|
30
|
-
}
|
|
31
|
-
if (!result) {
|
|
32
|
-
return false;
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
return true;
|
|
36
|
-
}
|
|
37
|
-
getPathWithPageNumber(path, pageNumber) {
|
|
38
|
-
if (pageNumber === 2)
|
|
39
|
-
return `${path}/page-${pageNumber}`;
|
|
40
|
-
return path;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { PortalType } from '@studyportals/domain-client';
|
|
2
|
-
import { ISeoIndexabilityPolicy } from '../common/ISeoIndexabilityPolicy';
|
|
3
|
-
import { ISeoInfoBase } from '../common/ISeoInfoBase';
|
|
4
|
-
import { ISeoFilterState } from '../common/ISeoFilterState';
|
|
5
|
-
import { ISearchIndexabilityManager } from '../common/ISearchIndexabilityManager';
|
|
6
|
-
import { IProgrammeSearchApplicationState } from './types/IProgrammeSearchApplicationState';
|
|
7
|
-
export declare class SearchIndexabilityManager implements ISearchIndexabilityManager {
|
|
8
|
-
private policies;
|
|
9
|
-
constructor(portalType: PortalType, seoInfoBase: ISeoInfoBase, filterState: ISeoFilterState, applicationState: IProgrammeSearchApplicationState);
|
|
10
|
-
getPolicies(): ISeoIndexabilityPolicy[];
|
|
11
|
-
shouldIndex(): Promise<boolean>;
|
|
12
|
-
}
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import { Area, Attendance, AttendanceDegree, Continent, ContinentTuitionFee, Country, CountryAttendance, CountryAttendanceDegree, CountryDegree, CountryDuration, CountryDurationDegree, CountryEducationalForm, CountryFormat, CountryTuitionFee, DegreeAttendanceDiscipline, DegreeCountryAttendance, DegreeCountryDiscipline, DegreeCountryTuitionFee, Discipline, DisciplineAttendance, DisciplineContinent, DisciplineCountry, DisciplineCountryEducationalForm, DisciplineDegree, DisciplineDuration, DisciplineEducationalForm, DisciplineFormat, DisciplineTuitionFee, DisciplineTuitionFeeAttendance, SpecialProgrammes, TuitionFee, Unfiltered, AttendanceArea, AttendanceContinent, AttendanceDuration, AttendanceFormat, AttendanceTuitionFee, ContinentDuration, ContinentFormat, ContinentSpecialProgrammes, CountrySpecialProgrammes, DegreeArea, DegreeAreaTuitionFee, DegreeAttendanceFormat, DegreeAttendanceTuitionFee, DegreeContinent, DegreeContinentTuitionFee, DegreeDuration, DegreeFormat, DegreeFormatTuitionFee, DegreeSpecialProgrammes, DegreeTuitionFee, DisciplineContinentAttendance, DisciplineCountryAttendance, DisciplineCountryFormat, Duration, Format } from './policies';
|
|
2
|
-
import { DependencyTypes } from '../enums/DependencyTypes';
|
|
3
|
-
import { Degree } from './policies/Degree';
|
|
4
|
-
export class SearchIndexabilityManager {
|
|
5
|
-
policies;
|
|
6
|
-
constructor(portalType, seoInfoBase, filterState, applicationState) {
|
|
7
|
-
const dependencies = {
|
|
8
|
-
dependencyType: DependencyTypes.SEARCH,
|
|
9
|
-
portalType,
|
|
10
|
-
seoInfoBase,
|
|
11
|
-
filterState,
|
|
12
|
-
applicationState
|
|
13
|
-
};
|
|
14
|
-
this.policies = [
|
|
15
|
-
new Area(dependencies),
|
|
16
|
-
new Attendance(dependencies),
|
|
17
|
-
new AttendanceDegree(dependencies),
|
|
18
|
-
new Continent(dependencies),
|
|
19
|
-
new ContinentTuitionFee(dependencies),
|
|
20
|
-
new Country(dependencies),
|
|
21
|
-
new CountryAttendance(dependencies),
|
|
22
|
-
new CountryAttendanceDegree(dependencies),
|
|
23
|
-
new CountryDegree(dependencies),
|
|
24
|
-
new CountryDuration(dependencies),
|
|
25
|
-
new CountryDurationDegree(dependencies),
|
|
26
|
-
new CountryEducationalForm(dependencies),
|
|
27
|
-
new CountryFormat(dependencies),
|
|
28
|
-
new CountryTuitionFee(dependencies),
|
|
29
|
-
new Degree(dependencies),
|
|
30
|
-
new DegreeAttendanceDiscipline(dependencies),
|
|
31
|
-
new DegreeCountryAttendance(dependencies),
|
|
32
|
-
new DegreeCountryDiscipline(dependencies),
|
|
33
|
-
new DegreeCountryTuitionFee(dependencies),
|
|
34
|
-
new Discipline(dependencies),
|
|
35
|
-
new DisciplineAttendance(dependencies),
|
|
36
|
-
new DisciplineContinent(dependencies),
|
|
37
|
-
new DisciplineCountry(dependencies),
|
|
38
|
-
new DisciplineCountryEducationalForm(dependencies),
|
|
39
|
-
new DisciplineDegree(dependencies),
|
|
40
|
-
new DisciplineDuration(dependencies),
|
|
41
|
-
new DisciplineEducationalForm(dependencies),
|
|
42
|
-
new DisciplineFormat(dependencies),
|
|
43
|
-
new DisciplineTuitionFee(dependencies),
|
|
44
|
-
new DisciplineTuitionFeeAttendance(dependencies),
|
|
45
|
-
new SpecialProgrammes(dependencies),
|
|
46
|
-
new TuitionFee(dependencies),
|
|
47
|
-
new Unfiltered(dependencies),
|
|
48
|
-
new CountrySpecialProgrammes(dependencies),
|
|
49
|
-
new DegreeArea(dependencies),
|
|
50
|
-
new DegreeAreaTuitionFee(dependencies),
|
|
51
|
-
new DegreeAttendanceFormat(dependencies),
|
|
52
|
-
new DegreeAttendanceTuitionFee(dependencies),
|
|
53
|
-
new DegreeContinent(dependencies),
|
|
54
|
-
new DegreeContinentTuitionFee(dependencies),
|
|
55
|
-
new DegreeDuration(dependencies),
|
|
56
|
-
new DegreeFormat(dependencies),
|
|
57
|
-
new DegreeFormatTuitionFee(dependencies),
|
|
58
|
-
new DegreeSpecialProgrammes(dependencies),
|
|
59
|
-
new DegreeTuitionFee(dependencies),
|
|
60
|
-
new DisciplineContinentAttendance(dependencies),
|
|
61
|
-
new DisciplineCountryAttendance(dependencies),
|
|
62
|
-
new DisciplineCountryFormat(dependencies),
|
|
63
|
-
new Duration(dependencies),
|
|
64
|
-
new Format(dependencies),
|
|
65
|
-
new AttendanceArea(dependencies),
|
|
66
|
-
new AttendanceContinent(dependencies),
|
|
67
|
-
new AttendanceDuration(dependencies),
|
|
68
|
-
new AttendanceFormat(dependencies),
|
|
69
|
-
new AttendanceTuitionFee(dependencies),
|
|
70
|
-
new ContinentDuration(dependencies),
|
|
71
|
-
new ContinentFormat(dependencies),
|
|
72
|
-
new ContinentSpecialProgrammes(dependencies),
|
|
73
|
-
];
|
|
74
|
-
}
|
|
75
|
-
getPolicies() {
|
|
76
|
-
return this.policies;
|
|
77
|
-
}
|
|
78
|
-
async shouldIndex() {
|
|
79
|
-
const results = await Promise.all(this.policies.map((policy) => policy.shouldIndex()));
|
|
80
|
-
return results.some((result) => result);
|
|
81
|
-
}
|
|
82
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from '@studyportals/search-filters';
|
|
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 Area 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,40 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from '@studyportals/search-filters';
|
|
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 { AreaPresenter } from '../../presenters/AreaPresenter';
|
|
7
|
-
export class Area extends ProgrammesBaseIndexabilityPolicy {
|
|
8
|
-
name = 'Area Policy';
|
|
9
|
-
description = 'Controls indexing of pages filtered by geographic areas.';
|
|
10
|
-
filterKeys = [FilterKey.AREA];
|
|
11
|
-
rules = [
|
|
12
|
-
new SingleValueSelectedForFilterRule(FilterKey.AREA),
|
|
13
|
-
new SingleValueSelectedForFilterRule(FilterKey.COUNTRY),
|
|
14
|
-
new OnlyFiltersSelectedRule([FilterKey.AREA, FilterKey.COUNTRY])
|
|
15
|
-
];
|
|
16
|
-
constructor(dependencies) {
|
|
17
|
-
super(dependencies);
|
|
18
|
-
this.initateBaseRules();
|
|
19
|
-
}
|
|
20
|
-
async generateUrls() {
|
|
21
|
-
const areaFragments = AreaPresenter.getInstance().getFragments();
|
|
22
|
-
const paths = [];
|
|
23
|
-
for (const pageNumber of this.indexablePageNumbers) {
|
|
24
|
-
for (const area of areaFragments) {
|
|
25
|
-
const filterKeyValues = new Map([
|
|
26
|
-
[FilterKey.AREA, [area.id]],
|
|
27
|
-
[FilterKey.COUNTRY, [area.countryId]]
|
|
28
|
-
]);
|
|
29
|
-
const result = await this.checkRulesForSitemapWithPageNumber(filterKeyValues, pageNumber);
|
|
30
|
-
if (result) {
|
|
31
|
-
paths.push(this.getPathWithPageNumber(area.path, pageNumber));
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
return paths;
|
|
36
|
-
}
|
|
37
|
-
get filterCombination() {
|
|
38
|
-
return FilterCombinations.AREA;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from '@studyportals/search-filters';
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { OnlineAttendanceRule } from '../../common/rules/OnlineAttendanceRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { IProgrammeSeoDependencies } from '../types/IProgrammeSeoDependencies';
|
|
8
|
-
export declare class Attendance extends ProgrammesBaseIndexabilityPolicy {
|
|
9
|
-
readonly name: string;
|
|
10
|
-
readonly description: string;
|
|
11
|
-
readonly filterKeys: FilterKey[];
|
|
12
|
-
protected readonly rules: (SingleValueSelectedForFilterRule | OnlyFiltersSelectedRule | OnlineAttendanceRule)[];
|
|
13
|
-
constructor(dependencies: IProgrammeSeoDependencies);
|
|
14
|
-
protected generateUrls(): Promise<string[]>;
|
|
15
|
-
get filterCombination(): FilterCombinations;
|
|
16
|
-
}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from '@studyportals/search-filters';
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { OnlineAttendanceRule } from '../../common/rules/OnlineAttendanceRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { AttendancePresenter } from '../../presenters/AttendancePresenter';
|
|
8
|
-
export class Attendance extends ProgrammesBaseIndexabilityPolicy {
|
|
9
|
-
name = 'Attendance Policy';
|
|
10
|
-
description = 'Determines indexing rules for pages filtered by study format (online, on-campus, etc.).';
|
|
11
|
-
filterKeys = [FilterKey.DELIVERY_METHOD];
|
|
12
|
-
rules = [
|
|
13
|
-
new SingleValueSelectedForFilterRule(FilterKey.DELIVERY_METHOD),
|
|
14
|
-
new OnlyFiltersSelectedRule([FilterKey.DELIVERY_METHOD]),
|
|
15
|
-
new OnlineAttendanceRule()
|
|
16
|
-
];
|
|
17
|
-
constructor(dependencies) {
|
|
18
|
-
super(dependencies);
|
|
19
|
-
this.initateBaseRules();
|
|
20
|
-
}
|
|
21
|
-
async generateUrls() {
|
|
22
|
-
const attendanceFragments = AttendancePresenter.getInstance().getFragments();
|
|
23
|
-
const paths = [];
|
|
24
|
-
for (const pageNumber of this.indexablePageNumbers) {
|
|
25
|
-
for (const attendance of attendanceFragments) {
|
|
26
|
-
const filterKeyValues = new Map([[FilterKey.DELIVERY_METHOD, [attendance.id]]]);
|
|
27
|
-
const result = await this.checkRulesForSitemapWithPageNumber(filterKeyValues, pageNumber);
|
|
28
|
-
if (result) {
|
|
29
|
-
paths.push(this.getPathWithPageNumber(attendance.path, pageNumber));
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
return paths;
|
|
34
|
-
}
|
|
35
|
-
get filterCombination() {
|
|
36
|
-
return FilterCombinations.ATTENDANCE;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from '@studyportals/search-filters';
|
|
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
|
-
import { OnlineAttendanceRule } from '../../common/rules/OnlineAttendanceRule';
|
|
8
|
-
export declare class AttendanceArea extends ProgrammesBaseIndexabilityPolicy {
|
|
9
|
-
readonly name: string;
|
|
10
|
-
readonly description: string;
|
|
11
|
-
readonly filterKeys: FilterKey[];
|
|
12
|
-
protected readonly rules: (SingleValueSelectedForFilterRule | OnlyFiltersSelectedRule | OnlineAttendanceRule)[];
|
|
13
|
-
constructor(dependencies: IProgrammeSeoDependencies);
|
|
14
|
-
protected generateUrls(): Promise<string[]>;
|
|
15
|
-
get filterCombination(): FilterCombinations;
|
|
16
|
-
}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from '@studyportals/search-filters';
|
|
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 { AreaPresenter } from '../../presenters/AreaPresenter';
|
|
7
|
-
import { AttendancePresenter } from '../../presenters/AttendancePresenter';
|
|
8
|
-
import { OnlineAttendanceRule } from '../../common/rules/OnlineAttendanceRule';
|
|
9
|
-
export class AttendanceArea extends ProgrammesBaseIndexabilityPolicy {
|
|
10
|
-
name = 'Attendance Area Policy';
|
|
11
|
-
description = 'Controls indexing of pages filtered by geographic areas and attendance type. (Online)';
|
|
12
|
-
filterKeys = [FilterKey.DELIVERY_METHOD, FilterKey.AREA];
|
|
13
|
-
rules = [
|
|
14
|
-
new SingleValueSelectedForFilterRule(FilterKey.AREA),
|
|
15
|
-
new SingleValueSelectedForFilterRule(FilterKey.COUNTRY),
|
|
16
|
-
new SingleValueSelectedForFilterRule(FilterKey.DELIVERY_METHOD),
|
|
17
|
-
new OnlyFiltersSelectedRule([FilterKey.AREA, FilterKey.DELIVERY_METHOD]),
|
|
18
|
-
new OnlineAttendanceRule()
|
|
19
|
-
];
|
|
20
|
-
constructor(dependencies) {
|
|
21
|
-
super(dependencies);
|
|
22
|
-
this.initateBaseRules();
|
|
23
|
-
}
|
|
24
|
-
async generateUrls() {
|
|
25
|
-
const areaFragments = AreaPresenter.getInstance().getFragments();
|
|
26
|
-
const attendanceFragments = AttendancePresenter.getInstance().getFragments();
|
|
27
|
-
const paths = [];
|
|
28
|
-
for (const pageNumber of this.indexablePageNumbers) {
|
|
29
|
-
for (const attendance of attendanceFragments) {
|
|
30
|
-
for (const area of areaFragments) {
|
|
31
|
-
const filterKeyValues = new Map([
|
|
32
|
-
[FilterKey.AREA, [area.id]],
|
|
33
|
-
[FilterKey.COUNTRY, [area.countryId]],
|
|
34
|
-
[FilterKey.DELIVERY_METHOD, [attendance.id]]
|
|
35
|
-
]);
|
|
36
|
-
const result = await this.checkRulesForSitemapWithPageNumber(filterKeyValues, pageNumber);
|
|
37
|
-
if (result) {
|
|
38
|
-
paths.push(this.getPathWithPageNumber(`${attendance.path}/${area.path}`, pageNumber));
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
return paths;
|
|
44
|
-
}
|
|
45
|
-
get filterCombination() {
|
|
46
|
-
return FilterCombinations.ATTENDANCE_AREA;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from '@studyportals/search-filters';
|
|
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
|
-
import { OnlineAttendanceRule } from '../../common/rules/OnlineAttendanceRule';
|
|
8
|
-
export declare class AttendanceContinent extends ProgrammesBaseIndexabilityPolicy {
|
|
9
|
-
readonly name: string;
|
|
10
|
-
readonly description: string;
|
|
11
|
-
readonly filterKeys: FilterKey[];
|
|
12
|
-
protected readonly rules: (SingleValueSelectedForFilterRule | OnlyFiltersSelectedRule | OnlineAttendanceRule)[];
|
|
13
|
-
constructor(dependencies: IProgrammeSeoDependencies);
|
|
14
|
-
protected generateUrls(): Promise<string[]>;
|
|
15
|
-
get filterCombination(): FilterCombinations;
|
|
16
|
-
}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from '@studyportals/search-filters';
|
|
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 { ContinentPresenter } from '../../presenters/ContinentPresenter';
|
|
7
|
-
import { AttendancePresenter } from '../../presenters/AttendancePresenter';
|
|
8
|
-
import { OnlineAttendanceRule } from '../../common/rules/OnlineAttendanceRule';
|
|
9
|
-
export class AttendanceContinent extends ProgrammesBaseIndexabilityPolicy {
|
|
10
|
-
name = 'Attendance Continent Policy';
|
|
11
|
-
description = 'Determines indexing rules for pages filtered by tuition fee and attendance.';
|
|
12
|
-
filterKeys = [FilterKey.CONTINENT, FilterKey.DELIVERY_METHOD];
|
|
13
|
-
rules = [
|
|
14
|
-
new SingleValueSelectedForFilterRule(FilterKey.DELIVERY_METHOD),
|
|
15
|
-
new SingleValueSelectedForFilterRule(FilterKey.CONTINENT),
|
|
16
|
-
new OnlyFiltersSelectedRule([FilterKey.DELIVERY_METHOD, FilterKey.CONTINENT]),
|
|
17
|
-
new OnlineAttendanceRule()
|
|
18
|
-
];
|
|
19
|
-
constructor(dependencies) {
|
|
20
|
-
super(dependencies);
|
|
21
|
-
this.initateBaseRules();
|
|
22
|
-
}
|
|
23
|
-
async generateUrls() {
|
|
24
|
-
const attendanceFragments = AttendancePresenter.getInstance().getFragments();
|
|
25
|
-
const continentFragments = ContinentPresenter.getInstance().getFragments();
|
|
26
|
-
const paths = [];
|
|
27
|
-
for (const pageNumber of this.indexablePageNumbers) {
|
|
28
|
-
for (const attendance of attendanceFragments) {
|
|
29
|
-
for (const continent of continentFragments) {
|
|
30
|
-
const filterKeyValues = new Map([
|
|
31
|
-
[FilterKey.DELIVERY_METHOD, [attendance.id]],
|
|
32
|
-
[FilterKey.CONTINENT, [continent.id]]
|
|
33
|
-
]);
|
|
34
|
-
const result = await this.checkRulesForSitemapWithPageNumber(filterKeyValues, pageNumber);
|
|
35
|
-
if (result) {
|
|
36
|
-
paths.push(this.getPathWithPageNumber(`${attendance.path}/${continent.path}`, pageNumber));
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
return paths;
|
|
42
|
-
}
|
|
43
|
-
get filterCombination() {
|
|
44
|
-
return FilterCombinations.ATTENDANCE_CONTINENT;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from '@studyportals/search-filters';
|
|
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
|
-
import { IndexableDegreeRule } from '../rules/IndexableDegreeRule';
|
|
8
|
-
export declare class AttendanceDegree extends ProgrammesBaseIndexabilityPolicy {
|
|
9
|
-
readonly name: string;
|
|
10
|
-
readonly description: string;
|
|
11
|
-
readonly filterKeys: FilterKey[];
|
|
12
|
-
protected readonly rules: (SingleValueSelectedForFilterRule | OnlyFiltersSelectedRule | IndexableDegreeRule)[];
|
|
13
|
-
constructor(dependencies: IProgrammeSeoDependencies);
|
|
14
|
-
protected generateUrls(): Promise<string[]>;
|
|
15
|
-
get filterCombination(): FilterCombinations;
|
|
16
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from '@studyportals/search-filters';
|
|
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 { AttendancePresenter } from '../../presenters/AttendancePresenter';
|
|
7
|
-
import { DegreePresenter } from '../../presenters/DegreePresenter';
|
|
8
|
-
import { IndexableDegreeRule } from '../rules/IndexableDegreeRule';
|
|
9
|
-
export class AttendanceDegree extends ProgrammesBaseIndexabilityPolicy {
|
|
10
|
-
name = 'Attendance Degree Type Policy';
|
|
11
|
-
description = 'Determines indexing rules for pages filtered by both study format (online, blended, on-campus, etc.), and degree type prioritizing degrees and formats with demonstrated search demand.';
|
|
12
|
-
filterKeys = [FilterKey.DELIVERY_METHOD, FilterKey.DEGREE_TYPE];
|
|
13
|
-
rules = [
|
|
14
|
-
new SingleValueSelectedForFilterRule(FilterKey.DELIVERY_METHOD),
|
|
15
|
-
new SingleValueSelectedForFilterRule(FilterKey.DEGREE_TYPE),
|
|
16
|
-
new OnlyFiltersSelectedRule([FilterKey.DELIVERY_METHOD, FilterKey.DEGREE_TYPE]),
|
|
17
|
-
new IndexableDegreeRule()
|
|
18
|
-
];
|
|
19
|
-
constructor(dependencies) {
|
|
20
|
-
super(dependencies);
|
|
21
|
-
this.initateBaseRules();
|
|
22
|
-
}
|
|
23
|
-
async generateUrls() {
|
|
24
|
-
const attendanceFragments = AttendancePresenter.getInstance().getFragments();
|
|
25
|
-
const degreeFragments = DegreePresenter.getInstance().getFragments();
|
|
26
|
-
// Allow online and blended learning formats
|
|
27
|
-
const allowedAttendanceIds = ["online", "blended"];
|
|
28
|
-
const allowedAttendances = attendanceFragments.filter(attendance => allowedAttendanceIds.includes(attendance.id));
|
|
29
|
-
const paths = [];
|
|
30
|
-
for (const pageNumber of this.indexablePageNumbers) {
|
|
31
|
-
for (const attendance of allowedAttendances) {
|
|
32
|
-
for (const degree of degreeFragments) {
|
|
33
|
-
const filterKeyValues = new Map([
|
|
34
|
-
[FilterKey.DELIVERY_METHOD, [attendance.id]],
|
|
35
|
-
[FilterKey.DEGREE_TYPE, [degree.id]]
|
|
36
|
-
]);
|
|
37
|
-
const result = await this.checkRulesForSitemapWithPageNumber(filterKeyValues, pageNumber);
|
|
38
|
-
if (result) {
|
|
39
|
-
paths.push(this.getPathWithPageNumber(`${degree.path}/${attendance.path}`, pageNumber));
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
return paths;
|
|
45
|
-
}
|
|
46
|
-
get filterCombination() {
|
|
47
|
-
return FilterCombinations.ATTENDANCE_DEGREE;
|
|
48
|
-
}
|
|
49
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from '@studyportals/search-filters';
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { OnlineAttendanceRule } from '../../common/rules/OnlineAttendanceRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { IProgrammeSeoDependencies } from '../types/IProgrammeSeoDependencies';
|
|
8
|
-
export declare class AttendanceDuration extends ProgrammesBaseIndexabilityPolicy {
|
|
9
|
-
readonly name: string;
|
|
10
|
-
readonly description: string;
|
|
11
|
-
readonly filterKeys: FilterKey[];
|
|
12
|
-
protected readonly rules: (SingleValueSelectedForFilterRule | OnlyFiltersSelectedRule | OnlineAttendanceRule)[];
|
|
13
|
-
constructor(dependencies: IProgrammeSeoDependencies);
|
|
14
|
-
protected generateUrls(): Promise<string[]>;
|
|
15
|
-
get filterCombination(): FilterCombinations;
|
|
16
|
-
}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from '@studyportals/search-filters';
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { OnlineAttendanceRule } from '../../common/rules/OnlineAttendanceRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { AttendancePresenter } from '../../presenters/AttendancePresenter';
|
|
8
|
-
import { DurationPresenter } from '../../presenters/DurationPresenter';
|
|
9
|
-
export class AttendanceDuration extends ProgrammesBaseIndexabilityPolicy {
|
|
10
|
-
name = 'Attendance Duration Type Policy';
|
|
11
|
-
description = 'Determines indexing rules for pages filtered by both study format (online, on-campus, etc.), and duration prioritizing durations and formats with demonstrated search demand.';
|
|
12
|
-
filterKeys = [FilterKey.DELIVERY_METHOD, FilterKey.DURATION];
|
|
13
|
-
rules = [
|
|
14
|
-
new SingleValueSelectedForFilterRule(FilterKey.DELIVERY_METHOD),
|
|
15
|
-
new SingleValueSelectedForFilterRule(FilterKey.DURATION),
|
|
16
|
-
new OnlyFiltersSelectedRule([FilterKey.DELIVERY_METHOD, FilterKey.DURATION]),
|
|
17
|
-
new OnlineAttendanceRule()
|
|
18
|
-
];
|
|
19
|
-
constructor(dependencies) {
|
|
20
|
-
super(dependencies);
|
|
21
|
-
this.initateBaseRules();
|
|
22
|
-
}
|
|
23
|
-
async generateUrls() {
|
|
24
|
-
const attendanceFragments = AttendancePresenter.getInstance().getFragments();
|
|
25
|
-
const durationFragments = DurationPresenter.getInstance().getFragments();
|
|
26
|
-
const paths = [];
|
|
27
|
-
const allowedDurationIds = ["[360,360]"];
|
|
28
|
-
const allowedDurations = durationFragments.filter(duration => allowedDurationIds.includes(duration.id));
|
|
29
|
-
for (const pageNumber of this.indexablePageNumbers) {
|
|
30
|
-
for (const attendance of attendanceFragments) {
|
|
31
|
-
for (const duration of allowedDurations) {
|
|
32
|
-
const filterKeyValues = new Map([
|
|
33
|
-
[FilterKey.DELIVERY_METHOD, [attendance.id]],
|
|
34
|
-
[FilterKey.DURATION, [duration.id]]
|
|
35
|
-
]);
|
|
36
|
-
const result = await this.checkRulesForSitemapWithPageNumber(filterKeyValues, pageNumber);
|
|
37
|
-
if (result) {
|
|
38
|
-
paths.push(this.getPathWithPageNumber(`${attendance.path}/${duration.path}`, pageNumber));
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
return paths;
|
|
44
|
-
}
|
|
45
|
-
get filterCombination() {
|
|
46
|
-
return FilterCombinations.ATTENDANCE_DURATION;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from '@studyportals/search-filters';
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { OnlineAttendanceRule } from '../../common/rules/OnlineAttendanceRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { IProgrammeSeoDependencies } from '../types/IProgrammeSeoDependencies';
|
|
8
|
-
export declare class AttendanceFormat extends ProgrammesBaseIndexabilityPolicy {
|
|
9
|
-
readonly name: string;
|
|
10
|
-
readonly description: string;
|
|
11
|
-
readonly filterKeys: FilterKey[];
|
|
12
|
-
protected readonly rules: (SingleValueSelectedForFilterRule | OnlyFiltersSelectedRule | OnlineAttendanceRule)[];
|
|
13
|
-
constructor(dependencies: IProgrammeSeoDependencies);
|
|
14
|
-
protected generateUrls(): Promise<string[]>;
|
|
15
|
-
get filterCombination(): FilterCombinations;
|
|
16
|
-
}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from '@studyportals/search-filters';
|
|
2
|
-
import { OnlyFiltersSelectedRule } from '../../common/rules/OnlyFiltersSelectedRule';
|
|
3
|
-
import { SingleValueSelectedForFilterRule } from '../../common/rules/SingleValueSelectedForFilterRule';
|
|
4
|
-
import { FilterCombinations } from '../../enums/FilterCombinations';
|
|
5
|
-
import { OnlineAttendanceRule } from '../../common/rules/OnlineAttendanceRule';
|
|
6
|
-
import { ProgrammesBaseIndexabilityPolicy } from '../ProgrammesBaseIndexabilityPolicy';
|
|
7
|
-
import { AttendancePresenter } from '../../presenters/AttendancePresenter';
|
|
8
|
-
import { FormatPresenter } from '../../presenters/FormatPresenter';
|
|
9
|
-
export class AttendanceFormat extends ProgrammesBaseIndexabilityPolicy {
|
|
10
|
-
name = 'Attendance Format Type Policy';
|
|
11
|
-
description = 'Determines indexing rules for pages filtered by both study format (online, on-campus, etc.), and format prioritizing formats and formats with demonstrated search demand.';
|
|
12
|
-
filterKeys = [FilterKey.DELIVERY_METHOD, FilterKey.DURATION];
|
|
13
|
-
rules = [
|
|
14
|
-
new SingleValueSelectedForFilterRule(FilterKey.DELIVERY_METHOD),
|
|
15
|
-
new SingleValueSelectedForFilterRule(FilterKey.ATTENDANCE),
|
|
16
|
-
new OnlyFiltersSelectedRule([FilterKey.DELIVERY_METHOD, FilterKey.ATTENDANCE]),
|
|
17
|
-
new OnlineAttendanceRule()
|
|
18
|
-
];
|
|
19
|
-
constructor(dependencies) {
|
|
20
|
-
super(dependencies);
|
|
21
|
-
this.initateBaseRules();
|
|
22
|
-
}
|
|
23
|
-
async generateUrls() {
|
|
24
|
-
const attendanceFragments = AttendancePresenter.getInstance().getFragments();
|
|
25
|
-
const formatFragments = FormatPresenter.getInstance().getFragments();
|
|
26
|
-
const allowedFormatIds = ["parttime", "fulltime"];
|
|
27
|
-
const allowedFormats = formatFragments.filter(format => allowedFormatIds.includes(format.id));
|
|
28
|
-
const paths = [];
|
|
29
|
-
for (const pageNumber of this.indexablePageNumbers) {
|
|
30
|
-
for (const attendance of attendanceFragments) {
|
|
31
|
-
for (const format of allowedFormats) {
|
|
32
|
-
const filterKeyValues = new Map([
|
|
33
|
-
[FilterKey.DELIVERY_METHOD, [attendance.id]],
|
|
34
|
-
[FilterKey.ATTENDANCE, [format.id]]
|
|
35
|
-
]);
|
|
36
|
-
const result = await this.checkRulesForSitemapWithPageNumber(filterKeyValues, pageNumber);
|
|
37
|
-
if (result) {
|
|
38
|
-
paths.push(this.getPathWithPageNumber(`${attendance.path}/${format.path}`, pageNumber));
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
return paths;
|
|
44
|
-
}
|
|
45
|
-
get filterCombination() {
|
|
46
|
-
return FilterCombinations.ATTENDANCE_FORMAT;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { FilterKey } from '@studyportals/search-filters';
|
|
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
|
-
import { OnlineAttendanceRule } from '../../common/rules/OnlineAttendanceRule';
|
|
8
|
-
export declare class AttendanceTuitionFee extends ProgrammesBaseIndexabilityPolicy {
|
|
9
|
-
readonly name: string;
|
|
10
|
-
readonly description: string;
|
|
11
|
-
readonly filterKeys: FilterKey[];
|
|
12
|
-
protected readonly rules: (SingleValueSelectedForFilterRule | OnlyFiltersSelectedRule | OnlineAttendanceRule)[];
|
|
13
|
-
constructor(dependencies: IProgrammeSeoDependencies);
|
|
14
|
-
protected generateUrls(): Promise<string[]>;
|
|
15
|
-
get filterCombination(): FilterCombinations;
|
|
16
|
-
}
|