@react-typed-forms/schemas-html 5.0.2 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/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 = 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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"}
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 noSelection,\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 noSelection?: boolean | 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 const mergedStyle = noSelection\n ? { ...style, userSelect: \"none\" as const }\n : style;\n return (\n <Div\n style={mergedStyle}\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 noSelection={\n isDisplayOnlyRenderer(renderOptions)\n ? renderOptions.noSelection\n : undefined\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","noSelection","schemaInterface","resolved","isEmptyValue","schema","textValueForData","mergedStyle","userSelect","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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"}