@sitecore/sc-contenthub-webclient-sdk
Version:
Sitecore Content Hub WebClient SDK.
126 lines • 5.57 kB
JavaScript
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
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;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __metadata = (this && this.__metadata) || function (k, v) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
import { JsonConverter, JsonDiscriminatorValue, JsonElementType, JsonObject, JsonProperty } from "ta-json";
import { ConditionalValidationResource, ConditionalValidationResourceConverter, } from "../../models/conditional-validation-resource";
import DataType from "./data-type";
import { MemberDefinition } from "./member-definition";
import { MemberDefinitionType } from "./member-definition-type";
import { RelationCardinality } from "./relation-cardinality";
import { RelationRole } from "./relation-role";
let RelationDefinition = class RelationDefinition extends MemberDefinition {
get definitionType() {
return MemberDefinitionType.Relation;
}
get isMultiValue() {
return (this.cardinality === RelationCardinality.ManyToMany ||
(this.cardinality === RelationCardinality.OneToMany && this.role === RelationRole.Parent));
}
constructor(name, init) {
super(name, DataType.Relation);
this.allowNavigation = true;
this.nestedProperties = [];
this.associatedLabels = {};
Object.assign(this, init);
}
};
__decorate([
JsonProperty("role"),
__metadata("design:type", Number)
], RelationDefinition.prototype, "role", void 0);
__decorate([
JsonProperty("cardinality"),
__metadata("design:type", Number)
], RelationDefinition.prototype, "cardinality", void 0);
__decorate([
JsonProperty("associated_entitydefinition"),
__metadata("design:type", String)
], RelationDefinition.prototype, "associatedEntityDefinitionName", void 0);
__decorate([
JsonProperty("child_is_mandatory"),
__metadata("design:type", Boolean)
], RelationDefinition.prototype, "childIsMandatory", void 0);
__decorate([
JsonProperty("child_conditional_validation"),
JsonConverter(ConditionalValidationResourceConverter),
__metadata("design:type", ConditionalValidationResource)
], RelationDefinition.prototype, "childConditionalValidation", void 0);
__decorate([
JsonProperty("parent_is_mandatory"),
__metadata("design:type", Boolean)
], RelationDefinition.prototype, "parentIsMandatory", void 0);
__decorate([
JsonProperty("parent_conditional_validation"),
JsonConverter(ConditionalValidationResourceConverter),
__metadata("design:type", ConditionalValidationResource)
], RelationDefinition.prototype, "parentConditionalValidation", void 0);
__decorate([
JsonProperty("inherits_security"),
__metadata("design:type", Boolean)
], RelationDefinition.prototype, "inheritsSecurity", void 0);
__decorate([
JsonProperty("allow_navigation"),
__metadata("design:type", Boolean)
], RelationDefinition.prototype, "allowNavigation", void 0);
__decorate([
JsonProperty("is_nested"),
__metadata("design:type", Boolean)
], RelationDefinition.prototype, "isNested", void 0);
__decorate([
JsonProperty("nested_properties"),
JsonElementType(String),
__metadata("design:type", Array)
], RelationDefinition.prototype, "nestedProperties", void 0);
__decorate([
JsonProperty("nested_permissions"),
__metadata("design:type", Boolean)
], RelationDefinition.prototype, "nestedPermissions", void 0);
__decorate([
JsonProperty("is_taxonomy_relation"),
__metadata("design:type", Boolean)
], RelationDefinition.prototype, "isTaxonomyRelation", void 0);
__decorate([
JsonProperty("is_taxonomy_hierarchy_relation"),
__metadata("design:type", Boolean)
], RelationDefinition.prototype, "isTaxonomyHierarchyRelation", void 0);
__decorate([
JsonProperty("content_is_copied"),
__metadata("design:type", Boolean)
], RelationDefinition.prototype, "contentIsCopied", void 0);
__decorate([
JsonProperty("completion_is_copied"),
__metadata("design:type", Boolean)
], RelationDefinition.prototype, "completionIsCopied", void 0);
__decorate([
JsonProperty("is_path_relation"),
__metadata("design:type", Boolean)
], RelationDefinition.prototype, "isPathRelation", void 0);
__decorate([
JsonProperty("is_path_hierarchy_relation"),
__metadata("design:type", Boolean)
], RelationDefinition.prototype, "isPathHierarchyRelation", void 0);
__decorate([
JsonProperty("path_hierarchy_score"),
__metadata("design:type", String)
], RelationDefinition.prototype, "pathHierarchyScore", void 0);
__decorate([
JsonProperty("is_rendition_relation"),
__metadata("design:type", Boolean)
], RelationDefinition.prototype, "isRenditionRelation", void 0);
__decorate([
JsonProperty("associated_labels"),
__metadata("design:type", Object)
], RelationDefinition.prototype, "associatedLabels", void 0);
RelationDefinition = __decorate([
JsonObject(),
JsonDiscriminatorValue(DataType.Relation),
__metadata("design:paramtypes", [String, Object])
], RelationDefinition);
export { RelationDefinition };
//# sourceMappingURL=relation-definition.js.map