Spaces:
Paused
Paused
Download catalog.json from joddabod/bbuilder-host: direct link, hf CLI and curl.
- Browser
- Download file 40.4 kB
-
https://huggingface.co/spaces/joddabod/bbuilder-host/resolve/main/catalog.json
- Command line
-
hf download hf://spaces/joddabod/bbuilder-host/catalog.json
-
curl -L -o catalog.json https://huggingface.co/spaces/joddabod/bbuilder-host/resolve/main/catalog.json
40.4 kB
| { | |
| "blocks": { | |
| "button_id": { | |
| "args": [], | |
| "category": "buttons", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr(__ctx.button?.id)", | |
| "shape": "reporter", | |
| "text": "clicked button id" | |
| }, | |
| "button_respond": { | |
| "args": [ | |
| { | |
| "default": "Thanks!", | |
| "name": "TEXT", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "buttons", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "await __ctx.button?.respond({ content: __bb.toStr({TEXT}) });", | |
| "shape": "stack", | |
| "text": "respond to the button with %1" | |
| }, | |
| "button_respond_titled": { | |
| "args": [ | |
| { | |
| "default": "Result", | |
| "name": "TITLE", | |
| "options": [], | |
| "type": "string" | |
| }, | |
| { | |
| "default": "Thanks!", | |
| "name": "TEXT", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "buttons", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "await __ctx.button?.respond({ title: __bb.toStr({TITLE}), content: __bb.toStr({TEXT}) });", | |
| "shape": "stack", | |
| "text": "respond with title %1 and text %2" | |
| }, | |
| "button_user": { | |
| "args": [], | |
| "category": "buttons", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr(__ctx.button?.user?.username)", | |
| "shape": "reporter", | |
| "text": "who clicked" | |
| }, | |
| "control_forever": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "SUBSTACK", | |
| "options": [], | |
| "type": "substack" | |
| } | |
| ], | |
| "category": "control", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "while (true) {\n{SUBSTACK}\n await __bb.wait(0);\n}", | |
| "shape": "c", | |
| "text": "forever %1" | |
| }, | |
| "control_if": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "COND", | |
| "options": [], | |
| "type": "boolean" | |
| }, | |
| { | |
| "default": "", | |
| "name": "SUBSTACK", | |
| "options": [], | |
| "type": "substack" | |
| } | |
| ], | |
| "category": "control", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "if ({COND}) {\n{SUBSTACK}\n}", | |
| "shape": "c", | |
| "text": "if %1 then %2" | |
| }, | |
| "control_if_else": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "COND", | |
| "options": [], | |
| "type": "boolean" | |
| }, | |
| { | |
| "default": "", | |
| "name": "SUBSTACK", | |
| "options": [], | |
| "type": "substack" | |
| }, | |
| { | |
| "default": "", | |
| "name": "SUBSTACK2", | |
| "options": [], | |
| "type": "substack" | |
| } | |
| ], | |
| "category": "control", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "if ({COND}) {\n{SUBSTACK}\n} else {\n{SUBSTACK2}\n}", | |
| "shape": "e", | |
| "text": "if %1 then %2 else %3" | |
| }, | |
| "control_repeat": { | |
| "args": [ | |
| { | |
| "default": "10", | |
| "name": "TIMES", | |
| "options": [], | |
| "type": "number" | |
| }, | |
| { | |
| "default": "", | |
| "name": "SUBSTACK", | |
| "options": [], | |
| "type": "substack" | |
| } | |
| ], | |
| "category": "control", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "for (let __i = 0, __n = __bb.toNum({TIMES}); __i < __n; __i++) {\n{SUBSTACK}\n await __bb.wait(0);\n}", | |
| "shape": "c", | |
| "text": "repeat %1 %2" | |
| }, | |
| "control_repeat_until": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "COND", | |
| "options": [], | |
| "type": "boolean" | |
| }, | |
| { | |
| "default": "", | |
| "name": "SUBSTACK", | |
| "options": [], | |
| "type": "substack" | |
| } | |
| ], | |
| "category": "control", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "while (!({COND})) {\n{SUBSTACK}\n await __bb.wait(0);\n}", | |
| "shape": "c", | |
| "text": "repeat until %1 %2" | |
| }, | |
| "control_stop": { | |
| "args": [ | |
| { | |
| "default": "this script", | |
| "name": "WHAT", | |
| "options": [ | |
| "this script", | |
| "all" | |
| ], | |
| "type": "dropdown" | |
| } | |
| ], | |
| "category": "control", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "return;", | |
| "shape": "cap", | |
| "text": "stop %1" | |
| }, | |
| "control_wait": { | |
| "args": [ | |
| { | |
| "default": "1", | |
| "name": "SECS", | |
| "options": [], | |
| "type": "number" | |
| } | |
| ], | |
| "category": "control", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "await __bb.wait({SECS});", | |
| "shape": "stack", | |
| "text": "wait %1 seconds" | |
| }, | |
| "control_wait_until": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "COND", | |
| "options": [], | |
| "type": "boolean" | |
| } | |
| ], | |
| "category": "control", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "while (!({COND})) { await __bb.wait(0.1); }", | |
| "shape": "stack", | |
| "text": "wait until %1" | |
| }, | |
| "data_addtolist": { | |
| "args": [ | |
| { | |
| "default": "thing", | |
| "name": "ITEM", | |
| "options": [], | |
| "type": "string" | |
| }, | |
| { | |
| "default": "my list", | |
| "name": "LIST", | |
| "options": [], | |
| "type": "list" | |
| } | |
| ], | |
| "category": "lists", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "{LIST}.push({ITEM});", | |
| "shape": "stack", | |
| "text": "add %1 to %2" | |
| }, | |
| "data_changevariableby": { | |
| "args": [ | |
| { | |
| "default": "my variable", | |
| "name": "VARIABLE", | |
| "options": [], | |
| "type": "variable" | |
| }, | |
| { | |
| "default": "1", | |
| "name": "VALUE", | |
| "options": [], | |
| "type": "number" | |
| } | |
| ], | |
| "category": "variables", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "{VARIABLE} = __bb.toNum({VARIABLE}) + __bb.toNum({VALUE});", | |
| "shape": "stack", | |
| "text": "change %1 by %2" | |
| }, | |
| "data_deletealloflist": { | |
| "args": [ | |
| { | |
| "default": "my list", | |
| "name": "LIST", | |
| "options": [], | |
| "type": "list" | |
| } | |
| ], | |
| "category": "lists", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "{LIST}.length = 0;", | |
| "shape": "stack", | |
| "text": "delete all of %1" | |
| }, | |
| "data_deleteoflist": { | |
| "args": [ | |
| { | |
| "default": "1", | |
| "name": "INDEX", | |
| "options": [], | |
| "type": "number" | |
| }, | |
| { | |
| "default": "my list", | |
| "name": "LIST", | |
| "options": [], | |
| "type": "list" | |
| } | |
| ], | |
| "category": "lists", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "__bb.listDelete({LIST}, {INDEX});", | |
| "shape": "stack", | |
| "text": "delete %1 of %2" | |
| }, | |
| "data_insertatlist": { | |
| "args": [ | |
| { | |
| "default": "thing", | |
| "name": "ITEM", | |
| "options": [], | |
| "type": "string" | |
| }, | |
| { | |
| "default": "1", | |
| "name": "INDEX", | |
| "options": [], | |
| "type": "number" | |
| }, | |
| { | |
| "default": "my list", | |
| "name": "LIST", | |
| "options": [], | |
| "type": "list" | |
| } | |
| ], | |
| "category": "lists", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "__bb.listInsert({LIST}, {INDEX}, {ITEM});", | |
| "shape": "stack", | |
| "text": "insert %1 at %2 of %3" | |
| }, | |
| "data_itemnumoflist": { | |
| "args": [ | |
| { | |
| "default": "thing", | |
| "name": "ITEM", | |
| "options": [], | |
| "type": "string" | |
| }, | |
| { | |
| "default": "my list", | |
| "name": "LIST", | |
| "options": [], | |
| "type": "list" | |
| } | |
| ], | |
| "category": "lists", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.listIndexOf({LIST}, {ITEM})", | |
| "shape": "reporter", | |
| "text": "item # of %1 in %2" | |
| }, | |
| "data_itemoflist": { | |
| "args": [ | |
| { | |
| "default": "1", | |
| "name": "INDEX", | |
| "options": [], | |
| "type": "number" | |
| }, | |
| { | |
| "default": "my list", | |
| "name": "LIST", | |
| "options": [], | |
| "type": "list" | |
| } | |
| ], | |
| "category": "lists", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.listGet({LIST}, {INDEX})", | |
| "shape": "reporter", | |
| "text": "item %1 of %2" | |
| }, | |
| "data_lengthoflist": { | |
| "args": [ | |
| { | |
| "default": "my list", | |
| "name": "LIST", | |
| "options": [], | |
| "type": "list" | |
| } | |
| ], | |
| "category": "lists", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "{LIST}.length", | |
| "shape": "reporter", | |
| "text": "length of %1" | |
| }, | |
| "data_listcontainsitem": { | |
| "args": [ | |
| { | |
| "default": "my list", | |
| "name": "LIST", | |
| "options": [], | |
| "type": "list" | |
| }, | |
| { | |
| "default": "thing", | |
| "name": "ITEM", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "lists", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.listContains({LIST}, {ITEM})", | |
| "shape": "boolean", | |
| "text": "%1 contains %2 ?" | |
| }, | |
| "data_listcontents": { | |
| "args": [ | |
| { | |
| "default": "my list", | |
| "name": "LIST", | |
| "options": [], | |
| "type": "list" | |
| } | |
| ], | |
| "category": "lists", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "{LIST}.join(' ')", | |
| "shape": "reporter", | |
| "text": "%1" | |
| }, | |
| "data_replaceitemoflist": { | |
| "args": [ | |
| { | |
| "default": "1", | |
| "name": "INDEX", | |
| "options": [], | |
| "type": "number" | |
| }, | |
| { | |
| "default": "my list", | |
| "name": "LIST", | |
| "options": [], | |
| "type": "list" | |
| }, | |
| { | |
| "default": "thing", | |
| "name": "ITEM", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "lists", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "__bb.listReplace({LIST}, {INDEX}, {ITEM});", | |
| "shape": "stack", | |
| "text": "replace item %1 of %2 with %3" | |
| }, | |
| "data_setvariableto": { | |
| "args": [ | |
| { | |
| "default": "my variable", | |
| "name": "VARIABLE", | |
| "options": [], | |
| "type": "variable" | |
| }, | |
| { | |
| "default": "0", | |
| "name": "VALUE", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "variables", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "{VARIABLE} = {VALUE};", | |
| "shape": "stack", | |
| "text": "set %1 to %2" | |
| }, | |
| "data_variable": { | |
| "args": [ | |
| { | |
| "default": "my variable", | |
| "name": "VARIABLE", | |
| "options": [], | |
| "type": "variable" | |
| } | |
| ], | |
| "category": "variables", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "{VARIABLE}", | |
| "shape": "reporter", | |
| "text": "%1" | |
| }, | |
| "event_broadcast": { | |
| "args": [ | |
| { | |
| "default": "message1", | |
| "name": "NAME", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "events", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "await __bb.broadcast({NAME});", | |
| "shape": "stack", | |
| "text": "broadcast %1" | |
| }, | |
| "event_broadcast_receive": { | |
| "args": [ | |
| { | |
| "default": "message1", | |
| "name": "NAME", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "events", | |
| "event": "__broadcast", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "", | |
| "shape": "hat", | |
| "text": "when I receive %1" | |
| }, | |
| "event_button": { | |
| "args": [], | |
| "category": "events", | |
| "event": "MessageButtonClick", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "", | |
| "shape": "hat", | |
| "text": "when any button is clicked" | |
| }, | |
| "event_button_id": { | |
| "args": [ | |
| { | |
| "default": "yes", | |
| "name": "ID", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "events", | |
| "event": "MessageButtonClick", | |
| "guard": "__bb.eq(__ctx.button?.id, {ID})", | |
| "is_expression": false, | |
| "js": "", | |
| "shape": "hat", | |
| "text": "when button %1 is clicked" | |
| }, | |
| "event_command": { | |
| "args": [ | |
| { | |
| "default": "ping", | |
| "name": "NAME", | |
| "options": [], | |
| "type": "string" | |
| }, | |
| { | |
| "default": "what this command does", | |
| "name": "HELP", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "events", | |
| "event": "MessageCreate", | |
| "guard": "__bb.eq(__ctx.message?.command?.name, {NAME})", | |
| "is_expression": false, | |
| "js": "", | |
| "shape": "hat", | |
| "text": "when command %1 is used, help %2" | |
| }, | |
| "event_member_join": { | |
| "args": [], | |
| "category": "events", | |
| "event": "ServerMemberJoined", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "", | |
| "shape": "hat", | |
| "text": "when someone joins the server" | |
| }, | |
| "event_member_leave": { | |
| "args": [], | |
| "category": "events", | |
| "event": "ServerMemberLeft", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "", | |
| "shape": "hat", | |
| "text": "when someone leaves the server" | |
| }, | |
| "event_message": { | |
| "args": [], | |
| "category": "events", | |
| "event": "MessageCreate", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "", | |
| "shape": "hat", | |
| "text": "when I get a message" | |
| }, | |
| "event_message_contains": { | |
| "args": [ | |
| { | |
| "default": "hello", | |
| "name": "TEXT", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "events", | |
| "event": "MessageCreate", | |
| "guard": "__bb.contains(__ctx.message?.content, {TEXT})", | |
| "is_expression": false, | |
| "js": "", | |
| "shape": "hat", | |
| "text": "when a message contains %1" | |
| }, | |
| "event_message_deleted": { | |
| "args": [], | |
| "category": "events", | |
| "event": "MessageDelete", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "", | |
| "shape": "hat", | |
| "text": "when a message is deleted" | |
| }, | |
| "event_message_edited": { | |
| "args": [], | |
| "category": "events", | |
| "event": "MessageUpdate", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "", | |
| "shape": "hat", | |
| "text": "when a message is edited" | |
| }, | |
| "event_message_is": { | |
| "args": [ | |
| { | |
| "default": "hello", | |
| "name": "TEXT", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "events", | |
| "event": "MessageCreate", | |
| "guard": "__bb.eq(__ctx.message?.content, {TEXT})", | |
| "is_expression": false, | |
| "js": "", | |
| "shape": "hat", | |
| "text": "when a message says %1" | |
| }, | |
| "event_message_starts": { | |
| "args": [ | |
| { | |
| "default": "!", | |
| "name": "TEXT", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "events", | |
| "event": "MessageCreate", | |
| "guard": "__bb.toStr(__ctx.message?.content).toLowerCase().startsWith(__bb.toStr({TEXT}).toLowerCase())", | |
| "is_expression": false, | |
| "js": "", | |
| "shape": "hat", | |
| "text": "when a message starts with %1" | |
| }, | |
| "event_reaction_add": { | |
| "args": [], | |
| "category": "events", | |
| "event": "MessageReactionAdded", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "", | |
| "shape": "hat", | |
| "text": "when a reaction is added" | |
| }, | |
| "event_reaction_remove": { | |
| "args": [], | |
| "category": "events", | |
| "event": "MessageReactionRemoved", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "", | |
| "shape": "hat", | |
| "text": "when a reaction is removed" | |
| }, | |
| "event_ready": { | |
| "args": [], | |
| "category": "events", | |
| "event": "Ready", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "", | |
| "shape": "hat", | |
| "text": "when the bot starts" | |
| }, | |
| "member_ban": { | |
| "args": [ | |
| { | |
| "default": "rule break", | |
| "name": "REASON", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "members", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "await __ctx.member?.ban({ reason: __bb.toStr({REASON}) });", | |
| "shape": "stack", | |
| "text": "ban this member because %1" | |
| }, | |
| "member_has_permission": { | |
| "args": [ | |
| { | |
| "default": "ADMIN", | |
| "name": "PERM", | |
| "options": [ | |
| "ADMIN", | |
| "SEND_MESSAGE", | |
| "MANAGE_ROLES", | |
| "MANAGE_CHANNELS", | |
| "KICK", | |
| "BAN" | |
| ], | |
| "type": "dropdown" | |
| } | |
| ], | |
| "category": "members", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "(__ctx.member?.hasPermission?.({PERM}) === true)", | |
| "shape": "boolean", | |
| "text": "member has permission %1" | |
| }, | |
| "member_id": { | |
| "args": [], | |
| "category": "members", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr(__ctx.member?.user?.id ?? __ctx.user?.id)", | |
| "shape": "reporter", | |
| "text": "member id" | |
| }, | |
| "member_kick": { | |
| "args": [], | |
| "category": "members", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "await __ctx.member?.kick();", | |
| "shape": "stack", | |
| "text": "kick this member" | |
| }, | |
| "member_kick_id": { | |
| "args": [ | |
| { | |
| "default": "user id", | |
| "name": "ID", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "members", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "await __ctx.server?.kickMember(__bb.toStr({ID}));", | |
| "shape": "stack", | |
| "text": "kick user %1" | |
| }, | |
| "member_name": { | |
| "args": [], | |
| "category": "members", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr(__ctx.member?.user?.username ?? __ctx.user?.username)", | |
| "shape": "reporter", | |
| "text": "member name" | |
| }, | |
| "member_nickname": { | |
| "args": [], | |
| "category": "members", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr(__ctx.member?.nickname ?? __ctx.member?.user?.username)", | |
| "shape": "reporter", | |
| "text": "member nickname" | |
| }, | |
| "member_role_count": { | |
| "args": [], | |
| "category": "members", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "((__ctx.member?.roleIds ?? []).length)", | |
| "shape": "reporter", | |
| "text": "number of roles" | |
| }, | |
| "member_unban_id": { | |
| "args": [ | |
| { | |
| "default": "user id", | |
| "name": "ID", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "members", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "await __ctx.server?.unbanMember(__bb.toStr({ID}));", | |
| "shape": "stack", | |
| "text": "unban user %1" | |
| }, | |
| "message_author": { | |
| "args": [], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr(__ctx.message?.user?.username)", | |
| "shape": "reporter", | |
| "text": "author name" | |
| }, | |
| "message_author_id": { | |
| "args": [], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr(__ctx.message?.user?.id)", | |
| "shape": "reporter", | |
| "text": "author id" | |
| }, | |
| "message_author_is_bot": { | |
| "args": [], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "(__ctx.message?.user?.bot === true)", | |
| "shape": "boolean", | |
| "text": "author is a bot?" | |
| }, | |
| "message_channel_id": { | |
| "args": [], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr(__ctx.message?.channelId)", | |
| "shape": "reporter", | |
| "text": "channel id" | |
| }, | |
| "message_command_arg": { | |
| "args": [ | |
| { | |
| "default": "1", | |
| "name": "N", | |
| "options": [], | |
| "type": "number" | |
| } | |
| ], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr((__ctx.message?.command?.args ?? [])[__bb.toNum({N}) - 1])", | |
| "shape": "reporter", | |
| "text": "command argument %1" | |
| }, | |
| "message_command_args": { | |
| "args": [], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr((__ctx.message?.command?.args ?? []).join(' '))", | |
| "shape": "reporter", | |
| "text": "all command arguments" | |
| }, | |
| "message_delete": { | |
| "args": [], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "await __ctx.message?.delete();", | |
| "shape": "stack", | |
| "text": "delete this message" | |
| }, | |
| "message_edit": { | |
| "args": [ | |
| { | |
| "default": "edited", | |
| "name": "TEXT", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "await __ctx.message?.edit(__bb.toStr({TEXT}));", | |
| "shape": "stack", | |
| "text": "edit this message to %1" | |
| }, | |
| "message_reaction_name": { | |
| "args": [], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr(__ctx.reaction?.name)", | |
| "shape": "reporter", | |
| "text": "reaction emoji" | |
| }, | |
| "message_reply": { | |
| "args": [ | |
| { | |
| "default": "Hello!", | |
| "name": "TEXT", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "await __ctx.message?.reply(__bb.toStr({TEXT}));", | |
| "shape": "stack", | |
| "text": "reply with %1" | |
| }, | |
| "message_reply_buttons": { | |
| "args": [ | |
| { | |
| "default": "Pick one", | |
| "name": "TEXT", | |
| "options": [], | |
| "type": "string" | |
| }, | |
| { | |
| "default": "Yes, No", | |
| "name": "BUTTONS", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "await __ctx.message?.reply(__bb.toStr({TEXT}), { buttons: __bb.toStr({BUTTONS}).split(',').map(s => s.trim()).filter(Boolean).map(s => ({ id: s.toLowerCase(), label: s })) });", | |
| "shape": "stack", | |
| "text": "reply with %1 and buttons %2" | |
| }, | |
| "message_reply_html": { | |
| "args": [ | |
| { | |
| "default": "<b>hi</b>", | |
| "name": "HTML", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "await __ctx.message?.reply('\\u200c', { htmlEmbed: __bb.toStr({HTML}) });", | |
| "shape": "stack", | |
| "text": "reply with html %1" | |
| }, | |
| "message_safe": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "TEXT", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.escapeHtml({TEXT})", | |
| "shape": "reporter", | |
| "text": "safe text %1" | |
| }, | |
| "message_send": { | |
| "args": [ | |
| { | |
| "default": "Hello!", | |
| "name": "TEXT", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "await __ctx.channel?.send(__bb.toStr({TEXT}));", | |
| "shape": "stack", | |
| "text": "send %1" | |
| }, | |
| "message_send_html": { | |
| "args": [ | |
| { | |
| "default": "<b>hi</b>", | |
| "name": "HTML", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "await __ctx.channel?.send('\\u200c', { htmlEmbed: __bb.toStr({HTML}) });", | |
| "shape": "stack", | |
| "text": "send html %1" | |
| }, | |
| "message_send_to": { | |
| "args": [ | |
| { | |
| "default": "Hello!", | |
| "name": "TEXT", | |
| "options": [], | |
| "type": "string" | |
| }, | |
| { | |
| "default": "channel id", | |
| "name": "CHANNEL", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": false, | |
| "js": "await client.channels?.cache?.get(__bb.toStr({CHANNEL}))?.send(__bb.toStr({TEXT}));", | |
| "shape": "stack", | |
| "text": "send %1 to channel %2" | |
| }, | |
| "message_text": { | |
| "args": [], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr(__ctx.message?.content)", | |
| "shape": "reporter", | |
| "text": "message text" | |
| }, | |
| "message_text_clean": { | |
| "args": [], | |
| "category": "messages", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.stripMentions(__ctx.message?.content)", | |
| "shape": "reporter", | |
| "text": "message text without mentions" | |
| }, | |
| "operator_add": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "A", | |
| "options": [], | |
| "type": "number" | |
| }, | |
| { | |
| "default": "", | |
| "name": "B", | |
| "options": [], | |
| "type": "number" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "(__bb.toNum({A}) + __bb.toNum({B}))", | |
| "shape": "reporter", | |
| "text": "%1 + %2" | |
| }, | |
| "operator_and": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "A", | |
| "options": [], | |
| "type": "boolean" | |
| }, | |
| { | |
| "default": "", | |
| "name": "B", | |
| "options": [], | |
| "type": "boolean" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "(({A}) && ({B}))", | |
| "shape": "boolean", | |
| "text": "%1 and %2" | |
| }, | |
| "operator_contains": { | |
| "args": [ | |
| { | |
| "default": "apple", | |
| "name": "A", | |
| "options": [], | |
| "type": "string" | |
| }, | |
| { | |
| "default": "a", | |
| "name": "B", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.contains({A}, {B})", | |
| "shape": "boolean", | |
| "text": "%1 contains %2 ?" | |
| }, | |
| "operator_divide": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "A", | |
| "options": [], | |
| "type": "number" | |
| }, | |
| { | |
| "default": "", | |
| "name": "B", | |
| "options": [], | |
| "type": "number" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "(__bb.toNum({A}) / __bb.toNum({B}))", | |
| "shape": "reporter", | |
| "text": "%1 / %2" | |
| }, | |
| "operator_equals": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "A", | |
| "options": [], | |
| "type": "string" | |
| }, | |
| { | |
| "default": "50", | |
| "name": "B", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.eq({A}, {B})", | |
| "shape": "boolean", | |
| "text": "%1 = %2" | |
| }, | |
| "operator_gt": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "A", | |
| "options": [], | |
| "type": "string" | |
| }, | |
| { | |
| "default": "50", | |
| "name": "B", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.gt({A}, {B})", | |
| "shape": "boolean", | |
| "text": "%1 > %2" | |
| }, | |
| "operator_is_empty": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "A", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "(__bb.toStr({A}).trim().length === 0)", | |
| "shape": "boolean", | |
| "text": "%1 is empty ?" | |
| }, | |
| "operator_join": { | |
| "args": [ | |
| { | |
| "default": "apple ", | |
| "name": "A", | |
| "options": [], | |
| "type": "string" | |
| }, | |
| { | |
| "default": "banana", | |
| "name": "B", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "(__bb.toStr({A}) + __bb.toStr({B}))", | |
| "shape": "reporter", | |
| "text": "join %1 %2" | |
| }, | |
| "operator_length": { | |
| "args": [ | |
| { | |
| "default": "apple", | |
| "name": "TEXT", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr({TEXT}).length", | |
| "shape": "reporter", | |
| "text": "length of %1" | |
| }, | |
| "operator_letter_of": { | |
| "args": [ | |
| { | |
| "default": "1", | |
| "name": "N", | |
| "options": [], | |
| "type": "number" | |
| }, | |
| { | |
| "default": "apple", | |
| "name": "TEXT", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.letterOf({N}, {TEXT})", | |
| "shape": "reporter", | |
| "text": "letter %1 of %2" | |
| }, | |
| "operator_lowercase": { | |
| "args": [ | |
| { | |
| "default": "HELLO", | |
| "name": "TEXT", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr({TEXT}).toLowerCase()", | |
| "shape": "reporter", | |
| "text": "lowercase %1" | |
| }, | |
| "operator_lt": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "A", | |
| "options": [], | |
| "type": "string" | |
| }, | |
| { | |
| "default": "50", | |
| "name": "B", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.lt({A}, {B})", | |
| "shape": "boolean", | |
| "text": "%1 < %2" | |
| }, | |
| "operator_mathop": { | |
| "args": [ | |
| { | |
| "default": "abs", | |
| "name": "OP", | |
| "options": [ | |
| "abs", | |
| "floor", | |
| "ceiling", | |
| "sqrt", | |
| "sin", | |
| "cos", | |
| "tan", | |
| "ln", | |
| "log", | |
| "e ^", | |
| "10 ^" | |
| ], | |
| "type": "dropdown" | |
| }, | |
| { | |
| "default": "", | |
| "name": "A", | |
| "options": [], | |
| "type": "number" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.mathop({OP}, {A})", | |
| "shape": "reporter", | |
| "text": "%1 of %2" | |
| }, | |
| "operator_mod": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "A", | |
| "options": [], | |
| "type": "number" | |
| }, | |
| { | |
| "default": "", | |
| "name": "B", | |
| "options": [], | |
| "type": "number" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "(__bb.toNum({A}) % __bb.toNum({B}))", | |
| "shape": "reporter", | |
| "text": "%1 mod %2" | |
| }, | |
| "operator_multiply": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "A", | |
| "options": [], | |
| "type": "number" | |
| }, | |
| { | |
| "default": "", | |
| "name": "B", | |
| "options": [], | |
| "type": "number" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "(__bb.toNum({A}) * __bb.toNum({B}))", | |
| "shape": "reporter", | |
| "text": "%1 * %2" | |
| }, | |
| "operator_not": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "A", | |
| "options": [], | |
| "type": "boolean" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "(!({A}))", | |
| "shape": "boolean", | |
| "text": "not %1" | |
| }, | |
| "operator_or": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "A", | |
| "options": [], | |
| "type": "boolean" | |
| }, | |
| { | |
| "default": "", | |
| "name": "B", | |
| "options": [], | |
| "type": "boolean" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "(({A}) || ({B}))", | |
| "shape": "boolean", | |
| "text": "%1 or %2" | |
| }, | |
| "operator_random": { | |
| "args": [ | |
| { | |
| "default": "1", | |
| "name": "FROM", | |
| "options": [], | |
| "type": "number" | |
| }, | |
| { | |
| "default": "10", | |
| "name": "TO", | |
| "options": [], | |
| "type": "number" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.randomInt({FROM}, {TO})", | |
| "shape": "reporter", | |
| "text": "pick random %1 to %2" | |
| }, | |
| "operator_round": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "A", | |
| "options": [], | |
| "type": "number" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "Math.round(__bb.toNum({A}))", | |
| "shape": "reporter", | |
| "text": "round %1" | |
| }, | |
| "operator_subtract": { | |
| "args": [ | |
| { | |
| "default": "", | |
| "name": "A", | |
| "options": [], | |
| "type": "number" | |
| }, | |
| { | |
| "default": "", | |
| "name": "B", | |
| "options": [], | |
| "type": "number" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "(__bb.toNum({A}) - __bb.toNum({B}))", | |
| "shape": "reporter", | |
| "text": "%1 - %2" | |
| }, | |
| "operator_trim": { | |
| "args": [ | |
| { | |
| "default": " hi ", | |
| "name": "TEXT", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr({TEXT}).trim()", | |
| "shape": "reporter", | |
| "text": "trim %1" | |
| }, | |
| "operator_uppercase": { | |
| "args": [ | |
| { | |
| "default": "hello", | |
| "name": "TEXT", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr({TEXT}).toUpperCase()", | |
| "shape": "reporter", | |
| "text": "uppercase %1" | |
| }, | |
| "operator_word_of": { | |
| "args": [ | |
| { | |
| "default": "1", | |
| "name": "N", | |
| "options": [], | |
| "type": "number" | |
| }, | |
| { | |
| "default": "a b c", | |
| "name": "TEXT", | |
| "options": [], | |
| "type": "string" | |
| }, | |
| { | |
| "default": " ", | |
| "name": "SEP", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "operators", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr((__bb.toStr({TEXT}).split(__bb.toStr({SEP})))[__bb.toNum({N}) - 1])", | |
| "shape": "reporter", | |
| "text": "word %1 of %2 split by %3" | |
| }, | |
| "sensing_current": { | |
| "args": [ | |
| { | |
| "default": "hour", | |
| "name": "WHAT", | |
| "options": [ | |
| "year", | |
| "month", | |
| "date", | |
| "dayofweek", | |
| "hour", | |
| "minute", | |
| "second", | |
| "timestamp" | |
| ], | |
| "type": "dropdown" | |
| } | |
| ], | |
| "category": "sensing", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.nowPart({WHAT})", | |
| "shape": "reporter", | |
| "text": "current %1" | |
| }, | |
| "sensing_fetch": { | |
| "args": [ | |
| { | |
| "default": "https://example.com", | |
| "name": "URL", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "sensing", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "await __bb.fetchText({URL})", | |
| "shape": "reporter", | |
| "text": "text from url %1" | |
| }, | |
| "sensing_json": { | |
| "args": [ | |
| { | |
| "default": "data.name", | |
| "name": "PATH", | |
| "options": [], | |
| "type": "string" | |
| }, | |
| { | |
| "default": "", | |
| "name": "JSON", | |
| "options": [], | |
| "type": "string" | |
| } | |
| ], | |
| "category": "sensing", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.jsonPath({JSON}, {PATH})", | |
| "shape": "reporter", | |
| "text": "value %1 of json %2" | |
| }, | |
| "server_bot_name": { | |
| "args": [], | |
| "category": "server", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr(client.user?.username)", | |
| "shape": "reporter", | |
| "text": "my bot name" | |
| }, | |
| "server_channel_name": { | |
| "args": [], | |
| "category": "server", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr(__ctx.channel?.name)", | |
| "shape": "reporter", | |
| "text": "channel name" | |
| }, | |
| "server_id": { | |
| "args": [], | |
| "category": "server", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr(__ctx.server?.id)", | |
| "shape": "reporter", | |
| "text": "server id" | |
| }, | |
| "server_member_count": { | |
| "args": [], | |
| "category": "server", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "((__ctx.server?.members?.cache?.size) ?? 0)", | |
| "shape": "reporter", | |
| "text": "member count" | |
| }, | |
| "server_name": { | |
| "args": [], | |
| "category": "server", | |
| "event": "", | |
| "guard": "", | |
| "is_expression": true, | |
| "js": "__bb.toStr(__ctx.server?.name)", | |
| "shape": "reporter", | |
| "text": "server name" | |
| } | |
| }, | |
| "format": 1, | |
| "generated_by": "app/tools/export_catalog.gd" | |
| } |