stdlib
stdlib copied to clipboard
feat: refactor truncate string package
Part of #1062
Description
What is the purpose of this pull request?
This pull request:
- [x] Refactors the string package
@stdlib/string/truncate
- [x] Adds
@stdlib/string/base/truncate
- [x] Adds
@stdlib/string/base/truncate-code-point
- [x] Adds
@stdlib/string/base/truncate-grapheme-cluster
- [x] Adds
@stdlib/string/num-code-points
Related Issues
Does this pull request have any related issues?
This pull request:
- part of #1062
Questions
Any questions for reviewers of this pull request?
No.
Other
Any other information relevant to this pull request? This may include screenshots, references, and/or implementation notes.
No.
Checklist
Please ensure the following tasks are completed before submitting this pull request.
- [x] Read, understood, and followed the contributing guidelines.
@stdlib-js/reviewers
Coverage Report
Package | Statements | Branches | Functions | Lines |
---|---|---|---|---|
string/base/truncate-code-point | $\color{green}165/165$ $\color{green}+100.00\%$ |
$\color{green}15/15$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}165/165$ $\color{green}+100.00\%$ |
string/base/truncate-grapheme-cluster | $\color{green}142/142$ $\color{green}+100.00\%$ |
$\color{green}14/14$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}142/142$ $\color{green}+100.00\%$ |
string/base/truncate | $\color{green}113/113$ $\color{green}+100.00\%$ |
$\color{green}8/8$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}113/113$ $\color{green}+100.00\%$ |
string/num-code-points | $\color{green}137/137$ $\color{green}+100.00\%$ |
$\color{green}11/11$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}137/137$ $\color{green}+100.00\%$ |
string/truncate | $\color{green}187/187$ $\color{green}+100.00\%$ |
$\color{green}22/22$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}187/187$ $\color{green}+100.00\%$ |
The above coverage report was generated for the changes in this PR.
Coverage Report
Package | Statements | Branches | Functions | Lines |
---|---|---|---|---|
string/base/truncate-code-points | $\color{green}165/165$ $\color{green}+100.00\%$ |
$\color{green}15/15$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}165/165$ $\color{green}+100.00\%$ |
string/base/truncate-grapheme-clusters | $\color{green}142/142$ $\color{green}+100.00\%$ |
$\color{green}14/14$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}142/142$ $\color{green}+100.00\%$ |
string/base/truncate | $\color{green}113/113$ $\color{green}+100.00\%$ |
$\color{green}8/8$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}113/113$ $\color{green}+100.00\%$ |
string/num-code-points | $\color{green}137/137$ $\color{green}+100.00\%$ |
$\color{green}11/11$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}137/137$ $\color{green}+100.00\%$ |
string/truncate | $\color{green}187/187$ $\color{green}+100.00\%$ |
$\color{green}22/22$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}187/187$ $\color{green}+100.00\%$ |
The above coverage report was generated for the changes in this PR.
Coverage Report
Package | Statements | Branches | Functions | Lines |
---|---|---|---|---|
string/base/truncate-code-points | $\color{green}165/165$ $\color{green}+100.00\%$ |
$\color{green}15/15$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}165/165$ $\color{green}+100.00\%$ |
string/base/truncate-grapheme-clusters | $\color{green}142/142$ $\color{green}+100.00\%$ |
$\color{green}14/14$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}142/142$ $\color{green}+100.00\%$ |
string/base/truncate | $\color{green}113/113$ $\color{green}+100.00\%$ |
$\color{green}8/8$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}113/113$ $\color{green}+100.00\%$ |
string/num-code-points | $\color{green}137/137$ $\color{green}+100.00\%$ |
$\color{green}11/11$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}137/137$ $\color{green}+100.00\%$ |
string/truncate | $\color{green}187/187$ $\color{green}+100.00\%$ |
$\color{green}22/22$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}187/187$ $\color{green}+100.00\%$ |
The above coverage report was generated for the changes in this PR.
Coverage Report
Package | Statements | Branches | Functions | Lines |
---|---|---|---|---|
string/base/truncate-code-points | $\color{green}165/165$ $\color{green}+100.00\%$ |
$\color{green}15/15$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}165/165$ $\color{green}+100.00\%$ |
string/base/truncate-grapheme-clusters | $\color{green}142/142$ $\color{green}+100.00\%$ |
$\color{green}14/14$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}142/142$ $\color{green}+100.00\%$ |
string/base/truncate | $\color{green}113/113$ $\color{green}+100.00\%$ |
$\color{green}8/8$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}113/113$ $\color{green}+100.00\%$ |
string/num-code-points | $\color{green}137/137$ $\color{green}+100.00\%$ |
$\color{green}11/11$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}137/137$ $\color{green}+100.00\%$ |
string/truncate | $\color{green}187/187$ $\color{green}+100.00\%$ |
$\color{green}22/22$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}187/187$ $\color{green}+100.00\%$ |
The above coverage report was generated for the changes in this PR.
Coverage Report
Package | Statements | Branches | Functions | Lines |
---|---|---|---|---|
string/base/truncate-code-points | $\color{green}165/165$ $\color{green}+100.00\%$ |
$\color{green}15/15$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}165/165$ $\color{green}+100.00\%$ |
string/base/truncate-grapheme-clusters | $\color{green}142/142$ $\color{green}+100.00\%$ |
$\color{green}14/14$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}142/142$ $\color{green}+100.00\%$ |
string/base/truncate | $\color{green}113/113$ $\color{green}+100.00\%$ |
$\color{green}8/8$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}113/113$ $\color{green}+100.00\%$ |
string/num-code-points | $\color{green}137/137$ $\color{green}+100.00\%$ |
$\color{green}11/11$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}137/137$ $\color{green}+100.00\%$ |
string/truncate | $\color{green}187/187$ $\color{green}+100.00\%$ |
$\color{green}22/22$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}187/187$ $\color{green}+100.00\%$ |
The above coverage report was generated for the changes in this PR.
Coverage Report
Package | Statements | Branches | Functions | Lines |
---|---|---|---|---|
string/base/truncate-code-points | $\color{green}162/162$ $\color{green}+100.00\%$ |
$\color{green}14/14$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}162/162$ $\color{green}+100.00\%$ |
string/base/truncate-grapheme-clusters | $\color{green}139/139$ $\color{green}+100.00\%$ |
$\color{green}13/13$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}139/139$ $\color{green}+100.00\%$ |
string/base/truncate | $\color{green}112/112$ $\color{green}+100.00\%$ |
$\color{green}7/7$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}112/112$ $\color{green}+100.00\%$ |
string/num-code-points | $\color{green}137/137$ $\color{green}+100.00\%$ |
$\color{green}11/11$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}137/137$ $\color{green}+100.00\%$ |
string/truncate | $\color{green}187/187$ $\color{green}+100.00\%$ |
$\color{green}22/22$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}187/187$ $\color{green}+100.00\%$ |
The above coverage report was generated for the changes in this PR.
Coverage Report
Package | Statements | Branches | Functions | Lines |
---|---|---|---|---|
string/base/truncate-code-points | $\color{green}162/162$ $\color{green}+100.00\%$ |
$\color{green}14/14$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}162/162$ $\color{green}+100.00\%$ |
string/base/truncate-grapheme-clusters | $\color{green}139/139$ $\color{green}+100.00\%$ |
$\color{green}13/13$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}139/139$ $\color{green}+100.00\%$ |
string/base/truncate | $\color{green}112/112$ $\color{green}+100.00\%$ |
$\color{green}7/7$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}112/112$ $\color{green}+100.00\%$ |
string/num-code-points | $\color{green}137/137$ $\color{green}+100.00\%$ |
$\color{green}11/11$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}137/137$ $\color{green}+100.00\%$ |
string/truncate | $\color{green}187/187$ $\color{green}+100.00\%$ |
$\color{green}22/22$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}187/187$ $\color{green}+100.00\%$ |
The above coverage report was generated for the changes in this PR.
Coverage Report
Package | Statements | Branches | Functions | Lines |
---|---|---|---|---|
string/base/truncate-code-points | $\color{green}162/162$ $\color{green}+100.00\%$ |
$\color{green}14/14$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}162/162$ $\color{green}+100.00\%$ |
string/base/truncate-grapheme-clusters | $\color{green}139/139$ $\color{green}+100.00\%$ |
$\color{green}13/13$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}139/139$ $\color{green}+100.00\%$ |
string/base/truncate | $\color{green}112/112$ $\color{green}+100.00\%$ |
$\color{green}7/7$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}112/112$ $\color{green}+100.00\%$ |
string/num-code-points | $\color{green}137/137$ $\color{green}+100.00\%$ |
$\color{green}11/11$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}137/137$ $\color{green}+100.00\%$ |
string/truncate | $\color{green}187/187$ $\color{green}+100.00\%$ |
$\color{green}22/22$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}187/187$ $\color{green}+100.00\%$ |
The above coverage report was generated for the changes in this PR.
Coverage Report
Package | Statements | Branches | Functions | Lines |
---|---|---|---|---|
string/base/truncate-code-points | $\color{green}161/161$ $\color{green}+100.00\%$ |
$\color{green}14/14$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}161/161$ $\color{green}+100.00\%$ |
string/base/truncate-grapheme-clusters | $\color{green}139/139$ $\color{green}+100.00\%$ |
$\color{green}13/13$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}139/139$ $\color{green}+100.00\%$ |
string/base/truncate | $\color{green}112/112$ $\color{green}+100.00\%$ |
$\color{green}7/7$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}112/112$ $\color{green}+100.00\%$ |
string/num-code-points | $\color{green}137/137$ $\color{green}+100.00\%$ |
$\color{green}11/11$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}137/137$ $\color{green}+100.00\%$ |
string/truncate | $\color{green}187/187$ $\color{green}+100.00\%$ |
$\color{green}22/22$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}187/187$ $\color{green}+100.00\%$ |
The above coverage report was generated for the changes in this PR.
Coverage Report
Package | Statements | Branches | Functions | Lines |
---|---|---|---|---|
string/base/truncate-code-points | $\color{green}161/161$ $\color{green}+100.00\%$ |
$\color{green}14/14$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}161/161$ $\color{green}+100.00\%$ |
string/base/truncate-grapheme-clusters | $\color{green}139/139$ $\color{green}+100.00\%$ |
$\color{green}13/13$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}139/139$ $\color{green}+100.00\%$ |
string/base/truncate | $\color{green}112/112$ $\color{green}+100.00\%$ |
$\color{green}7/7$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}112/112$ $\color{green}+100.00\%$ |
string/num-code-points | $\color{green}137/137$ $\color{green}+100.00\%$ |
$\color{green}11/11$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}137/137$ $\color{green}+100.00\%$ |
string/truncate | $\color{green}187/187$ $\color{green}+100.00\%$ |
$\color{green}22/22$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}187/187$ $\color{green}+100.00\%$ |
The above coverage report was generated for the changes in this PR.
Coverage Report
Package | Statements | Branches | Functions | Lines |
---|---|---|---|---|
string/base/truncate-code-points | $\color{green}161/161$ $\color{green}+100.00\%$ |
$\color{green}14/14$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}161/161$ $\color{green}+100.00\%$ |
string/base/truncate-grapheme-clusters | $\color{green}139/139$ $\color{green}+100.00\%$ |
$\color{green}13/13$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}139/139$ $\color{green}+100.00\%$ |
string/base/truncate | $\color{green}112/112$ $\color{green}+100.00\%$ |
$\color{green}7/7$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}112/112$ $\color{green}+100.00\%$ |
string/num-code-points | $\color{green}137/137$ $\color{green}+100.00\%$ |
$\color{green}11/11$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}137/137$ $\color{green}+100.00\%$ |
string/truncate | $\color{green}187/187$ $\color{green}+100.00\%$ |
$\color{green}22/22$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}187/187$ $\color{green}+100.00\%$ |
The above coverage report was generated for the changes in this PR.
Coverage Report
Package | Statements | Branches | Functions | Lines |
---|---|---|---|---|
string/base/truncate-code-points | $\color{green}161/161$ $\color{green}+100.00\%$ |
$\color{green}14/14$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}161/161$ $\color{green}+100.00\%$ |
string/base/truncate-grapheme-clusters | $\color{green}139/139$ $\color{green}+100.00\%$ |
$\color{green}13/13$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}139/139$ $\color{green}+100.00\%$ |
string/base/truncate | $\color{green}112/112$ $\color{green}+100.00\%$ |
$\color{green}7/7$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}112/112$ $\color{green}+100.00\%$ |
string/num-code-points | $\color{green}137/137$ $\color{green}+100.00\%$ |
$\color{green}11/11$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}137/137$ $\color{green}+100.00\%$ |
string/truncate | $\color{green}187/187$ $\color{green}+100.00\%$ |
$\color{green}22/22$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}187/187$ $\color{green}+100.00\%$ |
The above coverage report was generated for the changes in this PR.
Coverage Report
Package | Statements | Branches | Functions | Lines |
---|---|---|---|---|
string/base/truncate-code-points | $\color{green}161/161$ $\color{green}+100.00\%$ |
$\color{green}14/14$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}161/161$ $\color{green}+100.00\%$ |
string/base/truncate-grapheme-clusters | $\color{green}139/139$ $\color{green}+100.00\%$ |
$\color{green}13/13$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}139/139$ $\color{green}+100.00\%$ |
string/base/truncate | $\color{green}112/112$ $\color{green}+100.00\%$ |
$\color{green}7/7$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}112/112$ $\color{green}+100.00\%$ |
string/num-code-points | $\color{green}137/137$ $\color{green}+100.00\%$ |
$\color{green}11/11$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}137/137$ $\color{green}+100.00\%$ |
string/truncate | $\color{green}187/187$ $\color{green}+100.00\%$ |
$\color{green}22/22$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}187/187$ $\color{green}+100.00\%$ |
The above coverage report was generated for the changes in this PR.
Coverage Report
Package | Statements | Branches | Functions | Lines |
---|---|---|---|---|
string/base/truncate-code-points | $\color{green}161/161$ $\color{green}+100.00\%$ |
$\color{green}14/14$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}161/161$ $\color{green}+100.00\%$ |
string/base/truncate-grapheme-clusters | $\color{green}139/139$ $\color{green}+100.00\%$ |
$\color{green}13/13$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}139/139$ $\color{green}+100.00\%$ |
string/base/truncate | $\color{green}112/112$ $\color{green}+100.00\%$ |
$\color{green}7/7$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}112/112$ $\color{green}+100.00\%$ |
string/num-code-points | $\color{green}132/132$ $\color{green}+100.00\%$ |
$\color{green}11/11$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}132/132$ $\color{green}+100.00\%$ |
string/truncate | $\color{green}186/186$ $\color{green}+100.00\%$ |
$\color{green}22/22$ $\color{green}+100.00\%$ |
$\color{green}1/1$ $\color{green}+100.00\%$ |
$\color{green}186/186$ $\color{green}+100.00\%$ |
The above coverage report was generated for the changes in this PR.