@sitecore/sc-contenthub-webclient-sdk 1.2.0 → 1.2.2
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/clients/entity-definitions-client.d.ts +17 -14
- package/dist/clients/entity-definitions-client.js +17 -12
- package/dist/clients/option-list-client.d.ts +3 -2
- package/dist/clients/option-list-client.js +8 -3
- package/dist/contracts/base/related-path.d.ts +1 -1
- package/dist/mappers/related-path-mapper.js +2 -2
- package/package.json +1 -1
|
@@ -11,17 +11,19 @@ export interface IEntityDefinitionsClient {
|
|
|
11
11
|
* @param name - The name of the definition
|
|
12
12
|
* @param includeConditionalMembers - Include conditional members
|
|
13
13
|
* @param loadPermissions - Load permissions for the definition
|
|
14
|
+
* @param cacheSignature - Signature of the cached resources for controlling browser caching
|
|
14
15
|
* @returns Promise which resolves to an {@link IEntityDefinition} or null.
|
|
15
16
|
*/
|
|
16
|
-
getAsync(name: string, includeConditionalMembers?: boolean, loadPermissions?: boolean): NullableResultPromise<IEntityDefinition>;
|
|
17
|
+
getAsync(name: string, includeConditionalMembers?: boolean, loadPermissions?: boolean, cacheSignature?: string): NullableResultPromise<IEntityDefinition>;
|
|
17
18
|
/**
|
|
18
19
|
* Get the {@link IEntityDefinition} instance by the specified id.
|
|
19
20
|
* @param id - The id of the definition
|
|
20
21
|
* @param includeConditionalMembers - Include conditional members
|
|
21
22
|
* @param loadPermissions - Load permissions for the definition
|
|
23
|
+
* @param cacheSignature - Signature of the cached resources for controlling browser caching
|
|
22
24
|
* @returns Promise which resolves to an {@link IEntityDefinition} or null.
|
|
23
25
|
*/
|
|
24
|
-
getAsync(id: number, includeConditionalMembers?: boolean, loadPermissions?: boolean): NullableResultPromise<IEntityDefinition>;
|
|
26
|
+
getAsync(id: number, includeConditionalMembers?: boolean, loadPermissions?: boolean, cacheSignature?: string): NullableResultPromise<IEntityDefinition>;
|
|
25
27
|
/**
|
|
26
28
|
* Get all the {@link IEntityDefinition}s.
|
|
27
29
|
* @param includeConditionalMembers - Include conditional members
|
|
@@ -41,14 +43,15 @@ export interface IEntityDefinitionsClient {
|
|
|
41
43
|
* @param name - The name of the definition
|
|
42
44
|
* @param includeConditionalMembers - Include conditional members
|
|
43
45
|
* @param loadPermissions - Load permissions for the definition
|
|
46
|
+
* @param cacheSignature - Signature of the cached resources for controlling browser caching
|
|
44
47
|
* @returns Promise which resolves to an {@link IEntityDefinition} or null.
|
|
45
48
|
*/
|
|
46
|
-
getCachedAsync(name: string, includeConditionalMembers?: boolean, loadPermissions?: boolean): NullableResultPromise<IEntityDefinition>;
|
|
47
|
-
getCachedAsync(id: number, includeConditionalMembers?: boolean, loadPermissions?: boolean): NullableResultPromise<IEntityDefinition>;
|
|
48
|
-
getNameAsync(id: number): NullableResultPromise<string>;
|
|
49
|
-
getNameCachedAsync(id: number): NullableResultPromise<string>;
|
|
50
|
-
getIdAsync(name: string): NullableResultPromise<number>;
|
|
51
|
-
getIdCachedAsync(name: string): NullableResultPromise<number>;
|
|
49
|
+
getCachedAsync(name: string, includeConditionalMembers?: boolean, loadPermissions?: boolean, cacheSignature?: string): NullableResultPromise<IEntityDefinition>;
|
|
50
|
+
getCachedAsync(id: number, includeConditionalMembers?: boolean, loadPermissions?: boolean, cacheSignature?: string): NullableResultPromise<IEntityDefinition>;
|
|
51
|
+
getNameAsync(id: number, cacheSignature?: string): NullableResultPromise<string>;
|
|
52
|
+
getNameCachedAsync(id: number, cacheSignature?: string): NullableResultPromise<string>;
|
|
53
|
+
getIdAsync(name: string, cacheSignature?: string): NullableResultPromise<number>;
|
|
54
|
+
getIdCachedAsync(name: string, cacheSignature?: string): NullableResultPromise<number>;
|
|
52
55
|
/**
|
|
53
56
|
* Get multiple entity definitions.
|
|
54
57
|
* @param names - Names of the definitions to fetch
|
|
@@ -100,12 +103,12 @@ export declare class EntityDefinitionsClient implements IEntityDefinitionsClient
|
|
|
100
103
|
constructor(client: IExtendedContentHubClient);
|
|
101
104
|
getAllCachedAsync(includeConditionalMembers?: boolean, loadPermissions?: boolean): Promise<Array<IEntityDefinition>>;
|
|
102
105
|
getAllAsync(includeConditionalMembers?: boolean, loadPermissions?: boolean): Promise<Array<IEntityDefinition>>;
|
|
103
|
-
getAsync(param: string | number, includeConditionalMembers?: boolean, loadPermissions?: boolean): NullableResultPromise<IEntityDefinition>;
|
|
104
|
-
getCachedAsync(param: string | number, includeConditionalMembers?: boolean, loadPermissions?: boolean): NullableResultPromise<IEntityDefinition>;
|
|
105
|
-
getNameAsync(id: number): NullableResultPromise<string>;
|
|
106
|
-
getNameCachedAsync(id: number): NullableResultPromise<string>;
|
|
107
|
-
getIdAsync(name: string): NullableResultPromise<number>;
|
|
108
|
-
getIdCachedAsync(name: string): NullableResultPromise<number>;
|
|
106
|
+
getAsync(param: string | number, includeConditionalMembers?: boolean, loadPermissions?: boolean, cacheSignature?: string): NullableResultPromise<IEntityDefinition>;
|
|
107
|
+
getCachedAsync(param: string | number, includeConditionalMembers?: boolean, loadPermissions?: boolean, cacheSignature?: string): NullableResultPromise<IEntityDefinition>;
|
|
108
|
+
getNameAsync(id: number, cacheSignature?: string): NullableResultPromise<string>;
|
|
109
|
+
getNameCachedAsync(id: number, cacheSignature?: string): NullableResultPromise<string>;
|
|
110
|
+
getIdAsync(name: string, cacheSignature?: string): NullableResultPromise<number>;
|
|
111
|
+
getIdCachedAsync(name: string, cacheSignature?: string): NullableResultPromise<number>;
|
|
109
112
|
getManyAsync(param: Array<string> | Array<number>, includeConditionalMembers?: boolean, loadPermissions?: boolean): Promise<Array<IEntityDefinition>>;
|
|
110
113
|
getManyCachedAsync(param: Array<string> | Array<number>, includeConditionalMembers?: boolean, loadPermissions?: boolean): Promise<Array<IEntityDefinition>>;
|
|
111
114
|
getNamesAsync(ids: Array<number>): Promise<MapNumberTo<string>>;
|
|
@@ -15,6 +15,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
15
15
|
exports.EntityDefinitionsClient = void 0;
|
|
16
16
|
const http_status_codes_1 = require("http-status-codes");
|
|
17
17
|
const ta_json_1 = require("ta-json");
|
|
18
|
+
const urijs_1 = __importDefault(require("urijs"));
|
|
18
19
|
const entity_definition_cache_1 = require("../caches/entity-definition-cache");
|
|
19
20
|
const entity_definition_id_iterator_1 = require("../contracts/querying/entity-definition-id-iterator");
|
|
20
21
|
const entity_definition_id_query_result_1 = require("../contracts/querying/entity-definition-id-query-result");
|
|
@@ -27,7 +28,6 @@ const entity_definition_resource_1 = require("../models/entity-definition-resour
|
|
|
27
28
|
const type_guards_1 = require("../type-guards");
|
|
28
29
|
const array_utilities_1 = require("../utilities/array-utilities");
|
|
29
30
|
const response_handler_1 = require("./response-handler");
|
|
30
|
-
const urijs_1 = __importDefault(require("urijs"));
|
|
31
31
|
const api_1 = require("../constants/api");
|
|
32
32
|
class EntityDefinitionsClient {
|
|
33
33
|
constructor(client) {
|
|
@@ -50,54 +50,59 @@ class EntityDefinitionsClient {
|
|
|
50
50
|
return allEntityDefinitions;
|
|
51
51
|
});
|
|
52
52
|
}
|
|
53
|
-
getAsync(param, includeConditionalMembers = true, loadPermissions) {
|
|
53
|
+
getAsync(param, includeConditionalMembers = true, loadPermissions, cacheSignature) {
|
|
54
54
|
return __awaiter(this, void 0, void 0, function* () {
|
|
55
55
|
guard_1.default.notNullOrUndefined(param);
|
|
56
56
|
const link = yield this._client.linkHelper.definitionToLinkAsync(param, includeConditionalMembers, loadPermissions);
|
|
57
|
+
const uri = new urijs_1.default(link.href);
|
|
58
|
+
if (cacheSignature && !uri.hasQuery("after")) {
|
|
59
|
+
uri.addQuery("after", cacheSignature);
|
|
60
|
+
link.href = uri.toString();
|
|
61
|
+
}
|
|
57
62
|
return this.getDefinitionAsync(link);
|
|
58
63
|
});
|
|
59
64
|
}
|
|
60
|
-
getCachedAsync(param, includeConditionalMembers = true, loadPermissions) {
|
|
65
|
+
getCachedAsync(param, includeConditionalMembers = true, loadPermissions, cacheSignature) {
|
|
61
66
|
return __awaiter(this, void 0, void 0, function* () {
|
|
62
67
|
guard_1.default.notNullOrUndefined(param);
|
|
63
68
|
let definitionPromise = this._cache.getAsync(param, includeConditionalMembers, loadPermissions);
|
|
64
69
|
if (!definitionPromise) {
|
|
65
|
-
definitionPromise = this.getAsync(param, includeConditionalMembers, loadPermissions);
|
|
70
|
+
definitionPromise = this.getAsync(param, includeConditionalMembers, loadPermissions, cacheSignature);
|
|
66
71
|
this._cache.loadAsync(param, definitionPromise, includeConditionalMembers, loadPermissions);
|
|
67
72
|
}
|
|
68
73
|
return definitionPromise;
|
|
69
74
|
});
|
|
70
75
|
}
|
|
71
|
-
getNameAsync(id) {
|
|
76
|
+
getNameAsync(id, cacheSignature) {
|
|
72
77
|
return __awaiter(this, void 0, void 0, function* () {
|
|
73
78
|
guard_1.default.validId(id);
|
|
74
|
-
const definition = yield this.getAsync(id);
|
|
79
|
+
const definition = yield this.getAsync(id, undefined, undefined, cacheSignature);
|
|
75
80
|
return definition && definition.name;
|
|
76
81
|
});
|
|
77
82
|
}
|
|
78
|
-
getNameCachedAsync(id) {
|
|
83
|
+
getNameCachedAsync(id, cacheSignature) {
|
|
79
84
|
return __awaiter(this, void 0, void 0, function* () {
|
|
80
85
|
guard_1.default.validId(id);
|
|
81
86
|
let definition = this._cache.get(id);
|
|
82
87
|
if (!definition) {
|
|
83
|
-
definition = yield this.getAsync(id);
|
|
88
|
+
definition = yield this.getAsync(id, undefined, undefined, cacheSignature);
|
|
84
89
|
}
|
|
85
90
|
return definition && definition.name;
|
|
86
91
|
});
|
|
87
92
|
}
|
|
88
|
-
getIdAsync(name) {
|
|
93
|
+
getIdAsync(name, cacheSignature) {
|
|
89
94
|
return __awaiter(this, void 0, void 0, function* () {
|
|
90
95
|
guard_1.default.stringNotNullOrEmpty(name);
|
|
91
|
-
const definition = yield this.getAsync(name);
|
|
96
|
+
const definition = yield this.getAsync(name, undefined, undefined, cacheSignature);
|
|
92
97
|
return definition && definition.id;
|
|
93
98
|
});
|
|
94
99
|
}
|
|
95
|
-
getIdCachedAsync(name) {
|
|
100
|
+
getIdCachedAsync(name, cacheSignature) {
|
|
96
101
|
return __awaiter(this, void 0, void 0, function* () {
|
|
97
102
|
guard_1.default.stringNotNullOrEmpty(name);
|
|
98
103
|
let definition = this._cache.get(name);
|
|
99
104
|
if (!definition) {
|
|
100
|
-
definition = yield this.getAsync(name);
|
|
105
|
+
definition = yield this.getAsync(name, undefined, undefined, cacheSignature);
|
|
101
106
|
}
|
|
102
107
|
return definition && definition.id;
|
|
103
108
|
});
|
|
@@ -19,8 +19,9 @@ export interface IOptionListClient {
|
|
|
19
19
|
*
|
|
20
20
|
* @param name - the option list name
|
|
21
21
|
* @param cancelCallback - A {@link CancelCallback} that will be placed in an Axios {@link CancelToken} if provided
|
|
22
|
+
* @param cacheSignature - Signature of the cached resources for controlling browser caching
|
|
22
23
|
*/
|
|
23
|
-
getAsync(name: string, cancelCallback?: CancelCallback): NullableResultPromise<IOptionList>;
|
|
24
|
+
getAsync(name: string, cancelCallback?: CancelCallback, cacheSignature?: string): NullableResultPromise<IOptionList>;
|
|
24
25
|
/**
|
|
25
26
|
* Creates a new option list
|
|
26
27
|
*
|
|
@@ -49,7 +50,7 @@ export declare class OptionListClient implements IOptionListClient {
|
|
|
49
50
|
constructor(client: IExtendedContentHubClient);
|
|
50
51
|
getAllNamesAsync(cancelCallback?: CancelCallback): Promise<Array<string>>;
|
|
51
52
|
getAllDescriptionsAsync(cancelCallback?: CancelCallback): Promise<Array<OptionListDescriptionResource>>;
|
|
52
|
-
getAsync(name: string, cancelCallback?: CancelCallback): NullableResultPromise<IOptionList>;
|
|
53
|
+
getAsync(name: string, cancelCallback?: CancelCallback, cacheSignature?: string): NullableResultPromise<IOptionList>;
|
|
53
54
|
createAsync(optionList: IOptionList, cancelCallback?: CancelCallback): Promise<void>;
|
|
54
55
|
updateAsync(optionList: IOptionList, cancelCallback?: CancelCallback): Promise<void>;
|
|
55
56
|
deleteAsync(name: string, cancelCallback?: CancelCallback): Promise<void>;
|
|
@@ -14,6 +14,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.OptionListClient = void 0;
|
|
16
16
|
const ta_json_1 = require("ta-json");
|
|
17
|
+
const urijs_1 = __importDefault(require("urijs"));
|
|
17
18
|
const guard_1 = __importDefault(require("../guard"));
|
|
18
19
|
const option_list_mapper_1 = require("../mappers/option-list-mapper");
|
|
19
20
|
const option_list_collection_resource_1 = __importDefault(require("../models/option-lists/option-list-collection-resource"));
|
|
@@ -41,18 +42,22 @@ class OptionListClient {
|
|
|
41
42
|
return resource.items;
|
|
42
43
|
});
|
|
43
44
|
}
|
|
44
|
-
getAsync(name, cancelCallback) {
|
|
45
|
+
getAsync(name, cancelCallback, cacheSignature) {
|
|
45
46
|
return __awaiter(this, void 0, void 0, function* () {
|
|
46
47
|
guard_1.default.stringNotNullOrEmpty(name);
|
|
47
48
|
const link = yield this._client.linkHelper.dataSourceToLinkAsync(name);
|
|
49
|
+
const uri = new urijs_1.default(link.href);
|
|
50
|
+
if (!uri.hasQuery("after") && cacheSignature) {
|
|
51
|
+
uri.addQuery("after", cacheSignature);
|
|
52
|
+
link.href = uri.toString();
|
|
53
|
+
}
|
|
48
54
|
const response = yield this._client.raw.getAsync(link.href, undefined, cancelCallback);
|
|
49
55
|
if (response.statusCode === 404) {
|
|
50
56
|
return null;
|
|
51
57
|
}
|
|
52
58
|
response_handler_1.ResponseHandler.handleErrors(response);
|
|
53
59
|
const resource = ta_json_1.TaJson.deserialize(response.content, option_list_resource_1.default);
|
|
54
|
-
|
|
55
|
-
return optionList;
|
|
60
|
+
return this._mapper.mapOptionListAsync(resource);
|
|
56
61
|
});
|
|
57
62
|
}
|
|
58
63
|
createAsync(optionList, cancelCallback) {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { MapCultureTo, MapStringTo, Nullable } from "../../base-types";
|
|
3
3
|
export interface IRelatedPath {
|
|
4
4
|
readonly name: string;
|
|
5
|
-
readonly items: ReadonlyArray<IRelatedPathItem
|
|
5
|
+
readonly items: ReadonlyArray<ReadonlyArray<IRelatedPathItem>>;
|
|
6
6
|
}
|
|
7
7
|
export interface IRelatedPathItem {
|
|
8
8
|
readonly values: MapCultureTo<string>;
|
|
@@ -15,12 +15,12 @@ class RelatedPathMapper {
|
|
|
15
15
|
}
|
|
16
16
|
const relatedPath = {
|
|
17
17
|
name: relatedPathName,
|
|
18
|
-
items: values.
|
|
18
|
+
items: values.map(items => items.map(item => ({
|
|
19
19
|
values: item.values,
|
|
20
20
|
definition: item.definition,
|
|
21
21
|
entity: item.entity,
|
|
22
22
|
properties: item.properties || null,
|
|
23
|
-
})),
|
|
23
|
+
}))),
|
|
24
24
|
};
|
|
25
25
|
list.push(relatedPath);
|
|
26
26
|
}
|