|
1 | 1 | <script setup> |
2 | | -import { TabsContent, TabsList, TabsRoot, TabsTrigger } from 'reka-ui' |
| 2 | +import { Tabs } from 'reka-ui/namespaced' |
| 3 | +import NqPlayground from './NqPlayground.vue' |
3 | 4 | </script> |
4 | 5 |
|
5 | 6 | <template> |
6 | | - <TabsRoot w-full default-value="preview" f-my-lg class="nq-raw"> |
7 | | - <TabsList relative shrink-0 f-mx-lg flex="~ items-center justify-start gap-x-12" w-max aria-label="See the markdown code and rendered preview"> |
8 | | - <!-- <TabsIndicator absolute px-8 left-0 h-3 bottom-2 w="$reka-tabs-indicator-size" bg-blue |
9 | | - translate-x="$reka-tabs-indicator-position" translate-y-1 transition="[width,transform]" |
10 | | - duration-300 /> --> |
11 | | - <TabsTrigger value="code" aria-label="Code Tab" bg-transparent transition-all data-active:font-semibold nq-pill-tertiary data-active:nq-pill-blue translate-y-0 shadow-none ring="1.5 neutral-300 data-active:0"> |
| 7 | + <Tabs.Root w-full default-value="preview" f-my-lg class="nq-raw component-preview"> |
| 8 | + <Tabs.List |
| 9 | + relative shrink-0 flex="~ items-center justify-start" w-max |
| 10 | + aria-label="See the markdown code and rendered preview" bg-neutral-400 rounded-full outline-blue |
| 11 | + > |
| 12 | + <Tabs.Indicator |
| 13 | + w="$reka-tabs-indicator-size" translate-x="$reka-tabs-indicator-position" absolute rounded-full |
| 14 | + transition="[width,transform]" bg-neutral-0 inset-y-2 duration-300 |
| 15 | + /> |
| 16 | + <Tabs.Trigger |
| 17 | + value="code" aria-label="Code Tab" z-1 font-semibold ml-2 f-px-2xs py-2 outline="blue offset-1" |
| 18 | + rounded-full |
| 19 | + > |
12 | 20 | Code |
13 | | - </TabsTrigger> |
14 | | - <TabsTrigger value="preview" aria-label="Preview Tab" bg-transparent transition-all data-active:font-semibold nq-pill-tertiary data-active:nq-pill-blue translate-y-0 shadow-none ring="1.5 neutral-300 data-active:0"> |
| 21 | + </Tabs.Trigger> |
| 22 | + <Tabs.Trigger |
| 23 | + value="preview" aria-label="Preview Tab" z-1 font-semibold mr-2 f-px-2xs py-2 |
| 24 | + outline="blue offset-1" rounded-full |
| 25 | + > |
15 | 26 | Preview |
16 | | - </TabsTrigger> |
17 | | - </TabsList> |
18 | | - <div p-16 f-px-sm> |
19 | | - <TabsContent value="code" grow outline-none f-text-sm> |
| 27 | + </Tabs.Trigger> |
| 28 | + </Tabs.List> |
| 29 | + <div> |
| 30 | + <Tabs.Content value="code" grow outline-none> |
20 | 31 | <slot name="code" /> |
21 | | - </TabsContent> |
22 | | - <TabsContent value="preview" grow outline-none> |
23 | | - <slot name="default" /> |
24 | | - </TabsContent> |
| 32 | + </Tabs.Content> |
| 33 | + <Tabs.Content value="preview" grow outline-none my-1lh> |
| 34 | + <NqPlayground> |
| 35 | + <slot name="default" /> |
| 36 | + </NqPlayground> |
| 37 | + </Tabs.Content> |
25 | 38 | </div> |
26 | | - </TabsRoot> |
| 39 | + </Tabs.Root> |
27 | 40 | </template> |
| 41 | + |
| 42 | +<style> |
| 43 | +.component-preview [class*='language-'] pre { |
| 44 | + font-size: 1em; |
| 45 | +} |
| 46 | +</style> |
0 commit comments