@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.
Files changed (220) hide show
  1. package/README.md +133 -75
  2. package/components/card/chevron-card/ChevronCard.vue +44 -32
  3. package/components/card/chevron-card/ChevronCardBadge.vue +14 -8
  4. package/components/card/chevron-card/ChevronCardContent.vue +15 -13
  5. package/components/card/chevron-card/style.css +12 -0
  6. package/components/card/{horiz-card/HorizCard.vue → horizontal-card/HorizontalCard.vue} +78 -85
  7. package/components/card/{horiz-card/HorizCardBadge.vue → horizontal-card/HorizontalCardBadge.vue} +15 -10
  8. package/components/card/{horiz-card/HorizCardContent.vue → horizontal-card/HorizontalCardContent.vue} +11 -11
  9. package/components/card/{horiz-card/HorizCardIcon.vue → horizontal-card/HorizontalCardIcon.vue} +24 -38
  10. package/components/card/horizontal-card/style.css +17 -0
  11. package/components/card/{vert-card/VertCard.vue → vertical-card/VerticalCard.vue} +80 -103
  12. package/components/card/{vert-card/VertCardBadge.vue → vertical-card/VerticalCardBadge.vue} +15 -10
  13. package/components/card/{vert-card/VertCardContent.vue → vertical-card/VerticalCardContent.vue} +13 -12
  14. package/components/card/{vert-card/VertCardIcon.vue → vertical-card/VerticalCardIcon.vue} +15 -33
  15. package/components/card/vertical-card/style.css +19 -0
  16. package/components/comparisons/arc-comparison/ArcComparison.vue +376 -80
  17. package/components/comparisons/arc-comparison/ArcComparisonBadge.vue +9 -4
  18. package/components/comparisons/arc-comparison/ArcComparisonContent.vue +9 -4
  19. package/components/comparisons/arc-comparison/ArcComparisonHeading.vue +9 -4
  20. package/components/comparisons/arc-comparison/ArcComparisonLeft.vue +39 -63
  21. package/components/comparisons/arc-comparison/ArcComparisonOrbit.vue +9 -8
  22. package/components/comparisons/arc-comparison/ArcComparisonRight.vue +39 -63
  23. package/components/comparisons/arc-comparison/style.css +27 -0
  24. package/components/comparisons/table-comparison/TableComparison.vue +17 -97
  25. package/components/comparisons/table-comparison/TableComparisonCell.vue +22 -20
  26. package/components/comparisons/table-comparison/{TableComparisonCol.vue → TableComparisonColumn.vue} +16 -14
  27. package/components/comparisons/table-comparison/{TableComparisonCols.vue → TableComparisonColumns.vue} +5 -8
  28. package/components/comparisons/table-comparison/TableComparisonRow.vue +10 -14
  29. package/components/comparisons/table-comparison/TableComparisonRows.vue +1 -4
  30. package/components/comparisons/table-comparison/style.css +15 -0
  31. package/components/core/Date.vue +2 -5
  32. package/components/core/QnA.vue +1 -1
  33. package/components/core/Quote.vue +3 -6
  34. package/components/core/ReflectedTitle.vue +2 -6
  35. package/components/core/Speaker.vue +5 -10
  36. package/components/core/TransitionHeading.vue +2 -5
  37. package/components/core/arc-orbit/ArcOrbit.vue +65 -84
  38. package/components/core/arc-orbit/ArcOrbitBadge.vue +9 -11
  39. package/components/core/arc-orbit/ArcOrbitCallout.vue +30 -32
  40. package/components/core/arc-orbit/ArcOrbitContent.vue +6 -12
  41. package/components/core/arc-orbit/ArcOrbitHeading.vue +13 -11
  42. package/components/core/arc-orbit/style.css +20 -0
  43. package/components/core/style.css +9 -0
  44. package/components/core/thanks/{ThanksContent.vue → SquareThanks.vue} +36 -31
  45. package/components/core/thanks/SquareThanksContent.vue +89 -0
  46. package/components/core/thanks/ThanksOutlineSquare.vue +2 -5
  47. package/components/core/thanks/ThanksSquare.vue +2 -5
  48. package/components/core/thanks/style.css +30 -0
  49. package/components/defense-in-depth/arc-defense-in-depth/ArcDefenseInDepth.vue +802 -0
  50. package/components/defense-in-depth/arc-defense-in-depth/ArcDefenseInDepthLayer.vue +240 -0
  51. package/components/defense-in-depth/arc-defense-in-depth/ArcDefenseInDepthLayerHeading.vue +96 -0
  52. package/components/defense-in-depth/arc-defense-in-depth/ArcDefenseInDepthLayerPart.vue +501 -0
  53. package/components/defense-in-depth/arc-defense-in-depth/ArcDefenseInDepthLayerSector.vue +162 -0
  54. package/components/defense-in-depth/arc-defense-in-depth/style.css +38 -0
  55. package/components/facets/tetrad/{rect-orbit-tetrad/RectOrbitTetrad.vue → rectangle-orbit-tetrad/RectangleOrbitTetrad.vue} +66 -63
  56. package/components/facets/tetrad/{rect-orbit-tetrad/RectOrbitTetradCallout.vue → rectangle-orbit-tetrad/RectangleOrbitTetradCallout.vue} +62 -48
  57. package/components/facets/tetrad/rectangle-orbit-tetrad/RectangleOrbitTetradCenter.vue +54 -0
  58. package/components/facets/tetrad/rectangle-orbit-tetrad/RectangleOrbitTetradContent.vue +44 -0
  59. package/components/facets/tetrad/rectangle-orbit-tetrad/RectangleOrbitTetradHeading.vue +27 -0
  60. package/components/facets/tetrad/{rect-orbit-tetrad/RectOrbitTetradIcon.vue → rectangle-orbit-tetrad/RectangleOrbitTetradIcon.vue} +23 -13
  61. package/components/facets/tetrad/rectangle-orbit-tetrad/style.css +22 -0
  62. package/components/facets/triad/arrow-triad/ArrowTriad.vue +99 -109
  63. package/components/facets/triad/arrow-triad/ArrowTriadCallout.vue +31 -59
  64. package/components/facets/triad/arrow-triad/ArrowTriadContent.vue +18 -13
  65. package/components/facets/triad/arrow-triad/ArrowTriadHeading.vue +20 -13
  66. package/components/facets/triad/arrow-triad/ArrowTriadIcon.vue +14 -9
  67. package/components/facets/triad/arrow-triad/style.css +15 -0
  68. package/components/facets/triad/gear-triad/GearTriad.vue +73 -64
  69. package/components/facets/triad/gear-triad/GearTriadCallout.vue +58 -53
  70. package/components/facets/triad/gear-triad/GearTriadCenter.vue +9 -4
  71. package/components/facets/triad/gear-triad/GearTriadContent.vue +21 -36
  72. package/components/facets/triad/gear-triad/GearTriadDetail.vue +92 -0
  73. package/components/facets/triad/gear-triad/GearTriadDetails.vue +169 -0
  74. package/components/facets/triad/gear-triad/GearTriadDetailsContent.vue +18 -0
  75. package/components/facets/triad/gear-triad/GearTriadDetailsHeading.vue +60 -0
  76. package/components/facets/triad/gear-triad/GearTriadHeading.vue +19 -13
  77. package/components/facets/triad/gear-triad/GearTriadIcon.vue +22 -9
  78. package/components/facets/triad/gear-triad/style.css +26 -0
  79. package/components/facets/triad/{hex-triad/HexTriad.vue → hexagon-triad/HexagonTriad.vue} +81 -63
  80. package/components/facets/triad/{hex-triad/HexTriadBadge.vue → hexagon-triad/HexagonTriadBadge.vue} +38 -12
  81. package/components/facets/triad/{hex-triad/HexTriadCallout.vue → hexagon-triad/HexagonTriadCallout.vue} +35 -31
  82. package/components/facets/triad/hexagon-triad/HexagonTriadCenterBadge.vue +74 -0
  83. package/components/facets/triad/hexagon-triad/HexagonTriadContent.vue +34 -0
  84. package/components/facets/triad/hexagon-triad/HexagonTriadHeading.vue +44 -0
  85. package/components/facets/triad/{hex-triad/HexTriadLayer.vue → hexagon-triad/HexagonTriadLayer.vue} +12 -4
  86. package/components/facets/triad/hexagon-triad/style.css +22 -0
  87. package/components/process/arc-arrow-process/ArcArrowProcess.vue +13 -35
  88. package/components/process/arc-arrow-process/ArcArrowProcessArrow.vue +20 -21
  89. package/components/process/arc-arrow-process/ArcArrowProcessCallout.vue +30 -71
  90. package/components/process/arc-arrow-process/ArcArrowProcessContent.vue +18 -13
  91. package/components/process/arc-arrow-process/ArcArrowProcessHeading.vue +18 -18
  92. package/components/process/arc-arrow-process/ArcArrowProcessIcon.vue +23 -11
  93. package/components/process/arc-arrow-process/style.css +20 -0
  94. package/components/pyramid/circular-pyramid/CircularPyramid.vue +276 -190
  95. package/components/pyramid/circular-pyramid/CircularPyramidStack.vue +83 -98
  96. package/components/pyramid/circular-pyramid/CircularPyramidStackContent.vue +136 -29
  97. package/components/pyramid/circular-pyramid/CircularPyramidStackHeading.vue +212 -0
  98. package/components/pyramid/circular-pyramid/style.css +26 -0
  99. package/components/pyramid/square-pyramid/SquarePyramid.vue +199 -83
  100. package/components/pyramid/square-pyramid/SquarePyramidStack.vue +87 -95
  101. package/components/pyramid/square-pyramid/SquarePyramidStackContent.vue +138 -27
  102. package/components/pyramid/square-pyramid/SquarePyramidStackHeading.vue +212 -0
  103. package/components/pyramid/square-pyramid/style.css +48 -0
  104. package/components/style.css +35 -0
  105. package/layouts/core/arc-toc.vue +40 -45
  106. package/layouts/core/bg-center.vue +7 -6
  107. package/layouts/core/style.css +17 -0
  108. package/layouts/shifting-heading/shifting-intro.vue +4 -13
  109. package/layouts/thanks/thanks.vue +5 -5
  110. package/package.json +8 -6
  111. package/style.css +17 -0
  112. package/uno.config.ts +1 -0
  113. package/utils/activateOnKeyboard.ts +14 -0
  114. package/utils/{chevronCard → card/chevron-card}/context.ts +1 -1
  115. package/utils/card/chevron-card/index.ts +1 -0
  116. package/utils/card/horizontal-card/context.ts +12 -0
  117. package/utils/{horizCard/createHorizCardGeometry.ts → card/horizontal-card/createHorizontalCardGeometry.ts} +10 -45
  118. package/utils/card/horizontal-card/index.ts +2 -0
  119. package/utils/card/vertical-card/context.ts +19 -0
  120. package/utils/{vertCard/createVertCardGeometry.ts → card/vertical-card/createVerticalCardGeometry.ts} +9 -130
  121. package/utils/card/vertical-card/index.ts +2 -0
  122. package/utils/colors.ts +93 -0
  123. package/utils/{arcComparison → comparisons/arc-comparison}/context.ts +0 -11
  124. package/utils/{arcComparison → comparisons/arc-comparison}/createArcComparisonGeometry.ts +1 -1
  125. package/utils/comparisons/arc-comparison/resolveArcComparisonItems.ts +33 -0
  126. package/utils/comparisons/table-comparison/constants.ts +47 -0
  127. package/utils/{tableComparison → comparisons/table-comparison}/context.ts +2 -2
  128. package/utils/{arcOrbit → core/arc-orbit}/resolveArcOrbitItems.ts +11 -15
  129. package/utils/defense-in-depth/arc-defense-in-depth/context.ts +113 -0
  130. package/utils/defense-in-depth/arc-defense-in-depth/createArcDefenseInDepthGeometry.ts +600 -0
  131. package/utils/defense-in-depth/arc-defense-in-depth/types.ts +144 -0
  132. package/utils/defense-in-depth/shared/colors.ts +51 -0
  133. package/utils/defense-in-depth/shared/constants.ts +22 -0
  134. package/utils/defense-in-depth/shared/types.ts +7 -0
  135. package/utils/facets/tetrad/rectangle-orbit-tetrad/context.ts +31 -0
  136. package/utils/{rectOrbitTetrad/createRectOrbitTetradGeometry.ts → facets/tetrad/rectangle-orbit-tetrad/createRectangleOrbitTetradGeometry.ts} +5 -104
  137. package/utils/facets/tetrad/rectangle-orbit-tetrad/index.ts +3 -0
  138. package/utils/{rectOrbitTetrad/resolveRectOrbitTetradItems.ts → facets/tetrad/rectangle-orbit-tetrad/resolveRectangleOrbitTetradItems.ts} +41 -49
  139. package/utils/{arrowTriad → facets/triad/arrow-triad}/resolveArrowTriadItems.ts +27 -28
  140. package/utils/{gearTriad → facets/triad/gear-triad}/context.ts +5 -5
  141. package/utils/{gearTriad → facets/triad/gear-triad}/createGearTriadGeometry.ts +2 -0
  142. package/utils/{gearTriad → facets/triad/gear-triad}/resolveGearTriadItems.ts +23 -24
  143. package/utils/facets/triad/hexagon-triad/context.ts +25 -0
  144. package/utils/{hexTriad/createHexTriadGeometry.ts → facets/triad/hexagon-triad/createHexagonTriadGeometry.ts} +11 -27
  145. package/utils/facets/triad/hexagon-triad/index.ts +3 -0
  146. package/utils/facets/triad/hexagon-triad/resolveHexagonTriadItems.ts +60 -0
  147. package/utils/{shiftingHeading → layouts/shifting-heading}/collectShiftingIntroNodes.ts +1 -0
  148. package/utils/layouts/table-of-contents/calculateTocCenterAlignmentOffset.ts +17 -0
  149. package/utils/{tableOfContents → layouts/table-of-contents}/calculateTocMarkerPositions.ts +0 -12
  150. package/utils/{tableOfContents → layouts/table-of-contents}/createTocConnectorPath.ts +11 -5
  151. package/utils/{mergeUno → merge-uno}/classifyVisual.ts +1 -1
  152. package/utils/{mergeUno → merge-uno}/collectClassNames.ts +9 -3
  153. package/utils/process/arc-arrow-process/resolveArcArrowProcessItems.ts +180 -0
  154. package/utils/pyramid/circular-pyramid/context.ts +1 -4
  155. package/utils/pyramid/circular-pyramid/createCircularPyramidGeometry.ts +6 -10
  156. package/utils/pyramid/shared/colors.ts +33 -83
  157. package/utils/pyramid/shared/constants.ts +3 -2
  158. package/utils/pyramid/shared/types.ts +0 -5
  159. package/utils/pyramid/square-pyramid/context.ts +1 -4
  160. package/utils/pyramid/square-pyramid/createSquarePyramidGeometry.ts +6 -10
  161. package/utils/useDiagramAutoScale.ts +64 -16
  162. package/utils/useMergedUnoAttrs.ts +9 -5
  163. package/components/card/chevron-card/ChevronCardHeading.vue +0 -39
  164. package/components/card/horiz-card/HorizCardHeading.vue +0 -47
  165. package/components/card/vert-card/VertCardHeading.vue +0 -68
  166. package/components/card/vert-card/VertCardTitle.vue +0 -76
  167. package/components/comparisons/arc-comparison/ArcComparisonContents.vue +0 -17
  168. package/components/comparisons/arc-comparison/ArcComparisonTitle.vue +0 -29
  169. package/components/core/arc-orbit/ArcOrbitContents.vue +0 -18
  170. package/components/core/arc-orbit/ArcOrbitTitle.vue +0 -50
  171. package/components/facets/tetrad/rect-orbit-tetrad/RectOrbitTetradCenter.vue +0 -53
  172. package/components/facets/tetrad/rect-orbit-tetrad/RectOrbitTetradContent.vue +0 -39
  173. package/components/facets/tetrad/rect-orbit-tetrad/RectOrbitTetradHeading.vue +0 -44
  174. package/components/facets/triad/gear-triad/GearTriadContents.vue +0 -111
  175. package/components/facets/triad/gear-triad/GearTriadDescription.vue +0 -38
  176. package/components/facets/triad/hex-triad/HexTriadCenterBadge.vue +0 -51
  177. package/components/facets/triad/hex-triad/HexTriadContent.vue +0 -20
  178. package/components/facets/triad/hex-triad/HexTriadHeading.vue +0 -28
  179. package/components/pyramid/circular-pyramid/CircularPyramidStackTitle.vue +0 -138
  180. package/components/pyramid/square-pyramid/SquarePyramidStackTitle.vue +0 -134
  181. package/layouts/core/table-of-contents.vue +0 -30
  182. package/utils/arcArrowProcess/resolveArcArrowProcessItems.ts +0 -189
  183. package/utils/arcComparison/resolveArcComparisonItems.ts +0 -102
  184. package/utils/chevronCard/createChevronCardGeometry.ts +0 -48
  185. package/utils/chevronCard/index.ts +0 -2
  186. package/utils/hexTriad/context.ts +0 -25
  187. package/utils/hexTriad/index.ts +0 -3
  188. package/utils/hexTriad/resolveHexTriadItems.ts +0 -63
  189. package/utils/horizCard/context.ts +0 -13
  190. package/utils/horizCard/index.ts +0 -2
  191. package/utils/pyramid/index.ts +0 -3
  192. package/utils/rectOrbitTetrad/context.ts +0 -31
  193. package/utils/rectOrbitTetrad/index.ts +0 -3
  194. package/utils/tableComparison/constants.ts +0 -72
  195. package/utils/tableOfContents/calculateTocCenterAlignmentOffset.ts +0 -11
  196. package/utils/vertCard/context.ts +0 -18
  197. package/utils/vertCard/index.ts +0 -2
  198. package/utils/{arcComparison → comparisons/arc-comparison}/index.ts +0 -0
  199. package/utils/{tableComparison → comparisons/table-comparison}/index.ts +0 -0
  200. package/utils/{arcOrbit → core/arc-orbit}/context.ts +0 -0
  201. package/utils/{arcOrbit → core/arc-orbit}/createArcOrbitGeometry.ts +0 -0
  202. package/utils/{arcOrbit → core/arc-orbit}/index.ts +0 -0
  203. package/utils/{arrowTriad → facets/triad/arrow-triad}/context.ts +0 -0
  204. package/utils/{arrowTriad → facets/triad/arrow-triad}/createArrowTriadGeometry.ts +0 -0
  205. package/utils/{arrowTriad → facets/triad/arrow-triad}/index.ts +0 -0
  206. package/utils/{gearTriad → facets/triad/gear-triad}/index.ts +0 -0
  207. package/utils/{tableOfContents → layouts/table-of-contents}/calculateUniformTocArticleWidth.ts +0 -0
  208. package/utils/{tableOfContents → layouts/table-of-contents}/createTocArcPath.ts +0 -0
  209. package/utils/{tableOfContents → layouts/table-of-contents}/index.ts +0 -0
  210. package/utils/{mergeUno → merge-uno}/classifyLayout.ts +0 -0
  211. package/utils/{mergeUno → merge-uno}/classifySimple.ts +0 -0
  212. package/utils/{mergeUno → merge-uno}/classifyTypography.ts +0 -0
  213. package/utils/{mergeUno → merge-uno}/classifyUtility.ts +0 -0
  214. package/utils/{mergeUno → merge-uno}/index.ts +0 -0
  215. package/utils/{mergeUno → merge-uno}/mergeClassValues.ts +0 -0
  216. package/utils/{mergeUno → merge-uno}/splitVariantScope.ts +1 -1
  217. package/utils/{mergeUno → merge-uno}/types.ts +0 -0
  218. package/utils/{arcArrowProcess → process/arc-arrow-process}/context.ts +1 -1
  219. /package/utils/{arcArrowProcess → process/arc-arrow-process}/createArcArrowProcessGeometry.ts +0 -0
  220. /package/utils/{arcArrowProcess → process/arc-arrow-process}/index.ts +0 -0
