UNPKG

@bitrix24/b24ui-nuxt

Version:

Bitrix24 UI-Kit for developing web applications REST API for NUXT & VUE

67 lines (64 loc) 2.3 kB
import { defu } from 'defu'; import { defineNuxtModule, createResolver, addVitePlugin, addPlugin, addComponentsDir, addImportsDir, hasNuxtModule, installModule } from '@nuxt/kit'; import { d as defaultOptions, v as version, n as name, a as getDefaultUiConfig, b as addTemplates } from './shared/b24ui-nuxt.COkgCO-x.mjs'; import 'node:url'; import 'scule'; import 'knitwork'; const module = defineNuxtModule({ meta: { name, version, docs: "https://bitrix24.github.io/b24ui/guide/installation-nuxt-app.html", configKey: "b24ui", compatibility: { nuxt: ">=3.16.0" } }, defaults: defaultOptions, async setup(options, nuxt) { const { resolve } = createResolver(import.meta.url); nuxt.options.b24ui = options; nuxt.options.alias["#b24ui"] = resolve("./runtime"); nuxt.options.appConfig.b24ui = defu(nuxt.options.appConfig.b24ui || {}, getDefaultUiConfig()); nuxt.options.app.rootAttrs = nuxt.options.app.rootAttrs || {}; nuxt.options.app.rootAttrs.class = [nuxt.options.app.rootAttrs.class, "isolate"].filter(Boolean).join(" "); if (nuxt.options.builder === "@nuxt/vite-builder") { const plugin = await import('@tailwindcss/vite').then((r) => r.default); addVitePlugin(plugin()); } else { nuxt.options.postcss.plugins["@tailwindcss/postcss"] = {}; } async function registerModule(name2, key, options2) { if (!hasNuxtModule(name2)) { await installModule(name2, defu(nuxt.options[key], options2)); } else { nuxt.options[key] = defu(nuxt.options[key], options2); } } if (options.colorMode) { await registerModule( "@nuxtjs/color-mode", "colorMode", { classSuffix: "", disableTransition: true } ); } addPlugin({ src: resolve("./runtime/plugins/colors") }); addPlugin({ src: resolve("./runtime/plugins/ui-version") }); addComponentsDir({ path: resolve("./runtime/components"), prefix: "B24", pathPrefix: false }); addComponentsDir({ path: resolve("./runtime/prose"), prefix: "Prose", pathPrefix: false }); addImportsDir(resolve("./runtime/composables")); addTemplates(options, nuxt, resolve); } }); export { module as default };