Add various new tag functions (#195)
This commit is contained in:
parent
eab26a28df
commit
38ab38645b
3 changed files with 26 additions and 1 deletions
backend/src
|
@ -203,7 +203,7 @@ export const TagsPlugin = zeppelinGuildPlugin<TagsPluginType>()("tags", {
|
|||
return "";
|
||||
}
|
||||
|
||||
if (input.match(/^<(?:@(?:!|&)?|#)\d+>$/)) {
|
||||
if (input.match(/^<(?:@[!&]?|#)\d+>$/)) {
|
||||
return input;
|
||||
}
|
||||
|
||||
|
@ -217,6 +217,14 @@ export const TagsPlugin = zeppelinGuildPlugin<TagsPluginType>()("tags", {
|
|||
|
||||
return "";
|
||||
},
|
||||
|
||||
isMention: input => {
|
||||
if (typeof input !== "string") {
|
||||
return false;
|
||||
}
|
||||
|
||||
return /^<(?:@[!&]?|#)\d+>$/.test(input);
|
||||
},
|
||||
};
|
||||
|
||||
for (const [name, fn] of Object.entries(state.tagFunctions)) {
|
||||
|
|
|
@ -25,6 +25,11 @@ export async function renderTagBody(
|
|||
if (typeof name !== "string") return;
|
||||
dynamicVars[name] = val;
|
||||
},
|
||||
setr(name, val) {
|
||||
if (typeof name !== "string") return "";
|
||||
dynamicVars[name] = val;
|
||||
return val;
|
||||
},
|
||||
get(name) {
|
||||
return dynamicVars[name] == null ? "" : dynamicVars[name];
|
||||
},
|
||||
|
|
|
@ -308,6 +308,18 @@ const baseValues = {
|
|||
if (end != null && isNaN(end)) return "";
|
||||
return arg1.slice(parseInt(start, 10), end && parseInt(end, 10));
|
||||
},
|
||||
lower(arg) {
|
||||
if (typeof arg !== "string") return arg;
|
||||
return arg.toLowerCase();
|
||||
},
|
||||
upper(arg) {
|
||||
if (typeof arg !== "string") return arg;
|
||||
return arg.toUpperCase();
|
||||
},
|
||||
upperFirst(arg) {
|
||||
if (typeof arg !== "string") return arg;
|
||||
return arg.charAt(0).toUpperCase() + arg.slice(1);
|
||||
},
|
||||
rand(from, to, seed = null) {
|
||||
if (isNaN(from)) return 0;
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue