diff --git a/CHANGELOG.md b/CHANGELOG.md index 0829ca6..6c7374a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,28 @@ +# v0.13.0 Feb 26th, 2026 + +## Changelog + +### Features + +- Added comprehensive encoding and decoding functions for multiple formats: + - **Base64 Encoding/Decoding**: `encodeAsBase64()` and `decodeBase64()` with native fallbacks and ES5 polyfill support + - **URL-Safe Base64**: `encodeAsBase64Url()` and `decodeBase64Url()` for safe Base64 encoding in URLs (replaces `+` with `-`, `/` with `_`, removes padding) + - **Hexadecimal Encoding/Decoding**: `encodeAsHex()` and `decodeHex()` for hex string conversion + - **URI Encoding/Decoding**: `encodeAsUri()` and `decodeUri()` for URL component encoding + - All encoding functions include internal polyfills (`_encodeBase64Polyfill`, `_decodeBase64Polyfill`) for ES5 environment compatibility + - Consistent handling of null/undefined values across all encoding functions + +- Enhanced `createCustomError()` with `superArgsFn` parameter: + - New optional `superArgsFn` parameter allows custom transformation of constructor arguments before passing to base class + - Enables support for different argument orders and subsetting arguments passed to the base class constructor + - Useful for creating custom error subclasses with different constructor signatures than their base classes + - Example: HTTP error with `(statusCode, message)` signature can map to base `Error(message)` constructor + +### Performance Improvements + +- Improved performance of worker test execution + - Optimized test runner for faster execution in web worker environments + # v0.12.6 Feb 2nd, 2026 ## Changelog diff --git a/README.md b/README.md index b4af81f..8d7330d 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ npm install @nevware21/ts-utils --save **Recommended Version Specification:** ```json -"@nevware21/ts-utils": ">= 0.12.6 < 2.x" +"@nevware21/ts-utils": ">= 0.13.0 < 2.x" ``` > Note: v0.x and v1.x maintain ES5 compatibility. Future v2.x releases will update the baseline to newer ECMAScript versions. diff --git a/lib/package.json b/lib/package.json index 830fc18..731a984 100644 --- a/lib/package.json +++ b/lib/package.json @@ -1,7 +1,7 @@ { "name": "@nevware21/ts-utils", "description": "Comprehensive TypeScript/JavaScript utility library with cross-environment support (Node.js, browser, web worker) providing helper functions, polyfills (ES5-ES2023), type checking utilities, and optimized implementations for better minification and code readability", - "version": "0.12.6", + "version": "0.13.0", "homepage": "https://github.com/nevware21/ts-utils", "license": "MIT", "author": { diff --git a/package.json b/package.json index 435d42b..9e7b084 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@nevware21/ts-utils", "description": "Comprehensive TypeScript/JavaScript utility library with cross-environment support (Node.js, browser, web worker) providing helper functions, polyfills (ES5-ES2023), type checking utilities, and optimized implementations for better minification and code readability", - "version": "0.12.6", + "version": "0.13.0", "homepage": "https://github.com/nevware21/ts-utils", "license": "MIT", "author": {