@taiga-ui/cdk
Version:
Base library for creating Angular components and applications using Taiga UI principles regarding of actual visual appearance
15 lines • 2.12 kB
JavaScript
/// <reference types="@taiga-ui/tsconfig/ng-dev-mode" />
/**
* Rounds a number to the closest value in a fixed discrete series
*
* @param value
* @param quantum series step
*/
export function tuiQuantize(value, quantum) {
ngDevMode && console.assert(Number.isFinite(value));
ngDevMode && console.assert(Number.isFinite(quantum));
ngDevMode && console.assert(quantum > 0);
const remainder = value % quantum;
return remainder < quantum / 2 ? value - remainder : value + quantum - remainder;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVhbnRpemUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jZGsvdXRpbHMvbWF0aC9xdWFudGl6ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx3REFBd0Q7QUFFeEQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsV0FBVyxDQUFDLEtBQWEsRUFBRSxPQUFlO0lBQ3RELFNBQVMsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNwRCxTQUFTLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDdEQsU0FBUyxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBRXpDLE1BQU0sU0FBUyxHQUFHLEtBQUssR0FBRyxPQUFPLENBQUM7SUFFbEMsT0FBTyxTQUFTLEdBQUcsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLE9BQU8sR0FBRyxTQUFTLENBQUM7QUFDckYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8cmVmZXJlbmNlIHR5cGVzPVwiQHRhaWdhLXVpL3RzY29uZmlnL25nLWRldi1tb2RlXCIgLz5cblxuLyoqXG4gKiBSb3VuZHMgYSBudW1iZXIgdG8gdGhlIGNsb3Nlc3QgdmFsdWUgaW4gYSBmaXhlZCBkaXNjcmV0ZSBzZXJpZXNcbiAqXG4gKiBAcGFyYW0gdmFsdWVcbiAqIEBwYXJhbSBxdWFudHVtIHNlcmllcyBzdGVwXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlRdWFudGl6ZSh2YWx1ZTogbnVtYmVyLCBxdWFudHVtOiBudW1iZXIpOiBudW1iZXIge1xuICAgIG5nRGV2TW9kZSAmJiBjb25zb2xlLmFzc2VydChOdW1iZXIuaXNGaW5pdGUodmFsdWUpKTtcbiAgICBuZ0Rldk1vZGUgJiYgY29uc29sZS5hc3NlcnQoTnVtYmVyLmlzRmluaXRlKHF1YW50dW0pKTtcbiAgICBuZ0Rldk1vZGUgJiYgY29uc29sZS5hc3NlcnQocXVhbnR1bSA+IDApO1xuXG4gICAgY29uc3QgcmVtYWluZGVyID0gdmFsdWUgJSBxdWFudHVtO1xuXG4gICAgcmV0dXJuIHJlbWFpbmRlciA8IHF1YW50dW0gLyAyID8gdmFsdWUgLSByZW1haW5kZXIgOiB2YWx1ZSArIHF1YW50dW0gLSByZW1haW5kZXI7XG59XG4iXX0=