@digiform/wizard 0.3.6 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{ui/src/component-registry → core/src/registry}/renderComponent.js +1 -1
- package/{ui/src/lib → core/src/utils}/logger.js +2 -1
- package/features/form-runtime/ComponentAdapterComplete/ComponentAdapterComplete.d.ts +1 -2
- package/features/form-runtime/components/renderers/InteractiveFieldRenderer/InteractiveFieldRenderer.d.ts +2 -3
- package/package.json +1 -1
- package/renderer/RHCRenderer.d.ts +2 -0
- package/renderer/rhc-field-type-map.d.ts +5 -0
- package/renderer/rhc-selection.config.d.ts +0 -0
- package/styles.css +1 -1
- package/wizard/src/features/api-integration/components/EnhancedActionExecutor/EnhancedActionExecutor.js +1 -2
- package/wizard/src/features/form-runtime/ComponentAdapterComplete/ComponentAdapterComplete.js +4 -5
- package/wizard/src/features/form-runtime/FormWizard/FormWizard.js +35 -35
- package/wizard/src/features/form-runtime/components/FormFooter.js +18 -19
- package/wizard/src/features/form-runtime/components/FormHeader.js +3 -3
- package/wizard/src/features/form-runtime/components/FormStep/FormStep.js +1 -2
- package/wizard/src/features/form-runtime/utils/formDataBuilder.js +4 -5
- package/wizard/src/features/validation-system/validation/ActionValidation.js +7 -8
- package/wizard/src/renderer/RHCRenderer.js +117 -0
- package/wizard/src/renderer/rhc-field-type-map.js +23 -0
- package/renderer/wizardRenderer.d.ts +0 -2
- package/ui/src/components/checkbox/checkbox.js +0 -20
- package/ui/src/components/checkbox/checkbox.module.css.js +0 -10
- package/ui/src/components/input/input.js +0 -20
- package/ui/src/components/input/input.module.css.js +0 -8
- package/ui/src/components/radio-group/radio-group.js +0 -30
- package/ui/src/components/radio-group/radio-group.module.css.js +0 -14
- package/ui/src/components/select/select.js +0 -115
- package/ui/src/components/select/select.module.css.js +0 -32
- package/ui/src/components/textarea/textarea.js +0 -19
- package/ui/src/components/textarea/textarea.module.css.js +0 -8
- package/wizard/src/renderer/wizardRenderer.js +0 -123
- /package/{ui/src/lib → core/src}/providers/FormEditingContext.js +0 -0
- /package/{ui/src/theme/ThemeProvider.js → core/src/providers/ThemeContext.js} +0 -0
- /package/{ui/src/lib → core/src}/types/guards.js +0 -0
- /package/{ui/src/lib → core/src}/utils/componentUtils.js +0 -0
- /package/{ui/src/lib → core/src}/utils/templateDialogResolver.js +0 -0
|
@@ -99,8 +99,9 @@ const m = new f();
|
|
|
99
99
|
process.env.NODE_ENV === "development" && (m.setLevel(
|
|
100
100
|
0
|
|
101
101
|
/* DEBUG */
|
|
102
|
-
), console.log("
|
|
102
|
+
), console.log("Logger initialized in development mode with DEBUG level"));
|
|
103
103
|
export {
|
|
104
104
|
l as LogLevel,
|
|
105
|
+
f as Logger,
|
|
105
106
|
m as logger
|
|
106
107
|
};
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { FormErrors, ComponentConfig as FormWizardComponentConfig } from '../../../../../core/src/index.ts';
|
|
2
|
-
import { ComponentValue } from '../../../../../ui/src/index.ts';
|
|
1
|
+
import { FormErrors, ComponentConfig as FormWizardComponentConfig, ComponentValue } from '../../../../../core/src/index.ts';
|
|
3
2
|
/**
|
|
4
3
|
* This adapter bridges the gap between the form wizard component config and the flow component config
|
|
5
4
|
* It converts the simpler form wizard component config to the format expected by the component registry
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
import { ComponentConfig, FormFieldApi } from '../../../../../../../core/src/index.ts';
|
|
2
|
-
import { ComponentValue as RegistryComponentValue } from '../../../../../../../ui/src/index.ts';
|
|
1
|
+
import { ComponentConfig, ComponentValue, FormFieldApi } from '../../../../../../../core/src/index.ts';
|
|
3
2
|
interface InteractiveFieldRendererProps {
|
|
4
3
|
component: ComponentConfig;
|
|
5
4
|
field: FormFieldApi;
|
|
6
5
|
readOnly: boolean;
|
|
7
6
|
needsFormFieldWrapper: boolean;
|
|
8
7
|
isSubmitAttempted: boolean;
|
|
9
|
-
onChange: (value:
|
|
8
|
+
onChange: (value: ComponentValue) => void;
|
|
10
9
|
onBlur: () => void;
|
|
11
10
|
}
|
|
12
11
|
export declare const InteractiveFieldRenderer: React.FC<InteractiveFieldRendererProps>;
|
package/package.json
CHANGED
|
File without changes
|
package/styles.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{font-family:var(--fb-font-family-sans);--fb-primary: #7c3aed;--fb-primary-600: #7c3aed;--fb-primary-hover: #6d28d9;--fb-primary-active: #5b21b6;--fb-primary-dark: #4c1d95;--fb-primary-border: #c4b5fd;--fb-primary-foreground: #ffffff;--fb-primary-subtle: #ede9fe;--fb-primary-subtle-50: rgba(237, 233, 254, .5);--fb-background: #ffffff;--fb-surface: #fafaf9;--fb-surface-accent: #f5f3ff;--fb-surface-emphasis: #ede9fe;--fb-surface-subtle: #f5f3ff;--fb-border: #ddd6fe;--fb-border-focus: #7c3aed;--fb-border-width: 1px;--fb-text: #0f0a1e;--fb-text-muted: #6b6480;--fb-text-on-primary: #ffffff;--fb-error: #dc2626;--fb-error-hover: #b91c1c;--fb-error-dark: #7f1d1d;--fb-error-muted: #fca5a5;--fb-error-subtle: #fecaca;--fb-error-border: #fca5a5;--fb-error-translucent: rgba(220, 38, 38, .3);--fb-error-surface: #fef2f2;--fb-success: #16a34a;--fb-success-hover: #15803d;--fb-success-bright: #22c55e;--fb-success-subtle: #bbf7d0;--fb-success-dark: #166534;--fb-success-surface: #f0fdf4;--fb-warning: #d97706;--fb-warning-surface: #fffbeb;--fb-info: #7c3aed;--fb-info-surface: #ede9fe;--fb-canvas-background: #f3f3f3;--fb-neutral-50: #f9fafb;--fb-neutral-100: #ede9fe;--fb-neutral-200: #ddd6fe;--fb-neutral-300: #a78bfa;--fb-neutral-500: #7c6b99;--fb-neutral-900: #1e1030;--fb-accent: #f5f3ff;--fb-accent-rgb: 245, 243, 255;--fb-amber-100: #fef3c7;--fb-amber-300: #fcd34d;--fb-amber-800: #92400e;--fb-violet-100: #ede9fe;--fb-violet-300: #c4b5fd;--fb-violet-700: #6d28d9;--fb-violet-800: #5b21b6;--fb-cyan-100: #cffafe;--fb-cyan-300: #67e8f9;--fb-cyan-800: #155e75;--fb-lime-100: #ecfccb;--fb-lime-300: #bef264;--fb-lime-800: #3f6212;--fb-pink-100: #fce7f3;--fb-pink-300: #f9a8d4;--fb-pink-800: #9d174d;--fb-warning-border: #fef08a;--fb-font-family-mono: ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, "DejaVu Sans Mono", monospace;--fb-font-family-sans: "DM Sans", system-ui, sans-serif;--fb-font-size-2xs: .625rem;--fb-font-size-xs: .75rem;--fb-font-size-sm: .875rem;--fb-font-size-md: 1rem;--fb-font-size-lg: 1.125rem;--fb-font-size-xl: 1.25rem;--fb-font-size-2xl: 1.5rem;--fb-font-weight-normal: 400;--fb-font-weight-medium: 500;--fb-font-weight-semibold: 600;--fb-font-weight-bold: 700;--fb-line-height-tight: 1.25;--fb-line-height-normal: 1.5;--fb-line-height-relaxed: 1.75;--fb-space-50: .25rem;--fb-space-100: .5rem;--fb-space-150: .75rem;--fb-space-200: 1rem;--fb-space-250: 1.25rem;--fb-space-300: 1.5rem;--fb-space-350: 1.75rem;--fb-space-400: 2rem;--fb-space-450: 2.25rem;--fb-space-500: 2.5rem;--fb-space-550: 2.75rem;--fb-space-600: 3rem;--fb-space-650: 3.25rem;--fb-space-700: 3.5rem;--fb-space-xs: var(--fb-space-50);--fb-space-sm: var(--fb-space-100);--fb-space-md: var(--fb-space-200);--fb-space-lg: var(--fb-space-300);--fb-space-xl: var(--fb-space-400);--fb-space-2xl: var(--fb-space-600);--fb-space-3xl: var(--fb-space-700);--fb-space-md-neg: calc(-1 * var(--fb-space-200));--fb-space-1: .0625rem;--fb-space-2: .125rem;--fb-space-3: .1875rem;--fb-space-6: .375rem;--fb-space-10: .625rem;--fb-space-12: var(--fb-space-150);--fb-space-14: .875rem;--fb-space-20: var(--fb-space-250);--fb-size-touch-target: var(--fb-space-500);--fb-padding-card: var(--fb-space-250);--fb-padding-card-sm: var(--fb-space-200);--fb-gap-section: var(--fb-space-200);--fb-gap-cards: var(--fb-space-150);--fb-gap-inline: var(--fb-space-sm);--fb-container-max-width: 64rem;--fb-popover-width: 18rem;--fb-radius-sm: .25rem;--fb-radius-md: .375rem;--fb-radius-lg: .5rem;--fb-radius-xl: .75rem;--fb-radius-full: 100vmax;--fb-shadow-sm: 0 1px 2px 0 rgb(124 58 237 / .08);--fb-shadow-md: 0 4px 6px -1px rgb(124 58 237 / .12), 0 2px 4px -2px rgb(124 58 237 / .08);--fb-shadow-lg: 0 10px 15px -3px rgb(124 58 237 / .15), 0 4px 6px -4px rgb(124 58 237 / .1);--fb-z-base: 0;--fb-z-raised: 1;--fb-z-dropdown: 1000;--fb-z-sticky: 1100;--fb-z-overlay: 1200;--fb-z-modal: 1300;--fb-z-toast: 1400}button,input,optgroup,select,textarea{font-family:inherit}.fb-alert_5UcaT{position:relative;inline-size:100%;border-radius:var(--fb-radius-md);border:var(--fb-border-width) solid var(--fb-border);padding:var(--fb-space-md)}.fb-alert_5UcaT>svg{position:absolute;left:var(--fb-space-md);top:var(--fb-space-md);color:var(--fb-text)}.fb-alert_5UcaT>svg~*{padding-inline-start:1.75rem}.fb-alert_5UcaT>svg+div{transform:translateY(-3px)}.fb-variant-default_yhEpY{background-color:var(--fb-background);color:var(--fb-text)}.fb-variant-destructive_rafp5{border-color:var(--fb-error);color:var(--fb-error)}.fb-variant-destructive_rafp5>svg{color:var(--fb-error)}.fb-alertTitle_-KE5o{margin-block-end:var(--fb-space-sm);font-weight:500;line-height:1;letter-spacing:-.025em}.fb-alertDescription_cg7Ke{font-size:var(--fb-font-size-sm)}.fb-alertDescription_cg7Ke p{line-height:1.625}.fb-button_MJLDl{display:inline-flex;align-items:center;justify-content:center;gap:var(--fb-space-sm);white-space:nowrap;border-radius:var(--fb-radius-md);font-size:var(--fb-font-size-md);font-weight:var(--fb-font-weight-semibold);transition:background-color .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease,opacity .15s ease;cursor:pointer;outline:none;border:1px solid transparent}.fb-button_MJLDl:focus-visible{outline:2px solid var(--fb-border-focus);outline-offset:2px}.fb-button_MJLDl:disabled{pointer-events:none;opacity:.5}.fb-button_MJLDl span{font-size:inherit;font-weight:inherit;line-height:inherit}.fb-button_MJLDl svg{pointer-events:none;inline-size:1rem;block-size:1rem;flex-shrink:0}.fb-variant-default_KLx8b{background-color:var(--fb-primary);color:var(--fb-primary-foreground);border-color:var(--fb-primary);box-shadow:var(--fb-shadow-sm)}.fb-variant-default_KLx8b:hover:not(:disabled){background-color:var(--fb-primary-hover);border-color:var(--fb-primary-hover);box-shadow:var(--fb-shadow-md)}.fb-variant-default_KLx8b:active:not(:disabled){background-color:var(--fb-primary-active);border-color:var(--fb-primary-active);box-shadow:none}.fb-variant-destructive_vQKZ2{background-color:var(--fb-error);color:var(--fb-text-on-primary);border-color:var(--fb-error);box-shadow:var(--fb-shadow-sm)}.fb-variant-destructive_vQKZ2:hover:not(:disabled){background-color:var(--fb-error-hover);border-color:var(--fb-error-hover);box-shadow:var(--fb-shadow-md)}.fb-variant-destructive_vQKZ2:active:not(:disabled){background-color:var(--fb-error-dark);box-shadow:none}.fb-variant-outline_1Mb0E{background-color:var(--fb-background);color:var(--fb-text);border-color:var(--fb-border)}.fb-variant-outline_1Mb0E:hover:not(:disabled){background-color:var(--fb-surface-accent);border-color:var(--fb-primary-border);color:var(--fb-primary)}.fb-variant-outline_1Mb0E:active:not(:disabled){background-color:var(--fb-surface-emphasis);border-color:var(--fb-primary);color:var(--fb-primary)}.fb-variant-secondary_-bohS{background-color:var(--fb-neutral-100);color:var(--fb-text);border-color:var(--fb-neutral-200)}.fb-variant-secondary_-bohS:hover:not(:disabled){background-color:var(--fb-neutral-200);border-color:var(--fb-primary-border);color:var(--fb-primary)}.fb-variant-ghost_qml-f{background-color:transparent;color:var(--fb-text);border-color:transparent}.fb-variant-ghost_qml-f:hover:not(:disabled){background-color:var(--fb-surface-accent);color:var(--fb-primary)}.fb-variant-ghost_qml-f:active:not(:disabled){background-color:var(--fb-surface-emphasis);color:var(--fb-primary)}.fb-variant-link_aNj3r{background-color:transparent;color:var(--fb-primary);text-underline-offset:.25rem;border-color:transparent}.fb-variant-link_aNj3r:hover:not(:disabled){text-decoration:underline;color:var(--fb-primary-hover)}.fb-size-default_9qKVU{block-size:var(--fb-size-touch-target);padding-inline:var(--fb-space-md);padding-block:var(--fb-space-sm)}.fb-size-sm_MvjvS{block-size:2.25rem;padding-inline:var(--fb-space-12);border-radius:var(--fb-radius-md);font-size:var(--fb-font-size-xs)}.fb-size-lg_v6n8j{block-size:2.75rem;padding-inline:var(--fb-space-20);border-radius:var(--fb-radius-md);font-size:var(--fb-font-size-md);font-weight:var(--fb-font-weight-semibold)}.fb-size-icon_MYsET{block-size:var(--fb-size-touch-target);inline-size:var(--fb-size-touch-target);padding:0}.fb-checkbox_wsic0{block-size:1rem;inline-size:1rem;flex-shrink:0;border-radius:var(--fb-radius-sm);border:var(--fb-border-width) solid var(--fb-primary);cursor:pointer}.fb-checkbox_wsic0:focus-visible{outline:none;box-shadow:0 0 0 2px var(--fb-border)}.fb-checkbox_wsic0:disabled{cursor:not-allowed;opacity:.5}.fb-checkbox_wsic0[data-state=checked]{background-color:var(--fb-primary);color:var(--fb-text-on-primary)}.fb-checkboxIndicator_31Q4N{display:flex;align-items:center;justify-content:center;color:currentColor}.fb-checkboxIndicator_31Q4N svg{block-size:1rem;inline-size:1rem}.fb-input_RJ7IM{display:flex;block-size:var(--fb-size-touch-target);inline-size:100%;border-radius:var(--fb-radius-md);border:var(--fb-border-width) solid var(--fb-border);background-color:var(--fb-background);padding-inline:var(--fb-space-12);padding-block:var(--fb-space-sm);font-size:var(--fb-font-size-sm);color:var(--fb-text)}.fb-input_RJ7IM::placeholder{color:var(--fb-text-muted)}.fb-input_RJ7IM::file-selector-button{border:0;background-color:transparent;font-size:var(--fb-font-size-sm);font-weight:500;color:var(--fb-text)}.fb-input_RJ7IM:focus-visible{outline:none;box-shadow:0 0 0 2px var(--fb-border)}.fb-input_RJ7IM:disabled{cursor:not-allowed;opacity:.5}@media(min-width:768px){.fb-input_RJ7IM{font-size:var(--fb-font-size-sm)}}.fb-radioGroup_PqpPn{display:grid;gap:var(--fb-space-sm)}.fb-radioGroupItem_r91M1{aspect-ratio:1;block-size:1rem;inline-size:1rem;border-radius:var(--fb-radius-full);border:var(--fb-border-width) solid var(--fb-primary);color:var(--fb-primary);background-color:transparent;outline:none;transition:opacity .15s ease}.fb-radioGroupItem_r91M1:focus-visible{outline:2px solid var(--fb-border-focus);outline-offset:2px}.fb-radioGroupItem_r91M1:disabled{cursor:not-allowed;opacity:.5}.fb-radioIndicator_PFyGX{display:flex;align-items:center;justify-content:center}.fb-radioIndicatorIcon_vSsbY{block-size:.625rem;inline-size:.625rem;fill:currentColor;color:currentColor}.fb-selectTrigger_dj84x{display:flex;align-items:center;justify-content:space-between;block-size:2.5rem;inline-size:100%;border-radius:var(--fb-radius-md);border:var(--fb-border-width) solid var(--fb-border);background-color:var(--fb-background);padding-inline:var(--fb-space-6);padding-block:var(--fb-space-sm);font-size:var(--fb-font-size-sm)}.fb-selectTrigger_dj84x::placeholder{color:var(--fb-text-muted)}.fb-selectTrigger_dj84x:focus{outline:none;box-shadow:0 0 0 2px var(--fb-border-focus)}.fb-selectTrigger_dj84x:disabled{cursor:not-allowed;opacity:.5}.fb-selectTrigger_dj84x>span{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical}.fb-selectTriggerIcon_V8dav{block-size:1rem;inline-size:1rem;opacity:.5}.fb-selectScrollUpButton_c6WZR,.fb-selectScrollDownButton_kmWY4{display:flex;cursor:default;align-items:center;justify-content:center;padding-block:var(--fb-space-2)}.fb-selectScrollIcon_IZbZG{block-size:1rem;inline-size:1rem}.fb-selectContent_uJ-ZX{position:relative;z-index:50;max-block-size:24rem;min-inline-size:8rem;overflow:hidden;border-radius:var(--fb-radius-md);border:var(--fb-border-width) solid var(--fb-border);background-color:var(--fb-background);color:var(--fb-text);box-shadow:var(--fb-shadow-md)}.fb-selectContent_uJ-ZX[data-state=open]{animation:fb-selectContentIn_n9zpE .15s ease-out}.fb-selectContent_uJ-ZX[data-state=closed]{animation:fb-selectContentOut_rxdBe .15s ease-in}.fb-selectContent_uJ-ZX.fb-popper_uKkq9[data-side=bottom]{transform:translateY(.25rem)}.fb-selectContent_uJ-ZX.fb-popper_uKkq9[data-side=left]{transform:translate(-.25rem)}.fb-selectContent_uJ-ZX.fb-popper_uKkq9[data-side=right]{transform:translate(.25rem)}.fb-selectContent_uJ-ZX.fb-popper_uKkq9[data-side=top]{transform:translateY(-.25rem)}.fb-selectViewport_wcTaR{padding:var(--fb-space-2)}.fb-selectViewport_wcTaR.fb-popper_uKkq9{block-size:var(--radix-select-trigger-height);inline-size:100%;min-inline-size:var(--radix-select-trigger-width)}.fb-selectLabel_hb7ig{padding-block:var(--fb-space-3);padding-inline-start:var(--fb-space-md);padding-inline-end:var(--fb-space-sm);font-size:var(--fb-font-size-sm);font-weight:var(--fb-font-weight-semibold)}.fb-selectItem_f23oZ{position:relative;display:flex;inline-size:100%;cursor:default;-webkit-user-select:none;user-select:none;align-items:center;border-radius:var(--fb-radius-sm);padding-block:var(--fb-space-3);padding-inline-start:var(--fb-space-md);padding-inline-end:var(--fb-space-sm);font-size:var(--fb-font-size-sm);outline:none}.fb-selectItem_f23oZ:focus{background-color:var(--fb-accent);color:var(--fb-text)}.fb-selectItem_f23oZ[data-disabled]{pointer-events:none;opacity:.5}.fb-selectItemIndicator_PD-WQ{position:absolute;left:var(--fb-space-sm);display:flex;block-size:.875rem;inline-size:.875rem;align-items:center;justify-content:center}.fb-selectItemIndicatorIcon_kgB1I{block-size:1rem;inline-size:1rem}.fb-selectSeparator_DS7X2{margin-inline:calc(-1 * var(--fb-space-2));margin-block:var(--fb-space-2);block-size:1px;background-color:var(--fb-surface-accent)}@keyframes fb-selectContentIn_n9zpE{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes fb-selectContentOut_rxdBe{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.fb-textarea_p4K5i{display:flex;min-block-size:5rem;inline-size:100%;border-radius:var(--fb-radius-md);border:var(--fb-border-width) solid var(--fb-border);background-color:var(--fb-background);padding-inline:var(--fb-space-12);padding-block:var(--fb-space-sm);font-size:var(--fb-font-size-sm);color:var(--fb-text)}.fb-textarea_p4K5i::placeholder{color:var(--fb-text-muted)}.fb-textarea_p4K5i:focus-visible{outline:none;box-shadow:0 0 0 2px var(--fb-border)}.fb-textarea_p4K5i:disabled{cursor:not-allowed;opacity:.5}.fb-wrapper_nDU5Q{display:flex;flex-direction:column;gap:var(--fb-space-sm)}.fb-progress_jf4Xd{appearance:none;background-color:var(--fb-primary-subtle);border:none;border-radius:8px;height:16px;overflow:hidden;width:100%}.fb-progress_jf4Xd::-webkit-progress-bar{background-color:transparent}.fb-progress_jf4Xd::-webkit-progress-value{background-color:var(--fb-primary);transition:all .4s cubic-bezier(.4,0,.2,1)}.fb-progress_jf4Xd::-moz-progress-bar{background-color:var(--fb-primary);transition:all .4s cubic-bezier(.4,0,.2,1)}label.fb-progressLabel_3nfSJ{font-size:var(--fb-font-size-sm);font-weight:var(--fb-font-weight-normal);line-height:var(--fb-line-height-normal)}.fb-completionMessage_OyQ9C{display:flex;align-items:center;gap:var(--fb-space-2);font-size:var(--fb-font-size-sm);color:var(--fb-success);animation:fb-fadeIn_iAZjj .3s ease-out}.fb-errorMessage_B8dGO{display:flex;align-items:center;justify-content:space-between;font-size:var(--fb-font-size-sm);color:var(--fb-error)}.fb-errorContent_2TAc5{display:flex;align-items:center;gap:var(--fb-space-2)}.fb-retryButton_0HfjY{display:flex;align-items:center;gap:var(--fb-space-1);font-weight:var(--fb-font-weight-medium);color:var(--fb-error);text-decoration:underline;text-underline-offset:2px;background:none;border:none;cursor:pointer}.fb-retryButton_0HfjY:hover{color:var(--fb-error-hover)}@keyframes fb-fadeIn_iAZjj{0%{opacity:0}to{opacity:1}}.fb-boxContainer_oXGAN{background-color:var(--fb-background);border-radius:var(--fb-radius-md);padding:var(--fb-space-md)}.fb-GridLayoutContainer_BZvnG{align-items:center;background-color:var(--grid-container-background-color);display:flex;flex-direction:column;justify-content:center;max-width:100vw;min-width:var(--fb-container-max-width)}.fb-GridLayoutContainerWithoutPadding_4kQ4C{padding-block:0}.fb-GridLayoutContainerFullWidth_pYcHf{min-width:100%;max-width:100%}.fb-GridLayout_A2c7k{container-type:inline-size;display:grid;gap:var(--grid-row-gap, var(--fb-space-12)) var(--grid-column-gap, var(--fb-space-md));grid-template-columns:repeat(var(--grid-column-max-columns, 12),1fr);grid-template-rows:auto;margin-left:auto;margin-right:auto;max-width:var(--fb-container-max-width);min-width:var(--fb-container-max-width);width:100%}.fb-GridLayoutFullWidth_NMi3Y{max-width:100%;min-width:100%}.fb-gridLayoutColumn_5TCzp{align-self:start;grid-column:var(--grid-column-start) / var(--grid-column-end);grid-row:var(--grid-row-start, auto) / var(--grid-row-end, auto)}.fb-stretch_n7mLP{align-self:stretch}.fb-formLayoutWrapper_w9jQ-{width:100%;font-family:inherit}.fb-titleSection_qd9UP{display:flex;flex-direction:column;align-items:flex-start;width:100%}.fb-leftColumn_zIdZO,.fb-rightColumn_P0J6U{display:flex;flex-direction:column;height:fit-content;min-height:0;position:sticky;top:0}.fb-footerSection_eW4js{display:flex;flex-direction:column;align-items:flex-start;width:100%;margin-top:var(--fb-space-md)}.fb-contentPadding_LMiyE{padding:var(--fb-space-12)}.fb-contentBorder_yYFFn{border:var(--fb-border-width) solid var(--fb-neutral-200);border-radius:var(--fb-radius-md);background-color:var(--fb-surface-accent)}@container (max-width: 768px){.fb-leftColumn_zIdZO,.fb-rightColumn_P0J6U{grid-column:1 / 13!important;margin-bottom:var(--fb-space-12)}.fb-mainContent_9ZW4m{grid-column:1 / 13!important}}@media print{.fb-formLayoutWrapper_w9jQ-{background:var(--fb-background)!important}.fb-contentBorder_yYFFn{border:var(--fb-border-width) solid var(--fb-border)!important;box-shadow:none!important}}.fb-errorState_khSRW{padding:var(--fb-space-md);border:var(--fb-border-width) solid var(--fb-error-translucent);background-color:var(--fb-error-surface);color:var(--fb-error);border-radius:var(--fb-radius-md)}.fb-errorHeading_dGdN2{font-weight:500;margin-block-end:var(--fb-space-sm)}.fb-loadingState_Pdhds{padding:var(--fb-space-md);text-align:center;color:var(--fb-text-muted)}.fb-loadingPulse_QIw08{animation:fb-pulse_7Ml6n 2s ease-in-out infinite}@keyframes fb-pulse_7Ml6n{0%,to{opacity:1}50%{opacity:.5}}.fb-formLayout_JzC8E{margin-block:var(--fb-space-xl)}.fb-stepContent_EU1uV{display:flex;flex-direction:column;gap:var(--fb-space-lg)}.fb-loaderWrapper_00phH{margin-block-end:var(--fb-space-md)}.fb-footer_r0kdp{margin-block-start:var(--fb-space-lg)}.fb-container_p6qC4{margin-block-end:var(--fb-space-sm);padding-block-end:var(--fb-space-md);border-block-end:var(--fb-border-width) solid var(--fb-border)}.fb-disabled_EuvTp{opacity:.5}.fb-prevButtonDisabled_Wj2Qp{opacity:.5;cursor:default}.fb-additionalContent_0tppE{margin-block-start:var(--fb-space-md)}.fb-section_5kbZU{margin-block-end:var(--fb-space-lg)}.fb-sectionHeader_aVzgk{display:flex;justify-content:space-between;align-items:center;margin-block-end:var(--fb-space-md)}.fb-cancelButton_PyIZH{font-size:var(--fb-font-size-sm);color:var(--fb-text-muted);display:flex;align-items:center;gap:var(--fb-space-2);background:none;border:none;cursor:pointer}.fb-editButton_dbSFX{font-size:var(--fb-font-size-sm);color:var(--fb-info);display:flex;align-items:center;gap:var(--fb-space-2);background:none;border:none;cursor:pointer}.fb-sectionContent_wTlW-{display:flex;flex-direction:column;gap:var(--fb-space-md)}.fb-saveButtonsWrapper_VGuwW{display:flex;padding-block-start:var(--fb-space-md)}.fb-iconSm_yLpHW{width:1rem;height:1rem}.fb-alertList_d0DxG{display:flex;flex-direction:column;gap:var(--fb-space-sm)}.fb-errorFallback_CNx1M{padding:var(--fb-space-sm);border:var(--fb-border-width) solid var(--fb-error-translucent);background-color:var(--fb-error-surface);color:var(--fb-error);border-radius:var(--fb-radius-md)}.fb-errorDetail_Nvh9V{font-size:var(--fb-font-size-xs);margin-block-start:var(--fb-space-2)}.fb-displayWrapper_VYcQC{display:flex;flex-direction:column;gap:var(--fb-space-md)}.fb-emptyValue_baQFk{color:var(--fb-text-muted);font-style:italic}.fb-valueText_JCRsN{color:var(--fb-text)}.fb-fieldWrapper_rnKUQ{display:flex;flex-direction:column;gap:var(--fb-space-2)}.fb-card_Ry9d9{border-radius:var(--fb-radius-lg);border:var(--fb-border-width) solid var(--fb-border);background-color:var(--fb-background);color:var(--fb-text);box-shadow:var(--fb-shadow-md);overflow:hidden}.fb-cardCompact_wGBoD{border-radius:var(--fb-radius-md);box-shadow:var(--fb-shadow-sm)}.fb-cardHeader_exSCY{display:flex;flex-direction:column;gap:var(--fb-space-6);padding:var(--fb-padding-card)}.fb-cardHeaderStructured_UBow4{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--fb-space-200);padding:var(--fb-space-200) var(--fb-space-250);border-bottom:1px solid var(--fb-border);background:var(--fb-surface)}.fb-cardHeaderStructuredCompact_jH94z{padding:var(--fb-space-150) var(--fb-space-200)}.fb-cardHeaderLeft_PnQMU{flex:1;min-width:0}.fb-cardTitleRow_XU5Go{display:flex;align-items:center;gap:var(--fb-space-100);flex-wrap:wrap}.fb-cardTitleText_imcqj{font-size:var(--fb-font-size-sm);font-weight:var(--fb-font-weight-semibold);color:var(--fb-text);line-height:var(--fb-line-height-tight)}.fb-cardDescriptionText_oCoiA{font-size:var(--fb-font-size-xs);color:var(--fb-text-muted);margin-top:var(--fb-space-50);line-height:var(--fb-line-height-normal)}.fb-cardMeta_Ch80f{display:flex;gap:var(--fb-space-200);margin-top:var(--fb-space-100);flex-wrap:wrap}.fb-cardMetaItem_ggGU8{font-size:11px;color:var(--fb-text-muted);display:flex;align-items:center;gap:4px}.fb-cardHeaderRight_rEXk0{display:flex;align-items:center;gap:var(--fb-space-100);flex-shrink:0}.fb-cardBody_lIAav{padding:var(--fb-space-200) var(--fb-space-250)}.fb-cardBodyFlush_tfGIm{padding:0}.fb-cardFooter_BAcjS{display:flex;align-items:center;justify-content:flex-end;gap:var(--fb-space-100);padding:var(--fb-space-150) var(--fb-space-250);border-top:1px solid var(--fb-border);background:var(--fb-surface-accent)}.fb-cardDivider_-i-Kq{height:1px;background:var(--fb-border);margin:0 var(--fb-space-250)}.fb-cardTitle_mLAib{font-size:var(--fb-font-size-md);font-weight:var(--fb-font-weight-semibold);line-height:1;letter-spacing:-.025em;color:var(--fb-text)}.fb-cardDescription_iLv2K{font-size:var(--fb-font-size-xs);color:var(--fb-text-muted)}.fb-cardContent_HJ92K{padding:var(--fb-padding-card);padding-block-start:0}.fb-stepListWrapper_RTLUk{display:flex;flex-direction:column;font-family:inherit;gap:var(--fb-space-12)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4{color:var(--fb-text-muted);display:flex;flex-direction:row;gap:var(--fb-space-6);padding-bottom:var(--fb-space-2)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-leftContainer_o-gBE{align-items:center;display:flex;flex-direction:column;gap:var(--fb-space-xs);padding-top:var(--fb-space-2)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-leftContainer_o-gBE .fb-circle_3oinV{align-items:center;background-color:transparent;border:var(--fb-border-width) solid var(--fb-border);border-radius:var(--fb-radius-full);color:var(--fb-background);display:flex;justify-content:center;min-block-size:calc(1.25rem - 2 * var(--fb-border-width));min-inline-size:calc(1.25rem - 2 * var(--fb-border-width))}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-leftContainer_o-gBE .fb-circle_3oinV .fb-currentDot_0e9gN{background-color:var(--fb-primary);border-radius:var(--fb-radius-full);height:14px;width:14px}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-leftContainer_o-gBE .fb-connector_bDvRA{background-color:var(--fb-text-muted);block-size:100%;inline-size:1.5px;min-block-size:36px}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-content_u43H4{align-items:start;border-radius:var(--fb-radius-md);color:var(--fb-text-muted);display:flex;flex-direction:row;inline-size:100%;margin-block-end:var(--fb-space-6);padding:var(--fb-space-2) var(--fb-space-6);text-wrap:balance}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-content_u43H4 .fb-stepNumber_c2YRs{color:var(--fb-text-muted);font-size:var(--fb-font-size-sm);font-weight:var(--fb-font-weight-semibold);line-height:var(--fb-line-height-tight)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-content_u43H4 .fb-stepTitle_w5Be8{font-size:var(--fb-font-size-sm);line-height:var(--fb-line-height-normal)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-content_u43H4 .fb-stepLink_sqt2-{color:var(--fb-primary);cursor:pointer;font-weight:var(--fb-font-weight-normal);line-height:var(--fb-line-height-normal);text-decoration:underline}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-content_u43H4 .fb-stepLink_sqt2-:hover{color:var(--fb-primary-hover);text-decoration:underline}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-content_u43H4 .fb-stepLink_sqt2-:focus{outline-offset:2px;outline-style:solid;outline-width:2px;text-decoration:underline}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-iconRightContainer_DCjrS{align-self:center;block-size:1.25rem;color:var(--fb-primary);display:flex;inline-size:1.25rem;margin-inline-start:auto}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4.fb-completed_F-mOG .fb-leftContainer_o-gBE .fb-circle_3oinV{background-color:var(--fb-primary);border-color:var(--fb-primary);border-style:solid;border-width:var(--fb-border-width)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4.fb-completed_F-mOG .fb-leftContainer_o-gBE .fb-connector_bDvRA{background-color:var(--fb-primary)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4.fb-completed_F-mOG .fb-content_u43H4,.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4.fb-completed_F-mOG .fb-content_u43H4 .fb-stepNumber_c2YRs{color:var(--fb-text)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4.fb-current_QAO1e .fb-leftContainer_o-gBE .fb-circle_3oinV{border-color:var(--fb-primary);border-style:solid;border-width:var(--fb-border-width)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4.fb-current_QAO1e .fb-content_u43H4{background-color:var(--fb-background);color:var(--fb-text)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4.fb-current_QAO1e .fb-content_u43H4 .fb-stepNumber_c2YRs{color:var(--fb-text)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4.fb-inactive_tYqvV .fb-content_u43H4{color:var(--fb-text-muted)}.fb-dialogOverlay_GSMVm{position:fixed;inset:0;z-index:50;background-color:#000c}.fb-dialogOverlay_GSMVm[data-state=open]{animation:fb-dialogOverlayFadeIn_l-QHK .15s ease-out}.fb-dialogOverlay_GSMVm[data-state=closed]{animation:fb-dialogOverlayFadeOut_DewLt .15s ease-in}.fb-dialogContent_neUay{position:fixed;left:50%;top:50%;z-index:50;display:grid;width:100%;max-width:32rem;translate:-50% -50%;gap:var(--fb-space-sm);border:var(--fb-border-width) solid var(--fb-border);background-color:var(--fb-background);padding:var(--fb-space-12);box-shadow:var(--fb-shadow-lg);transition-duration:.2s}@media(min-width:640px){.fb-dialogContent_neUay{border-radius:var(--fb-radius-lg)}}.fb-dialogContent_neUay[data-state=open]{animation:fb-dialogContentSlideIn_oQPJG .2s ease-out}.fb-dialogContent_neUay[data-state=closed]{animation:fb-dialogContentSlideOut_nNdgq .2s ease-in}.fb-dialogClose_QbWkj{position:absolute;right:var(--fb-space-sm);top:var(--fb-space-sm);border-radius:var(--fb-radius-sm);opacity:.7;transition:opacity .15s}.fb-dialogClose_QbWkj:hover{opacity:1}.fb-dialogClose_QbWkj:focus{outline:none;box-shadow:0 0 0 2px var(--fb-border-focus);opacity:1}.fb-dialogClose_QbWkj:disabled{pointer-events:none}.fb-dialogClose_QbWkj[data-state=open]{background-color:var(--fb-accent);color:var(--fb-text-muted)}.fb-dialogCloseIcon_kK8c6{block-size:1rem;inline-size:1rem}.fb-dialogCloseIcon_kK8c6+span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fb-dialogHeader_df1-u{display:flex;flex-direction:column;gap:var(--fb-space-3);text-align:center}@media(min-width:640px){.fb-dialogHeader_df1-u{text-align:start}}.fb-dialogFooter_1vdJe{display:flex;flex-direction:column-reverse;gap:var(--fb-space-sm)}@media(min-width:640px){.fb-dialogFooter_1vdJe{flex-direction:row;justify-content:flex-end;gap:var(--fb-space-sm)}}.fb-dialogTitle_FS7k8{font-size:var(--fb-font-size-lg);font-weight:var(--fb-font-weight-semibold);line-height:1;letter-spacing:-.025em}.fb-dialogDescription_uEgTa{font-size:var(--fb-font-size-sm);color:var(--fb-text-muted)}@keyframes fb-dialogOverlayFadeIn_l-QHK{0%{opacity:0}to{opacity:1}}@keyframes fb-dialogOverlayFadeOut_DewLt{0%{opacity:1}to{opacity:0}}@keyframes fb-dialogContentSlideIn_oQPJG{0%{opacity:0;transform:translate(-50%,-48%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes fb-dialogContentSlideOut_nNdgq{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-48%) scale(.95)}}.fb-sheetOverlay_2nFRz{position:fixed;inset:0;z-index:50;background-color:#000c}.fb-sheetOverlay_2nFRz[data-state=open]{animation:fb-sheetOverlayFadeIn_AS-42 .15s ease-out}.fb-sheetOverlay_2nFRz[data-state=closed]{animation:fb-sheetOverlayFadeOut_Y-hE4 .15s ease-in}.fb-sheetContent_p2PyE{position:fixed;z-index:50;gap:var(--fb-space-sm);background-color:var(--fb-background);padding:var(--fb-space-12);box-shadow:var(--fb-shadow-lg);transition:transform .5s ease-in-out,opacity .5s ease-in-out}.fb-side-top_vnDBA{inset-inline:0;top:0;border-block-end:var(--fb-border-width) solid var(--fb-border)}.fb-side-top_vnDBA[data-state=open]{animation:fb-slideInFromTop_ujZFr .5s ease-in-out}.fb-side-top_vnDBA[data-state=closed]{animation:fb-slideOutToTop_sjz0S .3s ease-in-out}.fb-side-bottom_8Qo-6{inset-inline:0;bottom:0;border-block-start:var(--fb-border-width) solid var(--fb-border)}.fb-side-bottom_8Qo-6[data-state=open]{animation:fb-slideInFromBottom_5kG78 .5s ease-in-out}.fb-side-bottom_8Qo-6[data-state=closed]{animation:fb-slideOutToBottom_03WBw .3s ease-in-out}.fb-side-left_iSyK6{inset-block:0;left:0;block-size:100%;inline-size:75%;border-inline-end:var(--fb-border-width) solid var(--fb-border)}@media(min-width:640px){.fb-side-left_iSyK6{max-inline-size:24rem}}.fb-side-left_iSyK6[data-state=open]{animation:fb-slideInFromLeft_iFt5a .5s ease-in-out}.fb-side-left_iSyK6[data-state=closed]{animation:fb-slideOutToLeft_kRHa5 .3s ease-in-out}.fb-side-right_q-l6-{inset-block:0;right:0;block-size:100%;inline-size:75%;border-inline-start:var(--fb-border-width) solid var(--fb-border)}@media(min-width:640px){.fb-side-right_q-l6-{max-inline-size:24rem}}.fb-side-right_q-l6-[data-state=open]{animation:fb-slideInFromRight_elDbR .5s ease-in-out}.fb-side-right_q-l6-[data-state=closed]{animation:fb-slideOutToRight_HPV1P .3s ease-in-out}.fb-sheetClose_sq3cW{position:absolute;right:var(--fb-space-sm);top:var(--fb-space-sm);border-radius:var(--fb-radius-sm);opacity:.7;transition:opacity .15s}.fb-sheetClose_sq3cW:hover{opacity:1}.fb-sheetClose_sq3cW:focus{outline:none;box-shadow:0 0 0 2px var(--fb-border-focus);opacity:1}.fb-sheetClose_sq3cW:disabled{pointer-events:none}.fb-sheetClose_sq3cW[data-state=open]{background-color:var(--fb-surface)}.fb-sheetCloseIcon_2Z7S1{block-size:1rem;inline-size:1rem}.fb-sheetCloseIcon_2Z7S1+span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fb-sheetHeader_w9TtP{display:flex;flex-direction:column;gap:var(--fb-space-sm);text-align:center}@media(min-width:640px){.fb-sheetHeader_w9TtP{text-align:start}}.fb-sheetFooter_XN1p0{display:flex;flex-direction:column-reverse;gap:var(--fb-space-sm)}@media(min-width:640px){.fb-sheetFooter_XN1p0{flex-direction:row;justify-content:flex-end;gap:var(--fb-space-sm)}}.fb-sheetTitle_F6nNH{font-size:var(--fb-font-size-lg);font-weight:var(--fb-font-weight-semibold);color:var(--fb-text)}.fb-sheetDescription_AzWJb{font-size:var(--fb-font-size-sm);color:var(--fb-text-muted)}@keyframes fb-sheetOverlayFadeIn_AS-42{0%{opacity:0}to{opacity:1}}@keyframes fb-sheetOverlayFadeOut_Y-hE4{0%{opacity:1}to{opacity:0}}@keyframes fb-slideInFromTop_ujZFr{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes fb-slideOutToTop_sjz0S{0%{transform:translateY(0)}to{transform:translateY(-100%)}}@keyframes fb-slideInFromBottom_5kG78{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fb-slideOutToBottom_03WBw{0%{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes fb-slideInFromLeft_iFt5a{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes fb-slideOutToLeft_kRHa5{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes fb-slideInFromRight_elDbR{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes fb-slideOutToRight_HPV1P{0%{transform:translate(0)}to{transform:translate(100%)}}.fb-dialogContent_MQjVY{max-inline-size:28rem}.fb-iconRow_zoQXV{display:flex;align-items:center;gap:var(--fb-space-12)}.fb-iconCircle_UvpAZ{border-radius:var(--fb-radius-full);background-color:var(--fb-surface);padding:var(--fb-space-sm)}.fb-descriptionSpaced_AmH9W{margin-block-start:var(--fb-space-2)}.fb-buttonRow_lfgxL{display:flex;justify-content:flex-end;gap:var(--fb-space-sm);padding-block-start:var(--fb-space-md)}.fb-minWidthButton_maffF{min-inline-size:6rem}.fb-iconWarning_OcS7O{width:1.25rem;height:1.25rem;color:var(--fb-warning)}.fb-iconInfo_xQhjd{width:1.25rem;height:1.25rem;color:var(--fb-info)}.fb-vcContainer_oHl8H{cursor:text;display:flex;gap:16px;pointer-events:none;position:relative}.fb-vcInput_Nb8NL{inset:0;pointer-events:none;position:absolute}.fb-vcInput_Nb8NL input{background:transparent;block-size:100%;border-color:transparent;caret-color:transparent;color:transparent;font-family:inherit;font-size:18px;font-weight:400;inline-size:100%;letter-spacing:80px;line-height:28px;outline:transparent solid 2px;pointer-events:all;text-align:left;-webkit-user-select:none;user-select:none}.fb-vcInput_Nb8NL input::selection{background-color:transparent}.fb-vcGroup_5z3tY{align-items:center;display:flex;gap:16px;inline-size:100%}.fb-vcDash_R8D18{align-items:center;block-size:48px;display:flex;font-family:inherit;font-size:18px;font-style:normal;font-weight:400;justify-content:center;line-height:1.4}.fb-vcSlot_AZfrj{align-items:center;background:#fff;block-size:48px;border:var(--fb-border-width) solid var(--fb-border);border-radius:8px;color:var(--fb-text);display:flex;flex-basis:12px;flex-grow:1;font-family:inherit;font-size:16px;font-style:normal;font-weight:400;justify-content:center;line-height:1.4;outline:transparent solid 2px}.fb-vcSlotActive_1Zqta{border-color:var(--fb-border-focus);outline-color:var(--fb-border-focus)}.fb-vcCaret_pQ-uD{align-items:center;animation-duration:1.2s;animation-iteration-count:infinite;animation-name:fb-caret-blink_jfhv0;animation-timing-function:ease-out;display:flex;pointer-events:none}.fb-vcCaret_pQ-uD>div{background-color:var(--fb-text);height:18px;width:1px}@keyframes fb-caret-blink_jfhv0{0%,70%,to{opacity:1}20%,50%{opacity:0}}.fb-dialogContent_hdJb3{max-inline-size:28rem}.fb-headerRow_dowgv{display:flex;align-items:center;gap:var(--fb-space-sm)}.fb-iconSuccess_787to{color:var(--fb-success)}.fb-iconMail_yICFX{color:var(--fb-info)}.fb-successButtonRow_LilmE{display:flex;justify-content:center;padding-block-start:var(--fb-space-md)}.fb-minWidthButton_Y-HfD{min-inline-size:8rem}.fb-formContent_DRlgi{display:flex;flex-direction:column;gap:var(--fb-space-md)}.fb-codeSection_vJqzI{display:flex;flex-direction:column;gap:var(--fb-space-sm)}.fb-codeLabel_PvgkB{font-size:var(--fb-font-size-sm);font-weight:500}.fb-codeCenter_j2TST{display:flex;justify-content:center}.fb-resendText_fsAeq,.fb-blockedText_ZGaBs{text-align:center;font-size:var(--fb-font-size-sm);color:var(--fb-text-muted)}.fb-resendLink_dRMub{padding:0;block-size:auto;color:var(--fb-info)}.fb-resendLinkDefault_sVy7D{padding:0;block-size:auto}.fb-footerButtonRow_dFkH0{display:flex;justify-content:flex-end;gap:var(--fb-space-sm);padding-block-start:var(--fb-space-md)}.fb-iconSm_JkMbO{width:1rem;height:1rem}.fb-iconMd_y--1E{width:1.25rem;height:1.25rem}.fb-buttonRow_IpMPI{display:flex;flex-wrap:wrap;gap:var(--fb-space-sm);justify-content:flex-end}.fb-minWidthButton_Ggq-E{min-inline-size:4rem}.fb-toastContainer_iL55M{position:fixed;inset-block-start:var(--fb-space-md);inset-inline-end:var(--fb-space-md);z-index:50;max-inline-size:24rem}.fb-toastCard_EslQ-{background-color:var(--fb-background);border:var(--fb-border-width) solid var(--fb-border);border-radius:var(--fb-radius-lg);box-shadow:var(--fb-shadow-lg);padding:var(--fb-space-md);display:flex;flex-direction:column;gap:var(--fb-space-12)}.fb-toastTitle_W3izr{font-weight:var(--fb-font-weight-semibold)}.fb-toastContent_h6A9y{font-size:var(--fb-font-size-sm);color:var(--fb-text-muted);margin-block-start:var(--fb-space-2)}.fb-sheetContent_Ccs86{inline-size:400px}@media(min-width:640px){.fb-sheetContent_Ccs86{inline-size:540px}}.fb-sheetBody_XqkvA{flex:1;padding-block-end:var(--fb-space-md);display:flex;flex-direction:column;gap:var(--fb-space-md);margin-block-start:var(--fb-space-md)}.fb-sheetText_yRGd-{font-size:var(--fb-font-size-sm)}.fb-size-small_YcmVE{max-inline-size:24rem}.fb-size-medium_auCiA{max-inline-size:28rem}.fb-size-large_8EHM7{max-inline-size:42rem}.fb-modalButtonRow_c7V4P{display:flex;justify-content:flex-end;gap:var(--fb-space-sm);padding-block-start:var(--fb-space-md)}
|
|
1
|
+
:root{font-family:var(--fb-font-family-sans);--fb-primary: #7c3aed;--fb-primary-600: #7c3aed;--fb-primary-hover: #6d28d9;--fb-primary-active: #5b21b6;--fb-primary-dark: #4c1d95;--fb-primary-border: #c4b5fd;--fb-primary-foreground: #ffffff;--fb-primary-subtle: #ede9fe;--fb-primary-subtle-50: rgba(237, 233, 254, .5);--fb-background: #ffffff;--fb-surface: #fafaf9;--fb-surface-accent: #f5f3ff;--fb-surface-emphasis: #ede9fe;--fb-surface-subtle: #f5f3ff;--fb-border: #ddd6fe;--fb-border-focus: #7c3aed;--fb-border-width: 1px;--fb-text: #0f0a1e;--fb-text-muted: #6b6480;--fb-text-on-primary: #ffffff;--fb-error: #dc2626;--fb-error-hover: #b91c1c;--fb-error-dark: #7f1d1d;--fb-error-muted: #fca5a5;--fb-error-subtle: #fecaca;--fb-error-border: #fca5a5;--fb-error-translucent: rgba(220, 38, 38, .3);--fb-error-surface: #fef2f2;--fb-success: #16a34a;--fb-success-hover: #15803d;--fb-success-bright: #22c55e;--fb-success-subtle: #bbf7d0;--fb-success-dark: #166534;--fb-success-surface: #f0fdf4;--fb-warning: #d97706;--fb-warning-surface: #fffbeb;--fb-info: #7c3aed;--fb-info-surface: #ede9fe;--fb-canvas-background: #f3f3f3;--fb-neutral-50: #f9fafb;--fb-neutral-100: #ede9fe;--fb-neutral-200: #ddd6fe;--fb-neutral-300: #a78bfa;--fb-neutral-500: #7c6b99;--fb-neutral-900: #1e1030;--fb-accent: #f5f3ff;--fb-accent-rgb: 245, 243, 255;--fb-amber-100: #fef3c7;--fb-amber-300: #fcd34d;--fb-amber-800: #92400e;--fb-violet-100: #ede9fe;--fb-violet-300: #c4b5fd;--fb-violet-700: #6d28d9;--fb-violet-800: #5b21b6;--fb-cyan-100: #cffafe;--fb-cyan-300: #67e8f9;--fb-cyan-800: #155e75;--fb-lime-100: #ecfccb;--fb-lime-300: #bef264;--fb-lime-800: #3f6212;--fb-pink-100: #fce7f3;--fb-pink-300: #f9a8d4;--fb-pink-800: #9d174d;--fb-warning-border: #fef08a;--fb-font-family-mono: ui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, "DejaVu Sans Mono", monospace;--fb-font-family-sans: "DM Sans", system-ui, sans-serif;--fb-font-size-2xs: .625rem;--fb-font-size-xs: .75rem;--fb-font-size-sm: .875rem;--fb-font-size-md: 1rem;--fb-font-size-lg: 1.125rem;--fb-font-size-xl: 1.25rem;--fb-font-size-2xl: 1.5rem;--fb-font-weight-normal: 400;--fb-font-weight-medium: 500;--fb-font-weight-semibold: 600;--fb-font-weight-bold: 700;--fb-line-height-tight: 1.25;--fb-line-height-normal: 1.5;--fb-line-height-relaxed: 1.75;--fb-space-50: .25rem;--fb-space-100: .5rem;--fb-space-150: .75rem;--fb-space-200: 1rem;--fb-space-250: 1.25rem;--fb-space-300: 1.5rem;--fb-space-350: 1.75rem;--fb-space-400: 2rem;--fb-space-450: 2.25rem;--fb-space-500: 2.5rem;--fb-space-550: 2.75rem;--fb-space-600: 3rem;--fb-space-650: 3.25rem;--fb-space-700: 3.5rem;--fb-space-xs: var(--fb-space-50);--fb-space-sm: var(--fb-space-100);--fb-space-md: var(--fb-space-200);--fb-space-lg: var(--fb-space-300);--fb-space-xl: var(--fb-space-400);--fb-space-2xl: var(--fb-space-600);--fb-space-3xl: var(--fb-space-700);--fb-space-md-neg: calc(-1 * var(--fb-space-200));--fb-space-1: .0625rem;--fb-space-2: .125rem;--fb-space-3: .1875rem;--fb-space-6: .375rem;--fb-space-10: .625rem;--fb-space-12: var(--fb-space-150);--fb-space-14: .875rem;--fb-space-20: var(--fb-space-250);--fb-size-touch-target: var(--fb-space-500);--fb-padding-card: var(--fb-space-250);--fb-padding-card-sm: var(--fb-space-200);--fb-gap-section: var(--fb-space-200);--fb-gap-cards: var(--fb-space-150);--fb-gap-inline: var(--fb-space-sm);--fb-container-max-width: 64rem;--fb-popover-width: 18rem;--fb-radius-sm: .25rem;--fb-radius-md: .375rem;--fb-radius-lg: .5rem;--fb-radius-xl: .75rem;--fb-radius-full: 100vmax;--fb-shadow-sm: 0 1px 2px 0 rgb(124 58 237 / .08);--fb-shadow-md: 0 4px 6px -1px rgb(124 58 237 / .12), 0 2px 4px -2px rgb(124 58 237 / .08);--fb-shadow-lg: 0 10px 15px -3px rgb(124 58 237 / .15), 0 4px 6px -4px rgb(124 58 237 / .1);--fb-z-base: 0;--fb-z-raised: 1;--fb-z-dropdown: 1000;--fb-z-sticky: 1100;--fb-z-overlay: 1200;--fb-z-modal: 1300;--fb-z-toast: 1400}button,input,optgroup,select,textarea{font-family:inherit}.fb-wrapper_nDU5Q{display:flex;flex-direction:column;gap:var(--fb-space-sm)}.fb-progress_jf4Xd{appearance:none;background-color:var(--fb-primary-subtle);border:none;border-radius:8px;height:16px;overflow:hidden;width:100%}.fb-progress_jf4Xd::-webkit-progress-bar{background-color:transparent}.fb-progress_jf4Xd::-webkit-progress-value{background-color:var(--fb-primary);transition:all .4s cubic-bezier(.4,0,.2,1)}.fb-progress_jf4Xd::-moz-progress-bar{background-color:var(--fb-primary);transition:all .4s cubic-bezier(.4,0,.2,1)}label.fb-progressLabel_3nfSJ{font-size:var(--fb-font-size-sm);font-weight:var(--fb-font-weight-normal);line-height:var(--fb-line-height-normal)}.fb-completionMessage_OyQ9C{display:flex;align-items:center;gap:var(--fb-space-2);font-size:var(--fb-font-size-sm);color:var(--fb-success);animation:fb-fadeIn_iAZjj .3s ease-out}.fb-errorMessage_B8dGO{display:flex;align-items:center;justify-content:space-between;font-size:var(--fb-font-size-sm);color:var(--fb-error)}.fb-errorContent_2TAc5{display:flex;align-items:center;gap:var(--fb-space-2)}.fb-retryButton_0HfjY{display:flex;align-items:center;gap:var(--fb-space-1);font-weight:var(--fb-font-weight-medium);color:var(--fb-error);text-decoration:underline;text-underline-offset:2px;background:none;border:none;cursor:pointer}.fb-retryButton_0HfjY:hover{color:var(--fb-error-hover)}@keyframes fb-fadeIn_iAZjj{0%{opacity:0}to{opacity:1}}.fb-boxContainer_oXGAN{background-color:var(--fb-background);border-radius:var(--fb-radius-md);padding:var(--fb-space-md)}.fb-GridLayoutContainer_BZvnG{align-items:center;background-color:var(--grid-container-background-color);display:flex;flex-direction:column;justify-content:center;max-width:100vw;min-width:var(--fb-container-max-width)}.fb-GridLayoutContainerWithoutPadding_4kQ4C{padding-block:0}.fb-GridLayoutContainerFullWidth_pYcHf{min-width:100%;max-width:100%}.fb-GridLayout_A2c7k{container-type:inline-size;display:grid;gap:var(--grid-row-gap, var(--fb-space-12)) var(--grid-column-gap, var(--fb-space-md));grid-template-columns:repeat(var(--grid-column-max-columns, 12),1fr);grid-template-rows:auto;margin-left:auto;margin-right:auto;max-width:var(--fb-container-max-width);min-width:var(--fb-container-max-width);width:100%}.fb-GridLayoutFullWidth_NMi3Y{max-width:100%;min-width:100%}.fb-gridLayoutColumn_5TCzp{align-self:start;grid-column:var(--grid-column-start) / var(--grid-column-end);grid-row:var(--grid-row-start, auto) / var(--grid-row-end, auto)}.fb-stretch_n7mLP{align-self:stretch}.fb-formLayoutWrapper_w9jQ-{width:100%;font-family:inherit}.fb-titleSection_qd9UP{display:flex;flex-direction:column;align-items:flex-start;width:100%}.fb-leftColumn_zIdZO,.fb-rightColumn_P0J6U{display:flex;flex-direction:column;height:fit-content;min-height:0;position:sticky;top:0}.fb-footerSection_eW4js{display:flex;flex-direction:column;align-items:flex-start;width:100%;margin-top:var(--fb-space-md)}.fb-contentPadding_LMiyE{padding:var(--fb-space-12)}.fb-contentBorder_yYFFn{border:var(--fb-border-width) solid var(--fb-neutral-200);border-radius:var(--fb-radius-md);background-color:var(--fb-surface-accent)}@container (max-width: 768px){.fb-leftColumn_zIdZO,.fb-rightColumn_P0J6U{grid-column:1 / 13!important;margin-bottom:var(--fb-space-12)}.fb-mainContent_9ZW4m{grid-column:1 / 13!important}}@media print{.fb-formLayoutWrapper_w9jQ-{background:var(--fb-background)!important}.fb-contentBorder_yYFFn{border:var(--fb-border-width) solid var(--fb-border)!important;box-shadow:none!important}}.fb-errorState_khSRW{padding:var(--fb-space-md);border:var(--fb-border-width) solid var(--fb-error-translucent);background-color:var(--fb-error-surface);color:var(--fb-error);border-radius:var(--fb-radius-md)}.fb-errorHeading_dGdN2{font-weight:500;margin-block-end:var(--fb-space-sm)}.fb-loadingState_Pdhds{padding:var(--fb-space-md);text-align:center;color:var(--fb-text-muted)}.fb-loadingPulse_QIw08{animation:fb-pulse_7Ml6n 2s ease-in-out infinite}@keyframes fb-pulse_7Ml6n{0%,to{opacity:1}50%{opacity:.5}}.fb-formLayout_JzC8E{margin-block:var(--fb-space-xl)}.fb-stepContent_EU1uV{display:flex;flex-direction:column;gap:var(--fb-space-lg)}.fb-loaderWrapper_00phH{margin-block-end:var(--fb-space-md)}.fb-footer_r0kdp{margin-block-start:var(--fb-space-lg)}.fb-container_p6qC4{margin-block-end:var(--fb-space-sm);padding-block-end:var(--fb-space-md);border-block-end:var(--fb-border-width) solid var(--fb-border)}.fb-disabled_EuvTp{opacity:.5}.fb-prevButtonDisabled_Wj2Qp{opacity:.5;cursor:default}.fb-additionalContent_0tppE{margin-block-start:var(--fb-space-md)}.fb-section_5kbZU{margin-block-end:var(--fb-space-lg)}.fb-sectionHeader_aVzgk{display:flex;justify-content:space-between;align-items:center;margin-block-end:var(--fb-space-md)}.fb-cancelButton_PyIZH{font-size:var(--fb-font-size-sm);color:var(--fb-text-muted);display:flex;align-items:center;gap:var(--fb-space-2);background:none;border:none;cursor:pointer}.fb-editButton_dbSFX{font-size:var(--fb-font-size-sm);color:var(--fb-info);display:flex;align-items:center;gap:var(--fb-space-2);background:none;border:none;cursor:pointer}.fb-sectionContent_wTlW-{display:flex;flex-direction:column;gap:var(--fb-space-md)}.fb-saveButtonsWrapper_VGuwW{display:flex;padding-block-start:var(--fb-space-md)}.fb-iconSm_yLpHW{width:1rem;height:1rem}.fb-alertList_d0DxG{display:flex;flex-direction:column;gap:var(--fb-space-sm)}.fb-errorFallback_CNx1M{padding:var(--fb-space-sm);border:var(--fb-border-width) solid var(--fb-error-translucent);background-color:var(--fb-error-surface);color:var(--fb-error);border-radius:var(--fb-radius-md)}.fb-errorDetail_Nvh9V{font-size:var(--fb-font-size-xs);margin-block-start:var(--fb-space-2)}.fb-displayWrapper_VYcQC{display:flex;flex-direction:column;gap:var(--fb-space-md)}.fb-emptyValue_baQFk{color:var(--fb-text-muted);font-style:italic}.fb-valueText_JCRsN{color:var(--fb-text)}.fb-fieldWrapper_rnKUQ{display:flex;flex-direction:column;gap:var(--fb-space-2)}.fb-alert_5UcaT{position:relative;inline-size:100%;border-radius:var(--fb-radius-md);border:var(--fb-border-width) solid var(--fb-border);padding:var(--fb-space-md)}.fb-alert_5UcaT>svg{position:absolute;left:var(--fb-space-md);top:var(--fb-space-md);color:var(--fb-text)}.fb-alert_5UcaT>svg~*{padding-inline-start:1.75rem}.fb-alert_5UcaT>svg+div{transform:translateY(-3px)}.fb-variant-default_yhEpY{background-color:var(--fb-background);color:var(--fb-text)}.fb-variant-destructive_rafp5{border-color:var(--fb-error);color:var(--fb-error)}.fb-variant-destructive_rafp5>svg{color:var(--fb-error)}.fb-alertTitle_-KE5o{margin-block-end:var(--fb-space-sm);font-weight:500;line-height:1;letter-spacing:-.025em}.fb-alertDescription_cg7Ke{font-size:var(--fb-font-size-sm)}.fb-alertDescription_cg7Ke p{line-height:1.625}.fb-button_MJLDl{display:inline-flex;align-items:center;justify-content:center;gap:var(--fb-space-sm);white-space:nowrap;border-radius:var(--fb-radius-md);font-size:var(--fb-font-size-md);font-weight:var(--fb-font-weight-semibold);transition:background-color .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease,opacity .15s ease;cursor:pointer;outline:none;border:1px solid transparent}.fb-button_MJLDl:focus-visible{outline:2px solid var(--fb-border-focus);outline-offset:2px}.fb-button_MJLDl:disabled{pointer-events:none;opacity:.5}.fb-button_MJLDl span{font-size:inherit;font-weight:inherit;line-height:inherit}.fb-button_MJLDl svg{pointer-events:none;inline-size:1rem;block-size:1rem;flex-shrink:0}.fb-variant-default_KLx8b{background-color:var(--fb-primary);color:var(--fb-primary-foreground);border-color:var(--fb-primary);box-shadow:var(--fb-shadow-sm)}.fb-variant-default_KLx8b:hover:not(:disabled){background-color:var(--fb-primary-hover);border-color:var(--fb-primary-hover);box-shadow:var(--fb-shadow-md)}.fb-variant-default_KLx8b:active:not(:disabled){background-color:var(--fb-primary-active);border-color:var(--fb-primary-active);box-shadow:none}.fb-variant-destructive_vQKZ2{background-color:var(--fb-error);color:var(--fb-text-on-primary);border-color:var(--fb-error);box-shadow:var(--fb-shadow-sm)}.fb-variant-destructive_vQKZ2:hover:not(:disabled){background-color:var(--fb-error-hover);border-color:var(--fb-error-hover);box-shadow:var(--fb-shadow-md)}.fb-variant-destructive_vQKZ2:active:not(:disabled){background-color:var(--fb-error-dark);box-shadow:none}.fb-variant-outline_1Mb0E{background-color:var(--fb-background);color:var(--fb-text);border-color:var(--fb-border)}.fb-variant-outline_1Mb0E:hover:not(:disabled){background-color:var(--fb-surface-accent);border-color:var(--fb-primary-border);color:var(--fb-primary)}.fb-variant-outline_1Mb0E:active:not(:disabled){background-color:var(--fb-surface-emphasis);border-color:var(--fb-primary);color:var(--fb-primary)}.fb-variant-secondary_-bohS{background-color:var(--fb-neutral-100);color:var(--fb-text);border-color:var(--fb-neutral-200)}.fb-variant-secondary_-bohS:hover:not(:disabled){background-color:var(--fb-neutral-200);border-color:var(--fb-primary-border);color:var(--fb-primary)}.fb-variant-ghost_qml-f{background-color:transparent;color:var(--fb-text);border-color:transparent}.fb-variant-ghost_qml-f:hover:not(:disabled){background-color:var(--fb-surface-accent);color:var(--fb-primary)}.fb-variant-ghost_qml-f:active:not(:disabled){background-color:var(--fb-surface-emphasis);color:var(--fb-primary)}.fb-variant-link_aNj3r{background-color:transparent;color:var(--fb-primary);text-underline-offset:.25rem;border-color:transparent}.fb-variant-link_aNj3r:hover:not(:disabled){text-decoration:underline;color:var(--fb-primary-hover)}.fb-size-default_9qKVU{block-size:var(--fb-size-touch-target);padding-inline:var(--fb-space-md);padding-block:var(--fb-space-sm)}.fb-size-sm_MvjvS{block-size:2.25rem;padding-inline:var(--fb-space-12);border-radius:var(--fb-radius-md);font-size:var(--fb-font-size-xs)}.fb-size-lg_v6n8j{block-size:2.75rem;padding-inline:var(--fb-space-20);border-radius:var(--fb-radius-md);font-size:var(--fb-font-size-md);font-weight:var(--fb-font-weight-semibold)}.fb-size-icon_MYsET{block-size:var(--fb-size-touch-target);inline-size:var(--fb-size-touch-target);padding:0}.fb-card_Ry9d9{border-radius:var(--fb-radius-lg);border:var(--fb-border-width) solid var(--fb-border);background-color:var(--fb-background);color:var(--fb-text);box-shadow:var(--fb-shadow-md);overflow:hidden}.fb-cardCompact_wGBoD{border-radius:var(--fb-radius-md);box-shadow:var(--fb-shadow-sm)}.fb-cardHeader_exSCY{display:flex;flex-direction:column;gap:var(--fb-space-6);padding:var(--fb-padding-card)}.fb-cardHeaderStructured_UBow4{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--fb-space-200);padding:var(--fb-space-200) var(--fb-space-250);border-bottom:1px solid var(--fb-border);background:var(--fb-surface)}.fb-cardHeaderStructuredCompact_jH94z{padding:var(--fb-space-150) var(--fb-space-200)}.fb-cardHeaderLeft_PnQMU{flex:1;min-width:0}.fb-cardTitleRow_XU5Go{display:flex;align-items:center;gap:var(--fb-space-100);flex-wrap:wrap}.fb-cardTitleText_imcqj{font-size:var(--fb-font-size-sm);font-weight:var(--fb-font-weight-semibold);color:var(--fb-text);line-height:var(--fb-line-height-tight)}.fb-cardDescriptionText_oCoiA{font-size:var(--fb-font-size-xs);color:var(--fb-text-muted);margin-top:var(--fb-space-50);line-height:var(--fb-line-height-normal)}.fb-cardMeta_Ch80f{display:flex;gap:var(--fb-space-200);margin-top:var(--fb-space-100);flex-wrap:wrap}.fb-cardMetaItem_ggGU8{font-size:11px;color:var(--fb-text-muted);display:flex;align-items:center;gap:4px}.fb-cardHeaderRight_rEXk0{display:flex;align-items:center;gap:var(--fb-space-100);flex-shrink:0}.fb-cardBody_lIAav{padding:var(--fb-space-200) var(--fb-space-250)}.fb-cardBodyFlush_tfGIm{padding:0}.fb-cardFooter_BAcjS{display:flex;align-items:center;justify-content:flex-end;gap:var(--fb-space-100);padding:var(--fb-space-150) var(--fb-space-250);border-top:1px solid var(--fb-border);background:var(--fb-surface-accent)}.fb-cardDivider_-i-Kq{height:1px;background:var(--fb-border);margin:0 var(--fb-space-250)}.fb-cardTitle_mLAib{font-size:var(--fb-font-size-md);font-weight:var(--fb-font-weight-semibold);line-height:1;letter-spacing:-.025em;color:var(--fb-text)}.fb-cardDescription_iLv2K{font-size:var(--fb-font-size-xs);color:var(--fb-text-muted)}.fb-cardContent_HJ92K{padding:var(--fb-padding-card);padding-block-start:0}.fb-stepListWrapper_RTLUk{display:flex;flex-direction:column;font-family:inherit;gap:var(--fb-space-12)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4{color:var(--fb-text-muted);display:flex;flex-direction:row;gap:var(--fb-space-6);padding-bottom:var(--fb-space-2)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-leftContainer_o-gBE{align-items:center;display:flex;flex-direction:column;gap:var(--fb-space-xs);padding-top:var(--fb-space-2)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-leftContainer_o-gBE .fb-circle_3oinV{align-items:center;background-color:transparent;border:var(--fb-border-width) solid var(--fb-border);border-radius:var(--fb-radius-full);color:var(--fb-background);display:flex;justify-content:center;min-block-size:calc(1.25rem - 2 * var(--fb-border-width));min-inline-size:calc(1.25rem - 2 * var(--fb-border-width))}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-leftContainer_o-gBE .fb-circle_3oinV .fb-currentDot_0e9gN{background-color:var(--fb-primary);border-radius:var(--fb-radius-full);height:14px;width:14px}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-leftContainer_o-gBE .fb-connector_bDvRA{background-color:var(--fb-text-muted);block-size:100%;inline-size:1.5px;min-block-size:36px}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-content_u43H4{align-items:start;border-radius:var(--fb-radius-md);color:var(--fb-text-muted);display:flex;flex-direction:row;inline-size:100%;margin-block-end:var(--fb-space-6);padding:var(--fb-space-2) var(--fb-space-6);text-wrap:balance}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-content_u43H4 .fb-stepNumber_c2YRs{color:var(--fb-text-muted);font-size:var(--fb-font-size-sm);font-weight:var(--fb-font-weight-semibold);line-height:var(--fb-line-height-tight)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-content_u43H4 .fb-stepTitle_w5Be8{font-size:var(--fb-font-size-sm);line-height:var(--fb-line-height-normal)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-content_u43H4 .fb-stepLink_sqt2-{color:var(--fb-primary);cursor:pointer;font-weight:var(--fb-font-weight-normal);line-height:var(--fb-line-height-normal);text-decoration:underline}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-content_u43H4 .fb-stepLink_sqt2-:hover{color:var(--fb-primary-hover);text-decoration:underline}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-content_u43H4 .fb-stepLink_sqt2-:focus{outline-offset:2px;outline-style:solid;outline-width:2px;text-decoration:underline}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4 .fb-iconRightContainer_DCjrS{align-self:center;block-size:1.25rem;color:var(--fb-primary);display:flex;inline-size:1.25rem;margin-inline-start:auto}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4.fb-completed_F-mOG .fb-leftContainer_o-gBE .fb-circle_3oinV{background-color:var(--fb-primary);border-color:var(--fb-primary);border-style:solid;border-width:var(--fb-border-width)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4.fb-completed_F-mOG .fb-leftContainer_o-gBE .fb-connector_bDvRA{background-color:var(--fb-primary)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4.fb-completed_F-mOG .fb-content_u43H4,.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4.fb-completed_F-mOG .fb-content_u43H4 .fb-stepNumber_c2YRs{color:var(--fb-text)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4.fb-current_QAO1e .fb-leftContainer_o-gBE .fb-circle_3oinV{border-color:var(--fb-primary);border-style:solid;border-width:var(--fb-border-width)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4.fb-current_QAO1e .fb-content_u43H4{background-color:var(--fb-background);color:var(--fb-text)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4.fb-current_QAO1e .fb-content_u43H4 .fb-stepNumber_c2YRs{color:var(--fb-text)}.fb-stepList_b7ucJ .fb-stepListItem_G8Nh4.fb-inactive_tYqvV .fb-content_u43H4{color:var(--fb-text-muted)}.fb-dialogOverlay_GSMVm{position:fixed;inset:0;z-index:50;background-color:#000c}.fb-dialogOverlay_GSMVm[data-state=open]{animation:fb-dialogOverlayFadeIn_l-QHK .15s ease-out}.fb-dialogOverlay_GSMVm[data-state=closed]{animation:fb-dialogOverlayFadeOut_DewLt .15s ease-in}.fb-dialogContent_neUay{position:fixed;left:50%;top:50%;z-index:50;display:grid;width:100%;max-width:32rem;translate:-50% -50%;gap:var(--fb-space-sm);border:var(--fb-border-width) solid var(--fb-border);background-color:var(--fb-background);padding:var(--fb-space-12);box-shadow:var(--fb-shadow-lg);transition-duration:.2s}@media(min-width:640px){.fb-dialogContent_neUay{border-radius:var(--fb-radius-lg)}}.fb-dialogContent_neUay[data-state=open]{animation:fb-dialogContentSlideIn_oQPJG .2s ease-out}.fb-dialogContent_neUay[data-state=closed]{animation:fb-dialogContentSlideOut_nNdgq .2s ease-in}.fb-dialogClose_QbWkj{position:absolute;right:var(--fb-space-sm);top:var(--fb-space-sm);border-radius:var(--fb-radius-sm);opacity:.7;transition:opacity .15s}.fb-dialogClose_QbWkj:hover{opacity:1}.fb-dialogClose_QbWkj:focus{outline:none;box-shadow:0 0 0 2px var(--fb-border-focus);opacity:1}.fb-dialogClose_QbWkj:disabled{pointer-events:none}.fb-dialogClose_QbWkj[data-state=open]{background-color:var(--fb-accent);color:var(--fb-text-muted)}.fb-dialogCloseIcon_kK8c6{block-size:1rem;inline-size:1rem}.fb-dialogCloseIcon_kK8c6+span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fb-dialogHeader_df1-u{display:flex;flex-direction:column;gap:var(--fb-space-3);text-align:center}@media(min-width:640px){.fb-dialogHeader_df1-u{text-align:start}}.fb-dialogFooter_1vdJe{display:flex;flex-direction:column-reverse;gap:var(--fb-space-sm)}@media(min-width:640px){.fb-dialogFooter_1vdJe{flex-direction:row;justify-content:flex-end;gap:var(--fb-space-sm)}}.fb-dialogTitle_FS7k8{font-size:var(--fb-font-size-lg);font-weight:var(--fb-font-weight-semibold);line-height:1;letter-spacing:-.025em}.fb-dialogDescription_uEgTa{font-size:var(--fb-font-size-sm);color:var(--fb-text-muted)}@keyframes fb-dialogOverlayFadeIn_l-QHK{0%{opacity:0}to{opacity:1}}@keyframes fb-dialogOverlayFadeOut_DewLt{0%{opacity:1}to{opacity:0}}@keyframes fb-dialogContentSlideIn_oQPJG{0%{opacity:0;transform:translate(-50%,-48%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes fb-dialogContentSlideOut_nNdgq{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-48%) scale(.95)}}.fb-sheetOverlay_2nFRz{position:fixed;inset:0;z-index:50;background-color:#000c}.fb-sheetOverlay_2nFRz[data-state=open]{animation:fb-sheetOverlayFadeIn_AS-42 .15s ease-out}.fb-sheetOverlay_2nFRz[data-state=closed]{animation:fb-sheetOverlayFadeOut_Y-hE4 .15s ease-in}.fb-sheetContent_p2PyE{position:fixed;z-index:50;gap:var(--fb-space-sm);background-color:var(--fb-background);padding:var(--fb-space-12);box-shadow:var(--fb-shadow-lg);transition:transform .5s ease-in-out,opacity .5s ease-in-out}.fb-side-top_vnDBA{inset-inline:0;top:0;border-block-end:var(--fb-border-width) solid var(--fb-border)}.fb-side-top_vnDBA[data-state=open]{animation:fb-slideInFromTop_ujZFr .5s ease-in-out}.fb-side-top_vnDBA[data-state=closed]{animation:fb-slideOutToTop_sjz0S .3s ease-in-out}.fb-side-bottom_8Qo-6{inset-inline:0;bottom:0;border-block-start:var(--fb-border-width) solid var(--fb-border)}.fb-side-bottom_8Qo-6[data-state=open]{animation:fb-slideInFromBottom_5kG78 .5s ease-in-out}.fb-side-bottom_8Qo-6[data-state=closed]{animation:fb-slideOutToBottom_03WBw .3s ease-in-out}.fb-side-left_iSyK6{inset-block:0;left:0;block-size:100%;inline-size:75%;border-inline-end:var(--fb-border-width) solid var(--fb-border)}@media(min-width:640px){.fb-side-left_iSyK6{max-inline-size:24rem}}.fb-side-left_iSyK6[data-state=open]{animation:fb-slideInFromLeft_iFt5a .5s ease-in-out}.fb-side-left_iSyK6[data-state=closed]{animation:fb-slideOutToLeft_kRHa5 .3s ease-in-out}.fb-side-right_q-l6-{inset-block:0;right:0;block-size:100%;inline-size:75%;border-inline-start:var(--fb-border-width) solid var(--fb-border)}@media(min-width:640px){.fb-side-right_q-l6-{max-inline-size:24rem}}.fb-side-right_q-l6-[data-state=open]{animation:fb-slideInFromRight_elDbR .5s ease-in-out}.fb-side-right_q-l6-[data-state=closed]{animation:fb-slideOutToRight_HPV1P .3s ease-in-out}.fb-sheetClose_sq3cW{position:absolute;right:var(--fb-space-sm);top:var(--fb-space-sm);border-radius:var(--fb-radius-sm);opacity:.7;transition:opacity .15s}.fb-sheetClose_sq3cW:hover{opacity:1}.fb-sheetClose_sq3cW:focus{outline:none;box-shadow:0 0 0 2px var(--fb-border-focus);opacity:1}.fb-sheetClose_sq3cW:disabled{pointer-events:none}.fb-sheetClose_sq3cW[data-state=open]{background-color:var(--fb-surface)}.fb-sheetCloseIcon_2Z7S1{block-size:1rem;inline-size:1rem}.fb-sheetCloseIcon_2Z7S1+span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.fb-sheetHeader_w9TtP{display:flex;flex-direction:column;gap:var(--fb-space-sm);text-align:center}@media(min-width:640px){.fb-sheetHeader_w9TtP{text-align:start}}.fb-sheetFooter_XN1p0{display:flex;flex-direction:column-reverse;gap:var(--fb-space-sm)}@media(min-width:640px){.fb-sheetFooter_XN1p0{flex-direction:row;justify-content:flex-end;gap:var(--fb-space-sm)}}.fb-sheetTitle_F6nNH{font-size:var(--fb-font-size-lg);font-weight:var(--fb-font-weight-semibold);color:var(--fb-text)}.fb-sheetDescription_AzWJb{font-size:var(--fb-font-size-sm);color:var(--fb-text-muted)}@keyframes fb-sheetOverlayFadeIn_AS-42{0%{opacity:0}to{opacity:1}}@keyframes fb-sheetOverlayFadeOut_Y-hE4{0%{opacity:1}to{opacity:0}}@keyframes fb-slideInFromTop_ujZFr{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes fb-slideOutToTop_sjz0S{0%{transform:translateY(0)}to{transform:translateY(-100%)}}@keyframes fb-slideInFromBottom_5kG78{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fb-slideOutToBottom_03WBw{0%{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes fb-slideInFromLeft_iFt5a{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes fb-slideOutToLeft_kRHa5{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes fb-slideInFromRight_elDbR{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes fb-slideOutToRight_HPV1P{0%{transform:translate(0)}to{transform:translate(100%)}}.fb-dialogContent_MQjVY{max-inline-size:28rem}.fb-iconRow_zoQXV{display:flex;align-items:center;gap:var(--fb-space-12)}.fb-iconCircle_UvpAZ{border-radius:var(--fb-radius-full);background-color:var(--fb-surface);padding:var(--fb-space-sm)}.fb-descriptionSpaced_AmH9W{margin-block-start:var(--fb-space-2)}.fb-buttonRow_lfgxL{display:flex;justify-content:flex-end;gap:var(--fb-space-sm);padding-block-start:var(--fb-space-md)}.fb-minWidthButton_maffF{min-inline-size:6rem}.fb-iconWarning_OcS7O{width:1.25rem;height:1.25rem;color:var(--fb-warning)}.fb-iconInfo_xQhjd{width:1.25rem;height:1.25rem;color:var(--fb-info)}.fb-vcContainer_oHl8H{cursor:text;display:flex;gap:16px;pointer-events:none;position:relative}.fb-vcInput_Nb8NL{inset:0;pointer-events:none;position:absolute}.fb-vcInput_Nb8NL input{background:transparent;block-size:100%;border-color:transparent;caret-color:transparent;color:transparent;font-family:inherit;font-size:18px;font-weight:400;inline-size:100%;letter-spacing:80px;line-height:28px;outline:transparent solid 2px;pointer-events:all;text-align:left;-webkit-user-select:none;user-select:none}.fb-vcInput_Nb8NL input::selection{background-color:transparent}.fb-vcGroup_5z3tY{align-items:center;display:flex;gap:16px;inline-size:100%}.fb-vcDash_R8D18{align-items:center;block-size:48px;display:flex;font-family:inherit;font-size:18px;font-style:normal;font-weight:400;justify-content:center;line-height:1.4}.fb-vcSlot_AZfrj{align-items:center;background:#fff;block-size:48px;border:var(--fb-border-width) solid var(--fb-border);border-radius:8px;color:var(--fb-text);display:flex;flex-basis:12px;flex-grow:1;font-family:inherit;font-size:16px;font-style:normal;font-weight:400;justify-content:center;line-height:1.4;outline:transparent solid 2px}.fb-vcSlotActive_1Zqta{border-color:var(--fb-border-focus);outline-color:var(--fb-border-focus)}.fb-vcCaret_pQ-uD{align-items:center;animation-duration:1.2s;animation-iteration-count:infinite;animation-name:fb-caret-blink_jfhv0;animation-timing-function:ease-out;display:flex;pointer-events:none}.fb-vcCaret_pQ-uD>div{background-color:var(--fb-text);height:18px;width:1px}@keyframes fb-caret-blink_jfhv0{0%,70%,to{opacity:1}20%,50%{opacity:0}}.fb-dialogContent_hdJb3{max-inline-size:28rem}.fb-headerRow_dowgv{display:flex;align-items:center;gap:var(--fb-space-sm)}.fb-iconSuccess_787to{color:var(--fb-success)}.fb-iconMail_yICFX{color:var(--fb-info)}.fb-successButtonRow_LilmE{display:flex;justify-content:center;padding-block-start:var(--fb-space-md)}.fb-minWidthButton_Y-HfD{min-inline-size:8rem}.fb-formContent_DRlgi{display:flex;flex-direction:column;gap:var(--fb-space-md)}.fb-codeSection_vJqzI{display:flex;flex-direction:column;gap:var(--fb-space-sm)}.fb-codeLabel_PvgkB{font-size:var(--fb-font-size-sm);font-weight:500}.fb-codeCenter_j2TST{display:flex;justify-content:center}.fb-resendText_fsAeq,.fb-blockedText_ZGaBs{text-align:center;font-size:var(--fb-font-size-sm);color:var(--fb-text-muted)}.fb-resendLink_dRMub{padding:0;block-size:auto;color:var(--fb-info)}.fb-resendLinkDefault_sVy7D{padding:0;block-size:auto}.fb-footerButtonRow_dFkH0{display:flex;justify-content:flex-end;gap:var(--fb-space-sm);padding-block-start:var(--fb-space-md)}.fb-iconSm_JkMbO{width:1rem;height:1rem}.fb-iconMd_y--1E{width:1.25rem;height:1.25rem}.fb-buttonRow_IpMPI{display:flex;flex-wrap:wrap;gap:var(--fb-space-sm);justify-content:flex-end}.fb-minWidthButton_Ggq-E{min-inline-size:4rem}.fb-toastContainer_iL55M{position:fixed;inset-block-start:var(--fb-space-md);inset-inline-end:var(--fb-space-md);z-index:50;max-inline-size:24rem}.fb-toastCard_EslQ-{background-color:var(--fb-background);border:var(--fb-border-width) solid var(--fb-border);border-radius:var(--fb-radius-lg);box-shadow:var(--fb-shadow-lg);padding:var(--fb-space-md);display:flex;flex-direction:column;gap:var(--fb-space-12)}.fb-toastTitle_W3izr{font-weight:var(--fb-font-weight-semibold)}.fb-toastContent_h6A9y{font-size:var(--fb-font-size-sm);color:var(--fb-text-muted);margin-block-start:var(--fb-space-2)}.fb-sheetContent_Ccs86{inline-size:400px}@media(min-width:640px){.fb-sheetContent_Ccs86{inline-size:540px}}.fb-sheetBody_XqkvA{flex:1;padding-block-end:var(--fb-space-md);display:flex;flex-direction:column;gap:var(--fb-space-md);margin-block-start:var(--fb-space-md)}.fb-sheetText_yRGd-{font-size:var(--fb-font-size-sm)}.fb-size-small_YcmVE{max-inline-size:24rem}.fb-size-medium_auCiA{max-inline-size:28rem}.fb-size-large_8EHM7{max-inline-size:42rem}.fb-modalButtonRow_c7V4P{display:flex;justify-content:flex-end;gap:var(--fb-space-sm);padding-block-start:var(--fb-space-md)}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsxs as k, Fragment as D, jsx as B } from "react/jsx-runtime";
|
|
3
|
-
|
|
4
|
-
import { logger as O } from "../../../../../../ui/src/lib/logger.js";
|
|
3
|
+
import { logger as O } from "../../../../../../core/src/utils/logger.js";
|
|
5
4
|
import { useApiAction as z } from "../../../form-runtime/hooks/useApiActions.js";
|
|
6
5
|
import { ActionValidator as q, ActionValidationError as R } from "../../../validation-system/validation/ActionValidation.js";
|
|
7
6
|
import { memo as L, useState as N, useRef as I, useMemo as h, useEffect as m, useCallback as w } from "react";
|
package/wizard/src/features/form-runtime/ComponentAdapterComplete/ComponentAdapterComplete.js
CHANGED
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
import { jsx as l, jsxs as m } from "react/jsx-runtime";
|
|
3
3
|
import c from "./ComponentAdapterComplete.module.css.js";
|
|
4
4
|
import { FormFieldWrapper as x } from "../../../../../ui/src/design-system/components/FormFieldWrapper.js";
|
|
5
|
-
|
|
6
|
-
import { renderComponent as C } from "../../../../../ui/src/component-registry/renderComponent.js";
|
|
5
|
+
import { renderComponent as C } from "../../../../../core/src/registry/renderComponent.js";
|
|
7
6
|
const a = {
|
|
8
7
|
text: "text",
|
|
9
8
|
date: "date",
|
|
@@ -55,7 +54,7 @@ const a = {
|
|
|
55
54
|
"alert",
|
|
56
55
|
"button",
|
|
57
56
|
"progress-loader"
|
|
58
|
-
],
|
|
57
|
+
], T = (e, r, u, g, o, f, y) => {
|
|
59
58
|
try {
|
|
60
59
|
const t = F(e.type), h = {
|
|
61
60
|
// Base component properties
|
|
@@ -102,6 +101,6 @@ const a = {
|
|
|
102
101
|
}
|
|
103
102
|
};
|
|
104
103
|
export {
|
|
105
|
-
|
|
106
|
-
|
|
104
|
+
T as adaptComponentForRegistry,
|
|
105
|
+
T as default
|
|
107
106
|
};
|
|
@@ -1,63 +1,63 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as r, jsxs as d } from "react/jsx-runtime";
|
|
3
|
-
import {
|
|
3
|
+
import { rhcRenderer as u } from "../../../renderer/RHCRenderer.js";
|
|
4
|
+
import { registerRenderComponent as g } from "../../../../../core/src/registry/renderComponent.js";
|
|
5
|
+
import { FormEditingProvider as y } from "../../../../../core/src/providers/FormEditingContext.js";
|
|
6
|
+
import { ThemeProvider as C, useThemeConfig as F } from "../../../../../core/src/providers/ThemeContext.js";
|
|
4
7
|
/* empty css */
|
|
5
|
-
import { FormLayout as
|
|
6
|
-
import { formWizardQueryClient as
|
|
7
|
-
import { QueryClientProvider as
|
|
8
|
-
import { memo as
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import {
|
|
13
|
-
import
|
|
14
|
-
import W from "../../../../../ui/src/lib/error-boundaries/FormWizardErrorBoundary.js";
|
|
15
|
-
import { FormEditingProvider as E } from "../../../../../ui/src/lib/providers/FormEditingContext.js";
|
|
8
|
+
import { FormLayout as t } from "../../../../../ui/src/components/FormLayout/FormLayout.js";
|
|
9
|
+
import { formWizardQueryClient as v } from "../../../../../ui/src/lib/queryClient.js";
|
|
10
|
+
import { QueryClientProvider as S } from "@tanstack/react-query";
|
|
11
|
+
import { memo as M, useMemo as s } from "react";
|
|
12
|
+
import P from "./FormWizard.module.css.js";
|
|
13
|
+
import z from "../components/FormStep/FormStep.js";
|
|
14
|
+
import N from "../components/StepProgressIndicator/StepProgressIndicator.js";
|
|
15
|
+
import { useFormMachineProvider as W, FormMachineContext as E } from "../../state-management/machines/useFormMachine.js";
|
|
16
|
+
import x from "../../../../../ui/src/lib/error-boundaries/FormWizardErrorBoundary.js";
|
|
16
17
|
import i from "../../../../../ui/src/lib/error-boundaries/ComponentErrorBoundary.js";
|
|
17
|
-
import { ActionManager as
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
|
|
21
|
-
L(u);
|
|
22
|
-
const p = C(
|
|
18
|
+
import { ActionManager as L } from "../../trigger-action-system/components/ActionManager.js";
|
|
19
|
+
import { ValidationEngine as I } from "../../validation-system/validation/ValidationEngine.js";
|
|
20
|
+
import { Heading as T } from "@rijkshuisstijl-community/components-react";
|
|
21
|
+
const p = M(
|
|
23
22
|
({
|
|
24
23
|
config: e,
|
|
25
24
|
initialData: o = {},
|
|
26
25
|
onSubmit: l,
|
|
27
|
-
queryClient: c =
|
|
26
|
+
queryClient: c = v
|
|
28
27
|
}) => {
|
|
29
|
-
|
|
28
|
+
g(u);
|
|
29
|
+
const n = s(() => new I({
|
|
30
30
|
messageStyle: e.validationMessageStyle || "withLabel"
|
|
31
31
|
}), [e.validationMessageStyle]), f = s(() => ({
|
|
32
32
|
...e,
|
|
33
33
|
steps: e.steps.map((a) => {
|
|
34
|
-
const
|
|
34
|
+
const m = a;
|
|
35
35
|
return {
|
|
36
|
-
...
|
|
37
|
-
schema:
|
|
36
|
+
...m,
|
|
37
|
+
schema: m.schema || n.getStepSchema(m)
|
|
38
38
|
};
|
|
39
39
|
})
|
|
40
|
-
}), [e, n]), h =
|
|
40
|
+
}), [e, n]), h = W({
|
|
41
41
|
config: f,
|
|
42
42
|
initialData: o,
|
|
43
43
|
onSubmit: l
|
|
44
44
|
});
|
|
45
|
-
return /* @__PURE__ */ r(
|
|
46
|
-
/* @__PURE__ */ r(i, { componentName: "ActionManager", children: /* @__PURE__ */ r(
|
|
47
|
-
/* @__PURE__ */ d(
|
|
48
|
-
/* @__PURE__ */ r(
|
|
49
|
-
/* @__PURE__ */ r(
|
|
50
|
-
/* @__PURE__ */ r(i, { componentName: "FormStep", children: /* @__PURE__ */ r(
|
|
45
|
+
return /* @__PURE__ */ r(S, { client: c, children: /* @__PURE__ */ r(x, { formId: e.id, children: /* @__PURE__ */ r(y, { children: /* @__PURE__ */ d(E.Provider, { value: h, children: [
|
|
46
|
+
/* @__PURE__ */ r(i, { componentName: "ActionManager", children: /* @__PURE__ */ r(L, {}) }),
|
|
47
|
+
/* @__PURE__ */ d(t, { className: P.formLayout, children: [
|
|
48
|
+
/* @__PURE__ */ r(t.Title, { children: /* @__PURE__ */ r(T, { level: 1, children: e.title }) }),
|
|
49
|
+
/* @__PURE__ */ r(t.LeftColumn, { children: /* @__PURE__ */ r(i, { componentName: "StepProgressIndicator", children: /* @__PURE__ */ r(N, {}) }) }),
|
|
50
|
+
/* @__PURE__ */ r(i, { componentName: "FormStep", children: /* @__PURE__ */ r(z, {}) })
|
|
51
51
|
] })
|
|
52
52
|
] }) }) }) });
|
|
53
53
|
}
|
|
54
54
|
);
|
|
55
55
|
p.displayName = "FormWizardCore";
|
|
56
|
-
const
|
|
57
|
-
const o =
|
|
58
|
-
return /* @__PURE__ */ r(
|
|
56
|
+
const j = (e) => {
|
|
57
|
+
const o = F();
|
|
58
|
+
return /* @__PURE__ */ r(C, { config: o, children: /* @__PURE__ */ r(p, { ...e }) });
|
|
59
59
|
};
|
|
60
|
-
|
|
60
|
+
j.displayName = "FormWizard";
|
|
61
61
|
export {
|
|
62
|
-
|
|
62
|
+
j as default
|
|
63
63
|
};
|
|
@@ -1,29 +1,28 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as h, jsxs as F } from "react/jsx-runtime";
|
|
3
3
|
import { clsx as b } from "clsx";
|
|
4
|
-
|
|
5
|
-
import { useFormContext as
|
|
6
|
-
import { useFormEditing as g } from "../../../../../ui/src/lib/providers/FormEditingContext.js";
|
|
4
|
+
import { useFormEditing as S } from "../../../../../core/src/providers/FormEditingContext.js";
|
|
5
|
+
import { useFormContext as g } from "../hooks/useFormContext.js";
|
|
7
6
|
import { useFormMachine as N } from "../../state-management/machines/useFormMachine.js";
|
|
8
7
|
import { Button as A } from "@rijkshuisstijl-community/components-react";
|
|
9
8
|
const I = ({
|
|
10
9
|
navigation: r,
|
|
11
10
|
children: a,
|
|
12
|
-
isDisplayOnly:
|
|
11
|
+
isDisplayOnly: t = !1,
|
|
13
12
|
onNext: c,
|
|
14
|
-
isLastStep:
|
|
13
|
+
isLastStep: u = !1,
|
|
15
14
|
isDisabled: n = !1,
|
|
16
15
|
labels: i,
|
|
17
16
|
...o
|
|
18
17
|
}) => {
|
|
19
18
|
const l = () => {
|
|
20
|
-
|
|
21
|
-
}, m = r?.next?.label || (
|
|
19
|
+
t || n || c?.();
|
|
20
|
+
}, m = r?.next?.label || (u ? i?.finish ?? "Voltooien" : i?.next ?? "Volgende");
|
|
22
21
|
return /* @__PURE__ */ F(
|
|
23
22
|
"div",
|
|
24
23
|
{
|
|
25
24
|
className: b(
|
|
26
|
-
(n ||
|
|
25
|
+
(n || t) && "opacity-50",
|
|
27
26
|
o.className
|
|
28
27
|
),
|
|
29
28
|
...o,
|
|
@@ -34,45 +33,45 @@ const I = ({
|
|
|
34
33
|
{
|
|
35
34
|
appearance: "primary-action-button",
|
|
36
35
|
onClick: l,
|
|
37
|
-
disabled: n ||
|
|
36
|
+
disabled: n || t,
|
|
38
37
|
children: m
|
|
39
38
|
}
|
|
40
39
|
)
|
|
41
40
|
]
|
|
42
41
|
}
|
|
43
42
|
);
|
|
44
|
-
},
|
|
45
|
-
const { isEditing: c } =
|
|
43
|
+
}, _ = ({ children: r, labels: a, ...t }) => {
|
|
44
|
+
const { isEditing: c } = S(), [u, n, i] = N(), { currentStep: o, isLastStep: l, nextStep: m } = i, { navigation: p } = o, s = g(), x = () => {
|
|
46
45
|
const d = Object.keys(s.state.fieldMeta).filter((f) => {
|
|
47
|
-
const
|
|
48
|
-
return !
|
|
46
|
+
const e = s.state.fieldMeta[f];
|
|
47
|
+
return !e.isValid && e.errors?.length > 0;
|
|
49
48
|
});
|
|
50
49
|
d.length > 0 && n({ type: "TRIGGER_STEP_VALIDATION", fieldIds: d });
|
|
51
50
|
};
|
|
52
51
|
return /* @__PURE__ */ h(
|
|
53
52
|
I,
|
|
54
53
|
{
|
|
55
|
-
navigation:
|
|
54
|
+
navigation: p,
|
|
56
55
|
onNext: async () => {
|
|
57
56
|
if (!s.state.canSubmit) {
|
|
58
57
|
x();
|
|
59
58
|
return;
|
|
60
59
|
}
|
|
61
|
-
const f = (o.actions ?? []).some((
|
|
60
|
+
const f = (o.actions ?? []).some((e) => e.trigger === "onStepFinish");
|
|
62
61
|
try {
|
|
63
62
|
f ? await s.handleSubmit() : m();
|
|
64
|
-
} catch (
|
|
65
|
-
console.error("Form submission failed:",
|
|
63
|
+
} catch (e) {
|
|
64
|
+
console.error("Form submission failed:", e);
|
|
66
65
|
}
|
|
67
66
|
},
|
|
68
67
|
isLastStep: l,
|
|
69
68
|
isDisabled: c,
|
|
70
69
|
labels: a,
|
|
71
|
-
...
|
|
70
|
+
...t,
|
|
72
71
|
children: /* @__PURE__ */ h(s.Subscribe, { children: r })
|
|
73
72
|
}
|
|
74
73
|
);
|
|
75
74
|
};
|
|
76
75
|
export {
|
|
77
|
-
|
|
76
|
+
_ as default
|
|
78
77
|
};
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
import { jsx as u } from "react/jsx-runtime";
|
|
3
3
|
/* empty css */
|
|
4
4
|
import { FormHeaderBase as c } from "../../../../../ui/src/components/form-header-base/form-header-base.js";
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
5
|
+
import { useFormEditing as l } from "../../../../../core/src/providers/FormEditingContext.js";
|
|
6
|
+
import { useFormMachine as d } from "../../state-management/machines/useFormMachine.js";
|
|
7
7
|
const N = (t) => {
|
|
8
|
-
const { isEditing: o } =
|
|
8
|
+
const { isEditing: o } = l(), [, , i] = d(), { steps: n, currentStep: e, currentStepIndex: s, previousStep: a, goToStep: m } = i, p = (r) => {
|
|
9
9
|
r === "previous" ? a() : m(r);
|
|
10
10
|
};
|
|
11
11
|
return /* @__PURE__ */ u(
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsxs as f, jsx as r, Fragment as _ } from "react/jsx-runtime";
|
|
3
3
|
import g from "./FormStep.module.css.js";
|
|
4
|
-
|
|
5
|
-
import { logger as w } from "../../../../../../ui/src/lib/logger.js";
|
|
4
|
+
import { logger as w } from "../../../../../../core/src/utils/logger.js";
|
|
6
5
|
import { useForm as I } from "@tanstack/react-form";
|
|
7
6
|
import { useRef as p } from "react";
|
|
8
7
|
import { LoaderProvider as M, useLoaderContext as C } from "../../context/LoaderContext.js";
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
(e, t) => (e[t.id] = s(t.type), e),
|
|
2
|
+
import { isFormField as i, getDefaultValue as r } from "../../../../../core/src/utils/componentUtils.js";
|
|
3
|
+
const n = (s) => (s.sections ?? []).flatMap((e) => e.components).filter((e) => i(e.type)).reduce(
|
|
4
|
+
(e, t) => (e[t.id] = r(t.type), e),
|
|
6
5
|
{}
|
|
7
6
|
);
|
|
8
7
|
export {
|
|
9
|
-
|
|
8
|
+
n as buildDefaultValues
|
|
10
9
|
};
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
|
|
3
|
-
import { isTemplateDialogConfig as
|
|
4
|
-
|
|
5
|
-
class m extends Error {
|
|
2
|
+
import { resolveTemplateDialog as p } from "../../../../../core/src/utils/templateDialogResolver.js";
|
|
3
|
+
import { isTemplateDialogConfig as d } from "../../../../../core/src/types/guards.js";
|
|
4
|
+
class v extends Error {
|
|
6
5
|
constructor(t, e, i, r) {
|
|
7
6
|
super(i), this.actionId = t, this.actionType = e, this.details = r, this.name = "ActionValidationError";
|
|
8
7
|
}
|
|
@@ -72,7 +71,7 @@ class n {
|
|
|
72
71
|
*/
|
|
73
72
|
static validateDialogConfig(t) {
|
|
74
73
|
const e = [];
|
|
75
|
-
if (
|
|
74
|
+
if (d(t))
|
|
76
75
|
return n.validateTemplateDialogConfig(t);
|
|
77
76
|
const i = t;
|
|
78
77
|
if (i.title || e.push("Dialog title is required"), i.content || e.push("Dialog content is required"), i.type ? ["modal", "toast", "sidebar"].includes(i.type) || e.push("Invalid dialog type") : e.push("Dialog type is required"), !i.buttons || i.buttons.length === 0)
|
|
@@ -100,7 +99,7 @@ class n {
|
|
|
100
99
|
if ((!t.template.typeId || t.template.typeId.trim() === "") && e.push("Template typeId is required"), (!t.template.config || typeof t.template.config != "object") && e.push("Template config is required and must be an object"), e.length > 0)
|
|
101
100
|
return e;
|
|
102
101
|
try {
|
|
103
|
-
const i =
|
|
102
|
+
const i = p(t);
|
|
104
103
|
return n.validateResolvedDialogConfig(i);
|
|
105
104
|
} catch (i) {
|
|
106
105
|
e.push(
|
|
@@ -207,7 +206,7 @@ class n {
|
|
|
207
206
|
try {
|
|
208
207
|
const s = o.config;
|
|
209
208
|
let a;
|
|
210
|
-
if (
|
|
209
|
+
if (d(s) ? a = p(s) : a = s, a.buttons) {
|
|
211
210
|
for (const u of a.buttons)
|
|
212
211
|
if (u.action.type === "navigate" && u.action.targetStep) {
|
|
213
212
|
const l = u.action.targetStep;
|
|
@@ -229,6 +228,6 @@ class n {
|
|
|
229
228
|
}
|
|
230
229
|
}
|
|
231
230
|
export {
|
|
232
|
-
|
|
231
|
+
v as ActionValidationError,
|
|
233
232
|
n as ActionValidator
|
|
234
233
|
};
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as r, jsxs as u } from "react/jsx-runtime";
|
|
3
|
+
import { SelectOption as y, Radio as f } from "@rijkshuisstijl-community/components-react";
|
|
4
|
+
import { wizardFieldTypeMap as g } from "./rhc-field-type-map.js";
|
|
5
|
+
const b = g, x = ({
|
|
6
|
+
component: i,
|
|
7
|
+
value: o,
|
|
8
|
+
onChange: d,
|
|
9
|
+
isFormView: s
|
|
10
|
+
}) => {
|
|
11
|
+
const p = b[i.type];
|
|
12
|
+
if (!p)
|
|
13
|
+
return console.warn(`[RHCRenderer] No RHC component registered for type: ${i.type}`), null;
|
|
14
|
+
const e = i.properties ?? {}, n = {};
|
|
15
|
+
for (const t of p.included)
|
|
16
|
+
t in e && (n[t] = e[t]);
|
|
17
|
+
const a = p.component;
|
|
18
|
+
switch (i.type) {
|
|
19
|
+
case "text":
|
|
20
|
+
case "email":
|
|
21
|
+
case "tel":
|
|
22
|
+
case "number":
|
|
23
|
+
case "date":
|
|
24
|
+
return /* @__PURE__ */ r(
|
|
25
|
+
a,
|
|
26
|
+
{
|
|
27
|
+
type: i.type,
|
|
28
|
+
value: typeof o == "string" ? o : "",
|
|
29
|
+
...n,
|
|
30
|
+
readOnly: !!n.readOnly || !s,
|
|
31
|
+
onChange: s ? (t) => d(t.target.value) : void 0
|
|
32
|
+
}
|
|
33
|
+
);
|
|
34
|
+
case "textarea":
|
|
35
|
+
return /* @__PURE__ */ r(
|
|
36
|
+
a,
|
|
37
|
+
{
|
|
38
|
+
value: typeof o == "string" ? o : "",
|
|
39
|
+
...n,
|
|
40
|
+
readOnly: !!n.readOnly || !s,
|
|
41
|
+
onChange: s ? (t) => d(t.target.value) : void 0
|
|
42
|
+
}
|
|
43
|
+
);
|
|
44
|
+
case "checkbox":
|
|
45
|
+
return /* @__PURE__ */ r(
|
|
46
|
+
a,
|
|
47
|
+
{
|
|
48
|
+
checked: !!o,
|
|
49
|
+
...n,
|
|
50
|
+
onChange: s ? (t) => d(t.target.checked) : void 0
|
|
51
|
+
}
|
|
52
|
+
);
|
|
53
|
+
case "radioGroup": {
|
|
54
|
+
const t = Array.isArray(e.options) ? e.options : [];
|
|
55
|
+
return /* @__PURE__ */ r(a, { ...n, children: t.map((l) => (
|
|
56
|
+
// RHC Radio is a void <input type="radio"> — it cannot have children.
|
|
57
|
+
// Wrap in a <label> so the label text is associated with the input.
|
|
58
|
+
/* @__PURE__ */ u("label", { children: [
|
|
59
|
+
/* @__PURE__ */ r(
|
|
60
|
+
f,
|
|
61
|
+
{
|
|
62
|
+
value: l.value,
|
|
63
|
+
checked: o === l.value,
|
|
64
|
+
onChange: s ? () => d(l.value) : void 0
|
|
65
|
+
}
|
|
66
|
+
),
|
|
67
|
+
l.label
|
|
68
|
+
] }, l.value)
|
|
69
|
+
)) });
|
|
70
|
+
}
|
|
71
|
+
case "dropdown": {
|
|
72
|
+
const t = Array.isArray(e.options) ? e.options : [], l = typeof e.label == "string" ? e.label : "";
|
|
73
|
+
return /* @__PURE__ */ r(
|
|
74
|
+
a,
|
|
75
|
+
{
|
|
76
|
+
label: l,
|
|
77
|
+
value: typeof o == "string" ? o : "",
|
|
78
|
+
...n,
|
|
79
|
+
onChange: s ? (c) => d(c.target.value) : void 0,
|
|
80
|
+
children: t.map((c) => /* @__PURE__ */ r(y, { value: c.value, children: c.label }, c.value))
|
|
81
|
+
}
|
|
82
|
+
);
|
|
83
|
+
}
|
|
84
|
+
case "button":
|
|
85
|
+
return /* @__PURE__ */ r(
|
|
86
|
+
a,
|
|
87
|
+
{
|
|
88
|
+
type: "button",
|
|
89
|
+
...n,
|
|
90
|
+
onClick: s ? () => d(null) : void 0,
|
|
91
|
+
children: typeof e.label == "string" ? e.label : "Submit"
|
|
92
|
+
}
|
|
93
|
+
);
|
|
94
|
+
case "heading": {
|
|
95
|
+
const t = typeof e.level == "number" ? e.level : 2, l = Math.min(6, Math.max(1, t)), c = typeof e.text == "string" ? e.text : "";
|
|
96
|
+
return /* @__PURE__ */ r(a, { level: l, children: c });
|
|
97
|
+
}
|
|
98
|
+
case "paragraph":
|
|
99
|
+
return /* @__PURE__ */ r(a, { children: typeof e.text == "string" ? e.text : "" });
|
|
100
|
+
case "alert":
|
|
101
|
+
return /* @__PURE__ */ r(a, { role: "alert", children: typeof e.message == "string" ? e.message : "" });
|
|
102
|
+
case "progress-loader":
|
|
103
|
+
return /* @__PURE__ */ r(
|
|
104
|
+
a,
|
|
105
|
+
{
|
|
106
|
+
mode: typeof e.mode == "string" ? e.mode : "indeterminate",
|
|
107
|
+
status: "loading",
|
|
108
|
+
label: typeof e.label == "string" ? e.label : void 0
|
|
109
|
+
}
|
|
110
|
+
);
|
|
111
|
+
default:
|
|
112
|
+
return /* @__PURE__ */ r(a, { ...n });
|
|
113
|
+
}
|
|
114
|
+
};
|
|
115
|
+
export {
|
|
116
|
+
x as rhcRenderer
|
|
117
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { Alert as d, Paragraph as l, Heading as n, Button as o, FormFieldSelect as a, RadioGroup as c, Checkbox as r, Textarea as t, TextInput as e } from "@rijkshuisstijl-community/components-react";
|
|
3
|
+
/* empty css */
|
|
4
|
+
import { ProgressLoaderBar as i } from "../../../ui/src/components/ProgressLoaderBar/ProgressLoaderBar.js";
|
|
5
|
+
const s = {
|
|
6
|
+
text: { component: e, included: ["value", "placeholder", "disabled", "readOnly"] },
|
|
7
|
+
email: { component: e, included: ["value", "placeholder", "disabled", "readOnly"] },
|
|
8
|
+
tel: { component: e, included: ["value", "placeholder", "disabled", "readOnly"] },
|
|
9
|
+
number: { component: e, included: ["value", "placeholder", "disabled", "readOnly"] },
|
|
10
|
+
date: { component: e, included: ["value", "placeholder", "disabled", "readOnly"] },
|
|
11
|
+
textarea: { component: t, included: ["value", "placeholder", "disabled", "readOnly"] },
|
|
12
|
+
checkbox: { component: r, included: ["disabled"] },
|
|
13
|
+
radioGroup: { component: c, included: [] },
|
|
14
|
+
dropdown: { component: a, included: ["disabled"] },
|
|
15
|
+
button: { component: o, included: ["disabled"] },
|
|
16
|
+
heading: { component: n, included: ["level"] },
|
|
17
|
+
paragraph: { component: l, included: [] },
|
|
18
|
+
alert: { component: d, included: [] },
|
|
19
|
+
"progress-loader": { component: i, included: ["mode", "label"] }
|
|
20
|
+
};
|
|
21
|
+
export {
|
|
22
|
+
s as wizardFieldTypeMap
|
|
23
|
+
};
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { jsx as o } from "react/jsx-runtime";
|
|
3
|
-
import * as e from "@radix-ui/react-checkbox";
|
|
4
|
-
import { Check as i } from "lucide-react";
|
|
5
|
-
import * as s from "react";
|
|
6
|
-
import { clsx as t } from "clsx";
|
|
7
|
-
import c from "./checkbox.module.css.js";
|
|
8
|
-
const l = s.forwardRef(({ className: r, ...m }, a) => /* @__PURE__ */ o(
|
|
9
|
-
e.Root,
|
|
10
|
-
{
|
|
11
|
-
ref: a,
|
|
12
|
-
className: t(c.checkbox, r),
|
|
13
|
-
...m,
|
|
14
|
-
children: /* @__PURE__ */ o(e.Indicator, { className: c.checkboxIndicator, children: /* @__PURE__ */ o(i, { className: c.checkboxIcon }) })
|
|
15
|
-
}
|
|
16
|
-
));
|
|
17
|
-
l.displayName = e.Root.displayName;
|
|
18
|
-
export {
|
|
19
|
-
l as Checkbox
|
|
20
|
-
};
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { jsx as p } from "react/jsx-runtime";
|
|
3
|
-
import * as s from "react";
|
|
4
|
-
import { clsx as e } from "clsx";
|
|
5
|
-
import i from "./input.module.css.js";
|
|
6
|
-
const a = s.forwardRef(
|
|
7
|
-
({ className: t, type: r, ...o }, m) => /* @__PURE__ */ p(
|
|
8
|
-
"input",
|
|
9
|
-
{
|
|
10
|
-
type: r,
|
|
11
|
-
className: e(i.input, t),
|
|
12
|
-
ref: m,
|
|
13
|
-
...o
|
|
14
|
-
}
|
|
15
|
-
)
|
|
16
|
-
);
|
|
17
|
-
a.displayName = "Input";
|
|
18
|
-
export {
|
|
19
|
-
a as Input
|
|
20
|
-
};
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { jsx as r } from "react/jsx-runtime";
|
|
3
|
-
import * as o from "@radix-ui/react-radio-group";
|
|
4
|
-
import { Circle as d } from "lucide-react";
|
|
5
|
-
import * as t from "react";
|
|
6
|
-
import { clsx as s } from "clsx";
|
|
7
|
-
import a from "./radio-group.module.css.js";
|
|
8
|
-
const c = t.forwardRef(({ className: i, ...e }, m) => /* @__PURE__ */ r(
|
|
9
|
-
o.Root,
|
|
10
|
-
{
|
|
11
|
-
className: s(a.radioGroup, i),
|
|
12
|
-
...e,
|
|
13
|
-
ref: m
|
|
14
|
-
}
|
|
15
|
-
));
|
|
16
|
-
c.displayName = o.Root.displayName;
|
|
17
|
-
const p = t.forwardRef(({ className: i, ...e }, m) => /* @__PURE__ */ r(
|
|
18
|
-
o.Item,
|
|
19
|
-
{
|
|
20
|
-
ref: m,
|
|
21
|
-
className: s(a.radioGroupItem, i),
|
|
22
|
-
...e,
|
|
23
|
-
children: /* @__PURE__ */ r(o.Indicator, { className: a.radioIndicator, children: /* @__PURE__ */ r(d, { className: a.radioIndicatorIcon }) })
|
|
24
|
-
}
|
|
25
|
-
));
|
|
26
|
-
p.displayName = o.Item.displayName;
|
|
27
|
-
export {
|
|
28
|
-
c as RadioGroup,
|
|
29
|
-
p as RadioGroupItem
|
|
30
|
-
};
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
const o = "fb-radioGroup_PqpPn", r = "fb-radioGroupItem_r91M1", a = "fb-radioIndicator_PFyGX", d = "fb-radioIndicatorIcon_vSsbY", i = {
|
|
3
|
-
radioGroup: o,
|
|
4
|
-
radioGroupItem: r,
|
|
5
|
-
radioIndicator: a,
|
|
6
|
-
radioIndicatorIcon: d
|
|
7
|
-
};
|
|
8
|
-
export {
|
|
9
|
-
i as default,
|
|
10
|
-
o as radioGroup,
|
|
11
|
-
r as radioGroupItem,
|
|
12
|
-
a as radioIndicator,
|
|
13
|
-
d as radioIndicatorIcon
|
|
14
|
-
};
|
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { jsxs as i, jsx as l } from "react/jsx-runtime";
|
|
3
|
-
import * as e from "@radix-ui/react-select";
|
|
4
|
-
import { ChevronDown as m, Check as f, ChevronUp as S } from "lucide-react";
|
|
5
|
-
import * as s from "react";
|
|
6
|
-
import { clsx as c } from "clsx";
|
|
7
|
-
import a from "./select.module.css.js";
|
|
8
|
-
const D = e.Root, T = e.Value, h = s.forwardRef(({ className: o, children: r, ...t }, n) => /* @__PURE__ */ i(
|
|
9
|
-
e.Trigger,
|
|
10
|
-
{
|
|
11
|
-
ref: n,
|
|
12
|
-
className: c(a.selectTrigger, o),
|
|
13
|
-
...t,
|
|
14
|
-
children: [
|
|
15
|
-
r,
|
|
16
|
-
/* @__PURE__ */ l(e.Icon, { asChild: !0, children: /* @__PURE__ */ l(m, { className: a.selectTriggerIcon }) })
|
|
17
|
-
]
|
|
18
|
-
}
|
|
19
|
-
));
|
|
20
|
-
h.displayName = e.Trigger.displayName;
|
|
21
|
-
const p = s.forwardRef(({ className: o, ...r }, t) => /* @__PURE__ */ l(
|
|
22
|
-
e.ScrollUpButton,
|
|
23
|
-
{
|
|
24
|
-
ref: t,
|
|
25
|
-
className: c(a.selectScrollUpButton, o),
|
|
26
|
-
...r,
|
|
27
|
-
children: /* @__PURE__ */ l(S, { className: a.selectScrollIcon })
|
|
28
|
-
}
|
|
29
|
-
));
|
|
30
|
-
p.displayName = e.ScrollUpButton.displayName;
|
|
31
|
-
const d = s.forwardRef(({ className: o, ...r }, t) => /* @__PURE__ */ l(
|
|
32
|
-
e.ScrollDownButton,
|
|
33
|
-
{
|
|
34
|
-
ref: t,
|
|
35
|
-
className: c(a.selectScrollDownButton, o),
|
|
36
|
-
...r,
|
|
37
|
-
children: /* @__PURE__ */ l(m, { className: a.selectScrollIcon })
|
|
38
|
-
}
|
|
39
|
-
));
|
|
40
|
-
d.displayName = e.ScrollDownButton.displayName;
|
|
41
|
-
const I = s.forwardRef(({ className: o, children: r, position: t = "popper", ...n }, N) => /* @__PURE__ */ l(e.Portal, { children: /* @__PURE__ */ i(
|
|
42
|
-
e.Content,
|
|
43
|
-
{
|
|
44
|
-
ref: N,
|
|
45
|
-
className: c(
|
|
46
|
-
a.selectContent,
|
|
47
|
-
t === "popper" && a.popper,
|
|
48
|
-
o
|
|
49
|
-
),
|
|
50
|
-
position: t,
|
|
51
|
-
avoidCollisions: !0,
|
|
52
|
-
collisionPadding: 10,
|
|
53
|
-
sideOffset: 5,
|
|
54
|
-
alignOffset: 0,
|
|
55
|
-
hideWhenDetached: !1,
|
|
56
|
-
...n,
|
|
57
|
-
children: [
|
|
58
|
-
/* @__PURE__ */ l(p, {}),
|
|
59
|
-
/* @__PURE__ */ l(
|
|
60
|
-
e.Viewport,
|
|
61
|
-
{
|
|
62
|
-
className: c(
|
|
63
|
-
a.selectViewport,
|
|
64
|
-
t === "popper" && a.popper
|
|
65
|
-
),
|
|
66
|
-
children: r
|
|
67
|
-
}
|
|
68
|
-
),
|
|
69
|
-
/* @__PURE__ */ l(d, {})
|
|
70
|
-
]
|
|
71
|
-
}
|
|
72
|
-
) }));
|
|
73
|
-
I.displayName = e.Content.displayName;
|
|
74
|
-
const y = s.forwardRef(({ className: o, ...r }, t) => /* @__PURE__ */ l(
|
|
75
|
-
e.Label,
|
|
76
|
-
{
|
|
77
|
-
ref: t,
|
|
78
|
-
className: c(a.selectLabel, o),
|
|
79
|
-
...r
|
|
80
|
-
}
|
|
81
|
-
));
|
|
82
|
-
y.displayName = e.Label.displayName;
|
|
83
|
-
const w = s.forwardRef(({ className: o, children: r, ...t }, n) => /* @__PURE__ */ i(
|
|
84
|
-
e.Item,
|
|
85
|
-
{
|
|
86
|
-
ref: n,
|
|
87
|
-
className: c(a.selectItem, o),
|
|
88
|
-
...t,
|
|
89
|
-
children: [
|
|
90
|
-
/* @__PURE__ */ l("span", { className: a.selectItemIndicator, children: /* @__PURE__ */ l(e.ItemIndicator, { children: /* @__PURE__ */ l(f, { className: a.selectItemIndicatorIcon }) }) }),
|
|
91
|
-
/* @__PURE__ */ l(e.ItemText, { children: r })
|
|
92
|
-
]
|
|
93
|
-
}
|
|
94
|
-
));
|
|
95
|
-
w.displayName = e.Item.displayName;
|
|
96
|
-
const u = s.forwardRef(({ className: o, ...r }, t) => /* @__PURE__ */ l(
|
|
97
|
-
e.Separator,
|
|
98
|
-
{
|
|
99
|
-
ref: t,
|
|
100
|
-
className: c(a.selectSeparator, o),
|
|
101
|
-
...r
|
|
102
|
-
}
|
|
103
|
-
));
|
|
104
|
-
u.displayName = e.Separator.displayName;
|
|
105
|
-
export {
|
|
106
|
-
D as Select,
|
|
107
|
-
I as SelectContent,
|
|
108
|
-
w as SelectItem,
|
|
109
|
-
y as SelectLabel,
|
|
110
|
-
d as SelectScrollDownButton,
|
|
111
|
-
p as SelectScrollUpButton,
|
|
112
|
-
u as SelectSeparator,
|
|
113
|
-
h as SelectTrigger,
|
|
114
|
-
T as SelectValue
|
|
115
|
-
};
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
const e = "fb-selectTrigger_dj84x", t = "fb-selectTriggerIcon_V8dav", c = "fb-selectScrollUpButton_c6WZR", o = "fb-selectScrollDownButton_kmWY4", l = "fb-selectScrollIcon_IZbZG", s = "fb-selectContent_uJ-ZX", n = "fb-popper_uKkq9", r = "fb-selectViewport_wcTaR", I = "fb-selectLabel_hb7ig", a = "fb-selectItem_f23oZ", p = "fb-selectItemIndicator_PD-WQ", b = "fb-selectItemIndicatorIcon_kgB1I", i = "fb-selectSeparator_DS7X2", f = {
|
|
3
|
-
selectTrigger: e,
|
|
4
|
-
selectTriggerIcon: t,
|
|
5
|
-
selectScrollUpButton: c,
|
|
6
|
-
selectScrollDownButton: o,
|
|
7
|
-
selectScrollIcon: l,
|
|
8
|
-
selectContent: s,
|
|
9
|
-
popper: n,
|
|
10
|
-
selectViewport: r,
|
|
11
|
-
selectLabel: I,
|
|
12
|
-
selectItem: a,
|
|
13
|
-
selectItemIndicator: p,
|
|
14
|
-
selectItemIndicatorIcon: b,
|
|
15
|
-
selectSeparator: i
|
|
16
|
-
};
|
|
17
|
-
export {
|
|
18
|
-
f as default,
|
|
19
|
-
n as popper,
|
|
20
|
-
s as selectContent,
|
|
21
|
-
a as selectItem,
|
|
22
|
-
p as selectItemIndicator,
|
|
23
|
-
b as selectItemIndicatorIcon,
|
|
24
|
-
I as selectLabel,
|
|
25
|
-
o as selectScrollDownButton,
|
|
26
|
-
l as selectScrollIcon,
|
|
27
|
-
c as selectScrollUpButton,
|
|
28
|
-
i as selectSeparator,
|
|
29
|
-
e as selectTrigger,
|
|
30
|
-
t as selectTriggerIcon,
|
|
31
|
-
r as selectViewport
|
|
32
|
-
};
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { jsx as a } from "react/jsx-runtime";
|
|
3
|
-
import * as o from "react";
|
|
4
|
-
import { clsx as m } from "clsx";
|
|
5
|
-
import s from "./textarea.module.css.js";
|
|
6
|
-
const x = o.forwardRef(
|
|
7
|
-
({ className: e, ...r }, t) => /* @__PURE__ */ a(
|
|
8
|
-
"textarea",
|
|
9
|
-
{
|
|
10
|
-
className: m(s.textarea, e),
|
|
11
|
-
ref: t,
|
|
12
|
-
...r
|
|
13
|
-
}
|
|
14
|
-
)
|
|
15
|
-
);
|
|
16
|
-
x.displayName = "Textarea";
|
|
17
|
-
export {
|
|
18
|
-
x as Textarea
|
|
19
|
-
};
|
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { jsx as r, jsxs as p } from "react/jsx-runtime";
|
|
3
|
-
/* empty css */
|
|
4
|
-
import { Alert as c, AlertDescription as u } from "../../../ui/src/components/alert/alert.js";
|
|
5
|
-
import { Button as h } from "../../../ui/src/components/button/button.js";
|
|
6
|
-
import { Checkbox as y } from "../../../ui/src/components/checkbox/checkbox.js";
|
|
7
|
-
import { Input as b } from "../../../ui/src/components/input/input.js";
|
|
8
|
-
import { RadioGroup as f, RadioGroupItem as m } from "../../../ui/src/components/radio-group/radio-group.js";
|
|
9
|
-
import { Select as g, SelectTrigger as v, SelectValue as x, SelectContent as B, SelectItem as A } from "../../../ui/src/components/select/select.js";
|
|
10
|
-
import { Textarea as S } from "../../../ui/src/components/textarea/textarea.js";
|
|
11
|
-
import { ProgressLoaderBar as k } from "../../../ui/src/components/ProgressLoaderBar/ProgressLoaderBar.js";
|
|
12
|
-
const M = ({
|
|
13
|
-
component: n,
|
|
14
|
-
value: o,
|
|
15
|
-
onChange: d,
|
|
16
|
-
isFormView: l
|
|
17
|
-
}) => {
|
|
18
|
-
const e = n.properties ?? {};
|
|
19
|
-
switch (n.type) {
|
|
20
|
-
case "text":
|
|
21
|
-
case "email":
|
|
22
|
-
case "tel":
|
|
23
|
-
case "number":
|
|
24
|
-
case "date":
|
|
25
|
-
return /* @__PURE__ */ r(
|
|
26
|
-
b,
|
|
27
|
-
{
|
|
28
|
-
type: n.type,
|
|
29
|
-
value: typeof o == "string" ? o : "",
|
|
30
|
-
disabled: !!e.disabled,
|
|
31
|
-
readOnly: !!e.readOnly || !l,
|
|
32
|
-
placeholder: typeof e.placeholder == "string" ? e.placeholder : void 0,
|
|
33
|
-
onChange: l ? (a) => d(a.target.value) : void 0
|
|
34
|
-
}
|
|
35
|
-
);
|
|
36
|
-
case "textarea":
|
|
37
|
-
return /* @__PURE__ */ r(
|
|
38
|
-
S,
|
|
39
|
-
{
|
|
40
|
-
value: typeof o == "string" ? o : "",
|
|
41
|
-
disabled: !!e.disabled,
|
|
42
|
-
readOnly: !!e.readOnly || !l,
|
|
43
|
-
placeholder: typeof e.placeholder == "string" ? e.placeholder : void 0,
|
|
44
|
-
onChange: l ? (a) => d(a.target.value) : void 0
|
|
45
|
-
}
|
|
46
|
-
);
|
|
47
|
-
case "checkbox":
|
|
48
|
-
return /* @__PURE__ */ r(
|
|
49
|
-
y,
|
|
50
|
-
{
|
|
51
|
-
checked: !!o,
|
|
52
|
-
disabled: !!e.disabled,
|
|
53
|
-
onCheckedChange: l ? (a) => d(a === !0) : void 0
|
|
54
|
-
}
|
|
55
|
-
);
|
|
56
|
-
case "radioGroup": {
|
|
57
|
-
const a = Array.isArray(e.options) ? e.options : [];
|
|
58
|
-
return /* @__PURE__ */ r(
|
|
59
|
-
f,
|
|
60
|
-
{
|
|
61
|
-
value: typeof o == "string" ? o : "",
|
|
62
|
-
onValueChange: l ? (t) => d(t) : void 0,
|
|
63
|
-
disabled: !!e.disabled,
|
|
64
|
-
children: a.map((t) => /* @__PURE__ */ r(m, { value: t.value, children: t.label }, t.value))
|
|
65
|
-
}
|
|
66
|
-
);
|
|
67
|
-
}
|
|
68
|
-
case "dropdown": {
|
|
69
|
-
const a = Array.isArray(e.options) ? e.options : [];
|
|
70
|
-
return /* @__PURE__ */ p(
|
|
71
|
-
g,
|
|
72
|
-
{
|
|
73
|
-
value: typeof o == "string" ? o : "",
|
|
74
|
-
onValueChange: l ? (t) => d(t) : void 0,
|
|
75
|
-
disabled: !!e.disabled,
|
|
76
|
-
children: [
|
|
77
|
-
/* @__PURE__ */ r(v, { children: /* @__PURE__ */ r(
|
|
78
|
-
x,
|
|
79
|
-
{
|
|
80
|
-
placeholder: typeof e.placeholder == "string" ? e.placeholder : ""
|
|
81
|
-
}
|
|
82
|
-
) }),
|
|
83
|
-
/* @__PURE__ */ r(B, { children: a.map((t) => /* @__PURE__ */ r(A, { value: t.value, children: t.label }, t.value)) })
|
|
84
|
-
]
|
|
85
|
-
}
|
|
86
|
-
);
|
|
87
|
-
}
|
|
88
|
-
case "button":
|
|
89
|
-
return /* @__PURE__ */ r(
|
|
90
|
-
h,
|
|
91
|
-
{
|
|
92
|
-
type: "button",
|
|
93
|
-
disabled: !!e.disabled,
|
|
94
|
-
onClick: l ? () => d(null) : void 0,
|
|
95
|
-
children: typeof e.label == "string" ? e.label : "Submit"
|
|
96
|
-
}
|
|
97
|
-
);
|
|
98
|
-
case "heading": {
|
|
99
|
-
const a = typeof e.level == "number" ? e.level : void 0, t = a !== void 0 ? Math.min(6, Math.max(1, a)) : 2, i = typeof e.text == "string" ? e.text : "", s = `h${t}`;
|
|
100
|
-
return /* @__PURE__ */ r(s, { children: i });
|
|
101
|
-
}
|
|
102
|
-
case "paragraph":
|
|
103
|
-
return /* @__PURE__ */ r("p", { children: typeof e.text == "string" ? e.text : "" });
|
|
104
|
-
case "alert":
|
|
105
|
-
return /* @__PURE__ */ r(c, { variant: "default", children: /* @__PURE__ */ r(u, { children: typeof e.message == "string" ? e.message : "" }) });
|
|
106
|
-
case "progress-loader":
|
|
107
|
-
return /* @__PURE__ */ r(
|
|
108
|
-
k,
|
|
109
|
-
{
|
|
110
|
-
mode: typeof e.mode == "string" ? e.mode : "indeterminate",
|
|
111
|
-
status: "loading",
|
|
112
|
-
label: typeof e.label == "string" ? e.label : void 0
|
|
113
|
-
}
|
|
114
|
-
);
|
|
115
|
-
default:
|
|
116
|
-
return console.warn(
|
|
117
|
-
`[wizardRenderer] Unsupported component type: ${n.type}`
|
|
118
|
-
), null;
|
|
119
|
-
}
|
|
120
|
-
};
|
|
121
|
-
export {
|
|
122
|
-
M as wizardDefaultRenderer
|
|
123
|
-
};
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|