changelog.md for @push.rocks/smartstring 2025-09-12 - 4.1.0 - feat(core) Introduce native implementations for Base64, random generation and normalization; remove runtime plugin dependencies; update tests, docs and package metadata Implemented a cross-platform universal Base64 encoder/decoder and replaced usage of external js-base64 with the internal implementation Added a custom, cross-platform random string generator (uses crypto.getRandomValues when available) and removed dependency on randomatic / crypto-random-string Replaced strip-indent usage with an internal stripIndent implementation in normalize utilities Switched domain parsing to use the standard URL class instead of external url.parse Simplified ts/smartstring.plugins.ts to only export @push.rocks/isounique and removed several plugin re-exports (js-base64, strip-indent, randomatic, url, smartenv) Updated test imports to use @git.zone/tstest/tapbundle Expanded and updated README with full usage, examples and API reference Updated package.json: trimmed dependencies, bumped @git.zone/tstest version, added packageManager (pnpm) entry and adjusted files/browserslist Added .claude/settings.local.json 2024-05-29 - 4.0.15 - maintenance Package metadata and TypeScript configuration updates. Updated package description. TypeScript configuration (tsconfig) adjustments. npmextra.json updated (githost entries). 2024-03-03 - 4.0.14 → 4.0.1 - maintenance & core fixes Routine core fixes, small updates and version bumps across the 4.0.x series. Multiple "fix(core): update" commits addressing internal/core issues. Several version-only releases (patch bumps and releases with minimal change notes). 2022-03-18 - 4.0.2 → 3.0.26 - release consolidation Consolidated releases and small fixes spanning late 2020–early 2022. Several patch releases with minor fixes and version bumps. Routine maintenance and stability improvements. 2018-11-28 - 3.0.4 → 3.0.0 - CI & dependency fixes Improvements to build/CI and dependency cleanups for the 3.0.x line. fix(dependencies and structure): updated dependencies and project structure (3.0.4). fix(ci): reduced build dependencies and fixed build steps (3.0.3, 3.0.2). fix(dependencies): updated test framework and removed obsolete dependency on typings-global (3.0.1, 3.0.0). Numerous small fixes and version bump releases across 3.0.x. 2018-07-21 - 2.0.28 - BREAKING CHANGE: package scope Breaking change: package scope changed. Changed package scope to @pushrocks (BREAKING CHANGE). 2017-10-26 - 2.0.27 → 2.0.25 - code quality & npm metadata Small refactors and npm metadata additions. Refactor to use const (2.0.27). Added npmextra.json (2.0.26). Added create module (2.0.25). 2016-10-31 - 2.0.19 → 2.0.17 - Base64 & exports Added Base64 handling and improved exports. Added Base64 handling and exposed base64 functions separate from class (2.0.17–2.0.19). Small export fixes. 2016-07-17 - 2.0.14 → 2.0.12 - ES6, indent/deindent, tests Feature enhancements around string indentation and ES6 migration. Switched codebase to ES6 (2.0.14). Implemented deindent and working indent module; added tests (2.0.12). Prep work for indent functionality and recompiled builds (2.0.11, 2.0.10). 2016-06-21 - 2.0.9 → 2.0.6 - domain handling improvements Domain parsing and regex improvements. Fixed Domain regex to include '-' and '_' and improved fullName handling (2.0.9, 2.0.8). Now evaluates Domains without protocol specified (2.0.6). 2016-05-25 - 2.0.4 → 2.0.0 - core features & CI/docs Major 2.0.0 work and related improvements. Now computes zoneName and detects protocol (2.0.0). Added authors note, improved README and CI (AppVeyor, GitLab CI) across several commits. Multiple small fixes, dependency updates and YML/CI tweaks (2.0.4, 2.0.3, 2.0.2, 2.0.1). 2016-05-16 - 1.0.3 → 1.0.1 - parser & typings fixes Parser improvements and TypeScript declaration fixes. Correctly parsing a Domain and structure updates (1.0.3). Fixes for typings and declaration issues (1.0.2, 1.0.1). 2016-04-15 - 1.0.0 → 0.0.3 - initial stable release Initial stable release artifacts. Added TypeScript regex section and performed first 1.0.0 release (1.0.0). Prior 0.0.x preparatory releases. 2016-02-23 - 0.0.0 → initial - project initialization Project initialization and first commits. Initial commit and early CI/travis updates.