UNPKG

@up-group/react-controls

Version:

We know that there are a ton of react UI library projects to choose from. Our hope with this one is to provide the next generation of react components that you can use to bootstrap your next project, or as a reference for building a UIKit. Read on to get

303 lines 9.78 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var typestyle_1 = require("typestyle"); var moment = require("moment"); function callIfExists(func) { var args = []; for (var _i = 1; _i < arguments.length; _i++) { args[_i - 1] = arguments[_i]; } return (typeof func === 'function') && func.apply(void 0, args); } exports.callIfExists = callIfExists; function hasOwnProp(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); } exports.hasOwnProp = hasOwnProp; function generateUniqueId() { return Math.random().toString(36).substring(7); } exports.generateUniqueId = generateUniqueId; function getFontClassName(fontAttribut) { return typestyle_1.style({ fontSize: fontAttribut.fontSize, color: fontAttribut.color ? fontAttribut.color : "#3f3b37", fontWeight: fontAttribut.fontWeight ? fontAttribut.fontWeight : "normal", fontStyle: fontAttribut.fontStyle ? fontAttribut.fontStyle : "normal", fontStretch: fontAttribut.fontStrech ? fontAttribut.fontStrech : "normal", lineHeight: fontAttribut.lineHeight ? fontAttribut.lineHeight : "normal", letterSpacing: fontAttribut.letterSpacing ? fontAttribut.letterSpacing : "normal", }); } exports.getFontClassName = getFontClassName; function getFontSizeNumber(size) { if (typeof (size) === "number") { return size; } var regex = /([0-9]*\.?[0-9]*)(.*)/i.exec(size); if (isNullOrUndef(regex) || isNullOrUndef(regex[1])) { return 0; } var taille = parseFloat(regex[1]); var unite = regex[2]; if (isNullOrUndef(taille)) { return 0; } if (stringIsNullOrEmpty(unite)) { return taille; } switch (unite) { case "px": return taille; case "in": return taille * 96; case "cm": return taille * 96 / 2.54; case "mm": return taille * 96 / 0.254; case "pt": return taille * 96 / 72; case "pc": return taille * 96 / 6; case "em": case "ex": case "ch": case "rem": case "vw": case "vh": case "vmin": case "vmax": case "%": this._relativeIconSize = true; break; } return taille; } exports.getFontSizeNumber = getFontSizeNumber; function isNullOrUndef(objet) { return objet == null || objet == undefined; } exports.isNullOrUndef = isNullOrUndef; function stringIsNullOrEmpty(chaine) { return isNullOrUndef(chaine) || chaine.trim().length === 0; } exports.stringIsNullOrEmpty = stringIsNullOrEmpty; function numberIsNullOrUndef(number) { return isNullOrUndef(number) || isNaN(number); } exports.numberIsNullOrUndef = numberIsNullOrUndef; function arrayIsNullOrEmpty(array) { return isNullOrUndef(array) || array.length == 0; } exports.arrayIsNullOrEmpty = arrayIsNullOrEmpty; function arrayIsIdentical(array1, array2) { if (array1 === array2) { return true; } if (array1.length !== array2.length) { return false; } for (var cpt = 0; cpt < array1.length; cpt++) { if (array1[cpt] !== array2[cpt]) { if (array1[cpt] instanceof Array && array2[cpt] instanceof Array) { if (!arrayIsIdentical(array1[cpt], array2[cpt])) { return false; } } else if (typeof array1[cpt] === "object" && typeof array2[cpt] === "object") { if (!objectIsIdentical(array1[cpt], array2[cpt])) { return false; } } else { return false; } } } return true; } exports.arrayIsIdentical = arrayIsIdentical; function objectIsIdentical(obj1, obj2) { if (obj1 === obj2) { return true; } for (var prop in obj1) { if (!obj2.hasOwnProperty(prop) || typeof obj1[prop] !== typeof obj2[prop]) { return false; } } for (var prop in obj2) { if (!obj1.hasOwnProperty(prop)) { return false; } if (obj1[prop] !== obj2[prop]) { if (obj1[prop] instanceof Array && obj2[prop] instanceof Array) { if (!arrayIsIdentical(obj1[prop], obj2[prop])) { return false; } } else if (typeof obj1[prop] === "object") { if (!objectIsIdentical(obj1[prop], obj2[prop])) { return false; } } else { return false; } } } return true; } exports.objectIsIdentical = objectIsIdentical; function objectContains(objet, search) { if (isNullOrUndef(objet) || stringIsNullOrEmpty(search)) { return false; } if (typeof objet === "object") { for (var item in objet) { if (objectContains(objet[item], search)) { return true; } } } else if (objet.toString().indexOf(search) >= 0) { return true; } return false; } exports.objectContains = objectContains; function addZeroBeforeNumber(nombre, tailleMin) { var result = nombre.toString(); while (result.length < tailleMin) { result = "0" + result; } return result; } exports.addZeroBeforeNumber = addZeroBeforeNumber; function formatDate(date) { moment.locale("fr"); return isNullOrUndef(date) ? null : moment(date).format('DD/MM/YYYY'); } exports.formatDate = formatDate; function formatDateTime(dateTime) { if (isNullOrUndef(dateTime)) { return null; } return addZeroBeforeNumber(dateTime.getDate(), 2) + "/" + addZeroBeforeNumber(dateTime.getMonth() + 1, 2) + "/" + addZeroBeforeNumber(dateTime.getFullYear(), 4) + " " + addZeroBeforeNumber(dateTime.getHours(), 2) + ":" + addZeroBeforeNumber(dateTime.getMinutes(), 2) + ":" + addZeroBeforeNumber(dateTime.getSeconds(), 2); } exports.formatDateTime = formatDateTime; function isBissextile(annee) { if (annee % 400 === 0) { return true; } if (annee % 100 === 0) { return false; } if (annee % 4 === 0) { return true; } return false; } exports.isBissextile = isBissextile; function jourDuMois(mois, annee, moisBase0) { if (moisBase0 === void 0) { moisBase0 = false; } var fevrier = isBissextile(annee) ? 29 : 28; switch (mois) { case 0: return moisBase0 ? 31 : -1; case 1: return moisBase0 ? fevrier : 31; case 2: return moisBase0 ? 31 : fevrier; case 3: return moisBase0 ? 30 : 31; case 4: return moisBase0 ? 31 : 30; case 5: return moisBase0 ? 30 : 31; case 6: return moisBase0 ? 31 : 30; case 7: return 31; case 8: return moisBase0 ? 30 : 31; case 9: return moisBase0 ? 31 : 30; case 10: return moisBase0 ? 30 : 31; case 11: return moisBase0 ? 31 : 30; case 12: return moisBase0 ? -1 : 31; } return 0; } exports.jourDuMois = jourDuMois; function incrementJour(date, increment) { var annee = date.getFullYear(); var mois = date.getMonth(); var jour = date.getDate() + increment; var jdm = jourDuMois(mois, annee, true); while (jour < 1) { if (mois < 1) { mois = 11; annee--; } else { mois--; } jdm = jourDuMois(mois, annee, true); jour += jdm; } while (jour > jdm) { if (mois > 10) { mois = 0; annee++; } else { mois++; } jour -= jdm; jdm = jourDuMois(mois, annee, true); } return new Date(annee, mois, jour); } exports.incrementJour = incrementJour; function ConvertToDate(date) { if (stringIsNullOrEmpty(date)) { return null; } date = date.trim(); var jourMoisAnnee = []; var nbPas = 0; for (var idx = 0; idx < date.length; idx++) { var car = date[idx]; if (["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"].indexOf(car) >= 0) { var nb = Number(car); if (nbPas === 0) { jourMoisAnnee.push(nb); } else { jourMoisAnnee[jourMoisAnnee.length - 1] = jourMoisAnnee[jourMoisAnnee.length - 1] * 10 + nb; } if (jourMoisAnnee.length < 3 && nbPas === 1) { nbPas = 0; } else { nbPas++; } } else if (["/", "-", ".", " "].indexOf(car) >= 0) { nbPas = 0; } else { return null; } } if (jourMoisAnnee.length !== 3 || (jourMoisAnnee[2] > 99 && jourMoisAnnee[2] < 1850) || jourMoisAnnee[1] < 1 || jourMoisAnnee[1] > 12 || jourMoisAnnee[0] < 1 || jourMoisAnnee[0] > jourDuMois(jourMoisAnnee[1], jourMoisAnnee[2])) { return null; } if (jourMoisAnnee[2] <= 99) { var anneeEnCours = new Date().getFullYear(); var anneeLimite = anneeEnCours % 100; jourMoisAnnee[2] = anneeEnCours - anneeLimite + jourMoisAnnee[2] - (jourMoisAnnee[2] > anneeLimite ? 100 : 0); } return new Date(jourMoisAnnee[2], jourMoisAnnee[1] - 1, jourMoisAnnee[0]); } exports.ConvertToDate = ConvertToDate; //# sourceMappingURL=helpers.js.map