@knkcs/anker 0.0.3 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/dist/atoms/index.d.ts +16 -3
  2. package/dist/atoms/index.js +89 -6
  3. package/dist/atoms/index.js.map +1 -1
  4. package/dist/chunk-5YDCDC4B.js +12 -0
  5. package/dist/chunk-5YDCDC4B.js.map +1 -0
  6. package/dist/{chunk-C4JI3JNA.js → chunk-6H4LQUMM.js} +4 -33
  7. package/dist/chunk-6H4LQUMM.js.map +1 -0
  8. package/dist/{chunk-PZCL4M6I.js → chunk-E7KRPPCQ.js} +5 -18
  9. package/dist/chunk-E7KRPPCQ.js.map +1 -0
  10. package/dist/{chunk-GJTQLZ4O.js → chunk-KVPN6T6J.js} +6 -28
  11. package/dist/chunk-KVPN6T6J.js.map +1 -0
  12. package/dist/chunk-OU6H3KU4.js +21 -0
  13. package/dist/chunk-OU6H3KU4.js.map +1 -0
  14. package/dist/chunk-SJ6YXNZW.js +30 -0
  15. package/dist/chunk-SJ6YXNZW.js.map +1 -0
  16. package/dist/chunk-SJIYWHIV.js +51 -0
  17. package/dist/chunk-SJIYWHIV.js.map +1 -0
  18. package/dist/chunk-WEP2AIQ5.js +37 -0
  19. package/dist/chunk-WEP2AIQ5.js.map +1 -0
  20. package/dist/chunk-WQIEF5N3.js +52 -0
  21. package/dist/chunk-WQIEF5N3.js.map +1 -0
  22. package/dist/{chunk-QU3FF5WI.js → chunk-ZFBDVERP.js} +4 -8
  23. package/dist/chunk-ZFBDVERP.js.map +1 -0
  24. package/dist/components/index.d.ts +171 -3
  25. package/dist/components/index.js +685 -11
  26. package/dist/components/index.js.map +1 -1
  27. package/dist/feedback/index.d.ts +20 -1
  28. package/dist/feedback/index.js +121 -4
  29. package/dist/feedback/index.js.map +1 -1
  30. package/dist/forms/index.d.ts +23 -15
  31. package/dist/forms/index.js +71 -47
  32. package/dist/forms/index.js.map +1 -1
  33. package/dist/primitives/index.js +8 -49
  34. package/dist/primitives/index.js.map +1 -1
  35. package/package.json +1 -1
  36. package/dist/chunk-7UJ4QEUW.js +0 -37
  37. package/dist/chunk-7UJ4QEUW.js.map +0 -1
  38. package/dist/chunk-C4JI3JNA.js.map +0 -1
  39. package/dist/chunk-GJTQLZ4O.js.map +0 -1
  40. package/dist/chunk-PZCL4M6I.js.map +0 -1
  41. package/dist/chunk-QU3FF5WI.js.map +0 -1
  42. package/dist/chunk-RJPEVNMJ.js +0 -23
  43. package/dist/chunk-RJPEVNMJ.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/forms/form-field.tsx","../../src/forms/array-field.tsx","../../src/forms/checkbox-field.tsx","../../src/forms/code-field.tsx","../../src/forms/color-picker-field.tsx","../../src/forms/controlled-form-field.tsx","../../src/forms/date-picker-field.tsx","../../src/forms/dirty-form-guard.tsx","../../src/forms/editable-heading.tsx","../../src/forms/file-field.tsx","../../src/forms/input-field.tsx","../../src/forms/markdown-field.tsx","../../src/forms/number-input-field.tsx","../../src/forms/radio-group-field.tsx","../../src/forms/select-field.tsx","../../src/forms/switch-field.tsx","../../src/forms/textarea-field.tsx"],"names":["jsx","useFormContext","jsxs","Text","Controller","Field","IconButton","useId","HStack","Input","ButtonGroup","Box","useCallback","Button","NumberInputField","ChakraRadioGroup","Stack"],"mappings":"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","file":"index.js","sourcesContent":["import { Field, HStack, Text } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport { useId } from \"react\";\nimport {\n\tController,\n\ttype ControllerRenderProps,\n\ttype FieldValues,\n\ttype Path,\n\tuseFormContext,\n} from \"react-hook-form\";\n\nexport interface FormFieldProps<T extends FieldValues> {\n\tname: Path<T>;\n\tlabel?: React.ReactNode;\n\thelperText?: React.ReactNode;\n\t/** Persistent description that shows even when there's an error. */\n\tdescription?: React.ReactNode;\n\trequired?: boolean;\n\tdisabled?: boolean;\n\treadOnly?: boolean;\n\tactions?: React.ReactNode;\n\tchildren: (\n\t\tfield: ControllerRenderProps<T, Path<T>> & {\n\t\t\t/** Computed aria-describedby linking to helper/description/error elements. */\n\t\t\t\"aria-describedby\"?: string;\n\t\t},\n\t) => React.ReactNode;\n}\n\nexport function FormField<T extends FieldValues>({\n\tname,\n\tlabel,\n\thelperText,\n\tdescription,\n\trequired,\n\tdisabled,\n\treadOnly,\n\tactions,\n\tchildren,\n}: FormFieldProps<T>) {\n\tconst { control } = useFormContext<T>();\n\tconst uid = useId();\n\tconst descriptionId = `${uid}-description`;\n\tconst helperId = `${uid}-helper`;\n\tconst errorId = `${uid}-error`;\n\n\treturn (\n\t\t<Controller\n\t\t\tname={name}\n\t\t\tcontrol={control}\n\t\t\trender={({ field, fieldState }) => {\n\t\t\t\tconst describedBy =\n\t\t\t\t\t[\n\t\t\t\t\t\tdescription ? descriptionId : null,\n\t\t\t\t\t\thelperText ? helperId : null,\n\t\t\t\t\t\tfieldState.error ? errorId : null,\n\t\t\t\t\t]\n\t\t\t\t\t\t.filter(Boolean)\n\t\t\t\t\t\t.join(\" \") || undefined;\n\n\t\t\t\treturn (\n\t\t\t\t\t<Field.Root\n\t\t\t\t\t\tinvalid={!!fieldState.error}\n\t\t\t\t\t\trequired={required}\n\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\t>\n\t\t\t\t\t\t{label &&\n\t\t\t\t\t\t\t(typeof label === \"string\" ? (\n\t\t\t\t\t\t\t\t<HStack>\n\t\t\t\t\t\t\t\t\t<Field.Label flex=\"1\" htmlFor={name}>\n\t\t\t\t\t\t\t\t\t\t{label}\n\t\t\t\t\t\t\t\t\t</Field.Label>\n\t\t\t\t\t\t\t\t\t{actions}\n\t\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t{children({ ...field, \"aria-describedby\": describedBy })}\n\t\t\t\t\t\t{description && (\n\t\t\t\t\t\t\t<Text id={descriptionId} fontSize=\"xs\" color=\"muted\">\n\t\t\t\t\t\t\t\t{description}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{helperText &&\n\t\t\t\t\t\t\t(typeof helperText === \"string\" ? (\n\t\t\t\t\t\t\t\t<Field.HelperText id={helperId}>{helperText}</Field.HelperText>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<span id={helperId}>{helperText}</span>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t{fieldState.error && (\n\t\t\t\t\t\t\t<Field.ErrorText id={errorId} aria-live=\"polite\">\n\t\t\t\t\t\t\t\t{fieldState.error.message}\n\t\t\t\t\t\t\t</Field.ErrorText>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</Field.Root>\n\t\t\t\t);\n\t\t\t}}\n\t\t/>\n\t);\n}\n(FormField as { displayName?: string }).displayName = \"FormField\";\n","import {\n\tBox,\n\tButton,\n\tButtonGroup,\n\tGrid,\n\tGridItem,\n\tIconButton,\n\tInput,\n\tStack,\n\tText,\n} from \"@chakra-ui/react\";\nimport { Plus, Trash2 } from \"lucide-react\";\nimport React from \"react\";\nimport {\n\ttype FieldValues,\n\tuseFieldArray,\n\tuseFormContext,\n} from \"react-hook-form\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\nexport interface ArrayFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\t/**\n\t * The mode of the array field.\n\t * - `dynamic` — add/remove key-value pairs\n\t * - `keyed` — fixed keys, editable values\n\t * @default \"dynamic\"\n\t */\n\tmode?: \"dynamic\" | \"keyed\";\n\t/** Header label for the value column. @default \"Value\" */\n\tvalueHeader?: string;\n\t/** Header label for the key column. @default \"Key\" */\n\tkeyHeader?: string;\n\t/** Fixed keys when mode is \"keyed\". */\n\tkeys?: Array<{ key: string; value: string }>;\n\t/** Label for the add button. @default \"Add Field\" */\n\taddLabel?: string;\n\t/** Aria label for the remove button. @default \"Remove Item\" */\n\tremoveLabel?: string;\n\t/** Content to display when there are no items. */\n\temptyState?: React.ReactNode;\n}\n\nexport function ArrayField<T extends FieldValues>(props: ArrayFieldProps<T>) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\tmode = \"dynamic\",\n\t\tvalueHeader = \"Value\",\n\t\tkeyHeader = \"Key\",\n\t\tkeys = [],\n\t\taddLabel = \"Add Field\",\n\t\tremoveLabel = \"Remove Item\",\n\t\treadOnly,\n\t\temptyState,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<FormField<T> name={name} label={label} readOnly={readOnly} {...rest}>\n\t\t\t{(/* field */) => (\n\t\t\t\t<Box py={4} px={4} bg=\"bg\" rounded=\"md\">\n\t\t\t\t\t{mode === \"dynamic\" ? (\n\t\t\t\t\t\t<DynamicArray\n\t\t\t\t\t\t\tname={name}\n\t\t\t\t\t\t\tvalueHeader={valueHeader}\n\t\t\t\t\t\t\tkeyHeader={keyHeader}\n\t\t\t\t\t\t\taddLabel={addLabel}\n\t\t\t\t\t\t\tremoveLabel={removeLabel}\n\t\t\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\t\t\temptyState={emptyState}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<KeyedArray\n\t\t\t\t\t\t\tname={name}\n\t\t\t\t\t\t\tvalueHeader={valueHeader}\n\t\t\t\t\t\t\tkeyHeader={keyHeader}\n\t\t\t\t\t\t\tkeys={keys}\n\t\t\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</Box>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n\nArrayField.displayName = \"ArrayField\";\n\ninterface DynamicArrayProps {\n\tname: string;\n\tvalueHeader: string;\n\tkeyHeader: string;\n\taddLabel: string;\n\tremoveLabel: string;\n\treadOnly?: boolean;\n\temptyState?: React.ReactNode;\n}\n\nconst DynamicArray: React.FC<DynamicArrayProps> = React.memo((props) => {\n\tconst {\n\t\tname,\n\t\tvalueHeader,\n\t\tkeyHeader,\n\t\taddLabel,\n\t\tremoveLabel,\n\t\treadOnly,\n\t\temptyState,\n\t} = props;\n\n\tconst { control, register } = useFormContext();\n\tconst { fields, append, remove } = useFieldArray({\n\t\tcontrol,\n\t\tname: name as any,\n\t});\n\n\treturn (\n\t\t<Stack gap={4}>\n\t\t\t<Grid templateColumns=\"200px 1fr 50px\" gap={2}>\n\t\t\t\t<GridItem>\n\t\t\t\t\t<Text fontWeight={500}>{keyHeader}</Text>\n\t\t\t\t</GridItem>\n\t\t\t\t<GridItem colSpan={2}>\n\t\t\t\t\t<Text fontWeight={500}>{valueHeader}</Text>\n\t\t\t\t</GridItem>\n\n\t\t\t\t{fields.map((item, index) => (\n\t\t\t\t\t<React.Fragment key={item.id}>\n\t\t\t\t\t\t<Input\n\t\t\t\t\t\t\t{...register(`${name}.${index}.key` as any)}\n\t\t\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Input\n\t\t\t\t\t\t\t{...register(`${name}.${index}.value` as any)}\n\t\t\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\t\tcolorPalette=\"red\"\n\t\t\t\t\t\t\taria-label={removeLabel}\n\t\t\t\t\t\t\tonClick={() => remove(index)}\n\t\t\t\t\t\t\tdisabled={readOnly}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Trash2 size={16} />\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t</React.Fragment>\n\t\t\t\t))}\n\t\t\t</Grid>\n\t\t\t{fields.length === 0 && emptyState && (\n\t\t\t\t<Box py={4} textAlign=\"center\">\n\t\t\t\t\t{emptyState}\n\t\t\t\t</Box>\n\t\t\t)}\n\t\t\t<ButtonGroup>\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\tonClick={() => append({ key: \"\", value: \"\" })}\n\t\t\t\t\tdisabled={readOnly}\n\t\t\t\t>\n\t\t\t\t\t<Plus size={16} />\n\t\t\t\t\t{addLabel}\n\t\t\t\t</Button>\n\t\t\t</ButtonGroup>\n\t\t</Stack>\n\t);\n});\n\nDynamicArray.displayName = \"DynamicArray\";\n\ninterface KeyedArrayProps {\n\tname: string;\n\tvalueHeader: string;\n\tkeyHeader: string;\n\tkeys: Array<{ key: string; value: string }>;\n\treadOnly?: boolean;\n}\n\nconst KeyedArray: React.FC<KeyedArrayProps> = React.memo((props) => {\n\tconst { name, valueHeader, keyHeader, keys, readOnly } = props;\n\tconst { register } = useFormContext();\n\n\treturn (\n\t\t<Stack gap={4}>\n\t\t\t<Grid templateColumns=\"200px 1fr\" gap={2}>\n\t\t\t\t<GridItem>\n\t\t\t\t\t<Text fontWeight={500}>{keyHeader}</Text>\n\t\t\t\t</GridItem>\n\t\t\t\t<GridItem>\n\t\t\t\t\t<Text fontWeight={500}>{valueHeader}</Text>\n\t\t\t\t</GridItem>\n\t\t\t\t{keys.map((keyItem) => (\n\t\t\t\t\t<React.Fragment key={keyItem.key}>\n\t\t\t\t\t\t<Text py={2}>{keyItem.value ?? keyItem.key}</Text>\n\t\t\t\t\t\t<Input\n\t\t\t\t\t\t\t{...register(`${name}.${keyItem.key}` as any)}\n\t\t\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</React.Fragment>\n\t\t\t\t))}\n\t\t\t</Grid>\n\t\t</Stack>\n\t);\n});\n\nKeyedArray.displayName = \"KeyedArray\";\n","import { Checkbox, Field } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport {\n\tController,\n\ttype FieldValues,\n\ttype Path,\n\tuseFormContext,\n} from \"react-hook-form\";\n\nexport interface CheckboxFieldProps<T extends FieldValues> {\n\tname: Path<T>;\n\tlabel?: string;\n\t/** When provided, the field is treated as an array of checked values. */\n\tvalue?: string | number;\n\tdisabled?: boolean;\n\thelperText?: React.ReactNode;\n\tchildren?: React.ReactNode;\n}\n\nexport function CheckboxField<T extends FieldValues>({\n\tref,\n\t...props\n}: CheckboxFieldProps<T> & { ref?: React.Ref<HTMLLabelElement> }) {\n\tconst { name, label, value, disabled, helperText, children } = props;\n\tconst { control } = useFormContext<T>();\n\n\treturn (\n\t\t<Controller\n\t\t\tname={name}\n\t\t\tcontrol={control}\n\t\t\trender={({ field, fieldState }) => {\n\t\t\t\t// Array mode: field.value is an array, value prop identifies the item\n\t\t\t\tconst isArrayMode = value !== undefined;\n\n\t\t\t\tconst isChecked = isArrayMode\n\t\t\t\t\t? Array.isArray(field.value) && field.value.includes(value)\n\t\t\t\t\t: !!field.value;\n\n\t\t\t\tconst handleCheckedChange = (details: {\n\t\t\t\t\tchecked: boolean | \"indeterminate\";\n\t\t\t\t}) => {\n\t\t\t\t\tif (isArrayMode) {\n\t\t\t\t\t\tconst currentValue = Array.isArray(field.value)\n\t\t\t\t\t\t\t? [...field.value]\n\t\t\t\t\t\t\t: [];\n\t\t\t\t\t\tif (details.checked) {\n\t\t\t\t\t\t\tif (!currentValue.includes(value)) {\n\t\t\t\t\t\t\t\tcurrentValue.push(value);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst idx = currentValue.indexOf(value);\n\t\t\t\t\t\t\tif (idx > -1) currentValue.splice(idx, 1);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tfield.onChange(currentValue);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tfield.onChange(!!details.checked);\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tconst uniqueId = isArrayMode ? `${name}-${String(value)}` : name;\n\n\t\t\t\treturn (\n\t\t\t\t\t<Field.Root invalid={!!fieldState.error} disabled={disabled}>\n\t\t\t\t\t\t<Checkbox.Root\n\t\t\t\t\t\t\tid={uniqueId}\n\t\t\t\t\t\t\tname={field.name}\n\t\t\t\t\t\t\tvalue={isArrayMode ? String(value) : undefined}\n\t\t\t\t\t\t\tinvalid={!!fieldState.error}\n\t\t\t\t\t\t\tref={ref}\n\t\t\t\t\t\t\tchecked={isChecked}\n\t\t\t\t\t\t\tonCheckedChange={handleCheckedChange}\n\t\t\t\t\t\t\tonBlur={field.onBlur}\n\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Checkbox.HiddenInput />\n\t\t\t\t\t\t\t<Checkbox.Control>\n\t\t\t\t\t\t\t\t<Checkbox.Indicator />\n\t\t\t\t\t\t\t</Checkbox.Control>\n\t\t\t\t\t\t\t{(label || children) && (\n\t\t\t\t\t\t\t\t<Checkbox.Label>\n\t\t\t\t\t\t\t\t\t{label}\n\t\t\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t\t\t</Checkbox.Label>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</Checkbox.Root>\n\t\t\t\t\t\t{helperText && <Field.HelperText>{helperText}</Field.HelperText>}\n\t\t\t\t\t\t{fieldState.error && (\n\t\t\t\t\t\t\t<Field.ErrorText aria-live=\"polite\">\n\t\t\t\t\t\t\t\t{fieldState.error.message}\n\t\t\t\t\t\t\t</Field.ErrorText>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</Field.Root>\n\t\t\t\t);\n\t\t\t}}\n\t\t/>\n\t);\n}\n(CheckboxField as { displayName?: string }).displayName = \"CheckboxField\";\n","import type React from \"react\";\nimport { useCallback } from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\n// @monaco-editor/react is an optional peer dependency\ntype MonacoEditorProps = {\n\tvalue?: string;\n\tlanguage?: string;\n\tonChange?: (value: string | undefined) => void;\n\tonMount?: (editor: any, monaco: any) => void;\n\theight?: string;\n\toptions?: Record<string, any>;\n};\n\nexport interface CodeFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\tlanguage?: string;\n\tplaceholder?: string;\n\theight?: string;\n\tindentWithTab?: boolean;\n\t/** The Monaco Editor component. Pass it to avoid hard dependency on @monaco-editor/react. */\n\tEditor?: React.ComponentType<MonacoEditorProps>;\n}\n\nexport function CodeField<T extends FieldValues>({\n\tref,\n\t...props\n}: CodeFieldProps<T> & { ref?: React.Ref<any> }) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\tlanguage = \"typescript\",\n\t\theight = \"400px\",\n\t\tindentWithTab = true,\n\t\treadOnly,\n\t\tEditor,\n\t\t...rest\n\t} = props;\n\n\tconst onMount = useCallback(\n\t\t(editorInstance: any, _monaco: any) => {\n\t\t\tif (typeof ref === \"function\") {\n\t\t\t\tref(editorInstance);\n\t\t\t} else if (ref && typeof ref === \"object\") {\n\t\t\t\t(ref as React.MutableRefObject<any>).current = editorInstance;\n\t\t\t}\n\t\t\teditorInstance.updateOptions?.({\n\t\t\t\ttabCompletion: indentWithTab ? \"on\" : \"off\",\n\t\t\t});\n\t\t},\n\t\t[ref, indentWithTab],\n\t);\n\n\treturn (\n\t\t<FormField<T> name={name} label={label} readOnly={readOnly} {...rest}>\n\t\t\t{(field) =>\n\t\t\t\tEditor ? (\n\t\t\t\t\t<Editor\n\t\t\t\t\t\tvalue={field.value}\n\t\t\t\t\t\tlanguage={language}\n\t\t\t\t\t\tonChange={(value) => field.onChange(value ?? \"\")}\n\t\t\t\t\t\tonMount={onMount}\n\t\t\t\t\t\theight={height}\n\t\t\t\t\t\toptions={{\n\t\t\t\t\t\t\treadOnly,\n\t\t\t\t\t\t\twordWrap: \"on\",\n\t\t\t\t\t\t\tminimap: { enabled: false },\n\t\t\t\t\t\t\tscrollBeyondLastLine: false,\n\t\t\t\t\t\t\ttabCompletion: indentWithTab ? \"on\" : \"off\",\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t) : (\n\t\t\t\t\t<textarea\n\t\t\t\t\t\tvalue={field.value ?? \"\"}\n\t\t\t\t\t\tonChange={(e) => field.onChange(e.target.value)}\n\t\t\t\t\t\tonBlur={field.onBlur}\n\t\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\t\taria-describedby={field[\"aria-describedby\"]}\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tfontFamily: \"monospace\",\n\t\t\t\t\t\t\tfontSize: \"0.875rem\",\n\t\t\t\t\t\t\tpadding: \"0.75rem\",\n\t\t\t\t\t\t\tborder: \"1px solid var(--chakra-colors-border)\",\n\t\t\t\t\t\t\tborderRadius: \"0.375rem\",\n\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\tminHeight: height,\n\t\t\t\t\t\t\tresize: \"vertical\",\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t)\n\t\t\t}\n\t\t</FormField>\n\t);\n}\n(CodeField as { displayName?: string }).displayName = \"CodeField\";\n","import { type ButtonProps, IconButton, Square } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport {\n\tPopover,\n\tPopoverBody,\n\tPopoverContent,\n\tPopoverTrigger,\n} from \"../primitives/popover\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\n// react-colorful is an optional peer dependency\ntype HexColorPickerProps = {\n\tcolor?: string;\n\tonChange?: (color: string) => void;\n};\n\nexport interface ColorPickerFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\tsize?: ButtonProps[\"size\"];\n\t/** The HexColorPicker component from react-colorful. Pass it to avoid hard dependency. */\n\tColorPicker?: React.ComponentType<HexColorPickerProps>;\n}\n\nexport function ColorPickerField<T extends FieldValues>({\n\tref,\n\t...props\n}: ColorPickerFieldProps<T> & { ref?: React.Ref<HTMLButtonElement> }) {\n\tconst { name, label, size = \"md\", readOnly, ColorPicker, ...rest } = props;\n\n\treturn (\n\t\t<FormField<T> name={name} label={label} readOnly={readOnly} {...rest}>\n\t\t\t{(field) => (\n\t\t\t\t<Popover>\n\t\t\t\t\t<PopoverTrigger asChild>\n\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\tref={ref}\n\t\t\t\t\t\t\tsize={size}\n\t\t\t\t\t\t\tw=\"fit-content\"\n\t\t\t\t\t\t\tborderWidth=\"1px\"\n\t\t\t\t\t\t\trounded=\"md\"\n\t\t\t\t\t\t\tp={1}\n\t\t\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\t\t\tdisabled={readOnly}\n\t\t\t\t\t\t\taria-label={`Color: ${field.value || \"none\"}`}\n\t\t\t\t\t\t\taria-describedby={field[\"aria-describedby\"]}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Square rounded=\"sm\" bg={field.value} size={6} />\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t</PopoverTrigger>\n\t\t\t\t\t<PopoverContent width=\"auto\" showArrow>\n\t\t\t\t\t\t<PopoverBody>\n\t\t\t\t\t\t\t{ColorPicker ? (\n\t\t\t\t\t\t\t\t<ColorPicker\n\t\t\t\t\t\t\t\t\tcolor={field.value}\n\t\t\t\t\t\t\t\t\tonChange={(color) => field.onChange(color)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t\ttype=\"color\"\n\t\t\t\t\t\t\t\t\tvalue={field.value || \"#000000\"}\n\t\t\t\t\t\t\t\t\tonChange={(e) => field.onChange(e.target.value)}\n\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\twidth: 200,\n\t\t\t\t\t\t\t\t\t\theight: 200,\n\t\t\t\t\t\t\t\t\t\tborder: \"none\",\n\t\t\t\t\t\t\t\t\t\tcursor: \"pointer\",\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</PopoverBody>\n\t\t\t\t\t</PopoverContent>\n\t\t\t\t</Popover>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n(ColorPickerField as { displayName?: string }).displayName = \"ColorPickerField\";\n","import { Field, HStack } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport { useId } from \"react\";\n\nexport interface ControlledFormFieldProps {\n\tname: string;\n\tlabel?: React.ReactNode;\n\thelperText?: React.ReactNode;\n\terrorMessage?: React.ReactNode;\n\trequired?: boolean;\n\tdisabled?: boolean;\n\treadOnly?: boolean;\n\tactions?: React.ReactNode;\n\tchildren: React.ReactNode;\n}\n\nexport const ControlledFormField: React.FC<ControlledFormFieldProps> = ({\n\tname,\n\tlabel,\n\thelperText,\n\terrorMessage,\n\trequired,\n\tdisabled,\n\treadOnly,\n\tactions,\n\tchildren,\n}) => {\n\tconst uid = useId();\n\tconst helperId = `${uid}-helper`;\n\tconst errorId = `${uid}-error`;\n\n\treturn (\n\t\t<Field.Root\n\t\t\tinvalid={!!errorMessage}\n\t\t\trequired={required}\n\t\t\tdisabled={disabled}\n\t\t\treadOnly={readOnly}\n\t\t>\n\t\t\t{label &&\n\t\t\t\t(typeof label === \"string\" ? (\n\t\t\t\t\t<HStack>\n\t\t\t\t\t\t<Field.Label flex=\"1\" htmlFor={name}>\n\t\t\t\t\t\t\t{label}\n\t\t\t\t\t\t</Field.Label>\n\t\t\t\t\t\t{actions}\n\t\t\t\t\t</HStack>\n\t\t\t\t) : (\n\t\t\t\t\tlabel\n\t\t\t\t))}\n\t\t\t{/* aria-describedby must be set manually by the consumer since children is ReactNode, not a render function. */}\n\t\t\t{children}\n\t\t\t{helperText &&\n\t\t\t\t(typeof helperText === \"string\" ? (\n\t\t\t\t\t<Field.HelperText id={helperId}>{helperText}</Field.HelperText>\n\t\t\t\t) : (\n\t\t\t\t\t<span id={helperId}>{helperText}</span>\n\t\t\t\t))}\n\t\t\t{errorMessage && (\n\t\t\t\t<Field.ErrorText id={errorId} aria-live=\"polite\">\n\t\t\t\t\t{errorMessage}\n\t\t\t\t</Field.ErrorText>\n\t\t\t)}\n\t\t</Field.Root>\n\t);\n};\nControlledFormField.displayName = \"ControlledFormField\";\n","import { Input } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\nexport interface DatePickerFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\t/** Minimum date in YYYY-MM-DD format */\n\tmin?: string;\n\t/** Maximum date in YYYY-MM-DD format */\n\tmax?: string;\n\t/** Input type: \"date\", \"datetime-local\", or \"time\" */\n\ttype?: \"date\" | \"datetime-local\" | \"time\";\n}\n\nexport function DatePickerField<T extends FieldValues>({\n\tref,\n\t...props\n}: DatePickerFieldProps<T> & { ref?: React.Ref<HTMLInputElement> }) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\tmin,\n\t\tmax,\n\t\ttype = \"date\",\n\t\treadOnly,\n\t\tdisabled,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<FormField<T>\n\t\t\tname={name}\n\t\t\tlabel={label}\n\t\t\treadOnly={readOnly}\n\t\t\tdisabled={disabled}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{(field) => (\n\t\t\t\t<Input\n\t\t\t\t\t{...field}\n\t\t\t\t\tvalue={field.value ?? \"\"}\n\t\t\t\t\ttype={type}\n\t\t\t\t\tid={name}\n\t\t\t\t\tmin={min}\n\t\t\t\t\tmax={max}\n\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\tref={ref}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n(DatePickerField as { displayName?: string }).displayName = \"DatePickerField\";\n","import type React from \"react\";\nimport { useFormContext } from \"react-hook-form\";\nimport { useBlocker } from \"react-router-dom\";\nimport { LeavePageConfirmation } from \"../primitives/leave-page-confirmation\";\n\nexport interface DirtyFormGuardProps {\n\t/** Dialog title. @default \"You have unsaved changes\" */\n\ttitle?: string;\n\t/** Dialog message body. @default \"Are you sure you want to leave this page? You have unsaved changes.\" */\n\tmessage?: string;\n\t/** Label for the confirm/leave button. @default \"Leave\" */\n\tconfirmLabel?: string;\n\t/** Label for the cancel/stay button. @default \"Stay\" */\n\tcancelLabel?: string;\n}\n\nexport const DirtyFormGuard: React.FC<DirtyFormGuardProps> = ({\n\ttitle,\n\tmessage,\n\tconfirmLabel,\n\tcancelLabel,\n}) => {\n\tconst { formState } = useFormContext();\n\tconst blocker = useBlocker(formState.isDirty);\n\n\treturn (\n\t\t<LeavePageConfirmation\n\t\t\tblocked={blocker.state === \"blocked\"}\n\t\t\tonConfirmLeave={() => blocker.proceed?.()}\n\t\t\tonCancelLeave={() => blocker.reset?.()}\n\t\t\ttitle={title}\n\t\t\tmessage={message}\n\t\t\tconfirmLabel={confirmLabel}\n\t\t\tcancelLabel={cancelLabel}\n\t\t/>\n\t);\n};\nDirtyFormGuard.displayName = \"DirtyFormGuard\";\n","import {\n\tButtonGroup,\n\tEditable,\n\tIconButton,\n\tuseEditableContext,\n} from \"@chakra-ui/react\";\nimport { Pencil } from \"lucide-react\";\nimport type React from \"react\";\n\nexport interface EditableHeadingProps {\n\tvalue?: string;\n\tonChange?: (nextValue: string) => void;\n\tonCancel?: (previousValue: string) => void;\n\tonSubmit?: (nextValue: string) => void;\n\t/** Aria label for the edit button. @default \"Edit\" */\n\teditLabel?: string;\n\t/** Font size for the heading. @default \"3xl\" */\n\tfontSize?: string;\n\t/** Max width constraint. @default \"lg\" */\n\tmaxW?: string;\n}\n\nconst EditableControls: React.FC<{ editLabel: string }> = ({ editLabel }) => {\n\tconst { editing } = useEditableContext();\n\n\tif (editing) return null;\n\n\treturn (\n\t\t<ButtonGroup>\n\t\t\t<Editable.EditTrigger asChild>\n\t\t\t\t<IconButton\n\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\tmarginInlineStart={2}\n\t\t\t\t\taria-label={editLabel}\n\t\t\t\t>\n\t\t\t\t\t<Pencil size={20} />\n\t\t\t\t</IconButton>\n\t\t\t</Editable.EditTrigger>\n\t\t</ButtonGroup>\n\t);\n};\n\nexport const EditableHeading: React.FC<EditableHeadingProps> = ({\n\tvalue,\n\tonChange,\n\tonCancel,\n\tonSubmit,\n\teditLabel = \"Edit\",\n\tfontSize = \"3xl\",\n\tmaxW = \"lg\",\n}) => {\n\treturn (\n\t\t<Editable.Root\n\t\t\tfontSize={fontSize}\n\t\t\tmaxW={maxW}\n\t\t\tvalue={String(value ?? \"\")}\n\t\t\tonValueChange={(details) => onChange?.(details.value)}\n\t\t\tonValueRevert={(details) => onCancel?.(details.value)}\n\t\t\tonValueCommit={(details) => onSubmit?.(details.value)}\n\t\t>\n\t\t\t<Editable.Preview />\n\t\t\t<Editable.Input />\n\t\t\t<EditableControls editLabel={editLabel} />\n\t\t</Editable.Root>\n\t);\n};\nEditableHeading.displayName = \"EditableHeading\";\n","import { Box, Button, Flex, Text } from \"@chakra-ui/react\";\nimport { Upload } from \"lucide-react\";\nimport type React from \"react\";\nimport { useCallback, useEffect } from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\n// react-dropzone is an optional peer dependency\ntype DropzoneOptions = {\n\tnoClick?: boolean;\n\tmultiple?: boolean;\n\tdisabled?: boolean;\n\taccept?: Record<string, string[]>;\n\tonDrop?: (files: File[]) => void;\n};\n\ntype UseDropzoneReturn = {\n\tgetRootProps: () => Record<string, any>;\n\tgetInputProps: () => Record<string, any>;\n\tisDragActive: boolean;\n\topen: () => void;\n};\n\nexport interface FileFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\t/** Accept configuration for file types, e.g. { \"image/*\": [\".png\", \".jpg\"] } */\n\taccept?: Record<string, string[]>;\n\t/** Allow multiple file selection. @default false */\n\tmultiple?: boolean;\n\t/** Text shown when dragging files over. @default \"Release to upload\" */\n\tdragActiveText?: string;\n\t/** Text shown below the file preview. @default \"Drag & drop a file to upload\" */\n\tdropHintText?: string;\n\t/** Label for the upload button. @default \"Choose File\" */\n\tbuttonLabel?: string;\n\t/** The useDropzone hook from react-dropzone. Pass it to avoid hard dependency. */\n\tuseDropzone?: (options: DropzoneOptions) => UseDropzoneReturn;\n}\n\nexport function FileField<T extends FieldValues>(props: FileFieldProps<T>) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\taccept,\n\t\tmultiple = false,\n\t\tdisabled,\n\t\tdragActiveText = \"Release to upload\",\n\t\tdropHintText = \"Drag & drop a file to upload\",\n\t\tbuttonLabel = \"Choose File\",\n\t\tuseDropzone,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<FormField<T> name={name} label={label} disabled={disabled} {...rest}>\n\t\t\t{(field) => {\n\t\t\t\tif (useDropzone) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<DropzoneContent\n\t\t\t\t\t\t\tfield={field}\n\t\t\t\t\t\t\taccept={accept}\n\t\t\t\t\t\t\tmultiple={multiple}\n\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\tdragActiveText={dragActiveText}\n\t\t\t\t\t\t\tdropHintText={dropHintText}\n\t\t\t\t\t\t\tbuttonLabel={buttonLabel}\n\t\t\t\t\t\t\tuseDropzone={useDropzone}\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\t// Fallback: native file input\n\t\t\t\treturn (\n\t\t\t\t\t<Box>\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\ttype=\"file\"\n\t\t\t\t\t\t\taccept={\n\t\t\t\t\t\t\t\taccept ? Object.values(accept).flat().join(\",\") : undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmultiple={multiple}\n\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\taria-describedby={field[\"aria-describedby\"]}\n\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\tconst files = e.target.files;\n\t\t\t\t\t\t\t\tif (!files) return;\n\t\t\t\t\t\t\t\tif (multiple) {\n\t\t\t\t\t\t\t\t\tfield.onChange(Array.from(files));\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tfield.onChange(files[0] || null);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{field.value && (\n\t\t\t\t\t\t\t<Text mt={2} fontSize=\"sm\" color=\"fg.muted\">\n\t\t\t\t\t\t\t\t{(field.value as File)?.name ?? \"File selected\"}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</Box>\n\t\t\t\t);\n\t\t\t}}\n\t\t</FormField>\n\t);\n}\n\nFileField.displayName = \"FileField\";\n\ninterface DropzoneContentProps {\n\tfield: {\n\t\tvalue: any;\n\t\tonChange: (...event: any[]) => void;\n\t\tonBlur: () => void;\n\t\tref: React.Ref<any>;\n\t\tname: string;\n\t};\n\taccept?: Record<string, string[]>;\n\tmultiple: boolean;\n\tdisabled?: boolean;\n\tdragActiveText: string;\n\tdropHintText: string;\n\tbuttonLabel: string;\n\tuseDropzone: (options: DropzoneOptions) => UseDropzoneReturn;\n}\n\nconst DropzoneContent: React.FC<DropzoneContentProps> = ({\n\tfield,\n\taccept,\n\tmultiple,\n\tdisabled,\n\tdragActiveText,\n\tdropHintText,\n\tbuttonLabel,\n\tuseDropzone,\n}) => {\n\tconst handleDrop = useCallback(\n\t\t(files: File[]) => {\n\t\t\tif (multiple) {\n\t\t\t\tfield.onChange(files);\n\t\t\t} else {\n\t\t\t\tconst file = files[0];\n\t\t\t\tif (file) {\n\t\t\t\t\tfield.onChange(\n\t\t\t\t\t\tObject.assign(file, {\n\t\t\t\t\t\t\tpreview: URL.createObjectURL(file),\n\t\t\t\t\t\t}),\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[field, multiple],\n\t);\n\n\tuseEffect(() => {\n\t\treturn () => {\n\t\t\tif (field.value?.preview) {\n\t\t\t\tURL.revokeObjectURL(field.value.preview);\n\t\t\t}\n\t\t};\n\t}, [field.value]);\n\n\tconst { getRootProps, getInputProps, isDragActive, open } = useDropzone({\n\t\tnoClick: true,\n\t\tmultiple,\n\t\tdisabled,\n\t\taccept,\n\t\tonDrop: handleDrop,\n\t});\n\n\treturn (\n\t\t<Box {...getRootProps()}>\n\t\t\t<Box display=\"none\" {...getInputProps()} asChild>\n\t\t\t\t<input />\n\t\t\t</Box>\n\t\t\t<Box\n\t\t\t\tbgColor=\"bg.muted\"\n\t\t\t\tp={4}\n\t\t\t\trounded=\"md\"\n\t\t\t\toverflow=\"hidden\"\n\t\t\t\tposition=\"relative\"\n\t\t\t\ttextAlign=\"center\"\n\t\t\t>\n\t\t\t\t{isDragActive && (\n\t\t\t\t\t<Flex\n\t\t\t\t\t\tpointerEvents=\"none\"\n\t\t\t\t\t\ttop=\"0\"\n\t\t\t\t\t\tinsetInlineStart=\"0\"\n\t\t\t\t\t\tposition=\"absolute\"\n\t\t\t\t\t\tbackgroundColor=\"blackAlpha.400\"\n\t\t\t\t\t\twidth=\"100%\"\n\t\t\t\t\t\theight=\"100%\"\n\t\t\t\t\t\tzIndex={1}\n\t\t\t\t\t\talignItems=\"center\"\n\t\t\t\t\t\tjustifyContent=\"center\"\n\t\t\t\t\t\tdirection=\"column\"\n\t\t\t\t\t\tcolor=\"white\"\n\t\t\t\t\t\tgap=\"3\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Upload size={48} />\n\t\t\t\t\t\t<Text fontSize=\"lg\" fontWeight=\"bold\">\n\t\t\t\t\t\t\t{dragActiveText}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</Flex>\n\t\t\t\t)}\n\t\t\t\t{field.value?.name && (\n\t\t\t\t\t<Text fontSize=\"sm\" color=\"fg.muted\">\n\t\t\t\t\t\t{field.value.name}\n\t\t\t\t\t</Text>\n\t\t\t\t)}\n\t\t\t\t<Text color=\"fg.muted\" fontSize=\"xs\" mt={2}>\n\t\t\t\t\t{dropHintText}\n\t\t\t\t</Text>\n\t\t\t\t<Button mt={2} size=\"sm\" variant=\"outline\" onClick={open}>\n\t\t\t\t\t<Upload size={14} />\n\t\t\t\t\t{buttonLabel}\n\t\t\t\t</Button>\n\t\t\t</Box>\n\t\t</Box>\n\t);\n};\n","import type { InputProps } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport TextInput from \"../atoms/text-input/text-input\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\nexport interface InputFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\tplaceholder?: string;\n\ttype?: InputProps[\"type\"];\n\tappend?: string | React.ReactElement;\n\tprepend?: string | React.ReactElement;\n\tinputProps?: InputProps;\n}\n\nexport function InputField<T extends FieldValues>({\n\tref,\n\t...props\n}: InputFieldProps<T> & { ref?: React.Ref<HTMLInputElement> }) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\tplaceholder,\n\t\ttype,\n\t\tappend,\n\t\tprepend,\n\t\tinputProps,\n\t\treadOnly,\n\t\tdisabled,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<FormField<T>\n\t\t\tname={name}\n\t\t\tlabel={label}\n\t\t\treadOnly={readOnly}\n\t\t\tdisabled={disabled}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{(field) => (\n\t\t\t\t<TextInput\n\t\t\t\t\t{...field}\n\t\t\t\t\tvalue={field.value ?? \"\"}\n\t\t\t\t\tid={name}\n\t\t\t\t\tplaceholder={placeholder}\n\t\t\t\t\ttype={type}\n\t\t\t\t\tappend={append}\n\t\t\t\t\tprepend={prepend}\n\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\topacity={readOnly ? 0.8 : 1}\n\t\t\t\t\tref={ref}\n\t\t\t\t\t{...inputProps}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n(InputField as { displayName?: string }).displayName = \"InputField\";\n","import type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\n// @uiw/react-md-editor is an optional peer dependency\ntype MDEditorProps = {\n\tvalue?: string;\n\tonChange?: (value?: string) => void;\n\tminHeight?: number;\n\tmaxHeight?: number;\n\tvisibleDragbar?: boolean;\n};\n\ntype MDEditorComponent = React.ComponentType<MDEditorProps> & {\n\tMarkdown?: React.ComponentType<{ source?: string }>;\n};\n\nexport interface MarkdownFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\t/** The MDEditor component from @uiw/react-md-editor. Pass it to avoid hard dependency. */\n\tMDEditor?: MDEditorComponent;\n\tminHeight?: number;\n\tmaxHeight?: number;\n}\n\nexport function MarkdownField<T extends FieldValues>(\n\tprops: MarkdownFieldProps<T>,\n) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\treadOnly,\n\t\tMDEditor,\n\t\tminHeight = 200,\n\t\tmaxHeight = 600,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<FormField<T> name={name} label={label} readOnly={readOnly} {...rest}>\n\t\t\t{(field) => {\n\t\t\t\tif (MDEditor) {\n\t\t\t\t\tif (readOnly && MDEditor.Markdown) {\n\t\t\t\t\t\treturn <MDEditor.Markdown source={field.value} />;\n\t\t\t\t\t}\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<MDEditor\n\t\t\t\t\t\t\tvalue={field.value}\n\t\t\t\t\t\t\tonChange={(value) => field.onChange(value ?? \"\")}\n\t\t\t\t\t\t\tminHeight={minHeight}\n\t\t\t\t\t\t\tmaxHeight={maxHeight}\n\t\t\t\t\t\t\tvisibleDragbar\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\t// Fallback: plain textarea\n\t\t\t\treturn (\n\t\t\t\t\t<textarea\n\t\t\t\t\t\tvalue={field.value ?? \"\"}\n\t\t\t\t\t\tonChange={(e) => field.onChange(e.target.value)}\n\t\t\t\t\t\tonBlur={field.onBlur}\n\t\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\t\taria-describedby={field[\"aria-describedby\"]}\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tpadding: \"0.75rem\",\n\t\t\t\t\t\t\tborder: \"1px solid var(--chakra-colors-border)\",\n\t\t\t\t\t\t\tborderRadius: \"0.375rem\",\n\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\tminHeight: `${minHeight}px`,\n\t\t\t\t\t\t\tresize: \"vertical\",\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t}}\n\t\t</FormField>\n\t);\n}\n(MarkdownField as { displayName?: string }).displayName = \"MarkdownField\";\n","import type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport {\n\tNumberInputField as NumberInputInput,\n\ttype NumberInputProps,\n\tNumberInputRoot,\n} from \"../primitives/number-input\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\nexport interface NumberInputFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\tmin?: number;\n\tmax?: number;\n\tstep?: number;\n\tshowStepper?: boolean;\n\tnumberInputProps?: NumberInputProps;\n}\n\nexport function NumberInputField<T extends FieldValues>({\n\tref,\n\t...props\n}: NumberInputFieldProps<T> & { ref?: React.Ref<HTMLInputElement> }) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\tmin,\n\t\tmax,\n\t\tstep,\n\t\tshowStepper = true,\n\t\tnumberInputProps,\n\t\treadOnly,\n\t\tdisabled,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<FormField<T>\n\t\t\tname={name}\n\t\t\tlabel={label}\n\t\t\treadOnly={readOnly}\n\t\t\tdisabled={disabled}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{(field) => (\n\t\t\t\t<NumberInputRoot\n\t\t\t\t\tmin={min}\n\t\t\t\t\tmax={max}\n\t\t\t\t\tstep={step}\n\t\t\t\t\tvalue={String(field.value ?? 0)}\n\t\t\t\t\tonValueChange={(details) => {\n\t\t\t\t\t\tfield.onChange(\n\t\t\t\t\t\t\tdetails.value === \"\" ? 0 : Number.parseFloat(details.value),\n\t\t\t\t\t\t);\n\t\t\t\t\t}}\n\t\t\t\t\tid={name}\n\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\tshowStepper={showStepper && !readOnly}\n\t\t\t\t\topacity={readOnly ? 0.8 : 1}\n\t\t\t\t\t{...numberInputProps}\n\t\t\t\t>\n\t\t\t\t\t<NumberInputInput\n\t\t\t\t\t\tname={field.name}\n\t\t\t\t\t\tref={ref}\n\t\t\t\t\t\tonBlur={field.onBlur}\n\t\t\t\t\t\taria-describedby={field[\"aria-describedby\"]}\n\t\t\t\t\t/>\n\t\t\t\t</NumberInputRoot>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n(NumberInputField as { displayName?: string }).displayName = \"NumberInputField\";\n","import {\n\tRadioGroup as ChakraRadioGroup,\n\ttype RadioGroupRootProps,\n\tStack,\n\ttype StackProps,\n} from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport { Radio } from \"../primitives/radio\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\nexport interface RadioOption {\n\tlabel: React.ReactNode;\n\tvalue: string;\n}\n\nexport interface RadioGroupFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\toptions: RadioOption[];\n\tradioGroupProps?: RadioGroupRootProps;\n\tstackProps?: StackProps;\n}\n\nexport function RadioGroupField<T extends FieldValues>(\n\tprops: RadioGroupFieldProps<T>,\n) {\n\tconst { name, label, options, radioGroupProps, stackProps, ...rest } = props;\n\n\treturn (\n\t\t<FormField<T> name={name} label={label} {...rest}>\n\t\t\t{(field) => (\n\t\t\t\t<ChakraRadioGroup.Root\n\t\t\t\t\tvalue={String(field.value ?? \"\")}\n\t\t\t\t\tonValueChange={(e) => field.onChange(e.value)}\n\t\t\t\t\taria-describedby={field[\"aria-describedby\"]}\n\t\t\t\t\t{...radioGroupProps}\n\t\t\t\t>\n\t\t\t\t\t<Stack direction=\"row\" {...stackProps}>\n\t\t\t\t\t\t{options.map((option) => (\n\t\t\t\t\t\t\t<Radio key={option.value} value={option.value}>\n\t\t\t\t\t\t\t\t{option.label}\n\t\t\t\t\t\t\t</Radio>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</Stack>\n\t\t\t\t</ChakraRadioGroup.Root>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n(RadioGroupField as { displayName?: string }).displayName = \"RadioGroupField\";\n","import type { NativeSelectFieldProps } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport { NativeSelect } from \"../primitives/native-select\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\nexport interface SelectFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\tplaceholder?: string;\n\tselectProps?: NativeSelectFieldProps;\n\tchildren: React.ReactNode;\n}\n\nexport function SelectField<T extends FieldValues>({\n\tref,\n\t...props\n}: SelectFieldProps<T> & { ref?: React.Ref<HTMLSelectElement> }) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\tplaceholder,\n\t\tselectProps,\n\t\tchildren,\n\t\treadOnly,\n\t\tdisabled,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<FormField<T>\n\t\t\tname={name}\n\t\t\tlabel={label}\n\t\t\treadOnly={readOnly}\n\t\t\tdisabled={disabled}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{(field) => (\n\t\t\t\t<NativeSelect\n\t\t\t\t\tdisabled={readOnly || disabled}\n\t\t\t\t\tplaceholder={placeholder}\n\t\t\t\t\t{...field}\n\t\t\t\t\tvalue={String(field.value ?? \"\")}\n\t\t\t\t\tid={name}\n\t\t\t\t\tref={ref}\n\t\t\t\t\t{...selectProps}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</NativeSelect>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n(SelectField as { displayName?: string }).displayName = \"SelectField\";\n","import type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport { Switch, type SwitchProps } from \"../primitives/switch\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\nexport interface SwitchFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\tswitchProps?: SwitchProps;\n}\n\nexport function SwitchField<T extends FieldValues>({\n\tref,\n\t...props\n}: SwitchFieldProps<T> & { ref?: React.Ref<HTMLInputElement> }) {\n\tconst { name, label, readOnly, disabled, switchProps, ...rest } = props;\n\n\treturn (\n\t\t<FormField<T>\n\t\t\tname={name}\n\t\t\tlabel={label}\n\t\t\treadOnly={readOnly}\n\t\t\tdisabled={disabled}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{(field) => (\n\t\t\t\t<Switch\n\t\t\t\t\tid={name}\n\t\t\t\t\tname={field.name}\n\t\t\t\t\tchecked={field.value || false}\n\t\t\t\t\tonCheckedChange={(details) => field.onChange(!!details.checked)}\n\t\t\t\t\tonBlur={field.onBlur}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\topacity={readOnly ? 0.8 : 1}\n\t\t\t\t\taria-describedby={field[\"aria-describedby\"]}\n\t\t\t\t\tref={ref}\n\t\t\t\t\t{...switchProps}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n(SwitchField as { displayName?: string }).displayName = \"SwitchField\";\n","import { Textarea, type TextareaProps } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\nexport interface TextareaFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\tplaceholder?: string;\n\ttextareaProps?: TextareaProps;\n}\n\nexport function TextareaField<T extends FieldValues>({\n\tref,\n\t...props\n}: TextareaFieldProps<T> & { ref?: React.Ref<HTMLTextAreaElement> }) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\tplaceholder,\n\t\ttextareaProps,\n\t\treadOnly,\n\t\tdisabled,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<FormField<T>\n\t\t\tname={name}\n\t\t\tlabel={label}\n\t\t\treadOnly={readOnly}\n\t\t\tdisabled={disabled}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{(field) => (\n\t\t\t\t<Textarea\n\t\t\t\t\t{...field}\n\t\t\t\t\tvalue={String(field.value ?? \"\")}\n\t\t\t\t\tid={name}\n\t\t\t\t\tplaceholder={placeholder}\n\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\topacity={readOnly ? 0.8 : 1}\n\t\t\t\t\tref={ref}\n\t\t\t\t\t{...textareaProps}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n(TextareaField as { displayName?: string }).displayName = \"TextareaField\";\n"]}
