@graviola/edb-core-utils
v1.4.1
Published
Core utilities for EDB
Readme
@graviola/core-utils
A collection of utility functions used across the Graviola project. This package provides common helper functions for string manipulation, data transformation, date handling, and more.
Guidelines
Functions added to this package should not have any dependecies or be already provided by lodash. (A negative example would be camelCaseToTitleCase which is provided by lodash or ellipsis which is provided by lodash.truncate but for historical reasons its still in this package and will be removed in the future.)
Also these functions are intendet to be used in the browser and in node.js.
Installation
npm install @graviola/core-utils
# or
yarn add @graviola/core-utils
# or
bun add @graviola/core-utilsFeatures
String Manipulation
camelCaseToTitleCase: Convert camelCase strings to Title CasecamelCaseToTitleCase("helloWorld"); // "Hello World"ellipsis: Truncate text with an ellipsisellipsis("Long text to truncate", 10); // "Long text…"leftpad: Pad numbers with leading charactersleftpad(5, 3); // "005" leftpad(7, 4, "x"); // "xxx7"
Date Handling
specialDateutilities for working with numeric date representations (YYYYMMDD format)getDatePart(20230915, "year"); // 2023 getPaddedDate(new Date("2023-09-15")); // "20230915"
Data Transformation
filterJSONLD: Remove JSON-LD specific properties from objectsreplaceJSONLD: Replace JSON-LD property markers with custom stringsfoldInner2Outer: Transform nested object structuresresolveObj: Safely access nested object properties
Markdown Processing
parseMarkdownLinks: Extract links from markdown textparseMarkdownLinks("[Google](https://google.com)"); // [{ label: "Google", url: "https://google.com" }]
Color Utilities
hexToRGBA: Convert hex color codes to RGBA formathexToRGBA("#ff0000", 0.5); // "rgba(255, 0, 0, 0.5)"
SPARQL/RDF Utilities
envToSparqlEndpoint: Convert environment variables to SPARQL endpoint configurationencodeIRI/decodeIRI: Encode/decode IRIs to a format that is safe to use in URLs, but unlikeencodeURIComponentanddecodeURIComponentjust converts the IRI to a base64 string, thus
Array/Object Utilities
filterUndefOrNull: Remove undefined and null values from arraysmakeColumnDesc: Generate column descriptors with letter indicesindex2letter: Convert numeric indices to spreadsheet-style column letters (A, B, C, ...)
Usage
import {
camelCaseToTitleCase,
ellipsis,
hexToRGBA,
parseMarkdownLinks,
} from "@graviola/core-utils";
// Convert camelCase to Title Case
const title = camelCaseToTitleCase("myVariableName");
// => "My Variable Name"
// Truncate long text
const truncated = ellipsis("This is a very long text", 10);
// => "This is a…"
// Convert hex color to rgba
const color = hexToRGBA("#ff0000", 0.5);
// => "rgba(255, 0, 0, 0.5)"
// Parse markdown links
const links = parseMarkdownLinks("[Link](https://example.com)");
// => [{ label: "Link", url: "https://example.com" }]License
This package is part of the Graviola project.