@@ -1,11 +1,35 @@
1
1
  <script setup lang="ts">
2
2
  import type { MotionVariants, Variant } from '@vueuse/motion';
3
+ import { computed, useSlots } from 'vue';
3
4
 
4
- const { animation } = defineProps({
5
+ import SquareThanksContent from './SquareThanksContent.vue';
6
+
7
+ const { animation, color } = defineProps({
5
8
  animation: {
6
9
  type: Boolean,
7
10
  default: true,
8
11
  },
12
+ color: {
13
+ type: String,
14
+ default: undefined,
15
+ },
16
+ });
17
+
18
+ const slots = useSlots();
19
+
20
+ const hasExplicitContent = computed(() => {
21
+ if (!slots.default) {
22
+ return false;
23
+ }
24
+
25
+ const nodes = slots.default();
26
+ return nodes.some(
27
+ (node) =>
28
+ typeof node.type === 'object' &&
29
+ node.type !== null &&
30
+ 'name' in node.type &&
31
+ node.type.name === 'SquareThanksContent',
32
+ );
9
33
  });
10
34
 
11
35
  const begin = {
@@ -71,7 +95,7 @@ const getMotionProps = ({
71
95
  y: -100,
72
96
  },
73
97
  })"
74
- class="alpha-thanks-content absolute w-[150px] h-[150px] rotate-45 top-[50%] left-[40%] z-10"
98
+ class="alpha-square-thanks-decoration absolute w-37.5 h-37.5 rotate-45 top-[50%] left-[40%] z-10"
75
99
  />
76
100
  <ThanksSquare
77
101
  v-motion
@@ -91,7 +115,7 @@ const getMotionProps = ({
91
115
  }
92
116
  },
93
117
  })"
