@sp-days-framework/docusaurus-frontpage-collection 1.0.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.
Files changed (80) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +339 -0
  3. package/lib/components/Block/index.d.ts +22 -0
  4. package/lib/components/Block/index.d.ts.map +1 -0
  5. package/lib/components/Block/index.js +32 -0
  6. package/lib/components/Block/index.js.map +1 -0
  7. package/lib/components/Block/styles.module.css +26 -0
  8. package/lib/components/Columns/index.d.ts +68 -0
  9. package/lib/components/Columns/index.d.ts.map +1 -0
  10. package/lib/components/Columns/index.js +119 -0
  11. package/lib/components/Columns/index.js.map +1 -0
  12. package/lib/components/Columns/styles.module.css +196 -0
  13. package/lib/components/CourseFeature/index.d.ts +99 -0
  14. package/lib/components/CourseFeature/index.d.ts.map +1 -0
  15. package/lib/components/CourseFeature/index.js +188 -0
  16. package/lib/components/CourseFeature/index.js.map +1 -0
  17. package/lib/components/CourseFeature/styles.module.css +204 -0
  18. package/lib/components/FancyHeader/index.d.ts +24 -0
  19. package/lib/components/FancyHeader/index.d.ts.map +1 -0
  20. package/lib/components/FancyHeader/index.js +32 -0
  21. package/lib/components/FancyHeader/index.js.map +1 -0
  22. package/lib/components/FancyHeader/styles.module.css +23 -0
  23. package/lib/components/GetStarted/index.d.ts +99 -0
  24. package/lib/components/GetStarted/index.d.ts.map +1 -0
  25. package/lib/components/GetStarted/index.js +127 -0
  26. package/lib/components/GetStarted/index.js.map +1 -0
  27. package/lib/components/GetStarted/styles.module.css +174 -0
  28. package/lib/components/HeroBanner/DotCrossGrid.d.ts +25 -0
  29. package/lib/components/HeroBanner/DotCrossGrid.d.ts.map +1 -0
  30. package/lib/components/HeroBanner/DotCrossGrid.js +283 -0
  31. package/lib/components/HeroBanner/DotCrossGrid.js.map +1 -0
  32. package/lib/components/HeroBanner/DotCrossGrid.module.css +9 -0
  33. package/lib/components/HeroBanner/index.d.ts +42 -0
  34. package/lib/components/HeroBanner/index.d.ts.map +1 -0
  35. package/lib/components/HeroBanner/index.js +116 -0
  36. package/lib/components/HeroBanner/index.js.map +1 -0
  37. package/lib/components/HeroBanner/styles.module.css +204 -0
  38. package/lib/components/IconContainer/index.d.ts +76 -0
  39. package/lib/components/IconContainer/index.d.ts.map +1 -0
  40. package/lib/components/IconContainer/index.js +119 -0
  41. package/lib/components/IconContainer/index.js.map +1 -0
  42. package/lib/components/IconContainer/styles.module.css +147 -0
  43. package/lib/components/Iconify/index.d.ts +56 -0
  44. package/lib/components/Iconify/index.d.ts.map +1 -0
  45. package/lib/components/Iconify/index.js +88 -0
  46. package/lib/components/Iconify/index.js.map +1 -0
  47. package/lib/components/Iconify/styles.module.css +30 -0
  48. package/lib/index.d.ts +36 -0
  49. package/lib/index.d.ts.map +1 -0
  50. package/lib/index.js +73 -0
  51. package/lib/index.js.map +1 -0
  52. package/lib/utils/IconifyIcon.d.ts +17 -0
  53. package/lib/utils/IconifyIcon.d.ts.map +1 -0
  54. package/lib/utils/IconifyIcon.js +26 -0
  55. package/lib/utils/IconifyIcon.js.map +1 -0
  56. package/lib/utils/InlineSvg.d.ts +29 -0
  57. package/lib/utils/InlineSvg.d.ts.map +1 -0
  58. package/lib/utils/InlineSvg.js +90 -0
  59. package/lib/utils/InlineSvg.js.map +1 -0
  60. package/lib/utils/ThemedIcon.d.ts +61 -0
  61. package/lib/utils/ThemedIcon.d.ts.map +1 -0
  62. package/lib/utils/ThemedIcon.js +128 -0
  63. package/lib/utils/ThemedIcon.js.map +1 -0
  64. package/lib/utils/constants.d.ts +23 -0
  65. package/lib/utils/constants.d.ts.map +1 -0
  66. package/lib/utils/constants.js +36 -0
  67. package/lib/utils/constants.js.map +1 -0
  68. package/lib/utils/index.d.ts +9 -0
  69. package/lib/utils/index.d.ts.map +1 -0
  70. package/lib/utils/index.js +19 -0
  71. package/lib/utils/index.js.map +1 -0
  72. package/lib/utils/logger.d.ts +21 -0
  73. package/lib/utils/logger.d.ts.map +1 -0
  74. package/lib/utils/logger.js +38 -0
  75. package/lib/utils/logger.js.map +1 -0
  76. package/lib/utils/types.d.ts +129 -0
  77. package/lib/utils/types.d.ts.map +1 -0
  78. package/lib/utils/types.js +6 -0
  79. package/lib/utils/types.js.map +1 -0
  80. package/package.json +73 -0
