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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/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/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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"}
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 = useMemo(\n () => !required || value == null,\n [required, value],\n );\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 || disabled) &&\n 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","showEmpty","useMemo","optionStringMap","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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"}