summaryrefslogtreecommitdiff
path: root/packages/frontend/src/scripts/aiscript/ui.ts
diff options
context:
space:
mode:
authorFineArchs <133759614+FineArchs@users.noreply.github.com>2023-12-25 18:03:06 +0900
committerGitHub <noreply@github.com>2023-12-25 18:03:06 +0900
commit4f247a0784be6d3d75e988cb84fd8f962a3d8681 (patch)
tree92af0905380088374abcd7edd9c53c71247abeac /packages/frontend/src/scripts/aiscript/ui.ts
parentUpdate SECURITY.md (diff)
downloadsharkey-4f247a0784be6d3d75e988cb84fd8f962a3d8681.tar.gz
sharkey-4f247a0784be6d3d75e988cb84fd8f962a3d8681.tar.bz2
sharkey-4f247a0784be6d3d75e988cb84fd8f962a3d8681.zip
Feat: クリックイベントを発生させるMFM構文を追加 (#12798)
* Update MkMisskeyFlavoredMarkdown.ts * fix MkMisskeyFlavoredMarkdown.ts * Update MkAsUi.vue * Update ui.ts * Fix MkMisskeyFlavoredMarkdown.ts * Update CHANGELOG.md * fix ui.ts * revert CHANGELOG.md * Update CHANGELOG.md
Diffstat (limited to 'packages/frontend/src/scripts/aiscript/ui.ts')
-rw-r--r--packages/frontend/src/scripts/aiscript/ui.ts6
1 files changed, 6 insertions, 0 deletions
diff --git a/packages/frontend/src/scripts/aiscript/ui.ts b/packages/frontend/src/scripts/aiscript/ui.ts
index 75b9248432..08ba1e6d9b 100644
--- a/packages/frontend/src/scripts/aiscript/ui.ts
+++ b/packages/frontend/src/scripts/aiscript/ui.ts
@@ -47,6 +47,7 @@ export type AsUiMfm = AsUiComponentBase & {
bold?: boolean;
color?: string;
font?: 'serif' | 'sans-serif' | 'monospace';
+ onClickEv?: (evId: string) => void
};
export type AsUiButton = AsUiComponentBase & {
@@ -230,6 +231,8 @@ function getMfmOptions(def: values.Value | undefined): Omit<AsUiMfm, 'id' | 'typ
if (color) utils.assertString(color);
const font = def.value.get('font');
if (font) utils.assertString(font);
+ const onClickEv = def.value.get('onClickEv');
+ if (onClickEv) utils.assertFunction(onClickEv);
return {
text: text?.value,
@@ -237,6 +240,9 @@ function getMfmOptions(def: values.Value | undefined): Omit<AsUiMfm, 'id' | 'typ
bold: bold?.value,
color: color?.value,
font: font?.value,
+ onClickEv: (evId: string) => {
+ if (onClickEv) call(onClickEv, values.STR(evId));
+ },
};
}