UNPKG

@itwin/presentation-backend

Version:

Backend of iTwin.js Presentation library

42 lines 1.72 kB
"use strict"; /*--------------------------------------------------------------------------------------------- * Copyright (c) Bentley Systems, Incorporated. All rights reserved. * See LICENSE.md in the project root for license terms and full copyright notice. *--------------------------------------------------------------------------------------------*/ /** @packageDocumentation * @module Core */ Object.defineProperty(exports, "__esModule", { value: true }); exports.Ruleset = void 0; const core_backend_1 = require("@itwin/core-backend"); const core_common_1 = require("@itwin/core-common"); const Utils_js_1 = require("../Utils.js"); const PresentationRulesDomain_js_1 = require("./PresentationRulesDomain.js"); /** @internal */ class Ruleset extends core_backend_1.DefinitionElement { /** * Name of the `Ruleset` element class. */ static get className() { return "Ruleset"; } /** * Generates a unique code for a ruleset * @param iModelDb DB the ruleset is supposed to be inserted into * @param modelId ID of a the model this ruleset should be created in * @param ruleset The ruleset code is being created for */ static createRulesetCode(iModelDb, modelId, ruleset) { let codeValue = ruleset.id; if (ruleset.version) { codeValue += `@${(0, Utils_js_1.normalizeVersion)(ruleset.version)}`; } return new core_common_1.Code({ spec: iModelDb.codeSpecs.getByName(PresentationRulesDomain_js_1.PresentationRules.CodeSpec.Ruleset).id, scope: modelId.toString(), value: codeValue, }); } } exports.Ruleset = Ruleset; //# sourceMappingURL=RulesetElements.js.map