Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
TypeUtils est un ensemble de fonctions et de classes permettant d’étendre les types de base pour les visuels de Power BI.
Installation
Pour installer le package, exécutez la commande suivante dans le répertoire avec votre visuel personnalisé actuel :
npm install powerbi-visuals-utils-typeutils --save
Cette commande installe le package et ajoute un package à votre fichier package.json en tant que dépendance.
Double
Le module Double fournit des possibilités de manipulation de la précision des nombres.
Il propose les fonctions suivantes :
pow10
Cette fonction retourne une puissance de 10.
function pow10(exp: number): number;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.pow10(25);
// returns: 1e+25
log10
Cette fonction retourne un logarithme de base 10 du nombre.
function log10(val: number): number;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.log10(25);
// returns: 1
getPrecision
Cette fonction retourne une puissance de 10 représentant la précision du nombre.
function getPrecision(x: number, decimalDigits?: number): number;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.getPrecision(562344, 6);
// returns: 0.1
equalWithPrecision
Cette fonction vérifie si un delta entre deux nombres est inférieur à la précision fournie.
function equalWithPrecision(x: number, y: number, precision?: number): boolean;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.equalWithPrecision(1, 1.005, 0.01);
// returns: true
lessWithPrecision
Cette fonction vérifie si la première valeur est inférieure à la deuxième valeur.
function lessWithPrecision(x: number, y: number, precision?: number): boolean;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.lessWithPrecision(0.995, 1, 0.001);
// returns: true
lessOrEqualWithPrecision
Cette fonction vérifie si la première valeur est inférieure ou égale à la deuxième valeur.
function lessOrEqualWithPrecision(x: number, y: number, precision?: number): boolean;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.lessOrEqualWithPrecision(1.005, 1, 0.01);
// returns: true
greaterWithPrecision
Cette fonction vérifie si la première valeur est supérieure à la deuxième valeur.
function greaterWithPrecision(x: number, y: number, precision?: number): boolean;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.greaterWithPrecision(1, 0.995, 0.01);
// returns: false
greaterOrEqualWithPrecision
Cette fonction vérifie si la première valeur est supérieure ou égale à la deuxième valeur.
function greaterOrEqualWithPrecision(x: number, y: number, precision?: number): boolean;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.greaterOrEqualWithPrecision(1, 1.005, 0.01);
// returns: true
floorWithPrecision
Cette fonction arrondit le nombre à l’entier inférieur ou égal avec la précision fournie.
function floorWithPrecision(x: number, precision?: number): number;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.floorWithPrecision(5.96, 0.001);
// returns: 5
ceilWithPrecision
Cette fonction ceils le nombre à l’entier supérieur ou égal avec la précision fournie.
function ceilWithPrecision(x: number, precision?: number): number;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.ceilWithPrecision(5.06, 0.001);
// returns: 6
floorToPrecision
Cette fonction arrondit le nombre vers le bas à la précision fournie.
function floorToPrecision(x: number, precision?: number): number;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.floorToPrecision(5.96, 0.1);
// returns: 5.9
ceilToPrecision
Cette fonction ceils le nombre vers le haut à la précision fournie.
function ceilToPrecision(x: number, precision?: number): number;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.ceilToPrecision(-506, 10);
// returns: -500
roundToPrecision
Cette fonction arrondit le nombre à la précision fournie.
function roundToPrecision(x: number, precision?: number): number;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.roundToPrecision(596, 10);
// returns: 600
ensureInRange
Cette fonction retourne un nombre compris entre le minimum et le maximum.
function ensureInRange(x: number, min: number, max: number): number;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.ensureInRange(-27.2, -10, -5);
// returns: -10
round
Cette fonction arrondit le nombre.
function round(x: number): number;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.round(27.45);
// returns: 27
removeDecimalNoise
Cette fonction arrondit le nombre pour éliminer certains espaces décimaux.
function removeDecimalNoise(value: number): number;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.removeDecimalNoise(21.493000000000002);
// returns: 21.493
isInteger
Cette fonction vérifie si le nombre est un entier.
function isInteger(value: number): boolean;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.isInteger(21.493000000000002);
// returns: false
toIncrement
Cette fonction incrémente le nombre du nombre fourni et retourne le nombre arrondi.
function toIncrement(value: number, increment: number): number;
Exemple :
import { double } from "powerbi-visuals-utils-typeutils";
// ...
double.toIncrement(0.6383723, 0.05);
// returns: 0.65
Prototype
Le module Prototype offre la possibilité d’hériter des objets.
Il propose les fonctions suivantes :
inherit
Cette fonction retourne un nouvel objet avec l’objet fourni comme son prototype.
function inherit<T>(obj: T, extension?: (inherited: T) => void): T;
Exemple :
import { prototype } from "powerbi-visuals-utils-typeutils";
// ...
let base = { Microsoft: "Power BI" };
prototype.inherit(base);
/* returns: {
__proto__: {
Microsoft: "Power BI"
}
}*/
inheritSingle
Cette fonction retourne un nouvel objet avec l’objet fourni comme son prototype si et seulement si le prototype n’a pas été défini.
function inheritSingle<T>(obj: T): T;
Exemple :
import { prototype } from "powerbi-visuals-utils-typeutils";
// ...
let base = { Microsoft: "Power BI" };
prototype.inheritSingle(base);
/* returns: {
__proto__: {
Microsoft: "Power BI"
}
}*/
PixelConverter
Le module PixelConverter offre la possibilité de convertir des pixels en points et des points en pixels.
Il propose les fonctions suivantes :
toString
Cette fonction convertit la valeur de pixel en chaîne.
function toString(px: number): string;
Exemple :
import { pixelConverter } from "powerbi-visuals-utils-typeutils";
// ...
pixelConverter.toString(25);
// returns: 25px
fromPoint
Cette fonction convertit la valeur de point fournie en valeur de pixel et retourne l’interprétation en chaîne.
function fromPoint(pt: number): string;
Exemple :
import { pixelConverter } from "powerbi-visuals-utils-typeutils";
// ...
pixelConverter.fromPoint(8);
// returns: 33.33333333333333px
fromPointToPixel
Cette fonction convertit la valeur de point fournie en valeur de pixel.
function fromPointToPixel(pt: number): number;
Exemple :
import { pixelConverter } from "powerbi-visuals-utils-typeutils";
// ...
pixelConverter.fromPointToPixel(8);
// returns: 10.666666666666666
toPoint
Cette fonction convertit la valeur de pixel fournie en valeur de point.
function toPoint(px: number): number;
Exemple :
import { pixelConverter } from "powerbi-visuals-utils-typeutils";
// ...
pixelConverter.toPoint(8);
// returns: 6