@alphacifer/slidev-addon-theme 0.0.9 → 0.0.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/README.md +133 -75
- package/components/card/chevron-card/ChevronCard.vue +44 -32
- package/components/card/chevron-card/ChevronCardBadge.vue +14 -8
- package/components/card/chevron-card/ChevronCardContent.vue +15 -13
- package/components/card/chevron-card/style.css +12 -0
- package/components/card/{horiz-card/HorizCard.vue → horizontal-card/HorizontalCard.vue} +78 -85
- package/components/card/{horiz-card/HorizCardBadge.vue → horizontal-card/HorizontalCardBadge.vue} +15 -10
- package/components/card/{horiz-card/HorizCardContent.vue → horizontal-card/HorizontalCardContent.vue} +11 -11
- package/components/card/{horiz-card/HorizCardIcon.vue → horizontal-card/HorizontalCardIcon.vue} +24 -38
- package/components/card/horizontal-card/style.css +17 -0
- package/components/card/{vert-card/VertCard.vue → vertical-card/VerticalCard.vue} +80 -103
- package/components/card/{vert-card/VertCardBadge.vue → vertical-card/VerticalCardBadge.vue} +15 -10
- package/components/card/{vert-card/VertCardContent.vue → vertical-card/VerticalCardContent.vue} +13 -12
- package/components/card/{vert-card/VertCardIcon.vue → vertical-card/VerticalCardIcon.vue} +15 -33
- package/components/card/vertical-card/style.css +19 -0
- package/components/comparisons/arc-comparison/ArcComparison.vue +376 -80
- package/components/comparisons/arc-comparison/ArcComparisonBadge.vue +9 -4
- package/components/comparisons/arc-comparison/ArcComparisonContent.vue +9 -4
- package/components/comparisons/arc-comparison/ArcComparisonHeading.vue +9 -4
- package/components/comparisons/arc-comparison/ArcComparisonLeft.vue +39 -63
- package/components/comparisons/arc-comparison/ArcComparisonOrbit.vue +9 -8
- package/components/comparisons/arc-comparison/ArcComparisonRight.vue +39 -63
- package/components/comparisons/arc-comparison/style.css +27 -0
- package/components/comparisons/table-comparison/TableComparison.vue +17 -97
- package/components/comparisons/table-comparison/TableComparisonCell.vue +22 -20
- package/components/comparisons/table-comparison/{TableComparisonCol.vue → TableComparisonColumn.vue} +16 -14
- package/components/comparisons/table-comparison/{TableComparisonCols.vue → TableComparisonColumns.vue} +5 -8
- package/components/comparisons/table-comparison/TableComparisonRow.vue +10 -14
- package/components/comparisons/table-comparison/TableComparisonRows.vue +1 -4
- package/components/comparisons/table-comparison/style.css +15 -0
- package/components/core/Date.vue +2 -5
- package/components/core/QnA.vue +1 -1
- package/components/core/Quote.vue +3 -6
- package/components/core/ReflectedTitle.vue +2 -6
- package/components/core/Speaker.vue +5 -10
- package/components/core/TransitionHeading.vue +2 -5
- package/components/core/arc-orbit/ArcOrbit.vue +65 -84
- package/components/core/arc-orbit/ArcOrbitBadge.vue +9 -11
- package/components/core/arc-orbit/ArcOrbitCallout.vue +30 -32
- package/components/core/arc-orbit/ArcOrbitContent.vue +6 -12
- package/components/core/arc-orbit/ArcOrbitHeading.vue +13 -11
- package/components/core/arc-orbit/style.css +20 -0
- package/components/core/style.css +9 -0
- package/components/core/thanks/{ThanksContent.vue → SquareThanks.vue} +36 -31
- package/components/core/thanks/SquareThanksContent.vue +89 -0
- package/components/core/thanks/ThanksOutlineSquare.vue +2 -5
- package/components/core/thanks/ThanksSquare.vue +2 -5
- package/components/core/thanks/style.css +30 -0
- package/components/defense-in-depth/arc-defense-in-depth/ArcDefenseInDepth.vue +802 -0
- package/components/defense-in-depth/arc-defense-in-depth/ArcDefenseInDepthLayer.vue +240 -0
- package/components/defense-in-depth/arc-defense-in-depth/ArcDefenseInDepthLayerHeading.vue +96 -0
- package/components/defense-in-depth/arc-defense-in-depth/ArcDefenseInDepthLayerPart.vue +501 -0
- package/components/defense-in-depth/arc-defense-in-depth/ArcDefenseInDepthLayerSector.vue +162 -0
- package/components/defense-in-depth/arc-defense-in-depth/style.css +38 -0
- package/components/facets/tetrad/{rect-orbit-tetrad/RectOrbitTetrad.vue → rectangle-orbit-tetrad/RectangleOrbitTetrad.vue} +66 -63
- package/components/facets/tetrad/{rect-orbit-tetrad/RectOrbitTetradCallout.vue → rectangle-orbit-tetrad/RectangleOrbitTetradCallout.vue} +62 -48
- package/components/facets/tetrad/rectangle-orbit-tetrad/RectangleOrbitTetradCenter.vue +54 -0
- package/components/facets/tetrad/rectangle-orbit-tetrad/RectangleOrbitTetradContent.vue +44 -0
- package/components/facets/tetrad/rectangle-orbit-tetrad/RectangleOrbitTetradHeading.vue +27 -0
- package/components/facets/tetrad/{rect-orbit-tetrad/RectOrbitTetradIcon.vue → rectangle-orbit-tetrad/RectangleOrbitTetradIcon.vue} +23 -13
- package/components/facets/tetrad/rectangle-orbit-tetrad/style.css +22 -0
- package/components/facets/triad/arrow-triad/ArrowTriad.vue +99 -109
- package/components/facets/triad/arrow-triad/ArrowTriadCallout.vue +31 -59
- package/components/facets/triad/arrow-triad/ArrowTriadContent.vue +18 -13
- package/components/facets/triad/arrow-triad/ArrowTriadHeading.vue +20 -13
- package/components/facets/triad/arrow-triad/ArrowTriadIcon.vue +14 -9
- package/components/facets/triad/arrow-triad/style.css +15 -0
- package/components/facets/triad/gear-triad/GearTriad.vue +73 -64
- package/components/facets/triad/gear-triad/GearTriadCallout.vue +58 -53
- package/components/facets/triad/gear-triad/GearTriadCenter.vue +9 -4
- package/components/facets/triad/gear-triad/GearTriadContent.vue +21 -36
- package/components/facets/triad/gear-triad/GearTriadDetail.vue +92 -0
- package/components/facets/triad/gear-triad/GearTriadDetails.vue +169 -0
- package/components/facets/triad/gear-triad/GearTriadDetailsContent.vue +18 -0
- package/components/facets/triad/gear-triad/GearTriadDetailsHeading.vue +60 -0
- package/components/facets/triad/gear-triad/GearTriadHeading.vue +19 -13
- package/components/facets/triad/gear-triad/GearTriadIcon.vue +22 -9
- package/components/facets/triad/gear-triad/style.css +26 -0
- package/components/facets/triad/{hex-triad/HexTriad.vue → hexagon-triad/HexagonTriad.vue} +81 -63
- package/components/facets/triad/{hex-triad/HexTriadBadge.vue → hexagon-triad/HexagonTriadBadge.vue} +38 -12
- package/components/facets/triad/{hex-triad/HexTriadCallout.vue → hexagon-triad/HexagonTriadCallout.vue} +35 -31
- package/components/facets/triad/hexagon-triad/HexagonTriadCenterBadge.vue +74 -0
- package/components/facets/triad/hexagon-triad/HexagonTriadContent.vue +34 -0
- package/components/facets/triad/hexagon-triad/HexagonTriadHeading.vue +44 -0
- package/components/facets/triad/{hex-triad/HexTriadLayer.vue → hexagon-triad/HexagonTriadLayer.vue} +12 -4
- package/components/facets/triad/hexagon-triad/style.css +22 -0
- package/components/process/arc-arrow-process/ArcArrowProcess.vue +13 -35
- package/components/process/arc-arrow-process/ArcArrowProcessArrow.vue +20 -21
- package/components/process/arc-arrow-process/ArcArrowProcessCallout.vue +30 -71
- package/components/process/arc-arrow-process/ArcArrowProcessContent.vue +18 -13
- package/components/process/arc-arrow-process/ArcArrowProcessHeading.vue +18 -18
- package/components/process/arc-arrow-process/ArcArrowProcessIcon.vue +23 -11
- package/components/process/arc-arrow-process/style.css +20 -0
- package/components/pyramid/circular-pyramid/CircularPyramid.vue +276 -190
- package/components/pyramid/circular-pyramid/CircularPyramidStack.vue +83 -98
- package/components/pyramid/circular-pyramid/CircularPyramidStackContent.vue +136 -29
- package/components/pyramid/circular-pyramid/CircularPyramidStackHeading.vue +212 -0
- package/components/pyramid/circular-pyramid/style.css +26 -0
- package/components/pyramid/square-pyramid/SquarePyramid.vue +199 -83
- package/components/pyramid/square-pyramid/SquarePyramidStack.vue +87 -95
- package/components/pyramid/square-pyramid/SquarePyramidStackContent.vue +138 -27
- package/components/pyramid/square-pyramid/SquarePyramidStackHeading.vue +212 -0
- package/components/pyramid/square-pyramid/style.css +48 -0
- package/components/style.css +35 -0
- package/layouts/core/arc-toc.vue +40 -45
- package/layouts/core/bg-center.vue +7 -6
- package/layouts/core/style.css +17 -0
- package/layouts/shifting-heading/shifting-intro.vue +4 -13
- package/layouts/thanks/thanks.vue +5 -5
- package/package.json +8 -6
- package/style.css +17 -0
- package/uno.config.ts +1 -0
- package/utils/activateOnKeyboard.ts +14 -0
- package/utils/{chevronCard → card/chevron-card}/context.ts +1 -1
- package/utils/card/chevron-card/index.ts +1 -0
- package/utils/card/horizontal-card/context.ts +12 -0
- package/utils/{horizCard/createHorizCardGeometry.ts → card/horizontal-card/createHorizontalCardGeometry.ts} +10 -45
- package/utils/card/horizontal-card/index.ts +2 -0
- package/utils/card/vertical-card/context.ts +19 -0
- package/utils/{vertCard/createVertCardGeometry.ts → card/vertical-card/createVerticalCardGeometry.ts} +9 -130
- package/utils/card/vertical-card/index.ts +2 -0
- package/utils/colors.ts +93 -0
- package/utils/{arcComparison → comparisons/arc-comparison}/context.ts +0 -11
- package/utils/{arcComparison → comparisons/arc-comparison}/createArcComparisonGeometry.ts +1 -1
- package/utils/comparisons/arc-comparison/resolveArcComparisonItems.ts +33 -0
- package/utils/comparisons/table-comparison/constants.ts +47 -0
- package/utils/{tableComparison → comparisons/table-comparison}/context.ts +2 -2
- package/utils/{arcOrbit → core/arc-orbit}/resolveArcOrbitItems.ts +11 -15
- package/utils/defense-in-depth/arc-defense-in-depth/context.ts +113 -0
- package/utils/defense-in-depth/arc-defense-in-depth/createArcDefenseInDepthGeometry.ts +600 -0
- package/utils/defense-in-depth/arc-defense-in-depth/types.ts +144 -0
- package/utils/defense-in-depth/shared/colors.ts +51 -0
- package/utils/defense-in-depth/shared/constants.ts +22 -0
- package/utils/defense-in-depth/shared/types.ts +7 -0
- package/utils/facets/tetrad/rectangle-orbit-tetrad/context.ts +31 -0
- package/utils/{rectOrbitTetrad/createRectOrbitTetradGeometry.ts → facets/tetrad/rectangle-orbit-tetrad/createRectangleOrbitTetradGeometry.ts} +5 -104
- package/utils/facets/tetrad/rectangle-orbit-tetrad/index.ts +3 -0
- package/utils/{rectOrbitTetrad/resolveRectOrbitTetradItems.ts → facets/tetrad/rectangle-orbit-tetrad/resolveRectangleOrbitTetradItems.ts} +41 -49
- package/utils/{arrowTriad → facets/triad/arrow-triad}/resolveArrowTriadItems.ts +27 -28
- package/utils/{gearTriad → facets/triad/gear-triad}/context.ts +5 -5
- package/utils/{gearTriad → facets/triad/gear-triad}/createGearTriadGeometry.ts +2 -0
- package/utils/{gearTriad → facets/triad/gear-triad}/resolveGearTriadItems.ts +23 -24
- package/utils/facets/triad/hexagon-triad/context.ts +25 -0
- package/utils/{hexTriad/createHexTriadGeometry.ts → facets/triad/hexagon-triad/createHexagonTriadGeometry.ts} +11 -27
- package/utils/facets/triad/hexagon-triad/index.ts +3 -0
- package/utils/facets/triad/hexagon-triad/resolveHexagonTriadItems.ts +60 -0
- package/utils/{shiftingHeading → layouts/shifting-heading}/collectShiftingIntroNodes.ts +1 -0
- package/utils/layouts/table-of-contents/calculateTocCenterAlignmentOffset.ts +17 -0
- package/utils/{tableOfContents → layouts/table-of-contents}/calculateTocMarkerPositions.ts +0 -12
- package/utils/{tableOfContents → layouts/table-of-contents}/createTocConnectorPath.ts +11 -5
- package/utils/{mergeUno → merge-uno}/classifyVisual.ts +1 -1
- package/utils/{mergeUno → merge-uno}/collectClassNames.ts +9 -3
- package/utils/process/arc-arrow-process/resolveArcArrowProcessItems.ts +180 -0
- package/utils/pyramid/circular-pyramid/context.ts +1 -4
- package/utils/pyramid/circular-pyramid/createCircularPyramidGeometry.ts +6 -10
- package/utils/pyramid/shared/colors.ts +33 -83
- package/utils/pyramid/shared/constants.ts +3 -2
- package/utils/pyramid/shared/types.ts +0 -5
- package/utils/pyramid/square-pyramid/context.ts +1 -4
- package/utils/pyramid/square-pyramid/createSquarePyramidGeometry.ts +6 -10
- package/utils/useDiagramAutoScale.ts +64 -16
- package/utils/useMergedUnoAttrs.ts +9 -5
- package/components/card/chevron-card/ChevronCardHeading.vue +0 -39
- package/components/card/horiz-card/HorizCardHeading.vue +0 -47
- package/components/card/vert-card/VertCardHeading.vue +0 -68
- package/components/card/vert-card/VertCardTitle.vue +0 -76
- package/components/comparisons/arc-comparison/ArcComparisonContents.vue +0 -17
- package/components/comparisons/arc-comparison/ArcComparisonTitle.vue +0 -29
- package/components/core/arc-orbit/ArcOrbitContents.vue +0 -18
- package/components/core/arc-orbit/ArcOrbitTitle.vue +0 -50
- package/components/facets/tetrad/rect-orbit-tetrad/RectOrbitTetradCenter.vue +0 -53
- package/components/facets/tetrad/rect-orbit-tetrad/RectOrbitTetradContent.vue +0 -39
- package/components/facets/tetrad/rect-orbit-tetrad/RectOrbitTetradHeading.vue +0 -44
- package/components/facets/triad/gear-triad/GearTriadContents.vue +0 -111
- package/components/facets/triad/gear-triad/GearTriadDescription.vue +0 -38
- package/components/facets/triad/hex-triad/HexTriadCenterBadge.vue +0 -51
- package/components/facets/triad/hex-triad/HexTriadContent.vue +0 -20
- package/components/facets/triad/hex-triad/HexTriadHeading.vue +0 -28
- package/components/pyramid/circular-pyramid/CircularPyramidStackTitle.vue +0 -138
- package/components/pyramid/square-pyramid/SquarePyramidStackTitle.vue +0 -134
- package/layouts/core/table-of-contents.vue +0 -30
- package/utils/arcArrowProcess/resolveArcArrowProcessItems.ts +0 -189
- package/utils/arcComparison/resolveArcComparisonItems.ts +0 -102
- package/utils/chevronCard/createChevronCardGeometry.ts +0 -48
- package/utils/chevronCard/index.ts +0 -2
- package/utils/hexTriad/context.ts +0 -25
- package/utils/hexTriad/index.ts +0 -3
- package/utils/hexTriad/resolveHexTriadItems.ts +0 -63
- package/utils/horizCard/context.ts +0 -13
- package/utils/horizCard/index.ts +0 -2
- package/utils/pyramid/index.ts +0 -3
- package/utils/rectOrbitTetrad/context.ts +0 -31
- package/utils/rectOrbitTetrad/index.ts +0 -3
- package/utils/tableComparison/constants.ts +0 -72
- package/utils/tableOfContents/calculateTocCenterAlignmentOffset.ts +0 -11
- package/utils/vertCard/context.ts +0 -18
- package/utils/vertCard/index.ts +0 -2
- package/utils/{arcComparison → comparisons/arc-comparison}/index.ts +0 -0
- package/utils/{tableComparison → comparisons/table-comparison}/index.ts +0 -0
- package/utils/{arcOrbit → core/arc-orbit}/context.ts +0 -0
- package/utils/{arcOrbit → core/arc-orbit}/createArcOrbitGeometry.ts +0 -0
- package/utils/{arcOrbit → core/arc-orbit}/index.ts +0 -0
- package/utils/{arrowTriad → facets/triad/arrow-triad}/context.ts +0 -0
- package/utils/{arrowTriad → facets/triad/arrow-triad}/createArrowTriadGeometry.ts +0 -0
- package/utils/{arrowTriad → facets/triad/arrow-triad}/index.ts +0 -0
- package/utils/{gearTriad → facets/triad/gear-triad}/index.ts +0 -0
- package/utils/{tableOfContents → layouts/table-of-contents}/calculateUniformTocArticleWidth.ts +0 -0
- package/utils/{tableOfContents → layouts/table-of-contents}/createTocArcPath.ts +0 -0
- package/utils/{tableOfContents → layouts/table-of-contents}/index.ts +0 -0
- package/utils/{mergeUno → merge-uno}/classifyLayout.ts +0 -0
- package/utils/{mergeUno → merge-uno}/classifySimple.ts +0 -0
- package/utils/{mergeUno → merge-uno}/classifyTypography.ts +0 -0
- package/utils/{mergeUno → merge-uno}/classifyUtility.ts +0 -0
- package/utils/{mergeUno → merge-uno}/index.ts +0 -0
- package/utils/{mergeUno → merge-uno}/mergeClassValues.ts +0 -0
- package/utils/{mergeUno → merge-uno}/splitVariantScope.ts +1 -1
- package/utils/{mergeUno → merge-uno}/types.ts +0 -0
- package/utils/{arcArrowProcess → process/arc-arrow-process}/context.ts +1 -1
- /package/utils/{arcArrowProcess → process/arc-arrow-process}/createArcArrowProcessGeometry.ts +0 -0
- /package/utils/{arcArrowProcess → process/arc-arrow-process}/index.ts +0 -0
|
@@ -5,14 +5,16 @@ import {
|
|
|
5
5
|
DEFAULT_HEX_TRIAD_ITEMS,
|
|
6
6
|
HEX_TRIAD_CALLOUT_KEY,
|
|
7
7
|
HEX_TRIAD_ROOT_KEY,
|
|
8
|
-
type
|
|
9
|
-
} from '../../../../utils/
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import
|
|
8
|
+
type IHexagonTriadItem,
|
|
9
|
+
} from '../../../../utils/facets/triad/hexagon-triad';
|
|
10
|
+
import { useMergedUnoAttrs } from '../../../../utils/useMergedUnoAttrs';
|
|
11
|
+
import HexagonTriadBadge from './HexagonTriadBadge.vue';
|
|
12
|
+
import HexagonTriadContent from './HexagonTriadContent.vue';
|
|
13
|
+
import HexagonTriadHeading from './HexagonTriadHeading.vue';
|
|
13
14
|
|
|
14
15
|
defineOptions({
|
|
15
|
-
|
|
16
|
+
inheritAttrs: false,
|
|
17
|
+
name: 'HexagonTriadCallout',
|
|
16
18
|
});
|
|
17
19
|
|
|
18
20
|
interface INamedComponent {
|
|
@@ -30,13 +32,13 @@ function hasComponentName(type: unknown, name: string): boolean {
|
|
|
30
32
|
const rootContext = inject(HEX_TRIAD_ROOT_KEY, undefined);
|
|
31
33
|
|
|
32
34
|
if (!rootContext) {
|
|
33
|
-
console.warn('[
|
|
35
|
+
console.warn('[HexagonTriadCallout] Must be used inside <HexagonTriad>');
|
|
34
36
|
}
|
|
35
37
|
|
|
36
38
|
const registration = rootContext?.registerCallout();
|
|
37
39
|
const index = registration?.index ?? 0;
|
|
38
40
|
|
|
39
|
-
const fallbackItem = computed<
|
|
41
|
+
const fallbackItem = computed<IHexagonTriadItem>(() => {
|
|
40
42
|
return DEFAULT_HEX_TRIAD_ITEMS[0];
|
|
41
43
|
});
|
|
42
44
|
|
|
@@ -70,21 +72,22 @@ function flattenVNodes(nodes: VNode[]): VNode[] {
|
|
|
70
72
|
|
|
71
73
|
function isBadgeNode(node: VNode): boolean {
|
|
72
74
|
return (
|
|
73
|
-
hasComponentName(node.type, '
|
|
75
|
+
hasComponentName(node.type, 'HexagonTriadBadge') ||
|
|
76
|
+
node.type === HexagonTriadBadge
|
|
74
77
|
);
|
|
75
78
|
}
|
|
76
79
|
|
|
77
80
|
function isHeadingNode(node: VNode): boolean {
|
|
78
81
|
return (
|
|
79
|
-
hasComponentName(node.type, '
|
|
80
|
-
node.type ===
|
|
82
|
+
hasComponentName(node.type, 'HexagonTriadHeading') ||
|
|
83
|
+
node.type === HexagonTriadHeading
|
|
81
84
|
);
|
|
82
85
|
}
|
|
83
86
|
|
|
84
87
|
function isContentNode(node: VNode): boolean {
|
|
85
88
|
return (
|
|
86
|
-
hasComponentName(node.type, '
|
|
87
|
-
node.type ===
|
|
89
|
+
hasComponentName(node.type, 'HexagonTriadContent') ||
|
|
90
|
+
node.type === HexagonTriadContent
|
|
88
91
|
);
|
|
89
92
|
}
|
|
90
93
|
|
|
@@ -132,30 +135,31 @@ const positionStyle = computed(() => {
|
|
|
132
135
|
|
|
133
136
|
const animation = computed(() => rootContext?.animation?.value ?? true);
|
|
134
137
|
|
|
135
|
-
const
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
}
|
|
138
|
+
const { className, forwardedAttrs } = useMergedUnoAttrs(() => {
|
|
139
|
+
const alignClasses =
|
|
140
|
+
index === 2 ? 'justify-end text-right' : 'justify-start text-left';
|
|
139
141
|
|
|
140
|
-
return `alpha-
|
|
142
|
+
return `alpha-hexagon-triad-callout absolute flex items-start gap-3 z-10 pointer-events-auto ${alignClasses}`;
|
|
141
143
|
});
|
|
142
144
|
</script>
|
|
143
145
|
|
|
144
146
|
<template>
|
|
145
147
|
<div
|
|
146
148
|
v-if="index < 3"
|
|
147
|
-
|
|
149
|
+
v-bind="forwardedAttrs()"
|
|
150
|
+
:class="[
|
|
151
|
+
className(),
|
|
152
|
+
`alpha-hexagon-triad-callout--${index}`,
|
|
153
|
+
{ 'alpha-hexagon-triad-callout--animated': animation },
|
|
154
|
+
]"
|
|
148
155
|
:style="positionStyle"
|
|
149
156
|
>
|
|
150
157
|
<!-- For Index 0 and 1: Badge on left, Text on right -->
|
|
151
158
|
<template v-if="index !== 2">
|
|
152
159
|
<component :is="badgeNode" v-if="badgeNode" />
|
|
153
|
-
<HexTriadBadge v-else />
|
|
154
160
|
<div class="flex flex-col items-start text-left">
|
|
155
161
|
<component :is="headingNode" v-if="headingNode" />
|
|
156
|
-
<HexTriadHeading v-else />
|
|
157
162
|
<component :is="contentNode" v-if="contentNode" />
|
|
158
|
-
<HexTriadContent v-else />
|
|
159
163
|
<component :is="node" v-for="(node, i) in otherNodes" :key="i" />
|
|
160
164
|
</div>
|
|
161
165
|
</template>
|
|
@@ -163,28 +167,28 @@ const containerClass = computed(() => {
|
|
|
163
167
|
<template v-else>
|
|
164
168
|
<div class="flex flex-col items-end text-right">
|
|
165
169
|
<component :is="headingNode" v-if="headingNode" />
|
|
166
|
-
<HexTriadHeading v-else />
|
|
167
170
|
<component :is="contentNode" v-if="contentNode" />
|
|
168
|
-
<HexTriadContent v-else />
|
|
169
171
|
<component :is="node" v-for="(node, i) in otherNodes" :key="i" />
|
|
170
172
|
</div>
|
|
171
173
|
<component :is="badgeNode" v-if="badgeNode" />
|
|
172
|
-
<HexTriadBadge v-else />
|
|
173
174
|
</template>
|
|
174
175
|
</div>
|
|
175
176
|
</template>
|
|
176
177
|
|
|
177
178
|
<style scoped>
|
|
178
|
-
.alpha-
|
|
179
|
-
animation: hex-callout-display 400ms cubic-bezier(0.16, 1, 0.3, 1)
|
|
179
|
+
.alpha-hexagon-triad-callout--animated.alpha-hexagon-triad-callout--0 {
|
|
180
|
+
animation: hex-callout-display 400ms cubic-bezier(0.16, 1, 0.3, 1)
|
|
181
|
+
calc(var(--hex-start-delay, 0ms) + 250ms) both;
|
|
180
182
|
}
|
|
181
183
|
|
|
182
|
-
.alpha-
|
|
183
|
-
animation: hex-callout-display 400ms cubic-bezier(0.16, 1, 0.3, 1)
|
|
184
|
+
.alpha-hexagon-triad-callout--animated.alpha-hexagon-triad-callout--1 {
|
|
185
|
+
animation: hex-callout-display 400ms cubic-bezier(0.16, 1, 0.3, 1)
|
|
186
|
+
calc(var(--hex-start-delay, 0ms) + 450ms) both;
|
|
184
187
|
}
|
|
185
188
|
|
|
186
|
-
.alpha-
|
|
187
|
-
animation: hex-callout-display 400ms cubic-bezier(0.16, 1, 0.3, 1)
|
|
189
|
+
.alpha-hexagon-triad-callout--animated.alpha-hexagon-triad-callout--2 {
|
|
190
|
+
animation: hex-callout-display 400ms cubic-bezier(0.16, 1, 0.3, 1)
|
|
191
|
+
calc(var(--hex-start-delay, 0ms) + 650ms) both;
|
|
188
192
|
}
|
|
189
193
|
|
|
190
194
|
@keyframes hex-callout-display {
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
import { computed } from 'vue';
|
|
3
|
+
|
|
4
|
+
import { useMergedUnoAttrs } from '../../../../utils/useMergedUnoAttrs';
|
|
5
|
+
|
|
6
|
+
defineOptions({
|
|
7
|
+
inheritAttrs: false,
|
|
8
|
+
name: 'HexagonTriadCenterBadge',
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
export interface IHexagonTriadCenterBadgeProps {
|
|
12
|
+
readonly x: number;
|
|
13
|
+
readonly y: number;
|
|
14
|
+
readonly text: string | number;
|
|
15
|
+
readonly color: string;
|
|
16
|
+
readonly filter?: string;
|
|
17
|
+
readonly radius: number;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
const props = withDefaults(defineProps<IHexagonTriadCenterBadgeProps>(), {
|
|
21
|
+
filter: 'url(#hex-badge-shadow)',
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
const transform = computed(() => {
|
|
25
|
+
return `translate(${props.x}, ${props.y})`;
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
const { className, forwardedAttrs } = useMergedUnoAttrs(
|
|
29
|
+
'alpha-hexagon-triad-center-badge',
|
|
30
|
+
);
|
|
31
|
+
</script>
|
|
32
|
+
|
|
33
|
+
<template>
|
|
34
|
+
<g
|
|
35
|
+
v-bind="forwardedAttrs()"
|
|
36
|
+
:class="className()"
|
|
37
|
+
:transform="transform"
|
|
38
|
+
:filter="filter"
|
|
39
|
+
>
|
|
40
|
+
<circle
|
|
41
|
+
class="alpha-hexagon-triad-center-badge__outer"
|
|
42
|
+
cx="0"
|
|
43
|
+
cy="0"
|
|
44
|
+
:r="radius + 4"
|
|
45
|
+
fill="var(--alpha-hexagon-triad-center-badge-fill)"
|
|
46
|
+
/>
|
|
47
|
+
<circle
|
|
48
|
+
class="alpha-hexagon-triad-center-badge__circle"
|
|
49
|
+
cx="0"
|
|
50
|
+
cy="0"
|
|
51
|
+
:r="radius"
|
|
52
|
+
:fill="color"
|
|
53
|
+
/>
|
|
54
|
+
<circle
|
|
55
|
+
class="alpha-hexagon-triad-center-badge__ring"
|
|
56
|
+
cx="0"
|
|
57
|
+
cy="0"
|
|
58
|
+
:r="radius - 4"
|
|
59
|
+
fill="none"
|
|
60
|
+
stroke="var(--alpha-hexagon-triad-center-badge-stroke)"
|
|
61
|
+
stroke-width="1.2"
|
|
62
|
+
:style="{ opacity: 0.65 }"
|
|
63
|
+
/>
|
|
64
|
+
<text
|
|
65
|
+
class="alpha-hexagon-triad-center-badge__text font-sans font-black text-lg select-none"
|
|
66
|
+
x="0"
|
|
67
|
+
y="6.5"
|
|
68
|
+
text-anchor="middle"
|
|
69
|
+
fill="var(--alpha-hexagon-triad-center-badge-fill)"
|
|
70
|
+
>
|
|
71
|
+
{{ text }}
|
|
72
|
+
</text>
|
|
73
|
+
</g>
|
|
74
|
+
</template>
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
import { useMergedUnoAttrs } from '../../../../utils/useMergedUnoAttrs';
|
|
3
|
+
|
|
4
|
+
defineOptions({
|
|
5
|
+
inheritAttrs: false,
|
|
6
|
+
name: 'HexagonTriadContent',
|
|
7
|
+
});
|
|
8
|
+
|
|
9
|
+
export interface IHexagonTriadContentProps {
|
|
10
|
+
readonly color?: string;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
const props = withDefaults(defineProps<IHexagonTriadContentProps>(), {
|
|
14
|
+
color: undefined,
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
const { className, forwardedAttrs } = useMergedUnoAttrs(
|
|
18
|
+
'alpha-hexagon-triad-content font-sans leading-relaxed max-w-60 text-(--alpha-hexagon-triad-content)',
|
|
19
|
+
);
|
|
20
|
+
</script>
|
|
21
|
+
|
|
22
|
+
<template>
|
|
23
|
+
<p
|
|
24
|
+
v-bind="forwardedAttrs()"
|
|
25
|
+
:class="className()"
|
|
26
|
+
:style="
|
|
27
|
+
props.color
|
|
28
|
+
? { '--alpha-hexagon-triad-content': props.color }
|
|
29
|
+
: undefined
|
|
30
|
+
"
|
|
31
|
+
>
|
|
32
|
+
<slot />
|
|
33
|
+
</p>
|
|
34
|
+
</template>
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
import { computed, inject } from 'vue';
|
|
3
|
+
|
|
4
|
+
import { HEX_TRIAD_CALLOUT_KEY } from '../../../../utils/facets/triad/hexagon-triad';
|
|
5
|
+
import { useMergedUnoAttrs } from '../../../../utils/useMergedUnoAttrs';
|
|
6
|
+
|
|
7
|
+
defineOptions({
|
|
8
|
+
inheritAttrs: false,
|
|
9
|
+
name: 'HexagonTriadHeading',
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
export interface IHexagonTriadHeadingProps {
|
|
13
|
+
readonly color?: string;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
const props = withDefaults(defineProps<IHexagonTriadHeadingProps>(), {
|
|
17
|
+
color: undefined,
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
const calloutContext = inject(HEX_TRIAD_CALLOUT_KEY, undefined);
|
|
21
|
+
|
|
22
|
+
const headingColor = computed(() => {
|
|
23
|
+
return (
|
|
24
|
+
props.color ??
|
|
25
|
+
calloutContext?.item.value.color ??
|
|
26
|
+
'var(--alpha-hexagon-triad-heading)'
|
|
27
|
+
);
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
const { className, forwardedAttrs } = useMergedUnoAttrs(
|
|
31
|
+
'alpha-hexagon-triad-heading mb-2 font-sans font-bold tracking-tight',
|
|
32
|
+
);
|
|
33
|
+
</script>
|
|
34
|
+
|
|
35
|
+
<template>
|
|
36
|
+
<h4
|
|
37
|
+
v-if="$slots.default"
|
|
38
|
+
v-bind="forwardedAttrs()"
|
|
39
|
+
:class="className()"
|
|
40
|
+
:style="{ color: headingColor }"
|
|
41
|
+
>
|
|
42
|
+
<slot>{{ '' }}</slot>
|
|
43
|
+
</h4>
|
|
44
|
+
</template>
|
package/components/facets/triad/{hex-triad/HexTriadLayer.vue → hexagon-triad/HexagonTriadLayer.vue}
RENAMED
|
@@ -1,25 +1,33 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
|
+
import { useMergedUnoAttrs } from '../../../../utils/useMergedUnoAttrs';
|
|
3
|
+
|
|
2
4
|
defineOptions({
|
|
3
|
-
|
|
5
|
+
inheritAttrs: false,
|
|
6
|
+
name: 'HexagonTriadLayer',
|
|
4
7
|
});
|
|
5
8
|
|
|
6
|
-
export interface
|
|
9
|
+
export interface IHexagonTriadLayerProps {
|
|
7
10
|
readonly d: string;
|
|
8
11
|
readonly fill?: string;
|
|
9
12
|
readonly filter?: string;
|
|
10
13
|
readonly opacity?: number | string;
|
|
11
14
|
}
|
|
12
15
|
|
|
13
|
-
withDefaults(defineProps<
|
|
16
|
+
withDefaults(defineProps<IHexagonTriadLayerProps>(), {
|
|
14
17
|
opacity: 1,
|
|
15
18
|
fill: undefined,
|
|
16
19
|
filter: undefined,
|
|
17
20
|
});
|
|
21
|
+
|
|
22
|
+
const { className, forwardedAttrs } = useMergedUnoAttrs(
|
|
23
|
+
'alpha-hexagon-triad-layer',
|
|
24
|
+
);
|
|
18
25
|
</script>
|
|
19
26
|
|
|
20
27
|
<template>
|
|
21
28
|
<path
|
|
22
|
-
|
|
29
|
+
v-bind="forwardedAttrs()"
|
|
30
|
+
:class="className()"
|
|
23
31
|
:d="d"
|
|
24
32
|
:fill="fill"
|
|
25
33
|
:filter="filter"
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/* Color defaults shared by this component family. */
|
|
2
|
+
@layer alpha-theme-tokens {
|
|
3
|
+
:root {
|
|
4
|
+
--alpha-hexagon-triad-content: var(--alpha-foreground-primary, #475569);
|
|
5
|
+
--alpha-hexagon-triad-badge: #ffffff;
|
|
6
|
+
--alpha-hexagon-triad-badge-bg: #e11d48;
|
|
7
|
+
--alpha-hexagon-triad-badge-light: #fb7185;
|
|
8
|
+
--alpha-hexagon-triad-center-badge-fill: #ffffff;
|
|
9
|
+
--alpha-hexagon-triad-center-badge-stroke: #ffffff;
|
|
10
|
+
--alpha-hexagon-triad-connector-stroke: #ffffff;
|
|
11
|
+
--alpha-hexagon-triad-heading: var(--alpha-foreground-primary, #e11d48);
|
|
12
|
+
--alpha-hexagon-triad-item-1-color: #ee3248;
|
|
13
|
+
--alpha-hexagon-triad-item-1-depth: #9e1526;
|
|
14
|
+
--alpha-hexagon-triad-item-1-light: #ff8595;
|
|
15
|
+
--alpha-hexagon-triad-item-2-color: #f26522;
|
|
16
|
+
--alpha-hexagon-triad-item-2-depth: #a83908;
|
|
17
|
+
--alpha-hexagon-triad-item-2-light: #ffb088;
|
|
18
|
+
--alpha-hexagon-triad-item-3-color: #2b4594;
|
|
19
|
+
--alpha-hexagon-triad-item-3-depth: #172554;
|
|
20
|
+
--alpha-hexagon-triad-item-3-light: #8da4e2;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -15,14 +15,12 @@ import {
|
|
|
15
15
|
ARC_ARROW_PROCESS_ROOT_KEY,
|
|
16
16
|
createArcArrowProcessGeometry,
|
|
17
17
|
getDefaultArcArrowProcessItem,
|
|
18
|
-
type IArcArrowProcessItem,
|
|
19
18
|
type IArcArrowProcessRegistration,
|
|
20
19
|
type IResolvedArcArrowProcessItem,
|
|
21
20
|
resolveArcArrowProcessItems,
|
|
22
|
-
} from '../../../utils/
|
|
21
|
+
} from '../../../utils/process/arc-arrow-process';
|
|
23
22
|
import { useMergedUnoAttrs } from '../../../utils/useMergedUnoAttrs';
|
|
24
23
|
import ArcArrowProcessArrow from './ArcArrowProcessArrow.vue';
|
|
25
|
-
import ArcArrowProcessCallout from './ArcArrowProcessCallout.vue';
|
|
26
24
|
|
|
27
25
|
defineOptions({
|
|
28
26
|
name: 'ArcArrowProcess',
|
|
@@ -30,7 +28,6 @@ defineOptions({
|
|
|
30
28
|
});
|
|
31
29
|
|
|
32
30
|
export interface IArcArrowProcessProps {
|
|
33
|
-
readonly items?: readonly IArcArrowProcessItem[];
|
|
34
31
|
readonly count?: number;
|
|
35
32
|
readonly animation?: boolean;
|
|
36
33
|
readonly height?: number | string;
|
|
@@ -40,7 +37,6 @@ export interface IArcArrowProcessProps {
|
|
|
40
37
|
}
|
|
41
38
|
|
|
42
39
|
const props = withDefaults(defineProps<IArcArrowProcessProps>(), {
|
|
43
|
-
items: undefined,
|
|
44
40
|
count: undefined,
|
|
45
41
|
animation: true,
|
|
46
42
|
height: 370,
|
|
@@ -145,15 +141,11 @@ const resolvedCount = computed<number>(() => {
|
|
|
145
141
|
return slottedCount.value;
|
|
146
142
|
}
|
|
147
143
|
|
|
148
|
-
if (props.items && props.items.length > 0) {
|
|
149
|
-
return props.items.length;
|
|
150
|
-
}
|
|
151
|
-
|
|
152
144
|
return 4;
|
|
153
145
|
});
|
|
154
146
|
|
|
155
147
|
const resolvedItems = computed(() => {
|
|
156
|
-
return resolveArcArrowProcessItems(
|
|
148
|
+
return resolveArcArrowProcessItems(undefined, resolvedCount.value);
|
|
157
149
|
});
|
|
158
150
|
|
|
159
151
|
const registeredCalloutColors = ref<Record<number, string>>({});
|
|
@@ -204,18 +196,10 @@ const getArrowColor = (idx: number): string => {
|
|
|
204
196
|
return slottedMatch.color;
|
|
205
197
|
}
|
|
206
198
|
|
|
207
|
-
if (props.items?.[idx]?.color) {
|
|
208
|
-
return props.items[idx].color;
|
|
209
|
-
}
|
|
210
|
-
|
|
211
199
|
return getDefaultArcArrowProcessItem(idx, resolvedCount.value).color;
|
|
212
200
|
};
|
|
213
201
|
|
|
214
202
|
const getArrowGradientEnd = (idx: number): string | undefined => {
|
|
215
|
-
if (props.items?.[idx]?.gradientEnd) {
|
|
216
|
-
return props.items[idx].gradientEnd;
|
|
217
|
-
}
|
|
218
|
-
|
|
219
203
|
if (registeredCalloutColors.value[idx]) {
|
|
220
204
|
return registeredCalloutColors.value[idx];
|
|
221
205
|
}
|
|
@@ -274,7 +258,7 @@ const resolvedHeightStyle = computed(() => {
|
|
|
274
258
|
});
|
|
275
259
|
|
|
276
260
|
const { className, forwardedAttrs } = useMergedUnoAttrs(
|
|
277
|
-
'alpha-arc-arrow-process w-full flex items-start justify-center select-none font-sans relative',
|
|
261
|
+
'alpha-arc-arrow-process w-full min-h-[340px] flex items-start justify-center select-none font-sans relative',
|
|
278
262
|
);
|
|
279
263
|
</script>
|
|
280
264
|
|
|
@@ -284,15 +268,12 @@ const { className, forwardedAttrs } = useMergedUnoAttrs(
|
|
|
284
268
|
:class="className()"
|
|
285
269
|
:style="{
|
|
286
270
|
height: resolvedHeightStyle,
|
|
287
|
-
minHeight: '340px',
|
|
288
|
-
fontFamily:
|
|
289
|
-
'ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \'Segoe UI\', Roboto, sans-serif',
|
|
290
271
|
'--arc-arrow-start-delay': `${resolvedStartDelay}ms`,
|
|
291
272
|
}"
|
|
292
273
|
>
|
|
293
274
|
<!-- Relative stage container -->
|
|
294
275
|
<div
|
|
295
|
-
class="alpha-arc-arrow-process__stage relative w-full h-full max-w-
|
|
276
|
+
class="alpha-arc-arrow-process__stage relative w-full h-full max-w-250 flex items-start justify-center overflow-visible"
|
|
296
277
|
>
|
|
297
278
|
<!-- Central Graphic: Reusing ArcArrowProcessArrow -->
|
|
298
279
|
<div
|
|
@@ -315,36 +296,33 @@ const { className, forwardedAttrs } = useMergedUnoAttrs(
|
|
|
315
296
|
/>
|
|
316
297
|
</div>
|
|
317
298
|
<!-- Callout Cards -->
|
|
318
|
-
<slot
|
|
319
|
-
<template v-else>
|
|
320
|
-
<ArcArrowProcessCallout
|
|
321
|
-
v-for="idx in resolvedCount"
|
|
322
|
-
:key="idx - 1"
|
|
323
|
-
:index="idx - 1"
|
|
324
|
-
/>
|
|
325
|
-
</template>
|
|
299
|
+
<slot />
|
|
326
300
|
</div>
|
|
327
301
|
</div>
|
|
328
302
|
</template>
|
|
329
303
|
|
|
330
304
|
<style scoped>
|
|
331
305
|
.alpha-arc-arrow-process--animated.alpha-arc-arrow-process__arrow--0 {
|
|
332
|
-
animation: arc-arrow-pop 450ms cubic-bezier(0.16, 1, 0.3, 1)
|
|
306
|
+
animation: arc-arrow-pop 450ms cubic-bezier(0.16, 1, 0.3, 1)
|
|
307
|
+
calc(var(--arc-arrow-start-delay, 0ms) + 50ms) both;
|
|
333
308
|
transform-origin: 500px -220px;
|
|
334
309
|
}
|
|
335
310
|
|
|
336
311
|
.alpha-arc-arrow-process--animated.alpha-arc-arrow-process__arrow--1 {
|
|
337
|
-
animation: arc-arrow-pop 450ms cubic-bezier(0.16, 1, 0.3, 1)
|
|
312
|
+
animation: arc-arrow-pop 450ms cubic-bezier(0.16, 1, 0.3, 1)
|
|
313
|
+
calc(var(--arc-arrow-start-delay, 0ms) + 130ms) both;
|
|
338
314
|
transform-origin: 500px -220px;
|
|
339
315
|
}
|
|
340
316
|
|
|
341
317
|
.alpha-arc-arrow-process--animated.alpha-arc-arrow-process__arrow--2 {
|
|
342
|
-
animation: arc-arrow-pop 450ms cubic-bezier(0.16, 1, 0.3, 1)
|
|
318
|
+
animation: arc-arrow-pop 450ms cubic-bezier(0.16, 1, 0.3, 1)
|
|
319
|
+
calc(var(--arc-arrow-start-delay, 0ms) + 210ms) both;
|
|
343
320
|
transform-origin: 500px -220px;
|
|
344
321
|
}
|
|
345
322
|
|
|
346
323
|
.alpha-arc-arrow-process--animated.alpha-arc-arrow-process__arrow--3 {
|
|
347
|
-
animation: arc-arrow-pop 450ms cubic-bezier(0.16, 1, 0.3, 1)
|
|
324
|
+
animation: arc-arrow-pop 450ms cubic-bezier(0.16, 1, 0.3, 1)
|
|
325
|
+
calc(var(--arc-arrow-start-delay, 0ms) + 290ms) both;
|
|
348
326
|
transform-origin: 500px -220px;
|
|
349
327
|
}
|
|
350
328
|
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
<script setup lang="ts">
|
|
2
2
|
import { computed } from 'vue';
|
|
3
3
|
|
|
4
|
-
import { DEFAULT_ARC_ARROW_PATH } from '../../../utils/
|
|
4
|
+
import { DEFAULT_ARC_ARROW_PATH } from '../../../utils/process/arc-arrow-process';
|
|
5
|
+
import { useMergedUnoAttrs } from '../../../utils/useMergedUnoAttrs';
|
|
5
6
|
|
|
6
7
|
defineOptions({
|
|
7
8
|
name: 'ArcArrowProcessArrow',
|
|
9
|
+
inheritAttrs: false,
|
|
8
10
|
});
|
|
9
11
|
|
|
10
12
|
export interface IArcArrowProcessArrowProps {
|
|
@@ -22,9 +24,9 @@ export interface IArcArrowProcessArrowProps {
|
|
|
22
24
|
}
|
|
23
25
|
|
|
24
26
|
const props = withDefaults(defineProps<IArcArrowProcessArrowProps>(), {
|
|
25
|
-
color: '
|
|
26
|
-
gradientEnd: '
|
|
27
|
-
stroke: '
|
|
27
|
+
color: 'var(--alpha-arc-arrow-process-arrow)',
|
|
28
|
+
gradientEnd: 'var(--alpha-arc-arrow-process-arrow-gradient-end)',
|
|
29
|
+
stroke: 'var(--alpha-arc-arrow-process-arrow-stroke)',
|
|
28
30
|
strokeWidth: 2.5,
|
|
29
31
|
width: undefined,
|
|
30
32
|
height: undefined,
|
|
@@ -76,50 +78,47 @@ const resolvedHeight = computed(() => {
|
|
|
76
78
|
|
|
77
79
|
return isStandalone.value ? '215px' : '100%';
|
|
78
80
|
});
|
|
81
|
+
|
|
82
|
+
const { className, forwardedAttrs } = useMergedUnoAttrs(
|
|
83
|
+
'alpha-arc-arrow-process-arrow inline-flex items-center justify-center select-none',
|
|
84
|
+
);
|
|
79
85
|
</script>
|
|
80
86
|
|
|
81
87
|
<template>
|
|
82
88
|
<div
|
|
83
|
-
|
|
89
|
+
v-bind="forwardedAttrs()"
|
|
90
|
+
:class="className()"
|
|
84
91
|
:style="{
|
|
85
92
|
width: resolvedWidth,
|
|
86
93
|
height: resolvedHeight,
|
|
87
94
|
}"
|
|
88
95
|
>
|
|
89
96
|
<svg
|
|
97
|
+
aria-hidden="true"
|
|
90
98
|
class="w-full h-full overflow-visible"
|
|
91
99
|
:viewBox="resolvedViewBox"
|
|
92
100
|
preserveAspectRatio="xMidYMin meet"
|
|
93
101
|
xmlns="http://www.w3.org/2000/svg"
|
|
94
102
|
>
|
|
95
103
|
<defs>
|
|
96
|
-
<filter
|
|
97
|
-
:id="shadowId"
|
|
98
|
-
x="-30%"
|
|
99
|
-
y="-30%"
|
|
100
|
-
width="160%"
|
|
101
|
-
height="160%"
|
|
102
|
-
>
|
|
104
|
+
<filter :id="shadowId" x="-30%" y="-30%" width="160%" height="160%">
|
|
103
105
|
<feDropShadow
|
|
104
106
|
dx="0"
|
|
105
107
|
dy="5"
|
|
106
108
|
stdDeviation="5"
|
|
107
109
|
flood-opacity="0.22"
|
|
108
|
-
flood-color="
|
|
110
|
+
flood-color="var(--alpha-arc-arrow-process-arrow-shadow)"
|
|
109
111
|
/>
|
|
110
112
|
</filter>
|
|
111
|
-
<linearGradient
|
|
112
|
-
:id="gradId"
|
|
113
|
-
x1="0%"
|
|
114
|
-
y1="100%"
|
|
115
|
-
x2="100%"
|
|
116
|
-
y2="0%"
|
|
117
|
-
>
|
|
113
|
+
<linearGradient :id="gradId" x1="0%" y1="100%" x2="100%" y2="0%">
|
|
118
114
|
<stop offset="0%" :stop-color="props.color" />
|
|
119
115
|
<stop offset="100%" :stop-color="props.gradientEnd ?? props.color" />
|
|
120
116
|
</linearGradient>
|
|
121
117
|
</defs>
|
|
122
|
-
<g
|
|
118
|
+
<g
|
|
119
|
+
v-if="!isStandalone"
|
|
120
|
+
:transform="`translate(500, ${props.originY}) rotate(${props.rotation})`"
|
|
121
|
+
>
|
|
123
122
|
<path
|
|
124
123
|
:d="resolvedPath"
|
|
125
124
|
:fill="`url(#${gradId})`"
|