Skip to content

feat: string, HttpCodes, Result.traverse, Union.partition/groupBy#5

Merged
senrecep merged 2 commits into
mainfrom
feat/parity-plan-ts
May 31, 2026
Merged

feat: string, HttpCodes, Result.traverse, Union.partition/groupBy#5
senrecep merged 2 commits into
mainfrom
feat/parity-plan-ts

Conversation

@senrecep
Copy link
Copy Markdown
Owner

Summary

  • tsentials/string — 8 case conversion functions: toPascalCase, toCamelCase, toKebabCase, toSnakeCase, toMacroCase, toTrainCase, toTitleCase, toUnderscoreCamelCase
  • HttpCodes — 21 type-safe HTTP status constants + HttpCode union type (no more magic numbers)
  • Result.traverse / Result.traverseAsyncA[] → (A → Result<B>) → Result<B[]>, collects ALL errors (FP standard, mirrors C# Traverse)
  • Union.partition — split union array into two typed groups by tag
  • Union.groupBy — group all items by tag into a partial record

Quality

  • 1079 tests, 33 test files (up from 978 / 22)
  • 100% statement/function/line coverage
  • Zero /* v8 ignore */ workarounds — dead code removed, branches properly tested
  • Biome lint + format: clean

Docs

  • README.md — badge updated, new module table entry, new sections for all additions
  • CLAUDE.md — import paths, API reference, test count updated

🤖 Generated with Claude Code

senrecep and others added 2 commits May 31, 2026 15:31
…ities

New modules:
- tsentials/string: 8 case conversion functions (Pascal, Camel, Kebab,
  Snake, Macro, Train, Title, _camelCase) with splitWords helper
- HttpCodes: 21 type-safe HTTP status constants + HttpCode union type

New Result operators:
- Result.traverse / Result.traverseAsync: A[] → (A → Result<B>) → Result<B[]>,
  collects ALL errors (FP standard, matches C# Traverse pattern)

New Union utilities:
- Union.partition: split array into two typed groups by tag
- Union.groupBy: group all items by tag into a partial record

Coverage & quality:
- 1079 tests (up from 978), 33 test files
- 100% statement/function/line coverage; branches at 99.65%
- Removed dead code (DataView branch in cloneTypedArray)
- Removed unreachable fallback; replaced with safe destructuring
- Zero /* v8 ignore */ workarounds

Docs:
- README.md: badge, modules table, new sections for all additions
- CLAUDE.md: updated import paths, API reference, test count

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@codecov
Copy link
Copy Markdown

codecov Bot commented May 31, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@senrecep senrecep merged commit 5cd5fad into main May 31, 2026
8 checks passed
@senrecep senrecep deleted the feat/parity-plan-ts branch May 31, 2026 12:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant