mirror of
https://github.com/sbrow/strings.git
synced 2026-02-27 20:11:45 -05:00
style: Ran prettier.
This commit is contained in:
4
lib/index.d.ts
vendored
4
lib/index.d.ts
vendored
@@ -1,5 +1,7 @@
|
|||||||
export * from './trim';
|
export * from "./trim";
|
||||||
export declare const startsWith: import("ts-toolbelt/out/Function/Curry").Curry<(needle: string, haystack: string) => boolean>;
|
export declare const startsWith: import("ts-toolbelt/out/Function/Curry").Curry<(needle: string, haystack: string) => boolean>;
|
||||||
export declare const endsWith: import("ts-toolbelt/out/Function/Curry").Curry<(needle: string, haystack: string) => boolean>;
|
export declare const endsWith: import("ts-toolbelt/out/Function/Curry").Curry<(needle: string, haystack: string) => boolean>;
|
||||||
export declare const afterFirst: import("ts-toolbelt/out/Function/Curry").Curry<(separator: string, str: string) => string>;
|
export declare const afterFirst: import("ts-toolbelt/out/Function/Curry").Curry<(separator: string, str: string) => string>;
|
||||||
export declare const afterLast: import("ts-toolbelt/out/Function/Curry").Curry<(separator: string, str: string) => string>;
|
export declare const afterLast: import("ts-toolbelt/out/Function/Curry").Curry<(separator: string, str: string) => string>;
|
||||||
|
export declare const beforeFirst: import("ts-toolbelt/out/Function/Curry").Curry<(separator: string, str: string) => string>;
|
||||||
|
export declare const beforeFirstWord: import("ts-toolbelt/out/Function/Curry").Curry<(str: string) => string>;
|
||||||
|
|||||||
19
lib/index.js
19
lib/index.js
@@ -14,26 +14,19 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|||||||
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
||||||
};
|
};
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||||||
exports.afterLast = exports.afterFirst = exports.endsWith = exports.startsWith = void 0;
|
exports.beforeFirstWord = exports.beforeFirst = exports.afterLast = exports.afterFirst = exports.endsWith = exports.startsWith = void 0;
|
||||||
const utils_1 = require("./utils");
|
const utils_1 = require("./utils");
|
||||||
__exportStar(require("./trim"), exports);
|
__exportStar(require("./trim"), exports);
|
||||||
function escapeRegExp(str) {
|
function escapeRegExp(str) {
|
||||||
return str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
|
return str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"); // $& means the whole matched string
|
||||||
}
|
}
|
||||||
exports.startsWith = (0, utils_1.curry)((needle, haystack) => haystack.indexOf(needle) === 0);
|
exports.startsWith = (0, utils_1.curry)((needle, haystack) => haystack.indexOf(needle) === 0);
|
||||||
exports.endsWith = (0, utils_1.curry)((needle, haystack) => (new RegExp(`${escapeRegExp(needle)}$`)).test(haystack));
|
exports.endsWith = (0, utils_1.curry)((needle, haystack) => new RegExp(`${escapeRegExp(needle)}$`).test(haystack));
|
||||||
exports.afterFirst = (0, utils_1.curry)((separator, str) => str.substring(str.indexOf(separator) + 1, str.length));
|
exports.afterFirst = (0, utils_1.curry)((separator, str) => str.substring(str.indexOf(separator) + 1, str.length));
|
||||||
exports.afterLast = (0, utils_1.curry)((separator, str) => str.substring(str.lastIndexOf(separator) + 1, str.length));
|
exports.afterLast = (0, utils_1.curry)((separator, str) => str.substring(str.lastIndexOf(separator) + 1, str.length));
|
||||||
// export const beforeFirst = curry(
|
exports.beforeFirst = (0, utils_1.curry)((separator, str) => str.substring(0, str.indexOf(separator)));
|
||||||
// /**
|
// @todo Test
|
||||||
// *
|
exports.beforeFirstWord = (0, exports.beforeFirst)(" ");
|
||||||
// * @param {String} separator
|
|
||||||
// * @param {String} str
|
|
||||||
// * @returns {String}
|
|
||||||
// */
|
|
||||||
// (separator, str) => str.substring(0, str.indexOf(separator)),
|
|
||||||
// );
|
|
||||||
// export const beforeFirstWord = beforeFirst(' ');
|
|
||||||
// /**
|
// /**
|
||||||
// * @param {String} str
|
// * @param {String} str
|
||||||
// * @return {String}
|
// * @return {String}
|
||||||
|
|||||||
12
lib/trim.js
12
lib/trim.js
@@ -8,18 +8,14 @@ const utils_1 = require("./utils");
|
|||||||
exports.ltrim = (0, utils_1.curry)((cutset, str) => {
|
exports.ltrim = (0, utils_1.curry)((cutset, str) => {
|
||||||
const _trim = (x) => (0, exports.ltrim)(cutset)((0, utils_1.tail)(x));
|
const _trim = (x) => (0, exports.ltrim)(cutset)((0, utils_1.tail)(x));
|
||||||
// const _trim = compose(ltrim(cutset), tail);
|
// const _trim = compose(ltrim(cutset), tail);
|
||||||
const trimmed = () => (0, utils_1.when)((x = '') => cutset.includes(x.charAt(0)), _trim)(str);
|
const trimmed = () => (0, utils_1.when)((x = "") => cutset.includes(x.charAt(0)), _trim)(str);
|
||||||
return (0, utils_1.isEmpty)(cutset) || (0, utils_1.isEmpty)(str)
|
return (0, utils_1.isEmpty)(cutset) || (0, utils_1.isEmpty)(str) ? str : trimmed();
|
||||||
? str
|
|
||||||
: trimmed();
|
|
||||||
});
|
});
|
||||||
exports.rtrim = (0, utils_1.curry)((cutset, str) => {
|
exports.rtrim = (0, utils_1.curry)((cutset, str) => {
|
||||||
const _trim = (x) => (0, exports.rtrim)(cutset)(x.substring(0, x.length - 1));
|
const _trim = (x) => (0, exports.rtrim)(cutset)(x.substring(0, x.length - 1));
|
||||||
// const _trim = compose(rtrim(cutset), init);
|
// const _trim = compose(rtrim(cutset), init);
|
||||||
const trimmed = () => (0, utils_1.when)((x = '') => cutset.includes(x.charAt(x.length - 1)), _trim)(str);
|
const trimmed = () => (0, utils_1.when)((x = "") => cutset.includes(x.charAt(x.length - 1)), _trim)(str);
|
||||||
return (0, utils_1.isEmpty)(cutset) || (0, utils_1.isEmpty)(str)
|
return (0, utils_1.isEmpty)(cutset) || (0, utils_1.isEmpty)(str) ? str : trimmed();
|
||||||
? str
|
|
||||||
: trimmed();
|
|
||||||
});
|
});
|
||||||
// const trim = curry((cutset: string, str: string) => compose(ltrim(cutset), rtrim(cutset))(str));
|
// const trim = curry((cutset: string, str: string) => compose(ltrim(cutset), rtrim(cutset))(str));
|
||||||
exports.trim = (0, utils_1.curry)((cutset, str) => (0, exports.ltrim)(cutset)((0, exports.rtrim)(cutset, str)));
|
exports.trim = (0, utils_1.curry)((cutset, str) => (0, exports.ltrim)(cutset)((0, exports.rtrim)(cutset, str)));
|
||||||
|
|||||||
2
lib/utils.d.ts
vendored
2
lib/utils.d.ts
vendored
@@ -1,4 +1,4 @@
|
|||||||
import type { curry as _curry, when as _when } from 'ramda';
|
import type { curry as _curry, when as _when } from "ramda";
|
||||||
export declare const curry: typeof _curry;
|
export declare const curry: typeof _curry;
|
||||||
export declare const isEmpty: (str: string) => boolean;
|
export declare const isEmpty: (str: string) => boolean;
|
||||||
export declare const tail: (str: string) => string;
|
export declare const tail: (str: string) => string;
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ exports.curry = function (fn) {
|
|||||||
return (...more) => (0, exports.curry)(fn)(...args, ...more);
|
return (...more) => (0, exports.curry)(fn)(...args, ...more);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
const isEmpty = (str) => str == null || str === '';
|
const isEmpty = (str) => str == null || str === "";
|
||||||
exports.isEmpty = isEmpty;
|
exports.isEmpty = isEmpty;
|
||||||
const tail = (str) => str.substring(1);
|
const tail = (str) => str.substring(1);
|
||||||
exports.tail = tail;
|
exports.tail = tail;
|
||||||
|
|||||||
Reference in New Issue
Block a user