CARVIEW |
Select Language
HTTP/2 301
location: https://raw.githubusercontent.com/nbubna/Case/master/dist/Case.js
accept-ranges: bytes
age: 0
date: Tue, 22 Jul 2025 03:48:04 GMT
via: 1.1 varnish
x-served-by: cache-bom-vanm7210075-BOM
x-cache: MISS
x-cache-hits: 0
x-timer: S1753156084.606199,VS0,VE934
vary: Accept-Encoding
x-fastly-request-id: 4f9a6bb68f625583c457b80dd426d18077eac530
content-length: 0
HTTP/2 200
cache-control: max-age=300
content-security-policy: default-src 'none'; style-src 'unsafe-inline'; sandbox
content-type: text/plain; charset=utf-8
etag: W/"c44607fb6434d75dd0d6828a81b34ec44f45184f76c8e9a057af0d65967cf330"
strict-transport-security: max-age=31536000
x-content-type-options: nosniff
x-frame-options: deny
x-xss-protection: 1; mode=block
x-github-request-id: 5031:195C5E:21E1F:6A55D:687F09F4
content-encoding: gzip
accept-ranges: bytes
date: Tue, 22 Jul 2025 03:48:04 GMT
via: 1.1 varnish
x-served-by: cache-bom-vanm7210036-BOM
x-cache: MISS
x-cache-hits: 0
x-timer: S1753156085.595154,VS0,VE252
vary: Authorization,Accept-Encoding
access-control-allow-origin: *
cross-origin-resource-policy: cross-origin
x-fastly-request-id: 05a7440c35ddef17be3f9b0af0463c36cc57468c
expires: Tue, 22 Jul 2025 03:53:04 GMT
source-age: 0
content-length: 1869
/*! case - v1.6.3 - 2020-03-24
* Copyright (c) 2020 Nathan Bubna; Licensed (MIT OR GPL-3.0-or-later) */
(function() {
"use strict";
var unicodes = function(s, prefix) {
prefix = prefix || '';
return s.replace(/(^|-)/g, '$1\\u'+prefix).replace(/,/g, '\\u'+prefix);
},
basicSymbols = unicodes('20-26,28-2F,3A-40,5B-60,7B-7E,A0-BF,D7,F7', '00'),
baseLowerCase = 'a-z'+unicodes('DF-F6,F8-FF', '00'),
baseUpperCase = 'A-Z'+unicodes('C0-D6,D8-DE', '00'),
improperInTitle = 'A|An|And|As|At|But|By|En|For|If|In|Of|On|Or|The|To|Vs?\\.?|Via',
regexps = function(symbols, lowers, uppers, impropers) {
symbols = symbols || basicSymbols;
lowers = lowers || baseLowerCase;
uppers = uppers || baseUpperCase;
impropers = impropers || improperInTitle;
return {
capitalize: new RegExp('(^|['+symbols+'])(['+lowers+'])', 'g'),
pascal: new RegExp('(^|['+symbols+'])+(['+lowers+uppers+'])', 'g'),
fill: new RegExp('['+symbols+']+(.|$)','g'),
sentence: new RegExp('(^\\s*|[\\?\\!\\.]+"?\\s+"?|,\\s+")(['+lowers+'])', 'g'),
improper: new RegExp('\\b('+impropers+')\\b', 'g'),
relax: new RegExp('([^'+uppers+'])(['+uppers+']*)(['+uppers+'])(?=[^'+uppers+']|$)', 'g'),
upper: new RegExp('^[^'+lowers+']+$'),
hole: /[^\s]\s[^\s]/,
apostrophe: /'/g,
room: new RegExp('['+symbols+']')
};
},
re = regexps(),
_ = {
re: re,
unicodes: unicodes,
regexps: regexps,
types: [],
up: String.prototype.toUpperCase,
low: String.prototype.toLowerCase,
cap: function(s) {
return _.up.call(s.charAt(0))+s.slice(1);
},
decap: function(s) {
return _.low.call(s.charAt(0))+s.slice(1);
},
deapostrophe: function(s) {
return s.replace(re.apostrophe, '');
},
fill: function(s, fill, deapostrophe) {
if (fill != null) {
s = s.replace(re.fill, function(m, next) {
return next ? fill + next : '';
});
}
if (deapostrophe) {
s = _.deapostrophe(s);
}
return s;
},
prep: function(s, fill, pascal, upper) {
s = s == null ? '' : s + '';// force to string
if (!upper && re.upper.test(s)) {
s = _.low.call(s);
}
if (!fill && !re.hole.test(s)) {
var holey = _.fill(s, ' ');
if (re.hole.test(holey)) {
s = holey;
}
}
if (!pascal && !re.room.test(s)) {
s = s.replace(re.relax, _.relax);
}
return s;
},
relax: function(m, before, acronym, caps) {
return before + ' ' + (acronym ? acronym+' ' : '') + caps;
}
},
Case = {
_: _,
of: function(s) {
for (var i=0,m=_.types.length; i 0 && i < s.lastIndexOf(' ') ? _.low.call(small) : small;
});
},
sentence: function(s, names, abbreviations) {
s = Case.lower(s).replace(re.sentence, function(m, prelude, letter) {
return prelude + _.up.call(letter);
});
if (names) {
names.forEach(function(name) {
s = s.replace(new RegExp('\\b'+Case.lower(name)+'\\b', "g"), _.cap);
});
}
if (abbreviations) {
abbreviations.forEach(function(abbr) {
s = s.replace(new RegExp('(\\b'+Case.lower(abbr)+'\\. +)(\\w)'), function(m, abbrAndSpace, letter) {
return abbrAndSpace + _.low.call(letter);
});
});
}
return s;
}
};
// TODO: Remove "squish" in a future breaking release.
types.squish = types.pascal;
// Allow import default
Case.default = Case;
for (var type in types) {
Case.type(type, types[type]);
}
// export Case (AMD, commonjs, or global)
var define = typeof define === "function" ? define : function(){};
define(typeof module === "object" && module.exports ? module.exports = Case : this.Case = Case);
}).call(this);