@xenterprises/nuxt-x-marketing 1.0.2 → 1.1.0
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 +130 -11
- package/app/components/X/Mark/CodeBlock/index.vue +19 -7
- package/app/components/X/Mark/Divider/Glow.vue +25 -19
- package/app/components/X/Mark/Section/Stitch.vue +45 -31
- package/app/composables/{useParallax.ts → useParallax.js} +6 -7
- package/app/composables/{useScrollReveal.ts → useScrollReveal.js} +4 -4
- package/nuxt.config.ts +1 -11
- package/package.json +1 -1
- package/.claude/settings.local.json +0 -23
- package/.nuxtrc +0 -1
- package/.playground/app.config.ts +0 -74
- package/.playground/app.vue +0 -269
- package/.playground/components/AppFooter.vue +0 -103
- package/.playground/components/AppHeader.vue +0 -41
- package/.playground/components/CodeExample.vue +0 -70
- package/.playground/components/ComponentPlayground.vue +0 -117
- package/.playground/components/DocsHeader.vue +0 -19
- package/.playground/layouts/default.vue +0 -15
- package/.playground/layouts/docs-layout.vue +0 -161
- package/.playground/layouts/docs.vue +0 -11
- package/.playground/nuxt.config.ts +0 -5
- package/.playground/package-lock.json +0 -6
- package/.playground/pages/blog/author.vue +0 -145
- package/.playground/pages/blog/card.vue +0 -149
- package/.playground/pages/blog/cta.vue +0 -131
- package/.playground/pages/blog/detail.vue +0 -471
- package/.playground/pages/blog/list.vue +0 -261
- package/.playground/pages/blog/navigation.vue +0 -228
- package/.playground/pages/blog/sidebar.vue +0 -279
- package/.playground/pages/config.vue +0 -289
- package/.playground/pages/content/comparison.vue +0 -253
- package/.playground/pages/content/cta.vue +0 -245
- package/.playground/pages/content/features.vue +0 -217
- package/.playground/pages/content/newsletter-section.vue +0 -260
- package/.playground/pages/content/newsletter.vue +0 -200
- package/.playground/pages/content/pricing.vue +0 -335
- package/.playground/pages/content/testimonials.vue +0 -188
- package/.playground/pages/hero.vue +0 -257
- package/.playground/pages/index.vue +0 -381
- package/.playground/pages/layout/footer.vue +0 -210
- package/.playground/pages/layout/legal-footer.vue +0 -121
- package/.playground/pages/layout/navbar.vue +0 -285
- package/.playground/pages/layout/section.vue +0 -266
- package/.playground/pages/layout/x-legal.vue +0 -199
- package/.playground/pages/modals/feature-modal.vue +0 -320
- package/.playground/pages/modals/image-lightbox.vue +0 -277
- package/.playground/pages/modals/video-modal.vue +0 -222
- package/.playground/pages/notifications/announcement-bar.vue +0 -164
- package/.playground/pages/notifications/cookie-banner.vue +0 -210
- package/.playground/pages/notifications/cookie-toast.vue +0 -143
- package/.playground/pages/notifications/gdpr.vue +0 -276
- package/.playground/pages/notifications/social-proof-toast.vue +0 -515
- package/.playground/pages/ui/badge.vue +0 -161
- package/.playground/pages/ui/bg-pattern.vue +0 -177
- package/.playground/pages/ui/glass-card.vue +0 -179
- package/.playground/pages/ui/glow-divider.vue +0 -179
- package/.playground/pages/ui/promo-card.vue +0 -259
- package/.playground/pages/ui/section-stitch.vue +0 -411
- package/.playground/pages/utilities/back-to-top.vue +0 -153
- package/.playground/pages/utilities/popup-chat.vue +0 -224
- package/componentList.json +0 -2129
- package/screenshots/playground-home.png +0 -0
- package/tsconfig.json +0 -3
- /package/app/composables/{useXBlog.ts → useXBlog.js} +0 -0
|
@@ -1,177 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="min-h-screen">
|
|
3
|
-
<div class="bg-white dark:bg-neutral-900 border-b border-neutral-200 dark:border-neutral-800 px-8 py-6">
|
|
4
|
-
<h1 class="text-2xl font-bold text-neutral-900 dark:text-white">Background Pattern</h1>
|
|
5
|
-
<p class="mt-2 text-neutral-600 dark:text-neutral-400">SVG background patterns for sections.</p>
|
|
6
|
-
</div>
|
|
7
|
-
|
|
8
|
-
<div class="p-8 space-y-12">
|
|
9
|
-
<!-- Pattern Types -->
|
|
10
|
-
<section>
|
|
11
|
-
<h2 class="text-lg font-semibold mb-4">Pattern Types</h2>
|
|
12
|
-
<div class="grid md:grid-cols-3 gap-4">
|
|
13
|
-
<div v-for="pattern in patterns" :key="pattern" class="relative h-48 rounded-lg overflow-hidden bg-neutral-100 dark:bg-neutral-800">
|
|
14
|
-
<XMarkPatternBg :pattern="pattern" :opacity="0.15" :fade="false" />
|
|
15
|
-
<div class="absolute inset-0 flex items-center justify-center">
|
|
16
|
-
<span class="px-3 py-1 bg-white dark:bg-neutral-900 rounded-full text-sm font-medium">{{ pattern }}</span>
|
|
17
|
-
</div>
|
|
18
|
-
</div>
|
|
19
|
-
</div>
|
|
20
|
-
</section>
|
|
21
|
-
|
|
22
|
-
<!-- Opacity Levels -->
|
|
23
|
-
<section>
|
|
24
|
-
<h2 class="text-lg font-semibold mb-4">Opacity Levels</h2>
|
|
25
|
-
<div class="grid md:grid-cols-4 gap-4">
|
|
26
|
-
<div v-for="opacity in [0.03, 0.05, 0.1, 0.2]" :key="opacity" class="relative h-32 rounded-lg overflow-hidden bg-neutral-100 dark:bg-neutral-800">
|
|
27
|
-
<XMarkPatternBg pattern="dots" :opacity="opacity" />
|
|
28
|
-
<div class="absolute inset-0 flex items-center justify-center">
|
|
29
|
-
<span class="px-3 py-1 bg-white dark:bg-neutral-900 rounded-full text-sm font-medium">{{ opacity }}</span>
|
|
30
|
-
</div>
|
|
31
|
-
</div>
|
|
32
|
-
</div>
|
|
33
|
-
</section>
|
|
34
|
-
|
|
35
|
-
<!-- On Colored Backgrounds -->
|
|
36
|
-
<section>
|
|
37
|
-
<h2 class="text-lg font-semibold mb-4">On Colored Backgrounds</h2>
|
|
38
|
-
<div class="grid md:grid-cols-2 gap-4">
|
|
39
|
-
<div class="relative h-48 rounded-lg overflow-hidden bg-gradient-to-br from-primary-500 to-primary-700">
|
|
40
|
-
<XMarkPatternBg pattern="circuit" :opacity="0.1" color="white" />
|
|
41
|
-
<div class="absolute inset-0 flex items-center justify-center">
|
|
42
|
-
<span class="px-3 py-1 bg-white/20 backdrop-blur rounded-full text-sm font-medium text-white">Primary + Circuit</span>
|
|
43
|
-
</div>
|
|
44
|
-
</div>
|
|
45
|
-
<div class="relative h-48 rounded-lg overflow-hidden bg-gradient-to-br from-neutral-800 to-neutral-900">
|
|
46
|
-
<XMarkPatternBg pattern="topography" :opacity="0.08" color="white" />
|
|
47
|
-
<div class="absolute inset-0 flex items-center justify-center">
|
|
48
|
-
<span class="px-3 py-1 bg-white/20 backdrop-blur rounded-full text-sm font-medium text-white">Dark + Topography</span>
|
|
49
|
-
</div>
|
|
50
|
-
</div>
|
|
51
|
-
</div>
|
|
52
|
-
</section>
|
|
53
|
-
|
|
54
|
-
<!-- Fade Effect -->
|
|
55
|
-
<section>
|
|
56
|
-
<h2 class="text-lg font-semibold mb-4">Fade Effect</h2>
|
|
57
|
-
<p class="text-sm text-neutral-500 mb-4">Pattern fades at top and bottom edges (enabled by default)</p>
|
|
58
|
-
<div class="grid md:grid-cols-2 gap-4">
|
|
59
|
-
<div class="relative h-64 rounded-lg overflow-hidden bg-neutral-100 dark:bg-neutral-800">
|
|
60
|
-
<XMarkPatternBg pattern="grid" :opacity="0.15" :fade="true" />
|
|
61
|
-
<div class="absolute inset-0 flex items-center justify-center">
|
|
62
|
-
<span class="px-3 py-1 bg-white dark:bg-neutral-900 rounded-full text-sm font-medium">fade: true (default)</span>
|
|
63
|
-
</div>
|
|
64
|
-
</div>
|
|
65
|
-
<div class="relative h-64 rounded-lg overflow-hidden bg-neutral-100 dark:bg-neutral-800">
|
|
66
|
-
<XMarkPatternBg pattern="grid" :opacity="0.15" :fade="false" />
|
|
67
|
-
<div class="absolute inset-0 flex items-center justify-center">
|
|
68
|
-
<span class="px-3 py-1 bg-white dark:bg-neutral-900 rounded-full text-sm font-medium">fade: false</span>
|
|
69
|
-
</div>
|
|
70
|
-
</div>
|
|
71
|
-
</div>
|
|
72
|
-
</section>
|
|
73
|
-
|
|
74
|
-
<!-- Usage with Section -->
|
|
75
|
-
<section>
|
|
76
|
-
<h2 class="text-lg font-semibold mb-4">Usage with Section</h2>
|
|
77
|
-
<div class="relative rounded-lg overflow-hidden bg-neutral-50 dark:bg-neutral-900 p-12">
|
|
78
|
-
<XMarkPatternBg pattern="grid" :opacity="0.05" />
|
|
79
|
-
<div class="relative text-center">
|
|
80
|
-
<h3 class="text-2xl font-bold mb-4">Section with Pattern</h3>
|
|
81
|
-
<p class="text-neutral-600 dark:text-neutral-400 max-w-md mx-auto">
|
|
82
|
-
Add visual interest to your sections with subtle background patterns.
|
|
83
|
-
</p>
|
|
84
|
-
</div>
|
|
85
|
-
</div>
|
|
86
|
-
</section>
|
|
87
|
-
|
|
88
|
-
<!-- Props -->
|
|
89
|
-
<section>
|
|
90
|
-
<h2 class="text-lg font-semibold mb-4">Props</h2>
|
|
91
|
-
<table class="w-full text-sm">
|
|
92
|
-
<thead>
|
|
93
|
-
<tr class="border-b border-neutral-200 dark:border-neutral-700">
|
|
94
|
-
<th class="text-left py-3 px-4">Prop</th>
|
|
95
|
-
<th class="text-left py-3 px-4">Type</th>
|
|
96
|
-
<th class="text-left py-3 px-4">Default</th>
|
|
97
|
-
<th class="text-left py-3 px-4">Description</th>
|
|
98
|
-
</tr>
|
|
99
|
-
</thead>
|
|
100
|
-
<tbody class="divide-y divide-neutral-200 dark:divide-neutral-700">
|
|
101
|
-
<tr><td class="py-3 px-4 font-mono text-xs">pattern</td><td class="py-3 px-4">String</td><td class="py-3 px-4">dots</td><td class="py-3 px-4">See Available Patterns table below</td></tr>
|
|
102
|
-
<tr><td class="py-3 px-4 font-mono text-xs">opacity</td><td class="py-3 px-4">Number</td><td class="py-3 px-4">0.05</td><td class="py-3 px-4">Pattern opacity (0-1)</td></tr>
|
|
103
|
-
<tr><td class="py-3 px-4 font-mono text-xs">fade</td><td class="py-3 px-4">Boolean</td><td class="py-3 px-4">true</td><td class="py-3 px-4">Fade pattern at top and bottom edges</td></tr>
|
|
104
|
-
<tr><td class="py-3 px-4 font-mono text-xs">color</td><td class="py-3 px-4">String</td><td class="py-3 px-4">currentColor</td><td class="py-3 px-4">Pattern color (CSS color value)</td></tr>
|
|
105
|
-
</tbody>
|
|
106
|
-
</table>
|
|
107
|
-
</section>
|
|
108
|
-
|
|
109
|
-
<!-- Available Patterns -->
|
|
110
|
-
<section>
|
|
111
|
-
<h2 class="text-lg font-semibold mb-4">Available Patterns</h2>
|
|
112
|
-
<table class="w-full text-sm">
|
|
113
|
-
<thead>
|
|
114
|
-
<tr class="border-b border-neutral-200 dark:border-neutral-700">
|
|
115
|
-
<th class="text-left py-3 px-4">Pattern</th>
|
|
116
|
-
<th class="text-left py-3 px-4">Description</th>
|
|
117
|
-
</tr>
|
|
118
|
-
</thead>
|
|
119
|
-
<tbody class="divide-y divide-neutral-200 dark:divide-neutral-700">
|
|
120
|
-
<tr><td class="py-3 px-4 font-mono text-xs">dots</td><td class="py-3 px-4">Small dots in a grid pattern</td></tr>
|
|
121
|
-
<tr><td class="py-3 px-4 font-mono text-xs">grid</td><td class="py-3 px-4">Simple square grid lines</td></tr>
|
|
122
|
-
<tr><td class="py-3 px-4 font-mono text-xs">diagonal</td><td class="py-3 px-4">Diagonal lines</td></tr>
|
|
123
|
-
<tr><td class="py-3 px-4 font-mono text-xs">topography</td><td class="py-3 px-4">Topographic map-style contour lines</td></tr>
|
|
124
|
-
<tr><td class="py-3 px-4 font-mono text-xs">circuit</td><td class="py-3 px-4">Circuit board-style pattern</td></tr>
|
|
125
|
-
<tr><td class="py-3 px-4 font-mono text-xs">waves</td><td class="py-3 px-4">Horizontal wave lines</td></tr>
|
|
126
|
-
<tr><td class="py-3 px-4 font-mono text-xs">plaid</td><td class="py-3 px-4">Classic plaid/tartan crossing lines</td></tr>
|
|
127
|
-
<tr><td class="py-3 px-4 font-mono text-xs">diagonalPlaid</td><td class="py-3 px-4">Diagonal crossing lines</td></tr>
|
|
128
|
-
<tr><td class="py-3 px-4 font-mono text-xs">hexagons</td><td class="py-3 px-4">Honeycomb hexagon pattern</td></tr>
|
|
129
|
-
<tr><td class="py-3 px-4 font-mono text-xs">triangles</td><td class="py-3 px-4">Geometric triangle pattern</td></tr>
|
|
130
|
-
<tr><td class="py-3 px-4 font-mono text-xs">crosses</td><td class="py-3 px-4">Small cross/plus symbols</td></tr>
|
|
131
|
-
<tr><td class="py-3 px-4 font-mono text-xs">zigzag</td><td class="py-3 px-4">Zigzag chevron lines</td></tr>
|
|
132
|
-
<tr><td class="py-3 px-4 font-mono text-xs">diamonds</td><td class="py-3 px-4">Diamond/rhombus shapes</td></tr>
|
|
133
|
-
</tbody>
|
|
134
|
-
</table>
|
|
135
|
-
</section>
|
|
136
|
-
|
|
137
|
-
<!-- Code Example -->
|
|
138
|
-
<section>
|
|
139
|
-
<h2 class="text-lg font-semibold mb-4">Code Example</h2>
|
|
140
|
-
<CodeExample title="Background Pattern Usage" :code="codeExample" />
|
|
141
|
-
</section>
|
|
142
|
-
</div>
|
|
143
|
-
</div>
|
|
144
|
-
</template>
|
|
145
|
-
|
|
146
|
-
<script setup>
|
|
147
|
-
const basicPatterns = ['dots', 'grid', 'diagonal', 'topography', 'circuit', 'waves']
|
|
148
|
-
const edgyPatterns = ['plaid', 'diagonalPlaid', 'hexagons', 'triangles', 'crosses', 'zigzag', 'diamonds']
|
|
149
|
-
const patterns = [...basicPatterns, ...edgyPatterns]
|
|
150
|
-
|
|
151
|
-
const codeExample = `<!-- Basic pattern on a section (fades at edges by default) -->
|
|
152
|
-
<div class="relative">
|
|
153
|
-
<XMarkPatternBg pattern="dots" :opacity="0.05" />
|
|
154
|
-
<div class="relative">
|
|
155
|
-
<!-- Your content here -->
|
|
156
|
-
</div>
|
|
157
|
-
</div>
|
|
158
|
-
|
|
159
|
-
<!-- On colored background with white pattern -->
|
|
160
|
-
<div class="relative bg-primary-600">
|
|
161
|
-
<XMarkPatternBg
|
|
162
|
-
pattern="circuit"
|
|
163
|
-
:opacity="0.1"
|
|
164
|
-
color="white"
|
|
165
|
-
/>
|
|
166
|
-
<div class="relative text-white">
|
|
167
|
-
<!-- Content -->
|
|
168
|
-
</div>
|
|
169
|
-
</div>
|
|
170
|
-
|
|
171
|
-
<!-- Disable fade for full-coverage pattern -->
|
|
172
|
-
<XMarkPatternBg
|
|
173
|
-
pattern="grid"
|
|
174
|
-
:opacity="0.08"
|
|
175
|
-
:fade="false"
|
|
176
|
-
/>`
|
|
177
|
-
</script>
|
|
@@ -1,179 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="min-h-screen">
|
|
3
|
-
<div class="bg-white dark:bg-neutral-900 border-b border-neutral-200 dark:border-neutral-800 px-8 py-6">
|
|
4
|
-
<h1 class="text-2xl font-bold text-neutral-900 dark:text-white">Glass Card</h1>
|
|
5
|
-
<p class="mt-2 text-neutral-600 dark:text-neutral-400">Glassmorphism card with frosted background effect.</p>
|
|
6
|
-
</div>
|
|
7
|
-
|
|
8
|
-
<div class="p-8 space-y-12">
|
|
9
|
-
<!-- Basic -->
|
|
10
|
-
<section class="bg-gradient-to-br from-primary-500 to-primary-700 rounded-2xl p-12">
|
|
11
|
-
<h2 class="text-lg font-semibold mb-4 text-white">Basic Card</h2>
|
|
12
|
-
<div class="max-w-md">
|
|
13
|
-
<XMarkCardGlass title="Glass Effect" subtitle="Frosted glass aesthetic">
|
|
14
|
-
<p class="text-gray-600 dark:text-gray-300">
|
|
15
|
-
This card uses backdrop blur and semi-transparent backgrounds for a modern glass effect.
|
|
16
|
-
</p>
|
|
17
|
-
</XMarkCardGlass>
|
|
18
|
-
</div>
|
|
19
|
-
</section>
|
|
20
|
-
|
|
21
|
-
<!-- Size Options -->
|
|
22
|
-
<section class="bg-gradient-to-br from-neutral-800 to-neutral-900 rounded-2xl p-12">
|
|
23
|
-
<h2 class="text-lg font-semibold mb-6 text-white">Size Options</h2>
|
|
24
|
-
<p class="text-sm text-neutral-400 mb-8">Different padding sizes for various use cases. Each card contains the same content to show the padding difference.</p>
|
|
25
|
-
<div class="space-y-6">
|
|
26
|
-
<div class="flex flex-wrap items-start gap-6">
|
|
27
|
-
<div class="text-center">
|
|
28
|
-
<p class="text-xs text-neutral-400 mb-2 font-mono">size="xs" (p-3)</p>
|
|
29
|
-
<XMarkCardGlass title="Extra Small" size="xs">
|
|
30
|
-
<p class="text-sm text-gray-300">Compact cards for tight spaces, sidebars, or dense layouts.</p>
|
|
31
|
-
</XMarkCardGlass>
|
|
32
|
-
</div>
|
|
33
|
-
<div class="text-center">
|
|
34
|
-
<p class="text-xs text-neutral-400 mb-2 font-mono">size="sm" (p-4)</p>
|
|
35
|
-
<XMarkCardGlass title="Small" size="sm">
|
|
36
|
-
<p class="text-sm text-gray-300">Compact cards for tight spaces, sidebars, or dense layouts.</p>
|
|
37
|
-
</XMarkCardGlass>
|
|
38
|
-
</div>
|
|
39
|
-
<div class="text-center">
|
|
40
|
-
<p class="text-xs text-neutral-400 mb-2 font-mono">size="md" (p-6)</p>
|
|
41
|
-
<XMarkCardGlass title="Medium" size="md">
|
|
42
|
-
<p class="text-sm text-gray-300">Compact cards for tight spaces, sidebars, or dense layouts.</p>
|
|
43
|
-
</XMarkCardGlass>
|
|
44
|
-
</div>
|
|
45
|
-
</div>
|
|
46
|
-
<div class="flex flex-wrap items-start gap-6">
|
|
47
|
-
<div class="text-center">
|
|
48
|
-
<p class="text-xs text-neutral-400 mb-2 font-mono">size="lg" (p-8)</p>
|
|
49
|
-
<XMarkCardGlass title="Large" size="lg">
|
|
50
|
-
<p class="text-sm text-gray-300">Compact cards for tight spaces, sidebars, or dense layouts.</p>
|
|
51
|
-
</XMarkCardGlass>
|
|
52
|
-
</div>
|
|
53
|
-
<div class="text-center">
|
|
54
|
-
<p class="text-xs text-neutral-400 mb-2 font-mono">size="xl" (p-10)</p>
|
|
55
|
-
<XMarkCardGlass title="Extra Large" size="xl">
|
|
56
|
-
<p class="text-sm text-gray-300">Compact cards for tight spaces, sidebars, or dense layouts.</p>
|
|
57
|
-
</XMarkCardGlass>
|
|
58
|
-
</div>
|
|
59
|
-
</div>
|
|
60
|
-
</div>
|
|
61
|
-
</section>
|
|
62
|
-
|
|
63
|
-
<!-- With Glow -->
|
|
64
|
-
<section class="bg-gradient-to-br from-indigo-900 via-purple-900 to-pink-900 rounded-2xl p-12">
|
|
65
|
-
<h2 class="text-lg font-semibold mb-4 text-white">With Glow Border</h2>
|
|
66
|
-
<div class="grid md:grid-cols-2 gap-6">
|
|
67
|
-
<XMarkCardGlass title="Standard Card">
|
|
68
|
-
<p class="text-gray-300">Without glow effect</p>
|
|
69
|
-
</XMarkCardGlass>
|
|
70
|
-
<XMarkCardGlass title="Glow Card" :glow="true">
|
|
71
|
-
<p class="text-gray-300">With animated glow border</p>
|
|
72
|
-
</XMarkCardGlass>
|
|
73
|
-
</div>
|
|
74
|
-
</section>
|
|
75
|
-
|
|
76
|
-
<!-- With Slots -->
|
|
77
|
-
<section class="bg-gradient-to-br from-cyan-600 to-blue-700 rounded-2xl p-12">
|
|
78
|
-
<h2 class="text-lg font-semibold mb-4 text-white">Using Slots</h2>
|
|
79
|
-
<div class="max-w-md">
|
|
80
|
-
<XMarkCardGlass>
|
|
81
|
-
<template #header>
|
|
82
|
-
<div class="flex items-center gap-3">
|
|
83
|
-
<div class="w-10 h-10 rounded-full bg-white/20 flex items-center justify-center">
|
|
84
|
-
<UIcon name="i-lucide-star" class="w-5 h-5 text-white" />
|
|
85
|
-
</div>
|
|
86
|
-
<div>
|
|
87
|
-
<h3 class="font-semibold text-white">Custom Header</h3>
|
|
88
|
-
<p class="text-sm text-white/70">Using the header slot</p>
|
|
89
|
-
</div>
|
|
90
|
-
</div>
|
|
91
|
-
</template>
|
|
92
|
-
<p class="text-gray-200">
|
|
93
|
-
Custom header content with icon and text layout.
|
|
94
|
-
</p>
|
|
95
|
-
<template #footer>
|
|
96
|
-
<div class="flex justify-between items-center">
|
|
97
|
-
<span class="text-sm text-white/60">Footer slot</span>
|
|
98
|
-
<UButton size="sm" color="white" variant="outline">Action</UButton>
|
|
99
|
-
</div>
|
|
100
|
-
</template>
|
|
101
|
-
</XMarkCardGlass>
|
|
102
|
-
</div>
|
|
103
|
-
</section>
|
|
104
|
-
|
|
105
|
-
<!-- Props -->
|
|
106
|
-
<section>
|
|
107
|
-
<h2 class="text-lg font-semibold mb-4">Props</h2>
|
|
108
|
-
<table class="w-full text-sm">
|
|
109
|
-
<thead>
|
|
110
|
-
<tr class="border-b border-neutral-200 dark:border-neutral-700">
|
|
111
|
-
<th class="text-left py-3 px-4">Prop</th>
|
|
112
|
-
<th class="text-left py-3 px-4">Type</th>
|
|
113
|
-
<th class="text-left py-3 px-4">Default</th>
|
|
114
|
-
<th class="text-left py-3 px-4">Description</th>
|
|
115
|
-
</tr>
|
|
116
|
-
</thead>
|
|
117
|
-
<tbody class="divide-y divide-neutral-200 dark:divide-neutral-700">
|
|
118
|
-
<tr><td class="py-3 px-4 font-mono text-xs">title</td><td class="py-3 px-4">String</td><td class="py-3 px-4">''</td><td class="py-3 px-4">Card title</td></tr>
|
|
119
|
-
<tr><td class="py-3 px-4 font-mono text-xs">subtitle</td><td class="py-3 px-4">String</td><td class="py-3 px-4">''</td><td class="py-3 px-4">Card subtitle</td></tr>
|
|
120
|
-
<tr><td class="py-3 px-4 font-mono text-xs">size</td><td class="py-3 px-4">String</td><td class="py-3 px-4">md</td><td class="py-3 px-4">xs, sm, md, lg, xl</td></tr>
|
|
121
|
-
<tr><td class="py-3 px-4 font-mono text-xs">glow</td><td class="py-3 px-4">Boolean</td><td class="py-3 px-4">false</td><td class="py-3 px-4">Add animated glow border</td></tr>
|
|
122
|
-
</tbody>
|
|
123
|
-
</table>
|
|
124
|
-
</section>
|
|
125
|
-
|
|
126
|
-
<!-- Slots -->
|
|
127
|
-
<section>
|
|
128
|
-
<h2 class="text-lg font-semibold mb-4">Slots</h2>
|
|
129
|
-
<table class="w-full text-sm">
|
|
130
|
-
<thead>
|
|
131
|
-
<tr class="border-b border-neutral-200 dark:border-neutral-700">
|
|
132
|
-
<th class="text-left py-3 px-4">Slot</th>
|
|
133
|
-
<th class="text-left py-3 px-4">Description</th>
|
|
134
|
-
</tr>
|
|
135
|
-
</thead>
|
|
136
|
-
<tbody class="divide-y divide-neutral-200 dark:divide-neutral-700">
|
|
137
|
-
<tr><td class="py-3 px-4 font-mono text-xs">default</td><td class="py-3 px-4">Main card content</td></tr>
|
|
138
|
-
<tr><td class="py-3 px-4 font-mono text-xs">header</td><td class="py-3 px-4">Custom header (overrides title/subtitle)</td></tr>
|
|
139
|
-
<tr><td class="py-3 px-4 font-mono text-xs">footer</td><td class="py-3 px-4">Footer with border separator</td></tr>
|
|
140
|
-
</tbody>
|
|
141
|
-
</table>
|
|
142
|
-
</section>
|
|
143
|
-
|
|
144
|
-
<!-- Code Example -->
|
|
145
|
-
<section>
|
|
146
|
-
<h2 class="text-lg font-semibold mb-4">Code Example</h2>
|
|
147
|
-
<CodeExample title="Glass Card Usage" :code="codeExample" />
|
|
148
|
-
</section>
|
|
149
|
-
</div>
|
|
150
|
-
</div>
|
|
151
|
-
</template>
|
|
152
|
-
|
|
153
|
-
<script setup>
|
|
154
|
-
const codeExample = `<!-- Basic glass card -->
|
|
155
|
-
<XMarkCardGlass title="Features" subtitle="What we offer">
|
|
156
|
-
<p>Your content here...</p>
|
|
157
|
-
</XMarkCardGlass>
|
|
158
|
-
|
|
159
|
-
<!-- With glow effect -->
|
|
160
|
-
<XMarkCardGlass title="Premium" :glow="true" size="lg">
|
|
161
|
-
<p>Highlighted card with animated glow border</p>
|
|
162
|
-
</XMarkCardGlass>
|
|
163
|
-
|
|
164
|
-
<!-- Using slots for custom layout -->
|
|
165
|
-
<XMarkCardGlass>
|
|
166
|
-
<template #header>
|
|
167
|
-
<div class="flex items-center gap-3">
|
|
168
|
-
<UIcon name="i-lucide-star" class="w-5 h-5" />
|
|
169
|
-
<h3 class="font-semibold">Custom Header</h3>
|
|
170
|
-
</div>
|
|
171
|
-
</template>
|
|
172
|
-
|
|
173
|
-
<p>Main content goes here</p>
|
|
174
|
-
|
|
175
|
-
<template #footer>
|
|
176
|
-
<UButton size="sm">Action</UButton>
|
|
177
|
-
</template>
|
|
178
|
-
</XMarkCardGlass>`
|
|
179
|
-
</script>
|
|
@@ -1,179 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="min-h-screen">
|
|
3
|
-
<div class="bg-white dark:bg-neutral-900 border-b border-neutral-200 dark:border-neutral-800 px-8 py-6">
|
|
4
|
-
<h1 class="text-2xl font-bold text-neutral-900 dark:text-white">Glow Divider</h1>
|
|
5
|
-
<p class="mt-2 text-neutral-600 dark:text-neutral-400">Horizontal divider with layered glow effect.</p>
|
|
6
|
-
</div>
|
|
7
|
-
|
|
8
|
-
<div class="p-8 space-y-12">
|
|
9
|
-
<!-- Basic -->
|
|
10
|
-
<section>
|
|
11
|
-
<h2 class="text-lg font-semibold mb-4">Basic Divider</h2>
|
|
12
|
-
<div class="bg-neutral-900 rounded-lg p-8">
|
|
13
|
-
<p class="text-neutral-400 mb-4">Content above divider</p>
|
|
14
|
-
<XMarkDividerGlow />
|
|
15
|
-
<p class="text-neutral-400 mt-4">Content below divider</p>
|
|
16
|
-
</div>
|
|
17
|
-
</section>
|
|
18
|
-
|
|
19
|
-
<!-- Color Options -->
|
|
20
|
-
<section>
|
|
21
|
-
<h2 class="text-lg font-semibold mb-4">Color Options</h2>
|
|
22
|
-
<div class="space-y-8">
|
|
23
|
-
<div class="bg-neutral-900 rounded-lg p-8">
|
|
24
|
-
<p class="text-white mb-2 text-sm">Primary (default)</p>
|
|
25
|
-
<XMarkDividerGlow color="primary" spacing="py-4" />
|
|
26
|
-
</div>
|
|
27
|
-
<div class="bg-neutral-900 rounded-lg p-8">
|
|
28
|
-
<p class="text-white mb-2 text-sm">Cyan</p>
|
|
29
|
-
<XMarkDividerGlow color="cyan" spacing="py-4" />
|
|
30
|
-
</div>
|
|
31
|
-
<div class="bg-neutral-900 rounded-lg p-8">
|
|
32
|
-
<p class="text-white mb-2 text-sm">Blue</p>
|
|
33
|
-
<XMarkDividerGlow color="blue" spacing="py-4" />
|
|
34
|
-
</div>
|
|
35
|
-
<div class="bg-neutral-900 rounded-lg p-8">
|
|
36
|
-
<p class="text-white mb-2 text-sm">Purple</p>
|
|
37
|
-
<XMarkDividerGlow color="purple" spacing="py-4" />
|
|
38
|
-
</div>
|
|
39
|
-
<div class="bg-neutral-100 dark:bg-neutral-800 rounded-lg p-8">
|
|
40
|
-
<p class="text-neutral-600 dark:text-neutral-400 mb-2 text-sm">Neutral</p>
|
|
41
|
-
<XMarkDividerGlow color="neutral" spacing="py-4" />
|
|
42
|
-
</div>
|
|
43
|
-
<div class="bg-neutral-900 rounded-lg p-8">
|
|
44
|
-
<p class="text-white mb-2 text-sm">White</p>
|
|
45
|
-
<XMarkDividerGlow color="white" spacing="py-4" />
|
|
46
|
-
</div>
|
|
47
|
-
</div>
|
|
48
|
-
</section>
|
|
49
|
-
|
|
50
|
-
<!-- Intensity -->
|
|
51
|
-
<section>
|
|
52
|
-
<h2 class="text-lg font-semibold mb-4">Glow Intensity</h2>
|
|
53
|
-
<div class="bg-neutral-900 rounded-lg p-8 space-y-8">
|
|
54
|
-
<div>
|
|
55
|
-
<p class="text-white mb-2 text-sm">None (line only)</p>
|
|
56
|
-
<XMarkDividerGlow intensity="none" spacing="py-4" />
|
|
57
|
-
</div>
|
|
58
|
-
<div>
|
|
59
|
-
<p class="text-white mb-2 text-sm">Subtle</p>
|
|
60
|
-
<XMarkDividerGlow intensity="subtle" spacing="py-4" />
|
|
61
|
-
</div>
|
|
62
|
-
<div>
|
|
63
|
-
<p class="text-white mb-2 text-sm">Medium (default)</p>
|
|
64
|
-
<XMarkDividerGlow intensity="medium" spacing="py-4" />
|
|
65
|
-
</div>
|
|
66
|
-
<div>
|
|
67
|
-
<p class="text-white mb-2 text-sm">Strong</p>
|
|
68
|
-
<XMarkDividerGlow intensity="strong" spacing="py-4" />
|
|
69
|
-
</div>
|
|
70
|
-
</div>
|
|
71
|
-
</section>
|
|
72
|
-
|
|
73
|
-
<!-- Height -->
|
|
74
|
-
<section>
|
|
75
|
-
<h2 class="text-lg font-semibold mb-4">Line Height</h2>
|
|
76
|
-
<div class="bg-neutral-900 rounded-lg p-8 space-y-8">
|
|
77
|
-
<div>
|
|
78
|
-
<p class="text-white mb-2 text-sm">Thin (1px)</p>
|
|
79
|
-
<XMarkDividerGlow height="thin" spacing="py-4" />
|
|
80
|
-
</div>
|
|
81
|
-
<div>
|
|
82
|
-
<p class="text-white mb-2 text-sm">Default (2px)</p>
|
|
83
|
-
<XMarkDividerGlow height="default" spacing="py-4" />
|
|
84
|
-
</div>
|
|
85
|
-
<div>
|
|
86
|
-
<p class="text-white mb-2 text-sm">Thick (4px)</p>
|
|
87
|
-
<XMarkDividerGlow height="thick" spacing="py-4" />
|
|
88
|
-
</div>
|
|
89
|
-
</div>
|
|
90
|
-
</section>
|
|
91
|
-
|
|
92
|
-
<!-- Spacing -->
|
|
93
|
-
<section>
|
|
94
|
-
<h2 class="text-lg font-semibold mb-4">Vertical Spacing</h2>
|
|
95
|
-
<div class="bg-neutral-900 rounded-lg p-8">
|
|
96
|
-
<p class="text-neutral-400">Small spacing (py-4)</p>
|
|
97
|
-
<XMarkDividerGlow spacing="py-4" />
|
|
98
|
-
<p class="text-neutral-400">Medium spacing (py-8)</p>
|
|
99
|
-
<XMarkDividerGlow spacing="py-8" />
|
|
100
|
-
<p class="text-neutral-400">Large spacing (py-16)</p>
|
|
101
|
-
<XMarkDividerGlow spacing="py-16" />
|
|
102
|
-
<p class="text-neutral-400">End</p>
|
|
103
|
-
</div>
|
|
104
|
-
</section>
|
|
105
|
-
|
|
106
|
-
<!-- Combined Example -->
|
|
107
|
-
<section>
|
|
108
|
-
<h2 class="text-lg font-semibold mb-4">Combined Example</h2>
|
|
109
|
-
<div class="bg-neutral-900 rounded-lg p-8">
|
|
110
|
-
<p class="text-white text-center text-lg mb-2">Section Title</p>
|
|
111
|
-
<p class="text-neutral-400 text-center text-sm">Some descriptive content here</p>
|
|
112
|
-
<XMarkDividerGlow color="cyan" intensity="strong" height="thick" spacing="py-12" />
|
|
113
|
-
<p class="text-neutral-400 text-center text-sm">Next section content</p>
|
|
114
|
-
</div>
|
|
115
|
-
</section>
|
|
116
|
-
|
|
117
|
-
<!-- Props -->
|
|
118
|
-
<section>
|
|
119
|
-
<h2 class="text-lg font-semibold mb-4">Props</h2>
|
|
120
|
-
<table class="w-full text-sm">
|
|
121
|
-
<thead>
|
|
122
|
-
<tr class="border-b border-neutral-200 dark:border-neutral-700">
|
|
123
|
-
<th class="text-left py-3 px-4">Prop</th>
|
|
124
|
-
<th class="text-left py-3 px-4">Type</th>
|
|
125
|
-
<th class="text-left py-3 px-4">Default</th>
|
|
126
|
-
<th class="text-left py-3 px-4">Description</th>
|
|
127
|
-
</tr>
|
|
128
|
-
</thead>
|
|
129
|
-
<tbody class="divide-y divide-neutral-200 dark:divide-neutral-700">
|
|
130
|
-
<tr><td class="py-3 px-4 font-mono text-xs">color</td><td class="py-3 px-4">String</td><td class="py-3 px-4">primary</td><td class="py-3 px-4">Any Tailwind color, white, or neutral</td></tr>
|
|
131
|
-
<tr><td class="py-3 px-4 font-mono text-xs">spacing</td><td class="py-3 px-4">String</td><td class="py-3 px-4">py-16</td><td class="py-3 px-4">Tailwind padding class (e.g., py-8)</td></tr>
|
|
132
|
-
<tr><td class="py-3 px-4 font-mono text-xs">intensity</td><td class="py-3 px-4">String</td><td class="py-3 px-4">medium</td><td class="py-3 px-4">none, subtle, medium, strong</td></tr>
|
|
133
|
-
<tr><td class="py-3 px-4 font-mono text-xs">height</td><td class="py-3 px-4">String</td><td class="py-3 px-4">default</td><td class="py-3 px-4">thin (1px), default (2px), thick (4px)</td></tr>
|
|
134
|
-
</tbody>
|
|
135
|
-
</table>
|
|
136
|
-
</section>
|
|
137
|
-
|
|
138
|
-
<!-- Code Example -->
|
|
139
|
-
<section>
|
|
140
|
-
<h2 class="text-lg font-semibold mb-4">Code Example</h2>
|
|
141
|
-
<CodeExample title="Glow Divider Usage" :code="codeExample" />
|
|
142
|
-
</section>
|
|
143
|
-
</div>
|
|
144
|
-
</div>
|
|
145
|
-
</template>
|
|
146
|
-
|
|
147
|
-
<script setup>
|
|
148
|
-
const codeExample = `<!-- Basic divider with glow -->
|
|
149
|
-
<XMarkDividerGlow />
|
|
150
|
-
|
|
151
|
-
<!-- Different colors -->
|
|
152
|
-
<XMarkDividerGlow color="primary" />
|
|
153
|
-
<XMarkDividerGlow color="cyan" />
|
|
154
|
-
<XMarkDividerGlow color="white" />
|
|
155
|
-
<XMarkDividerGlow color="neutral" />
|
|
156
|
-
|
|
157
|
-
<!-- Intensity levels -->
|
|
158
|
-
<XMarkDividerGlow intensity="none" />
|
|
159
|
-
<XMarkDividerGlow intensity="subtle" />
|
|
160
|
-
<XMarkDividerGlow intensity="medium" />
|
|
161
|
-
<XMarkDividerGlow intensity="strong" />
|
|
162
|
-
|
|
163
|
-
<!-- Line height -->
|
|
164
|
-
<XMarkDividerGlow height="thin" />
|
|
165
|
-
<XMarkDividerGlow height="default" />
|
|
166
|
-
<XMarkDividerGlow height="thick" />
|
|
167
|
-
|
|
168
|
-
<!-- Custom spacing (padding) -->
|
|
169
|
-
<XMarkDividerGlow spacing="py-8" />
|
|
170
|
-
<XMarkDividerGlow spacing="py-24" />
|
|
171
|
-
|
|
172
|
-
<!-- Combined -->
|
|
173
|
-
<XMarkDividerGlow
|
|
174
|
-
color="cyan"
|
|
175
|
-
intensity="strong"
|
|
176
|
-
height="thick"
|
|
177
|
-
spacing="py-12"
|
|
178
|
-
/>`
|
|
179
|
-
</script>
|