94
- class="alpha-thanks-content w-[100px] h-[100px] top-[20%] rotate-45 left-[48%] translate-x-[-50%] translate-y-[-50%] opacity-[0.4]"
118
+ class="alpha-square-thanks-decoration w-25 h-25 top-[20%] rotate-45 left-[48%] translate-x-[-50%] translate-y-[-50%] opacity-[0.4]"
95
119
  />
96
120
  <ThanksSquare
97
121
  v-motion
@@ -111,7 +135,7 @@ const getMotionProps = ({
111
135
  }
112
136
  },
113
137
  })"
114
- class="alpha-thanks-content w-[100px] h-[100px] top-[45%] rotate-45 left-[22%] translate-x-[-50%] translate-y-[-50%] opacity-[0.4]"
138
+ class="alpha-square-thanks-decoration w-25 h-25 top-[45%] rotate-45 left-[22%] translate-x-[-50%] translate-y-[-50%] opacity-[0.4]"
115
139
  />
116
140
  <ThanksSquare
117
141
  v-motion
@@ -131,7 +155,7 @@ const getMotionProps = ({
131
155
  }
132
156
  },
133
157
  })"
134
- class="alpha-thanks-content w-[100px] h-[100px] bottom-0 rotate-45 left-[48%] translate-x-[-50%] translate-y-[-50%] opacity-[0.4]"
158
+ class="alpha-square-thanks-decoration w-25 h-25 bottom-0 rotate-45 left-[48%] translate-x-[-50%] translate-y-[-50%] opacity-[0.4]"
135
159
  />
