@react-typed-forms/schemas-html 3.0.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  import { Control } from "@react-typed-forms/core";
2
- import React, { ReactNode } from "react";
3
- import { CheckEntryClasses, FieldOption, FormRenderer } from "@react-typed-forms/schemas";
2
+ import { ReactNode } from "react";
3
+ import { CheckEntryClasses, FieldOption, FormRenderer, HtmlInputProperties } from "@react-typed-forms/schemas";
4
4
  export interface CheckRendererOptions {
5
5
  className?: string;
6
6
  entryClass?: string;
@@ -30,11 +30,9 @@ export declare function CheckButtons({ control, options, readonly, className, id
30
30
  }): JSX.Element;
31
31
  export declare function setIncluded<A>(array: A[], elem: A, included: boolean): A[];
32
32
  export declare function createCheckboxRenderer(options?: CheckRendererOptions): import("@react-typed-forms/schemas").DataRendererRegistration;
33
- export type FcheckboxProps = React.InputHTMLAttributes<HTMLInputElement> & {
34
- control: Control<boolean | undefined | null>;
35
- type?: "checkbox" | "radio";
36
- notValue?: boolean;
37
- };
38
- export declare function Fcheckbox({ control, type, notValue, renderer, ...others }: FcheckboxProps & {
33
+ export declare function createElementSelectedRenderer(options?: CheckRendererOptions): import("@react-typed-forms/schemas").DataRendererRegistration;
34
+ export declare function Fcheckbox({ control, type, notValue, renderer, ...others }: HtmlInputProperties & {
35
+ control: Control<boolean | null | undefined>;
39
36
  renderer: FormRenderer;
37
+ notValue?: boolean;
40
38
  }): JSX.Element;
@@ -1,11 +1,18 @@
1
1
  import React from "react";
2
2
  import { Control } from "@react-typed-forms/core";
3
3
  import { FormRenderer } from "@react-typed-forms/schemas";
4
- export declare function ControlInput({ control, convert, renderer, ...props }: React.InputHTMLAttributes<HTMLInputElement> & {
4
+ export interface ControlInputProps {
5
+ className?: string;
6
+ textClass?: string;
7
+ style?: React.CSSProperties;
8
+ id?: string;
9
+ readOnly?: boolean;
10
+ placeholder?: string;
5
11
  control: Control<any>;
6
12
  convert: InputConversion;
7
13
  renderer: FormRenderer;
8
- }): JSX.Element;
14
+ }
15
+ export declare function ControlInput({ control, convert, renderer, ...props }: ControlInputProps): JSX.Element;
9
16
  type InputConversion = [
10
17
  string,
11
18
  (s: string) => any,
@@ -2,7 +2,7 @@ import { CSSProperties, ReactElement } from "react";
2
2
  import { Control } from "@react-typed-forms/core";
3
3
  import { DefaultAccordionRendererOptions } from "../createDefaultRenderers";
4
4
  import { AccordionAdornment, ControlDataContext, FormRenderer } from "@react-typed-forms/schemas";
5
- export declare function DefaultAccordion({ children, accordion, contentStyle, contentClassName, designMode, iconOpenClass, iconClosedClass, className, renderTitle, renderToggler, renderers, titleClass, useCss, dataContext, }: {
5
+ export declare function DefaultAccordion({ children, accordion, contentStyle, contentClassName, designMode, iconOpen, iconClosed, className, renderTitle, renderToggler, renderers, titleClass, useCss, dataContext, }: {
6
6
  children: ReactElement;
7
7
  accordion: Partial<AccordionAdornment>;
8
8
  contentStyle?: CSSProperties;
@@ -1,6 +1,9 @@
1
1
  import React, { ReactNode } from "react";
2
- import { ActionRendererProps, ArrayActionOptions, ArrayRendererProps, ArrayRendererRegistration, DataRendererProps, DataRendererRegistration, FormRenderer } from "@react-typed-forms/schemas";
2
+ import { ActionRendererProps, ArrayActionOptions, ArrayRendererProps, ArrayRendererRegistration, DataRendererProps, DataRendererRegistration, FormRenderer, HtmlComponents } from "@react-typed-forms/schemas";
3
3
  export declare function createDefaultArrayDataRenderer(defaultActions?: ArrayActionOptions): DataRendererRegistration;
4
+ /**
5
+ * @trackControls
6
+ */
4
7
  export declare function DataArrayRenderer({ dataProps, renderers, defaultActions, }: {
5
8
  renderers: FormRenderer;
6
9
  dataProps: DataRendererProps;
@@ -17,5 +20,6 @@ export interface DefaultArrayRendererOptions extends ArrayActionOptions {
17
20
  export declare function createDefaultArrayRenderer(options?: DefaultArrayRendererOptions): ArrayRendererRegistration;
18
21
  export interface DefaultArrayRendererProps extends DefaultArrayRendererOptions, ArrayRendererProps {
19
22
  renderAction: (props: ActionRendererProps) => ReactNode;
23
+ html: HtmlComponents;
20
24
  }
21
25
  export declare function DefaultArrayRenderer(props: DefaultArrayRendererProps): JSX.Element;
@@ -0,0 +1,20 @@
1
+ import { DialogRenderOptions, FormRenderer, GroupRendererProps } from "@react-typed-forms/schemas";
2
+ export interface DefaultDialogRenderOptions {
3
+ classes?: {
4
+ className?: string;
5
+ titleClass?: string;
6
+ };
7
+ }
8
+ export declare const defaultDialogOptions: {
9
+ classes: {
10
+ className: string;
11
+ titleClass: string;
12
+ };
13
+ };
14
+ export declare function createDialogRenderer(options?: DefaultDialogRenderOptions): import("@react-typed-forms/schemas").GroupRendererRegistration;
15
+ export declare function DefaultDialogRenderer({ props, renderOptions, options, renderer, }: {
16
+ props: GroupRendererProps;
17
+ options?: DefaultDialogRenderOptions;
18
+ renderOptions: DialogRenderOptions;
19
+ renderer: FormRenderer;
20
+ }): JSX.Element;
@@ -1,9 +1,12 @@
1
1
  import { DisplayRendererProps, DisplayRendererRegistration, FormRenderer } from "@react-typed-forms/schemas";
2
2
  export interface DefaultDisplayRendererOptions {
3
3
  textClassName?: string;
4
+ textTextClass?: string;
4
5
  htmlClassName?: string;
5
6
  }
6
7
  export declare function createDefaultDisplayRenderer(options?: DefaultDisplayRendererOptions): DisplayRendererRegistration;
7
- export declare function DefaultDisplay({ data, display, className, style, renderer, ...options }: DefaultDisplayRendererOptions & DisplayRendererProps & {
8
+ export declare function DefaultDisplay({ renderer, options, displayProps, }: {
9
+ displayProps: DisplayRendererProps;
10
+ options: DefaultDisplayRendererOptions;
8
11
  renderer: FormRenderer;
9
12
  }): JSX.Element;
@@ -1,12 +1,12 @@
1
- import { Control } from "@react-typed-forms/core";
2
1
  import React from "react";
3
- import { FormRenderer, SchemaField, SchemaInterface } from "@react-typed-forms/schemas";
4
- export declare function DefaultDisplayOnly({ control, className, emptyText, schemaInterface, field, style, renderer, }: {
5
- control: Control<any>;
6
- field: SchemaField;
2
+ import { FormRenderer, SchemaDataNode, SchemaInterface } from "@react-typed-forms/schemas";
3
+ export declare function DefaultDisplayOnly({ dataNode, className, emptyText, schemaInterface, style, renderer, textClass, inline, }: {
4
+ dataNode: SchemaDataNode;
7
5
  schemaInterface: SchemaInterface;
8
6
  className?: string;
7
+ textClass?: string;
9
8
  style?: React.CSSProperties;
9
+ inline: boolean;
10
10
  renderer: FormRenderer;
11
11
  emptyText?: string | null;
12
12
  }): JSX.Element;
@@ -1,19 +1,17 @@
1
- import { GridRenderer, GroupRendererRegistration } from "@react-typed-forms/schemas";
2
- import { CSSProperties } from "react";
1
+ import { GroupRendererRegistration } from "@react-typed-forms/schemas";
3
2
  import { DefaultTabsRenderOptions } from "./TabsRenderer";
4
- interface StyleProps {
5
- className?: string;
6
- style?: CSSProperties;
7
- }
3
+ import { DefaultGridRenderOptions } from "./GridRenderer";
4
+ import { DefaultWizardRenderOptions } from "./DefaultWizardRenderer";
5
+ import { DefaultDialogRenderOptions } from "./DefaultDialogRenderer";
8
6
  export interface DefaultGroupRendererOptions {
9
7
  className?: string;
10
8
  standardClassName?: string;
11
- gridStyles?: (columns: GridRenderer) => StyleProps;
12
- gridClassName?: string;
13
- defaultGridColumns?: number;
9
+ grid?: DefaultGridRenderOptions;
14
10
  flexClassName?: string;
15
11
  defaultFlexGap?: string;
12
+ inlineClass?: string;
16
13
  tabs?: DefaultTabsRenderOptions;
14
+ wizard?: DefaultWizardRenderOptions;
15
+ dialog?: DefaultDialogRenderOptions;
17
16
  }
18
17
  export declare function createDefaultGroupRenderer(options?: DefaultGroupRendererOptions): GroupRendererRegistration;
19
- export {};
@@ -1,5 +1,4 @@
1
- import { RenderedLayout } from "@react-typed-forms/schemas";
2
- import { FormRenderer } from "@react-typed-forms/schemas";
1
+ import { FormRenderer, RenderedLayout } from "@react-typed-forms/schemas";
3
2
  import { ReactNode } from "react";
4
3
  export interface DefaultLayoutRendererOptions {
5
4
  className?: string;
@@ -7,7 +6,7 @@ export interface DefaultLayoutRendererOptions {
7
6
  renderError?: (errorText: string | null | undefined) => ReactNode;
8
7
  }
9
8
  export declare function createDefaultLayoutRenderer(options?: DefaultLayoutRendererOptions): import("@react-typed-forms/schemas").LayoutRendererRegistration;
10
- export declare function DefaultLayout({ errorClass, renderer: { h, renderText }, renderError, layout: { controlEnd, controlStart, label, children, errorControl }, }: DefaultLayoutRendererOptions & {
9
+ export declare function DefaultLayout({ errorClass, renderer: { html: { Div, Span }, }, renderError, layout: { controlEnd, controlStart, label, children, errorControl }, }: DefaultLayoutRendererOptions & {
11
10
  layout: RenderedLayout;
12
11
  renderer: FormRenderer;
13
12
  }): JSX.Element;
@@ -1,6 +1,7 @@
1
1
  import { VisibilityRendererProps } from "@react-typed-forms/schemas";
2
2
  import { FormRenderer } from "@react-typed-forms/schemas/lib";
3
+ import React from "react";
3
4
  export declare function createDefaultVisibilityRenderer(): import("@react-typed-forms/schemas").VisibilityRendererRegistration;
4
- export declare function DefaultVisibility({ visibility, children, className, style, divRef, renderer, }: VisibilityRendererProps & {
5
+ export declare function DefaultVisibility({ visibility, children, className, style, divRef, renderer, inline, }: VisibilityRendererProps & {
5
6
  renderer: FormRenderer;
6
- }): JSX.Element;
7
+ }): string | number | boolean | JSX.Element | Iterable<React.ReactNode> | null | undefined;
@@ -0,0 +1,28 @@
1
+ import { ActionRendererProps, FormRenderer, IconReference } from "@react-typed-forms/schemas";
2
+ import { ReactNode } from "react";
3
+ export interface CustomNavigationProps {
4
+ className?: string;
5
+ page: number;
6
+ totalPages: number;
7
+ next: ActionRendererProps;
8
+ prev: ActionRendererProps;
9
+ formRenderer: FormRenderer;
10
+ validatePage: () => Promise<boolean>;
11
+ }
12
+ export interface DefaultWizardRenderOptions {
13
+ classes?: {
14
+ className?: string;
15
+ navContainerClass?: string;
16
+ contentClass?: string;
17
+ };
18
+ actions?: {
19
+ nextText?: string;
20
+ nextIcon?: IconReference;
21
+ nextValidate?: boolean;
22
+ prevText?: string;
23
+ prevIcon?: IconReference;
24
+ prevValidate?: boolean;
25
+ };
26
+ renderNavigation?: (props: CustomNavigationProps) => ReactNode;
27
+ }
28
+ export declare function createWizardRenderer(options?: DefaultWizardRenderOptions): import("@react-typed-forms/schemas").GroupRendererRegistration;
@@ -0,0 +1,6 @@
1
+ export interface DefaultGridRenderOptions {
2
+ className?: string;
3
+ defaultColumns?: number;
4
+ rowClass?: string;
5
+ }
6
+ export declare function createGridRenderer(options?: DefaultGridRenderOptions): import("@react-typed-forms/schemas").GroupRendererRegistration;
@@ -1,11 +1,12 @@
1
1
  import { Control } from "@react-typed-forms/core";
2
- import { ControlDataContext, JsonataRenderOptions, SchemaDataNode } from "@react-typed-forms/schemas";
2
+ import { ControlDataContext, JsonataRenderOptions, RunExpression, SchemaDataNode } from "@react-typed-forms/schemas";
3
3
  export declare function createJsonataRenderer(className?: string): import("@react-typed-forms/schemas").DataRendererRegistration;
4
- export declare function JsonataRenderer({ control, renderOptions, readonly, className, dataContext, dataNode, }: {
4
+ export declare function JsonataRenderer({ control, renderOptions, readonly, className, dataContext, dataNode, runExpression, }: {
5
5
  control: Control<any>;
6
6
  renderOptions: JsonataRenderOptions;
7
7
  className?: string;
8
8
  dataContext: ControlDataContext;
9
9
  dataNode: SchemaDataNode;
10
10
  readonly: boolean;
11
+ runExpression: RunExpression;
11
12
  }): JSX.Element;
@@ -1,4 +1,3 @@
1
- import { GroupRendererProps, TabsRenderOptions } from "@react-typed-forms/schemas";
2
1
  export interface DefaultTabsRenderOptions {
3
2
  className?: string;
4
3
  tabListClass?: string;
@@ -9,7 +8,3 @@ export interface DefaultTabsRenderOptions {
9
8
  contentClass?: string;
10
9
  }
11
10
  export declare function createTabsRenderer(options?: DefaultTabsRenderOptions): import("@react-typed-forms/schemas").GroupRendererRegistration;
12
- export declare function TabsGroupRenderer({ formNode, className, options, renderChild, designMode, tabOptions, }: GroupRendererProps & {
13
- options: DefaultTabsRenderOptions;
14
- tabOptions: TabsRenderOptions;
15
- }): JSX.Element;
@@ -2,6 +2,8 @@ import { ControlDefinitionExtension, RenderOptions, SchemaNode } from "@react-ty
2
2
  export interface ValueForFieldRenderOptions extends RenderOptions {
3
3
  type: "ValueForField";
4
4
  fieldRef?: string | null;
5
+ noOptions?: boolean;
6
+ refIsDirect?: boolean;
5
7
  }
6
8
  export declare const ValueForFieldExtension: ControlDefinitionExtension;
7
9
  export interface ValueForFieldOptions {
@@ -0,0 +1,14 @@
1
+ import { ControlDataContext, FormNode, ParentRendererProps } from "@react-typed-forms/schemas";
2
+ import { ReactNode } from "react";
3
+ interface VisibleChildrenRendererProps<A> {
4
+ parent: ParentRendererProps;
5
+ parentFormNode: FormNode;
6
+ dataContext: ControlDataContext;
7
+ props: A;
8
+ render: (props: A, isChildVisible: (childIndex: number) => boolean) => ReactNode;
9
+ }
10
+ /**
11
+ * @trackControls
12
+ */
13
+ export declare function VisibleChildrenRenderer<A>(props: VisibleChildrenRendererProps<A>): ReactNode;
14
+ export {};
@@ -0,0 +1,21 @@
1
+ import { ReactNode } from "react";
2
+ import { ActionRendererRegistration, IconPlacement, IconReference } from "@react-typed-forms/schemas";
3
+ export interface DefaultActionRendererOptions {
4
+ buttonClass?: string;
5
+ textClass?: string;
6
+ primaryClass?: string;
7
+ primaryTextClass?: string;
8
+ secondaryClass?: string;
9
+ secondaryTextClass?: string;
10
+ linkClass?: string;
11
+ linkTextClass?: string;
12
+ iconBeforeClass?: string;
13
+ iconAfterClass?: string;
14
+ groupClass?: string;
15
+ renderContent?: (actionText: string, actionId: string, actionData: any) => ReactNode;
16
+ icon?: IconReference;
17
+ iconPlacement?: IconPlacement;
18
+ notWrapInText?: boolean;
19
+ androidRippleColor?: string;
20
+ }
21
+ export declare function createButtonActionRenderer(actionId: string | string[] | undefined, options?: DefaultActionRendererOptions): ActionRendererRegistration;
@@ -5,11 +5,12 @@ import { SelectRendererOptions } from "./components/SelectDataRenderer";
5
5
  import { Control } from "@react-typed-forms/core";
6
6
  import { DefaultArrayRendererOptions } from "./components/DefaultArrayRenderer";
7
7
  import { CheckRendererOptions } from "./components/CheckRenderer";
8
- import { ActionRendererRegistration, AdornmentRendererRegistration, ArrayActionOptions, DataRendererRegistration, DefaultRenderers, FieldOption, FormRenderer, LabelRendererRegistration } from "@react-typed-forms/schemas";
8
+ import { AdornmentRendererRegistration, ArrayActionOptions, DataRendererRegistration, DefaultRenderers, FieldOption, FormRenderer, HtmlButtonProperties, HtmlComponents, HtmlDivProperties, HtmlIconProperties, HtmlInputProperties, HtmlLabelProperties, IconReference, LabelRendererRegistration, RendererRegistration } from "@react-typed-forms/schemas";
9
9
  import { DefaultGroupRendererOptions } from "./components/DefaultGroupRenderer";
10
10
  import { AutocompleteRendererOptions } from "./components/AutocompleteRenderer";
11
11
  import { DefaultOptionalAdornmentOptions } from "./adornments/optionalAdornment";
12
12
  import { ArrayElementRendererOptions } from "./components/ArrayElementRenderer";
13
+ import { DefaultActionRendererOptions } from "./createButtonActionRenderer";
13
14
  export interface DefaultRendererOptions {
14
15
  data?: DefaultDataRendererOptions;
15
16
  display?: DefaultDisplayRendererOptions;
@@ -19,17 +20,13 @@ export interface DefaultRendererOptions {
19
20
  label?: DefaultLabelRendererOptions;
20
21
  adornment?: DefaultAdornmentRendererOptions;
21
22
  layout?: DefaultLayoutRendererOptions;
22
- renderText?: (props: ReactNode) => ReactNode;
23
- h?: FormRenderer["h"];
23
+ extraRenderers?: (options: DefaultRendererOptions) => RendererRegistration[];
24
+ html?: FormRenderer["html"];
24
25
  }
25
- export interface DefaultActionRendererOptions {
26
- className?: string;
27
- renderContent?: (actionText: string, actionId: string, actionData: any) => ReactNode;
28
- }
29
- export declare function createButtonActionRenderer(actionId: string | string[] | undefined, options?: DefaultActionRendererOptions): ActionRendererRegistration;
30
26
  export declare const DefaultBoolOptions: FieldOption[];
31
27
  export interface DefaultDataRendererOptions {
32
28
  inputClass?: string;
29
+ inputTextClass?: string;
33
30
  displayOnlyClass?: string;
34
31
  selectOptions?: SelectRendererOptions;
35
32
  checkboxOptions?: CheckRendererOptions;
@@ -50,25 +47,43 @@ export interface DefaultAccordionRendererOptions {
50
47
  className?: string;
51
48
  titleClass?: string;
52
49
  togglerClass?: string;
53
- iconOpenClass?: string;
54
- iconClosedClass?: string;
50
+ iconOpen?: IconReference;
51
+ iconClosed?: IconReference;
55
52
  renderTitle?: (title: string | undefined, current: Control<boolean>) => ReactNode;
56
53
  renderToggler?: (current: Control<boolean>, title: ReactNode) => ReactNode;
57
54
  useCss?: boolean;
58
55
  }
56
+ export interface DefaultHelpTextRendererOptions {
57
+ triggerContainerClass?: string;
58
+ triggerLabelClass?: string;
59
+ contentContainerClass?: string;
60
+ contentTextClass?: string;
61
+ iconName?: string;
62
+ iconClass?: string;
63
+ }
59
64
  export interface DefaultAdornmentRendererOptions {
60
65
  accordion?: DefaultAccordionRendererOptions;
66
+ helpText?: DefaultHelpTextRendererOptions;
61
67
  optional?: DefaultOptionalAdornmentOptions;
62
68
  }
63
69
  export declare function createDefaultAdornmentRenderer(options?: DefaultAdornmentRendererOptions): AdornmentRendererRegistration;
64
70
  interface DefaultLabelRendererOptions {
65
71
  className?: string;
72
+ textClass?: string;
66
73
  groupLabelClass?: string;
74
+ groupLabelTextClass?: string;
67
75
  controlLabelClass?: string;
68
- requiredElement?: (h: FormRenderer["h"]) => ReactNode;
76
+ controlLabelTextClass?: string;
77
+ requiredElement?: (h: FormRenderer["html"]) => ReactNode;
69
78
  labelContainer?: (children: ReactElement) => ReactElement;
70
79
  }
71
80
  export declare function createDefaultLabelRenderer(options?: DefaultLabelRendererOptions): LabelRendererRegistration;
81
+ export declare const StandardHtmlComponents: HtmlComponents;
82
+ export declare function DefaultHtmlButtonRenderer({ inline, textClass, className, notWrapInText, androidRippleColor, onClick, nonTextContent, ...props }: HtmlButtonProperties): JSX.Element;
83
+ export declare function DefaultHtmlInputRenderer({ textClass, className, onChangeValue, onChangeChecked, inputRef, ...props }: HtmlInputProperties): JSX.Element;
84
+ export declare function DefaultHtmlDivRenderer({ text, html, children, className, textClass, nativeRef, inline, ...props }: HtmlDivProperties): JSX.Element;
85
+ export declare function DefaultHtmlLabelRenderer({ textClass, className, ...props }: HtmlLabelProperties): JSX.Element;
86
+ export declare function DefaultHtmlIconRenderer({ iconName, iconLibrary, className, style, }: HtmlIconProperties): JSX.Element | undefined;
72
87
  export declare function createDefaultRenderers(options?: DefaultRendererOptions): DefaultRenderers;
73
88
  export declare function createClassStyledRenderers(): DefaultRenderers;
74
89
  export {};