Files
klz-cables.com/.pnpm-store/v10/files/46/2881ff2e5ac65778dc413c1ec000133fb9292e5295c0d2e95aedc27cf6b21d3c1013943c6aecd0d63cc8c90fd7a1e2977cb9b06f8b11a2467062d577490290
Marc Mintel 5397309103
Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 20s
Build & Deploy / 🧪 QA (push) Failing after 34s
Build & Deploy / 🏗️ Build (push) Has started running
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🧪 Smoke Test (push) Has been cancelled
Build & Deploy / ⚡ Lighthouse (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
fix(products): fix breadcrumbs and product filtering (backport from main)
2026-02-24 16:04:21 +01:00

84 lines
1.7 KiB
Plaintext

(function () {
if (typeof Prism === 'undefined') {
return;
}
var invisibles = {
'tab': /\t/,
'crlf': /\r\n/,
'lf': /\n/,
'cr': /\r/,
'space': / /
};
/**
* Handles the recursive calling of `addInvisibles` for one token.
*
* @param {Object|Array} tokens The grammar or array which contains the token.
* @param {string|number} name The name or index of the token in `tokens`.
*/
function handleToken(tokens, name) {
var value = tokens[name];
var type = Prism.util.type(value);
switch (type) {
case 'RegExp':
var inside = {};
tokens[name] = {
pattern: value,
inside: inside
};
addInvisibles(inside);
break;
case 'Array':
for (var i = 0, l = value.length; i < l; i++) {
handleToken(value, i);
}
break;
default: // 'Object'
// eslint-disable-next-line no-redeclare
var inside = value.inside || (value.inside = {});
addInvisibles(inside);
break;
}
}
/**
* Recursively adds patterns to match invisible characters to the given grammar (if not added already).
*
* @param {Object} grammar
*/
function addInvisibles(grammar) {
if (!grammar || grammar['tab']) {
return;
}
// assign invisibles here to "mark" the grammar in case of self references
for (var name in invisibles) {
if (invisibles.hasOwnProperty(name)) {
grammar[name] = invisibles[name];
}
}
// eslint-disable-next-line no-redeclare
for (var name in grammar) {
if (grammar.hasOwnProperty(name) && !invisibles[name]) {
if (name === 'rest') {
addInvisibles(grammar['rest']);
} else {
handleToken(grammar, name);
}
}
}
}
Prism.hooks.add('before-highlight', function (env) {
addInvisibles(env.grammar);
});
}());