@iress-oss/ids-mcp-server 6.0.0-alpha.2 → 6.0.0-alpha.3
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/generated/docs/components_components-alert-docs.md +7 -7
- package/generated/docs/components_components-autocomplete-docs.md +18 -18
- package/generated/docs/components_components-autocomplete-recipes-docs.md +9 -2
- package/generated/docs/components_components-badge-docs.md +4 -4
- package/generated/docs/components_components-button-docs.md +16 -14
- package/generated/docs/components_components-buttongroup-docs.md +9 -9
- package/generated/docs/components_components-card-docs.md +32 -17
- package/generated/docs/components_components-checkbox-docs.md +7 -7
- package/generated/docs/components_components-checkboxgroup-docs.md +10 -10
- package/generated/docs/components_components-checkboxgroup-recipes-docs.md +2 -2
- package/generated/docs/components_components-col-docs.md +38 -38
- package/generated/docs/components_components-container-docs.md +5 -5
- package/generated/docs/components_components-divider-docs.md +5 -5
- package/generated/docs/components_components-expander-docs.md +6 -4
- package/generated/docs/components_components-field-docs.md +28 -28
- package/generated/docs/components_components-filter-docs.md +19 -19
- package/generated/docs/components_components-hide-docs.md +9 -9
- package/generated/docs/components_components-icon-docs.md +9 -9
- package/generated/docs/components_components-image-docs.md +2 -2
- package/generated/docs/components_components-inline-docs.md +76 -388
- package/generated/docs/components_components-input-docs.md +9 -9
- package/generated/docs/components_components-input-recipes-docs.md +4 -4
- package/generated/docs/components_components-inputcurrency-docs.md +7 -7
- package/generated/docs/components_components-inputcurrency-recipes-docs.md +5 -2
- package/generated/docs/components_components-label-docs.md +4 -4
- package/generated/docs/components_components-link-docs.md +6 -4
- package/generated/docs/components_components-menu-docs.md +13 -13
- package/generated/docs/components_components-menu-menuitem-docs.md +12 -12
- package/generated/docs/components_components-modal-docs.md +32 -13
- package/generated/docs/components_components-panel-docs.md +6 -6
- package/generated/docs/components_components-placeholder-docs.md +1 -1
- package/generated/docs/components_components-popover-docs.md +11 -9
- package/generated/docs/components_components-popover-recipes-docs.md +4 -2
- package/generated/docs/components_components-progress-docs.md +1 -1
- package/generated/docs/components_components-provider-docs.md +2 -2
- package/generated/docs/components_components-radio-docs.md +5 -5
- package/generated/docs/components_components-radiogroup-docs.md +8 -8
- package/generated/docs/components_components-readonly-docs.md +3 -3
- package/generated/docs/components_components-richselect-docs.md +69 -28
- package/generated/docs/components_components-row-docs.md +60 -492
- package/generated/docs/components_components-select-docs.md +8 -8
- package/generated/docs/components_components-skeleton-docs.md +9 -9
- package/generated/docs/components_components-skeleton-recipes-docs.md +2 -2
- package/generated/docs/components_components-skiplink-docs.md +1 -1
- package/generated/docs/components_components-slideout-docs.md +34 -13
- package/generated/docs/components_components-slider-docs.md +8 -8
- package/generated/docs/components_components-spinner-docs.md +3 -3
- package/generated/docs/components_components-stack-docs.md +63 -175
- package/generated/docs/components_components-table-docs.md +31 -24
- package/generated/docs/components_components-tabset-docs.md +10 -10
- package/generated/docs/components_components-tabset-tab-docs.md +4 -4
- package/generated/docs/components_components-tag-docs.md +14 -5
- package/generated/docs/components_components-text-docs.md +21 -9
- package/generated/docs/components_components-toaster-docs.md +12 -12
- package/generated/docs/components_components-toggle-docs.md +6 -6
- package/generated/docs/components_components-tooltip-docs.md +4 -4
- package/generated/docs/components_components-validationmessage-docs.md +5 -5
- package/generated/docs/components_foundations-responsive-layout-docs.md +16 -15
- package/generated/docs/components_foundations-z-index-stacking-docs.md +1 -1
- package/generated/docs/components_introduction-docs.md +1 -1
- package/generated/docs/components_patterns-form-docs.md +96 -57
- package/generated/docs/components_patterns-form-recipes-docs.md +144 -19
- package/generated/docs/components_patterns-loading-docs.md +98 -17
- package/generated/docs/components_patterns-shadow-docs.md +2 -2
- package/generated/docs/components_sandbox-docs.md +226 -0
- package/generated/docs/components_styling-props-colour-docs.md +2 -2
- package/generated/docs/components_styling-props-elevation-docs.md +2 -2
- package/generated/docs/components_styling-props-radius-docs.md +3 -3
- package/generated/docs/components_styling-props-reference-docs.md +3 -3
- package/generated/docs/components_styling-props-screen-readers-docs.md +2 -2
- package/generated/docs/components_styling-props-sizing-docs.md +3 -3
- package/generated/docs/components_styling-props-spacing-docs.md +19 -19
- package/generated/docs/components_styling-props-typography-docs.md +2 -2
- package/generated/docs/guidelines.md +17 -16
- package/generated/docs/tokens_colour-docs.md +72 -0
- package/generated/docs/tokens_introduction-docs.md +15 -18
- package/generated/docs/tokens_sandbox-docs.md +1 -0
- package/generated/docs/tokens_spacing-docs.md +10 -40
- package/generated/docs/tokens_typography-docs.md +43 -1
- package/package.json +3 -2
|
@@ -8,7 +8,7 @@ Use the `IressForm` component when you want to request, validate and process dat
|
|
|
8
8
|
|
|
9
9
|
[](./iframe.html?id=patterns-form--simple)
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Hide codedrawOpen in CodeSandbox
|
|
12
12
|
|
|
13
13
|
<ForwardedForm
|
|
14
14
|
actions\={<IressButton mode\="primary" type\="submit"\>Submit</IressButton\>}
|
|
@@ -106,7 +106,7 @@ New
|
|
|
106
106
|
|
|
107
107
|
<table class="css-1n5o7vh-diff-container"><tbody><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text">import { IressForm, IressField, IressInput, IressCheckboxGroup, IressCheckbox } from '@iress/components';</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text">import { IressForm, IressFormField, IressInput, IressCheckboxGroup, IressCheckbox } from '@iress-oss/ids-components';</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-10regm7-empty-line"><pre></pre></td><td class="css-vl0irh-content css-10regm7-empty-line"><pre class="css-o1u8iu-content-text"></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-10regm7-empty-line"><pre></pre></td><td class="css-vl0irh-content css-10regm7-empty-line"><pre class="css-o1u8iu-content-text"></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text">export const App = () => {</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text">const ConditionalFields = () => {</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> // We need to create our own state to manage the visibility of the fields, </pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> // Instead of creating our own state, we can now use the form state via the useWatch hook, </pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> // which means we have two sources of truth potentially making our code harder to maintain</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> // meaning we still have a single source of truth</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> const [show, setShow] = useState(['name']);</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> const show = IressForm.useWatch({ name: 'show'});</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-10regm7-empty-line"><pre></pre></td><td class="css-vl0irh-content css-10regm7-empty-line"><pre class="css-o1u8iu-content-text"></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker"><pre></pre></td><td class="css-vl0irh-content"><pre class="css-o1u8iu-content-text"> return (</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> <IressForm></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> <></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> <IressField label="Show fields"></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> <IressFormField </pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> <IressCheckboxGroup value={show} onChange={(newValues) => setShow(newValues)}></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> label="Show fields" </pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> name="show"</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> render={(controlledProps) => (</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> <IressCheckboxGroup {...controlledProps}></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker"><pre></pre></td><td class="css-vl0irh-content"><pre class="css-o1u8iu-content-text"> <IressCheckbox value="name">Name</IressCheckbox></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker"><pre></pre></td><td class="css-vl0irh-content"><pre class="css-o1u8iu-content-text"> <IressCheckbox value="email">Email</IressCheckbox></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker"><pre></pre></td><td class="css-vl0irh-content"><pre class="css-o1u8iu-content-text"> </IressCheckboxGroup></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> </IressField></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> )}</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> {show.includes('name') && (</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> /></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> <IressField label="Name"></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> {show?.includes('name') && (</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> <IressInput name="name" /></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> <IressFormField </pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> </IressField></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> label="Name" </pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> )}</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> name="name"</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> {show.includes('email') && (</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> render={(controlledProps) => <IressInput {...controlledProps} />}</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> <IressField label="Email"></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> /></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> <IressInput name="email" type="email" /></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> )}</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> </IressField></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> {show?.includes('email') && (</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> )}</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> <IressFormField </pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> </IressForm></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> label="Email" </pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> name="email"</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> render={(controlledProps) => <IressInput {...controlledProps} type="email" />}</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> /></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> )}</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> </></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker"><pre></pre></td><td class="css-vl0irh-content"><pre class="css-o1u8iu-content-text"> );</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker"><pre></pre></td><td class="css-vl0irh-content"><pre class="css-o1u8iu-content-text">};</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-10regm7-empty-line css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-10regm7-empty-line css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text">export const App = () => (</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> <IressForm defaultValues={{ show: ['name'] }}></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> <ConditionalFields /> </pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> </IressForm></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text">);</pre></td></tr></tbody></table>
|
|
108
108
|
|
|
109
|
-
|
|
109
|
+
Hide codedrawOpen in CodeSandbox
|
|
110
110
|
|
|
111
111
|
{
|
|
112
112
|
render: () \=> <DiffViewer allowModeChange oldValue\={\`import { IressForm, IressField, IressInput, IressCheckboxGroup, IressCheckbox } from '@iress/components';
|
|
@@ -171,7 +171,7 @@ New
|
|
|
171
171
|
|
|
172
172
|
<table class="css-1n5o7vh-diff-container"><tbody><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text">import { IressForm, IressField, IressInput, IressButton } from '@iress/components';</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text">import { IressForm, IressFormField, IressInput, IressButton } from '@iress-oss/ids-components';</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-10regm7-empty-line"><pre></pre></td><td class="css-vl0irh-content css-10regm7-empty-line"><pre class="css-o1u8iu-content-text"></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker"><pre></pre></td><td class="css-vl0irh-content"><pre class="css-o1u8iu-content-text">export const App = () => (</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> <IressForm valueMissing="{{fieldName}} needs to be filled in!"></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> <IressForm></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> <IressField label="Name"></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> <IressFormField </pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> <IressInput name="name" required /></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> label="Name"</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> </IressField></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> name="name"</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> <IressField label="Email"></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> render={(controlledProps) => <IressInput {...controlledProps} />}</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> <IressInput name="email" maxLength={10} /></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> rules={{ required: 'Name needs to be filled in!' }}</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-rq9a2a-diff-removed"><pre>-</pre></td><td class="css-vl0irh-content css-rq9a2a-diff-removed"><pre class="css-o1u8iu-content-text"> </IressField></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> /></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> <IressFormField </pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> label="Email"</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> name="email"</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> render={(controlledProps) => <IressInput {...controlledProps} type="email" maxLength={10} />}</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> rules={{ maxLength: 10 }}</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker css-cnnxkz-diff-added"><pre>+</pre></td><td class="css-vl0irh-content css-cnnxkz-diff-added"><pre class="css-o1u8iu-content-text"> /></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker"><pre></pre></td><td class="css-vl0irh-content"><pre class="css-o1u8iu-content-text"> <IressButton type="submit" mode="primary"></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker"><pre></pre></td><td class="css-vl0irh-content"><pre class="css-o1u8iu-content-text"> Sign up</pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker"><pre></pre></td><td class="css-vl0irh-content"><pre class="css-o1u8iu-content-text"> </IressButton></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker"><pre></pre></td><td class="css-vl0irh-content"><pre class="css-o1u8iu-content-text"> </IressForm></pre></td></tr><tr class="css-1n7ec1i-line"><td class="css-17vezug-marker"><pre></pre></td><td class="css-vl0irh-content"><pre class="css-o1u8iu-content-text">);</pre></td></tr></tbody></table>
|
|
173
173
|
|
|
174
|
-
|
|
174
|
+
Hide codedrawOpen in CodeSandbox
|
|
175
175
|
|
|
176
176
|
{
|
|
177
177
|
render: () \=> <DiffViewer allowModeChange oldValue\={\`import { IressForm, IressField, IressInput, IressButton } from '@iress/components';
|
|
@@ -275,7 +275,7 @@ Here are some examples of how to use `IressFormField` with different form contro
|
|
|
275
275
|
|
|
276
276
|
[](./iframe.html?id=patterns-form--fields)
|
|
277
277
|
|
|
278
|
-
|
|
278
|
+
Hide codedrawOpen in CodeSandbox
|
|
279
279
|
|
|
280
280
|
<ForwardedForm
|
|
281
281
|
actions\={<IressButton mode\="primary" type\="submit"\>Submit</IressButton\>}
|
|
@@ -422,7 +422,7 @@ A boolean which, if `true`, indicates that the input must have a value before th
|
|
|
422
422
|
|
|
423
423
|
[](./iframe.html?id=patterns-form-rules--required)
|
|
424
424
|
|
|
425
|
-
|
|
425
|
+
Hide codedrawOpen in CodeSandbox
|
|
426
426
|
|
|
427
427
|
<ForwardedForm\>
|
|
428
428
|
<IressFormField
|
|
@@ -469,7 +469,7 @@ The maximum character length of the value to accept for this input.
|
|
|
469
469
|
|
|
470
470
|
[](./iframe.html?id=patterns-form-rules--max-length)
|
|
471
471
|
|
|
472
|
-
|
|
472
|
+
Hide codedrawOpen in CodeSandbox
|
|
473
473
|
|
|
474
474
|
<ForwardedForm\>
|
|
475
475
|
<IressFormField
|
|
@@ -519,7 +519,7 @@ The minimum character length of the value to accept for this input.
|
|
|
519
519
|
|
|
520
520
|
[](./iframe.html?id=patterns-form-rules--min-length)
|
|
521
521
|
|
|
522
|
-
|
|
522
|
+
Hide codedrawOpen in CodeSandbox
|
|
523
523
|
|
|
524
524
|
<ForwardedForm\>
|
|
525
525
|
<IressFormField
|
|
@@ -568,7 +568,7 @@ The maximum number to accept for this input.
|
|
|
568
568
|
|
|
569
569
|
[](./iframe.html?id=patterns-form-rules--max)
|
|
570
570
|
|
|
571
|
-
|
|
571
|
+
Hide codedrawOpen in CodeSandbox
|
|
572
572
|
|
|
573
573
|
<ForwardedForm\>
|
|
574
574
|
<IressFormField
|
|
@@ -617,26 +617,36 @@ The minimum number to accept for this input.
|
|
|
617
617
|
|
|
618
618
|
[](./iframe.html?id=patterns-form-rules--min)
|
|
619
619
|
|
|
620
|
-
|
|
620
|
+
Hide codedrawOpen in CodeSandbox
|
|
621
621
|
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
rules: {
|
|
622
|
+
<ForwardedForm\>
|
|
623
|
+
<IressFormField
|
|
624
|
+
hint\="Select a minimum of 20"
|
|
625
|
+
label\="Default message"
|
|
626
|
+
name\="IressInput-default"
|
|
627
|
+
render\={(controlledProps) \=> <IressInput {...controlledProps} />}
|
|
628
|
+
rules\={{
|
|
630
629
|
min: 20
|
|
631
|
-
}
|
|
632
|
-
|
|
630
|
+
}}
|
|
631
|
+
/>
|
|
632
|
+
<IressFormField
|
|
633
|
+
hint\="Select a minimum of 20"
|
|
634
|
+
label\="Custom message"
|
|
635
|
+
name\="IressInput-custom"
|
|
636
|
+
render\={(controlledProps) \=> <IressInput {...controlledProps} />}
|
|
637
|
+
rules\={{
|
|
633
638
|
min: {
|
|
634
|
-
|
|
635
|
-
|
|
639
|
+
message: 'Please enter a min of 20!',
|
|
640
|
+
value: 20
|
|
636
641
|
}
|
|
637
|
-
}
|
|
638
|
-
|
|
639
|
-
|
|
642
|
+
}}
|
|
643
|
+
/>
|
|
644
|
+
<IressButton
|
|
645
|
+
mode\="primary"
|
|
646
|
+
type\="submit"
|
|
647
|
+
\>
|
|
648
|
+
Validate </IressButton\>
|
|
649
|
+
</ForwardedForm\>
|
|
640
650
|
|
|
641
651
|
```
|
|
642
652
|
|
|
@@ -656,26 +666,31 @@ The accepted regex pattern for the input.
|
|
|
656
666
|
|
|
657
667
|
[](./iframe.html?id=patterns-form-rules--pattern)
|
|
658
668
|
|
|
659
|
-
|
|
669
|
+
Hide codedrawOpen in CodeSandbox
|
|
660
670
|
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
rules: {
|
|
671
|
+
<ForwardedForm\>
|
|
672
|
+
<IressFormField
|
|
673
|
+
hint\="Enter a valid email address"
|
|
674
|
+
label\="Default message"
|
|
675
|
+
name\="IressInput-default"
|
|
676
|
+
render\={(controlledProps) \=> <IressInput {...controlledProps} />}
|
|
677
|
+
rules\={{
|
|
669
678
|
pattern: /^\[a-zA-Z0-9.!#$%&'\*+/=?^\_\`{|}~-\]+@\[a-zA-Z0-9\](?:\[a-zA-Z0-9-\]{0,61}\[a-zA-Z0-9\])?(?:\\.\[a-zA-Z0-9\](?:\[a-zA-Z0-9-\]{0,61}\[a-zA-Z0-9\])?)\*$/
|
|
670
|
-
}
|
|
671
|
-
|
|
679
|
+
}}
|
|
680
|
+
/>
|
|
681
|
+
<IressFormField hint="Enter a valid email address" label="Custom message" name="IressInput-custom" render={(controlledProps) \=> <IressInput {...controlledProps} />}
|
|
682
|
+
rules={{
|
|
672
683
|
pattern: {
|
|
673
|
-
|
|
674
|
-
|
|
684
|
+
message: 'Please enter a valid email address!',
|
|
685
|
+
value: /^\[a-zA-Z0-9.!#$%&'\*+/=?^\_\`{|}~-\]+@\[a-zA-Z0-9\](?:\[a-zA-Z0-9-\]{0,61}\[a-zA-Z0-9\])?(?:\\.\[a-zA-Z0-9\](?:\[a-zA-Z0-9-\]{0,61}\[a-zA-Z0-9\])?)\*$/
|
|
675
686
|
}
|
|
676
|
-
}
|
|
677
|
-
|
|
678
|
-
|
|
687
|
+
}}
|
|
688
|
+
/> <IressButton
|
|
689
|
+
mode\="primary"
|
|
690
|
+
type\="submit"
|
|
691
|
+
\>
|
|
692
|
+
Validate </IressButton\>
|
|
693
|
+
</ForwardedForm\>
|
|
679
694
|
|
|
680
695
|
```
|
|
681
696
|
|
|
@@ -693,7 +708,7 @@ The minimum date to accept for this input.
|
|
|
693
708
|
|
|
694
709
|
[](./iframe.html?id=patterns-form-rules--min-date)
|
|
695
710
|
|
|
696
|
-
|
|
711
|
+
Hide codedrawOpen in CodeSandbox
|
|
697
712
|
|
|
698
713
|
{
|
|
699
714
|
...Default,
|
|
@@ -734,7 +749,7 @@ The maximum date to accept for this input.
|
|
|
734
749
|
|
|
735
750
|
[](./iframe.html?id=patterns-form-rules--max-date)
|
|
736
751
|
|
|
737
|
-
|
|
752
|
+
Hide codedrawOpen in CodeSandbox
|
|
738
753
|
|
|
739
754
|
{
|
|
740
755
|
...Default,
|
|
@@ -775,7 +790,7 @@ Ensures the input is a valid email address.
|
|
|
775
790
|
|
|
776
791
|
[](./iframe.html?id=patterns-form-rules--email)
|
|
777
792
|
|
|
778
|
-
|
|
793
|
+
Hide codedrawOpen in CodeSandbox
|
|
779
794
|
|
|
780
795
|
<ForwardedForm\>
|
|
781
796
|
<IressFormField
|
|
@@ -825,7 +840,7 @@ You can pass a callback function as the argument to validate, or you can pass an
|
|
|
825
840
|
|
|
826
841
|
[](./iframe.html?id=patterns-form-rules--validate)
|
|
827
842
|
|
|
828
|
-
|
|
843
|
+
Hide codedrawOpen in CodeSandbox
|
|
829
844
|
|
|
830
845
|
<ForwardedForm\>
|
|
831
846
|
<IressFormFieldset
|
|
@@ -887,7 +902,7 @@ When the form passes validation (if not disabled), the `onSubmit` event is emitt
|
|
|
887
902
|
|
|
888
903
|
[](./iframe.html?id=patterns-form--handling-submission)
|
|
889
904
|
|
|
890
|
-
|
|
905
|
+
Hide codedrawOpen in CodeSandbox
|
|
891
906
|
|
|
892
907
|
import {
|
|
893
908
|
IressTable,
|
|
@@ -897,7 +912,7 @@ import {
|
|
|
897
912
|
IressFormField,
|
|
898
913
|
IressInput,
|
|
899
914
|
IressButton,
|
|
900
|
-
} from '
|
|
915
|
+
} from '@/main';
|
|
901
916
|
import { useState } from 'react';
|
|
902
917
|
interface FieldValues {
|
|
903
918
|
name?: string;
|
|
@@ -1013,7 +1028,7 @@ You can set the `defaultValues` prop to pre-fill the form values.
|
|
|
1013
1028
|
|
|
1014
1029
|
[](./iframe.html?id=patterns-form--default-values)
|
|
1015
1030
|
|
|
1016
|
-
|
|
1031
|
+
Hide codedrawOpen in CodeSandbox
|
|
1017
1032
|
|
|
1018
1033
|
<ForwardedForm
|
|
1019
1034
|
actions\={<IressButton mode\="primary" type\="submit"\>Submit</IressButton\>}
|
|
@@ -1094,7 +1109,7 @@ One use case for this prop is to create your own visible error summary at the to
|
|
|
1094
1109
|
|
|
1095
1110
|
[](./iframe.html?id=patterns-form--custom-error-handling)
|
|
1096
1111
|
|
|
1097
|
-
|
|
1112
|
+
Hide codedrawOpen in CodeSandbox
|
|
1098
1113
|
|
|
1099
1114
|
import {
|
|
1100
1115
|
IressTable,
|
|
@@ -1106,7 +1121,7 @@ import {
|
|
|
1106
1121
|
IressInput,
|
|
1107
1122
|
IressButton,
|
|
1108
1123
|
IressText,
|
|
1109
|
-
} from '
|
|
1124
|
+
} from '@/main';
|
|
1110
1125
|
import { useState } from 'react';
|
|
1111
1126
|
import { type FieldErrors } from 'react-hook-form';
|
|
1112
1127
|
interface FieldValues {
|
|
@@ -1227,8 +1242,20 @@ Use cases where you may need the `values` prop:
|
|
|
1227
1242
|
|
|
1228
1243
|
[](./iframe.html?id=patterns-form--values)
|
|
1229
1244
|
|
|
1230
|
-
|
|
1245
|
+
Hide codedrawOpen in CodeSandbox
|
|
1231
1246
|
|
|
1247
|
+
import {
|
|
1248
|
+
type IressFormProps,
|
|
1249
|
+
IressForm,
|
|
1250
|
+
IressModal,
|
|
1251
|
+
IressDivider,
|
|
1252
|
+
IressButton,
|
|
1253
|
+
IressTable,
|
|
1254
|
+
IressInline,
|
|
1255
|
+
IressFormField,
|
|
1256
|
+
IressInput,
|
|
1257
|
+
} from '@/main';
|
|
1258
|
+
import { useState } from 'react';
|
|
1232
1259
|
interface FieldValues {
|
|
1233
1260
|
name?: string;
|
|
1234
1261
|
email?: string;
|
|
@@ -1346,7 +1373,7 @@ Here we have an example showcasing option one.
|
|
|
1346
1373
|
|
|
1347
1374
|
[](./iframe.html?id=patterns-form--disable-validation)
|
|
1348
1375
|
|
|
1349
|
-
|
|
1376
|
+
Hide codedrawOpen in CodeSandbox
|
|
1350
1377
|
|
|
1351
1378
|
import {
|
|
1352
1379
|
type FormRef,
|
|
@@ -1358,7 +1385,7 @@ import {
|
|
|
1358
1385
|
IressInput,
|
|
1359
1386
|
IressToasterProvider,
|
|
1360
1387
|
useToaster,
|
|
1361
|
-
} from '
|
|
1388
|
+
} from '@/main';
|
|
1362
1389
|
import { useRef } from 'react';
|
|
1363
1390
|
interface FieldValues {
|
|
1364
1391
|
name?: string;
|
|
@@ -1851,7 +1878,7 @@ You can reset the form using the `ref` of the form. You must provide a `defaultV
|
|
|
1851
1878
|
|
|
1852
1879
|
[](./iframe.html?id=patterns-form--reset-form)
|
|
1853
1880
|
|
|
1854
|
-
|
|
1881
|
+
Hide codedrawOpen in CodeSandbox
|
|
1855
1882
|
|
|
1856
1883
|
import {
|
|
1857
1884
|
type IressFormProps,
|
|
@@ -1861,7 +1888,7 @@ import {
|
|
|
1861
1888
|
IressButton,
|
|
1862
1889
|
IressFormField,
|
|
1863
1890
|
IressInput,
|
|
1864
|
-
} from '
|
|
1891
|
+
} from '@/main';
|
|
1865
1892
|
import { useRef } from 'react';
|
|
1866
1893
|
interface FieldValues {
|
|
1867
1894
|
name?: string;
|
|
@@ -1945,7 +1972,7 @@ You can pass the `readOnly` prop to remove the asterisk symbol (\*) even when th
|
|
|
1945
1972
|
|
|
1946
1973
|
[](./iframe.html?id=patterns-form--exclude-read-only-validation)
|
|
1947
1974
|
|
|
1948
|
-
|
|
1975
|
+
Hide codedrawOpen in CodeSandbox
|
|
1949
1976
|
|
|
1950
1977
|
<IressStack gap\="md"\>
|
|
1951
1978
|
<IressText\>
|
|
@@ -2029,8 +2056,20 @@ Some use cases:
|
|
|
2029
2056
|
|
|
2030
2057
|
[](./iframe.html?id=patterns-form--hook-form)
|
|
2031
2058
|
|
|
2032
|
-
|
|
2059
|
+
Hide codedrawOpen in CodeSandbox
|
|
2033
2060
|
|
|
2061
|
+
import {
|
|
2062
|
+
IressButton,
|
|
2063
|
+
IressCheckbox,
|
|
2064
|
+
IressContainer,
|
|
2065
|
+
IressDivider,
|
|
2066
|
+
IressFormField,
|
|
2067
|
+
IressHookForm,
|
|
2068
|
+
IressInput,
|
|
2069
|
+
IressInputCurrency,
|
|
2070
|
+
IressPanel,
|
|
2071
|
+
IressText,
|
|
2072
|
+
} from '@/main';
|
|
2034
2073
|
interface FieldValues {
|
|
2035
2074
|
firstName: string;
|
|
2036
2075
|
lastName: string;
|
|
@@ -2184,7 +2223,7 @@ boolean
|
|
|
2184
2223
|
|
|
2185
2224
|
[](./iframe.html?id=patterns-form--validation-summary)
|
|
2186
2225
|
|
|
2187
|
-
|
|
2226
|
+
Hide codedrawOpen in CodeSandbox
|
|
2188
2227
|
|
|
2189
2228
|
<ForwardedForm
|
|
2190
2229
|
actions\={<IressButton mode\="primary" type\="submit"\>Submit</IressButton\>}
|
|
@@ -29,8 +29,24 @@ Email
|
|
|
29
29
|
|
|
30
30
|
Submit
|
|
31
31
|
|
|
32
|
-
|
|
33
|
-
|
|
32
|
+
Hide codedrawOpen in CodeSandbox
|
|
33
|
+
|
|
34
|
+
import {
|
|
35
|
+
IressButton,
|
|
36
|
+
IressCol,
|
|
37
|
+
IressContainer,
|
|
38
|
+
IressDivider,
|
|
39
|
+
IressForm,
|
|
40
|
+
IressFormField,
|
|
41
|
+
IressInput,
|
|
42
|
+
IressModal,
|
|
43
|
+
IressRow,
|
|
44
|
+
IressStack,
|
|
45
|
+
IressTable,
|
|
46
|
+
IressText,
|
|
47
|
+
} from '@/main';
|
|
48
|
+
import { useState } from 'react';
|
|
49
|
+
import { type FieldValues } from 'react-hook-form';
|
|
34
50
|
export const WithReadonlyDataForm \= () \=> {
|
|
35
51
|
const \[values, setValues\] \= useState<FieldValues\>({
|
|
36
52
|
firstName: 'Leia',
|
|
@@ -161,8 +177,27 @@ Dependents
|
|
|
161
177
|
|
|
162
178
|
Edit
|
|
163
179
|
|
|
164
|
-
|
|
165
|
-
|
|
180
|
+
Hide codedrawOpen in CodeSandbox
|
|
181
|
+
|
|
182
|
+
import {
|
|
183
|
+
IressButton,
|
|
184
|
+
IressCol,
|
|
185
|
+
IressContainer,
|
|
186
|
+
IressForm,
|
|
187
|
+
IressFormField,
|
|
188
|
+
IressIcon,
|
|
189
|
+
IressInline,
|
|
190
|
+
IressInput,
|
|
191
|
+
IressRow,
|
|
192
|
+
IressSelect,
|
|
193
|
+
IressStack,
|
|
194
|
+
IressText,
|
|
195
|
+
IressToasterProvider,
|
|
196
|
+
useToaster,
|
|
197
|
+
} from '@/main';
|
|
198
|
+
import { useState } from 'react';
|
|
199
|
+
import { type FieldValues } from 'react-hook-form';
|
|
200
|
+
import { type FormControlValue } from '@/main';
|
|
166
201
|
const Form \= () \=> {
|
|
167
202
|
const dependentOptions \= \[
|
|
168
203
|
{ value: 0, label: '0' },
|
|
@@ -324,8 +359,16 @@ Here is an example showcasing a form using the native form constraints API to ac
|
|
|
324
359
|
|
|
325
360
|
Sign up
|
|
326
361
|
|
|
327
|
-
|
|
362
|
+
Hide codedrawOpen in CodeSandbox
|
|
328
363
|
|
|
364
|
+
import {
|
|
365
|
+
IressInput,
|
|
366
|
+
IressButton,
|
|
367
|
+
IressField,
|
|
368
|
+
IressAlert,
|
|
369
|
+
type InputBaseElement,
|
|
370
|
+
} from '@/main';
|
|
371
|
+
import { useState } from 'react';
|
|
329
372
|
export const NativeValidationForm \= () \=> {
|
|
330
373
|
const \[formData, setFormData\] \= useState({
|
|
331
374
|
name: '',
|
|
@@ -444,8 +487,23 @@ Save
|
|
|
444
487
|
|
|
445
488
|
Submit main formSubmit all forms
|
|
446
489
|
|
|
447
|
-
|
|
448
|
-
|
|
490
|
+
Hide codedrawOpen in CodeSandbox
|
|
491
|
+
|
|
492
|
+
import {
|
|
493
|
+
IressButton,
|
|
494
|
+
IressDivider,
|
|
495
|
+
IressFieldGroup,
|
|
496
|
+
IressForm,
|
|
497
|
+
IressFormField,
|
|
498
|
+
IressFormValidationSummary,
|
|
499
|
+
IressInline,
|
|
500
|
+
IressInput,
|
|
501
|
+
IressModal,
|
|
502
|
+
IressPanel,
|
|
503
|
+
IressStack,
|
|
504
|
+
IressTable,
|
|
505
|
+
} from '@/main';
|
|
506
|
+
import { useState } from 'react';
|
|
449
507
|
interface FormData {
|
|
450
508
|
name: string;
|
|
451
509
|
}
|
|
@@ -598,8 +656,23 @@ Add Dependant
|
|
|
598
656
|
|
|
599
657
|
Submit All
|
|
600
658
|
|
|
601
|
-
|
|
602
|
-
|
|
659
|
+
Hide codedrawOpen in CodeSandbox
|
|
660
|
+
|
|
661
|
+
import {
|
|
662
|
+
IressButton,
|
|
663
|
+
IressDivider,
|
|
664
|
+
IressFieldGroup,
|
|
665
|
+
IressFormField,
|
|
666
|
+
IressInline,
|
|
667
|
+
IressInput,
|
|
668
|
+
IressPanel,
|
|
669
|
+
IressStack,
|
|
670
|
+
IressText,
|
|
671
|
+
IressIcon,
|
|
672
|
+
IressCloseButton,
|
|
673
|
+
IressHookForm,
|
|
674
|
+
} from '@/main';
|
|
675
|
+
import { type Control, type UseFormGetValues } from 'react-hook-form';
|
|
603
676
|
interface Client {
|
|
604
677
|
name: string | undefined;
|
|
605
678
|
salary: number | undefined;
|
|
@@ -805,8 +878,17 @@ Sender
|
|
|
805
878
|
|
|
806
879
|
Recipient
|
|
807
880
|
|
|
808
|
-
|
|
809
|
-
|
|
881
|
+
Hide codedrawOpen in CodeSandbox
|
|
882
|
+
|
|
883
|
+
import {
|
|
884
|
+
IressExpander,
|
|
885
|
+
IressForm,
|
|
886
|
+
IressFormField,
|
|
887
|
+
type IressFormProps,
|
|
888
|
+
IressInput,
|
|
889
|
+
IressStack,
|
|
890
|
+
} from '@/main';
|
|
891
|
+
import { useState } from 'react';
|
|
810
892
|
interface FieldValues {
|
|
811
893
|
name?: string;
|
|
812
894
|
email?: string;
|
|
@@ -910,8 +992,17 @@ Email
|
|
|
910
992
|
|
|
911
993
|
Submit
|
|
912
994
|
|
|
913
|
-
|
|
914
|
-
|
|
995
|
+
Hide codedrawOpen in CodeSandbox
|
|
996
|
+
|
|
997
|
+
import {
|
|
998
|
+
IressCheckbox,
|
|
999
|
+
IressCheckboxGroup,
|
|
1000
|
+
IressForm,
|
|
1001
|
+
IressFormField,
|
|
1002
|
+
type IressFormProps,
|
|
1003
|
+
IressInput,
|
|
1004
|
+
IressText,
|
|
1005
|
+
} from '@/main';
|
|
915
1006
|
interface FieldValues {
|
|
916
1007
|
show?: string\[\];
|
|
917
1008
|
name?: string;
|
|
@@ -1020,8 +1111,16 @@ Visible Input
|
|
|
1020
1111
|
|
|
1021
1112
|
Submit
|
|
1022
1113
|
|
|
1023
|
-
|
|
1114
|
+
Hide codedrawOpen in CodeSandbox
|
|
1024
1115
|
|
|
1116
|
+
import {
|
|
1117
|
+
IressButton,
|
|
1118
|
+
IressForm,
|
|
1119
|
+
IressFormField,
|
|
1120
|
+
IressHookForm,
|
|
1121
|
+
IressInput,
|
|
1122
|
+
IressStack,
|
|
1123
|
+
} from '@/main';
|
|
1025
1124
|
export const HiddenInputsForm \= () \=> {
|
|
1026
1125
|
const form \= IressForm.useForm();
|
|
1027
1126
|
const { register } \= form;
|
|
@@ -1108,8 +1207,22 @@ Submit
|
|
|
1108
1207
|
|
|
1109
1208
|
* * *
|
|
1110
1209
|
|
|
1111
|
-
|
|
1112
|
-
|
|
1210
|
+
Hide codedrawOpen in CodeSandbox
|
|
1211
|
+
|
|
1212
|
+
import {
|
|
1213
|
+
IressStack,
|
|
1214
|
+
IressRow,
|
|
1215
|
+
IressCol,
|
|
1216
|
+
IressFormField,
|
|
1217
|
+
IressInputCurrency,
|
|
1218
|
+
IressSelect,
|
|
1219
|
+
IressButton,
|
|
1220
|
+
IressText,
|
|
1221
|
+
IressDivider,
|
|
1222
|
+
IressForm,
|
|
1223
|
+
IressHookForm,
|
|
1224
|
+
} from '@/main';
|
|
1225
|
+
import { useState } from 'react';
|
|
1113
1226
|
interface FormData {
|
|
1114
1227
|
primaryField: string;
|
|
1115
1228
|
dependentField: string;
|
|
@@ -1282,10 +1395,22 @@ Upload
|
|
|
1282
1395
|
|
|
1283
1396
|
Submit
|
|
1284
1397
|
|
|
1285
|
-
|
|
1286
|
-
|
|
1398
|
+
Hide codedrawOpen in CodeSandbox
|
|
1399
|
+
|
|
1400
|
+
import {
|
|
1401
|
+
IressButton,
|
|
1402
|
+
IressForm,
|
|
1403
|
+
IressInput,
|
|
1404
|
+
IressFormField,
|
|
1405
|
+
IressStack,
|
|
1406
|
+
IressIcon,
|
|
1407
|
+
IressText,
|
|
1408
|
+
IressPanel,
|
|
1409
|
+
IressInline,
|
|
1410
|
+
type IressInputProps,
|
|
1411
|
+
} from '@/main';
|
|
1287
1412
|
import React, { useState } from 'react';
|
|
1288
|
-
|
|
1413
|
+
import { useDropzone } from 'react-dropzone';
|
|
1289
1414
|
interface TranscriptFormValues {
|
|
1290
1415
|
transcript: TranscriptData | string;
|
|
1291
1416
|
}
|