mirror of
https://github.com/musix-org/musix-oss
synced 2025-06-17 01:16:00 +00:00
Modules
This commit is contained in:
1
node_modules/ent/.npmignore
generated
vendored
Normal file
1
node_modules/ent/.npmignore
generated
vendored
Normal file
@ -0,0 +1 @@
|
||||
build
|
4
node_modules/ent/.travis.yml
generated
vendored
Normal file
4
node_modules/ent/.travis.yml
generated
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
language: node_js
|
||||
node_js:
|
||||
- 0.6
|
||||
- 0.8
|
18
node_modules/ent/LICENSE
generated
vendored
Normal file
18
node_modules/ent/LICENSE
generated
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
This software is released under the MIT license:
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of
|
||||
this software and associated documentation files (the "Software"), to deal in
|
||||
the Software without restriction, including without limitation the rights to
|
||||
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
|
||||
the Software, and to permit persons to whom the Software is furnished to do so,
|
||||
subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
32
node_modules/ent/decode.js
generated
vendored
Normal file
32
node_modules/ent/decode.js
generated
vendored
Normal file
@ -0,0 +1,32 @@
|
||||
var punycode = require('punycode');
|
||||
var entities = require('./entities.json');
|
||||
|
||||
module.exports = decode;
|
||||
|
||||
function decode (str) {
|
||||
if (typeof str !== 'string') {
|
||||
throw new TypeError('Expected a String');
|
||||
}
|
||||
|
||||
return str.replace(/&(#?[^;\W]+;?)/g, function (_, match) {
|
||||
var m;
|
||||
if (m = /^#(\d+);?$/.exec(match)) {
|
||||
return punycode.ucs2.encode([ parseInt(m[1], 10) ]);
|
||||
} else if (m = /^#[Xx]([A-Fa-f0-9]+);?/.exec(match)) {
|
||||
return punycode.ucs2.encode([ parseInt(m[1], 16) ]);
|
||||
} else {
|
||||
// named entity
|
||||
var hasSemi = /;$/.test(match);
|
||||
var withoutSemi = hasSemi ? match.replace(/;$/, '') : match;
|
||||
var target = entities[withoutSemi] || (hasSemi && entities[match]);
|
||||
|
||||
if (typeof target === 'number') {
|
||||
return punycode.ucs2.encode([ target ]);
|
||||
} else if (typeof target === 'string') {
|
||||
return target;
|
||||
} else {
|
||||
return '&' + match;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
39
node_modules/ent/encode.js
generated
vendored
Normal file
39
node_modules/ent/encode.js
generated
vendored
Normal file
@ -0,0 +1,39 @@
|
||||
var punycode = require('punycode');
|
||||
var revEntities = require('./reversed.json');
|
||||
|
||||
module.exports = encode;
|
||||
|
||||
function encode (str, opts) {
|
||||
if (typeof str !== 'string') {
|
||||
throw new TypeError('Expected a String');
|
||||
}
|
||||
if (!opts) opts = {};
|
||||
|
||||
var numeric = true;
|
||||
if (opts.named) numeric = false;
|
||||
if (opts.numeric !== undefined) numeric = opts.numeric;
|
||||
|
||||
var special = opts.special || {
|
||||
'"': true, "'": true,
|
||||
'<': true, '>': true,
|
||||
'&': true
|
||||
};
|
||||
|
||||
var codePoints = punycode.ucs2.decode(str);
|
||||
var chars = [];
|
||||
for (var i = 0; i < codePoints.length; i++) {
|
||||
var cc = codePoints[i];
|
||||
var c = punycode.ucs2.encode([ cc ]);
|
||||
var e = revEntities[cc];
|
||||
if (e && (cc >= 127 || special[c]) && !numeric) {
|
||||
chars.push('&' + (/;$/.test(e) ? e : e + ';'));
|
||||
}
|
||||
else if (cc < 32 || cc >= 127 || special[c]) {
|
||||
chars.push('&#' + cc + ';');
|
||||
}
|
||||
else {
|
||||
chars.push(c);
|
||||
}
|
||||
}
|
||||
return chars.join('');
|
||||
}
|
2233
node_modules/ent/entities.json
generated
vendored
Normal file
2233
node_modules/ent/entities.json
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
3
node_modules/ent/examples/simple.js
generated
vendored
Normal file
3
node_modules/ent/examples/simple.js
generated
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
var ent = require('ent');
|
||||
console.log(ent.encode('<span>©moo</span>'))
|
||||
console.log(ent.decode('π & ρ'));
|
2
node_modules/ent/index.js
generated
vendored
Normal file
2
node_modules/ent/index.js
generated
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
exports.encode = require('./encode');
|
||||
exports.decode = require('./decode');
|
76
node_modules/ent/package.json
generated
vendored
Normal file
76
node_modules/ent/package.json
generated
vendored
Normal file
@ -0,0 +1,76 @@
|
||||
{
|
||||
"_args": [
|
||||
[
|
||||
"ent@2.2.0",
|
||||
"C:\\Users\\matia\\Musix"
|
||||
]
|
||||
],
|
||||
"_from": "ent@2.2.0",
|
||||
"_id": "ent@2.2.0",
|
||||
"_inBundle": false,
|
||||
"_integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=",
|
||||
"_location": "/ent",
|
||||
"_optional": true,
|
||||
"_phantomChildren": {},
|
||||
"_requested": {
|
||||
"type": "version",
|
||||
"registry": true,
|
||||
"raw": "ent@2.2.0",
|
||||
"name": "ent",
|
||||
"escapedName": "ent",
|
||||
"rawSpec": "2.2.0",
|
||||
"saveSpec": null,
|
||||
"fetchSpec": "2.2.0"
|
||||
},
|
||||
"_requiredBy": [
|
||||
"/@google-cloud/common"
|
||||
],
|
||||
"_resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz",
|
||||
"_spec": "2.2.0",
|
||||
"_where": "C:\\Users\\matia\\Musix",
|
||||
"author": {
|
||||
"name": "James Halliday",
|
||||
"email": "mail@substack.net",
|
||||
"url": "http://substack.net"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/substack/node-ent/issues"
|
||||
},
|
||||
"description": "Encode and decode HTML entities",
|
||||
"devDependencies": {
|
||||
"tape": "~2.3.2"
|
||||
},
|
||||
"homepage": "https://github.com/substack/node-ent#readme",
|
||||
"keywords": [
|
||||
"entities",
|
||||
"entitify",
|
||||
"entity",
|
||||
"html",
|
||||
"encode",
|
||||
"decode"
|
||||
],
|
||||
"license": "MIT",
|
||||
"main": "./index.js",
|
||||
"name": "ent",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/substack/node-ent.git"
|
||||
},
|
||||
"scripts": {
|
||||
"prepublish": "node build/index.js",
|
||||
"test": "tape test/*.js"
|
||||
},
|
||||
"testling": {
|
||||
"files": "test/*.js",
|
||||
"browsers": [
|
||||
"ie/6..latest",
|
||||
"ff/3.5",
|
||||
"ff/latest",
|
||||
"chrome/10",
|
||||
"chrome/latest",
|
||||
"safari/latest",
|
||||
"opera/latest"
|
||||
]
|
||||
},
|
||||
"version": "2.2.0"
|
||||
}
|
71
node_modules/ent/readme.markdown
generated
vendored
Normal file
71
node_modules/ent/readme.markdown
generated
vendored
Normal file
@ -0,0 +1,71 @@
|
||||
# ent
|
||||
|
||||
Encode and decode HTML entities
|
||||
|
||||
[](http://ci.testling.com/substack/node-ent)
|
||||
|
||||
[](http://travis-ci.org/substack/node-ent)
|
||||
|
||||
# example
|
||||
|
||||
``` js
|
||||
var ent = require('ent');
|
||||
console.log(ent.encode('<span>©moo</span>'))
|
||||
console.log(ent.decode('π & ρ'));
|
||||
```
|
||||
|
||||
```
|
||||
<span>©moo</span>
|
||||
π & ρ
|
||||
```
|
||||
|
||||

|
||||
|
||||
# methods
|
||||
|
||||
``` js
|
||||
var ent = require('ent');
|
||||
var encode = require('ent/encode');
|
||||
var decode = require('ent/decode');
|
||||
```
|
||||
|
||||
## encode(str, opts={})
|
||||
|
||||
Escape unsafe characters in `str` with html entities.
|
||||
|
||||
By default, entities are encoded with numeric decimal codes.
|
||||
|
||||
If `opts.numeric` is false or `opts.named` is true, encoding will used named
|
||||
codes like `π`.
|
||||
|
||||
If `opts.special` is set to an Object, the key names will be forced
|
||||
to be encoded (defaults to forcing: `<>'"&`). For example:
|
||||
|
||||
``` js
|
||||
console.log(encode('hello', { special: { l: true } }));
|
||||
```
|
||||
|
||||
```
|
||||
hello
|
||||
```
|
||||
|
||||
## decode(str)
|
||||
|
||||
Convert html entities in `str` back to raw text.
|
||||
|
||||
# credits
|
||||
|
||||
HTML entity tables shamelessly lifted from perl's
|
||||
[HTML::Entities](http://cpansearch.perl.org/src/GAAS/HTML-Parser-3.68/lib/HTML/Entities.pm)
|
||||
|
||||
# install
|
||||
|
||||
With [npm](https://npmjs.org) do:
|
||||
|
||||
```
|
||||
npm install ent
|
||||
```
|
||||
|
||||
# license
|
||||
|
||||
MIT
|
1315
node_modules/ent/reversed.json
generated
vendored
Normal file
1315
node_modules/ent/reversed.json
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
101
node_modules/ent/test/codes.js
generated
vendored
Normal file
101
node_modules/ent/test/codes.js
generated
vendored
Normal file
@ -0,0 +1,101 @@
|
||||
var test = require('tape');
|
||||
var punycode = require('punycode');
|
||||
var ent = require('../');
|
||||
|
||||
test('amp', function (t) {
|
||||
var a = 'a & b & c';
|
||||
var b = 'a & b & c';
|
||||
t.equal(ent.encode(a), b);
|
||||
t.equal(ent.decode(b), a);
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('html', function (t) {
|
||||
var a = '<html> © π " \'';
|
||||
var b = '<html> © π " '';
|
||||
t.equal(ent.encode(a), b);
|
||||
t.equal(ent.decode(b), a);
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('html named', function (t) {
|
||||
var a = '<html> © π " \' ∴ Β β';
|
||||
var b = '<html> © π " ' ∴ Β β';
|
||||
t.equal(ent.encode(a, { named: true }), b);
|
||||
t.equal(ent.decode(b), a);
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('ambiguous ampersands', function (t) {
|
||||
var a = '• &bullet';
|
||||
var b = '• &bullet';
|
||||
var c = '• &bullet';
|
||||
t.equal(ent.encode(a, { named: true }), c);
|
||||
t.equal(ent.decode(b), a);
|
||||
t.equal(ent.decode(c), a);
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('entities', function (t) {
|
||||
var a = '\u2124';
|
||||
var b = 'ℤ';
|
||||
t.equal(ent.encode(a), b);
|
||||
t.equal(ent.decode(b), a);
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('entities named', function (t) {
|
||||
var a = '\u2124';
|
||||
var b = 'ℤ';
|
||||
t.equal(ent.encode(a, { named: true }), b);
|
||||
t.equal(ent.decode(b), a);
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('num', function (t) {
|
||||
var a = String.fromCharCode(1337);
|
||||
var b = 'Թ';
|
||||
t.equal(ent.encode(a), b);
|
||||
t.equal(ent.decode(b), a);
|
||||
|
||||
t.equal(ent.encode(a + a), b + b);
|
||||
t.equal(ent.decode(b + b), a + a);
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('astral num', function (t) {
|
||||
var a = punycode.ucs2.encode([0x1d306]);
|
||||
var b = '𝌆';
|
||||
t.equal(ent.encode(a), b);
|
||||
t.equal(ent.decode(b), a);
|
||||
|
||||
t.equal(ent.encode(a + a), b + b);
|
||||
t.equal(ent.decode(b + b), a + a);
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('nested escapes', function (t) {
|
||||
var a = '&';
|
||||
var b = '&amp;';
|
||||
t.equal(ent.encode(a), b);
|
||||
t.equal(ent.decode(b), a);
|
||||
|
||||
t.equal(ent.encode(a + a), b + b);
|
||||
t.equal(ent.decode(b + b), a + a);
|
||||
t.end();
|
||||
});
|
||||
|
||||
test('encode `special` option', function (t) {
|
||||
var a = '<>\'"&';
|
||||
var b = '<>\'"&';
|
||||
t.equal(ent.encode(a, {
|
||||
named: true,
|
||||
special: {
|
||||
'<': true,
|
||||
'>': true,
|
||||
'&': true
|
||||
}
|
||||
}), b);
|
||||
|
||||
t.end();
|
||||
});
|
35
node_modules/ent/test/hex.js
generated
vendored
Normal file
35
node_modules/ent/test/hex.js
generated
vendored
Normal file
@ -0,0 +1,35 @@
|
||||
var test = require('tape');
|
||||
var punycode = require('punycode');
|
||||
var ent = require('../');
|
||||
|
||||
test('hex', function (t) {
|
||||
for (var i = 0; i < 32; i++) {
|
||||
var a = String.fromCharCode(i);
|
||||
if (a.match(/\s/)) {
|
||||
t.equal(ent.decode(a), a);
|
||||
}
|
||||
else {
|
||||
var b = '&#x' + i.toString(16) + ';';
|
||||
t.equal(ent.decode(b), a);
|
||||
t.equal(ent.encode(a), '&#' + i + ';');
|
||||
}
|
||||
}
|
||||
|
||||
for (var i = 127; i < 2000; i++) {
|
||||
var a = String.fromCharCode(i);
|
||||
var b = '&#x' + i.toString(16) + ';';
|
||||
var c = '&#X' + i.toString(16) + ';';
|
||||
|
||||
t.equal(ent.decode(b), a);
|
||||
t.equal(ent.decode(c), a);
|
||||
|
||||
var encoded = ent.encode(a);
|
||||
var encoded2 = ent.encode(a + a);
|
||||
if (!encoded.match(/^&\w+;/)) {
|
||||
t.equal(encoded, '&#' + i + ';');
|
||||
t.equal(encoded2, '&#' + i + ';&#' + i + ';');
|
||||
}
|
||||
}
|
||||
t.end();
|
||||
});
|
||||
|
13
node_modules/ent/test/num.js
generated
vendored
Normal file
13
node_modules/ent/test/num.js
generated
vendored
Normal file
@ -0,0 +1,13 @@
|
||||
var test = require('tape');
|
||||
var ent = require('../');
|
||||
|
||||
test('opts.numeric', function (t) {
|
||||
var a = 'a & b & c';
|
||||
var ax = 'a & b & c';
|
||||
var b = '<html> © π " \'';
|
||||
var bx = '<html> © π " '';
|
||||
|
||||
t.equal(ent.encode(a), ax);
|
||||
t.equal(ent.encode(b), bx);
|
||||
t.end();
|
||||
});
|
Reference in New Issue
Block a user