// exemple d'utilisation
colorUtils : typeof ColorUtils=ColorUtils;
dateTimeUtils: typeof DateTimeUtils=DateTimeUtils;
ou tout simplement public dateTimeServ = dateTimeUtils;
// getIconeClass pour récupérer les statuts

// exemple dans le .jade
.visite-etat(*ngIf='getIconeClass(tournee) as statutEvtClass')
    i.fal([ngClass]='statutEvtClass.classes', title='{{labels[statutEvtClass.lib]}}')

// exemple dans le .ts - on fait appel à TracabiliteUtils et au type StatuEvtClass
// import { StatutEvtClass, TracabiliteUtils } from 'projects/currentapp/src/app/utils/tracabilite-utils';

/**
 * @name getIconeClass
 * @description Fonction permettant de définir la classe à appliquer à l'icône selon l'état de réalisation
 * @param tournee : DetailSyntheseOperationnelleTournee
 * tournee.etatRealisation: string à passer dans getStatutEvtClass 
 */
public getIconeClass(tournee:DetailSyntheseOperationnelleTournee):StatutEvtClass {
  let l_statutEvtClass : StatutEvtClass = TracabiliteUtils.getStatutEvtClass(tournee.etatRealisation);
  return l_statutEvtClass;
}
// StringUtils
this.libelleRemplissage = StringUtils.formatString(this._libellesDivers['app.module.planningvisites.tauxRemplissage'],[this._tournee.tauxDeRemplissage]);
// en bdd, "mon texte {0} blabla"

substr()

La méthode substr() retourne la partie d'une chaîne de caractères comprise entre l'indice de départ et un certain nombre de caractères après celui-ci.

maVariable.substr(indice de départ, nombre de caractères après l'indice de départ)

a_data = "2021-01-07 12:40";
this.proConfig.apiParams = new ApiParams({
	datePrevue:a_data?a_data.substr(0,10):null, 
	heurePrevue:a_data?(a_data.substr(a_data.length-5)):null
});

// a_data.substr(a_data.length-5) : les 5 derniers caractères => "12:40"

https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/String/substr


find()

La méthode find() renvoie la valeur du premier élément trouvé dans le tableau qui respecte la condition donnée par la fonction de test passée en argument. Sinon, la valeur undefined est renvoyée.

// exemple application
let l_pro=result.tasksResult.find(item => item.idProContrat===l_data.row.idProContrat);
// autre exemple simple
const array1 = [5, 12, 8, 130, 44];

const found = array1.find(element => element > 10);

console.log(found);
// expected output: 12

https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Array/find


Object.assign()

La méthode Object.assign() est utilisée afin de copier les valeurs de toutes les propriétés directes (non héritées) d'un objet qui sont énumérables sur un autre objet cible. Cette méthode renvoie l'objet cible.

// exemple
const target = { a: 1, b: 2 };
const source = { b: 4, c: 5 };

const returnedTarget = Object.assign(target, source);

console.log(target);
// expected output: Object { a: 1, b: 4, c: 5 }

console.log(returnedTarget);
// expected output: Object { a: 1, b: 4, c: 5 }

https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Object/assign