@alphacifer/slidev-addon-theme 0.0.7 → 0.0.9

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 (128) hide show
  1. package/README.md +186 -76
  2. package/components/{chevron-card → card/chevron-card}/ChevronCard.vue +2 -2
  3. package/components/{chevron-card → card/chevron-card}/ChevronCardBadge.vue +1 -1
  4. package/components/{chevron-card → card/chevron-card}/ChevronCardContent.vue +1 -1
  5. package/components/{chevron-card → card/chevron-card}/ChevronCardHeading.vue +1 -1
  6. package/components/{horiz-card → card/horiz-card}/HorizCard.vue +2 -2
  7. package/components/{horiz-card → card/horiz-card}/HorizCardBadge.vue +2 -2
  8. package/components/{horiz-card → card/horiz-card}/HorizCardContent.vue +2 -2
  9. package/components/{horiz-card → card/horiz-card}/HorizCardHeading.vue +2 -2
  10. package/components/{horiz-card → card/horiz-card}/HorizCardIcon.vue +2 -2
  11. package/components/{vert-card → card/vert-card}/VertCard.vue +2 -2
  12. package/components/{vert-card → card/vert-card}/VertCardBadge.vue +5 -2
  13. package/components/{vert-card → card/vert-card}/VertCardContent.vue +2 -2
  14. package/components/{vert-card → card/vert-card}/VertCardHeading.vue +2 -2
  15. package/components/{vert-card → card/vert-card}/VertCardIcon.vue +2 -2
  16. package/components/{vert-card → card/vert-card}/VertCardTitle.vue +2 -2
  17. package/components/comparisons/arc-comparison/ArcComparison.vue +654 -0
  18. package/components/comparisons/arc-comparison/ArcComparisonBadge.vue +29 -0
  19. package/components/comparisons/arc-comparison/ArcComparisonContent.vue +29 -0
  20. package/components/comparisons/arc-comparison/ArcComparisonContents.vue +17 -0
  21. package/components/comparisons/arc-comparison/ArcComparisonHeading.vue +29 -0
  22. package/components/comparisons/arc-comparison/ArcComparisonLeft.vue +268 -0
  23. package/components/comparisons/arc-comparison/ArcComparisonOrbit.vue +47 -0
  24. package/components/comparisons/arc-comparison/ArcComparisonRight.vue +271 -0
  25. package/components/comparisons/arc-comparison/ArcComparisonTitle.vue +29 -0
  26. package/components/{comparison-table/ComparisonTable.vue → comparisons/table-comparison/TableComparison.vue} +37 -27
  27. package/components/{comparison-table/ComparisonTableCell.vue → comparisons/table-comparison/TableComparisonCell.vue} +8 -8
  28. package/components/{comparison-table/ComparisonTableCol.vue → comparisons/table-comparison/TableComparisonCol.vue} +10 -10
  29. package/components/{comparison-table/ComparisonTableCols.vue → comparisons/table-comparison/TableComparisonCols.vue} +11 -11
  30. package/components/{comparison-table/ComparisonTableRow.vue → comparisons/table-comparison/TableComparisonRow.vue} +9 -9
  31. package/components/{comparison-table/ComparisonTableRows.vue → comparisons/table-comparison/TableComparisonRows.vue} +3 -3
  32. package/components/core/ReflectedTitle.vue +2 -1
  33. package/components/core/arc-orbit/ArcOrbit.vue +468 -0
  34. package/components/{arc-compare/ArcCompareBadge.vue → core/arc-orbit/ArcOrbitBadge.vue} +11 -8
  35. package/components/core/arc-orbit/ArcOrbitCallout.vue +400 -0
  36. package/components/{arc-compare/ArcCompareContent.vue → core/arc-orbit/ArcOrbitContent.vue} +8 -8
  37. package/components/{arc-compare/ArcCompareContents.vue → core/arc-orbit/ArcOrbitContents.vue} +3 -3
  38. package/components/{arc-compare/ArcCompareHeading.vue → core/arc-orbit/ArcOrbitHeading.vue} +11 -8
  39. package/components/core/arc-orbit/ArcOrbitTitle.vue +50 -0
  40. package/components/{thanks → core/thanks}/ThanksOutlineSquare.vue +1 -1
  41. package/components/{thanks → core/thanks}/ThanksSquare.vue +1 -1
  42. package/components/{quad-hub/QuadHub.vue → facets/tetrad/rect-orbit-tetrad/RectOrbitTetrad.vue} +71 -69
  43. package/components/{quad-hub/QuadHubCallout.vue → facets/tetrad/rect-orbit-tetrad/RectOrbitTetradCallout.vue} +45 -43
  44. package/components/{quad-hub/QuadHubCenter.vue → facets/tetrad/rect-orbit-tetrad/RectOrbitTetradCenter.vue} +4 -4
  45. package/components/{quad-hub/QuadHubContent.vue → facets/tetrad/rect-orbit-tetrad/RectOrbitTetradContent.vue} +6 -6
  46. package/components/{quad-hub/QuadHubHeading.vue → facets/tetrad/rect-orbit-tetrad/RectOrbitTetradHeading.vue} +6 -6
  47. package/components/{quad-hub/QuadHubIcon.vue → facets/tetrad/rect-orbit-tetrad/RectOrbitTetradIcon.vue} +6 -6
  48. package/components/{arrow-triad → facets/triad/arrow-triad}/ArrowTriad.vue +3 -3
  49. package/components/{arrow-triad → facets/triad/arrow-triad}/ArrowTriadCallout.vue +1 -1
  50. package/components/{arrow-triad → facets/triad/arrow-triad}/ArrowTriadContent.vue +1 -1
  51. package/components/{arrow-triad → facets/triad/arrow-triad}/ArrowTriadHeading.vue +1 -1
  52. package/components/facets/triad/gear-triad/GearTriad.vue +591 -0
  53. package/components/facets/triad/gear-triad/GearTriadCallout.vue +285 -0
  54. package/components/facets/triad/gear-triad/GearTriadCenter.vue +41 -0
  55. package/components/facets/triad/gear-triad/GearTriadContent.vue +58 -0
  56. package/components/facets/triad/gear-triad/GearTriadContents.vue +111 -0
  57. package/components/facets/triad/gear-triad/GearTriadDescription.vue +38 -0
  58. package/components/facets/triad/gear-triad/GearTriadHeading.vue +38 -0
  59. package/components/facets/triad/gear-triad/GearTriadIcon.vue +157 -0
  60. package/components/{hex-triad → facets/triad/hex-triad}/HexTriad.vue +2 -2
  61. package/components/{hex-triad → facets/triad/hex-triad}/HexTriadBadge.vue +1 -1
  62. package/components/{hex-triad → facets/triad/hex-triad}/HexTriadCallout.vue +1 -1
  63. package/components/{hex-triad → facets/triad/hex-triad}/HexTriadHeading.vue +1 -1
  64. package/components/{arc-arrow-process → process/arc-arrow-process}/ArcArrowProcess.vue +2 -2
  65. package/components/{arc-arrow-process → process/arc-arrow-process}/ArcArrowProcessArrow.vue +1 -1
  66. package/components/{arc-arrow-process → process/arc-arrow-process}/ArcArrowProcessCallout.vue +1 -1
  67. package/components/{arc-arrow-process → process/arc-arrow-process}/ArcArrowProcessContent.vue +1 -1
  68. package/components/{arc-arrow-process → process/arc-arrow-process}/ArcArrowProcessHeading.vue +1 -1
  69. package/components/pyramid/circular-pyramid/CircularPyramid.vue +871 -0
  70. package/components/pyramid/circular-pyramid/CircularPyramidStack.vue +375 -0
  71. package/components/pyramid/circular-pyramid/CircularPyramidStackContent.vue +208 -0
  72. package/components/pyramid/circular-pyramid/CircularPyramidStackTitle.vue +138 -0
  73. package/components/pyramid/square-pyramid/SquarePyramid.vue +876 -0
  74. package/components/pyramid/square-pyramid/SquarePyramidStack.vue +366 -0
  75. package/components/pyramid/square-pyramid/SquarePyramidStackContent.vue +204 -0
  76. package/components/pyramid/square-pyramid/SquarePyramidStackTitle.vue +134 -0
  77. package/package.json +2 -1
  78. package/utils/arcComparison/context.ts +40 -0
  79. package/utils/arcComparison/createArcComparisonGeometry.ts +175 -0
  80. package/utils/arcComparison/index.ts +3 -0
  81. package/utils/{arcCompare/resolveArcCompareItems.ts → arcComparison/resolveArcComparisonItems.ts} +24 -45
  82. package/utils/arcOrbit/context.ts +38 -0
  83. package/utils/{arcCompare/createArcCompareGeometry.ts → arcOrbit/createArcOrbitGeometry.ts} +77 -108
  84. package/utils/arcOrbit/index.ts +3 -0
  85. package/utils/arcOrbit/resolveArcOrbitItems.ts +92 -0
  86. package/utils/gearTriad/context.ts +51 -0
  87. package/utils/gearTriad/createGearTriadGeometry.ts +210 -0
  88. package/utils/gearTriad/index.ts +3 -0
  89. package/utils/gearTriad/resolveGearTriadItems.ts +159 -0
  90. package/utils/pyramid/circular-pyramid/context.ts +46 -0
  91. package/utils/pyramid/circular-pyramid/createCircularPyramidGeometry.ts +143 -0
  92. package/utils/pyramid/circular-pyramid/index.ts +3 -0
  93. package/utils/pyramid/circular-pyramid/types.ts +34 -0
  94. package/utils/pyramid/index.ts +3 -0
  95. package/utils/pyramid/shared/colors.ts +92 -0
  96. package/utils/pyramid/shared/connector.ts +111 -0
  97. package/utils/pyramid/shared/constants.ts +8 -0
  98. package/utils/pyramid/shared/index.ts +5 -0
  99. package/utils/pyramid/shared/stacking.ts +76 -0
  100. package/utils/pyramid/shared/types.ts +36 -0
  101. package/utils/pyramid/square-pyramid/context.ts +46 -0
  102. package/utils/pyramid/square-pyramid/createSquarePyramidGeometry.ts +265 -0
  103. package/utils/pyramid/square-pyramid/index.ts +3 -0
  104. package/utils/pyramid/square-pyramid/types.ts +39 -0
  105. package/utils/rectOrbitTetrad/context.ts +31 -0
  106. package/utils/{quadHub/createQuadHubGeometry.ts → rectOrbitTetrad/createRectOrbitTetradGeometry.ts} +33 -28
  107. package/utils/rectOrbitTetrad/index.ts +3 -0
  108. package/utils/{quadHub/resolveQuadHubItems.ts → rectOrbitTetrad/resolveRectOrbitTetradItems.ts} +25 -25
  109. package/utils/{comparisonTable → tableComparison}/context.ts +6 -6
  110. package/utils/useDiagramAutoScale.ts +7 -9
  111. package/components/arc-compare/ArcCompare.vue +0 -443
  112. package/components/arc-compare/ArcCompareCallout.vue +0 -386
  113. package/components/arc-compare/ArcCompareLeft.vue +0 -183
  114. package/components/arc-compare/ArcCompareRight.vue +0 -183
  115. package/components/arc-compare/ArcCompareTitle.vue +0 -47
  116. package/utils/arcCompare/context.ts +0 -36
  117. package/utils/arcCompare/index.ts +0 -3
  118. package/utils/quadHub/context.ts +0 -26
  119. package/utils/quadHub/index.ts +0 -3
  120. /package/components/{shifting-heading → core}/TransitionHeading.vue +0 -0
  121. /package/components/{thanks → core/thanks}/ThanksContent.vue +0 -0
  122. /package/components/{arrow-triad → facets/triad/arrow-triad}/ArrowTriadIcon.vue +0 -0
  123. /package/components/{hex-triad → facets/triad/hex-triad}/HexTriadCenterBadge.vue +0 -0
  124. /package/components/{hex-triad → facets/triad/hex-triad}/HexTriadContent.vue +0 -0
  125. /package/components/{hex-triad → facets/triad/hex-triad}/HexTriadLayer.vue +0 -0
  126. /package/components/{arc-arrow-process → process/arc-arrow-process}/ArcArrowProcessIcon.vue +0 -0
  127. /package/utils/{comparisonTable → tableComparison}/constants.ts +0 -0
  128. /package/utils/{comparisonTable → tableComparison}/index.ts +0 -0
