| 1234567891011121314151617181920212223242526272829303132333435 | {{define "component/passwordInput"}}<template>    <a-input :value="value" :type="showPassword ? 'text' : 'password'"            :placeholder="placeholder"            @input="$emit('input', $event.target.value)">        <template v-if="icon" #prefix>            <a-icon :type="icon" style="font-size: 16px;" />        </template>        <template #addonAfter>            <a-icon :type="showPassword ? 'eye-invisible' : 'eye'"                    @click="toggleShowPassword"                    style="font-size: 16px;" />        </template>    </a-input></template>{{end}}{{define "component/password"}}<script>  Vue.component('password-input', {    props: ["title", "value", "placeholder", "icon"],    template: `{{template "component/passwordInput"}}`,    data() {      return {        showPassword: false,      };    },    methods: {      toggleShowPassword() {        this.showPassword = !this.showPassword;      },    },  });</script>{{end}}
 |