<commit_before>import { ModulVue } from '../../utils/vue/vue';
import { PluginObject } from 'vue';
import Component from 'vue-class-component';
import { Prop } from 'vue-property-decorator';
import WithRender from './link.html?style=./link.scss';
import { LINK_NAME } from '../component-names';
import IconPlugin from '../icon/icon';
import I18nPlugin from '../i18n/i18n';

export enum MLinkMode {
    RouterLink = 'router-link',
    Link = 'link',
    Button = 'button'
}

export enum MLinkIconPosition {
    Left = 'left',
    Right = 'right'
}

const ICON_NAME_DEFAULT: string = 'right-arrow';

@WithRender
@Component
export class MLink extends ModulVue {
    @Prop({ default: '/' })
    public url: string;

    @Prop({
        default: MLinkMode.RouterLink,
        validator: value =>
            value == MLinkMode.RouterLink ||
            value == MLinkMode.Link ||
            value == MLinkMode.Button
    })
    public mode: MLinkMode;

    @Prop()
    public disabled: boolean;

    @Prop()
    public unvisited: boolean;

    @Prop({ default: true })
    public underline: boolean;

    @Prop()<commit_msg>Update link icon<commit_after>import { ModulVue } from '../../utils/vue/vue';
import { PluginObject } from 'vue';
import Component from 'vue-class-component';
import { Prop } from 'vue-property-decorator';
import WithRender from './link.html?style=./link.scss';
import { LINK_NAME } from '../component-names';
import IconPlugin from '../icon/icon';
import I18nPlugin from '../i18n/i18n';

export enum MLinkMode {
    RouterLink = 'router-link',
    Link = 'link',
    Button = 'button'
}

export enum MLinkIconPosition {
    Left = 'left',
    Right = 'right'
}

const ICON_NAME_DEFAULT: string = 'chevron';

@WithRender
@Component
export class MLink extends ModulVue {
    @Prop({ default: '/' })
    public url: string;

    @Prop({
        default: MLinkMode.RouterLink,
        validator: value =>
            value == MLinkMode.RouterLink ||
            value == MLinkMode.Link ||
            value == MLinkMode.Button
    })
    public mode: MLinkMode;

    @Prop()
    public disabled: boolean;

    @Prop()
    public unvisited: boolean;

    @Prop({ default: true })
    public underline: boolean;

    @Prop()
{'fraction_non_alphanumeric': 0.1397945511389013, 'fraction_numerical': 0.005359535506922733, 'mean_word_length': 2.888888888888889, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '746358', 'n_tokens_mistral': 705, 'n_tokens_neox': 685, 'n_words': 187}