@alphacifer/slidev-addon-theme 0.0.10 → 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 (225) 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-did/ArcDiD.vue → arc-defense-in-depth/ArcDefenseInDepth.vue} +167 -97
  50. package/components/defense-in-depth/arc-defense-in-depth/ArcDefenseInDepthLayer.vue +240 -0
  51. package/components/defense-in-depth/{arc-did/ArcDiDLayerTitle.vue → arc-defense-in-depth/ArcDefenseInDepthLayerHeading.vue} +27 -29
  52. package/components/defense-in-depth/{arc-did/ArcDiDLayerPart.vue → arc-defense-in-depth/ArcDefenseInDepthLayerPart.vue} +91 -39
  53. package/components/defense-in-depth/{arc-did/ArcDiDLayerSector.vue → arc-defense-in-depth/ArcDefenseInDepthLayerSector.vue} +37 -23
  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 +269 -170
  95. package/components/pyramid/circular-pyramid/CircularPyramidStack.vue +70 -52
  96. package/components/pyramid/circular-pyramid/CircularPyramidStackContent.vue +47 -37
  97. package/components/pyramid/circular-pyramid/{CircularPyramidStackTitle.vue → CircularPyramidStackHeading.vue} +49 -45
  98. package/components/pyramid/circular-pyramid/style.css +26 -0
  99. package/components/pyramid/square-pyramid/SquarePyramid.vue +191 -62
  100. package/components/pyramid/square-pyramid/SquarePyramidStack.vue +74 -49
  101. package/components/pyramid/square-pyramid/SquarePyramidStackContent.vue +47 -33
  102. package/components/pyramid/square-pyramid/{SquarePyramidStackTitle.vue → SquarePyramidStackHeading.vue} +49 -41
  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/{defenseInDepth/arcDid → defense-in-depth/arc-defense-in-depth}/context.ts +34 -31
  130. package/utils/{defenseInDepth/arcDid/createArcDiDGeometry.ts → defense-in-depth/arc-defense-in-depth/createArcDefenseInDepthGeometry.ts} +69 -39
  131. package/utils/{defenseInDepth/arcDid → defense-in-depth/arc-defense-in-depth}/types.ts +39 -35
  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/{defenseInDepth → defense-in-depth}/shared/types.ts +0 -5
  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 +2 -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 +8 -6
  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/defense-in-depth/arc-did/ArcDiDLayer.vue +0 -321
  172. package/components/defense-in-depth/arc-did/ArcDiDLayerParts.vue +0 -11
  173. package/components/facets/tetrad/rect-orbit-tetrad/RectOrbitTetradCenter.vue +0 -53
  174. package/components/facets/tetrad/rect-orbit-tetrad/RectOrbitTetradContent.vue +0 -39
  175. package/components/facets/tetrad/rect-orbit-tetrad/RectOrbitTetradHeading.vue +0 -44
  176. package/components/facets/triad/gear-triad/GearTriadContents.vue +0 -111
  177. package/components/facets/triad/gear-triad/GearTriadDescription.vue +0 -38
  178. package/components/facets/triad/hex-triad/HexTriadCenterBadge.vue +0 -51
  179. package/components/facets/triad/hex-triad/HexTriadContent.vue +0 -20
  180. package/components/facets/triad/hex-triad/HexTriadHeading.vue +0 -28
  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/defenseInDepth/arcDid/index.ts +0 -3
  187. package/utils/defenseInDepth/index.ts +0 -2
  188. package/utils/defenseInDepth/shared/colors.ts +0 -121
  189. package/utils/defenseInDepth/shared/constants.ts +0 -14
  190. package/utils/defenseInDepth/shared/index.ts +0 -3
  191. package/utils/hexTriad/context.ts +0 -25
  192. package/utils/hexTriad/index.ts +0 -3
  193. package/utils/hexTriad/resolveHexTriadItems.ts +0 -63
  194. package/utils/horizCard/context.ts +0 -13
  195. package/utils/horizCard/index.ts +0 -2
  196. package/utils/pyramid/index.ts +0 -3
  197. package/utils/rectOrbitTetrad/context.ts +0 -31
  198. package/utils/rectOrbitTetrad/index.ts +0 -3
  199. package/utils/tableComparison/constants.ts +0 -72
  200. package/utils/tableOfContents/calculateTocCenterAlignmentOffset.ts +0 -11
  201. package/utils/vertCard/context.ts +0 -18
  202. package/utils/vertCard/index.ts +0 -2
  203. package/utils/{arcComparison → comparisons/arc-comparison}/index.ts +0 -0
  204. package/utils/{tableComparison → comparisons/table-comparison}/index.ts +0 -0
  205. package/utils/{arcOrbit → core/arc-orbit}/context.ts +0 -0
  206. package/utils/{arcOrbit → core/arc-orbit}/createArcOrbitGeometry.ts +0 -0
  207. package/utils/{arcOrbit → core/arc-orbit}/index.ts +0 -0
  208. package/utils/{arrowTriad → facets/triad/arrow-triad}/context.ts +0 -0
  209. package/utils/{arrowTriad → facets/triad/arrow-triad}/createArrowTriadGeometry.ts +0 -0
  210. package/utils/{arrowTriad → facets/triad/arrow-triad}/index.ts +0 -0
  211. package/utils/{gearTriad → facets/triad/gear-triad}/index.ts +0 -0
  212. package/utils/{tableOfContents → layouts/table-of-contents}/calculateUniformTocArticleWidth.ts +0 -0
  213. package/utils/{tableOfContents → layouts/table-of-contents}/createTocArcPath.ts +0 -0
  214. package/utils/{tableOfContents → layouts/table-of-contents}/index.ts +0 -0
  215. package/utils/{mergeUno → merge-uno}/classifyLayout.ts +0 -0
  216. package/utils/{mergeUno → merge-uno}/classifySimple.ts +0 -0
  217. package/utils/{mergeUno → merge-uno}/classifyTypography.ts +0 -0
  218. package/utils/{mergeUno → merge-uno}/classifyUtility.ts +0 -0
  219. package/utils/{mergeUno → merge-uno}/index.ts +0 -0
  220. package/utils/{mergeUno → merge-uno}/mergeClassValues.ts +0 -0
  221. package/utils/{mergeUno → merge-uno}/splitVariantScope.ts +1 -1
  222. package/utils/{mergeUno → merge-uno}/types.ts +0 -0
  223. package/utils/{arcArrowProcess → process/arc-arrow-process}/context.ts +1 -1
  224. /package/utils/{arcArrowProcess → process/arc-arrow-process}/createArcArrowProcessGeometry.ts +0 -0
  225. /package/utils/{arcArrowProcess → process/arc-arrow-process}/index.ts +0 -0
