daisy-ui-kit 0.4.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +80 -0
- package/components/-utils.ts +41 -0
- package/components/.DS_Store +0 -0
- package/components/Alert.vue +27 -0
- package/components/Artboard.vue +33 -0
- package/components/Avatar.vue +85 -0
- package/components/AvatarGroup.vue +19 -0
- package/components/Badge.vue +45 -0
- package/components/BottomNav.vue +27 -0
- package/components/Breadcrumbs.vue +7 -0
- package/components/Button.config.ts +26 -0
- package/components/Button.vue +112 -0
- package/components/ButtonGroup.vue +5 -0
- package/components/Card.vue +31 -0
- package/components/CardActions.vue +16 -0
- package/components/CardBody.vue +16 -0
- package/components/CardTitle.vue +16 -0
- package/components/Carousel.vue +26 -0
- package/components/CarouselItem.vue +5 -0
- package/components/Checkbox.vue +47 -0
- package/components/Code.vue +91 -0
- package/components/CodePreview.vue +28 -0
- package/components/CodeWrapper.vue +10 -0
- package/components/Collapse.vue +33 -0
- package/components/CollapseContent.vue +5 -0
- package/components/CollapseTitle.vue +5 -0
- package/components/Countdown.vue +16 -0
- package/components/CountdownTimers.vue +66 -0
- package/components/Counter.vue +15 -0
- package/components/Crumb.vue +5 -0
- package/components/DarkToggle.vue +11 -0
- package/components/DemoElement.vue +32 -0
- package/components/DemoExample.vue +23 -0
- package/components/Divider.vue +25 -0
- package/components/Drawer.vue +19 -0
- package/components/DrawerLayout.vue +35 -0
- package/components/DrawerLayoutContent.vue +11 -0
- package/components/Dropdown.vue +30 -0
- package/components/DropdownContent.vue +3 -0
- package/components/Flex.vue +146 -0
- package/components/FlexItem.vue +146 -0
- package/components/Footer.vue +25 -0
- package/components/FooterTitle.vue +17 -0
- package/components/FormControl.vue +5 -0
- package/components/Hero.vue +17 -0
- package/components/HeroContent.vue +17 -0
- package/components/HeroOverlay.vue +5 -0
- package/components/Home/AlternatingFeatureSections.vue +217 -0
- package/components/Home/CTA.vue +27 -0
- package/components/Home/Footer.vue +210 -0
- package/components/Home/GradientFeatureSections.vue +98 -0
- package/components/Home/Header.vue +174 -0
- package/components/Home/Hero.vue +52 -0
- package/components/Home/LogoCloud.vue +49 -0
- package/components/Home/StatsSection.vue +51 -0
- package/components/Home/Testimonial.vue +23 -0
- package/components/Indicator.vue +16 -0
- package/components/IndicatorItem.vue +37 -0
- package/components/InputGroup.vue +33 -0
- package/components/Kbd.vue +26 -0
- package/components/Label.vue +17 -0
- package/components/LabelText.vue +17 -0
- package/components/LabelTextAlt.vue +17 -0
- package/components/Link.vue +32 -0
- package/components/Logo.vue +8 -0
- package/components/Mask.config.ts +77 -0
- package/components/Mask.vue +15 -0
- package/components/Menu.vue +26 -0
- package/components/MenuItem.vue +17 -0
- package/components/MenuTitle.vue +14 -0
- package/components/MobileSidebar.vue +92 -0
- package/components/MockupCode.vue +4 -0
- package/components/Modal.vue +16 -0
- package/components/ModalAction.vue +5 -0
- package/components/ModalBox.vue +5 -0
- package/components/ModalWrapper.vue +32 -0
- package/components/NavButton.vue +22 -0
- package/components/Navbar.vue +17 -0
- package/components/NavbarCenter.vue +16 -0
- package/components/NavbarEnd.vue +16 -0
- package/components/NavbarStart.vue +16 -0
- package/components/Phone.vue +8 -0
- package/components/Progress.vue +44 -0
- package/components/Prose.vue +36 -0
- package/components/RadialProgress.vue +42 -0
- package/components/Radio.vue +63 -0
- package/components/RadioGroup.vue +41 -0
- package/components/Range.vue +49 -0
- package/components/RangeMeasure.vue +71 -0
- package/components/RangeMeasureTick.vue +62 -0
- package/components/Rating.vue +152 -0
- package/components/Select.vue +104 -0
- package/components/Sidebar.vue +89 -0
- package/components/SidebarMenuSection.vue +35 -0
- package/components/SigninForm.vue +47 -0
- package/components/Stack.vue +16 -0
- package/components/Stat.vue +5 -0
- package/components/StatActions.vue +5 -0
- package/components/StatDesc.vue +5 -0
- package/components/StatFigure.vue +5 -0
- package/components/StatTitle.vue +5 -0
- package/components/StatValue.vue +5 -0
- package/components/Stats.vue +5 -0
- package/components/Step.vue +36 -0
- package/components/Steps.vue +22 -0
- package/components/Swap.vue +60 -0
- package/components/Tab.vue +49 -0
- package/components/TabContent.vue +28 -0
- package/components/Tabs.vue +71 -0
- package/components/TabsManager.vue +37 -0
- package/components/Text.vue +179 -0
- package/components/TextArea.vue +53 -0
- package/components/TextInput.vue +64 -0
- package/components/Toast.vue +33 -0
- package/components/Toggle.vue +48 -0
- package/components/Tooltip.vue +49 -0
- package/components/UserMenu.vue +62 -0
- package/components/Window.vue +5 -0
- package/components/fixtures.ts +62 -0
- package/components/theme/Builder.vue +284 -0
- package/components/theme/Output.vue +70 -0
- package/components/theme/Picker.vue +39 -0
- package/components/theme/Preview.vue +1684 -0
- package/components/theme/Provider.vue +43 -0
- package/components/theme/Snooper.vue +41 -0
- package/components/theme/Swatch.vue +47 -0
- package/components/theme/custom-themes.ts +34 -0
- package/components/theme/theme-utils.ts +164 -0
- package/components/types.ts +7 -0
- package/index.ts +96 -0
- package/package.json +55 -0
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
const footerNavigation = {
|
|
3
|
+
solutions: [
|
|
4
|
+
{ name: 'Marketing', href: '#' },
|
|
5
|
+
{ name: 'Analytics', href: '#' },
|
|
6
|
+
{ name: 'Commerce', href: '#' },
|
|
7
|
+
{ name: 'Insights', href: '#' },
|
|
8
|
+
],
|
|
9
|
+
support: [
|
|
10
|
+
{ name: 'Pricing', href: '#' },
|
|
11
|
+
{ name: 'Documentation', href: '#' },
|
|
12
|
+
{ name: 'Guides', href: '#' },
|
|
13
|
+
{ name: 'API Status', href: '#' },
|
|
14
|
+
],
|
|
15
|
+
company: [
|
|
16
|
+
{ name: 'About', href: '#' },
|
|
17
|
+
{ name: 'Blog', href: '#' },
|
|
18
|
+
{ name: 'Jobs', href: '#' },
|
|
19
|
+
{ name: 'Press', href: '#' },
|
|
20
|
+
{ name: 'Partners', href: '#' },
|
|
21
|
+
],
|
|
22
|
+
legal: [
|
|
23
|
+
{ name: 'Claim', href: '#' },
|
|
24
|
+
{ name: 'Privacy', href: '#' },
|
|
25
|
+
{ name: 'Terms', href: '#' },
|
|
26
|
+
],
|
|
27
|
+
social: [
|
|
28
|
+
{
|
|
29
|
+
name: 'Facebook',
|
|
30
|
+
href: '#',
|
|
31
|
+
icon: defineComponent({
|
|
32
|
+
render: () =>
|
|
33
|
+
h('svg', { fill: 'currentColor', viewBox: '0 0 24 24' }, [
|
|
34
|
+
h('path', {
|
|
35
|
+
'fill-rule': 'evenodd',
|
|
36
|
+
'd': 'M22 12c0-5.523-4.477-10-10-10S2 6.477 2 12c0 4.991 3.657 9.128 8.438 9.878v-6.987h-2.54V12h2.54V9.797c0-2.506 1.492-3.89 3.777-3.89 1.094 0 2.238.195 2.238.195v2.46h-1.26c-1.243 0-1.63.771-1.63 1.562V12h2.773l-.443 2.89h-2.33v6.988C18.343 21.128 22 16.991 22 12z',
|
|
37
|
+
'clip-rule': 'evenodd',
|
|
38
|
+
}),
|
|
39
|
+
]),
|
|
40
|
+
}),
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'Instagram',
|
|
44
|
+
href: '#',
|
|
45
|
+
icon: defineComponent({
|
|
46
|
+
render: () =>
|
|
47
|
+
h('svg', { fill: 'currentColor', viewBox: '0 0 24 24' }, [
|
|
48
|
+
h('path', {
|
|
49
|
+
'fill-rule': 'evenodd',
|
|
50
|
+
'd': 'M12.315 2c2.43 0 2.784.013 3.808.06 1.064.049 1.791.218 2.427.465a4.902 4.902 0 011.772 1.153 4.902 4.902 0 011.153 1.772c.247.636.416 1.363.465 2.427.048 1.067.06 1.407.06 4.123v.08c0 2.643-.012 2.987-.06 4.043-.049 1.064-.218 1.791-.465 2.427a4.902 4.902 0 01-1.153 1.772 4.902 4.902 0 01-1.772 1.153c-.636.247-1.363.416-2.427.465-1.067.048-1.407.06-4.123.06h-.08c-2.643 0-2.987-.012-4.043-.06-1.064-.049-1.791-.218-2.427-.465a4.902 4.902 0 01-1.772-1.153 4.902 4.902 0 01-1.153-1.772c-.247-.636-.416-1.363-.465-2.427-.047-1.024-.06-1.379-.06-3.808v-.63c0-2.43.013-2.784.06-3.808.049-1.064.218-1.791.465-2.427a4.902 4.902 0 011.153-1.772A4.902 4.902 0 015.45 2.525c.636-.247 1.363-.416 2.427-.465C8.901 2.013 9.256 2 11.685 2h.63zm-.081 1.802h-.468c-2.456 0-2.784.011-3.807.058-.975.045-1.504.207-1.857.344-.467.182-.8.398-1.15.748-.35.35-.566.683-.748 1.15-.137.353-.3.882-.344 1.857-.047 1.023-.058 1.351-.058 3.807v.468c0 2.456.011 2.784.058 3.807.045.975.207 1.504.344 1.857.182.466.399.8.748 1.15.35.35.683.566 1.15.748.353.137.882.3 1.857.344 1.054.048 1.37.058 4.041.058h.08c2.597 0 2.917-.01 3.96-.058.976-.045 1.505-.207 1.858-.344.466-.182.8-.398 1.15-.748.35-.35.566-.683.748-1.15.137-.353.3-.882.344-1.857.048-1.055.058-1.37.058-4.041v-.08c0-2.597-.01-2.917-.058-3.96-.045-.976-.207-1.505-.344-1.858a3.097 3.097 0 00-.748-1.15 3.098 3.098 0 00-1.15-.748c-.353-.137-.882-.3-1.857-.344-1.023-.047-1.351-.058-3.807-.058zM12 6.865a5.135 5.135 0 110 10.27 5.135 5.135 0 010-10.27zm0 1.802a3.333 3.333 0 100 6.666 3.333 3.333 0 000-6.666zm5.338-3.205a1.2 1.2 0 110 2.4 1.2 1.2 0 010-2.4z',
|
|
51
|
+
'clip-rule': 'evenodd',
|
|
52
|
+
}),
|
|
53
|
+
]),
|
|
54
|
+
}),
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
name: 'Twitter',
|
|
58
|
+
href: '#',
|
|
59
|
+
icon: defineComponent({
|
|
60
|
+
render: () =>
|
|
61
|
+
h('svg', { fill: 'currentColor', viewBox: '0 0 24 24' }, [
|
|
62
|
+
h('path', {
|
|
63
|
+
d: 'M8.29 20.251c7.547 0 11.675-6.253 11.675-11.675 0-.178 0-.355-.012-.53A8.348 8.348 0 0022 5.92a8.19 8.19 0 01-2.357.646 4.118 4.118 0 001.804-2.27 8.224 8.224 0 01-2.605.996 4.107 4.107 0 00-6.993 3.743 11.65 11.65 0 01-8.457-4.287 4.106 4.106 0 001.27 5.477A4.072 4.072 0 012.8 9.713v.052a4.105 4.105 0 003.292 4.022 4.095 4.095 0 01-1.853.07 4.108 4.108 0 003.834 2.85A8.233 8.233 0 012 18.407a11.616 11.616 0 006.29 1.84',
|
|
64
|
+
}),
|
|
65
|
+
]),
|
|
66
|
+
}),
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
name: 'GitHub',
|
|
70
|
+
href: '#',
|
|
71
|
+
icon: defineComponent({
|
|
72
|
+
render: () =>
|
|
73
|
+
h('svg', { fill: 'currentColor', viewBox: '0 0 24 24' }, [
|
|
74
|
+
h('path', {
|
|
75
|
+
'fill-rule': 'evenodd',
|
|
76
|
+
'd': 'M12 2C6.477 2 2 6.484 2 12.017c0 4.425 2.865 8.18 6.839 9.504.5.092.682-.217.682-.483 0-.237-.008-.868-.013-1.703-2.782.605-3.369-1.343-3.369-1.343-.454-1.158-1.11-1.466-1.11-1.466-.908-.62.069-.608.069-.608 1.003.07 1.531 1.032 1.531 1.032.892 1.53 2.341 1.088 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.113-4.555-4.951 0-1.093.39-1.988 1.029-2.688-.103-.253-.446-1.272.098-2.65 0 0 .84-.27 2.75 1.026A9.564 9.564 0 0112 6.844c.85.004 1.705.115 2.504.337 1.909-1.296 2.747-1.027 2.747-1.027.546 1.379.202 2.398.1 2.651.64.7 1.028 1.595 1.028 2.688 0 3.848-2.339 4.695-4.566 4.943.359.309.678.92.678 1.855 0 1.338-.012 2.419-.012 2.747 0 .268.18.58.688.482A10.019 10.019 0 0022 12.017C22 6.484 17.522 2 12 2z',
|
|
77
|
+
'clip-rule': 'evenodd',
|
|
78
|
+
}),
|
|
79
|
+
]),
|
|
80
|
+
}),
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
name: 'Dribbble',
|
|
84
|
+
href: '#',
|
|
85
|
+
icon: defineComponent({
|
|
86
|
+
render: () =>
|
|
87
|
+
h('svg', { fill: 'currentColor', viewBox: '0 0 24 24' }, [
|
|
88
|
+
h('path', {
|
|
89
|
+
'fill-rule': 'evenodd',
|
|
90
|
+
'd': 'M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10c5.51 0 10-4.48 10-10S17.51 2 12 2zm6.605 4.61a8.502 8.502 0 011.93 5.314c-.281-.054-3.101-.629-5.943-.271-.065-.141-.12-.293-.184-.445a25.416 25.416 0 00-.564-1.236c3.145-1.28 4.577-3.124 4.761-3.362zM12 3.475c2.17 0 4.154.813 5.662 2.148-.152.216-1.443 1.941-4.48 3.08-1.399-2.57-2.95-4.675-3.189-5A8.687 8.687 0 0112 3.475zm-3.633.803a53.896 53.896 0 013.167 4.935c-3.992 1.063-7.517 1.04-7.896 1.04a8.581 8.581 0 014.729-5.975zM3.453 12.01v-.26c.37.01 4.512.065 8.775-1.215.25.477.477.965.694 1.453-.109.033-.228.065-.336.098-4.404 1.42-6.747 5.303-6.942 5.629a8.522 8.522 0 01-2.19-5.705zM12 20.547a8.482 8.482 0 01-5.239-1.8c.152-.315 1.888-3.656 6.703-5.337.022-.01.033-.01.054-.022a35.318 35.318 0 011.823 6.475 8.4 8.4 0 01-3.341.684zm4.761-1.465c-.086-.52-.542-3.015-1.659-6.084 2.679-.423 5.022.271 5.314.369a8.468 8.468 0 01-3.655 5.715z',
|
|
91
|
+
'clip-rule': 'evenodd',
|
|
92
|
+
}),
|
|
93
|
+
]),
|
|
94
|
+
}),
|
|
95
|
+
},
|
|
96
|
+
],
|
|
97
|
+
}
|
|
98
|
+
</script>
|
|
99
|
+
|
|
100
|
+
<template>
|
|
101
|
+
<footer class="bg-gray-50" aria-labelledby="footer-heading">
|
|
102
|
+
<h2 id="footer-heading" class="sr-only">
|
|
103
|
+
Footer
|
|
104
|
+
</h2>
|
|
105
|
+
<div class="px-4 pt-16 pb-8 mx-auto max-w-7xl sm:px-6 lg:pt-24 lg:px-8">
|
|
106
|
+
<div class="xl:grid xl:grid-cols-3 xl:gap-8">
|
|
107
|
+
<div class="grid grid-cols-2 gap-8 xl:col-span-2">
|
|
108
|
+
<div class="md:grid md:grid-cols-2 md:gap-8">
|
|
109
|
+
<div>
|
|
110
|
+
<h3 class="text-sm font-semibold tracking-wider text-gray-400 uppercase">
|
|
111
|
+
Solutions
|
|
112
|
+
</h3>
|
|
113
|
+
<ul role="list" class="mt-4 space-y-4">
|
|
114
|
+
<li v-for="item in footerNavigation.solutions" :key="item.name">
|
|
115
|
+
<a :href="item.href" class="text-base text-gray-500 hover:text-gray-900">{{
|
|
116
|
+
item.name
|
|
117
|
+
}}</a>
|
|
118
|
+
</li>
|
|
119
|
+
</ul>
|
|
120
|
+
</div>
|
|
121
|
+
<div class="mt-12 md:mt-0">
|
|
122
|
+
<h3 class="text-sm font-semibold tracking-wider text-gray-400 uppercase">
|
|
123
|
+
Support
|
|
124
|
+
</h3>
|
|
125
|
+
<ul role="list" class="mt-4 space-y-4">
|
|
126
|
+
<li v-for="item in footerNavigation.support" :key="item.name">
|
|
127
|
+
<a :href="item.href" class="text-base text-gray-500 hover:text-gray-900">{{
|
|
128
|
+
item.name
|
|
129
|
+
}}</a>
|
|
130
|
+
</li>
|
|
131
|
+
</ul>
|
|
132
|
+
</div>
|
|
133
|
+
</div>
|
|
134
|
+
<div class="md:grid md:grid-cols-2 md:gap-8">
|
|
135
|
+
<div>
|
|
136
|
+
<h3 class="text-sm font-semibold tracking-wider text-gray-400 uppercase">
|
|
137
|
+
Company
|
|
138
|
+
</h3>
|
|
139
|
+
<ul role="list" class="mt-4 space-y-4">
|
|
140
|
+
<li v-for="item in footerNavigation.company" :key="item.name">
|
|
141
|
+
<a :href="item.href" class="text-base text-gray-500 hover:text-gray-900">{{
|
|
142
|
+
item.name
|
|
143
|
+
}}</a>
|
|
144
|
+
</li>
|
|
145
|
+
</ul>
|
|
146
|
+
</div>
|
|
147
|
+
<div class="mt-12 md:mt-0">
|
|
148
|
+
<h3 class="text-sm font-semibold tracking-wider text-gray-400 uppercase">
|
|
149
|
+
Legal
|
|
150
|
+
</h3>
|
|
151
|
+
<ul role="list" class="mt-4 space-y-4">
|
|
152
|
+
<li v-for="item in footerNavigation.legal" :key="item.name">
|
|
153
|
+
<a :href="item.href" class="text-base text-gray-500 hover:text-gray-900">{{
|
|
154
|
+
item.name
|
|
155
|
+
}}</a>
|
|
156
|
+
</li>
|
|
157
|
+
</ul>
|
|
158
|
+
</div>
|
|
159
|
+
</div>
|
|
160
|
+
</div>
|
|
161
|
+
<div class="mt-12 xl:mt-0">
|
|
162
|
+
<h3 class="text-sm font-semibold tracking-wider text-gray-400 uppercase">
|
|
163
|
+
Subscribe to our newsletter
|
|
164
|
+
</h3>
|
|
165
|
+
<p class="mt-4 text-base text-gray-500">
|
|
166
|
+
The latest news, articles, and resources, sent to your inbox weekly.
|
|
167
|
+
</p>
|
|
168
|
+
<form class="mt-4 sm:flex sm:max-w-md">
|
|
169
|
+
<label for="email-address" class="sr-only">Email address</label>
|
|
170
|
+
<input
|
|
171
|
+
id="email-address"
|
|
172
|
+
type="email"
|
|
173
|
+
name="email-address"
|
|
174
|
+
autocomplete="email"
|
|
175
|
+
required
|
|
176
|
+
class="w-full min-w-0 px-4 py-2 text-base text-gray-900 placeholder-gray-500 border border-gray-300 rounded-md shadow-sm appearance-none bg-base-100 focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 focus:placeholder-gray-400"
|
|
177
|
+
placeholder="Enter your email"
|
|
178
|
+
>
|
|
179
|
+
<div class="mt-3 rounded-md sm:mt-0 sm:ml-3 sm:flex-shrink-0">
|
|
180
|
+
<button
|
|
181
|
+
type="submit"
|
|
182
|
+
class="flex items-center justify-center w-full px-4 py-3 text-base font-medium text-white border border-transparent rounded-md shadow-sm bg-gradient-to-r from-purple-600 to-indigo-600 bg-origin-border hover:from-purple-700 hover:to-indigo-700"
|
|
183
|
+
>
|
|
184
|
+
Subscribe
|
|
185
|
+
</button>
|
|
186
|
+
</div>
|
|
187
|
+
</form>
|
|
188
|
+
</div>
|
|
189
|
+
</div>
|
|
190
|
+
<div
|
|
191
|
+
class="pt-8 mt-12 border-t border-gray-200 md:flex md:items-center md:justify-between lg:mt-16"
|
|
192
|
+
>
|
|
193
|
+
<div class="flex space-x-6 md:order-2">
|
|
194
|
+
<a
|
|
195
|
+
v-for="item in footerNavigation.social"
|
|
196
|
+
:key="item.name"
|
|
197
|
+
:href="item.href"
|
|
198
|
+
class="text-gray-400 hover:text-gray-500"
|
|
199
|
+
>
|
|
200
|
+
<span class="sr-only">{{ item.name }}</span>
|
|
201
|
+
<component :is="item.icon" class="w-6 h-6" aria-hidden="true" />
|
|
202
|
+
</a>
|
|
203
|
+
</div>
|
|
204
|
+
<p class="mt-8 text-base text-gray-400 md:mt-0 md:order-1">
|
|
205
|
+
Built with ❤️ by Bitovi
|
|
206
|
+
</p>
|
|
207
|
+
</div>
|
|
208
|
+
</div>
|
|
209
|
+
</footer>
|
|
210
|
+
</template>
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
import {
|
|
3
|
+
ArrowUpIcon,
|
|
4
|
+
ChatAltIcon,
|
|
5
|
+
DesktopComputerIcon,
|
|
6
|
+
DocumentReportIcon,
|
|
7
|
+
HeartIcon,
|
|
8
|
+
MoonIcon,
|
|
9
|
+
PencilAltIcon,
|
|
10
|
+
StarIcon,
|
|
11
|
+
} from '@heroicons/vue/outline'
|
|
12
|
+
|
|
13
|
+
const features = [
|
|
14
|
+
{
|
|
15
|
+
name: 'Beyond the Dark Side',
|
|
16
|
+
description:
|
|
17
|
+
'Don\'t clutter your app with "dark:" prefixes. Build Smart with CSS variables.',
|
|
18
|
+
icon: MoonIcon,
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
name: 'Theme Builder',
|
|
22
|
+
description:
|
|
23
|
+
'Fine tune the perfect color palette for your app.',
|
|
24
|
+
icon: DesktopComputerIcon,
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
name: 'Beautiful Inputs',
|
|
28
|
+
description:
|
|
29
|
+
'Create beautiful forms with TextInput, TextArea, Checkbox, Toggle, Radio, Range, Select and more!',
|
|
30
|
+
icon: ArrowUpIcon,
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
name: 'Compose in Markdown',
|
|
34
|
+
description:
|
|
35
|
+
'Ac tincidunt sapien vehicula erat auctor pellentesque rhoncus. Et magna sit morbi lobortis.',
|
|
36
|
+
icon: PencilAltIcon,
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Lay It All Out',
|
|
40
|
+
description:
|
|
41
|
+
'Use the ButtonGroup, InputGroup, Drawer, Flex, Footer, Stack and more to create the perfect layout.',
|
|
42
|
+
icon: DocumentReportIcon,
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: 'Think Outside the Box',
|
|
46
|
+
description:
|
|
47
|
+
'Build with all kinds of shapes using Mask. Your site can be more than a grid of rectangles.',
|
|
48
|
+
icon: StarIcon,
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
name: 'Interactive Makes Interesting',
|
|
52
|
+
description:
|
|
53
|
+
'Create Dropdowns, Modals, Tooltips, and Tabs, all without writing a single line of JavaScript.',
|
|
54
|
+
icon: ChatAltIcon,
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
name: 'What\s on the Menu',
|
|
58
|
+
description:
|
|
59
|
+
'DaisyUI comes with gorgeous menu styles. They integrate well with routing state.',
|
|
60
|
+
icon: HeartIcon,
|
|
61
|
+
},
|
|
62
|
+
]
|
|
63
|
+
</script>
|
|
64
|
+
|
|
65
|
+
<template>
|
|
66
|
+
<!-- Gradient Feature Section -->
|
|
67
|
+
<div class="duration-300 transition-color bg-gradient-primary-r text-primary-content">
|
|
68
|
+
<div
|
|
69
|
+
class="max-w-4xl px-4 py-16 mx-auto sm:px-6 sm:pt-20 sm:pb-24 lg:max-w-7xl lg:pt-24 lg:px-8"
|
|
70
|
+
>
|
|
71
|
+
<Text block size="3xl" extrabold class="tracking-tight">
|
|
72
|
+
Another Open-Source Gift from Bitovi to You
|
|
73
|
+
</Text>
|
|
74
|
+
<Text block lg class="max-w-3xl mt-4 text-opacity-50">
|
|
75
|
+
Everything in DaisyUI Kit is yours for free. Consider each component to be our gift to you!
|
|
76
|
+
<br>Here are a few of the highlights.
|
|
77
|
+
</Text>
|
|
78
|
+
|
|
79
|
+
<div
|
|
80
|
+
class="grid grid-cols-1 mt-12 gap-x-6 gap-y-12 sm:grid-cols-2 lg:mt-16 lg:grid-cols-4 lg:gap-x-8 lg:gap-y-16"
|
|
81
|
+
>
|
|
82
|
+
<div v-for="feature in features" :key="feature.name">
|
|
83
|
+
<Flex items-center justify-center class="w-12 h-12 rounded-md bg-base-100/20">
|
|
84
|
+
<component :is="feature.icon" class="w-6 h-6" aria-hidden="true" />
|
|
85
|
+
</Flex>
|
|
86
|
+
<div class="mt-6">
|
|
87
|
+
<Text is="h3" block lg medium>
|
|
88
|
+
{{ feature.name }}
|
|
89
|
+
</Text>
|
|
90
|
+
<Text is="p" block base class="mt-2 text-opacity-50">
|
|
91
|
+
{{ feature.description }}
|
|
92
|
+
</Text>
|
|
93
|
+
</div>
|
|
94
|
+
</div>
|
|
95
|
+
</div>
|
|
96
|
+
</div>
|
|
97
|
+
</div>
|
|
98
|
+
</template>
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
import {
|
|
3
|
+
Popover,
|
|
4
|
+
PopoverButton,
|
|
5
|
+
PopoverGroup,
|
|
6
|
+
PopoverPanel,
|
|
7
|
+
} from '@headlessui/vue'
|
|
8
|
+
import {
|
|
9
|
+
AnnotationIcon,
|
|
10
|
+
ChatAlt2Icon,
|
|
11
|
+
InboxIcon,
|
|
12
|
+
MenuIcon,
|
|
13
|
+
QuestionMarkCircleIcon,
|
|
14
|
+
XIcon,
|
|
15
|
+
} from '@heroicons/vue/outline'
|
|
16
|
+
import { ChevronDownIcon } from '@heroicons/vue/solid'
|
|
17
|
+
|
|
18
|
+
const user = useState('user')
|
|
19
|
+
|
|
20
|
+
const links = [
|
|
21
|
+
{
|
|
22
|
+
name: 'Inbox',
|
|
23
|
+
description:
|
|
24
|
+
'Get a better understanding of where your traffic is coming from.',
|
|
25
|
+
href: '#',
|
|
26
|
+
icon: InboxIcon,
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
name: 'Messaging',
|
|
30
|
+
description: 'Speak directly to your customers in a more meaningful way.',
|
|
31
|
+
href: '#',
|
|
32
|
+
icon: AnnotationIcon,
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
name: 'Live Chat',
|
|
36
|
+
description: 'Your customers\' data will be safe and secure.',
|
|
37
|
+
href: '#',
|
|
38
|
+
icon: ChatAlt2Icon,
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
name: 'Knowledge Base',
|
|
42
|
+
description: 'Connect with third-party tools that you\'re already using.',
|
|
43
|
+
href: '#',
|
|
44
|
+
icon: QuestionMarkCircleIcon,
|
|
45
|
+
},
|
|
46
|
+
]
|
|
47
|
+
</script>
|
|
48
|
+
|
|
49
|
+
<template>
|
|
50
|
+
<header class="bg-base-100/95">
|
|
51
|
+
<Popover class="relative ">
|
|
52
|
+
<Flex
|
|
53
|
+
items-center justify-between
|
|
54
|
+
class="px-4 py-6 pb-2 mx-auto max-w-7xl sm:px-6 md:justify-start md:space-x-10 lg:px-8"
|
|
55
|
+
>
|
|
56
|
+
<Flex justify-start class="lg:w-0 lg:flex-1">
|
|
57
|
+
<Logo />
|
|
58
|
+
</Flex>
|
|
59
|
+
<div class="-my-2 -mr-2 md:hidden">
|
|
60
|
+
<PopoverButton
|
|
61
|
+
class="inline-flex items-center justify-center p-2 text-gray-400 rounded-md bg-base-100 hover:text-gray-500 hover:bg-base-200/50 focus:outline-none focus:ring-2 focus:ring-inset focus:ring-indigo-500"
|
|
62
|
+
>
|
|
63
|
+
<span class="sr-only">Open menu</span>
|
|
64
|
+
<MenuIcon class="w-6 h-6" aria-hidden="true" />
|
|
65
|
+
</PopoverButton>
|
|
66
|
+
</div>
|
|
67
|
+
|
|
68
|
+
<PopoverGroup as="nav" class="flex-row items-center hidden space-x-10 md:flex">
|
|
69
|
+
<a href="#" class="text-base font-medium text-gray-500 hover:text-gray-900">Themes</a>
|
|
70
|
+
<NuxtLink to="daisy-alert" class="text-base font-medium text-gray-500 hover:text-gray-900">
|
|
71
|
+
Components
|
|
72
|
+
</NuxtLink>
|
|
73
|
+
<a href="#" class="text-base font-medium text-gray-500 hover:text-gray-900">Contribute</a>
|
|
74
|
+
<ThemePicker />
|
|
75
|
+
</PopoverGroup>
|
|
76
|
+
|
|
77
|
+
<Flex items-center justify-end class="hidden md:flex md:flex-1 lg:w-0">
|
|
78
|
+
<template v-if="user">
|
|
79
|
+
<NuxtLink to="/app/dashboard">
|
|
80
|
+
<Button class="normal-case bg-gradient-to-r from-purple-600 to-indigo-600 bg-origin-border hover:from-purple-700 hover:to-indigo-700">
|
|
81
|
+
Open Dashboard
|
|
82
|
+
</Button>
|
|
83
|
+
</NuxtLink>
|
|
84
|
+
</template>
|
|
85
|
+
|
|
86
|
+
<template v-else>
|
|
87
|
+
<a href="/api/auth/login">
|
|
88
|
+
<Button
|
|
89
|
+
ghost
|
|
90
|
+
class="text-base font-medium text-gray-500 normal-case hover:text-gray-900"
|
|
91
|
+
>
|
|
92
|
+
Sign in
|
|
93
|
+
</Button>
|
|
94
|
+
</a>
|
|
95
|
+
<a href="/api/auth/login" class="ml-4">
|
|
96
|
+
<Button
|
|
97
|
+
class="text-base normal-case border-none shadow-md bg-gradient-primary-r hover:bg-primary-focus zoom-105 text-primary-content"
|
|
98
|
+
>
|
|
99
|
+
Sign up
|
|
100
|
+
</Button>
|
|
101
|
+
</a>
|
|
102
|
+
</template>
|
|
103
|
+
</Flex>
|
|
104
|
+
</Flex>
|
|
105
|
+
|
|
106
|
+
<transition
|
|
107
|
+
enter-active-class="duration-200 ease-out"
|
|
108
|
+
enter-from-class="scale-95 opacity-0"
|
|
109
|
+
enter-to-class="scale-100 opacity-100"
|
|
110
|
+
leave-active-class="duration-100 ease-in"
|
|
111
|
+
leave-from-class="scale-100 opacity-100"
|
|
112
|
+
leave-to-class="scale-95 opacity-0"
|
|
113
|
+
>
|
|
114
|
+
<PopoverPanel
|
|
115
|
+
focus
|
|
116
|
+
class="absolute inset-x-0 top-0 z-30 p-2 transition origin-top-right transform md:hidden"
|
|
117
|
+
>
|
|
118
|
+
<div
|
|
119
|
+
class="divide-y-2 rounded-lg shadow-lg bg-base-100 ring-1 ring-black ring-opacity-5 divide-gray-50"
|
|
120
|
+
>
|
|
121
|
+
<div class="px-5 pt-5 pb-6">
|
|
122
|
+
<div class="flex items-center justify-between">
|
|
123
|
+
<div>
|
|
124
|
+
<img
|
|
125
|
+
class="w-auto h-8"
|
|
126
|
+
src="https://tailwindui.com/img/logos/workflow-mark-purple-600-to-indigo-600.svg"
|
|
127
|
+
alt="Workflow"
|
|
128
|
+
>
|
|
129
|
+
</div>
|
|
130
|
+
<div class="-mr-2">
|
|
131
|
+
<PopoverButton
|
|
132
|
+
class="inline-flex items-center justify-center p-2 text-gray-400 rounded-md bg-base-100 hover:text-gray-500 hover:bg-base-200 focus:outline-none focus:ring-2 focus:ring-inset focus:ring-indigo-500"
|
|
133
|
+
>
|
|
134
|
+
<span class="sr-only">Close menu</span>
|
|
135
|
+
<XIcon class="w-6 h-6" aria-hidden="true" />
|
|
136
|
+
</PopoverButton>
|
|
137
|
+
</div>
|
|
138
|
+
</div>
|
|
139
|
+
<div class="mt-6">
|
|
140
|
+
<nav class="grid grid-cols-1 gap-7">
|
|
141
|
+
<a
|
|
142
|
+
v-for="item in links"
|
|
143
|
+
:key="item.name"
|
|
144
|
+
:href="item.href"
|
|
145
|
+
class="flex items-center p-3 -m-3 rounded-lg hover:bg-gray-50"
|
|
146
|
+
>
|
|
147
|
+
<div class="ml-4 text-base font-medium text-gray-900">{{ item.name }}</div>
|
|
148
|
+
</a>
|
|
149
|
+
</nav>
|
|
150
|
+
</div>
|
|
151
|
+
</div>
|
|
152
|
+
<div class="px-5 py-6">
|
|
153
|
+
<div class="grid grid-cols-2 gap-4">
|
|
154
|
+
<a href="#" class="text-base font-medium text-gray-900 hover:text-gray-700">Pricing</a>
|
|
155
|
+
<a href="#" class="text-base font-medium text-gray-900 hover:text-gray-700">Partners</a>
|
|
156
|
+
<a href="#" class="text-base font-medium text-gray-900 hover:text-gray-700">Company</a>
|
|
157
|
+
</div>
|
|
158
|
+
<div class="mt-6">
|
|
159
|
+
<a
|
|
160
|
+
href="#"
|
|
161
|
+
class="flex items-center justify-center w-full px-4 py-2 text-base font-medium text-white border border-transparent rounded-md shadow-sm bg-gradient-to-r from-purple-600 to-indigo-600 bg-origin-border hover:from-purple-700 hover:to-indigo-700"
|
|
162
|
+
>Sign up</a>
|
|
163
|
+
<p class="mt-6 text-base font-medium text-center text-gray-500">
|
|
164
|
+
Existing customer?
|
|
165
|
+
<a href="#" class="text-gray-900">Sign in</a>
|
|
166
|
+
</p>
|
|
167
|
+
</div>
|
|
168
|
+
</div>
|
|
169
|
+
</div>
|
|
170
|
+
</PopoverPanel>
|
|
171
|
+
</transition>
|
|
172
|
+
</Popover>
|
|
173
|
+
</header>
|
|
174
|
+
</template>
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<!-- Hero section -->
|
|
3
|
+
<div class="relative">
|
|
4
|
+
<div class="absolute inset-x-0 bottom-0 bg-base-200 h-1/2" />
|
|
5
|
+
<div class="mx-auto max-w-7xl sm:px-6 lg:px-8">
|
|
6
|
+
<div class="relative shadow-xl sm:rounded-2xl sm:overflow-hidden">
|
|
7
|
+
<div class="absolute inset-0">
|
|
8
|
+
<img
|
|
9
|
+
class="object-cover w-full h-full"
|
|
10
|
+
src="https://images.unsplash.com/photo-1528901166007-3784c7dd3653?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=2940&q=80"
|
|
11
|
+
alt="People working on laptops"
|
|
12
|
+
>
|
|
13
|
+
<div
|
|
14
|
+
class="absolute inset-0 bg-gradient-to-r from-primary to-secondary mix-blend-multiply"
|
|
15
|
+
/>
|
|
16
|
+
</div>
|
|
17
|
+
|
|
18
|
+
<div class="relative px-4 py-16 sm:px-6 sm:py-24 lg:py-32 lg:px-8">
|
|
19
|
+
<Text is="h1" extrabold center class="text-4xl tracking-tight sm:text-5xl lg:text-6xl">
|
|
20
|
+
<Text class="text-white" block>
|
|
21
|
+
DaisyUI Kit
|
|
22
|
+
</Text>
|
|
23
|
+
<Text secondary block class="text-3xl sm:text-4xl lg:text-5xl">
|
|
24
|
+
Build Beautiful Apps
|
|
25
|
+
</Text>
|
|
26
|
+
</Text>
|
|
27
|
+
<Text is="div" center class="max-w-lg mx-auto mt-6 text-xl text-indigo-200 sm:max-w-3xl">
|
|
28
|
+
Bring the masterfully crafted DaisyUI into your Vue app. <br>Built for you with ❤️ by <NuxtLink to="https://bitovi.com">
|
|
29
|
+
<Link>Bitovi</Link>
|
|
30
|
+
</NuxtLink>.
|
|
31
|
+
</Text>
|
|
32
|
+
|
|
33
|
+
<div class="max-w-sm mx-auto mt-10 sm:max-w-none sm:flex sm:justify-center">
|
|
34
|
+
<Flex items-center justify-center class="sm:space-y-0 sm:mx-auto sm:inline-grid sm:grid-cols-2">
|
|
35
|
+
<NuxtLink custom to="/daisy-button">
|
|
36
|
+
<Button class="border-0 bg-base-100 text-base-content hover:bg-base-200">
|
|
37
|
+
Learn more
|
|
38
|
+
</Button>
|
|
39
|
+
</NuxtLink>
|
|
40
|
+
|
|
41
|
+
<NuxtLink custom to="/daisy-button">
|
|
42
|
+
<Button primary>
|
|
43
|
+
Start Building
|
|
44
|
+
</Button>
|
|
45
|
+
</NuxtLink>
|
|
46
|
+
</Flex>
|
|
47
|
+
</div>
|
|
48
|
+
</div>
|
|
49
|
+
</div>
|
|
50
|
+
</div>
|
|
51
|
+
</div>
|
|
52
|
+
</template>
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<!-- Logo Cloud -->
|
|
3
|
+
<div class="bg-base-200">
|
|
4
|
+
<div class="px-4 py-16 mx-auto max-w-7xl sm:px-6 lg:px-8">
|
|
5
|
+
<p
|
|
6
|
+
class="text-sm font-semibold tracking-wide text-center text-gray-500 uppercase"
|
|
7
|
+
>
|
|
8
|
+
Trusted by over 5 very average small businesses
|
|
9
|
+
</p>
|
|
10
|
+
<div class="grid grid-cols-2 gap-8 mt-6 md:grid-cols-6 lg:grid-cols-5">
|
|
11
|
+
<div class="flex justify-center col-span-1 md:col-span-2 lg:col-span-1">
|
|
12
|
+
<img
|
|
13
|
+
class="h-12"
|
|
14
|
+
src="https://tailwindui.com/img/logos/tuple-logo-gray-400.svg"
|
|
15
|
+
alt="Tuple"
|
|
16
|
+
>
|
|
17
|
+
</div>
|
|
18
|
+
<div class="flex justify-center col-span-1 md:col-span-2 lg:col-span-1">
|
|
19
|
+
<img
|
|
20
|
+
class="h-12"
|
|
21
|
+
src="https://tailwindui.com/img/logos/mirage-logo-gray-400.svg"
|
|
22
|
+
alt="Mirage"
|
|
23
|
+
>
|
|
24
|
+
</div>
|
|
25
|
+
<div class="flex justify-center col-span-1 md:col-span-2 lg:col-span-1">
|
|
26
|
+
<img
|
|
27
|
+
class="h-12"
|
|
28
|
+
src="https://tailwindui.com/img/logos/statickit-logo-gray-400.svg"
|
|
29
|
+
alt="StaticKit"
|
|
30
|
+
>
|
|
31
|
+
</div>
|
|
32
|
+
<div class="flex justify-center col-span-1 md:col-span-2 md:col-start-2 lg:col-span-1">
|
|
33
|
+
<img
|
|
34
|
+
class="h-12"
|
|
35
|
+
src="https://tailwindui.com/img/logos/transistor-logo-gray-400.svg"
|
|
36
|
+
alt="Transistor"
|
|
37
|
+
>
|
|
38
|
+
</div>
|
|
39
|
+
<div class="flex justify-center col-span-2 md:col-span-2 md:col-start-4 lg:col-span-1">
|
|
40
|
+
<img
|
|
41
|
+
class="h-12"
|
|
42
|
+
src="https://tailwindui.com/img/logos/workcation-logo-gray-400.svg"
|
|
43
|
+
alt="Workcation"
|
|
44
|
+
>
|
|
45
|
+
</div>
|
|
46
|
+
</div>
|
|
47
|
+
</div>
|
|
48
|
+
</div>
|
|
49
|
+
</template>
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<!-- Stats section -->
|
|
3
|
+
<div class="relative bg-gray-900">
|
|
4
|
+
<div class="absolute inset-x-0 bottom-0 h-80 xl:top-0 xl:h-full">
|
|
5
|
+
<div class="w-full h-full xl:grid xl:grid-cols-2">
|
|
6
|
+
<div class="h-full xl:relative xl:col-start-2">
|
|
7
|
+
<img
|
|
8
|
+
class="object-cover w-full h-full opacity-25 xl:absolute xl:inset-0"
|
|
9
|
+
src="https://images.unsplash.com/photo-1521737852567-6949f3f9f2b5?ixid=MXwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHw%3D&ixlib=rb-1.2.1&auto=format&fit=crop&w=2830&q=80&sat=-100"
|
|
10
|
+
alt="People working on laptops"
|
|
11
|
+
>
|
|
12
|
+
<div
|
|
13
|
+
aria-hidden="true"
|
|
14
|
+
class="absolute inset-x-0 top-0 h-32 bg-gradient-to-b from-gray-900 xl:inset-y-0 xl:left-0 xl:h-full xl:w-32 xl:bg-gradient-to-r"
|
|
15
|
+
/>
|
|
16
|
+
</div>
|
|
17
|
+
</div>
|
|
18
|
+
</div>
|
|
19
|
+
<div
|
|
20
|
+
class="max-w-4xl px-4 mx-auto sm:px-6 lg:max-w-7xl lg:px-8 xl:grid xl:grid-cols-2 xl:grid-flow-col-dense xl:gap-x-8"
|
|
21
|
+
>
|
|
22
|
+
<div class="relative pt-12 pb-64 text-white sm:pt-24 sm:pb-64 xl:col-start-1 xl:pb-24">
|
|
23
|
+
<Text sm semibold uppercase block class="tracking-wide">
|
|
24
|
+
<span class="text-transparent bg-gradient-to-r from-purple-300 to-indigo-300 bg-clip-text">Bitovi Consulting</span>
|
|
25
|
+
</Text>
|
|
26
|
+
<Text
|
|
27
|
+
primary
|
|
28
|
+
block extrabold size="3xl"
|
|
29
|
+
class="mt-3"
|
|
30
|
+
>
|
|
31
|
+
Let the experts build it for you
|
|
32
|
+
</Text>
|
|
33
|
+
<p class="mt-5 text-lg text-gray-300">
|
|
34
|
+
Rhoncus sagittis risus arcu erat lectus bibendum. Ut in adipiscing
|
|
35
|
+
quis in viverra tristique sem. Ornare feugiat viverra eleifend
|
|
36
|
+
fusce orci in quis amet. Sit in et vitae tortor, massa. Dapibus
|
|
37
|
+
laoreet amet lacus nibh integer quis. Eu vulputate diam sit tellus
|
|
38
|
+
quis at.
|
|
39
|
+
</p>
|
|
40
|
+
|
|
41
|
+
<Flex class="mt-6 space-x-4">
|
|
42
|
+
<NuxtLink to="https://bitovi.com" target="blank">
|
|
43
|
+
<Button secondary lg>
|
|
44
|
+
Visit Bitovi.com
|
|
45
|
+
</Button>
|
|
46
|
+
</NuxtLink>
|
|
47
|
+
</Flex>
|
|
48
|
+
</div>
|
|
49
|
+
</div>
|
|
50
|
+
</div>
|
|
51
|
+
</template>
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<blockquote>
|
|
3
|
+
<div>
|
|
4
|
+
<Text block base class="text-base-content/80">
|
|
5
|
+
“Cras velit quis eros eget rhoncus lacus ultrices
|
|
6
|
+
sed diam. Sit orci risus aenean curabitur donec aliquet.
|
|
7
|
+
Mi venenatis in euismod ut.”
|
|
8
|
+
</Text>
|
|
9
|
+
</div>
|
|
10
|
+
<footer class="mt-3">
|
|
11
|
+
<Flex items-center class="space-x-3">
|
|
12
|
+
<Avatar circle class="flex-shrink-0 w-8 h-8">
|
|
13
|
+
<img
|
|
14
|
+
src="https://images.unsplash.com/photo-1509783236416-c9ad59bae472?ixlib=rb-=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=facearea&facepad=8&w=1024&h=1024&q=80"
|
|
15
|
+
>
|
|
16
|
+
</Avatar>
|
|
17
|
+
<Text base medium block class="text-base-content/80">
|
|
18
|
+
Marcia Hill, Digital Marketing Manager
|
|
19
|
+
</Text>
|
|
20
|
+
</Flex>
|
|
21
|
+
</footer>
|
|
22
|
+
</blockquote>
|
|
23
|
+
</template>
|