import Vue from 'vue';
import index from './node_modules/.pnpm/registry.npmjs.org_vue-fragment@1.6.0_vue@2.7.14/node_modules/vue-fragment/dist/vue-fragment.esm.js';
import * as components from './components.js';
export { Ad, AdCustom, AnimationVideo, AnimationView, ArCamera, Audio, AwemeData, Block, Button, Camera, Canvas, Checkbox, CheckboxGroup, CommentDetail, CommentList, ContactButton, CoverImage, CoverView, CustomWrapper, Editor, FollowSwan, Form, FunctionalPageNavigator, Icon, Image, InlinePaymentPanel, Input, KeyboardAccessory, Label, Lifestyle, Like, LivePlayer, LivePusher, Login, Lottie, Map, MatchMedia, MovableArea, MovableView, NativeSlot, NavigationBar, Navigator, OfficialAccount, OpenData, PageContainer, PageMeta, Picker, PickerGroup, PickerView, PickerViewColumn, Progress, PullToRefresh, Radio, RadioGroup, RichText, RootPortal, RtcRoom, RtcRoomItem, ScrollView, ShareElement, Slider, Slot, Swiper, SwiperItem, Switch, TabItem, Tabbar, Tabs, Text, Textarea, Video, VideoControl, VideoDanmu, View, VoipRoom, WebView } from './components.js';

function initVue2Components() {
    var _a;
    const ignoredElements = [/^taro-/, 'root', 'block'];
    if (!((_a = Vue.config.ignoredElements) === null || _a === void 0 ? void 0 : _a.includes(ignoredElements[0]))) {
        Vue.config.ignoredElements = [...Vue.config.ignoredElements, ...ignoredElements];
    }
    Vue.use(index.Plugin);
    Object.entries(components).forEach(params => {
        const [name, definition] = params;
        if (definition) {
            const tagName = 'taro' + name.replace(new RegExp('([A-Z])', 'g'), '-$1').toLowerCase();
            Vue.component(tagName, definition);
        }
    });
}

export { initVue2Components };
//# sourceMappingURL=index.js.map
