srcdev-nuxt-components 9.4.9 → 9.4.11
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/commands/migrate-component.md +38 -6
- package/.claude/component-ledger/audit.json +1 -1
- package/.claude/component-ledger/build.mjs +26 -0
- package/.claude/component-ledger/output.html +8 -3
- package/.claude/component-ledger/template.html +7 -2
- package/.claude/skills/component-dynamic-slots.md +1 -1
- package/.claude/skills/components/alert-mask-core.md +84 -0
- package/.claude/skills/components/canvas-switcher.md +1 -1
- package/.claude/skills/components/carousel-flip.md +112 -168
- package/.claude/skills/components/container-glow.md +123 -0
- package/.claude/skills/components/dashboard-quad-grid.md +98 -0
- package/.claude/skills/components/dashboard-stats-grid.md +103 -0
- package/.claude/skills/components/display-theme-switch.md +60 -0
- package/.claude/skills/components/glowing-border.md +66 -0
- package/.claude/skills/components/input-number-core.md +214 -0
- package/.claude/skills/components/input-range-core.md +142 -0
- package/.claude/skills/components/input-select-core.md +151 -0
- package/.claude/skills/components/input-text-core.md +16 -0
- package/.claude/skills/components/input-textarea-core.md +154 -0
- package/.claude/skills/components/section-parallax.md +32 -10
- package/.claude/skills/components/select-menu.md +195 -0
- package/.claude/skills/components/toggle-switch-core.md +150 -0
- package/.claude/skills/components/ui-block-decorated.md +56 -0
- package/.claude/skills/components/wipe-away-vertical.md +98 -0
- package/.claude/skills/icon-sets.md +1 -1
- package/.claude/skills/index.md +15 -1
- package/.vscode/css-custom-data.json +38 -0
- package/.vscode/settings.json +3 -0
- package/.vscode/srcdev-component-alert-mask-core.code-snippets +31 -0
- package/.vscode/srcdev-component-carousel-flip.code-snippets +41 -0
- package/.vscode/srcdev-component-container-glow.code-snippets +33 -0
- package/.vscode/srcdev-component-dashboard-quad-grid.code-snippets +36 -0
- package/.vscode/srcdev-component-dashboard-stats-grid.code-snippets +35 -0
- package/.vscode/srcdev-component-display-theme-switch.code-snippets +27 -0
- package/.vscode/srcdev-component-glowing-border.code-snippets +23 -0
- package/.vscode/srcdev-component-input-number.code-snippets +65 -0
- package/.vscode/srcdev-component-input-range.code-snippets +85 -0
- package/.vscode/srcdev-component-input-select.code-snippets +42 -0
- package/.vscode/srcdev-component-input-textarea.code-snippets +40 -0
- package/.vscode/srcdev-component-section-parallax.code-snippets +27 -0
- package/.vscode/srcdev-component-select-menu.code-snippets +65 -0
- package/.vscode/srcdev-component-toggle-switch.code-snippets +49 -0
- package/.vscode/srcdev-component-ui-block-decorated.code-snippets +24 -0
- package/.vscode/srcdev-component-wipe-away-vertical.code-snippets +25 -0
- package/README.md +18 -37
- package/app/components/{alert-mask → 01.atoms/alert-mask}/AlertMaskCore.vue +16 -17
- package/app/components/01.atoms/alert-mask/CONSUMER-STYLING.md +46 -0
- package/app/components/01.atoms/alert-mask/stories/AlertMaskCore.stories.ts +79 -0
- package/app/components/{alert-mask → 01.atoms/alert-mask}/tests/AlertMaskCore.spec.ts +10 -10
- package/app/components/01.atoms/animations/container-glow/CONSUMER-STYLING.md +86 -0
- package/app/components/01.atoms/animations/container-glow/ContainerGlow.vue +299 -0
- package/app/components/01.atoms/animations/container-glow/stories/ContainerGlow.stories.ts +175 -0
- package/app/components/01.atoms/animations/container-glow/tests/ContainerGlow.spec.ts +131 -0
- package/app/components/01.atoms/animations/container-glow/tests/__snapshots__/ContainerGlow.spec.ts.snap +14 -0
- package/app/components/01.atoms/animations/glowing-border/CONSUMER-STYLING.md +61 -0
- package/app/components/01.atoms/animations/glowing-border/GlowingBorder.vue +132 -0
- package/app/components/01.atoms/animations/glowing-border/stories/GlowingBorder.stories.ts +165 -0
- package/app/components/01.atoms/animations/glowing-border/tests/GlowingBorder.spec.ts +94 -0
- package/app/components/01.atoms/animations/glowing-border/tests/__snapshots__/GlowingBorder.spec.ts.snap +3 -0
- package/app/components/01.atoms/animations/marquee-scroller/CONSUMER-STYLING.md +1 -1
- package/app/components/01.atoms/animations/marquee-scroller/MarqueeScroller.vue +1 -1
- package/app/components/01.atoms/animations/marquee-scroller/stories/MarqueeScroller.stories.ts +1 -1
- package/app/components/01.atoms/animations/section-parallax/CONSUMER-STYLING.md +44 -0
- package/app/components/{parallax → 01.atoms/animations/section-parallax}/SectionParallax.vue +11 -10
- package/app/components/01.atoms/animations/section-parallax/stories/SectionParallax.stories.ts +98 -0
- package/app/components/01.atoms/animations/section-parallax/tests/SectionParallax.spec.ts +102 -0
- package/app/components/01.atoms/animations/section-parallax/tests/__snapshots__/SectionParallax.spec.ts.snap +9 -0
- package/app/components/01.atoms/animations/view-timeline/CONSUMER-STYLING.md +70 -0
- package/app/components/01.atoms/animations/view-timeline/WipeAwayVertical.vue +181 -0
- package/app/components/01.atoms/animations/view-timeline/stories/WipeAwayVertical.stories.ts +269 -0
- package/app/components/01.atoms/animations/view-timeline/tests/WipeAwayVertical.spec.ts +127 -0
- package/app/components/01.atoms/canvas-switcher/CONSUMER-STYLING.md +3 -3
- package/app/components/01.atoms/canvas-switcher/CanvasSwitcher.vue +2 -2
- package/app/components/01.atoms/canvas-switcher/stories/CanvasSwitcher.stories.ts +1 -1
- package/app/components/01.atoms/card/CardCore.vue +4 -4
- package/app/components/01.atoms/clipped-panel/CONSUMER-STYLING.md +2 -2
- package/app/components/01.atoms/clipped-panel/ClippedPanel.vue +2 -2
- package/app/components/01.atoms/content-wrappers/layout-grid/dashboard-quad-grid/CONSUMER-STYLING.md +42 -0
- package/app/components/{layout-grids/LayoutGridA.vue → 01.atoms/content-wrappers/layout-grid/dashboard-quad-grid/DashboardQuadGrid.vue} +23 -13
- package/app/components/{layout-grids/stories/LayoutGridA.stories.ts → 01.atoms/content-wrappers/layout-grid/dashboard-quad-grid/stories/DashboardQuadGrid.stories.ts} +151 -23
- package/app/components/{layout-grids/tests/LayoutGridA.spec.ts → 01.atoms/content-wrappers/layout-grid/dashboard-quad-grid/tests/DashboardQuadGrid.spec.ts} +25 -25
- package/app/components/01.atoms/content-wrappers/layout-grid/dashboard-stats-grid/CONSUMER-STYLING.md +41 -0
- package/app/components/01.atoms/content-wrappers/layout-grid/dashboard-stats-grid/DashboardStatsGrid.vue +133 -0
- package/app/components/{layout-grids/stories/LayoutGridB.stories.ts → 01.atoms/content-wrappers/layout-grid/dashboard-stats-grid/stories/DashboardStatsGrid.stories.ts} +24 -24
- package/app/components/{layout-grids/tests/LayoutGridB.spec.ts → 01.atoms/content-wrappers/layout-grid/dashboard-stats-grid/tests/DashboardStatsGrid.spec.ts} +23 -23
- package/app/components/01.atoms/display-tooltip/CONSUMER-STYLING.md +8 -8
- package/app/components/01.atoms/display-tooltip/DisplayTooltip.vue +8 -8
- package/app/components/01.atoms/pop-over/CONSUMER-STYLING.md +6 -6
- package/app/components/01.atoms/pop-over/PopOver.vue +6 -6
- package/app/components/01.atoms/ui-block-decorated/CONSUMER-STYLING.md +39 -0
- package/app/components/01.atoms/ui-block-decorated/UiBlockDecorated.vue +141 -0
- package/app/components/01.atoms/ui-block-decorated/stories/UiBlockDecorated.stories.ts +148 -0
- package/app/components/01.atoms/ui-block-decorated/tests/UiBlockDecorated.spec.ts +80 -0
- package/app/components/01.atoms/ui-block-decorated/tests/__snapshots__/UiBlockDecorated.spec.ts.snap +3 -0
- package/app/components/02.molecules/alert-masked-content/tests/AlertMaskedContent.spec.ts +6 -6
- package/app/components/02.molecules/display-theme-switch/CONSUMER-STYLING.md +34 -0
- package/app/components/02.molecules/display-theme-switch/DisplayThemeSwitch.vue +102 -0
- package/app/components/02.molecules/display-theme-switch/stories/DisplayThemeSwitch.stories.ts +115 -0
- package/app/components/02.molecules/display-theme-switch/tests/DisplayThemeSwitch.spec.ts +86 -0
- package/app/components/02.molecules/navigation/deep-expanding-menu/CONSUMER-STYLING.md +1 -1
- package/app/components/02.molecules/navigation/deep-expanding-menu/DeepExpandingMenu.vue +1 -1
- package/app/components/02.molecules/navigation/deep-expanding-menu-classic/CONSUMER-STYLING.md +1 -1
- package/app/components/02.molecules/navigation/deep-expanding-menu-classic/DeepExpandingMenuClassic.vue +1 -1
- package/app/components/02.molecules/select-menu/CONSUMER-STYLING.md +168 -0
- package/app/components/02.molecules/select-menu/SelectMenu.vue +384 -0
- package/app/components/02.molecules/select-menu/stories/SelectMenu.stories.ts +359 -0
- package/app/components/02.molecules/select-menu/tests/SelectMenu.spec.ts +476 -0
- package/app/components/02.molecules/select-menu/tests/__snapshots__/SelectMenu.spec.ts.snap +42 -0
- package/app/components/03.organisms/image-galleries/carousel-flip/CONSUMER-STYLING.md +46 -0
- package/app/components/{carousels → 03.organisms/image-galleries/carousel-flip}/CarouselFlip.vue +63 -42
- package/app/components/{carousels → 03.organisms/image-galleries/carousel-flip}/stories/CarouselFlip.stories.ts +114 -29
- package/app/components/{carousels → 03.organisms/image-galleries/carousel-flip}/tests/CarouselFlip.spec.ts +80 -0
- package/app/components/05.forms/form-field/FormField.vue +1 -1
- package/app/components/05.forms/form-wrapper/FormWrapper.vue +1 -1
- package/app/components/05.forms/input-button/CONSUMER-STYLING.md +2 -7
- package/app/components/05.forms/input-button/InputButtonCore.vue +1 -5
- package/app/components/05.forms/input-number/CONSUMER-STYLING.md +26 -6
- package/app/components/05.forms/input-number/InputNumberCore.vue +125 -85
- package/app/components/05.forms/input-number/stories/InputNumberCore.stories.ts +92 -0
- package/app/components/05.forms/input-number/tests/InputNumberCore.spec.ts +119 -0
- package/app/components/05.forms/input-number/variants/InputNumberDefault.vue +30 -22
- package/app/components/05.forms/input-number/variants/stories/InputNumberDefault.stories.ts +123 -0
- package/app/components/05.forms/input-number/variants/tests/InputNumberDefault.spec.ts +143 -0
- package/app/components/05.forms/input-range/CONSUMER-STYLING.md +45 -0
- package/app/components/05.forms/input-range/InputRangeCore.vue +79 -143
- package/app/components/05.forms/input-range/stories/InputRangeCore.stories.ts +126 -0
- package/app/components/05.forms/input-range/tests/InputRangeCore.spec.ts +124 -0
- package/app/components/05.forms/input-range/variants/InputRangeDefault.vue +9 -32
- package/app/components/05.forms/input-range/variants/stories/InputRangeDefault.stories.ts +108 -0
- package/app/components/05.forms/input-range/variants/tests/InputRangeDefault.spec.ts +140 -0
- package/app/components/05.forms/input-select/InputSelectCore.vue +23 -30
- package/app/components/05.forms/input-select/stories/InputSelectCore.stories.ts +2 -2
- package/app/components/05.forms/input-select/stories/InputSelectWithLabel.stories.ts +115 -0
- package/app/components/05.forms/input-select/tests/InputSelectCore.spec.ts +129 -0
- package/app/components/05.forms/input-select/variants/InputSelectWithLabel.vue +1 -1
- package/app/components/05.forms/input-select/variants/tests/InputSelectWithLabel.spec.ts +87 -0
- package/app/components/05.forms/input-text/tests/InputTextAsNumberWithLabel.spec.ts +14 -0
- package/app/components/05.forms/input-text/variants/InputTextAsNumberWithLabel.vue +1 -1
- package/app/components/05.forms/input-textarea/CONSUMER-STYLING.md +55 -0
- package/app/components/05.forms/input-textarea/InputTextareaCore.vue +24 -16
- package/app/components/05.forms/input-textarea/stories/InputTextareaWithLabel.stories.ts +1 -1
- package/app/components/05.forms/input-textarea/tests/InputTextareaCore.spec.ts +119 -0
- package/app/components/05.forms/input-textarea/variants/InputTextareaWithLabel.vue +3 -13
- package/app/components/05.forms/input-textarea/variants/tests/InputTextareaWithLabel.spec.ts +93 -0
- package/app/components/05.forms/patterns/stories/MigratedFieldsForm.stories.ts +220 -0
- package/app/components/05.forms/toggle-switch/CONSUMER-STYLING.md +29 -0
- package/app/components/05.forms/toggle-switch/ToggleSwitchCore.vue +120 -119
- package/app/components/05.forms/toggle-switch/stories/ToggleSwitchCore.stories.ts +1 -1
- package/app/components/05.forms/toggle-switch/stories/ToggleSwitchWithLabel.stories.ts +1 -1
- package/app/components/05.forms/toggle-switch/stories/ToggleSwitchWithLabelInline.stories.ts +2 -2
- package/app/components/05.forms/toggle-switch/tests/ToggleSwitchCore.spec.ts +101 -0
- package/app/components/05.forms/toggle-switch/variants/ToggleSwitchWithLabel.vue +3 -5
- package/app/components/05.forms/toggle-switch/variants/ToggleSwitchWithLabelInline.vue +1 -2
- package/app/components/05.forms/toggle-switch/variants/tests/ToggleSwitchWithLabel.spec.ts +77 -0
- package/app/components/05.forms/toggle-switch/variants/tests/ToggleSwitchWithLabelInline.spec.ts +66 -0
- package/app/components/05.forms/triple-toggle-switch/CONSUMER-STYLING.md +20 -6
- package/app/components/05.forms/triple-toggle-switch/TripleToggleSwitchCore.vue +12 -10
- package/app/types/components/container-glow.d.ts +8 -0
- package/app/types/components/index.ts +2 -1
- package/app/types/components/select-menu.d.ts +5 -0
- package/package.json +3 -2
- package/.vscode/srcdev-component-toggle-switch-core.code-snippets +0 -13
- package/app/components/05.forms/input-range-fancy/InputRangeFancyCore.vue +0 -426
- package/app/components/05.forms/input-range-fancy/InputRangeFancyWithLabel.vue +0 -94
- package/app/components/carousels/CarouselBasic.vue +0 -317
- package/app/components/carousels/CarouselInfinite.vue +0 -358
- package/app/components/container-glow/ContainerGlowCore.vue +0 -296
- package/app/components/container-glow/stories/ContainerGlowCore.stories.ts +0 -337
- package/app/components/display-theme-switch/DisplayThemeSwitch.vue +0 -189
- package/app/components/display-theme-switch/stories/DisplayThemeSwitch.stories.ts +0 -154
- package/app/components/glowing-border/GlowingBorder.vue +0 -142
- package/app/components/glowing-border/stories/GlowingBorder.stories.ts +0 -141
- package/app/components/layout-grids/LayoutGridB.vue +0 -134
- package/app/components/test-storybook/TestStorybook.vue +0 -49
- package/app/components/test-storybook/stories/TestStorybook.stories.ts +0 -28
- package/app/components/ui-block-decorated/UiBlockDecorated.vue +0 -167
- package/app/components/view-timeline/WipeAwayVertical.vue +0 -180
- package/app/types/components/carousel-basic.d.ts +0 -19
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
{
|
|
2
|
+
"SRCDEV CarouselFlip Basic": {
|
|
3
|
+
"description": "CarouselFlip with looped item slots",
|
|
4
|
+
"scope": "vue,html",
|
|
5
|
+
"body": [
|
|
6
|
+
"<CarouselFlip :carousel-data-ids=\"$1items.map((item) => item.id)\">",
|
|
7
|
+
" <template v-for=\"$2item in $1items\" :key=\"$2item.id\" #[$2item.id]>",
|
|
8
|
+
" $3",
|
|
9
|
+
" </template>",
|
|
10
|
+
"</CarouselFlip>"
|
|
11
|
+
]
|
|
12
|
+
},
|
|
13
|
+
"SRCDEV CarouselFlip Overlay Controls": {
|
|
14
|
+
"description": "CarouselFlip with markers floating over the item track",
|
|
15
|
+
"scope": "vue,html",
|
|
16
|
+
"body": [
|
|
17
|
+
"<CarouselFlip",
|
|
18
|
+
" :carousel-data-ids=\"$1items.map((item) => item.id)\"",
|
|
19
|
+
" button-layout=\"overlay\"",
|
|
20
|
+
" :use-flip-animation=\"true\"",
|
|
21
|
+
">",
|
|
22
|
+
" <template v-for=\"$2item in $1items\" :key=\"$2item.id\" #[$2item.id]>",
|
|
23
|
+
" $3",
|
|
24
|
+
" </template>",
|
|
25
|
+
"</CarouselFlip>"
|
|
26
|
+
]
|
|
27
|
+
},
|
|
28
|
+
"SRCDEV CarouselFlip CSS Override": {
|
|
29
|
+
"description": "CSS override scaffold for CarouselFlip tokens",
|
|
30
|
+
"scope": "css",
|
|
31
|
+
"body": [
|
|
32
|
+
".$1my-page {",
|
|
33
|
+
" .carousel-flip {",
|
|
34
|
+
" --carousel-flip-gap: $2;",
|
|
35
|
+
" --carousel-flip-marker-active-colour: $3;",
|
|
36
|
+
" --carousel-flip-button-background-colour: $4;",
|
|
37
|
+
" }",
|
|
38
|
+
"}"
|
|
39
|
+
]
|
|
40
|
+
}
|
|
41
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"SRCDEV ContainerGlow Basic": {
|
|
3
|
+
"description": "ContainerGlow — pointer-proximity glow-border card(s), one card per named slot",
|
|
4
|
+
"scope": "vue,html",
|
|
5
|
+
"body": [
|
|
6
|
+
"<ContainerGlow>",
|
|
7
|
+
" <template #${1:one}>",
|
|
8
|
+
" $0",
|
|
9
|
+
" </template>",
|
|
10
|
+
"</ContainerGlow>"
|
|
11
|
+
]
|
|
12
|
+
},
|
|
13
|
+
"SRCDEV ContainerGlow With Config": {
|
|
14
|
+
"description": "ContainerGlow with custom proximity/spread/blur/gap/vertical config",
|
|
15
|
+
"scope": "vue,html",
|
|
16
|
+
"body": [
|
|
17
|
+
"<ContainerGlow",
|
|
18
|
+
" :config=\"{",
|
|
19
|
+
" proximity: ${1:40},",
|
|
20
|
+
" spread: ${2:80},",
|
|
21
|
+
" blur: ${3:20},",
|
|
22
|
+
" gap: ${4:32},",
|
|
23
|
+
" vertical: ${5:false},",
|
|
24
|
+
" inactiveOpacity: ${6:0},",
|
|
25
|
+
" }\"",
|
|
26
|
+
">",
|
|
27
|
+
" <template #${7:one}>",
|
|
28
|
+
" $0",
|
|
29
|
+
" </template>",
|
|
30
|
+
"</ContainerGlow>"
|
|
31
|
+
]
|
|
32
|
+
}
|
|
33
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
{
|
|
2
|
+
"SRCDEV DashboardQuadGrid Basic": {
|
|
3
|
+
"description": "DashboardQuadGrid with all four fixed slots",
|
|
4
|
+
"scope": "vue,html",
|
|
5
|
+
"body": [
|
|
6
|
+
"<DashboardQuadGrid>",
|
|
7
|
+
" <template #slot1>",
|
|
8
|
+
" $1",
|
|
9
|
+
" </template>",
|
|
10
|
+
" <template #slot2>",
|
|
11
|
+
" $2",
|
|
12
|
+
" </template>",
|
|
13
|
+
" <template #slot3>",
|
|
14
|
+
" $3",
|
|
15
|
+
" </template>",
|
|
16
|
+
" <template #slot4>",
|
|
17
|
+
" $4",
|
|
18
|
+
" </template>",
|
|
19
|
+
"</DashboardQuadGrid>"
|
|
20
|
+
]
|
|
21
|
+
},
|
|
22
|
+
"SRCDEV DashboardQuadGrid CSS Override": {
|
|
23
|
+
"description": "CSS override scaffold for DashboardQuadGrid tokens",
|
|
24
|
+
"scope": "css",
|
|
25
|
+
"body": [
|
|
26
|
+
".$1my-page {",
|
|
27
|
+
" .dashboard-quad-grid-wrapper {",
|
|
28
|
+
" --dashboard-quad-grid-gap: $2;",
|
|
29
|
+
" --dashboard-quad-grid-outline-colour: $3;",
|
|
30
|
+
" --dashboard-quad-grid-border-width: $4;",
|
|
31
|
+
" --dashboard-quad-grid-border-colour: $5;",
|
|
32
|
+
" }",
|
|
33
|
+
"}"
|
|
34
|
+
]
|
|
35
|
+
}
|
|
36
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
{
|
|
2
|
+
"SRCDEV DashboardStatsGrid Basic": {
|
|
3
|
+
"description": "DashboardStatsGrid with looped top-row cluster, both static top-row slots, and looped bottom row",
|
|
4
|
+
"scope": "vue,html",
|
|
5
|
+
"body": [
|
|
6
|
+
"<DashboardStatsGrid :top-row-slot1-item-count=\"$1items.length\" :bottom-row-item-count=\"$2features.length\">",
|
|
7
|
+
" <template v-for=\"($3item, $4index) in $1items\" :key=\"$3item.id\" #[`top-row-slot1-\\${$4index + 1}-content`]>",
|
|
8
|
+
" $5",
|
|
9
|
+
" </template>",
|
|
10
|
+
" <template #top-row-slot-2>",
|
|
11
|
+
" $6",
|
|
12
|
+
" </template>",
|
|
13
|
+
" <template #top-row-slot-3>",
|
|
14
|
+
" $7",
|
|
15
|
+
" </template>",
|
|
16
|
+
" <template v-for=\"($8feature, $9findex) in $2features\" :key=\"$8feature.id\" #[`bottom-row-\\${$9findex + 1}-content`]>",
|
|
17
|
+
" $10",
|
|
18
|
+
" </template>",
|
|
19
|
+
"</DashboardStatsGrid>"
|
|
20
|
+
]
|
|
21
|
+
},
|
|
22
|
+
"SRCDEV DashboardStatsGrid CSS Override": {
|
|
23
|
+
"description": "CSS override scaffold for DashboardStatsGrid tokens",
|
|
24
|
+
"scope": "css",
|
|
25
|
+
"body": [
|
|
26
|
+
".$1my-page {",
|
|
27
|
+
" .dashboard-stats-grid {",
|
|
28
|
+
" --dashboard-stats-grid-gap: $2;",
|
|
29
|
+
" --dashboard-stats-grid-border-colour: $3;",
|
|
30
|
+
" --dashboard-stats-grid-rule-colour: $4;",
|
|
31
|
+
" }",
|
|
32
|
+
"}"
|
|
33
|
+
]
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"SRCDEV DisplayThemeSwitch Basic": {
|
|
3
|
+
"description": "DisplayThemeSwitch — system/light/dark theme picker",
|
|
4
|
+
"scope": "vue,html",
|
|
5
|
+
"body": [
|
|
6
|
+
"<DisplayThemeSwitch />"
|
|
7
|
+
]
|
|
8
|
+
},
|
|
9
|
+
"SRCDEV DisplayThemeSwitch Small": {
|
|
10
|
+
"description": "DisplayThemeSwitch compact size, for a header/nav slot",
|
|
11
|
+
"scope": "vue,html",
|
|
12
|
+
"body": [
|
|
13
|
+
"<DisplayThemeSwitch style-class-passthrough=\"small\" />"
|
|
14
|
+
]
|
|
15
|
+
},
|
|
16
|
+
"SRCDEV DisplayThemeSwitch Custom Labels": {
|
|
17
|
+
"description": "DisplayThemeSwitch with translated/custom option labels",
|
|
18
|
+
"scope": "vue,html",
|
|
19
|
+
"body": [
|
|
20
|
+
"<DisplayThemeSwitch",
|
|
21
|
+
" system-label=\"$1System\"",
|
|
22
|
+
" light-label=\"$2Light\"",
|
|
23
|
+
" dark-label=\"$3Dark\"",
|
|
24
|
+
"/>"
|
|
25
|
+
]
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
{
|
|
2
|
+
"SRCDEV GlowingBorder Basic": {
|
|
3
|
+
"description": "GlowingBorder — animated conic-gradient glow border",
|
|
4
|
+
"scope": "vue,html",
|
|
5
|
+
"body": [
|
|
6
|
+
"<GlowingBorder variant=\"${1|subtle,vivid,silver,steel,green|}\">",
|
|
7
|
+
" $0",
|
|
8
|
+
"</GlowingBorder>"
|
|
9
|
+
]
|
|
10
|
+
},
|
|
11
|
+
"SRCDEV GlowingBorder Custom Tokens": {
|
|
12
|
+
"description": "GlowingBorder with custom width/radius/animation-duration CSS tokens",
|
|
13
|
+
"scope": "vue,html",
|
|
14
|
+
"body": [
|
|
15
|
+
"<GlowingBorder",
|
|
16
|
+
" variant=\"${1|subtle,vivid,silver,steel,green|}\"",
|
|
17
|
+
" style=\"--glowing-border-width: ${2:3px}; --glowing-border-radius: ${3:30px}; --glowing-border-animation-duration: ${4:10s};\"",
|
|
18
|
+
">",
|
|
19
|
+
" $0",
|
|
20
|
+
"</GlowingBorder>"
|
|
21
|
+
]
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
{
|
|
2
|
+
"SRCDEV InputNumberCore Basic": {
|
|
3
|
+
"description": "Basic InputNumberCore native number input (no label/error wrapper)",
|
|
4
|
+
"scope": "vue,html",
|
|
5
|
+
"body": [
|
|
6
|
+
"<InputNumberCore",
|
|
7
|
+
" id=\"$1fieldId\"",
|
|
8
|
+
" name=\"$2fieldName\"",
|
|
9
|
+
" v-model=\"$3fieldValue\"",
|
|
10
|
+
" :min=\"$40\"",
|
|
11
|
+
" :max=\"$5100\"",
|
|
12
|
+
" :step=\"$61\"",
|
|
13
|
+
"/>"
|
|
14
|
+
]
|
|
15
|
+
},
|
|
16
|
+
"SRCDEV InputNumberDefault Basic": {
|
|
17
|
+
"description": "InputNumberDefault: labelled number input with error/description support",
|
|
18
|
+
"scope": "vue,html",
|
|
19
|
+
"body": [
|
|
20
|
+
"<InputNumberDefault",
|
|
21
|
+
" v-model=\"$1fieldValue\"",
|
|
22
|
+
" name=\"$2fieldName\"",
|
|
23
|
+
" label=\"$3Field label\"",
|
|
24
|
+
" :min=\"$40\"",
|
|
25
|
+
" :max=\"$5100\"",
|
|
26
|
+
" :step=\"$61\"",
|
|
27
|
+
" :error-message=\"$7errors.fieldName\"",
|
|
28
|
+
" :field-has-error=\"!!$7errors.fieldName\"",
|
|
29
|
+
"/>"
|
|
30
|
+
]
|
|
31
|
+
},
|
|
32
|
+
"SRCDEV InputNumberDefault With Step Buttons": {
|
|
33
|
+
"description": "InputNumberDefault with step-down/step-up buttons wired into the left/right slots",
|
|
34
|
+
"scope": "vue,html",
|
|
35
|
+
"body": [
|
|
36
|
+
"<InputNumberDefault",
|
|
37
|
+
" v-model=\"$1fieldValue\"",
|
|
38
|
+
" name=\"$2fieldName\"",
|
|
39
|
+
" label=\"$3Field label\"",
|
|
40
|
+
" :min=\"$40\"",
|
|
41
|
+
" :max=\"$5100\"",
|
|
42
|
+
" :step=\"$61\"",
|
|
43
|
+
" :error-message=\"$7errors.fieldName\"",
|
|
44
|
+
" :field-has-error=\"!!$7errors.fieldName\"",
|
|
45
|
+
">",
|
|
46
|
+
" <template #left>\\u2212</template>",
|
|
47
|
+
" <template #right>+</template>",
|
|
48
|
+
"</InputNumberDefault>"
|
|
49
|
+
]
|
|
50
|
+
},
|
|
51
|
+
"SRCDEV InputNumber CSS Override": {
|
|
52
|
+
"description": "CSS override scaffold for InputNumberCore tokens",
|
|
53
|
+
"scope": "css",
|
|
54
|
+
"body": [
|
|
55
|
+
".$1my-page {",
|
|
56
|
+
" .input-number-wrapper {",
|
|
57
|
+
" --input-number-surface: $2;",
|
|
58
|
+
" --input-number-border: $3;",
|
|
59
|
+
" --input-number-border-hover: $4;",
|
|
60
|
+
" --input-number-border-focus: $5;",
|
|
61
|
+
" }",
|
|
62
|
+
"}"
|
|
63
|
+
]
|
|
64
|
+
}
|
|
65
|
+
}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
{
|
|
2
|
+
"SRCDEV InputRangeCore Basic": {
|
|
3
|
+
"description": "Basic InputRangeCore native range input (no label/error wrapper)",
|
|
4
|
+
"scope": "vue,html",
|
|
5
|
+
"body": [
|
|
6
|
+
"<InputRangeCore",
|
|
7
|
+
" id=\"$1fieldId\"",
|
|
8
|
+
" name=\"$2fieldName\"",
|
|
9
|
+
" v-model=\"$3fieldValue\"",
|
|
10
|
+
" :min=\"$40\"",
|
|
11
|
+
" :max=\"$5100\"",
|
|
12
|
+
" :step=\"$61\"",
|
|
13
|
+
"/>"
|
|
14
|
+
]
|
|
15
|
+
},
|
|
16
|
+
"SRCDEV InputRangeCore With Markers": {
|
|
17
|
+
"description": "InputRangeCore with custom tick-mark markers overlaid on the track",
|
|
18
|
+
"scope": "vue,html",
|
|
19
|
+
"body": [
|
|
20
|
+
"<InputRangeCore",
|
|
21
|
+
" id=\"$1fieldId\"",
|
|
22
|
+
" name=\"$2fieldName\"",
|
|
23
|
+
" v-model=\"$3fieldValue\"",
|
|
24
|
+
" :min=\"$40\"",
|
|
25
|
+
" :max=\"$52\"",
|
|
26
|
+
" :step=\"$61\"",
|
|
27
|
+
">",
|
|
28
|
+
" <template #markers>",
|
|
29
|
+
" <div class=\"input-range-markers\">",
|
|
30
|
+
" <div class=\"marker\"><span class=\"marker-icon\">$7\\ud83d\\ude00</span></div>",
|
|
31
|
+
" <div class=\"marker\"><span class=\"marker-icon\">$8\\ud83d\\ude10</span></div>",
|
|
32
|
+
" <div class=\"marker\"><span class=\"marker-icon\">$9\\ud83d\\ude1e</span></div>",
|
|
33
|
+
" </div>",
|
|
34
|
+
" </template>",
|
|
35
|
+
"</InputRangeCore>"
|
|
36
|
+
]
|
|
37
|
+
},
|
|
38
|
+
"SRCDEV InputRangeDefault Basic": {
|
|
39
|
+
"description": "InputRangeDefault: labelled range slider with error/description support",
|
|
40
|
+
"scope": "vue,html",
|
|
41
|
+
"body": [
|
|
42
|
+
"<InputRangeDefault",
|
|
43
|
+
" v-model=\"$1fieldValue\"",
|
|
44
|
+
" name=\"$2fieldName\"",
|
|
45
|
+
" label=\"$3Field label\"",
|
|
46
|
+
" :min=\"$40\"",
|
|
47
|
+
" :max=\"$5100\"",
|
|
48
|
+
" :step=\"$61\"",
|
|
49
|
+
" :error-message=\"$7errors.fieldName\"",
|
|
50
|
+
" :field-has-error=\"!!$7errors.fieldName\"",
|
|
51
|
+
"/>"
|
|
52
|
+
]
|
|
53
|
+
},
|
|
54
|
+
"SRCDEV InputRangeDefault With Step Buttons": {
|
|
55
|
+
"description": "InputRangeDefault with step-down/step-up buttons wired into the left/right slots",
|
|
56
|
+
"scope": "vue,html",
|
|
57
|
+
"body": [
|
|
58
|
+
"<InputRangeDefault",
|
|
59
|
+
" v-model=\"$1fieldValue\"",
|
|
60
|
+
" name=\"$2fieldName\"",
|
|
61
|
+
" label=\"$3Field label\"",
|
|
62
|
+
" :min=\"$40\"",
|
|
63
|
+
" :max=\"$5100\"",
|
|
64
|
+
" :step=\"$61\"",
|
|
65
|
+
" :error-message=\"$7errors.fieldName\"",
|
|
66
|
+
" :field-has-error=\"!!$7errors.fieldName\"",
|
|
67
|
+
">",
|
|
68
|
+
" <template #left>\\u2212</template>",
|
|
69
|
+
" <template #right>+</template>",
|
|
70
|
+
"</InputRangeDefault>"
|
|
71
|
+
]
|
|
72
|
+
},
|
|
73
|
+
"SRCDEV InputRange CSS Override": {
|
|
74
|
+
"description": "CSS override scaffold for InputRangeCore tokens",
|
|
75
|
+
"scope": "css",
|
|
76
|
+
"body": [
|
|
77
|
+
".$1my-page {",
|
|
78
|
+
" .input-range-wrapper {",
|
|
79
|
+
" --input-range-accent-colour: $2;",
|
|
80
|
+
" --input-range-marker-background-colour: $3;",
|
|
81
|
+
" }",
|
|
82
|
+
"}"
|
|
83
|
+
]
|
|
84
|
+
}
|
|
85
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
"SRCDEV InputSelectCore Basic": {
|
|
3
|
+
"description": "Basic InputSelectCore native select (no label/error wrapper)",
|
|
4
|
+
"scope": "vue,html",
|
|
5
|
+
"body": [
|
|
6
|
+
"<InputSelectCore",
|
|
7
|
+
" id=\"$1fieldId\"",
|
|
8
|
+
" name=\"$2fieldName\"",
|
|
9
|
+
" v-model=\"$3fieldValue\"",
|
|
10
|
+
" v-model:field-data=\"$4fieldOptions\"",
|
|
11
|
+
" placeholder=\"$5Choose an option\"",
|
|
12
|
+
"/>"
|
|
13
|
+
]
|
|
14
|
+
},
|
|
15
|
+
"SRCDEV InputSelectWithLabel Basic": {
|
|
16
|
+
"description": "InputSelectWithLabel: labelled select with error/description support",
|
|
17
|
+
"scope": "vue,html",
|
|
18
|
+
"body": [
|
|
19
|
+
"<InputSelectWithLabel",
|
|
20
|
+
" v-model=\"$1fieldValue\"",
|
|
21
|
+
" v-model:field-data=\"$2fieldOptions\"",
|
|
22
|
+
" name=\"$3fieldName\"",
|
|
23
|
+
" label=\"$4Field label\"",
|
|
24
|
+
" placeholder=\"$5Choose an option\"",
|
|
25
|
+
" :error-message=\"$6errors.fieldName\"",
|
|
26
|
+
" :field-has-error=\"!!$6errors.fieldName\"",
|
|
27
|
+
"/>"
|
|
28
|
+
]
|
|
29
|
+
},
|
|
30
|
+
"SRCDEV InputSelect CSS Override": {
|
|
31
|
+
"description": "CSS override scaffold for InputSelectCore tokens",
|
|
32
|
+
"scope": "css",
|
|
33
|
+
"body": [
|
|
34
|
+
".$1my-page {",
|
|
35
|
+
" .input-select-wrapper {",
|
|
36
|
+
" --input-select-surface: $2;",
|
|
37
|
+
" --input-select-border: $3;",
|
|
38
|
+
" }",
|
|
39
|
+
"}"
|
|
40
|
+
]
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"SRCDEV InputTextareaCore Basic": {
|
|
3
|
+
"description": "Basic InputTextareaCore native textarea (no label/error wrapper)",
|
|
4
|
+
"scope": "vue,html",
|
|
5
|
+
"body": [
|
|
6
|
+
"<InputTextareaCore",
|
|
7
|
+
" id=\"$1fieldId\"",
|
|
8
|
+
" name=\"$2fieldName\"",
|
|
9
|
+
" v-model=\"$3fieldValue\"",
|
|
10
|
+
" placeholder=\"$4Placeholder text\"",
|
|
11
|
+
"/>"
|
|
12
|
+
]
|
|
13
|
+
},
|
|
14
|
+
"SRCDEV InputTextareaWithLabel Basic": {
|
|
15
|
+
"description": "InputTextareaWithLabel: labelled textarea with error/description support",
|
|
16
|
+
"scope": "vue,html",
|
|
17
|
+
"body": [
|
|
18
|
+
"<InputTextareaWithLabel",
|
|
19
|
+
" v-model=\"$1fieldValue\"",
|
|
20
|
+
" name=\"$2fieldName\"",
|
|
21
|
+
" label=\"$3Field label\"",
|
|
22
|
+
" placeholder=\"$4Placeholder text\"",
|
|
23
|
+
" :error-message=\"$5errors.fieldName\"",
|
|
24
|
+
" :field-has-error=\"!!$5errors.fieldName\"",
|
|
25
|
+
"/>"
|
|
26
|
+
]
|
|
27
|
+
},
|
|
28
|
+
"SRCDEV InputTextarea CSS Override": {
|
|
29
|
+
"description": "CSS override scaffold for InputTextareaCore tokens",
|
|
30
|
+
"scope": "css",
|
|
31
|
+
"body": [
|
|
32
|
+
".$1my-page {",
|
|
33
|
+
" .input-textarea-wrapper {",
|
|
34
|
+
" --input-textarea-surface: $2;",
|
|
35
|
+
" --input-textarea-border: $3;",
|
|
36
|
+
" }",
|
|
37
|
+
"}"
|
|
38
|
+
]
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"SRCDEV SectionParallax Basic": {
|
|
3
|
+
"description": "SectionParallax — fixed-background parallax section",
|
|
4
|
+
"scope": "vue,html",
|
|
5
|
+
"body": [
|
|
6
|
+
"<SectionParallax",
|
|
7
|
+
" tag=\"${1|section,div,article,aside|}\"",
|
|
8
|
+
" background-image=\"${2:/images/example.jpg}\"",
|
|
9
|
+
">",
|
|
10
|
+
" $0",
|
|
11
|
+
"</SectionParallax>"
|
|
12
|
+
]
|
|
13
|
+
},
|
|
14
|
+
"SRCDEV SectionParallax Custom Height": {
|
|
15
|
+
"description": "SectionParallax with custom min-height CSS tokens",
|
|
16
|
+
"scope": "vue,html",
|
|
17
|
+
"body": [
|
|
18
|
+
"<SectionParallax",
|
|
19
|
+
" tag=\"${1|section,div,article,aside|}\"",
|
|
20
|
+
" background-image=\"${2:/images/example.jpg}\"",
|
|
21
|
+
" style=\"--section-parallax-min-height: ${3:60vh}; --section-parallax-min-height-fixed: ${4:70vh};\"",
|
|
22
|
+
">",
|
|
23
|
+
" $0",
|
|
24
|
+
"</SectionParallax>"
|
|
25
|
+
]
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
{
|
|
2
|
+
"SRCDEV SelectMenu Basic": {
|
|
3
|
+
"description": "SelectMenu — v-model single-select popover listbox",
|
|
4
|
+
"scope": "vue,html",
|
|
5
|
+
"body": [
|
|
6
|
+
"<SelectMenu",
|
|
7
|
+
" v-model=\"${1:selectedValue}\"",
|
|
8
|
+
" :options=\"${2:options}\"",
|
|
9
|
+
" label=\"${3:Choose an option}\"",
|
|
10
|
+
"/>"
|
|
11
|
+
]
|
|
12
|
+
},
|
|
13
|
+
"SRCDEV SelectMenu Icon Only": {
|
|
14
|
+
"description": "SelectMenu — icon-only compact trigger (e.g. language switcher)",
|
|
15
|
+
"scope": "vue,html",
|
|
16
|
+
"body": [
|
|
17
|
+
"<SelectMenu",
|
|
18
|
+
" v-model=\"${1:language}\"",
|
|
19
|
+
" :options=\"${2:languageOptions}\"",
|
|
20
|
+
" label=\"${3:Language}\"",
|
|
21
|
+
" :show-label=\"false\"",
|
|
22
|
+
" :show-chevron=\"false\"",
|
|
23
|
+
"/>"
|
|
24
|
+
]
|
|
25
|
+
},
|
|
26
|
+
"SRCDEV SelectMenu Category Filter": {
|
|
27
|
+
"description": "SelectMenu — text + chevron category filter, no per-option icons",
|
|
28
|
+
"scope": "vue,html",
|
|
29
|
+
"body": [
|
|
30
|
+
"<SelectMenu",
|
|
31
|
+
" v-model=\"${1:filterValue}\"",
|
|
32
|
+
" :options=\"${2:filterOptions}\"",
|
|
33
|
+
" label=\"${3:Choose a service}\"",
|
|
34
|
+
" :show-icon=\"false\"",
|
|
35
|
+
"/>"
|
|
36
|
+
]
|
|
37
|
+
},
|
|
38
|
+
"SRCDEV SelectMenu Multi-Select": {
|
|
39
|
+
"description": "SelectMenu — checkbox-per-option multi-select, v-model is an array",
|
|
40
|
+
"scope": "vue,html",
|
|
41
|
+
"body": [
|
|
42
|
+
"<SelectMenu",
|
|
43
|
+
" v-model=\"${1:selectedValues}\"",
|
|
44
|
+
" :options=\"${2:options}\"",
|
|
45
|
+
" label=\"${3:Services required}\"",
|
|
46
|
+
" :show-icon=\"false\"",
|
|
47
|
+
" multiple",
|
|
48
|
+
"/>"
|
|
49
|
+
]
|
|
50
|
+
},
|
|
51
|
+
"SRCDEV SelectMenu Multi-Select Showing Selection": {
|
|
52
|
+
"description": "SelectMenu — multi-select where the trigger updates to list checked options",
|
|
53
|
+
"scope": "vue,html",
|
|
54
|
+
"body": [
|
|
55
|
+
"<SelectMenu",
|
|
56
|
+
" v-model=\"${1:selectedValues}\"",
|
|
57
|
+
" :options=\"${2:options}\"",
|
|
58
|
+
" label=\"${3:Services required}\"",
|
|
59
|
+
" :show-icon=\"false\"",
|
|
60
|
+
" multiple",
|
|
61
|
+
" show-selection-in-trigger",
|
|
62
|
+
"/>"
|
|
63
|
+
]
|
|
64
|
+
}
|
|
65
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
{
|
|
2
|
+
"SRCDEV ToggleSwitchCore": {
|
|
3
|
+
"description": "ToggleSwitchCore — bare toggle switch (no label, use ToggleSwitchWithLabel for that)",
|
|
4
|
+
"scope": "vue,html",
|
|
5
|
+
"body": [
|
|
6
|
+
"<ToggleSwitchCore",
|
|
7
|
+
" v-model=\"$1modelValue\"",
|
|
8
|
+
" id=\"$2toggle-id\"",
|
|
9
|
+
" name=\"$3toggleName\"",
|
|
10
|
+
"/>"
|
|
11
|
+
]
|
|
12
|
+
},
|
|
13
|
+
"SRCDEV ToggleSwitchWithLabel": {
|
|
14
|
+
"description": "ToggleSwitchWithLabel: labelled toggle switch with description/error support",
|
|
15
|
+
"scope": "vue,html",
|
|
16
|
+
"body": [
|
|
17
|
+
"<ToggleSwitchWithLabel",
|
|
18
|
+
" v-model=\"$1fieldValue\"",
|
|
19
|
+
" name=\"$2fieldName\"",
|
|
20
|
+
" label=\"$3Field label\"",
|
|
21
|
+
" :error-message=\"$4errors.fieldName\"",
|
|
22
|
+
" :field-has-error=\"!!$4errors.fieldName\"",
|
|
23
|
+
"/>"
|
|
24
|
+
]
|
|
25
|
+
},
|
|
26
|
+
"SRCDEV ToggleSwitchWithLabelInline": {
|
|
27
|
+
"description": "ToggleSwitchWithLabelInline: compact label + toggle switch side by side, no error support",
|
|
28
|
+
"scope": "vue,html",
|
|
29
|
+
"body": [
|
|
30
|
+
"<ToggleSwitchWithLabelInline",
|
|
31
|
+
" v-model=\"$1fieldValue\"",
|
|
32
|
+
" name=\"$2fieldName\"",
|
|
33
|
+
" label=\"$3Field label\"",
|
|
34
|
+
"/>"
|
|
35
|
+
]
|
|
36
|
+
},
|
|
37
|
+
"SRCDEV ToggleSwitch CSS Override": {
|
|
38
|
+
"description": "CSS override scaffold for ToggleSwitchCore tokens",
|
|
39
|
+
"scope": "css",
|
|
40
|
+
"body": [
|
|
41
|
+
".$1my-page {",
|
|
42
|
+
" .toggle-switch-wrapper {",
|
|
43
|
+
" --toggle-switch-surface: $2;",
|
|
44
|
+
" --toggle-switch-symbol-surface-on: $3;",
|
|
45
|
+
" }",
|
|
46
|
+
"}"
|
|
47
|
+
]
|
|
48
|
+
}
|
|
49
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
{
|
|
2
|
+
"SRCDEV UiBlockDecorated Basic": {
|
|
3
|
+
"description": "UiBlockDecorated — plain block with border/shadow/inner-shadow strength props",
|
|
4
|
+
"scope": "vue,html",
|
|
5
|
+
"body": [
|
|
6
|
+
"<UiBlockDecorated :shadow-strength=\"$1{1|1,2,3,4,5,6|}\">",
|
|
7
|
+
" $0",
|
|
8
|
+
"</UiBlockDecorated>"
|
|
9
|
+
]
|
|
10
|
+
},
|
|
11
|
+
"SRCDEV UiBlockDecorated Combined": {
|
|
12
|
+
"description": "UiBlockDecorated with border, shadow and inner-shadow combined",
|
|
13
|
+
"scope": "vue,html",
|
|
14
|
+
"body": [
|
|
15
|
+
"<UiBlockDecorated",
|
|
16
|
+
" :border-strength=\"$1{1|1,2,3,4,5,6|}\"",
|
|
17
|
+
" :shadow-strength=\"$2{2|1,2,3,4,5,6|}\"",
|
|
18
|
+
" :inner-shadow-strength=\"$3{1|1,2,3,4|}\"",
|
|
19
|
+
">",
|
|
20
|
+
" $0",
|
|
21
|
+
"</UiBlockDecorated>"
|
|
22
|
+
]
|
|
23
|
+
}
|
|
24
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"SRCDEV WipeAwayVertical Basic": {
|
|
3
|
+
"description": "WipeAwayVertical — scroll-driven vertical wipe-away effect with sticky/scrolling section pairs",
|
|
4
|
+
"scope": "vue,html",
|
|
5
|
+
"body": [
|
|
6
|
+
"<WipeAwayVertical :item-count=\"$13\">",
|
|
7
|
+
" <template #stickyItem-0>$2</template>",
|
|
8
|
+
" <template #stickyItem-1>$3</template>",
|
|
9
|
+
" <template #stickyItem-2>$4</template>",
|
|
10
|
+
"",
|
|
11
|
+
" <template #scrollingItem-0><div style=\"height: 100vh;\"></div></template>",
|
|
12
|
+
" <template #scrollingItem-1><div style=\"height: 100vh;\"></div></template>",
|
|
13
|
+
"</WipeAwayVertical>$0"
|
|
14
|
+
]
|
|
15
|
+
},
|
|
16
|
+
"SRCDEV WipeAwayVertical With Passthrough": {
|
|
17
|
+
"description": "WipeAwayVertical with styleClassPassthrough for a custom wrapper class",
|
|
18
|
+
"scope": "vue,html",
|
|
19
|
+
"body": [
|
|
20
|
+
"<WipeAwayVertical :item-count=\"$12\" style-class-passthrough=\"$2my-wipe-wrapper\">",
|
|
21
|
+
" $0",
|
|
22
|
+
"</WipeAwayVertical>"
|
|
23
|
+
]
|
|
24
|
+
}
|
|
25
|
+
}
|