1
+ {"version":3,"sources":["../../src/forms/form-field.tsx","../../src/forms/array-field.tsx","../../src/forms/checkbox-field.tsx","../../src/forms/code-field.tsx","../../src/forms/color-picker-field.tsx","../../src/forms/controlled-form-field.tsx","../../src/forms/date-picker-field.tsx","../../src/forms/dirty-form-guard.tsx","../../src/forms/file-field.tsx","../../src/forms/inline-edit.tsx","../../src/forms/input-field.tsx","../../src/forms/markdown-field.tsx","../../src/forms/number-input-field.tsx","../../src/forms/radio-group-field.tsx","../../src/forms/select-field.tsx","../../src/forms/switch-field.tsx","../../src/forms/textarea-field.tsx"],"names":["jsx","useFormContext","jsxs","Text","Controller","Field","IconButton","useId","HStack","Input","Box","useCallback","Button","ButtonGroup","NumberInputField","ChakraRadioGroup","Stack"],"mappings":"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","file":"index.js","sourcesContent":["import { Field, HStack, Text } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport { useId } from \"react\";\nimport {\n\tController,\n\ttype ControllerRenderProps,\n\ttype FieldValues,\n\ttype Path,\n\tuseFormContext,\n} from \"react-hook-form\";\n\nexport interface FormFieldProps<T extends FieldValues> {\n\tname: Path<T>;\n\tlabel?: React.ReactNode;\n\thelperText?: React.ReactNode;\n\t/** Persistent description that shows even when there's an error. */\n\tdescription?: React.ReactNode;\n\trequired?: boolean;\n\tdisabled?: boolean;\n\treadOnly?: boolean;\n\tactions?: React.ReactNode;\n\tchildren: (\n\t\tfield: ControllerRenderProps<T, Path<T>> & {\n\t\t\t/** Computed aria-describedby linking to helper/description/error elements. */\n\t\t\t\"aria-describedby\"?: string;\n\t\t},\n\t) => React.ReactNode;\n}\n\nexport function FormField<T extends FieldValues>({\n\tname,\n\tlabel,\n\thelperText,\n\tdescription,\n\trequired,\n\tdisabled,\n\treadOnly,\n\tactions,\n\tchildren,\n}: FormFieldProps<T>) {\n\tconst { control } = useFormContext<T>();\n\tconst uid = useId();\n\tconst descriptionId = `${uid}-description`;\n\tconst helperId = `${uid}-helper`;\n\tconst errorId = `${uid}-error`;\n\n\treturn (\n\t\t<Controller\n\t\t\tname={name}\n\t\t\tcontrol={control}\n\t\t\trender={({ field, fieldState }) => {\n\t\t\t\tconst describedBy =\n\t\t\t\t\t[\n\t\t\t\t\t\tdescription ? descriptionId : null,\n\t\t\t\t\t\thelperText ? helperId : null,\n\t\t\t\t\t\tfieldState.error ? errorId : null,\n\t\t\t\t\t]\n\t\t\t\t\t\t.filter(Boolean)\n\t\t\t\t\t\t.join(\" \") || undefined;\n\n\t\t\t\treturn (\n\t\t\t\t\t<Field.Root\n\t\t\t\t\t\tinvalid={!!fieldState.error}\n\t\t\t\t\t\trequired={required}\n\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\t>\n\t\t\t\t\t\t{label &&\n\t\t\t\t\t\t\t(typeof label === \"string\" ? (\n\t\t\t\t\t\t\t\t<HStack>\n\t\t\t\t\t\t\t\t\t<Field.Label flex=\"1\" htmlFor={name}>\n\t\t\t\t\t\t\t\t\t\t{label}\n\t\t\t\t\t\t\t\t\t</Field.Label>\n\t\t\t\t\t\t\t\t\t{actions}\n\t\t\t\t\t\t\t\t</HStack>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\tlabel\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t{children({ ...field, \"aria-describedby\": describedBy })}\n\t\t\t\t\t\t{description && (\n\t\t\t\t\t\t\t<Text id={descriptionId} fontSize=\"xs\" color=\"muted\">\n\t\t\t\t\t\t\t\t{description}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{helperText &&\n\t\t\t\t\t\t\t(typeof helperText === \"string\" ? (\n\t\t\t\t\t\t\t\t<Field.HelperText id={helperId}>{helperText}</Field.HelperText>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<span id={helperId}>{helperText}</span>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t{fieldState.error && (\n\t\t\t\t\t\t\t<Field.ErrorText id={errorId} aria-live=\"polite\">\n\t\t\t\t\t\t\t\t{fieldState.error.message}\n\t\t\t\t\t\t\t</Field.ErrorText>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</Field.Root>\n\t\t\t\t);\n\t\t\t}}\n\t\t/>\n\t);\n}\n(FormField as { displayName?: string }).displayName = \"FormField\";\n","import {\n\tBox,\n\tButton,\n\tButtonGroup,\n\tGrid,\n\tGridItem,\n\tIconButton,\n\tInput,\n\tStack,\n\tText,\n} from \"@chakra-ui/react\";\nimport { Plus, Trash2 } from \"lucide-react\";\nimport React from \"react\";\nimport {\n\ttype FieldValues,\n\tuseFieldArray,\n\tuseFormContext,\n} from \"react-hook-form\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\nexport interface ArrayFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\t/**\n\t * The mode of the array field.\n\t * - `dynamic` — add/remove key-value pairs\n\t * - `keyed` — fixed keys, editable values\n\t * @default \"dynamic\"\n\t */\n\tmode?: \"dynamic\" | \"keyed\";\n\t/** Header label for the value column. @default \"Value\" */\n\tvalueHeader?: string;\n\t/** Header label for the key column. @default \"Key\" */\n\tkeyHeader?: string;\n\t/** Fixed keys when mode is \"keyed\". */\n\tkeys?: Array<{ key: string; value: string }>;\n\t/** Label for the add button. @default \"Add Field\" */\n\taddLabel?: string;\n\t/** Aria label for the remove button. @default \"Remove Item\" */\n\tremoveLabel?: string;\n\t/** Content to display when there are no items. */\n\temptyState?: React.ReactNode;\n}\n\nexport function ArrayField<T extends FieldValues>(props: ArrayFieldProps<T>) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\tmode = \"dynamic\",\n\t\tvalueHeader = \"Value\",\n\t\tkeyHeader = \"Key\",\n\t\tkeys = [],\n\t\taddLabel = \"Add Field\",\n\t\tremoveLabel = \"Remove Item\",\n\t\treadOnly,\n\t\temptyState,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<FormField<T> name={name} label={label} readOnly={readOnly} {...rest}>\n\t\t\t{(/* field */) => (\n\t\t\t\t<Box py={4} px={4} bg=\"bg\" rounded=\"md\">\n\t\t\t\t\t{mode === \"dynamic\" ? (\n\t\t\t\t\t\t<DynamicArray\n\t\t\t\t\t\t\tname={name}\n\t\t\t\t\t\t\tvalueHeader={valueHeader}\n\t\t\t\t\t\t\tkeyHeader={keyHeader}\n\t\t\t\t\t\t\taddLabel={addLabel}\n\t\t\t\t\t\t\tremoveLabel={removeLabel}\n\t\t\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\t\t\temptyState={emptyState}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<KeyedArray\n\t\t\t\t\t\t\tname={name}\n\t\t\t\t\t\t\tvalueHeader={valueHeader}\n\t\t\t\t\t\t\tkeyHeader={keyHeader}\n\t\t\t\t\t\t\tkeys={keys}\n\t\t\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</Box>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n\nArrayField.displayName = \"ArrayField\";\n\ninterface DynamicArrayProps {\n\tname: string;\n\tvalueHeader: string;\n\tkeyHeader: string;\n\taddLabel: string;\n\tremoveLabel: string;\n\treadOnly?: boolean;\n\temptyState?: React.ReactNode;\n}\n\nconst DynamicArray: React.FC<DynamicArrayProps> = React.memo((props) => {\n\tconst {\n\t\tname,\n\t\tvalueHeader,\n\t\tkeyHeader,\n\t\taddLabel,\n\t\tremoveLabel,\n\t\treadOnly,\n\t\temptyState,\n\t} = props;\n\n\tconst { control, register } = useFormContext();\n\tconst { fields, append, remove } = useFieldArray({\n\t\tcontrol,\n\t\tname: name as any,\n\t});\n\n\treturn (\n\t\t<Stack gap={4}>\n\t\t\t<Grid templateColumns=\"200px 1fr 50px\" gap={2}>\n\t\t\t\t<GridItem>\n\t\t\t\t\t<Text fontWeight={500}>{keyHeader}</Text>\n\t\t\t\t</GridItem>\n\t\t\t\t<GridItem colSpan={2}>\n\t\t\t\t\t<Text fontWeight={500}>{valueHeader}</Text>\n\t\t\t\t</GridItem>\n\n\t\t\t\t{fields.map((item, index) => (\n\t\t\t\t\t<React.Fragment key={item.id}>\n\t\t\t\t\t\t<Input\n\t\t\t\t\t\t\t{...register(`${name}.${index}.key` as any)}\n\t\t\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Input\n\t\t\t\t\t\t\t{...register(`${name}.${index}.value` as any)}\n\t\t\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\t\tcolorPalette=\"red\"\n\t\t\t\t\t\t\taria-label={removeLabel}\n\t\t\t\t\t\t\tonClick={() => remove(index)}\n\t\t\t\t\t\t\tdisabled={readOnly}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Trash2 size={16} />\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t</React.Fragment>\n\t\t\t\t))}\n\t\t\t</Grid>\n\t\t\t{fields.length === 0 && emptyState && (\n\t\t\t\t<Box py={4} textAlign=\"center\">\n\t\t\t\t\t{emptyState}\n\t\t\t\t</Box>\n\t\t\t)}\n\t\t\t<ButtonGroup>\n\t\t\t\t<Button\n\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\tsize=\"sm\"\n\t\t\t\t\tonClick={() => append({ key: \"\", value: \"\" })}\n\t\t\t\t\tdisabled={readOnly}\n\t\t\t\t>\n\t\t\t\t\t<Plus size={16} />\n\t\t\t\t\t{addLabel}\n\t\t\t\t</Button>\n\t\t\t</ButtonGroup>\n\t\t</Stack>\n\t);\n});\n\nDynamicArray.displayName = \"DynamicArray\";\n\ninterface KeyedArrayProps {\n\tname: string;\n\tvalueHeader: string;\n\tkeyHeader: string;\n\tkeys: Array<{ key: string; value: string }>;\n\treadOnly?: boolean;\n}\n\nconst KeyedArray: React.FC<KeyedArrayProps> = React.memo((props) => {\n\tconst { name, valueHeader, keyHeader, keys, readOnly } = props;\n\tconst { register } = useFormContext();\n\n\treturn (\n\t\t<Stack gap={4}>\n\t\t\t<Grid templateColumns=\"200px 1fr\" gap={2}>\n\t\t\t\t<GridItem>\n\t\t\t\t\t<Text fontWeight={500}>{keyHeader}</Text>\n\t\t\t\t</GridItem>\n\t\t\t\t<GridItem>\n\t\t\t\t\t<Text fontWeight={500}>{valueHeader}</Text>\n\t\t\t\t</GridItem>\n\t\t\t\t{keys.map((keyItem) => (\n\t\t\t\t\t<React.Fragment key={keyItem.key}>\n\t\t\t\t\t\t<Text py={2}>{keyItem.value ?? keyItem.key}</Text>\n\t\t\t\t\t\t<Input\n\t\t\t\t\t\t\t{...register(`${name}.${keyItem.key}` as any)}\n\t\t\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</React.Fragment>\n\t\t\t\t))}\n\t\t\t</Grid>\n\t\t</Stack>\n\t);\n});\n\nKeyedArray.displayName = \"KeyedArray\";\n","import { Checkbox, Field } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport {\n\tController,\n\ttype FieldValues,\n\ttype Path,\n\tuseFormContext,\n} from \"react-hook-form\";\n\nexport interface CheckboxFieldProps<T extends FieldValues> {\n\tname: Path<T>;\n\tlabel?: string;\n\t/** When provided, the field is treated as an array of checked values. */\n\tvalue?: string | number;\n\tdisabled?: boolean;\n\thelperText?: React.ReactNode;\n\tchildren?: React.ReactNode;\n}\n\nexport function CheckboxField<T extends FieldValues>({\n\tref,\n\t...props\n}: CheckboxFieldProps<T> & { ref?: React.Ref<HTMLLabelElement> }) {\n\tconst { name, label, value, disabled, helperText, children } = props;\n\tconst { control } = useFormContext<T>();\n\n\treturn (\n\t\t<Controller\n\t\t\tname={name}\n\t\t\tcontrol={control}\n\t\t\trender={({ field, fieldState }) => {\n\t\t\t\t// Array mode: field.value is an array, value prop identifies the item\n\t\t\t\tconst isArrayMode = value !== undefined;\n\n\t\t\t\tconst isChecked = isArrayMode\n\t\t\t\t\t? Array.isArray(field.value) && field.value.includes(value)\n\t\t\t\t\t: !!field.value;\n\n\t\t\t\tconst handleCheckedChange = (details: {\n\t\t\t\t\tchecked: boolean | \"indeterminate\";\n\t\t\t\t}) => {\n\t\t\t\t\tif (isArrayMode) {\n\t\t\t\t\t\tconst currentValue = Array.isArray(field.value)\n\t\t\t\t\t\t\t? [...field.value]\n\t\t\t\t\t\t\t: [];\n\t\t\t\t\t\tif (details.checked) {\n\t\t\t\t\t\t\tif (!currentValue.includes(value)) {\n\t\t\t\t\t\t\t\tcurrentValue.push(value);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tconst idx = currentValue.indexOf(value);\n\t\t\t\t\t\t\tif (idx > -1) currentValue.splice(idx, 1);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tfield.onChange(currentValue);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tfield.onChange(!!details.checked);\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tconst uniqueId = isArrayMode ? `${name}-${String(value)}` : name;\n\n\t\t\t\treturn (\n\t\t\t\t\t<Field.Root invalid={!!fieldState.error} disabled={disabled}>\n\t\t\t\t\t\t<Checkbox.Root\n\t\t\t\t\t\t\tid={uniqueId}\n\t\t\t\t\t\t\tname={field.name}\n\t\t\t\t\t\t\tvalue={isArrayMode ? String(value) : undefined}\n\t\t\t\t\t\t\tinvalid={!!fieldState.error}\n\t\t\t\t\t\t\tref={ref}\n\t\t\t\t\t\t\tchecked={isChecked}\n\t\t\t\t\t\t\tonCheckedChange={handleCheckedChange}\n\t\t\t\t\t\t\tonBlur={field.onBlur}\n\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Checkbox.HiddenInput />\n\t\t\t\t\t\t\t<Checkbox.Control>\n\t\t\t\t\t\t\t\t<Checkbox.Indicator />\n\t\t\t\t\t\t\t</Checkbox.Control>\n\t\t\t\t\t\t\t{(label || children) && (\n\t\t\t\t\t\t\t\t<Checkbox.Label>\n\t\t\t\t\t\t\t\t\t{label}\n\t\t\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t\t\t</Checkbox.Label>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</Checkbox.Root>\n\t\t\t\t\t\t{helperText && <Field.HelperText>{helperText}</Field.HelperText>}\n\t\t\t\t\t\t{fieldState.error && (\n\t\t\t\t\t\t\t<Field.ErrorText aria-live=\"polite\">\n\t\t\t\t\t\t\t\t{fieldState.error.message}\n\t\t\t\t\t\t\t</Field.ErrorText>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</Field.Root>\n\t\t\t\t);\n\t\t\t}}\n\t\t/>\n\t);\n}\n(CheckboxField as { displayName?: string }).displayName = \"CheckboxField\";\n","import type React from \"react\";\nimport { useCallback } from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\n// @monaco-editor/react is an optional peer dependency\ntype MonacoEditorProps = {\n\tvalue?: string;\n\tlanguage?: string;\n\tonChange?: (value: string | undefined) => void;\n\tonMount?: (editor: any, monaco: any) => void;\n\theight?: string;\n\toptions?: Record<string, any>;\n};\n\nexport interface CodeFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\tlanguage?: string;\n\tplaceholder?: string;\n\theight?: string;\n\tindentWithTab?: boolean;\n\t/** The Monaco Editor component. Pass it to avoid hard dependency on @monaco-editor/react. */\n\tEditor?: React.ComponentType<MonacoEditorProps>;\n}\n\nexport function CodeField<T extends FieldValues>({\n\tref,\n\t...props\n}: CodeFieldProps<T> & { ref?: React.Ref<any> }) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\tlanguage = \"typescript\",\n\t\theight = \"400px\",\n\t\tindentWithTab = true,\n\t\treadOnly,\n\t\tEditor,\n\t\t...rest\n\t} = props;\n\n\tconst onMount = useCallback(\n\t\t(editorInstance: any, _monaco: any) => {\n\t\t\tif (typeof ref === \"function\") {\n\t\t\t\tref(editorInstance);\n\t\t\t} else if (ref && typeof ref === \"object\") {\n\t\t\t\t(ref as React.MutableRefObject<any>).current = editorInstance;\n\t\t\t}\n\t\t\teditorInstance.updateOptions?.({\n\t\t\t\ttabCompletion: indentWithTab ? \"on\" : \"off\",\n\t\t\t});\n\t\t},\n\t\t[ref, indentWithTab],\n\t);\n\n\treturn (\n\t\t<FormField<T> name={name} label={label} readOnly={readOnly} {...rest}>\n\t\t\t{(field) =>\n\t\t\t\tEditor ? (\n\t\t\t\t\t<Editor\n\t\t\t\t\t\tvalue={field.value}\n\t\t\t\t\t\tlanguage={language}\n\t\t\t\t\t\tonChange={(value) => field.onChange(value ?? \"\")}\n\t\t\t\t\t\tonMount={onMount}\n\t\t\t\t\t\theight={height}\n\t\t\t\t\t\toptions={{\n\t\t\t\t\t\t\treadOnly,\n\t\t\t\t\t\t\twordWrap: \"on\",\n\t\t\t\t\t\t\tminimap: { enabled: false },\n\t\t\t\t\t\t\tscrollBeyondLastLine: false,\n\t\t\t\t\t\t\ttabCompletion: indentWithTab ? \"on\" : \"off\",\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t) : (\n\t\t\t\t\t<textarea\n\t\t\t\t\t\tvalue={field.value ?? \"\"}\n\t\t\t\t\t\tonChange={(e) => field.onChange(e.target.value)}\n\t\t\t\t\t\tonBlur={field.onBlur}\n\t\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\t\taria-describedby={field[\"aria-describedby\"]}\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tfontFamily: \"monospace\",\n\t\t\t\t\t\t\tfontSize: \"0.875rem\",\n\t\t\t\t\t\t\tpadding: \"0.75rem\",\n\t\t\t\t\t\t\tborder: \"1px solid var(--chakra-colors-border)\",\n\t\t\t\t\t\t\tborderRadius: \"0.375rem\",\n\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\tminHeight: height,\n\t\t\t\t\t\t\tresize: \"vertical\",\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t)\n\t\t\t}\n\t\t</FormField>\n\t);\n}\n(CodeField as { displayName?: string }).displayName = \"CodeField\";\n","import { type ButtonProps, IconButton, Square } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport {\n\tPopover,\n\tPopoverBody,\n\tPopoverContent,\n\tPopoverTrigger,\n} from \"../primitives/popover\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\n// react-colorful is an optional peer dependency\ntype HexColorPickerProps = {\n\tcolor?: string;\n\tonChange?: (color: string) => void;\n};\n\nexport interface ColorPickerFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\tsize?: ButtonProps[\"size\"];\n\t/** The HexColorPicker component from react-colorful. Pass it to avoid hard dependency. */\n\tColorPicker?: React.ComponentType<HexColorPickerProps>;\n}\n\nexport function ColorPickerField<T extends FieldValues>({\n\tref,\n\t...props\n}: ColorPickerFieldProps<T> & { ref?: React.Ref<HTMLButtonElement> }) {\n\tconst { name, label, size = \"md\", readOnly, ColorPicker, ...rest } = props;\n\n\treturn (\n\t\t<FormField<T> name={name} label={label} readOnly={readOnly} {...rest}>\n\t\t\t{(field) => (\n\t\t\t\t<Popover>\n\t\t\t\t\t<PopoverTrigger asChild>\n\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\tref={ref}\n\t\t\t\t\t\t\tsize={size}\n\t\t\t\t\t\t\tw=\"fit-content\"\n\t\t\t\t\t\t\tborderWidth=\"1px\"\n\t\t\t\t\t\t\trounded=\"md\"\n\t\t\t\t\t\t\tp={1}\n\t\t\t\t\t\t\tvariant=\"outline\"\n\t\t\t\t\t\t\tdisabled={readOnly}\n\t\t\t\t\t\t\taria-label={`Color: ${field.value || \"none\"}`}\n\t\t\t\t\t\t\taria-describedby={field[\"aria-describedby\"]}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Square rounded=\"sm\" bg={field.value} size={6} />\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t</PopoverTrigger>\n\t\t\t\t\t<PopoverContent width=\"auto\" showArrow>\n\t\t\t\t\t\t<PopoverBody>\n\t\t\t\t\t\t\t{ColorPicker ? (\n\t\t\t\t\t\t\t\t<ColorPicker\n\t\t\t\t\t\t\t\t\tcolor={field.value}\n\t\t\t\t\t\t\t\t\tonChange={(color) => field.onChange(color)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t\ttype=\"color\"\n\t\t\t\t\t\t\t\t\tvalue={field.value || \"#000000\"}\n\t\t\t\t\t\t\t\t\tonChange={(e) => field.onChange(e.target.value)}\n\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\twidth: 200,\n\t\t\t\t\t\t\t\t\t\theight: 200,\n\t\t\t\t\t\t\t\t\t\tborder: \"none\",\n\t\t\t\t\t\t\t\t\t\tcursor: \"pointer\",\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</PopoverBody>\n\t\t\t\t\t</PopoverContent>\n\t\t\t\t</Popover>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n(ColorPickerField as { displayName?: string }).displayName = \"ColorPickerField\";\n","import { Field, HStack } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport { useId } from \"react\";\n\nexport interface ControlledFormFieldProps {\n\tname: string;\n\tlabel?: React.ReactNode;\n\thelperText?: React.ReactNode;\n\terrorMessage?: React.ReactNode;\n\trequired?: boolean;\n\tdisabled?: boolean;\n\treadOnly?: boolean;\n\tactions?: React.ReactNode;\n\tchildren: React.ReactNode;\n}\n\nexport const ControlledFormField: React.FC<ControlledFormFieldProps> = ({\n\tname,\n\tlabel,\n\thelperText,\n\terrorMessage,\n\trequired,\n\tdisabled,\n\treadOnly,\n\tactions,\n\tchildren,\n}) => {\n\tconst uid = useId();\n\tconst helperId = `${uid}-helper`;\n\tconst errorId = `${uid}-error`;\n\n\treturn (\n\t\t<Field.Root\n\t\t\tinvalid={!!errorMessage}\n\t\t\trequired={required}\n\t\t\tdisabled={disabled}\n\t\t\treadOnly={readOnly}\n\t\t>\n\t\t\t{label &&\n\t\t\t\t(typeof label === \"string\" ? (\n\t\t\t\t\t<HStack>\n\t\t\t\t\t\t<Field.Label flex=\"1\" htmlFor={name}>\n\t\t\t\t\t\t\t{label}\n\t\t\t\t\t\t</Field.Label>\n\t\t\t\t\t\t{actions}\n\t\t\t\t\t</HStack>\n\t\t\t\t) : (\n\t\t\t\t\tlabel\n\t\t\t\t))}\n\t\t\t{/* aria-describedby must be set manually by the consumer since children is ReactNode, not a render function. */}\n\t\t\t{children}\n\t\t\t{helperText &&\n\t\t\t\t(typeof helperText === \"string\" ? (\n\t\t\t\t\t<Field.HelperText id={helperId}>{helperText}</Field.HelperText>\n\t\t\t\t) : (\n\t\t\t\t\t<span id={helperId}>{helperText}</span>\n\t\t\t\t))}\n\t\t\t{errorMessage && (\n\t\t\t\t<Field.ErrorText id={errorId} aria-live=\"polite\">\n\t\t\t\t\t{errorMessage}\n\t\t\t\t</Field.ErrorText>\n\t\t\t)}\n\t\t</Field.Root>\n\t);\n};\nControlledFormField.displayName = \"ControlledFormField\";\n","import { Input } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\nexport interface DatePickerFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\t/** Minimum date in YYYY-MM-DD format */\n\tmin?: string;\n\t/** Maximum date in YYYY-MM-DD format */\n\tmax?: string;\n\t/** Input type: \"date\", \"datetime-local\", or \"time\" */\n\ttype?: \"date\" | \"datetime-local\" | \"time\";\n}\n\nexport function DatePickerField<T extends FieldValues>({\n\tref,\n\t...props\n}: DatePickerFieldProps<T> & { ref?: React.Ref<HTMLInputElement> }) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\tmin,\n\t\tmax,\n\t\ttype = \"date\",\n\t\treadOnly,\n\t\tdisabled,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<FormField<T>\n\t\t\tname={name}\n\t\t\tlabel={label}\n\t\t\treadOnly={readOnly}\n\t\t\tdisabled={disabled}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{(field) => (\n\t\t\t\t<Input\n\t\t\t\t\t{...field}\n\t\t\t\t\tvalue={field.value ?? \"\"}\n\t\t\t\t\ttype={type}\n\t\t\t\t\tid={name}\n\t\t\t\t\tmin={min}\n\t\t\t\t\tmax={max}\n\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\tref={ref}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n(DatePickerField as { displayName?: string }).displayName = \"DatePickerField\";\n","import type React from \"react\";\nimport { useFormContext } from \"react-hook-form\";\nimport { useBlocker } from \"react-router-dom\";\nimport { LeavePageConfirmation } from \"../primitives/leave-page-confirmation\";\n\nexport interface DirtyFormGuardProps {\n\t/** Dialog title. @default \"You have unsaved changes\" */\n\ttitle?: string;\n\t/** Dialog message body. @default \"Are you sure you want to leave this page? You have unsaved changes.\" */\n\tmessage?: string;\n\t/** Label for the confirm/leave button. @default \"Leave\" */\n\tconfirmLabel?: string;\n\t/** Label for the cancel/stay button. @default \"Stay\" */\n\tcancelLabel?: string;\n}\n\nexport const DirtyFormGuard: React.FC<DirtyFormGuardProps> = ({\n\ttitle,\n\tmessage,\n\tconfirmLabel,\n\tcancelLabel,\n}) => {\n\tconst { formState } = useFormContext();\n\tconst blocker = useBlocker(formState.isDirty);\n\n\treturn (\n\t\t<LeavePageConfirmation\n\t\t\tblocked={blocker.state === \"blocked\"}\n\t\t\tonConfirmLeave={() => blocker.proceed?.()}\n\t\t\tonCancelLeave={() => blocker.reset?.()}\n\t\t\ttitle={title}\n\t\t\tmessage={message}\n\t\t\tconfirmLabel={confirmLabel}\n\t\t\tcancelLabel={cancelLabel}\n\t\t/>\n\t);\n};\nDirtyFormGuard.displayName = \"DirtyFormGuard\";\n","import { Box, Button, Flex, Text } from \"@chakra-ui/react\";\nimport { Upload } from \"lucide-react\";\nimport type React from \"react\";\nimport { useCallback, useEffect } from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\n// react-dropzone is an optional peer dependency\ntype DropzoneOptions = {\n\tnoClick?: boolean;\n\tmultiple?: boolean;\n\tdisabled?: boolean;\n\taccept?: Record<string, string[]>;\n\tonDrop?: (files: File[]) => void;\n};\n\ntype UseDropzoneReturn = {\n\tgetRootProps: () => Record<string, any>;\n\tgetInputProps: () => Record<string, any>;\n\tisDragActive: boolean;\n\topen: () => void;\n};\n\nexport interface FileFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\t/** Accept configuration for file types, e.g. { \"image/*\": [\".png\", \".jpg\"] } */\n\taccept?: Record<string, string[]>;\n\t/** Allow multiple file selection. @default false */\n\tmultiple?: boolean;\n\t/** Text shown when dragging files over. @default \"Release to upload\" */\n\tdragActiveText?: string;\n\t/** Text shown below the file preview. @default \"Drag & drop a file to upload\" */\n\tdropHintText?: string;\n\t/** Label for the upload button. @default \"Choose File\" */\n\tbuttonLabel?: string;\n\t/** The useDropzone hook from react-dropzone. Pass it to avoid hard dependency. */\n\tuseDropzone?: (options: DropzoneOptions) => UseDropzoneReturn;\n}\n\nexport function FileField<T extends FieldValues>(props: FileFieldProps<T>) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\taccept,\n\t\tmultiple = false,\n\t\tdisabled,\n\t\tdragActiveText = \"Release to upload\",\n\t\tdropHintText = \"Drag & drop a file to upload\",\n\t\tbuttonLabel = \"Choose File\",\n\t\tuseDropzone,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<FormField<T> name={name} label={label} disabled={disabled} {...rest}>\n\t\t\t{(field) => {\n\t\t\t\tif (useDropzone) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<DropzoneContent\n\t\t\t\t\t\t\tfield={field}\n\t\t\t\t\t\t\taccept={accept}\n\t\t\t\t\t\t\tmultiple={multiple}\n\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\tdragActiveText={dragActiveText}\n\t\t\t\t\t\t\tdropHintText={dropHintText}\n\t\t\t\t\t\t\tbuttonLabel={buttonLabel}\n\t\t\t\t\t\t\tuseDropzone={useDropzone}\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\t// Fallback: native file input\n\t\t\t\treturn (\n\t\t\t\t\t<Box>\n\t\t\t\t\t\t<input\n\t\t\t\t\t\t\ttype=\"file\"\n\t\t\t\t\t\t\taccept={\n\t\t\t\t\t\t\t\taccept ? Object.values(accept).flat().join(\",\") : undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmultiple={multiple}\n\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\taria-describedby={field[\"aria-describedby\"]}\n\t\t\t\t\t\t\tonChange={(e) => {\n\t\t\t\t\t\t\t\tconst files = e.target.files;\n\t\t\t\t\t\t\t\tif (!files) return;\n\t\t\t\t\t\t\t\tif (multiple) {\n\t\t\t\t\t\t\t\t\tfield.onChange(Array.from(files));\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tfield.onChange(files[0] || null);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{field.value && (\n\t\t\t\t\t\t\t<Text mt={2} fontSize=\"sm\" color=\"fg.muted\">\n\t\t\t\t\t\t\t\t{(field.value as File)?.name ?? \"File selected\"}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</Box>\n\t\t\t\t);\n\t\t\t}}\n\t\t</FormField>\n\t);\n}\n\nFileField.displayName = \"FileField\";\n\ninterface DropzoneContentProps {\n\tfield: {\n\t\tvalue: any;\n\t\tonChange: (...event: any[]) => void;\n\t\tonBlur: () => void;\n\t\tref: React.Ref<any>;\n\t\tname: string;\n\t};\n\taccept?: Record<string, string[]>;\n\tmultiple: boolean;\n\tdisabled?: boolean;\n\tdragActiveText: string;\n\tdropHintText: string;\n\tbuttonLabel: string;\n\tuseDropzone: (options: DropzoneOptions) => UseDropzoneReturn;\n}\n\nconst DropzoneContent: React.FC<DropzoneContentProps> = ({\n\tfield,\n\taccept,\n\tmultiple,\n\tdisabled,\n\tdragActiveText,\n\tdropHintText,\n\tbuttonLabel,\n\tuseDropzone,\n}) => {\n\tconst handleDrop = useCallback(\n\t\t(files: File[]) => {\n\t\t\tif (multiple) {\n\t\t\t\tfield.onChange(files);\n\t\t\t} else {\n\t\t\t\tconst file = files[0];\n\t\t\t\tif (file) {\n\t\t\t\t\tfield.onChange(\n\t\t\t\t\t\tObject.assign(file, {\n\t\t\t\t\t\t\tpreview: URL.createObjectURL(file),\n\t\t\t\t\t\t}),\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[field, multiple],\n\t);\n\n\tuseEffect(() => {\n\t\treturn () => {\n\t\t\tif (field.value?.preview) {\n\t\t\t\tURL.revokeObjectURL(field.value.preview);\n\t\t\t}\n\t\t};\n\t}, [field.value]);\n\n\tconst { getRootProps, getInputProps, isDragActive, open } = useDropzone({\n\t\tnoClick: true,\n\t\tmultiple,\n\t\tdisabled,\n\t\taccept,\n\t\tonDrop: handleDrop,\n\t});\n\n\treturn (\n\t\t<Box {...getRootProps()}>\n\t\t\t<Box display=\"none\" {...getInputProps()} asChild>\n\t\t\t\t<input />\n\t\t\t</Box>\n\t\t\t<Box\n\t\t\t\tbgColor=\"bg.muted\"\n\t\t\t\tp={4}\n\t\t\t\trounded=\"md\"\n\t\t\t\toverflow=\"hidden\"\n\t\t\t\tposition=\"relative\"\n\t\t\t\ttextAlign=\"center\"\n\t\t\t>\n\t\t\t\t{isDragActive && (\n\t\t\t\t\t<Flex\n\t\t\t\t\t\tpointerEvents=\"none\"\n\t\t\t\t\t\ttop=\"0\"\n\t\t\t\t\t\tinsetInlineStart=\"0\"\n\t\t\t\t\t\tposition=\"absolute\"\n\t\t\t\t\t\tbackgroundColor=\"blackAlpha.400\"\n\t\t\t\t\t\twidth=\"100%\"\n\t\t\t\t\t\theight=\"100%\"\n\t\t\t\t\t\tzIndex={1}\n\t\t\t\t\t\talignItems=\"center\"\n\t\t\t\t\t\tjustifyContent=\"center\"\n\t\t\t\t\t\tdirection=\"column\"\n\t\t\t\t\t\tcolor=\"white\"\n\t\t\t\t\t\tgap=\"3\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Upload size={48} />\n\t\t\t\t\t\t<Text fontSize=\"lg\" fontWeight=\"bold\">\n\t\t\t\t\t\t\t{dragActiveText}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</Flex>\n\t\t\t\t)}\n\t\t\t\t{field.value?.name && (\n\t\t\t\t\t<Text fontSize=\"sm\" color=\"fg.muted\">\n\t\t\t\t\t\t{field.value.name}\n\t\t\t\t\t</Text>\n\t\t\t\t)}\n\t\t\t\t<Text color=\"fg.muted\" fontSize=\"xs\" mt={2}>\n\t\t\t\t\t{dropHintText}\n\t\t\t\t</Text>\n\t\t\t\t<Button mt={2} size=\"sm\" variant=\"outline\" onClick={open}>\n\t\t\t\t\t<Upload size={14} />\n\t\t\t\t\t{buttonLabel}\n\t\t\t\t</Button>\n\t\t\t</Box>\n\t\t</Box>\n\t);\n};\n","import {\n\tButtonGroup,\n\tEditable,\n\tIconButton,\n\tuseEditableContext,\n} from \"@chakra-ui/react\";\nimport { Pencil } from \"lucide-react\";\nimport type React from \"react\";\nimport { useRef } from \"react\";\n\nexport interface InlineEditProps {\n\tvalue?: string;\n\tonSubmit?: (nextValue: string) => void;\n\tonChange?: (nextValue: string) => void;\n\tonCancel?: (previousValue: string) => void;\n\t/** @default \"input\" */\n\tvariant?: \"input\" | \"textarea\";\n\tplaceholder?: string;\n\t/** @default \"md\" */\n\tfontSize?: string;\n\tfontWeight?: string;\n\tmaxW?: string;\n\tdisabled?: boolean;\n\t/** When false, submitting an empty value reverts to the previous value. @default false */\n\tallowEmpty?: boolean;\n\t/** Number of rows used to calculate minH for textarea variant. @default 3 */\n\trows?: number;\n\t/** Aria label for the edit button. @default \"Edit\" */\n\teditLabel?: string;\n}\n\ninterface CancelRefCaptureProps {\n\tcancelRef: React.MutableRefObject<(() => void) | null>;\n}\n\nconst CancelRefCapture: React.FC<CancelRefCaptureProps> = ({ cancelRef }) => {\n\tconst { cancel } = useEditableContext();\n\tcancelRef.current = cancel;\n\treturn null;\n};\n\nconst EditControls: React.FC<{ editLabel: string }> = ({ editLabel }) => {\n\tconst { editing } = useEditableContext();\n\n\tif (editing) return null;\n\n\treturn (\n\t\t<ButtonGroup>\n\t\t\t<Editable.EditTrigger asChild>\n\t\t\t\t<IconButton\n\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\tmarginInlineStart={2}\n\t\t\t\t\taria-label={editLabel}\n\t\t\t\t>\n\t\t\t\t\t<Pencil size={16} />\n\t\t\t\t</IconButton>\n\t\t\t</Editable.EditTrigger>\n\t\t</ButtonGroup>\n\t);\n};\n\nexport const InlineEdit: React.FC<InlineEditProps> = ({\n\tvalue,\n\tonSubmit,\n\tonChange,\n\tonCancel,\n\tvariant = \"input\",\n\tplaceholder,\n\tfontSize = \"md\",\n\tfontWeight,\n\tmaxW,\n\tdisabled,\n\tallowEmpty = false,\n\trows = 3,\n\teditLabel = \"Edit\",\n}) => {\n\tconst cancelRef = useRef<(() => void) | null>(null);\n\n\tconst handleSubmit = (details: { value: string }) => {\n\t\tconst trimmed = details.value.trim();\n\t\tif (!allowEmpty && trimmed === \"\") {\n\t\t\tcancelRef.current?.();\n\t\t\treturn;\n\t\t}\n\t\tonSubmit?.(trimmed);\n\t};\n\n\treturn (\n\t\t<Editable.Root\n\t\t\tfontSize={fontSize}\n\t\t\tfontWeight={fontWeight}\n\t\t\tmaxW={maxW}\n\t\t\tvalue={String(value ?? \"\")}\n\t\t\tonValueChange={(d) => onChange?.(d.value)}\n\t\t\tonValueRevert={(d) => onCancel?.(d.value)}\n\t\t\tonValueCommit={handleSubmit}\n\t\t\tdisabled={disabled}\n\t\t\tplaceholder={placeholder}\n\t\t>\n\t\t\t<CancelRefCapture cancelRef={cancelRef} />\n\t\t\t<Editable.Preview />\n\t\t\t{variant === \"textarea\" ? (\n\t\t\t\t<Editable.Textarea minH={`${rows * 1.5}em`} />\n\t\t\t) : (\n\t\t\t\t<Editable.Input />\n\t\t\t)}\n\t\t\t<EditControls editLabel={editLabel} />\n\t\t</Editable.Root>\n\t);\n};\nInlineEdit.displayName = \"InlineEdit\";\n","import type { InputProps } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport TextInput from \"../atoms/text-input/text-input\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\nexport interface InputFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\tplaceholder?: string;\n\ttype?: InputProps[\"type\"];\n\tappend?: string | React.ReactElement;\n\tprepend?: string | React.ReactElement;\n\tinputProps?: InputProps;\n}\n\nexport function InputField<T extends FieldValues>({\n\tref,\n\t...props\n}: InputFieldProps<T> & { ref?: React.Ref<HTMLInputElement> }) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\tplaceholder,\n\t\ttype,\n\t\tappend,\n\t\tprepend,\n\t\tinputProps,\n\t\treadOnly,\n\t\tdisabled,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<FormField<T>\n\t\t\tname={name}\n\t\t\tlabel={label}\n\t\t\treadOnly={readOnly}\n\t\t\tdisabled={disabled}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{(field) => (\n\t\t\t\t<TextInput\n\t\t\t\t\t{...field}\n\t\t\t\t\tvalue={field.value ?? \"\"}\n\t\t\t\t\tid={name}\n\t\t\t\t\tplaceholder={placeholder}\n\t\t\t\t\ttype={type}\n\t\t\t\t\tappend={append}\n\t\t\t\t\tprepend={prepend}\n\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\topacity={readOnly ? 0.8 : 1}\n\t\t\t\t\tref={ref}\n\t\t\t\t\t{...inputProps}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n(InputField as { displayName?: string }).displayName = \"InputField\";\n","import type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\n// @uiw/react-md-editor is an optional peer dependency\ntype MDEditorProps = {\n\tvalue?: string;\n\tonChange?: (value?: string) => void;\n\tminHeight?: number;\n\tmaxHeight?: number;\n\tvisibleDragbar?: boolean;\n};\n\ntype MDEditorComponent = React.ComponentType<MDEditorProps> & {\n\tMarkdown?: React.ComponentType<{ source?: string }>;\n};\n\nexport interface MarkdownFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\t/** The MDEditor component from @uiw/react-md-editor. Pass it to avoid hard dependency. */\n\tMDEditor?: MDEditorComponent;\n\tminHeight?: number;\n\tmaxHeight?: number;\n}\n\nexport function MarkdownField<T extends FieldValues>(\n\tprops: MarkdownFieldProps<T>,\n) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\treadOnly,\n\t\tMDEditor,\n\t\tminHeight = 200,\n\t\tmaxHeight = 600,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<FormField<T> name={name} label={label} readOnly={readOnly} {...rest}>\n\t\t\t{(field) => {\n\t\t\t\tif (MDEditor) {\n\t\t\t\t\tif (readOnly && MDEditor.Markdown) {\n\t\t\t\t\t\treturn <MDEditor.Markdown source={field.value} />;\n\t\t\t\t\t}\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<MDEditor\n\t\t\t\t\t\t\tvalue={field.value}\n\t\t\t\t\t\t\tonChange={(value) => field.onChange(value ?? \"\")}\n\t\t\t\t\t\t\tminHeight={minHeight}\n\t\t\t\t\t\t\tmaxHeight={maxHeight}\n\t\t\t\t\t\t\tvisibleDragbar\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\t// Fallback: plain textarea\n\t\t\t\treturn (\n\t\t\t\t\t<textarea\n\t\t\t\t\t\tvalue={field.value ?? \"\"}\n\t\t\t\t\t\tonChange={(e) => field.onChange(e.target.value)}\n\t\t\t\t\t\tonBlur={field.onBlur}\n\t\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\t\taria-describedby={field[\"aria-describedby\"]}\n\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\tpadding: \"0.75rem\",\n\t\t\t\t\t\t\tborder: \"1px solid var(--chakra-colors-border)\",\n\t\t\t\t\t\t\tborderRadius: \"0.375rem\",\n\t\t\t\t\t\t\twidth: \"100%\",\n\t\t\t\t\t\t\tminHeight: `${minHeight}px`,\n\t\t\t\t\t\t\tresize: \"vertical\",\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t}}\n\t\t</FormField>\n\t);\n}\n(MarkdownField as { displayName?: string }).displayName = \"MarkdownField\";\n","import type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport {\n\tNumberInputField as NumberInputInput,\n\ttype NumberInputProps,\n\tNumberInputRoot,\n} from \"../primitives/number-input\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\nexport interface NumberInputFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\tmin?: number;\n\tmax?: number;\n\tstep?: number;\n\tshowStepper?: boolean;\n\tnumberInputProps?: NumberInputProps;\n}\n\nexport function NumberInputField<T extends FieldValues>({\n\tref,\n\t...props\n}: NumberInputFieldProps<T> & { ref?: React.Ref<HTMLInputElement> }) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\tmin,\n\t\tmax,\n\t\tstep,\n\t\tshowStepper = true,\n\t\tnumberInputProps,\n\t\treadOnly,\n\t\tdisabled,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<FormField<T>\n\t\t\tname={name}\n\t\t\tlabel={label}\n\t\t\treadOnly={readOnly}\n\t\t\tdisabled={disabled}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{(field) => (\n\t\t\t\t<NumberInputRoot\n\t\t\t\t\tmin={min}\n\t\t\t\t\tmax={max}\n\t\t\t\t\tstep={step}\n\t\t\t\t\tvalue={String(field.value ?? 0)}\n\t\t\t\t\tonValueChange={(details) => {\n\t\t\t\t\t\tfield.onChange(\n\t\t\t\t\t\t\tdetails.value === \"\" ? 0 : Number.parseFloat(details.value),\n\t\t\t\t\t\t);\n\t\t\t\t\t}}\n\t\t\t\t\tid={name}\n\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\tshowStepper={showStepper && !readOnly}\n\t\t\t\t\topacity={readOnly ? 0.8 : 1}\n\t\t\t\t\t{...numberInputProps}\n\t\t\t\t>\n\t\t\t\t\t<NumberInputInput\n\t\t\t\t\t\tname={field.name}\n\t\t\t\t\t\tref={ref}\n\t\t\t\t\t\tonBlur={field.onBlur}\n\t\t\t\t\t\taria-describedby={field[\"aria-describedby\"]}\n\t\t\t\t\t/>\n\t\t\t\t</NumberInputRoot>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n(NumberInputField as { displayName?: string }).displayName = \"NumberInputField\";\n","import {\n\tRadioGroup as ChakraRadioGroup,\n\ttype RadioGroupRootProps,\n\tStack,\n\ttype StackProps,\n} from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport { Radio } from \"../primitives/radio\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\nexport interface RadioOption {\n\tlabel: React.ReactNode;\n\tvalue: string;\n}\n\nexport interface RadioGroupFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\toptions: RadioOption[];\n\tradioGroupProps?: RadioGroupRootProps;\n\tstackProps?: StackProps;\n}\n\nexport function RadioGroupField<T extends FieldValues>(\n\tprops: RadioGroupFieldProps<T>,\n) {\n\tconst { name, label, options, radioGroupProps, stackProps, ...rest } = props;\n\n\treturn (\n\t\t<FormField<T> name={name} label={label} {...rest}>\n\t\t\t{(field) => (\n\t\t\t\t<ChakraRadioGroup.Root\n\t\t\t\t\tvalue={String(field.value ?? \"\")}\n\t\t\t\t\tonValueChange={(e) => field.onChange(e.value)}\n\t\t\t\t\taria-describedby={field[\"aria-describedby\"]}\n\t\t\t\t\t{...radioGroupProps}\n\t\t\t\t>\n\t\t\t\t\t<Stack direction=\"row\" {...stackProps}>\n\t\t\t\t\t\t{options.map((option) => (\n\t\t\t\t\t\t\t<Radio key={option.value} value={option.value}>\n\t\t\t\t\t\t\t\t{option.label}\n\t\t\t\t\t\t\t</Radio>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</Stack>\n\t\t\t\t</ChakraRadioGroup.Root>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n(RadioGroupField as { displayName?: string }).displayName = \"RadioGroupField\";\n","import type { NativeSelectFieldProps } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport { NativeSelect } from \"../primitives/native-select\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\nexport interface SelectFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\tplaceholder?: string;\n\tselectProps?: NativeSelectFieldProps;\n\tchildren: React.ReactNode;\n}\n\nexport function SelectField<T extends FieldValues>({\n\tref,\n\t...props\n}: SelectFieldProps<T> & { ref?: React.Ref<HTMLSelectElement> }) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\tplaceholder,\n\t\tselectProps,\n\t\tchildren,\n\t\treadOnly,\n\t\tdisabled,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<FormField<T>\n\t\t\tname={name}\n\t\t\tlabel={label}\n\t\t\treadOnly={readOnly}\n\t\t\tdisabled={disabled}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{(field) => (\n\t\t\t\t<NativeSelect\n\t\t\t\t\tdisabled={readOnly || disabled}\n\t\t\t\t\tplaceholder={placeholder}\n\t\t\t\t\t{...field}\n\t\t\t\t\tvalue={String(field.value ?? \"\")}\n\t\t\t\t\tid={name}\n\t\t\t\t\tref={ref}\n\t\t\t\t\t{...selectProps}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</NativeSelect>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n(SelectField as { displayName?: string }).displayName = \"SelectField\";\n","import type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport { Switch, type SwitchProps } from \"../primitives/switch\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\nexport interface SwitchFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\tswitchProps?: SwitchProps;\n}\n\nexport function SwitchField<T extends FieldValues>({\n\tref,\n\t...props\n}: SwitchFieldProps<T> & { ref?: React.Ref<HTMLInputElement> }) {\n\tconst { name, label, readOnly, disabled, switchProps, ...rest } = props;\n\n\treturn (\n\t\t<FormField<T>\n\t\t\tname={name}\n\t\t\tlabel={label}\n\t\t\treadOnly={readOnly}\n\t\t\tdisabled={disabled}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{(field) => (\n\t\t\t\t<Switch\n\t\t\t\t\tid={name}\n\t\t\t\t\tname={field.name}\n\t\t\t\t\tchecked={field.value || false}\n\t\t\t\t\tonCheckedChange={(details) => field.onChange(!!details.checked)}\n\t\t\t\t\tonBlur={field.onBlur}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\topacity={readOnly ? 0.8 : 1}\n\t\t\t\t\taria-describedby={field[\"aria-describedby\"]}\n\t\t\t\t\tref={ref}\n\t\t\t\t\t{...switchProps}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n(SwitchField as { displayName?: string }).displayName = \"SwitchField\";\n","import { Textarea, type TextareaProps } from \"@chakra-ui/react\";\nimport type React from \"react\";\nimport type { FieldValues } from \"react-hook-form\";\nimport { FormField, type FormFieldProps } from \"./form-field\";\n\nexport interface TextareaFieldProps<T extends FieldValues>\n\textends Omit<FormFieldProps<T>, \"children\"> {\n\tplaceholder?: string;\n\ttextareaProps?: TextareaProps;\n}\n\nexport function TextareaField<T extends FieldValues>({\n\tref,\n\t...props\n}: TextareaFieldProps<T> & { ref?: React.Ref<HTMLTextAreaElement> }) {\n\tconst {\n\t\tname,\n\t\tlabel,\n\t\tplaceholder,\n\t\ttextareaProps,\n\t\treadOnly,\n\t\tdisabled,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<FormField<T>\n\t\t\tname={name}\n\t\t\tlabel={label}\n\t\t\treadOnly={readOnly}\n\t\t\tdisabled={disabled}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{(field) => (\n\t\t\t\t<Textarea\n\t\t\t\t\t{...field}\n\t\t\t\t\tvalue={String(field.value ?? \"\")}\n\t\t\t\t\tid={name}\n\t\t\t\t\tplaceholder={placeholder}\n\t\t\t\t\treadOnly={readOnly}\n\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\topacity={readOnly ? 0.8 : 1}\n\t\t\t\t\tref={ref}\n\t\t\t\t\t{...textareaProps}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</FormField>\n\t);\n}\n(TextareaField as { displayName?: string }).displayName = \"TextareaField\";\n"]}
@@ -1,10 +1,12 @@
1
1
  import { theme_default } from '../chunk-YSFUGIQM.js';
