@ungap/template-tag-arguments
Advanced tools
+75
-24
@@ -1,26 +0,54 @@ | ||
| /*! (c) Andrea Giammarchi - ISC */ | ||
| var templateLiteral = (function () {'use strict'; | ||
| var RAW = 'raw'; | ||
| var templateLiteral = (function (exports) { | ||
| 'use strict'; | ||
| /*! (c) Andrea Giammarchi - ISC */ | ||
| var self = null || /* istanbul ignore next */ {}; | ||
| try { self.WeakMap = WeakMap; } | ||
| catch (WeakMap) { | ||
| // this could be better but 90% of the time | ||
| // it's everything developers need as fallback | ||
| self.WeakMap = (function (id, Object) { var dP = Object.defineProperty; | ||
| var hOP = Object.hasOwnProperty; | ||
| var proto = WeakMap.prototype; | ||
| proto.delete = function (key) { | ||
| return this.has(key) && delete key[this._]; | ||
| }; | ||
| proto.get = function (key) { | ||
| return this.has(key) ? key[this._] : void 0; | ||
| }; | ||
| proto.has = function (key) { | ||
| return hOP.call(key, this._); | ||
| }; | ||
| proto.set = function (key, value) { | ||
| dP(key, this._, {configurable: true, value: value}); | ||
| return this; | ||
| }; | ||
| return WeakMap; | ||
| function WeakMap(iterable) { | ||
| dP(this, '_', {value: '_@ungap/weakmap' + id++}); | ||
| if (iterable) | ||
| iterable.forEach(add, this); | ||
| } | ||
| function add(pair) { | ||
| this.set(pair[0], pair[1]); | ||
| } | ||
| }(Math.random(), Object)); | ||
| } | ||
| var WeakMap$1 = self.WeakMap; | ||
| var isNoOp = typeof document !== 'object'; | ||
| var isBroken = function (UA) { | ||
| var broken = /(Firefox|Safari)\/(\d+)/.exec(UA); | ||
| return !!broken && !/(Chrom|Android)\/(\d+)/.test(UA); | ||
| /* && ( | ||
| (broken[1] === 'Firefox' && (broken[2] < 55) || (broken[2] > 65)) || | ||
| (broken[1] === 'Safari' && broken[2] > 539) | ||
| ); */ | ||
| }; | ||
| var templateLiteral = function (tl) { | ||
| if ( | ||
| // for badly transpiled literals | ||
| !(RAW in tl) || | ||
| // for some version of TypeScript | ||
| tl.propertyIsEnumerable(RAW) || | ||
| // and some other version of TypeScript | ||
| !Object.isFrozen(tl[RAW]) || | ||
| // check some messed up browser or version | ||
| isBroken((document.defaultView.navigator || {}).userAgent) | ||
| ) { | ||
| var RAW = 'raw'; | ||
| var isBroken = function (UA) { | ||
| return /(Firefox|Safari)\/(\d+)/.test(UA) && | ||
| !/(Chrom|Android)\/(\d+)/.test(UA); | ||
| }; | ||
| var broken = isBroken((document.defaultView.navigator || {}).userAgent); | ||
| var FTS = !(RAW in tl) || | ||
| tl.propertyIsEnumerable(RAW) || | ||
| !Object.isFrozen(tl[RAW]); | ||
| if (broken || FTS) { | ||
| var forever = {}; | ||
| templateLiteral = function (tl) { | ||
| var foreverCache = function (tl) { | ||
| for (var key = '.', i = 0; i < tl.length; i++) | ||
@@ -30,2 +58,20 @@ key += tl[i].length + '.' + tl[i]; | ||
| }; | ||
| // Fallback TypeScript shenanigans | ||
| if (FTS) | ||
| templateLiteral = foreverCache; | ||
| // try fast path for other browsers: | ||
| // store the template as WeakMap key | ||
| // and forever cache it only when it's not there. | ||
| // this way performance is still optimal, | ||
| // penalized only when there are GC issues | ||
| else { | ||
| var wm = new WeakMap$1; | ||
| var set = function (tl, unique) { | ||
| wm.set(tl, unique); | ||
| return unique; | ||
| }; | ||
| templateLiteral = function (tl) { | ||
| return wm.get(tl) || set(tl, foreverCache(tl)); | ||
| }; | ||
| } | ||
| } else { | ||
@@ -36,9 +82,14 @@ isNoOp = true; | ||
| }; | ||
| return TL; | ||
| function TL(tl) { | ||
| return isNoOp ? tl : templateLiteral(tl); | ||
| } | ||
| }()); | ||
| return TL; | ||
| }({})); | ||
| function templateTagArguments(template) { | ||
@@ -45,0 +96,0 @@ var length = arguments.length; |
+2
-2
@@ -1,2 +0,2 @@ | ||
| /*! (c) Andrea Giammarchi - ISC */ | ||
| var templateLiteral=function(){"use strict";var t="raw",r="object"!=typeof document,u=function(e){if(t in e&&!e.propertyIsEnumerable(t)&&Object.isFrozen(e[t])&&!function(e){return!!/(Firefox|Safari)\/(\d+)/.exec(e)&&!/(Chrom|Android)\/(\d+)/.test(e)}((document.defaultView.navigator||{}).userAgent))r=!0;else{var n={};u=function(e){for(var t=".",r=0;r<e.length;r++)t+=e[r].length+"."+e[r];return n[t]||(n[t]=e)}}return a(e)};return a;function a(e){return r?e:u(e)}}();function templateTagArguments(e){for(var t=arguments.length,r=[templateLiteral(e)],n=1;n<t;)r.push(arguments[n++]);return r} | ||
| var templateLiteral=function(){"use strict"; | ||
| /*! (c) Andrea Giammarchi - ISC */var e={};try{e.WeakMap=WeakMap}catch(t){e.WeakMap=function(e,t){var r=t.defineProperty,n=t.hasOwnProperty,a=i.prototype;return a.delete=function(t){return this.has(t)&&delete t[this._]},a.get=function(t){return this.has(t)?t[this._]:void 0},a.has=function(t){return n.call(t,this._)},a.set=function(t,e){return r(t,this._,{configurable:!0,value:e}),this},i;function i(t){r(this,"_",{value:"_@ungap/weakmap"+e++}),t&&t.forEach(u,this)}function u(t){this.set(t[0],t[1])}}(Math.random(),Object)}var s=e.WeakMap,c="object"!=typeof document,f=function(t){var e,r="raw",n=(e=(document.defaultView.navigator||{}).userAgent,/(Firefox|Safari)\/(\d+)/.test(e)&&!/(Chrom|Android)\/(\d+)/.test(e)),a=!(r in t)||t.propertyIsEnumerable(r)||!Object.isFrozen(t[r]);if(n||a){var i={},u=function(t){for(var e=".",r=0;r<t.length;r++)e+=t[r].length+"."+t[r];return i[e]||(i[e]=t)};if(a)f=u;else{var o=new s;f=function(t){return o.get(t)||function(t,e){return o.set(t,e),e}(t,u(t))}}}else c=!0;return h(t)};function h(t){return c?t:f(t)}return h}();function templateTagArguments(t){for(var e=arguments.length,r=[templateLiteral(t)],n=1;n<e;)r.push(arguments[n++]);return r} |
+2
-2
| { | ||
| "name": "@ungap/template-tag-arguments", | ||
| "version": "0.2.0", | ||
| "version": "0.3.0", | ||
| "description": "Normalizes tagged arguments granting a unique template", | ||
@@ -34,4 +34,4 @@ "main": "cjs/index.js", | ||
| "dependencies": { | ||
| "@ungap/template-literal": "^0.3.0" | ||
| "@ungap/template-literal": "^0.4.0" | ||
| } | ||
| } |
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 1 instance in 1 package
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 1 instance in 1 package
7432
37.91%110
64.18%+ Added
+ Added
- Removed