uhh apparently i just never committed these

This commit is contained in:
ewin 2025-08-19 23:23:41 -06:00
parent b43b8837ef
commit 78ad0761b3
Signed by: erin
SSH key fingerprint: SHA256:swjoHhREbZPbWe+gyJNi24d4NAxJSyUIm3fpZj4z3wc

View file

@ -27,7 +27,37 @@ export function setEmptyParameter (pageContent, paramName, value) {
* name.
*/
const existingParameterRegExp = paramName =>
new RegExp(`^( *)\\|( *)${regExpEscape(paramName)}( *)=( *).*$`, 'm');
new RegExp(`^( *)\\|( *)${regExpEscape(paramName)}( *)=( *)(.*)$`, 'm');
/**
* Gets the value of an existing parameter.
* @param {string} pageContent
* @param {string} paramName
* @returns {string | null} The value, or `null` if the parameter doesn't exist
*/
export function readExistingParameter (pageContent, paramName) {
let regexp = existingParameterRegExp(paramName);
let match;
if ((match = pageContent.match(regexp))) {
return match[5];
}
return null;
}
/**
* Sets the value of an existing parameter.
* @param {string} pageContent
* @param {string} paramName
* @param {string} value
* @returns {string | null}
*/
export function setExistingParameter (pageContent, paramName, value) {
const regexp = existingParameterRegExp(paramName);
if (pageContent.match(regexp)) {
return pageContent.replace(regexp, `$1|$2${paramName}$3=$4${value}`)
}
return null;
}
/**
* Inserts a new parameter before or after an existing parameter.