@adminide-stack/yantra-help-browser 12.0.16-alpha.2 → 12.0.16-alpha.21

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 (202) hide show
  1. package/lib/components/HelpCenterFooter.d.ts.map +1 -1
  2. package/lib/components/HelpCenterFooter.js +93 -85
  3. package/lib/components/HelpCenterFooter.js.map +1 -1
  4. package/lib/components/HelpCenterHeader.d.ts +1 -5
  5. package/lib/components/HelpCenterHeader.d.ts.map +1 -1
  6. package/lib/components/HelpCenterHeader.js +67 -69
  7. package/lib/components/HelpCenterHeader.js.map +1 -1
  8. package/lib/components/Logo.d.ts.map +1 -1
  9. package/lib/components/Logo.js +3 -2
  10. package/lib/components/Logo.js.map +1 -1
  11. package/lib/components/SearchBar.d.ts +8 -0
  12. package/lib/components/SearchBar.d.ts.map +1 -0
  13. package/lib/components/SearchBar.js +234 -0
  14. package/lib/components/SearchBar.js.map +1 -0
  15. package/lib/components/SidebarSearch.d.ts +8 -0
  16. package/lib/components/SidebarSearch.d.ts.map +1 -0
  17. package/lib/components/SidebarSearch.js +114 -0
  18. package/lib/components/SidebarSearch.js.map +1 -0
  19. package/lib/components/navbar/index.d.ts.map +1 -1
  20. package/lib/components/navbar/index.js +5 -4
  21. package/lib/components/navbar/index.js.map +1 -1
  22. package/lib/compute.d.ts.map +1 -1
  23. package/lib/compute.js +19 -1
  24. package/lib/compute.js.map +1 -1
  25. package/lib/pages/CategoryCollection/index.d.ts.map +1 -1
  26. package/lib/pages/CategoryCollection/index.js +5 -11
  27. package/lib/pages/CategoryCollection/index.js.map +1 -1
  28. package/lib/pages/HelpCenter/components/HelpCategoryCard.d.ts +2 -0
  29. package/lib/pages/HelpCenter/components/HelpCategoryCard.d.ts.map +1 -1
  30. package/lib/pages/HelpCenter/components/HelpCategoryCard.js +135 -50
  31. package/lib/pages/HelpCenter/components/HelpCategoryCard.js.map +1 -1
  32. package/lib/pages/HelpCenter/components/Icons.d.ts +10 -0
  33. package/lib/pages/HelpCenter/components/Icons.d.ts.map +1 -1
  34. package/lib/pages/HelpCenter/components/Icons.js +211 -1
  35. package/lib/pages/HelpCenter/components/Icons.js.map +1 -1
  36. package/lib/pages/HelpCenter/components/PopularArticle.d.ts.map +1 -1
  37. package/lib/pages/HelpCenter/components/PopularArticle.js +17 -23
  38. package/lib/pages/HelpCenter/components/PopularArticle.js.map +1 -1
  39. package/lib/pages/HelpCenter/index.d.ts.map +1 -1
  40. package/lib/pages/HelpCenter/index.js +106 -37
  41. package/lib/pages/HelpCenter/index.js.map +1 -1
  42. package/lib/pages/HelpCenter/mockData.d.ts.map +1 -1
  43. package/lib/pages/HelpCenter/mockData.js +14 -6
  44. package/lib/pages/HelpCenter/mockData.js.map +1 -1
  45. package/lib/pages/LandingPage/components/HeroSection.d.ts +0 -1
  46. package/lib/pages/LandingPage/components/HeroSection.d.ts.map +1 -1
  47. package/lib/pages/LandingPage/components/HeroSection.js +3 -6
  48. package/lib/pages/LandingPage/components/HeroSection.js.map +1 -1
  49. package/lib/pages/LandingPage/index.d.ts.map +1 -1
  50. package/lib/pages/LandingPage/index.js +1 -6
  51. package/lib/pages/LandingPage/index.js.map +1 -1
  52. package/lib/pages/Markdown/MarkdownPageLayout.d.ts +3 -0
  53. package/lib/pages/Markdown/MarkdownPageLayout.d.ts.map +1 -0
  54. package/lib/pages/Markdown/MarkdownPageLayout.js +314 -0
  55. package/lib/pages/Markdown/MarkdownPageLayout.js.map +1 -0
  56. package/lib/pages/Markdown/MarkdownPageWithParams.d.ts +9 -0
  57. package/lib/pages/Markdown/MarkdownPageWithParams.d.ts.map +1 -0
  58. package/lib/pages/Markdown/MarkdownPageWithParams.js +65 -0
  59. package/lib/pages/Markdown/MarkdownPageWithParams.js.map +1 -0
  60. package/lib/pages/Markdown/index.d.ts +3 -0
  61. package/lib/pages/Markdown/index.d.ts.map +1 -0
  62. package/lib/pages/Markdown/index.js +5 -0
  63. package/lib/pages/Markdown/index.js.map +1 -0
  64. package/lib/routes.json +28 -1
  65. package/lib/{content → templates/content}/account-management/account-setup.md +10 -0
  66. package/lib/{content → templates/content}/account-management/delete-account.md +10 -0
  67. package/lib/{content → templates/content}/account-management/preferences.md +10 -0
  68. package/lib/{content → templates/content}/account-management/privacy-settings.md +10 -0
  69. package/lib/{content → templates/content}/account-management/profile-settings.md +8 -0
  70. package/lib/templates/content/ai-employees/ai-employees-overview.md +97 -0
  71. package/lib/templates/content/ai-employees/getting-started-ai-employees.md +119 -0
  72. package/lib/templates/content/ai-employees/how-ai-employees-work.md +123 -0
  73. package/lib/templates/content/ai-employees/supervised-mode.md +141 -0
  74. package/lib/templates/content/content-manifest.json +5670 -0
  75. package/lib/{content → templates/content}/data-privacy/data-collection.md +9 -0
  76. package/lib/{content → templates/content}/data-privacy/privacy-policy.md +10 -0
  77. package/lib/{content → templates/content}/data-subject-privacy/data-access.md +12 -0
  78. package/lib/{content → templates/content}/data-subject-privacy/data-portability.md +15 -0
  79. package/lib/{content → templates/content}/data-subject-privacy/privacy-requests.md +11 -0
  80. package/lib/{content → templates/content}/file-uploads/file-upload-overview.md +9 -0
  81. package/lib/{content → templates/content}/getting-started/getting-started-guide.md +9 -0
  82. package/lib/templates/content/integrations/crm-integrations.md +130 -0
  83. package/lib/templates/content/integrations/github-integration.md +95 -0
  84. package/lib/templates/content/integrations/integrations-overview.md +142 -0
  85. package/lib/templates/content/integrations/monitoring-integrations.md +109 -0
  86. package/lib/templates/content/integrations/productivity-integrations.md +129 -0
  87. package/lib/templates/content/integrations/slack-integration.md +79 -0
  88. package/lib/templates/content/openclaw/openclaw-architecture.md +202 -0
  89. package/lib/templates/content/openclaw/openclaw-contribution.md +107 -0
  90. package/lib/templates/content/openclaw/openclaw-overview.md +152 -0
  91. package/lib/templates/content/platform-features/always-watching.md +63 -0
  92. package/lib/templates/content/platform-features/instant-context.md +67 -0
  93. package/lib/templates/content/platform-features/instant-onboarding.md +80 -0
  94. package/lib/templates/content/platform-features/platform-overview.md +58 -0
  95. package/lib/templates/content/platform-features/proactive-alerts.md +88 -0
  96. package/lib/templates/content/platform-features/smart-escalation.md +93 -0
  97. package/lib/{content → templates/content}/product-features/ai-models.md +1 -1
  98. package/lib/{content → templates/content}/product-features/collaboration-tools.md +8 -0
  99. package/lib/{content → templates/content}/product-features/conversation-features.md +6 -0
  100. package/lib/{content → templates/content}/product-features/export-features.md +8 -0
  101. package/lib/{content → templates/content}/product-features/follow-up-questions.md +8 -0
  102. package/lib/{content → templates/content}/product-features/real-time-search.md +8 -0
  103. package/lib/{content → templates/content}/product-features/saved-searches.md +8 -0
  104. package/lib/{content → templates/content}/product-features/search-features.md +1 -1
  105. package/lib/{content → templates/content}/product-features/search-history.md +8 -0
  106. package/lib/{content → templates/content}/product-features/source-citations.md +8 -0
  107. package/lib/{content → templates/content}/scope-api/api-overview.md +8 -0
  108. package/lib/{content → templates/content}/search-modes/deep-research.md +8 -0
  109. package/lib/{content → templates/content}/search-modes/labs-features.md +10 -0
  110. package/lib/{content → templates/content}/search-modes/pro-search.md +8 -0
  111. package/lib/{content → templates/content}/search-modes/regular-search.md +8 -0
  112. package/lib/templates/content/security-compliance/audit-trail.md +112 -0
  113. package/lib/templates/content/security-compliance/compliance.md +120 -0
  114. package/lib/templates/content/security-compliance/data-encryption.md +94 -0
  115. package/lib/templates/content/security-compliance/security-overview.md +186 -0
  116. package/lib/templates/content/security-compliance/vm-isolation.md +126 -0
  117. package/lib/templates/content/solutions-engineering/bug-tracking-context.md +126 -0
  118. package/lib/templates/content/solutions-engineering/engineering-overview.md +107 -0
  119. package/lib/templates/content/solutions-engineering/error-monitoring.md +120 -0
  120. package/lib/templates/content/solutions-engineering/institutional-memory.md +120 -0
  121. package/lib/templates/content/solutions-marketing/brand-monitoring.md +135 -0
  122. package/lib/templates/content/solutions-marketing/content-automation.md +111 -0
  123. package/lib/templates/content/solutions-marketing/marketing-overview.md +108 -0
  124. package/lib/templates/content/solutions-marketing/social-media-management.md +108 -0
  125. package/lib/templates/content/solutions-sales/call-preparation.md +106 -0
  126. package/lib/templates/content/solutions-sales/crm-automation.md +119 -0
  127. package/lib/templates/content/solutions-sales/lead-management.md +108 -0
  128. package/lib/templates/content/solutions-sales/sales-overview.md +120 -0
  129. package/lib/{content → templates/content}/spaces-library/spaces-overview.md +8 -0
  130. package/lib/{content → templates/content}/student-hub/academic-research.md +8 -0
  131. package/lib/{content → templates/content}/student-hub/student-discounts.md +10 -0
  132. package/lib/{content → templates/content}/student-hub/student-overview.md +8 -0
  133. package/lib/{content → templates/content}/student-hub/study-tools.md +8 -0
  134. package/lib/{content → templates/content}/subscription-billing/billing-cycle.md +8 -0
  135. package/lib/{content → templates/content}/subscription-billing/billing-overview.md +6 -0
  136. package/lib/{content → templates/content}/subscription-billing/billing-support.md +8 -0
  137. package/lib/{content → templates/content}/subscription-billing/currency-support.md +10 -0
  138. package/lib/{content → templates/content}/subscription-billing/enterprise-pricing.md +8 -0
  139. package/lib/{content → templates/content}/subscription-billing/invoice-management.md +8 -0
  140. package/lib/{content → templates/content}/subscription-billing/payment-methods.md +9 -0
  141. package/lib/{content → templates/content}/subscription-billing/promotional-offers.md +8 -0
  142. package/lib/{content → templates/content}/subscription-billing/refund-policy.md +10 -0
  143. package/lib/{content → templates/content}/subscription-billing/student-discounts.md +10 -0
  144. package/lib/{content → templates/content}/subscription-billing/tax-information.md +8 -0
  145. package/lib/{content → templates/content}/technical-questions/ai-models-technical.md +10 -0
  146. package/lib/{content → templates/content}/technical-questions/api-technical.md +10 -0
  147. package/lib/{content → templates/content}/technical-questions/data-processing.md +10 -0
  148. package/lib/{content → templates/content}/technical-questions/database-architecture.md +10 -0
  149. package/lib/{content → templates/content}/technical-questions/infrastructure.md +10 -0
  150. package/lib/{content → templates/content}/technical-questions/performance-optimization.md +10 -0
  151. package/lib/{content → templates/content}/technical-questions/search-algorithms.md +10 -0
  152. package/lib/{content → templates/content}/technical-questions/technical-overview.md +10 -0
  153. package/lib/{content → templates/content}/threads/conversation-management.md +8 -0
  154. package/lib/{content → templates/content}/threads/threads-overview.md +8 -0
  155. package/lib/{content → templates/content}/troubleshooting/common-issues.md +8 -0
  156. package/lib/templates/content/use-cases/engineering-use-cases.md +123 -0
  157. package/lib/templates/content/use-cases/marketing-use-cases.md +128 -0
  158. package/lib/templates/content/use-cases/sales-use-cases.md +123 -0
  159. package/lib/templates/content/use-cases/support-use-cases.md +120 -0
  160. package/lib/templates/content/use-cases/use-cases-overview.md +115 -0
  161. package/lib/{content → templates/content}/what-is-yantra/getting-started-yantra.md +1 -1
  162. package/lib/{content → templates/content}/what-is-yantra/how-yantra-works.md +1 -1
  163. package/lib/{content → templates/content}/what-is-yantra/practical-tips-yantra.md +2 -1
  164. package/lib/{content → templates/content}/what-is-yantra/what-is-yantra-intro.md +1 -1
  165. package/lib/{content → templates/content}/what-is-yantra/yantra-discord-community.md +4 -1
  166. package/lib/{content → templates/content}/yantra-assistant/android-app.md +10 -0
  167. package/lib/{content → templates/content}/yantra-assistant/ios-app.md +10 -0
  168. package/lib/{content → templates/content}/yantra-assistant/mobile-app-overview.md +8 -0
  169. package/lib/{content → templates/content}/yantra-assistant/voice-assistant.md +10 -0
  170. package/lib/{content → templates/content}/yantra-enterprise/admin-dashboard.md +10 -0
  171. package/lib/{content → templates/content}/yantra-enterprise/custom-branding.md +10 -0
  172. package/lib/{content → templates/content}/yantra-enterprise/dedicated-support.md +10 -0
  173. package/lib/{content → templates/content}/yantra-enterprise/enterprise-overview.md +8 -0
  174. package/lib/{content → templates/content}/yantra-enterprise/sso-integration.md +10 -0
  175. package/lib/{content → templates/content}/yantra-enterprise/user-management.md +10 -0
  176. package/lib/{content → templates/content}/yantra-pro-max/billing-management.md +13 -0
  177. package/lib/{content → templates/content}/yantra-pro-max/cancellation-refund.md +13 -0
  178. package/lib/{content → templates/content}/yantra-pro-max/pro-pricing.md +13 -9
  179. package/lib/{content → templates/content}/yantra-pro-max/subscription-benefits.md +8 -0
  180. package/lib/{content → templates/content}/yantra-pro-max/upgrade-process.md +13 -0
  181. package/lib/{content → templates/content}/yantra-pro-max/yantra-max-features.md +8 -8
  182. package/lib/{content → templates/content}/yantra-pro-max/yantra-pro-overview.md +8 -8
  183. package/lib/utils/docsNavigation.d.ts +10 -0
  184. package/lib/utils/docsNavigation.d.ts.map +1 -0
  185. package/lib/utils/docsNavigation.js +151 -0
  186. package/lib/utils/docsNavigation.js.map +1 -0
  187. package/lib/utils/helpCenterUtils.d.ts.map +1 -1
  188. package/lib/utils/markdownLoader.d.ts +12 -4
  189. package/lib/utils/markdownLoader.d.ts.map +1 -1
  190. package/lib/utils/markdownLoader.js +362 -1163
  191. package/lib/utils/markdownLoader.js.map +1 -1
  192. package/package.json +23 -6
  193. package/lib/pages/ArticlePage/index.d.ts +0 -4
  194. package/lib/pages/ArticlePage/index.d.ts.map +0 -1
  195. package/lib/pages/ArticlePage/index.js +0 -190
  196. package/lib/pages/ArticlePage/index.js.map +0 -1
  197. package/lib/pages/HelpCenter/components/BookStack.js +0 -36
  198. package/lib/pages/HelpCenter/components/BookStack.js.map +0 -1
  199. package/lib/pages/LandingPage/components/SearchBar.d.ts +0 -8
  200. package/lib/pages/LandingPage/components/SearchBar.d.ts.map +0 -1
  201. package/lib/pages/LandingPage/components/SearchBar.js +0 -58
  202. package/lib/pages/LandingPage/components/SearchBar.js.map +0 -1
