@inf-monkeys-tech/monkeys-design 0.4.42 → 0.4.44

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.
@@ -83,6 +83,16 @@ interface LoginPageCalloutConfig {
83
83
  onClick: () => void;
84
84
  };
85
85
  }
86
+ interface LoginPageExternalPanelConfig {
87
+ title?: React__default.ReactNode;
88
+ description?: React__default.ReactNode;
89
+ content: React__default.ReactNode;
90
+ footer?: React__default.ReactNode;
91
+ backAction?: {
92
+ label: React__default.ReactNode;
93
+ onClick: () => void;
94
+ };
95
+ }
86
96
  interface LoginPageProps {
87
97
  className?: string;
88
98
  style?: React__default.CSSProperties;
@@ -104,96 +114,10 @@ interface LoginPageProps {
104
114
  onMethodChange?: (methodId: string) => void;
105
115
  externalLabel?: React__default.ReactNode;
106
116
  externalMethods?: LoginPageExternalMethodConfig[];
117
+ externalPanel?: LoginPageExternalPanelConfig;
107
118
  callout?: LoginPageCalloutConfig;
108
119
  }
109
- interface LoginLayoutProps {
110
- className?: string;
111
- style?: React__default.CSSProperties;
112
- children?: React__default.ReactNode;
113
- /** Logo element or image URL */
114
- logo?: React__default.ReactNode | string;
115
- /** Title text */
116
- title?: string;
117
- /** Subtitle text */
118
- subtitle?: string;
119
- /** Footer text */
120
- footer?: string;
121
- }
122
- interface EmailAuthProps {
123
- className?: string;
124
- /** Controlled email value */
125
- email: string;
126
- onEmailChange: (value: string) => void;
127
- /** Controlled password value */
128
- password: string;
129
- onPasswordChange: (value: string) => void;
130
- /** Submit handler */
131
- onSubmit: () => void;
132
- /** Loading state */
133
- isLoading?: boolean;
134
- /** Disable the form */
135
- disabled?: boolean;
136
- /** Labels */
137
- emailLabel?: string;
138
- emailPlaceholder?: string;
139
- passwordLabel?: string;
140
- passwordPlaceholder?: string;
141
- submitText?: string;
142
- loadingText?: string;
143
- /** Error message to display */
144
- error?: string;
145
- }
146
- interface OIDCButtonProps {
147
- className?: string;
148
- /** Button label */
149
- label?: string;
150
- /** Click handler - should redirect to OIDC login URL */
151
- onClick: () => void;
152
- /** Optional icon */
153
- icon?: React__default.ReactNode;
154
- }
155
- interface OAuthButtonProps {
156
- className?: string;
157
- /** Provider name for display */
158
- providerName: string;
159
- /** Provider type identifier */
160
- providerType: 'feishu' | 'dingtalk' | 'wework' | string;
161
- /** Click handler */
162
- onClick: () => void;
163
- /** Optional icon */
164
- icon?: React__default.ReactNode;
165
- }
166
- interface AuthDividerProps {
167
- className?: string;
168
- /** Text to show in the divider */
169
- text?: string;
170
- }
171
- interface PendingApprovalProps {
172
- className?: string;
173
- /** Icon to display */
174
- icon?: React__default.ReactNode;
175
- /** Title text */
176
- title?: string;
177
- /** Description text */
178
- description?: string;
179
- /** Back button text */
180
- backText?: string;
181
- /** Back button handler */
182
- onBack?: () => void;
183
- }
184
-
185
- declare function LoginPage({ className, style, background, logo, primaryColor, radius, customCss, toolbar, title, backAction, methods, activeMethodId, defaultMethodId, onMethodChange, externalLabel, externalMethods, callout, }: LoginPageProps): react_jsx_runtime.JSX.Element;
186
-
187
- declare const LoginLayout: React__default.FC<LoginLayoutProps>;
188
-
189
- declare const EmailAuth: React__default.ForwardRefExoticComponent<EmailAuthProps & React__default.RefAttributes<HTMLFormElement>>;
190
-
191
- declare const OIDCButton: React__default.ForwardRefExoticComponent<OIDCButtonProps & React__default.RefAttributes<HTMLButtonElement>>;
192
-
193
- declare const OAuthButton: React__default.ForwardRefExoticComponent<OAuthButtonProps & React__default.RefAttributes<HTMLButtonElement>>;
194
-
195
- declare const AuthDivider: React__default.FC<AuthDividerProps>;
196
120
 
197
- declare const PendingApproval: React__default.FC<PendingApprovalProps>;
121
+ declare function LoginPage({ className, style, background, logo, primaryColor, radius, customCss, toolbar, title, backAction, methods, activeMethodId, defaultMethodId, onMethodChange, externalLabel, externalMethods, externalPanel, callout, }: LoginPageProps): react_jsx_runtime.JSX.Element;
198
122
 
199
- export { AuthDivider, type AuthDividerProps, EmailAuth, type EmailAuthProps, LoginLayout, type LoginLayoutProps, LoginPage, type LoginPageBackgroundConfig, type LoginPageCalloutConfig, type LoginPageCheckboxConfig, type LoginPageExternalMethodConfig, type LoginPageFieldConfig, type LoginPageLogoConfig, type LoginPageLogoLocation, type LoginPageMethodConfig, type LoginPageProps, OAuthButton, type OAuthButtonProps, OIDCButton, type OIDCButtonProps, PendingApproval, type PendingApprovalProps };
123
+ export { LoginPage, type LoginPageBackgroundConfig, type LoginPageCalloutConfig, type LoginPageCheckboxConfig, type LoginPageExternalMethodConfig, type LoginPageExternalPanelConfig, type LoginPageFieldConfig, type LoginPageLogoConfig, type LoginPageLogoLocation, type LoginPageMethodConfig, type LoginPageProps };
@@ -83,6 +83,16 @@ interface LoginPageCalloutConfig {
83
83
  onClick: () => void;
84
84
  };
85
85
  }
