remark-shiki-twoslash
Advanced tools
Comparing version 1.4.7 to 1.4.8
@@ -939,3 +939,3 @@ 'use strict'; | ||
var highlighterCache = /*#__PURE__*/new Map(); | ||
var highlighterCache = /*#__PURE__*/new WeakMap(); | ||
/** Sets up the highlighters, and cache's for recalls */ | ||
@@ -945,3 +945,3 @@ | ||
var _ref = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee2(settings) { | ||
var themes; | ||
var themes, highlighters; | ||
return runtime_1.wrap(function _callee2$(_context2) { | ||
@@ -952,6 +952,15 @@ while (1) { | ||
themes = settings.themes || (settings.theme ? [settings.theme] : ["light-plus"]); | ||
_context2.next = 3; | ||
if (!highlighterCache.has(settings)) { | ||
_context2.next = 3; | ||
break; | ||
} | ||
return _context2.abrupt("return", highlighterCache.get(settings)); | ||
case 3: | ||
_context2.next = 5; | ||
return Promise.all(themes.map( /*#__PURE__*/function () { | ||
var _ref2 = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee(theme) { | ||
var themeName, cached, highlighter; | ||
var themeName, highlighter; | ||
return runtime_1.wrap(function _callee$(_context) { | ||
@@ -963,13 +972,3 @@ while (1) { | ||
themeName = theme.name || theme; | ||
cached = highlighterCache.get(themeName); | ||
if (!cached) { | ||
_context.next = 4; | ||
break; | ||
} | ||
return _context.abrupt("return", cached); | ||
case 4: | ||
_context.next = 6; | ||
_context.next = 3; | ||
return shiki.getHighlighter(_extends({}, settings, { | ||
@@ -980,10 +979,9 @@ theme: theme, | ||
case 6: | ||
case 3: | ||
highlighter = _context.sent; | ||
// @ts-ignore - https://github.com/shikijs/shiki/pull/162 will fix this | ||
highlighter.customName = themeName; | ||
highlighterCache.set(themeName, highlighter); | ||
return _context.abrupt("return", highlighter); | ||
case 10: | ||
case 6: | ||
case "end": | ||
@@ -1001,6 +999,8 @@ return _context.stop(); | ||
case 3: | ||
return _context2.abrupt("return", _context2.sent); | ||
case 5: | ||
highlighters = _context2.sent; | ||
highlighterCache.set(settings, highlighters); | ||
return _context2.abrupt("return", highlighters); | ||
case 4: | ||
case 8: | ||
case "end": | ||
@@ -1007,0 +1007,0 @@ return _context2.stop(); |
@@ -1,2 +0,2 @@ | ||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t,r=require("shiki-twoslash"),e=require("shiki"),n=(t=require("unist-util-visit"))&&"object"==typeof t&&"default"in t?t.default:t;function o(t,r,e,n,o,i,a){try{var u=t[i](a),c=u.value}catch(t){return void e(t)}u.done?r(c):Promise.resolve(c).then(n,o)}function i(t){return function(){var r=this,e=arguments;return new Promise((function(n,i){var a=t.apply(r,e);function u(t){o(a,n,i,u,c,"next",t)}function c(t){o(a,n,i,u,c,"throw",t)}u(void 0)}))}}function a(){return(a=Object.assign||function(t){for(var r=1;r<arguments.length;r++){var e=arguments[r];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])}return t}).apply(this,arguments)}function u(t,r){return t(r={exports:{}},r.exports),r.exports}var c=u((function(t){var r=function(t){var r=Object.prototype,e=r.hasOwnProperty,n="function"==typeof Symbol?Symbol:{},o=n.iterator||"@@iterator",i=n.asyncIterator||"@@asyncIterator",a=n.toStringTag||"@@toStringTag";function u(t,r,e){return Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}),t[r]}try{u({},"")}catch(t){u=function(t,r,e){return t[r]=e}}function c(t,r,e,n){var o=Object.create((r&&r.prototype instanceof f?r:f).prototype),i=new E(n||[]);return o._invoke=function(t,r,e){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(e.method=o,e.arg=i;;){var a=e.delegate;if(a){var u=x(a,e);if(u){if(u===h)continue;return u}}if("next"===e.method)e.sent=e._sent=e.arg;else if("throw"===e.method){if("suspendedStart"===n)throw n="completed",e.arg;e.dispatchException(e.arg)}else"return"===e.method&&e.abrupt("return",e.arg);n="executing";var c=s(t,r,e);if("normal"===c.type){if(n=e.done?"completed":"suspendedYield",c.arg===h)continue;return{value:c.arg,done:e.done}}"throw"===c.type&&(n="completed",e.method="throw",e.arg=c.arg)}}}(t,e,i),o}function s(t,r,e){try{return{type:"normal",arg:t.call(r,e)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var h={};function f(){}function l(){}function p(){}var v={};v[o]=function(){return this};var d=Object.getPrototypeOf,y=d&&d(d(j([])));y&&y!==r&&e.call(y,o)&&(v=y);var m=p.prototype=f.prototype=Object.create(v);function g(t){["next","throw","return"].forEach((function(r){u(t,r,(function(t){return this._invoke(r,t)}))}))}function w(t,r){var n;this._invoke=function(o,i){function a(){return new r((function(n,a){!function n(o,i,a,u){var c=s(t[o],t,i);if("throw"!==c.type){var h=c.arg,f=h.value;return f&&"object"==typeof f&&e.call(f,"__await")?r.resolve(f.__await).then((function(t){n("next",t,a,u)}),(function(t){n("throw",t,a,u)})):r.resolve(f).then((function(t){h.value=t,a(h)}),(function(t){return n("throw",t,a,u)}))}u(c.arg)}(o,i,n,a)}))}return n=n?n.then(a,a):a()}}function x(t,r){var e=t.iterator[r.method];if(void 0===e){if(r.delegate=null,"throw"===r.method){if(t.iterator.return&&(r.method="return",r.arg=void 0,x(t,r),"throw"===r.method))return h;r.method="throw",r.arg=new TypeError("The iterator does not provide a 'throw' method")}return h}var n=s(e,t.iterator,r.arg);if("throw"===n.type)return r.method="throw",r.arg=n.arg,r.delegate=null,h;var o=n.arg;return o?o.done?(r[t.resultName]=o.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=void 0),r.delegate=null,h):o:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,h)}function b(t){var r={tryLoc:t[0]};1 in t&&(r.catchLoc=t[1]),2 in t&&(r.finallyLoc=t[2],r.afterLoc=t[3]),this.tryEntries.push(r)}function L(t){var r=t.completion||{};r.type="normal",delete r.arg,t.completion=r}function E(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(b,this),this.reset(!0)}function j(t){if(t){var r=t[o];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function r(){for(;++n<t.length;)if(e.call(t,n))return r.value=t[n],r.done=!1,r;return r.value=void 0,r.done=!0,r};return i.next=i}}return{next:_}}function _(){return{value:void 0,done:!0}}return l.prototype=m.constructor=p,p.constructor=l,l.displayName=u(p,a,"GeneratorFunction"),t.isGeneratorFunction=function(t){var r="function"==typeof t&&t.constructor;return!!r&&(r===l||"GeneratorFunction"===(r.displayName||r.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,p):(t.__proto__=p,u(t,a,"GeneratorFunction")),t.prototype=Object.create(m),t},t.awrap=function(t){return{__await:t}},g(w.prototype),w.prototype[i]=function(){return this},t.AsyncIterator=w,t.async=function(r,e,n,o,i){void 0===i&&(i=Promise);var a=new w(c(r,e,n,o),i);return t.isGeneratorFunction(e)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(m),u(m,a,"Generator"),m[o]=function(){return this},m.toString=function(){return"[object Generator]"},t.keys=function(t){var r=[];for(var e in t)r.push(e);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=j,E.prototype={constructor:E,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(L),!t)for(var r in this)"t"===r.charAt(0)&&e.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function n(e,n){return a.type="throw",a.arg=t,r.next=e,n&&(r.method="next",r.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var u=e.call(i,"catchLoc"),c=e.call(i,"finallyLoc");if(u&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,r){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&e.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=r&&r<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=r,i?(this.method="next",this.next=i.finallyLoc,h):this.complete(a)},complete:function(t,r){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&r&&(this.next=r),h},finish:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.finallyLoc===t)return this.complete(e.completion,e.afterLoc),L(e),h}},catch:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.tryLoc===t){var n=e.completion;if("throw"===n.type){var o=n.arg;L(e)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,e){return this.delegate={iterator:j(t),resultName:r,nextLoc:e},"next"===this.method&&(this.arg=void 0),h}},t}(t.exports);try{regeneratorRuntime=r}catch(t){Function("r","regeneratorRuntime = r")(r)}})),s=new Map;function h(t,e,n,o,i){var a,u={json5:"json"};if(u[e]&&(e=u[e]),"twoslash"===e){if(!n)throw new Error("A twoslash code block needs a pragma like 'twoslash include [name]'");!function(t,r,e){var n=e.split(" ")[1],o=[];r.split("\n").forEach((function(r,e){var i=r.trim();if(i.startsWith("// - ")){var a=i.split("// - ")[1].split(" ")[0];t.set(n+"-"+a,o.join("\n"))}else o.push(r)})),t.set(n,o.join("\n"))}(s,t,n),a=""}else a=o.map((function(o){var a=o.customName.split("/").pop().replace(".json","");return r.renderCodeToHTML(t,e,n.split(" "),{themeName:a},o,i)})).join("\n");return a}var f=function(t,e,n,o){if(void 0===o&&(o={}),!(process&&process.env&&process.env.TWOSLASH_DISABLE)&&n&&n.includes("twoslash"))return function(t,e,n){try{require("crypto")}catch(o){return r.runTwoSlash(t,e,n)}var o=require("crypto").createHash,i=require("fs"),a=i.readFileSync,u=i.existsSync,c=i.mkdirSync,s=i.writeFileSync,h=require("path").join,f=o("sha1").update(t).digest("hex"),l=h(__dirname,"..","..",".cache","twoslash"),p=h(l,f+".json");if(u(p))return JSON.parse(a(p,"utf8"));var v=r.runTwoSlash(t,e,n);return u(l)||c(l,{recursive:!0}),s(p,JSON.stringify(v),"utf8"),v}(function(t,r){for(var e,n=/\/\/ @include: (.*)$/gm,o=[];null!==(e=n.exec(r));){e.index===n.lastIndex&&n.lastIndex++;var i=e[1],a=t.get(i);if(!a){var u="Could not find an includes with the key: '"+i+"'.\nThere is: "+[].concat(t.keys())+".";throw new Error(u)}o.push([e.index,e[0].length,a])}var c=r.toString();return o.reverse().forEach((function(t){c=c.substring(0,t[0])+t[2]+c.substring(t[0]+t[1])})),c}(s,t),e,o)},l=new Map,p=function(){var t=i(c.mark((function t(r){var n;return c.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return n=r.themes||(r.theme?[r.theme]:["light-plus"]),t.next=3,Promise.all(n.map(function(){var t=i(c.mark((function t(n){var o,i,u;return c.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!(i=l.get(o=n.name||n))){t.next=4;break}return t.abrupt("return",i);case 4:return t.next=6,e.getHighlighter(a({},r,{theme:n,themes:void 0}));case 6:return(u=t.sent).customName=o,l.set(o,u),t.abrupt("return",u);case 10:case"end":return t.stop()}}),t)})));return function(r){return t.apply(this,arguments)}}()));case 3:return t.abrupt("return",t.sent);case 4:case"end":return t.stop()}}),t)})));return function(r){return t.apply(this,arguments)}}(),v=function(t){if(!t.vfsRoot)try{t.vfsRoot=require("path").join(__dirname,"..","..","..")}catch(t){}},d=function(){return s.clear()},y=function(t,r){return void 0===r&&(r={}),function(e){var n=e.lang,o=e.meta?"string"==typeof e.meta?e.meta:e.meta.join(" "):"",i=f(e.value,n,o,r);i&&(e.value=i.code,e.lang=i.extension,e.twoslash=i);var a=h(e.value,n,o,t,i);e.type="html",e.value=a,e.children=[]}},m=function(){var t=i(c.mark((function t(r){return c.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return void 0===r&&(r={}),v(r),d(),t.next=5,p(r);case 5:return t.abrupt("return",{settings:r,highlighters:t.sent});case 7:case"end":return t.stop()}}),t)})));return function(r){return t.apply(this,arguments)}}();exports.default=function(t){return void 0===t&&(t={}),v(t),function(){var r=i(c.mark((function r(e){var o;return c.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,p(t);case 2:o=r.sent,d(),n(e,"code",y(o,t));case 5:case"end":return r.stop()}}),r)})));return function(t){return r.apply(this,arguments)}}()},exports.highlightersFromSettings=p,exports.remarkVisitor=y,exports.runTwoSlashOnNode=f,exports.setupForFile=m,exports.transformAttributesToHTML=function(t,r,e,n,o){var i=f(t,r,e,o);return h(i&&i.code||t,r,e,n,i)}; | ||
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t,r=require("shiki-twoslash"),e=require("shiki"),n=(t=require("unist-util-visit"))&&"object"==typeof t&&"default"in t?t.default:t;function o(t,r,e,n,o,i,a){try{var u=t[i](a),c=u.value}catch(t){return void e(t)}u.done?r(c):Promise.resolve(c).then(n,o)}function i(t){return function(){var r=this,e=arguments;return new Promise((function(n,i){var a=t.apply(r,e);function u(t){o(a,n,i,u,c,"next",t)}function c(t){o(a,n,i,u,c,"throw",t)}u(void 0)}))}}function a(){return(a=Object.assign||function(t){for(var r=1;r<arguments.length;r++){var e=arguments[r];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])}return t}).apply(this,arguments)}function u(t,r){return t(r={exports:{}},r.exports),r.exports}var c=u((function(t){var r=function(t){var r=Object.prototype,e=r.hasOwnProperty,n="function"==typeof Symbol?Symbol:{},o=n.iterator||"@@iterator",i=n.asyncIterator||"@@asyncIterator",a=n.toStringTag||"@@toStringTag";function u(t,r,e){return Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}),t[r]}try{u({},"")}catch(t){u=function(t,r,e){return t[r]=e}}function c(t,r,e,n){var o=Object.create((r&&r.prototype instanceof f?r:f).prototype),i=new E(n||[]);return o._invoke=function(t,r,e){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(e.method=o,e.arg=i;;){var a=e.delegate;if(a){var u=x(a,e);if(u){if(u===h)continue;return u}}if("next"===e.method)e.sent=e._sent=e.arg;else if("throw"===e.method){if("suspendedStart"===n)throw n="completed",e.arg;e.dispatchException(e.arg)}else"return"===e.method&&e.abrupt("return",e.arg);n="executing";var c=s(t,r,e);if("normal"===c.type){if(n=e.done?"completed":"suspendedYield",c.arg===h)continue;return{value:c.arg,done:e.done}}"throw"===c.type&&(n="completed",e.method="throw",e.arg=c.arg)}}}(t,e,i),o}function s(t,r,e){try{return{type:"normal",arg:t.call(r,e)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var h={};function f(){}function l(){}function p(){}var v={};v[o]=function(){return this};var d=Object.getPrototypeOf,y=d&&d(d(j([])));y&&y!==r&&e.call(y,o)&&(v=y);var m=p.prototype=f.prototype=Object.create(v);function g(t){["next","throw","return"].forEach((function(r){u(t,r,(function(t){return this._invoke(r,t)}))}))}function w(t,r){var n;this._invoke=function(o,i){function a(){return new r((function(n,a){!function n(o,i,a,u){var c=s(t[o],t,i);if("throw"!==c.type){var h=c.arg,f=h.value;return f&&"object"==typeof f&&e.call(f,"__await")?r.resolve(f.__await).then((function(t){n("next",t,a,u)}),(function(t){n("throw",t,a,u)})):r.resolve(f).then((function(t){h.value=t,a(h)}),(function(t){return n("throw",t,a,u)}))}u(c.arg)}(o,i,n,a)}))}return n=n?n.then(a,a):a()}}function x(t,r){var e=t.iterator[r.method];if(void 0===e){if(r.delegate=null,"throw"===r.method){if(t.iterator.return&&(r.method="return",r.arg=void 0,x(t,r),"throw"===r.method))return h;r.method="throw",r.arg=new TypeError("The iterator does not provide a 'throw' method")}return h}var n=s(e,t.iterator,r.arg);if("throw"===n.type)return r.method="throw",r.arg=n.arg,r.delegate=null,h;var o=n.arg;return o?o.done?(r[t.resultName]=o.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=void 0),r.delegate=null,h):o:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,h)}function b(t){var r={tryLoc:t[0]};1 in t&&(r.catchLoc=t[1]),2 in t&&(r.finallyLoc=t[2],r.afterLoc=t[3]),this.tryEntries.push(r)}function L(t){var r=t.completion||{};r.type="normal",delete r.arg,t.completion=r}function E(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(b,this),this.reset(!0)}function j(t){if(t){var r=t[o];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function r(){for(;++n<t.length;)if(e.call(t,n))return r.value=t[n],r.done=!1,r;return r.value=void 0,r.done=!0,r};return i.next=i}}return{next:k}}function k(){return{value:void 0,done:!0}}return l.prototype=m.constructor=p,p.constructor=l,l.displayName=u(p,a,"GeneratorFunction"),t.isGeneratorFunction=function(t){var r="function"==typeof t&&t.constructor;return!!r&&(r===l||"GeneratorFunction"===(r.displayName||r.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,p):(t.__proto__=p,u(t,a,"GeneratorFunction")),t.prototype=Object.create(m),t},t.awrap=function(t){return{__await:t}},g(w.prototype),w.prototype[i]=function(){return this},t.AsyncIterator=w,t.async=function(r,e,n,o,i){void 0===i&&(i=Promise);var a=new w(c(r,e,n,o),i);return t.isGeneratorFunction(e)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(m),u(m,a,"Generator"),m[o]=function(){return this},m.toString=function(){return"[object Generator]"},t.keys=function(t){var r=[];for(var e in t)r.push(e);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=j,E.prototype={constructor:E,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(L),!t)for(var r in this)"t"===r.charAt(0)&&e.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function n(e,n){return a.type="throw",a.arg=t,r.next=e,n&&(r.method="next",r.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var u=e.call(i,"catchLoc"),c=e.call(i,"finallyLoc");if(u&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,r){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&e.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=r&&r<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=r,i?(this.method="next",this.next=i.finallyLoc,h):this.complete(a)},complete:function(t,r){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&r&&(this.next=r),h},finish:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.finallyLoc===t)return this.complete(e.completion,e.afterLoc),L(e),h}},catch:function(t){for(var r=this.tryEntries.length-1;r>=0;--r){var e=this.tryEntries[r];if(e.tryLoc===t){var n=e.completion;if("throw"===n.type){var o=n.arg;L(e)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,e){return this.delegate={iterator:j(t),resultName:r,nextLoc:e},"next"===this.method&&(this.arg=void 0),h}},t}(t.exports);try{regeneratorRuntime=r}catch(t){Function("r","regeneratorRuntime = r")(r)}})),s=new Map;function h(t,e,n,o,i){var a,u={json5:"json"};if(u[e]&&(e=u[e]),"twoslash"===e){if(!n)throw new Error("A twoslash code block needs a pragma like 'twoslash include [name]'");!function(t,r,e){var n=e.split(" ")[1],o=[];r.split("\n").forEach((function(r,e){var i=r.trim();if(i.startsWith("// - ")){var a=i.split("// - ")[1].split(" ")[0];t.set(n+"-"+a,o.join("\n"))}else o.push(r)})),t.set(n,o.join("\n"))}(s,t,n),a=""}else a=o.map((function(o){var a=o.customName.split("/").pop().replace(".json","");return r.renderCodeToHTML(t,e,n.split(" "),{themeName:a},o,i)})).join("\n");return a}var f=function(t,e,n,o){if(void 0===o&&(o={}),!(process&&process.env&&process.env.TWOSLASH_DISABLE)&&n&&n.includes("twoslash"))return function(t,e,n){try{require("crypto")}catch(o){return r.runTwoSlash(t,e,n)}var o=require("crypto").createHash,i=require("fs"),a=i.readFileSync,u=i.existsSync,c=i.mkdirSync,s=i.writeFileSync,h=require("path").join,f=o("sha1").update(t).digest("hex"),l=h(__dirname,"..","..",".cache","twoslash"),p=h(l,f+".json");if(u(p))return JSON.parse(a(p,"utf8"));var v=r.runTwoSlash(t,e,n);return u(l)||c(l,{recursive:!0}),s(p,JSON.stringify(v),"utf8"),v}(function(t,r){for(var e,n=/\/\/ @include: (.*)$/gm,o=[];null!==(e=n.exec(r));){e.index===n.lastIndex&&n.lastIndex++;var i=e[1],a=t.get(i);if(!a){var u="Could not find an includes with the key: '"+i+"'.\nThere is: "+[].concat(t.keys())+".";throw new Error(u)}o.push([e.index,e[0].length,a])}var c=r.toString();return o.reverse().forEach((function(t){c=c.substring(0,t[0])+t[2]+c.substring(t[0]+t[1])})),c}(s,t),e,o)},l=new WeakMap,p=function(){var t=i(c.mark((function t(r){var n,o;return c.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=r.themes||(r.theme?[r.theme]:["light-plus"]),!l.has(r)){t.next=3;break}return t.abrupt("return",l.get(r));case 3:return t.next=5,Promise.all(n.map(function(){var t=i(c.mark((function t(n){var o,i;return c.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return o=n.name||n,t.next=3,e.getHighlighter(a({},r,{theme:n,themes:void 0}));case 3:return(i=t.sent).customName=o,t.abrupt("return",i);case 6:case"end":return t.stop()}}),t)})));return function(r){return t.apply(this,arguments)}}()));case 5:return l.set(r,o=t.sent),t.abrupt("return",o);case 8:case"end":return t.stop()}}),t)})));return function(r){return t.apply(this,arguments)}}(),v=function(t){if(!t.vfsRoot)try{t.vfsRoot=require("path").join(__dirname,"..","..","..")}catch(t){}},d=function(){return s.clear()},y=function(t,r){return void 0===r&&(r={}),function(e){var n=e.lang,o=e.meta?"string"==typeof e.meta?e.meta:e.meta.join(" "):"",i=f(e.value,n,o,r);i&&(e.value=i.code,e.lang=i.extension,e.twoslash=i);var a=h(e.value,n,o,t,i);e.type="html",e.value=a,e.children=[]}},m=function(){var t=i(c.mark((function t(r){return c.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return void 0===r&&(r={}),v(r),d(),t.next=5,p(r);case 5:return t.abrupt("return",{settings:r,highlighters:t.sent});case 7:case"end":return t.stop()}}),t)})));return function(r){return t.apply(this,arguments)}}();exports.default=function(t){return void 0===t&&(t={}),v(t),function(){var r=i(c.mark((function r(e){var o;return c.wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,p(t);case 2:o=r.sent,d(),n(e,"code",y(o,t));case 5:case"end":return r.stop()}}),r)})));return function(t){return r.apply(this,arguments)}}()},exports.highlightersFromSettings=p,exports.remarkVisitor=y,exports.runTwoSlashOnNode=f,exports.setupForFile=m,exports.transformAttributesToHTML=function(t,r,e,n,o){var i=f(t,r,e,o);return h(i&&i.code||t,r,e,n,i)}; | ||
//# sourceMappingURL=remark-shiki-twoslash.cjs.production.min.js.map |
@@ -933,3 +933,3 @@ import { runTwoSlash, renderCodeToHTML } from 'shiki-twoslash'; | ||
var highlighterCache = /*#__PURE__*/new Map(); | ||
var highlighterCache = /*#__PURE__*/new WeakMap(); | ||
/** Sets up the highlighters, and cache's for recalls */ | ||
@@ -939,3 +939,3 @@ | ||
var _ref = /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee2(settings) { | ||
var themes; | ||
var themes, highlighters; | ||
return runtime_1.wrap(function _callee2$(_context2) { | ||
@@ -946,6 +946,15 @@ while (1) { | ||
themes = settings.themes || (settings.theme ? [settings.theme] : ["light-plus"]); | ||
_context2.next = 3; | ||
if (!highlighterCache.has(settings)) { | ||
_context2.next = 3; | ||
break; | ||
} | ||
return _context2.abrupt("return", highlighterCache.get(settings)); | ||
case 3: | ||
_context2.next = 5; | ||
return Promise.all(themes.map( /*#__PURE__*/function () { | ||
var _ref2 = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee(theme) { | ||
var themeName, cached, highlighter; | ||
var themeName, highlighter; | ||
return runtime_1.wrap(function _callee$(_context) { | ||
@@ -957,13 +966,3 @@ while (1) { | ||
themeName = theme.name || theme; | ||
cached = highlighterCache.get(themeName); | ||
if (!cached) { | ||
_context.next = 4; | ||
break; | ||
} | ||
return _context.abrupt("return", cached); | ||
case 4: | ||
_context.next = 6; | ||
_context.next = 3; | ||
return getHighlighter(_extends({}, settings, { | ||
@@ -974,10 +973,9 @@ theme: theme, | ||
case 6: | ||
case 3: | ||
highlighter = _context.sent; | ||
// @ts-ignore - https://github.com/shikijs/shiki/pull/162 will fix this | ||
highlighter.customName = themeName; | ||
highlighterCache.set(themeName, highlighter); | ||
return _context.abrupt("return", highlighter); | ||
case 10: | ||
case 6: | ||
case "end": | ||
@@ -995,6 +993,8 @@ return _context.stop(); | ||
case 3: | ||
return _context2.abrupt("return", _context2.sent); | ||
case 5: | ||
highlighters = _context2.sent; | ||
highlighterCache.set(settings, highlighters); | ||
return _context2.abrupt("return", highlighters); | ||
case 4: | ||
case 8: | ||
case "end": | ||
@@ -1001,0 +1001,0 @@ return _context2.stop(); |
{ | ||
"name": "remark-shiki-twoslash", | ||
"version": "1.4.7", | ||
"version": "1.4.8", | ||
"license": "MIT", | ||
@@ -5,0 +5,0 @@ "homepage": "https://github.com/shikijs/twoslash", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
278565