2
- export { Box, Center, Code, Container, Flex, Grid, GridItem, HStack, Heading, Link, Skeleton, SkeletonCircle, SkeletonText, Spacer, Stack, Text, VStack } from '../chunk-7UJ4QEUW.js';
3
- export { Avatar, AvatarGroup, Prose, Spinner } from '../chunk-QU3FF5WI.js';
2
+ export { Box, Center, Checkbox, CheckboxGroup, Code, Container, Flex, Grid, GridItem, HStack, Heading, Link, Skeleton, SkeletonCircle, SkeletonText, Spacer, Stack, Text, VStack } from '../chunk-SJIYWHIV.js';
3
+ export { Avatar, AvatarGroup, Prose } from '../chunk-ZFBDVERP.js';
4
4
  export { MenuArrow, MenuCheckboxItem, MenuContent, MenuContextTrigger, MenuItem, MenuItemCommand, MenuItemGroup, MenuItemText, MenuRadioItem, MenuRadioItemGroup, MenuRoot, MenuSeparator, MenuTrigger, MenuTriggerItem, Tooltip } from '../chunk-NJFF6S77.js';
5
- export { LeavePageConfirmation, NativeSelect, NumberInputField, NumberInputLabel, NumberInputRoot, NumberInputScrubber, Popover, PopoverBody, PopoverCloseTrigger, PopoverContent, PopoverDescription, PopoverFooter, PopoverHeader, PopoverTitle, PopoverTrigger, Radio, RadioGroup } from '../chunk-C4JI3JNA.js';
6
- export { Switch } from '../chunk-RJPEVNMJ.js';
7
- import { Accordion, Breadcrumb, Checkbox as Checkbox$1, Stat, createToaster, Portal, Toaster as Toaster$1, Toast, Spinner, Stack, Alert as Alert$1, ClientOnly, IconButton, Skeleton, Span, HoverCard as HoverCard$1, PinInput as PinInput$1, Progress as Progress$1, ProgressCircle as ProgressCircle$1, ChakraProvider, SegmentGroup, Slider as Slider$1, Popover, FormatNumber, Badge } from '@chakra-ui/react';
5
+ export { LeavePageConfirmation, NativeSelect, NumberInputField, NumberInputLabel, NumberInputRoot, NumberInputScrubber, Radio, RadioGroup } from '../chunk-6H4LQUMM.js';
6
+ export { Popover, PopoverBody, PopoverCloseTrigger, PopoverContent, PopoverDescription, PopoverFooter, PopoverHeader, PopoverTitle, PopoverTrigger, Switch } from '../chunk-WQIEF5N3.js';
7
+ export { Progress, ProgressCircle } from '../chunk-WEP2AIQ5.js';
8
+ export { Spinner } from '../chunk-5YDCDC4B.js';
9
+ import { Accordion, Breadcrumb, Stat, createToaster, Portal, Toaster as Toaster$1, Toast, Spinner, Stack, Alert as Alert$1, ClientOnly, IconButton, Skeleton, Span, HoverCard as HoverCard$1, PinInput as PinInput$1, ChakraProvider, SegmentGroup, Slider as Slider$1, Popover, FormatNumber, Badge } from '@chakra-ui/react';
8
10
  export { Badge, Collapsible, List, Separator, Table, Tabs, Textarea } from '@chakra-ui/react';