86
+ interface LoginPageExternalPanelConfig {
87
+ title?: React__default.ReactNode;
88
+ description?: React__default.ReactNode;
89
+ content: React__default.ReactNode;
90
+ footer?: React__default.ReactNode;
91
+ backAction?: {
92
+ label: React__default.ReactNode;
93
+ onClick: () => void;
94
+ };
95
+ }
86
96
  interface LoginPageProps {
87
97
  className?: string;
88
98
  style?: React__default.CSSProperties;
@@ -104,96 +114,10 @@ interface LoginPageProps {
104
114
  onMethodChange?: (methodId: string) => void;
105
115
  externalLabel?: React__default.ReactNode;
106
116
  externalMethods?: LoginPageExternalMethodConfig[];
117
+ externalPanel?: LoginPageExternalPanelConfig;
107
118
  callout?: LoginPageCalloutConfig;
108
119
  }
109
- interface LoginLayoutProps {
110
- className?: string;
111
- style?: React__default.CSSProperties;
112
- children?: React__default.ReactNode;
113
- /** Logo element or image URL */
114
- logo?: React__default.ReactNode | string;
115
- /** Title text */
116
- title?: string;
117
- /** Subtitle text */
118
- subtitle?: string;
119
- /** Footer text */
120
- footer?: string;
121
- }
122
- interface EmailAuthProps {
123
- className?: string;
124
- /** Controlled email value */
125
- email: string;
126
- onEmailChange: (value: string) => void;
127
- /** Controlled password value */
128
- password: string;
129
- onPasswordChange: (value: string) => void;
130
- /** Submit handler */
131
- onSubmit: () => void;
132
- /** Loading state */
133
- isLoading?: boolean;
134
- /** Disable the form */
135
- disabled?: boolean;
136
- /** Labels */
137
- emailLabel?: string;
138
- emailPlaceholder?: string;
139
- passwordLabel?: string;
140
- passwordPlaceholder?: string;
141
- submitText?: string;
142
- loadingText?: string;
143
- /** Error message to display */
144
- error?: string;
145
- }
146
- interface OIDCButtonProps {
147
- className?: string;
148
- /** Button label */
149
- label?: string;
150
- /** Click handler - should redirect to OIDC login URL */
151
- onClick: () => void;
152
- /** Optional icon */
153
- icon?: React__default.ReactNode;
154
- }
155
- interface OAuthButtonProps {
156
- className?: string;
157
- /** Provider name for display */
158
- providerName: string;
159
- /** Provider type identifier */
160
- providerType: 'feishu' | 'dingtalk' | 'wework' | string;
161
- /** Click handler */
162
- onClick: () => void;
163
- /** Optional icon */
164
- icon?: React__default.ReactNode;
165
- }
166
- interface AuthDividerProps {
167
- className?: string;
168
- /** Text to show in the divider */
169
- text?: string;
170
- }
171
- interface PendingApprovalProps {
172
- className?: string;
173
- /** Icon to display */
174
- icon?: React__default.ReactNode;
175
- /** Title text */
176
- title?: string;
177
- /** Description text */
178
- description?: string;
179
- /** Back button text */
180
- backText?: string;
181
- /** Back button handler */
182
- onBack?: () => void;
183
- }
184
-
185
- declare function LoginPage({ className, style, background, logo, primaryColor, radius, customCss, toolbar, title, backAction, methods, activeMethodId, defaultMethodId, onMethodChange, externalLabel, externalMethods, callout, }: LoginPageProps): react_jsx_runtime.JSX.Element;
186
-
187
- declare const LoginLayout: React__default.FC<LoginLayoutProps>;
188
-
189
- declare const EmailAuth: React__default.ForwardRefExoticComponent<EmailAuthProps & React__default.RefAttributes<HTMLFormElement>>;
190
-
191
- declare const OIDCButton: React__default.ForwardRefExoticComponent<OIDCButtonProps & React__default.RefAttributes<HTMLButtonElement>>;
192
-
193
- declare const OAuthButton: React__default.ForwardRefExoticComponent<OAuthButtonProps & React__default.RefAttributes<HTMLButtonElement>>;
194
-
195
- declare const AuthDivider: React__default.FC<AuthDividerProps>;
196
120
 
197
- declare const PendingApproval: React__default.FC<PendingApprovalProps>;
121
+ declare function LoginPage({ className, style, background, logo, primaryColor, radius, customCss, toolbar, title, backAction, methods, activeMethodId, defaultMethodId, onMethodChange, externalLabel, externalMethods, externalPanel, callout, }: LoginPageProps): react_jsx_runtime.JSX.Element;
198
122
 
199
- export { AuthDivider, type AuthDividerProps, EmailAuth, type EmailAuthProps, LoginLayout, type LoginLayoutProps, LoginPage, type LoginPageBackgroundConfig, type LoginPageCalloutConfig, type LoginPageCheckboxConfig, type LoginPageExternalMethodConfig, type LoginPageFieldConfig, type LoginPageLogoConfig, type LoginPageLogoLocation, type LoginPageMethodConfig, type LoginPageProps, OAuthButton, type OAuthButtonProps, OIDCButton, type OIDCButtonProps, PendingApproval, type PendingApprovalProps };
123
+ export { LoginPage, type LoginPageBackgroundConfig, type LoginPageCalloutConfig, type LoginPageCheckboxConfig, type LoginPageExternalMethodConfig, type LoginPageExternalPanelConfig, type LoginPageFieldConfig, type LoginPageLogoConfig, type LoginPageLogoLocation, type LoginPageMethodConfig, type LoginPageProps };
@@ -179,6 +179,7 @@ function LoginPage({
179
179
  onMethodChange,
180
180
  externalLabel,
181
181
  externalMethods = [],
182
+ externalPanel,
182
183
  callout
183
184
  }) {
184
185
  const availableMethods = React.useMemo(() => methods.filter((method) => !method.hidden), [methods]);
@@ -331,7 +332,24 @@ function LoginPage({
331
332
  method.id
332
333
  );
333
334
  }) }) : null,