136
160
  <ThanksOutlineSquare
137
161
  v-motion
@@ -151,7 +175,7 @@ const getMotionProps = ({
151
175
  },
152
176
  },
153
177
  })"
154
- class="alpha-thanks-content w-[120px] h-[120px] rotate-45 top-[25%] left-[31%]"
178
+ class="alpha-square-thanks-decoration w-30 h-30 rotate-45 top-[25%] left-[31%]"
155
179
  />
156
180
  <ThanksOutlineSquare
157
181
  v-motion
@@ -171,7 +195,7 @@ const getMotionProps = ({
171
195
  },
172
196
  },
173
197
  })"
174
- class="alpha-thanks-content w-[70px] h-[70px] rotate-45 top-[52%] left-[30%]"
198
+ class="alpha-square-thanks-decoration w-17.5 h-17.5 rotate-45 top-[52%] left-[30%]"
175
199
  />
176
200
  <ThanksOutlineSquare
177
201
  v-motion
@@ -191,30 +215,11 @@ const getMotionProps = ({
191
215
  },
192
216
  },
193
217
  })"
194
- class="alpha-thanks-content w-[100px] h-[100px] rotate-45 top-[42%] left-[43%]"
218
+ class="alpha-square-thanks-decoration w-25 h-25 rotate-45 top-[42%] left-[43%]"
195
219
  />
