🚨 Active Supply Chain Attack:node-ipc Package Compromised.Learn More
Socket
Book a DemoSign in
Socket

@stdlib/string-right-trim

Package Overview
Dependencies
Maintainers
4
Versions
15
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@stdlib/string-right-trim - npm Package Compare versions

Comparing version
0.0.9
to
0.1.0
CITATION.cff

Sorry, the diff of this file is not supported yet

+3
/// <reference path="../docs/types/index.d.ts" />
import rtrim from '../docs/types/index';
export = rtrim;
"use strict";var a=function(r,e){return function(){return e||r((e={exports:{}}).exports,e),e.exports}};var t=a(function(p,i){
var u=require('@stdlib/assert-is-string/dist').isPrimitive,s=require('@stdlib/error-tools-fmtprodmsg/dist'),n=require('@stdlib/string-base-right-trim/dist');function o(r){if(!u(r))throw new TypeError(s('1PR3B',r));return n(r)}i.exports=o
});var v=t();module.exports=v;
/** @license Apache-2.0 */
//# sourceMappingURL=index.js.map
{
"version": 3,
"sources": ["../lib/main.js", "../lib/index.js"],
"sourcesContent": ["/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( '@stdlib/assert-is-string' ).isPrimitive;\nvar format = require( '@stdlib/string-format' );\nvar base = require( '@stdlib/string-base-right-trim' );\n\n\n// MAIN //\n\n/**\n* Trims whitespace from the end of a string.\n*\n* @param {string} str - input string\n* @throws {TypeError} must provide a string\n* @returns {string} trimmed string\n*\n* @example\n* var out = rtrim( ' Whitespace ' );\n* // returns ' Whitespace'\n*\n* @example\n* var out = rtrim( '\\t\\t\\tTabs\\t\\t\\t' );\n* // returns '\\t\\t\\tTabs'\n*\n* @example\n* var out = rtrim( '\\n\\n\\nNew Lines\\n\\n\\n' );\n* // returns '\\n\\n\\nNew Lines'\n*/\nfunction rtrim( str ) {\n\tif ( !isString( str ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. Must provide a string. Value: `%s`.', str ) );\n\t}\n\treturn base( str );\n}\n\n\n// EXPORTS //\n\nmodule.exports = rtrim;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Trim whitespace characters from the end of a string.\n*\n* @module @stdlib/string-right-trim\n*\n* @example\n* var rtrim = require( '@stdlib/string-right-trim' );\n*\n* var out = rtrim( ' Whitespace ' );\n* // returns ' Whitespace'\n*\n* out = rtrim( '\\t\\t\\tTabs\\t\\t\\t' );\n* // returns '\\t\\t\\tTabs'\n*\n* out = rtrim( '\\n\\n\\nNew Lines\\n\\n\\n' );\n* // returns '\\n\\n\\nNew Lines'\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n"],
"mappings": "uGAAA,IAAAA,EAAAC,EAAA,SAAAC,EAAAC,EAAA,cAsBA,IAAIC,EAAW,QAAS,0BAA2B,EAAE,YACjDC,EAAS,QAAS,uBAAwB,EAC1CC,EAAO,QAAS,gCAAiC,EAwBrD,SAASC,EAAOC,EAAM,CACrB,GAAK,CAACJ,EAAUI,CAAI,EACnB,MAAM,IAAI,UAAWH,EAAQ,wDAAyDG,CAAI,CAAE,EAE7F,OAAOF,EAAME,CAAI,CAClB,CAKAL,EAAO,QAAUI,IClBjB,IAAIE,EAAO,IAKX,OAAO,QAAUA",
"names": ["require_main", "__commonJSMin", "exports", "module", "isString", "format", "base", "rtrim", "str", "main"]
}
/**
* @license Apache-2.0
*
* Copyright (c) 2018 The Stdlib Authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
'use strict';
// MODULES //
var isString = require( '@stdlib/assert-is-string' ).isPrimitive;
var format = require( '@stdlib/string-format' );
var base = require( '@stdlib/string-base-right-trim' );
// MAIN //
/**
* Trims whitespace from the end of a string.
*
* @param {string} str - input string
* @throws {TypeError} must provide a string
* @returns {string} trimmed string
*
* @example
* var out = rtrim( ' Whitespace ' );
* // returns ' Whitespace'
*
* @example
* var out = rtrim( '\t\t\tTabs\t\t\t' );
* // returns '\t\t\tTabs'
*
* @example
* var out = rtrim( '\n\n\nNew Lines\n\n\n' );
* // returns '\n\n\nNew Lines'
*/
function rtrim( str ) {
if ( !isString( str ) ) {
throw new TypeError( format( 'invalid argument. Must provide a string. Value: `%s`.', str ) );
}
return base( str );
}
// EXPORTS //
module.exports = rtrim;
+1
-1