334
- activeMethod ? /* @__PURE__ */ jsxRuntime.jsxs(
335
+ externalPanel ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "login-page__external-panel", "data-login-part": "external-panel", children: [
336
+ externalPanel.title ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "login-page__external-panel-title", "data-login-part": "external-panel-title", children: externalPanel.title }) : null,
337
+ externalPanel.description ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "login-page__external-panel-description", "data-login-part": "external-panel-description", children: externalPanel.description }) : null,
338
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "login-page__external-panel-content", "data-login-part": "external-panel-content", children: externalPanel.content }),
339
+ externalPanel.footer || externalPanel.backAction ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "login-page__external-panel-footer", "data-login-part": "external-panel-footer", children: [
340
+ externalPanel.footer,
341
+ externalPanel.backAction ? /* @__PURE__ */ jsxRuntime.jsx(
342
+ "button",
343
+ {
344
+ type: "button",
345
+ className: "login-page__external-panel-back",
346
+ "data-login-part": "external-panel-back",
347
+ onClick: externalPanel.backAction.onClick,
348
+ children: externalPanel.backAction.label
349
+ }
350
+ ) : null
351
+ ] }) : null
352
+ ] }) : activeMethod ? /* @__PURE__ */ jsxRuntime.jsxs(
335
353
  "form",
336
354
  {
337
355
  className: "login-page__form-fields",
@@ -425,7 +443,7 @@ function LoginPage({
425
443
  ]
426
444
  }
427
445
  ) : null,
428
- externalMethods.length ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "login-page__oauth-section", "data-login-part": "external-methods", children: [
446
+ !externalPanel && externalMethods.length ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "login-page__oauth-section", "data-login-part": "external-methods", children: [
429
447
  externalLabel ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "login-page__oauth-label", "data-login-part": "external-label", children: externalLabel }) : null,
430
448
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "login-page__oauth-list", "data-login-part": "external-list", children: externalMethods.map(renderExternalMethod) })
431
449
  ] }) : null