196
220
 
197
- <div
198
- v-motion
199
- v-bind="getMotionProps({
200
- initial: {
201
- x: -80,
202
- opacity: 0,
203
- },
204
- enter: {
205
- x: -130,
206
- y: -46,
207
- opacity: 1,
208
- transition: {
209
- delay: 2_800,
210
- duration: 1_000,
211
- }
212
- },
213
- })"
214
- class="alpha-thanks-content color-[#2b90b6] text-3xl absolute top-[50%] left-[69%] translate-x-[-50%] translate-y-[-50%]"
215
- >
216
- Thank You
217
- <br />
218
- for your attention!
219
- </div>
221
+ <slot v-if="hasExplicitContent" />
222
+ <SquareThanksContent v-else :animation="animation" :color="color">
223
+ <slot> Thank You<br>for your attention! </slot>
224
+ </SquareThanksContent>
220
225
  </template>
@@ -0,0 +1,89 @@
1
+ <script setup lang="ts">
2
+ import type { MotionVariants, Variant } from '@vueuse/motion';
3
+
4
+ import { useMergedUnoAttrs } from '../../../utils/useMergedUnoAttrs';
5
+
6
+ defineOptions({
7
+ inheritAttrs: false,
8
+ name: 'SquareThanksContent',
9
+ });
10
+
11
+ const props = withDefaults(
12
+ defineProps<{
13
+ readonly animation?: boolean;
14
+ readonly color?: string;
15
+ }>(),
16
+ {
17
+ animation: true,
18
+ color: undefined,
19
+ },
20
+ );
21
+
22
+ interface IGetMotionPropsParams {
23
+ enter: Variant;
24
+ initial: Variant;
25
+ }
26
+
27
+ const getMotionProps = ({
28
+ enter,
29
+ initial,
30
+ }: IGetMotionPropsParams): MotionVariants<string> => {
31
+ if (props.animation) {
32
+ return { enter, initial };
33
+ }
34
+
35
+ const state = { ...enter, transition: { duration: 0 } };
36
+ return { enter: state, initial: state };
37
+ };
38
+
39
+ const { className, forwardedAttrs } = useMergedUnoAttrs(
40
+ 'alpha-square-thanks-content absolute top-[50%] left-[69%] translate-x-[-50%] translate-y-[-50%] text-3xl text-(--alpha-square-thanks-content)',
41
+ );
42
+ </script>
43
+
44
+ <template>
45
+ <div
46
+ v-motion
47
+ v-bind="{
48
+ ...forwardedAttrs(),
49
+ ...getMotionProps({
50
+ initial: { x: -80, opacity: 0 },
51
+ enter: {
52
+ x: -130,
53
+ y: -46,
54
+ opacity: 1,
55
+ transition: { delay: 2_800, duration: 1_000 },
56
+ },
57
+ }),
58
+ }"
59
+ :class="className()"
60
+ :style="
61
+ props.color && !props.color.includes('--alpha-square-thanks-content')
62
+ ? { '--alpha-square-thanks-content': props.color }
63
+ : undefined
64
+ "
65
+ >
66
+ <slot />
67
+ </div>
68
+ </template>
69
+
70
+ <style scoped>
71
+ @layer alpha-theme-tokens {
72
+ .alpha-square-thanks-content :deep(h1),
73
+ .alpha-square-thanks-content :deep(h2),
74
+ .alpha-square-thanks-content :deep(h3),
75
+ .alpha-square-thanks-content :deep(h4),
76
+ .alpha-square-thanks-content :deep(h5),
77
+ .alpha-square-thanks-content :deep(h6),
78
+ .alpha-square-thanks-content :deep(p),
79
+ .alpha-square-thanks-content :deep(div) {
80
+ margin: 0;
81
+ padding: 0;
82
+ font-family: inherit;
83
+ font-size: inherit;
84
+ font-weight: inherit;
85
+ line-height: inherit;
86
+ color: inherit;
87
+ }
88
+ }
89
+ </style>
@@ -6,13 +6,10 @@ defineOptions({
6
6
  });