@@ -19,3 +19,3 @@ /*

// TypeScript Version: 2.0
// TypeScript Version: 4.1

@@ -22,0 +22,0 @@ /**

@@ -41,3 +41,3 @@ /**

var rtrim = require( './right_trim.js' );
var main = require( './main.js' );

@@ -47,2 +47,2 @@

module.exports = rtrim;
module.exports = main;
+1
-1

@@ -1,1 +0,1 @@

Copyright (c) 2016-2022 The Stdlib Authors.
Copyright (c) 2016-2023 The Stdlib Authors.
{
"name": "@stdlib/string-right-trim",
"version": "0.0.9",
"version": "0.1.0",
"description": "Trim whitespace characters from the end of a string.",

@@ -16,5 +16,2 @@ "license": "Apache-2.0",

],
"bin": {
"rtrim": "./bin/cli"
},
"main": "./lib",

@@ -44,23 +41,11 @@ "directories": {

"dependencies": {
"@stdlib/assert-is-regexp-string": "^0.0.x",
"@stdlib/assert-is-string": "^0.0.x",
"@stdlib/cli-ctor": "^0.0.x",
"@stdlib/fs-read-file": "^0.0.x",
"@stdlib/process-read-stdin": "^0.0.x",
"@stdlib/regexp-eol": "^0.0.x",
"@stdlib/streams-node-stdin": "^0.0.x",
"@stdlib/string-format": "^0.0.x",
"@stdlib/string-replace": "^0.0.x",
"@stdlib/utils-regexp-from-string": "^0.0.x"
"@stdlib/assert-is-string": "^0.1.0",
"@stdlib/string-base-right-trim": "^0.1.0",
"@stdlib/string-format": "^0.1.0"
},
"devDependencies": {
"@stdlib/assert-is-browser": "^0.0.x",
"@stdlib/assert-is-windows": "^0.0.x",
"@stdlib/bench": "^0.0.x",
"@stdlib/process-exec-path": "^0.0.x",
"@stdlib/string-from-code-point": "^0.0.x",
"tape": "git+https://github.com/kgryte/tape.git#fix/globby",
"proxyquire": "^2.0.0",
"istanbul": "^0.4.1",
"tap-spec": "5.x.x"
"tap-min": "git+https://github.com/Planeshifter/tap-min.git"
},

@@ -98,5 +83,5 @@ "engines": {

"funding": {
"type": "patreon",
"url": "https://www.patreon.com/athan"
"type": "opencollective",
"url": "https://opencollective.com/stdlib"
}
}
+42
-101

@@ -21,4 +21,15 @@ <!--

# Right Trim
<details>
<summary>
About stdlib...
</summary>
<p>We believe in a future in which the web is a preferred environment for numerical computation. To help realize this future, we've built stdlib. stdlib is a standard library, with an emphasis on numerical and scientific computation, written in JavaScript (and C) for execution in browsers and in Node.js.</p>
<p>The library is fully decomposable, being architected in such a way that you can swap out and mix and match APIs and functionality to cater to your exact preferences and use cases.</p>
<p>When you use stdlib, you can be absolutely certain that you are using the most thorough, rigorous, well-written, studied, documented, tested, measured, and high-quality code out there.</p>
<p>To join us in bringing numerical computing to the web, get started by checking us out on <a href="https://github.com/stdlib-js/stdlib">GitHub</a>, and please consider <a href="https://opencollective.com/stdlib">financially supporting stdlib</a>. We greatly appreciate your continued support!</p>
</details>
# rtrim
[![NPM version][npm-image]][npm-url] [![Build Status][test-image]][test-url] [![Coverage Status][coverage-image]][coverage-url] <!-- [![dependencies][dependencies-image]][dependencies-url] -->

@@ -63,4 +74,20 @@

- Following [Unicode 6.3.0][unicode] and later, "whitespace" is defined as the following characters: `[ \\f\\n\\r\\t\\v\\u0020\\u00a0\\u1680\\u2000-\\u200a\\u2028\\u2029\\u202f\\u205f\\u3000\\ufeff]`.
- Following [Unicode 6.3.0][unicode] and later, "whitespace" is defined as the following characters:
- `\f`
- `\n`
- `\r`
- `\t`
- `\v`
- `\u0020`
- `\u00a0`
- `\u1680`
- `\u2000-\u200a`
- `\u2028`
- `\u2029`
- `\u202f`
- `\u205f`
- `\u3000`
- `\ufeff`
</section>

@@ -93,95 +120,4 @@

* * *
<section class="cli">
## CLI
<section class="installation">
## Installation
To use the module as a general utility, install the module globally
```bash
npm install -g @stdlib/string-right-trim
```
</section>
<!-- CLI usage documentation. -->
<section class="usage">
### Usage
```text
Usage: rtrim [options] [<string>]
Options:
-h, --help Print this message.
-V, --version Print the package version.
--split sep Delimiter for stdin data. Default: '/\\r?\\n/'.
```
</section>
<!-- /.usage -->
<!-- CLI usage notes. Make sure to keep an empty line after the `section` element and another before the `/section` close. -->
<section class="notes">
### Notes
- If the split separator is a [regular expression][mdn-regexp], ensure that the `split` option is either properly escaped or enclosed in quotes.
```bash
# Not escaped...
$ echo -n $' foo \n bar ' | rtrim --split /\r?\n/
# Escaped...
$ echo -n $' foo \n bar ' | rtrim --split /\\r?\\n/
```
- The implementation ignores trailing delimiters.
</section>
<!-- /.notes -->
<section class="examples">
### Examples
```bash
$ rtrim 'beep boop '
beep boop
```
To use as a [standard stream][standard-streams],
```bash
$ echo -n 'beep boop ' | rtrim
beep boop
```
By default, when used as a [standard stream][standard-streams], the implementation assumes newline-delimited data. To specify an alternative delimiter, set the `split` option.
```bash
$ echo -n ' foo \t bar \t baz ' | rtrim --split '\t'
foo
bar
baz
```
</section>
<!-- /.examples -->
</section>
<!-- /.cli -->
<!-- Section for related `stdlib` packages. Do not manually edit this section, as it is automatically populated. -->

@@ -191,8 +127,7 @@

* * *
## See Also
- <span class="package-name">[`@stdlib/string/left-trim`][@stdlib/string/left-trim]</span><span class="delimiter">: </span><span class="description">trim whitespace characters from the beginning of a string.</span>
- <span class="package-name">[`@stdlib/string/trim`][@stdlib/string/trim]</span><span class="delimiter">: </span><span class="description">trim whitespace characters from the beginning and end of a string.</span>
- <span class="package-name">[`@stdlib/string-right-trim-cli`][@stdlib/string-right-trim-cli]</span><span class="delimiter">: </span><span class="description">CLI package for use as a command-line utility.</span>
- <span class="package-name">[`@stdlib/string-left-trim`][@stdlib/string/left-trim]</span><span class="delimiter">: </span><span class="description">trim whitespace characters from the beginning of a string.</span>
- <span class="package-name">[`@stdlib/string-trim`][@stdlib/string/trim]</span><span class="delimiter">: </span><span class="description">trim whitespace characters from the beginning and end of a string.</span>

@@ -229,3 +164,3 @@ </section>

Copyright &copy; 2016-2022. The Stdlib [Authors][stdlib-authors].
Copyright &copy; 2016-2023. The Stdlib [Authors][stdlib-authors].

@@ -240,7 +175,9 @@ </section>

[@stdlib/string-right-trim-cli]: https://www.npmjs.com/package/@stdlib/string-right-trim-cli
[npm-image]: http://img.shields.io/npm/v/@stdlib/string-right-trim.svg
[npm-url]: https://npmjs.org/package/@stdlib/string-right-trim
[test-image]: https://github.com/stdlib-js/string-right-trim/actions/workflows/test.yml/badge.svg?branch=v0.0.9
[test-url]: https://github.com/stdlib-js/string-right-trim/actions/workflows/test.yml?query=branch:v0.0.9
[test-image]: https://github.com/stdlib-js/string-right-trim/actions/workflows/test.yml/badge.svg?branch=v0.1.0
[test-url]: https://github.com/stdlib-js/string-right-trim/actions/workflows/test.yml?query=branch:v0.1.0

@@ -258,3 +195,3 @@ [coverage-image]: https://img.shields.io/codecov/c/github/stdlib-js/string-right-trim/main.svg

[chat-image]: https://img.shields.io/gitter/room/stdlib-js/stdlib.svg
[chat-url]: https://gitter.im/stdlib-js/stdlib/
[chat-url]: https://app.gitter.im/#/room/#stdlib-js_stdlib:gitter.im

@@ -265,2 +202,6 @@ [stdlib]: https://github.com/stdlib-js/stdlib

[cli-section]: https://github.com/stdlib-js/string-right-trim#cli
[cli-url]: https://github.com/stdlib-js/string-right-trim/tree/cli
[@stdlib/string-right-trim]: https://github.com/stdlib-js/string-right-trim/tree/main
[umd]: https://github.com/umdjs/umd

@@ -267,0 +208,0 @@ [es-module]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules

Sorry, the diff of this file is not supported yet

{{alias}}( str )
Trims whitespace from the end of a `string`.
"Whitespace" is defined as the following characters:
- \f
- \n
- \r
- \t
- \v
- \u0020
- \u00a0
- \u1680
- \u2000-\u200a
- \u2028
- \u2029
- \u202f
- \u205f
- \u3000
- \ufeff
Parameters
----------
str: string
Input string.
Returns
-------
out: string
Trimmed string.
Examples
--------
> var out = {{alias}}( ' \t\t\n Beep \r\n\t ' )
' \t\t\n Beep'
See Also
--------
/*
* @license Apache-2.0
*
* Copyright (c) 2019 The Stdlib Authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import rtrim = require( './index' );
// TESTS //
// The function returns a string...
{
rtrim( ' Whitespace ' ); // $ExpectType string
}
// The function does not compile if provided a value other than a string...
{
rtrim( true ); // $ExpectError
rtrim( false ); // $ExpectError
rtrim( null ); // $ExpectError
rtrim( undefined ); // $ExpectError
rtrim( 5 ); // $ExpectError
rtrim( [] ); // $ExpectError
rtrim( {} ); // $ExpectError
rtrim( ( x: number ): number => x ); // $ExpectError
}
// The function does not compile if provided insufficient arguments...
{
rtrim(); // $ExpectError
}
Usage: rtrim [options] [<string>]
Options:
-h, --help Print this message.
-V, --version Print the package version.
--split sep Delimiter for stdin data. Default: '/\\r?\\n/'.
{
"string": [
"split"
],
"boolean": [
"help",
"version"
],
"alias": {
"help": [
"h"
],
"version": [
"V"
]
}
}
/**
* @license Apache-2.0
*
* Copyright (c) 2018 The Stdlib Authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
'use strict';
// MODULES //
var isString = require( '@stdlib/assert-is-string' ).isPrimitive;
var replace = require( '@stdlib/string-replace' );
var format = require( '@stdlib/string-format' );
// VARIABLES //
// The following regular expression should suffice to polyfill (most?) all environments.
var RE = /[\u0020\f\n\r\t\v\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+$/;
// MAIN //
/**
* Trims whitespace from the end of a string.
*
* @param {string} str - input string
* @throws {TypeError} must provide a string primitive
* @returns {string} trimmed string
*
* @example
* var out = rtrim( ' Whitespace ' );
* // returns ' Whitespace'
*
* @example
* var out = rtrim( '\t\t\tTabs\t\t\t' );
* // returns '\t\t\tTabs'
*
* @example
* var out = rtrim( '\n\n\nNew Lines\n\n\n' );
* // returns '\n\n\nNew Lines'
*/
function rtrim( str ) {
if ( !isString( str ) ) {
throw new TypeError( format( 'invalid argument. Must provide a string. Value: `%s`.', str ) );
}
return replace( str, RE, '' );
}
// EXPORTS //
module.exports = rtrim;