@sitecore/sc-contenthub-webclient-sdk 0.9.7 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -0
- package/dist/base-types.d.ts +5 -2
- package/dist/caches/entity-definition-cache.d.ts +14 -1
- package/dist/caches/entity-definition-cache.js +35 -0
- package/dist/clients/aggregates-client.d.ts +19 -0
- package/dist/clients/aggregates-client.js +35 -0
- package/dist/clients/api-client.d.ts +0 -1
- package/dist/clients/api-client.js +7 -9
- package/dist/clients/content-hub-client.d.ts +13 -1
- package/dist/clients/content-hub-client.js +8 -0
- package/dist/clients/entity-definitions-client.js +7 -6
- package/dist/clients/internal-client.js +12 -2
- package/dist/clients/permissions-client.d.ts +16 -0
- package/dist/clients/permissions-client.js +53 -0
- package/dist/clients/raw-client.d.ts +1 -1
- package/dist/clients/request-message.d.ts +1 -1
- package/dist/clients/schema-querying.js +2 -2
- package/dist/clients/search-client.d.ts +9 -0
- package/dist/clients/search-client.js +11 -0
- package/dist/clients/upload-client.d.ts +21 -0
- package/dist/clients/upload-client.js +98 -0
- package/dist/clients/version-checker.d.ts +32 -0
- package/dist/clients/version-checker.js +60 -0
- package/dist/constants/api.d.ts +14 -0
- package/dist/constants/api.js +15 -1
- package/dist/constants/defaults.d.ts +3 -0
- package/dist/constants/defaults.js +4 -1
- package/dist/contracts/base/data-type.d.ts +1 -2
- package/dist/contracts/base/entity-base.d.ts +6 -0
- package/dist/contracts/base/entity-base.js +13 -0
- package/dist/contracts/base/entity-construction-args.d.ts +2 -0
- package/dist/contracts/base/entity-construction-args.js +1 -0
- package/dist/contracts/base/entity-definition.js +1 -1
- package/dist/contracts/base/entity.d.ts +26 -0
- package/dist/contracts/base/entity.js +19 -1
- package/dist/contracts/base/member-group.js +3 -0
- package/dist/contracts/base/property-definitions/string-property-definition.js +1 -1
- package/dist/contracts/base/related-path.d.ts +12 -0
- package/dist/contracts/base/related-path.js +2 -0
- package/dist/contracts/base/relation-definition.d.ts +5 -0
- package/dist/contracts/base/relation-definition.js +4 -0
- package/dist/contracts/base/rendition.d.ts +1 -1
- package/dist/contracts/base/string-content-type.d.ts +4 -4
- package/dist/contracts/base/string-content-type.js +4 -4
- package/dist/contracts/upload/upload-source.d.ts +5 -0
- package/dist/contracts/upload/upload-source.js +2 -0
- package/dist/converters/all-facet-values-children-converter.d.ts +21 -0
- package/dist/converters/all-facet-values-children-converter.js +45 -0
- package/dist/dirty-value-calculator.js +1 -5
- package/dist/error-messages.d.ts +1 -0
- package/dist/error-messages.js +1 -0
- package/dist/link-helper.d.ts +14 -0
- package/dist/link-helper.js +31 -0
- package/dist/link.d.ts +1 -1
- package/dist/link.js +3 -3
- package/dist/mappers/entity-mapper.d.ts +1 -0
- package/dist/mappers/entity-mapper.js +10 -0
- package/dist/mappers/filter-operator-mapper.d.ts +5 -0
- package/dist/mappers/filter-operator-mapper.js +14 -0
- package/dist/mappers/property-mapper.js +2 -11
- package/dist/mappers/related-path-mapper.d.ts +5 -0
- package/dist/mappers/related-path-mapper.js +30 -0
- package/dist/models/aggregate-resources/aggregate-resource.d.ts +14 -0
- package/dist/models/aggregate-resources/aggregate-resource.js +53 -0
- package/dist/models/aggregate-resources/aggregated-entity-resource.d.ts +11 -0
- package/dist/models/aggregate-resources/aggregated-entity-resource.js +30 -0
- package/dist/models/entity-resource.d.ts +3 -0
- package/dist/models/entity-resource.js +12 -0
- package/dist/models/pages/page-resource.d.ts +2 -2
- package/dist/models/pages/page-resource.js +1 -1
- package/dist/models/policies/policy-resource.js +2 -2
- package/dist/models/property-definition-resource.js +1 -1
- package/dist/models/search/all-facet-values-response.d.ts +12 -0
- package/dist/models/search/all-facet-values-response.js +41 -0
- package/dist/models/search/all-facets-request.d.ts +16 -0
- package/dist/models/search/all-facets-request.js +51 -0
- package/dist/models/search/grouped-view-response-resource.js +1 -1
- package/dist/models/search/search-request.d.ts +2 -3
- package/dist/models/search/search-response.d.ts +3 -2
- package/dist/models/search/search-response.js +4 -2
- package/dist/models/upload/array-buffer-upload-source.d.ts +0 -0
- package/dist/models/upload/array-buffer-upload-source.js +16 -0
- package/dist/models/upload/create-upload-response.d.ts +5 -0
- package/dist/models/upload/create-upload-response.js +31 -0
- package/dist/models/upload/http-upload-source.d.ts +11 -0
- package/dist/models/upload/http-upload-source.js +34 -0
- package/dist/models/upload/local-upload-source.d.ts +10 -0
- package/dist/models/upload/local-upload-source.js +49 -0
- package/dist/models/upload/upload-action.d.ts +6 -0
- package/dist/models/upload/upload-action.js +37 -0
- package/dist/models/upload/upload-configuration.d.ts +6 -0
- package/dist/models/upload/upload-configuration.js +37 -0
- package/dist/models/upload/upload-request-wrapper.d.ts +8 -0
- package/dist/models/upload/upload-request-wrapper.js +39 -0
- package/dist/models/upload/upload-request.d.ts +10 -0
- package/dist/models/upload/upload-request.js +18 -0
- package/dist/models/user-entity-permissions-resource.d.ts +14 -0
- package/dist/models/user-entity-permissions-resource.js +69 -0
- package/dist/models/versionining/compatibility.d.ts +17 -0
- package/dist/models/versionining/compatibility.js +21 -0
- package/dist/utilities/array-utilities.d.ts +1 -0
- package/dist/utilities/array-utilities.js +15 -0
- package/package.json +6 -10
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AllFacetValuesChildrenConverter = void 0;
|
|
4
|
+
const ta_json_1 = require("ta-json");
|
|
5
|
+
const invalid_operation_error_1 = require("../errors/invalid-operation-error");
|
|
6
|
+
const facet_response_resource_1 = require("../models/search/facet-response-resource");
|
|
7
|
+
class AllFacetValuesChildrenConverter {
|
|
8
|
+
/**
|
|
9
|
+
* Serializes a mapping of strings to array of FacetResponseResource into a JSON object.
|
|
10
|
+
*
|
|
11
|
+
* @param value - A mapping of strings to array of FacetResponseResource
|
|
12
|
+
*
|
|
13
|
+
* @returns The serialized value.
|
|
14
|
+
*/
|
|
15
|
+
serialize(children) {
|
|
16
|
+
const result = Object.keys(children).reduce((serialized, key) => {
|
|
17
|
+
var _a;
|
|
18
|
+
const entries = (_a = children[key]) === null || _a === void 0 ? void 0 : _a.map(entry => ta_json_1.TaJson.serialize(entry));
|
|
19
|
+
return Object.assign(Object.assign({}, serialized), { [key]: entries });
|
|
20
|
+
}, {});
|
|
21
|
+
return result;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Deserializes a JSON object into a mapping of strings to array of FacetResponseResource.
|
|
25
|
+
*
|
|
26
|
+
* @param value - The serialized value
|
|
27
|
+
*
|
|
28
|
+
* @returns A mapping of strings to array of FacetResponseResource.
|
|
29
|
+
*/
|
|
30
|
+
deserialize(value) {
|
|
31
|
+
if (!value) {
|
|
32
|
+
return {};
|
|
33
|
+
}
|
|
34
|
+
else if (typeof value !== "object") {
|
|
35
|
+
throw new invalid_operation_error_1.InvalidOperationError(`Expected a value of type 'JSON object', but value was of type '${typeof value}'.`);
|
|
36
|
+
}
|
|
37
|
+
const result = Object.keys(value).reduce((current, key) => {
|
|
38
|
+
var _a;
|
|
39
|
+
const entries = (_a = value[key]) === null || _a === void 0 ? void 0 : _a.map(entry => ta_json_1.TaJson.deserialize(entry, facet_response_resource_1.FacetResponseResource));
|
|
40
|
+
return Object.assign(Object.assign({}, current), { [key]: entries });
|
|
41
|
+
}, {});
|
|
42
|
+
return result;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.AllFacetValuesChildrenConverter = AllFacetValuesChildrenConverter;
|
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const json_stable_stringify_1 = __importDefault(require("json-stable-stringify"));
|
|
7
3
|
class DirtyValueCalculator {
|
|
8
4
|
setOriginalValue(value) {
|
|
9
5
|
this._originalHashValue = this.computeHash(value);
|
|
@@ -12,7 +8,7 @@ class DirtyValueCalculator {
|
|
|
12
8
|
return this.computeHash(currentValue) !== this._originalHashValue;
|
|
13
9
|
}
|
|
14
10
|
computeHash(value) {
|
|
15
|
-
return this.getStringHash(`${typeof value}_${
|
|
11
|
+
return this.getStringHash(`${typeof value}_${JSON.stringify(value)}`);
|
|
16
12
|
}
|
|
17
13
|
getStringHash(str) {
|
|
18
14
|
let hash1 = 5381;
|
package/dist/error-messages.d.ts
CHANGED
package/dist/error-messages.js
CHANGED
|
@@ -8,6 +8,7 @@ ErrorMessages.ContentHubClient = Object.freeze({
|
|
|
8
8
|
IncompatibleMinimumVersion: "The JavaScript SDK version ({0}) and server version ({1}) are incompatible. Server requires SDK version of minimum '{2}'.",
|
|
9
9
|
IncompatibleVersion: "The JavaScript SDK version ({0}) and server version ({1}) are incompatible because the SDK is newer than the server. " +
|
|
10
10
|
"Please use an older version of the SDK.",
|
|
11
|
+
NotSupportedFeature: "This feature is not supported in Content Hub version '{0}'. It was introduced in version '{1}'.",
|
|
11
12
|
});
|
|
12
13
|
ErrorMessages.QueryingClient = Object.freeze({
|
|
13
14
|
MultipleResultsWhenOneExpected: "Server returned multiple entities, when only one was expected.",
|
package/dist/link-helper.d.ts
CHANGED
|
@@ -131,6 +131,13 @@ export interface ILinkHelper {
|
|
|
131
131
|
* @returns Link to the permissions for entity.
|
|
132
132
|
*/
|
|
133
133
|
permissionsForEntityToLinkAsync(id: number): Promise<Link>;
|
|
134
|
+
/**
|
|
135
|
+
* Creates a link to the permissions for entity endpoint.
|
|
136
|
+
* @param id - The entity id
|
|
137
|
+
* @param userId - The user id
|
|
138
|
+
* @returns Link to the permissions for entity.
|
|
139
|
+
*/
|
|
140
|
+
explainUserPermissionsForEntityToLinkAsync(id: number, userId: number): Promise<Link>;
|
|
134
141
|
/**
|
|
135
142
|
* Gets the link to set the password of the specified user.
|
|
136
143
|
*
|
|
@@ -173,6 +180,9 @@ export interface ILinkHelper {
|
|
|
173
180
|
*/
|
|
174
181
|
pageResourceToLinkAsync(page: string | number, culture: CultureInfo): Promise<Link>;
|
|
175
182
|
searchLinkAsync(): Promise<Readonly<Link>>;
|
|
183
|
+
allFacetsAsync(): Promise<Readonly<Link>>;
|
|
184
|
+
createUploadToLinkAsync(): Promise<Readonly<Link>>;
|
|
185
|
+
finalizeUploadToLinkAsync(): Promise<Readonly<Link>>;
|
|
176
186
|
}
|
|
177
187
|
export declare class LinkHelper implements ILinkHelper {
|
|
178
188
|
private readonly _client;
|
|
@@ -193,6 +203,7 @@ export declare class LinkHelper implements ILinkHelper {
|
|
|
193
203
|
identifierFromEntityAsync(link: Link): NullableResultPromise<string>;
|
|
194
204
|
entitiesLinkAsync(): Promise<Readonly<Link>>;
|
|
195
205
|
permissionsForEntityToLinkAsync(id: number): Promise<Link>;
|
|
206
|
+
explainUserPermissionsForEntityToLinkAsync(id: number, userId: number): Promise<Link>;
|
|
196
207
|
setUserPasswordToLinkAsync(userId: number): Promise<Link>;
|
|
197
208
|
resetPasswordToLinkAsync(userId: number): Promise<Link>;
|
|
198
209
|
policyToLinkAsync(id: number): Promise<Link>;
|
|
@@ -203,6 +214,9 @@ export declare class LinkHelper implements ILinkHelper {
|
|
|
203
214
|
aggregateToLinkAsync(aggregateName: string, entityId: number, culture?: CultureInfo, loadPermissions?: boolean): Promise<Link>;
|
|
204
215
|
pageResourceToLinkAsync(page: string | number, culture: CultureInfo): Promise<Link>;
|
|
205
216
|
searchLinkAsync(): Promise<Readonly<Link>>;
|
|
217
|
+
allFacetsAsync(): Promise<Readonly<Link>>;
|
|
218
|
+
createUploadToLinkAsync(): Promise<Readonly<Link>>;
|
|
219
|
+
finalizeUploadToLinkAsync(): Promise<Readonly<Link>>;
|
|
206
220
|
private getVariableValueAsync;
|
|
207
221
|
private bindAsync;
|
|
208
222
|
private static applyEntityDefinitionVariables;
|
package/dist/link-helper.js
CHANGED
|
@@ -210,6 +210,17 @@ class LinkHelper {
|
|
|
210
210
|
return this.bindAsync(api_1.PERMISSIONS_FOR_ENTITY.templateName, api_1.PERMISSIONS_FOR_ENTITY.id, id.toString());
|
|
211
211
|
});
|
|
212
212
|
}
|
|
213
|
+
explainUserPermissionsForEntityToLinkAsync(id, userId) {
|
|
214
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
215
|
+
guard_1.default.validId(id);
|
|
216
|
+
guard_1.default.validId(userId);
|
|
217
|
+
const variables = {
|
|
218
|
+
[api_1.EXPLAIN_USER_PERMISSIONS_FOR_ENTITY.id]: id.toString(),
|
|
219
|
+
[api_1.EXPLAIN_USER_PERMISSIONS_FOR_ENTITY.userId]: userId.toString(),
|
|
220
|
+
};
|
|
221
|
+
return this.bindAsync(api_1.EXPLAIN_USER_PERMISSIONS_FOR_ENTITY.templateName, variables);
|
|
222
|
+
});
|
|
223
|
+
}
|
|
213
224
|
//#endregion
|
|
214
225
|
//#region Passwords
|
|
215
226
|
setUserPasswordToLinkAsync(userId) {
|
|
@@ -321,6 +332,26 @@ class LinkHelper {
|
|
|
321
332
|
return routes[api_1.SEARCH.templateName];
|
|
322
333
|
});
|
|
323
334
|
}
|
|
335
|
+
allFacetsAsync() {
|
|
336
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
337
|
+
const routes = yield this._client.api.getApiRoutesAsync();
|
|
338
|
+
return routes[api_1.ALL_FACETS.templateName];
|
|
339
|
+
});
|
|
340
|
+
}
|
|
341
|
+
//#endregion
|
|
342
|
+
//#region Upload
|
|
343
|
+
createUploadToLinkAsync() {
|
|
344
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
345
|
+
const routes = yield this._client.api.getApiRoutesAsync();
|
|
346
|
+
return routes[api_1.UPLOAD.templateName];
|
|
347
|
+
});
|
|
348
|
+
}
|
|
349
|
+
finalizeUploadToLinkAsync() {
|
|
350
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
351
|
+
const routes = yield this._client.api.getApiRoutesAsync();
|
|
352
|
+
return routes[api_1.UPLOAD_FINALIZE.templateName];
|
|
353
|
+
});
|
|
354
|
+
}
|
|
324
355
|
//#endregion
|
|
325
356
|
getVariableValueAsync(link, templateName, variable) {
|
|
326
357
|
return __awaiter(this, void 0, void 0, function* () {
|
package/dist/link.d.ts
CHANGED
package/dist/link.js
CHANGED
|
@@ -13,7 +13,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
13
13
|
};
|
|
14
14
|
var Link_1;
|
|
15
15
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
-
const
|
|
16
|
+
const urijs_1 = __importDefault(require("urijs"));
|
|
17
17
|
const ta_json_1 = require("ta-json");
|
|
18
18
|
const guard_1 = __importDefault(require("./guard"));
|
|
19
19
|
let Link = Link_1 = class Link {
|
|
@@ -34,8 +34,8 @@ let Link = Link_1 = class Link {
|
|
|
34
34
|
guard_1.default.notNullOrUndefined(template);
|
|
35
35
|
guard_1.default.stringNotNullOrEmpty(variable);
|
|
36
36
|
guard_1.default.stringNotNullOrEmpty(this.href);
|
|
37
|
-
const templateUri = new
|
|
38
|
-
const currentUri = new
|
|
37
|
+
const templateUri = new urijs_1.default(template.href);
|
|
38
|
+
const currentUri = new urijs_1.default(this.href);
|
|
39
39
|
const index = templateUri
|
|
40
40
|
.path()
|
|
41
41
|
.split("/")
|
|
@@ -8,6 +8,7 @@ export declare class EntityMapper {
|
|
|
8
8
|
private readonly _propertyMapper;
|
|
9
9
|
private readonly _relationMapper;
|
|
10
10
|
private readonly _renditionMapper;
|
|
11
|
+
private readonly _relatedPathMapper;
|
|
11
12
|
private readonly _creator;
|
|
12
13
|
constructor(client: IExtendedContentHubClient);
|
|
13
14
|
mapEntityAsync(resource: EntityResource, schema?: MinimalSchema): Promise<IEntity>;
|
|
@@ -18,6 +18,7 @@ const entity_construction_args_1 = require("../contracts/base/entity-constructio
|
|
|
18
18
|
const guard_1 = __importDefault(require("../guard"));
|
|
19
19
|
const entity_resource_1 = require("../models/entity-resource");
|
|
20
20
|
const property_mapper_1 = require("./property-mapper");
|
|
21
|
+
const related_path_mapper_1 = require("./related-path-mapper");
|
|
21
22
|
const relation_mapper_1 = require("./relation-mapper");
|
|
22
23
|
const rendition_mapper_1 = require("./rendition-mapper");
|
|
23
24
|
const typed_entity_creator_1 = require("./typed-entity-creator");
|
|
@@ -28,6 +29,7 @@ class EntityMapper {
|
|
|
28
29
|
this._propertyMapper = new property_mapper_1.PropertyMapper(client);
|
|
29
30
|
this._relationMapper = new relation_mapper_1.RelationMapper(client);
|
|
30
31
|
this._renditionMapper = new rendition_mapper_1.RenditionMapper(client);
|
|
32
|
+
this._relatedPathMapper = new related_path_mapper_1.RelatedPathMapper();
|
|
31
33
|
this._creator = new typed_entity_creator_1.TypedEntityCreator(client);
|
|
32
34
|
}
|
|
33
35
|
mapEntityAsync(resource, schema) {
|
|
@@ -42,6 +44,7 @@ class EntityMapper {
|
|
|
42
44
|
const properties = yield this._propertyMapper.mapPropertiesAsync(resource, [...cultures], schema);
|
|
43
45
|
const relations = yield this._relationMapper.mapRelationsAsync(resource, schema);
|
|
44
46
|
const renditions = this._renditionMapper.mapRenditions(resource.id, resource); //TODO: Extract extension data?
|
|
47
|
+
const relatedPaths = this._relatedPathMapper.mapRelatedPaths(resource);
|
|
45
48
|
const args = new entity_construction_args_1.EntityConstructionArgs(definitionName, {
|
|
46
49
|
id: resource.id || 0,
|
|
47
50
|
identifier: resource.identifier,
|
|
@@ -49,6 +52,7 @@ class EntityMapper {
|
|
|
49
52
|
properties: properties,
|
|
50
53
|
relations: relations,
|
|
51
54
|
renditions: renditions,
|
|
55
|
+
relatedPaths: relatedPaths,
|
|
52
56
|
});
|
|
53
57
|
const entity = new entity_1.Entity(this._client, args);
|
|
54
58
|
yield this.mapBasePropertiesToSdkEntityAsync(resource, entity);
|
|
@@ -107,6 +111,9 @@ class EntityMapper {
|
|
|
107
111
|
isSystemOwned: entity.isSystemOwned,
|
|
108
112
|
properties: properties,
|
|
109
113
|
relations: relations,
|
|
114
|
+
isCurrentUserDefault: entity.isCurrentUserDefault,
|
|
115
|
+
isEnabled: entity.isEnabled,
|
|
116
|
+
modules: entity.modules,
|
|
110
117
|
});
|
|
111
118
|
return resource;
|
|
112
119
|
});
|
|
@@ -128,6 +135,9 @@ class EntityMapper {
|
|
|
128
135
|
entity.version = resource.version;
|
|
129
136
|
entity.isPathRoot = resource.isPathRoot;
|
|
130
137
|
entity.isRootTaxonomyItem = resource.isRootTaxonomyItem;
|
|
138
|
+
entity.isCurrentUserDefault = resource.isCurrentUserDefault;
|
|
139
|
+
entity.isEnabled = resource.isEnabled;
|
|
140
|
+
entity.modules = resource.modules;
|
|
131
141
|
});
|
|
132
142
|
}
|
|
133
143
|
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FilterOperatorMapper = void 0;
|
|
4
|
+
const filter_operator_1 = require("../models/search/filter-operator");
|
|
5
|
+
class FilterOperatorMapper {
|
|
6
|
+
static mapToString(filterOperator) {
|
|
7
|
+
return filter_operator_1.FilterOperator[filterOperator];
|
|
8
|
+
}
|
|
9
|
+
static mapToType(filterOperatorString) {
|
|
10
|
+
const typedFilterOperatorString = filterOperatorString;
|
|
11
|
+
return filter_operator_1.FilterOperator[typedFilterOperatorString];
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.FilterOperatorMapper = FilterOperatorMapper;
|
|
@@ -32,7 +32,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
32
32
|
};
|
|
33
33
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
34
34
|
exports.PropertyMapper = void 0;
|
|
35
|
-
const moment_1 = __importDefault(require("moment"));
|
|
36
35
|
const culture_insensitive_property_1 = require("../contracts/base/culture-insensitive-property");
|
|
37
36
|
const culture_sensitive_property_1 = require("../contracts/base/culture-sensitive-property");
|
|
38
37
|
const data_type_1 = __importStar(require("../contracts/base/data-type"));
|
|
@@ -283,19 +282,11 @@ class PropertyMapper {
|
|
|
283
282
|
break;
|
|
284
283
|
}
|
|
285
284
|
case data_type_1.default.DateTime: {
|
|
286
|
-
|
|
287
|
-
if (!date.isValid()) {
|
|
288
|
-
return null; //TODO: Throw error?
|
|
289
|
-
}
|
|
290
|
-
result = date;
|
|
285
|
+
result = value;
|
|
291
286
|
break;
|
|
292
287
|
}
|
|
293
288
|
case data_type_1.default.DateTimeOffset: {
|
|
294
|
-
|
|
295
|
-
if (!date.isValid()) {
|
|
296
|
-
return null; //TODO: Throw error?
|
|
297
|
-
}
|
|
298
|
-
result = date;
|
|
289
|
+
result = value;
|
|
299
290
|
break;
|
|
300
291
|
}
|
|
301
292
|
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RelatedPathMapper = void 0;
|
|
4
|
+
class RelatedPathMapper {
|
|
5
|
+
mapRelatedPaths(resource) {
|
|
6
|
+
if (resource == null || resource.relatedPaths == null || Object.keys(resource.relatedPaths).length === 0) {
|
|
7
|
+
return [];
|
|
8
|
+
}
|
|
9
|
+
const relatedPaths = resource.relatedPaths;
|
|
10
|
+
const list = [];
|
|
11
|
+
for (const relatedPathName in relatedPaths) {
|
|
12
|
+
const values = relatedPaths[relatedPathName];
|
|
13
|
+
if (!values || values.length === 0) {
|
|
14
|
+
continue;
|
|
15
|
+
}
|
|
16
|
+
const relatedPath = {
|
|
17
|
+
name: relatedPathName,
|
|
18
|
+
items: values.flat().map(item => ({
|
|
19
|
+
values: item.values,
|
|
20
|
+
definition: item.definition,
|
|
21
|
+
entity: item.entity,
|
|
22
|
+
properties: item.properties || null,
|
|
23
|
+
})),
|
|
24
|
+
};
|
|
25
|
+
list.push(relatedPath);
|
|
26
|
+
}
|
|
27
|
+
return list;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.RelatedPathMapper = RelatedPathMapper;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { EntityDefinitionResource } from "../entity-definition-resource";
|
|
2
|
+
import { EntityResource } from "../entity-resource";
|
|
3
|
+
import OptionListResource from "../option-lists/option-list-resource";
|
|
4
|
+
import { IAggregatedEntityResource } from "./aggregated-entity-resource";
|
|
5
|
+
/**
|
|
6
|
+
* Represents a data schema / domain model for an aggregate resource.
|
|
7
|
+
*/
|
|
8
|
+
export declare class AggregateResource {
|
|
9
|
+
definitions: Array<EntityDefinitionResource>;
|
|
10
|
+
optionLists: Array<OptionListResource>;
|
|
11
|
+
items: Array<IAggregatedEntityResource>;
|
|
12
|
+
getDefinitionResources(): Array<EntityDefinitionResource>;
|
|
13
|
+
getEntityResources(): Array<EntityResource>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.AggregateResource = void 0;
|
|
16
|
+
const ta_json_1 = require("ta-json");
|
|
17
|
+
const entity_definition_resource_1 = require("../entity-definition-resource");
|
|
18
|
+
const option_list_resource_1 = __importDefault(require("../option-lists/option-list-resource"));
|
|
19
|
+
const aggregated_entity_resource_1 = require("./aggregated-entity-resource");
|
|
20
|
+
/**
|
|
21
|
+
* Represents a data schema / domain model for an aggregate resource.
|
|
22
|
+
*/
|
|
23
|
+
let AggregateResource = class AggregateResource {
|
|
24
|
+
getDefinitionResources() {
|
|
25
|
+
return this.definitions;
|
|
26
|
+
}
|
|
27
|
+
getEntityResources() {
|
|
28
|
+
const finalItems = [];
|
|
29
|
+
this.items.forEach(element => {
|
|
30
|
+
finalItems.push(element.entity);
|
|
31
|
+
});
|
|
32
|
+
return finalItems;
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
__decorate([
|
|
36
|
+
ta_json_1.JsonProperty("definitions"),
|
|
37
|
+
ta_json_1.JsonElementType(entity_definition_resource_1.EntityDefinitionResource),
|
|
38
|
+
__metadata("design:type", Array)
|
|
39
|
+
], AggregateResource.prototype, "definitions", void 0);
|
|
40
|
+
__decorate([
|
|
41
|
+
ta_json_1.JsonProperty("datasources"),
|
|
42
|
+
ta_json_1.JsonElementType(option_list_resource_1.default),
|
|
43
|
+
__metadata("design:type", Array)
|
|
44
|
+
], AggregateResource.prototype, "optionLists", void 0);
|
|
45
|
+
__decorate([
|
|
46
|
+
ta_json_1.JsonProperty("items"),
|
|
47
|
+
ta_json_1.JsonElementType(aggregated_entity_resource_1.AggregatedEntityResource),
|
|
48
|
+
__metadata("design:type", Array)
|
|
49
|
+
], AggregateResource.prototype, "items", void 0);
|
|
50
|
+
AggregateResource = __decorate([
|
|
51
|
+
ta_json_1.JsonObject()
|
|
52
|
+
], AggregateResource);
|
|
53
|
+
exports.AggregateResource = AggregateResource;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { MapStringTo } from "../../base-types";
|
|
2
|
+
import { EntityResource } from "../entity-resource";
|
|
3
|
+
import { RelationResource } from "../relation-resource";
|
|
4
|
+
export interface IAggregatedEntityResource {
|
|
5
|
+
entity: EntityResource;
|
|
6
|
+
relations: MapStringTo<RelationResource>;
|
|
7
|
+
}
|
|
8
|
+
export declare class AggregatedEntityResource implements IAggregatedEntityResource {
|
|
9
|
+
entity: EntityResource;
|
|
10
|
+
relations: MapStringTo<RelationResource>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.AggregatedEntityResource = void 0;
|
|
13
|
+
const ta_json_1 = require("ta-json");
|
|
14
|
+
const entity_resource_1 = require("../entity-resource");
|
|
15
|
+
const relation_resource_1 = require("../relation-resource");
|
|
16
|
+
let AggregatedEntityResource = class AggregatedEntityResource {
|
|
17
|
+
};
|
|
18
|
+
__decorate([
|
|
19
|
+
ta_json_1.JsonProperty("entity"),
|
|
20
|
+
__metadata("design:type", entity_resource_1.EntityResource)
|
|
21
|
+
], AggregatedEntityResource.prototype, "entity", void 0);
|
|
22
|
+
__decorate([
|
|
23
|
+
ta_json_1.JsonProperty("relations"),
|
|
24
|
+
ta_json_1.JsonElementType(relation_resource_1.RelationResource),
|
|
25
|
+
__metadata("design:type", Object)
|
|
26
|
+
], AggregatedEntityResource.prototype, "relations", void 0);
|
|
27
|
+
AggregatedEntityResource = __decorate([
|
|
28
|
+
ta_json_1.JsonObject()
|
|
29
|
+
], AggregatedEntityResource);
|
|
30
|
+
exports.AggregatedEntityResource = AggregatedEntityResource;
|
|
@@ -11,6 +11,7 @@ export declare class EntityResource extends Resource {
|
|
|
11
11
|
relations: RelationMapResource;
|
|
12
12
|
properties: MapStringTo<unknown>;
|
|
13
13
|
renditions: MapStringTo<unknown>;
|
|
14
|
+
relatedPaths?: MapStringTo<unknown>;
|
|
14
15
|
lockedBy?: Link;
|
|
15
16
|
lockedOn?: Nullable<Date>;
|
|
16
17
|
isRootTaxonomyItem: boolean;
|
|
@@ -30,6 +31,8 @@ export declare class EntityResource extends Resource {
|
|
|
30
31
|
roles?: Link;
|
|
31
32
|
annotations?: Link;
|
|
32
33
|
full?: Link;
|
|
34
|
+
isCurrentUserDefault?: boolean;
|
|
35
|
+
isEnabled?: boolean;
|
|
33
36
|
modules?: Array<string>;
|
|
34
37
|
[key: string]: unknown;
|
|
35
38
|
constructor(init?: Partial<EntityResource>);
|
|
@@ -54,6 +54,10 @@ __decorate([
|
|
|
54
54
|
ta_json_1.JsonProperty("renditions"),
|
|
55
55
|
__metadata("design:type", Object)
|
|
56
56
|
], EntityResource.prototype, "renditions", void 0);
|
|
57
|
+
__decorate([
|
|
58
|
+
ta_json_1.JsonProperty("related_paths"),
|
|
59
|
+
__metadata("design:type", Object)
|
|
60
|
+
], EntityResource.prototype, "relatedPaths", void 0);
|
|
57
61
|
__decorate([
|
|
58
62
|
ta_json_1.JsonProperty("locked_by"),
|
|
59
63
|
__metadata("design:type", link_1.default)
|
|
@@ -130,6 +134,14 @@ __decorate([
|
|
|
130
134
|
ta_json_1.JsonProperty("full"),
|
|
131
135
|
__metadata("design:type", link_1.default)
|
|
132
136
|
], EntityResource.prototype, "full", void 0);
|
|
137
|
+
__decorate([
|
|
138
|
+
ta_json_1.JsonProperty("is_current_user_default"),
|
|
139
|
+
__metadata("design:type", Boolean)
|
|
140
|
+
], EntityResource.prototype, "isCurrentUserDefault", void 0);
|
|
141
|
+
__decorate([
|
|
142
|
+
ta_json_1.JsonProperty("is_enabled"),
|
|
143
|
+
__metadata("design:type", Boolean)
|
|
144
|
+
], EntityResource.prototype, "isEnabled", void 0);
|
|
133
145
|
__decorate([
|
|
134
146
|
ta_json_1.JsonProperty("modules"),
|
|
135
147
|
ta_json_1.JsonElementType(String),
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MapCultureTo, MapStringTo, Object_Unknown } from "../../base-types";
|
|
1
|
+
import { MapCultureTo, MapStringTo, Nullable, Object_Unknown } from "../../base-types";
|
|
2
2
|
import Resource from "../resource";
|
|
3
3
|
import { LanguageResource } from "./language-resource";
|
|
4
4
|
import { MenuItem } from "./menu-item";
|
|
@@ -19,5 +19,5 @@ export declare class PageResource extends Resource {
|
|
|
19
19
|
menus: MapStringTo<Array<MenuItem>>;
|
|
20
20
|
languages: Array<LanguageResource>;
|
|
21
21
|
messages: MapStringTo<string>;
|
|
22
|
-
backDestination: string
|
|
22
|
+
backDestination: Nullable<string>;
|
|
23
23
|
}
|
|
@@ -92,7 +92,7 @@ __decorate([
|
|
|
92
92
|
], PageResource.prototype, "messages", void 0);
|
|
93
93
|
__decorate([
|
|
94
94
|
ta_json_1.JsonProperty("back_destination"),
|
|
95
|
-
__metadata("design:type",
|
|
95
|
+
__metadata("design:type", Object)
|
|
96
96
|
], PageResource.prototype, "backDestination", void 0);
|
|
97
97
|
PageResource = __decorate([
|
|
98
98
|
ta_json_1.JsonObject()
|
|
@@ -59,12 +59,12 @@ __decorate([
|
|
|
59
59
|
], PolicyResource.prototype, "memberGroupSecurity", void 0);
|
|
60
60
|
__decorate([
|
|
61
61
|
ta_json_1.JsonProperty("user"),
|
|
62
|
-
ta_json_1.
|
|
62
|
+
ta_json_1.JsonType(link_1.default),
|
|
63
63
|
__metadata("design:type", Object)
|
|
64
64
|
], PolicyResource.prototype, "user", void 0);
|
|
65
65
|
__decorate([
|
|
66
66
|
ta_json_1.JsonProperty("usergroup"),
|
|
67
|
-
ta_json_1.
|
|
67
|
+
ta_json_1.JsonType(link_1.default),
|
|
68
68
|
__metadata("design:type", Object)
|
|
69
69
|
], PolicyResource.prototype, "userGroup", void 0);
|
|
70
70
|
__decorate([
|
|
@@ -179,7 +179,7 @@ let StringPropertyDefinitionResource = class StringPropertyDefinitionResource ex
|
|
|
179
179
|
};
|
|
180
180
|
__decorate([
|
|
181
181
|
ta_json_1.JsonProperty("content_type"),
|
|
182
|
-
__metadata("design:type",
|
|
182
|
+
__metadata("design:type", String)
|
|
183
183
|
], StringPropertyDefinitionResource.prototype, "contentType", void 0);
|
|
184
184
|
__decorate([
|
|
185
185
|
ta_json_1.JsonProperty("validation_expression"),
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import Resource from "../resource";
|
|
2
|
+
import { FacetResponseResource } from "./facet-response-resource";
|
|
3
|
+
export interface IAllFacetValuesResponse {
|
|
4
|
+
query: string;
|
|
5
|
+
facet: string;
|
|
6
|
+
children: Record<string, Array<FacetResponseResource>>;
|
|
7
|
+
}
|
|
8
|
+
export declare class AllFacetValuesResponse extends Resource implements IAllFacetValuesResponse {
|
|
9
|
+
query: string;
|
|
10
|
+
facet: string;
|
|
11
|
+
children: Record<string, Array<FacetResponseResource>>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.AllFacetValuesResponse = void 0;
|
|
16
|
+
const ta_json_1 = require("ta-json");
|
|
17
|
+
const all_facet_values_children_converter_1 = require("../../converters/all-facet-values-children-converter");
|
|
18
|
+
const resource_1 = __importDefault(require("../resource"));
|
|
19
|
+
let AllFacetValuesResponse = class AllFacetValuesResponse extends resource_1.default {
|
|
20
|
+
constructor() {
|
|
21
|
+
super(...arguments);
|
|
22
|
+
this.children = {};
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
__decorate([
|
|
26
|
+
ta_json_1.JsonProperty("query"),
|
|
27
|
+
__metadata("design:type", String)
|
|
28
|
+
], AllFacetValuesResponse.prototype, "query", void 0);
|
|
29
|
+
__decorate([
|
|
30
|
+
ta_json_1.JsonProperty("facet"),
|
|
31
|
+
__metadata("design:type", String)
|
|
32
|
+
], AllFacetValuesResponse.prototype, "facet", void 0);
|
|
33
|
+
__decorate([
|
|
34
|
+
ta_json_1.JsonProperty("children"),
|
|
35
|
+
ta_json_1.JsonConverter(all_facet_values_children_converter_1.AllFacetValuesChildrenConverter),
|
|
36
|
+
__metadata("design:type", Object)
|
|
37
|
+
], AllFacetValuesResponse.prototype, "children", void 0);
|
|
38
|
+
AllFacetValuesResponse = __decorate([
|
|
39
|
+
ta_json_1.JsonObject()
|
|
40
|
+
], AllFacetValuesResponse);
|
|
41
|
+
exports.AllFacetValuesResponse = AllFacetValuesResponse;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import CultureInfo from "../../culture-info";
|
|
2
|
+
import { FieldFilterRequestResource } from "./field-filter-request-resource";
|
|
3
|
+
export interface IAllFacetsRequest {
|
|
4
|
+
facetField: string;
|
|
5
|
+
componentId?: number;
|
|
6
|
+
culture: CultureInfo;
|
|
7
|
+
}
|
|
8
|
+
export declare class AllFacetsRequest implements IAllFacetsRequest {
|
|
9
|
+
facetField: string;
|
|
10
|
+
query?: string;
|
|
11
|
+
searchConfigurationName?: string;
|
|
12
|
+
culture: CultureInfo;
|
|
13
|
+
componentId?: number;
|
|
14
|
+
filters?: Array<FieldFilterRequestResource>;
|
|
15
|
+
constructor(init?: Partial<AllFacetsRequest>);
|
|
16
|
+
}
|