Utilities
This section covers various utility functions and tools available within the MS SDK that can help streamline your development process.
Data Transformation Utilities
formatData(data, formatType)
A versatile function to transform data between different formats like JSON, CSV, and XML.
// Example: Convert an array of objects to CSV
const users = [
{ id: 1, name: "Alice", email: "alice@example.com" },
{ id: 2, name: "Bob", email: "bob@example.com" }
];
const csvData = ms.utils.formatData(users, 'csv');
console.log(csvData);
// Output: "id,name,email\n1,Alice,alice@example.com\n2,Bob,bob@example.com"
parseData(data, formatType)
Parses data from a given format into a structured JavaScript object or array.
// Example: Parse a JSON string
const jsonString = '{"status": "success", "code": 200}';
const jsonData = ms.utils.parseData(jsonString, 'json');
console.log(jsonData);
// Output: { status: "success", code: 200 }
Validation Utilities
validateEmail(email)
Checks if a given string is a valid email address.
const isValid = ms.utils.validateEmail("test@example.com");
console.log(isValid); // true
validateURL(url)
Validates if a string is a well-formed URL.
const isValid = ms.utils.validateURL("https://www.microsoft.com");
console.log(isValid); // true
Date and Time Utilities
formatDate(date, formatString)
Formats a Date
object into a human-readable string.
const now = new Date();
const formatted = ms.utils.formatDate(now, 'YYYY-MM-DD HH:mm:ss');
console.log(formatted); // e.g., "2023-10-27 10:30:00"
timeAgo(date)
Returns a string representing the time elapsed since a given date (e.g., "2 minutes ago").
const pastDate = new Date(Date.now() - 5 * 60 * 1000); // 5 minutes ago
console.log(ms.utils.timeAgo(pastDate)); // "5 minutes ago"
String Manipulation Utilities
capitalize(str)
Capitalizes the first letter of a string.
console.log(ms.utils.capitalize("hello world")); // "Hello world"
slugify(str)
Converts a string into a URL-friendly slug.
console.log(ms.utils.slugify("My Awesome Article Title!")); // "my-awesome-article-title"
slugify
function handles spaces, punctuation, and case conversion automatically.
Miscellaneous Utilities
debounce(func, delay)
Returns a debounced version of the passed function which will postpone its execution until after `wait` milliseconds have elapsed since the last time it was invoked.
throttle(func, delay)
Returns a throttled version of the passed function which will invoke `func` only once per every `wait` milliseconds.