9
11
  import { jsx, jsxs } from 'react/jsx-runtime';
10
12
  import { Moon, Sun, Info } from 'lucide-react';
@@ -55,20 +57,6 @@ var BreadcrumbSeparator = Breadcrumb.Separator;
55
57
  BreadcrumbSeparator.displayName = "BreadcrumbSeparator";
56
58
  var BreadcrumbEllipsis = Breadcrumb.Ellipsis;
57
59
  BreadcrumbEllipsis.displayName = "BreadcrumbEllipsis";
58
- var Checkbox = function Checkbox2({
59
- ref,
60
- ...props
61
- }) {
62
- const { children, inputProps, rootRef, ...rest } = props;
63
- return /* @__PURE__ */ jsxs(Checkbox$1.Root, { ref: rootRef, ...rest, children: [
64
- /* @__PURE__ */ jsx(Checkbox$1.HiddenInput, { ref, ...inputProps }),
65
- /* @__PURE__ */ jsx(Checkbox$1.Control, { children: /* @__PURE__ */ jsx(Checkbox$1.Indicator, {}) }),
66
- children != null && /* @__PURE__ */ jsx(Checkbox$1.Label, { children })
67
- ] });
68
- };
69
- Checkbox.displayName = "Checkbox";
70
- var CheckboxGroup = Checkbox$1.Group;
71
- CheckboxGroup.displayName = "CheckboxGroup";
72
60
  function ColorModeProvider(props) {
73
61
  return /* @__PURE__ */ jsx(ThemeProvider, { attribute: "class", disableTransitionOnChange: true, ...props });
74
62
  }