@@ -0,0 +1,157 @@
1
+ <script setup lang="ts">
2
+ import { computed, useSlots } from 'vue';
3
+
4
+ import type { TGearTriadIcon } from '../../../../utils/gearTriad';
5
+
6
+ defineOptions({
7
+ name: 'GearTriadIcon',
8
+ });
9
+
10
+ export interface IGearTriadIconProps {
11
+ readonly size?: number;
12
+ readonly color?: string;
13
+ readonly strokeWidth?: number;
14
+ readonly icon?: TGearTriadIcon;
15
+ }
16
+
17
+ const props = withDefaults(defineProps<IGearTriadIconProps>(), {
18
+ size: 32,
19
+ color: '#0f172a',
20
+ strokeWidth: 2,
21
+ icon: undefined,
22
+ });
23
+
24
+ const slots = useSlots();
25
+
26
+ const shouldRender = computed((): boolean => {
27
+ if (props.icon === false) {
28
+ return false;
29
+ }
30
+ return Boolean(props.icon || slots.default);
31
+ });
32
+
33
+ const isStringIcon = computed((): boolean => {
34
+ return typeof props.icon === 'string';
35
+ });
36
+
37
+ const isComponentIcon = computed((): boolean => {
38
+ return typeof props.icon === 'object' && props.icon !== null;
39
+ });
40
+ </script>
41
+
42
+ <template>
43
+ <div
44
+ v-if="shouldRender"
45
+ class="alpha-gear-triad-icon flex items-center justify-center pointer-events-none select-none"
46
+ :style="{
47
+ color: props.color,
48
+ width: `${props.size}px`,
49
+ height: `${props.size}px`,
50
+ }"
51
+ >
52
+ <slot>
53
+ <!-- Custom Vue Component -->
54
+ <component
55
+ :is="props.icon"
56
+ v-if="isComponentIcon"
57
+ class="w-full h-full"
58
+ :style="{ color: props.color }"
59
+ />
60
+
61
+ <!-- UnoCSS / Iconify class name (e.g. i-lucide-file-text) -->
62
+ <span
63
+ v-else-if="isStringIcon && (props.icon as string).includes('-')"
64
+ :class="props.icon"
65
+ class="inline-block"
66
+ :style="{
67
+ color: props.color,
68
+ width: `${props.size}px`,
69
+ height: `${props.size}px`,
70
+ fontSize: `${props.size}px`,
71
+ }"
72
+ />
73
+
74
+ <!-- 01 Document with folded corner and lines (Option 1) -->
75
+ <svg
76
+ v-else-if="
77
+ props.icon === 'document' ||
78
+ props.icon === 'file' ||
79
+ props.icon === 'file-text'
80
+ "
81
+ viewBox="0 0 24 24"
82
+ fill="none"
83
+ stroke="currentColor"
84
+ :stroke-width="props.strokeWidth"
85
+ stroke-linecap="round"
86
+ stroke-linejoin="round"
87
+ class="w-full h-full"
88
+ >
89
+ <path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z" />
90
+ <polyline points="14 2 14 8 20 8" />
91
+ <line x1="16" y1="13" x2="8" y2="13" />
92
+ <line x1="16" y1="17" x2="8" y2="17" />
93
+ <line x1="10" y1="9" x2="8" y2="9" />
94
+ </svg>
95
+
96
+ <!-- 02 Shield with star (Option 2) -->
97
+ <svg
98
+ v-else-if="props.icon === 'shield' || props.icon === 'shield-star'"
99
+ viewBox="0 0 24 24"
100
+ fill="none"
101
+ stroke="currentColor"
102
+ :stroke-width="props.strokeWidth"
103
+ stroke-linecap="round"
104
+ stroke-linejoin="round"
105
+ class="w-full h-full"
106
+ >
107
+ <path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z" />
108
+ <polygon
109
+ points="12 8 13.3 11 16.5 11.3 14 13.5 14.8 16.7 12 15 9.2 16.7 10 13.5 7.5 11.3 10.7 11"
110
+ stroke-width="1.5"
111
+ />
112
+ </svg>
113
+
114
+ <!-- 03 Archive box with files poking out (Option 3) -->
115
+ <svg
116
+ v-else-if="
117
+ props.icon === 'archive' ||
118
+ props.icon === 'box' ||
119
+ props.icon === 'package'
120
+ "
121
+ viewBox="0 0 24 24"
122
+ fill="none"
123
+ stroke="currentColor"
124
+ :stroke-width="props.strokeWidth"
125
+ stroke-linecap="round"
126
+ stroke-linejoin="round"
127
+ class="w-full h-full"
128
+ >
129
+ <!-- Box body -->
130
+ <path d="M4 11v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8" />
131
+ <!-- Lid rim -->
132
+ <rect x="2" y="7" width="20" height="4" rx="1" />
133
+ <!-- Center handle slot -->
134
+ <line x1="10" y1="15" x2="14" y2="15" />
135
+ <!-- Folders / papers peeking out top -->
136
+ <path d="M7 7V4a1 1 0 0 1 1-1h4l2 2h3a1 1 0 0 1 1 1v1" stroke-width="1.5" />
137
+ </svg>
138
+
139
+ <!-- 04 Center Gear with 6 teeth and 3-spoke inner steering (Center Hub) -->
140
+ <svg
141
+ v-else-if="props.icon === 'gear' || props.icon === 'settings' || props.icon === 'cog'"
142
+ viewBox="0 0 24 24"
143
+ fill="none"
144
+ stroke="currentColor"
145
+ :stroke-width="props.strokeWidth"
146
+ stroke-linecap="round"
147
+ stroke-linejoin="round"
148
+ class="w-full h-full"
149
+ >
150
+ <circle cx="12" cy="12" r="3" />
151
+ <path
152
+ d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"
153
+ />
154
+ </svg>
155
+ </slot>
156
+ </div>
157
+ </template>
@@ -14,8 +14,8 @@ import {
14
14
  HEX_TRIAD_ROOT_KEY,
15
15
  type IHexTriadItem,
16
16
  resolveHexTriadItems,
17
- } from '../../utils/hexTriad';
18
- import { useMergedUnoAttrs } from '../../utils/useMergedUnoAttrs';
17
+ } from '../../../../utils/hexTriad';
18
+ import { useMergedUnoAttrs } from '../../../../utils/useMergedUnoAttrs';
19
19
 
