@react-typed-forms/schemas-html 2.3.2 → 2.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/adornments/optionalAdornment.d.ts +2 -2
- package/lib/components/CheckRenderer.d.ts +12 -2
- package/lib/components/ControlInput.d.ts +4 -2
- package/lib/components/DefaultAccordion.d.ts +2 -2
- package/lib/components/DefaultArrayRenderer.d.ts +1 -1
- package/lib/components/DefaultDisplay.d.ts +4 -3
- package/lib/components/DefaultDisplayOnly.d.ts +4 -3
- package/lib/components/DefaultGroupRenderer.d.ts +2 -2
- package/lib/components/DefaultLayout.d.ts +5 -3
- package/lib/components/DefaultVisibility.d.ts +4 -2
- package/lib/components/JsonataRenderer.d.ts +1 -2
- package/lib/components/MultilineTextfield.d.ts +1 -2
- package/lib/components/SelectDataRenderer.d.ts +1 -2
- package/lib/components/TabsRenderer.d.ts +7 -7
- package/lib/createDefaultRenderers.d.ts +4 -2
- package/lib/index.cjs +1913 -1
- package/lib/index.cjs.map +1 -1
- package/lib/index.js +1708 -1
- package/lib/index.js.map +1 -1
- package/lib/tailwind.d.ts +1 -1
- package/package.json +7 -7
package/lib/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../src/components/DefaultDisplay.tsx","../src/components/ControlInput.tsx","../src/components/SelectDataRenderer.tsx","../src/components/CheckRenderer.tsx","../src/components/DefaultLayout.tsx","../src/components/DefaultDisplayOnly.tsx","../src/components/DefaultAccordion.tsx","../src/components/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":["import React from \"react\";\nimport clsx from \"clsx\";\nimport {\n coerceToString,\n CustomDisplay,\n DisplayDataType,\n DisplayRendererProps,\n DisplayRendererRegistration,\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) => <DefaultDisplay {...options} {...props} />,\n type: \"display\",\n };\n}\n\nexport function DefaultDisplay({\n data,\n display,\n className,\n style,\n ...options\n}: DefaultDisplayRendererOptions & DisplayRendererProps) {\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} from \"@react-typed-forms/schemas\";\n\nexport function ControlInput({\n control,\n convert,\n ...props\n}: React.InputHTMLAttributes<HTMLInputElement> & {\n control: Control<any>;\n convert: InputConversion;\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 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\";\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 Fcheckbox,\n RenderArrayElements,\n useComputed,\n} from \"@react-typed-forms/core\";\nimport React, { ReactNode } from \"react\";\nimport {\n CheckEntryClasses,\n createDataRenderer,\n DataRenderType,\n FieldOption,\n fieldOptionAdornment,\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) => (\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 />\n ),\n {\n renderType: DataRenderType.Radio,\n },\n );\n}\n\nexport function createCheckListRenderer(options: CheckRendererOptions = {}) {\n return createDataRenderer(\n (p) => (\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 />\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}: CheckButtonsProps) {\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 <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 />\n {p.label && renderer.renderLabel(p.label, undefined, undefined)}\n </div>\n ),\n }),\n { renderType: DataRenderType.Checkbox },\n );\n}\n","import React, { ReactNode } from \"react\";\nimport {\n createLayoutRenderer,\n RenderedLayout,\n rendererClass,\n renderLayoutParts,\n} from \"@react-typed-forms/schemas\";\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} />,\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 renderError = (e) => e && <div className={errorClass}>{e}</div>,\n layout: { controlEnd, controlStart, label, children, errorControl },\n}: DefaultLayoutRendererOptions & {\n layout: RenderedLayout;\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 rendererClass,\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}: {\n control: Control<any>;\n field: SchemaField;\n schemaInterface: SchemaInterface;\n className?: string;\n style?: React.CSSProperties;\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 return (\n <div style={style} className={className}>\n {text}\n </div>\n );\n}\n","import React, { CSSProperties, Fragment, ReactElement } 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 controlTitle,\n createGroupRenderer,\n FormNode,\n GroupRendererProps,\n GroupRenderType,\n rendererClass,\n} from \"@react-typed-forms/schemas\";\nimport React from \"react\";\nimport { useControl } from \"@react-typed-forms/core\";\nimport clsx from \"clsx\";\n\nexport interface TabsRendererOptions {\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: TabsRendererOptions = {}) {\n return createGroupRenderer(\n (p, renderer) => <TabsGroupRenderer {...p} options={options} />,\n {\n renderType: GroupRenderType.Tabs,\n },\n );\n}\n\nexport function TabsGroupRenderer({\n formNode,\n className,\n options,\n renderChild,\n designMode,\n}: GroupRendererProps & { options: TabsRendererOptions }) {\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(null, contentClass)}>\n {renderChild(currentTab, tabs[currentTab])}\n </div>\n </div>\n );\n }\n}\n","import {\n ControlLayoutProps,\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\";\nimport React, { CSSProperties, useCallback } from \"react\";\nimport { useTrackedComponent } from \"@react-typed-forms/core\";\nimport { createTabsRenderer, TabsRendererOptions } 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?: TabsRendererOptions;\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, renderers: FormRenderer) {\n const { renderChild, renderOptions, formNode } = props;\n if (isTabsRenderer(renderOptions))\n return tabsRenderer.render(props, renderers);\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 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 React, { useEffect } from \"react\";\nimport clsx from \"clsx\";\nimport {\n createVisibilityRenderer,\n VisibilityRendererProps,\n} from \"@react-typed-forms/schemas\";\n\nexport function createDefaultVisibilityRenderer() {\n return createVisibilityRenderer((props) => <DefaultVisibility {...props} />);\n}\n\nexport function DefaultVisibility({\n visibility,\n children,\n className,\n style,\n divRef,\n}: VisibilityRendererProps) {\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 return v?.visible ? (\n <div className={clsx(className)} style={style} ref={divRef}>\n {children}\n </div>\n ) : (\n <></>\n );\n}\n","import { Control, useComputed } from \"@react-typed-forms/core\";\nimport React 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\";\nimport React, { 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 nodeForControl,\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 = nodeForControl(\n !renderAsElement\n ? ({\n type: ControlDefinitionType.Group,\n children: definition.children,\n groupOptions: { type: GroupRenderType.Standard, hideTitle: true },\n } as GroupedControlsDefinition)\n : ({\n type: ControlDefinitionType.Data,\n field: definition.field,\n children: definition.children,\n renderOptions: childOptions ?? { type: DataRenderType.Standard },\n hideTitle: true,\n } as DataControlDefinition),\n formNode.tree,\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","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 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\";\nimport React, { useMemo } 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\";\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 nodeForControl,\n rendererClass,\n validationVisitor,\n visitFormDataInContext,\n} from \"@react-typed-forms/schemas\";\nimport React 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 = nodeForControl(\n {\n type: ControlDefinitionType.Group,\n children: formNode.definition.children,\n groupOptions: { type: GroupRenderType.Standard, hideTitle: true },\n } as GroupedControlsDefinition,\n formNode.tree,\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\";\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 {\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 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}\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 onClick,\n actionText,\n className,\n style,\n actionId,\n actionData,\n disabled,\n }: ActionRendererProps) => {\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 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 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 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 />\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?: ReactNode;\n labelContainer?: (children: ReactElement) => ReactElement;\n}\n\nexport function createDefaultLabelRenderer(\n options?: DefaultLabelRendererOptions,\n): LabelRendererRegistration {\n const {\n className,\n groupLabelClass,\n controlLabelClass,\n requiredElement,\n labelContainer,\n } = {\n requiredElement: <span> *</span>,\n labelContainer: (c: ReactElement) => c,\n ...options,\n };\n return {\n render: (props, labelStart, labelEnd, renderers) => {\n if (props.type == LabelType.Text) return 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}\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 };\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\";\n\nimport { DefaultRendererOptions } from \"./createDefaultRenderers\";\n\nexport const defaultTailwindTheme = {\n label: {\n groupLabelClass: \"font-bold\",\n requiredElement: <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-danger-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":["_excluded","createDefaultDisplayRenderer","options","render","props","React","createElement","DefaultDisplay","_extends","type","_ref","_effect","_useComponentTracking","data","display","className","style","_objectWithoutPropertiesLoose","DisplayDataType","Icon","clsx","getOverrideClass","value","iconClass","Text","rendererClass","textClassName","coerceToString","text","Html","htmlClassName","dangerouslySetInnerHTML","__html","html","Custom","customId","_excluded2","ControlInput","toText","convert","control","_formControlProps","formControlProps","inputProps","textValue","useControl","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","renderOption","x","i","key","disabled","name","_ref$emptyText","_ref$requiredText","showEmpty","useState","optionStringMap","useMemo","Object","fromEntries","map","optionGroups","Set","filter","group","concat","keys","label","o","createRadioRenderer","p","CheckButtons","classes","controlClasses","renderOptions","isChecked","setChecked","c","entryAdornment","fieldOptionAdornment","renderType","DataRenderType","Radio","createCheckListRenderer","Array","isArray","includes","checked","setValue","setIncluded","collection","CheckList","useComponentTracking","_ref$controlClasses","uniqueId","RenderArrayElements","array","useComputed","selOrUnsel","selectedClass","notSelectedClass","entryWrapperClass","onClick","entryClass","checkClass","readOnly","labelClass","htmlFor","elem","included","createCheckboxRenderer","renderer","children","Fcheckbox","as","renderLabel","Checkbox","createDefaultLayoutRenderer","createLayoutRenderer","renderers","layout","renderLayoutParts","wrapLayout","DefaultLayout","divRef","errorControl","meta","scrollElement","errorClass","_ref$renderError","renderError","_ref$layout","controlEnd","Fragment","controlStart","touched","error","DefaultDisplayOnly","_ref2","schemaInterface","isEmptyValue","DefaultAccordion","_dataContext$dataNode","accordion","contentStyle","contentClassName","designMode","iconOpenClass","iconClosedClass","_ref$renderTitle","renderTitle","t","renderToggler","titleClass","useCss","dataContext","dataControl","dataNode","parentNode","open","defaultExpanded","accordionState","isOpen","fullContentStyle","title","renderLabelText","toggler","TabsGroupRenderer","renderTabs","tabs","tabListClass","tabClass","tabIndex","currentTab","activeClass","inactiveClass","definition","contentClass","renderChild","formNode","getChildNodes","createDefaultGroupRenderer","tabsRenderer","createGroupRenderer","GroupRenderType","Tabs","createTabsRenderer","_ref$gridStyles","gridStyles","_ref2$columns","columns","gridClassName","gridTemplateColumns","defaultGridColumns","_ref$defaultGridColum","standardClassName","flexClassName","defaultFlexGap","isTabsRenderer","isSelectChildRenderer","SelectChildGroupRenderer","_ref3","isGridRenderer","isFlexRenderer","gap","flexDirection","direction","flexStyles","dynHook","useEvalExpression","childIndexExpression","Render","useTrackedComponent","ctrl","runHook","childIndex","childDefinitions","deps","createDefaultVisibilityRenderer","createVisibilityRenderer","DefaultVisibility","visibility","useEffect","ex","visible","showing","ref","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","_mergeObjects","mergeObjects","isArrayRenderer","addText","noAdd","noRemove","removeText","editExternal","childOptions","renderAsElement","isCompoundField","childDefinition","nodeForControl","ControlDefinitionType","Data","Standard","hideTitle","Group","groupOptions","tree","visibilities","makeHookDepString","Entry","RenderEntry","arrayProps","createArrayActions","renderElement","wrap","index","renderChildElement","getLengthRestrictions","renderArray","elementNode","_control$elements$i$u","_control$elements","elements","parentDataNode","getChildElement","childVis","hook","lookupDataNode","some","createDefaultArrayRenderer","_ref4","DefaultArrayRenderer","renderAction","removableClass","childClass","removableChildClass","removeActionClass","addActionClass","arrayControl","editAction","_applyArrayLengthRest","applyArrayLengthRestrictions","addAction","removeAction","RenderElements","_","inputClass","createAutocompleteRenderer","_p$options","_p$options2","MultipleAutocomplete","SingleAutocomplete","Autocomplete","_controlClasses$place","_objectDestructuringEmpty","inputControl","selectedOptionControl","listContainerClass","listEntryClass","controlValues","selected","_useAutocomplete","useAutocomplete","freeSolo","multiple","inputValue","getOptionLabel","filterOptions","s","toLowerCase","onInputChange","reason","getInputProps","getListboxProps","getOptionProps","groupedOptions","popupOpen","focused","getPopupIndicatorProps","getRootProps","placeholder","option","optionProps","_effect2","_selectedOptionsContr","_selectedOptionsContr2","_controlClasses$place2","selectedOptionsControl","chipContainerClass","chipCloseButtonClass","_selected$map","selectedValues","_useAutocomplete2","Chip","onDeleteClick","find","removeElement","_ref5","_effect3","RenderType","ValueForFieldExtension","RenderOptions","fields","buildSchema","fieldRef","stringField","ValueForField","schema","default","setFields","_useMemo","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","notValue","setNullText","multiValuesClass","multiValuesText","childWrapperClass","MultilineTextfield","codeRef","useRef","textContent","contentEditable","onInput","currentTarget","ArrayElementRenderer","formRenderer","extData","getExternalEditData","overlayState","useOverlayTriggerState","onOpenChange","elementGroup","editContent","actionsClass","actions","action","dontValidate","hasErrors","visitFormDataInContext","validationVisitor","showInline","Modal","Dialog","createButtonActionRenderer","actionId","createActionRenderer","_options$renderConten","actionText","actionData","renderContent","DefaultBoolOptions","createDefaultDataRenderer","_options$checkOptions","_options$radioOptions","_options$checkListOpt","jsonataRenderer","jsonataClass","multilineRenderer","multilineClass","checkboxRenderer","checkOptions","checkboxOptions","selectRenderer","selectOptions","radioRenderer","radioOptions","checkListRenderer","checkListOptions","arrayElementRenderer","ArrayElement","createArrayElementRenderer","arrayElementOptions","_optionRenderer$boole","optionRenderer","booleanOptions","displayOnlyClass","defaultEmptyText","arrayRenderer","arrayOptions","autocompleteRenderer","autocompleteOptions","_field$displayName","fieldType","Compound","isDataGroupRenderer","renderGroup","displayOnly","isDisplayOnlyRenderer","hasOptions","NullToggle","Dropdown","Any","displayName","isTextfieldRenderer","multiline","createDefaultAdornmentRenderer","optional","isOptionalAdornment","useExpr","isSetFieldAdornment","dynamicHooks","useDynamicHooks","SetFieldWrapper","parentContext","otherField","schemaDataForFieldRef","always","defaultOnly","isIconAdornment","ControlStart","isAccordionAdornment","createDefaultLabelRenderer","_requiredElement$labe","requiredElement","labelContainer","groupLabelClass","controlLabelClass","labelStart","labelEnd","LabelType","forId","Control","createDefaultRenderers","renderLayout","defaultTailwindTheme","_schemaDataForFieldRe","actualFieldRef","node","schemaForFieldRef"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs","sources":["../src/components/DefaultDisplay.tsx","../src/components/ControlInput.tsx","../src/components/SelectDataRenderer.tsx","../src/components/CheckRenderer.tsx","../src/components/DefaultLayout.tsx","../src/components/DefaultDisplayOnly.tsx","../src/components/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 nodeForControl,\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 = nodeForControl(\n !renderAsElement\n ? ({\n type: ControlDefinitionType.Group,\n children: definition.children,\n groupOptions: { type: GroupRenderType.Standard, hideTitle: true },\n } as GroupedControlsDefinition)\n : ({\n type: ControlDefinitionType.Data,\n field: definition.field,\n children: definition.children,\n renderOptions: childOptions ?? { type: DataRenderType.Standard },\n hideTitle: true,\n } as DataControlDefinition),\n formNode.tree,\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 nodeForControl,\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 = nodeForControl(\n {\n type: ControlDefinitionType.Group,\n children: formNode.definition.children,\n groupOptions: { type: GroupRenderType.Standard, hideTitle: true },\n } as GroupedControlsDefinition,\n formNode.tree,\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","toText","convert","control","_formControlProps","formControlProps","errorText","onChange","inputProps","_excluded2","textValue","useControl","useControlEffect","v","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","renderOption","x","i","key","disabled","name","_ref$emptyText","_ref$requiredText","_useState","useState","showEmpty","optionStringMap","useMemo","Object","fromEntries","map","optionGroups","Set","filter","group","concat","keys","label","o","createRadioRenderer","p","CheckButtons","classes","controlClasses","renderOptions","isChecked","setChecked","c","entryAdornment","fieldOptionAdornment","renderType","DataRenderType","Radio","createCheckListRenderer","Array","isArray","includes","checked","setValue","setIncluded","collection","CheckList","_ref$controlClasses","uniqueId","RenderArrayElements","array","useComputed","selOrUnsel","selectedClass","notSelectedClass","entryWrapperClass","onClick","entryClass","checkClass","readOnly","labelClass","htmlFor","elem","included","already","createCheckboxRenderer","children","CheckBox","Checkbox","_ref2","_effect2","Fcheckbox","as","renderLabel","_ref3","_effect3","_ref3$type","_ref3$notValue","notValue","others","theseProps","ref","r","element","createDefaultLayoutRenderer","createLayoutRenderer","renderers","layout","renderLayoutParts","wrapLayout","DefaultLayout","divRef","errorControl","meta","scrollElement","errorClass","_ref$renderer","renderText","_ref$renderError","renderError","_ref$layout","controlEnd","controlStart","ec","touched","error","Fragment","DefaultDisplayOnly","schemaInterface","isEmptyValue","DefaultAccordion","_dataContext$dataNode","accordion","contentStyle","contentClassName","designMode","iconOpenClass","iconClosedClass","_ref$renderTitle","renderTitle","t","renderToggler","titleClass","useCss","dataContext","dataControl","dataNode","parentNode","open","defaultExpanded","accordionState","isOpen","fullContentStyle","title","renderLabelText","toggler","getAccordionState","createTabsRenderer","createGroupRenderer","TabsGroupRenderer","tabOptions","GroupRenderType","Tabs","renderTabs","tabs","tabListClass","tabClass","tabIndex","currentTab","activeClass","inactiveClass","definition","contentClass","renderChild","formNode","getChildNodes","createDefaultGroupRenderer","tabsRenderer","_ref$gridStyles","gridStyles","defaultGridStyles","_ref$defaultGridColum","defaultGridColumns","gridClassName","standardClassName","flexClassName","defaultFlexGap","_ref2$columns","columns","gridTemplateColumns","flexStyles","gap","flexDirection","direction","isTabsRenderer","isSelectChildRenderer","SelectChildGroupRenderer","isGridRenderer","isFlexRenderer","gcn","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","_mergeObjects","mergeObjects","isArrayRenderer","addText","noAdd","noRemove","removeText","editExternal","childOptions","renderAsElement","isCompoundField","childDefinition","nodeForControl","ControlDefinitionType","Group","groupOptions","Standard","hideTitle","Data","tree","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","_ref4","renderAction","DefaultArrayRenderer","removableClass","childClass","removableChildClass","removeActionClass","addActionClass","arrayControl","editAction","_applyArrayLengthRest","applyArrayLengthRestrictions","addAction","removeAction","RenderElements","_","inputClass","createAutocompleteRenderer","_p$options","_p$options2","MultipleAutocomplete","SingleAutocomplete","Autocomplete","_controlClasses$place","_objectDestructuringEmpty","inputControl","selectedOptionControl","listContainerClass","listEntryClass","controlValues","selected","_useAutocomplete","useAutocomplete","freeSolo","multiple","inputValue","getOptionLabel","filterOptions","s","toLowerCase","onInputChange","reason","getRootProps","getInputProps","getListboxProps","getOptionProps","groupedOptions","popupOpen","focused","getPopupIndicatorProps","placeholder","option","optionProps","_selectedOptionsContr","_selectedOptionsContr2","_controlClasses$place2","selectedOptionsControl","chipContainerClass","chipCloseButtonClass","_selected$map","selectedValues","_useAutocomplete2","Chip","onDeleteClick","find","removeElement","_ref5","RenderType","ValueForFieldExtension","RenderOptions","fields","buildSchema","fieldRef","stringField","createValueForFieldRenderer","_schemaDataForFieldRe","actualFieldRef","schemaDataForFieldRef","node","schemaForFieldRef","schema","ValueForField","setFields","_useMemo","rootSchema","rootSchemaNode","notNullable","onlyForTypes","addMissingControlsForSchema","controls","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","runValidation","hasErrors","visitFormDataInContext","elementGroup","validationVisitor","applyValidation","action","dontValidate","editContent","actionsClass","actions","showInline","Modal","Dialog","createButtonActionRenderer","actionId","createActionRenderer","_options$renderConten","actionText","actionData","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","_optionRenderer$boole","optionRenderer","booleanOptions","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","setFieldWrapper","parentContext","_dynamicHooks","dynamicHooks","fieldNode","otherField","always","defaultOnly","useDynamicHooks","SetFieldWrapper","isIconAdornment","ControlStart","isAccordionAdornment","createDefaultLabelRenderer","_labelContainer$optio","labelContainer","groupLabelClass","controlLabelClass","labelStart","labelEnd","_options$requiredElem","requiredElement","LabelType","forId","Control","createDefaultRenderers","_options$renderText","_options$h","renderLayout","createClassStyledRenderers","defaultTailwindTheme"],"mappings":"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"}
|