Socket
Socket
Sign inDemoInstall

str

Package Overview
Dependencies
0
Maintainers
1
Versions
14
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.4.0 to 0.4.1

44

dist/cjs/index.js
'use strict';
require('./trim.js');
var trim = require('./trim.js');
var capitalize = require('./capitalize.js');
var camelcase = require('./camelcase.js');
var slugify = require('./slugify.js');
var count = require('./count.js');
var endsWith = require('./endsWith.js');
var startsWith = require('./startsWith.js');
var lower = require('./lower.js');
var upper = require('./upper.js');
// import camelcase from './methods/camelcase'
// export * as slugify from './methods/slugify/slugify'
var index = {
slugify
slugify,
camelcase,
capitalize,
count,
endsWith,
startsWith,
lower,
upper,
trim
};
// export * from './methods'
// export * as slugify from './methods/slugify'
// const NOT_CHAINABLE = ['count', 'startsWith', 'endsWith']
// class Str {
// constructor (value) {
// this.value = value
// Object.keys(functions).map(f => {
// this[f] = function (...args) {
// const r = functions[f].call(null, this.value, ...args)
// if (NOT_CHAINABLE.includes(f)) {
// return r
// }
// this.value = r
// return this
// }
// })
// this.length = this.count(this.value)
// }
// }
// function str (value) {
// return new Str(value)
// }
// export default str
module.exports = index;

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

var str=function(){"use strict";return{slugify:(e,r="-")=>(e=>e.replace(/^\s+/,"").replace(/\s+$/,""))(e).toLowerCase().replace(/ /g,r).normalize("NFD").replace(/[\u0300-\u036f]/g,"")}}();
var str=function(){"use strict";const e=e=>e.replace(/^\s+/,"").replace(/\s+$/,"");var t=t=>(t=e(t),String(t.charAt(0).toUpperCase())+String(t.slice(1).toLowerCase()));return{slugify:(t,r="-")=>e(t).toLowerCase().replace(/ /g,r).normalize("NFD").replace(/[\u0300-\u036f]/g,""),camelcase:r=>e(r).toLowerCase().split(" ").reduce(((e,r,i)=>e+(0===i?r:t(r))),""),capitalize:t,count:e=>String(e).length,endsWith:(e,t,r)=>{e=String(e),(!r||!isFinite(r)||Math.floor(r)!==r||r>e.length)&&(r=e.length),r-=t.length;const i=e.indexOf(t,r-1);return-1!==i&&i===r},startsWith:(e,t,r)=>String(e).indexOf(t,r||0)===(r||0),lower:e=>e.toLowerCase(),upper:e=>String(e).toUpperCase(),trim:e}}();
{
"name": "str",
"version": "0.4.0",
"version": "0.4.1",
"description": "⚙️ String manipulation library",
"main": "dist/cjs/index.js",
"module": "dist/es/index.js",
"module": "dist/es/index.mjs",
"browser": "dist/str.js",

@@ -12,2 +12,3 @@ "types": "types/index.d.ts",

"start": "rollup -cw",
"prestart": "rimraf ./dist",
"build": "rollup -c && rollup -c rollup.browser.config.js",

@@ -14,0 +15,0 @@ "prebuild": "rimraf ./dist",

@@ -1,20 +0,3 @@

[![codecov](https://codecov.io/gh/manelet/str/branch/master/graph/badge.svg)](https://codecov.io/gh/manelet/str) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](https://github.com/manelet/str/compare) [![Size](https://img.badgesize.io/manelet/str/master/dist/str.min.js)](https://npmjs.com/package/str)
[![codecov](https://codecov.io/gh/manelet/str/branch/master/graph/badge.svg)](https://codecov.io/gh/manelet/str) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](https://github.com/manelet/str/compare) [![Dependecies](https://badgen.net/bundlephobia/dependency-count/str)](https://npmjs.com/package/str) [![Size](https://badgen.net/badgesize/gzip/manelet/str/master/dist/str.js)](https://npmjs.com/package/str)
# str
## TODO
- [ ] Style docs
## Proposals
- [x] startsWith
- [x] endsWith
- [ ] replace
- [x] count
- [x] capitalize
- [x] upper
- [ ] camelcase (pascalCase, etc...)
## Methods
- slugify
- trim
- lower

@@ -6,6 +6,7 @@ import pkg from './package.json'

// import { terser } from "rollup-plugin-terser";
import resolve from "@rollup/plugin-node-resolve"
// import resolve from "@rollup/plugin-node-resolve"
const getAllMethods = () => fs.readdirSync('./src/methods', 'utf8')
.map(path => `./src/methods/${path}/${path}.ts`)
.map(path => path !== 'index.ts' && `./src/methods/${path}/${path}.ts`)
.filter(path => path !== false)

@@ -18,3 +19,5 @@ export default {

entryFileNames: '[name].js',
format: 'cjs'
format: 'cjs',
exports: 'default',
// esModule: false
},

@@ -24,3 +27,4 @@ {

entryFileNames: '[name].mjs',
format: 'es'
format: 'es',
// esModule: false
},

@@ -27,0 +31,0 @@ // {

@@ -1,40 +0,21 @@

// import camelcase from './methods/camelcase'
import camelcase from './methods/camelcase/camelcase'
import slugify from './methods/slugify/slugify'
import capitalize from './methods/capitalize/capitalize'
import count from './methods/count/count'
import endsWith from './methods/endsWith/endsWith'
import startsWith from './methods/startsWith/startsWith'
import lower from './methods/lower/lower'
import upper from './methods/upper/upper'
import trim from './methods/trim/trim'
// export * as slugify from './methods/slugify/slugify'
export default {
slugify
}
// export * from './methods'
// export * as slugify from './methods/slugify'
// const NOT_CHAINABLE = ['count', 'startsWith', 'endsWith']
// class Str {
// constructor (value) {
// this.value = value
// Object.keys(functions).map(f => {
// this[f] = function (...args) {
// const r = functions[f].call(null, this.value, ...args)
// if (NOT_CHAINABLE.includes(f)) {
// return r
// }
// this.value = r
// return this
// }
// })
// this.length = this.count(this.value)
// }
// }
// function str (value) {
// return new Str(value)
// }
// export default str
slugify,
camelcase,
capitalize,
count,
endsWith,
startsWith,
lower,
upper,
trim
}

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

const { slugify } = require('./dist/cjs/index')
const { slugify } = require('./dist/cjs')
console.log('{ slugify }', slugify);

@@ -7,3 +7,3 @@

const str = require('./dist/cjs/index')
console.log('str', str.slugify);
const str = require('./dist/cjs')
console.log('str', str);

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc