@react-typed-forms/schemas-html 4.2.0 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/lib/adornments/optionalAdornment.d.ts +4 -25
  2. package/lib/components/ArrayElementRenderer.d.ts +1 -4
  3. package/lib/components/AutocompleteRenderer.d.ts +1 -7
  4. package/lib/components/CheckRenderer.d.ts +3 -29
  5. package/lib/components/ControlInput.d.ts +2 -1
  6. package/lib/components/DefaultAccordion.d.ts +13 -6
  7. package/lib/components/DefaultArrayRenderer.d.ts +2 -9
  8. package/lib/components/DefaultDialogRenderer.d.ts +2 -8
  9. package/lib/components/DefaultDisplay.d.ts +3 -6
  10. package/lib/components/DefaultDisplayOnly.d.ts +3 -3
  11. package/lib/components/DefaultGroupRenderer.d.ts +2 -16
  12. package/lib/components/DefaultLayout.d.ts +4 -8
  13. package/lib/components/DefaultVisibility.d.ts +1 -1
  14. package/lib/components/DefaultWizardRenderer.d.ts +1 -27
  15. package/lib/components/GridRenderer.d.ts +1 -5
  16. package/lib/components/HtmlCheckButtons.d.ts +3 -0
  17. package/lib/components/JsonataRenderer.d.ts +2 -1
  18. package/lib/components/MultilineTextfield.d.ts +2 -1
  19. package/lib/components/ScrollListRenderer.d.ts +2 -0
  20. package/lib/components/SelectDataRenderer.d.ts +3 -6
  21. package/lib/components/TabsRenderer.d.ts +1 -9
  22. package/lib/components/ValueForFieldRenderer.d.ts +2 -10
  23. package/lib/createButtonActionRenderer.d.ts +2 -20
  24. package/lib/createDefaultRenderers.d.ts +8 -83
  25. package/lib/index.cjs +718 -550
  26. package/lib/index.cjs.map +1 -1
  27. package/lib/index.d.ts +3 -1
  28. package/lib/index.js +655 -475
  29. package/lib/index.js.map +1 -1
  30. package/lib/rendererOptions.d.ts +218 -0
  31. package/lib/tailwind.d.ts +14 -2
  32. package/package.json +6 -6
  33. package/lib/components/VisibleChildrenRenderer.d.ts +0 -14