@@ -0,0 +1,24 @@
1
+ import React from 'react';
2
+ import type { WithChildren } from '../../utils/types';
3
+ export interface FancyHeaderProps extends WithChildren {
4
+ /** The heading level (default: 'h2') */
5
+ as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
6
+ /** Additional CSS class */
7
+ className?: string;
8
+ }
9
+ /**
10
+ * FancyHeader Component
11
+ *
12
+ * A header with an underline accent and section wrapper.
13
+ * Perfect for creating visually distinct section headers.
14
+ *
15
+ * @example
16
+ * ```tsx
17
+ * <FancyHeader>IconContainers</FancyHeader>
18
+ *
19
+ * <FancyHeader as="h3">Getting Started</FancyHeader>
20
+ * ```
21
+ */
22
+ export declare const FancyHeader: React.FC<FancyHeaderProps>;
23
+ export default FancyHeader;
24
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/FancyHeader/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,wCAAwC;IACxC,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC7C,2BAA2B;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAqBlD,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.FancyHeader = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const clsx_1 = __importDefault(require("clsx"));
9
+ const Heading_1 = __importDefault(require("@theme/Heading"));
10
+ const styles_module_css_1 = __importDefault(require("./styles.module.css"));
11
+ /**
12
+ * FancyHeader Component
13
+ *
14
+ * A header with an underline accent and section wrapper.
15
+ * Perfect for creating visually distinct section headers.
16
+ *
17
+ * @example
18
+ * ```tsx
19
+ * <FancyHeader>IconContainers</FancyHeader>
20
+ *
21
+ * <FancyHeader as="h3">Getting Started</FancyHeader>
22
+ * ```
23
+ */
24
+ const FancyHeader = ({ as = 'h2', className, children, ...props }) => {
25
+ return (react_1.default.createElement(react_1.default.Fragment, null,
26
+ react_1.default.createElement("div", { style: { display: 'block', marginTop: '1rem' } }),
27
+ react_1.default.createElement("div", { className: styles_module_css_1.default.section },
28
+ react_1.default.createElement(Heading_1.default, { as: as, className: (0, clsx_1.default)(styles_module_css_1.default.fancyHeader, className), ...props }, children))));
29
+ };
30
+ exports.FancyHeader = FancyHeader;
31
+ exports.default = exports.FancyHeader;
32
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/FancyHeader/index.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,gDAAwB;AACxB,6DAAqC;AAErC,4EAAyC;AASzC;;;;;;;;;;;;GAYG;AACI,MAAM,WAAW,GAA+B,CAAC,EACtD,EAAE,GAAG,IAAI,EACT,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,EAAE;IACH,OAAO,CACL;QACE,uCAAK,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,GAAQ;QAE3D,uCAAK,SAAS,EAAE,2BAAM,CAAC,OAAO;YAC5B,8BAAC,iBAAO,IACN,EAAE,EAAE,EAAE,EACN,SAAS,EAAE,IAAA,cAAI,EAAC,2BAAM,CAAC,WAAW,EAAE,SAAS,CAAC,KAC1C,KAAK,IAER,QAAQ,CACD,CACN,CACL,CACJ,CAAC;AACJ,CAAC,CAAC;AArBW,QAAA,WAAW,eAqBtB;AAEF,kBAAe,mBAAW,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * FancyHeader component styles
3
+ */
4
+
5
+ .fancyHeader {
6
+ font-size: 1.8rem;
7
+ position: relative;
8
+ }
9
+
10
+ .fancyHeader:after {
11
+ content: '';
12
+ position: absolute;
13
+ bottom: -0.5rem;
14
+ left: 0;
15
+ width: 4rem;
16
+ height: 3px;
17
+ background-color: var(--ifm-color-primary);
18
+ }
19
+
20
+ .section {
21
+ margin-bottom: 3rem;
22
+ scroll-margin-top: 70px;
23
+ }
@@ -0,0 +1,99 @@
1
+ import React from 'react';
2
+ import type { WithChildren } from '../../utils/types';
3
+ import type { IconifyConfig, CustomSvgConfig, CustomImageConfig, IconColorConfig, TitleColorConfig } from '../../utils/types';
4
+ export interface ExploreItemProps extends WithChildren {
5
+ /** Title of the explore item */
6
+ title: string;
7
+ /** Iconify icon configuration */
8
+ iconify?: IconifyConfig | string;
9
+ /** Custom SVG configuration (inline rendering, supports color override) */
10
+ customSvg?: CustomSvgConfig;
11
+ /** Custom image configuration (img tag, no color override) */
12
+ customImage?: CustomImageConfig;
13
+ /** Icon color configuration */
14
+ iconColors?: IconColorConfig;
15
+ /** Title color configuration */
16
+ titleColors?: TitleColorConfig;
17
+ /** Disable hover animations (default: false) */
18
+ disableAnimation?: boolean;
19
+ /** Link to navigate to when clicked */
20
+ link: string;
21
+ }
22
+ export interface ExploreProps extends WithChildren {
23
+ /** Minimum width for each explore item (default: '250px') */
24
+ minWidth?: string;
25
+ /** Fixed number of columns (0 for auto-responsive, default: 0) */
26
+ columns?: number;
27
+ }
28
+ export interface GetStartedProps extends WithChildren {
29
+ /** Text for the call-to-action button */
30
+ buttonText: string;
31
+ /** Link for the call-to-action button */
32
+ buttonLink: string;
33
+ }
34
+ /**
35
+ * ExploreItem Component
36
+ *
37
+ * Individual card for exploration items.
38
+ * Must be used as a child of the Explore component.
39
+ *
40
+ * @example
41
+ * ```tsx
42
+ * <ExploreItem
43
+ * title="Documentation"
44
+ * iconify="mdi:book-open-page-variant"
45
+ * link="/docs"
46
+ * >
47
+ * Browse our comprehensive documentation
48
+ * </ExploreItem>
49
+ * ```
50
+ */
51
+ export declare const ExploreItem: React.FC<ExploreItemProps>;
52
+ /**
53
+ * Explore Component
54
+ *
55
+ * Container for ExploreItem components in a responsive grid.
56
+ * Must be used as a child of GetStarted component.
57
+ *
58
+ * @example
59
+ * ```tsx
60
+ * <GetStarted buttonText="Get Started" buttonLink="/start">
61
+ * <Explore>
62
+ * <ExploreItem title="Docs" icon="mdi:book" link="/docs">
63
+ * Read the docs
64
+ * </ExploreItem>
65
+ * <ExploreItem title="Tutorial" icon="mdi:school" link="/tutorial">
66
+ * Follow tutorial
67
+ * </ExploreItem>
68
+ * </Explore>
69
+ * </GetStarted>
70
+ * ```
71
+ */
72
+ export declare const Explore: React.FC<ExploreProps>;
73
+ /**
74
+ * GetStarted Component
75
+ *
76
+ * Call-to-action section with optional exploration items.
77
+ *
78
+ * @example
79
+ * ```tsx
80
+ * <GetStarted buttonText="Start Learning" buttonLink="/modules/module1">
81
+ * ## Ready for launch?
82
+ *
83
+ * Proceed to Module 1 to begin your journey!
84
+ *
85
+ * <Explore>
86
+ * <ExploreItem
87
+ * title="Documentation"
88
+ * icon="mdi:book"
89
+ * link="/docs"
90
+ * >
91
+ * Browse documentation
92
+ * </ExploreItem>
93
+ * </Explore>
94
+ * </GetStarted>
95
+ * ```
96
+ */
97
+ export declare const GetStarted: React.FC<GetStartedProps>;
98
+ export default GetStarted;
99
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/GetStarted/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,iBAAiB,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAG9H,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC;IACjC,2EAA2E;IAC3E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,8DAA8D;IAC9D,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,+BAA+B;IAC/B,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,gCAAgC;IAChC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,YAAa,SAAQ,YAAY;IAChD,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACnD,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAkDlD,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAsB1C,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAkChD,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.GetStarted = exports.Explore = exports.ExploreItem = void 0;
7
+ const react_1 = __importDefault(require("react"));
8
+ const react_2 = require("@mdx-js/react");
9
+ const Link_1 = __importDefault(require("@docusaurus/Link"));
10
+ const ThemedIcon_1 = require("../../utils/ThemedIcon");
11
+ const styles_module_css_1 = __importDefault(require("./styles.module.css"));
12
+ /**
13
+ * ExploreItem Component
14
+ *
15
+ * Individual card for exploration items.
16
+ * Must be used as a child of the Explore component.
17
+ *
18
+ * @example
19
+ * ```tsx
20
+ * <ExploreItem
21
+ * title="Documentation"
22
+ * iconify="mdi:book-open-page-variant"
23
+ * link="/docs"
24
+ * >
25
+ * Browse our comprehensive documentation
26
+ * </ExploreItem>
27
+ * ```
28
+ */
29
+ const ExploreItem = ({ title, iconify, customSvg, customImage, iconColors, titleColors, disableAnimation = false, link, children }) => {
30
+ // Build iconify config with colors if provided
31
+ const iconifyWithColors = iconify && iconColors
32
+ ? (typeof iconify === 'string'
33
+ ? { icon: iconify, colors: iconColors }
34
+ : { ...iconify, colors: { ...iconify.colors, ...iconColors } })
35
+ : iconify;
36
+ // Build CSS custom properties for title colors
37
+ const titleCssVars = titleColors ? {
38
+ '--title-color': titleColors.light,
39
+ '--title-color-hover': titleColors.lightHover,
40
+ '--title-color-dark': titleColors.dark || titleColors.light,
41
+ '--title-color-hover-dark': titleColors.darkHover || titleColors.lightHover,
42
+ } : {};
43
+ return (react_1.default.createElement(Link_1.default, { to: link, className: styles_module_css_1.default.exploreLink },
44
+ react_1.default.createElement("div", { className: `${styles_module_css_1.default.exploreItem} ${disableAnimation ? styles_module_css_1.default.disableAnimation : ''}`.trim(), style: titleCssVars },
45
+ (iconify || customSvg || customImage) && (react_1.default.createElement(ThemedIcon_1.ThemedIcon, { iconify: iconifyWithColors, customSvg: customSvg, customImage: customImage, alt: title, className: styles_module_css_1.default.exploreItemIcon, supportsHover: true, disableAnimation: disableAnimation })),
46
+ react_1.default.createElement("h4", { className: styles_module_css_1.default.exploreItemTitle }, title),
47
+ react_1.default.createElement(react_2.MDXProvider, null, children))));
48
+ };
49
+ exports.ExploreItem = ExploreItem;
50
+ /**
51
+ * Explore Component
52
+ *
53
+ * Container for ExploreItem components in a responsive grid.
54
+ * Must be used as a child of GetStarted component.
55
+ *
56
+ * @example
57
+ * ```tsx
58
+ * <GetStarted buttonText="Get Started" buttonLink="/start">
59
+ * <Explore>
60
+ * <ExploreItem title="Docs" icon="mdi:book" link="/docs">
61
+ * Read the docs
62
+ * </ExploreItem>
63
+ * <ExploreItem title="Tutorial" icon="mdi:school" link="/tutorial">
64
+ * Follow tutorial
65
+ * </ExploreItem>
66
+ * </Explore>
67
+ * </GetStarted>
68
+ * ```
69
+ */
70
+ const Explore = ({ children, minWidth = '250px', columns = 0 }) => {
71
+ // Apply custom grid styles if needed
72
+ const gridStyle = columns > 0 ? {
73
+ gridTemplateColumns: `repeat(${columns}, 1fr)`
74
+ } : {
75
+ gridTemplateColumns: `repeat(auto-fit, minmax(${minWidth}, 1fr))`
76
+ };
77
+ return (react_1.default.createElement(react_1.default.Fragment, null,
78
+ react_1.default.createElement("div", { className: styles_module_css_1.default.exploreSectionTitle },
79
+ react_1.default.createElement("h3", null, "Explore")),
80
+ react_1.default.createElement("div", { className: styles_module_css_1.default.exploreGrid, style: gridStyle }, children)));
81
+ };
82
+ exports.Explore = Explore;
83
+ /**
84
+ * GetStarted Component
85
+ *
86
+ * Call-to-action section with optional exploration items.
87
+ *
88
+ * @example
89
+ * ```tsx
90
+ * <GetStarted buttonText="Start Learning" buttonLink="/modules/module1">
91
+ * ## Ready for launch?
92
+ *
93
+ * Proceed to Module 1 to begin your journey!
94
+ *
95
+ * <Explore>
96
+ * <ExploreItem
97
+ * title="Documentation"
98
+ * icon="mdi:book"
99
+ * link="/docs"
100
+ * >
101
+ * Browse documentation
102
+ * </ExploreItem>
103
+ * </Explore>
104
+ * </GetStarted>
105
+ * ```
106
+ */
107
+ const GetStarted = ({ buttonText, buttonLink, children }) => {
108
+ // Extract Explore component if present
109
+ const mainContent = [];
110
+ let exploreContent = null;
111
+ react_1.default.Children.forEach(children, (child) => {
112
+ if (react_1.default.isValidElement(child) && child.type === exports.Explore) {
113
+ exploreContent = child;
114
+ }
115
+ else {
116
+ mainContent.push(child);
117
+ }
118
+ });
119
+ return (react_1.default.createElement("div", { className: styles_module_css_1.default.getStartedCta },
120
+ react_1.default.createElement(react_2.MDXProvider, null, mainContent),
121
+ react_1.default.createElement("div", { className: "margin-top--lg" },
122
+ react_1.default.createElement(Link_1.default, { className: "button button--primary button--lg", to: buttonLink }, buttonText)),
123
+ exploreContent));
124
+ };
125
+ exports.GetStarted = GetStarted;
126
+ exports.default = exports.GetStarted;
127
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/GetStarted/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,174 @@
1
+ /**
2
+ * GetStarted component styles
3
+ */
4
+
5
+ .getStartedCta {
6
+ text-align: center;
7
+ padding: 0.5rem 1rem 1rem 1rem;
8
+ border-radius: 8px;
9
+ background-color: var(--ifm-background-surface-color);
10
+ border: 1px solid var(--ifm-color-gray-300);
11
+ transition: border-color 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
12
+ }
13
+
14
+ .getStartedCta:hover {
15
+ border-color: var(--ifm-color-primary-lightest);
16
+ }
17
+
18
+ [data-theme="dark"] .getStartedCta {
19
+ border-color: var(--ifm-color-emphasis-300);
20
+ }
21
+
22
+ [data-theme="dark"] .getStartedCta:hover {
23
+ border-color: var(--ifm-color-primary-darkest);
24
+ }
25
+
26
+ .getStartedCta h2 {
27
+ font-size: 1.5rem;
28
+ margin-bottom: 1rem;
29
+ }
30
+
31
+ /* Button animation */
32
+ .getStartedCta .button {
33
+ transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
34
+ }
35
+
36
+ .getStartedCta .button:hover {
37
+ transform: scale(1.05) translateY(-2px);
38
+ }
39
+
40
+ .getStartedCta .button:active {
41
+ transform: scale(0.98);
42
+ }
43
+
44
+ .exploreSectionTitle {
45
+ margin: 3rem 0 1rem;
46
+ position: relative;
47
+ }
48
+
49
+ .exploreSectionTitle:before {
50
+ content: "";
51
+ position: absolute;
52
+ top: 50%;
53
+ left: 0;
54
+ right: 0;
55
+ border-top: 1px solid var(--ifm-color-gray-300);
56
+ z-index: 0;
57
+ }
58
+
59
+ .exploreSectionTitle h3 {
60
+ background-color: var(--ifm-background-surface-color);
61
+ font-size: 2rem;
62
+ display: inline-block;
63
+ position: relative;
64
+ padding: 0 1.5rem;
65
+ margin: 0;
66
+ z-index: 1;
67
+ }
68
+
69
+ .exploreGrid {
70
+ display: flex;
71
+ flex-wrap: wrap;
72
+ gap: 1.5rem;
73
+ padding: 0.5rem 0.25rem 1.5rem;
74
+ margin-top: 1.5rem;
75
+ width: 100%;
76
+ justify-content: space-between;
77
+ }
78
+
79
+ .exploreItem {
80
+ padding: 1.5rem;
81
+ border-radius: 8px;
82
+ background-color: var(--ifm-color-emphasis-100);
83
+ box-shadow: var(--ifm-global-shadow-lw);
84
+ transition: transform 0.3s ease, box-shadow 0.3s ease;
85
+ height: 100%;
86
+ text-align: center;
87
+ }
88
+
89
+ .exploreItem:hover {
90
+ transform: translateY(-5px);
91
+ box-shadow: var(--ifm-global-shadow-md);
92
+ }
93
+
94
+ .exploreItemIcon {
95
+ width: 80px;
96
+ height: 80px;
97
+ margin: 0 auto 1rem;
98
+ color: var(--icon-color, var(--ifm-color-emphasis-600));
99
+ transition: color 0.3s cubic-bezier(0.34, 1.56, 0.64, 1),
100
+ transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
101
+ display: flex;
102
+ align-items: center;
103
+ justify-content: center;
104
+ }
105
+
106
+ /* Ensure SVG fills the container */
107
+ .exploreItemIcon svg {
108
+ width: 100%;
109
+ height: 100%;
110
+ }
111
+
112
+ .exploreItem:hover .exploreItemIcon {
113
+ color: var(--icon-color-hover, var(--ifm-color-primary));
114
+ transform: scale(1.05) translateY(-2px);
115
+ }
116
+
117
+ /* Dark theme support */
118
+ [data-theme="dark"] .exploreItemIcon {
119
+ color: var(
120
+ --icon-color-dark,
121
+ var(--icon-color, var(--ifm-color-emphasis-600))
122
+ );
123
+ }
124
+
125
+ [data-theme="dark"] .exploreItem:hover .exploreItemIcon {
126
+ color: var(
127
+ --icon-color-hover-dark,
128
+ var(--icon-color-hover, var(--ifm-color-primary))
129
+ );
130
+ }
131
+
132
+ /* Disable animation when requested */
133
+ .exploreItem.disableAnimation:hover .exploreItemIcon {
134
+ transform: none;
135
+ }
136
+
137
+ .exploreItemTitle {
138
+ font-size: 1.3rem;
139
+ color: var(--title-color, var(--ifm-color-emphasis-600));
140
+ margin-bottom: 0.5rem;
141
+ transition: color 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
142
+ }
143
+
144
+ .exploreItem:hover .exploreItemTitle {
145
+ color: var(--title-color-hover, var(--ifm-color-primary));
146
+ }
147
+
148
+ /* Dark theme support */
149
+ [data-theme="dark"] .exploreItemTitle {
150
+ color: var(
151
+ --title-color-dark,
152
+ var(--title-color, var(--ifm-color-emphasis-600))
153
+ );
154
+ }
155
+
156
+ [data-theme="dark"] .exploreItem:hover .exploreItemTitle {
157
+ color: var(
158
+ --title-color-hover-dark,
159
+ var(--title-color-hover, var(--ifm-color-primary))
160
+ );
161
+ }
162
+
163
+ .exploreLink {
164
+ text-decoration: none !important;
165
+ color: inherit !important;
166
+ height: inherit;
167
+ display: flex;
168
+ flex-direction: column;
169
+ position: relative;
170
+ flex: 1 1;
171
+ min-width: 200px;
172
+ }
173
+
174
+ /* Responsive adjustments */
@@ -0,0 +1,25 @@
1
+ import React from 'react';
2
+ export interface DotCrossGridProps {
3
+ dotSize?: number;
4
+ gap?: number;
5
+ color?: string;
6
+ pointerRadius?: number;
7
+ pointerInnerIntensity?: number;
8
+ pointerOuterIntensity?: number;
9
+ maxOpacity?: number;
10
+ minOpacity?: number;
11
+ randomOpacity?: boolean;
12
+ idleEnabled?: boolean;
13
+ idleAreaWidth?: number;
14
+ idleInterval?: number;
15
+ idleIntensity?: number;
16
+ }
17
+ /**
18
+ * DotCrossGrid - Simple implementation
19
+ *
20
+ * User interaction: Mouse creates crosses that auto-fade after 500ms
21
+ * Idle animation: Crosses appear in edges, fade after 2500ms
22
+ */
23
+ export declare const DotCrossGrid: React.FC<DotCrossGridProps>;
24
+ export default DotCrossGrid;
25
+ //# sourceMappingURL=DotCrossGrid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DotCrossGrid.d.ts","sourceRoot":"","sources":["../../../src/components/HeroBanner/DotCrossGrid.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAIjD,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAG/B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IAGxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAWD;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA8RpD,CAAC;AAEF,eAAe,YAAY,CAAC"}