@@ -189,35 +177,6 @@ var PinInput = function PinInput2({
189
177
  ] });
190
178
  };
191
179
  PinInput.displayName = "PinInput";
192
- var Progress = function Progress2({
193
- ref,
194
- ...props
195
- }) {
196
- const { showValue, label, ...rest } = props;
197
- return /* @__PURE__ */ jsxs(Progress$1.Root, { ref, ...rest, children: [
198
- (label || showValue) && /* @__PURE__ */ jsxs(Progress$1.Label, { children: [
199
- label,
200
- showValue && /* @__PURE__ */ jsx(Progress$1.ValueText, {})
201
- ] }),
202
- /* @__PURE__ */ jsx(Progress$1.Track, { children: /* @__PURE__ */ jsx(Progress$1.Range, {}) })
203
- ] });
204
- };
205
- Progress.displayName = "Progress";
206
- var ProgressCircle = function ProgressCircle2({
207
- ref,
208
- ...props
209
- }) {
210
- const { showValue, children, ...rest } = props;
211
- return /* @__PURE__ */ jsxs(ProgressCircle$1.Root, { ref, ...rest, children: [
212
- /* @__PURE__ */ jsxs(ProgressCircle$1.Circle, { children: [
213
- /* @__PURE__ */ jsx(ProgressCircle$1.Track, {}),
214
- /* @__PURE__ */ jsx(ProgressCircle$1.Range, {})
215
- ] }),
216
- showValue && /* @__PURE__ */ jsx(ProgressCircle$1.ValueText, {}),
217
- children
218
- ] });
219
- };
220
- ProgressCircle.displayName = "ProgressCircle";
221
180
  function Provider({ system, ...props }) {
222
181
  return /* @__PURE__ */ jsx(ChakraProvider, { value: system ?? theme_default, children: /* @__PURE__ */ jsx(ColorModeProvider, { ...props }) });
223
182
  }
