iCheck Radiogroup Custom Widget

Source code: Survey setup
Survey.defaultBootstrapCss.navigationButton = "btn btn-primary";
Survey.Survey.cssType = "bootstrap";
Survey.JsonObject.metaData.addProperty("radiogroup", {name: "renderAs", default: "standard", choices: ["standard", "icheck"]});
var survey = new Survey.Model({ questions: [
 { type: "radiogroup", name: "position", renderAs: "icheck", title: "Choose job position...", isRequired: true, colCount: 0,
     choices: ["1|Designer", "2|Front-end Developer", "3|Back-end Developer", "4|Database Administrator", "5|System Engineer"] }
]});
survey.data = {position:"2"};


var widget = {
    name: "icheck",
    isFit : function(question) { return question["renderAs"] === 'icheck'; }
}
Vue.component(widget.name, {
    props: ['question', 'css', 'isEditMode'],
    template:'<div><div v-for="(item, index) in question.visibleChoices"><label><input type="radio" :name="question.name" :value="item.value" :id="question.inputId + \'_\' + item.value"  /><span>{{ item.text}}</span></label></div></div>',
    mounted: function () {
        var question = this.question;
        var $el = $(this.$el);
        var select = function() {
          $el.find("input[value=" + question.value + "]").iCheck('check');
        }
        $el.find('input').iCheck({
          checkboxClass: 'iradio_square-blue',
          radioClass: 'iradio_square-blue'
        });
        $el.find('input').on('ifChecked', function(event){
          question.value = event.target.value;
        });
        question.valueChangedCallback = select;
        select();
    }
})
Survey.CustomWidgetCollection.Instance.addCustomWidget(widget);

new Vue({ el: '#surveyElement', data: { survey: survey } });