<%- include("../../../src/web/views/partials/layout-top", { title }) %>

Expression Interaction

Roleplay friendly interactions from Discord or Twitch with quick commands.

Commands: <% const enabledActions = actions.filter((action) => action.enabled && !action.archived); %> <% if (!enabledActions.length) { %> None enabled yet. <% } else { %> <%= enabledActions.map((action) => `!${action.command}`).join(", ") %> <% } %>

Your stats

<% if (!stats) { %>

Sign in to see how many actions you have given or received.

<% } else { %>
Given <%= stats.totals.given %>
Received <%= stats.totals.received %>
<% const statActions = actions.filter((action) => !action.archived); %> <% statActions.forEach((action) => { %> <% const row = stats.byAction[action.id] || { given_count: 0, received_count: 0 }; %> <% }) %>
Action Given Received
<%= action.command %> <%= row.given_count %> <%= row.received_count %>
<% } %>

Global stats

Total interactions <%= globalStats.total %>
<% if (!globalStats.byAction.length) { %>

No interactions recorded yet.

<% } else { %> <% globalStats.byAction.forEach((row) => { %> <% const action = actions.find((item) => item.id === row.action); %> <% }) %>
Action Total
<%= action ? action.command : row.action %> <%= row.count %>
<% } %>
<% if (isAdmin) { %>

Settings

<% if (conflicts && conflicts.length) { %>
Conflicting command names: <%= conflicts.join(", ") %>. Rename the duplicates.
<% } %>

Expressions

Used for stats and tracking. Avoid changing it once created.
Command names are lowercased; spaces become dashes.
<% if (!actions.length) { %>

No expressions yet.

<% } else { %> <% actions.forEach((action) => { %> <% }) %>
Action Command Verb Past Aliases Status Actions
<%= action.id %> <%= action.command %> <%= action.verb %> <%= action.past %> <%= action.aliases.length ? action.aliases.join(", ") : '-' %> <%= action.archived ? 'Archived' : action.enabled ? 'Enabled' : 'Disabled' %>
<% if (action.archived) { %>
<% } else { %>
<% } %>
Leave tense fields blank to auto-conjugate.
<% } %>
<% } %> <%- include("../../../src/web/views/partials/layout-bottom") %>