summaryrefslogtreecommitdiff
path: root/src/client/app/common/views/components
diff options
context:
space:
mode:
authorsyuilo <Syuilotan@yahoo.co.jp>2019-07-10 18:30:51 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2019-07-10 18:30:51 +0900
commitfeec5e88fcb0b0d89931dba1c2032ea315b553bf (patch)
tree73f336c4053a57f71e91e28500eb6f7029330a6f /src/client/app/common/views/components
parentFix drive browser showing false empty (#5127) (diff)
downloadmisskey-feec5e88fcb0b0d89931dba1c2032ea315b553bf.tar.gz
misskey-feec5e88fcb0b0d89931dba1c2032ea315b553bf.tar.bz2
misskey-feec5e88fcb0b0d89931dba1c2032ea315b553bf.zip
Pages: Implement radio button
Diffstat (limited to 'src/client/app/common/views/components')
-rw-r--r--src/client/app/common/views/components/page/page.block.vue3
-rw-r--r--src/client/app/common/views/components/page/page.radio-button.vue37
2 files changed, 39 insertions, 1 deletions
diff --git a/src/client/app/common/views/components/page/page.block.vue b/src/client/app/common/views/components/page/page.block.vue
index 1c421fc2c0..56d1822013 100644
--- a/src/client/app/common/views/components/page/page.block.vue
+++ b/src/client/app/common/views/components/page/page.block.vue
@@ -16,10 +16,11 @@ import XIf from './page.if.vue';
import XTextarea from './page.textarea.vue';
import XPost from './page.post.vue';
import XCounter from './page.counter.vue';
+import XRadioButton from './page.radio-button.vue';
export default Vue.extend({
components: {
- XText, XSection, XImage, XButton, XNumberInput, XTextInput, XTextareaInput, XTextarea, XPost, XSwitch, XIf, XCounter
+ XText, XSection, XImage, XButton, XNumberInput, XTextInput, XTextareaInput, XTextarea, XPost, XSwitch, XIf, XCounter, XRadioButton
},
props: {
diff --git a/src/client/app/common/views/components/page/page.radio-button.vue b/src/client/app/common/views/components/page/page.radio-button.vue
new file mode 100644
index 0000000000..27c11bebad
--- /dev/null
+++ b/src/client/app/common/views/components/page/page.radio-button.vue
@@ -0,0 +1,37 @@
+<template>
+<div>
+ <div>{{ script.interpolate(value.title) }}</div>
+ <ui-radio v-for="x in value.values" v-model="v" :value="x" :key="x">{{ x }}</ui-radio>
+</div>
+</template>
+
+<script lang="ts">
+import Vue from 'vue';
+
+export default Vue.extend({
+ props: {
+ value: {
+ required: true
+ },
+ script: {
+ required: true
+ }
+ },
+
+ data() {
+ return {
+ v: this.value.default,
+ };
+ },
+
+ watch: {
+ v() {
+ this.script.aiScript.updatePageVar(this.value.name, this.v);
+ this.script.eval();
+ }
+ }
+});
+</script>
+
+<style lang="stylus" scoped>
+</style>