@blake.regalia/belt
Advanced tools
Comparing version 0.15.0 to 0.16.0
@@ -20,2 +20,10 @@ import type { Dict, JsonObject } from './types'; | ||
/** | ||
* Converts given identifier to "snake_case" | ||
*/ | ||
export declare const snake: (s_ident: string) => string; | ||
/** | ||
* Converts given identifier to "PascalCase" | ||
*/ | ||
export declare const pascal: (s_ident: string) => string; | ||
/** | ||
* Simple test for whether a deserialized JSON value is a plain object (dict) or not | ||
@@ -92,3 +100,3 @@ */ | ||
*/ | ||
export declare const fodemtv: <w_out extends unknown, si_key extends string, w_value extends unknown>(h_thing: Record<si_key, w_value>, f_transform: (w_value: w_value, si_key?: si_key | undefined) => w_out) => Record<si_key, w_value> extends infer T ? { [si_key_out in keyof T]: w_out; } : never; | ||
export declare const fodemtv: <w_out extends unknown, si_key extends string, w_value extends unknown>(h_thing: Record<si_key, w_value>, f_transform: (w_value: w_value, si_key?: si_key | undefined) => w_out) => { [si_key_out in keyof Record<si_key, w_value>]: w_out; }; | ||
/** | ||
@@ -95,0 +103,0 @@ * Promise-based version of `setTimeout()` |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.remove = exports.shuffle = exports.crypto_random_int = exports.random_int = exports.crypto_random = exports.defer_many = exports.defer = exports.microtask = exports.forever = exports.with_timeout = exports.timeout_exec = exports.timeout = exports.fodemtv = exports.oderom = exports.oderaf = exports.oderac = exports.oder = exports.odem = exports.ofe = exports.ode = exports.odv = exports.oda = exports.oc = exports.escape_regex = exports.deduplicate = exports.interjoin = exports.fold = exports.is_dict_es = exports.is_dict = exports.proper = exports.F_IDENTITY = exports.F_NOOP = exports.__UNDEFINED = exports.ATU8_NIL = void 0; | ||
exports.remove = exports.shuffle = exports.crypto_random_int = exports.random_int = exports.crypto_random = exports.defer_many = exports.defer = exports.microtask = exports.forever = exports.with_timeout = exports.timeout_exec = exports.timeout = exports.fodemtv = exports.oderom = exports.oderaf = exports.oderac = exports.oder = exports.odem = exports.ofe = exports.ode = exports.odv = exports.oda = exports.oc = exports.escape_regex = exports.deduplicate = exports.interjoin = exports.fold = exports.is_dict_es = exports.is_dict = exports.pascal = exports.snake = exports.proper = exports.F_IDENTITY = exports.F_NOOP = exports.__UNDEFINED = exports.ATU8_NIL = void 0; | ||
/** | ||
@@ -27,2 +27,18 @@ * Utility nil buffer constant | ||
/** | ||
* Converts given identifier to "snake_case" | ||
*/ | ||
const snake = (s_ident) => s_ident.toUpperCase() === s_ident | ||
// depending on upper or mixed case | ||
? s_ident.toLowerCase().replace(/[^a-z0-9$]+/g, '_') | ||
: s_ident.replace(/(?:[^a-zA-Z0-9$]*([A-Z])|[^a-zA-Z0-9$]+)/g, (s_ignore, s_cap) => '_' + (s_cap ? s_cap.toLowerCase() : '')); | ||
exports.snake = snake; | ||
/** | ||
* Converts given identifier to "PascalCase" | ||
*/ | ||
// if all uppercase; make lower | ||
const pascal = (s_ident) => (s_ident.toUpperCase() === s_ident ? (0, exports.pascal)(s_ident.toLowerCase()) : s_ident) | ||
// convert to pascal | ||
.replace(/(?:^|[^A-Za-z0-9$])([\w0-9$])/g, (s_ignore, s_letter) => s_letter.toUpperCase()); | ||
exports.pascal = pascal; | ||
/** | ||
* Simple test for whether a deserialized JSON value is a plain object (dict) or not | ||
@@ -29,0 +45,0 @@ */ |
@@ -20,2 +20,10 @@ import type { Dict, JsonObject } from './types'; | ||
/** | ||
* Converts given identifier to "snake_case" | ||
*/ | ||
export declare const snake: (s_ident: string) => string; | ||
/** | ||
* Converts given identifier to "PascalCase" | ||
*/ | ||
export declare const pascal: (s_ident: string) => string; | ||
/** | ||
* Simple test for whether a deserialized JSON value is a plain object (dict) or not | ||
@@ -92,3 +100,3 @@ */ | ||
*/ | ||
export declare const fodemtv: <w_out extends unknown, si_key extends string, w_value extends unknown>(h_thing: Record<si_key, w_value>, f_transform: (w_value: w_value, si_key?: si_key | undefined) => w_out) => Record<si_key, w_value> extends infer T ? { [si_key_out in keyof T]: w_out; } : never; | ||
export declare const fodemtv: <w_out extends unknown, si_key extends string, w_value extends unknown>(h_thing: Record<si_key, w_value>, f_transform: (w_value: w_value, si_key?: si_key | undefined) => w_out) => { [si_key_out in keyof Record<si_key, w_value>]: w_out; }; | ||
/** | ||
@@ -95,0 +103,0 @@ * Promise-based version of `setTimeout()` |
@@ -21,2 +21,16 @@ /** | ||
/** | ||
* Converts given identifier to "snake_case" | ||
*/ | ||
export const snake = (s_ident) => s_ident.toUpperCase() === s_ident | ||
// depending on upper or mixed case | ||
? s_ident.toLowerCase().replace(/[^a-z0-9$]+/g, '_') | ||
: s_ident.replace(/(?:[^a-zA-Z0-9$]*([A-Z])|[^a-zA-Z0-9$]+)/g, (s_ignore, s_cap) => '_' + (s_cap ? s_cap.toLowerCase() : '')); | ||
/** | ||
* Converts given identifier to "PascalCase" | ||
*/ | ||
// if all uppercase; make lower | ||
export const pascal = (s_ident) => (s_ident.toUpperCase() === s_ident ? pascal(s_ident.toLowerCase()) : s_ident) | ||
// convert to pascal | ||
.replace(/(?:^|[^A-Za-z0-9$])([\w0-9$])/g, (s_ignore, s_letter) => s_letter.toUpperCase()); | ||
/** | ||
* Simple test for whether a deserialized JSON value is a plain object (dict) or not | ||
@@ -23,0 +37,0 @@ */ |
{ | ||
"name": "@blake.regalia/belt", | ||
"version": "0.15.0", | ||
"version": "0.16.0", | ||
"repository": "github:blake-regalia/belt", | ||
@@ -5,0 +5,0 @@ "license": "ISC", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
166581
3310