UNPKG

@garysui/json-ops

Version:

TypeScript utilities for JSON operations: flatten, diff, apply, and more

72 lines (54 loc) โ€ข 3 kB
# Changelog All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [2.0.1] - 2024-08-03 ### Added - ๐Ÿ“ **MIT License** file added to project root - ๐Ÿ“‹ **CHANGELOG.md** for tracking version history and changes - ๐Ÿค **CONTRIBUTING.md** with comprehensive contribution guidelines - ๐Ÿท๏ธ **Status badges** in README for npm version, license, TypeScript support, bundle size, and test coverage - ๐Ÿ“ฆ **Improved npm package** configuration with better file inclusion - ๐Ÿšซ **Enhanced .npmignore** with comprehensive exclusions for cleaner packages ### Enhanced - ๐Ÿ“š **README improvements** with installation requirements, development setup, and package stats - ๐Ÿ”— **Better project links** including npm package, GitHub repository, and issue tracking - ๐Ÿ“– **Open source best practices** with proper project structure and documentation ## [2.0.0] - 2024-08-03 ### Added - ๐ŸŽฏ **Comprehensive flat path notation specification** with visual documentation - ๐Ÿ”„ **Real-world test cases** covering database operations, config management, form tracking, and API responses - ๐Ÿ“Š **Performance and edge case tests** for large structures, deep nesting, and special characters - ๐Ÿ“ **Enhanced README** with visual diagrams, path notation table, and use case examples - ๐Ÿงช **104+ test cases** ensuring robust functionality across various scenarios - ๐Ÿ“ฆ **MIT License** and proper open-source project structure ### Enhanced - โšก **Improved path notation examples** covering all combinations (`.key`, `@i`, `.key@i`, `@i.key`) - ๐Ÿ›ก๏ธ **Better edge case handling** for sparse arrays, special characters, and primitive types - ๐Ÿ“š **Comprehensive documentation** with installation, contribution guidelines, and links - ๐Ÿ”ง **Better npm package configuration** with proper file exclusions ### Technical - ๐ŸŽฏ **Zero runtime dependencies** for lightweight integration - ๐Ÿ“ฆ **~8KB bundle size** with full TypeScript definitions - โœ… **104 passing tests** covering real-world scenarios - ๐Ÿ”„ **Round-trip consistency** guaranteed for all data types ## [1.0.2] - Previous Version ### Initial Release - โšก Basic `flat`, `unflat`, `diff`, `apply` functionality - ๐Ÿ”ง `replaceUndefined` and `restoreUndefined` utilities - ๐Ÿ“ `sortKeys` for deterministic object ordering - ๐Ÿงช Basic test coverage --- ## Migration Guide ### From 1.x to 2.x No breaking changes in the API. Version 2.0.0 is a major documentation and testing enhancement: - โœ… All existing code continues to work - โœ… Enhanced documentation and examples - โœ… More comprehensive test coverage - โœ… Better npm package structure ```typescript // All existing usage remains the same import { flat, unflat, diff, apply } from '@garysui/json-ops'; const flattened = flat({ x: [1, 2] }); // Still works exactly as before ```