tenara-ui-components 0.1.2 → 0.1.4

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.
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ import './BackgroundMedia.scss';
3
+ export interface BackgroundMediaProps {
4
+ /** Video URL for video background */
5
+ videoUrl?: string;
6
+ /** Image URL for image background */
7
+ imageUrl?: string;
8
+ /** CSS gradient overlay */
9
+ gradient?: string;
10
+ /** Background color */
11
+ bgColor?: string;
12
+ /** Custom CSS class */
13
+ className?: string;
14
+ /** Inline styles */
15
+ style?: React.CSSProperties;
16
+ }
17
+ /** Background media component supporting image or video */
18
+ export declare const BackgroundMedia: React.FC<BackgroundMediaProps>;
@@ -0,0 +1,2 @@
1
+ export { BackgroundMedia } from './BackgroundMedia';
2
+ export type { BackgroundMediaProps } from './BackgroundMedia';
@@ -0,0 +1,23 @@
1
+ import React from 'react';
2
+ import './Button.scss';
3
+ export type ButtonType = 'general' | 'video' | 'subscribe' | 'cta' | 'secondary' | 'secondarySolid' | 'twitter' | 'linkedIn' | 'facebook';
4
+ export interface ButtonProps {
5
+ /** Button variant type */
6
+ buttonType?: ButtonType;
7
+ /** Button label text */
8
+ label?: string;
9
+ /** Icon element */
10
+ icon?: React.ReactNode;
11
+ /** Allow passing classname to component */
12
+ className?: string;
13
+ /** Custom styles */
14
+ style?: React.CSSProperties;
15
+ /** Child elements */
16
+ children?: React.ReactNode;
17
+ /** Disabled state */
18
+ disabled?: boolean;
19
+ /** Click handler */
20
+ onClick?: () => void;
21
+ }
22
+ /** Primary UI component for user interaction */
23
+ export declare const Button: ({ buttonType, label, icon, className, children, style, disabled, onClick, ...props }: ButtonProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import './Button.scss';
2
3
  export type ButtonType = 'general' | 'video' | 'subscribe' | 'cta' | 'secondary' | 'secondarySolid' | 'twitter' | 'linkedIn' | 'facebook';
3
4
  export interface ButtonProps {
4
5
  /** Button variant type */
@@ -18,4 +19,5 @@ export interface ButtonProps {
18
19
  /** Click handler */
19
20
  onClick?: () => void;
20
21
  }
22
+ /** Primary UI component for user interaction */
21
23
  export declare const Button: ({ buttonType, label, icon, className, children, style, disabled, onClick, ...props }: ButtonProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,27 @@
1
+ import React from 'react';
2
+ import { ButtonType } from '../Button/Button';
3
+ import '../Button/Button.scss';
4
+ export interface ButtonLinkProps {
5
+ /** Button variant type */
6
+ buttonType?: ButtonType;
7
+ /** Button label text */
8
+ label?: string;
9
+ /** Icon element */
10
+ icon?: React.ReactNode;
11
+ /** Link URL */
12
+ href: string;
13
+ /** Link target */
14
+ target?: '_blank' | '_self';
15
+ /** Allow passing classname to component */
16
+ className?: string;
17
+ /** Custom styles */
18
+ style?: React.CSSProperties;
19
+ /** Child elements */
20
+ children?: React.ReactNode;
21
+ /** ARIA label */
22
+ 'aria-label'?: string;
23
+ /** Test ID */
24
+ 'data-testid'?: string;
25
+ }
26
+ /** Button-styled link component for navigation */
27
+ export declare const ButtonLink: ({ buttonType, label, icon, href, target, className, children, style, ...props }: ButtonLinkProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ export { ButtonLink } from './ButtonLink';
2
+ export type { ButtonLinkProps } from './ButtonLink';
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import './Heading.scss';
3
+ export type HeadingLevel = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
4
+ export interface HeadingProps {
5
+ /** Heading level */
6
+ level?: HeadingLevel;
7
+ /** Heading text */
8
+ children: React.ReactNode;
9
+ /** Custom CSS class */
10
+ className?: string;
11
+ /** Inline styles */
12
+ style?: React.CSSProperties;
13
+ }
14
+ /** Heading component with configurable level */
15
+ export declare const Heading: React.FC<HeadingProps>;
@@ -0,0 +1,2 @@
1
+ export { Heading } from './Heading';
2
+ export type { HeadingProps, HeadingLevel } from './Heading';
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ import './TextLink.scss';
3
+ export interface TextLinkProps {
4
+ label: string;
5
+ href?: string;
6
+ externalLink?: string;
7
+ target?: '_blank' | '_self' | '_parent' | '_top';
8
+ onClick?: (event: React.MouseEvent<HTMLAnchorElement>) => void;
9
+ className?: string;
10
+ icon?: React.ReactNode;
11
+ style?: React.CSSProperties;
12
+ disabled?: boolean;
13
+ 'aria-label'?: string;
14
+ 'aria-describedby'?: string;
15
+ 'data-testid'?: string;
16
+ }
17
+ export declare const TextLink: React.FC<TextLinkProps>;
@@ -0,0 +1,10 @@
1
+ export { Button } from './atoms/Button/Button';
2
+ export { ButtonLink } from './atoms/ButtonLink';
3
+ export { TextLink } from './atoms/TextLink/TextLink';
4
+ export { BackgroundMedia } from './atoms/BackgroundMedia';
5
+ export { Heading } from './atoms/Heading';
6
+ export { Header } from './molecules/Header/Header';
7
+ export { Card } from './molecules/Card/Card';
8
+ export { CTA } from './molecules/CTA';
9
+ export { Page } from './pages/Page';
10
+ export * from '../themes/index';
package/dist/index.css ADDED
@@ -0,0 +1 @@
1
+ :root{--button-general-bg:#1e40af;--button-general-bg-hover:#1e3a8a;--button-general-bg-active:#1d4ed8;--button-general-color:#fff;--button-general-border:#1e40af;--button-general-shadow:none;--button-cta-bg:#efe63f;--button-cta-bg-hover:#efe63f;--button-cta-bg-active:#efe63f;--button-cta-color:#312e81;--button-cta-border:#efe63f;--button-cta-shadow:none;--button-secondary-bg:transparent;--button-secondary-bg-hover:#1e40af;--button-secondary-bg-active:#1d4ed8;--button-secondary-color:#1e40af;--button-secondary-color-hover:#fff;--button-secondary-border:#1e40af;--button-secondary-shadow:none;--button-border-radius:20px}.button{align-items:center;border:1px solid transparent;border-radius:var(--button-border-radius,20px);cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;padding:14px 25px 13px;text-decoration:none;transition:all .3s ease}.button:disabled{cursor:not-allowed;opacity:.6}.button .icon{margin-left:8px}.button--general,.button--subscribe,.button--video{background-color:var(--button-general-bg,#1e40af);border-color:var(--button-general-border,#1e40af);box-shadow:var(--button-general-shadow,none);color:var(--button-general-color,#fff)}.button--general:hover:not(:disabled),.button--subscribe:hover:not(:disabled),.button--video:hover:not(:disabled){background-color:var(--button-general-bg-hover,#1e3a8a)}.button--general:active:not(:disabled),.button--subscribe:active:not(:disabled),.button--video:active:not(:disabled){background-color:var(--button-general-bg-active,#1d4ed8)}.button--cta{background-color:var(--button-cta-bg,#efe63f);border-color:var(--button-cta-border,#efe63f);box-shadow:var(--button-cta-shadow,none);color:var(--button-cta-color,#312e81)}.button--cta:hover:not(:disabled){background-color:var(--button-cta-bg-hover,#efe63f)}.button--cta:active:not(:disabled){background-color:var(--button-cta-bg-active,#efe63f)}.button--facebook,.button--linkedIn,.button--secondary,.button--twitter{background-color:var(--button-secondary-bg,transparent);border:2px solid var(--button-secondary-border,#1e40af);box-shadow:var(--button-secondary-shadow,none);color:var(--button-secondary-color,#1e40af);padding:13px 24px 12px}.button--facebook:hover:not(:disabled),.button--linkedIn:hover:not(:disabled),.button--secondary:hover:not(:disabled),.button--twitter:hover:not(:disabled){background-color:var(--button-secondary-bg-hover,#1e40af);color:var(--button-secondary-color-hover,#fff)}.button--facebook:active:not(:disabled),.button--linkedIn:active:not(:disabled),.button--secondary:active:not(:disabled),.button--twitter:active:not(:disabled){background-color:var(--button-secondary-bg-active,#1d4ed8)}.button--secondarySolid{background-color:transparent;border:2px solid #fff;color:#fff}.button--secondarySolid:hover:not(:disabled){background-color:#3b82f6;border-color:#3b82f6}.button--secondarySolid:active:not(:disabled){background-color:#2563eb;border-color:#2563eb}.text-link{align-items:center;color:#1e3a8a;cursor:pointer;display:inline-flex;font-weight:700;gap:4px;text-decoration:underline;text-underline-offset:2px;transition:color .2s ease,text-decoration-color .2s ease}.text-link:hover{color:#1e40af;text-decoration:underline}.text-link:focus{border-radius:2px;outline:2px solid #2563eb;outline-offset:2px}.text-link:focus:not(:focus-visible){outline:none}.text-link:focus-visible{border-radius:2px;outline:2px solid #2563eb;outline-offset:2px}.text-link:active{color:#1e40af}.text-link--disabled{cursor:not-allowed;pointer-events:none}.text-link--disabled,.text-link--disabled:hover{color:#9ca3af;text-decoration:none}@media (prefers-contrast:high){.text-link{text-decoration-thickness:2px}.text-link:focus-visible{outline-width:3px}}@media (prefers-reduced-motion:reduce){.text-link{transition:none}}.background-media{background-position:50%;background-repeat:no-repeat;background-size:cover;height:100%;left:0;position:absolute;top:0;width:100%}.background-media--video{object-fit:cover}.heading{margin:0}.card-wrapper{max-width:340px;width:100%}.card__link{color:inherit;display:block;text-decoration:none}.card__link:focus{outline:2px solid currentColor;outline-offset:2px}.card{background-color:#fff;border:1px solid #e0e0e0;border-radius:20px;box-sizing:border-box;transition:box-shadow .3s ease;width:100%}.card--hover-effect:hover{box-shadow:0 3px 6px rgba(0,0,0,.1)}.card--hover-effect:hover .card__image-container{transform:scale(1.4)}.card:active{border:2px solid #00bcd4}.card[role=button]{cursor:pointer}.card[role=button]:focus{outline:2px solid currentColor;outline-offset:2px}.card__image-wrapper{aspect-ratio:3/2;border-radius:20px 20px 0 0;overflow:hidden;position:relative;width:100%}@media (max-width:768px){.card__image-wrapper{aspect-ratio:16/9}}.card__image-container{bottom:0;left:0;position:absolute;right:0;top:0;transition:transform .25s ease}.card__image{height:100%;object-fit:cover;width:100%}.card__body{box-sizing:border-box;padding:30px}:root{--content-container-bg:#312e81;--content-container-text-dark-bg:#fff;--content-container-boarder-radius:0px 0px 200px;--content-container-padding:84px 50px 0px 60px}.cta{height:500px;overflow:hidden;position:relative;width:100%}.cta__content{background-color:var(--content-container-bg);border-radius:var(--content-container-boarder-radius);height:450px;min-width:50%;padding:var(--content-container-padding);position:relative;width:745px;z-index:1}.cta__title{font-size:2.5rem;font-weight:700;margin:0 0 1rem}.cta__description,.cta__title{color:var(--content-container-text-dark-bg)}.cta__description{font-size:1.125rem;line-height:1.6;margin:0 0 2rem}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,9 @@
1
- export { Button } from './atoms/Button';
2
- export { Header } from './molecules/Header';
1
+ export { Button } from './atoms/Button/Button';
2
+ export { ButtonLink } from './atoms/ButtonLink';
3
+ export { TextLink } from './atoms/TextLink/TextLink';
4
+ export { BackgroundMedia } from './atoms/BackgroundMedia';
5
+ export { Heading } from './atoms/Heading';
6
+ export { Header } from './molecules/Header/Header';
7
+ export { Card } from './molecules/Card/Card';
8
+ export { CTA } from './molecules/CTA';
3
9
  export { Page } from './pages/Page';
@@ -0,0 +1 @@
1
+ :root{--button-general-bg:#1e40af;--button-general-bg-hover:#1e3a8a;--button-general-bg-active:#1d4ed8;--button-general-color:#fff;--button-general-border:#1e40af;--button-general-shadow:none;--button-cta-bg:#efe63f;--button-cta-bg-hover:#efe63f;--button-cta-bg-active:#efe63f;--button-cta-color:#312e81;--button-cta-border:#efe63f;--button-cta-shadow:none;--button-secondary-bg:transparent;--button-secondary-bg-hover:#1e40af;--button-secondary-bg-active:#1d4ed8;--button-secondary-color:#1e40af;--button-secondary-color-hover:#fff;--button-secondary-border:#1e40af;--button-secondary-shadow:none;--button-border-radius:20px}.button{align-items:center;border:1px solid transparent;border-radius:var(--button-border-radius,20px);cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;padding:14px 25px 13px;text-decoration:none;transition:all .3s ease}.button:disabled{cursor:not-allowed;opacity:.6}.button .icon{margin-left:8px}.button--general,.button--subscribe,.button--video{background-color:var(--button-general-bg,#1e40af);border-color:var(--button-general-border,#1e40af);box-shadow:var(--button-general-shadow,none);color:var(--button-general-color,#fff)}.button--general:hover:not(:disabled),.button--subscribe:hover:not(:disabled),.button--video:hover:not(:disabled){background-color:var(--button-general-bg-hover,#1e3a8a)}.button--general:active:not(:disabled),.button--subscribe:active:not(:disabled),.button--video:active:not(:disabled){background-color:var(--button-general-bg-active,#1d4ed8)}.button--cta{background-color:var(--button-cta-bg,#efe63f);border-color:var(--button-cta-border,#efe63f);box-shadow:var(--button-cta-shadow,none);color:var(--button-cta-color,#312e81)}.button--cta:hover:not(:disabled){background-color:var(--button-cta-bg-hover,#efe63f)}.button--cta:active:not(:disabled){background-color:var(--button-cta-bg-active,#efe63f)}.button--facebook,.button--linkedIn,.button--secondary,.button--twitter{background-color:var(--button-secondary-bg,transparent);border:2px solid var(--button-secondary-border,#1e40af);box-shadow:var(--button-secondary-shadow,none);color:var(--button-secondary-color,#1e40af);padding:13px 24px 12px}.button--facebook:hover:not(:disabled),.button--linkedIn:hover:not(:disabled),.button--secondary:hover:not(:disabled),.button--twitter:hover:not(:disabled){background-color:var(--button-secondary-bg-hover,#1e40af);color:var(--button-secondary-color-hover,#fff)}.button--facebook:active:not(:disabled),.button--linkedIn:active:not(:disabled),.button--secondary:active:not(:disabled),.button--twitter:active:not(:disabled){background-color:var(--button-secondary-bg-active,#1d4ed8)}.button--secondarySolid{background-color:transparent;border:2px solid #fff;color:#fff}.button--secondarySolid:hover:not(:disabled){background-color:#3b82f6;border-color:#3b82f6}.button--secondarySolid:active:not(:disabled){background-color:#2563eb;border-color:#2563eb}.text-link{align-items:center;color:#1e3a8a;cursor:pointer;display:inline-flex;font-weight:700;gap:4px;text-decoration:underline;text-underline-offset:2px;transition:color .2s ease,text-decoration-color .2s ease}.text-link:hover{color:#1e40af;text-decoration:underline}.text-link:focus{border-radius:2px;outline:2px solid #2563eb;outline-offset:2px}.text-link:focus:not(:focus-visible){outline:none}.text-link:focus-visible{border-radius:2px;outline:2px solid #2563eb;outline-offset:2px}.text-link:active{color:#1e40af}.text-link--disabled{cursor:not-allowed;pointer-events:none}.text-link--disabled,.text-link--disabled:hover{color:#9ca3af;text-decoration:none}@media (prefers-contrast:high){.text-link{text-decoration-thickness:2px}.text-link:focus-visible{outline-width:3px}}@media (prefers-reduced-motion:reduce){.text-link{transition:none}}.background-media{background-position:50%;background-repeat:no-repeat;background-size:cover;height:100%;left:0;position:absolute;top:0;width:100%}.background-media--video{object-fit:cover}.heading{margin:0}.card-wrapper{max-width:340px;width:100%}.card__link{color:inherit;display:block;text-decoration:none}.card__link:focus{outline:2px solid currentColor;outline-offset:2px}.card{background-color:#fff;border:1px solid #e0e0e0;border-radius:20px;box-sizing:border-box;transition:box-shadow .3s ease;width:100%}.card--hover-effect:hover{box-shadow:0 3px 6px rgba(0,0,0,.1)}.card--hover-effect:hover .card__image-container{transform:scale(1.4)}.card:active{border:2px solid #00bcd4}.card[role=button]{cursor:pointer}.card[role=button]:focus{outline:2px solid currentColor;outline-offset:2px}.card__image-wrapper{aspect-ratio:3/2;border-radius:20px 20px 0 0;overflow:hidden;position:relative;width:100%}@media (max-width:768px){.card__image-wrapper{aspect-ratio:16/9}}.card__image-container{bottom:0;left:0;position:absolute;right:0;top:0;transition:transform .25s ease}.card__image{height:100%;object-fit:cover;width:100%}.card__body{box-sizing:border-box;padding:30px}:root{--content-container-bg:#312e81;--content-container-text-dark-bg:#fff;--content-container-boarder-radius:0px 0px 200px;--content-container-padding:84px 50px 0px 60px}.cta{height:500px;overflow:hidden;position:relative;width:100%}.cta__content{background-color:var(--content-container-bg);border-radius:var(--content-container-boarder-radius);height:450px;min-width:50%;padding:var(--content-container-padding);position:relative;width:745px;z-index:1}.cta__title{font-size:2.5rem;font-weight:700;margin:0 0 1rem}.cta__description,.cta__title{color:var(--content-container-text-dark-bg)}.cta__description{font-size:1.125rem;line-height:1.6;margin:0 0 2rem}
package/dist/index.esm.js CHANGED
@@ -1,4 +1,4 @@
1
- import e from"react";"function"==typeof SuppressedError&&SuppressedError;var r,t={exports:{}},o={};var n,l,a={};
1
+ import e,{createContext as r,useState as o,useEffect as t,useContext as n}from"react";function a(e,r){var o={};for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&r.indexOf(t)<0&&(o[t]=e[t]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(t=Object.getOwnPropertySymbols(e);n<t.length;n++)r.indexOf(t[n])<0&&Object.prototype.propertyIsEnumerable.call(e,t[n])&&(o[t[n]]=e[t[n]])}return o}"function"==typeof SuppressedError&&SuppressedError;var s,c={exports:{}},i={};var l,d,u={};
2
2
  /**
3
3
  * @license React
4
4
  * react-jsx-runtime.development.js
@@ -7,5 +7,5 @@ import e from"react";"function"==typeof SuppressedError&&SuppressedError;var r,t
7
7
  *
8
8
  * This source code is licensed under the MIT license found in the
9
9
  * LICENSE file in the root directory of this source tree.
10
- */function i(){return n||(n=1,"production"!==process.env.NODE_ENV&&function(){function r(e){if(null==e)return null;if("function"==typeof e)return e.$$typeof===O?null:e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case f:return"Fragment";case m:return"Profiler";case y:return"StrictMode";case x:return"Suspense";case j:return"SuspenseList";case S:return"Activity"}if("object"==typeof e)switch("number"==typeof e.tag&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case p:return"Portal";case v:return(e.displayName||"Context")+".Provider";case g:return(e._context.displayName||"Context")+".Consumer";case h:var t=e.render;return(e=e.displayName)||(e=""!==(e=t.displayName||t.name||"")?"ForwardRef("+e+")":"ForwardRef"),e;case k:return null!==(t=e.displayName||null)?t:r(e.type)||"Memo";case w:t=e._payload,e=e._init;try{return r(e(t))}catch(e){}}return null}function t(e){return""+e}function o(e){try{t(e);var r=!1}catch(e){r=!0}if(r){var o=(r=console).error,n="function"==typeof Symbol&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return o.call(r,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",n),t(e)}}function n(e){if(e===f)return"<>";if("object"==typeof e&&null!==e&&e.$$typeof===w)return"<...>";try{var t=r(e);return t?"<"+t+">":"<...>"}catch(e){return"<...>"}}function l(){return Error("react-stack-top-frame")}function i(){var e=r(this.type);return P[e]||(P[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),void 0!==(e=this.props.ref)?e:null}function s(e,t,n,l,a,s,b,p){var f,y=t.children;if(void 0!==y)if(l)if(T(y)){for(l=0;l<y.length;l++)c(y[l]);Object.freeze&&Object.freeze(y)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else c(y);if(N.call(t,"key")){y=r(e);var m=Object.keys(t).filter(function(e){return"key"!==e});l=0<m.length?"{key: someKey, "+m.join(": ..., ")+": ...}":"{key: someKey}",C[y+l]||(m=0<m.length?"{"+m.join(": ..., ")+": ...}":"{}",console.error('A props object containing a "key" prop is being spread into JSX:\n let props = %s;\n <%s {...props} />\nReact keys must be passed directly to JSX without using spread:\n let props = %s;\n <%s key={someKey} {...props} />',l,y,m,y),C[y+l]=!0)}if(y=null,void 0!==n&&(o(n),y=""+n),function(e){if(N.call(e,"key")){var r=Object.getOwnPropertyDescriptor(e,"key").get;if(r&&r.isReactWarning)return!1}return void 0!==e.key}(t)&&(o(t.key),y=""+t.key),"key"in t)for(var g in n={},t)"key"!==g&&(n[g]=t[g]);else n=t;return y&&function(e,r){function t(){u||(u=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",r))}t.isReactWarning=!0,Object.defineProperty(e,"key",{get:t,configurable:!0})}(n,"function"==typeof e?e.displayName||e.name||"Unknown":e),function(e,r,t,o,n,l,a,s){return t=l.ref,e={$$typeof:d,type:e,key:r,props:l,_owner:n},null!==(void 0!==t?t:null)?Object.defineProperty(e,"ref",{enumerable:!1,get:i}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:a}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:s}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}(e,y,s,0,null===(f=_.A)?null:f.getOwner(),n,b,p)}function c(e){"object"==typeof e&&null!==e&&e.$$typeof===d&&e._store&&(e._store.validated=1)}var u,b=e,d=Symbol.for("react.transitional.element"),p=Symbol.for("react.portal"),f=Symbol.for("react.fragment"),y=Symbol.for("react.strict_mode"),m=Symbol.for("react.profiler"),g=Symbol.for("react.consumer"),v=Symbol.for("react.context"),h=Symbol.for("react.forward_ref"),x=Symbol.for("react.suspense"),j=Symbol.for("react.suspense_list"),k=Symbol.for("react.memo"),w=Symbol.for("react.lazy"),S=Symbol.for("react.activity"),O=Symbol.for("react.client.reference"),_=b.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,N=Object.prototype.hasOwnProperty,T=Array.isArray,E=console.createTask?console.createTask:function(){return null},P={},A=(b={"react-stack-bottom-frame":function(e){return e()}})["react-stack-bottom-frame"].bind(b,l)(),R=E(n(l)),C={};a.Fragment=f,a.jsx=function(e,r,t,o,l){var a=1e4>_.recentlyCreatedOwnerStacks++;return s(e,r,t,!1,0,l,a?Error("react-stack-top-frame"):A,a?E(n(e)):R)},a.jsxs=function(e,r,t,o,l){var a=1e4>_.recentlyCreatedOwnerStacks++;return s(e,r,t,!0,0,l,a?Error("react-stack-top-frame"):A,a?E(n(e)):R)}}()),a}var s=(l||(l=1,"production"===process.env.NODE_ENV?t.exports=function(){if(r)return o;r=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function n(r,t,o){var n=null;if(void 0!==o&&(n=""+o),void 0!==t.key&&(n=""+t.key),"key"in t)for(var l in o={},t)"key"!==l&&(o[l]=t[l]);else o=t;return t=o.ref,{$$typeof:e,type:r,key:n,ref:void 0!==t?t:null,props:o}}return o.Fragment=t,o.jsx=n,o.jsxs=n,o}():t.exports=i()),t.exports);const c={general:"bg-blue-700 text-white hover:bg-blue-800 active:bg-blue-600",video:"bg-blue-700 text-white hover:bg-blue-800 active:bg-blue-600",subscribe:"bg-blue-700 text-white hover:bg-blue-800 active:bg-blue-600",cta:"bg-yellow-400 text-indigo-900 hover:bg-yellow-500 active:bg-yellow-600",secondary:"bg-transparent text-blue-700 border-2 border-blue-700 hover:bg-blue-500 hover:text-white hover:border-blue-500 active:bg-blue-600 active:border-blue-600",secondarySolid:"bg-transparent text-white border-2 border-white hover:bg-blue-500 hover:border-blue-500 active:bg-blue-600 active:border-blue-600",twitter:"bg-transparent text-blue-700 border-2 border-blue-700 hover:bg-blue-500 hover:text-white hover:border-blue-500 active:bg-blue-600 active:border-blue-600",linkedIn:"bg-transparent text-blue-700 border-2 border-blue-700 hover:bg-blue-500 hover:text-white hover:border-blue-500 active:bg-blue-600 active:border-blue-600",facebook:"bg-transparent text-blue-700 border-2 border-blue-700 hover:bg-blue-500 hover:text-white hover:border-blue-500 active:bg-blue-600 active:border-blue-600"},u=e=>{var{buttonType:r="general",label:t,icon:o,className:n,children:l,style:a,disabled:i=!1,onClick:u}=e,b=function(e,r){var t={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&r.indexOf(o)<0&&(t[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(e);n<o.length;n++)r.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n])&&(t[o[n]]=e[o[n]])}return t}(e,["buttonType","label","icon","className","children","style","disabled","onClick"]);const d=`rounded-full px-6 py-3 inline-flex items-center font-semibold text-base transition-all duration-300 cursor-pointer border-transparent ${c[r]} ${i?"opacity-60 cursor-not-allowed":""} ${n||""}`;return s.jsxs("button",Object.assign({type:"button",className:d,style:a,onClick:u,disabled:i},b,{children:[l||t," ",o&&s.jsx("span",{className:"ml-2",children:o})]}))},b=({user:e,onLogin:r,onLogout:t,onCreateAccount:o})=>s.jsx("header",{children:s.jsxs("div",{className:"storybook-header",children:[s.jsxs("div",{children:[s.jsx("svg",{width:"32",height:"32",viewBox:"0 0 32 32",xmlns:"http://www.w3.org/2000/svg",children:s.jsxs("g",{fill:"none",fillRule:"evenodd",children:[s.jsx("path",{d:"M10 0h12a10 10 0 0110 10v12a10 10 0 01-10 10H10A10 10 0 010 22V10A10 10 0 0110 0z",fill:"#FFF"}),s.jsx("path",{d:"M5.3 10.6l10.4 6v11.1l-10.4-6v-11zm11.4-6.2l9.7 5.5-9.7 5.6V4.4z",fill:"#555AB9"}),s.jsx("path",{d:"M27.2 10.6v11.2l-10.5 6V16.5l10.5-6zM15.7 4.4v11L6 10l9.7-5.5z",fill:"#91BAF8"})]})}),s.jsx("h1",{children:"Acme"})]}),s.jsx("div",{children:e?s.jsxs(s.Fragment,{children:[s.jsxs("span",{className:"welcome",children:["Welcome, ",s.jsx("b",{children:e.name}),"!"]}),s.jsx(u,{buttonType:"secondary",onClick:t,label:"Log out"})]}):s.jsxs(s.Fragment,{children:[s.jsx(u,{buttonType:"secondary",onClick:r,label:"Log in"}),s.jsx(u,{buttonType:"cta",onClick:o,label:"Sign up"})]})})]})}),d=()=>{const[r,t]=e.useState();return s.jsxs("article",{children:[s.jsx(b,{user:r,onLogin:()=>t({name:"Jane Doe"}),onLogout:()=>t(void 0),onCreateAccount:()=>t({name:"Jane Doe"})}),s.jsxs("section",{className:"storybook-page",children:[s.jsx("h2",{children:"Pages in Storybook"}),s.jsxs("p",{children:["We recommend building UIs with a"," ",s.jsx("a",{href:"https://componentdriven.org",target:"_blank",rel:"noopener noreferrer",children:s.jsx("strong",{children:"component-driven"})})," ","process starting with atomic components and ending with pages."]})]})]})};export{u as Button,b as Header,d as Page};
10
+ */function p(){return l||(l=1,"production"!==process.env.NODE_ENV&&function(){function r(e){if(null==e)return null;if("function"==typeof e)return e.$$typeof===_?null:e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case f:return"Fragment";case g:return"Profiler";case h:return"StrictMode";case x:return"Suspense";case k:return"SuspenseList";case w:return"Activity"}if("object"==typeof e)switch("number"==typeof e.tag&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case b:return"Portal";case y:return(e.displayName||"Context")+".Provider";case m:return(e._context.displayName||"Context")+".Consumer";case v:var o=e.render;return(e=e.displayName)||(e=""!==(e=o.displayName||o.name||"")?"ForwardRef("+e+")":"ForwardRef"),e;case j:return null!==(o=e.displayName||null)?o:r(e.type)||"Memo";case $:o=e._payload,e=e._init;try{return r(e(o))}catch(e){}}return null}function o(e){return""+e}function t(e){try{o(e);var r=!1}catch(e){r=!0}if(r){var t=(r=console).error,n="function"==typeof Symbol&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return t.call(r,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",n),o(e)}}function n(e){if(e===f)return"<>";if("object"==typeof e&&null!==e&&e.$$typeof===$)return"<...>";try{var o=r(e);return o?"<"+o+">":"<...>"}catch(e){return"<...>"}}function a(){return Error("react-stack-top-frame")}function s(){var e=r(this.type);return T[e]||(T[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),void 0!==(e=this.props.ref)?e:null}function c(e,o,n,a,c,d,u,b){var f,h=o.children;if(void 0!==h)if(a)if(H(h)){for(a=0;a<h.length;a++)i(h[a]);Object.freeze&&Object.freeze(h)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else i(h);if(S.call(o,"key")){h=r(e);var g=Object.keys(o).filter(function(e){return"key"!==e});a=0<g.length?"{key: someKey, "+g.join(": ..., ")+": ...}":"{key: someKey}",C[h+a]||(g=0<g.length?"{"+g.join(": ..., ")+": ...}":"{}",console.error('A props object containing a "key" prop is being spread into JSX:\n let props = %s;\n <%s {...props} />\nReact keys must be passed directly to JSX without using spread:\n let props = %s;\n <%s key={someKey} {...props} />',a,h,g,h),C[h+a]=!0)}if(h=null,void 0!==n&&(t(n),h=""+n),function(e){if(S.call(e,"key")){var r=Object.getOwnPropertyDescriptor(e,"key").get;if(r&&r.isReactWarning)return!1}return void 0!==e.key}(o)&&(t(o.key),h=""+o.key),"key"in o)for(var m in n={},o)"key"!==m&&(n[m]=o[m]);else n=o;return h&&function(e,r){function o(){l||(l=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",r))}o.isReactWarning=!0,Object.defineProperty(e,"key",{get:o,configurable:!0})}(n,"function"==typeof e?e.displayName||e.name||"Unknown":e),function(e,r,o,t,n,a,c,i){return o=a.ref,e={$$typeof:p,type:e,key:r,props:a,_owner:n},null!==(void 0!==o?o:null)?Object.defineProperty(e,"ref",{enumerable:!1,get:s}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:c}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:i}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}(e,h,d,0,null===(f=N.A)?null:f.getOwner(),n,u,b)}function i(e){"object"==typeof e&&null!==e&&e.$$typeof===p&&e._store&&(e._store.validated=1)}var l,d=e,p=Symbol.for("react.transitional.element"),b=Symbol.for("react.portal"),f=Symbol.for("react.fragment"),h=Symbol.for("react.strict_mode"),g=Symbol.for("react.profiler"),m=Symbol.for("react.consumer"),y=Symbol.for("react.context"),v=Symbol.for("react.forward_ref"),x=Symbol.for("react.suspense"),k=Symbol.for("react.suspense_list"),j=Symbol.for("react.memo"),$=Symbol.for("react.lazy"),w=Symbol.for("react.activity"),_=Symbol.for("react.client.reference"),N=d.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,S=Object.prototype.hasOwnProperty,H=Array.isArray,O=console.createTask?console.createTask:function(){return null},T={},A=(d={"react-stack-bottom-frame":function(e){return e()}})["react-stack-bottom-frame"].bind(d,a)(),R=O(n(a)),C={};u.Fragment=f,u.jsx=function(e,r,o,t,a){var s=1e4>N.recentlyCreatedOwnerStacks++;return c(e,r,o,!1,0,a,s?Error("react-stack-top-frame"):A,s?O(n(e)):R)},u.jsxs=function(e,r,o,t,a){var s=1e4>N.recentlyCreatedOwnerStacks++;return c(e,r,o,!0,0,a,s?Error("react-stack-top-frame"):A,s?O(n(e)):R)}}()),u}var b=(d||(d=1,"production"===process.env.NODE_ENV?c.exports=function(){if(s)return i;s=1;var e=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function o(r,o,t){var n=null;if(void 0!==t&&(n=""+t),void 0!==o.key&&(n=""+o.key),"key"in o)for(var a in t={},o)"key"!==a&&(t[a]=o[a]);else t=o;return o=t.ref,{$$typeof:e,type:r,key:n,ref:void 0!==o?o:null,props:t}}return i.Fragment=r,i.jsx=o,i.jsxs=o,i}():c.exports=p()),c.exports);const f=e=>{var{buttonType:r="general",label:o,icon:t,className:n,children:s,style:c,disabled:i=!1,onClick:l}=e,d=a(e,["buttonType","label","icon","className","children","style","disabled","onClick"]);const u=`button button--${r} ${n||""}`;return b.jsxs("button",Object.assign({type:"button",className:u,style:c,onClick:l,disabled:i},d,{children:[s||o," ",t&&b.jsx("span",{className:"icon",children:t})]}))},h=e=>{var{buttonType:r="general",label:o,icon:t,href:n,target:s="_self",className:c,children:i,style:l}=e,d=a(e,["buttonType","label","icon","href","target","className","children","style"]);const u=`button button--${r} ${c||""}`,p="_blank"===s?"noopener noreferrer":void 0;return b.jsxs("a",Object.assign({href:n,target:s,rel:p,className:u,style:l},d,{children:[i||o," ",t&&b.jsx("span",{className:"icon",children:t})]}))},g=({label:e,href:r,externalLink:o,target:t="_self",onClick:n,className:a="",icon:s,style:c,disabled:i=!1,"aria-label":l,"aria-describedby":d,"data-testid":u})=>{const p=o||r,f=!!o||"_blank"===t;return!p||i?b.jsxs("span",{className:`text-link text-link--disabled ${a}`,style:c,"data-testid":u,"aria-label":l||e,"aria-describedby":d,children:[e," ",s]}):b.jsxs("a",{href:p,target:t,rel:f?"noopener noreferrer":void 0,onClick:e=>{i?e.preventDefault():n&&n(e)},onKeyDown:e=>{!i||"Enter"!==e.key&&" "!==e.key||e.preventDefault()},className:`text-link ${a}`,style:c,"aria-label":l,"aria-describedby":d,"data-testid":u,children:[e," ",s]})},m=({videoUrl:e,imageUrl:r,gradient:o,bgColor:t,className:n,style:a})=>{const s=["background-media",n].filter(Boolean).join(" ");if(e)return b.jsxs("video",{className:`${s} background-media--video`,autoPlay:!0,muted:!0,loop:!0,playsInline:!0,style:a,children:[b.jsx("source",{src:e,type:"video/mp4"}),"Your browser does not support video."]});const c=Object.assign({backgroundImage:o?`${o}, url(${r})`:r?`url(${r})`:void 0,backgroundColor:t},a);return b.jsx("div",{className:s,style:c})},y=({level:e="h2",children:r,className:o,style:t})=>{const n=e,a=["heading",o].filter(Boolean).join(" ");return b.jsx(n,{className:a,style:t,children:r})},v=({user:e,onLogin:r,onLogout:o,onCreateAccount:t})=>b.jsx("header",{children:b.jsxs("div",{className:"storybook-header",children:[b.jsxs("div",{children:[b.jsx("svg",{width:"32",height:"32",viewBox:"0 0 32 32",xmlns:"http://www.w3.org/2000/svg",children:b.jsxs("g",{fill:"none",fillRule:"evenodd",children:[b.jsx("path",{d:"M10 0h12a10 10 0 0110 10v12a10 10 0 01-10 10H10A10 10 0 010 22V10A10 10 0 0110 0z",fill:"#FFF"}),b.jsx("path",{d:"M5.3 10.6l10.4 6v11.1l-10.4-6v-11zm11.4-6.2l9.7 5.5-9.7 5.6V4.4z",fill:"#555AB9"}),b.jsx("path",{d:"M27.2 10.6v11.2l-10.5 6V16.5l10.5-6zM15.7 4.4v11L6 10l9.7-5.5z",fill:"#91BAF8"})]})}),b.jsx("h1",{children:"Acme"})]}),b.jsx("div",{children:e?b.jsxs(b.Fragment,{children:[b.jsxs("span",{className:"welcome",children:["Welcome, ",b.jsx("b",{children:e.name}),"!"]}),b.jsx(f,{buttonType:"secondary",onClick:o,label:"Log out"})]}):b.jsxs(b.Fragment,{children:[b.jsx(f,{buttonType:"secondary",onClick:r,label:"Log in"}),b.jsx(f,{buttonType:"cta",onClick:t,label:"Sign up"})]})})]})}),x=({children:e,maxWidth:r="340px",padding:o="30px",onClick:t,href:n,target:a="_self",imageUrl:s,imageAlt:c="",className:i="",style:l,aspectRatio:d="3/2",borderRadius:u="20px",hoverEffect:p=!0,"aria-label":f,"data-testid":h})=>{const g=e=>{"Enter"!==e.key&&" "!==e.key||!t||(e.preventDefault(),t(e))},m=e=>{t&&t(e)},y=Object.assign({maxWidth:r},l),v={borderRadius:u},x={aspectRatio:d,borderRadius:`${u} ${u} 0 0`},k={padding:o},j=["card",p&&"card--hover-effect",i].filter(Boolean).join(" "),$=b.jsxs("div",{className:j,style:v,"data-testid":h,children:[s&&b.jsx("div",{className:"card__image-wrapper",style:x,children:b.jsx("div",{className:"card__image-container",children:b.jsx("img",{src:s,alt:c,className:"card__image",loading:"lazy"})})}),b.jsx("div",{className:"card__body",style:k,children:e})]});return n?b.jsx("div",{className:"card-wrapper",style:y,children:b.jsx("a",{href:n,target:a,rel:"_blank"===a?"noopener noreferrer":void 0,onClick:m,className:"card__link",style:{borderRadius:u},"aria-label":f,children:$})}):t?b.jsx("div",{className:"card-wrapper",style:y,children:b.jsxs("div",{className:j,style:v,onClick:t,onKeyDown:g,role:"button",tabIndex:0,"aria-label":f,"data-testid":h,children:[s&&b.jsx("div",{className:"card__image-wrapper",style:x,children:b.jsx("div",{className:"card__image-container",children:b.jsx("img",{src:s,alt:c,className:"card__image",loading:"lazy"})})}),b.jsx("div",{className:"card__body",style:k,children:e})]})}):b.jsx("div",{className:"card-wrapper",style:y,children:$})},k=({videoUrl:e,imageUrl:r,gradient:o,bgColor:t,title:n,headingLevel:a="h2",description:s,buttonText:c,link:i,externalLink:l,target:d="_self",className:u,style:p})=>{const g=["cta",u].filter(Boolean).join(" ");return b.jsxs("div",{className:g,style:p,children:[b.jsx(m,{videoUrl:e,imageUrl:r,gradient:o,bgColor:t}),b.jsxs("div",{className:"cta__content",children:[b.jsx(y,{level:a,className:"cta__title",children:n}),s&&b.jsx("p",{className:"cta__description",children:s}),i?b.jsx(h,{buttonType:"cta",label:c,href:i,target:l?d:"_self"}):b.jsx(f,{buttonType:"cta",label:c,onClick:()=>{}})]})]})},j=()=>{const[r,o]=e.useState();return b.jsxs("article",{children:[b.jsx(v,{user:r,onLogin:()=>o({name:"Jane Doe"}),onLogout:()=>o(void 0),onCreateAccount:()=>o({name:"Jane Doe"})}),b.jsxs("section",{className:"storybook-page",children:[b.jsx("h2",{children:"Pages in Storybook"}),b.jsxs("p",{children:["We recommend building UIs with a"," ",b.jsx("a",{href:"https://componentdriven.org",target:"_blank",rel:"noopener noreferrer",children:b.jsx("strong",{children:"component-driven"})})," ","process starting with atomic components and ending with pages."]})]})]})},$={name:"default",colors:{primary:"#2e6bf0",primaryHover:"#1e40af",primaryActive:"#1e3a8a",secondary:"#efe63f",secondaryHover:"#eab308",secondaryActive:"#ca8a04",text:"#1f2937",textInverse:"#ffffff",background:"#ffffff",border:"#e5e5e5",success:"#10b981",warning:"#efe63f",error:"#ef4444"},spacing:{xs:"4px",sm:"8px",md:"16px",lg:"24px",xl:"32px",xxl:"48px"},borderRadius:{sm:"4px",md:"8px",lg:"16px",xl:"24px"},shadows:{sm:"0 2px 4px rgba(0, 0, 0, 0.1)",md:"0 4px 8px rgba(0, 0, 0, 0.15)",lg:"0 8px 16px rgba(0, 0, 0, 0.2)",xl:"0 16px 32px rgba(0, 0, 0, 0.25)"},typography:{fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',fontFamilyHeading:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',fontSizeXs:"12px",fontSizeSm:"14px",fontSizeMd:"16px",fontSizeLg:"18px",fontSizeXl:"24px",fontWeightNormal:"400",fontWeightMedium:"500",fontWeightBold:"700",lineHeightTight:"1.25",lineHeightNormal:"1.5",lineHeightRelaxed:"1.75"},buttons:{borderRadius:"8px",padding:"12px 24px",fontSize:"16px",fontWeight:"500",general:{background:"#2e6bf0",backgroundHover:"#1e40af",backgroundActive:"#1e3a8a",color:"#ffffff",colorHover:"#ffffff",border:"#2e6bf0",borderHover:"#1e40af",shadow:"0 2px 4px rgba(46, 107, 240, 0.2)"},cta:{background:"#efe63f",backgroundHover:"#eab308",backgroundActive:"#ca8a04",color:"#1f2937",colorHover:"#1f2937",border:"#efe63f",borderHover:"#eab308",shadow:"0 4px 8px rgba(239, 230, 63, 0.3)"},secondary:{background:"transparent",backgroundHover:"#2e6bf0",backgroundActive:"#1e40af",color:"#2e6bf0",colorHover:"#ffffff",border:"#2e6bf0",borderHover:"#2e6bf0",shadow:"none"},outline:{background:"transparent",backgroundHover:"#f8f9fa",backgroundActive:"#e9ecef",color:"#333333",colorHover:"#333333",border:"#e5e5e5",borderHover:"#d1d5db",shadow:"none"},ghost:{background:"transparent",backgroundHover:"#f8f9fa",backgroundActive:"#e9ecef",color:"#333333",colorHover:"#333333",border:"transparent",borderHover:"transparent",shadow:"none"}},components:{card:{background:"#ffffff",border:"1px solid #e5e5e5",borderRadius:"8px",shadow:"0 2px 4px rgba(0, 0, 0, 0.1)",padding:"24px"},header:{background:"#ffffff",borderBottom:"1px solid #e5e5e5",height:"64px",padding:"0 24px"},cta:{background:"#1e40af",borderRadius:"16px",padding:"32px"}}};var w=Object.freeze({__proto__:null,defaultTheme:$});const _=Object.assign(Object.assign({},$),{name:"advisors-plus",colors:Object.assign(Object.assign({},$.colors),{primary:"#1e2a78",primaryHover:"#151f5c",primaryActive:"#0f1640",secondary:"#4f46e5",secondaryHover:"#4338ca",secondaryActive:"#3730a3",text:"#1f2937",background:"#f8fafc"}),buttons:Object.assign(Object.assign({},$.buttons),{borderRadius:"8px",general:{background:"#1e2a78",backgroundHover:"#151f5c",backgroundActive:"#0f1640",color:"#ffffff",colorHover:"#ffffff",border:"#1e2a78",borderHover:"#151f5c",shadow:"0 2px 6px rgba(30, 42, 120, 0.25)"},cta:{background:"#4f46e5",backgroundHover:"#4338ca",backgroundActive:"#3730a3",color:"#ffffff",colorHover:"#ffffff",border:"#4f46e5",borderHover:"#4338ca",shadow:"0 3px 6px rgba(79, 70, 229, 0.3)"},secondary:{background:"transparent",backgroundHover:"#1e2a78",backgroundActive:"#151f5c",color:"#1e2a78",colorHover:"#ffffff",border:"#1e2a78",borderHover:"#1e2a78",shadow:"none"}}),components:Object.assign(Object.assign({},$.components),{cta:{background:"#1e2a78",borderRadius:"16px",padding:"32px"}})});var N=Object.freeze({__proto__:null,advisorsPlusTheme:_});const S=Object.assign(Object.assign({},$),{name:"primax",colors:Object.assign(Object.assign({},$.colors),{primary:"#0066cc",primaryHover:"#0052a3",primaryActive:"#003d7a",secondary:"#ff6600",secondaryHover:"#e55a00",secondaryActive:"#cc4f00"}),buttons:Object.assign(Object.assign({},$.buttons),{borderRadius:"8px",general:{background:"#0066cc",backgroundHover:"#0052a3",backgroundActive:"#003d7a",color:"#ffffff",colorHover:"#ffffff",border:"#0066cc",borderHover:"#0052a3",shadow:"0 2px 4px rgba(0, 102, 204, 0.2)"},cta:{background:"#ff6600",backgroundHover:"#e55a00",backgroundActive:"#cc4f00",color:"#ffffff",colorHover:"#ffffff",border:"#ff6600",borderHover:"#e55a00",shadow:"0 4px 8px rgba(255, 102, 0, 0.3)"},secondary:{background:"transparent",backgroundHover:"#0066cc",backgroundActive:"#0052a3",color:"#0066cc",colorHover:"#ffffff",border:"#0066cc",borderHover:"#0066cc",shadow:"none"}}),components:Object.assign(Object.assign({},$.components),{cta:{background:"#003d7a",borderRadius:"0px 0px 50px 50px",padding:"54px 60px 0px 30px"}})});var H=Object.freeze({__proto__:null,primaxTheme:S});function O(e,r=":root"){const o=[];return o.push(" /* Colors */"),o.push(` --primary-color: ${e.colors.primary};`),o.push(` --primary-color-hover: ${e.colors.primaryHover};`),o.push(` --primary-color-active: ${e.colors.primaryActive};`),o.push(` --secondary-color: ${e.colors.secondary};`),o.push(` --secondary-color-hover: ${e.colors.secondaryHover};`),o.push(` --secondary-color-active: ${e.colors.secondaryActive};`),o.push(` --text-color: ${e.colors.text};`),o.push(` --text-color-inverse: ${e.colors.textInverse};`),o.push(` --background-color: ${e.colors.background};`),o.push(` --border-color: ${e.colors.border};`),o.push(` --success-color: ${e.colors.success};`),o.push(` --warning-color: ${e.colors.warning};`),o.push(` --error-color: ${e.colors.error};`),o.push("\n /* Spacing */"),o.push(` --spacing-xs: ${e.spacing.xs};`),o.push(` --spacing-sm: ${e.spacing.sm};`),o.push(` --spacing-md: ${e.spacing.md};`),o.push(` --spacing-lg: ${e.spacing.lg};`),o.push(` --spacing-xl: ${e.spacing.xl};`),o.push(` --spacing-xxl: ${e.spacing.xxl};`),o.push("\n /* Border Radius */"),o.push(` --border-radius-sm: ${e.borderRadius.sm};`),o.push(` --border-radius-md: ${e.borderRadius.md};`),o.push(` --border-radius-lg: ${e.borderRadius.lg};`),o.push(` --border-radius-xl: ${e.borderRadius.xl};`),o.push("\n /* Shadows */"),o.push(` --shadow-sm: ${e.shadows.sm};`),o.push(` --shadow-md: ${e.shadows.md};`),o.push(` --shadow-lg: ${e.shadows.lg};`),o.push(` --shadow-xl: ${e.shadows.xl};`),o.push("\n /* Typography */"),o.push(` --font-family: ${e.typography.fontFamily};`),o.push(` --font-family-heading: ${e.typography.fontFamilyHeading};`),o.push(` --font-size-xs: ${e.typography.fontSizeXs};`),o.push(` --font-size-sm: ${e.typography.fontSizeSm};`),o.push(` --font-size-md: ${e.typography.fontSizeMd};`),o.push(` --font-size-lg: ${e.typography.fontSizeLg};`),o.push(` --font-size-xl: ${e.typography.fontSizeXl};`),o.push(` --font-weight-normal: ${e.typography.fontWeightNormal};`),o.push(` --font-weight-medium: ${e.typography.fontWeightMedium};`),o.push(` --font-weight-bold: ${e.typography.fontWeightBold};`),o.push(` --line-height-tight: ${e.typography.lineHeightTight};`),o.push(` --line-height-normal: ${e.typography.lineHeightNormal};`),o.push(` --line-height-relaxed: ${e.typography.lineHeightRelaxed};`),o.push("\n /* Button Base */"),o.push(` --button-border-radius: ${e.buttons.borderRadius};`),o.push(` --button-padding: ${e.buttons.padding};`),o.push(` --button-font-size: ${e.buttons.fontSize};`),o.push(` --button-font-weight: ${e.buttons.fontWeight};`),o.push("\n /* Button - General */"),o.push(` --button-general-bg: ${e.buttons.general.background};`),o.push(` --button-general-bg-hover: ${e.buttons.general.backgroundHover};`),o.push(` --button-general-bg-active: ${e.buttons.general.backgroundActive};`),o.push(` --button-general-color: ${e.buttons.general.color};`),o.push(` --button-general-color-hover: ${e.buttons.general.colorHover};`),o.push(` --button-general-border: ${e.buttons.general.border};`),o.push(` --button-general-border-hover: ${e.buttons.general.borderHover};`),o.push(` --button-general-shadow: ${e.buttons.general.shadow};`),o.push("\n /* Button - CTA */"),o.push(` --button-cta-bg: ${e.buttons.cta.background};`),o.push(` --button-cta-bg-hover: ${e.buttons.cta.backgroundHover};`),o.push(` --button-cta-bg-active: ${e.buttons.cta.backgroundActive};`),o.push(` --button-cta-color: ${e.buttons.cta.color};`),o.push(` --button-cta-color-hover: ${e.buttons.cta.colorHover};`),o.push(` --button-cta-border: ${e.buttons.cta.border};`),o.push(` --button-cta-border-hover: ${e.buttons.cta.borderHover};`),o.push(` --button-cta-shadow: ${e.buttons.cta.shadow};`),o.push("\n /* Button - Secondary */"),o.push(` --button-secondary-bg: ${e.buttons.secondary.background};`),o.push(` --button-secondary-bg-hover: ${e.buttons.secondary.backgroundHover};`),o.push(` --button-secondary-bg-active: ${e.buttons.secondary.backgroundActive};`),o.push(` --button-secondary-color: ${e.buttons.secondary.color};`),o.push(` --button-secondary-color-hover: ${e.buttons.secondary.colorHover};`),o.push(` --button-secondary-border: ${e.buttons.secondary.border};`),o.push(` --button-secondary-border-hover: ${e.buttons.secondary.borderHover};`),o.push(` --button-secondary-shadow: ${e.buttons.secondary.shadow};`),o.push("\n /* Card Component */"),o.push(` --card-background: ${e.components.card.background};`),o.push(` --card-border: ${e.components.card.border};`),o.push(` --card-border-radius: ${e.components.card.borderRadius};`),o.push(` --card-shadow: ${e.components.card.shadow};`),o.push(` --card-padding: ${e.components.card.padding};`),o.push("\n /* Header Component */"),o.push(` --header-background: ${e.components.header.background};`),o.push(` --header-border-bottom: ${e.components.header.borderBottom};`),o.push(` --header-height: ${e.components.header.height};`),o.push(` --header-padding: ${e.components.header.padding};`),o.push("\n /* CTA Component */"),o.push(` --content-container-bg: ${e.components.cta.background};`),o.push(` --content-container-border-radius: ${e.components.cta.borderRadius};`),o.push(` --content-container-padding: ${e.components.cta.padding};`),`${r} {\n${o.join("\n")}\n}`}function T(e,r){const o=O(e,r?`[data-theme="${r}"]`:":root"),t=document.getElementById(`theme-${e.name}`);t&&t.remove();const n=document.createElement("style");n.id=`theme-${e.name}`,n.textContent=o,document.head.appendChild(n)}function A(e){document.documentElement.setAttribute("data-theme",e)}const R=r(void 0);function C({children:e,initialTheme:r=$,initialThemeName:n="default",themes:a={default:$}}){const[s,c]=o(r),[i,l]=o(n),[d,u]=o(a),p=(e,r="custom")=>{c(e),l(r),T(e,r),A(r)};t(()=>{T(s,i),A(i)},[]);const f={currentTheme:s,themeName:i,setTheme:p,switchTheme:e=>{const r=d[e];r?p(r,e):console.warn(`Theme "${e}" not found`)},registerTheme:(e,r)=>{u(o=>Object.assign(Object.assign({},o),{[e]:r}))},availableThemes:d};return b.jsx(R.Provider,{value:f,children:e})}function z(){const e=n(R);if(!e)throw new Error("useTheme must be used within a ThemeProvider");return e}const E={default:()=>Promise.resolve().then(function(){return w}).then(e=>e.defaultTheme),"advisors-plus":()=>Promise.resolve().then(function(){return N}).then(e=>e.advisorsPlusTheme),primax:()=>Promise.resolve().then(function(){return H}).then(e=>e.primaxTheme)};async function P(e){const r=E[e];if(!r)throw new Error(`Theme "${e}" not found`);return await r()}export{m as BackgroundMedia,f as Button,h as ButtonLink,k as CTA,x as Card,v as Header,y as Heading,j as Page,g as TextLink,C as ThemeProvider,_ as advisorsPlusTheme,T as applyTheme,$ as defaultTheme,O as generateThemeCSS,P as loadTheme,S as primaxTheme,A as setThemeAttribute,E as themes,z as useTheme};
11
11
  //# sourceMappingURL=index.esm.js.map