@@ -2,8 +2,6 @@ import {
2
2
  clampPyramidCount,
3
3
  computePyramidStacking,
4
4
  DEFAULT_PYRAMID_COLOR,
5
- darkenColor,
6
- lightenColor,
7
5
  MAX_PYRAMID_COUNT,
8
6
  MIN_PYRAMID_COUNT,
9
7
  resolvePyramidPalette,
@@ -17,19 +15,17 @@ import type {
17
15
 
18
16
  export const DEFAULT_SQUARE_PYRAMID_COLOR = DEFAULT_PYRAMID_COLOR;
19
17
  export const DEFAULT_SQUARE_PYRAMID_STACK_COLORS: readonly string[] = [
20
- '#ec4899', // 0: Pink (matches top slab)
21
- '#8b5cf6', // 1: Purple (matches 2nd slab)
22
- '#3b82f6', // 2: Blue (matches 3rd slab)
23
- '#06b6d4', // 3: Cyan (matches 4th slab)
24
- '#14b8a6', // 4: Teal (matches 5th slab)
25
- '#f59e0b', // 5: Amber (warm accent)
18
+ 'var(--alpha-square-pyramid-stack-1-color)',
19
+ 'var(--alpha-square-pyramid-stack-2-color)',
20
+ 'var(--alpha-square-pyramid-stack-3-color)',
21
+ 'var(--alpha-square-pyramid-stack-4-color)',
22
+ 'var(--alpha-square-pyramid-stack-5-color)',
23
+ 'var(--alpha-square-pyramid-stack-6-color)',
26
24
  ] as const;
27
25
 
28
26
  export const MIN_SQUARE_COUNT = MIN_PYRAMID_COUNT;
29
27
  export const MAX_SQUARE_COUNT = MAX_PYRAMID_COUNT;
30
28
 
31
- export { darkenColor, lightenColor };
32
-
33
29
  export function clampSquareCount(count?: number): number {
34
30
  return clampPyramidCount(count);
35
31
  }
@@ -46,7 +46,7 @@ function resolveValue<T>(val: Ref<T> | (() => T) | undefined, fallback: T): T {
46
46
 
47
47
  /**
48
48
  * Automatically computes a scale factor (via CSS transform: scale)
49
- * so that diagram components (ArrowTriad, RectOrbitTetrad, ArcArrowProcess, etc.)
49
+ * so that diagram components (ArrowTriad, RectangleOrbitTetrad, ArcArrowProcess, etc.)
50
50
  * fit comfortably inside the available slide canvas without clipping or overlaying pagination.
51
51
  */
52
52
  export function useDiagramAutoScale(
@@ -156,16 +156,14 @@ export function useDiagramAutoScale(
156
156
  pagyEl && window.getComputedStyle(pagyEl).display !== 'none';
157
157
  const clearance = isPagyVisible ? pagyClearance : 16;
158
158
 
159
- // Check for internal component header inside el (e.g. ArcDiD, GearTriad, HexTriad)
159
+ // Check for internal component header inside el (e.g. ArcDefenseInDepth, GearTriad, HexagonTriad)
160
160
  let internalHeaderH = 0;
161
161
  for (let i = 0; i < el.children.length; i++) {
162
162
  const child = el.children[i];
163
163
  if (
164
164
  child instanceof HTMLElement &&
165
165
  (child.tagName === 'HEADER' ||
166
- child.classList.contains('alpha-arc-did__header') ||
167
- child.classList.contains('alpha-gear-triad__header') ||
168
- child.classList.contains('alpha-hex-triad__header'))
166
+ child.classList.contains('alpha-arc-defense-in-depth__header'))
169
167
  ) {
170
168
  internalHeaderH += child.offsetHeight;
171
169
  const cs = window.getComputedStyle(child);
@@ -201,7 +199,11 @@ export function useDiagramAutoScale(
201
199
  (Number.parseFloat(cs.marginBottom) || 0);
202
200
  }
203
201
  }
204
- if (p === slideEl) break;
202
+
203
+ if (p === slideEl) {
204
+ break;
205
+ }
206
+
205
207
  curr = p;
206
208
  }
207
209
  }
@@ -1,12 +1,12 @@
1
1
  import { useAttrs } from 'vue';
2
2
 
3
- import { mergeUno } from './mergeUno';
4
- import type { TUnoClassValue } from './mergeUno/types';
3
+ import { mergeUno } from './merge-uno';
4
+ import type { TUnoClassValue } from './merge-uno/types';
5
5
 
6
6
  type TUnoClassSource = TUnoClassValue | (() => TUnoClassValue);
7
7
 
8
8
  interface IUseMergedUnoAttrsResult {
9
- readonly className: () => string;
9
+ readonly className: (...extraDefaults: TUnoClassValue[]) => string;
10
10
  readonly forwardedAttrs: () => Record<string, unknown>;
11
11
  }
12
12
 
@@ -20,11 +20,15 @@ export function useMergedUnoAttrs(
20
20
  ): IUseMergedUnoAttrsResult {
21
21
  const attrs = useAttrs();
22
22
 
23
- const className = (): string => {
23
+ const className = (...extraDefaults: TUnoClassValue[]): string => {
24
24
  const resolvedDefaults =
25
25
  typeof defaultClasses === 'function' ? defaultClasses() : defaultClasses;
26
26
 
27
- return mergeUno(resolvedDefaults, attrs.class as TUnoClassValue);
27
+ return mergeUno(
28
+ resolvedDefaults,
29
+ ...extraDefaults,
30
+ attrs.class as TUnoClassValue,
31
+ );
28
32
  };
29
33
 
30
34
  const forwardedAttrs = (): Record<string, unknown> => {
@@ -1,39 +0,0 @@
1
- <script setup lang="ts">
2
- import { computed, inject } from 'vue';
3
-
4
- import { CHEVRON_CARD_KEY } from '../../../utils/chevronCard';
5
-
6
- defineOptions({
7
- name: 'ChevronCardHeading',
8
- });
9
-
10
- export interface IChevronCardHeadingProps {
11
- readonly color?: string;
12
- }
13
-
14
- const props = withDefaults(defineProps<IChevronCardHeadingProps>(), {
15
- color: undefined,
16
- });
17
-
18
- const cardContext = inject(CHEVRON_CARD_KEY, undefined);
19
-
20
- const headingColor = computed(() => {
21
- return props.color ?? cardContext?.titleColor.value ?? '#4b5563';
22
- });
23
- </script>
24
-
25
- <template>
26
- <div
27
- class="alpha-chevron-card-heading font-bold text-[1.25rem] uppercase tracking-wider leading-tight select-none font-sans"
28
- :style="{
29
- color: headingColor,
30
- padding: 0,
31
- fontSize: '1.25rem',
32
- fontFamily:
33
- 'ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \'Segoe UI\', Roboto, sans-serif',
34
- marginBottom: '0.25rem',
35
- }"
36
- >
37
- <slot />
38
- </div>
39
- </template>
@@ -1,47 +0,0 @@
1
- <script setup lang="ts">
2
- import { computed, inject } from 'vue';
3
-
4
- import { HORIZ_CARD_KEY } from '../../../utils/horizCard';
5
- import { useMergedUnoAttrs } from '../../../utils/useMergedUnoAttrs';
6
-
7
- defineOptions({
8
- inheritAttrs: false,
9
- name: 'HorizCardHeading',
10
- });
11
-
12
- export interface IHorizCardHeadingProps {
13
- /**
14
- * Title text color. Overrides context titleColor.
15
- */
16
- readonly color?: string;
17
- }
18
-
19
- const props = withDefaults(defineProps<IHorizCardHeadingProps>(), {
20
- color: undefined,
21
- });
22
-
23
- const context = inject(HORIZ_CARD_KEY, undefined);
24
-
25
- const headingColor = computed(() => {
26
- return (
27
- props.color ??
28
- context?.titleColor.value ??
29
- context?.color.value ??
30
- '#ea583a'
31
- );
32
- });
33
-
34
- const { className, forwardedAttrs } = useMergedUnoAttrs(
35
- 'alpha-horiz-card-heading font-sans font-bold text-xl tracking-tight leading-tight',
36
- );
37
- </script>
38
-
39
- <template>
40
- <h3
41
- v-bind="forwardedAttrs()"
42
- :class="className()"
43
- :style="{ color: headingColor }"
44
- >
45
- <slot>Lorem Ipsum</slot>
46
- </h3>
47
- </template>
@@ -1,68 +0,0 @@
1
- <script setup lang="ts">
2
- import { computed, inject } from 'vue';
3
-
4
- import { useMergedUnoAttrs } from '../../../utils/useMergedUnoAttrs';
5
- import { VERT_CARD_KEY } from '../../../utils/vertCard';
6
-
7
- defineOptions({
8
- inheritAttrs: false,
9
- name: 'VertCardHeading',
10
- });
11
-
12
- export interface IVertCardHeadingProps {
13
- /**
14
- * Title text color. Overrides context titleColor.
15
- */
16
- readonly color?: string;
17
- /**
18
- * Whether to render the decorative horizontal line with center dot below the title.
19
- * @default true
20
- */
21
- readonly hasDivider?: boolean;
22
- }
23
-
24
- const props = withDefaults(defineProps<IVertCardHeadingProps>(), {
25
- color: undefined,
26
- hasDivider: true,
27
- });
28
-
29
- const context = inject(VERT_CARD_KEY, undefined);
30
-
31
- const headingColor = computed(() => {
32
- return (
33
- props.color ??
34
- context?.titleColor.value ??
35
- context?.color.value ??
36
- '#ea583a'
37
- );
38
- });
39
-
40
- const { className, forwardedAttrs } = useMergedUnoAttrs(
41
- 'alpha-vert-card-heading font-sans font-bold text-xl tracking-tight leading-tight text-center',
42
- );
43
- </script>
44
-
45
- <template>
46
- <div class="flex flex-col items-center w-full">
47
- <h3
48
- v-bind="forwardedAttrs()"
49
- :class="className()"
50
- :style="{ color: headingColor }"
51
- >
52
- <slot>Lorem Ipsum</slot>
53
- </h3>
54
- <div
55
- v-if="props.hasDivider"
56
- class="mt-2.5 flex items-center justify-center w-32 relative"
57
- >
58
- <div
59
- class="w-full h-[1.5px]"
60
- :style="{ backgroundColor: headingColor }"
61
- />
62
- <span
63
- class="absolute w-2 h-2 rounded-full"
64
- :style="{ backgroundColor: headingColor }"
65
- />
66
- </div>
67
- </div>
68
- </template>
@@ -1,76 +0,0 @@
1
- <script setup lang="ts">
2
- import { computed, inject } from 'vue';
3
-
4
- import { useMergedUnoAttrs } from '../../../utils/useMergedUnoAttrs';
5
- import { VERT_CARD_KEY } from '../../../utils/vertCard';
6
-
7
- defineOptions({
8
- inheritAttrs: false,
9
- name: 'VertCardTitle',
10
- });
11
-
12
- export interface IVertCardTitleProps {
13
- /**
14
- * Title text color. Overrides context titleColor.
15
- */
16
- readonly color?: string;
17
- /**
18
- * Whether to render the decorative horizontal line with center dot below the title.
19
- * Defaults to context hasDivider, or true.
20
- */
21
- readonly hasDivider?: boolean;
22
- }
23
-
24
- const props = withDefaults(defineProps<IVertCardTitleProps>(), {
25
- color: undefined,
26
- hasDivider: undefined,
27
- });
28
-
29
- const context = inject(VERT_CARD_KEY, undefined);
30
-
31
- const headingColor = computed(() => {
32
- return (
33
- props.color ??
34
- context?.titleColor.value ??
35
- context?.color.value ??
36
- '#ea583a'
37
- );
38
- });
39
-
40
- const isDividerVisible = computed(() => {
41
- if (props.hasDivider !== undefined) {
42
- return props.hasDivider;
43
- }
44
-
45
- return context?.hasDivider?.value ?? true;
46
- });
47
-
48
- const { className, forwardedAttrs } = useMergedUnoAttrs(
49
- 'alpha-vert-card-title font-sans font-bold text-xl tracking-tight leading-tight text-center',
50
- );
51
- </script>
52
-
53
- <template>
54
- <div class="flex flex-col items-center w-full">
55
- <h3
56
- v-bind="forwardedAttrs()"
57
- :class="className()"
58
- :style="{ color: headingColor }"
59
- >
60
- <slot>Lorem Ipsum</slot>
61
- </h3>
62
- <div
63
- v-if="isDividerVisible"
64
- class="mt-2.5 flex items-center justify-center w-32 relative"
65
- >
66
- <div
67
- class="w-full h-[1.5px]"
68
- :style="{ backgroundColor: headingColor }"
69
- />
70
- <span
71
- class="absolute w-2 h-2 rounded-full"
72
- :style="{ backgroundColor: headingColor }"
73
- />
74
- </div>
75
- </div>
76
- </template>
@@ -1,17 +0,0 @@
1
- <script setup lang="ts">
2
- import ArcOrbitContents from '../../core/arc-orbit/ArcOrbitContents.vue';
3
-
4
- defineOptions({
5
- inheritAttrs: false,
6
- name: 'ArcComparisonContents',
7
- });
8
- </script>
9
-
10
- <template>
11
- <ArcOrbitContents
12
- v-bind="$attrs"
13
- class="alpha-arc-comparison-contents"
14
- >
15
- <slot />
16
- </ArcOrbitContents>
17
- </template>
@@ -1,29 +0,0 @@
1
- <script setup lang="ts">
2
- import ArcOrbitTitle, {
3
- type IArcOrbitTitleProps,
4
- } from '../../core/arc-orbit/ArcOrbitTitle.vue';
5
-
6
- defineOptions({
7
- inheritAttrs: false,
8
- name: 'ArcComparisonTitle',
9
- });
10
-
11
- export interface IArcComparisonTitleProps extends IArcOrbitTitleProps {}
12
-
13
- const props = defineProps<IArcComparisonTitleProps>();
14
- </script>
15
-
16
- <template>
17
- <ArcOrbitTitle
18
- v-if="$slots.default"
19
- v-bind="{ ...props, ...$attrs }"
20
- class="alpha-arc-comparison-title"
21
- >
22
- <slot />
23
- </ArcOrbitTitle>
24
- <ArcOrbitTitle
25
- v-else
26
- v-bind="{ ...props, ...$attrs }"
27
- class="alpha-arc-comparison-title"
28
- />
29
- </template>
@@ -1,18 +0,0 @@
1
- <script setup lang="ts">
2
- import { useMergedUnoAttrs } from '../../../utils/useMergedUnoAttrs';
3
-
4
- defineOptions({
5
- inheritAttrs: false,
6
- name: 'ArcOrbitContents',
7
- });
8
-
9
- const { className, forwardedAttrs } = useMergedUnoAttrs(
10
- 'alpha-arc-orbit-contents absolute inset-0 w-full h-full pointer-events-none',
11
- );
12
- </script>
13
-
14
- <template>
15
- <div v-bind="forwardedAttrs()" :class="className()">
16
- <slot />
17
- </div>
18
- </template>
@@ -1,50 +0,0 @@
1
- <script setup lang="ts">
2
- import { computed, inject } from 'vue';
3
-
4
- import {
5
- ARC_ORBIT_ROOT_KEY,
6
- DEFAULT_ARC_ORBIT_COLOR,
7
- } from '../../../utils/arcOrbit';
8
- import { useMergedUnoAttrs } from '../../../utils/useMergedUnoAttrs';
9
-
10
- defineOptions({
11
- inheritAttrs: false,
12
- name: 'ArcOrbitTitle',
13
- });
14
-
15
- export interface IArcOrbitTitleProps {
16
- readonly color?: string;
17
- }
18
-
19
- const props = withDefaults(defineProps<IArcOrbitTitleProps>(), {
20
- color: undefined,
21
- });
22
-
23
- const rootContext = inject(ARC_ORBIT_ROOT_KEY, undefined);
24
-
25
- const titleColor = computed(() => {
26
- return props.color ?? rootContext?.color.value ?? DEFAULT_ARC_ORBIT_COLOR;
27
- });
28
-
29
- const titleStyle = computed(() => {
30
- return {
31
- color: titleColor.value,
32
- fontFamily:
33
- 'ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',
34
- };
35
- });
36
-
37
- const { className, forwardedAttrs } = useMergedUnoAttrs(
38
- 'alpha-arc-orbit-title font-bold text-center px-2 leading-tight flex items-center justify-center select-none text-[1.125rem] tracking-tight whitespace-pre-line',
39
- );
40
- </script>
41
-
42
- <template>
43
- <div
44
- v-bind="forwardedAttrs()"
45
- :class="className()"
46
- :style="titleStyle"
47
- >
48
- <slot>{{ rootContext?.title.value ?? 'Add Topic\nTitle' }}</slot>
49
- </div>
50
- </template>