7
7
 
8
8
  const { className, forwardedAttrs } = useMergedUnoAttrs(
9
- 'alpha-thanks-outline-square absolute rounded-2xl border-2 border-color-cyan-500',
9
+ 'alpha-thanks-outline-square absolute rounded-2xl border-2 border-(--alpha-thanks-outline-stroke)',
10
10
  );
11
11
  </script>
12
12
 
13
13
  <template>
14
- <div
15
- v-bind="forwardedAttrs()"
16
- :class="className()"
17
- />
14
+ <div v-bind="forwardedAttrs()" :class="className()" />
18
15
  </template>
@@ -6,13 +6,10 @@ defineOptions({
6
6
  });
7
7
 
8
8
  const { className, forwardedAttrs } = useMergedUnoAttrs(
9
- 'alpha-thanks-square absolute bg-gradient-to-br from-cyan-500 to-blue-500 rounded-3xl',
9
+ 'alpha-thanks-square absolute rounded-3xl',
10
10
  );
11
11
  </script>
12
12
 
13
13
  <template>
14
- <div
15
- v-bind="forwardedAttrs()"
16
- :class="className()"
17
- />
14
+ <div v-bind="forwardedAttrs()" :class="className()" />
18
15
  </template>
@@ -0,0 +1,30 @@
1
+ /* Color defaults shared by this component family. */
2
+ @layer alpha-theme-tokens {
3
+ :root {
4
+ --alpha-square-thanks-content: #2b90b6;
5
+ --alpha-thanks-square-start: #06b6d4;
6
+ --alpha-thanks-square-end: #2563eb;
7
+ --alpha-thanks-outline-stroke: #06b6d4;
8
+ }
9
+ }
10
+
11
+ .alpha-square-thanks-content h1,
12
+ .alpha-square-thanks-content h2,
13
+ .alpha-square-thanks-content h3,
14
+ .alpha-square-thanks-content h4,
15
+ .alpha-square-thanks-content h5,
16
+ .alpha-square-thanks-content h6,
17
+ .alpha-square-thanks-content p,
18
+ .alpha-square-thanks-content div {
19
+ padding: 0;
20
+ margin: 0;
21
+ font-family: inherit;
22
+ font-size: inherit;
23
+ font-weight: inherit;
24
+ line-height: inherit;
25
+ color: inherit;
26
+ }
27
+
28
+ .alpha-thanks-square:not([class*='bg-']) {
29
+ background-image: linear-gradient(to bottom right, var(--alpha-thanks-square-start), var(--alpha-thanks-square-end));
30
+ }