srcdev-nuxt-components 9.3.7 → 9.3.8
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/.claude/hooks/check-component-update.sh +30 -1
- package/.claude/skills/components/breadcrumb.md +49 -0
- package/.claude/skills/components/content-docs.md +1 -1
- package/.claude/skills/components/service-detail.md +156 -0
- package/.claude/skills/components/services-card-grid.md +9 -9
- package/.claude/skills/components/services-card.md +82 -30
- package/.claude/skills/index.md +3 -1
- package/.claude/skills/qa-panel.md +2 -2
- package/.vscode/srcdev-component-breadcrumb.code-snippets +14 -0
- package/.vscode/srcdev-component-service-detail.code-snippets +49 -0
- package/.vscode/srcdev-component-services-card.code-snippets +108 -0
- package/app/components/01.atoms/navigation/breadcrumb/Breadcrumb.vue +94 -0
- package/app/components/01.atoms/navigation/breadcrumb/CONSUMER-STYLING.md +32 -0
- package/app/components/01.atoms/navigation/breadcrumb/stories/Breadcrumb.stories.ts +87 -0
- package/app/components/01.atoms/navigation/breadcrumb/tests/Breadcrumb.spec.ts +87 -0
- package/app/components/01.atoms/navigation/breadcrumb/tests/__snapshots__/Breadcrumb.spec.ts.snap +13 -0
- package/app/components/03.organisms/services/service-detail/CONSUMER-STYLING.md +181 -0
- package/app/components/03.organisms/services/service-detail/ServiceDetail.vue +480 -0
- package/app/components/03.organisms/services/service-detail/stories/ServiceDetail.stories.ts +282 -0
- package/app/components/03.organisms/services/service-detail/tests/ServiceDetail.spec.ts +270 -0
- package/app/components/03.organisms/services/service-detail/tests/__snapshots__/ServiceDetail.spec.ts.snap +99 -0
- package/app/components/03.organisms/services/services-card/CONSUMER-STYLING.md +129 -0
- package/app/components/03.organisms/services/services-card/ServicesCard.vue +153 -39
- package/app/components/03.organisms/services/services-card/stories/ServicesCard.stories.ts +65 -0
- package/app/components/03.organisms/services/services-card/tests/ServicesCard.spec.ts +82 -0
- package/app/components/03.organisms/services/services-card/tests/__snapshots__/ServicesCard.spec.ts.snap +13 -5
- package/app/components/03.organisms/services/services-grids/ServicesCardGrid.vue +3 -7
- package/app/components/03.organisms/services/services-grids/stories/ServicesCardGrid.stories.ts +126 -2
- package/app/components/03.organisms/services/services-grids/stories/ServicesSectionGrid.stories.ts +6 -0
- package/app/components/03.organisms/services/services-grids/tests/__snapshots__/ServicesCardGrid.spec.ts.snap +51 -27
- package/app/types/components/breadcrumb.ts +4 -0
- package/app/types/components/index.ts +1 -0
- package/package.json +2 -2
- package/app/pages/auto-grid.vue +0 -328
- package/app/pages/banner-video.vue +0 -238
- package/app/pages/forms/examples/buttons/index.vue +0 -259
- package/app/pages/forms/examples/material/checkbox-radio-panels.vue +0 -244
- package/app/pages/forms/examples/material/cssbattle.vue +0 -60
- package/app/pages/forms/examples/material/text-fields.vue +0 -910
- package/app/pages/grid-stack.vue +0 -252
- package/app/pages/index.vue +0 -127
- package/app/pages/page-hero-highlights.vue +0 -204
- package/app/pages/samaritan.vue +0 -327
- package/app/pages/typography/hero-text.vue +0 -97
- package/app/pages/typography/index.vue +0 -39
- package/app/pages/typography/page-body.vue +0 -171
- package/app/pages/typography/page-heading.vue +0 -76
- package/app/pages/typography/page-link.vue +0 -103
- package/app/pages/ui/accordian.vue +0 -211
- package/app/pages/ui/anchor-scroll-tab-navigation.vue +0 -191
- package/app/pages/ui/anchor-scroll.vue +0 -367
- package/app/pages/ui/animated-svg-text.vue +0 -85
- package/app/pages/ui/block-decorators.vue +0 -142
- package/app/pages/ui/card-core.vue +0 -82
- package/app/pages/ui/carousel-basic.vue +0 -292
- package/app/pages/ui/carousel-flip.vue +0 -449
- package/app/pages/ui/carousel-infinite.vue +0 -260
- package/app/pages/ui/clipped-panels.vue +0 -101
- package/app/pages/ui/contact-section.vue +0 -323
- package/app/pages/ui/container-glow.vue +0 -106
- package/app/pages/ui/content-width.vue +0 -126
- package/app/pages/ui/deep-expanding-menu.vue +0 -138
- package/app/pages/ui/display-avatar.vue +0 -253
- package/app/pages/ui/display-banner.vue +0 -78
- package/app/pages/ui/display-chip.vue +0 -367
- package/app/pages/ui/display-details.vue +0 -171
- package/app/pages/ui/display-dialog.vue +0 -344
- package/app/pages/ui/display-pill.vue +0 -396
- package/app/pages/ui/display-prompt.vue +0 -284
- package/app/pages/ui/display-toast.vue +0 -311
- package/app/pages/ui/expanding-panel.vue +0 -326
- package/app/pages/ui/glowing-border.vue +0 -111
- package/app/pages/ui/layout-content-docs.vue +0 -72
- package/app/pages/ui/layout-grid-a.vue +0 -96
- package/app/pages/ui/layout-grid-b.vue +0 -132
- package/app/pages/ui/magnetic-navigation.vue +0 -50
- package/app/pages/ui/marquee-scroller.vue +0 -99
- package/app/pages/ui/mask-element.vue +0 -104
- package/app/pages/ui/masonry-columns.vue +0 -55
- package/app/pages/ui/masonry-grid-ordered-experiment.vue +0 -79
- package/app/pages/ui/masonry-grid-ordered.vue +0 -56
- package/app/pages/ui/masonry-grid-sorted.vue +0 -55
- package/app/pages/ui/masonry-grid.vue +0 -55
- package/app/pages/ui/navigation/navigation-horizontal.vue +0 -484
- package/app/pages/ui/navigation/site-navigation/about.vue +0 -36
- package/app/pages/ui/navigation/site-navigation/contact.vue +0 -39
- package/app/pages/ui/navigation/site-navigation/index.vue +0 -38
- package/app/pages/ui/navigation/site-navigation/portfolio.vue +0 -43
- package/app/pages/ui/navigation/site-navigation/services.vue +0 -42
- package/app/pages/ui/navigation/tab-navigation.vue +0 -493
- package/app/pages/ui/page-row.vue +0 -127
- package/app/pages/ui/price-list.vue +0 -65
- package/app/pages/ui/profile-section.vue +0 -142
- package/app/pages/ui/qr-code/[componentName].vue +0 -218
- package/app/pages/ui/rotating-carousel.vue +0 -154
- package/app/pages/ui/scroll-reveal-image.vue +0 -483
- package/app/pages/ui/section-parallax.vue +0 -54
- package/app/pages/ui/services/colour-finder.vue +0 -43
- package/app/pages/ui/services/services-cards.vue +0 -57
- package/app/pages/ui/services/services-section/[slug].vue +0 -61
- package/app/pages/ui/services/services-sections-compact.vue +0 -64
- package/app/pages/ui/settings.vue +0 -54
- package/app/pages/ui/simple-grid.vue +0 -55
- package/app/pages/ui/slider-gallery.vue +0 -261
- package/app/pages/ui/tabs-y.vue +0 -107
- package/app/pages/ui/tabs.vue +0 -189
- package/app/pages/ui/tooltips.vue +0 -104
- package/app/pages/ui/wipe-away-vertical.vue +0 -129
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div>
|
|
3
|
-
<NuxtLayout name="default">
|
|
4
|
-
<template #layout-content>
|
|
5
|
-
<PageRow tag="div" variant="popout" :style-class-passthrough="['mbs-32']">
|
|
6
|
-
<h1 class="page-heading-2">Deep Expanding Menu</h1>
|
|
7
|
-
<p>
|
|
8
|
-
A horizontal navigation menu using the CSS Popover API. Top-level items can be direct links or toggle a
|
|
9
|
-
panel of child links below them.
|
|
10
|
-
</p>
|
|
11
|
-
</PageRow>
|
|
12
|
-
|
|
13
|
-
<PageRow tag="div" variant="popout" :style-class-passthrough="['mbs-32']">
|
|
14
|
-
<h2 class="page-heading-3 mbe-16">Basic example</h2>
|
|
15
|
-
<div class="demo-surface">
|
|
16
|
-
<DeepExpandingMenu :nav-links="basicLinks" />
|
|
17
|
-
</div>
|
|
18
|
-
</PageRow>
|
|
19
|
-
|
|
20
|
-
<PageRow tag="div" variant="popout" :style-class-passthrough="['mbs-32']">
|
|
21
|
-
<h2 class="page-heading-3 mbe-16">Mixed links and groups</h2>
|
|
22
|
-
<div class="demo-surface">
|
|
23
|
-
<DeepExpandingMenu :nav-links="mixedLinks" />
|
|
24
|
-
</div>
|
|
25
|
-
</PageRow>
|
|
26
|
-
|
|
27
|
-
<PageRow tag="div" variant="popout" :style-class-passthrough="['mbs-32', 'mbe-64']">
|
|
28
|
-
<h2 class="page-heading-3 mbe-16">Many child links</h2>
|
|
29
|
-
<div class="demo-surface">
|
|
30
|
-
<DeepExpandingMenu :nav-links="richLinks" />
|
|
31
|
-
</div>
|
|
32
|
-
</PageRow>
|
|
33
|
-
</template>
|
|
34
|
-
</NuxtLayout>
|
|
35
|
-
</div>
|
|
36
|
-
</template>
|
|
37
|
-
|
|
38
|
-
<script setup lang="ts">
|
|
39
|
-
import type { ResponsiveHeaderNavItem } from "~/types/components";
|
|
40
|
-
|
|
41
|
-
definePageMeta({
|
|
42
|
-
layout: false,
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
useHead({
|
|
46
|
-
title: "Deep Expanding Menu",
|
|
47
|
-
meta: [{ name: "description", content: "Examples of Deep Expanding Menu UI Component" }],
|
|
48
|
-
bodyAttrs: {
|
|
49
|
-
class: "deep-expanding-menu-page",
|
|
50
|
-
},
|
|
51
|
-
});
|
|
52
|
-
|
|
53
|
-
const basicLinks: ResponsiveHeaderNavItem[] = [
|
|
54
|
-
{ name: "Home", path: "/" },
|
|
55
|
-
{ name: "About", path: "#about" },
|
|
56
|
-
{
|
|
57
|
-
name: "Services",
|
|
58
|
-
childLinksTitle: "Our Services",
|
|
59
|
-
childLinks: [
|
|
60
|
-
{ name: "Consulting", path: "#consulting" },
|
|
61
|
-
{ name: "Design", path: "#design" },
|
|
62
|
-
{ name: "Development", path: "#development" },
|
|
63
|
-
],
|
|
64
|
-
},
|
|
65
|
-
{ name: "Contact", path: "#contact" },
|
|
66
|
-
];
|
|
67
|
-
|
|
68
|
-
const mixedLinks: ResponsiveHeaderNavItem[] = [
|
|
69
|
-
{ name: "Home", path: "/" },
|
|
70
|
-
{
|
|
71
|
-
name: "Products",
|
|
72
|
-
childLinksTitle: "Browse Products",
|
|
73
|
-
childLinks: [
|
|
74
|
-
{ name: "Electronics", path: "#electronics" },
|
|
75
|
-
{ name: "Clothing", path: "#clothing" },
|
|
76
|
-
{ name: "Books", path: "#books" },
|
|
77
|
-
{ name: "Accessories", path: "#accessories" },
|
|
78
|
-
],
|
|
79
|
-
},
|
|
80
|
-
{
|
|
81
|
-
name: "Company",
|
|
82
|
-
childLinksTitle: "About Us",
|
|
83
|
-
childLinks: [
|
|
84
|
-
{ name: "Our Story", path: "#story" },
|
|
85
|
-
{ name: "Team", path: "#team" },
|
|
86
|
-
{ name: "Careers", path: "#careers" },
|
|
87
|
-
],
|
|
88
|
-
},
|
|
89
|
-
{ name: "Blog", path: "#blog" },
|
|
90
|
-
{ name: "Contact", path: "#contact" },
|
|
91
|
-
];
|
|
92
|
-
|
|
93
|
-
const richLinks: ResponsiveHeaderNavItem[] = [
|
|
94
|
-
{
|
|
95
|
-
name: "Components",
|
|
96
|
-
childLinksTitle: "UI Components",
|
|
97
|
-
childLinks: [
|
|
98
|
-
{ name: "Carousel", path: "/ui/carousel-basic" },
|
|
99
|
-
{ name: "Accordian", path: "/ui/accordian" },
|
|
100
|
-
{ name: "Tabs", path: "/ui/tabs" },
|
|
101
|
-
{ name: "Dialogs", path: "/ui/display-dialog" },
|
|
102
|
-
{ name: "Tooltips", path: "/ui/tooltips" },
|
|
103
|
-
{ name: "Display Toast", path: "/ui/display-toast" },
|
|
104
|
-
{ name: "Card Core", path: "/ui/card-core" },
|
|
105
|
-
{ name: "Glowing Border", path: "/ui/glowing-border" },
|
|
106
|
-
],
|
|
107
|
-
},
|
|
108
|
-
{
|
|
109
|
-
name: "Layouts",
|
|
110
|
-
childLinksTitle: "Layout Components",
|
|
111
|
-
childLinks: [
|
|
112
|
-
{ name: "Simple Grid", path: "/ui/simple-grid" },
|
|
113
|
-
{ name: "Masonry Grid", path: "/ui/masonry-grid" },
|
|
114
|
-
{ name: "Block Decorators", path: "/ui/block-decorators" },
|
|
115
|
-
],
|
|
116
|
-
},
|
|
117
|
-
{
|
|
118
|
-
name: "Navigation",
|
|
119
|
-
childLinksTitle: "Navigation Components",
|
|
120
|
-
childLinks: [
|
|
121
|
-
{ name: "Site Navigation", path: "/ui/navigation/site-navigation" },
|
|
122
|
-
{ name: "Nav Horizontal", path: "/ui/navigation/navigation-horizontal" },
|
|
123
|
-
{ name: "Deep Expanding Menu", path: "/ui/deep-expanding-menu" },
|
|
124
|
-
{ name: "Magnetic Navigation", path: "/ui/magnetic-navigation" },
|
|
125
|
-
],
|
|
126
|
-
},
|
|
127
|
-
];
|
|
128
|
-
</script>
|
|
129
|
-
|
|
130
|
-
<style lang="css">
|
|
131
|
-
.demo-surface {
|
|
132
|
-
/* background-color: light-dark(var(--slate-01), var(--slate-09)); */
|
|
133
|
-
/* border: 1px solid light-dark(var(--slate-03), var(--slate-07)); */
|
|
134
|
-
border-radius: 1.2rem;
|
|
135
|
-
padding: 2.4rem;
|
|
136
|
-
overflow: visible;
|
|
137
|
-
}
|
|
138
|
-
</style>
|
|
@@ -1,253 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div>
|
|
3
|
-
<NuxtLayout name="default">
|
|
4
|
-
<template #layout-content>
|
|
5
|
-
<PageRow tag="div" variant="popout">
|
|
6
|
-
<h1 class="page-heading-2">Display Avatar</h1>
|
|
7
|
-
|
|
8
|
-
<form>
|
|
9
|
-
<div class="form-row">
|
|
10
|
-
<div class="form-col">
|
|
11
|
-
<label for="size">Size - {{ chipConfig.size }}</label>
|
|
12
|
-
<input @input="changeSize" id="size" type="range" min="1" max="24" :value="12" />
|
|
13
|
-
</div>
|
|
14
|
-
<div class="form-col">
|
|
15
|
-
<label for="maskWidth">Mask Width - {{ chipConfig.maskWidth }}</label>
|
|
16
|
-
<input @input="changeMaskWidth" id="maskWidth" type="range" min="0" max="12" :value="4" />
|
|
17
|
-
</div>
|
|
18
|
-
<div class="form-col">
|
|
19
|
-
<label for="offset">Offset - {{ chipConfig.offset }}</label>
|
|
20
|
-
<input @input="changeOffset" id="offset" type="range" min="-12" max="12" :value="2" />
|
|
21
|
-
</div>
|
|
22
|
-
<div class="form-col">
|
|
23
|
-
<label for="angle">Angle - {{ chipConfig.angle }}</label>
|
|
24
|
-
<input @input="changeAngle" id="angle" type="range" min="0" max="360" :value="45" />
|
|
25
|
-
</div>
|
|
26
|
-
</div>
|
|
27
|
-
</form>
|
|
28
|
-
|
|
29
|
-
<section>
|
|
30
|
-
<div class="dl">
|
|
31
|
-
<div class="dt">Alt tag only</div>
|
|
32
|
-
<div class="dd">
|
|
33
|
-
<DisplayAvatar alt="Joe Bloggs" size="s" />
|
|
34
|
-
</div>
|
|
35
|
-
</div>
|
|
36
|
-
</section>
|
|
37
|
-
|
|
38
|
-
<section>
|
|
39
|
-
<div class="dl">
|
|
40
|
-
<div class="dt">Has Avatar image</div>
|
|
41
|
-
<div class="dd">
|
|
42
|
-
<DisplayAvatar
|
|
43
|
-
src="https://github.com/srcdev.png"
|
|
44
|
-
alt="Joe Bloggs"
|
|
45
|
-
:style-class-passthrough="['online']"
|
|
46
|
-
/>
|
|
47
|
-
</div>
|
|
48
|
-
</div>
|
|
49
|
-
</section>
|
|
50
|
-
|
|
51
|
-
<section>
|
|
52
|
-
<div class="dl">
|
|
53
|
-
<div class="dt">Has Avatar image and Chip</div>
|
|
54
|
-
<div class="dd">
|
|
55
|
-
<DisplayAvatar
|
|
56
|
-
src="https://github.com/srcdev.png"
|
|
57
|
-
alt="Joe Bloggs"
|
|
58
|
-
:chip="chipConfig"
|
|
59
|
-
:style-class-passthrough="['online']"
|
|
60
|
-
/>
|
|
61
|
-
</div>
|
|
62
|
-
</div>
|
|
63
|
-
</section>
|
|
64
|
-
|
|
65
|
-
<section>
|
|
66
|
-
<div class="dl">
|
|
67
|
-
<div class="dt">Has Avatar image and Chip (with icon)</div>
|
|
68
|
-
<div class="dd">
|
|
69
|
-
<DisplayAvatar
|
|
70
|
-
src="https://github.com/srcdev.png"
|
|
71
|
-
alt="Joe Bloggs"
|
|
72
|
-
:chip="{ ...chipConfig, icon: 'material-symbols:star-outline', size: '16px', maskWidth: '6px' }"
|
|
73
|
-
:style-class-passthrough="['online']"
|
|
74
|
-
/>
|
|
75
|
-
</div>
|
|
76
|
-
</div>
|
|
77
|
-
</section>
|
|
78
|
-
|
|
79
|
-
<section>
|
|
80
|
-
<div class="dl">
|
|
81
|
-
<div class="dt">Has Avatar Icon</div>
|
|
82
|
-
<div class="dd">
|
|
83
|
-
<DisplayAvatar alt="" :style-class-passthrough="['online']">
|
|
84
|
-
<template #icon><Icon name="material-symbols:star-outline" class="avatar-icon" /></template>
|
|
85
|
-
</DisplayAvatar>
|
|
86
|
-
</div>
|
|
87
|
-
</div>
|
|
88
|
-
</section>
|
|
89
|
-
|
|
90
|
-
<section>
|
|
91
|
-
<div class="dl">
|
|
92
|
-
<div class="dt">Has Avatar image and Chip (text single character)</div>
|
|
93
|
-
<div class="dd">
|
|
94
|
-
<DisplayAvatar
|
|
95
|
-
src="https://github.com/srcdev.png"
|
|
96
|
-
alt="Joe Bloggs"
|
|
97
|
-
:chip="{ ...chipConfig, label: '3', size: '16px', maskWidth: '6px' }"
|
|
98
|
-
:style-class-passthrough="['online']"
|
|
99
|
-
/>
|
|
100
|
-
</div>
|
|
101
|
-
</div>
|
|
102
|
-
</section>
|
|
103
|
-
|
|
104
|
-
<section>
|
|
105
|
-
<div class="dl">
|
|
106
|
-
<div class="dt">Has Avatar image and Chip (text 2 character)</div>
|
|
107
|
-
<div class="dd">
|
|
108
|
-
<DisplayAvatar
|
|
109
|
-
src="https://github.com/srcdev.png"
|
|
110
|
-
alt="Joe Bloggs"
|
|
111
|
-
:chip="{ ...chipConfig, label: '+2', size: '16px', maskWidth: '6px' }"
|
|
112
|
-
:style-class-passthrough="['online']"
|
|
113
|
-
/>
|
|
114
|
-
</div>
|
|
115
|
-
</div>
|
|
116
|
-
</section>
|
|
117
|
-
|
|
118
|
-
<section>
|
|
119
|
-
<div class="dl">
|
|
120
|
-
<div class="dt">Round</div>
|
|
121
|
-
<div class="dd">
|
|
122
|
-
<DisplayChip shape="circle" :config="chipConfig" :style-class-passthrough="['online']">
|
|
123
|
-
<div class="demo-content round">
|
|
124
|
-
<Icon name="akar-icons:info" size="24" color="white" />
|
|
125
|
-
</div>
|
|
126
|
-
</DisplayChip>
|
|
127
|
-
</div>
|
|
128
|
-
|
|
129
|
-
<div class="dt">Square</div>
|
|
130
|
-
<div class="dd">
|
|
131
|
-
<DisplayChip shape="square" :config="chipConfig" :style-class-passthrough="['idle']">
|
|
132
|
-
<div class="demo-content square">
|
|
133
|
-
<Icon name="akar-icons:info" size="24" color="white" />
|
|
134
|
-
</div>
|
|
135
|
-
</DisplayChip>
|
|
136
|
-
</div>
|
|
137
|
-
</div>
|
|
138
|
-
</section>
|
|
139
|
-
</PageRow>
|
|
140
|
-
</template>
|
|
141
|
-
</NuxtLayout>
|
|
142
|
-
</div>
|
|
143
|
-
</template>
|
|
144
|
-
|
|
145
|
-
<script setup lang="ts">
|
|
146
|
-
import { type DisplayChipConfig } from "~/types/components";
|
|
147
|
-
definePageMeta({
|
|
148
|
-
layout: false,
|
|
149
|
-
});
|
|
150
|
-
|
|
151
|
-
useHead({
|
|
152
|
-
title: "UI Display Avatar",
|
|
153
|
-
meta: [{ name: "description", content: "Examples of UI Display Avatars" }],
|
|
154
|
-
bodyAttrs: {
|
|
155
|
-
class: "ui-display-avatar-page",
|
|
156
|
-
},
|
|
157
|
-
});
|
|
158
|
-
|
|
159
|
-
const chipConfig = reactive<DisplayChipConfig>({
|
|
160
|
-
size: "12px",
|
|
161
|
-
maskWidth: "4px",
|
|
162
|
-
offset: "2px",
|
|
163
|
-
angle: "45deg",
|
|
164
|
-
});
|
|
165
|
-
|
|
166
|
-
const changeSize = (e: Event) => {
|
|
167
|
-
const target = e.target as HTMLInputElement;
|
|
168
|
-
chipConfig.size = `${target.value}px`;
|
|
169
|
-
};
|
|
170
|
-
|
|
171
|
-
const changeMaskWidth = (e: Event) => {
|
|
172
|
-
const target = e.target as HTMLInputElement;
|
|
173
|
-
chipConfig.maskWidth = `${target.value}px`;
|
|
174
|
-
};
|
|
175
|
-
|
|
176
|
-
const changeOffset = (e: Event) => {
|
|
177
|
-
const target = e.target as HTMLInputElement;
|
|
178
|
-
chipConfig.offset = `${target.value}px`;
|
|
179
|
-
};
|
|
180
|
-
|
|
181
|
-
const changeAngle = (e: Event) => {
|
|
182
|
-
const target = e.target as HTMLInputElement;
|
|
183
|
-
chipConfig.angle = `${target.value}deg`;
|
|
184
|
-
};
|
|
185
|
-
</script>
|
|
186
|
-
|
|
187
|
-
<style lang="css">
|
|
188
|
-
.ui-display-avatar-page {
|
|
189
|
-
form {
|
|
190
|
-
margin-bottom: 2rem;
|
|
191
|
-
|
|
192
|
-
.form-row {
|
|
193
|
-
.form-col {
|
|
194
|
-
display: grid;
|
|
195
|
-
grid-template-columns: 200px 200px;
|
|
196
|
-
gap: 1rem;
|
|
197
|
-
padding: 0.5rem 0;
|
|
198
|
-
|
|
199
|
-
label {
|
|
200
|
-
font-weight: bold;
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
input {
|
|
204
|
-
padding: 0.5rem;
|
|
205
|
-
border: 1px solid var(--slate-07);
|
|
206
|
-
border-radius: 4px;
|
|
207
|
-
font-size: 1rem;
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
section {
|
|
213
|
-
margin-top: 2rem;
|
|
214
|
-
|
|
215
|
-
.dl {
|
|
216
|
-
display: grid;
|
|
217
|
-
grid-template-columns: auto auto;
|
|
218
|
-
gap: 2rem;
|
|
219
|
-
align-items: center;
|
|
220
|
-
justify-content: start;
|
|
221
|
-
|
|
222
|
-
/* background-color: var(--slate-05); */
|
|
223
|
-
|
|
224
|
-
.dt {
|
|
225
|
-
font-weight: bold;
|
|
226
|
-
}
|
|
227
|
-
.dd {
|
|
228
|
-
margin: 0;
|
|
229
|
-
|
|
230
|
-
.demo-content {
|
|
231
|
-
display: flex;
|
|
232
|
-
align-items: center;
|
|
233
|
-
justify-content: center;
|
|
234
|
-
|
|
235
|
-
&.round {
|
|
236
|
-
width: 50px;
|
|
237
|
-
height: 50px;
|
|
238
|
-
background-color: var(--slate-10);
|
|
239
|
-
border-radius: 50%;
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
&.square {
|
|
243
|
-
width: 50px;
|
|
244
|
-
height: 50px;
|
|
245
|
-
background-color: var(--slate-10);
|
|
246
|
-
border-radius: 4px;
|
|
247
|
-
}
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
}
|
|
251
|
-
}
|
|
252
|
-
}
|
|
253
|
-
</style>
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div>
|
|
3
|
-
<NuxtLayout name="default">
|
|
4
|
-
<template #layout-content>
|
|
5
|
-
<PageRow tag="div" variant="full" :style-class-passthrough="['mbe-20']">
|
|
6
|
-
<h1 class="page-heading-2">DisplayBanner</h1>
|
|
7
|
-
</PageRow>
|
|
8
|
-
|
|
9
|
-
<DisplayBanner tag="div" :style-class-passthrough="['mbe-20']">
|
|
10
|
-
<template #canvas>
|
|
11
|
-
<NuxtImg src="/images/banners/test-banner/banner-ginger-desktop.jpeg" class="image" alt="" />
|
|
12
|
-
</template>
|
|
13
|
-
<template #layout-content>
|
|
14
|
-
<h2 class="page-heading-2">Display Banner Content</h2>
|
|
15
|
-
</template>
|
|
16
|
-
</DisplayBanner>
|
|
17
|
-
</template>
|
|
18
|
-
</NuxtLayout>
|
|
19
|
-
</div>
|
|
20
|
-
</template>
|
|
21
|
-
|
|
22
|
-
<script setup lang="ts">
|
|
23
|
-
definePageMeta({
|
|
24
|
-
layout: false,
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
useHead({
|
|
28
|
-
title: "Display Banner",
|
|
29
|
-
meta: [
|
|
30
|
-
{
|
|
31
|
-
name: "description",
|
|
32
|
-
content: "Display Banner Meta description content",
|
|
33
|
-
},
|
|
34
|
-
],
|
|
35
|
-
bodyAttrs: {
|
|
36
|
-
class: "display-banner-page",
|
|
37
|
-
},
|
|
38
|
-
});
|
|
39
|
-
</script>
|
|
40
|
-
|
|
41
|
-
<style lang="css">
|
|
42
|
-
.display-banner-page {
|
|
43
|
-
.display-banner {
|
|
44
|
-
.canvas {
|
|
45
|
-
grid-area: banner;
|
|
46
|
-
width: 100%;
|
|
47
|
-
height: 150px;
|
|
48
|
-
|
|
49
|
-
@container (min-width: 768px) {
|
|
50
|
-
height: 200px;
|
|
51
|
-
}
|
|
52
|
-
@container (min-width: 1024px) {
|
|
53
|
-
height: 250px;
|
|
54
|
-
}
|
|
55
|
-
@container (min-width: 1280px) {
|
|
56
|
-
height: 300px;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
transition: height 0.3s ease-in-out;
|
|
60
|
-
|
|
61
|
-
.image {
|
|
62
|
-
object-fit: cover;
|
|
63
|
-
width: 100%;
|
|
64
|
-
height: 100%;
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
.content {
|
|
68
|
-
grid-area: banner;
|
|
69
|
-
align-self: center;
|
|
70
|
-
justify-self: center;
|
|
71
|
-
|
|
72
|
-
h2 {
|
|
73
|
-
color: var(--slate-00);
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
</style>
|