UNPKG

@giancosta86/omnicourse-core

Version:
24 lines 969 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.SubjectSet = void 0; const sorted_1 = require("@rimbu/sorted"); const hashed_1 = require("@rimbu/hashed"); const SubjectComp_1 = require("./SubjectComp"); var SubjectSet; (function (SubjectSet) { function createSorted(locale, subjects) { const resultBuilder = sorted_1.SortedSet.createContext({ comp: SubjectComp_1.SubjectComp.createDefault(locale) }).builder(); const uniqueNameAccumulator = hashed_1.HashSet.builder(); for (const subject of subjects) { if (!uniqueNameAccumulator.add(subject.name)) { throw new Error(`Duplicate subject: '${subject.name}'`); } resultBuilder.add(subject); } return resultBuilder.build(); } SubjectSet.createSorted = createSorted; })(SubjectSet || (exports.SubjectSet = SubjectSet = {})); //# sourceMappingURL=SubjectSet.js.map