20
20
  defineOptions({
21
21
  inheritAttrs: false,
@@ -4,7 +4,7 @@ import { computed, inject, useSlots, watchEffect } from 'vue';
4
4
  import {
5
5
  createRoundedHexagonPath,
6
6
  HEX_TRIAD_CALLOUT_KEY,
7
- } from '../../utils/hexTriad';
7
+ } from '../../../../utils/hexTriad';
8
8
 
9
9
  defineOptions({
10
10
  name: 'HexTriadBadge',
@@ -6,7 +6,7 @@ import {
6
6
  HEX_TRIAD_CALLOUT_KEY,
7
7
  HEX_TRIAD_ROOT_KEY,
8
8
  type IHexTriadItem,
9
- } from '../../utils/hexTriad';
9
+ } from '../../../../utils/hexTriad';
10
10
  import HexTriadBadge from './HexTriadBadge.vue';
11
11
  import HexTriadContent from './HexTriadContent.vue';
12
12
  import HexTriadHeading from './HexTriadHeading.vue';
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import { computed, inject } from 'vue';
3
3
 
4
- import { HEX_TRIAD_CALLOUT_KEY } from '../../utils/hexTriad';
4
+ import { HEX_TRIAD_CALLOUT_KEY } from '../../../../utils/hexTriad';
5
5
 
6
6
  defineOptions({
7
7
  name: 'HexTriadHeading',
@@ -19,8 +19,8 @@ import {
19
19
  type IArcArrowProcessRegistration,
20
20
  type IResolvedArcArrowProcessItem,
21
21
  resolveArcArrowProcessItems,
22
- } from '../../utils/arcArrowProcess';
23
- import { useMergedUnoAttrs } from '../../utils/useMergedUnoAttrs';
22
+ } from '../../../utils/arcArrowProcess';
23
+ import { useMergedUnoAttrs } from '../../../utils/useMergedUnoAttrs';
24
24
  import ArcArrowProcessArrow from './ArcArrowProcessArrow.vue';
25
25
  import ArcArrowProcessCallout from './ArcArrowProcessCallout.vue';
26
26
 
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import { computed } from 'vue';
3
3
 
4
- import { DEFAULT_ARC_ARROW_PATH } from '../../utils/arcArrowProcess';
4
+ import { DEFAULT_ARC_ARROW_PATH } from '../../../utils/arcArrowProcess';
5
5
 
6
6
  defineOptions({
7
7
  name: 'ArcArrowProcessArrow',
@@ -17,7 +17,7 @@ import {
17
17
  type IArcArrowProcessItem,
18
18
  type IResolvedArcArrowProcessItem,
19
19
  resolveSingleArcArrowProcessItem,
20
- } from '../../utils/arcArrowProcess';
20
+ } from '../../../utils/arcArrowProcess';
21
21
  import ArcArrowProcessContent from './ArcArrowProcessContent.vue';
22
22
  import ArcArrowProcessHeading from './ArcArrowProcessHeading.vue';
23
23
  import ArcArrowProcessIcon from './ArcArrowProcessIcon.vue';
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import { computed, inject } from 'vue';
3
3
 
4
- import { ARC_ARROW_PROCESS_CALLOUT_KEY } from '../../utils/arcArrowProcess';
4
+ import { ARC_ARROW_PROCESS_CALLOUT_KEY } from '../../../utils/arcArrowProcess';
5
5
 
6
6
  defineOptions({
7
7
  name: 'ArcArrowProcessContent',
@@ -1,7 +1,7 @@
1
1
  <script setup lang="ts">
2
2
  import { computed, inject } from 'vue';
3
3
 
4
- import { ARC_ARROW_PROCESS_CALLOUT_KEY } from '../../utils/arcArrowProcess';
4
+ import { ARC_ARROW_PROCESS_CALLOUT_KEY } from '../../../utils/arcArrowProcess';
5
5
 
6
6
  defineOptions({
7
7
  name: 'ArcArrowProcessHeading',