package/lib/index.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../src/components/DefaultDisplay.tsx","../src/components/ControlInput.tsx","../src/components/SelectDataRenderer.tsx","../src/components/CheckRenderer.tsx","../src/components/DefaultLayout.tsx","../src/components/DefaultDisplayOnly.tsx","../src/components/DefaultAccordion.tsx","../src/components/VisibleChildrenRenderer.tsx","../src/components/TabsRenderer.tsx","../src/components/GridRenderer.tsx","../src/components/DefaultWizardRenderer.tsx","../src/components/DefaultDialogRenderer.tsx","../src/components/DefaultGroupRenderer.tsx","../src/components/DefaultVisibility.tsx","../src/components/JsonataRenderer.tsx","../src/components/NullToggle.tsx","../src/components/DefaultArrayRenderer.tsx","../src/components/AutocompleteRenderer.tsx","../src/components/ValueForFieldRenderer.tsx","../src/adornments/optionalAdornment.tsx","../src/components/MultilineTextfield.tsx","../src/components/ArrayElementRenderer.tsx","../src/createButtonActionRenderer.tsx","../src/createDefaultRenderers.tsx","../src/tailwind.tsx"],"sourcesContent":["import React from \"react\";\nimport clsx from \"clsx\";\nimport {\n coerceToString,\n CustomDisplay,\n DisplayDataType,\n DisplayRendererProps,\n DisplayRendererRegistration,\n FormRenderer,\n getOverrideClass,\n HtmlDisplay,\n IconDisplay,\n rendererClass,\n TextDisplay,\n} from \"@react-typed-forms/schemas\";\n\nexport interface DefaultDisplayRendererOptions {\n textClassName?: string;\n textTextClass?: string;\n htmlClassName?: string;\n}\n\nexport function createDefaultDisplayRenderer(\n options: DefaultDisplayRendererOptions = {},\n): DisplayRendererRegistration {\n return {\n render: (props, renderer) => (\n <DefaultDisplay\n options={options}\n displayProps={props}\n renderer={renderer}\n />\n ),\n type: \"display\",\n };\n}\n\nexport function DefaultDisplay({\n renderer,\n options,\n displayProps,\n}: {\n displayProps: DisplayRendererProps;\n options: DefaultDisplayRendererOptions;\n renderer: FormRenderer;\n}) {\n const { data, display, className, textClass, style } = displayProps;\n const { I, Div, B, H1, Span } = renderer.html;\n switch (data.type) {\n case DisplayDataType.Icon:\n const iconDisplay = data as IconDisplay;\n return (\n <I\n style={style}\n className={clsx(\n getOverrideClass(className),\n display ? display.value : iconDisplay.iconClass,\n )}\n iconName={display ? display.value : iconDisplay.icon?.name}\n iconLibrary={iconDisplay.icon?.library}\n />\n );\n case DisplayDataType.Text:\n const text = display\n ? coerceToString(display.value)\n : (data as TextDisplay).text;\n return (\n <Div\n style={style}\n className={rendererClass(className, options.textClassName)}\n textClass={rendererClass(textClass, options.textTextClass)}\n text={text}\n inline={displayProps.inline}\n />\n );\n case DisplayDataType.Html:\n return (\n <Div\n style={style}\n className={rendererClass(className, options.htmlClassName)}\n inline={displayProps.inline}\n html={\n display ? coerceToString(display.value) : (data as HtmlDisplay).html\n }\n />\n );\n case DisplayDataType.Custom:\n return (\n <Div>\n <B>({(data as CustomDisplay).customId})</B>\n </Div>\n );\n default:\n return <H1>Unknown display type: {data.type}</H1>;\n }\n}\n","import React from \"react\";\nimport {\n Control,\n formControlProps,\n useControl,\n useControlEffect,\n} from \"@react-typed-forms/core\";\nimport { FieldType, FormRenderer } from \"@react-typed-forms/schemas\";\n\nexport interface ControlInputProps {\n className?: string;\n textClass?: string;\n style?: React.CSSProperties;\n id?: string;\n readOnly?: boolean;\n placeholder?: string;\n control: Control<any>;\n convert: InputConversion;\n renderer: FormRenderer;\n}\nexport function ControlInput({\n control,\n convert,\n renderer,\n ...props\n}: ControlInputProps) {\n const { errorText, value, onChange, ref, ...inputProps } =\n formControlProps(control);\n const textValue = useControl(() => toText(value));\n useControlEffect(\n () => control.value,\n (v) => (textValue.value = toText(v)),\n );\n const { Input } = renderer.html;\n return (\n <Input\n {...inputProps}\n inputRef={ref}\n type={convert[0]}\n value={textValue.value}\n onChangeValue={(e) => {\n textValue.value = e;\n const converted = convert[1](e);\n if (converted !== undefined) control.value = converted;\n }}\n {...props}\n />\n );\n\n function toText(value: any) {\n return value == null ? \"\" : convert[2](value);\n }\n}\n\ntype InputConversion = [\n string,\n (s: string) => any,\n (a: any) => string | number,\n];\n\nexport function createInputConversion(ft: string): InputConversion {\n switch (ft) {\n case FieldType.String:\n return [\"text\", (a) => a, (a) => a];\n case FieldType.Bool:\n return [\n \"text\",\n (a) => (a === \"true\" ? true : a === \"false\" ? false : undefined),\n (a) => a?.toString() ?? \"\",\n ];\n case FieldType.Int:\n return [\n \"number\",\n (a) => (a !== \"\" ? parseInt(a) : null),\n (a) => (a == null ? \"\" : a),\n ];\n case FieldType.DateTime:\n return [\"datetime-local\", (a) => (!a ? null : a), (a) => a];\n case FieldType.Date:\n return [\"date\", (a) => (!a ? null : a), (a) => a];\n case FieldType.Time:\n return [\n \"time\",\n (a) => {\n const l = a.length;\n if (l === 5) return a + \":00\";\n if (l === 8) return a;\n return undefined;\n },\n (a) => (a ? a.substring(0, 5) : \"\"),\n ];\n case FieldType.Double:\n return [\n \"number\",\n (a) => (a !== \"\" ? parseFloat(a) : null),\n (a) => (a == null ? \"\" : a),\n ];\n default:\n return [\"text\", (a) => a, (a) => a];\n }\n}\n","import { Control } from \"@react-typed-forms/core\";\nimport React, { useMemo, useState } from \"react\";\nimport {\n createDataRenderer,\n FieldOption,\n FieldType,\n rendererClass,\n} from \"@react-typed-forms/schemas\";\n\nexport interface SelectRendererOptions {\n className?: string;\n emptyText?: string;\n requiredText?: string;\n}\n\nexport function createSelectRenderer(options: SelectRendererOptions = {}) {\n return createDataRenderer(\n (props, asArray) => (\n <SelectDataRenderer\n className={rendererClass(props.className, options.className)}\n state={props.control}\n id={props.id}\n readonly={props.readonly}\n options={props.options ?? []}\n required={props.required}\n emptyText={options.emptyText}\n requiredText={options.requiredText}\n convert={createSelectConversion(props.field.type)}\n />\n ),\n {\n options: true,\n },\n );\n}\n\ntype SelectConversion = (a: any) => string | number;\n\nexport interface SelectDataRendererProps {\n id?: string;\n className?: string;\n options: FieldOption[];\n emptyText?: string;\n requiredText?: string;\n readonly: boolean;\n required: boolean;\n state: Control<any>;\n convert: SelectConversion;\n}\n\nexport function SelectDataRenderer({\n state,\n options,\n className,\n convert,\n required,\n emptyText = \"N/A\",\n requiredText = \"<please select>\",\n readonly,\n ...props\n}: SelectDataRendererProps) {\n const { value, disabled } = state;\n const [showEmpty] = useState(!required || value == null);\n const optionStringMap = useMemo(\n () => Object.fromEntries(options.map((x) => [convert(x.value), x.value])),\n [options],\n );\n const optionGroups = useMemo(\n () => new Set(options.filter((x) => x.group).map((x) => x.group!)),\n [options],\n );\n return (\n <select\n {...props}\n className={className}\n onChange={(v) => (state.value = optionStringMap[v.target.value])}\n value={convert(value)}\n disabled={disabled || readonly}\n >\n {showEmpty && (\n <option value=\"\">{required ? requiredText : emptyText}</option>\n )}\n {[...optionGroups.keys()].map((x) => (\n <optgroup key={x} label={x}>\n {options.filter((o) => o.group === x).map(renderOption)}\n </optgroup>\n ))}\n {options.filter((x) => !x.group).map(renderOption)}\n </select>\n );\n\n function renderOption(x: FieldOption, i: number) {\n return (\n <option key={i} value={convert(x.value)} disabled={!!x.disabled}>\n {x.name}\n </option>\n );\n }\n}\n\nexport function createSelectConversion(ft: string): SelectConversion {\n switch (ft) {\n case FieldType.String:\n case FieldType.Int:\n case FieldType.Double:\n return (a) => a;\n default:\n return (a) => a?.toString() ?? \"\";\n }\n}\n","import {\n Control,\n formControlProps,\n RenderArrayElements,\n useComputed,\n useControl,\n useControlEffect,\n} from \"@react-typed-forms/core\";\nimport React, { ReactNode, useEffect } from \"react\";\nimport {\n CheckEntryClasses,\n ControlLayoutProps,\n createDataRenderer,\n DataRendererProps,\n DataRenderType,\n ElementSelectedRenderOptions,\n FieldOption,\n fieldOptionAdornment,\n FormRenderer,\n HtmlInputProperties,\n rendererClass,\n} from \"@react-typed-forms/schemas\";\nimport clsx from \"clsx\";\n\nexport interface CheckRendererOptions {\n className?: string;\n entryClass?: string;\n checkClass?: string;\n labelClass?: string;\n entryWrapperClass?: string;\n selectedClass?: string;\n notSelectedClass?: string;\n}\nexport function createRadioRenderer(options: CheckRendererOptions = {}) {\n return createDataRenderer(\n (p, renderer) => (\n <CheckButtons\n classes={options}\n controlClasses={p.renderOptions as CheckEntryClasses}\n {...p}\n className={rendererClass(p.className, options.className)}\n isChecked={(control, o) => control.value == o.value}\n setChecked={(c, o) => {\n c.setTouched(true);\n c.value = o.value;\n }}\n control={p.control}\n type=\"radio\"\n entryAdornment={fieldOptionAdornment(p)}\n renderer={renderer}\n />\n ),\n {\n renderType: DataRenderType.Radio,\n },\n );\n}\n\nexport function createCheckListRenderer(options: CheckRendererOptions = {}) {\n return createDataRenderer(\n (p, renderer) => (\n <CheckButtons\n classes={options}\n controlClasses={p.renderOptions as CheckEntryClasses}\n {...p}\n className={rendererClass(p.className, options.className)}\n isChecked={(control, o) => {\n const v = control.value;\n return Array.isArray(v) ? v.includes(o.value) : false;\n }}\n setChecked={(c, o, checked) => {\n c.setTouched(true);\n c.setValue((x) => setIncluded(x ?? [], o.value, checked));\n }}\n control={p.control}\n type=\"checkbox\"\n entryAdornment={fieldOptionAdornment(p)}\n renderer={renderer}\n />\n ),\n {\n collection: true,\n renderType: DataRenderType.CheckList,\n },\n );\n}\n\nexport interface CheckButtonsProps {\n id?: string;\n className?: string;\n options?: FieldOption[] | null;\n control: Control<any>;\n classes: CheckRendererOptions;\n controlClasses?: CheckEntryClasses;\n readonly?: boolean;\n type: \"checkbox\" | \"radio\";\n isChecked: (c: Control<any>, o: FieldOption) => boolean;\n setChecked: (c: Control<any>, o: FieldOption, checked: boolean) => void;\n entryAdornment?: (c: FieldOption, i: number, selected: boolean) => ReactNode;\n}\n\nexport function CheckButtons({\n control,\n options,\n readonly,\n className,\n id,\n type,\n isChecked,\n setChecked,\n entryAdornment,\n classes,\n controlClasses = {},\n renderer,\n}: CheckButtonsProps & { renderer: FormRenderer }) {\n const { Button, Input, Label, Div } = renderer.html;\n const { disabled } = control;\n const name = \"r\" + control.uniqueId;\n return (\n <Div className={className} id={id}>\n <RenderArrayElements array={options?.filter((x) => x.value != null)}>\n {(o, i) => {\n const checked = useComputed(() => isChecked(control, o)).value;\n const selOrUnsel = checked\n ? rendererClass(\n controlClasses?.selectedClass,\n classes.selectedClass,\n )\n : rendererClass(\n controlClasses?.notSelectedClass,\n classes.notSelectedClass,\n );\n return (\n <Button\n className={clsx(\n rendererClass(\n controlClasses?.entryWrapperClass,\n classes.entryWrapperClass,\n ),\n selOrUnsel,\n )}\n onClick={() => !readonly && setChecked(control, o, !checked)}\n >\n <Div className={classes.entryClass}>\n <Input\n id={name + \"_\" + i}\n className={classes.checkClass}\n type={type}\n name={name}\n readOnly={readonly}\n disabled={disabled}\n checked={checked}\n onChangeChecked={(x) => {\n !readonly && setChecked(control, o, x);\n }}\n />\n <Label className={classes.labelClass} htmlFor={name + \"_\" + i}>\n {o.name}\n </Label>\n </Div>\n {entryAdornment?.(o, i, checked)}\n </Button>\n );\n }}\n </RenderArrayElements>\n </Div>\n );\n}\n\nexport function setIncluded<A>(array: A[], elem: A, included: boolean): A[] {\n const already = array.includes(elem);\n if (included === already) {\n return array;\n }\n if (included) {\n return [...array, elem];\n }\n return array.filter((e) => e !== elem);\n}\n\nexport function createCheckboxRenderer(options: CheckRendererOptions = {}) {\n return createDataRenderer(\n (props, renderer) => (p) => ({\n ...p,\n label: undefined,\n children: (\n <CheckBox p={p} renderer={renderer} options={options} props={props} />\n ),\n }),\n { renderType: DataRenderType.Checkbox },\n );\n}\n\nexport function createElementSelectedRenderer(\n options: CheckRendererOptions = {},\n) {\n return createDataRenderer(\n (props, renderer) => (p) => ({\n ...p,\n label: undefined,\n children: (\n <CheckBoxSelected\n p={p}\n renderer={renderer}\n options={options}\n props={props}\n />\n ),\n }),\n {\n renderType: DataRenderType.ElementSelected,\n },\n );\n}\n\nfunction CheckBoxSelected({\n p,\n props,\n renderer,\n options,\n}: {\n p: ControlLayoutProps;\n props: DataRendererProps;\n renderer: FormRenderer;\n options: CheckRendererOptions;\n}) {\n const { Div } = renderer.html;\n const elementValue = useControl();\n useEffect(() => {\n props.runExpression(\n elementValue,\n (props.renderOptions as ElementSelectedRenderOptions).elementExpression,\n (v) => (elementValue.value = v as any),\n );\n });\n const isSelected = useComputed(\n () =>\n props.control\n .as<any[] | undefined>()\n .value?.includes(elementValue.current.value) ?? false,\n );\n const selControl = useControl(() => isSelected.current.value);\n selControl.value = isSelected.value;\n useControlEffect(\n () => selControl.value,\n (v) => {\n props.control\n .as<any[] | undefined>()\n .setValue((x) => setIncluded(x ?? [], elementValue.value, v));\n },\n );\n return (\n <Div className={rendererClass(props.className, options.entryClass)}>\n <Fcheckbox\n id={props.id}\n control={selControl}\n style={props.style}\n className={options.checkClass}\n renderer={renderer}\n />\n {p.label && renderer.renderLabel(p.label, undefined, undefined)}\n </Div>\n );\n}\n\nfunction CheckBox({\n p,\n props,\n renderer,\n options,\n}: {\n p: ControlLayoutProps;\n props: DataRendererProps;\n renderer: FormRenderer;\n options: CheckRendererOptions;\n}) {\n const { Div } = renderer.html;\n return (\n <Div className={rendererClass(props.className, options.entryClass)}>\n <Fcheckbox\n id={props.id}\n control={props.control.as()}\n style={props.style}\n className={options.checkClass}\n renderer={renderer}\n />\n {p.label && renderer.renderLabel(p.label, undefined, undefined)}\n </Div>\n );\n}\n\nexport function Fcheckbox({\n control,\n type = \"checkbox\",\n notValue = false,\n renderer,\n ...others\n}: HtmlInputProperties & {\n control: Control<boolean | null | undefined>;\n renderer: FormRenderer;\n notValue?: boolean;\n}) {\n const { Input } = renderer.html;\n const { value, onChange, errorText, ref, ...theseProps } =\n formControlProps(control);\n return (\n <Input\n {...theseProps}\n checked={!!value !== notValue}\n inputRef={(r) => (control.element = r)}\n onChangeChecked={(e) => {\n control.touched = true;\n control.value = e !== notValue;\n }}\n type={type}\n {...others}\n />\n );\n}\n","import {\n createLayoutRenderer,\n FormRenderer,\n RenderedLayout,\n rendererClass,\n renderLayoutParts,\n} from \"@react-typed-forms/schemas\";\nimport React, { ReactNode, Fragment } from \"react\";\n\nexport interface DefaultLayoutRendererOptions {\n className?: string;\n errorClass?: string;\n renderError?: (errorText: string | null | undefined) => ReactNode;\n}\n\nexport function createDefaultLayoutRenderer(\n options: DefaultLayoutRendererOptions = {},\n) {\n return createLayoutRenderer((props, renderers) => {\n const layout = renderLayoutParts(props, renderers);\n return {\n children: layout.wrapLayout(\n <DefaultLayout layout={layout} {...options} renderer={renderers} />,\n ),\n inline: layout.inline,\n className: rendererClass(layout.className, options.className),\n style: layout.style,\n divRef: (e) =>\n e && props.errorControl\n ? (props.errorControl.meta.scrollElement = e)\n : undefined,\n };\n });\n}\n\nexport function DefaultLayout({\n errorClass,\n renderer: {\n html: { Div, Span },\n },\n renderError = (e) =>\n e && (\n <Div>\n <Span className={errorClass}>{e}</Span>\n </Div>\n ),\n layout: { controlEnd, controlStart, label, children, errorControl },\n}: DefaultLayoutRendererOptions & {\n layout: RenderedLayout;\n renderer: FormRenderer;\n}) {\n const ec = errorControl;\n const errorText = ec && ec.touched ? ec.error : undefined;\n return (\n <>\n {label}\n {controlStart}\n {children}\n {renderError(errorText)}\n {controlEnd}\n </>\n );\n}\n","import React from \"react\";\nimport {\n ControlState,\n FormRenderer,\n SchemaDataNode,\n SchemaInterface,\n} from \"@react-typed-forms/schemas\";\n\nexport function DefaultDisplayOnly({\n dataNode,\n className,\n emptyText,\n schemaInterface,\n style,\n renderer,\n textClass,\n inline,\n state,\n}: {\n dataNode: SchemaDataNode;\n schemaInterface: SchemaInterface;\n className?: string;\n textClass?: string;\n style?: React.CSSProperties;\n inline: boolean;\n renderer: FormRenderer;\n emptyText?: string | null;\n state: ControlState;\n}) {\n const text =\n state.display != null\n ? state.display\n : ((schemaInterface.isEmptyValue(\n dataNode.schema.field,\n dataNode.control.value,\n )\n ? emptyText\n : schemaInterface.textValueForData(dataNode)) ?? \"\");\n const { Div } = renderer.html;\n return (\n <Div\n style={style}\n className={className}\n textClass={textClass}\n text={text}\n inline={inline}\n />\n );\n}\n","import React, { CSSProperties, ReactElement, Fragment } from \"react\";\nimport { Control, useControl } from \"@react-typed-forms/core\";\nimport clsx from \"clsx\";\nimport { DefaultAccordionRendererOptions } from \"../createDefaultRenderers\";\nimport {\n AccordionAdornment,\n ControlDataContext,\n FormRenderer,\n} from \"@react-typed-forms/schemas\";\n\nexport function DefaultAccordion({\n children,\n accordion,\n contentStyle,\n contentClassName,\n designMode,\n iconOpen,\n iconClosed,\n className,\n renderTitle = (t) => t,\n renderToggler,\n renderers,\n titleClass,\n useCss,\n dataContext,\n}: {\n children: ReactElement;\n accordion: Partial<AccordionAdornment>;\n contentStyle?: CSSProperties;\n contentClassName?: string;\n designMode?: boolean;\n renderers: FormRenderer;\n dataContext: ControlDataContext;\n} & DefaultAccordionRendererOptions) {\n const { Button, I, Div, Label } = renderers.html;\n const dataControl = (dataContext.dataNode ?? dataContext.parentNode).control;\n const open = useControl(!!accordion.defaultExpanded);\n if (dataControl && !dataControl.meta.accordionState) {\n dataControl.meta.accordionState = open;\n }\n const isOpen = open.value;\n const fullContentStyle =\n isOpen || designMode ? contentStyle : { ...contentStyle, display: \"none\" };\n const title = renderers.renderLabelText(renderTitle(accordion.title, open));\n const currentIcon = isOpen ? iconOpen : iconClosed;\n const toggler = renderToggler ? (\n renderToggler(open, title)\n ) : (\n <Button className={className} onClick={() => open.setValue((x) => !x)}>\n <Label className={titleClass}>{title}</Label>\n {currentIcon && (\n <I iconLibrary={currentIcon.library} iconName={currentIcon.name} />\n )}\n </Button>\n );\n\n return (\n <>\n {toggler}\n {(useCss || isOpen || designMode) && (\n <Div style={fullContentStyle} className={contentClassName}>\n {children}\n </Div>\n )}\n </>\n );\n}\n\nexport function getAccordionState(\n c: Control<unknown>,\n): Control<boolean> | undefined {\n return c.meta.accordionState;\n}\n","import {\n ControlDataContext,\n FormNode,\n ParentRendererProps,\n} from \"@react-typed-forms/schemas\";\nimport { ReactNode } from \"react\";\n\ninterface VisibleChildrenRendererProps<A> {\n parent: ParentRendererProps;\n parentFormNode: FormNode;\n dataContext: ControlDataContext;\n props: A;\n render: (\n props: A,\n isChildVisible: (childIndex: number) => boolean,\n ) => ReactNode;\n}\n\n/**\n * @trackControls\n */\nexport function VisibleChildrenRenderer<A>(\n props: VisibleChildrenRendererProps<A>,\n) {\n const childStates = props.parentFormNode\n .getChildNodes()\n .map((x) => props.parent.getChildState(x));\n return props.render(props.props, (i) => !childStates[i].hidden);\n}\n","import {\n createGroupRenderer,\n FormNode,\n GroupRendererProps,\n GroupRenderType,\n rendererClass,\n TabsRenderOptions,\n} from \"@react-typed-forms/schemas\";\nimport React, { Fragment } from \"react\";\nimport clsx from \"clsx\";\nimport { VisibleChildrenRenderer } from \"./VisibleChildrenRenderer\";\n\nexport interface DefaultTabsRenderOptions {\n className?: string;\n tabListClass?: string;\n tabClass?: string;\n labelClass?: string;\n activeClass?: string;\n inactiveClass?: string;\n contentClass?: string;\n}\n\nexport function createTabsRenderer(options: DefaultTabsRenderOptions = {}) {\n return createGroupRenderer(\n (p, renderer) => {\n return (\n <VisibleChildrenRenderer\n render={renderAllTabs}\n dataContext={p.dataContext}\n parentFormNode={p.formNode}\n parent={p}\n props={{\n groupProps: p,\n tabOptions: p.renderOptions as TabsRenderOptions,\n options: options,\n }}\n />\n );\n },\n {\n renderType: GroupRenderType.Tabs,\n },\n );\n\n function renderAllTabs(\n {\n options,\n groupProps: { designMode, formNode, className, renderChild, state },\n tabOptions,\n }: {\n options: DefaultTabsRenderOptions;\n groupProps: GroupRendererProps;\n tabOptions: TabsRenderOptions;\n },\n isVisible: (i: number) => boolean,\n ) {\n const tabIndex = state.meta.fields.tabIndex.as<number | undefined>();\n const {\n tabClass,\n labelClass,\n tabListClass,\n inactiveClass,\n activeClass,\n contentClass,\n } = options;\n const currentTab = tabIndex.value ?? 0;\n return designMode ? (\n <>{formNode.getChildNodes().map((x, i) => renderTabs([x], i))}</>\n ) : (\n renderTabs(\n formNode.getChildNodes().filter((x, i) => isVisible(i)),\n 0,\n )\n );\n\n function renderTabs(tabs: FormNode[], key: number) {\n return (\n <div key={key} className={rendererClass(className, options.className)}>\n <ul className={rendererClass(null, tabListClass)}>\n {tabs.map((x, i) => (\n <li\n key={i}\n className={rendererClass(null, tabClass)}\n onClick={() => (tabIndex.value = i)}\n >\n <span\n className={rendererClass(\n null,\n clsx(\n labelClass,\n i == currentTab ? activeClass : inactiveClass,\n ),\n )}\n >\n {x.definition.title ? x.definition.title : \"<untitled>\"}\n </span>\n </li>\n ))}\n </ul>\n <div className={rendererClass(tabOptions.contentClass, contentClass)}>\n {renderChild(currentTab, tabs[currentTab])}\n </div>\n </div>\n );\n }\n }\n}\n","import {\n createGroupRenderer,\n FormRenderer,\n GridRenderer,\n GroupRendererProps,\n GroupRenderType,\n rendererClass,\n} from \"@react-typed-forms/schemas\";\nimport { VisibleChildrenRenderer } from \"./VisibleChildrenRenderer\";\nimport { ReactNode } from \"react\";\n\nexport interface DefaultGridRenderOptions {\n className?: string;\n defaultColumns?: number;\n rowClass?: string;\n}\n\nexport function createGridRenderer(options?: DefaultGridRenderOptions) {\n return createGroupRenderer(\n (props, formRenderer) => (\n <VisibleChildrenRenderer\n props={{ ...props, formRenderer, defaultOptions: options }}\n render={renderGrid}\n parent={props}\n dataContext={props.dataContext}\n parentFormNode={props.formNode}\n />\n ),\n {\n renderType: GroupRenderType.Grid,\n },\n );\n\n function renderGrid(\n props: GroupRendererProps & {\n formRenderer: FormRenderer;\n defaultOptions?: DefaultGridRenderOptions;\n },\n isChildVisible: (i: number) => boolean,\n ) {\n const filteredChildren = props.formNode\n .getChildNodes()\n .filter((x, i) => isChildVisible(i));\n const { Div } = props.formRenderer.html;\n const defaults = props.defaultOptions ?? {};\n const gridOptions = props.renderOptions as GridRenderer;\n const numColumns = gridOptions.columns ?? defaults.defaultColumns ?? 2;\n const allChildren = filteredChildren.map((x, i) => props.renderChild(i, x));\n\n // split into numColumns items wrapped a div each\n const rows: ReactNode[][] = [];\n for (let i = 0; i < allChildren.length; i += numColumns) {\n rows.push(allChildren.slice(i, i + numColumns));\n }\n return (\n <Div className={rendererClass(props.className, defaults.className)}>\n {rows.map((row, rowIndex) => (\n <Div\n key={rowIndex}\n className={rendererClass(gridOptions.rowClass, defaults.rowClass)}\n >\n {row}\n </Div>\n ))}\n </Div>\n );\n }\n}\n","import {\n ActionRendererProps,\n createAction,\n createGroupRenderer,\n deepMerge,\n fontAwesomeIcon,\n FormRenderer,\n GroupRendererProps,\n GroupRenderType,\n IconPlacement,\n IconReference,\n rendererClass,\n validationVisitor,\n visitFormDataInContext,\n} from \"@react-typed-forms/schemas\";\nimport { VisibleChildrenRenderer } from \"./VisibleChildrenRenderer\";\nimport { useComputed, useControl } from \"@react-typed-forms/core\";\nimport { Fragment, ReactNode } from \"react\";\n\nexport interface CustomNavigationProps {\n className?: string;\n page: number;\n totalPages: number;\n next: ActionRendererProps;\n prev: ActionRendererProps;\n formRenderer: FormRenderer;\n validatePage: () => Promise<boolean>;\n}\n\nexport interface DefaultWizardRenderOptions {\n classes?: {\n className?: string;\n navContainerClass?: string;\n contentClass?: string;\n };\n actions?: {\n nextText?: string;\n nextIcon?: IconReference;\n nextValidate?: boolean;\n prevText?: string;\n prevIcon?: IconReference;\n prevValidate?: boolean;\n };\n renderNavigation?: (props: CustomNavigationProps) => ReactNode;\n}\n\nconst defaultOptions = {\n classes: {\n className: undefined,\n contentClass: \"min-h-96 overflow-auto\",\n navContainerClass: \"flex justify-between gap-4 my-2\",\n },\n actions: {\n nextText: \"Next\",\n nextIcon: fontAwesomeIcon(\"chevron-right\"),\n nextValidate: true,\n prevText: \"Prev\",\n prevIcon: fontAwesomeIcon(\"chevron-left\"),\n prevValidate: false,\n },\n renderNavigation: defaultNavigationRender,\n} satisfies DefaultWizardRenderOptions;\n\nfunction defaultNavigationRender({\n formRenderer,\n prev,\n next,\n className,\n}: CustomNavigationProps) {\n {\n const {\n html: { Div },\n renderAction,\n } = formRenderer;\n return (\n <Div className={className}>\n {renderAction(prev)}\n {renderAction(next)}\n </Div>\n );\n }\n}\n\nexport function createWizardRenderer(options?: DefaultWizardRenderOptions) {\n return createGroupRenderer(\n (props, formRenderer) => (\n <VisibleChildrenRenderer\n props={{ ...props, formRenderer, defaultOptions: options }}\n render={renderWizard}\n parent={props}\n dataContext={props.dataContext}\n parentFormNode={props.formNode}\n />\n ),\n {\n renderType: GroupRenderType.Wizard,\n },\n );\n}\n\nfunction renderWizard(\n props: GroupRendererProps & {\n formRenderer: FormRenderer;\n defaultOptions?: DefaultWizardRenderOptions;\n },\n isChildVisible: (i: number) => boolean,\n) {\n const mergedOptions = deepMerge(\n (props.defaultOptions ?? {}) as typeof defaultOptions,\n defaultOptions,\n );\n const {\n classes: { className, contentClass, navContainerClass },\n actions: {\n nextText,\n nextIcon,\n prevText,\n prevIcon,\n nextValidate,\n prevValidate,\n },\n renderNavigation,\n } = mergedOptions;\n const {\n html: { Div },\n } = props.formRenderer;\n const children = props.formNode.getChildNodes();\n const allVisible = children.map((_, i) => isChildVisible(i));\n const page = useControl(0);\n const currentPage = page.value;\n const isValid = useComputed(() => isPageValid());\n\n const next = createAction(\"nav\", () => nav(1, nextValidate), nextText, {\n hidden: !props.designMode && nextVisibleInDirection(1) == null,\n disabled: !isValid.value,\n icon: nextIcon,\n iconPlacement: IconPlacement.AfterText,\n });\n\n const prev = createAction(\"nav\", () => nav(-1, prevValidate), prevText, {\n disabled: !props.designMode && nextVisibleInDirection(-1) == null,\n icon: prevIcon,\n });\n const navElement = renderNavigation({\n formRenderer: props.formRenderer,\n page: countVisibleUntil(currentPage),\n totalPages: countVisibleUntil(children.length),\n prev,\n next: next,\n className: navContainerClass,\n validatePage: async () => validatePage(),\n });\n const content = props.designMode ? (\n <Div>{children.map((child, i) => props.renderChild(i, child))}</Div>\n ) : currentPage < children.length ? (\n <Div className={contentClass}>\n {props.renderChild(currentPage, children[currentPage])}\n </Div>\n ) : (\n <Fragment />\n );\n\n return (\n <Div className={rendererClass(props.className, className)}>\n {content}\n {navElement}\n </Div>\n );\n\n function countVisibleUntil(untilPage: number) {\n let count = 0;\n for (let i = 0; i < untilPage && i < allVisible.length; i++) {\n if (allVisible[i]) {\n count++;\n }\n }\n return count;\n }\n\n function nav(dir: number, validate: boolean) {\n if (validate && !validatePage()) {\n return;\n }\n const next = nextVisibleInDirection(dir);\n if (next != null) {\n page.value = next;\n }\n }\n\n function nextVisibleInDirection(dir: number): number | null {\n let next = currentPage + dir;\n while (next >= 0 && next < children.length) {\n if (allVisible[next]) {\n return next;\n }\n next += dir;\n }\n return null;\n }\n\n function validatePage() {\n const pageNode = children[currentPage];\n let hasErrors = false;\n visitFormDataInContext(\n props.dataContext.parentNode,\n pageNode,\n validationVisitor(() => {\n hasErrors = true;\n }),\n );\n return !hasErrors;\n }\n\n function isPageValid() {\n const pageNode = children[currentPage];\n let hasErrors = false;\n visitFormDataInContext(props.dataContext.parentNode, pageNode, (c) => {\n if (!c.control.valid) hasErrors = true;\n });\n return !hasErrors;\n }\n}\n","import {\n ActionStyle,\n ControlActionHandler,\n createAction,\n createGroupRenderer,\n deepMerge,\n DialogRenderOptions,\n FormRenderer,\n GroupRendererProps,\n GroupRenderType,\n rendererClass,\n} from \"@react-typed-forms/schemas\";\nimport { createOverlayState, Dialog, Modal } from \"@astroapps/aria-base\";\nimport { useControl } from \"@react-typed-forms/core\";\nimport { Fragment } from \"react\";\n\nexport interface DefaultDialogRenderOptions {\n classes?: {\n className?: string;\n titleClass?: string;\n containerClass?: string;\n };\n}\n\nexport const defaultDialogOptions = {\n classes: {\n className: \"\",\n titleClass: \"text-2xl font-bold\",\n containerClass:\n \"relative m-4 p-4 min-w-[400px] max-w-[80%] rounded-lg bg-white shadow-sm\",\n },\n} satisfies DefaultDialogRenderOptions;\n\nexport function createDialogRenderer(options?: DefaultDialogRenderOptions) {\n return createGroupRenderer(\n (props, renderer) => (\n <DefaultDialogRenderer\n props={props}\n options={options}\n renderer={renderer}\n renderOptions={props.renderOptions as DialogRenderOptions}\n />\n ),\n {\n renderType: GroupRenderType.Dialog,\n },\n );\n}\n\nexport function DefaultDialogRenderer({\n props,\n renderOptions,\n options,\n renderer,\n}: {\n props: GroupRendererProps;\n options?: DefaultDialogRenderOptions;\n renderOptions: DialogRenderOptions;\n renderer: FormRenderer;\n}) {\n const {\n classes: { titleClass, className, containerClass },\n } = deepMerge(options as typeof defaultDialogOptions, defaultDialogOptions);\n const open = useControl(false);\n const overlayState = createOverlayState(open);\n\n const actionOnClick: ControlActionHandler = (action) => {\n switch (action) {\n case \"closeDialog\":\n return () => overlayState.close();\n case \"openDialog\":\n return () => overlayState.open();\n }\n };\n\n const triggerChildren = props.formNode\n .getChildNodes()\n .filter((x) => x.definition.placement === \"trigger\");\n const dialogContent = (\n <Dialog\n title={renderOptions.title}\n titleClass={titleClass}\n className={rendererClass(props.className, className)}\n >\n {props.formNode\n .getChildNodes()\n .filter(\n (x) => !x.definition.placement || x.definition.placement === \"dialog\",\n )\n .map((x, i) => props.renderChild(i, x, { actionOnClick }))}\n </Dialog>\n );\n\n return (\n <>\n {triggerChildren.map((x, i) =>\n props.renderChild(i, x, { actionOnClick }),\n )}\n {props.designMode\n ? designContent()\n : open.value && (\n <Modal\n state={overlayState}\n isDismissable\n containerClass={containerClass}\n >\n {dialogContent}\n </Modal>\n )}\n </>\n );\n\n function designContent() {\n return (\n <>\n <div onClickCapture={() => overlayState.toggle()}>\n {renderer.renderAction(\n createAction(\n \"Toggle Dialog\",\n () => {},\n open.value ? \"Hide Content\" : \"Show Content\",\n { actionStyle: ActionStyle.Link },\n ),\n )}\n </div>\n {open.value && dialogContent}\n </>\n );\n }\n}\n","import {\n ControlLayoutProps,\n FlexRenderer,\n FormRenderer,\n GroupRendererProps,\n GroupRendererRegistration,\n GroupRenderType,\n isDialogRenderer,\n isFlexRenderer,\n isGridRenderer,\n isInlineRenderer,\n isSelectChildRenderer,\n isTabsRenderer,\n isWizardRenderer,\n rendererClass,\n SelectChildRenderer,\n useExpression,\n} from \"@react-typed-forms/schemas\";\nimport clsx from \"clsx\";\nimport React, { CSSProperties, ReactElement } from \"react\";\nimport { createTabsRenderer, DefaultTabsRenderOptions } from \"./TabsRenderer\";\nimport { createGridRenderer, DefaultGridRenderOptions } from \"./GridRenderer\";\nimport {\n createWizardRenderer,\n DefaultWizardRenderOptions,\n} from \"./DefaultWizardRenderer\";\nimport {\n createDialogRenderer,\n DefaultDialogRenderOptions,\n} from \"./DefaultDialogRenderer\";\n\ninterface StyleProps {\n className?: string;\n style?: CSSProperties;\n}\n\nexport interface DefaultGroupRendererOptions {\n className?: string;\n standardClassName?: string;\n grid?: DefaultGridRenderOptions;\n flexClassName?: string;\n defaultFlexGap?: string;\n inlineClass?: string;\n tabs?: DefaultTabsRenderOptions;\n wizard?: DefaultWizardRenderOptions;\n dialog?: DefaultDialogRenderOptions;\n}\n\nexport function createDefaultGroupRenderer(\n options?: DefaultGroupRendererOptions,\n): GroupRendererRegistration {\n const gridRenderer = createGridRenderer(options?.grid);\n const tabsRenderer = createTabsRenderer(options?.tabs);\n const wizardRenderer = createWizardRenderer(options?.wizard);\n const dialogRenderer = createDialogRenderer(options?.dialog);\n const {\n className,\n standardClassName,\n flexClassName,\n inlineClass,\n defaultFlexGap,\n } = options ?? {};\n\n function flexStyles(options: FlexRenderer): StyleProps {\n return {\n className: flexClassName,\n style: {\n display: \"flex\",\n gap: options.gap ? options.gap : defaultFlexGap,\n flexDirection: options.direction\n ? (options.direction as any)\n : undefined,\n },\n };\n }\n\n function render(props: GroupRendererProps, renderer: FormRenderer) {\n const { renderChild, renderOptions, formNode } = props;\n if (isTabsRenderer(renderOptions))\n return tabsRenderer.render(props, renderer);\n if (isGridRenderer(renderOptions))\n return gridRenderer.render(props, renderer);\n if (isWizardRenderer(renderOptions))\n return wizardRenderer.render(props, renderer);\n if (isDialogRenderer(renderOptions))\n return dialogRenderer.render(props, renderer);\n if (isSelectChildRenderer(renderOptions) && !props.designMode) {\n return (\n <SelectChildGroupRenderer {...props} renderOptions={renderOptions} />\n );\n }\n\n const { style, className: gcn } = isFlexRenderer(renderOptions)\n ? flexStyles(renderOptions)\n : isInlineRenderer(renderOptions)\n ? ({ className: inlineClass } as StyleProps)\n : ({ className: standardClassName } as StyleProps);\n const { Div } = renderer.html;\n const inline = renderOptions.type == GroupRenderType.Inline;\n const children = formNode.getChildNodes().map((c, i) =>\n renderChild(i, c, {\n inline,\n }),\n );\n return (\n <Div\n className={rendererClass(props.className, clsx(className, gcn))}\n textClass={props.textClass}\n style={style}\n inline={inline}\n >\n {children}\n </Div>\n );\n }\n\n function renderLayout(\n props: GroupRendererProps,\n renderer: FormRenderer,\n ): ReactElement | ((layout: ControlLayoutProps) => ControlLayoutProps) {\n if (props.renderOptions.type === GroupRenderType.Contents) {\n const { formNode, renderChild } = props;\n const children = formNode\n .getChildNodes()\n .map((c, i) => renderChild(i, c));\n return (layout) => {\n return {\n ...layout,\n inline: true,\n children,\n };\n };\n }\n return render(props, renderer);\n }\n\n return { type: \"group\", render: renderLayout };\n}\n\ntype SelectChildProps = Pick<\n GroupRendererProps,\n \"runExpression\" | \"dataContext\" | \"formNode\" | \"renderChild\"\n> & {\n renderOptions: SelectChildRenderer;\n};\nfunction SelectChildGroupRenderer(props: SelectChildProps) {\n const { runExpression, renderOptions } = props;\n const ctrl = useExpression(\n undefined,\n runExpression,\n renderOptions?.childIndexExpression,\n (x) => (typeof x == \"string\" ? parseInt(x) : x),\n );\n const childIndex = ctrl?.value;\n const childDefinitions = props.formNode.getChildNodes();\n return (\n <div>\n {typeof childIndex === \"number\" &&\n childIndex < childDefinitions.length &&\n childIndex >= 0 &&\n props.renderChild(childIndex, childDefinitions[childIndex])}\n </div>\n );\n}\n","import {\n createVisibilityRenderer,\n VisibilityRendererProps,\n} from \"@react-typed-forms/schemas\";\nimport { FormRenderer } from \"@react-typed-forms/schemas/lib\";\nimport React, { Fragment, useEffect } from \"react\";\n\nexport function createDefaultVisibilityRenderer() {\n return createVisibilityRenderer((props, renderer) => (\n <DefaultVisibility {...props} renderer={renderer} />\n ));\n}\n\nexport function DefaultVisibility({\n visibility,\n children,\n className,\n style,\n divRef,\n renderer,\n inline,\n}: VisibilityRendererProps & { renderer: FormRenderer }) {\n const v = visibility.value;\n useEffect(() => {\n if (v) {\n visibility.setValue((ex) => ({ visible: v.visible, showing: v.visible }));\n }\n }, [v?.visible]);\n const { Div } = renderer.html;\n if (inline) return v?.visible ? children : undefined;\n return v?.visible ? (\n <Div\n className={className}\n style={style}\n nativeRef={divRef}\n children={children}\n />\n ) : (\n <></>\n );\n}\n","import {\n Control,\n delayedValue,\n trackedValue,\n useComputed,\n} from \"@react-typed-forms/core\";\nimport React from \"react\";\nimport {\n coerceToString,\n ControlDataContext,\n createDataRenderer,\n DataRenderType,\n ExpressionType,\n FormContextData,\n getJsonPath,\n JsonataExpression,\n JsonataRenderOptions,\n rendererClass,\n RunExpression,\n SchemaDataNode,\n useExpression,\n} from \"@react-typed-forms/schemas\";\n\nexport function createJsonataRenderer(className?: string) {\n return createDataRenderer(\n (p) => (\n <JsonataRenderer\n renderOptions={p.renderOptions as JsonataRenderOptions}\n className={rendererClass(p.className, className)}\n dataNode={p.dataNode}\n dataContext={p.dataContext}\n control={p.control}\n readonly={p.readonly}\n runExpression={p.runExpression}\n />\n ),\n { renderType: DataRenderType.Jsonata },\n );\n}\n\nexport function JsonataRenderer({\n control,\n renderOptions,\n readonly,\n className,\n dataContext,\n dataNode,\n runExpression,\n}: {\n control: Control<any>;\n renderOptions: JsonataRenderOptions;\n className?: string;\n dataContext: ControlDataContext;\n dataNode: SchemaDataNode;\n readonly: boolean;\n runExpression: RunExpression;\n}) {\n const sdn = dataNode.elementIndex != null ? dataNode : dataContext.parentNode;\n const bindings = useComputed<Record<string, any>>(() => ({\n ...dataContext.variables,\n value: control.value,\n readonly,\n disabled: control.disabled,\n dataPath: getJsonPath(dataNode),\n }));\n const rendered = useExpression(\n \"\",\n runExpression,\n {\n type: ExpressionType.Jsonata,\n expression: renderOptions.expression,\n } as JsonataExpression,\n coerceToString,\n bindings,\n );\n return (\n <div\n className={className}\n dangerouslySetInnerHTML={{ __html: rendered.value }}\n />\n );\n}\n","import {\n createDataRenderer,\n DataRenderType,\n FieldType,\n getLastDefinedValue,\n getNullToggler,\n} from \"@react-typed-forms/schemas\";\n\nexport function createNullToggleRenderer() {\n return createDataRenderer(\n ({ control, field, renderOptions, ...props }, renderers) => {\n const lastDefined = getLastDefinedValue(control);\n if (lastDefined.current.value == null)\n lastDefined.value = props.definition.defaultValue;\n const nullControl = getNullToggler(control);\n nullControl.disabled = props.readonly;\n return (layout) => {\n return renderers.renderData({\n ...props,\n control: nullControl,\n field: { ...field, type: FieldType.Bool },\n renderOptions: { type: DataRenderType.Checkbox },\n })(layout);\n };\n },\n );\n}\n","import clsx from \"clsx\";\nimport React, { Fragment, ReactNode } from \"react\";\nimport { RenderElements } from \"@react-typed-forms/core\";\nimport {\n ActionRendererProps,\n applyArrayLengthRestrictions,\n ArrayActionOptions,\n ArrayRendererProps,\n ArrayRendererRegistration,\n ArrayRenderOptions,\n ControlDataContext,\n ControlDefinitionType,\n createArrayActions,\n createDataRenderer,\n DataRendererProps,\n DataRendererRegistration,\n DataRenderType,\n FormNode,\n FormRenderer,\n getLengthRestrictions,\n GroupRenderType,\n HtmlComponents,\n isArrayRenderer,\n isCompoundField,\n mergeObjects,\n SchemaDataNode,\n} from \"@react-typed-forms/schemas\";\n\nexport function createDefaultArrayDataRenderer(\n defaultActions?: ArrayActionOptions,\n): DataRendererRegistration {\n return createDataRenderer(\n (props, renderers) => {\n return (\n <DataArrayRenderer\n dataProps={props}\n renderers={renderers}\n defaultActions={defaultActions}\n />\n );\n },\n { renderType: DataRenderType.Array, collection: true },\n );\n}\n\n/**\n * @trackControls\n */\nexport function DataArrayRenderer({\n dataProps,\n renderers,\n defaultActions,\n}: {\n renderers: FormRenderer;\n dataProps: DataRendererProps;\n defaultActions?: ArrayActionOptions;\n}) {\n const {\n renderOptions,\n control,\n field,\n readonly,\n designMode,\n required,\n renderChild,\n definition,\n className,\n style,\n dataContext,\n formNode,\n getChildState,\n } = dataProps;\n\n const { addText, noAdd, noRemove, noReorder, removeText, editExternal } =\n mergeObjects(\n isArrayRenderer(renderOptions)\n ? renderOptions\n : ({} as ArrayRenderOptions),\n defaultActions as ArrayRenderOptions,\n );\n\n const childDefs = formNode.getResolvedChildren();\n const renderAsElement = !isCompoundField(field);\n const defaultChildDef = {\n type: ControlDefinitionType.Data,\n field: \".\",\n renderOptions: { type: DataRenderType.Standard },\n hideTitle: true,\n };\n const childDef = {\n type: ControlDefinitionType.Group,\n groupOptions: { type: GroupRenderType.Standard, hideTitle: true },\n children:\n renderAsElement && childDefs.length == 0 ? [defaultChildDef] : childDefs,\n };\n const childNode: FormNode = formNode.createChildNode(\"child\", childDef);\n const childNodes = childNode.getChildNodes();\n\n const arrayProps = {\n ...createArrayActions(control.as(), field, {\n addText,\n removeText,\n noAdd,\n noRemove,\n readonly,\n disabled: control.disabled,\n designMode,\n editExternal,\n }),\n required,\n renderElement: (i, wrap) => (\n <RenderEntry\n index={i}\n renderChildElement={renderChildElement}\n dataContext={dataContext}\n wrap={wrap}\n isChildHidden={(dataNode) =>\n childNodes.every((x) => getChildState(x, dataNode).hidden)\n }\n />\n ),\n className: className ? className : undefined,\n style,\n ...getLengthRestrictions(definition),\n } satisfies ArrayRendererProps;\n\n return renderers.renderArray(arrayProps);\n\n function renderChildElement(i: number, elementNode: SchemaDataNode) {\n return renderChild(elementNode.control.uniqueId, childNode, {\n parentDataNode: elementNode,\n });\n }\n}\n\n/**\n * @trackControls\n */\nfunction RenderEntry({\n index: i,\n renderChildElement,\n wrap,\n isChildHidden,\n dataContext,\n}: {\n index: number;\n renderChildElement: (i: number, element: SchemaDataNode) => ReactNode;\n dataContext: ControlDataContext;\n wrap: (n: ReactNode) => ReactNode;\n isChildHidden: (dataNode: SchemaDataNode) => boolean;\n}) {\n const elementNode = dataContext.dataNode!.getChildElement(i);\n if (isChildHidden(elementNode)) return undefined;\n return wrap(renderChildElement(i, elementNode));\n}\n\nexport interface DefaultArrayRendererOptions extends ArrayActionOptions {\n className?: string;\n removableClass?: string;\n childClass?: string;\n removableChildClass?: string;\n removeActionClass?: string;\n addActionClass?: string;\n}\n\nexport function createDefaultArrayRenderer(\n options?: DefaultArrayRendererOptions,\n): ArrayRendererRegistration {\n return {\n render: (props, { renderAction, html }) => (\n <DefaultArrayRenderer\n {...props}\n {...options}\n renderAction={renderAction}\n html={html}\n />\n ),\n type: \"array\",\n };\n}\n\nexport interface DefaultArrayRendererProps\n extends DefaultArrayRendererOptions,\n ArrayRendererProps {\n renderAction: (props: ActionRendererProps) => ReactNode;\n html: HtmlComponents;\n}\n\nexport function DefaultArrayRenderer(props: DefaultArrayRendererProps) {\n const {\n renderElement,\n className,\n removableClass,\n childClass,\n removableChildClass,\n removeActionClass,\n addActionClass,\n arrayControl,\n renderAction,\n style,\n editAction,\n html: { Div },\n } = props;\n const { addAction, removeAction } = applyArrayLengthRestrictions(props);\n return (\n <Div style={style}>\n <Div className={clsx(className, removeAction && removableClass)}>\n <RenderElements control={arrayControl}>\n {(_, x) =>\n renderElement(x, (children) =>\n removeAction || editAction ? (\n <>\n <Div className={clsx(childClass, removableChildClass)}>\n {children}\n </Div>\n <Div className={removeActionClass}>\n {editAction && renderAction(editAction(x))}\n {removeAction && renderAction(removeAction(x))}\n </Div>\n </>\n ) : (\n <Div className={childClass}>{children}</Div>\n ),\n )\n }\n </RenderElements>\n </Div>\n {addAction && (\n <Div className={addActionClass}>{renderAction(addAction)}</Div>\n )}\n </Div>\n );\n}\n","import React from \"react\";\nimport {\n Control,\n controlValues,\n removeElement,\n useControl,\n useControlEffect,\n} from \"@react-typed-forms/core\";\nimport {\n AutocompleteClasses,\n createDataRenderer,\n DataRenderType,\n FieldOption,\n rendererClass,\n} from \"@react-typed-forms/schemas\";\nimport { useAutocomplete, UseAutocompleteProps } from \"@mui/base\";\nimport clsx from \"clsx\";\n\nexport interface AutocompleteRendererOptions {\n className?: string;\n listContainerClass?: string;\n listEntryClass?: string;\n chipContainerClass?: string;\n chipCloseButtonClass?: string;\n}\n\nexport interface AutocompleteProps<A, Multiple extends boolean>\n extends UseAutocompleteProps<A, Multiple, false, true> {\n control: Control<any>;\n className?: string;\n classes: AutocompleteRendererOptions;\n controlClasses?: AutocompleteClasses;\n}\n\nconst inputClass =\n \"leading-[1.5] text-surface-900 bg-[inherit] border-0 rounded-[inherit] px-3 py-2 outline-0 grow shrink-0 basis-auto focus:outline-0 focus:ring-0 focus:shadow-none\";\n\nexport function createAutocompleteRenderer(\n options: AutocompleteRendererOptions = {},\n) {\n return createDataRenderer(\n (p) => {\n return p.field.collection ? (\n <MultipleAutocomplete\n options={p.options ?? []}\n control={p.control}\n className={rendererClass(p.className, options.className)}\n classes={options}\n controlClasses={p.renderOptions as AutocompleteClasses}\n readOnly={p.readonly}\n id={p.id}\n />\n ) : (\n <SingleAutocomplete\n options={p.options ?? []}\n control={p.control}\n className={rendererClass(p.className, options.className)}\n classes={options}\n controlClasses={p.renderOptions as AutocompleteClasses}\n readOnly={p.readonly}\n id={p.id}\n />\n );\n },\n {\n renderType: DataRenderType.Autocomplete,\n },\n );\n}\n\nfunction SingleAutocomplete({\n ...props\n}: AutocompleteProps<FieldOption | string, false>) {\n const { id, control, className, readOnly, classes, controlClasses } = props;\n const { disabled } = control;\n\n const inputControl = useControl<string>(\"\");\n const selectedOptionControl = useControl<string | FieldOption | null>(null);\n\n const listContainerClass = rendererClass(\n controlClasses?.listContainerClass,\n classes.listContainerClass,\n );\n\n const listEntryClass = rendererClass(\n controlClasses?.listEntryClass,\n classes.listEntryClass,\n );\n\n useControlEffect(\n controlValues(inputControl, selectedOptionControl),\n ([text, selected]) => {\n control.value = selected\n ? typeof selected === \"string\"\n ? selected\n : selected.value\n : text;\n },\n );\n\n const {\n getRootProps,\n getInputProps,\n getListboxProps,\n getOptionProps,\n groupedOptions,\n popupOpen,\n focused,\n getPopupIndicatorProps,\n } = useAutocomplete({\n freeSolo: true,\n multiple: false,\n readOnly,\n value: selectedOptionControl.value,\n inputValue: inputControl.value,\n getOptionLabel: (v) => (typeof v === \"string\" ? v : v.name),\n filterOptions: (o, s) =>\n o.filter((o) => {\n const label = typeof o === \"string\" ? o : o.name;\n return label.toLowerCase().includes(s.inputValue.toLowerCase());\n }),\n onInputChange: (_, v, reason) => {\n inputControl.value = v;\n if (reason === \"input\") selectedOptionControl.value = null;\n },\n onChange: (_, v, reason) => {\n if (reason === \"selectOption\") {\n selectedOptionControl.value = v;\n }\n },\n ...props,\n });\n return (\n <div id={id} className={\"relative\"} {...getRootProps()}>\n <div\n className={clsx(\n className,\n focused\n ? \"border-primary-400 shadow-[0_0_0_3px_transparent] shadow-primary-200\"\n : \"shadow-[0_2px_2px_transparent] shadow-surface-50\",\n )}\n >\n <input\n type={\"text\"}\n {...getInputProps()}\n placeholder={controlClasses?.placeholder ?? \"\"}\n className={inputClass}\n readOnly={readOnly}\n />\n\n <button\n {...getPopupIndicatorProps()}\n disabled={disabled || readOnly}\n className={\n \"outline-0 shadow-none border-0 py-0 px-0.5 bg-transparent pr-[10px]\"\n }\n >\n <li\n className={clsx(\n \"fa-solid fa-angle-down\",\n \"text-primary-500\",\n popupOpen && \"rotate-180\",\n )}\n />\n </button>\n </div>\n {groupedOptions.length > 0 && popupOpen && (\n <ul {...getListboxProps()} className={listContainerClass}>\n {(groupedOptions as FieldOption[]).map((option, index) => {\n const optionProps = getOptionProps({ option, index });\n return (\n <li\n {...optionProps}\n key={optionProps.key}\n className={listEntryClass}\n >\n {option.name}\n </li>\n );\n })}\n </ul>\n )}\n </div>\n );\n}\n\nfunction MultipleAutocomplete({\n ...props\n}: AutocompleteProps<FieldOption, true>) {\n const { id, control, className, readOnly, classes, controlClasses } = props;\n const { disabled } = control;\n\n const inputControl = useControl<string>(\"\");\n const selectedOptionsControl = useControl<(string | FieldOption)[] | null>(\n null,\n );\n\n const listContainerClass = rendererClass(\n controlClasses?.listContainerClass,\n classes.listContainerClass,\n );\n const listEntryClass = rendererClass(\n controlClasses?.listEntryClass,\n classes.listEntryClass,\n );\n\n const chipContainerClass = rendererClass(\n controlClasses?.chipContainerClass,\n classes.chipContainerClass,\n );\n\n const chipCloseButtonClass = rendererClass(\n controlClasses?.chipCloseButtonClass,\n classes.chipCloseButtonClass,\n );\n\n useControlEffect(\n controlValues(inputControl, selectedOptionsControl),\n ([text, selected]) => {\n const selectedValues =\n selected?.map((v) => {\n return typeof v === \"string\" ? v : v.value;\n }) ?? [];\n control.value = text ? selectedValues.concat(text) : selectedValues;\n },\n );\n\n const {\n getRootProps,\n getInputProps,\n getListboxProps,\n getOptionProps,\n groupedOptions,\n popupOpen,\n focused,\n getPopupIndicatorProps,\n } = useAutocomplete({\n value: selectedOptionsControl.value ?? [],\n inputValue: inputControl.value,\n freeSolo: true,\n readOnly,\n multiple: true,\n getOptionLabel: (v) => (typeof v === \"string\" ? v : v.name),\n filterOptions: (o, s) =>\n o.filter((o) => {\n const label = typeof o === \"string\" ? o : o.name;\n return label.toLowerCase().includes(s.inputValue.toLowerCase());\n }),\n onInputChange: (_, v) => {\n inputControl.value = v;\n },\n onChange: (_, v, reason) => {\n if (reason === \"selectOption\" || reason === \"removeOption\") {\n selectedOptionsControl.value = v;\n }\n },\n ...props,\n });\n\n return (\n <div id={id} className={\"relative\"} {...getRootProps()}>\n <div\n className={clsx(\n className,\n focused\n ? \"border-primary-400 shadow-[0_0_0_3px_transparent] shadow-primary-200\"\n : \"shadow-[0_2px_2px_transparent] shadow-surface-50\",\n )}\n >\n <div className={\"flex flex-1 flex-row flex-wrap\"}>\n {selectedOptionsControl.value?.map((v) => (\n <Chip\n key={typeof v === \"string\" ? v : v.name}\n text={typeof v === \"string\" ? v : v.name}\n chipContainerClass={chipContainerClass}\n chipCloseButtonClass={chipCloseButtonClass}\n onDeleteClick={\n readOnly || disabled\n ? undefined\n : () => {\n const c = selectedOptionsControl.elements.find(\n (x) => x.value == v,\n );\n if (c) removeElement(selectedOptionsControl, c);\n }\n }\n />\n ))}\n <input\n type={\"text\"}\n {...getInputProps()}\n placeholder={controlClasses?.placeholder ?? \"\"}\n className={clsx(inputClass)}\n readOnly={readOnly}\n />\n </div>\n\n <button\n {...getPopupIndicatorProps()}\n disabled={disabled || readOnly}\n className={\n \"outline-0 shadow-none border-0 py-0 px-0.5 bg-transparent pr-[10px]\"\n }\n >\n <i\n className={clsx(\n \"fa-solid fa-angle-down\",\n \"text-primary-500\",\n popupOpen && \"rotate-180\",\n )}\n />\n </button>\n </div>\n {groupedOptions.length > 0 && popupOpen && (\n <ul {...getListboxProps()} className={listContainerClass}>\n {(groupedOptions as FieldOption[]).map((option, index) => {\n const optionProps = getOptionProps({ option, index });\n return (\n <li\n {...optionProps}\n key={optionProps.key}\n className={listEntryClass}\n >\n {option.name}\n </li>\n );\n })}\n </ul>\n )}\n </div>\n );\n}\n\nfunction Chip({\n text,\n chipContainerClass,\n chipCloseButtonClass,\n onDeleteClick,\n}: {\n text: string;\n chipContainerClass?: string;\n chipCloseButtonClass?: string;\n onDeleteClick?: () => void;\n}) {\n return (\n <div className={chipContainerClass}>\n {text}\n <i\n className={chipCloseButtonClass}\n onClick={() => {\n onDeleteClick?.();\n }}\n />\n </div>\n );\n}\n","import {\n Control,\n setFields,\n trackedValue,\n useControl,\n} from \"@react-typed-forms/core\";\nimport {\n boolField,\n buildSchema,\n ControlDefinitionExtension,\n createDataRenderer,\n DataControlDefinition,\n defaultControlForField,\n FormRenderer,\n makeSchemaDataNode,\n RenderOptions,\n schemaDataForFieldRef,\n SchemaField,\n schemaForFieldRef,\n SchemaNode,\n stringField,\n useControlRendererComponent,\n} from \"@react-typed-forms/schemas\";\nimport React, { Fragment, useMemo } from \"react\";\nimport { createSchemaTree } from \"@react-typed-forms/schemas\";\n\nexport interface ValueForFieldRenderOptions extends RenderOptions {\n type: \"ValueForField\";\n fieldRef?: string | null;\n noOptions?: boolean;\n refIsDirect?: boolean;\n}\n\nconst RenderType = \"ValueForField\";\n\nexport const ValueForFieldExtension: ControlDefinitionExtension = {\n RenderOptions: {\n value: RenderType,\n name: \"Value For Field\",\n fields: buildSchema<Omit<ValueForFieldRenderOptions, \"type\">>({\n fieldRef: stringField(\"Field Reference\"),\n noOptions: boolField(\"No Options\"),\n refIsDirect: boolField(\"Reference is direct\"),\n }),\n },\n};\n\nexport interface ValueForFieldOptions {\n schema: SchemaNode;\n}\n\nexport function createValueForFieldRenderer(options: ValueForFieldOptions) {\n return createDataRenderer(\n (o, renderer) => {\n const { fieldRef, noOptions, refIsDirect } =\n o.renderOptions as ValueForFieldRenderOptions;\n const actualFieldRef = fieldRef\n ? refIsDirect\n ? fieldRef\n : (schemaDataForFieldRef(fieldRef, o.dataContext.parentNode)?.control\n ?.value as string)\n : \".\";\n let schemaField: SchemaField | undefined;\n if (refIsDirect) {\n const dataNode = schemaDataForFieldRef(\n actualFieldRef,\n o.dataContext.parentNode,\n );\n schemaField = trackedValue(dataNode.control.as<SchemaField>());\n } else {\n schemaField = actualFieldRef\n ? schemaForFieldRef(actualFieldRef, options.schema).field\n : undefined;\n }\n return schemaField ? (\n <ValueForField\n renderer={renderer}\n schemaField={schemaField}\n control={o.control}\n noOptions={noOptions}\n />\n ) : (\n <>{actualFieldRef ? \"No schema node for \" + actualFieldRef : \"\"}</>\n );\n },\n {\n renderType: RenderType,\n },\n );\n}\n\nfunction ValueForField({\n schemaField,\n renderer,\n control,\n noOptions,\n}: {\n schemaField: SchemaField;\n renderer: FormRenderer;\n control: Control<any>;\n noOptions?: boolean;\n}) {\n const value = useControl({ default: undefined }, undefined, (e) =>\n setFields(e, { default: control }),\n );\n const [controls, rootSchema] = useMemo(() => {\n const adjustedField: SchemaField = {\n ...schemaField,\n collection: noOptions ? false : schemaField.collection,\n options: noOptions ? undefined : schemaField.options,\n field: \"default\",\n required: false,\n notNullable: false,\n onlyForTypes: null,\n defaultValue: undefined,\n };\n const control: DataControlDefinition = {\n ...defaultControlForField(adjustedField),\n hideTitle: true,\n };\n const rootSchema = createSchemaTree([adjustedField]).rootNode;\n return [control, rootSchema];\n }, [schemaField]);\n\n const Render = useControlRendererComponent(\n controls,\n renderer,\n { disabled: control.disabled },\n makeSchemaDataNode(rootSchema, value),\n );\n return <Render />;\n}\n","import {\n AdornmentPlacement,\n AdornmentRendererRegistration,\n appendMarkupAt,\n ControlAdornmentType,\n ControlDataContext,\n createAdornmentRenderer,\n getAllValues,\n getIsEditing,\n getNullToggler,\n OptionalAdornment,\n wrapMarkup,\n} from \"@react-typed-forms/schemas\";\nimport { Control, Fcheckbox, newControl } from \"@react-typed-forms/core\";\nimport React, { ReactNode } from \"react\";\n\nexport interface OptionalRenderProps {\n allValues: Control<unknown[]>;\n editing: Control<boolean | undefined>;\n children: ReactNode;\n adornment: OptionalAdornment;\n nullToggler: Control<boolean>;\n dataContext: ControlDataContext;\n options: DefaultOptionalAdornmentOptions;\n dataControl: Control<any>;\n}\nexport interface DefaultOptionalAdornmentOptions {\n className?: string;\n checkClass?: string;\n childWrapperClass?: string;\n multiValuesClass?: string;\n multiValuesText?: string;\n nullWrapperClass?: string;\n setNullText?: string;\n defaultPlacement?: AdornmentPlacement;\n hideEdit?: boolean;\n customRender?: (props: OptionalRenderProps) => ReactNode;\n}\nexport function createOptionalAdornment(\n options: DefaultOptionalAdornmentOptions = {},\n): AdornmentRendererRegistration {\n return createAdornmentRenderer(\n (props, renderers) => {\n const { dataContext } = props;\n const dataControl =\n dataContext.dataNode?.control ?? newControl(undefined);\n const adornment = props.adornment as OptionalAdornment;\n const editing = getIsEditing(dataControl);\n const isEditing = editing.value;\n const nullToggler = getNullToggler(dataControl);\n if (isEditing === undefined && adornment.editSelectable)\n editing.value = false;\n dataControl.disabled =\n !isEditing || !!(adornment.allowNull && !nullToggler.value);\n return {\n apply: (rl) => {\n if (props.formOptions.readonly) return rl;\n if (!options.hideEdit && adornment.editSelectable)\n appendMarkupAt(\n adornment.placement ??\n options.defaultPlacement ??\n AdornmentPlacement.LabelStart,\n <Fcheckbox control={editing} className={options.checkClass} />,\n )(rl);\n wrapMarkup(\"children\", (children) => {\n const props = {\n allValues: getAllValues(dataControl),\n editing,\n children,\n adornment,\n nullToggler,\n dataContext,\n options,\n dataControl,\n };\n return options.customRender ? (\n options.customRender(props)\n ) : (\n <OptionalEditRenderer {...props} />\n );\n })(rl);\n },\n priority: 0,\n adornment,\n };\n },\n { adornmentType: ControlAdornmentType.Optional },\n );\n}\n\nexport function OptionalEditRenderer({\n children,\n options,\n adornment,\n editing,\n renderMultiValues,\n allValues,\n nullToggler,\n}: OptionalRenderProps & {\n renderMultiValues?: (allValues: Control<unknown[]>) => ReactNode;\n}) {\n renderMultiValues ??= () => options.multiValuesText ?? \"Differing values\";\n const multipleValues = allValues.value.length > 1;\n const nullEdit = adornment.allowNull ? (\n <div className={options.nullWrapperClass}>\n <Fcheckbox\n control={nullToggler}\n className={options.checkClass}\n notValue\n />\n <span>{options.setNullText ?? \"Null\"}</span>\n </div>\n ) : undefined;\n return (\n <div className={options.className}>\n {multipleValues && editing.value === false ? (\n <div className={options.multiValuesClass}>\n {renderMultiValues(allValues)}\n </div>\n ) : (\n <div className={options.childWrapperClass}>\n {nullEdit}\n {children}\n </div>\n )}\n </div>\n );\n}\n","import React, { useRef } from \"react\";\nimport { useControlEffect } from \"@react-typed-forms/core\";\nimport {\n createDataRenderer,\n DataRendererProps,\n rendererClass,\n} from \"@react-typed-forms/schemas\";\n\nexport function createMultilineFieldRenderer(className?: string) {\n return createDataRenderer((p) => (\n <MultilineTextfield\n {...p}\n className={rendererClass(p.className, className)}\n />\n ));\n}\n\nexport function MultilineTextfield({ control, className }: DataRendererProps) {\n const codeRef = useRef<HTMLElement | null>(null);\n useControlEffect(\n () => control.value,\n (v) => {\n const c = codeRef.current;\n if (c && c.textContent !== v) {\n c.textContent = v;\n }\n },\n true,\n );\n return (\n <code\n contentEditable={!control.disabled}\n className={className}\n onInput={(t) => (control.value = t.currentTarget.textContent)}\n ref={codeRef}\n />\n );\n}\n","import {\n ActionRendererProps,\n ArrayElementRenderOptions,\n ControlDefinitionType,\n createDataRenderer,\n DataRendererProps,\n DataRenderType,\n ExternalEditAction,\n FormNode,\n FormRenderer,\n getExternalEditData,\n GroupedControlsDefinition,\n GroupRenderType,\n makeSchemaDataNode,\n rendererClass,\n validationVisitor,\n visitFormDataInContext,\n} from \"@react-typed-forms/schemas\";\nimport React, { Fragment } from \"react\";\nimport { Dialog, Modal } from \"@astroapps/aria-base\";\nimport { useOverlayTriggerState } from \"@react-stately/overlays\";\nimport { RenderElements } from \"@react-typed-forms/core\";\n\nexport interface ArrayElementRendererOptions {\n className?: string;\n actionsClass?: string;\n}\nexport function createArrayElementRenderer(\n options: ArrayElementRendererOptions = {},\n) {\n return createDataRenderer(\n (props, formRenderer) => (\n <ArrayElementRenderer\n dataProps={props}\n options={options}\n formRenderer={formRenderer}\n renderOptions={props.renderOptions as ArrayElementRenderOptions}\n />\n ),\n { renderType: DataRenderType.ArrayElement },\n );\n}\n\nfunction ArrayElementRenderer({\n dataProps,\n options,\n formRenderer,\n renderOptions,\n}: {\n dataProps: DataRendererProps;\n options: ArrayElementRendererOptions;\n formRenderer: FormRenderer;\n renderOptions: ArrayElementRenderOptions;\n}) {\n const { control, formNode, renderChild, designMode } = dataProps;\n const extData = getExternalEditData(control);\n const overlayState = useOverlayTriggerState({\n isOpen: true,\n onOpenChange: () => {\n extData.value = undefined;\n },\n });\n\n if (designMode || extData.value !== undefined) {\n const parentDataNode = makeSchemaDataNode(\n dataProps.dataNode.schema,\n extData.fields.data,\n );\n const elementGroup: FormNode = formNode.createChildNode(\"group\", {\n type: ControlDefinitionType.Group,\n groupOptions: { type: GroupRenderType.Standard, hideTitle: true },\n children: formNode.getResolvedChildren(),\n } as GroupedControlsDefinition);\n const editContent = (\n <div className={rendererClass(dataProps.className, options.className)}>\n {renderChild(\"\", elementGroup, {\n parentDataNode,\n })}\n <div className={options.actionsClass}>\n <RenderElements control={extData.fields.actions}>\n {(c) => formRenderer.renderAction(applyValidation(c.value))}\n </RenderElements>\n </div>\n </div>\n );\n if (renderOptions.showInline || designMode) return editContent;\n\n return (\n <Modal state={overlayState}>\n <Dialog children={editContent} />\n </Modal>\n );\n\n function runValidation(onClick: () => void) {\n let hasErrors = false;\n visitFormDataInContext(\n parentDataNode,\n elementGroup,\n validationVisitor(() => {\n hasErrors = true;\n }),\n );\n if (!hasErrors) onClick();\n }\n function applyValidation({\n action,\n dontValidate,\n }: ExternalEditAction): ActionRendererProps {\n return dontValidate\n ? action\n : {\n ...action,\n onClick: () => runValidation(action.onClick),\n };\n }\n } else return <></>;\n}\n","import React, { Fragment, ReactNode } from \"react\";\nimport {\n ActionRendererProps,\n ActionRendererRegistration,\n ActionStyle,\n createActionRenderer,\n IconPlacement,\n IconReference,\n rendererClass,\n} from \"@react-typed-forms/schemas\";\n\nexport interface DefaultActionRendererOptions {\n buttonClass?: string;\n textClass?: string;\n primaryClass?: string;\n primaryTextClass?: string;\n secondaryClass?: string;\n secondaryTextClass?: string;\n linkClass?: string;\n linkTextClass?: string;\n iconBeforeClass?: string;\n iconAfterClass?: string;\n groupClass?: string;\n renderContent?: (\n actionText: string,\n actionId: string,\n actionData: any,\n ) => ReactNode;\n icon?: IconReference;\n iconPlacement?: IconPlacement;\n notWrapInText?: boolean;\n androidRippleColor?: string;\n}\n\nexport function createButtonActionRenderer(\n actionId: string | string[] | undefined,\n options: DefaultActionRendererOptions = {},\n): ActionRendererRegistration {\n return createActionRenderer(\n actionId,\n (props: ActionRendererProps, renderer) => {\n const {\n key,\n onClick,\n actionText,\n className,\n style,\n actionId,\n actionData,\n disabled,\n textClass,\n actionStyle,\n inline,\n actionContent,\n } = props;\n const icon = props.icon?.name ? props.icon : options.icon;\n const iconPlacement =\n props.iconPlacement ??\n options.iconPlacement ??\n IconPlacement.BeforeText;\n\n const { Button, I, Span } = renderer.html;\n const isLink = actionStyle == ActionStyle.Link;\n const isGroup = actionStyle == ActionStyle.Group;\n const classNames = rendererClass(\n className,\n isLink\n ? options.linkClass\n : isGroup\n ? options.groupClass\n : rendererClass(\n options.buttonClass,\n actionStyle == ActionStyle.Secondary\n ? options.secondaryClass\n : options.primaryClass,\n ),\n );\n const iconElement = icon && (\n <I\n iconName={icon.name}\n iconLibrary={icon.library}\n className={rendererClass(\n textClass,\n iconPlacement == IconPlacement.BeforeText\n ? options.iconBeforeClass\n : options.iconAfterClass,\n )}\n />\n );\n\n const textClassNames = rendererClass(\n textClass,\n isLink\n ? options.linkTextClass\n : rendererClass(\n options.textClass,\n actionStyle == ActionStyle.Secondary\n ? options.secondaryTextClass\n : options.primaryTextClass,\n ),\n );\n\n const textElement =\n actionContent ??\n (actionText && <Span className={textClassNames}>{actionText}</Span>);\n\n return (\n <Button\n key={key}\n className={classNames}\n textClass={textClassNames}\n disabled={disabled}\n style={style}\n onClick={onClick}\n inline={inline}\n nonTextContent={isGroup}\n title={\n iconPlacement == IconPlacement.ReplaceText ? actionText : undefined\n }\n notWrapInText={options.notWrapInText}\n androidRippleColor={options.androidRippleColor}\n >\n {options.renderContent?.(actionText, actionId, actionData) ?? (\n <>\n {iconPlacement == IconPlacement.BeforeText && iconElement}\n {iconPlacement != IconPlacement.ReplaceText && textElement}\n {iconPlacement != IconPlacement.BeforeText && iconElement}\n </>\n )}\n </Button>\n );\n },\n );\n}\n","import {\n createDefaultDisplayRenderer,\n DefaultDisplayRendererOptions,\n} from \"./components/DefaultDisplay\";\nimport {\n createDefaultLayoutRenderer,\n DefaultLayoutRendererOptions,\n} from \"./components/DefaultLayout\";\nimport { createDefaultVisibilityRenderer } from \"./components/DefaultVisibility\";\nimport React, { Fragment, ReactElement, ReactNode } from \"react\";\nimport clsx from \"clsx\";\nimport {\n createSelectRenderer,\n SelectRendererOptions,\n} from \"./components/SelectDataRenderer\";\nimport { DefaultDisplayOnly } from \"./components/DefaultDisplayOnly\";\nimport { Control, useControlEffect } from \"@react-typed-forms/core\";\nimport { ControlInput, createInputConversion } from \"./components/ControlInput\";\nimport {\n createDefaultArrayDataRenderer,\n createDefaultArrayRenderer,\n DefaultArrayRendererOptions,\n} from \"./components/DefaultArrayRenderer\";\nimport {\n CheckRendererOptions,\n createCheckboxRenderer,\n createCheckListRenderer,\n createElementSelectedRenderer,\n createRadioRenderer,\n} from \"./components/CheckRenderer\";\nimport { DefaultAccordion } from \"./components/DefaultAccordion\";\nimport { createNullToggleRenderer } from \"./components/NullToggle\";\nimport { createMultilineFieldRenderer } from \"./components/MultilineTextfield\";\nimport { createJsonataRenderer } from \"./components/JsonataRenderer\";\nimport {\n AdornmentPlacement,\n AdornmentRendererRegistration,\n appendMarkupAt,\n ArrayActionOptions,\n ControlDataContext,\n createDataRenderer,\n DataRendererRegistration,\n DataRenderType,\n DefaultRenderers,\n FieldOption,\n FieldType,\n FormRenderer,\n hasOptions,\n HtmlButtonProperties,\n HtmlComponents,\n HtmlDivProperties,\n HtmlIconProperties,\n HtmlInputProperties,\n HtmlLabelProperties,\n IconLibrary,\n IconReference,\n isAccordionAdornment,\n isDataGroupRenderer,\n isDisplayOnlyRenderer,\n isIconAdornment,\n isOptionalAdornment,\n isSetFieldAdornment,\n isTextfieldRenderer,\n LabelRendererRegistration,\n LabelType,\n rendererClass,\n RendererRegistration,\n RunExpression,\n schemaDataForFieldRef,\n SetFieldAdornment,\n useExpression,\n wrapLayout,\n} from \"@react-typed-forms/schemas\";\nimport {\n createDefaultGroupRenderer,\n DefaultGroupRendererOptions,\n} from \"./components/DefaultGroupRenderer\";\nimport {\n AutocompleteRendererOptions,\n createAutocompleteRenderer,\n} from \"./components/AutocompleteRenderer\";\nimport {\n createOptionalAdornment,\n DefaultOptionalAdornmentOptions,\n} from \"./adornments/optionalAdornment\";\nimport {\n ArrayElementRendererOptions,\n createArrayElementRenderer,\n} from \"./components/ArrayElementRenderer\";\nimport {\n createButtonActionRenderer,\n DefaultActionRendererOptions,\n} from \"./createButtonActionRenderer\";\n\nexport interface DefaultRendererOptions {\n data?: DefaultDataRendererOptions;\n display?: DefaultDisplayRendererOptions;\n action?: DefaultActionRendererOptions;\n array?: DefaultArrayRendererOptions;\n group?: DefaultGroupRendererOptions;\n label?: DefaultLabelRendererOptions;\n adornment?: DefaultAdornmentRendererOptions;\n layout?: DefaultLayoutRendererOptions;\n extraRenderers?: (options: DefaultRendererOptions) => RendererRegistration[];\n html?: FormRenderer[\"html\"];\n}\n\nexport const DefaultBoolOptions: FieldOption[] = [\n { name: \"Yes\", value: true },\n { name: \"No\", value: false },\n];\n\nexport interface DefaultDataRendererOptions {\n inputClass?: string;\n inputTextClass?: string;\n displayOnlyClass?: string;\n selectOptions?: SelectRendererOptions;\n checkboxOptions?: CheckRendererOptions;\n checkOptions?: CheckRendererOptions;\n radioOptions?: CheckRendererOptions;\n checkListOptions?: CheckRendererOptions;\n autocompleteOptions?: AutocompleteRendererOptions;\n arrayElementOptions?: ArrayElementRendererOptions;\n booleanOptions?: FieldOption[];\n optionRenderer?: DataRendererRegistration;\n multilineClass?: string;\n jsonataClass?: string;\n arrayOptions?: ArrayActionOptions;\n defaultEmptyText?: string;\n}\n\nexport function createDefaultDataRenderer(\n options: DefaultDataRendererOptions = {},\n): DataRendererRegistration {\n const elementSelectedRenderer = createElementSelectedRenderer(\n options.checkboxOptions ?? options.checkOptions,\n );\n const jsonataRenderer = createJsonataRenderer(options.jsonataClass);\n const nullToggler = createNullToggleRenderer();\n const multilineRenderer = createMultilineFieldRenderer(\n options.multilineClass,\n );\n const checkboxRenderer = createCheckboxRenderer(\n options.checkboxOptions ?? options.checkOptions,\n );\n const selectRenderer = createSelectRenderer(options.selectOptions);\n const radioRenderer = createRadioRenderer(\n options.radioOptions ?? options.checkOptions,\n );\n const checkListRenderer = createCheckListRenderer(\n options.checkListOptions ?? options.checkOptions,\n );\n const arrayElementRenderer = createArrayElementRenderer(\n options.arrayElementOptions,\n );\n const {\n inputClass,\n inputTextClass,\n booleanOptions,\n optionRenderer,\n displayOnlyClass,\n defaultEmptyText,\n } = {\n optionRenderer: selectRenderer,\n booleanOptions: DefaultBoolOptions,\n ...options,\n };\n const arrayRenderer = createDefaultArrayDataRenderer(options.arrayOptions);\n\n const autocompleteRenderer = createAutocompleteRenderer(\n options.autocompleteOptions,\n );\n\n return createDataRenderer((props, renderers) => {\n const { field } = props;\n const fieldType = field.type;\n const renderOptions = props.renderOptions;\n let renderType = renderOptions.type;\n if (\n field.collection &&\n props.dataNode.elementIndex == null &&\n (renderType == DataRenderType.Standard ||\n renderType == DataRenderType.Array ||\n renderType == DataRenderType.ArrayElement)\n ) {\n if (renderType == DataRenderType.ArrayElement)\n return arrayElementRenderer.render(props, renderers);\n return arrayRenderer.render(props, renderers);\n }\n if (fieldType === FieldType.Compound) {\n const groupOptions = (isDataGroupRenderer(renderOptions)\n ? renderOptions.groupOptions\n : undefined) ?? { type: \"Standard\", hideTitle: true };\n return renderers.renderGroup({ ...props, renderOptions: groupOptions });\n }\n if (props.displayOnly || isDisplayOnlyRenderer(renderOptions))\n return (p) => {\n return {\n ...p,\n className: \"@ \" + rendererClass(p.className, displayOnlyClass),\n children: (\n <DefaultDisplayOnly\n dataNode={props.dataNode}\n state={props.state}\n schemaInterface={props.dataContext.schemaInterface}\n className={props.className}\n textClass={props.textClass}\n style={props.style}\n inline={props.inline}\n renderer={renderers}\n emptyText={\n isDisplayOnlyRenderer(renderOptions) && renderOptions.emptyText\n ? renderOptions.emptyText\n : defaultEmptyText\n }\n />\n ),\n };\n };\n const isBool = fieldType === FieldType.Bool;\n if (booleanOptions != null && isBool && props.options == null) {\n return renderers.renderData({ ...props, options: booleanOptions });\n }\n if (renderType === DataRenderType.Standard && hasOptions(props)) {\n return optionRenderer.render(props, renderers);\n }\n switch (renderType) {\n case DataRenderType.NullToggle:\n return nullToggler.render(props, renderers);\n case DataRenderType.CheckList:\n return checkListRenderer.render(props, renderers);\n case DataRenderType.Dropdown:\n return selectRenderer.render(props, renderers);\n case DataRenderType.Radio:\n return radioRenderer.render(props, renderers);\n case DataRenderType.Checkbox:\n return checkboxRenderer.render(props, renderers);\n case DataRenderType.Jsonata:\n return jsonataRenderer.render(props, renderers);\n case DataRenderType.Autocomplete:\n return autocompleteRenderer.render(props, renderers);\n case DataRenderType.ElementSelected:\n return elementSelectedRenderer.render(props, renderers);\n }\n if (fieldType == FieldType.Any) {\n return (\n <>\n Can't render field: {field.displayName ?? field.field} ({renderType})\n </>\n );\n }\n if (isTextfieldRenderer(renderOptions) && renderOptions.multiline)\n return multilineRenderer.render(props, renderers);\n const placeholder = isTextfieldRenderer(renderOptions)\n ? renderOptions.placeholder\n : undefined;\n\n return (\n <ControlInput\n className={rendererClass(props.className, inputClass)}\n textClass={rendererClass(props.textClass, inputTextClass)}\n style={props.style}\n id={props.id}\n readOnly={props.readonly}\n control={props.control}\n placeholder={placeholder ?? undefined}\n convert={createInputConversion(props.field.type)}\n renderer={renderers}\n />\n );\n });\n}\n\nexport interface DefaultAccordionRendererOptions {\n className?: string;\n titleClass?: string;\n togglerClass?: string;\n iconOpen?: IconReference;\n iconClosed?: IconReference;\n renderTitle?: (\n title: string | undefined,\n current: Control<boolean>,\n ) => ReactNode;\n renderToggler?: (current: Control<boolean>, title: ReactNode) => ReactNode;\n useCss?: boolean;\n}\n\nexport interface DefaultHelpTextRendererOptions {\n triggerContainerClass?: string;\n triggerLabelClass?: string;\n contentContainerClass?: string;\n contentTextClass?: string;\n iconName?: string;\n iconClass?: string;\n}\n\nexport interface DefaultAdornmentRendererOptions {\n accordion?: DefaultAccordionRendererOptions;\n helpText?: DefaultHelpTextRendererOptions;\n optional?: DefaultOptionalAdornmentOptions;\n}\n\nexport function createDefaultAdornmentRenderer(\n options: DefaultAdornmentRendererOptions = {},\n): AdornmentRendererRegistration {\n const optional = createOptionalAdornment(options.optional);\n return {\n type: \"adornment\",\n render: (props, renderers) => {\n if (isOptionalAdornment(props.adornment)) {\n return optional.render(props, renderers);\n }\n const { adornment, designMode, dataContext, runExpression } = props;\n return {\n apply: (rl) => {\n if (isSetFieldAdornment(adornment) && runExpression) {\n return wrapLayout((x) => (\n <SetFieldWrapper\n children={x}\n parentContext={dataContext}\n adornment={adornment}\n runExpression={runExpression}\n />\n ))(rl);\n }\n if (isIconAdornment(adornment)) {\n const { I } = renderers.html;\n const { icon, placement, iconClass } = adornment;\n return appendMarkupAt(\n placement ?? AdornmentPlacement.ControlStart,\n <I\n className={iconClass}\n iconName={icon?.name}\n iconLibrary={icon?.library}\n />,\n )(rl);\n }\n if (isAccordionAdornment(adornment)) {\n return wrapLayout((x) => (\n <DefaultAccordion\n renderers={renderers}\n children={x}\n accordion={adornment}\n contentStyle={rl.style}\n contentClassName={rl.className}\n designMode={designMode}\n dataContext={dataContext}\n {...options.accordion}\n />\n ))(rl);\n }\n },\n priority: 0,\n adornment,\n };\n },\n };\n}\n\ninterface DefaultLabelRendererOptions {\n className?: string;\n textClass?: string;\n groupLabelClass?: string;\n groupLabelTextClass?: string;\n controlLabelClass?: string;\n controlLabelTextClass?: string;\n requiredElement?: (h: FormRenderer[\"html\"]) => ReactNode;\n labelContainer?: (children: ReactElement) => ReactElement;\n}\n\nfunction SetFieldWrapper({\n children,\n adornment,\n parentContext,\n runExpression,\n}: {\n children: ReactNode;\n adornment: SetFieldAdornment;\n parentContext: ControlDataContext;\n runExpression: RunExpression;\n}) {\n const fieldNode = schemaDataForFieldRef(\n adornment.field,\n parentContext.parentNode,\n );\n const otherField = fieldNode.control;\n const always = !adornment.defaultOnly;\n const value = useExpression<any>(\n undefined,\n runExpression,\n adornment.expression,\n (x) => x,\n );\n\n useControlEffect(\n () => [value?.value, otherField?.value == null],\n ([v]) => {\n otherField?.setValue((x: any) => (always || x == null ? v : x));\n },\n true,\n );\n return children;\n}\n\nexport function createDefaultLabelRenderer(\n options?: DefaultLabelRendererOptions,\n): LabelRendererRegistration {\n const {\n className,\n controlLabelTextClass,\n groupLabelTextClass,\n groupLabelClass,\n controlLabelClass,\n textClass,\n labelContainer,\n } = {\n labelContainer: (c: ReactElement) => c,\n ...options,\n };\n return {\n render: (props, labelStart, labelEnd, renderers) => {\n const { Label, Span } = renderers.html;\n const requiredElement =\n options?.requiredElement ?? (({ Span }) => <Span> *</Span>);\n if (props.type == LabelType.Text) return <Span>{props.label}</Span>;\n return labelContainer(\n <>\n <Label\n htmlFor={props.forId}\n className={rendererClass(\n props.className,\n clsx(\n className,\n props.type === LabelType.Group && groupLabelClass,\n props.type === LabelType.Control && controlLabelClass,\n ),\n )}\n textClass={rendererClass(\n props.textClass,\n clsx(\n textClass,\n props.type === LabelType.Group && groupLabelTextClass,\n props.type === LabelType.Control && controlLabelTextClass,\n ),\n )}\n >\n {labelStart}\n {renderers.renderLabelText(props.label)}\n {props.required && requiredElement(renderers.html)}\n </Label>\n {labelEnd}\n </>,\n );\n },\n type: \"label\",\n };\n}\n\nexport const StandardHtmlComponents: HtmlComponents = {\n Button: DefaultHtmlButtonRenderer,\n Label: DefaultHtmlLabelRenderer,\n I: DefaultHtmlIconRenderer,\n Span: \"span\",\n Div: DefaultHtmlDivRenderer,\n H1: \"h1\",\n B: \"b\",\n Input: DefaultHtmlInputRenderer,\n};\n\nexport function DefaultHtmlButtonRenderer({\n inline,\n textClass,\n className,\n notWrapInText,\n androidRippleColor,\n onClick,\n nonTextContent,\n ...props\n}: HtmlButtonProperties) {\n const Comp = nonTextContent ? \"div\" : \"button\";\n return (\n <Comp\n role={nonTextContent ? \"button\" : undefined}\n onClick={\n onClick\n ? (e) => {\n e.stopPropagation();\n onClick();\n }\n : undefined\n }\n className={nonTextContent ? className : clsx(className, textClass)}\n {...props}\n />\n );\n}\nexport function DefaultHtmlInputRenderer({\n textClass,\n className,\n onChangeValue,\n onChangeChecked,\n inputRef,\n ...props\n}: HtmlInputProperties) {\n return (\n <input\n ref={inputRef}\n {...props}\n className={clsx(className, textClass)}\n onChange={\n onChangeValue\n ? (e) => onChangeValue(e.target.value)\n : onChangeChecked\n ? (e) => onChangeChecked(e.target.checked)\n : undefined\n }\n />\n );\n}\nexport function DefaultHtmlDivRenderer({\n text,\n html,\n children,\n className,\n textClass,\n nativeRef,\n inline,\n ...props\n}: HtmlDivProperties) {\n const Tag = inline ? \"span\" : \"div\";\n return (\n <Tag\n {...props}\n ref={nativeRef}\n className={clsx(className, textClass)}\n children={text ?? children}\n dangerouslySetInnerHTML={html ? { __html: html } : undefined}\n />\n );\n}\nexport function DefaultHtmlLabelRenderer({\n textClass,\n className,\n ...props\n}: HtmlLabelProperties) {\n return <label {...props} className={clsx(className, textClass)} />;\n}\nexport function DefaultHtmlIconRenderer({\n iconName,\n iconLibrary,\n className,\n style,\n}: HtmlIconProperties) {\n return iconName ? (\n <i className={clsx(className, toIconClass())} style={style} />\n ) : undefined;\n\n function toIconClass() {\n if (!iconName) return undefined;\n switch (iconLibrary) {\n case IconLibrary.FontAwesome:\n return \"fa fa-\" + iconName;\n case IconLibrary.Material:\n case IconLibrary.CssClass:\n return iconName;\n default:\n return iconLibrary + \" fa-\" + iconName;\n }\n }\n}\n\nexport function createDefaultRenderers(\n options: DefaultRendererOptions = {},\n): DefaultRenderers {\n return {\n data: createDefaultDataRenderer(options.data),\n display: createDefaultDisplayRenderer(options.display),\n action: createButtonActionRenderer(undefined, options.action),\n array: createDefaultArrayRenderer(options.array),\n group: createDefaultGroupRenderer(options.group),\n label: createDefaultLabelRenderer(options.label),\n adornment: createDefaultAdornmentRenderer(options.adornment),\n renderLayout: createDefaultLayoutRenderer(options.layout),\n visibility: createDefaultVisibilityRenderer(),\n extraRenderers: options.extraRenderers?.(options) ?? [],\n html: options.html ?? StandardHtmlComponents,\n };\n}\n\nexport function createClassStyledRenderers() {\n return createDefaultRenderers({\n layout: { className: \"control\" },\n group: { className: \"group\" },\n array: { className: \"control-array\" },\n action: { buttonClass: \"action\" },\n data: { inputClass: \"data\" },\n display: { htmlClassName: \"html\", textClassName: \"text\" },\n });\n}\n","import React from \"react\";\nimport { DefaultRendererOptions } from \"./createDefaultRenderers\";\nimport { fontAwesomeIcon } from \"@react-typed-forms/schemas\";\n\nexport const defaultTailwindTheme = {\n label: {\n groupLabelClass: \"font-bold\",\n requiredElement: ({ Span }) => <Span className=\"text-red-500\"> *</Span>,\n },\n array: {\n removableClass: \"grid grid-cols-[1fr_auto] items-center gap-x-2\",\n childClass: \"grow my-2\",\n addActionClass: \"my-2\",\n removeActionClass: \"flex gap-2\",\n },\n group: {\n standardClassName: \"flex flex-col gap-4\",\n grid: {\n className: \"flex flex-col gap-4\",\n rowClass: \"flex flex-row gap-4 justify-between *:flex-1\",\n },\n flexClassName: \"gap-2\",\n inlineClass: \"\",\n tabs: {\n className: \"\",\n tabListClass:\n \"flex flex-wrap text-sm font-medium text-center text-gray-500 border-b border-gray-200 dark:border-gray-700 dark:text-gray-400\",\n tabClass: \"me-2\",\n labelClass:\n \"inline-flex items-center justify-center p-4 border-b-2 group\",\n inactiveClass:\n \"border-transparent rounded-t-lg hover:text-gray-600 hover:border-gray-300 dark:hover:text-gray-300 cursor-pointer\",\n activeClass:\n \"text-blue-600 border-blue-600 rounded-t-lg active dark:text-blue-500 dark:border-blue-500\",\n contentClass: \"my-2\",\n },\n },\n action: {\n buttonClass:\n \"rounded-lg p-3 text-white disabled:opacity-75 disabled:cursor-not-allowed\",\n primaryClass: \"bg-primary-500\",\n secondaryClass: \"bg-secondary-500\",\n iconBeforeClass: \"px-2\",\n iconAfterClass: \"px-2\",\n },\n layout: {\n className: \"flex flex-col\",\n errorClass: \"text-sm text-red-500\",\n },\n data: {\n inputClass: \"form-control\",\n displayOnlyClass: \"flex flex-row items-center gap-2\",\n checkOptions: {\n className: \"flex items-center gap-4\",\n entryClass: \"flex items-center gap-1\",\n },\n selectOptions: { emptyText: \"<select>\" },\n arrayElementOptions: { actionsClass: \"my-2 flex gap-2\" },\n multilineClass: \"border p-2 outline-0 whitespace-pre-wrap\",\n autocompleteOptions: {\n className:\n \"w-full flex gap-[5px] pr-[5px] overflow-hidden rounded-lg bg-white border border-solid border-gray-200 hover:border-primary-400 focus-visible:outline-0 shadow-[0_2px_4px_rgb(0_0_0_/_0.05)] min-h-[48px] py-1\",\n listContainerClass:\n \"absolute w-full text-sm box-border p-1.5 my-3 mx-0 min-w-[120px] rounded-xl overflow-auto outline-0 max-h-[300px] z-[1] bg-white border border-solid border-surface-200 text-surface-900 shadow-[0_4px_30px_transparent] shadow-surface-200\",\n listEntryClass:\n \"list-none p-2 rounded-lg cursor-default last-of-type:border-b-0 hover:cursor-pointer hover:bg-primary-100 aria-selected:bg-primary-200 aria-selected:text-primary-900 focused:bg-surface-100 focus-visible:bg-surface-100 focused:text-surface-900 focus-visible:text-surface-900 focus-visible:shadow-[0_0_0_3px_transparent] focus-visible:shadow-primary-200 focused:aria-selected:bg-primary-200 focus-visible:aria-selected:bg-primary-200 focused:aria-selected:text-primary-900 focus-visible:aria-selected:text-primary-900\",\n chipContainerClass:\n \"flex flex-row items-center px-3 py-1 rounded-full bg-surface-100 m-1 gap-2 truncate\",\n chipCloseButtonClass:\n \"fa-solid fa-xmark p-1 bg-surface-300 rounded-full min-w-[24px] flex justify-center text-surface-50 hover:bg-surface-400 hover:text-surface-100 hover:cursor-pointer\",\n },\n },\n adornment: {\n accordion: {\n className: \"flex items-center gap-2 my-2\",\n titleClass: \"cursor-pointer\",\n iconOpen: fontAwesomeIcon(\"chevron-up\"),\n iconClosed: fontAwesomeIcon(\"chevron-down\"),\n },\n optional: {\n checkClass: \"m-2\",\n className: \"flex items-center gap-2 w-full\",\n multiValuesClass: \"italic\",\n childWrapperClass: \"grow\",\n },\n },\n} satisfies DefaultRendererOptions;\n"],"names":["createDefaultDisplayRenderer","options","render","props","renderer","_jsx","DefaultDisplay","displayProps","type","_ref","_effect","_useComponentTracking","_iconDisplay$icon","_iconDisplay$icon2","data","display","className","textClass","style","_renderer$html","html","I","Div","B","H1","Span","DisplayDataType","Icon","iconDisplay","clsx","getOverrideClass","value","iconClass","iconName","icon","name","iconLibrary","library","Text","text","coerceToString","rendererClass","textClassName","textTextClass","inline","Html","htmlClassName","Custom","children","_jsxs","customId","ControlInput","toText","convert","control","_objectWithoutPropertiesLoose","_excluded","_formControlProps","formControlProps","errorText","onChange","ref","inputProps","_excluded2","textValue","useControl","useControlEffect","v","Input","_extends","inputRef","onChangeValue","e","converted","undefined","createInputConversion","ft","FieldType","String","a","Bool","_a$toString","toString","Int","parseInt","DateTime","Date","Time","l","length","substring","Double","parseFloat","createSelectRenderer","createDataRenderer","asArray","_props$options","SelectDataRenderer","state","id","readonly","required","emptyText","requiredText","createSelectConversion","field","renderOption","x","i","disabled","_ref$emptyText","_ref$requiredText","_useState","useState","showEmpty","optionStringMap","useMemo","Object","fromEntries","map","optionGroups","Set","filter","group","target","concat","keys","label","o","createRadioRenderer","p","CheckButtons","classes","controlClasses","renderOptions","isChecked","setChecked","c","setTouched","entryAdornment","fieldOptionAdornment","renderType","DataRenderType","Radio","createCheckListRenderer","Array","isArray","includes","checked","setValue","setIncluded","collection","CheckList","_ref$controlClasses","Button","Label","uniqueId","RenderArrayElements","array","useComputed","selOrUnsel","selectedClass","notSelectedClass","entryWrapperClass","onClick","entryClass","checkClass","readOnly","onChangeChecked","labelClass","htmlFor","elem","included","already","createCheckboxRenderer","CheckBox","Checkbox","createElementSelectedRenderer","CheckBoxSelected","ElementSelected","_ref2","_effect2","elementValue","useEffect","runExpression","elementExpression","isSelected","_props$control$as$val","_props$control$as$val2","as","current","selControl","Fcheckbox","renderLabel","_ref3","_effect3","_ref4","_effect4","_ref4$type","_ref4$notValue","notValue","others","theseProps","r","element","touched","createDefaultLayoutRenderer","createLayoutRenderer","renderers","layout","renderLayoutParts","wrapLayout","DefaultLayout","divRef","errorControl","meta","scrollElement","errorClass","_ref$renderer$html","_ref$renderError","renderError","_ref$layout","controlEnd","controlStart","ec","error","_Fragment","DefaultDisplayOnly","dataNode","schemaInterface","isEmptyValue","schema","textValueForData","DefaultAccordion","_dataContext$dataNode","accordion","contentStyle","contentClassName","designMode","iconOpen","iconClosed","_ref$renderTitle","renderTitle","t","renderToggler","titleClass","useCss","dataContext","_renderers$html","dataControl","parentNode","open","defaultExpanded","accordionState","isOpen","fullContentStyle","title","renderLabelText","currentIcon","toggler","getAccordionState","VisibleChildrenRenderer","childStates","parentFormNode","getChildNodes","parent","getChildState","hidden","createTabsRenderer","createGroupRenderer","renderAllTabs","formNode","groupProps","tabOptions","GroupRenderType","Tabs","isVisible","_tabIndex$value","_ref$groupProps","renderChild","tabIndex","fields","tabClass","tabListClass","inactiveClass","activeClass","contentClass","currentTab","renderTabs","tabs","key","definition","createGridRenderer","formRenderer","defaultOptions","renderGrid","Grid","isChildVisible","_props$defaultOptions","_gridOptions$columns","filteredChildren","defaults","gridOptions","numColumns","columns","defaultColumns","allChildren","rows","push","slice","row","rowIndex","rowClass","navContainerClass","actions","nextText","nextIcon","fontAwesomeIcon","nextValidate","prevText","prevIcon","prevValidate","renderNavigation","defaultNavigationRender","prev","next","renderAction","createWizardRenderer","renderWizard","Wizard","mergedOptions","deepMerge","_mergedOptions$classe","_mergedOptions$action","allVisible","_","page","currentPage","isValid","isPageValid","createAction","nav","nextVisibleInDirection","iconPlacement","IconPlacement","AfterText","navElement","countVisibleUntil","totalPages","validatePage","Promise","resolve","reject","content","child","Fragment","untilPage","count","dir","validate","pageNode","hasErrors","visitFormDataInContext","validationVisitor","valid","defaultDialogOptions","containerClass","createDialogRenderer","DefaultDialogRenderer","Dialog","designContent","onClickCapture","overlayState","toggle","actionStyle","ActionStyle","Link","dialogContent","_deepMerge","_deepMerge$classes","createOverlayState","actionOnClick","action","close","triggerChildren","placement","Modal","isDismissable","createDefaultGroupRenderer","gridRenderer","grid","tabsRenderer","wizardRenderer","wizard","dialogRenderer","dialog","standardClassName","flexClassName","inlineClass","defaultFlexGap","flexStyles","gap","flexDirection","direction","isTabsRenderer","isGridRenderer","isWizardRenderer","isDialogRenderer","isSelectChildRenderer","SelectChildGroupRenderer","isFlexRenderer","isInlineRenderer","gcn","Inline","renderLayout","Contents","ctrl","useExpression","childIndexExpression","childIndex","childDefinitions","createDefaultVisibilityRenderer","createVisibilityRenderer","DefaultVisibility","visibility","ex","visible","showing","nativeRef","createJsonataRenderer","JsonataRenderer","Jsonata","sdn","elementIndex","bindings","variables","dataPath","getJsonPath","rendered","ExpressionType","expression","dangerouslySetInnerHTML","__html","createNullToggleRenderer","lastDefined","getLastDefinedValue","defaultValue","nullControl","getNullToggler","renderData","createDefaultArrayDataRenderer","defaultActions","DataArrayRenderer","dataProps","renderChildElement","elementNode","childNode","parentDataNode","_mergeObjects","mergeObjects","isArrayRenderer","addText","noAdd","noRemove","noReorder","removeText","editExternal","childDefs","getResolvedChildren","renderAsElement","isCompoundField","defaultChildDef","ControlDefinitionType","Data","Standard","hideTitle","childDef","Group","groupOptions","createChildNode","childNodes","arrayProps","createArrayActions","renderElement","wrap","RenderEntry","index","isChildHidden","every","getLengthRestrictions","renderArray","getChildElement","createDefaultArrayRenderer","DefaultArrayRenderer","removableClass","childClass","removableChildClass","removeActionClass","addActionClass","arrayControl","editAction","_applyArrayLengthRest","applyArrayLengthRestrictions","addAction","removeAction","RenderElements","inputClass","createAutocompleteRenderer","_p$options","_p$options2","MultipleAutocomplete","SingleAutocomplete","Autocomplete","_controlClasses$place","_objectDestructuringEmpty","inputControl","selectedOptionControl","listContainerClass","listEntryClass","controlValues","selected","_useAutocomplete","useAutocomplete","freeSolo","multiple","inputValue","getOptionLabel","filterOptions","s","toLowerCase","onInputChange","reason","getRootProps","getInputProps","getListboxProps","getOptionProps","groupedOptions","popupOpen","focused","getPopupIndicatorProps","placeholder","option","optionProps","_createElement","_selectedOptionsContr","_selectedOptionsContr2","_controlClasses$place2","selectedOptionsControl","chipContainerClass","chipCloseButtonClass","_selected$map","selectedValues","_useAutocomplete2","Chip","onDeleteClick","elements","find","removeElement","_ref5","RenderType","ValueForFieldExtension","RenderOptions","buildSchema","fieldRef","stringField","noOptions","boolField","refIsDirect","createValueForFieldRenderer","_schemaDataForFieldRe","_o$renderOptions","actualFieldRef","schemaDataForFieldRef","schemaField","trackedValue","schemaForFieldRef","ValueForField","setFields","_useMemo","adjustedField","notNullable","onlyForTypes","defaultControlForField","rootSchema","createSchemaTree","rootNode","controls","Render","useControlRendererComponent","makeSchemaDataNode","createOptionalAdornment","createAdornmentRenderer","_dataContext$dataNode2","newControl","adornment","editing","getIsEditing","isEditing","nullToggler","editSelectable","allowNull","apply","rl","_adornment$placement","formOptions","hideEdit","appendMarkupAt","defaultPlacement","AdornmentPlacement","LabelStart","wrapMarkup","allValues","getAllValues","customRender","OptionalEditRenderer","priority","adornmentType","ControlAdornmentType","Optional","_renderMultiValues","_options$setNullText","renderMultiValues","_options$multiValuesT","multiValuesText","multipleValues","nullEdit","nullWrapperClass","setNullText","multiValuesClass","childWrapperClass","createMultilineFieldRenderer","MultilineTextfield","codeRef","useRef","textContent","contentEditable","onInput","currentTarget","createArrayElementRenderer","ArrayElementRenderer","ArrayElement","extData","getExternalEditData","useOverlayTriggerState","onOpenChange","runValidation","elementGroup","applyValidation","dontValidate","editContent","actionsClass","showInline","createButtonActionRenderer","actionId","createActionRenderer","_props$icon","_props$iconPlacement","_options$renderConten","actionText","actionData","actionContent","BeforeText","isLink","isGroup","classNames","linkClass","groupClass","buttonClass","Secondary","secondaryClass","primaryClass","iconElement","iconBeforeClass","iconAfterClass","textClassNames","linkTextClass","secondaryTextClass","primaryTextClass","textElement","nonTextContent","ReplaceText","notWrapInText","androidRippleColor","renderContent","DefaultBoolOptions","createDefaultDataRenderer","_options$checkboxOpti","_options$checkboxOpti2","_options$radioOptions","_options$checkListOpt","elementSelectedRenderer","checkboxOptions","checkOptions","jsonataRenderer","jsonataClass","multilineRenderer","multilineClass","checkboxRenderer","selectRenderer","selectOptions","radioRenderer","radioOptions","checkListRenderer","checkListOptions","arrayElementRenderer","arrayElementOptions","_optionRenderer$boole","optionRenderer","booleanOptions","inputTextClass","displayOnlyClass","defaultEmptyText","arrayRenderer","arrayOptions","autocompleteRenderer","autocompleteOptions","fieldType","Compound","isDataGroupRenderer","renderGroup","displayOnly","isDisplayOnlyRenderer","isBool","hasOptions","NullToggle","Dropdown","Any","_field$displayName","displayName","isTextfieldRenderer","multiline","createDefaultAdornmentRenderer","optional","isOptionalAdornment","isSetFieldAdornment","SetFieldWrapper","parentContext","isIconAdornment","ControlStart","isAccordionAdornment","fieldNode","otherField","always","defaultOnly","createDefaultLabelRenderer","_labelContainer$optio","labelContainer","controlLabelTextClass","groupLabelTextClass","groupLabelClass","controlLabelClass","labelStart","labelEnd","_options$requiredElem","requiredElement","LabelType","forId","Control","StandardHtmlComponents","DefaultHtmlButtonRenderer","DefaultHtmlLabelRenderer","DefaultHtmlIconRenderer","DefaultHtmlDivRenderer","DefaultHtmlInputRenderer","Comp","role","stopPropagation","_ref6","_ref7","_excluded3","Tag","_ref8","_excluded4","_ref9","_effect5","toIconClass","IconLibrary","FontAwesome","Material","CssClass","createDefaultRenderers","_options$extraRendere","_options$html","extraRenderers","createClassStyledRenderers","defaultTailwindTheme"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../src/components/DefaultDisplay.tsx","../src/components/ControlInput.tsx","../src/components/SelectDataRenderer.tsx","../src/components/CheckRenderer.tsx","../src/components/DefaultLayout.tsx","../src/components/DefaultDisplayOnly.tsx","../src/components/TabsRenderer.tsx","../src/components/GridRenderer.tsx","../src/components/DefaultWizardRenderer.tsx","../src/components/DefaultDialogRenderer.tsx","../src/components/DefaultAccordion.tsx","../src/components/DefaultGroupRenderer.tsx","../src/components/DefaultVisibility.tsx","../src/components/JsonataRenderer.tsx","../src/components/NullToggle.tsx","../src/components/DefaultArrayRenderer.tsx","../src/components/AutocompleteRenderer.tsx","../src/components/ValueForFieldRenderer.tsx","../src/adornments/optionalAdornment.tsx","../src/components/MultilineTextfield.tsx","../src/rendererOptions.ts","../src/components/ArrayElementRenderer.tsx","../src/createButtonActionRenderer.tsx","../src/components/ScrollListRenderer.tsx","../src/components/HtmlCheckButtons.tsx","../src/createDefaultRenderers.tsx","../src/tailwind.tsx"],"sourcesContent":["import React from \"react\";\nimport clsx from \"clsx\";\nimport {\n coerceToString,\n CustomDisplay,\n DisplayDataType,\n DisplayRendererProps,\n DisplayRendererRegistration,\n FormRenderer,\n getOverrideClass,\n HtmlDisplay,\n IconDisplay,\n rendererClass,\n TextDisplay,\n} from \"@react-typed-forms/schemas\";\nimport { DefaultDisplayRendererOptions } from \"../rendererOptions\";\n\nexport function createDefaultDisplayRenderer(\n options: DefaultDisplayRendererOptions = {},\n): DisplayRendererRegistration {\n return {\n render: (props, renderer) => (\n <DefaultDisplay\n options={options}\n displayProps={props}\n renderer={renderer}\n />\n ),\n type: \"display\",\n };\n}\n\nexport function DefaultDisplay({\n renderer,\n options,\n displayProps,\n}: {\n displayProps: DisplayRendererProps;\n options: DefaultDisplayRendererOptions;\n renderer: FormRenderer;\n}) {\n const { data, display, className, textClass, style } = displayProps;\n const { I, Div, B, H1, Span } = renderer.html;\n switch (data.type) {\n case DisplayDataType.Icon:\n const iconDisplay = data as IconDisplay;\n return (\n <I\n style={style}\n className={clsx(\n getOverrideClass(className),\n display ? display.value : iconDisplay.iconClass,\n )}\n iconName={display ? display.value : iconDisplay.icon?.name}\n iconLibrary={iconDisplay.icon?.library}\n />\n );\n case DisplayDataType.Text:\n const text = display\n ? coerceToString(display.value)\n : (data as TextDisplay).text;\n return (\n <Div\n style={style}\n className={rendererClass(className, options.textClassName)}\n textClass={rendererClass(textClass, options.textTextClass)}\n text={text}\n inline={displayProps.inline}\n />\n );\n case DisplayDataType.Html:\n return (\n <Div\n style={style}\n className={rendererClass(className, options.htmlClassName)}\n inline={displayProps.inline}\n html={\n display ? coerceToString(display.value) : (data as HtmlDisplay).html\n }\n />\n );\n case DisplayDataType.Custom:\n return (\n <Div>\n <B>({(data as CustomDisplay).customId})</B>\n </Div>\n );\n default:\n return <H1>Unknown display type: {data.type}</H1>;\n }\n}\n","import React from \"react\";\nimport {\n Control,\n formControlProps,\n useControl,\n useControlEffect,\n} from \"@react-typed-forms/core\";\nimport { FieldType, FormRenderer } from \"@react-typed-forms/schemas\";\n\nexport interface ControlInputProps {\n className?: string;\n textClass?: string;\n style?: React.CSSProperties;\n id?: string;\n errorId?: string;\n readOnly?: boolean;\n placeholder?: string;\n control: Control<any>;\n convert: InputConversion;\n renderer: FormRenderer;\n}\nexport function ControlInput({\n control,\n convert,\n renderer,\n errorId,\n ...props\n}: ControlInputProps) {\n const { errorText, value, onChange, ref, ...inputProps } =\n formControlProps(control);\n const textValue = useControl(() => toText(value));\n useControlEffect(\n () => control.value,\n (v) => (textValue.value = toText(v)),\n );\n const { Input } = renderer.html;\n return (\n <Input\n {...inputProps}\n inputRef={ref}\n type={convert[0]}\n value={textValue.value}\n aria-describedby={!!errorText ? errorId : undefined}\n aria-invalid={!!errorText || undefined}\n onChangeValue={(e) => {\n textValue.value = e;\n const converted = convert[1](e);\n if (converted !== undefined) control.value = converted;\n }}\n {...props}\n />\n );\n\n function toText(value: any) {\n return value == null ? \"\" : convert[2](value);\n }\n}\n\ntype InputConversion = [\n string,\n (s: string) => any,\n (a: any) => string | number,\n];\n\nexport function createInputConversion(ft: string): InputConversion {\n switch (ft) {\n case FieldType.String:\n return [\"text\", (a) => a, (a) => a];\n case FieldType.Bool:\n return [\n \"text\",\n (a) => (a === \"true\" ? true : a === \"false\" ? false : undefined),\n (a) => a?.toString() ?? \"\",\n ];\n case FieldType.Int:\n return [\n \"number\",\n (a) => (a !== \"\" ? parseInt(a) : null),\n (a) => (a == null ? \"\" : a),\n ];\n case FieldType.DateTime:\n return [\"datetime-local\", (a) => (!a ? null : a), (a) => a];\n case FieldType.Date:\n return [\"date\", (a) => (!a ? null : a), (a) => a];\n case FieldType.Time:\n return [\n \"time\",\n (a) => {\n const l = a.length;\n if (l === 5) return a + \":00\";\n if (l === 8) return a;\n return undefined;\n },\n (a) => (a ? a.substring(0, 5) : \"\"),\n ];\n case FieldType.Double:\n return [\n \"number\",\n (a) => (a !== \"\" ? parseFloat(a) : null),\n (a) => (a == null ? \"\" : a),\n ];\n default:\n return [\"text\", (a) => a, (a) => a];\n }\n}\n","import { Control } from \"@react-typed-forms/core\";\nimport React, { useMemo, useState } from \"react\";\nimport {\n createDataRenderer,\n FieldOption,\n FieldType,\n rendererClass,\n} from \"@react-typed-forms/schemas\";\nimport { SelectRendererOptions } from \"../rendererOptions\";\n\ninterface ExtendedDropdown {\n requiredText?: string;\n}\n\nexport function createSelectRenderer(options: SelectRendererOptions = {}) {\n return createDataRenderer(\n (props, asArray) => {\n const renderOptions = props.definition.renderOptions as ExtendedDropdown;\n\n return (\n <SelectDataRenderer\n className={rendererClass(props.className, options.className)}\n state={props.control}\n id={props.id}\n readonly={props.readonly}\n options={props.options ?? []}\n required={props.required}\n emptyText={options.emptyText}\n requiredText={renderOptions?.requiredText ?? options.requiredText}\n convert={createSelectConversion(props.field.type)}\n />\n );\n },\n {\n options: true,\n },\n );\n}\n\ntype SelectConversion = (a: any) => string | number;\n\nexport interface SelectDataRendererProps {\n id?: string;\n className?: string;\n options: FieldOption[];\n emptyText?: string;\n requiredText?: string;\n readonly: boolean;\n required: boolean;\n state: Control<any>;\n convert: SelectConversion;\n}\n\nexport function SelectDataRenderer({\n state,\n options,\n className,\n convert,\n required,\n emptyText = \"N/A\",\n requiredText = \"<please select>\",\n readonly,\n ...props\n}: SelectDataRendererProps) {\n const { value, disabled } = state;\n const [showEmpty] = useState(!required || value == null);\n const optionStringMap = useMemo(\n () => Object.fromEntries(options.map((x) => [convert(x.value), x.value])),\n [options],\n );\n const optionGroups = useMemo(\n () => new Set(options.filter((x) => x.group).map((x) => x.group!)),\n [options],\n );\n return (\n <select\n {...props}\n className={className}\n onChange={(v) => (state.value = optionStringMap[v.target.value])}\n value={convert(value)}\n disabled={disabled || readonly}\n >\n {showEmpty && (\n <option value=\"\">{required ? requiredText : emptyText}</option>\n )}\n {[...optionGroups.keys()].map((x) => (\n <optgroup key={x} label={x}>\n {options.filter((o) => o.group === x).map(renderOption)}\n </optgroup>\n ))}\n {options.filter((x) => !x.group).map(renderOption)}\n </select>\n );\n\n function renderOption(x: FieldOption, i: number) {\n return (\n <option key={i} value={convert(x.value)} disabled={!!x.disabled}>\n {x.name}\n </option>\n );\n }\n}\n\nexport function createSelectConversion(ft: string): SelectConversion {\n switch (ft) {\n case FieldType.String:\n case FieldType.Int:\n case FieldType.Double:\n return (a) => a;\n default:\n return (a) => a?.toString() ?? \"\";\n }\n}\n","import { Control, formControlProps } from \"@react-typed-forms/core\";\nimport React from \"react\";\nimport {\n CheckEntryClasses,\n CheckRendererOptions,\n ControlLayoutProps,\n createDataRenderer,\n DataRendererProps,\n DataRenderType,\n fieldOptionAdornment,\n FormRenderer,\n HtmlInputProperties,\n rendererClass,\n setIncluded,\n} from \"@react-typed-forms/schemas\";\nimport { useElementSelectedRenderer } from \"@react-typed-forms/schemas\";\n\nexport function createRadioRenderer(options: CheckRendererOptions = {}) {\n return createDataRenderer(\n (p, renderer) => (\n <renderer.html.CheckButtons\n classes={options}\n controlClasses={p.renderOptions as CheckEntryClasses}\n {...p}\n className={rendererClass(p.className, options.className)}\n isChecked={(control, o) => control.value == o.value}\n setChecked={(c, o) => {\n c.setTouched(true);\n c.value = o.value;\n }}\n control={p.control}\n type=\"radio\"\n entryAdornment={fieldOptionAdornment(p)}\n renderer={renderer}\n />\n ),\n {\n renderType: DataRenderType.Radio,\n },\n );\n}\n\nexport function createCheckListRenderer(options: CheckRendererOptions = {}) {\n return createDataRenderer(\n (p, renderer) => (\n <renderer.html.CheckButtons\n classes={options}\n controlClasses={p.renderOptions as CheckEntryClasses}\n {...p}\n className={rendererClass(p.className, options.className)}\n isChecked={(control, o) => {\n const v = control.value;\n return Array.isArray(v) ? v.includes(o.value) : false;\n }}\n setChecked={(c, o, checked) => {\n c.setTouched(true);\n c.setValue((x) => setIncluded(x ?? [], o.value, checked));\n }}\n control={p.control}\n type=\"checkbox\"\n entryAdornment={fieldOptionAdornment(p)}\n renderer={renderer}\n />\n ),\n {\n collection: true,\n renderType: DataRenderType.CheckList,\n },\n );\n}\nexport function createCheckboxRenderer(options: CheckRendererOptions = {}) {\n return createDataRenderer(\n (props, renderer) => (p) => ({\n ...p,\n label: undefined,\n children: (\n <CheckBox p={p} renderer={renderer} options={options} props={props} />\n ),\n }),\n { renderType: DataRenderType.Checkbox },\n );\n}\n\nexport function createElementSelectedRenderer(\n options: CheckRendererOptions = {},\n) {\n return createDataRenderer(\n (props, renderer) => (p) => ({\n ...p,\n label: undefined,\n children: (\n <CheckBoxSelected\n p={p}\n renderer={renderer}\n options={options}\n props={props}\n />\n ),\n }),\n {\n renderType: DataRenderType.ElementSelected,\n },\n );\n}\n\nfunction CheckBoxSelected({\n p,\n props,\n renderer,\n options,\n}: {\n p: ControlLayoutProps;\n props: DataRendererProps;\n renderer: FormRenderer;\n options: CheckRendererOptions;\n}) {\n const { Div } = renderer.html;\n const selControl = useElementSelectedRenderer(props);\n return (\n <Div className={rendererClass(props.className, options.entryClass)}>\n <Fcheckbox\n id={props.id}\n control={selControl}\n style={props.style}\n className={options.checkClass}\n renderer={renderer}\n />\n {p.label?.label && renderer.renderLabel(p.label, undefined, undefined)}\n </Div>\n );\n}\n\nfunction CheckBox({\n p,\n props,\n renderer,\n options,\n}: {\n p: ControlLayoutProps;\n props: DataRendererProps;\n renderer: FormRenderer;\n options: CheckRendererOptions;\n}) {\n const { Div } = renderer.html;\n return (\n <Div className={rendererClass(props.className, options.entryClass)}>\n <Fcheckbox\n id={props.id}\n control={props.control.as()}\n style={props.style}\n className={options.checkClass}\n renderer={renderer}\n />\n {p.label && renderer.renderLabel(p.label, undefined, undefined)}\n </Div>\n );\n}\n\nexport function Fcheckbox({\n control,\n type = \"checkbox\",\n notValue = false,\n renderer,\n ...others\n}: HtmlInputProperties & {\n control: Control<boolean | null | undefined>;\n renderer: FormRenderer;\n notValue?: boolean;\n}) {\n const { Input } = renderer.html;\n const { value, onChange, errorText, ref, ...theseProps } =\n formControlProps(control);\n return (\n <Input\n {...theseProps}\n checked={!!value !== notValue}\n inputRef={(r) => (control.element = r)}\n onChangeChecked={(e) => {\n control.touched = true;\n control.value = e !== notValue;\n }}\n type={type}\n {...others}\n />\n );\n}\n","import {\n createLayoutRenderer,\n FormRenderer,\n RenderedLayout,\n rendererClass,\n renderLayoutParts,\n} from \"@react-typed-forms/schemas\";\nimport { DefaultLayoutRendererOptions } from \"../rendererOptions\";\nimport React, { ReactNode, Fragment } from \"react\";\n\nexport function createDefaultLayoutRenderer(\n options: DefaultLayoutRendererOptions = {},\n) {\n return createLayoutRenderer((props, renderers) => {\n const layout = renderLayoutParts(props, renderers);\n return {\n children: layout.wrapLayout(\n <DefaultLayout layout={layout} {...options} renderer={renderers} />,\n ),\n inline: layout.inline,\n className: rendererClass(layout.className, options.className),\n style: layout.style,\n divRef: (e) =>\n e && props.errorControl\n ? (props.errorControl.meta.scrollElement = e)\n : undefined,\n };\n });\n}\n\nexport function DefaultLayout({\n errorClass,\n renderer: {\n html: { Div, Span },\n },\n renderError = (e, errorId) =>\n e && (\n <Div>\n <Span id={errorId} className={errorClass}>\n {e}\n </Span>\n </Div>\n ),\n layout: { controlEnd, controlStart, label, children, errorControl, errorId },\n}: DefaultLayoutRendererOptions & {\n layout: RenderedLayout;\n renderer: FormRenderer;\n}) {\n const ec = errorControl;\n const errorText = ec && ec.touched ? ec.error : undefined;\n return (\n <>\n {label}\n {controlStart}\n {children}\n {renderError(errorText, errorId)}\n {controlEnd}\n </>\n );\n}\n","import React from \"react\";\nimport {\n FormRenderer,\n FormStateNode,\n SchemaDataNode,\n SchemaInterface,\n} from \"@react-typed-forms/schemas\";\n\nexport function DefaultDisplayOnly({\n dataNode,\n className,\n emptyText,\n schemaInterface,\n style,\n renderer,\n textClass,\n inline,\n state,\n}: {\n dataNode: SchemaDataNode;\n schemaInterface: SchemaInterface;\n className?: string;\n textClass?: string;\n style?: React.CSSProperties;\n inline: boolean;\n renderer: FormRenderer;\n emptyText?: string | null;\n state: FormStateNode;\n}) {\n const { display } = state.resolved;\n const text =\n display != null\n ? display\n : ((schemaInterface.isEmptyValue(\n dataNode.schema.field,\n dataNode.control.value,\n )\n ? emptyText\n : schemaInterface.textValueForData(dataNode)) ?? \"\");\n const { Div } = renderer.html;\n return (\n <Div\n style={style}\n className={className}\n textClass={textClass}\n text={text}\n inline={inline}\n />\n );\n}\n","import {\n createGroupRenderer,\n createScoped,\n DefaultFormNodeUi,\n FormStateNode,\n GroupRendererProps,\n GroupRenderType,\n rendererClass,\n TabsRenderOptions,\n} from \"@react-typed-forms/schemas\";\nimport { DefaultTabsRenderOptions } from \"../rendererOptions\";\nimport React, { Fragment, useEffect } from \"react\";\nimport clsx from \"clsx\";\nimport { useControl } from \"@react-typed-forms/core\";\nimport { Control } from \"@astroapps/controls\";\n\nexport function createTabsRenderer(options: DefaultTabsRenderOptions = {}) {\n return createGroupRenderer(\n (p, renderer) => {\n return (\n <TabsRenderer\n groupProps={p}\n tabOptions={p.renderOptions as TabsRenderOptions}\n options={options}\n />\n );\n },\n {\n renderType: GroupRenderType.Tabs,\n },\n );\n}\n\nfunction TabsRenderer({\n options,\n groupProps: { designMode, formNode, className, renderChild },\n tabOptions,\n}: {\n options: DefaultTabsRenderOptions;\n groupProps: GroupRendererProps;\n tabOptions: TabsRenderOptions;\n}) {\n const tabIndex = useControl(0);\n\n useEffect(() => {\n formNode.attachUi(new TabUi(tabIndex, formNode));\n }, [formNode, tabIndex]);\n\n const {\n tabClass,\n labelClass,\n tabListClass,\n inactiveClass,\n activeClass,\n contentClass,\n } = options;\n const currentTab = tabIndex.value;\n return designMode ? (\n <>{formNode.children.map((x, i) => renderTabs([x], i))}</>\n ) : (\n renderTabs(\n formNode.children.filter((x, i) => x.visible),\n 0,\n )\n );\n\n function renderTabs(tabs: FormStateNode[], key: number) {\n return (\n <div key={key} className={rendererClass(className, options.className)}>\n <ul className={rendererClass(null, tabListClass)}>\n {tabs.map((x, i) => (\n <li\n key={i}\n className={rendererClass(null, tabClass)}\n onClick={() => (tabIndex.value = i)}\n >\n <span\n className={rendererClass(\n null,\n clsx(\n labelClass,\n i == currentTab ? activeClass : inactiveClass,\n ),\n )}\n >\n {x.definition.title ? x.definition.title : \"<untitled>\"}\n </span>\n </li>\n ))}\n </ul>\n <div className={rendererClass(tabOptions.contentClass, contentClass)}>\n {renderChild(tabs[currentTab])}\n </div>\n </div>\n );\n }\n}\n\nclass TabUi extends DefaultFormNodeUi {\n constructor(\n private tabIndex: Control<number>,\n node: FormStateNode,\n ) {\n super(node);\n }\n ensureChildVisible(childIndex: number) {\n this.tabIndex.value = childIndex;\n super.ensureChildVisible(childIndex);\n }\n}\n","import {\n createGroupRenderer,\n FormRenderer,\n GridRendererOptions,\n GroupRendererProps,\n GroupRenderType,\n rendererClass,\n} from \"@react-typed-forms/schemas\";\nimport { DefaultGridRenderOptions } from \"../rendererOptions\";\nimport { ReactNode } from \"react\";\n\nexport function createGridRenderer(options?: DefaultGridRenderOptions) {\n return createGroupRenderer(\n (props, formRenderer) => (\n <GridRenderer\n groupProps={props}\n formRenderer={formRenderer}\n options={options}\n />\n ),\n {\n renderType: GroupRenderType.Grid,\n },\n );\n}\n\nfunction GridRenderer(props: {\n groupProps: GroupRendererProps;\n formRenderer: FormRenderer;\n options?: DefaultGridRenderOptions;\n}) {\n const { formNode, renderOptions, renderChild, className } = props.groupProps;\n const filteredChildren = formNode.children.filter((x, i) => x.visible);\n const { Div } = props.formRenderer.html;\n const defaults = props.options ?? {};\n const gridOptions = renderOptions as GridRendererOptions;\n const numColumns = gridOptions.columns ?? defaults.defaultColumns ?? 2;\n const allChildren = filteredChildren.map((x) => renderChild(x));\n\n const cellClass = gridOptions.cellClass\n ? getCellClassNames(gridOptions.cellClass)\n : getCellClassNames(defaults.cellClass);\n\n // split into numColumns items wrapped a div each\n const rows: ReactNode[][] = [];\n for (let i = 0; i < allChildren.length; i += numColumns) {\n rows.push(allChildren.slice(i, i + numColumns));\n }\n return (\n <Div className={rendererClass(className, defaults.className)}>\n {rows.map((row, rowIndex) => (\n <Div\n key={rowIndex}\n className={rendererClass(gridOptions.rowClass, defaults.rowClass)}\n >\n {row.map((cell, cellIndex) => (\n <Div\n key={cellIndex}\n className={cellClass?.at(cellIndex) ?? \"flex-1\"}\n >\n {cell}\n </Div>\n ))}\n </Div>\n ))}\n </Div>\n );\n}\n\nfunction getCellClassNames(cellClass?: string) {\n return cellClass?.split(\",\");\n}\n","import {\n ActionRendererProps,\n createAction,\n createGroupRenderer,\n deepMerge,\n fontAwesomeIcon,\n FormRenderer,\n GroupRendererProps,\n GroupRenderType,\n IconPlacement,\n IconReference,\n rendererClass,\n} from \"@react-typed-forms/schemas\";\nimport { CustomNavigationProps, DefaultWizardRenderOptions } from \"../rendererOptions\";\nimport { useComputed, useControl } from \"@react-typed-forms/core\";\nimport { Fragment, ReactNode } from \"react\";\n\n\nconst defaultOptions = {\n classes: {\n className: undefined,\n contentClass: \"min-h-96 overflow-auto\",\n navContainerClass: \"flex justify-between gap-4 my-2\",\n },\n actions: {\n nextText: \"Next\",\n nextIcon: fontAwesomeIcon(\"chevron-right\"),\n nextValidate: true,\n prevText: \"Prev\",\n prevIcon: fontAwesomeIcon(\"chevron-left\"),\n prevValidate: false,\n },\n renderNavigation: defaultNavigationRender,\n} satisfies DefaultWizardRenderOptions;\n\nfunction defaultNavigationRender({\n formRenderer,\n prev,\n next,\n className,\n}: CustomNavigationProps) {\n {\n const {\n html: { Div },\n renderAction,\n } = formRenderer;\n return (\n <Div className={className}>\n {renderAction(prev)}\n {renderAction(next)}\n </Div>\n );\n }\n}\n\nexport function createWizardRenderer(options?: DefaultWizardRenderOptions) {\n return createGroupRenderer(\n (props, formRenderer) => (\n <WizardRenderer\n groupProps={props}\n formRenderer={formRenderer}\n options={options}\n />\n ),\n {\n renderType: GroupRenderType.Wizard,\n },\n );\n}\n\nfunction WizardRenderer({\n groupProps: props,\n formRenderer,\n options,\n}: {\n groupProps: GroupRendererProps;\n formRenderer: FormRenderer;\n options?: DefaultWizardRenderOptions;\n}) {\n const mergedOptions = deepMerge(\n (options ?? {}) as typeof defaultOptions,\n defaultOptions,\n );\n const {\n classes: { className, contentClass, navContainerClass },\n actions: {\n nextText,\n nextIcon,\n prevText,\n prevIcon,\n nextValidate,\n prevValidate,\n },\n renderNavigation,\n } = mergedOptions;\n const { formNode, designMode, renderChild } = props;\n const {\n html: { Div },\n } = formRenderer;\n const childrenLength = formNode.getChildCount();\n const page = useControl(0);\n const currentPage = page.value;\n const isValid = useComputed(() => isPageValid());\n\n const next = createAction(\"nav\", () => nav(1, nextValidate), nextText, {\n hidden: !designMode && nextVisibleInDirection(1) == null,\n disabled: !isValid.value,\n icon: nextIcon,\n iconPlacement: IconPlacement.AfterText,\n });\n\n const prev = createAction(\"nav\", () => nav(-1, prevValidate), prevText, {\n disabled: !designMode && nextVisibleInDirection(-1) == null,\n icon: prevIcon,\n });\n const navElement = renderNavigation({\n formRenderer,\n page: countVisibleUntil(currentPage),\n totalPages: countVisibleUntil(childrenLength),\n prev,\n next: next,\n className: navContainerClass,\n validatePage: async () => validatePage(),\n });\n const content = designMode ? (\n <Div>{formNode.children.map((child) => renderChild(child))}</Div>\n ) : currentPage < childrenLength ? (\n <Div className={contentClass}>\n {renderChild(formNode.getChild(currentPage)!)}\n </Div>\n ) : (\n <Fragment />\n );\n\n return (\n <Div className={rendererClass(props.className, className)}>\n {content}\n {navElement}\n </Div>\n );\n\n function countVisibleUntil(untilPage: number) {\n let count = 0;\n for (let i = 0; i < untilPage && i < childrenLength; i++) {\n if (formNode.getChild(i)!.visible) {\n count++;\n }\n }\n return count;\n }\n\n function nav(dir: number, validate: boolean) {\n if (validate && !validatePage()) {\n return;\n }\n const next = nextVisibleInDirection(dir);\n if (next != null) {\n page.value = next;\n }\n }\n\n function nextVisibleInDirection(dir: number): number | null {\n let next = currentPage + dir;\n while (next >= 0 && next < childrenLength) {\n if (formNode.getChild(next)!.visible) {\n return next;\n }\n next += dir;\n }\n return null;\n }\n\n function validatePage() {\n const pageNode = formNode.getChild(currentPage);\n if (pageNode) {\n const valid = pageNode.validate();\n pageNode.setTouched(true);\n return valid;\n }\n return false;\n }\n\n function isPageValid() {\n return formNode.getChild(currentPage)!.valid;\n }\n}\n","import {\n ActionStyle,\n ControlActionHandler,\n createAction,\n createGroupRenderer,\n deepMerge,\n DialogRenderOptions,\n FormRenderer,\n GroupRendererProps,\n GroupRenderType,\n rendererClass,\n} from \"@react-typed-forms/schemas\";\nimport { DefaultDialogRenderOptions } from \"../rendererOptions\";\nimport { createOverlayState, Dialog, Modal } from \"@astroapps/aria-base\";\nimport { useControl } from \"@react-typed-forms/core\";\nimport { Fragment } from \"react\";\n\nexport const defaultDialogOptions = {\n classes: {\n className: \"\",\n titleClass: \"text-2xl font-bold\",\n containerClass:\n \"relative m-4 p-4 min-w-[400px] max-w-[80%] rounded-lg bg-white shadow-sm\",\n },\n} satisfies DefaultDialogRenderOptions;\n\nexport function createDialogRenderer(options?: DefaultDialogRenderOptions) {\n return createGroupRenderer(\n (props, renderer) => (\n <DefaultDialogRenderer\n props={props}\n options={options}\n renderer={renderer}\n renderOptions={props.renderOptions as DialogRenderOptions}\n />\n ),\n {\n renderType: GroupRenderType.Dialog,\n },\n );\n}\n\nexport function DefaultDialogRenderer({\n props,\n renderOptions,\n options,\n renderer,\n}: {\n props: GroupRendererProps;\n options?: DefaultDialogRenderOptions;\n renderOptions: DialogRenderOptions;\n renderer: FormRenderer;\n}) {\n const {\n classes: { titleClass, className, containerClass },\n } = deepMerge(options as typeof defaultDialogOptions, defaultDialogOptions);\n const open = useControl(false);\n const overlayState = createOverlayState(open);\n\n const actionOnClick: ControlActionHandler = (action) => {\n switch (action) {\n case \"closeDialog\":\n return () => overlayState.close();\n case \"openDialog\":\n return () => overlayState.open();\n }\n };\n\n const allChildren = props.formNode.children;\n const triggerChildren = allChildren.filter(\n (x) => x.definition.placement === \"trigger\",\n );\n const dialogContent = (\n <Dialog\n title={renderOptions.title}\n titleClass={titleClass}\n className={rendererClass(props.className, className)}\n >\n {allChildren\n .filter(\n (x) => !x.definition.placement || x.definition.placement === \"dialog\",\n )\n .map((x, i) => props.renderChild(x, { actionOnClick }))}\n </Dialog>\n );\n\n return (\n <>\n {triggerChildren.map((x, i) => props.renderChild(x, { actionOnClick }))}\n {props.designMode\n ? designContent()\n : open.value && (\n <Modal\n state={overlayState}\n isDismissable\n containerClass={containerClass}\n >\n {dialogContent}\n </Modal>\n )}\n </>\n );\n\n function designContent() {\n return (\n <>\n <div onClickCapture={() => overlayState.toggle()}>\n {renderer.renderAction(\n createAction(\n \"Toggle Dialog\",\n () => {},\n open.value ? \"Hide Content\" : \"Show Content\",\n { actionStyle: ActionStyle.Link },\n ),\n )}\n </div>\n {open.value && dialogContent}\n </>\n );\n }\n}\n","import React, {\n CSSProperties,\n Fragment,\n ReactElement,\n ReactNode,\n useId,\n} from \"react\";\nimport { Control, useControl } from \"@react-typed-forms/core\";\nimport {\n AccordionRenderer,\n ControlDataContext,\n createGroupRenderer,\n FormRenderer,\n GroupRendererProps,\n GroupRenderType,\n rendererClass,\n schemaDataForFieldRef,\n} from \"@react-typed-forms/schemas\";\nimport { DefaultAccordionRendererOptions } from \"../rendererOptions\";\n\nexport function DefaultAccordion({\n openCtrl,\n children,\n contentStyle,\n className,\n contentClassName,\n designMode,\n renderers,\n dataContext,\n title,\n options,\n defaultExpanded,\n isGroup,\n titleTextClass,\n}: {\n openCtrl?: Control<boolean> | undefined;\n children: ReactElement;\n title: ReactNode;\n isGroup: boolean;\n className?: string;\n titleTextClass?: string;\n defaultExpanded?: boolean | null;\n contentStyle?: CSSProperties;\n contentClassName?: string;\n designMode?: boolean;\n renderers: FormRenderer;\n dataContext: ControlDataContext;\n options?: DefaultAccordionRendererOptions;\n}) {\n const {\n iconOpen,\n iconClosed,\n togglerClass,\n renderTitle = (t: ReactNode) => t,\n renderToggler,\n useCss,\n } = options ?? {};\n const panelId = useId();\n const { Button, I, Div, Label } = renderers.html;\n const dataControl = (dataContext.dataNode ?? dataContext.parentNode).control;\n const open = useControl(!!defaultExpanded, { use: openCtrl });\n if (dataControl && !dataControl.meta.accordionState) {\n dataControl.meta.accordionState = open;\n }\n const isOpen = open.value;\n const fullContentStyle =\n isOpen || designMode ? contentStyle : { ...contentStyle, display: \"none\" };\n const currentIcon = isOpen ? iconOpen : iconClosed;\n const accordionClassName = rendererClass(className, options?.className);\n const accordionTitleTextClass = rendererClass(\n titleTextClass,\n options?.titleTextClass,\n );\n const accordionTitle = isGroup ? (\n title\n ) : (\n <Label textClass={accordionTitleTextClass}>{title}</Label>\n );\n\n const toggler = renderToggler ? (\n renderToggler(open, renderTitle(title, open))\n ) : (\n <Button\n className={accordionClassName}\n notWrapInText\n onClick={() => open.setValue((x) => !x)}\n aria-expanded={isOpen}\n aria-controls={panelId}\n >\n {accordionTitle}\n {currentIcon && (\n <I\n className={togglerClass}\n iconLibrary={currentIcon.library}\n iconName={currentIcon.name}\n />\n )}\n </Button>\n );\n\n // The content class name not currently used since if the content is wrapped in a group, the group will handle the styling\n return (\n <>\n {toggler}\n {(useCss || isOpen || designMode) && (\n <Div\n id={panelId}\n role=\"region\"\n style={fullContentStyle}\n className={contentClassName}\n >\n {children}\n </Div>\n )}\n </>\n );\n}\n\nexport function getAccordionState(\n c: Control<unknown>,\n): Control<boolean> | undefined {\n return c.meta.accordionState;\n}\n\nexport function createAccordionGroupRenderer(\n options?: DefaultAccordionRendererOptions,\n) {\n return createGroupRenderer(\n (p, renderer) => (\n <AccordionGroupRenderer\n groupProps={p}\n renderer={renderer}\n options={options}\n />\n ),\n {\n renderType: GroupRenderType.Accordion,\n },\n );\n}\n\nfunction AccordionGroupRenderer({\n groupProps,\n renderer,\n options,\n}: {\n groupProps: GroupRendererProps;\n renderer: FormRenderer;\n options?: DefaultAccordionRendererOptions;\n}) {\n const allChildren = groupProps.formNode.children;\n const titleChildren = allChildren.filter(\n (x) => x.definition.placement === \"title\",\n );\n const contentChildren = allChildren.filter(\n (x) => x.definition.placement !== \"title\",\n );\n\n const { expandStateField, defaultExpanded } =\n groupProps.renderOptions as AccordionRenderer;\n\n const expandStateFieldNode = expandStateField\n ? schemaDataForFieldRef(expandStateField, groupProps.dataContext.parentNode)\n : null;\n\n const open = expandStateFieldNode?.control.as<boolean>();\n\n return (\n <DefaultAccordion\n openCtrl={open}\n isGroup={true}\n options={options}\n children={<>{contentChildren.map((x) => groupProps.renderChild(x))}</>}\n title={<>{titleChildren.map((x) => groupProps.renderChild(x))}</>}\n renderers={renderer}\n className={groupProps.className}\n dataContext={groupProps.dataContext}\n designMode={groupProps.designMode}\n defaultExpanded={defaultExpanded}\n contentStyle={groupProps.style}\n />\n );\n}\n","import {\n ControlLayoutProps,\n FlexRenderer,\n FormRenderer,\n GroupRendererProps,\n GroupRendererRegistration,\n GroupRenderType,\n isAccordionRenderer,\n isDialogRenderer,\n isFlexRenderer,\n isGridRenderer,\n isInlineRenderer,\n isSelectChildRenderer,\n isTabsRenderer,\n isWizardRenderer,\n rendererClass,\n SelectChildRenderer,\n useExpression,\n} from \"@react-typed-forms/schemas\";\nimport {\n DefaultAccordionRendererOptions,\n DefaultDialogRenderOptions,\n DefaultGridRenderOptions,\n DefaultGroupRendererOptions,\n DefaultTabsRenderOptions,\n DefaultWizardRenderOptions,\n DefaultAdornmentRendererOptions,\n} from \"../rendererOptions\";\nimport clsx from \"clsx\";\nimport React, { CSSProperties, ReactElement } from \"react\";\nimport { createTabsRenderer } from \"./TabsRenderer\";\nimport { createGridRenderer } from \"./GridRenderer\";\nimport {\n createWizardRenderer,\n} from \"./DefaultWizardRenderer\";\nimport {\n createDialogRenderer,\n} from \"./DefaultDialogRenderer\";\nimport { createAccordionGroupRenderer } from \"./DefaultAccordion\";\n\ninterface StyleProps {\n className?: string;\n style?: CSSProperties;\n}\n\n\nexport function createDefaultGroupRenderer(\n options?: DefaultGroupRendererOptions,\n adornmentOptions?: DefaultAdornmentRendererOptions,\n): GroupRendererRegistration {\n const gridRenderer = createGridRenderer(options?.grid);\n const tabsRenderer = createTabsRenderer(options?.tabs);\n const wizardRenderer = createWizardRenderer(options?.wizard);\n const dialogRenderer = createDialogRenderer(options?.dialog);\n const accordionRenderer = createAccordionGroupRenderer(\n options?.accordion ?? adornmentOptions?.accordion,\n );\n const {\n className,\n standardClassName,\n flexClassName,\n inlineClass,\n defaultFlexGap,\n } = options ?? {};\n\n function flexStyles(options: FlexRenderer): StyleProps {\n return {\n className: flexClassName,\n style: {\n display: \"flex\",\n gap: options.gap ? options.gap : defaultFlexGap,\n flexDirection: options.direction\n ? (options.direction as any)\n : undefined,\n },\n };\n }\n\n function render(props: GroupRendererProps, renderer: FormRenderer) {\n const { renderChild, renderOptions, formNode } = props;\n if (isTabsRenderer(renderOptions))\n return tabsRenderer.render(props, renderer);\n if (isGridRenderer(renderOptions))\n return gridRenderer.render(props, renderer);\n if (isWizardRenderer(renderOptions))\n return wizardRenderer.render(props, renderer);\n if (isDialogRenderer(renderOptions))\n return dialogRenderer.render(props, renderer);\n if (isAccordionRenderer(renderOptions))\n return accordionRenderer.render(props, renderer);\n if (isSelectChildRenderer(renderOptions) && !props.designMode) {\n return (\n <SelectChildGroupRenderer\n props={{ ...props, renderOptions }}\n renderer={renderer}\n />\n );\n }\n\n const { style, className: gcn } = isFlexRenderer(renderOptions)\n ? flexStyles(renderOptions)\n : isInlineRenderer(renderOptions)\n ? ({ className: inlineClass } as StyleProps)\n : ({ className: standardClassName } as StyleProps);\n const { Div } = renderer.html;\n const inline = renderOptions.type == GroupRenderType.Inline;\n const children = formNode.children.map((c, i) =>\n renderChild(c, {\n inline,\n }),\n );\n return (\n <Div\n className={rendererClass(props.className, clsx(className, gcn))}\n textClass={props.textClass}\n style={style}\n inline={inline}\n >\n {children}\n </Div>\n );\n }\n\n function renderLayout(\n props: GroupRendererProps,\n renderer: FormRenderer,\n ): ReactElement | ((layout: ControlLayoutProps) => ControlLayoutProps) {\n if (props.renderOptions.type === GroupRenderType.Contents) {\n const { formNode, renderChild } = props;\n const children = formNode.children.map((c) => renderChild(c));\n return (layout) => {\n return {\n ...layout,\n inline: true,\n children,\n };\n };\n }\n return render(props, renderer);\n }\n\n return { type: \"group\", render: renderLayout };\n}\n\ntype SelectChildProps = Pick<\n GroupRendererProps,\n \"runExpression\" | \"dataContext\" | \"formNode\" | \"renderChild\"\n> & {\n renderOptions: SelectChildRenderer;\n};\nfunction SelectChildGroupRenderer({\n props,\n renderer,\n}: {\n props: SelectChildProps;\n renderer: FormRenderer;\n}) {\n const { Div } = renderer.html;\n const { runExpression, renderOptions } = props;\n const ctrl = useExpression(\n undefined,\n runExpression,\n renderOptions?.childIndexExpression,\n (x) => (typeof x == \"string\" ? parseInt(x) : x),\n );\n const childIndex = ctrl?.value;\n const childCount = props.formNode.getChildCount();\n return (\n <Div>\n {typeof childIndex === \"number\" &&\n childIndex < childCount &&\n childIndex >= 0 &&\n props.renderChild(props.formNode.getChild(childIndex)!)}\n </Div>\n );\n}\n","import {\n createVisibilityRenderer,\n VisibilityRendererProps,\n} from \"@react-typed-forms/schemas\";\nimport { FormRenderer } from \"@react-typed-forms/schemas/lib\";\nimport React, { Fragment, useEffect } from \"react\";\n\nexport function createDefaultVisibilityRenderer() {\n return createVisibilityRenderer((props, renderer) => (\n <DefaultVisibility {...props} renderer={renderer} />\n ));\n}\n\nexport function DefaultVisibility({\n visibility,\n children,\n className,\n style,\n divRef,\n renderer,\n inline,\n}: VisibilityRendererProps & { renderer: FormRenderer }) {\n const v = visibility.value;\n useEffect(() => {\n if (v) {\n visibility.setValue((ex) => ({ visible: v.visible, showing: v.visible }));\n }\n }, [v?.visible]);\n const { Div } = renderer.html;\n if (inline) return v?.visible ? children : undefined;\n return v?.visible ? (\n <Div\n className={className}\n style={style}\n nativeRef={divRef}\n children={children}\n />\n ) : (\n <></>\n );\n}\n","import {\n ChangeListenerFunc,\n Control,\n delayedValue,\n trackedValue,\n useComputed,\n} from \"@react-typed-forms/core\";\nimport React from \"react\";\nimport {\n coerceToString,\n ControlDataContext,\n createDataRenderer,\n DataRenderType,\n ExpressionType,\n FormContextData,\n getJsonPath,\n JsonataExpression,\n JsonataRenderOptions,\n rendererClass,\n RunExpression,\n SchemaDataNode,\n useExpression,\n} from \"@react-typed-forms/schemas\";\n\nexport function createJsonataRenderer(className?: string) {\n return createDataRenderer(\n (p) => (\n <JsonataRenderer\n renderOptions={p.renderOptions as JsonataRenderOptions}\n className={rendererClass(p.className, className)}\n dataNode={p.dataNode}\n dataContext={p.dataContext}\n control={p.control}\n readonly={p.readonly}\n runExpression={p.runExpression}\n />\n ),\n { renderType: DataRenderType.Jsonata },\n );\n}\n\nexport function JsonataRenderer({\n control,\n renderOptions,\n readonly,\n className,\n dataContext,\n dataNode,\n runExpression,\n}: {\n control: Control<any>;\n renderOptions: JsonataRenderOptions;\n className?: string;\n dataContext: ControlDataContext;\n dataNode: SchemaDataNode;\n readonly: boolean;\n runExpression: RunExpression;\n}) {\n const bindings = (changes: ChangeListenerFunc<any>) => ({\n value: trackedValue(control, changes),\n readonly,\n disabled: control.disabled,\n dataPath: getJsonPath(dataNode),\n });\n const rendered = useExpression(\n \"\",\n runExpression,\n {\n type: ExpressionType.Jsonata,\n expression: renderOptions.expression,\n } as JsonataExpression,\n coerceToString,\n bindings,\n );\n return (\n <div\n className={className}\n dangerouslySetInnerHTML={{ __html: rendered.value }}\n />\n );\n}\n","import {\n createDataRenderer,\n DataRenderType,\n FieldType,\n getLastDefinedValue,\n getNullToggler,\n} from \"@react-typed-forms/schemas\";\n\nexport function createNullToggleRenderer() {\n return createDataRenderer(\n ({ control, field, renderOptions, ...props }, renderers) => {\n const lastDefined = getLastDefinedValue(control);\n if (lastDefined.current.value == null)\n lastDefined.value = props.definition.defaultValue;\n const nullControl = getNullToggler(control);\n nullControl.disabled = props.readonly;\n return (layout) => {\n return renderers.renderData({\n ...props,\n control: nullControl,\n field: { ...field, type: FieldType.Bool },\n renderOptions: { type: DataRenderType.Checkbox },\n })(layout);\n };\n },\n );\n}\n","import clsx from \"clsx\";\nimport React, { Fragment, ReactNode } from \"react\";\nimport {\n ActionRendererProps,\n applyArrayLengthRestrictions,\n ArrayActionOptions,\n ArrayRendererProps,\n ArrayRendererRegistration,\n ArrayRenderOptions,\n createArrayActions,\n createDataRenderer,\n DataRendererProps,\n DataRendererRegistration,\n DataRenderType,\n FormRenderer,\n getLengthRestrictions,\n HtmlComponents,\n isArrayRenderer,\n mergeObjects,\n rendererClass,\n} from \"@react-typed-forms/schemas\";\nimport { DefaultArrayRendererOptions } from \"../rendererOptions\";\nimport { RenderControl } from \"@react-typed-forms/core\";\n\nexport function createDefaultArrayDataRenderer(\n defaultActions?: ArrayActionOptions,\n): DataRendererRegistration {\n return createDataRenderer(\n (props, renderers) => {\n return (\n <DataArrayRenderer\n dataProps={props}\n renderers={renderers}\n defaultActions={defaultActions}\n />\n );\n },\n { renderType: DataRenderType.Array, collection: true },\n );\n}\n\n/**\n * @trackControls\n */\nexport function DataArrayRenderer({\n dataProps,\n renderers,\n defaultActions,\n}: {\n renderers: FormRenderer;\n dataProps: DataRendererProps;\n defaultActions?: ArrayActionOptions;\n}) {\n const {\n renderOptions,\n control,\n field,\n readonly,\n designMode,\n required,\n renderChild,\n definition,\n className,\n style,\n dataContext,\n formNode,\n } = dataProps;\n\n const {\n addText,\n noAdd,\n noRemove,\n noReorder,\n removeText,\n editExternal,\n childOverrideClass,\n } = mergeObjects(\n isArrayRenderer(renderOptions) ? renderOptions : ({} as ArrayRenderOptions),\n defaultActions as ArrayRenderOptions,\n );\n\n const arrayProps = {\n ...createArrayActions(control.as(), () => formNode.getChildCount(), field, {\n addText,\n removeText,\n noAdd,\n noRemove,\n readonly,\n disabled: control.disabled,\n designMode,\n editExternal,\n }),\n childOverrideClass,\n required,\n renderElement: (i, wrap) => {\n const n = formNode.getChild(i);\n return !n || !n.visible ? undefined : wrap(n.childKey, renderChild(n));\n },\n className: className ? className : undefined,\n style,\n ...getLengthRestrictions(definition),\n } satisfies ArrayRendererProps;\n\n return renderers.renderArray(arrayProps);\n}\n\nexport function createDefaultArrayRenderer(\n options?: DefaultArrayRendererOptions,\n): ArrayRendererRegistration {\n return {\n render: (props, { renderAction, html }) => (\n <DefaultArrayRenderer\n {...props}\n {...options}\n renderAction={renderAction}\n html={html}\n />\n ),\n type: \"array\",\n };\n}\n\nexport interface DefaultArrayRendererProps\n extends DefaultArrayRendererOptions,\n ArrayRendererProps {\n renderAction: (props: ActionRendererProps) => ReactNode;\n html: HtmlComponents;\n}\n\nexport function DefaultArrayRenderer(props: DefaultArrayRendererProps) {\n const {\n renderElement,\n className,\n removableClass,\n childClass,\n removableChildClass,\n childOverrideClass,\n removeActionClass,\n addActionClass,\n getElementCount,\n renderAction,\n style,\n editAction,\n html: { Div },\n } = props;\n const { addAction, removeAction } = applyArrayLengthRestrictions(props);\n return (\n <Div style={style}>\n <Div className={clsx(className, removeAction && removableClass)}>\n {Array.from({ length: getElementCount() }, (_, x) => (\n <RenderControl\n key={x}\n render={() =>\n renderElement(x, (key, children) =>\n removeAction || editAction ? (\n <Fragment key={key}>\n <Div\n className={clsx(\n rendererClass(childOverrideClass, childClass),\n removableChildClass,\n )}\n >\n {children}\n </Div>\n <Div className={removeActionClass}>\n {editAction && renderAction(editAction(x))}\n {removeAction && renderAction(removeAction(x))}\n </Div>\n </Fragment>\n ) : (\n <Div\n key={key}\n className={rendererClass(childOverrideClass, childClass)}\n >\n {children}\n </Div>\n ),\n )\n }\n />\n ))}\n </Div>\n {addAction && (\n <Div className={addActionClass}>{renderAction(addAction)}</Div>\n )}\n </Div>\n );\n}\n","import React from \"react\";\nimport {\n Control,\n controlValues,\n removeElement,\n useControl,\n useControlEffect,\n} from \"@react-typed-forms/core\";\nimport {\n AutocompleteClasses,\n createDataRenderer,\n DataRenderType,\n FieldOption,\n rendererClass,\n} from \"@react-typed-forms/schemas\";\nimport { AutocompleteRendererOptions } from \"../rendererOptions\";\nimport { useAutocomplete, UseAutocompleteProps } from \"@mui/base\";\nimport clsx from \"clsx\";\n\nexport interface AutocompleteProps<A, Multiple extends boolean>\n extends UseAutocompleteProps<A, Multiple, false, true> {\n control: Control<any>;\n className?: string;\n classes: AutocompleteRendererOptions;\n controlClasses?: AutocompleteClasses;\n}\n\nconst inputClass =\n \"leading-[1.5] text-surface-900 bg-[inherit] border-0 rounded-[inherit] px-3 py-2 outline-0 grow shrink-0 basis-auto focus:outline-0 focus:ring-0 focus:shadow-none\";\n\nexport function createAutocompleteRenderer(\n options: AutocompleteRendererOptions = {},\n) {\n return createDataRenderer(\n (p) => {\n return p.field.collection ? (\n <MultipleAutocomplete\n options={p.options ?? []}\n control={p.control}\n className={rendererClass(p.className, options.className)}\n classes={options}\n controlClasses={p.renderOptions as AutocompleteClasses}\n readOnly={p.readonly}\n id={p.id}\n />\n ) : (\n <SingleAutocomplete\n options={p.options ?? []}\n control={p.control}\n className={rendererClass(p.className, options.className)}\n classes={options}\n controlClasses={p.renderOptions as AutocompleteClasses}\n readOnly={p.readonly}\n id={p.id}\n />\n );\n },\n {\n renderType: DataRenderType.Autocomplete,\n },\n );\n}\n\nfunction SingleAutocomplete({\n ...props\n}: AutocompleteProps<FieldOption | string, false>) {\n const { id, control, className, readOnly, classes, controlClasses } = props;\n const { disabled } = control;\n\n const inputControl = useControl<string>(\"\");\n const selectedOptionControl = useControl<string | FieldOption | null>(null);\n\n const listContainerClass = rendererClass(\n controlClasses?.listContainerClass,\n classes.listContainerClass,\n );\n\n const listEntryClass = rendererClass(\n controlClasses?.listEntryClass,\n classes.listEntryClass,\n );\n\n useControlEffect(\n controlValues(inputControl, selectedOptionControl),\n ([text, selected]) => {\n control.value = selected\n ? typeof selected === \"string\"\n ? selected\n : selected.value\n : text;\n },\n );\n\n const {\n getRootProps,\n getInputProps,\n getListboxProps,\n getOptionProps,\n groupedOptions,\n popupOpen,\n focused,\n getPopupIndicatorProps,\n } = useAutocomplete({\n freeSolo: true,\n multiple: false,\n readOnly,\n value: selectedOptionControl.value,\n inputValue: inputControl.value,\n getOptionLabel: (v) => (typeof v === \"string\" ? v : v.name),\n filterOptions: (o, s) =>\n o.filter((o) => {\n const label = typeof o === \"string\" ? o : o.name;\n return label.toLowerCase().includes(s.inputValue.toLowerCase());\n }),\n onInputChange: (_, v, reason) => {\n inputControl.value = v;\n if (reason === \"input\") selectedOptionControl.value = null;\n },\n onChange: (_, v, reason) => {\n if (reason === \"selectOption\") {\n selectedOptionControl.value = v;\n }\n },\n ...props,\n });\n return (\n <div id={id} className={\"relative\"} {...getRootProps()}>\n <div\n className={clsx(\n className,\n focused\n ? \"border-primary-400 shadow-[0_0_0_3px_transparent] shadow-primary-200\"\n : \"shadow-[0_2px_2px_transparent] shadow-surface-50\",\n )}\n >\n <input\n type={\"text\"}\n {...getInputProps()}\n placeholder={controlClasses?.placeholder ?? \"\"}\n className={inputClass}\n readOnly={readOnly}\n />\n\n <button\n {...getPopupIndicatorProps()}\n disabled={disabled || readOnly}\n className={\n \"outline-0 shadow-none border-0 py-0 px-0.5 bg-transparent pr-[10px]\"\n }\n >\n <li\n className={clsx(\n \"fa-solid fa-angle-down\",\n \"text-primary-500\",\n popupOpen && \"rotate-180\",\n )}\n />\n </button>\n </div>\n {groupedOptions.length > 0 && popupOpen && (\n <ul {...getListboxProps()} className={listContainerClass}>\n {(groupedOptions as FieldOption[]).map((option, index) => {\n const optionProps = getOptionProps({ option, index });\n return (\n <li\n {...optionProps}\n key={optionProps.key}\n className={listEntryClass}\n >\n {option.name}\n </li>\n );\n })}\n </ul>\n )}\n </div>\n );\n}\n\nfunction MultipleAutocomplete({\n ...props\n}: AutocompleteProps<FieldOption, true>) {\n const { id, control, className, readOnly, classes, controlClasses } = props;\n const { disabled } = control;\n\n const inputControl = useControl<string>(\"\");\n const selectedOptionsControl = useControl<(string | FieldOption)[] | null>(\n null,\n );\n\n const listContainerClass = rendererClass(\n controlClasses?.listContainerClass,\n classes.listContainerClass,\n );\n const listEntryClass = rendererClass(\n controlClasses?.listEntryClass,\n classes.listEntryClass,\n );\n\n const chipContainerClass = rendererClass(\n controlClasses?.chipContainerClass,\n classes.chipContainerClass,\n );\n\n const chipCloseButtonClass = rendererClass(\n controlClasses?.chipCloseButtonClass,\n classes.chipCloseButtonClass,\n );\n\n useControlEffect(\n controlValues(inputControl, selectedOptionsControl),\n ([text, selected]) => {\n const selectedValues =\n selected?.map((v) => {\n return typeof v === \"string\" ? v : v.value;\n }) ?? [];\n control.value = text ? selectedValues.concat(text) : selectedValues;\n },\n );\n\n const {\n getRootProps,\n getInputProps,\n getListboxProps,\n getOptionProps,\n groupedOptions,\n popupOpen,\n focused,\n getPopupIndicatorProps,\n } = useAutocomplete({\n value: selectedOptionsControl.value ?? [],\n inputValue: inputControl.value,\n freeSolo: true,\n readOnly,\n multiple: true,\n getOptionLabel: (v) => (typeof v === \"string\" ? v : v.name),\n filterOptions: (o, s) =>\n o.filter((o) => {\n const label = typeof o === \"string\" ? o : o.name;\n return label.toLowerCase().includes(s.inputValue.toLowerCase());\n }),\n onInputChange: (_, v) => {\n inputControl.value = v;\n },\n onChange: (_, v, reason) => {\n if (reason === \"selectOption\" || reason === \"removeOption\") {\n selectedOptionsControl.value = v;\n }\n },\n ...props,\n });\n\n return (\n <div id={id} className={\"relative\"} {...getRootProps()}>\n <div\n className={clsx(\n className,\n focused\n ? \"border-primary-400 shadow-[0_0_0_3px_transparent] shadow-primary-200\"\n : \"shadow-[0_2px_2px_transparent] shadow-surface-50\",\n )}\n >\n <div className={\"flex flex-1 flex-row flex-wrap\"}>\n {selectedOptionsControl.value?.map((v) => (\n <Chip\n key={typeof v === \"string\" ? v : v.name}\n text={typeof v === \"string\" ? v : v.name}\n chipContainerClass={chipContainerClass}\n chipCloseButtonClass={chipCloseButtonClass}\n onDeleteClick={\n readOnly || disabled\n ? undefined\n : () => {\n const c = selectedOptionsControl.elements.find(\n (x) => x.value == v,\n );\n if (c) removeElement(selectedOptionsControl, c);\n }\n }\n />\n ))}\n <input\n type={\"text\"}\n {...getInputProps()}\n placeholder={controlClasses?.placeholder ?? \"\"}\n className={clsx(inputClass)}\n readOnly={readOnly}\n />\n </div>\n\n <button\n {...getPopupIndicatorProps()}\n disabled={disabled || readOnly}\n className={\n \"outline-0 shadow-none border-0 py-0 px-0.5 bg-transparent pr-[10px]\"\n }\n >\n <i\n className={clsx(\n \"fa-solid fa-angle-down\",\n \"text-primary-500\",\n popupOpen && \"rotate-180\",\n )}\n />\n </button>\n </div>\n {groupedOptions.length > 0 && popupOpen && (\n <ul {...getListboxProps()} className={listContainerClass}>\n {(groupedOptions as FieldOption[]).map((option, index) => {\n const optionProps = getOptionProps({ option, index });\n return (\n <li\n {...optionProps}\n key={optionProps.key}\n className={listEntryClass}\n >\n {option.name}\n </li>\n );\n })}\n </ul>\n )}\n </div>\n );\n}\n\nfunction Chip({\n text,\n chipContainerClass,\n chipCloseButtonClass,\n onDeleteClick,\n}: {\n text: string;\n chipContainerClass?: string;\n chipCloseButtonClass?: string;\n onDeleteClick?: () => void;\n}) {\n return (\n <div className={chipContainerClass}>\n {text}\n <i\n className={chipCloseButtonClass}\n onClick={() => {\n onDeleteClick?.();\n }}\n />\n </div>\n );\n}\n","import {\n Control,\n setFields,\n trackedValue,\n useControl,\n} from \"@react-typed-forms/core\";\nimport {\n boolField,\n buildSchema,\n ControlDefinitionExtension,\n createDataRenderer,\n createFormTree,\n createSchemaDataNode,\n createSchemaTree,\n DataControlDefinition,\n defaultControlForField,\n FormRenderer,\n RenderForm,\n RenderOptions,\n schemaDataForFieldRef,\n SchemaField,\n schemaForFieldRef,\n SchemaNode,\n stringField,\n} from \"@react-typed-forms/schemas\";\nimport { ValueForFieldRenderOptions, ValueForFieldOptions } from \"../rendererOptions\";\nimport React, { Fragment, useMemo } from \"react\";\n\nconst RenderType = \"ValueForField\";\n\nexport const ValueForFieldExtension: ControlDefinitionExtension = {\n RenderOptions: {\n value: RenderType,\n name: \"Value For Field\",\n fields: buildSchema<Omit<ValueForFieldRenderOptions, \"type\">>({\n fieldRef: stringField(\"Field Reference\"),\n noOptions: boolField(\"No Options\"),\n refIsDirect: boolField(\"Reference is direct\"),\n }),\n },\n};\n\nexport function createValueForFieldRenderer(options: ValueForFieldOptions) {\n return createDataRenderer(\n (o, renderer) => {\n const { fieldRef, noOptions, refIsDirect } =\n o.renderOptions as ValueForFieldRenderOptions;\n const actualFieldRef = fieldRef\n ? refIsDirect\n ? fieldRef\n : (schemaDataForFieldRef(fieldRef, o.dataContext.parentNode)?.control\n ?.value as string)\n : \".\";\n let schemaField: SchemaField | undefined;\n if (refIsDirect) {\n const dataNode = schemaDataForFieldRef(\n actualFieldRef,\n o.dataContext.parentNode,\n );\n schemaField = trackedValue(dataNode.control.as<SchemaField>());\n } else {\n schemaField = actualFieldRef\n ? schemaForFieldRef(actualFieldRef, options.schema).field\n : undefined;\n }\n return schemaField ? (\n <ValueForField\n renderer={renderer}\n schemaField={schemaField}\n control={o.control}\n noOptions={noOptions}\n />\n ) : (\n <>{actualFieldRef ? \"No schema node for \" + actualFieldRef : \"\"}</>\n );\n },\n {\n renderType: RenderType,\n },\n );\n}\n\nfunction ValueForField({\n schemaField,\n renderer,\n control,\n noOptions,\n}: {\n schemaField: SchemaField;\n renderer: FormRenderer;\n control: Control<any>;\n noOptions?: boolean;\n}) {\n const value = useControl({ default: undefined }, undefined, (e) =>\n setFields(e, { default: control }),\n );\n const [controls, rootSchema] = useMemo(() => {\n const adjustedField: SchemaField = {\n ...schemaField,\n collection: noOptions ? false : schemaField.collection,\n options: noOptions ? undefined : schemaField.options,\n field: \"default\",\n required: false,\n notNullable: false,\n onlyForTypes: null,\n defaultValue: undefined,\n };\n const control: DataControlDefinition = {\n ...defaultControlForField(adjustedField),\n hideTitle: true,\n };\n const rootSchema = createSchemaTree([adjustedField]).rootNode;\n return [createFormTree([control]), rootSchema];\n }, [schemaField]);\n\n return (\n <RenderForm\n form={controls.rootNode}\n renderer={renderer}\n data={createSchemaDataNode(rootSchema, value)}\n options={{ disabled: control.disabled }}\n />\n );\n}\n","import {\n AdornmentPlacement,\n AdornmentRendererRegistration,\n appendMarkupAt,\n ControlAdornmentType,\n ControlDataContext,\n createAdornmentRenderer,\n getAllValues,\n getIsEditing,\n getNullToggler,\n OptionalAdornment,\n wrapMarkup,\n} from \"@react-typed-forms/schemas\";\nimport { DefaultOptionalAdornmentOptions, OptionalRenderProps } from \"../rendererOptions\";\nimport { Control, Fcheckbox, newControl } from \"@react-typed-forms/core\";\nimport React, { ReactNode } from \"react\";\nexport function createOptionalAdornment(\n options: DefaultOptionalAdornmentOptions = {},\n): AdornmentRendererRegistration {\n return createAdornmentRenderer(\n (props, renderers) => {\n const { dataContext } = props;\n const dataControl =\n dataContext.dataNode?.control ?? newControl(undefined);\n const adornment = props.adornment as OptionalAdornment;\n const editing = getIsEditing(dataControl);\n const isEditing = editing.value;\n const nullToggler = getNullToggler(dataControl);\n if (isEditing === undefined && adornment.editSelectable)\n editing.value = false;\n dataControl.disabled =\n !isEditing || !!(adornment.allowNull && !nullToggler.value);\n return {\n apply: (rl) => {\n if (props.formNode.readonly) return rl;\n if (!options.hideEdit && adornment.editSelectable)\n appendMarkupAt(\n adornment.placement ??\n options.defaultPlacement ??\n AdornmentPlacement.LabelStart,\n <Fcheckbox control={editing} className={options.checkClass} />,\n )(rl);\n wrapMarkup(\"children\", (children) => {\n const props = {\n allValues: getAllValues(dataControl),\n editing,\n children,\n adornment,\n nullToggler,\n dataContext,\n options,\n dataControl,\n };\n return options.customRender ? (\n options.customRender(props)\n ) : (\n <OptionalEditRenderer {...props} />\n );\n })(rl);\n },\n priority: 0,\n adornment,\n };\n },\n { adornmentType: ControlAdornmentType.Optional },\n );\n}\n\nexport function OptionalEditRenderer({\n children,\n options,\n adornment,\n editing,\n renderMultiValues,\n allValues,\n nullToggler,\n}: OptionalRenderProps & {\n renderMultiValues?: (allValues: Control<unknown[]>) => ReactNode;\n}) {\n renderMultiValues ??= () => options.multiValuesText ?? \"Differing values\";\n const multipleValues = allValues.value.length > 1;\n const nullEdit = adornment.allowNull ? (\n <div className={options.nullWrapperClass}>\n <Fcheckbox\n control={nullToggler}\n className={options.checkClass}\n notValue\n />\n <span>{options.setNullText ?? \"Null\"}</span>\n </div>\n ) : undefined;\n return (\n <div className={options.className}>\n {multipleValues && editing.value === false ? (\n <div className={options.multiValuesClass}>\n {renderMultiValues(allValues)}\n </div>\n ) : (\n <div className={options.childWrapperClass}>\n {nullEdit}\n {children}\n </div>\n )}\n </div>\n );\n}\n","import React, { useRef } from \"react\";\nimport { useControlEffect } from \"@react-typed-forms/core\";\nimport {\n createDataRenderer,\n DataRendererProps,\n rendererClass,\n} from \"@react-typed-forms/schemas\";\n\nexport function createMultilineFieldRenderer(className?: string) {\n return createDataRenderer((p) => (\n <MultilineTextfield\n {...p}\n className={rendererClass(p.className, className)}\n />\n ));\n}\n\nexport function MultilineTextfield({ control, className }: DataRendererProps) {\n const codeRef = useRef<HTMLElement | null>(null);\n useControlEffect(\n () => control.value,\n (v) => {\n const c = codeRef.current;\n if (c && c.textContent !== v) {\n c.textContent = v;\n }\n },\n true,\n );\n return (\n <code\n contentEditable={!control.disabled}\n className={className}\n onInput={(t) => (control.value = t.currentTarget.textContent)}\n ref={codeRef}\n />\n );\n}\n","import { ReactNode, ReactElement } from \"react\";\nimport { Control } from \"@react-typed-forms/core\";\nimport {\n CheckRendererOptions,\n FieldOption,\n DataRendererRegistration,\n ArrayActionOptions,\n RendererRegistration,\n FormRenderer,\n IconReference,\n AdornmentPlacement,\n IconPlacement,\n RenderOptions,\n SchemaNode,\n ActionRendererProps,\n ControlDataContext,\n OptionalAdornment,\n} from \"@react-typed-forms/schemas\";\n\n// ============================================================================\n// SHARED TYPES AND INTERFACES\n// ============================================================================\n\n// Custom navigation props for wizard renderer\nexport interface CustomNavigationProps {\n className?: string;\n page: number;\n totalPages: number;\n next: ActionRendererProps;\n prev: ActionRendererProps;\n formRenderer: FormRenderer;\n validatePage: () => Promise<boolean>;\n}\n\n\n// ============================================================================\n// INDIVIDUAL COMPONENT OPTIONS INTERFACES\n// ============================================================================\n\nexport interface SelectRendererOptions {\n className?: string;\n emptyText?: string;\n requiredText?: string;\n}\n\nexport interface AutocompleteRendererOptions {\n className?: string;\n listContainerClass?: string;\n listEntryClass?: string;\n chipContainerClass?: string;\n chipCloseButtonClass?: string;\n}\n\nexport interface ArrayElementRendererOptions {\n className?: string;\n actionsClass?: string;\n}\n\nexport interface DefaultScrollListOptions {\n loadingIcon?: IconReference;\n iconClass?: string;\n spinnerClass?: string;\n className?: string;\n}\n\nexport interface DefaultDisplayRendererOptions {\n textClassName?: string;\n textTextClass?: string;\n htmlClassName?: string;\n}\n\nexport interface DefaultGridRenderOptions {\n className?: string;\n defaultColumns?: number;\n rowClass?: string;\n cellClass?: string;\n}\n\nexport interface DefaultDialogRenderOptions {\n classes?: {\n className?: string;\n titleClass?: string;\n containerClass?: string;\n };\n}\n\nexport interface DefaultTabsRenderOptions {\n className?: string;\n tabListClass?: string;\n tabClass?: string;\n labelClass?: string;\n activeClass?: string;\n inactiveClass?: string;\n contentClass?: string;\n}\n\nexport interface DefaultWizardRenderOptions {\n classes?: {\n className?: string;\n navContainerClass?: string;\n contentClass?: string;\n };\n actions?: {\n nextText?: string;\n nextIcon?: IconReference;\n nextValidate?: boolean;\n prevText?: string;\n prevIcon?: IconReference;\n prevValidate?: boolean;\n };\n renderNavigation?: (props: CustomNavigationProps) => ReactNode;\n}\n\nexport interface ValueForFieldRenderOptions extends RenderOptions {\n type: \"ValueForField\";\n fieldRef?: string | null;\n noOptions?: boolean;\n refIsDirect?: boolean;\n}\n\nexport interface ValueForFieldOptions {\n schema: SchemaNode;\n}\n\nexport interface DefaultArrayRendererOptions extends ArrayActionOptions {\n className?: string;\n removableClass?: string;\n childClass?: string;\n removableChildClass?: string;\n removeActionClass?: string;\n addActionClass?: string;\n}\n\nexport interface DefaultLayoutRendererOptions {\n className?: string;\n errorClass?: string;\n renderError?: (\n errorText: string | null | undefined,\n errorId?: string,\n ) => ReactNode;\n}\n\nexport interface DefaultActionRendererOptions {\n buttonClass?: string;\n textClass?: string;\n primaryClass?: string;\n primaryTextClass?: string;\n secondaryClass?: string;\n secondaryTextClass?: string;\n linkClass?: string;\n linkTextClass?: string;\n iconBeforeClass?: string;\n iconAfterClass?: string;\n groupClass?: string;\n renderContent?: (\n actionText: string,\n actionId: string,\n actionData: any,\n busy?: boolean,\n ) => ReactNode;\n icon?: IconReference;\n iconPlacement?: IconPlacement;\n busyIcon?: IconReference;\n busyIconPlacement?: IconPlacement;\n notWrapInText?: boolean;\n androidRippleColor?: string;\n}\n\nexport interface OptionalRenderProps {\n allValues: Control<unknown[]>;\n editing: Control<boolean | undefined>;\n children: ReactNode;\n adornment: OptionalAdornment;\n nullToggler: Control<boolean>;\n dataContext: ControlDataContext;\n options: DefaultOptionalAdornmentOptions;\n dataControl: Control<any>;\n}\n\nexport interface DefaultOptionalAdornmentOptions {\n className?: string;\n checkClass?: string;\n childWrapperClass?: string;\n multiValuesClass?: string;\n multiValuesText?: string;\n nullWrapperClass?: string;\n setNullText?: string;\n defaultPlacement?: AdornmentPlacement;\n hideEdit?: boolean;\n customRender?: (props: OptionalRenderProps) => ReactNode;\n}\n\nexport interface DefaultAccordionRendererOptions {\n className?: string;\n titleTextClass?: string;\n togglerClass?: string;\n iconOpen?: IconReference;\n iconClosed?: IconReference;\n renderTitle?: (title: ReactNode, current: Control<boolean>) => ReactNode;\n renderToggler?: (current: Control<boolean>, title: ReactNode) => ReactNode;\n useCss?: boolean;\n}\n\nexport interface DefaultHelpTextRendererOptions {\n triggerContainerClass?: string;\n triggerLabelClass?: string;\n contentContainerClass?: string;\n contentTextClass?: string;\n iconName?: string;\n iconClass?: string;\n}\n\nexport interface DefaultAdornmentRendererOptions {\n accordion?: DefaultAccordionRendererOptions;\n helpText?: DefaultHelpTextRendererOptions;\n optional?: DefaultOptionalAdornmentOptions;\n}\n\nexport interface DefaultLabelRendererOptions {\n className?: string;\n textClass?: string;\n groupLabelClass?: string;\n groupLabelTextClass?: string;\n controlLabelClass?: string;\n controlLabelTextClass?: string;\n requiredElement?: (h: FormRenderer[\"html\"]) => ReactNode;\n labelContainer?: (children: ReactElement) => ReactElement;\n}\n\nexport interface DefaultGroupRendererOptions {\n className?: string;\n standardClassName?: string;\n grid?: DefaultGridRenderOptions;\n flexClassName?: string;\n defaultFlexGap?: string;\n inlineClass?: string;\n tabs?: DefaultTabsRenderOptions;\n wizard?: DefaultWizardRenderOptions;\n dialog?: DefaultDialogRenderOptions;\n accordion?: DefaultAccordionRendererOptions;\n}\n\n// ============================================================================\n// MAIN COMPOSITE OPTIONS INTERFACES\n// ============================================================================\n\nexport interface DefaultDataRendererOptions {\n inputClass?: string;\n inputTextClass?: string;\n displayOnlyClass?: string;\n selectOptions?: SelectRendererOptions;\n checkboxOptions?: CheckRendererOptions;\n checkOptions?: CheckRendererOptions;\n radioOptions?: CheckRendererOptions;\n checkListOptions?: CheckRendererOptions;\n autocompleteOptions?: AutocompleteRendererOptions;\n arrayElementOptions?: ArrayElementRendererOptions;\n booleanOptions?: FieldOption[];\n optionRenderer?: DataRendererRegistration;\n multilineClass?: string;\n jsonataClass?: string;\n arrayOptions?: ArrayActionOptions;\n defaultEmptyText?: string;\n scrollListOptions?: DefaultScrollListOptions;\n}\n\nexport interface DefaultRendererOptions {\n data?: DefaultDataRendererOptions;\n display?: DefaultDisplayRendererOptions;\n action?: DefaultActionRendererOptions;\n array?: DefaultArrayRendererOptions;\n group?: DefaultGroupRendererOptions;\n label?: DefaultLabelRendererOptions;\n adornment?: DefaultAdornmentRendererOptions;\n layout?: DefaultLayoutRendererOptions;\n extraRenderers?: (options: DefaultRendererOptions) => RendererRegistration[];\n html?: FormRenderer[\"html\"];\n}\n\n// ============================================================================\n// ADDITIONAL CONSTANTS\n// ============================================================================\n\nexport const DefaultBoolOptions: FieldOption[] = [\n { name: \"Yes\", value: true },\n { name: \"No\", value: false },\n];","import {\n ActionRendererProps,\n ArrayElementRenderOptions,\n ControlDefinitionType,\n createDataRenderer,\n DataRendererProps,\n DataRenderType,\n ExternalEditAction,\n FormNode,\n FormRenderer,\n getExternalEditData,\n GroupedControlsDefinition,\n GroupRenderType,\n makeSchemaDataNode,\n rendererClass,\n validationVisitor,\n visitFormDataInContext,\n} from \"@react-typed-forms/schemas\";\nimport { ArrayElementRendererOptions } from \"../rendererOptions\";\nimport React, { Fragment } from \"react\";\nimport { Dialog, Modal } from \"@astroapps/aria-base\";\nimport { useOverlayTriggerState } from \"@react-stately/overlays\";\nimport { RenderElements } from \"@react-typed-forms/core\";\nexport function createArrayElementRenderer(\n options: ArrayElementRendererOptions = {},\n) {\n return createDataRenderer(\n (props, formRenderer) => (\n <ArrayElementRenderer\n dataProps={props}\n options={options}\n formRenderer={formRenderer}\n renderOptions={props.renderOptions as ArrayElementRenderOptions}\n />\n ),\n { renderType: DataRenderType.ArrayElement },\n );\n}\n\nfunction ArrayElementRenderer({\n dataProps,\n options,\n formRenderer,\n renderOptions,\n}: {\n dataProps: DataRendererProps;\n options: ArrayElementRendererOptions;\n formRenderer: FormRenderer;\n renderOptions: ArrayElementRenderOptions;\n}) {\n const { control, formNode, renderChild, designMode } = dataProps;\n const extData = getExternalEditData(control);\n const overlayState = useOverlayTriggerState({\n isOpen: true,\n onOpenChange: () => {\n extData.value = undefined;\n },\n });\n\n if (designMode || extData.value !== undefined) {\n const parentDataNode = makeSchemaDataNode(\n dataProps.dataNode.schema,\n extData.fields.data,\n );\n // TODO\n // const elementGroup: FormNode = formNode.createChildNode(\"group\", {\n // type: ControlDefinitionType.Group,\n // groupOptions: { type: GroupRenderType.Standard, hideTitle: true },\n // children: formNode.getResolvedChildren(),\n // } as GroupedControlsDefinition);\n const editContent = (\n <div className={rendererClass(dataProps.className, options.className)}>\n {/*{renderChild(\"\", elementGroup, {*/}\n {/* parentDataNode,*/}\n {/*})}*/}\n <div className={options.actionsClass}>\n <RenderElements control={extData.fields.actions}>\n {(c) => formRenderer.renderAction(applyValidation(c.value))}\n </RenderElements>\n </div>\n </div>\n );\n if (renderOptions.showInline || designMode) return editContent;\n\n return (\n <Modal state={overlayState}>\n <Dialog children={editContent} />\n </Modal>\n );\n\n function runValidation(onClick: () => void) {\n // TODO\n // let hasErrors = false;\n // visitFormDataInContext(\n // parentDataNode,\n // elementGroup,\n // validationVisitor(() => {\n // hasErrors = true;\n // }),\n // );\n // if (!hasErrors) onClick();\n }\n function applyValidation({\n action,\n dontValidate,\n }: ExternalEditAction): ActionRendererProps {\n return dontValidate\n ? action\n : {\n ...action,\n onClick: () => runValidation(action.onClick),\n };\n }\n } else return <></>;\n}\n","import React, { Fragment, ReactNode } from \"react\";\nimport {\n ActionRendererProps,\n ActionRendererRegistration,\n ActionStyle,\n createActionRenderer,\n IconPlacement,\n IconReference,\n rendererClass,\n} from \"@react-typed-forms/schemas\";\nimport { DefaultActionRendererOptions } from \"./rendererOptions\";\n\nexport function createButtonActionRenderer(\n actionId: string | string[] | undefined,\n options: DefaultActionRendererOptions = {},\n): ActionRendererRegistration {\n return createActionRenderer(\n actionId,\n (props: ActionRendererProps, renderer) => {\n const {\n key,\n onClick,\n actionText,\n className,\n style,\n actionId,\n actionData,\n disabled,\n textClass,\n actionStyle,\n inline,\n actionContent,\n busy,\n } = props;\n const busyIcon = props.busy ? options.busyIcon : undefined;\n const stdIcon = props.icon?.name ? props.icon : options.icon;\n const icon = busyIcon ?? stdIcon;\n const stdIconPlacement =\n props.iconPlacement ??\n options.iconPlacement ??\n IconPlacement.BeforeText;\n const busyPlacement =\n props.iconPlacement ??\n options.busyIconPlacement ??\n IconPlacement.ReplaceText;\n const iconPlacement = busyIcon ? busyPlacement : stdIconPlacement;\n\n const { Button, I, Span } = renderer.html;\n const isLink = actionStyle == ActionStyle.Link;\n const isGroup = actionStyle == ActionStyle.Group;\n const classNames = rendererClass(\n className,\n isLink\n ? options.linkClass\n : isGroup\n ? options.groupClass\n : rendererClass(\n options.buttonClass,\n actionStyle == ActionStyle.Secondary\n ? options.secondaryClass\n : options.primaryClass,\n ),\n );\n\n const textClassNames = rendererClass(\n textClass,\n isLink\n ? options.linkTextClass\n : rendererClass(\n options.textClass,\n actionStyle == ActionStyle.Secondary\n ? options.secondaryTextClass\n : options.primaryTextClass,\n ),\n );\n\n const iconElement = icon && (\n <I\n iconName={icon.name}\n iconLibrary={icon.library}\n className={rendererClass(\n textClassNames,\n iconPlacement == IconPlacement.BeforeText\n ? options.iconBeforeClass\n : options.iconAfterClass,\n )}\n />\n );\n\n const textElement =\n actionContent ??\n (actionText && <Span className={textClassNames}>{actionText}</Span>);\n\n return (\n <Button\n key={key}\n className={classNames}\n textClass={textClassNames}\n disabled={disabled}\n style={style}\n onClick={onClick}\n inline={inline}\n nonTextContent={isGroup}\n title={\n iconPlacement == IconPlacement.ReplaceText ? actionText : undefined\n }\n notWrapInText={options.notWrapInText}\n androidRippleColor={options.androidRippleColor}\n >\n {options.renderContent?.(actionText, actionId, actionData, busy) ?? (\n <>\n {iconPlacement == IconPlacement.BeforeText && iconElement}\n {iconPlacement != IconPlacement.ReplaceText && textElement}\n {iconPlacement != IconPlacement.BeforeText && iconElement}\n </>\n )}\n </Button>\n );\n },\n );\n}\n","import { Control, RenderControl } from \"@react-typed-forms/core\";\nimport {\n createDataRenderer,\n DataRendererProps,\n DataRenderType,\n deepMerge,\n FormRenderer,\n getHasMoreControl,\n getLoadingControl,\n IconReference,\n NoOpControlActionContext,\n rendererClass,\n ScrollListRenderOptions,\n} from \"@react-typed-forms/schemas\";\nimport { DefaultScrollListOptions } from \"../rendererOptions\";\nimport { useEffect, useRef, Fragment } from \"react\";\n\n\nconst defaultOptions = {\n spinnerClass: \"flex justify-center my-6\",\n className: \"flex flex-row\",\n loadingIcon: undefined as IconReference | undefined,\n iconClass: \"text-[36px]\",\n} satisfies DefaultScrollListOptions;\n\nexport function createScrollListRenderer(options?: DefaultScrollListOptions) {\n return createDataRenderer(\n (p, renderer) => (\n <ScrollListRenderer dataProps={p} renderer={renderer} options={options} />\n ),\n {\n collection: true,\n renderType: DataRenderType.ScrollList,\n },\n );\n}\n\nfunction ScrollListRenderer({\n dataProps: {\n formNode,\n renderChild,\n dataNode,\n actionOnClick,\n renderOptions,\n dataContext,\n className,\n },\n renderer,\n options,\n}: {\n dataProps: DataRendererProps;\n renderer: FormRenderer;\n options?: DefaultScrollListOptions;\n}) {\n const { bottomActionId } = renderOptions as ScrollListRenderOptions;\n const loadingControl = getLoadingControl(dataNode.control);\n const hasMoreControl = getHasMoreControl(dataNode.control);\n const handler = bottomActionId\n ? actionOnClick?.(bottomActionId, undefined, dataContext)\n : undefined;\n const { I } = renderer.html;\n const { loadingIcon, spinnerClass, iconClass } = deepMerge(\n options as typeof defaultOptions,\n defaultOptions,\n );\n return (\n <>\n <div className={rendererClass(className, options?.className)}>\n {formNode.children.map((x) => renderChild(x))}\n </div>\n {loadingIcon?.name && <RenderControl render={spinner} />}\n <ScrollTrigger\n hasMoreControl={hasMoreControl}\n loadingControl={loadingControl}\n fetchMore={() => handler?.(NoOpControlActionContext)}\n />\n </>\n );\n\n function spinner() {\n return (\n loadingControl.value && (\n <div\n className={spinnerClass}\n ref={(e) => e?.scrollIntoView({ behavior: \"smooth\" })}\n >\n <I\n iconName={loadingIcon!.name}\n iconLibrary={loadingIcon!.library}\n className={iconClass}\n />\n </div>\n )\n );\n }\n}\n\nfunction ScrollTrigger({\n hasMoreControl,\n loadingControl,\n fetchMore,\n}: {\n hasMoreControl: Control<boolean>;\n loadingControl: Control<boolean>;\n fetchMore: () => void;\n}) {\n const observerTarget = useRef(null);\n\n const hasMore = hasMoreControl.value;\n const loading = loadingControl.value;\n useEffect(() => {\n const observer = new IntersectionObserver(\n (entries) => {\n if (entries[0].isIntersecting && hasMore && !loading) {\n fetchMore();\n }\n },\n { threshold: 0.5 },\n ); // Trigger when 50% of the target is visible\n\n if (observerTarget.current) {\n observer.observe(observerTarget.current);\n }\n\n return () => {\n if (observerTarget.current) {\n observer.unobserve(observerTarget.current);\n }\n };\n }, [hasMore, loading]); // Re-run effect if hasMore or loading state changes\n return <div ref={observerTarget} style={{ height: \"1px\" }}></div>;\n}\n","import { CheckButtonsProps, rendererClass } from \"@react-typed-forms/schemas\";\nimport { RenderArrayElements, useComputed } from \"@react-typed-forms/core\";\nimport { clsx } from \"clsx\";\nimport React from \"react\";\n\nexport function HtmlCheckButtons(props: CheckButtonsProps) {\n const {\n control,\n options,\n readonly,\n className,\n id,\n type,\n isChecked,\n setChecked,\n entryAdornment,\n classes,\n controlClasses = {},\n } = props;\n const { disabled } = control;\n const name = \"r\" + control.uniqueId;\n return (\n <div role=\"group\" className={className} id={id}>\n <RenderArrayElements array={options?.filter((x) => x.value != null)}>\n {(o, i) => {\n const checked = useComputed(() => isChecked(control, o)).value;\n const selOrUnsel = checked\n ? rendererClass(\n controlClasses?.selectedClass,\n classes.selectedClass,\n )\n : rendererClass(\n controlClasses?.notSelectedClass,\n classes.notSelectedClass,\n );\n return (\n <div\n className={clsx(\n rendererClass(\n controlClasses?.entryWrapperClass,\n classes.entryWrapperClass,\n ),\n selOrUnsel,\n )}\n >\n <div className={classes.entryClass}>\n <input\n id={name + \"_\" + i}\n className={classes.checkClass}\n type={type}\n name={name}\n readOnly={readonly}\n disabled={disabled}\n checked={checked}\n onChange={(x) => {\n !readonly && setChecked(control, o, x.target.checked);\n }}\n />\n <label className={classes.labelClass} htmlFor={name + \"_\" + i}>\n {o.name}\n </label>\n </div>\n {entryAdornment?.(o, i, checked)}\n </div>\n );\n }}\n </RenderArrayElements>\n </div>\n );\n}\n","import {\n createDefaultDisplayRenderer,\n} from \"./components/DefaultDisplay\";\nimport {\n createDefaultLayoutRenderer,\n} from \"./components/DefaultLayout\";\nimport { createDefaultVisibilityRenderer } from \"./components/DefaultVisibility\";\nimport React, {\n Fragment,\n isValidElement,\n ReactElement,\n ReactNode,\n} from \"react\";\nimport clsx from \"clsx\";\nimport {\n createSelectRenderer,\n} from \"./components/SelectDataRenderer\";\nimport { DefaultDisplayOnly } from \"./components/DefaultDisplayOnly\";\nimport { Control, useControlEffect } from \"@react-typed-forms/core\";\nimport { ControlInput, createInputConversion } from \"./components/ControlInput\";\nimport {\n createDefaultArrayDataRenderer,\n createDefaultArrayRenderer,\n} from \"./components/DefaultArrayRenderer\";\nimport {\n createCheckboxRenderer,\n createCheckListRenderer,\n createElementSelectedRenderer,\n createRadioRenderer,\n} from \"./components/CheckRenderer\";\nimport { DefaultAccordion } from \"./components/DefaultAccordion\";\nimport { createNullToggleRenderer } from \"./components/NullToggle\";\nimport { createMultilineFieldRenderer } from \"./components/MultilineTextfield\";\nimport { createJsonataRenderer } from \"./components/JsonataRenderer\";\nimport {\n AdornmentPlacement,\n AdornmentRendererRegistration,\n appendMarkupAt,\n ArrayActionOptions,\n CheckRendererOptions,\n ControlDataContext,\n createDataRenderer,\n DataRendererRegistration,\n DataRenderType,\n DefaultRenderers,\n FieldOption,\n FieldType,\n FormRenderer,\n hasOptions,\n HtmlButtonProperties,\n HtmlComponents,\n HtmlDivProperties,\n HtmlIconProperties,\n HtmlInputProperties,\n HtmlLabelProperties,\n IconLibrary,\n IconReference,\n isAccordionAdornment,\n isDataGroupRenderer,\n isDisplayOnlyRenderer,\n isIconAdornment,\n isOptionalAdornment,\n isSetFieldAdornment,\n isTextfieldRenderer,\n LabelRendererRegistration,\n LabelType,\n rendererClass,\n RendererRegistration,\n RunExpression,\n schemaDataForFieldRef,\n SetFieldAdornment,\n useExpression,\n wrapLayout,\n} from \"@react-typed-forms/schemas\";\nimport {\n DefaultOptionalAdornmentOptions,\n DefaultAdornmentRendererOptions,\n DefaultRendererOptions,\n DefaultDataRendererOptions,\n DefaultAccordionRendererOptions,\n DefaultHelpTextRendererOptions,\n DefaultGroupRendererOptions,\n DefaultLabelRendererOptions,\n DefaultBoolOptions,\n DefaultScrollListOptions,\n AutocompleteRendererOptions,\n ArrayElementRendererOptions,\n DefaultActionRendererOptions,\n DefaultDisplayRendererOptions,\n DefaultArrayRendererOptions,\n DefaultLayoutRendererOptions,\n SelectRendererOptions,\n} from \"./rendererOptions\";\nimport {\n createDefaultGroupRenderer,\n} from \"./components/DefaultGroupRenderer\";\nimport {\n createAutocompleteRenderer,\n} from \"./components/AutocompleteRenderer\";\nimport {\n createOptionalAdornment,\n} from \"./adornments/optionalAdornment\";\n\nimport {\n createArrayElementRenderer,\n} from \"./components/ArrayElementRenderer\";\nimport {\n createButtonActionRenderer,\n} from \"./createButtonActionRenderer\";\nimport {\n createScrollListRenderer,\n} from \"./components/ScrollListRenderer\";\nimport { HtmlCheckButtons } from \"./components/HtmlCheckButtons\";\n\n\n\nexport function createDefaultDataRenderer(\n options: DefaultDataRendererOptions = {},\n): DataRendererRegistration {\n const elementSelectedRenderer = createElementSelectedRenderer(\n options.checkboxOptions ?? options.checkOptions,\n );\n const jsonataRenderer = createJsonataRenderer(options.jsonataClass);\n const nullToggler = createNullToggleRenderer();\n const multilineRenderer = createMultilineFieldRenderer(\n options.multilineClass,\n );\n const checkboxRenderer = createCheckboxRenderer(\n options.checkboxOptions ?? options.checkOptions,\n );\n const selectRenderer = createSelectRenderer(options.selectOptions);\n const radioRenderer = createRadioRenderer(\n options.radioOptions ?? options.checkOptions,\n );\n const checkListRenderer = createCheckListRenderer(\n options.checkListOptions ?? options.checkOptions,\n );\n const arrayElementRenderer = createArrayElementRenderer(\n options.arrayElementOptions,\n );\n const {\n inputClass,\n inputTextClass,\n booleanOptions,\n optionRenderer,\n displayOnlyClass,\n defaultEmptyText,\n } = {\n optionRenderer: selectRenderer,\n booleanOptions: DefaultBoolOptions,\n ...options,\n };\n const arrayRenderer = createDefaultArrayDataRenderer(options.arrayOptions);\n\n const autocompleteRenderer = createAutocompleteRenderer(\n options.autocompleteOptions,\n );\n\n const scrollListRenderer = createScrollListRenderer(\n options.scrollListOptions,\n );\n\n return createDataRenderer((props, renderers) => {\n const { field } = props;\n const fieldType = field.type;\n const renderOptions = props.renderOptions;\n let renderType = renderOptions.type\n ? renderOptions.type\n : DataRenderType.Standard;\n if (\n field.collection &&\n props.dataNode.elementIndex == null &&\n (renderType == DataRenderType.Standard ||\n renderType == DataRenderType.Array ||\n renderType == DataRenderType.ArrayElement)\n ) {\n if (renderType == DataRenderType.ArrayElement)\n return arrayElementRenderer.render(props, renderers);\n return arrayRenderer.render(props, renderers);\n }\n if (\n fieldType === FieldType.Compound &&\n (isDataGroupRenderer(renderOptions) ||\n renderType === DataRenderType.Standard)\n ) {\n const groupOptions = (isDataGroupRenderer(renderOptions)\n ? renderOptions.groupOptions\n : undefined) ?? { type: \"Standard\", hideTitle: true };\n return renderers.renderGroup({ ...props, renderOptions: groupOptions });\n }\n if (props.displayOnly || isDisplayOnlyRenderer(renderOptions))\n return (p) => {\n return {\n ...p,\n className: \"@ \" + rendererClass(p.className, displayOnlyClass),\n children: (\n <DefaultDisplayOnly\n dataNode={props.dataNode}\n state={props.formNode}\n schemaInterface={props.dataContext.schemaInterface}\n className={props.className}\n textClass={props.textClass}\n style={props.style}\n inline={props.inline}\n renderer={renderers}\n emptyText={\n isDisplayOnlyRenderer(renderOptions) && renderOptions.emptyText\n ? renderOptions.emptyText\n : defaultEmptyText\n }\n />\n ),\n };\n };\n const isBool = fieldType === FieldType.Bool;\n if (booleanOptions != null && isBool && props.options == null) {\n return renderers.renderData({ ...props, options: booleanOptions });\n }\n if (renderType === DataRenderType.Standard && hasOptions(props)) {\n return optionRenderer.render(props, renderers);\n }\n switch (renderType) {\n case DataRenderType.NullToggle:\n return nullToggler.render(props, renderers);\n case DataRenderType.CheckList:\n return checkListRenderer.render(props, renderers);\n case DataRenderType.ScrollList:\n return scrollListRenderer.render(props, renderers);\n case DataRenderType.Dropdown:\n return selectRenderer.render(props, renderers);\n case DataRenderType.Radio:\n return radioRenderer.render(props, renderers);\n case DataRenderType.Checkbox:\n return checkboxRenderer.render(props, renderers);\n case DataRenderType.Jsonata:\n return jsonataRenderer.render(props, renderers);\n case DataRenderType.Autocomplete:\n return autocompleteRenderer.render(props, renderers);\n case DataRenderType.ElementSelected:\n return elementSelectedRenderer.render(props, renderers);\n }\n if (fieldType == FieldType.Any) {\n return (\n <>\n Can't render field: {field.displayName ?? field.field} ({renderType})\n </>\n );\n }\n if (isTextfieldRenderer(renderOptions) && renderOptions.multiline)\n return multilineRenderer.render(props, renderers);\n const placeholder = isTextfieldRenderer(renderOptions)\n ? renderOptions.placeholder\n : undefined;\n\n return (\n <ControlInput\n className={rendererClass(props.className, inputClass)}\n textClass={rendererClass(props.textClass, inputTextClass)}\n style={props.style}\n id={props.id}\n errorId={props.errorId}\n readOnly={props.readonly}\n control={props.control}\n placeholder={placeholder ?? undefined}\n convert={createInputConversion(props.field.type)}\n renderer={renderers}\n />\n );\n });\n}\n\n\n\n\nexport function createDefaultAdornmentRenderer(\n options: DefaultAdornmentRendererOptions = {},\n): AdornmentRendererRegistration {\n const optional = createOptionalAdornment(options.optional);\n return {\n type: \"adornment\",\n render: (props, renderers) => {\n if (isOptionalAdornment(props.adornment)) {\n return optional.render(props, renderers);\n }\n const { adornment, designMode, dataContext, runExpression } = props;\n return {\n apply: (rl) => {\n if (isSetFieldAdornment(adornment) && runExpression) {\n return wrapLayout((x) => (\n <SetFieldWrapper\n children={x}\n parentContext={dataContext}\n adornment={adornment}\n runExpression={runExpression}\n />\n ))(rl);\n }\n if (isIconAdornment(adornment)) {\n const { I } = renderers.html;\n const { icon, placement, iconClass } = adornment;\n return appendMarkupAt(\n placement ?? AdornmentPlacement.ControlStart,\n <I\n className={iconClass}\n iconName={icon?.name}\n iconLibrary={icon?.library}\n />,\n )(rl);\n }\n if (isAccordionAdornment(adornment)) {\n return wrapLayout((x) => {\n const displayProps = isValidElement(rl.children)\n ? (rl.children as ReactElement as any).props?.displayProps\n : undefined;\n return (\n <DefaultAccordion\n isGroup={false}\n renderers={renderers}\n children={x}\n className={displayProps?.className}\n titleTextClass={displayProps?.textClass}\n title={renderers.renderLabelText(adornment.title)}\n defaultExpanded={adornment.defaultExpanded}\n contentStyle={rl.style}\n contentClassName={rl.className}\n designMode={designMode}\n dataContext={dataContext}\n options={options.accordion}\n />\n );\n })(rl);\n }\n },\n priority: 0,\n adornment,\n };\n },\n };\n}\n\n\nfunction SetFieldWrapper({\n children,\n adornment,\n parentContext,\n runExpression,\n}: {\n children: ReactNode;\n adornment: SetFieldAdornment;\n parentContext: ControlDataContext;\n runExpression: RunExpression;\n}) {\n const fieldNode = schemaDataForFieldRef(\n adornment.field,\n parentContext.parentNode,\n );\n const otherField = fieldNode.control;\n const always = !adornment.defaultOnly;\n const value = useExpression<any>(\n undefined,\n runExpression,\n adornment.expression,\n (x) => x,\n );\n\n useControlEffect(\n () => [value?.value, otherField?.value == null],\n ([v]) => {\n otherField?.setValue((x: any) => (always || x == null ? v : x));\n },\n true,\n );\n return children;\n}\n\nexport function createDefaultLabelRenderer(\n options?: DefaultLabelRendererOptions,\n): LabelRendererRegistration {\n const {\n className,\n controlLabelTextClass,\n groupLabelTextClass,\n groupLabelClass,\n controlLabelClass,\n textClass,\n labelContainer,\n } = {\n labelContainer: (c: ReactElement) => c,\n ...options,\n };\n return {\n render: (props, labelStart, labelEnd, renderers) => {\n const { Label, Span } = renderers.html;\n const requiredElement =\n options?.requiredElement ?? (({ Span }) => <Span> *</Span>);\n if (props.type == LabelType.Text) return <Span>{props.label}</Span>;\n return labelContainer(\n <>\n <Label\n htmlFor={props.forId}\n className={rendererClass(\n props.className,\n clsx(\n className,\n props.type === LabelType.Group && groupLabelClass,\n props.type === LabelType.Control && controlLabelClass,\n ),\n )}\n textClass={rendererClass(\n props.textClass,\n clsx(\n textClass,\n props.type === LabelType.Group && groupLabelTextClass,\n props.type === LabelType.Control && controlLabelTextClass,\n ),\n )}\n >\n {labelStart}\n {renderers.renderLabelText(props.label)}\n {props.required && requiredElement(renderers.html)}\n </Label>\n {labelEnd}\n </>,\n );\n },\n type: \"label\",\n };\n}\n\nexport const StandardHtmlComponents: HtmlComponents = {\n Button: DefaultHtmlButtonRenderer,\n Label: DefaultHtmlLabelRenderer,\n I: DefaultHtmlIconRenderer,\n Span: \"span\",\n Div: DefaultHtmlDivRenderer,\n H1: \"h1\",\n B: \"b\",\n Input: DefaultHtmlInputRenderer,\n CheckButtons: HtmlCheckButtons,\n};\n\nexport function DefaultHtmlButtonRenderer({\n inline,\n textClass,\n className,\n notWrapInText,\n androidRippleColor,\n onClick,\n nonTextContent,\n ...props\n}: HtmlButtonProperties) {\n const Comp = inline ? \"span\" : nonTextContent ? \"div\" : \"button\";\n return (\n <Comp\n role={nonTextContent || inline ? \"button\" : undefined}\n onClick={\n onClick\n ? (e) => {\n e.stopPropagation();\n onClick();\n }\n : undefined\n }\n className={nonTextContent ? className : clsx(className, textClass)}\n {...props}\n />\n );\n}\nexport function DefaultHtmlInputRenderer({\n textClass,\n className,\n onChangeValue,\n onChangeChecked,\n inputRef,\n ...props\n}: HtmlInputProperties) {\n return (\n <input\n ref={inputRef}\n {...props}\n className={clsx(className, textClass)}\n onChange={\n onChangeValue\n ? (e) => onChangeValue(e.target.value)\n : onChangeChecked\n ? (e) => onChangeChecked(e.target.checked)\n : undefined\n }\n />\n );\n}\nexport function DefaultHtmlDivRenderer({\n text,\n html,\n children,\n className,\n textClass,\n nativeRef,\n inline,\n ...props\n}: HtmlDivProperties) {\n const Tag = inline ? \"span\" : \"div\";\n return (\n <Tag\n {...props}\n ref={nativeRef}\n className={clsx(className, textClass)}\n children={text ?? children}\n dangerouslySetInnerHTML={html ? { __html: html } : undefined}\n />\n );\n}\nexport function DefaultHtmlLabelRenderer({\n textClass,\n className,\n ...props\n}: HtmlLabelProperties) {\n return <label {...props} className={clsx(className, textClass)} />;\n}\nexport function DefaultHtmlIconRenderer({\n iconName,\n iconLibrary,\n className,\n style,\n}: HtmlIconProperties) {\n return iconName ? (\n <i className={clsx(className, toIconClass())} style={style} />\n ) : undefined;\n\n function toIconClass() {\n if (!iconName) return undefined;\n switch (iconLibrary) {\n case IconLibrary.FontAwesome:\n return \"fa fa-\" + iconName;\n case IconLibrary.Material:\n case IconLibrary.CssClass:\n return iconName;\n default:\n return iconLibrary + \" fa-\" + iconName;\n }\n }\n}\n\nexport function createDefaultRenderers(\n options: DefaultRendererOptions = {},\n): DefaultRenderers {\n return {\n data: createDefaultDataRenderer(options.data),\n display: createDefaultDisplayRenderer(options.display),\n action: createButtonActionRenderer(undefined, options.action),\n array: createDefaultArrayRenderer(options.array),\n group: createDefaultGroupRenderer(options.group, options.adornment),\n label: createDefaultLabelRenderer(options.label),\n adornment: createDefaultAdornmentRenderer(options.adornment),\n renderLayout: createDefaultLayoutRenderer(options.layout),\n visibility: createDefaultVisibilityRenderer(),\n extraRenderers: options.extraRenderers?.(options) ?? [],\n html: options.html ?? StandardHtmlComponents,\n };\n}\n\nexport function createClassStyledRenderers() {\n return createDefaultRenderers({\n layout: { className: \"control\" },\n group: { className: \"group\" },\n array: { className: \"control-array\" },\n action: { buttonClass: \"action\" },\n data: { inputClass: \"data\" },\n display: { htmlClassName: \"html\", textClassName: \"text\" },\n });\n}\n","import React from \"react\";\nimport { fontAwesomeIcon, IconPlacement } from \"@react-typed-forms/schemas\";\nimport { DefaultRendererOptions } from \"./rendererOptions\";\n\nexport const defaultTailwindTheme = {\n label: {\n groupLabelClass: \"font-bold\",\n requiredElement: ({ Span }) => <Span className=\"text-red-500\"> *</Span>,\n },\n array: {\n removableClass: \"grid grid-cols-[1fr_auto] items-center gap-x-2\",\n childClass: \"grow my-2\",\n addActionClass: \"my-2\",\n removeActionClass: \"flex gap-2\",\n },\n group: {\n standardClassName: \"flex flex-col gap-4\",\n grid: {\n className: \"flex flex-col gap-4\",\n rowClass: \"flex flex-row gap-4 justify-between\",\n cellClass: \"flex-1\",\n },\n flexClassName: \"gap-2\",\n inlineClass: \"\",\n tabs: {\n className: \"\",\n tabListClass:\n \"flex flex-wrap text-sm font-medium text-center text-gray-500 border-b border-gray-200 dark:border-gray-700 dark:text-gray-400\",\n tabClass: \"me-2\",\n labelClass:\n \"inline-flex items-center justify-center p-4 border-b-2 group\",\n inactiveClass:\n \"border-transparent rounded-t-lg hover:text-gray-600 hover:border-gray-300 dark:hover:text-gray-300 cursor-pointer\",\n activeClass:\n \"text-blue-600 border-blue-600 rounded-t-lg active dark:text-blue-500 dark:border-blue-500\",\n contentClass: \"my-2\",\n },\n },\n action: {\n buttonClass:\n \"rounded-lg p-3 text-white disabled:opacity-75 disabled:cursor-not-allowed\",\n primaryClass: \"bg-primary-500\",\n secondaryClass: \"bg-secondary-500\",\n iconBeforeClass: \"px-2\",\n iconAfterClass: \"px-2\",\n busyIcon: fontAwesomeIcon(\"spinner fa-spin\"),\n },\n layout: {\n className: \"flex flex-col\",\n errorClass: \"text-sm text-red-500\",\n },\n data: {\n inputClass: \"form-control\",\n displayOnlyClass: \"flex flex-row items-center gap-2\",\n checkOptions: {\n className: \"flex items-center gap-4\",\n entryClass: \"flex items-center gap-1\",\n },\n selectOptions: { emptyText: \"<select>\" },\n arrayElementOptions: { actionsClass: \"my-2 flex gap-2\" },\n multilineClass: \"border p-2 outline-0 whitespace-pre-wrap\",\n autocompleteOptions: {\n className:\n \"w-full flex gap-[5px] pr-[5px] overflow-hidden rounded-lg bg-white border border-solid border-gray-200 hover:border-primary-400 focus-visible:outline-0 shadow-[0_2px_4px_rgb(0_0_0_/_0.05)] min-h-[48px] py-1\",\n listContainerClass:\n \"absolute w-full text-sm box-border p-1.5 my-3 mx-0 min-w-[120px] rounded-xl overflow-auto outline-0 max-h-[300px] z-[1] bg-white border border-solid border-surface-200 text-surface-900 shadow-[0_4px_30px_transparent] shadow-surface-200\",\n listEntryClass:\n \"list-none p-2 rounded-lg cursor-default last-of-type:border-b-0 hover:cursor-pointer hover:bg-primary-100 aria-selected:bg-primary-200 aria-selected:text-primary-900 focused:bg-surface-100 focus-visible:bg-surface-100 focused:text-surface-900 focus-visible:text-surface-900 focus-visible:shadow-[0_0_0_3px_transparent] focus-visible:shadow-primary-200 focused:aria-selected:bg-primary-200 focus-visible:aria-selected:bg-primary-200 focused:aria-selected:text-primary-900 focus-visible:aria-selected:text-primary-900\",\n chipContainerClass:\n \"flex flex-row items-center px-3 py-1 rounded-full bg-surface-100 m-1 gap-2 truncate\",\n chipCloseButtonClass:\n \"fa-solid fa-xmark p-1 bg-surface-300 rounded-full min-w-[24px] flex justify-center text-surface-50 hover:bg-surface-400 hover:text-surface-100 hover:cursor-pointer\",\n },\n scrollListOptions: {\n loadingIcon: fontAwesomeIcon(\"spinner fa-spin\"),\n },\n },\n adornment: {\n accordion: {\n className: \"flex items-center gap-2 my-2 w-fit\",\n titleTextClass: \"cursor-pointer\",\n iconOpen: fontAwesomeIcon(\"chevron-up\"),\n iconClosed: fontAwesomeIcon(\"chevron-down\"),\n },\n optional: {\n checkClass: \"m-2\",\n className: \"flex items-center gap-2 w-full\",\n multiValuesClass: \"italic\",\n childWrapperClass: \"grow\",\n },\n },\n} satisfies DefaultRendererOptions;\n"],"names":["createDefaultDisplayRenderer","options","render","props","renderer","_jsx","DefaultDisplay","displayProps","type","_ref","_effect","_useComponentTracking","_iconDisplay$icon","_iconDisplay$icon2","data","display","className","textClass","style","_renderer$html","html","I","Div","B","H1","Span","DisplayDataType","Icon","iconDisplay","clsx","getOverrideClass","value","iconClass","iconName","icon","name","iconLibrary","library","Text","text","coerceToString","rendererClass","textClassName","textTextClass","inline","Html","htmlClassName","Custom","children","_jsxs","customId","ControlInput","toText","convert","control","errorId","_objectWithoutPropertiesLoose","_excluded","_formControlProps","formControlProps","errorText","onChange","ref","inputProps","_excluded2","textValue","useControl","useControlEffect","v","Input","_extends","inputRef","undefined","onChangeValue","e","converted","createInputConversion","ft","FieldType","String","a","Bool","_a$toString","toString","Int","parseInt","DateTime","Date","Time","l","length","substring","Double","parseFloat","createSelectRenderer","createDataRenderer","asArray","_props$options","_renderOptions$requir","renderOptions","definition","SelectDataRenderer","state","id","readonly","required","emptyText","requiredText","createSelectConversion","field","renderOption","x","i","disabled","_ref$emptyText","_ref$requiredText","_useState","useState","showEmpty","optionStringMap","useMemo","Object","fromEntries","map","optionGroups","Set","filter","group","target","concat","keys","label","o","createRadioRenderer","p","CheckButtons","classes","controlClasses","isChecked","setChecked","c","setTouched","entryAdornment","fieldOptionAdornment","renderType","DataRenderType","Radio","createCheckListRenderer","Array","isArray","includes","checked","setValue","setIncluded","collection","CheckList","createCheckboxRenderer","CheckBox","Checkbox","createElementSelectedRenderer","CheckBoxSelected","ElementSelected","_p$label","selControl","useElementSelectedRenderer","entryClass","Fcheckbox","checkClass","renderLabel","_ref2","_effect2","as","_ref3","_effect3","_ref3$type","_ref3$notValue","notValue","others","theseProps","r","element","onChangeChecked","touched","createDefaultLayoutRenderer","createLayoutRenderer","renderers","layout","renderLayoutParts","wrapLayout","DefaultLayout","divRef","errorControl","meta","scrollElement","errorClass","_ref$renderer$html","_ref$renderError","renderError","_ref$layout","controlEnd","controlStart","ec","error","_Fragment","DefaultDisplayOnly","dataNode","schemaInterface","resolved","isEmptyValue","schema","textValueForData","createTabsRenderer","createGroupRenderer","TabsRenderer","groupProps","tabOptions","GroupRenderType","Tabs","renderTabs","tabs","key","tabListClass","tabClass","onClick","tabIndex","labelClass","currentTab","activeClass","inactiveClass","title","contentClass","renderChild","_ref$groupProps","designMode","formNode","useEffect","attachUi","TabUi","visible","_DefaultFormNodeUi","node","_this","call","_inheritsLoose","_proto","prototype","ensureChildVisible","childIndex","DefaultFormNodeUi","createGridRenderer","formRenderer","GridRenderer","Grid","_gridOptions$columns","_props$groupProps","filteredChildren","defaults","gridOptions","numColumns","columns","defaultColumns","allChildren","cellClass","getCellClassNames","rows","push","slice","row","rowIndex","rowClass","cell","cellIndex","_cellClass$at","at","split","defaultOptions","navContainerClass","actions","nextText","nextIcon","fontAwesomeIcon","nextValidate","prevText","prevIcon","prevValidate","renderNavigation","defaultNavigationRender","prev","next","renderAction","createWizardRenderer","WizardRenderer","Wizard","countVisibleUntil","untilPage","count","childrenLength","getChild","nav","dir","validate","validatePage","nextVisibleInDirection","page","currentPage","pageNode","valid","isPageValid","mergedOptions","deepMerge","_mergedOptions$classe","_mergedOptions$action","getChildCount","isValid","useComputed","createAction","hidden","iconPlacement","IconPlacement","AfterText","navElement","totalPages","Promise","resolve","reject","content","child","Fragment","defaultDialogOptions","titleClass","containerClass","createDialogRenderer","DefaultDialogRenderer","Dialog","designContent","onClickCapture","overlayState","toggle","open","actionStyle","ActionStyle","Link","dialogContent","_deepMerge","_deepMerge$classes","createOverlayState","actionOnClick","action","close","triggerChildren","placement","Modal","isDismissable","DefaultAccordion","_dataContext$dataNode","openCtrl","contentStyle","contentClassName","dataContext","defaultExpanded","isGroup","titleTextClass","iconOpen","iconClosed","togglerClass","_ref2$renderTitle","renderTitle","t","renderToggler","useCss","panelId","useId","_renderers$html","Button","Label","dataControl","parentNode","use","accordionState","isOpen","fullContentStyle","currentIcon","accordionClassName","accordionTitleTextClass","accordionTitle","toggler","notWrapInText","role","getAccordionState","createAccordionGroupRenderer","AccordionGroupRenderer","Accordion","titleChildren","contentChildren","_groupProps$renderOpt","expandStateField","expandStateFieldNode","schemaDataForFieldRef","createDefaultGroupRenderer","adornmentOptions","_options$accordion","gridRenderer","grid","tabsRenderer","wizardRenderer","wizard","dialogRenderer","dialog","accordionRenderer","accordion","standardClassName","flexClassName","inlineClass","defaultFlexGap","flexStyles","gap","flexDirection","direction","isTabsRenderer","isGridRenderer","isWizardRenderer","isDialogRenderer","isAccordionRenderer","isSelectChildRenderer","SelectChildGroupRenderer","isFlexRenderer","isInlineRenderer","gcn","Inline","renderLayout","Contents","runExpression","ctrl","useExpression","childIndexExpression","childCount","createDefaultVisibilityRenderer","createVisibilityRenderer","DefaultVisibility","visibility","ex","showing","nativeRef","createJsonataRenderer","JsonataRenderer","Jsonata","bindings","changes","trackedValue","dataPath","getJsonPath","rendered","ExpressionType","expression","dangerouslySetInnerHTML","__html","createNullToggleRenderer","lastDefined","getLastDefinedValue","current","defaultValue","nullControl","getNullToggler","renderData","createDefaultArrayDataRenderer","defaultActions","DataArrayRenderer","dataProps","_mergeObjects","mergeObjects","isArrayRenderer","addText","noAdd","noRemove","noReorder","removeText","editExternal","childOverrideClass","arrayProps","createArrayActions","renderElement","wrap","n","childKey","getLengthRestrictions","renderArray","createDefaultArrayRenderer","DefaultArrayRenderer","removableClass","childClass","removableChildClass","removeActionClass","addActionClass","getElementCount","editAction","_applyArrayLengthRest","applyArrayLengthRestrictions","addAction","removeAction","from","_","RenderControl","inputClass","createAutocompleteRenderer","_p$options","_p$options2","MultipleAutocomplete","readOnly","SingleAutocomplete","Autocomplete","_controlClasses$place","_objectDestructuringEmpty","inputControl","selectedOptionControl","listContainerClass","listEntryClass","controlValues","selected","_useAutocomplete","useAutocomplete","freeSolo","multiple","inputValue","getOptionLabel","filterOptions","s","toLowerCase","onInputChange","reason","getRootProps","getInputProps","getListboxProps","getOptionProps","groupedOptions","popupOpen","focused","getPopupIndicatorProps","placeholder","option","index","optionProps","_createElement","_selectedOptionsContr","_selectedOptionsContr2","_controlClasses$place2","selectedOptionsControl","chipContainerClass","chipCloseButtonClass","_ref4","_selected$map","selectedValues","_useAutocomplete2","Chip","onDeleteClick","elements","find","removeElement","_ref5","RenderType","ValueForFieldExtension","RenderOptions","fields","buildSchema","fieldRef","stringField","noOptions","boolField","refIsDirect","createValueForFieldRenderer","_schemaDataForFieldRe","_o$renderOptions","actualFieldRef","schemaField","schemaForFieldRef","ValueForField","setFields","_useMemo","adjustedField","notNullable","onlyForTypes","defaultControlForField","hideTitle","rootSchema","createSchemaTree","rootNode","createFormTree","controls","RenderForm","form","createSchemaDataNode","createOptionalAdornment","createAdornmentRenderer","_dataContext$dataNode2","newControl","adornment","editing","getIsEditing","isEditing","nullToggler","editSelectable","allowNull","apply","rl","_adornment$placement","hideEdit","appendMarkupAt","defaultPlacement","AdornmentPlacement","LabelStart","wrapMarkup","allValues","getAllValues","customRender","OptionalEditRenderer","priority","adornmentType","ControlAdornmentType","Optional","_renderMultiValues","_options$setNullText","renderMultiValues","_options$multiValuesT","multiValuesText","multipleValues","nullEdit","nullWrapperClass","setNullText","multiValuesClass","childWrapperClass","createMultilineFieldRenderer","MultilineTextfield","codeRef","useRef","textContent","contentEditable","onInput","currentTarget","DefaultBoolOptions","createArrayElementRenderer","ArrayElementRenderer","ArrayElement","extData","getExternalEditData","useOverlayTriggerState","onOpenChange","runValidation","applyValidation","dontValidate","parentDataNode","makeSchemaDataNode","editContent","actionsClass","RenderElements","showInline","createButtonActionRenderer","actionId","createActionRenderer","_props$icon","_props$iconPlacement","_props$iconPlacement2","_options$renderConten","actionText","actionData","actionContent","busy","busyIcon","stdIcon","stdIconPlacement","BeforeText","busyPlacement","busyIconPlacement","ReplaceText","isLink","Group","classNames","linkClass","groupClass","buttonClass","Secondary","secondaryClass","primaryClass","textClassNames","linkTextClass","secondaryTextClass","primaryTextClass","iconElement","iconBeforeClass","iconAfterClass","textElement","nonTextContent","androidRippleColor","renderContent","spinnerClass","loadingIcon","createScrollListRenderer","ScrollListRenderer","ScrollList","spinner","loadingControl","scrollIntoView","behavior","_ref$dataProps","bottomActionId","getLoadingControl","hasMoreControl","getHasMoreControl","handler","ScrollTrigger","fetchMore","NoOpControlActionContext","observerTarget","hasMore","loading","observer","IntersectionObserver","entries","isIntersecting","threshold","observe","unobserve","height","HtmlCheckButtons","_props$controlClasses","uniqueId","RenderArrayElements","array","selOrUnsel","selectedClass","notSelectedClass","entryWrapperClass","htmlFor","createDefaultDataRenderer","_options$checkboxOpti","_options$checkboxOpti2","_options$radioOptions","_options$checkListOpt","elementSelectedRenderer","checkboxOptions","checkOptions","jsonataRenderer","jsonataClass","multilineRenderer","multilineClass","checkboxRenderer","selectRenderer","selectOptions","radioRenderer","radioOptions","checkListRenderer","checkListOptions","arrayElementRenderer","arrayElementOptions","_optionRenderer$boole","optionRenderer","booleanOptions","inputTextClass","displayOnlyClass","defaultEmptyText","arrayRenderer","arrayOptions","autocompleteRenderer","autocompleteOptions","scrollListRenderer","scrollListOptions","fieldType","Standard","elementIndex","Compound","isDataGroupRenderer","groupOptions","renderGroup","displayOnly","isDisplayOnlyRenderer","isBool","hasOptions","NullToggle","Dropdown","Any","_field$displayName","displayName","isTextfieldRenderer","multiline","createDefaultAdornmentRenderer","optional","isOptionalAdornment","isSetFieldAdornment","SetFieldWrapper","parentContext","isIconAdornment","ControlStart","isAccordionAdornment","_rl$children$props","isValidElement","renderLabelText","fieldNode","otherField","always","defaultOnly","createDefaultLabelRenderer","_labelContainer$optio","labelContainer","controlLabelTextClass","groupLabelTextClass","groupLabelClass","controlLabelClass","labelStart","labelEnd","_options$requiredElem","requiredElement","LabelType","forId","Control","StandardHtmlComponents","DefaultHtmlButtonRenderer","DefaultHtmlLabelRenderer","DefaultHtmlIconRenderer","DefaultHtmlDivRenderer","DefaultHtmlInputRenderer","Comp","stopPropagation","_ref6","_ref7","_excluded3","Tag","_ref8","_effect4","_excluded4","_ref9","_effect5","toIconClass","IconLibrary","FontAwesome","Material","CssClass","createDefaultRenderers","_options$extraRendere","_options$html","extraRenderers","createClassStyledRenderers","defaultTailwindTheme"],"mappings":"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"}