You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* chore: bumped version
* fix: preserve numeric string keys in JSON objects (#40)
* fix: preserve numeric string keys in JSON objects
## Changed
- JSON/TS/Vue parsers now mark numeric object keys before flattening and restore them after unflattening
- Updated existing numeric literal keys test to reflect marker-based output
## New
- Added `markNumericKeyObjects` and `restoreNumericKeys` utilities in parser.ts
- Added `NUMERIC_KEY_MARKER` constant using STX control character
- Added round-trip tests for numeric string key preservation across all parsers
- Added unit tests for mark/restore utility functions
* refactor: use NUMERIC_KEY_MARKER constant in ts parser test
## Changed
- Replaced hard-coded \x02 literal with imported NUMERIC_KEY_MARKER constant in numeric literal keys test
* fix: resolve parser and utility edge case bugs (#41)
* fix: resolve parser and utility edge case bugs
## Changed
- TS parser brace counting now skips string literals and comments, preventing file corruption with `{name}` placeholders
- Android XML and PO parsers use `??` instead of `||` to preserve falsy values like `0` and `""`
- deepMerge replaces arrays from source instead of concatenating, preventing unbounded growth
- Android XML no longer collapses single-item arrays unnecessarily
- Checksum calculation detects deleted source keys and marks them for removal from target files
- Translation engine filters out deleted keys so stale translations are cleaned up
* fix: shallow-clone arrays in deepMerge to avoid aliasing
* fix: coerce values to string before XML escaping in renderer
* refactor: use exported ChecksumState enum instead of string literal
Copy file name to clipboardExpand all lines: README.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ Lara Cli automates translation of your i18n files with a single command, preserv
6
6
7
7
Supports multiple file formats including JSON, PO (gettext), TypeScript, Vue I18n single-file components, Markdown and MDX files, and Android XML string resource files. See [Supported Formats](docs/config/formats.md) for details.
0 commit comments