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