@adminide-stack/yantra-help-browser 12.0.19-alpha.2 → 12.0.191-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/HelpCenterFooter.d.ts.map +1 -1
- package/lib/components/HelpCenterFooter.js +126 -111
- package/lib/components/HelpCenterFooter.js.map +1 -1
- package/lib/components/HelpCenterHeader.d.ts +1 -2
- package/lib/components/HelpCenterHeader.d.ts.map +1 -1
- package/lib/components/HelpCenterHeader.js +19 -14
- package/lib/components/HelpCenterHeader.js.map +1 -1
- package/lib/components/HeroHeaderScrollStyles.d.ts +7 -0
- package/lib/components/HeroHeaderScrollStyles.d.ts.map +1 -0
- package/lib/components/HeroHeaderScrollStyles.js +23 -0
- package/lib/components/HeroHeaderScrollStyles.js.map +1 -0
- package/lib/components/Logo.d.ts +4 -1
- package/lib/components/Logo.d.ts.map +1 -1
- package/lib/components/Logo.js +95 -86
- package/lib/components/Logo.js.map +1 -1
- package/lib/components/PageHero.d.ts +9 -3
- package/lib/components/PageHero.d.ts.map +1 -1
- package/lib/components/PageHero.js +31 -18
- package/lib/components/PageHero.js.map +1 -1
- package/lib/components/enterprise/EnterprisePageStyles.d.ts +4 -0
- package/lib/components/enterprise/EnterprisePageStyles.d.ts.map +1 -0
- package/lib/components/enterprise/EnterprisePageStyles.js +100 -0
- package/lib/components/enterprise/EnterprisePageStyles.js.map +1 -0
- package/lib/components/enterprise/EnterpriseSection.d.ts +14 -0
- package/lib/components/enterprise/EnterpriseSection.d.ts.map +1 -0
- package/lib/components/enterprise/EnterpriseSection.js +35 -0
- package/lib/components/enterprise/EnterpriseSection.js.map +1 -0
- package/lib/components/enterprise/ScrollReveal.d.ts +15 -0
- package/lib/components/enterprise/ScrollReveal.d.ts.map +1 -0
- package/lib/components/enterprise/ScrollReveal.js +34 -0
- package/lib/components/enterprise/ScrollReveal.js.map +1 -0
- package/lib/components/enterprise/index.d.ts +4 -0
- package/lib/components/enterprise/index.d.ts.map +1 -0
- package/lib/components/navbar/index.d.ts +3 -0
- package/lib/components/navbar/index.d.ts.map +1 -1
- package/lib/components/navbar/index.js +25 -44
- package/lib/components/navbar/index.js.map +1 -1
- package/lib/compute.d.ts +1 -0
- package/lib/compute.d.ts.map +1 -1
- package/lib/compute.js +9 -0
- package/lib/compute.js.map +1 -1
- package/lib/hooks/useHeaderScrolled.d.ts +3 -0
- package/lib/hooks/useHeaderScrolled.d.ts.map +1 -0
- package/lib/hooks/useHeaderScrolled.js +23 -0
- package/lib/hooks/useHeaderScrolled.js.map +1 -0
- package/lib/hooks/useHeroHeaderAtTop.d.ts +7 -0
- package/lib/hooks/useHeroHeaderAtTop.d.ts.map +1 -0
- package/lib/hooks/useHeroHeaderAtTop.js +32 -0
- package/lib/hooks/useHeroHeaderAtTop.js.map +1 -0
- package/lib/hooks/usePrefersReducedMotion.d.ts +6 -0
- package/lib/hooks/usePrefersReducedMotion.d.ts.map +1 -0
- package/lib/hooks/usePrefersReducedMotion.js +20 -0
- package/lib/hooks/usePrefersReducedMotion.js.map +1 -0
- package/lib/pages/About/index.d.ts.map +1 -1
- package/lib/pages/About/index.js +29 -43
- package/lib/pages/About/index.js.map +1 -1
- package/lib/pages/Blog/index.d.ts.map +1 -1
- package/lib/pages/Blog/index.js +113 -6
- package/lib/pages/Blog/index.js.map +1 -1
- package/lib/pages/CategoryCollection/index.d.ts.map +1 -1
- package/lib/pages/CategoryCollection/index.js +8 -4
- package/lib/pages/CategoryCollection/index.js.map +1 -1
- package/lib/pages/GetStarted/components/GetStartedHero.d.ts.map +1 -1
- package/lib/pages/GetStarted/index.d.ts.map +1 -1
- package/lib/pages/GetStarted/index.js +100 -124
- package/lib/pages/GetStarted/index.js.map +1 -1
- package/lib/pages/HelpCenter/components/HelpCategoryCard.d.ts +1 -0
- package/lib/pages/HelpCenter/components/HelpCategoryCard.d.ts.map +1 -1
- package/lib/pages/HelpCenter/components/HelpCategoryCard.js +10 -3
- package/lib/pages/HelpCenter/components/HelpCategoryCard.js.map +1 -1
- package/lib/pages/HelpCenter/components/PopularArticle.d.ts.map +1 -1
- package/lib/pages/HelpCenter/components/PopularArticle.js +4 -1
- package/lib/pages/HelpCenter/components/PopularArticle.js.map +1 -1
- package/lib/pages/HelpCenter/index.d.ts.map +1 -1
- package/lib/pages/HelpCenter/index.js +51 -89
- package/lib/pages/HelpCenter/index.js.map +1 -1
- package/lib/pages/LandingPage/LandingPageStyles.d.ts +7 -0
- package/lib/pages/LandingPage/LandingPageStyles.d.ts.map +1 -0
- package/lib/pages/LandingPage/LandingPageStyles.js +5 -0
- package/lib/pages/LandingPage/LandingPageStyles.js.map +1 -0
- package/lib/pages/LandingPage/components/ArticleCard.d.ts.map +1 -1
- package/lib/pages/LandingPage/components/ArticleCard.js +4 -1
- package/lib/pages/LandingPage/components/ArticleCard.js.map +1 -1
- package/lib/pages/LandingPage/components/CategoriesSection.d.ts.map +1 -1
- package/lib/pages/LandingPage/components/CategoriesSection.js +15 -30
- package/lib/pages/LandingPage/components/CategoriesSection.js.map +1 -1
- package/lib/pages/LandingPage/components/CategoryCard.d.ts +1 -0
- package/lib/pages/LandingPage/components/CategoryCard.d.ts.map +1 -1
- package/lib/pages/LandingPage/components/CategoryCard.js +5 -1
- package/lib/pages/LandingPage/components/CategoryCard.js.map +1 -1
- package/lib/pages/LandingPage/components/FeaturedSection.d.ts.map +1 -1
- package/lib/pages/LandingPage/components/FeaturedSection.js +14 -27
- package/lib/pages/LandingPage/components/FeaturedSection.js.map +1 -1
- package/lib/pages/LandingPage/components/HeroAnimatedBackground.d.ts +4 -0
- package/lib/pages/LandingPage/components/HeroAnimatedBackground.d.ts.map +1 -0
- package/lib/pages/LandingPage/components/HeroAnimatedBackground.js +16 -0
- package/lib/pages/LandingPage/components/HeroAnimatedBackground.js.map +1 -0
- package/lib/pages/LandingPage/components/HeroFluidCanvas.d.ts +8 -0
- package/lib/pages/LandingPage/components/HeroFluidCanvas.d.ts.map +1 -0
- package/lib/pages/LandingPage/components/HeroFluidCanvas.js +433 -0
- package/lib/pages/LandingPage/components/HeroFluidCanvas.js.map +1 -0
- package/lib/pages/LandingPage/components/HeroSection.d.ts +3 -2
- package/lib/pages/LandingPage/components/HeroSection.d.ts.map +1 -1
- package/lib/pages/LandingPage/components/HeroSection.js +27 -20
- package/lib/pages/LandingPage/components/HeroSection.js.map +1 -1
- package/lib/pages/LandingPage/components/ResourceCard.d.ts +1 -0
- package/lib/pages/LandingPage/components/ResourceCard.d.ts.map +1 -1
- package/lib/pages/LandingPage/components/ResourceCard.js +5 -1
- package/lib/pages/LandingPage/components/ResourceCard.js.map +1 -1
- package/lib/pages/LandingPage/components/ResourcesSection.d.ts.map +1 -1
- package/lib/pages/LandingPage/components/ResourcesSection.js +15 -27
- package/lib/pages/LandingPage/components/ResourcesSection.js.map +1 -1
- package/lib/pages/LandingPage/index.d.ts.map +1 -1
- package/lib/pages/LandingPage/index.js +4 -3
- package/lib/pages/LandingPage/index.js.map +1 -1
- package/lib/pages/Markdown/MarkdownAuroraCanvas.d.ts +12 -0
- package/lib/pages/Markdown/MarkdownAuroraCanvas.d.ts.map +1 -0
- package/lib/pages/Markdown/MarkdownAuroraCanvas.js +508 -0
- package/lib/pages/Markdown/MarkdownAuroraCanvas.js.map +1 -0
- package/lib/pages/Markdown/MarkdownPageLayout.d.ts.map +1 -1
- package/lib/pages/Markdown/MarkdownPageLayout.js +319 -102
- package/lib/pages/Markdown/MarkdownPageLayout.js.map +1 -1
- package/lib/pages/Markdown/MarkdownPageStyles.d.ts +14 -0
- package/lib/pages/Markdown/MarkdownPageStyles.d.ts.map +1 -0
- package/lib/pages/Markdown/MarkdownPageStyles.js +369 -0
- package/lib/pages/Markdown/MarkdownPageStyles.js.map +1 -0
- package/lib/pages/Markdown/MarkdownPageWithParams.d.ts.map +1 -1
- package/lib/pages/Markdown/MarkdownPageWithParams.js +2 -1
- package/lib/pages/Markdown/MarkdownPageWithParams.js.map +1 -1
- package/lib/pages/Privacy/index.d.ts.map +1 -1
- package/lib/pages/Privacy/index.js +40 -9
- package/lib/pages/Privacy/index.js.map +1 -1
- package/lib/pages/SmsTerms/index.d.ts +10 -0
- package/lib/pages/SmsTerms/index.d.ts.map +1 -0
- package/lib/pages/SmsTerms/index.js +376 -0
- package/lib/pages/SmsTerms/index.js.map +1 -0
- package/lib/pages/Terms/index.d.ts +6 -0
- package/lib/pages/Terms/index.d.ts.map +1 -1
- package/lib/pages/Terms/index.js +394 -43
- package/lib/pages/Terms/index.js.map +1 -1
- package/lib/routes.json +11 -0
- package/lib/templates/content/blog/best-ai-canvas-tools-2026.md +183 -0
- package/lib/templates/content/blog/best-ai-character-creators-2026.md +174 -0
- package/lib/templates/content/blog/best-ai-crm-software-2026.md +194 -0
- package/lib/templates/content/blog/best-ai-flight-search-travel-tools-2026.md +170 -0
- package/lib/templates/content/blog/best-ai-web-design-tools-2026.md +180 -0
- package/lib/templates/content/blog/best-ai-website-builders-2026.md +202 -0
- package/lib/templates/content/blog/best-business-email-setup-tools-2026.md +164 -0
- package/lib/templates/content/blog/best-email-campaign-tools-2026.md +178 -0
- package/lib/templates/content/blog/best-payroll-software-2026.md +170 -0
- package/lib/templates/content/blog/best-time-tracking-apps-2026.md +192 -0
- package/lib/templates/content/blog/best-web-analytics-tools-2026.md +194 -0
- package/lib/templates/content/content-manifest.json +803 -0
- package/lib/utils/markdownLoader.d.ts.map +1 -1
- package/lib/utils/markdownLoader.js +32 -42
- package/lib/utils/markdownLoader.js.map +1 -1
- package/package.json +4 -4
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {jsxs,jsx}from'react/jsx-runtime';import {useState}from'react';import {useLocation,useParams,Link}from'@remix-run/react';import {useTheme}from'@admin-layout/tailwind-ui';import {Icons}from'../Icons.js';const navItems = [{
|
|
1
|
+
import {jsxs,jsx}from'react/jsx-runtime';import {useState}from'react';import {useLocation,useParams,Link}from'@remix-run/react';import {useTheme}from'@admin-layout/tailwind-ui';import {useHeaderScrolled}from'../../hooks/useHeaderScrolled.js';import {Icons}from'../Icons.js';const navItems = [{
|
|
2
2
|
key: 'home',
|
|
3
3
|
label: 'Home',
|
|
4
4
|
path: '/'
|
|
@@ -15,65 +15,46 @@ import {jsxs,jsx}from'react/jsx-runtime';import {useState}from'react';import {us
|
|
|
15
15
|
label: 'Blog',
|
|
16
16
|
path: '/blog'
|
|
17
17
|
}];
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
const {
|
|
22
|
-
mode,
|
|
23
|
-
setMode
|
|
24
|
-
} = useTheme();
|
|
25
|
-
const isDark = mode === 'dark';
|
|
26
|
-
const handleToggle = () => {
|
|
27
|
-
setMode(isDark ? 'light' : 'dark');
|
|
28
|
-
};
|
|
29
|
-
return jsxs("button", {
|
|
30
|
-
type: "button",
|
|
31
|
-
onClick: handleToggle,
|
|
32
|
-
"aria-label": isDark ? 'Switch to light mode' : 'Switch to dark mode',
|
|
33
|
-
title: isDark ? 'Switch to light mode' : 'Switch to dark mode',
|
|
34
|
-
className: `inline-flex items-center gap-2 rounded-themed border border-border bg-card text-foreground transition-all hover:bg-secondary shadow-themed-sm focus-themed ${compact ? 'h-9 w-9 justify-center' : 'h-9 px-3 text-sm'}`,
|
|
35
|
-
children: [isDark ? jsx(Icons.MdBrightness5Icon, {
|
|
36
|
-
className: "h-4 w-4"
|
|
37
|
-
}) : jsx(Icons.MdBrightness2Icon, {
|
|
38
|
-
className: "h-4 w-4"
|
|
39
|
-
}), !compact && jsx("span", {
|
|
40
|
-
children: isDark ? 'Light' : 'Dark'
|
|
41
|
-
})]
|
|
42
|
-
});
|
|
43
|
-
}
|
|
18
|
+
/** Same policy as Clockbook: docs articles + legal/contact pages follow theme tokens. */
|
|
19
|
+
const THEME_AWARE_NAV_PATHS = new Set(['/privacy', '/feedback', '/contact']);
|
|
20
|
+
const usesThemeNavColors = (pathname, articleSlug) => Boolean(articleSlug) || THEME_AWARE_NAV_PATHS.has(pathname);
|
|
44
21
|
const RightNavItems = ({
|
|
45
|
-
scrolled = false
|
|
22
|
+
scrolled = false,
|
|
23
|
+
settings
|
|
46
24
|
}) => {
|
|
47
25
|
const [isMenuOpen, setIsMenuOpen] = useState(false);
|
|
48
26
|
const location = useLocation();
|
|
49
|
-
useParams();
|
|
27
|
+
const params = useParams();
|
|
28
|
+
const {
|
|
29
|
+
mode
|
|
30
|
+
} = useTheme();
|
|
31
|
+
const headerScrolled = useHeaderScrolled();
|
|
32
|
+
const isScrolled = Boolean(scrolled || headerScrolled);
|
|
33
|
+
const isThemeAwarePage = usesThemeNavColors(location.pathname, params.articleSlug);
|
|
34
|
+
const textColor = isThemeAwarePage ? mode === 'dark' || settings?.navTheme === 'dark' ? 'text-white' : 'text-foreground' : isScrolled ? 'text-foreground' : 'text-white';
|
|
35
|
+
const lightNav = textColor === 'text-white';
|
|
50
36
|
const isActive = path => location.pathname === path;
|
|
51
|
-
// Always use theme-aware colors. The header bg is transparent before scroll,
|
|
52
|
-
// showing bg-background behind it — white on light theme, dark on dark theme.
|
|
53
|
-
// CSS variables (--foreground, --muted-foreground) automatically adapt.
|
|
54
37
|
return jsxs("div", {
|
|
55
|
-
className:
|
|
38
|
+
className: `flex items-center justify-between ${textColor}`,
|
|
56
39
|
children: [jsx("div", {
|
|
57
40
|
className: "flex items-center min-w-0",
|
|
58
41
|
children: jsx("div", {
|
|
59
42
|
className: "hidden sm:ml-6 sm:flex sm:items-center sm:gap-0.5 md:gap-1 min-w-0 flex-shrink",
|
|
60
43
|
children: navItems.map(item => jsxs(Link, {
|
|
61
44
|
to: item.path,
|
|
62
|
-
className: `relative rounded-lg px-2 sm:px-2.5 md:px-3.5 py-2 text-[12px] sm:text-[13px] md:text-[14px] font-medium transition-all duration-200 whitespace-nowrap flex-shrink-0 ${isActive(item.path) ? 'bg-foreground/[0.06] text-foreground' : 'text-muted-foreground hover:bg-muted hover:text-foreground'}`,
|
|
45
|
+
className: `relative rounded-lg px-2 sm:px-2.5 md:px-3.5 py-2 text-[12px] sm:text-[13px] md:text-[14px] font-medium transition-all duration-200 whitespace-nowrap flex-shrink-0 ${isActive(item.path) ? lightNav ? 'bg-white/10 text-white' : 'bg-foreground/[0.06] text-foreground' : lightNav ? 'text-white/70 hover:text-white hover:bg-white/10' : 'text-muted-foreground hover:bg-muted hover:text-foreground'}`,
|
|
63
46
|
children: [item.label, isActive(item.path) && jsx("span", {
|
|
64
|
-
className:
|
|
47
|
+
className: `absolute bottom-0 left-1/2 h-[2px] w-4 -translate-x-1/2 rounded-full ${lightNav ? 'bg-white' : 'bg-primary'}`
|
|
65
48
|
})]
|
|
66
49
|
}, item.key))
|
|
67
50
|
})
|
|
68
|
-
}),
|
|
51
|
+
}), jsx("div", {
|
|
69
52
|
className: "flex items-center gap-2",
|
|
70
|
-
children:
|
|
71
|
-
compact: true
|
|
72
|
-
}), jsx("div", {
|
|
53
|
+
children: jsx("div", {
|
|
73
54
|
className: "-mr-2 flex items-center sm:hidden",
|
|
74
55
|
children: jsxs("button", {
|
|
75
56
|
type: "button",
|
|
76
|
-
className:
|
|
57
|
+
className: `inline-flex items-center justify-center rounded-themed p-2 transition-colors focus-themed ${lightNav ? 'text-white hover:bg-white/10' : 'text-foreground hover:bg-muted'}`,
|
|
77
58
|
onClick: () => setIsMenuOpen(!isMenuOpen),
|
|
78
59
|
"aria-expanded": isMenuOpen,
|
|
79
60
|
children: [jsx("span", {
|
|
@@ -85,17 +66,17 @@ const RightNavItems = ({
|
|
|
85
66
|
className: "h-5 w-5"
|
|
86
67
|
})]
|
|
87
68
|
})
|
|
88
|
-
})
|
|
69
|
+
})
|
|
89
70
|
}), isMenuOpen && jsx("div", {
|
|
90
|
-
className:
|
|
71
|
+
className: `absolute left-0 right-0 top-full z-50 border-b sm:hidden ${lightNav ? 'border-white/15 bg-[#070810]/95 backdrop-blur-xl' : 'border-border/30 bg-background/95 backdrop-blur-xl'}`,
|
|
91
72
|
children: jsx("div", {
|
|
92
73
|
className: "space-y-1 px-4 py-3",
|
|
93
74
|
children: navItems.map(item => jsxs(Link, {
|
|
94
75
|
to: item.path,
|
|
95
|
-
className: `flex items-center gap-3 rounded-themed px-4 py-2.5 text-sm font-medium transition-all focus-themed ${isActive(item.path) ? 'bg-primary/10 text-primary' : 'text-muted-foreground hover:bg-muted hover:text-foreground'}`,
|
|
76
|
+
className: `flex items-center gap-3 rounded-themed px-4 py-2.5 text-sm font-medium transition-all focus-themed ${isActive(item.path) ? lightNav ? 'bg-white/10 text-white' : 'bg-primary/10 text-primary' : lightNav ? 'text-white/70 hover:bg-white/10 hover:text-white' : 'text-muted-foreground hover:bg-muted hover:text-foreground'}`,
|
|
96
77
|
onClick: () => setIsMenuOpen(false),
|
|
97
78
|
children: [isActive(item.path) && jsx("span", {
|
|
98
|
-
className:
|
|
79
|
+
className: `h-1.5 w-1.5 rounded-full ${lightNav ? 'bg-white' : 'bg-primary'}`
|
|
99
80
|
}), item.label]
|
|
100
81
|
}, item.key))
|
|
101
82
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/components/navbar/index.tsx"],"sourcesContent":[null],"names":["_jsxs"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/components/navbar/index.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"kRAYA,MAAM,QAAQ,GAAc,CAAA;KACtB,EAAA,MAAK;OACL,EAAG,MAAE;MACL,EAAA;;EAEJ,GAAA,EAAA,aAAA;AAEF,EAAyF,KAAA,EAAA,aAAA;AACzF,EAAA,IAAM,EAAqB;AAE3B,CAAM,EAAA;AAQN,EAAA,GAAA,EAAO,aAAmB;OAChB,EAAA,aAAW;AACjB,EAAA,IAAA,EAAA;AACA,CAAA,EAAA;AACA,EAAA,GAAA,EAAA,MAAY;AACZ,EAAA,KAAA,EAAA,MAAoB;MACd,EAAA;AAEN,CAAA,CAAA;;8BAEiC,IAAA,GAAA,CAAA,CAAE,UAAQ,EAAA,WAAW,EAAA,UAAA,CAAA,CAAA;AAC9C,MAAA,kBAAc,GAAA,CAAA,QAAA,EAAA,WAAA,KAAA,OAAA,CAAA,WAAA,CAAA,IAAA,qBAAA,CAAA,GAAA,CAAA,QAAA,CAAA;AACd,MAAC,aAAkB,GAAA,CAAA;AACvB,EAAA,QAAE,GAAU,KAAA;AACV,EAAA;;AAGN,EAAA,MAAA,CAAA,UAAc,EAAG,aAAS,CAAK,YAAY,KAAC,CAAA;AAC5C,EAAA,MAAA,QAAc,GAAA,WAAoB,EAAC;QAE5B,oBACW;AASc,EAAA,MAAA;AACI,IAAA;AACA,GAAA,GAAA,QAAA,EAAA;AACJ,EAAA,MAAA,cAAA,GAAA,iBAAU,EAAA;AACR,EAAA,MAAA,UAAA,GAAA,OAAA,CAAA,QAAoD,IAAA,cAAA,CAAA;AACpD,EAAA,MAAA,gBAAA,GAAA,kBAAE,CAAA,QAAA,CAAA,QAAA,EAAA,MAAA,CAAA,WAAA,CAAA;AAwCZ,EAAA,MAAA,SAAA,GAAA,gBAAoD,GAAA,IAAA,KAAA,MAAA,IAAA,QAAA,EAAA,QAAA,KAAA,MAAA,GAAA,YAAA,GAAA,iBAAA,GAAA,UAAA,GAAA,iBAAA,GAAA,YAAA;AACpD,EAAA,MAAA,QAAA,GAAA,SACR,KAAA,YAAA;AASoB,EAAA,MAAA,QAAA,GAAA,IAAA,IAAA,QAAU,CAAA,QAAA,KAAA,IAAA;AACN,EAAA,OAAAA,IAAA,CAAA,KAAA,EAAA;AACA,IAAA,SAAA,EAAA,CAAA,kCAA8B,EAAA,SAAA,CAAA,CAAA;AAClC,IAAA,QAAA,EAAA,CAAAC,GAAA,CAAA,KAAA,EAAA;AACE,MAAA,SAAA,EAAA,2BAAoD;;AAkB9F,QAAE,SAAA,EAAA,gFAAA;AAEF,QAAA,sBAA6B,CAAA,IAAA,IAAAD,IAAA,CAAA,IAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/lib/compute.d.ts
CHANGED
package/lib/compute.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compute.d.ts","sourceRoot":"","sources":["../src/compute.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,mBAAmB
|
|
1
|
+
{"version":3,"file":"compute.d.ts","sourceRoot":"","sources":["../src/compute.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;CAkB/B,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,GA6JxB,CAAC;AAMF,QAAA,MAAM,aAAa,0CAA4C,CAAC;AAGhE,QAAA,MAAM,cAAc,0CAA6C,CAAC;AAElE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,CAAC"}
|
package/lib/compute.js
CHANGED
|
@@ -13,6 +13,7 @@ const browserYantraRoutes = {
|
|
|
13
13
|
FEEDBACK: '/feedback',
|
|
14
14
|
PRIVACY: '/privacy',
|
|
15
15
|
TERMS: '/terms',
|
|
16
|
+
SMS_TERMS: '/sms-terms',
|
|
16
17
|
RELEASE_NOTES: '/release-notes',
|
|
17
18
|
COMMUNITY: '/community',
|
|
18
19
|
STATUS: '/status',
|
|
@@ -126,6 +127,14 @@ const MainRoutes = [{
|
|
|
126
127
|
position: IMenuPosition.Middle,
|
|
127
128
|
componentPath: "@adminide-stack/yantra-help-browser/lib/pages/Terms/index.js",
|
|
128
129
|
hasComponent: true
|
|
130
|
+
}, {
|
|
131
|
+
path: `${ROOT_LAYOUT_PATH}${browserYantraRoutes.SMS_TERMS}`,
|
|
132
|
+
key: 'sms-terms',
|
|
133
|
+
exact: true,
|
|
134
|
+
hideInMenu: true,
|
|
135
|
+
position: IMenuPosition.Middle,
|
|
136
|
+
componentPath: "@adminide-stack/yantra-help-browser/lib/pages/SmsTerms/index.js",
|
|
137
|
+
hasComponent: true
|
|
129
138
|
}, {
|
|
130
139
|
path: `${ROOT_LAYOUT_PATH}${browserYantraRoutes.RELEASE_NOTES}`,
|
|
131
140
|
key: 'release-notes',
|
package/lib/compute.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compute.js","sources":["../src/compute.ts"],"sourcesContent":[null],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"compute.js","sources":["../src/compute.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useHeaderScrolled.d.ts","sourceRoot":"","sources":["../../src/hooks/useHeaderScrolled.ts"],"names":[],"mappings":"AAoBA,gFAAgF;AAChF,wBAAgB,iBAAiB,IAAI,OAAO,CAE3C"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import {useSyncExternalStore}from'react';const SCROLL_THRESHOLD_PX = 1;
|
|
2
|
+
function subscribe(onStoreChange) {
|
|
3
|
+
const update = () => onStoreChange();
|
|
4
|
+
window.addEventListener('scroll', update, {
|
|
5
|
+
passive: true
|
|
6
|
+
});
|
|
7
|
+
window.addEventListener('resize', update, {
|
|
8
|
+
passive: true
|
|
9
|
+
});
|
|
10
|
+
return () => {
|
|
11
|
+
window.removeEventListener('scroll', update);
|
|
12
|
+
window.removeEventListener('resize', update);
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
function getScrollSnapshot() {
|
|
16
|
+
if (typeof window === 'undefined') return false;
|
|
17
|
+
const y = window.scrollY || document.documentElement.scrollTop || 0;
|
|
18
|
+
return y > SCROLL_THRESHOLD_PX;
|
|
19
|
+
}
|
|
20
|
+
/** True once the page has scrolled — mirrors Clockbook header/logo behavior. */
|
|
21
|
+
function useHeaderScrolled() {
|
|
22
|
+
return useSyncExternalStore(subscribe, getScrollSnapshot, () => false);
|
|
23
|
+
}export{useHeaderScrolled};//# sourceMappingURL=useHeaderScrolled.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useHeaderScrolled.js","sources":["../../src/hooks/useHeaderScrolled.ts"],"sourcesContent":[null],"names":[],"mappings":"yCAEA,MAAM,mBAAmB,GAAG,CAAC;AAE7B,SAAS,SAAS,CAAC,aAAyB,EAAA;AACxC,EAAA,MAAA,SAAe,mBAAM,EAAa;AAClC,EAAA,MAAA,CAAA,gBAAO,CAAA,QAAiB,EAAQ,MAAE,EAAM;AACxC,IAAA,OAAO,EAAA;AACP,GAAA,CAAA;AACI,EAAA,MAAA,CAAA,gBAA0B,CAAA,QAAA,UAAW;AACrC,IAAA,OAAA,EAAA;AACJ,GAAA,CAAA;AACJ,EAAC,OAAA,MAAA;AAED,IAAA,MAA0B,CAAA,mBAAA,CAAA,QAAA,EAAA,MAAA,CAAA;IACtB,MAAI,CAAA,mBAA6B,CAAA,QAAA,EAAA,MAAA,CAAA;AAAE,GAAA;AACnC;SACO,iBAAI,GAAA;AACf,EAAC,IAAA,OAAA,MAAA,KAAA,WAAA,EAAA,OAAA,KAAA;AAED,EAAgF,MAAA,CAAA,GAAA,MAAA,CAAA,OAAA,IAAA,QAAA,CAAA,eAAA,CAAA,SAAA,IAAA,CAAA;AAChF,EAAA,8BAAiC;;AAEjC;;;"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const SCROLL_THRESHOLD_PX = 12;
|
|
2
|
+
/**
|
|
3
|
+
* Toggles `yh-header-at-top` on <body> so CSS can apply the theme card header
|
|
4
|
+
* as soon as the user scrolls (MainHeader's `scrolled` prop lags until ~50px).
|
|
5
|
+
*/
|
|
6
|
+
export declare function useHeroHeaderAtTop(enabled?: boolean): void;
|
|
7
|
+
//# sourceMappingURL=useHeroHeaderAtTop.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useHeroHeaderAtTop.d.ts","sourceRoot":"","sources":["../../src/hooks/useHeroHeaderAtTop.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAEtC;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,UAAO,GAAG,IAAI,CA0BvD"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import {useLayoutEffect}from'react';const SCROLL_THRESHOLD_PX = 12;
|
|
2
|
+
/**
|
|
3
|
+
* Toggles `yh-header-at-top` on <body> so CSS can apply the theme card header
|
|
4
|
+
* as soon as the user scrolls (MainHeader's `scrolled` prop lags until ~50px).
|
|
5
|
+
*/
|
|
6
|
+
function useHeroHeaderAtTop(enabled = true) {
|
|
7
|
+
useLayoutEffect(() => {
|
|
8
|
+
if (!enabled || typeof document === 'undefined') return undefined;
|
|
9
|
+
document.body.classList.add('yh-has-hero-header');
|
|
10
|
+
const update = () => {
|
|
11
|
+
const y = window.scrollY || document.documentElement.scrollTop || 0;
|
|
12
|
+
if (y <= SCROLL_THRESHOLD_PX) {
|
|
13
|
+
document.body.classList.add('yh-header-at-top');
|
|
14
|
+
} else {
|
|
15
|
+
document.body.classList.remove('yh-header-at-top');
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
update();
|
|
19
|
+
window.addEventListener('scroll', update, {
|
|
20
|
+
passive: true
|
|
21
|
+
});
|
|
22
|
+
window.addEventListener('resize', update, {
|
|
23
|
+
passive: true
|
|
24
|
+
});
|
|
25
|
+
return () => {
|
|
26
|
+
window.removeEventListener('scroll', update);
|
|
27
|
+
window.removeEventListener('resize', update);
|
|
28
|
+
document.body.classList.remove('yh-header-at-top');
|
|
29
|
+
document.body.classList.remove('yh-has-hero-header');
|
|
30
|
+
};
|
|
31
|
+
}, [enabled]);
|
|
32
|
+
}export{SCROLL_THRESHOLD_PX,useHeroHeaderAtTop};//# sourceMappingURL=useHeroHeaderAtTop.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useHeroHeaderAtTop.js","sources":["../../src/hooks/useHeroHeaderAtTop.ts"],"sourcesContent":[null],"names":[],"mappings":"oCAEO,MAAM,mBAAmB,GAAG;AAEnC;;;AAGG;AACa,SAAA,kBAAkB,CAAC,OAAO,GAAG,IAAI,EAAA;iBAC9B,CAAA,MAAM;AACjB,IAAA,IAAA,CAAA,OAAY,IAAA,OAAW,QAAA,gBAAwB,EAAA,OAAA,SAAA;AAAE,IAAA,QAAA,CAAA,IAAA,CAAA,UAAgB,GAAC,CAAA,oBAAA,CAAA;UAE1D,MAAA,SAAM;YAER,CAAA,GAAA,MAAS,CAAA,OAAK,IAAA,QAAA,CAAA,eAAA,CAAA,SAAA,IAAA,CAAA;AAChB,MAAA,IAAA,CAAA,IAAA,mBAAwB,EAAA;AACxB,QAAA,QAAI,CAAC,IAAI,CAAmB,SAAA,CAAA,GAAA,CAAA,kBAAG,CAAA;;gBAE9B,CAAA,IAAA,CAAA,SAAA,CAAA,MAAA,CAAA,kBAAA,CAAA;;;YAED;AACJ,IAAA,MAAE,CAAA,gBAAA,CAAA,QAAA,EAAA,MAAA,EAAA;AAEF,MAAA,OAAA;AACA,KAAA,CAAA;AACA,IAAA,MAAA,CAAA,gBAAO,CAAA,QAAiB,EAAA,MAAU,EAAA;AAElC,MAAA,OAAA,EAAO;AACH,KAAA,CAAA;AACA,IAAA,OAAA,MAAA;YACA,CAAQ,mBAAM,CAAA,QAAgB,EAAC,MAAkB,CAAA;YACjD,CAAQ,mBAAM,CAAA,QAAgB,EAAC,MAAoB,CAAA;AACvD,MAAA,QAAE,CAAA,IAAA,CAAA,SAAA,CAAA,MAAA,CAAA,kBAAA,CAAA;AACN,MAAG,QAAQ,CAAA,IAAG,CAAA,SAAA,CAAA,MAAA,CAAA,oBAAA,CAAA;AAClB,KAAC;;"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Read prefers-reduced-motion safely. Defaults to `false` during SSR / before
|
|
3
|
+
* window is available, then re-renders once the real value is known.
|
|
4
|
+
*/
|
|
5
|
+
export declare function usePrefersReducedMotion(): boolean;
|
|
6
|
+
//# sourceMappingURL=usePrefersReducedMotion.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePrefersReducedMotion.d.ts","sourceRoot":"","sources":["../../src/hooks/usePrefersReducedMotion.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAiBjD"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import {useState,useEffect}from'react';/**
|
|
2
|
+
* Read prefers-reduced-motion safely. Defaults to `false` during SSR / before
|
|
3
|
+
* window is available, then re-renders once the real value is known.
|
|
4
|
+
*/
|
|
5
|
+
function usePrefersReducedMotion() {
|
|
6
|
+
const [reduced, setReduced] = useState(false);
|
|
7
|
+
useEffect(() => {
|
|
8
|
+
if (typeof window === 'undefined' || !window.matchMedia) return;
|
|
9
|
+
const mq = window.matchMedia('(prefers-reduced-motion: reduce)');
|
|
10
|
+
const update = () => setReduced(mq.matches);
|
|
11
|
+
update();
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
13
|
+
const anyMq = mq;
|
|
14
|
+
if (mq.addEventListener) mq.addEventListener('change', update);else if (anyMq.addListener) anyMq.addListener(update);
|
|
15
|
+
return () => {
|
|
16
|
+
if (mq.removeEventListener) mq.removeEventListener('change', update);else if (anyMq.removeListener) anyMq.removeListener(update);
|
|
17
|
+
};
|
|
18
|
+
}, []);
|
|
19
|
+
return reduced;
|
|
20
|
+
}export{usePrefersReducedMotion};//# sourceMappingURL=usePrefersReducedMotion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePrefersReducedMotion.js","sources":["../../src/hooks/usePrefersReducedMotion.ts"],"sourcesContent":[null],"names":[],"mappings":"uCAEA;;;AAGG;SACa,uBAAuB,GAAA;QAC7B,CAAA,OAAQ,EAAA,UAAY,CAAA,WAAY,CAAA,KAAM,CAAA;WACnC,CAAA,MAAM;QACX,OAAI,WAAkB,WAAA,IAAW,OAAK,CAAA,UAAiB,EAAA;YAAE,GAAO,MAAA,CAAA,UAAA,CAAA,kCAAA,CAAA;UAC1D,MAAE,GAAG,MAAM,WAAW,EAAC,CAAA,OAAA,CAAA;UACvB,EAAA;AACN;UAC8D,KAAA,GAAA,EAAA;QAC9D,EAAM,CAAA,gBAAgB,EAAA,EAAA,CAAA,gBAAA,CAAA,QAAA,EAAA,MAAA,CAAA,CAAA,KAAA,IAAA,KAAA,CAAA,WAAA,EAAA,KAAA,CAAA,WAAA,CAAA,MAAA,CAAA;WAClB,MAAmB;AAAE,MAAA,IAAA,EAAA,CAAA,mBAAoB,wBAAkB,CAAA,QAAA,EAAA,MAAA,CAAA,CAAA,KAAA,IAAA,KAAA,CAAA,cAAA,EAAA,KAAA,CAAA,cAAA,CAAA,MAAA,CAAA;;AACnC,GAAA,EAAA,EAAA,CAAA;AAC5B,EAAA,OAAA;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pages/About/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pages/About/index.tsx"],"names":[],"mappings":"AAoBA,iBAAS,SAAS,4CAyCjB;AAED,eAAe,SAAS,CAAC"}
|
package/lib/pages/About/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {jsxs,jsx}from'react/jsx-runtime';import {PageHero}from'../../components/PageHero.js';import {Icons}from'../../components/Icons.js';const PRINCIPLES = [{
|
|
1
|
+
import {jsxs,jsx}from'react/jsx-runtime';import {PageHero}from'../../components/PageHero.js';import {Icons}from'../../components/Icons.js';import'react';import'clsx';import'tailwind-merge';import {EnterpriseSection}from'../../components/enterprise/EnterpriseSection.js';const PRINCIPLES = [{
|
|
2
2
|
title: 'Augment, don’t replace',
|
|
3
3
|
desc: 'AI employees take repetitive load off humans so people can spend their time on judgment, taste, and relationships.'
|
|
4
4
|
}, {
|
|
@@ -18,50 +18,36 @@ function AboutPage() {
|
|
|
18
18
|
icon: jsx(Icons.MdInfoIcon, {
|
|
19
19
|
className: "h-7 w-7"
|
|
20
20
|
})
|
|
21
|
-
}), jsx(
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
}), jsx("h2", {
|
|
29
|
-
className: "mt-2 text-3xl font-bold tracking-tight text-foreground",
|
|
30
|
-
children: "Build AI employees that augment human teams."
|
|
31
|
-
}), jsx("p", {
|
|
32
|
-
className: "mt-6 max-w-prose text-base leading-relaxed text-foreground/90",
|
|
33
|
-
children: "We believe the future of work is collaborative. Humans and AI working together to achieve more. Our platform automates repetitive tasks, monitors systems around the clock, and escalates intelligently when human judgment is needed."
|
|
34
|
-
})]
|
|
21
|
+
}), jsx(EnterpriseSection, {
|
|
22
|
+
containerClassName: "max-w-3xl",
|
|
23
|
+
eyebrow: "Mission",
|
|
24
|
+
title: "Build AI employees that augment human teams.",
|
|
25
|
+
children: jsx("p", {
|
|
26
|
+
className: "max-w-prose text-base leading-relaxed text-foreground/90",
|
|
27
|
+
children: "We believe the future of work is collaborative. Humans and AI working together to achieve more. Our platform automates repetitive tasks, monitors systems around the clock, and escalates intelligently when human judgment is needed."
|
|
35
28
|
})
|
|
36
|
-
}), jsx(
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
|
|
29
|
+
}), jsx(EnterpriseSection, {
|
|
30
|
+
containerClassName: "max-w-5xl",
|
|
31
|
+
eyebrow: "Principles",
|
|
32
|
+
title: "What we hold to.",
|
|
33
|
+
children: jsx("ul", {
|
|
34
|
+
className: "grid gap-3 md:grid-cols-3",
|
|
35
|
+
children: PRINCIPLES.map((p, idx) => jsxs("li", {
|
|
36
|
+
style: {
|
|
37
|
+
['--i']: idx
|
|
38
|
+
},
|
|
39
|
+
className: "yh-glass-card yh-hover-lift yh-stagger-item flex flex-col gap-3 rounded-themed-lg p-6",
|
|
40
|
+
children: [jsx("span", {
|
|
41
|
+
className: "font-mono text-xs font-semibold tracking-widest text-primary",
|
|
42
|
+
children: String(idx + 1).padStart(2, '0')
|
|
43
|
+
}), jsx("h3", {
|
|
44
|
+
className: "text-base font-semibold text-foreground",
|
|
45
|
+
children: p.title
|
|
46
|
+
}), jsx("p", {
|
|
47
|
+
className: "text-sm leading-relaxed text-muted-foreground",
|
|
48
|
+
children: p.desc
|
|
48
49
|
})]
|
|
49
|
-
}
|
|
50
|
-
className: "grid gap-px overflow-hidden rounded-themed-lg border border-border bg-border md:grid-cols-3",
|
|
51
|
-
children: PRINCIPLES.map((p, idx) => jsxs("li", {
|
|
52
|
-
className: "flex flex-col gap-3 bg-card p-6",
|
|
53
|
-
children: [jsx("span", {
|
|
54
|
-
className: "font-mono text-xs font-semibold tracking-widest text-primary",
|
|
55
|
-
children: String(idx + 1).padStart(2, '0')
|
|
56
|
-
}), jsx("h3", {
|
|
57
|
-
className: "text-base font-semibold text-foreground",
|
|
58
|
-
children: p.title
|
|
59
|
-
}), jsx("p", {
|
|
60
|
-
className: "text-sm leading-relaxed text-muted-foreground",
|
|
61
|
-
children: p.desc
|
|
62
|
-
})]
|
|
63
|
-
}, p.title))
|
|
64
|
-
})]
|
|
50
|
+
}, p.title))
|
|
65
51
|
})
|
|
66
52
|
})]
|
|
67
53
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/pages/About/index.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/pages/About/index.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"8QAKA,MAAM,UAAU,GAAG,CAAA;AACf,EAAA,KAAA,EAAA,wBAAA;AACI,EAAA,IAAA,EAAA;AACA,CAAA,EAAA;AACH,EAAA,KAAA,EAAA,iBAAA;AACD,EAAA,IAAA,EAAA;AACI,CAAA,EAAA;AACA,EAAA,KAAA,EAAA,yBAA2F;AAC9F,EAAA,IAAA,EAAA;AACD,CAAA,CAAA;AACI,SAAA,SAAgC,GAAA;AAChC,EAAA,OAAAA,IAAM,CAAsG,KAAA,EAAA;AAC/G,IAAA,SAAA,EAAA,4BAAA;IACH,QAAA,EAAA,CAAAC,GAAA,CAAA,QAAA,EAAA;AAEF,MAAA,OAAkB,EAAA,OAAA;AACd,MAAA,KAAO,EACH,cAAK;AAuCb,MAAC,WAAA,EAAA,+GAAA;AAED,MAAA,IAAA,EAAAA,oBAAyB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pages/Blog/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pages/Blog/index.tsx"],"names":[],"mappings":"AA4OA,iBAAS,QAAQ,4CA4GhB;AAED,eAAe,QAAQ,CAAC"}
|
package/lib/pages/Blog/index.js
CHANGED
|
@@ -1,4 +1,103 @@
|
|
|
1
|
-
import {jsxs,jsx}from'react/jsx-runtime';import {useState,useMemo}from'react';import {useNavigate}from'@remix-run/react';import {PageHero}from'../../components/PageHero.js';import {Icons}from'../../components/Icons.js';const BLOG_POSTS = [{
|
|
1
|
+
import {jsxs,jsx}from'react/jsx-runtime';import {useState,useMemo}from'react';import {useNavigate}from'@remix-run/react';import {PageHero}from'../../components/PageHero.js';import {Icons}from'../../components/Icons.js';import {ScrollReveal}from'../../components/enterprise/ScrollReveal.js';import'clsx';import'tailwind-merge';const BLOG_POSTS = [{
|
|
2
|
+
slug: 'best-ai-website-builders-2026',
|
|
3
|
+
title: '10 Best AI Website Builders in 2026 (Free & Paid)',
|
|
4
|
+
description: 'We compared the top AI website builders of 2026 - from chat-driven builders like Yantra Web Builder to classics like Wix and Webflow - so you can pick the right one for your business.',
|
|
5
|
+
author: 'Yantra Team',
|
|
6
|
+
date: '2026-08-31',
|
|
7
|
+
category: 'Best Tools',
|
|
8
|
+
tags: ['best-tools', 'website-builder', 'ai', 'web-builder', 'comparison'],
|
|
9
|
+
readTime: '12 min read'
|
|
10
|
+
}, {
|
|
11
|
+
slug: 'best-ai-web-design-tools-2026',
|
|
12
|
+
title: '8 Best AI Web Design Tools in 2026',
|
|
13
|
+
description: 'From Yantra Web Design to Figma and Framer - the best AI-powered design tools for creating landing pages, brand visuals, and UI mockups in 2026, compared honestly.',
|
|
14
|
+
author: 'Yantra Team',
|
|
15
|
+
date: '2026-08-30',
|
|
16
|
+
category: 'Best Tools',
|
|
17
|
+
tags: ['best-tools', 'web-design', 'ai', 'design', 'comparison'],
|
|
18
|
+
readTime: '11 min read'
|
|
19
|
+
}, {
|
|
20
|
+
slug: 'best-ai-canvas-tools-2026',
|
|
21
|
+
title: '9 Best AI Canvas & Visual Workspace Tools in 2026',
|
|
22
|
+
description: 'Miro, FigJam, tldraw, or an AI-native canvas? We compared the best visual workspace tools of 2026 for brainstorming, planning, and building with AI at your side.',
|
|
23
|
+
author: 'Yantra Team',
|
|
24
|
+
date: '2026-08-29',
|
|
25
|
+
category: 'Best Tools',
|
|
26
|
+
tags: ['best-tools', 'canvas', 'whiteboard', 'ai', 'visual-workspace'],
|
|
27
|
+
readTime: '11 min read'
|
|
28
|
+
}, {
|
|
29
|
+
slug: 'best-ai-character-creators-2026',
|
|
30
|
+
title: '8 Best AI Character Creators in 2026',
|
|
31
|
+
description: 'The best tools for creating AI characters and personas in 2026 - Yantra Character Studio, Character.AI, Inworld, and more - compared for creators, brands, and builders.',
|
|
32
|
+
author: 'Yantra Team',
|
|
33
|
+
date: '2026-08-28',
|
|
34
|
+
category: 'Best Tools',
|
|
35
|
+
tags: ['best-tools', 'ai-characters', 'character-studio', 'personas', 'comparison'],
|
|
36
|
+
readTime: '11 min read'
|
|
37
|
+
}, {
|
|
38
|
+
slug: 'best-time-tracking-apps-2026',
|
|
39
|
+
title: '10 Best Time Tracking Apps in 2026 (Free & Paid)',
|
|
40
|
+
description: 'Toggl, Clockify, Harvest, or an AI-assisted tracker? We compared the best time tracking apps of 2026 for freelancers, teams, and businesses that bill by the hour.',
|
|
41
|
+
author: 'Yantra Team',
|
|
42
|
+
date: '2026-08-27',
|
|
43
|
+
category: 'Best Tools',
|
|
44
|
+
tags: ['best-tools', 'time-tracking', 'timesheets', 'clockbook', 'productivity'],
|
|
45
|
+
readTime: '12 min read'
|
|
46
|
+
}, {
|
|
47
|
+
slug: 'best-payroll-software-2026',
|
|
48
|
+
title: '8 Best Payroll Software for Small Business in 2026',
|
|
49
|
+
description: 'Gusto, ADP, QuickBooks, or something smarter? The best payroll software of 2026 compared - including Yantra Payroll, which runs payroll straight from approved timesheets.',
|
|
50
|
+
author: 'Yantra Team',
|
|
51
|
+
date: '2026-08-26',
|
|
52
|
+
category: 'Best Tools',
|
|
53
|
+
tags: ['best-tools', 'payroll', 'small-business', 'clockbook', 'hr'],
|
|
54
|
+
readTime: '11 min read'
|
|
55
|
+
}, {
|
|
56
|
+
slug: 'best-ai-crm-software-2026',
|
|
57
|
+
title: '10 Best AI CRM Software in 2026 (Compared)',
|
|
58
|
+
description: 'HubSpot, Salesforce, Attio, or an AI-native CRM? We compared the best CRM software of 2026 for small businesses and sales teams that want the CRM to do the admin work.',
|
|
59
|
+
author: 'Yantra Team',
|
|
60
|
+
date: '2026-08-25',
|
|
61
|
+
category: 'Best Tools',
|
|
62
|
+
tags: ['best-tools', 'crm', 'sales', 'ai', 'comparison'],
|
|
63
|
+
readTime: '12 min read'
|
|
64
|
+
}, {
|
|
65
|
+
slug: 'best-ai-flight-search-travel-tools-2026',
|
|
66
|
+
title: '8 Best AI Flight Search & Travel Planning Tools in 2026',
|
|
67
|
+
description: 'Google Flights, Hopper, Mindtrip, or an AI travel agent? The best flight search and travel planning tools of 2026 compared for personal trips and business travel.',
|
|
68
|
+
author: 'Yantra Team',
|
|
69
|
+
date: '2026-08-24',
|
|
70
|
+
category: 'Best Tools',
|
|
71
|
+
tags: ['best-tools', 'travel', 'flights', 'ai', 'flight-search'],
|
|
72
|
+
readTime: '11 min read'
|
|
73
|
+
}, {
|
|
74
|
+
slug: 'best-email-campaign-tools-2026',
|
|
75
|
+
title: '9 Best Email Marketing & Campaign Tools in 2026',
|
|
76
|
+
description: 'Mailchimp, Klaviyo, Kit, or an AI-driven campaign tool? We compared the best email marketing platforms of 2026 for small businesses, creators, and ecommerce.',
|
|
77
|
+
author: 'Yantra Team',
|
|
78
|
+
date: '2026-08-23',
|
|
79
|
+
category: 'Best Tools',
|
|
80
|
+
tags: ['best-tools', 'email-marketing', 'mail-campaign', 'ai', 'newsletters'],
|
|
81
|
+
readTime: '12 min read'
|
|
82
|
+
}, {
|
|
83
|
+
slug: 'best-business-email-setup-tools-2026',
|
|
84
|
+
title: '7 Best Tools to Set Up Business Email on Your Own Domain in 2026',
|
|
85
|
+
description: 'Google Workspace, Zoho Mail, or AI-guided domain onboarding? The best ways to set up professional email - with working SPF, DKIM, and DMARC - compared for 2026.',
|
|
86
|
+
author: 'Yantra Team',
|
|
87
|
+
date: '2026-08-22',
|
|
88
|
+
category: 'Best Tools',
|
|
89
|
+
tags: ['best-tools', 'email-setup', 'business-email', 'deliverability', 'dns'],
|
|
90
|
+
readTime: '11 min read'
|
|
91
|
+
}, {
|
|
92
|
+
slug: 'best-web-analytics-tools-2026',
|
|
93
|
+
title: '10 Best Web Analytics Tools in 2026 (Privacy-Friendly & AI-Powered)',
|
|
94
|
+
description: 'GA4, Plausible, PostHog, or AI-driven analytics? We compared the best web analytics tools of 2026 for small businesses and product teams that want answers, not dashboards.',
|
|
95
|
+
author: 'Yantra Team',
|
|
96
|
+
date: '2026-08-21',
|
|
97
|
+
category: 'Best Tools',
|
|
98
|
+
tags: ['best-tools', 'web-analytics', 'ai', 'privacy', 'comparison'],
|
|
99
|
+
readTime: '12 min read'
|
|
100
|
+
}, {
|
|
2
101
|
slug: 'introducing-yantra-browser',
|
|
3
102
|
title: 'Introducing Yantra Browser: Your AI-Powered Browser Automation Companion',
|
|
4
103
|
description: 'Meet Yantra Browser — a Chrome extension that turns your browser into an AI-powered automation tool, combining the power of your local browser with intelligent cloud AI.',
|
|
@@ -30,7 +129,8 @@ const CATEGORIES = ['All', ...Array.from(new Set(BLOG_POSTS.map(p => p.category)
|
|
|
30
129
|
const CATEGORY_COLORS = {
|
|
31
130
|
Product: 'bg-primary/10 text-primary',
|
|
32
131
|
Engineering: 'bg-info/10 text-info',
|
|
33
|
-
Productivity: 'bg-warning/10 text-warning'
|
|
132
|
+
Productivity: 'bg-warning/10 text-warning',
|
|
133
|
+
'Best Tools': 'bg-success/10 text-success'
|
|
34
134
|
};
|
|
35
135
|
function formatDate(dateStr) {
|
|
36
136
|
return new Date(dateStr).toLocaleDateString('en-US', {
|
|
@@ -41,6 +141,7 @@ function formatDate(dateStr) {
|
|
|
41
141
|
}
|
|
42
142
|
function BlogCard({
|
|
43
143
|
post,
|
|
144
|
+
index,
|
|
44
145
|
onClick
|
|
45
146
|
}) {
|
|
46
147
|
const colorClass = CATEGORY_COLORS[post.category] || 'bg-muted text-muted-foreground';
|
|
@@ -54,7 +155,10 @@ function BlogCard({
|
|
|
54
155
|
onClick(post.slug);
|
|
55
156
|
}
|
|
56
157
|
},
|
|
57
|
-
|
|
158
|
+
style: {
|
|
159
|
+
['--i']: index
|
|
160
|
+
},
|
|
161
|
+
className: "yh-glass-card yh-hover-lift yh-stagger-item themed-card group cursor-pointer rounded-themed-lg p-6 focus-themed",
|
|
58
162
|
children: [jsxs("div", {
|
|
59
163
|
className: "mb-4 flex items-center gap-3",
|
|
60
164
|
children: [jsx("span", {
|
|
@@ -98,12 +202,14 @@ function BlogPage() {
|
|
|
98
202
|
return jsxs("div", {
|
|
99
203
|
className: "min-h-screen bg-background",
|
|
100
204
|
children: [jsx(PageHero, {
|
|
205
|
+
size: "tall",
|
|
101
206
|
title: "Blog",
|
|
102
207
|
description: "Product updates, technical deep dives, and productivity tips from the Yantra team.",
|
|
103
208
|
icon: jsx(Icons.MdDescriptionIcon, {
|
|
104
209
|
className: "h-7 w-7"
|
|
105
210
|
})
|
|
106
|
-
}), jsx(
|
|
211
|
+
}), jsx(ScrollReveal, {
|
|
212
|
+
as: "section",
|
|
107
213
|
className: "py-16",
|
|
108
214
|
children: jsxs("div", {
|
|
109
215
|
className: "container mx-auto max-w-5xl px-6 lg:px-16",
|
|
@@ -127,7 +233,7 @@ function BlogPage() {
|
|
|
127
233
|
handlePostClick(filteredPosts[0].slug);
|
|
128
234
|
}
|
|
129
235
|
},
|
|
130
|
-
className: "group relative cursor-pointer overflow-hidden rounded-themed-xl
|
|
236
|
+
className: "yh-glass-card yh-hover-lift group relative cursor-pointer overflow-hidden rounded-themed-xl p-8 focus-themed lg:p-12",
|
|
131
237
|
children: [jsx("span", {
|
|
132
238
|
className: "absolute left-0 top-0 h-full w-1 bg-primary",
|
|
133
239
|
"aria-hidden": "true"
|
|
@@ -164,7 +270,8 @@ function BlogPage() {
|
|
|
164
270
|
})
|
|
165
271
|
}), filteredPosts.length > 1 && jsx("div", {
|
|
166
272
|
className: "grid grid-cols-1 gap-6 sm:grid-cols-2",
|
|
167
|
-
children: filteredPosts.slice(1).map(post => jsx(BlogCard, {
|
|
273
|
+
children: filteredPosts.slice(1).map((post, index) => jsx(BlogCard, {
|
|
274
|
+
index: index,
|
|
168
275
|
post: post,
|
|
169
276
|
onClick: handlePostClick
|
|
170
277
|
}, post.slug))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/pages/Blog/index.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/pages/Blog/index.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pages/CategoryCollection/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pages/CategoryCollection/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,QAAA,MAAM,sBAAsB,EAAE,KAAK,CAAC,EA0HnC,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
|