ecclesia
Version:
Framework for political and electoral simulations
22 lines (21 loc) • 579 B
JavaScript
import {
createRandomObj
} from "./chunk-7OCVVPU4.js";
// src/election.ts
import { Counter } from "@gouvernathor/python/collections";
function standardElection({ votingMethod, attributionMethod }) {
return (pool, candidates) => {
return attributionMethod(votingMethod(pool, candidates));
};
}
function sortition({ nSeats, ...randomParam }) {
return (citizens) => {
const randomObj = createRandomObj(randomParam);
return new Counter(randomObj.shuffled(citizens, nSeats));
};
}
export {
sortition,
standardElection
};
//# sourceMappingURL=election.js.map