@@ -436,309 +454,7 @@ function LoginPage({
436
454
  }
437
455
  );
438
456
  }
439
- var containerStyle = {
440
- display: "flex",
441
- alignItems: "center",
442
- justifyContent: "center",
443
- minHeight: "100vh",
444
- padding: "1rem"
445
- };
446
- var cardStyle = {
447
- width: "100%",
448
- maxWidth: "400px"
449
- };
450
- var logoContainerStyle = {
451
- display: "flex",
452
- justifyContent: "center",
453
- marginBottom: "1.5rem"
454
- };
455
- var logoImageStyle = {
456
- height: "48px",
457
- width: "auto"
458
- };
459
- var titleStyle = {
460
- fontSize: "1.5rem",
461
- fontWeight: 700,
462
- textAlign: "center",
463
- marginBottom: "0.5rem",
464
- lineHeight: 1.2
465
- };
466
- var subtitleStyle = {
467
- fontSize: "0.875rem",
468
- textAlign: "center",
469
- marginBottom: "1.5rem",
470
- opacity: 0.6
471
- };
472
- var footerStyle = {
473
- fontSize: "0.75rem",
474
- textAlign: "center",
475
- marginTop: "2rem",
476
- opacity: 0.4
477
- };
478
- var LoginLayout = ({
479
- className,
480
- style,
481
- children,
482
- logo,
483
- title,
484
- subtitle,
485
- footer
486
- }) => {
487
- const renderLogo = () => {
488
- if (!logo) return null;
489
- if (typeof logo === "string") {
490
- return /* @__PURE__ */ jsxRuntime.jsx("div", { style: logoContainerStyle, children: /* @__PURE__ */ jsxRuntime.jsx("img", { src: logo, alt: title || "Logo", style: logoImageStyle }) });
491
- }
492
- return /* @__PURE__ */ jsxRuntime.jsx("div", { style: logoContainerStyle, children: logo });
493
- };
494
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className, style: { ...containerStyle, ...style }, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { style: cardStyle, children: [
495
- renderLogo(),
496
- title && /* @__PURE__ */ jsxRuntime.jsx("h1", { style: titleStyle, children: title }),
497
- subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { style: subtitleStyle, children: subtitle }),
498
- children,
499
- footer && /* @__PURE__ */ jsxRuntime.jsx("p", { style: footerStyle, children: footer })
500
- ] }) });
501
- };
502
- var formStyle = {
503
- display: "flex",
504
- flexDirection: "column",
505
- gap: "1rem"
506
- };
507
- var labelStyle = {
508
- display: "block",
509
- fontSize: "0.875rem",
510
- fontWeight: 500,
511
- marginBottom: "0.375rem"
512
- };
513
- var inputStyle = {
514
- display: "block",
515
- width: "100%",
516
- padding: "0.5rem 0.75rem",
517
- fontSize: "0.875rem",
518
- lineHeight: 1.5,
519
- backgroundColor: "transparent",
520
- border: "1px solid #d1d5db",
521
- borderRadius: "0.375rem",
522
- outline: "none",
523
- boxSizing: "border-box"
524
- };
525
- var buttonStyle = {
526
- display: "inline-flex",
527
- alignItems: "center",
528
- justifyContent: "center",
529
- width: "100%",
530
- padding: "0.625rem 1rem",
531
- fontSize: "0.875rem",
532
- fontWeight: 500,
533
- color: "#ffffff",
534
- backgroundColor: "#111827",
535
- border: "none",
536
- borderRadius: "0.375rem",
537
- cursor: "pointer",
538
- lineHeight: 1.5
539
- };
540
- var buttonDisabledStyle = {
541
- ...buttonStyle,
542
- opacity: 0.6,
543
- cursor: "not-allowed"
544
- };
545
- var errorStyle = {
546
- fontSize: "0.875rem",
547
- color: "#dc2626",
548
- marginTop: "-0.25rem"
549
- };
550
- var EmailAuth = React__default.default.forwardRef(
551
- ({
552
- className,
553
- email,
554
- onEmailChange,
555
- password,
556
- onPasswordChange,
557
- onSubmit,
558
- isLoading = false,
559
- disabled = false,
560
- emailLabel = "Email",
561
- emailPlaceholder = "Enter your email",
562
- passwordLabel = "Password",
563
- passwordPlaceholder = "Enter your password",
564
- submitText = "Sign In",
565
- loadingText = "Signing in...",
566
- error
567
- }, ref) => {
568
- const handleSubmit = React.useCallback(
569
- (e) => {
570
- e.preventDefault();
571
- if (!isLoading && !disabled) {
572
- onSubmit();
573
- }
574
- },
575
- [onSubmit, isLoading, disabled]
576
- );
577
- const isDisabled = isLoading || disabled;
578
- return /* @__PURE__ */ jsxRuntime.jsxs("form", { ref, className, style: formStyle, onSubmit: handleSubmit, children: [
579
- /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
580
- /* @__PURE__ */ jsxRuntime.jsx("label", { style: labelStyle, children: emailLabel }),
581
- /* @__PURE__ */ jsxRuntime.jsx(
582
- "input",
583
- {
584
- type: "email",
585
- value: email,
586
- onChange: (e) => onEmailChange(e.target.value),
587
- placeholder: emailPlaceholder,
588
- disabled: isDisabled,
589
- required: true,
590
- autoComplete: "email",
591
- style: inputStyle
592
- }
593
- )
594
- ] }),
595
- /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
596
- /* @__PURE__ */ jsxRuntime.jsx("label", { style: labelStyle, children: passwordLabel }),
597
- /* @__PURE__ */ jsxRuntime.jsx(
598
- "input",
599
- {
600
- type: "password",
601
- value: password,
602
- onChange: (e) => onPasswordChange(e.target.value),
603
- placeholder: passwordPlaceholder,
604
- disabled: isDisabled,
605
- required: true,
606
- autoComplete: "current-password",
607
- style: inputStyle
608
- }
609
- )
610
- ] }),
611
- error && /* @__PURE__ */ jsxRuntime.jsx("p", { style: errorStyle, children: error }),
612
- /* @__PURE__ */ jsxRuntime.jsx("button", { type: "submit", disabled: isDisabled, style: isDisabled ? buttonDisabledStyle : buttonStyle, children: isLoading ? loadingText : submitText })
613
- ] });
614
- }
615
- );
616
- EmailAuth.displayName = "EmailAuth";
617
- var buttonStyle2 = {
618
- display: "inline-flex",
619
- alignItems: "center",
620
- justifyContent: "center",
621
- gap: "0.5rem",
622
- width: "100%",
623
- padding: "0.625rem 1rem",
624
- fontSize: "0.875rem",
625
- fontWeight: 500,
626
- backgroundColor: "transparent",
627
- border: "1px solid #d1d5db",
628
- borderRadius: "0.375rem",
629
- cursor: "pointer",
630
- lineHeight: 1.5
631
- };
632
- var OIDCButton = React__default.default.forwardRef(
633
- ({ className, label = "Sign in with SSO", onClick, icon }, ref) => {
634
- return /* @__PURE__ */ jsxRuntime.jsxs("button", { ref, type: "button", className, style: buttonStyle2, onClick, children: [
635
- icon && /* @__PURE__ */ jsxRuntime.jsx("span", { style: { display: "inline-flex", alignItems: "center" }, children: icon }),
636
- label
637
- ] });
638
- }
639
- );
640
- OIDCButton.displayName = "OIDCButton";
641
- var buttonStyle3 = {
642
- display: "inline-flex",
643
- alignItems: "center",
644
- justifyContent: "center",
645
- gap: "0.5rem",
646
- width: "100%",
647
- padding: "0.625rem 1rem",
648
- fontSize: "0.875rem",
649
- fontWeight: 500,
650
- backgroundColor: "transparent",
651
- border: "1px solid #d1d5db",
652
- borderRadius: "0.375rem",
653
- cursor: "pointer",
654
- lineHeight: 1.5
655
- };
656
- var OAuthButton = React__default.default.forwardRef(
657
- ({ className, providerName, onClick, icon }, ref) => {
658
- return /* @__PURE__ */ jsxRuntime.jsxs("button", { ref, type: "button", className, style: buttonStyle3, onClick, children: [
659
- icon && /* @__PURE__ */ jsxRuntime.jsx("span", { style: { display: "inline-flex", alignItems: "center" }, children: icon }),
660
- providerName
661
- ] });
662
- }
663
- );
664
- OAuthButton.displayName = "OAuthButton";
665
- var containerStyle2 = {
666
- display: "flex",
667
- alignItems: "center",
668
- gap: "0.75rem",
669
- margin: "1rem 0"
670
- };
671
- var lineStyle = {
672
- flex: 1,
673
- height: "1px",
674
- backgroundColor: "#e5e7eb"
675
- };
676
- var textStyle = {
677
- fontSize: "0.75rem",
678
- opacity: 0.5,
679
- whiteSpace: "nowrap"
680
- };
681
- var AuthDivider = ({ className, text = "or" }) => {
682
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className, style: containerStyle2, children: [
683
- /* @__PURE__ */ jsxRuntime.jsx("div", { style: lineStyle }),
684
- /* @__PURE__ */ jsxRuntime.jsx("span", { style: textStyle, children: text }),
685
- /* @__PURE__ */ jsxRuntime.jsx("div", { style: lineStyle })
686
- ] });
687
- };
688
- var containerStyle3 = {
689
- display: "flex",
690
- flexDirection: "column",
691
- alignItems: "center",
692
- textAlign: "center",
693
- padding: "1.5rem 0",
694
- gap: "1rem"
695
- };
696
- var titleStyle2 = {
697
- fontSize: "1.125rem",
698
- fontWeight: 600,
699
- margin: 0
700
- };
701
- var descriptionStyle = {
702
- fontSize: "0.875rem",
703
- opacity: 0.6,
704
- lineHeight: 1.5,
705
- margin: 0
706
- };
707
- var backButtonStyle = {
708
- display: "inline-flex",
709
- alignItems: "center",
710
- justifyContent: "center",
711
- padding: "0.5rem 1.5rem",
712
- fontSize: "0.875rem",
713
- fontWeight: 500,
714
- backgroundColor: "transparent",
715
- border: "1px solid #d1d5db",
716
- borderRadius: "0.375rem",
717
- cursor: "pointer",
718
- marginTop: "0.5rem"
719
- };
720
- var PendingApproval = ({
721
- className,
722
- icon,
723
- title = "Pending Approval",
724
- description = "Your account is awaiting administrator approval. Please check back later.",
725
- backText = "Go Back",
726
- onBack
727
- }) => {
728
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className, style: containerStyle3, children: [
729
- icon,
730
- /* @__PURE__ */ jsxRuntime.jsx("h2", { style: titleStyle2, children: title }),
731
- /* @__PURE__ */ jsxRuntime.jsx("p", { style: descriptionStyle, children: description }),
732
- onBack && /* @__PURE__ */ jsxRuntime.jsx("button", { type: "button", style: backButtonStyle, onClick: onBack, children: backText })
733
- ] });
734
- };
735
457
 
736
- exports.AuthDivider = AuthDivider;
737
- exports.EmailAuth = EmailAuth;
738
- exports.LoginLayout = LoginLayout;
739
458
  exports.LoginPage = LoginPage;
740
- exports.OAuthButton = OAuthButton;
741
- exports.OIDCButton = OIDCButton;
742
- exports.PendingApproval = PendingApproval;
743
459
  //# sourceMappingURL=index.js.map
744
460
  //# sourceMappingURL=index.js.map