@@ -395,6 +354,6 @@ function createAnkerToaster(options = {}) {
395
354
  var { toaster, Toaster } = createAnkerToaster();
396
355
  Toaster.displayName = "Toaster";
397
356
 
398
- export { AccordionItem, AccordionRoot, Alert, BreadcrumbCurrentLink, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbRoot, BreadcrumbSeparator, Checkbox, CheckboxGroup, ColorModeButton, ColorModeIcon, ColorModeProvider, DarkMode, HoverCard, InfoTip, LightMode, PinInput, Progress, ProgressCircle, Provider, SegmentedControl, Slider, StatDownTrend, StatHelpText, StatLabel, StatRoot, StatUpTrend, StatValueText, StatValueUnit, Toaster, ToggleTip, createAnkerToaster, toaster, useColorMode, useColorModeValue };
357
+ export { AccordionItem, AccordionRoot, Alert, BreadcrumbCurrentLink, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbRoot, BreadcrumbSeparator, ColorModeButton, ColorModeIcon, ColorModeProvider, DarkMode, HoverCard, InfoTip, LightMode, PinInput, Provider, SegmentedControl, Slider, StatDownTrend, StatHelpText, StatLabel, StatRoot, StatUpTrend, StatValueText, StatValueUnit, Toaster, ToggleTip, createAnkerToaster, toaster, useColorMode, useColorModeValue };
399
358
  //# sourceMappingURL=index.js.map
400
359
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/primitives/accordion.tsx","../../src/primitives/alert.tsx","../../src/primitives/breadcrumb.tsx","../../src/primitives/checkbox.tsx","../../src/primitives/color-mode.tsx","../../src/primitives/hover-card.tsx","../../src/primitives/pin-input.tsx","../../src/primitives/progress.tsx","../../src/primitives/provider.tsx","../../src/primitives/segmented-control.tsx","../../src/primitives/slider.tsx","../../src/primitives/toggle-tip.tsx","../../src/primitives/stat.tsx","../../src/primitives/toaster.tsx"],"names":["AccordionItem","ChakraAccordion","Alert","jsxs","ChakraAlert","jsx","ChakraBreadcrumb","Checkbox","ChakraCheckbox","ColorModeButton","Skeleton","LightMode","DarkMode","HoverCard","ChakraHoverCard","PinInput","ChakraPinInput","Progress","ChakraProgress","ProgressCircle","ChakraProgressCircle","SegmentedControl","ChakraSegmentGroup","Slider","ChakraSlider","ToggleTip","ChakraPopover","Portal","InfoTip","IconButton","StatLabel","ChakraStat","StatValueText","StatUpTrend","Badge","StatDownTrend","toaster","ChakraToaster","Spinner","Stack"],"mappings":"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","file":"index.js","sourcesContent":["import { Accordion as ChakraAccordion } from \"@chakra-ui/react\";\nimport type * as React from \"react\";\n\nexport interface AccordionItemProps extends ChakraAccordion.ItemProps {\n\t/** The trigger label shown in the accordion header. */\n\tlabel: React.ReactNode;\n\t/** Content revealed when the item is expanded. */\n\tchildren: React.ReactNode;\n}\n\nexport const AccordionItem = function AccordionItem({\n\tref,\n\t...props\n}: AccordionItemProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { label, children, ...rest } = props;\n\treturn (\n\t\t<ChakraAccordion.Item ref={ref} {...rest}>\n\t\t\t<ChakraAccordion.ItemTrigger>\n\t\t\t\t{label}\n\t\t\t\t<ChakraAccordion.ItemIndicator />\n\t\t\t</ChakraAccordion.ItemTrigger>\n\t\t\t<ChakraAccordion.ItemContent>\n\t\t\t\t<ChakraAccordion.ItemBody>{children}</ChakraAccordion.ItemBody>\n\t\t\t</ChakraAccordion.ItemContent>\n\t\t</ChakraAccordion.Item>\n\t);\n};\nAccordionItem.displayName = \"AccordionItem\";\n\n// Pass-through exports for composition\nexport const AccordionRoot = ChakraAccordion.Root;\nAccordionRoot.displayName = \"AccordionRoot\";\n\nexport type AccordionRootProps = ChakraAccordion.RootProps;\n","import { Alert as ChakraAlert } from \"@chakra-ui/react\";\nimport type * as React from \"react\";\n\nexport interface AlertProps extends Omit<ChakraAlert.RootProps, \"title\"> {\n\tstartElement?: React.ReactNode;\n\tendElement?: React.ReactNode;\n\ttitle?: React.ReactNode;\n\ticon?: React.ReactElement;\n}\n\nexport const Alert = function Alert({\n\tref,\n\t...props\n}: AlertProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { title, children, icon, startElement, endElement, ...rest } = props;\n\treturn (\n\t\t<ChakraAlert.Root ref={ref} {...rest}>\n\t\t\t{startElement || <ChakraAlert.Indicator>{icon}</ChakraAlert.Indicator>}\n\t\t\t{children ? (\n\t\t\t\t<ChakraAlert.Content>\n\t\t\t\t\t<ChakraAlert.Title>{title}</ChakraAlert.Title>\n\t\t\t\t\t<ChakraAlert.Description>{children}</ChakraAlert.Description>\n\t\t\t\t</ChakraAlert.Content>\n\t\t\t) : (\n\t\t\t\t<ChakraAlert.Title flex=\"1\">{title}</ChakraAlert.Title>\n\t\t\t)}\n\t\t\t{endElement}\n\t\t</ChakraAlert.Root>\n\t);\n};\nAlert.displayName = \"Alert\";\n","import { Breadcrumb as ChakraBreadcrumb } from \"@chakra-ui/react\";\n\n// Pass-through exports with stable API\nexport const BreadcrumbRoot = ChakraBreadcrumb.Root;\nBreadcrumbRoot.displayName = \"BreadcrumbRoot\";\n\nexport const BreadcrumbList = ChakraBreadcrumb.List;\nBreadcrumbList.displayName = \"BreadcrumbList\";\n\nexport const BreadcrumbItem = ChakraBreadcrumb.Item;\nBreadcrumbItem.displayName = \"BreadcrumbItem\";\n\nexport const BreadcrumbLink = ChakraBreadcrumb.Link;\nBreadcrumbLink.displayName = \"BreadcrumbLink\";\n\nexport const BreadcrumbCurrentLink = ChakraBreadcrumb.CurrentLink;\nBreadcrumbCurrentLink.displayName = \"BreadcrumbCurrentLink\";\n\nexport const BreadcrumbSeparator = ChakraBreadcrumb.Separator;\nBreadcrumbSeparator.displayName = \"BreadcrumbSeparator\";\n\nexport const BreadcrumbEllipsis = ChakraBreadcrumb.Ellipsis;\nBreadcrumbEllipsis.displayName = \"BreadcrumbEllipsis\";\n\nexport type BreadcrumbRootProps = ChakraBreadcrumb.RootProps;\nexport type BreadcrumbLinkProps = ChakraBreadcrumb.LinkProps;\n","import { Checkbox as ChakraCheckbox } from \"@chakra-ui/react\";\nimport type * as React from \"react\";\n\nexport interface CheckboxProps extends ChakraCheckbox.RootProps {\n\t/** Checkbox label text or content. */\n\tchildren?: React.ReactNode;\n\t/** Additional props forwarded to the hidden input element. */\n\tinputProps?: React.InputHTMLAttributes<HTMLInputElement>;\n\t/** Ref attached to the root element. */\n\trootRef?: React.RefObject<HTMLLabelElement | null>;\n}\n\nexport const Checkbox = function Checkbox({\n\tref,\n\t...props\n}: CheckboxProps & { ref?: React.Ref<HTMLInputElement> }) {\n\tconst { children, inputProps, rootRef, ...rest } = props;\n\treturn (\n\t\t<ChakraCheckbox.Root ref={rootRef} {...rest}>\n\t\t\t<ChakraCheckbox.HiddenInput ref={ref} {...inputProps} />\n\t\t\t<ChakraCheckbox.Control>\n\t\t\t\t<ChakraCheckbox.Indicator />\n\t\t\t</ChakraCheckbox.Control>\n\t\t\t{children != null && (\n\t\t\t\t<ChakraCheckbox.Label>{children}</ChakraCheckbox.Label>\n\t\t\t)}\n\t\t</ChakraCheckbox.Root>\n\t);\n};\nCheckbox.displayName = \"Checkbox\";\n\nexport const CheckboxGroup = ChakraCheckbox.Group;\nCheckboxGroup.displayName = \"CheckboxGroup\";\n","import type { IconButtonProps, SpanProps } from \"@chakra-ui/react\";\nimport { ClientOnly, IconButton, Skeleton, Span } from \"@chakra-ui/react\";\nimport { Moon, Sun } from \"lucide-react\";\nimport type { ThemeProviderProps } from \"next-themes\";\nimport { ThemeProvider, useTheme } from \"next-themes\";\nimport type * as React from \"react\";\n\nexport interface ColorModeProviderProps extends ThemeProviderProps {}\n\nexport function ColorModeProvider(props: ColorModeProviderProps) {\n\treturn (\n\t\t<ThemeProvider attribute=\"class\" disableTransitionOnChange {...props} />\n\t);\n}\nColorModeProvider.displayName = \"ColorModeProvider\";\n\nexport type ColorMode = \"light\" | \"dark\";\n\nexport interface UseColorModeReturn {\n\tcolorMode: ColorMode;\n\tsetColorMode: (colorMode: ColorMode) => void;\n\ttoggleColorMode: () => void;\n}\n\nexport function useColorMode(): UseColorModeReturn {\n\tconst { resolvedTheme, setTheme, forcedTheme } = useTheme();\n\tconst colorMode = forcedTheme || resolvedTheme;\n\tconst toggleColorMode = () => {\n\t\tsetTheme(resolvedTheme === \"dark\" ? \"light\" : \"dark\");\n\t};\n\treturn {\n\t\tcolorMode: colorMode as ColorMode,\n\t\tsetColorMode: setTheme,\n\t\ttoggleColorMode,\n\t};\n}\n\nexport function useColorModeValue<T>(light: T, dark: T) {\n\tconst { colorMode } = useColorMode();\n\treturn colorMode === \"dark\" ? dark : light;\n}\n\nexport function ColorModeIcon() {\n\tconst { colorMode } = useColorMode();\n\treturn colorMode === \"dark\" ? <Moon /> : <Sun />;\n}\nColorModeIcon.displayName = \"ColorModeIcon\";\n\ninterface ColorModeButtonProps extends Omit<IconButtonProps, \"aria-label\"> {\n\t/** Accessible label for the color mode toggle button. @default \"Toggle color mode\" */\n\tlabel?: string;\n}\n\nexport const ColorModeButton = function ColorModeButton({\n\tref,\n\tlabel = \"Toggle color mode\",\n\t...props\n}: ColorModeButtonProps & { ref?: React.Ref<HTMLButtonElement> }) {\n\tconst { toggleColorMode } = useColorMode();\n\treturn (\n\t\t<ClientOnly fallback={<Skeleton boxSize=\"9\" />}>\n\t\t\t<IconButton\n\t\t\t\tonClick={toggleColorMode}\n\t\t\t\tvariant=\"ghost\"\n\t\t\t\taria-label={label}\n\t\t\t\tsize=\"sm\"\n\t\t\t\tref={ref}\n\t\t\t\t{...props}\n\t\t\t\tcss={{\n\t\t\t\t\t_icon: {\n\t\t\t\t\t\twidth: \"5\",\n\t\t\t\t\t\theight: \"5\",\n\t\t\t\t\t},\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<ColorModeIcon />\n\t\t\t</IconButton>\n\t\t</ClientOnly>\n\t);\n};\nColorModeButton.displayName = \"ColorModeButton\";\n\nexport const LightMode = function LightMode({\n\tref,\n\t...props\n}: SpanProps & { ref?: React.Ref<HTMLSpanElement> }) {\n\treturn (\n\t\t<Span\n\t\t\tcolor=\"fg\"\n\t\t\tdisplay=\"contents\"\n\t\t\tclassName=\"chakra-theme light\"\n\t\t\tcolorPalette=\"gray\"\n\t\t\tdata-theme=\"light\"\n\t\t\tref={ref}\n\t\t\t{...props}\n\t\t/>\n\t);\n};\nLightMode.displayName = \"LightMode\";\n\nexport const DarkMode = function DarkMode({\n\tref,\n\t...props\n}: SpanProps & { ref?: React.Ref<HTMLSpanElement> }) {\n\treturn (\n\t\t<Span\n\t\t\tcolor=\"fg\"\n\t\t\tdisplay=\"contents\"\n\t\t\tclassName=\"chakra-theme dark\"\n\t\t\tcolorPalette=\"gray\"\n\t\t\tdata-theme=\"dark\"\n\t\t\tref={ref}\n\t\t\t{...props}\n\t\t/>\n\t);\n};\nDarkMode.displayName = \"DarkMode\";\n","import { HoverCard as ChakraHoverCard, Portal } from \"@chakra-ui/react\";\nimport type * as React from \"react\";\n\nexport interface HoverCardProps extends ChakraHoverCard.RootProps {\n\t/** Content displayed in the hover card. */\n\tcontent: React.ReactNode;\n\t/** Whether to show an arrow. @default false */\n\tshowArrow?: boolean;\n\t/** Whether to render in a portal. @default true */\n\tportalled?: boolean;\n\t/** Container ref for portal. */\n\tportalRef?: React.RefObject<HTMLElement | null>;\n\t/** Props passed to the content element. */\n\tcontentProps?: ChakraHoverCard.ContentProps;\n}\n\nexport const HoverCard = function HoverCard(props: HoverCardProps) {\n\tconst {\n\t\tcontent,\n\t\tshowArrow,\n\t\tchildren,\n\t\tportalled = true,\n\t\tportalRef,\n\t\tcontentProps,\n\t\t...rest\n\t} = props;\n\treturn (\n\t\t<ChakraHoverCard.Root {...rest}>\n\t\t\t<ChakraHoverCard.Trigger asChild>{children}</ChakraHoverCard.Trigger>\n\t\t\t<Portal disabled={!portalled} container={portalRef}>\n\t\t\t\t<ChakraHoverCard.Positioner>\n\t\t\t\t\t<ChakraHoverCard.Content {...contentProps}>\n\t\t\t\t\t\t{showArrow && (\n\t\t\t\t\t\t\t<ChakraHoverCard.Arrow>\n\t\t\t\t\t\t\t\t<ChakraHoverCard.ArrowTip />\n\t\t\t\t\t\t\t</ChakraHoverCard.Arrow>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{content}\n\t\t\t\t\t</ChakraHoverCard.Content>\n\t\t\t\t</ChakraHoverCard.Positioner>\n\t\t\t</Portal>\n\t\t</ChakraHoverCard.Root>\n\t);\n};\nHoverCard.displayName = \"HoverCard\";\n","import { PinInput as ChakraPinInput } from \"@chakra-ui/react\";\nimport type * as React from \"react\";\n\nexport interface PinInputProps\n\textends Omit<ChakraPinInput.RootProps, \"children\"> {\n\t/** Number of input fields. @default 4 */\n\tlength?: number;\n}\n\nexport const PinInput = function PinInput({\n\tref,\n\t...props\n}: PinInputProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { length = 4, ...rest } = props;\n\treturn (\n\t\t<ChakraPinInput.Root ref={ref} {...rest}>\n\t\t\t<ChakraPinInput.HiddenInput />\n\t\t\t<ChakraPinInput.Control>\n\t\t\t\t{Array.from({ length }).map((_, i) => (\n\t\t\t\t\t// biome-ignore lint/suspicious/noArrayIndexKey: index is the stable identity for pin input fields\n\t\t\t\t\t<ChakraPinInput.Input key={i} index={i} />\n\t\t\t\t))}\n\t\t\t</ChakraPinInput.Control>\n\t\t</ChakraPinInput.Root>\n\t);\n};\nPinInput.displayName = \"PinInput\";\n","import {\n\tProgress as ChakraProgress,\n\tProgressCircle as ChakraProgressCircle,\n} from \"@chakra-ui/react\";\nimport type * as React from \"react\";\n\nexport interface ProgressProps extends ChakraProgress.RootProps {\n\t/** Whether to show the percentage label. @default false */\n\tshowValue?: boolean;\n\t/** Label text displayed above the progress bar. */\n\tlabel?: React.ReactNode;\n}\n\nexport const Progress = function Progress({\n\tref,\n\t...props\n}: ProgressProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { showValue, label, ...rest } = props;\n\treturn (\n\t\t<ChakraProgress.Root ref={ref} {...rest}>\n\t\t\t{(label || showValue) && (\n\t\t\t\t<ChakraProgress.Label>\n\t\t\t\t\t{label}\n\t\t\t\t\t{showValue && <ChakraProgress.ValueText />}\n\t\t\t\t</ChakraProgress.Label>\n\t\t\t)}\n\t\t\t<ChakraProgress.Track>\n\t\t\t\t<ChakraProgress.Range />\n\t\t\t</ChakraProgress.Track>\n\t\t</ChakraProgress.Root>\n\t);\n};\nProgress.displayName = \"Progress\";\n\nexport interface ProgressCircleProps extends ChakraProgressCircle.RootProps {\n\t/** Whether to show the percentage label. @default false */\n\tshowValue?: boolean;\n}\n\nexport const ProgressCircle = function ProgressCircle({\n\tref,\n\t...props\n}: ProgressCircleProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { showValue, children, ...rest } = props;\n\treturn (\n\t\t<ChakraProgressCircle.Root ref={ref} {...rest}>\n\t\t\t<ChakraProgressCircle.Circle>\n\t\t\t\t<ChakraProgressCircle.Track />\n\t\t\t\t<ChakraProgressCircle.Range />\n\t\t\t</ChakraProgressCircle.Circle>\n\t\t\t{showValue && <ChakraProgressCircle.ValueText />}\n\t\t\t{children}\n\t\t</ChakraProgressCircle.Root>\n\t);\n};\nProgressCircle.displayName = \"ProgressCircle\";\n","import type { SystemContext } from \"@chakra-ui/react\";\nimport { ChakraProvider } from \"@chakra-ui/react\";\nimport defaultSystem from \"../theme\";\nimport { ColorModeProvider, type ColorModeProviderProps } from \"./color-mode\";\n\nexport interface ProviderProps extends ColorModeProviderProps {\n\t/** Override the default anker theme system. */\n\tsystem?: SystemContext;\n}\n\nexport function Provider({ system, ...props }: ProviderProps) {\n\treturn (\n\t\t<ChakraProvider value={system ?? defaultSystem}>\n\t\t\t<ColorModeProvider {...props} />\n\t\t</ChakraProvider>\n\t);\n}\nProvider.displayName = \"Provider\";\n","import { SegmentGroup as ChakraSegmentGroup } from \"@chakra-ui/react\";\nimport type * as React from \"react\";\n\nexport interface SegmentedControlItem {\n\tvalue: string;\n\tlabel: React.ReactNode;\n\tdisabled?: boolean;\n}\n\nexport interface SegmentedControlProps\n\textends Omit<ChakraSegmentGroup.RootProps, \"children\"> {\n\t/** Items to render as segments. */\n\titems: Array<string | SegmentedControlItem>;\n}\n\nexport const SegmentedControl = function SegmentedControl({\n\tref,\n\t...props\n}: SegmentedControlProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { items, ...rest } = props;\n\treturn (\n\t\t<ChakraSegmentGroup.Root ref={ref} {...rest}>\n\t\t\t<ChakraSegmentGroup.Indicator />\n\t\t\t{items.map((item) => {\n\t\t\t\tconst value = typeof item === \"string\" ? item : item.value;\n\t\t\t\tconst label = typeof item === \"string\" ? item : item.label;\n\t\t\t\tconst disabled = typeof item === \"string\" ? false : item.disabled;\n\t\t\t\treturn (\n\t\t\t\t\t<ChakraSegmentGroup.Item\n\t\t\t\t\t\tkey={value}\n\t\t\t\t\t\tvalue={value}\n\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t>\n\t\t\t\t\t\t<ChakraSegmentGroup.ItemText>{label}</ChakraSegmentGroup.ItemText>\n\t\t\t\t\t\t<ChakraSegmentGroup.ItemHiddenInput />\n\t\t\t\t\t</ChakraSegmentGroup.Item>\n\t\t\t\t);\n\t\t\t})}\n\t\t</ChakraSegmentGroup.Root>\n\t);\n};\nSegmentedControl.displayName = \"SegmentedControl\";\n","import { Slider as ChakraSlider } from \"@chakra-ui/react\";\nimport type * as React from \"react\";\n\nexport interface SliderProps extends ChakraSlider.RootProps {\n\t/** Whether to show the current value label. @default false */\n\tshowValue?: boolean;\n\t/** Label text displayed alongside the slider. */\n\tlabel?: React.ReactNode;\n\t/** Marks to display on the track. */\n\tmarks?: Array<number | { value: number; label: React.ReactNode }>;\n}\n\nexport const Slider = function Slider({\n\tref,\n\t...props\n}: SliderProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { showValue, label, marks, ...rest } = props;\n\treturn (\n\t\t<ChakraSlider.Root ref={ref} {...rest}>\n\t\t\t{(label || showValue) && (\n\t\t\t\t<ChakraSlider.Label>\n\t\t\t\t\t{label}\n\t\t\t\t\t{showValue && <ChakraSlider.ValueText />}\n\t\t\t\t</ChakraSlider.Label>\n\t\t\t)}\n\t\t\t<ChakraSlider.Control>\n\t\t\t\t<ChakraSlider.Track>\n\t\t\t\t\t<ChakraSlider.Range />\n\t\t\t\t</ChakraSlider.Track>\n\t\t\t\t<ChakraSlider.Thumbs />\n\t\t\t</ChakraSlider.Control>\n\t\t\t{marks && <ChakraSlider.Marks marks={marks} />}\n\t\t</ChakraSlider.Root>\n\t);\n};\nSlider.displayName = \"Slider\";\n","import {\n\tPopover as ChakraPopover,\n\tIconButton,\n\ttype IconButtonProps,\n\tPortal,\n} from \"@chakra-ui/react\";\nimport { Info } from \"lucide-react\";\nimport type * as React from \"react\";\n\nexport interface ToggleTipProps extends ChakraPopover.RootProps {\n\tshowArrow?: boolean;\n\tportalled?: boolean;\n\tportalRef?: React.RefObject<HTMLElement | null>;\n\tcontent?: React.ReactNode;\n\tcontentProps?: ChakraPopover.ContentProps;\n}\n\nexport const ToggleTip = function ToggleTip({\n\tref,\n\t...props\n}: ToggleTipProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst {\n\t\tshowArrow,\n\t\tchildren,\n\t\tportalled = true,\n\t\tcontent,\n\t\tcontentProps,\n\t\tportalRef,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<ChakraPopover.Root\n\t\t\t{...rest}\n\t\t\tpositioning={{ ...rest.positioning, gutter: 4 }}\n\t\t>\n\t\t\t<ChakraPopover.Trigger asChild>{children}</ChakraPopover.Trigger>\n\t\t\t<Portal disabled={!portalled} container={portalRef}>\n\t\t\t\t<ChakraPopover.Positioner>\n\t\t\t\t\t<ChakraPopover.Content\n\t\t\t\t\t\twidth=\"auto\"\n\t\t\t\t\t\tpx=\"2\"\n\t\t\t\t\t\tpy=\"1\"\n\t\t\t\t\t\ttextStyle=\"xs\"\n\t\t\t\t\t\trounded=\"sm\"\n\t\t\t\t\t\tref={ref}\n\t\t\t\t\t\t{...contentProps}\n\t\t\t\t\t>\n\t\t\t\t\t\t{showArrow && (\n\t\t\t\t\t\t\t<ChakraPopover.Arrow>\n\t\t\t\t\t\t\t\t<ChakraPopover.ArrowTip />\n\t\t\t\t\t\t\t</ChakraPopover.Arrow>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{content}\n\t\t\t\t\t</ChakraPopover.Content>\n\t\t\t\t</ChakraPopover.Positioner>\n\t\t\t</Portal>\n\t\t</ChakraPopover.Root>\n\t);\n};\nToggleTip.displayName = \"ToggleTip\";\n\nexport interface InfoTipProps extends Partial<ToggleTipProps> {\n\tbuttonProps?: IconButtonProps | undefined;\n\t/** Accessible label for the info tip button. @default \"info\" */\n\tlabel?: string;\n}\n\nexport const InfoTip = function InfoTip({\n\tref,\n\t...props\n}: InfoTipProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { children, buttonProps, label = \"info\", ...rest } = props;\n\treturn (\n\t\t<ToggleTip content={children} {...rest} ref={ref}>\n\t\t\t<IconButton\n\t\t\t\tvariant=\"ghost\"\n\t\t\t\taria-label={label}\n\t\t\t\tsize=\"2xs\"\n\t\t\t\tcolorPalette=\"gray\"\n\t\t\t\tminWidth=\"44px\"\n\t\t\t\tminHeight=\"44px\"\n\t\t\t\t{...buttonProps}\n\t\t\t>\n\t\t\t\t<Info />\n\t\t\t</IconButton>\n\t\t</ToggleTip>\n\t);\n};\nInfoTip.displayName = \"InfoTip\";\n","import {\n\tBadge,\n\ttype BadgeProps,\n\tStat as ChakraStat,\n\tFormatNumber,\n} from \"@chakra-ui/react\";\nimport type * as React from \"react\";\nimport { InfoTip } from \"./toggle-tip\";\n\nexport interface StatLabelProps extends ChakraStat.LabelProps {\n\tinfo?: React.ReactNode;\n}\n\nexport const StatLabel = function StatLabel({\n\tref,\n\t...props\n}: StatLabelProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { info, children, ...rest } = props;\n\treturn (\n\t\t<ChakraStat.Label {...rest} ref={ref}>\n\t\t\t{children}\n\t\t\t{info && <InfoTip>{info}</InfoTip>}\n\t\t</ChakraStat.Label>\n\t);\n};\nStatLabel.displayName = \"StatLabel\";\n\nexport interface StatValueTextProps extends ChakraStat.ValueTextProps {\n\tvalue?: number;\n\tformatOptions?: Intl.NumberFormatOptions;\n}\n\nexport const StatValueText = function StatValueText({\n\tref,\n\t...props\n}: StatValueTextProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { value, formatOptions, children, ...rest } = props;\n\treturn (\n\t\t<ChakraStat.ValueText {...rest} ref={ref}>\n\t\t\t{children ||\n\t\t\t\t(value != null && <FormatNumber value={value} {...formatOptions} />)}\n\t\t</ChakraStat.ValueText>\n\t);\n};\nStatValueText.displayName = \"StatValueText\";\n\nexport const StatUpTrend = function StatUpTrend({\n\tref,\n\t...props\n}: BadgeProps & { ref?: React.Ref<HTMLDivElement> }) {\n\treturn (\n\t\t<Badge colorPalette=\"green\" gap=\"0\" {...props} ref={ref}>\n\t\t\t<ChakraStat.UpIndicator />\n\t\t\t{props.children}\n\t\t</Badge>\n\t);\n};\nStatUpTrend.displayName = \"StatUpTrend\";\n\nexport const StatDownTrend = function StatDownTrend({\n\tref,\n\t...props\n}: BadgeProps & { ref?: React.Ref<HTMLDivElement> }) {\n\treturn (\n\t\t<Badge colorPalette=\"red\" gap=\"0\" {...props} ref={ref}>\n\t\t\t<ChakraStat.DownIndicator />\n\t\t\t{props.children}\n\t\t</Badge>\n\t);\n};\nStatDownTrend.displayName = \"StatDownTrend\";\n\nexport const StatRoot = ChakraStat.Root;\nStatRoot.displayName = \"StatRoot\";\nexport const StatHelpText = ChakraStat.HelpText;\nStatHelpText.displayName = \"StatHelpText\";\nexport const StatValueUnit = ChakraStat.ValueUnit;\nStatValueUnit.displayName = \"StatValueUnit\";\n","import {\n\tToaster as ChakraToaster,\n\tcreateToaster,\n\tPortal,\n\tSpinner,\n\tStack,\n\tToast,\n} from \"@chakra-ui/react\";\n\nexport interface CreateToasterOptions {\n\tplacement?:\n\t\t| \"top\"\n\t\t| \"top-start\"\n\t\t| \"top-end\"\n\t\t| \"bottom\"\n\t\t| \"bottom-start\"\n\t\t| \"bottom-end\";\n\tpauseOnPageIdle?: boolean;\n}\n\nexport function createAnkerToaster(options: CreateToasterOptions = {}) {\n\tconst { placement = \"bottom-end\", pauseOnPageIdle = true } = options;\n\n\tconst toaster = createToaster({\n\t\tplacement,\n\t\tpauseOnPageIdle,\n\t});\n\n\tconst ToasterComponent = () => {\n\t\treturn (\n\t\t\t<Portal>\n\t\t\t\t<ChakraToaster toaster={toaster} insetInline={{ mdDown: \"4\" }}>\n\t\t\t\t\t{(toast) => (\n\t\t\t\t\t\t<Toast.Root width={{ md: \"sm\" }}>\n\t\t\t\t\t\t\t{toast.type === \"loading\" ? (\n\t\t\t\t\t\t\t\t<Spinner size=\"sm\" color=\"accent\" />\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<Toast.Indicator />\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<Stack gap=\"1\" flex=\"1\" maxWidth=\"100%\">\n\t\t\t\t\t\t\t\t{toast.title && <Toast.Title>{toast.title}</Toast.Title>}\n\t\t\t\t\t\t\t\t{toast.description && (\n\t\t\t\t\t\t\t\t\t<Toast.Description>{toast.description}</Toast.Description>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</Stack>\n\t\t\t\t\t\t\t{toast.action && (\n\t\t\t\t\t\t\t\t<Toast.ActionTrigger>{toast.action.label}</Toast.ActionTrigger>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{toast.closable && <Toast.CloseTrigger />}\n\t\t\t\t\t\t</Toast.Root>\n\t\t\t\t\t)}\n\t\t\t\t</ChakraToaster>\n\t\t\t</Portal>\n\t\t);\n\t};\n\n\treturn { toaster, Toaster: ToasterComponent };\n}\n\n// Default instance for convenience\nconst { toaster, Toaster } = createAnkerToaster();\n\n(Toaster as { displayName?: string }).displayName = \"Toaster\";\n\nexport { toaster, Toaster };\n"]}
1
+ {"version":3,"sources":["../../src/primitives/accordion.tsx","../../src/primitives/alert.tsx","../../src/primitives/breadcrumb.tsx","../../src/primitives/color-mode.tsx","../../src/primitives/hover-card.tsx","../../src/primitives/pin-input.tsx","../../src/primitives/provider.tsx","../../src/primitives/segmented-control.tsx","../../src/primitives/slider.tsx","../../src/primitives/toggle-tip.tsx","../../src/primitives/stat.tsx","../../src/primitives/toaster.tsx"],"names":["AccordionItem","ChakraAccordion","Alert","jsxs","ChakraAlert","jsx","ChakraBreadcrumb","ColorModeButton","Skeleton","LightMode","DarkMode","HoverCard","ChakraHoverCard","PinInput","ChakraPinInput","SegmentedControl","ChakraSegmentGroup","Slider","ChakraSlider","ToggleTip","ChakraPopover","Portal","InfoTip","IconButton","StatLabel","ChakraStat","StatValueText","StatUpTrend","Badge","StatDownTrend","toaster","ChakraToaster","Spinner","Stack"],"mappings":"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","file":"index.js","sourcesContent":["import { Accordion as ChakraAccordion } from \"@chakra-ui/react\";\nimport type * as React from \"react\";\n\nexport interface AccordionItemProps extends ChakraAccordion.ItemProps {\n\t/** The trigger label shown in the accordion header. */\n\tlabel: React.ReactNode;\n\t/** Content revealed when the item is expanded. */\n\tchildren: React.ReactNode;\n}\n\nexport const AccordionItem = function AccordionItem({\n\tref,\n\t...props\n}: AccordionItemProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { label, children, ...rest } = props;\n\treturn (\n\t\t<ChakraAccordion.Item ref={ref} {...rest}>\n\t\t\t<ChakraAccordion.ItemTrigger>\n\t\t\t\t{label}\n\t\t\t\t<ChakraAccordion.ItemIndicator />\n\t\t\t</ChakraAccordion.ItemTrigger>\n\t\t\t<ChakraAccordion.ItemContent>\n\t\t\t\t<ChakraAccordion.ItemBody>{children}</ChakraAccordion.ItemBody>\n\t\t\t</ChakraAccordion.ItemContent>\n\t\t</ChakraAccordion.Item>\n\t);\n};\nAccordionItem.displayName = \"AccordionItem\";\n\n// Pass-through exports for composition\nexport const AccordionRoot = ChakraAccordion.Root;\nAccordionRoot.displayName = \"AccordionRoot\";\n\nexport type AccordionRootProps = ChakraAccordion.RootProps;\n","import { Alert as ChakraAlert } from \"@chakra-ui/react\";\nimport type * as React from \"react\";\n\nexport interface AlertProps extends Omit<ChakraAlert.RootProps, \"title\"> {\n\tstartElement?: React.ReactNode;\n\tendElement?: React.ReactNode;\n\ttitle?: React.ReactNode;\n\ticon?: React.ReactElement;\n}\n\nexport const Alert = function Alert({\n\tref,\n\t...props\n}: AlertProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { title, children, icon, startElement, endElement, ...rest } = props;\n\treturn (\n\t\t<ChakraAlert.Root ref={ref} {...rest}>\n\t\t\t{startElement || <ChakraAlert.Indicator>{icon}</ChakraAlert.Indicator>}\n\t\t\t{children ? (\n\t\t\t\t<ChakraAlert.Content>\n\t\t\t\t\t<ChakraAlert.Title>{title}</ChakraAlert.Title>\n\t\t\t\t\t<ChakraAlert.Description>{children}</ChakraAlert.Description>\n\t\t\t\t</ChakraAlert.Content>\n\t\t\t) : (\n\t\t\t\t<ChakraAlert.Title flex=\"1\">{title}</ChakraAlert.Title>\n\t\t\t)}\n\t\t\t{endElement}\n\t\t</ChakraAlert.Root>\n\t);\n};\nAlert.displayName = \"Alert\";\n","import { Breadcrumb as ChakraBreadcrumb } from \"@chakra-ui/react\";\n\n// Pass-through exports with stable API\nexport const BreadcrumbRoot = ChakraBreadcrumb.Root;\nBreadcrumbRoot.displayName = \"BreadcrumbRoot\";\n\nexport const BreadcrumbList = ChakraBreadcrumb.List;\nBreadcrumbList.displayName = \"BreadcrumbList\";\n\nexport const BreadcrumbItem = ChakraBreadcrumb.Item;\nBreadcrumbItem.displayName = \"BreadcrumbItem\";\n\nexport const BreadcrumbLink = ChakraBreadcrumb.Link;\nBreadcrumbLink.displayName = \"BreadcrumbLink\";\n\nexport const BreadcrumbCurrentLink = ChakraBreadcrumb.CurrentLink;\nBreadcrumbCurrentLink.displayName = \"BreadcrumbCurrentLink\";\n\nexport const BreadcrumbSeparator = ChakraBreadcrumb.Separator;\nBreadcrumbSeparator.displayName = \"BreadcrumbSeparator\";\n\nexport const BreadcrumbEllipsis = ChakraBreadcrumb.Ellipsis;\nBreadcrumbEllipsis.displayName = \"BreadcrumbEllipsis\";\n\nexport type BreadcrumbRootProps = ChakraBreadcrumb.RootProps;\nexport type BreadcrumbLinkProps = ChakraBreadcrumb.LinkProps;\n","import type { IconButtonProps, SpanProps } from \"@chakra-ui/react\";\nimport { ClientOnly, IconButton, Skeleton, Span } from \"@chakra-ui/react\";\nimport { Moon, Sun } from \"lucide-react\";\nimport type { ThemeProviderProps } from \"next-themes\";\nimport { ThemeProvider, useTheme } from \"next-themes\";\nimport type * as React from \"react\";\n\nexport interface ColorModeProviderProps extends ThemeProviderProps {}\n\nexport function ColorModeProvider(props: ColorModeProviderProps) {\n\treturn (\n\t\t<ThemeProvider attribute=\"class\" disableTransitionOnChange {...props} />\n\t);\n}\nColorModeProvider.displayName = \"ColorModeProvider\";\n\nexport type ColorMode = \"light\" | \"dark\";\n\nexport interface UseColorModeReturn {\n\tcolorMode: ColorMode;\n\tsetColorMode: (colorMode: ColorMode) => void;\n\ttoggleColorMode: () => void;\n}\n\nexport function useColorMode(): UseColorModeReturn {\n\tconst { resolvedTheme, setTheme, forcedTheme } = useTheme();\n\tconst colorMode = forcedTheme || resolvedTheme;\n\tconst toggleColorMode = () => {\n\t\tsetTheme(resolvedTheme === \"dark\" ? \"light\" : \"dark\");\n\t};\n\treturn {\n\t\tcolorMode: colorMode as ColorMode,\n\t\tsetColorMode: setTheme,\n\t\ttoggleColorMode,\n\t};\n}\n\nexport function useColorModeValue<T>(light: T, dark: T) {\n\tconst { colorMode } = useColorMode();\n\treturn colorMode === \"dark\" ? dark : light;\n}\n\nexport function ColorModeIcon() {\n\tconst { colorMode } = useColorMode();\n\treturn colorMode === \"dark\" ? <Moon /> : <Sun />;\n}\nColorModeIcon.displayName = \"ColorModeIcon\";\n\ninterface ColorModeButtonProps extends Omit<IconButtonProps, \"aria-label\"> {\n\t/** Accessible label for the color mode toggle button. @default \"Toggle color mode\" */\n\tlabel?: string;\n}\n\nexport const ColorModeButton = function ColorModeButton({\n\tref,\n\tlabel = \"Toggle color mode\",\n\t...props\n}: ColorModeButtonProps & { ref?: React.Ref<HTMLButtonElement> }) {\n\tconst { toggleColorMode } = useColorMode();\n\treturn (\n\t\t<ClientOnly fallback={<Skeleton boxSize=\"9\" />}>\n\t\t\t<IconButton\n\t\t\t\tonClick={toggleColorMode}\n\t\t\t\tvariant=\"ghost\"\n\t\t\t\taria-label={label}\n\t\t\t\tsize=\"sm\"\n\t\t\t\tref={ref}\n\t\t\t\t{...props}\n\t\t\t\tcss={{\n\t\t\t\t\t_icon: {\n\t\t\t\t\t\twidth: \"5\",\n\t\t\t\t\t\theight: \"5\",\n\t\t\t\t\t},\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<ColorModeIcon />\n\t\t\t</IconButton>\n\t\t</ClientOnly>\n\t);\n};\nColorModeButton.displayName = \"ColorModeButton\";\n\nexport const LightMode = function LightMode({\n\tref,\n\t...props\n}: SpanProps & { ref?: React.Ref<HTMLSpanElement> }) {\n\treturn (\n\t\t<Span\n\t\t\tcolor=\"fg\"\n\t\t\tdisplay=\"contents\"\n\t\t\tclassName=\"chakra-theme light\"\n\t\t\tcolorPalette=\"gray\"\n\t\t\tdata-theme=\"light\"\n\t\t\tref={ref}\n\t\t\t{...props}\n\t\t/>\n\t);\n};\nLightMode.displayName = \"LightMode\";\n\nexport const DarkMode = function DarkMode({\n\tref,\n\t...props\n}: SpanProps & { ref?: React.Ref<HTMLSpanElement> }) {\n\treturn (\n\t\t<Span\n\t\t\tcolor=\"fg\"\n\t\t\tdisplay=\"contents\"\n\t\t\tclassName=\"chakra-theme dark\"\n\t\t\tcolorPalette=\"gray\"\n\t\t\tdata-theme=\"dark\"\n\t\t\tref={ref}\n\t\t\t{...props}\n\t\t/>\n\t);\n};\nDarkMode.displayName = \"DarkMode\";\n","import { HoverCard as ChakraHoverCard, Portal } from \"@chakra-ui/react\";\nimport type * as React from \"react\";\n\nexport interface HoverCardProps extends ChakraHoverCard.RootProps {\n\t/** Content displayed in the hover card. */\n\tcontent: React.ReactNode;\n\t/** Whether to show an arrow. @default false */\n\tshowArrow?: boolean;\n\t/** Whether to render in a portal. @default true */\n\tportalled?: boolean;\n\t/** Container ref for portal. */\n\tportalRef?: React.RefObject<HTMLElement | null>;\n\t/** Props passed to the content element. */\n\tcontentProps?: ChakraHoverCard.ContentProps;\n}\n\nexport const HoverCard = function HoverCard(props: HoverCardProps) {\n\tconst {\n\t\tcontent,\n\t\tshowArrow,\n\t\tchildren,\n\t\tportalled = true,\n\t\tportalRef,\n\t\tcontentProps,\n\t\t...rest\n\t} = props;\n\treturn (\n\t\t<ChakraHoverCard.Root {...rest}>\n\t\t\t<ChakraHoverCard.Trigger asChild>{children}</ChakraHoverCard.Trigger>\n\t\t\t<Portal disabled={!portalled} container={portalRef}>\n\t\t\t\t<ChakraHoverCard.Positioner>\n\t\t\t\t\t<ChakraHoverCard.Content {...contentProps}>\n\t\t\t\t\t\t{showArrow && (\n\t\t\t\t\t\t\t<ChakraHoverCard.Arrow>\n\t\t\t\t\t\t\t\t<ChakraHoverCard.ArrowTip />\n\t\t\t\t\t\t\t</ChakraHoverCard.Arrow>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{content}\n\t\t\t\t\t</ChakraHoverCard.Content>\n\t\t\t\t</ChakraHoverCard.Positioner>\n\t\t\t</Portal>\n\t\t</ChakraHoverCard.Root>\n\t);\n};\nHoverCard.displayName = \"HoverCard\";\n","import { PinInput as ChakraPinInput } from \"@chakra-ui/react\";\nimport type * as React from \"react\";\n\nexport interface PinInputProps\n\textends Omit<ChakraPinInput.RootProps, \"children\"> {\n\t/** Number of input fields. @default 4 */\n\tlength?: number;\n}\n\nexport const PinInput = function PinInput({\n\tref,\n\t...props\n}: PinInputProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { length = 4, ...rest } = props;\n\treturn (\n\t\t<ChakraPinInput.Root ref={ref} {...rest}>\n\t\t\t<ChakraPinInput.HiddenInput />\n\t\t\t<ChakraPinInput.Control>\n\t\t\t\t{Array.from({ length }).map((_, i) => (\n\t\t\t\t\t// biome-ignore lint/suspicious/noArrayIndexKey: index is the stable identity for pin input fields\n\t\t\t\t\t<ChakraPinInput.Input key={i} index={i} />\n\t\t\t\t))}\n\t\t\t</ChakraPinInput.Control>\n\t\t</ChakraPinInput.Root>\n\t);\n};\nPinInput.displayName = \"PinInput\";\n","import type { SystemContext } from \"@chakra-ui/react\";\nimport { ChakraProvider } from \"@chakra-ui/react\";\nimport defaultSystem from \"../theme\";\nimport { ColorModeProvider, type ColorModeProviderProps } from \"./color-mode\";\n\nexport interface ProviderProps extends ColorModeProviderProps {\n\t/** Override the default anker theme system. */\n\tsystem?: SystemContext;\n}\n\nexport function Provider({ system, ...props }: ProviderProps) {\n\treturn (\n\t\t<ChakraProvider value={system ?? defaultSystem}>\n\t\t\t<ColorModeProvider {...props} />\n\t\t</ChakraProvider>\n\t);\n}\nProvider.displayName = \"Provider\";\n","import { SegmentGroup as ChakraSegmentGroup } from \"@chakra-ui/react\";\nimport type * as React from \"react\";\n\nexport interface SegmentedControlItem {\n\tvalue: string;\n\tlabel: React.ReactNode;\n\tdisabled?: boolean;\n}\n\nexport interface SegmentedControlProps\n\textends Omit<ChakraSegmentGroup.RootProps, \"children\"> {\n\t/** Items to render as segments. */\n\titems: Array<string | SegmentedControlItem>;\n}\n\nexport const SegmentedControl = function SegmentedControl({\n\tref,\n\t...props\n}: SegmentedControlProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { items, ...rest } = props;\n\treturn (\n\t\t<ChakraSegmentGroup.Root ref={ref} {...rest}>\n\t\t\t<ChakraSegmentGroup.Indicator />\n\t\t\t{items.map((item) => {\n\t\t\t\tconst value = typeof item === \"string\" ? item : item.value;\n\t\t\t\tconst label = typeof item === \"string\" ? item : item.label;\n\t\t\t\tconst disabled = typeof item === \"string\" ? false : item.disabled;\n\t\t\t\treturn (\n\t\t\t\t\t<ChakraSegmentGroup.Item\n\t\t\t\t\t\tkey={value}\n\t\t\t\t\t\tvalue={value}\n\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t>\n\t\t\t\t\t\t<ChakraSegmentGroup.ItemText>{label}</ChakraSegmentGroup.ItemText>\n\t\t\t\t\t\t<ChakraSegmentGroup.ItemHiddenInput />\n\t\t\t\t\t</ChakraSegmentGroup.Item>\n\t\t\t\t);\n\t\t\t})}\n\t\t</ChakraSegmentGroup.Root>\n\t);\n};\nSegmentedControl.displayName = \"SegmentedControl\";\n","import { Slider as ChakraSlider } from \"@chakra-ui/react\";\nimport type * as React from \"react\";\n\nexport interface SliderProps extends ChakraSlider.RootProps {\n\t/** Whether to show the current value label. @default false */\n\tshowValue?: boolean;\n\t/** Label text displayed alongside the slider. */\n\tlabel?: React.ReactNode;\n\t/** Marks to display on the track. */\n\tmarks?: Array<number | { value: number; label: React.ReactNode }>;\n}\n\nexport const Slider = function Slider({\n\tref,\n\t...props\n}: SliderProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { showValue, label, marks, ...rest } = props;\n\treturn (\n\t\t<ChakraSlider.Root ref={ref} {...rest}>\n\t\t\t{(label || showValue) && (\n\t\t\t\t<ChakraSlider.Label>\n\t\t\t\t\t{label}\n\t\t\t\t\t{showValue && <ChakraSlider.ValueText />}\n\t\t\t\t</ChakraSlider.Label>\n\t\t\t)}\n\t\t\t<ChakraSlider.Control>\n\t\t\t\t<ChakraSlider.Track>\n\t\t\t\t\t<ChakraSlider.Range />\n\t\t\t\t</ChakraSlider.Track>\n\t\t\t\t<ChakraSlider.Thumbs />\n\t\t\t</ChakraSlider.Control>\n\t\t\t{marks && <ChakraSlider.Marks marks={marks} />}\n\t\t</ChakraSlider.Root>\n\t);\n};\nSlider.displayName = \"Slider\";\n","import {\n\tPopover as ChakraPopover,\n\tIconButton,\n\ttype IconButtonProps,\n\tPortal,\n} from \"@chakra-ui/react\";\nimport { Info } from \"lucide-react\";\nimport type * as React from \"react\";\n\nexport interface ToggleTipProps extends ChakraPopover.RootProps {\n\tshowArrow?: boolean;\n\tportalled?: boolean;\n\tportalRef?: React.RefObject<HTMLElement | null>;\n\tcontent?: React.ReactNode;\n\tcontentProps?: ChakraPopover.ContentProps;\n}\n\nexport const ToggleTip = function ToggleTip({\n\tref,\n\t...props\n}: ToggleTipProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst {\n\t\tshowArrow,\n\t\tchildren,\n\t\tportalled = true,\n\t\tcontent,\n\t\tcontentProps,\n\t\tportalRef,\n\t\t...rest\n\t} = props;\n\n\treturn (\n\t\t<ChakraPopover.Root\n\t\t\t{...rest}\n\t\t\tpositioning={{ ...rest.positioning, gutter: 4 }}\n\t\t>\n\t\t\t<ChakraPopover.Trigger asChild>{children}</ChakraPopover.Trigger>\n\t\t\t<Portal disabled={!portalled} container={portalRef}>\n\t\t\t\t<ChakraPopover.Positioner>\n\t\t\t\t\t<ChakraPopover.Content\n\t\t\t\t\t\twidth=\"auto\"\n\t\t\t\t\t\tpx=\"2\"\n\t\t\t\t\t\tpy=\"1\"\n\t\t\t\t\t\ttextStyle=\"xs\"\n\t\t\t\t\t\trounded=\"sm\"\n\t\t\t\t\t\tref={ref}\n\t\t\t\t\t\t{...contentProps}\n\t\t\t\t\t>\n\t\t\t\t\t\t{showArrow && (\n\t\t\t\t\t\t\t<ChakraPopover.Arrow>\n\t\t\t\t\t\t\t\t<ChakraPopover.ArrowTip />\n\t\t\t\t\t\t\t</ChakraPopover.Arrow>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t{content}\n\t\t\t\t\t</ChakraPopover.Content>\n\t\t\t\t</ChakraPopover.Positioner>\n\t\t\t</Portal>\n\t\t</ChakraPopover.Root>\n\t);\n};\nToggleTip.displayName = \"ToggleTip\";\n\nexport interface InfoTipProps extends Partial<ToggleTipProps> {\n\tbuttonProps?: IconButtonProps | undefined;\n\t/** Accessible label for the info tip button. @default \"info\" */\n\tlabel?: string;\n}\n\nexport const InfoTip = function InfoTip({\n\tref,\n\t...props\n}: InfoTipProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { children, buttonProps, label = \"info\", ...rest } = props;\n\treturn (\n\t\t<ToggleTip content={children} {...rest} ref={ref}>\n\t\t\t<IconButton\n\t\t\t\tvariant=\"ghost\"\n\t\t\t\taria-label={label}\n\t\t\t\tsize=\"2xs\"\n\t\t\t\tcolorPalette=\"gray\"\n\t\t\t\tminWidth=\"44px\"\n\t\t\t\tminHeight=\"44px\"\n\t\t\t\t{...buttonProps}\n\t\t\t>\n\t\t\t\t<Info />\n\t\t\t</IconButton>\n\t\t</ToggleTip>\n\t);\n};\nInfoTip.displayName = \"InfoTip\";\n","import {\n\tBadge,\n\ttype BadgeProps,\n\tStat as ChakraStat,\n\tFormatNumber,\n} from \"@chakra-ui/react\";\nimport type * as React from \"react\";\nimport { InfoTip } from \"./toggle-tip\";\n\nexport interface StatLabelProps extends ChakraStat.LabelProps {\n\tinfo?: React.ReactNode;\n}\n\nexport const StatLabel = function StatLabel({\n\tref,\n\t...props\n}: StatLabelProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { info, children, ...rest } = props;\n\treturn (\n\t\t<ChakraStat.Label {...rest} ref={ref}>\n\t\t\t{children}\n\t\t\t{info && <InfoTip>{info}</InfoTip>}\n\t\t</ChakraStat.Label>\n\t);\n};\nStatLabel.displayName = \"StatLabel\";\n\nexport interface StatValueTextProps extends ChakraStat.ValueTextProps {\n\tvalue?: number;\n\tformatOptions?: Intl.NumberFormatOptions;\n}\n\nexport const StatValueText = function StatValueText({\n\tref,\n\t...props\n}: StatValueTextProps & { ref?: React.Ref<HTMLDivElement> }) {\n\tconst { value, formatOptions, children, ...rest } = props;\n\treturn (\n\t\t<ChakraStat.ValueText {...rest} ref={ref}>\n\t\t\t{children ||\n\t\t\t\t(value != null && <FormatNumber value={value} {...formatOptions} />)}\n\t\t</ChakraStat.ValueText>\n\t);\n};\nStatValueText.displayName = \"StatValueText\";\n\nexport const StatUpTrend = function StatUpTrend({\n\tref,\n\t...props\n}: BadgeProps & { ref?: React.Ref<HTMLDivElement> }) {\n\treturn (\n\t\t<Badge colorPalette=\"green\" gap=\"0\" {...props} ref={ref}>\n\t\t\t<ChakraStat.UpIndicator />\n\t\t\t{props.children}\n\t\t</Badge>\n\t);\n};\nStatUpTrend.displayName = \"StatUpTrend\";\n\nexport const StatDownTrend = function StatDownTrend({\n\tref,\n\t...props\n}: BadgeProps & { ref?: React.Ref<HTMLDivElement> }) {\n\treturn (\n\t\t<Badge colorPalette=\"red\" gap=\"0\" {...props} ref={ref}>\n\t\t\t<ChakraStat.DownIndicator />\n\t\t\t{props.children}\n\t\t</Badge>\n\t);\n};\nStatDownTrend.displayName = \"StatDownTrend\";\n\nexport const StatRoot = ChakraStat.Root;\nStatRoot.displayName = \"StatRoot\";\nexport const StatHelpText = ChakraStat.HelpText;\nStatHelpText.displayName = \"StatHelpText\";\nexport const StatValueUnit = ChakraStat.ValueUnit;\nStatValueUnit.displayName = \"StatValueUnit\";\n","import {\n\tToaster as ChakraToaster,\n\tcreateToaster,\n\tPortal,\n\tSpinner,\n\tStack,\n\tToast,\n} from \"@chakra-ui/react\";\n\nexport interface CreateToasterOptions {\n\tplacement?:\n\t\t| \"top\"\n\t\t| \"top-start\"\n\t\t| \"top-end\"\n\t\t| \"bottom\"\n\t\t| \"bottom-start\"\n\t\t| \"bottom-end\";\n\tpauseOnPageIdle?: boolean;\n}\n\nexport function createAnkerToaster(options: CreateToasterOptions = {}) {\n\tconst { placement = \"bottom-end\", pauseOnPageIdle = true } = options;\n\n\tconst toaster = createToaster({\n\t\tplacement,\n\t\tpauseOnPageIdle,\n\t});\n\n\tconst ToasterComponent = () => {\n\t\treturn (\n\t\t\t<Portal>\n\t\t\t\t<ChakraToaster toaster={toaster} insetInline={{ mdDown: \"4\" }}>\n\t\t\t\t\t{(toast) => (\n\t\t\t\t\t\t<Toast.Root width={{ md: \"sm\" }}>\n\t\t\t\t\t\t\t{toast.type === \"loading\" ? (\n\t\t\t\t\t\t\t\t<Spinner size=\"sm\" color=\"accent\" />\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<Toast.Indicator />\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<Stack gap=\"1\" flex=\"1\" maxWidth=\"100%\">\n\t\t\t\t\t\t\t\t{toast.title && <Toast.Title>{toast.title}</Toast.Title>}\n\t\t\t\t\t\t\t\t{toast.description && (\n\t\t\t\t\t\t\t\t\t<Toast.Description>{toast.description}</Toast.Description>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</Stack>\n\t\t\t\t\t\t\t{toast.action && (\n\t\t\t\t\t\t\t\t<Toast.ActionTrigger>{toast.action.label}</Toast.ActionTrigger>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t{toast.closable && <Toast.CloseTrigger />}\n\t\t\t\t\t\t</Toast.Root>\n\t\t\t\t\t)}\n\t\t\t\t</ChakraToaster>\n\t\t\t</Portal>\n\t\t);\n\t};\n\n\treturn { toaster, Toaster: ToasterComponent };\n}\n\n// Default instance for convenience\nconst { toaster, Toaster } = createAnkerToaster();\n\n(Toaster as { displayName?: string }).displayName = \"Toaster\";\n\nexport { toaster, Toaster };\n"]}