@@ -1,63 +1,132 @@
1
- import {jsxs,jsx}from'react/jsx-runtime';import {useNavigate}from'@remix-run/react';import {HelpCenterHeader}from'../../components/HelpCenterHeader.js';import {HelpCategoryCard}from'./components/HelpCategoryCard.js';import {PopularArticle}from'./components/PopularArticle.js';import {BookStack}from'./components/BookStack.js';import {getAllCategoriesMetadata}from'../../utils/markdownLoader.js';import {popularArticlesMock}from'./mockData.js';const HelpCenterPage = () => {
1
+ import {jsxs,jsx}from'react/jsx-runtime';import {useNavigate}from'@remix-run/react';import {HelpCenterHeader}from'../../components/HelpCenterHeader.js';import {HelpCategoryCard}from'./components/HelpCategoryCard.js';import {PopularArticle}from'./components/PopularArticle.js';import {getAllCategoriesMetadataSync}from'../../utils/markdownLoader.js';import {popularArticlesMock}from'./mockData.js';// Featured categories that get highlighted at the top
2
+ const FEATURED_CATEGORY_IDS = ['platform-features', 'ai-employees', 'solutions-engineering', 'solutions-sales', 'solutions-marketing', 'integrations', 'security-compliance', 'openclaw', 'use-cases'];
3
+ const HelpCenterPage = () => {
2
4
  const navigate = useNavigate();
3
5
  // Get categories from markdown loader
4
- const helpCategories = getAllCategoriesMetadata();
5
- const handleSearch = query => {
6
- console.log('Searching for:', query);
7
- // Implement search functionality
8
- };
6
+ const helpCategories = getAllCategoriesMetadataSync();
7
+ // Separate featured vs other categories
8
+ const featuredCategories = helpCategories.filter(c => FEATURED_CATEGORY_IDS.includes(c.id));
9
+ const otherCategories = helpCategories.filter(c => !FEATURED_CATEGORY_IDS.includes(c.id));
9
10
  const handleCategoryClick = id => {
10
- console.log('Category clicked:', id);
11
- // Navigate to category page
12
11
  navigate(`/help-center/${id}`);
13
12
  };
14
13
  return jsxs("div", {
15
14
  className: "min-h-screen bg-background text-foreground",
16
- children: [jsxs("div", {
17
- className: "flex items-center justify-center overflow-hidden bg-[#057d78] pt-20",
18
- children: [jsx(HelpCenterHeader, {
19
- onSearch: handleSearch
20
- }), jsx(BookStack, {})]
21
- }), jsxs("main", {
15
+ children: [jsx(HelpCenterHeader, {}), jsxs("main", {
22
16
  className: "relative z-10",
23
- children: [jsx("section", {
24
- className: "py-20",
17
+ children: [featuredCategories.length > 0 && jsx("section", {
18
+ className: "py-16",
19
+ children: jsxs("div", {
20
+ className: "container mx-auto px-6 lg:px-16 max-w-7xl",
21
+ children: [jsxs("div", {
22
+ className: "mb-10 flex items-center gap-3",
23
+ children: [jsx("div", {
24
+ className: "flex h-8 w-8 items-center justify-center rounded-lg bg-primary/10",
25
+ children: jsx("svg", {
26
+ className: "h-4 w-4 text-primary",
27
+ fill: "none",
28
+ stroke: "currentColor",
29
+ viewBox: "0 0 24 24",
30
+ children: jsx("path", {
31
+ strokeLinecap: "round",
32
+ strokeLinejoin: "round",
33
+ strokeWidth: 2,
34
+ d: "M11.049 2.927c.3-.921 1.603-.921 1.902 0l1.519 4.674a1 1 0 00.95.69h4.915c.969 0 1.371 1.24.588 1.81l-3.976 2.888a1 1 0 00-.363 1.118l1.518 4.674c.3.922-.755 1.688-1.538 1.118l-3.976-2.888a1 1 0 00-1.176 0l-3.976 2.888c-.783.57-1.838-.197-1.538-1.118l1.518-4.674a1 1 0 00-.363-1.118l-3.976-2.888c-.784-.57-.38-1.81.588-1.81h4.914a1 1 0 00.951-.69l1.519-4.674z"
35
+ })
36
+ })
37
+ }), jsxs("div", {
38
+ children: [jsx("h2", {
39
+ className: "text-2xl font-semibold tracking-tight text-foreground",
40
+ children: "Featured Topics"
41
+ }), jsx("p", {
42
+ className: "text-sm text-muted-foreground",
43
+ children: "Explore our most popular help categories"
44
+ })]
45
+ })]
46
+ }), jsx("div", {
47
+ className: "grid grid-cols-1 gap-5 sm:grid-cols-2 lg:grid-cols-3",
48
+ children: featuredCategories.map(category => jsx(HelpCategoryCard, {
49
+ category: category,
50
+ onClick: handleCategoryClick,
51
+ featured: true
52
+ }, category.id))
53
+ })]
54
+ })
55
+ }), jsx("div", {
56
+ className: "container mx-auto max-w-7xl px-6 lg:px-16",
57
+ children: jsx("div", {
58
+ className: "h-px bg-border"
59
+ })
60
+ }), jsx("section", {
61
+ className: "py-16",
25
62
  children: jsxs("div", {
26
- className: "container mx-auto px-6 lg:px-16",
63
+ className: "container mx-auto px-6 lg:px-16 max-w-7xl",
27
64
  children: [jsxs("div", {
28
- className: "mb-16 text-center",
29
- children: [jsx("h2", {
30
- className: "mb-4 text-4xl font-light tracking-tight text-foreground",
31
- children: "Browse by category"
32
- }), jsx("p", {
33
- className: "text-lg text-muted-foreground",
34
- children: "Find answers organized by topic"
65
+ className: "mb-10 flex items-center gap-3",
66
+ children: [jsx("div", {
67
+ className: "flex h-8 w-8 items-center justify-center rounded-lg bg-muted",
68
+ children: jsx("svg", {
69
+ className: "h-4 w-4 text-muted-foreground",
70
+ fill: "none",
71
+ stroke: "currentColor",
72
+ viewBox: "0 0 24 24",
73
+ children: jsx("path", {
74
+ strokeLinecap: "round",
75
+ strokeLinejoin: "round",
76
+ strokeWidth: 2,
77
+ d: "M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10"
78
+ })
79
+ })
80
+ }), jsxs("div", {
81
+ children: [jsx("h2", {
82
+ className: "text-2xl font-semibold tracking-tight text-foreground",
83
+ children: "All Categories"
84
+ }), jsxs("p", {
85
+ className: "text-sm text-muted-foreground",
86
+ children: ["Browse all ", helpCategories.length, " help topics"]
87
+ })]
35
88
  })]
36
89
  }), jsx("div", {
37
- className: "grid grid-cols-1 gap-8 md:grid-cols-2 lg:grid-cols-3",
38
- children: helpCategories.map(category => jsx(HelpCategoryCard, {
90
+ className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4",
91
+ children: otherCategories.map(category => jsx(HelpCategoryCard, {
39
92
  category: category,
40
93
  onClick: handleCategoryClick
41
94
  }, category.id))
42
95
  })]
43
96
  })
44
97
  }), jsx("section", {
45
- className: "bg-card py-20",
98
+ className: "border-t border-border bg-muted/30 py-16",
46
99
  children: jsxs("div", {
47
- className: "container mx-auto px-6 lg:px-16",
100
+ className: "container mx-auto px-6 lg:px-16 max-w-7xl",
48
101
  children: [jsxs("div", {
49
- className: "mb-16 text-center",
50
- children: [jsx("h2", {
51
- className: "mb-4 text-4xl font-light tracking-tight text-foreground",
52
- children: "Popular articles"
53
- }), jsx("p", {
54
- className: "text-lg text-muted-foreground",
55
- children: "Most helpful content from our community"
102
+ className: "mb-10 flex items-center gap-3",
103
+ children: [jsx("div", {
104
+ className: "flex h-8 w-8 items-center justify-center rounded-lg bg-primary/10",
105
+ children: jsx("svg", {
106
+ className: "h-4 w-4 text-primary",
107
+ fill: "none",
108
+ stroke: "currentColor",
109
+ viewBox: "0 0 24 24",
110
+ children: jsx("path", {
111
+ strokeLinecap: "round",
112
+ strokeLinejoin: "round",
113
+ strokeWidth: 2,
114
+ d: "M13 7h8m0 0v8m0-8l-8 8-4-4-6 6"
115
+ })
116
+ })
117
+ }), jsxs("div", {
118
+ children: [jsx("h2", {
119
+ className: "text-2xl font-semibold tracking-tight text-foreground",
120
+ children: "Popular Articles"
121
+ }), jsx("p", {
122
+ className: "text-sm text-muted-foreground",
123
+ children: "Quick answers to common questions"
124
+ })]
56
125
  })]
57
126
  }), jsx("div", {
58
- className: "max-w-4xl mx-auto",
127
+ className: "max-w-3xl",
59
128
  children: jsx("div", {
60
- className: "space-y-3",
129
+ className: "space-y-2",
61
130
  children: popularArticlesMock.map(article => jsx(PopularArticle, {
62
131
  title: article.title,
63
132
  link: article.link
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/pages/HelpCenter/index.tsx"],"sourcesContent":[null],"names":["_jsxs"],"mappings":"2bASM,MAAA,cAAc,GAAa,MAAK;AACpC,EAAA,MAAA,QAAc,GAAA,WAAc,EAAA;;AAG5B,EAAA,MAAA,cAAoB,GAAA,wBAA2B,EAAA;AAE/C,EAAA,MAAA,YAAkB,GAAA,KAAI;AACpB,IAAA,OAAA,CAAA,GAAO,CAAC,uBAAsB,CAAA;;AAEhC,GAAA;AAEA,EAAA,MAAA,mBAAyB,GAAA,EAAG;AAC1B,IAAA,OAAA,CAAA,GAAO,CAAC,uBAAuB,CAAE;;AAEjC,IAAA,QAAA,CAAA,CAAA,aAAS,EAAA,EAAA,CAAA,CAAgB,CAAE;AAC7B,GAAA;AAEA,EAAA,OAAAA,IACO,CAAA,KAAA,EAAA;AA6DT,IAAE,SAAA,EAAA,4CAAA;AAEF,IAAA,QAAA,EAAA,CAAeA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/pages/HelpCenter/index.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"6YAQA;AACA,MAAM,qBAAqB,GAAG,CAAA,mBAAA,EAAA,cAAA,EAAA,uBAAA,EAAA,iBAAA,EAAA,qBAAA,EAAA,cAAA,EAAA,qBAAA,EAAA,UAAA,EAAA,WAAA,CAAA;AACP,MAAA,cAAA,GAAA,MAAA;QACL,QAAA,GAAA,WAAA,EAAA;;QAEG,cAAA,GAAA,4BAAA,EAAA;;QAEH,kBAAA,GAAA,cAAA,CAAA,MAAA,CAAA,CAAA,IAAA,qBAAA,CAAA,QAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;QACO,eAAA,GAAA,cAAA,CAAA,MAAA,CAAA,CAAA,IAAA,CAAA,qBAAA,CAAA,QAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;QACX,mBAAA,GAAA,EAAA,IAAA;IACV,QAAW,CAAA,CAAA,aAAA,EAAA,EAAA,CAAA,CAAA,CAAA;GACb;AAEF,EAAM,OAAAA,IAAA,CAAA,KAAc,EAAa;AAC7B,IAAA,SAAc,EAAA,4CAAiB;IAE/B,QAAsC,EAAA,CAAAC,GAAA,CAAA,gBAAA,EAAA,EAAA,CAAA,EAAAD,IAAA,CAAA,MAAA,EAAA;AACtC,MAAA,SAAoB,EAAA,eAA+B;MAEX,QAAA,EAAA,CAAA,kBAAA,CAAA,MAAA,GAAA,CAAA,IAAAC,GAAA,CAAA,SAAA,EAAA;QAClC,SAAA,EAAA,OAAA;QACA,QAAA,EAAAD,IAAA,CAAA,KAAgC,EAAA;AAEtC,UAAM,SAAmB,EAAA,2CAAkB;AACvC,UAAA,QAAS,EAAA,CAAAA,IAAA,CAAA,KAAA,EAAkB;AAC/B,YAAE,SAAA,EAAA,+BAAA;AAEF,YACI,QAAK,EAAA,CAAAC,GAAA,CAAA,KAAA,EAAA;AAmIb,cAAE,SAAA,EAAA,mEAAA;AAEF,cAAA,cAA6B,KAAC,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"mockData.d.ts","sourceRoot":"","sources":["../../../src/pages/HelpCenter/mockData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,eAAO,MAAM,kBAAkB,EAAE,YAAY,EAmK5C,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;GAgB/B,CAAC"}
1
+ {"version":3,"file":"mockData.d.ts","sourceRoot":"","sources":["../../../src/pages/HelpCenter/mockData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D,eAAO,MAAM,kBAAkB,EAAE,YAAY,EAgI5C,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;GA0B/B,CAAC"}
@@ -1,13 +1,21 @@
1
1
  const popularArticlesMock = [{
2
+ id: 'platform-overview',
3
+ title: 'Yantra Platform Overview',
4
+ link: '/help-center/platform-features/platform-overview'
5
+ }, {
6
+ id: 'getting-started-ai',
7
+ title: 'Getting Started with AI Employees',
8
+ link: '/help-center/ai-employees/getting-started-ai-employees'
9
+ }, {
2
10
  id: 'what-is-yantra',
3
11
  title: 'What is Yantra?',
4
12
  link: '/help-center/what-is-yantra'
5
13
  }, {
6
- id: 'getting-started',
7
- title: 'Getting Started with Yantra',
8
- link: '/get-started'
14
+ id: 'integrations-overview',
15
+ title: 'Integrations Overview',
16
+ link: '/help-center/integrations/integrations-overview'
9
17
  }, {
10
- id: 'practical-tips',
11
- title: 'Practical Tips for Using Yantra',
12
- link: '/help-center/technical-questions'
18
+ id: 'security-overview',
19
+ title: 'Security & Compliance Overview',
20
+ link: '/help-center/security-compliance/security-overview'
13
21
  }];export{popularArticlesMock};//# sourceMappingURL=mockData.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mockData.js","sources":["../../../src/pages/HelpCenter/mockData.ts"],"sourcesContent":[null],"names":[],"mappings":"AAqKE,MAAA,mBAAA,GAAA,CAAA;AAEF,EAAM,EAAA,EAAA,gBAAO;AACX,EAAA,KAAA,EAAA,iBAAA;AACE,EAAA,IAAA,EAAA;AACA,CAAA,EAAA;AACA,EAAA,EAAA,EAAA,iBAAmC;AACpC,EAAA,KAAA,EAAA,6BAAA;AACD,EAAA,IAAA,EAAA;AACE,CAAA,EAAA;AACA,EAAA,EAAA,EAAA,gBAAoC;AACpC,EAAA,KAAA,EAAA,iCAAoB;AACrB,EAAA,IAAA,EAAA;AACD,CAAA"}
1
+ {"version":3,"file":"mockData.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
@@ -2,7 +2,6 @@ import React from 'react';
2
2
  interface HeroSectionProps {
3
3
  title: string;
4
4
  subtitle?: string;
5
- onSearch?: (query: string) => void;
6
5
  }
7
6
  export declare const HeroSection: React.FC<HeroSectionProps>;
8
7
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"HeroSection.d.ts","sourceRoot":"","sources":["../../../../src/pages/LandingPage/components/HeroSection.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,gBAAgB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAmClD,CAAC"}
1
+ {"version":3,"file":"HeroSection.d.ts","sourceRoot":"","sources":["../../../../src/pages/LandingPage/components/HeroSection.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,gBAAgB;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA+BlD,CAAC"}
@@ -1,7 +1,6 @@
1
- import {jsx,jsxs}from'react/jsx-runtime';import {SearchBar}from'./SearchBar.js';import {Images}from'./Assets.js';const HeroSection = ({
1
+ import {jsx,jsxs}from'react/jsx-runtime';import {SearchBar}from'../../../components/SearchBar.js';import {Images}from'./Assets.js';const HeroSection = ({
2
2
  title,
3
- subtitle,
4
- onSearch
3
+ subtitle
5
4
  }) => {
6
5
  return jsx("section", {
7
6
  className: "relative w-full bg-[#057d78] py-20",
@@ -19,9 +18,7 @@ import {jsx,jsxs}from'react/jsx-runtime';import {SearchBar}from'./SearchBar.js';
19
18
  children: subtitle
20
19
  }), jsx("div", {
21
20
  className: "pt-6",
22
- children: jsx(SearchBar, {
23
- onSearch: onSearch
24
- })
21
+ children: jsx(SearchBar, {})
25
22
  })]
26
23
  }), jsx("div", {
27
24
  className: "hidden h-80 w-96 md:block",
@@ -1 +1 @@
1
- {"version":3,"file":"HeroSection.js","sources":["../../../../src/pages/LandingPage/components/HeroSection.tsx"],"sourcesContent":[null],"names":[],"mappings":"iHAUO,MAAM,WAAW,GAA+B,CAAC;OAK/C;AA8BT,EAAE,QAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"HeroSection.js","sources":["../../../../src/pages/LandingPage/components/HeroSection.tsx"],"sourcesContent":[null],"names":[],"mappings":"mIASa,MAAA,WAAW,GAA+B,CAAC;OAC7C;AA8BX,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pages/LandingPage/index.tsx"],"names":[],"mappings":"AAUA,QAAA,MAAM,WAAW,+CA+MhB,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pages/LandingPage/index.tsx"],"names":[],"mappings":"AAUA,QAAA,MAAM,WAAW,+CAsMhB,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -1,9 +1,5 @@
1
1
  import {jsx,jsxs}from'react/jsx-runtime';import {Button}from'@admin-layout/tailwind-ui/shardui/button.js';import {useNavigate,Link}from'@remix-run/react';import {HeroSection}from'./components/HeroSection.js';import {CategoriesSection}from'./components/CategoriesSection.js';import {FeaturedSection}from'./components/FeaturedSection.js';import {ResourcesSection}from'./components/ResourcesSection.js';import {Icons}from'./components/Icons.js';import {Images}from'./components/Assets.js';const LandingPage = () => {
2
2
  const navigate = useNavigate();
3
- const handleSearch = query => {
4
- console.log('Searching for:', query);
5
- // Implement search functionality
6
- };
7
3
  const handleCategoryClick = categoryHref => {
8
4
  navigate(categoryHref);
9
5
  };
@@ -129,8 +125,7 @@ import {jsx,jsxs}from'react/jsx-runtime';import {Button}from'@admin-layout/tailw
129
125
  className: "min-h-screen bg-background",
130
126
  children: [jsx(HeroSection, {
131
127
  title: "How can we help?",
132
- subtitle: "Get answers to all things Yantra.",
133
- onSearch: handleSearch
128
+ subtitle: "Get answers to all things Yantra."
134
129
  }), jsx("section", {
135
130
  className: "py-16",
136
131
  children: jsx("div", {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/pages/LandingPage/index.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":"seAUM,MAAA,WAAW,GAAG,MAAK;AACrB,EAAA,MAAA,QAAc,GAAA,WAAc,EAAA;AAE5B,EAAA,MAAA,YAAkB,GAAA,KAAI;AAClB,IAAA,OAAA,CAAA,GAAO,CAAC,uBAAsB,CAAA;;AAElC,GAAA;AAEA,EAAA,MAAA,mBAAyB,GAAA,YAAI;YACjB,CAAA,YAAa,CAAA;AACzB,GAAA;AAEA,EAAA,MAAA,kBAAwB,GAAA,WAAI;YAChB,CAAA,WAAY,CAAA;AACxB,GAAA;AAEA,EAAA,MAAA,mBAAyB,GAAA,YAAI;YACjB,CAAA,YAAa,CAAA;AACzB,GAAA;;AAGA,EAAA,MAAA,aAAmB,CAAA;AACf,IAAA,EAAA,EAAA,iBAAA;AACI,IAAA,IAAA,EAAA,cAAqB;AACrB,IAAA,KAAA,EAAA,iBAAoB;AACpB,IAAA,WAAA,EAAK,0CAAmB;AACxB,IAAA,IAAA,EAAAA,GAAA,CAAA,KAAA,CAAA,cAAuD,EAAA;AACvD,MAAA,KAAA,EAAA,EAAA;AACH,MAAA,MAAA,EAAA;AACD,KAAA;AACI,GAAA,EAAA;AACA,IAAA,EAAA,EAAA,oBAAuC;AACvC,IAAA,IAAA,EAAA,iCAA2B;AAC3B,IAAA,KAAA,EAAA,oBAAqD;AACrD,IAAA,WAAA,EAAM,wCAAgC;AACzC,IAAA,IAAA,EAAAA,GAAA,CAAA,KAAA,CAAA,iBAAA,EAAA;AACD,MAAA,KAAA,EAAA,EAAA;AACI,MAAA,MAAA,EAAE;AACF,KAAA;AACA,GAAA,EAAA;AACA,IAAA,EAAA,EAAA,SAAA;AACA,IAAA,IAAA,EAAA,mCAA0B;AAC7B,IAAA,KAAA,EAAA,yBAAA;AACD,IAAA,WAAA,EAAA,+CAAA;AACI,IAAA,IAAA,EAAAA,GAAE,MAAoB,CAAA,OAAA,EAAA;AACtB,MAAA,KAAA,EAAA,EAAA;AACA,MAAA,MAAA,EAAA;AACA,KAAA;AACA,GAAA,EAAA;AACH,IAAA,EAAA,EAAA,kBAAA;AACD,IAAA,IAAA,EAAA,+BAAA;AACI,IAAA,KAAA,EAAA,kBAAqB;AACrB,IAAA,WAAA,sCAAoC;AACpC,IAAA,IAAA,EAAAA,GAAA,CAAA,KAAwB,CAAA,eAAA,EAAA;AACxB,MAAA,KAAA,EAAA,EAAA;AACA,MAAA,MAAA,EAAA;AACH,KAAA;AACD,GAAA,EAAA;AACI,IAAA,EAAA,EAAA,iBAAS;AACT,IAAA,IAAA,EAAA,8BAAY;AACZ,IAAA,KAAA,EAAA,iBAA8B;AAC9B,IAAA,WAAA,EAAA,kCAAuD;AACvD,IAAA,IAAA,EAAAA,GAAA,CAAA,KAAM,CAAA,eAAW,EAAK;AACzB,MAAA,KAAA,EAAA,EAAA;MACH,MAAA,EAAA;KAEgC;AAClC,GAAA,EAAA;AACI,IAAA,EAAA,EAAA,KAAA;AACI,IAAA,KAAA,EAAA,KAAI;AACJ,IAAA,IAAA,EAAA,wBAAoC;AACpC,IAAA,WAAA,4CAAoB;AACpB,IAAA,IAAA,EAAAA,GAAA,CAAA,KAAA,CAAA,KAC+G;AAClH,MAAA,KAAA,EAAA,EAAA;AACD,MAAA,MAAA,EAAA;AACI,KAAA;AACA,GAAA,CAAA;AACA;AACA,EAAA,MAAA,mBAAkG,CAAA;AACrG,IAAA,EAAA,EAAA,iCAAA;AACD,IAAA,KAAA,EAAA,6BAAA;AACI,IAAA,IAAA,EAAA,cAA0B;AAC1B,IAAA,WAAA,EAAK;AACL,GAAA,EAAA;AACA,IAAA,EAAA,EAAA,8BACyJ;AAC5J,IAAA,KAAA,EAAA,6DAAA;QACH,EAAA,6BAAA;IAEF,WAA0B,EAAA;AAC1B,GAAA,EAAA;AACI,IAAA,EAAA,EAAA,sBAAA;AACI,IAAA,KAAA,EAAA,0CAAc;AACd,IAAA,IAAA,EAAA,0BAAgC;AAChC,IAAA,WAAA;AACA,GAAA,CAAA;AACA;AACA,EAAA,MAAA,SAAA,IAAS;AACZ,IAAA,EAAA,EAAA,UAAA;AACD,IAAA,KAAA,EAAA,yBAAA;AACI,IAAA,IAAA,EAAA,2BAAc;AACd,IAAA,WAAA,EAAK,4EAAY;AACjB,IAAA,IAAA,EAAAA,GAAA,CAAA,KAAiB,CAAA,QAAA,EAAA;AACjB,MAAA,KAAA,EAAA,EAAA;AAEA,MAAA,MAAA,EAAA;AACA,KAAA,CAAA;AACH,IAAA,OAAA,EAAA;AACD,GAAA,EAAA;AACI,IAAA,EAAA,EAAA,UAAa;AACb,IAAA,KAAA,EAAA,UAAmB;AACnB,IAAA,IAAA,EAAA,WAAmB;AACnB,IAAA,WAAA,EAAA,iGAC6H;AAC7H,IAAA,IAAA,EAAAA,GAAA,CAAA,KAAM,CAAA,QAAO,EAAO;AACpB,MAAA,KAAA,EAAA,EAAA;AACH,MAAA,MAAA,EAAA;KACJ,CAAC;IAEF,OAAoC,EAAA;AACpC,GAAA,EAAA;AACI,IAAA,EAAA,EAAA,SAAsB;AACtB,IAAA,KAAA,EAAA,YAAwF;AACxF,IAAA,IAAA,EAAA,aAAyB;AACzB,IAAA,WAAO,EAAA,yHAAsB;QAC/B,EAAAA,GAAA,CAAA,KAAA,CAAA,OAAA,EAAA;MAEK,KAAA,EACE,EAAA;AA8Eb,MAAE,MAAA,EAAA;AAEF,KAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/pages/LandingPage/index.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ export declare const MarkdownPageLayout: React.FC<React.PropsWithChildren>;
3
+ //# sourceMappingURL=MarkdownPageLayout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MarkdownPageLayout.d.ts","sourceRoot":"","sources":["../../../src/pages/Markdown/MarkdownPageLayout.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAO3D,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAiYhE,CAAC"}
@@ -0,0 +1,314 @@
1
+ import {jsxs,jsx}from'react/jsx-runtime';import {useState,useRef,useEffect}from'react';import {useLocation,Outlet,Link}from'@remix-run/react';import {SidebarSearch}from'../../components/SidebarSearch.js';import {getDocsNavigation,getDocsNavigationAsync}from'../../utils/docsNavigation.js';import {useTheme}from'@admin-layout/tailwind-ui';import {cn}from'../../utils/index.js';const MarkdownPageLayout = ({
2
+ children
3
+ }) => {
4
+ const location = useLocation();
5
+ const [navItems, setNavItems] = useState(getDocsNavigation());
6
+ const [expandedItems, setExpandedItems] = useState(new Set());
7
+ const [headings, setHeadings] = useState([]);
8
+ const [activeHeadingId, setActiveHeadingId] = useState('');
9
+ const observerRef = useRef(null);
10
+ const {
11
+ setMode,
12
+ mode
13
+ } = useTheme();
14
+ const isDark = mode === 'dark';
15
+ // Load navigation asynchronously to ensure manifest is loaded
16
+ useEffect(() => {
17
+ getDocsNavigationAsync().then(items => {
18
+ if (items && items.length > 0) {
19
+ console.log('✅ Navigation items loaded:', items.length, 'top-level items');
20
+ console.log('📁 Sample structure:', items[0]?.title, 'has', items[0]?.children?.length || 0, 'children');
21
+ setNavItems(items);
22
+ } else {
23
+ console.warn('⚠️ No navigation items loaded');
24
+ }
25
+ }).catch(error => {
26
+ console.error('❌ Error loading navigation:', error);
27
+ });
28
+ }, []);
29
+ // Helper function to check if an item or any of its descendants contain the active path
30
+ const itemContainsActivePath = (item, activePath) => {
31
+ if (item.path && (activePath === item.path || activePath.startsWith(item.path + '/'))) {
32
+ return true;
33
+ }
34
+ if (item.children && item.children.length > 0) {
35
+ return item.children.some(child => itemContainsActivePath(child, activePath));
36
+ }
37
+ return false;
38
+ };
39
+ // Helper function to get all items that should be expanded for the active path
40
+ const getItemsToExpandForActivePath = (items, activePath, pathPrefix = '') => {
41
+ const itemsToExpand = new Set();
42
+ function checkAndExpand(items, pathPrefix = '') {
43
+ items.forEach(item => {
44
+ const itemPath = pathPrefix ? `${pathPrefix}/${item.title}` : item.title;
45
+ if (item.path && (activePath === item.path || activePath.startsWith(item.path + '/'))) {
46
+ itemsToExpand.add(itemPath);
47
+ if (item.children && item.children.length > 0) {
48
+ checkAndExpand(item.children, itemPath);
49
+ }
50
+ } else if (item.children && item.children.length > 0) {
51
+ // Check if any child is active
52
+ const hasActiveChild = item.children.some(child => child.path && (activePath === child.path || activePath.startsWith(child.path + '/')));
53
+ if (hasActiveChild) {
54
+ itemsToExpand.add(itemPath);
55
+ checkAndExpand(item.children, itemPath);
56
+ }
57
+ }
58
+ });
59
+ }
60
+ checkAndExpand(items, pathPrefix);
61
+ return itemsToExpand;
62
+ };
63
+ // Auto-expand items that contain the active path when pathname or navItems change
64
+ useEffect(() => {
65
+ const activePath = location.pathname;
66
+ const itemsToExpand = getItemsToExpandForActivePath(navItems, activePath);
67
+ // Merge: keep existing expandedItems and add items containing active path
68
+ setExpandedItems(prev => {
69
+ const merged = new Set(prev);
70
+ itemsToExpand.forEach(path => merged.add(path));
71
+ return merged;
72
+ });
73
+ }, [location.pathname, navItems]);
74
+ // Ensure items containing active path stay expanded after toggles
75
+ useEffect(() => {
76
+ const activePath = location.pathname;
77
+ const itemsToExpand = getItemsToExpandForActivePath(navItems, activePath);
78
+ // Check if any required items are missing from expandedItems
79
+ let needsUpdate = false;
80
+ itemsToExpand.forEach(path => {
81
+ if (!expandedItems.has(path)) {
82
+ needsUpdate = true;
83
+ }
84
+ });
85
+ if (needsUpdate) {
86
+ setExpandedItems(prev => {
87
+ const merged = new Set(prev);
88
+ itemsToExpand.forEach(path => merged.add(path));
89
+ return merged;
90
+ });
91
+ }
92
+ }, [expandedItems, location.pathname, navItems]);
93
+ // Toggle item expansion - allow all items to be toggled
94
+ // Items containing active path will be re-expanded automatically by useEffect
95
+ const toggleItem = itemPath => {
96
+ setExpandedItems(prev => {
97
+ const newSet = new Set(prev);
98
+ if (newSet.has(itemPath)) {
99
+ newSet.delete(itemPath);
100
+ } else {
101
+ newSet.add(itemPath);
102
+ }
103
+ return newSet;
104
+ });
105
+ };
106
+ // Extract headings from the current page content
107
+ useEffect(() => {
108
+ // Wait for content to load, then extract headings
109
+ const extractHeadings = () => {
110
+ const contentArea = document.querySelector('[data-content-area]');
111
+ if (contentArea) {
112
+ const headingElements = contentArea.querySelectorAll('h1, h2, h3, h4, h5, h6');
113
+ const extractedHeadings = [];
114
+ headingElements.forEach(heading => {
115
+ const id = heading.id || heading.textContent?.toLowerCase().replace(/\s+/g, '-').replace(/[^\w-]/g, '') || '';
116
+ if (id) {
117
+ extractedHeadings.push({
118
+ id,
119
+ text: heading.textContent || '',
120
+ level: parseInt(heading.tagName.charAt(1))
121
+ });
122
+ }
123
+ });
124
+ setHeadings(extractedHeadings);
125
+ }
126
+ };
127
+ // Extract immediately
128
+ extractHeadings();
129
+ // Also extract after a short delay to catch dynamically loaded content
130
+ const timeoutId = setTimeout(extractHeadings, 100);
131
+ // Use MutationObserver to watch for content changes
132
+ const observer = new MutationObserver(extractHeadings);
133
+ const contentArea = document.querySelector('[data-content-area]');
134
+ if (contentArea) {
135
+ observer.observe(contentArea, {
136
+ childList: true,
137
+ subtree: true
138
+ });
139
+ }
140
+ return () => {
141
+ clearTimeout(timeoutId);
142
+ observer.disconnect();
143
+ };
144
+ }, [location.pathname]);
145
+ // Scroll spy for table of contents
146
+ useEffect(() => {
147
+ if (headings.length === 0) return;
148
+ // Clean up previous observer
149
+ if (observerRef.current) {
150
+ observerRef.current.disconnect();
151
+ }
152
+ // Create new intersection observer
153
+ observerRef.current = new IntersectionObserver(entries => {
154
+ entries.forEach(entry => {
155
+ if (entry.isIntersecting) {
156
+ setActiveHeadingId(entry.target.id);
157
+ }
158
+ });
159
+ }, {
160
+ rootMargin: '-20% 0px -70% 0px',
161
+ threshold: 0
162
+ });
163
+ // Observe all headings
164
+ headings.forEach(heading => {
165
+ const element = document.getElementById(heading.id);
166
+ if (element && observerRef.current) {
167
+ observerRef.current.observe(element);
168
+ }
169
+ });
170
+ // Cleanup function
171
+ return () => {
172
+ if (observerRef.current) {
173
+ observerRef.current.disconnect();
174
+ }
175
+ };
176
+ }, [headings]);
177
+ // Determine active section based on current path
178
+ const isActivePath = path => {
179
+ if (!path) return false;
180
+ return location.pathname === path || location.pathname.startsWith(path + '/');
181
+ };
182
+ // Recursive component to render navigation items
183
+ const renderNavItem = (item, level = 0, pathPrefix = '') => {
184
+ const itemPath = pathPrefix ? `${pathPrefix}/${item.title}` : item.title;
185
+ const hasChildren = item.children && item.children.length > 0;
186
+ const activePath = location.pathname;
187
+ // Item is expanded only if it's in expandedItems
188
+ // The useEffect will ensure items containing active path are always in expandedItems
189
+ const isExpanded = expandedItems.has(itemPath);
190
+ const isActive = item.path ? isActivePath(item.path) : false;
191
+ const containsActive = itemContainsActivePath(item, activePath);
192
+ const indentLevel = level * 16; // 16px per level
193
+ return jsxs("li", {
194
+ className: "w-full",
195
+ children: [jsx("div", {
196
+ className: "flex items-center w-full",
197
+ children: hasChildren ? jsxs("button", {
198
+ onClick: e => {
199
+ e.preventDefault();
200
+ toggleItem(itemPath);
201
+ },
202
+ className: cn('flex items-center justify-between w-full px-3 py-2 text-sm rounded-md transition-colors text-left', isActive ? 'bg-primary/10 dark:bg-primary/20 text-primary dark:text-primary font-medium' : containsActive ? 'text-primary dark:text-primary font-medium hover:bg-gray-50 dark:hover:bg-gray-800' : 'text-gray-700 dark:text-gray-300 hover:bg-gray-50 dark:hover:bg-gray-800'),
203
+ style: {
204
+ paddingLeft: `${12 + indentLevel}px`
205
+ },
206
+ children: [jsx("span", {
207
+ className: "flex-1 truncate",
208
+ children: item.title
209
+ }), jsx("svg", {
210
+ className: cn('w-4 h-4 transition-transform flex-shrink-0 ml-2', isExpanded ? 'rotate-90' : ''),
211
+ fill: "none",
212
+ stroke: "currentColor",
213
+ viewBox: "0 0 24 24",
214
+ children: jsx("path", {
215
+ strokeLinecap: "round",
216
+ strokeLinejoin: "round",
217
+ strokeWidth: 2,
218
+ d: "M9 5l7 7-7 7"
219
+ })
220
+ })]
221
+ }) : item.path ? jsx(Link, {
222
+ to: item.path,
223
+ className: cn('block px-3 py-2 text-sm rounded-md transition-colors truncate', isActive ? 'bg-primary/10 dark:bg-primary/20 text-primary dark:text-primary font-medium' : 'text-gray-700 dark:text-gray-300 hover:bg-gray-50 dark:hover:bg-gray-800'),
224
+ style: {
225
+ paddingLeft: `${12 + indentLevel}px`
226
+ },
227
+ children: item.title
228
+ }) : jsx("span", {
229
+ className: cn('block px-3 py-2 text-sm rounded-md truncate text-gray-500 dark:text-gray-400'),
230
+ style: {
231
+ paddingLeft: `${12 + indentLevel}px`
232
+ },
233
+ children: item.title
234
+ })
235
+ }), hasChildren && isExpanded && jsx("ul", {
236
+ className: "mt-1 space-y-1",
237
+ children: item.children.map(child => renderNavItem(child, level + 1, itemPath))
238
+ })]
239
+ }, itemPath);
240
+ };
241
+ return jsxs("div", {
242
+ className: "min-h-screen bg-background text-foreground mt-20",
243
+ children: [jsx("aside", {
244
+ className: "hidden lg:block fixed left-0 top-20 h-screen w-64 z-10",
245
+ children: jsxs("div", {
246
+ className: "flex flex-col h-[calc(100vh-64px)] w-64 border-r border-gray-200 dark:border-gray-800 bg-background text-foreground",
247
+ children: [jsx("div", {
248
+ className: "sticky top-0 z-20 p-4 pb-0 bg-background text-foreground ",
249
+ children: jsx("div", {
250
+ className: "mb-4",
251
+ children: jsx(SidebarSearch, {
252
+ placeholder: "Search..."
253
+ })
254
+ })
255
+ }), jsx("nav", {
256
+ className: "flex-1 overflow-y-auto p-4 min-h-0",
257
+ children: jsx("ul", {
258
+ className: "space-y-1",
259
+ children: navItems.map(item => renderNavItem(item))
260
+ })
261
+ }), jsx("div", {
262
+ className: "p-4 border-t border-gray-200 dark:border-gray-800 flex-shrink-0",
263
+ children: jsxs("div", {
264
+ className: "flex items-center justify-center gap-2",
265
+ children: [jsx("div", {
266
+ className: cn('p-1.5 rounded-full transition-colors cursor-pointer', !isDark ? 'bg-gray-100 dark:bg-gray-700' : 'bg-transparent'),
267
+ onClick: () => setMode('light'),
268
+ children: jsx("svg", {
269
+ className: "w-4 h-4 text-gray-700 dark:text-gray-300",
270
+ fill: "none",
271
+ stroke: "currentColor",
272
+ viewBox: "0 0 24 24",
273
+ children: jsx("path", {
274
+ strokeLinecap: "round",
275
+ strokeLinejoin: "round",
276
+ strokeWidth: 2,
277
+ d: "M12 3v1m0 16v1m9-9h-1M4 12H3m15.364 6.364l-.707-.707M6.343 6.343l-.707-.707m12.728 0l-.707.707M6.343 17.657l-.707.707M16 12a4 4 0 11-8 0 4 4 0 018 0z"
278
+ })
279
+ })
280
+ }), jsx("div", {
281
+ className: cn('p-1.5 rounded-full transition-colors cursor-pointer', isDark ? 'bg-gray-100 dark:bg-gray-700' : 'bg-transparent'),
282
+ onClick: () => setMode('dark'),
283
+ children: jsx("svg", {
284
+ className: "w-4 h-4 text-gray-700 dark:text-gray-300",
285
+ fill: "none",
286
+ stroke: "currentColor",
287
+ viewBox: "0 0 24 24",
288
+ children: jsx("path", {
289
+ strokeLinecap: "round",
290
+ strokeLinejoin: "round",
291
+ strokeWidth: 2,
292
+ d: "M20.354 15.354A9 9 0 018.646 3.646 9.003 9.003 0 0012 21a9.003 9.003 0 008.354-5.646z"
293
+ })
294
+ })
295
+ })]
296
+ })
297
+ })]
298
+ })
299
+ }), jsx("main", {
300
+ className: "lg:pl-64 flex flex-col min-h-screen",
301
+ children: jsx("div", {
302
+ className: "flex-1 flex",
303
+ children: jsx("div", {
304
+ className: "flex-1 min-w-0",
305
+ children: jsx("div", {
306
+ className: "max-w-full mx-auto px-6 py-8",
307
+ "data-content-area": true,
308
+ children: children || jsx(Outlet, {})
309
+ })
310
+ })
311
+ })
312
+ })]
313
+ });
314
+ };export{MarkdownPageLayout};//# sourceMappingURL=MarkdownPageLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MarkdownPageLayout.js","sources":["../../../src/pages/Markdown/MarkdownPageLayout.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"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"}