@vuesax-alpha/nightly
Version:
A Component Library for Vue 3
1 lines • 1.64 kB
Source Map (JSON)
{"version":3,"file":"navbar-group2.mjs","sources":["../../../../../../packages/components/navbar/src/navbar-group.vue"],"sourcesContent":["<template>\n <div :class=\"[ns.b(), ns.is('active', isGroupActive)]\">\n <div :class=\"ns.e('text')\">\n <slot />\n </div>\n <div :class=\"ns.e('items')\">\n <slot name=\"items\" />\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, inject, provide, reactive } from 'vue'\nimport { useNamespace } from '@vuesax-alpha/hooks'\nimport {\n navbarContextKey,\n navbarGroupRegisterContextKey,\n} from '@vuesax-alpha/tokens/navbar'\n\ndefineOptions({\n name: 'VsNavbarGroup',\n})\n\nconst { modelValue } = inject(navbarContextKey)!\n\nconst ns = useNamespace('navbar-group')\n\nconst children = reactive<Set<string>>(new Set())\n\nconst isGroupActive = computed(() => children.has(`${modelValue.value}`))\n\nprovide(navbarGroupRegisterContextKey, (id: string) => {\n children.add(id)\n\n return {\n unregister: () => children.delete(id),\n }\n})\n</script>\n"],"names":[],"mappings":";;;;;;mCAmBc,CAAA;AAAA,EACZ,IAAM,EAAA,eAAA;AACR,CAAA,CAAA,CAAA;;;;AAEA,IAAA,MAAM,EAAE,UAAA,EAAe,GAAA,MAAA,CAAO,gBAAgB,CAAA,CAAA;AAExC,IAAA,MAAA,EAAA,GAAK,aAAa,cAAc,CAAA,CAAA;AAEtC,IAAA,MAAM,QAAW,GAAA,QAAA,iBAA0B,IAAA,GAAA,EAAK,CAAA,CAAA;AAE1C,IAAA,MAAA,aAAA,GAAgB,SAAS,MAAM,QAAA,CAAS,IAAI,CAAG,EAAA,UAAA,CAAW,OAAO,CAAC,CAAA,CAAA;AAEhE,IAAA,OAAA,CAAA,6BAAA,EAA+B,CAAC,EAAe,KAAA;AACrD,MAAA,QAAA,CAAS,IAAI,EAAE,CAAA,CAAA;AAER,MAAA,OAAA;AAAA,QACL,UAAY,EAAA,MAAM,QAAS,CAAA,MAAA,CAAO,EAAE,CAAA;AAAA,OACtC,CAAA;AAAA,KACD,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}