opennms
Version:
Client API for the OpenNMS network monitoring platform
1 lines • 13.5 kB
JSON
{"remainingRequest":"/data/node_modules/babel-loader/lib/index.js!/data/node_modules/urijs/src/IPv6.js","dependencies":[{"path":"/data/node_modules/urijs/src/IPv6.js","mtime":1553611387392},{"path":"/data/.babelrc","mtime":1553611371556},{"path":"/data/node_modules/cache-loader/dist/cjs.js","mtime":1553611387012},{"path":"/data/node_modules/babel-loader/lib/index.js","mtime":1553611386992}],"contextDependencies":[],"result":["'use strict';\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\n/*!\n * URI.js - Mutating URLs\n * IPv6 Support\n *\n * Version: 1.19.1\n *\n * Author: Rodney Rehm\n * Web: http://medialize.github.io/URI.js/\n *\n * Licensed under\n * MIT License http://www.opensource.org/licenses/mit-license\n *\n */\n\n(function (root, factory) {\n 'use strict';\n // https://github.com/umdjs/umd/blob/master/returnExports.js\n\n if ((typeof module === 'undefined' ? 'undefined' : _typeof(module)) === 'object' && module.exports) {\n // Node\n module.exports = factory();\n } else if (typeof define === 'function' && define.amd) {\n // AMD. Register as an anonymous module.\n define(factory);\n } else {\n // Browser globals (root is window)\n root.IPv6 = factory(root);\n }\n})(undefined, function (root) {\n 'use strict';\n\n /*\n var _in = \"fe80:0000:0000:0000:0204:61ff:fe9d:f156\";\n var _out = IPv6.best(_in);\n var _expected = \"fe80::204:61ff:fe9d:f156\";\n console.log(_in, _out, _expected, _out === _expected);\n */\n\n // save current IPv6 variable, if any\n\n var _IPv6 = root && root.IPv6;\n\n function bestPresentation(address) {\n // based on:\n // Javascript to test an IPv6 address for proper format, and to\n // present the \"best text representation\" according to IETF Draft RFC at\n // http://tools.ietf.org/html/draft-ietf-6man-text-addr-representation-04\n // 8 Feb 2010 Rich Brown, Dartware, LLC\n // Please feel free to use this code as long as you provide a link to\n // http://www.intermapper.com\n // http://intermapper.com/support/tools/IPV6-Validator.aspx\n // http://download.dartware.com/thirdparty/ipv6validator.js\n\n var _address = address.toLowerCase();\n var segments = _address.split(':');\n var length = segments.length;\n var total = 8;\n\n // trim colons (:: or ::a:b:c… or …a:b:c::)\n if (segments[0] === '' && segments[1] === '' && segments[2] === '') {\n // must have been ::\n // remove first two items\n segments.shift();\n segments.shift();\n } else if (segments[0] === '' && segments[1] === '') {\n // must have been ::xxxx\n // remove the first item\n segments.shift();\n } else if (segments[length - 1] === '' && segments[length - 2] === '') {\n // must have been xxxx::\n segments.pop();\n }\n\n length = segments.length;\n\n // adjust total segments for IPv4 trailer\n if (segments[length - 1].indexOf('.') !== -1) {\n // found a \".\" which means IPv4\n total = 7;\n }\n\n // fill empty segments them with \"0000\"\n var pos;\n for (pos = 0; pos < length; pos++) {\n if (segments[pos] === '') {\n break;\n }\n }\n\n if (pos < total) {\n segments.splice(pos, 1, '0000');\n while (segments.length < total) {\n segments.splice(pos, 0, '0000');\n }\n }\n\n // strip leading zeros\n var _segments;\n for (var i = 0; i < total; i++) {\n _segments = segments[i].split('');\n for (var j = 0; j < 3; j++) {\n if (_segments[0] === '0' && _segments.length > 1) {\n _segments.splice(0, 1);\n } else {\n break;\n }\n }\n\n segments[i] = _segments.join('');\n }\n\n // find longest sequence of zeroes and coalesce them into one segment\n var best = -1;\n var _best = 0;\n var _current = 0;\n var current = -1;\n var inzeroes = false;\n // i; already declared\n\n for (i = 0; i < total; i++) {\n if (inzeroes) {\n if (segments[i] === '0') {\n _current += 1;\n } else {\n inzeroes = false;\n if (_current > _best) {\n best = current;\n _best = _current;\n }\n }\n } else {\n if (segments[i] === '0') {\n inzeroes = true;\n current = i;\n _current = 1;\n }\n }\n }\n\n if (_current > _best) {\n best = current;\n _best = _current;\n }\n\n if (_best > 1) {\n segments.splice(best, _best, '');\n }\n\n length = segments.length;\n\n // assemble remaining segments\n var result = '';\n if (segments[0] === '') {\n result = ':';\n }\n\n for (i = 0; i < length; i++) {\n result += segments[i];\n if (i === length - 1) {\n break;\n }\n\n result += ':';\n }\n\n if (segments[length - 1] === '') {\n result += ':';\n }\n\n return result;\n }\n\n function noConflict() {\n /*jshint validthis: true */\n if (root.IPv6 === this) {\n root.IPv6 = _IPv6;\n }\n\n return this;\n }\n\n return {\n best: bestPresentation,\n noConflict: noConflict\n };\n});",{"version":3,"sources":["node_modules/urijs/src/IPv6.js"],"names":["root","factory","module","exports","define","amd","IPv6","_IPv6","bestPresentation","address","_address","toLowerCase","segments","split","length","total","shift","pop","indexOf","pos","splice","_segments","i","j","join","best","_best","_current","current","inzeroes","result","noConflict"],"mappings":"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","file":"IPv6.js","sourceRoot":"/data","sourcesContent":["/*!\n * URI.js - Mutating URLs\n * IPv6 Support\n *\n * Version: 1.19.1\n *\n * Author: Rodney Rehm\n * Web: http://medialize.github.io/URI.js/\n *\n * Licensed under\n * MIT License http://www.opensource.org/licenses/mit-license\n *\n */\n\n(function (root, factory) {\n 'use strict';\n // https://github.com/umdjs/umd/blob/master/returnExports.js\n if (typeof module === 'object' && module.exports) {\n // Node\n module.exports = factory();\n } else if (typeof define === 'function' && define.amd) {\n // AMD. Register as an anonymous module.\n define(factory);\n } else {\n // Browser globals (root is window)\n root.IPv6 = factory(root);\n }\n}(this, function (root) {\n 'use strict';\n\n /*\n var _in = \"fe80:0000:0000:0000:0204:61ff:fe9d:f156\";\n var _out = IPv6.best(_in);\n var _expected = \"fe80::204:61ff:fe9d:f156\";\n\n console.log(_in, _out, _expected, _out === _expected);\n */\n\n // save current IPv6 variable, if any\n var _IPv6 = root && root.IPv6;\n\n function bestPresentation(address) {\n // based on:\n // Javascript to test an IPv6 address for proper format, and to\n // present the \"best text representation\" according to IETF Draft RFC at\n // http://tools.ietf.org/html/draft-ietf-6man-text-addr-representation-04\n // 8 Feb 2010 Rich Brown, Dartware, LLC\n // Please feel free to use this code as long as you provide a link to\n // http://www.intermapper.com\n // http://intermapper.com/support/tools/IPV6-Validator.aspx\n // http://download.dartware.com/thirdparty/ipv6validator.js\n\n var _address = address.toLowerCase();\n var segments = _address.split(':');\n var length = segments.length;\n var total = 8;\n\n // trim colons (:: or ::a:b:c… or …a:b:c::)\n if (segments[0] === '' && segments[1] === '' && segments[2] === '') {\n // must have been ::\n // remove first two items\n segments.shift();\n segments.shift();\n } else if (segments[0] === '' && segments[1] === '') {\n // must have been ::xxxx\n // remove the first item\n segments.shift();\n } else if (segments[length - 1] === '' && segments[length - 2] === '') {\n // must have been xxxx::\n segments.pop();\n }\n\n length = segments.length;\n\n // adjust total segments for IPv4 trailer\n if (segments[length - 1].indexOf('.') !== -1) {\n // found a \".\" which means IPv4\n total = 7;\n }\n\n // fill empty segments them with \"0000\"\n var pos;\n for (pos = 0; pos < length; pos++) {\n if (segments[pos] === '') {\n break;\n }\n }\n\n if (pos < total) {\n segments.splice(pos, 1, '0000');\n while (segments.length < total) {\n segments.splice(pos, 0, '0000');\n }\n }\n\n // strip leading zeros\n var _segments;\n for (var i = 0; i < total; i++) {\n _segments = segments[i].split('');\n for (var j = 0; j < 3 ; j++) {\n if (_segments[0] === '0' && _segments.length > 1) {\n _segments.splice(0,1);\n } else {\n break;\n }\n }\n\n segments[i] = _segments.join('');\n }\n\n // find longest sequence of zeroes and coalesce them into one segment\n var best = -1;\n var _best = 0;\n var _current = 0;\n var current = -1;\n var inzeroes = false;\n // i; already declared\n\n for (i = 0; i < total; i++) {\n if (inzeroes) {\n if (segments[i] === '0') {\n _current += 1;\n } else {\n inzeroes = false;\n if (_current > _best) {\n best = current;\n _best = _current;\n }\n }\n } else {\n if (segments[i] === '0') {\n inzeroes = true;\n current = i;\n _current = 1;\n }\n }\n }\n\n if (_current > _best) {\n best = current;\n _best = _current;\n }\n\n if (_best > 1) {\n segments.splice(best, _best, '');\n }\n\n length = segments.length;\n\n // assemble remaining segments\n var result = '';\n if (segments[0] === '') {\n result = ':';\n }\n\n for (i = 0; i < length; i++) {\n result += segments[i];\n if (i === length - 1) {\n break;\n }\n\n result += ':';\n }\n\n if (segments[length - 1] === '') {\n result += ':';\n }\n\n return result;\n }\n\n function noConflict() {\n /*jshint validthis: true */\n if (root.IPv6 === this) {\n root.IPv6 = _IPv6;\n }\n\n return this;\n }\n\n return {\n best: bestPresentation,\n noConflict: noConflict\n };\n}));\n"]}]}