<commit_before><div :class="$style.root" :readonly="readonly" :disabled="disabled"
    :clearable="clearable && !!currentText" :multiple="multiple" :multiple-tags="multiple && this.multipleAppearance === 'tags'"
    :tabindex="readonly || disabled ? '' : 0"
    @click="focus"
    @keydown.up.prevent="$refs.popper.currentOpened ? shift(-1) : open()"
    @keydown.down.prevent="$refs.popper.currentOpened ? shift(+1) : open()"
    @keydown.enter.stop="onEnter"
    @keydown.esc.stop="close(), filterText = ''">
    <span :class="$style.baseline">b</span><!-- 用于基线对齐 -->
    <span v-show="!filterText && (multiple ? !selectedVMs.length : !selectedVM)" :class="$style.placeholder">{{ placeholder }}</span>
    <div :class="$style.text" v-ellipsis-title :tags-overflow="tagsOverflow">
        <u-render v-if="!multiple && !filterable" :vnode="selectedVM && selectedVM.$slots.default"></u-render>
        <span v-else-if="this.multipleAppearance === 'text'">{{ currentText }}</span>
        <template v-else-if="this.multipleAppearance === 'tags'">
            <template v-if="tagsOverflow === 'hidden' || tagsOverflow === 'visible'">
                <span :class="$style.tag" v-for="itemVM in selectedVMs" :key="itemVM.value">
                    <span :class="$style['tag-text']">{{ itemVM.currentText }}</span>
                    <span :class="$style['tag-remove']" @click.stop="select(itemVM, false)"></span>
                </span>
            </template>
            <template v-else-if="tagsOverflow === 'collapse'">
                <span :class="$style.tag" v-if="selectedVMs[0]" :key="selectedVMs[0].value">
                    <span :class="$style['tag-text']">{{ selectedVMs[0].currentText }}</span>
                    <span :class="$style['tag-remove']" @click.stop="select(selectedVMs[0], false)"></span>
                </span>
                <span :class="$style.tag" v-if="selectedVMs.length > 1">
                    <span :class="$style['tag-text']">+{{ selectedVMs.length - 1 }}</span>
                </span>
            </template>
        </template>
        <u-input v-if="filterable" :class="$style.input" ref="input" :readonly="readonly" :disabled="disabled"
            :placeholder="multiple && selectedVMs.length ? '' : placeholder" :filterable="filterable" :multiple-tags="multiple && this.multipleAppearance === 'tags'"
            :value="filterable ? filterText : currentText" @input="onInput" @focus="onFocus" @blur="onBlur"
            @keydown.enter.stop="onInputEnter" @keydown.delete.stop="onInputDelete"
            :style="{ width: multiple && (inputWidth + 'px') }">
        </u-input>
    </div>
    <span v-if="clearable && !!currentText" :class="$style.clearable" @click="clear"></span>
    <m-popper :class="$style.popper" ref="popper" append-to="reference" :disabled="readonly || disabled"
        @update:opened="$emit('update:opened', $event, this)"
        @before-open="$emit('before-open', $event, this)"
        @before-close="$emit('before-close', $event, this)"
        @open="onOpen"<commit_msg>:bug: Rename <u-render> -> <f-render><commit_after><div :class="$style.root" :readonly="readonly" :disabled="disabled"
    :clearable="clearable && !!currentText" :multiple="multiple" :multiple-tags="multiple && this.multipleAppearance === 'tags'"
    :tabindex="readonly || disabled ? '' : 0"
    @click="focus"
    @keydown.up.prevent="$refs.popper.currentOpened ? shift(-1) : open()"
    @keydown.down.prevent="$refs.popper.currentOpened ? shift(+1) : open()"
    @keydown.enter.stop="onEnter"
    @keydown.esc.stop="close(), filterText = ''">
    <span :class="$style.baseline">b</span><!-- 用于基线对齐 -->
    <span v-show="!filterText && (multiple ? !selectedVMs.length : !selectedVM)" :class="$style.placeholder">{{ placeholder }}</span>
    <div :class="$style.text" v-ellipsis-title :tags-overflow="tagsOverflow">
        <f-render v-if="!multiple && !filterable" :vnode="selectedVM && selectedVM.$slots.default"></f-render>
        <span v-else-if="this.multipleAppearance === 'text'">{{ currentText }}</span>
        <template v-else-if="this.multipleAppearance === 'tags'">
            <template v-if="tagsOverflow === 'hidden' || tagsOverflow === 'visible'">
                <span :class="$style.tag" v-for="itemVM in selectedVMs" :key="itemVM.value">
                    <span :class="$style['tag-text']">{{ itemVM.currentText }}</span>
                    <span :class="$style['tag-remove']" @click.stop="select(itemVM, false)"></span>
                </span>
            </template>
            <template v-else-if="tagsOverflow === 'collapse'">
                <span :class="$style.tag" v-if="selectedVMs[0]" :key="selectedVMs[0].value">
                    <span :class="$style['tag-text']">{{ selectedVMs[0].currentText }}</span>
                    <span :class="$style['tag-remove']" @click.stop="select(selectedVMs[0], false)"></span>
                </span>
                <span :class="$style.tag" v-if="selectedVMs.length > 1">
                    <span :class="$style['tag-text']">+{{ selectedVMs.length - 1 }}</span>
                </span>
            </template>
        </template>
        <u-input v-if="filterable" :class="$style.input" ref="input" :readonly="readonly" :disabled="disabled"
            :placeholder="multiple && selectedVMs.length ? '' : placeholder" :filterable="filterable" :multiple-tags="multiple && this.multipleAppearance === 'tags'"
            :value="filterable ? filterText : currentText" @input="onInput" @focus="onFocus" @blur="onBlur"
            @keydown.enter.stop="onInputEnter" @keydown.delete.stop="onInputDelete"
            :style="{ width: multiple && (inputWidth + 'px') }">
        </u-input>
    </div>
    <span v-if="clearable && !!currentText" :class="$style.clearable" @click="clear"></span>
    <m-popper :class="$style.popper" ref="popper" append-to="reference" :disabled="readonly || disabled"
        @update:opened="$emit('update:opened', $event, this)"
        @before-open="$emit('before-open', $event, this)"
        @before-close="$emit('before-close', $event, this)"
        @open="onOpen"
{'fraction_non_alphanumeric': 0.20816993464052289, 'fraction_numerical': 0.0029411764705882353, 'mean_word_length': 3.274441340782123, 'pattern_counts': {'":': 0, '<': 83, '<?xml version=': 0, '>': 84, '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': '5380948', 'n_tokens_mistral': 1900, 'n_tokens_neox': 1843, 'n_words': 300}