@studyportals/fawkes 1.0.1-3 → 1.0.1-7
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/dist/scholarships-seo/index.d.ts +2 -2
- package/dist/src/common/BaseSeoIndexabilityPolicy.d.ts +3 -3
- package/dist/src/common/IFilterSelectionState.d.ts +2 -1
- package/dist/src/common/ISeoFilterState.d.ts +5 -0
- package/dist/src/common/ISeoInfoBase.d.ts +5 -7
- package/dist/src/common/index.d.ts +2 -2
- package/dist/src/organisations/SeoIndexabilityPolicy.d.ts +3 -3
- package/dist/src/organisations/SeoRuleBasedIndexabilityPolicy.d.ts +3 -3
- package/dist/src/scholarships/SearchIndexabilityManager.d.ts +2 -2
- package/dist/src/scholarships/policies/AreaPolicy.d.ts +3 -3
- package/dist/src/scholarships/policies/CountryPolicy.d.ts +3 -3
- package/dist/src/scholarships/policies/DisciplineAreaPolicy.d.ts +3 -3
- package/dist/src/scholarships/policies/DisciplineCountryPolicy.d.ts +3 -3
- package/dist/src/scholarships/policies/DisciplinePolicy.d.ts +3 -3
- package/dist/src/scholarships/policies/UnfilteredPolicy.d.ts +3 -3
- package/dist/src/scholarships/policies/UniversityCountryPolicy.d.ts +3 -3
- package/package.json +2 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export {
|
|
1
|
+
import { ISeoFilterState, ISeoInfoBase } from "../src/common";
|
|
2
|
+
export { ISeoFilterState, ISeoInfoBase };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ISeoFilterState } from "./ISeoFilterState";
|
|
2
2
|
import { IPrettyPathGenerator } from "./IPrettyPathGenerator";
|
|
3
3
|
import { ISeoIndexabilityPolicy } from "./ISeoIndexabilityPolicy";
|
|
4
4
|
import { ISeoInfoBase } from "./ISeoInfoBase";
|
|
5
5
|
export declare abstract class BaseSeoIndexabilityPolicy implements ISeoIndexabilityPolicy, IPrettyPathGenerator {
|
|
6
6
|
protected readonly seoInfoBase: ISeoInfoBase;
|
|
7
|
-
protected readonly filterState:
|
|
8
|
-
constructor(seoInfoBase: ISeoInfoBase, filterState:
|
|
7
|
+
protected readonly filterState: ISeoFilterState;
|
|
8
|
+
constructor(seoInfoBase: ISeoInfoBase, filterState: ISeoFilterState);
|
|
9
9
|
shouldIndex(): Promise<boolean>;
|
|
10
10
|
abstract generatePaths(): string[];
|
|
11
11
|
protected abstract matchesFilters(): Promise<boolean>;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { FilterKey } from "@studyportals/search-filters";
|
|
2
2
|
export interface IFilterSelectionState {
|
|
3
|
-
|
|
3
|
+
getSelectedValuesFor(key: FilterKey): readonly string[];
|
|
4
|
+
getSelectedFilters(): readonly FilterKey[];
|
|
4
5
|
}
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import { FilterKey } from '@studyportals/search-filters';
|
|
2
|
-
import {
|
|
2
|
+
import { ISeoFilterState } from './ISeoFilterState';
|
|
3
3
|
export interface ISeoInfoBase {
|
|
4
|
-
selectionOnlyFor(filterKeys: FilterKey[], filterSelectionState:
|
|
5
|
-
singleSelectionFor(filterKey: FilterKey, filterSelectionState:
|
|
6
|
-
getFilterOptionValueBy(filterKey: FilterKey, filterSelectionState:
|
|
7
|
-
|
|
8
|
-
getSelectionTypeCount(filterSelectionState: IFilterSelectionState): number;
|
|
9
|
-
getSelectedValuesFor(fiterKey: FilterKey, filterSelectionState: IFilterSelectionState): string[];
|
|
4
|
+
selectionOnlyFor(filterKeys: FilterKey[], filterSelectionState: ISeoFilterState): Promise<boolean>;
|
|
5
|
+
singleSelectionFor(filterKey: FilterKey, filterSelectionState: ISeoFilterState): Promise<boolean>;
|
|
6
|
+
getFilterOptionValueBy(filterKey: FilterKey, filterSelectionState: ISeoFilterState): string | null;
|
|
7
|
+
getSelectionTypeCount(filterSelectionState: ISeoFilterState): number;
|
|
10
8
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { ISeoInfoBase } from "./ISeoInfoBase";
|
|
2
|
-
import {
|
|
3
|
-
export { ISeoInfoBase,
|
|
2
|
+
import { ISeoFilterState } from "./ISeoFilterState";
|
|
3
|
+
export { ISeoInfoBase, ISeoFilterState };
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { BaseSeoIndexabilityPolicy } from "../common/BaseSeoIndexabilityPolicy";
|
|
2
|
-
import {
|
|
2
|
+
import { ISeoFilterState } from "../common/ISeoFilterState";
|
|
3
3
|
import { ISeoInfoBase } from "../common/ISeoInfoBase";
|
|
4
4
|
import { IOrganisationsProvider } from "./IOrganisationsProvider";
|
|
5
5
|
import { IRankingApiClient } from "@/sitemap-generator/IRankingApiClient";
|
|
6
6
|
import { ISortState } from "./ISortState";
|
|
7
7
|
export declare abstract class SeoIndexabilityPolicy<T> extends BaseSeoIndexabilityPolicy {
|
|
8
8
|
protected readonly seoInfoBase: ISeoInfoBase;
|
|
9
|
-
protected readonly filterState:
|
|
9
|
+
protected readonly filterState: ISeoFilterState;
|
|
10
10
|
protected readonly organisationsProvider: IOrganisationsProvider<T>;
|
|
11
11
|
protected readonly rankingApiClient: IRankingApiClient;
|
|
12
12
|
protected readonly sortState: ISortState;
|
|
13
|
-
constructor(seoInfoBase: ISeoInfoBase, filterState:
|
|
13
|
+
constructor(seoInfoBase: ISeoInfoBase, filterState: ISeoFilterState, organisationsProvider: IOrganisationsProvider<T>, rankingApiClient: IRankingApiClient, sortState: ISortState);
|
|
14
14
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SeoIndexabilityPolicy } from "@/organisations/SeoIndexabilityPolicy";
|
|
2
|
-
import {
|
|
2
|
+
import { ISeoFilterState } from "@/common/ISeoFilterState";
|
|
3
3
|
import { ISeoInfoBase } from "@/common/ISeoInfoBase";
|
|
4
4
|
import { IOrganisationsProvider } from "@/organisations/IOrganisationsProvider";
|
|
5
5
|
import { IRankingApiClient } from "@/sitemap-generator/IRankingApiClient";
|
|
@@ -7,10 +7,10 @@ import { FilterKeyValuePairs } from "@/organisations/FilterKeyValuePairs";
|
|
|
7
7
|
import { ISortState } from "@/organisations/ISortState";
|
|
8
8
|
export declare abstract class SeoRuleBasedIndexabilityPolicy<T> extends SeoIndexabilityPolicy<T> {
|
|
9
9
|
protected readonly seoInfoBase: ISeoInfoBase;
|
|
10
|
-
protected readonly filterState:
|
|
10
|
+
protected readonly filterState: ISeoFilterState;
|
|
11
11
|
protected readonly organisationsProvider: IOrganisationsProvider<T>;
|
|
12
12
|
protected readonly rankingApiClient: IRankingApiClient;
|
|
13
13
|
protected readonly sortState: ISortState;
|
|
14
|
-
constructor(seoInfoBase: ISeoInfoBase, filterState:
|
|
14
|
+
constructor(seoInfoBase: ISeoInfoBase, filterState: ISeoFilterState, organisationsProvider: IOrganisationsProvider<T>, rankingApiClient: IRankingApiClient, sortState: ISortState);
|
|
15
15
|
protected abstract matchesRule(pairs: FilterKeyValuePairs, ...values: []): boolean;
|
|
16
16
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ISearchPolicyChain } from "@/common/ISearchPolicyChain";
|
|
2
2
|
import { ISeoIndexabilityPolicy } from "@/common/ISeoIndexabilityPolicy";
|
|
3
3
|
import { ISeoInfoBase } from "@/common/ISeoInfoBase";
|
|
4
|
-
import {
|
|
4
|
+
import { ISeoFilterState } from "@/common/ISeoFilterState";
|
|
5
5
|
import { ISearchApplicationState } from "@/common/ISearchApplicationState";
|
|
6
6
|
import { IFilterOptions } from "@/common/IFilterOptions";
|
|
7
7
|
export declare class SearchIndexabilityManager implements ISearchPolicyChain {
|
|
@@ -9,7 +9,7 @@ export declare class SearchIndexabilityManager implements ISearchPolicyChain {
|
|
|
9
9
|
private readonly filterState;
|
|
10
10
|
private readonly applicationState;
|
|
11
11
|
private readonly filterOptions;
|
|
12
|
-
constructor(seoInfoBase: ISeoInfoBase, filterState:
|
|
12
|
+
constructor(seoInfoBase: ISeoInfoBase, filterState: ISeoFilterState, applicationState: ISearchApplicationState, filterOptions: IFilterOptions);
|
|
13
13
|
policies: ISeoIndexabilityPolicy[];
|
|
14
14
|
shouldIndex(): Promise<boolean>;
|
|
15
15
|
}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { BaseSeoIndexabilityPolicy } from '@/common/BaseSeoIndexabilityPolicy';
|
|
2
|
-
import {
|
|
2
|
+
import { ISeoFilterState } from '@/common/ISeoFilterState';
|
|
3
3
|
import { ISeoInfoBase } from '@/common/ISeoInfoBase';
|
|
4
4
|
import { ISeoIndexabilityPolicy } from '@/common/ISeoIndexabilityPolicy';
|
|
5
5
|
import { IFilterOptions } from '@/common/IFilterOptions';
|
|
6
6
|
export declare class AreaPolicy extends BaseSeoIndexabilityPolicy implements ISeoIndexabilityPolicy {
|
|
7
7
|
protected readonly seoInfoBase: ISeoInfoBase;
|
|
8
|
-
protected readonly filterState:
|
|
8
|
+
protected readonly filterState: ISeoFilterState;
|
|
9
9
|
protected readonly filterOptions: IFilterOptions;
|
|
10
10
|
private static readonly AUSTRALIA_CODE;
|
|
11
|
-
constructor(seoInfoBase: ISeoInfoBase, filterState:
|
|
11
|
+
constructor(seoInfoBase: ISeoInfoBase, filterState: ISeoFilterState, filterOptions: IFilterOptions);
|
|
12
12
|
protected matchesFilters(): Promise<boolean>;
|
|
13
13
|
private isPartOfAustralia;
|
|
14
14
|
generatePaths(): string[];
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { BaseSeoIndexabilityPolicy } from '@/common/BaseSeoIndexabilityPolicy';
|
|
2
|
-
import {
|
|
2
|
+
import { ISeoFilterState } from '@/common/ISeoFilterState';
|
|
3
3
|
import { ISeoInfoBase } from '@/common/ISeoInfoBase';
|
|
4
4
|
export declare class CountryPolicy extends BaseSeoIndexabilityPolicy {
|
|
5
5
|
protected readonly seoInfoBase: ISeoInfoBase;
|
|
6
|
-
protected readonly filterState:
|
|
7
|
-
constructor(seoInfoBase: ISeoInfoBase, filterState:
|
|
6
|
+
protected readonly filterState: ISeoFilterState;
|
|
7
|
+
constructor(seoInfoBase: ISeoInfoBase, filterState: ISeoFilterState);
|
|
8
8
|
protected matchesFilters(): Promise<boolean>;
|
|
9
9
|
generatePaths(): string[];
|
|
10
10
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { BaseSeoIndexabilityPolicy } from '@/common/BaseSeoIndexabilityPolicy';
|
|
2
|
-
import {
|
|
2
|
+
import { ISeoFilterState } from '@/common/ISeoFilterState';
|
|
3
3
|
import { ISeoInfoBase } from '@/common/ISeoInfoBase';
|
|
4
4
|
export declare class DisciplineAreaPolicy extends BaseSeoIndexabilityPolicy {
|
|
5
5
|
protected readonly seoInfoBase: ISeoInfoBase;
|
|
6
|
-
protected readonly filterState:
|
|
7
|
-
constructor(seoInfoBase: ISeoInfoBase, filterState:
|
|
6
|
+
protected readonly filterState: ISeoFilterState;
|
|
7
|
+
constructor(seoInfoBase: ISeoInfoBase, filterState: ISeoFilterState);
|
|
8
8
|
protected matchesFilters(): Promise<boolean>;
|
|
9
9
|
generatePaths(): string[];
|
|
10
10
|
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { BaseSeoIndexabilityPolicy } from '@/common/BaseSeoIndexabilityPolicy';
|
|
2
2
|
import { ISearchApplicationState } from '@/common/ISearchApplicationState';
|
|
3
|
-
import {
|
|
3
|
+
import { ISeoFilterState } from '@/common/ISeoFilterState';
|
|
4
4
|
import { ISeoInfoBase } from '@/common/ISeoInfoBase';
|
|
5
5
|
export declare class DisciplineCountryPolicy extends BaseSeoIndexabilityPolicy {
|
|
6
6
|
protected readonly seoInfoBase: ISeoInfoBase;
|
|
7
|
-
protected readonly filterState:
|
|
7
|
+
protected readonly filterState: ISeoFilterState;
|
|
8
8
|
protected readonly applicationState: ISearchApplicationState;
|
|
9
|
-
constructor(seoInfoBase: ISeoInfoBase, filterState:
|
|
9
|
+
constructor(seoInfoBase: ISeoInfoBase, filterState: ISeoFilterState, applicationState: ISearchApplicationState);
|
|
10
10
|
protected matchesFilters(): Promise<boolean>;
|
|
11
11
|
private hasEnoughResults;
|
|
12
12
|
generatePaths(): string[];
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { BaseSeoIndexabilityPolicy } from '@/common/BaseSeoIndexabilityPolicy';
|
|
2
|
-
import {
|
|
2
|
+
import { ISeoFilterState } from '@/common/ISeoFilterState';
|
|
3
3
|
import { ISeoInfoBase } from '@/common/ISeoInfoBase';
|
|
4
4
|
export declare class DisciplinePolicy extends BaseSeoIndexabilityPolicy {
|
|
5
5
|
protected readonly seoInfoBase: ISeoInfoBase;
|
|
6
|
-
protected readonly filterState:
|
|
7
|
-
constructor(seoInfoBase: ISeoInfoBase, filterState:
|
|
6
|
+
protected readonly filterState: ISeoFilterState;
|
|
7
|
+
constructor(seoInfoBase: ISeoInfoBase, filterState: ISeoFilterState);
|
|
8
8
|
protected matchesFilters(): Promise<boolean>;
|
|
9
9
|
generatePaths(): string[];
|
|
10
10
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { ISeoInfoBase } from '@/common/ISeoInfoBase';
|
|
2
|
-
import {
|
|
2
|
+
import { ISeoFilterState } from '@/common/ISeoFilterState';
|
|
3
3
|
import { BaseSeoIndexabilityPolicy } from '@/common/BaseSeoIndexabilityPolicy';
|
|
4
4
|
export declare class UnfilteredPolicy extends BaseSeoIndexabilityPolicy {
|
|
5
5
|
protected readonly seoInfoBase: ISeoInfoBase;
|
|
6
|
-
protected readonly filterState:
|
|
7
|
-
constructor(seoInfoBase: ISeoInfoBase, filterState:
|
|
6
|
+
protected readonly filterState: ISeoFilterState;
|
|
7
|
+
constructor(seoInfoBase: ISeoInfoBase, filterState: ISeoFilterState);
|
|
8
8
|
protected matchesFilters(): Promise<boolean>;
|
|
9
9
|
generatePaths(): string[];
|
|
10
10
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { BaseSeoIndexabilityPolicy } from '@/common/BaseSeoIndexabilityPolicy';
|
|
2
|
-
import {
|
|
2
|
+
import { ISeoFilterState } from '@/common/ISeoFilterState';
|
|
3
3
|
import { ISeoInfoBase } from '@/common/ISeoInfoBase';
|
|
4
4
|
export declare class UniversityCountryPolicy extends BaseSeoIndexabilityPolicy {
|
|
5
5
|
protected readonly seoInfoBase: ISeoInfoBase;
|
|
6
|
-
protected readonly filterState:
|
|
7
|
-
constructor(seoInfoBase: ISeoInfoBase, filterState:
|
|
6
|
+
protected readonly filterState: ISeoFilterState;
|
|
7
|
+
constructor(seoInfoBase: ISeoInfoBase, filterState: ISeoFilterState);
|
|
8
8
|
protected matchesFilters(): Promise<boolean>;
|
|
9
9
|
generatePaths(): string[];
|
|
10
10
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@studyportals/fawkes",
|
|
3
|
-
"version": "1.0.1-
|
|
3
|
+
"version": "1.0.1-7",
|
|
4
4
|
"description": "A package to centralize SEO related logic for SBLP and Sitemap Generator.",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"main": "dist/fawkes.js",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
},
|
|
24
24
|
"exports": {
|
|
25
25
|
"./organisations-search-seo": "./dist/organisations-seo.js",
|
|
26
|
-
"./scholarships-search-seo": "./dist/scholarships-seo.js",
|
|
26
|
+
"./dist/scholarships-search-seo": "./dist/scholarships-seo.js",
|
|
27
27
|
"./sitemap-generator-seo": "./dist/sitemap-generator-seo.js"
|
|
28
28
|
},
|
|
29
29
|
"typesVersions": {
|