UNPKG

@orbit/utils

Version:

Core utilities for Orbit.

56 lines 6.27 kB
/** * Uppercase the first letter of a string, but don't change the remainder. * * @deprecated since v0.17 */ export function capitalize(str) { console.warn("'capitalize' has been deprecated in @orbit/utils. Please import from @orbit/serializers instead."); return str.charAt(0).toUpperCase() + str.slice(1); } /** * Convert underscored, dasherized, or space-delimited words into * lowerCamelCase. * * @deprecated since v0.17 */ export function camelize(str) { console.warn("'camelize' has been deprecated in @orbit/utils. Please import from @orbit/serializers instead."); return str .replace(/(\-|\_|\.|\s)+(.)?/g, function (match, separator, chr) { return chr ? chr.toUpperCase() : ''; }) .replace(/(^|\/)([A-Z])/g, function (match) { return match.toLowerCase(); }); } /** * Converts a camelized string into all lowercase separated by underscores. * * @deprecated since v0.17 */ export function decamelize(str) { console.warn("'decamelize' has been deprecated in @orbit/utils. Please import from @orbit/serializers instead."); return str.replace(/([a-z\d])([A-Z])/g, '$1_$2').toLowerCase(); } /** * Dasherize words that are underscored, space-delimited, or camelCased. * * @deprecated since v0.17 */ export function dasherize(str) { console.warn("'dasherize' has been deprecated in @orbit/utils. Please import from @orbit/serializers instead."); return decamelize(str).replace(/[ _]/g, '-'); } /** * Underscore words that are dasherized, space-delimited, or camelCased. * * @deprecated since v0.17 */ export function underscore(str) { console.warn("'underscore' has been deprecated in @orbit/utils. Please import from @orbit/serializers instead."); return str .replace(/([a-z\d])([A-Z]+)/g, '$1_$2') .replace(/\-|\s+/g, '_') .toLowerCase(); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdHJpbmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsVUFBVSxDQUFDLEdBQVc7SUFDcEMsT0FBTyxDQUFDLElBQUksQ0FDVixrR0FBa0csQ0FDbkcsQ0FBQztJQUNGLE9BQU8sR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3BELENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxRQUFRLENBQUMsR0FBVztJQUNsQyxPQUFPLENBQUMsSUFBSSxDQUNWLGdHQUFnRyxDQUNqRyxDQUFDO0lBQ0YsT0FBTyxHQUFHO1NBQ1AsT0FBTyxDQUFDLHFCQUFxQixFQUFFLFVBQVUsS0FBSyxFQUFFLFNBQVMsRUFBRSxHQUFHO1FBQzdELE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUN0QyxDQUFDLENBQUM7U0FDRCxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsVUFBVSxLQUFLO1FBQ3hDLE9BQU8sS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzdCLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsVUFBVSxDQUFDLEdBQVc7SUFDcEMsT0FBTyxDQUFDLElBQUksQ0FDVixrR0FBa0csQ0FDbkcsQ0FBQztJQUNGLE9BQU8sR0FBRyxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxPQUFPLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztBQUNqRSxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxTQUFTLENBQUMsR0FBVztJQUNuQyxPQUFPLENBQUMsSUFBSSxDQUNWLGlHQUFpRyxDQUNsRyxDQUFDO0lBQ0YsT0FBTyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztBQUMvQyxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxVQUFVLENBQUMsR0FBVztJQUNwQyxPQUFPLENBQUMsSUFBSSxDQUNWLGtHQUFrRyxDQUNuRyxDQUFDO0lBQ0YsT0FBTyxHQUFHO1NBQ1AsT0FBTyxDQUFDLG9CQUFvQixFQUFFLE9BQU8sQ0FBQztTQUN0QyxPQUFPLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQztTQUN2QixXQUFXLEVBQUUsQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBVcHBlcmNhc2UgdGhlIGZpcnN0IGxldHRlciBvZiBhIHN0cmluZywgYnV0IGRvbid0IGNoYW5nZSB0aGUgcmVtYWluZGVyLlxuICpcbiAqIEBkZXByZWNhdGVkIHNpbmNlIHYwLjE3XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjYXBpdGFsaXplKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc29sZS53YXJuKFxuICAgIFwiJ2NhcGl0YWxpemUnIGhhcyBiZWVuIGRlcHJlY2F0ZWQgaW4gQG9yYml0L3V0aWxzLiBQbGVhc2UgaW1wb3J0IGZyb20gQG9yYml0L3NlcmlhbGl6ZXJzIGluc3RlYWQuXCJcbiAgKTtcbiAgcmV0dXJuIHN0ci5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHN0ci5zbGljZSgxKTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0IHVuZGVyc2NvcmVkLCBkYXNoZXJpemVkLCBvciBzcGFjZS1kZWxpbWl0ZWQgd29yZHMgaW50b1xuICogbG93ZXJDYW1lbENhc2UuXG4gKlxuICogQGRlcHJlY2F0ZWQgc2luY2UgdjAuMTdcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNhbWVsaXplKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc29sZS53YXJuKFxuICAgIFwiJ2NhbWVsaXplJyBoYXMgYmVlbiBkZXByZWNhdGVkIGluIEBvcmJpdC91dGlscy4gUGxlYXNlIGltcG9ydCBmcm9tIEBvcmJpdC9zZXJpYWxpemVycyBpbnN0ZWFkLlwiXG4gICk7XG4gIHJldHVybiBzdHJcbiAgICAucmVwbGFjZSgvKFxcLXxcXF98XFwufFxccykrKC4pPy9nLCBmdW5jdGlvbiAobWF0Y2gsIHNlcGFyYXRvciwgY2hyKSB7XG4gICAgICByZXR1cm4gY2hyID8gY2hyLnRvVXBwZXJDYXNlKCkgOiAnJztcbiAgICB9KVxuICAgIC5yZXBsYWNlKC8oXnxcXC8pKFtBLVpdKS9nLCBmdW5jdGlvbiAobWF0Y2gpIHtcbiAgICAgIHJldHVybiBtYXRjaC50b0xvd2VyQ2FzZSgpO1xuICAgIH0pO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGEgY2FtZWxpemVkIHN0cmluZyBpbnRvIGFsbCBsb3dlcmNhc2Ugc2VwYXJhdGVkIGJ5IHVuZGVyc2NvcmVzLlxuICpcbiAqIEBkZXByZWNhdGVkIHNpbmNlIHYwLjE3XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWNhbWVsaXplKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc29sZS53YXJuKFxuICAgIFwiJ2RlY2FtZWxpemUnIGhhcyBiZWVuIGRlcHJlY2F0ZWQgaW4gQG9yYml0L3V0aWxzLiBQbGVhc2UgaW1wb3J0IGZyb20gQG9yYml0L3NlcmlhbGl6ZXJzIGluc3RlYWQuXCJcbiAgKTtcbiAgcmV0dXJuIHN0ci5yZXBsYWNlKC8oW2EtelxcZF0pKFtBLVpdKS9nLCAnJDFfJDInKS50b0xvd2VyQ2FzZSgpO1xufVxuXG4vKipcbiAqIERhc2hlcml6ZSB3b3JkcyB0aGF0IGFyZSB1bmRlcnNjb3JlZCwgc3BhY2UtZGVsaW1pdGVkLCBvciBjYW1lbENhc2VkLlxuICpcbiAqIEBkZXByZWNhdGVkIHNpbmNlIHYwLjE3XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkYXNoZXJpemUoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zb2xlLndhcm4oXG4gICAgXCInZGFzaGVyaXplJyBoYXMgYmVlbiBkZXByZWNhdGVkIGluIEBvcmJpdC91dGlscy4gUGxlYXNlIGltcG9ydCBmcm9tIEBvcmJpdC9zZXJpYWxpemVycyBpbnN0ZWFkLlwiXG4gICk7XG4gIHJldHVybiBkZWNhbWVsaXplKHN0cikucmVwbGFjZSgvWyBfXS9nLCAnLScpO1xufVxuXG4vKipcbiAqIFVuZGVyc2NvcmUgd29yZHMgdGhhdCBhcmUgZGFzaGVyaXplZCwgc3BhY2UtZGVsaW1pdGVkLCBvciBjYW1lbENhc2VkLlxuICpcbiAqIEBkZXByZWNhdGVkIHNpbmNlIHYwLjE3XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1bmRlcnNjb3JlKHN0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc29sZS53YXJuKFxuICAgIFwiJ3VuZGVyc2NvcmUnIGhhcyBiZWVuIGRlcHJlY2F0ZWQgaW4gQG9yYml0L3V0aWxzLiBQbGVhc2UgaW1wb3J0IGZyb20gQG9yYml0L3NlcmlhbGl6ZXJzIGluc3RlYWQuXCJcbiAgKTtcbiAgcmV0dXJuIHN0clxuICAgIC5yZXBsYWNlKC8oW2EtelxcZF0pKFtBLVpdKykvZywgJyQxXyQyJylcbiAgICAucmVwbGFjZSgvXFwtfFxccysvZywgJ18nKVxuICAgIC50b0xvd2VyQ2FzZSgpO1xufVxuIl19