"use strict";(globalThis.webpackChunk_elliemae_pui_app_sdk=globalThis.webpackChunk_elliemae_pui_app_sdk||[]).push([[2487],{"./lib/view/fields/form-layout-block-item/index.stories.tsx":(j,u,e)=>{e.r(u),e.d(u,{Basic:()=>p,__namedExportsOrder:()=>B,default:()=>r});var m=e("./node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/jsx.js"),n=e.n(m),t=e("./node_modules/.pnpm/@elliemae+ds-grid@3.54.6_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-grid/dist/esm/Grid.js"),h=e("./node_modules/.pnpm/@elliemae+ds-legacy-button-v2@1.0.16_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-legacy-button-v2/dist/esm/DSButtonV2.js"),c=e("./lib/view/form/index.tsx"),a=e("./lib/view/fields/text-box/index.tsx"),_=e("./lib/view/fields/form-layout-block-item/index.tsx"),x=e("./node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js"),d,s=`
    
    // @ts-nocheck
    // @ts-ignore
    var __STORY__ = "import { Story, Meta } from '@storybook/react';\\nimport { Grid } from '@elliemae/ds-grid';\\nimport { DSButtonV2 } from '@elliemae/ds-button';\\nimport { Form } from '../../form/index.js';\\nimport { TextBox } from '../text-box/index.js';\\nimport { FormLayoutBlockItem, FormLayoutBlockItemProps } from './index.js';\\n\\nexport default {\\n  title: 'Components/Form/Controls/FormLayoutBlockItem',\\n  component: FormLayoutBlockItem,\\n} as Meta;\\n\\nconst Template: Story<FormLayoutBlockItemProps> = (args) => (\\n  <Grid p=\\"m\\">\\n    <Form>\\n      <FormLayoutBlockItem {...args} />\\n      <DSButtonV2>Submit</DSButtonV2>\\n    </Form>\\n  </Grid>\\n);\\n\\nexport const Basic = Template.bind({});\\n\\nBasic.args = {\\n  children: (\\n    <TextBox\\n      id=\\"firstname\\"\\n      name=\\"firstname\\"\\n      rules={{\\n        required: { value: true, message: 'Please enter firstname' },\\n      }}\\n    />\\n  ),\\n  label: 'First Name',\\n  inputID: 'firstname',\\n  required: true,\\n};\\n";
    // @ts-ignore
    var __LOCATIONS_MAP__ = {"Basic":{"startLoc":{"col":50,"line":13},"endLoc":{"col":1,"line":20},"startBody":{"col":50,"line":13},"endBody":{"col":1,"line":20}}};
    
import { Story, Meta } from '@storybook/react';
import { Grid } from '@elliemae/ds-grid';
import { DSButtonV2 } from '@elliemae/ds-button';
import { Form } from '../../form/index.js';
import { TextBox } from '../text-box/index.js';
import { FormLayoutBlockItem, FormLayoutBlockItemProps } from './index.js';

export default {parameters: {"storySource":{"source":"import { Story, Meta } from '@storybook/react';\\nimport { Grid } from '@elliemae/ds-grid';\\nimport { DSButtonV2 } from '@elliemae/ds-button';\\nimport { Form } from '../../form/index.js';\\nimport { TextBox } from '../text-box/index.js';\\nimport { FormLayoutBlockItem, FormLayoutBlockItemProps } from './index.js';\\n\\nexport default {\\n  title: 'Components/Form/Controls/FormLayoutBlockItem',\\n  component: FormLayoutBlockItem,\\n} as Meta;\\n\\nconst Template: Story<FormLayoutBlockItemProps> = (args) => (\\n  <Grid p=\\"m\\">\\n    <Form>\\n      <FormLayoutBlockItem {...args} />\\n      <DSButtonV2>Submit</DSButtonV2>\\n    </Form>\\n  </Grid>\\n);\\n\\nexport const Basic = Template.bind({});\\n\\nBasic.args = {\\n  children: (\\n    <TextBox\\n      id=\\"firstname\\"\\n      name=\\"firstname\\"\\n      rules={{\\n        required: { value: true, message: 'Please enter firstname' },\\n      }}\\n    />\\n  ),\\n  label: 'First Name',\\n  inputID: 'firstname',\\n  required: true,\\n};\\n","locationsMap":{"basic":{"startLoc":{"col":50,"line":13},"endLoc":{"col":1,"line":20},"startBody":{"col":50,"line":13},"endBody":{"col":1,"line":20}}}},},
  title: 'Components/Form/Controls/FormLayoutBlockItem',
  component: FormLayoutBlockItem,
} as Meta;

const Template: Story<FormLayoutBlockItemProps> = (args) => (
  <Grid p="m">
    <Form>
      <FormLayoutBlockItem {...args} />
      <DSButtonV2>Submit</DSButtonV2>
    </Form>
  </Grid>
);

export const Basic = Template.bind({});

Basic.args = {
  children: (
    <TextBox
      id="firstname"
      name="firstname"
      rules={{
        required: { value: true, message: 'Please enter firstname' },
      }}
    />
  ),
  label: 'First Name',
  inputID: 'firstname',
  required: true,
};
`,f={Basic:{startLoc:{col:50,line:21},endLoc:{col:1,line:28},startBody:{col:50,line:21},endBody:{col:1,line:28}}},s=`import { Story, Meta } from '@storybook/react';
import { Grid } from '@elliemae/ds-grid';
import { DSButtonV2 } from '@elliemae/ds-button';
import { Form } from '../../form/index.js';
import { TextBox } from '../text-box/index.js';
import { FormLayoutBlockItem, FormLayoutBlockItemProps } from './index.js';

export default {
  title: 'Components/Form/Controls/FormLayoutBlockItem',
  component: FormLayoutBlockItem,
} as Meta;

const Template: Story<FormLayoutBlockItemProps> = (args) => (
  <Grid p="m">
    <Form>
      <FormLayoutBlockItem {...args} />
      <DSButtonV2>Submit</DSButtonV2>
    </Form>
  </Grid>
);

export const Basic = Template.bind({});

Basic.args = {
  children: (
    <TextBox
      id="firstname"
      name="firstname"
      rules={{
        required: { value: true, message: 'Please enter firstname' },
      }}
    />
  ),
  label: 'First Name',
  inputID: 'firstname',
  required: true,
};
`,f={Basic:{startLoc:{col:50,line:13},endLoc:{col:1,line:20},startBody:{col:50,line:13},endBody:{col:1,line:20}}};const r={parameters:{storySource:{source:`
    
    // @ts-nocheck
    // @ts-ignore
    var __STORY__ = "import { Story, Meta } from '@storybook/react';\\nimport { Grid } from '@elliemae/ds-grid';\\nimport { DSButtonV2 } from '@elliemae/ds-button';\\nimport { Form } from '../../form/index.js';\\nimport { TextBox } from '../text-box/index.js';\\nimport { FormLayoutBlockItem, FormLayoutBlockItemProps } from './index.js';\\n\\nexport default {\\n  title: 'Components/Form/Controls/FormLayoutBlockItem',\\n  component: FormLayoutBlockItem,\\n} as Meta;\\n\\nconst Template: Story<FormLayoutBlockItemProps> = (args) => (\\n  <Grid p=\\"m\\">\\n    <Form>\\n      <FormLayoutBlockItem {...args} />\\n      <DSButtonV2>Submit</DSButtonV2>\\n    </Form>\\n  </Grid>\\n);\\n\\nexport const Basic = Template.bind({});\\n\\nBasic.args = {\\n  children: (\\n    <TextBox\\n      id=\\"firstname\\"\\n      name=\\"firstname\\"\\n      rules={{\\n        required: { value: true, message: 'Please enter firstname' },\\n      }}\\n    />\\n  ),\\n  label: 'First Name',\\n  inputID: 'firstname',\\n  required: true,\\n};\\n";
    // @ts-ignore
    var __LOCATIONS_MAP__ = {"Basic":{"startLoc":{"col":50,"line":13},"endLoc":{"col":1,"line":20},"startBody":{"col":50,"line":13},"endBody":{"col":1,"line":20}}};
    
import { Story, Meta } from '@storybook/react';
import { Grid } from '@elliemae/ds-grid';
import { DSButtonV2 } from '@elliemae/ds-button';
import { Form } from '../../form/index.js';
import { TextBox } from '../text-box/index.js';
import { FormLayoutBlockItem, FormLayoutBlockItemProps } from './index.js';

export default {parameters: {"storySource":{"source":"import { Story, Meta } from '@storybook/react';\\nimport { Grid } from '@elliemae/ds-grid';\\nimport { DSButtonV2 } from '@elliemae/ds-button';\\nimport { Form } from '../../form/index.js';\\nimport { TextBox } from '../text-box/index.js';\\nimport { FormLayoutBlockItem, FormLayoutBlockItemProps } from './index.js';\\n\\nexport default {\\n  title: 'Components/Form/Controls/FormLayoutBlockItem',\\n  component: FormLayoutBlockItem,\\n} as Meta;\\n\\nconst Template: Story<FormLayoutBlockItemProps> = (args) => (\\n  <Grid p=\\"m\\">\\n    <Form>\\n      <FormLayoutBlockItem {...args} />\\n      <DSButtonV2>Submit</DSButtonV2>\\n    </Form>\\n  </Grid>\\n);\\n\\nexport const Basic = Template.bind({});\\n\\nBasic.args = {\\n  children: (\\n    <TextBox\\n      id=\\"firstname\\"\\n      name=\\"firstname\\"\\n      rules={{\\n        required: { value: true, message: 'Please enter firstname' },\\n      }}\\n    />\\n  ),\\n  label: 'First Name',\\n  inputID: 'firstname',\\n  required: true,\\n};\\n","locationsMap":{"basic":{"startLoc":{"col":50,"line":13},"endLoc":{"col":1,"line":20},"startBody":{"col":50,"line":13},"endBody":{"col":1,"line":20}}}},},
  title: 'Components/Form/Controls/FormLayoutBlockItem',
  component: FormLayoutBlockItem,
} as Meta;

const Template: Story<FormLayoutBlockItemProps> = (args) => (
  <Grid p="m">
    <Form>
      <FormLayoutBlockItem {...args} />
      <DSButtonV2>Submit</DSButtonV2>
    </Form>
  </Grid>
);

export const Basic = Template.bind({});

Basic.args = {
  children: (
    <TextBox
      id="firstname"
      name="firstname"
      rules={{
        required: { value: true, message: 'Please enter firstname' },
      }}
    />
  ),
  label: 'First Name',
  inputID: 'firstname',
  required: true,
};
`,locationsMap:{basic:{startLoc:{col:50,line:21},endLoc:{col:1,line:28},startBody:{col:50,line:21},endBody:{col:1,line:28}}}},storySource:{source:`import { Story, Meta } from '@storybook/react';
import { Grid } from '@elliemae/ds-grid';
import { DSButtonV2 } from '@elliemae/ds-button';
import { Form } from '../../form/index.js';
import { TextBox } from '../text-box/index.js';
import { FormLayoutBlockItem, FormLayoutBlockItemProps } from './index.js';

export default {
  title: 'Components/Form/Controls/FormLayoutBlockItem',
  component: FormLayoutBlockItem,
} as Meta;

const Template: Story<FormLayoutBlockItemProps> = (args) => (
  <Grid p="m">
    <Form>
      <FormLayoutBlockItem {...args} />
      <DSButtonV2>Submit</DSButtonV2>
    </Form>
  </Grid>
);

export const Basic = Template.bind({});

Basic.args = {
  children: (
    <TextBox
      id="firstname"
      name="firstname"
      rules={{
        required: { value: true, message: 'Please enter firstname' },
      }}
    />
  ),
  label: 'First Name',
  inputID: 'firstname',
  required: true,
};
`,locationsMap:{basic:{startLoc:{col:50,line:13},endLoc:{col:1,line:20},startBody:{col:50,line:13},endBody:{col:1,line:20}}}}},title:"Components/Form/Controls/FormLayoutBlockItem",component:_.B};var l=function(y){return n()(t.Ay,{p:"m"},void 0,n()(c.l,{},void 0,(0,x.jsx)(_.B,Object.assign({},y)),d||(d=n()(h.e,{},void 0,"Submit"))))};l.displayName="Template";var p=l.bind({});p.args={children:n()(a.f,{id:"firstname",name:"firstname",rules:{required:{value:!0,message:"Please enter firstname"}}}),label:"First Name",inputID:"firstname",required:!0};var B=["Basic"]},"./lib/view/fields/form-layout-block-item/index.tsx":(j,u,e)=>{e.d(u,{B:()=>_});var m=e("./node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/objectWithoutProperties.js"),n=e.n(m),t=e("./node_modules/.pnpm/@elliemae+ds-form-layout-blocks@3.54.6_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-form-layout-blocks/dist/esm/form-layout-block-item/DSFormLayoutBlockItem.js"),h=e("./node_modules/.pnpm/react-hook-form@7.63.0_react@18.3.1/node_modules/react-hook-form/dist/index.esm.mjs"),c=e("./node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js"),a=["inputID","label"],_=function(x){var d=x.inputID,s=x.label,f=n()(x,a),r=(0,h.lN)({name:d}),l=r.errors,p=(0,h.Jt)(l,d),B=!!p,y=p?.message;return(0,c.jsx)(t.U,Object.assign({inputID:d,label:s,hasError:B,validationMessage:y},f))};_.displayName="FormLayoutBlockItem"},"./lib/view/fields/text-box/index.tsx":(j,u,e)=>{e.d(u,{f:()=>d});var m=e("./node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/jsx.js"),n=e.n(m),t=e("./node_modules/.pnpm/@babel+runtime@7.28.4/node_modules/@babel/runtime/helpers/objectWithoutProperties.js"),h=e.n(t),c=e("./node_modules/.pnpm/@elliemae+ds-legacy-common@1.0.16_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-legacy-common/dist/esm/TextBox/DSTextBox.js"),a=e("./node_modules/.pnpm/react-hook-form@7.63.0_react@18.3.1/node_modules/react-hook-form/dist/index.esm.mjs"),_=e("./node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js"),x=["name","defaultValue","rules"],d=function(s){var f=s.name,r=s.defaultValue,l=r===void 0?"":r,p=s.rules,B=p===void 0?{}:p,y=h()(s,x);return n()(a.xI,{name:f,defaultValue:l,rules:B,render:function(b){var L=b.field;return(0,_.jsx)(c.UN,Object.assign({},y,L))}})};d.displayName="TextBox"},"./lib/view/form/index.tsx":(j,u,e)=>{e.d(u,{l:()=>c});var m=e("./node_modules/.pnpm/styled-components@5.3.11_react-dom@18.3.1_react@18.3.1/node_modules/styled-components/dist/styled-components.browser.esm.js"),n=e("./node_modules/.pnpm/react-hook-form@7.63.0_react@18.3.1/node_modules/react-hook-form/dist/index.esm.mjs"),t=e("./node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js"),h=m.Ay.form.withConfig({componentId:"sc-1pyjvv3-0"})(["width:100%;"]),c=function(a){var _=a.classname,x=a.reactHookFormProps,d=x===void 0?{mode:"onBlur"}:x,s=a.children,f=a.onSubmit,r=(0,n.mN)(d),l={};f&&(l.onSubmit=r.handleSubmit(f));var p=Object.assign(r,{formProps:d});return(0,t.jsx)(n.Op,Object.assign({},p,{children:(0,t.jsx)(h,Object.assign({className:_},l,{children:s}))}))};c.displayName="Form"},"./node_modules/.pnpm/@elliemae+ds-form-layout-blocks@3.54.6_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-form-layout-blocks/dist/esm/form-layout-block-item/DSFormLayoutBlockItem.js":(j,u,e)=>{e.d(u,{U:()=>z});var m=e("./node_modules/.pnpm/react@18.3.1/node_modules/react/index.js"),n=e("./node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js"),t=e("./node_modules/.pnpm/@elliemae+ds-grid@3.54.6_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-grid/dist/esm/Grid.js"),h=e("./node_modules/.pnpm/@elliemae+ds-props-helpers@3.54.6_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-props-helpers/dist/esm/propTypes/describe.js"),c=e("./node_modules/.pnpm/uid@2.0.2/node_modules/uid/dist/index.mjs"),a=e("./node_modules/.pnpm/@elliemae+ds-icons@3.54.6_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-icons/dist/esm/AlertsSmallFill.js"),_=e("./node_modules/.pnpm/@elliemae+ds-props-helpers@3.54.6_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-props-helpers/dist/esm/globalProps/globalAttributesPropTypes.js"),x=e("./node_modules/.pnpm/@elliemae+ds-props-helpers@3.54.6_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-props-helpers/dist/esm/xstyledProps/xstyledPropTypes.js"),d=e("./node_modules/.pnpm/@elliemae+ds-props-helpers@3.54.6_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-props-helpers/dist/esm/propsPerSlot/getPropsPerSlotPropTypes.js"),s=e("./node_modules/.pnpm/@elliemae+ds-props-helpers@3.54.6_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-props-helpers/dist/esm/propTypes/PropTypes.js"),f=e("./node_modules/.pnpm/@elliemae+ds-system@3.54.6_@elliemae+pui-theme@2.13.0_lodash-es@4.17.21/node_modules/@elliemae/ds-system/dist/esm/styled/helpers.js");const r="DSFormlayoutblockitem",l={CONTAINER:"container",LABEL:"label",MESSAGE:"message",ERROR_MESSAGE:"error-message",COUNTER:"counter",MARK:"mark"},p=(0,f.lD)(r,l),B={isGroup:!1},y={..._.P,...x.w,...(0,d.Y)(r,l),children:s.A.node.isRequired.description("Input component. "),label:s.A.string.description("Label property for the input component. This property is required for accesibility purposes."),inputID:s.A.string.description("String that matches the input component's id. This property is required for accesibility purposes."),maxCharCounter:s.A.number.description("Max of characters allowed."),currentChar:s.A.number.description("Current counter of input text area"),feedbackMessage:s.A.string.description("Feedback message to show below the input component."),validationMessage:s.A.string.description("Validation message to show below the input component. It requires hasError property set to true to be visible."),hasError:s.A.bool.description("Helper boolean property for the validation message."),required:s.A.bool.description("Adds required extra styling."),optional:s.A.bool.description("Adds optional extra styling."),fitContent:s.A.bool.description("Set the width of the layout to the input component."),leftLabel:s.A.bool.description("Adds the label at the left of the input component."),hideLabel:s.A.bool.description("Hides the input label. It still requires label and labelFor property for accesibility purposes"),withHighlight:s.A.bool.description("Adds highlight extra styling. It requires extra spacing, please check withHighlight explanation tab."),isGroup:s.A.bool.description("Sets the HTML elements as fieldset and legend. This should be used when you want to group more than one input."),iconError:s.A.bool.description("Adds icon error extra styling.")};var b=e("./node_modules/.pnpm/@elliemae+ds-system@3.54.6_@elliemae+pui-theme@2.13.0_lodash-es@4.17.21/node_modules/@elliemae/ds-system/dist/esm/styled/styled.js"),L=e("./node_modules/.pnpm/@elliemae+ds-system@3.54.6_@elliemae+pui-theme@2.13.0_lodash-es@4.17.21/node_modules/@elliemae/ds-system/dist/esm/xStyledWrapper.js"),R=e("./node_modules/.pnpm/@elliemae+ds-system@3.54.6_@elliemae+pui-theme@2.13.0_lodash-es@4.17.21/node_modules/@elliemae/ds-system/dist/esm/styled/system.js");const $=(0,b.I)("div",{name:r,slot:l.CONTAINER})`
  position: relative;
  padding: 0;
  margin: 0;
  display: grid;
  ${L.L1}
  ${({fitContent:o})=>o?"width: fit-content;":void 0}
  ${({isGroup:o})=>o?"border: none":""};
  ${({leftLabel:o,hideLabel:i})=>o&&!i?"grid-template-columns: auto 1fr;":void 0}
  align-items: center;
  ${({theme:o,withHighlight:i})=>i?`
  &::after {
        position: absolute;
        content: '';
        left: -${o.space.xxs};
        top: -${o.space.xxxs};
        z-index: -1;
        width: calc(100% + ${o.space.xs});
        height: calc(100%  + ${o.space.xxs});
        background-color: #FEFBEE;
        border : 1px solid #8F6326;
        border-radius : 4px;
        box-shadow: 0 1px 3px 0 rgba(0,0,0,0.35);
        }
        &:hover, 
        &:focus-within {
          &::after {
            position: absolute;
            content: '';
            left: -${o.space.xxs};
            top: -${o.space.xxxs};
            z-index: -1;
            width: calc(100% + ${o.space.xs});
            height: calc(100%  + ${o.space.xxs});
            background-color: #FFF9D3;
            border : 2px solid #8F6326;
            border-radius : 4px;
            box-shadow: 0 6px 10px 0 rgba(0,0,0,0.30);
          }
        }
  `:void 0}
`,G=(0,b.I)("label",{name:r,slot:l.LABEL})`
  display: flex;
  ${({theme:o,leftLabel:i})=>i?`padding-right: ${o.space.xxxs};`:void 0}
  ${({hideLabel:o})=>o?`position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
  `:void 0}
`,O=(0,R.AH)`
  font-size: ${({theme:o})=>o.fontSizes.microText[200]};
  text-align: right;
  line-height: 1.231rem;
  @media (max-width: ${({theme:o})=>o.breakpoints.small}) {
    line-height: 1rem;
  }
  min-height: 15px;
  overflow: hidden;
  text-overflow: ellipsis;
  color: ${({theme:o,hasError:i})=>i?o.colors.danger[900]:o.colors.neutral[500]};
  ${({leftLabel:o,hideLabel:i})=>o&&!i?"grid-column: 1/3;":void 0}
  font-style: normal;
`,U=(0,b.I)("div",{name:r,slot:l.MESSAGE})`
  ${O}
`,V=(0,b.I)("div",{name:r,slot:l.ERROR_MESSAGE})`
  ${O}
`,K=(0,b.I)("span",{name:r,slot:l.MARK})`
  margin-left: ${({theme:o})=>o.space.xxxs};
  ${({theme:o,required:i})=>i?`
  display: flex;
  flex-direction: column;
  justify-content: center;
  line-height: 1rem;
  font-size: 1.5rem;
  :after {
    content: '*';
    color: ${o.colors.danger[900]};
  }
  `:`
  width: 6px;
  height: 6px;
  border-radius: 50%;
  border: 1px solid ${o.colors.brand[600]};
  `}
`,g=b.I.div`
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
`,N=(0,b.I)("span",{name:r,slot:l.COUNTER})`
  justify-self: flex-end;
  margin-left: 16px;
  color: ${({theme:o,hasError:i})=>i?o.colors.danger[900]:o.colors.neutral[500]};
`;var H=e("./node_modules/.pnpm/@elliemae+ds-props-helpers@3.54.6_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-props-helpers/dist/esm/validation/typescriptValidator.js"),w=e("./node_modules/.pnpm/@elliemae+ds-props-helpers@3.54.6_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-props-helpers/dist/esm/defaultProps/useMemoMergePropsWithDefault.js"),I=e("./node_modules/.pnpm/@elliemae+ds-props-helpers@3.54.6_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-props-helpers/dist/esm/globalProps/useGetGlobalAttributes.js"),F=e("./node_modules/.pnpm/@elliemae+ds-props-helpers@3.54.6_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-props-helpers/dist/esm/xstyledProps/useGetXstyledProps.js");const ee=o=>{(0,H.D)(o,y,r);const i=(0,w.b)(o,B),C=(0,I.u)(i),D=(0,F.d)(i);return m.useMemo(()=>({globalAttributes:C,xstyledProps:D,propsWithDefault:i}),[C,D,i])},z=o=>{const{globalAttributes:i,xstyledProps:C,propsWithDefault:D}=ee(o),{label:Y,feedbackMessage:X,maxCharCounter:v,currentChar:E,validationMessage:J,inputID:Z,children:te,hasError:S,leftLabel:k,required:Q,optional:q,hideLabel:W,fitContent:ne,withHighlight:se,isGroup:A}=D,{className:re,label:ae,...le}=i,P=(0,m.useMemo)(()=>Z??`form_layout_block_item_${(0,c.L)(6)}`,[Z]),ie=(0,m.useMemo)(()=>v!==void 0?["1fr","auto"]:["1fr"],[v]),T=(0,m.useCallback)(()=>D,[D]),M=(0,m.useCallback)(()=>({}),[]);return(0,n.jsxs)($,{leftLabel:k,fitContent:ne,hideLabel:W,withHighlight:se,as:A?"fieldset":"div",isGroup:A,className:re,...C,...le,getOwnerProps:T,getOwnerPropsArguments:M,children:[(0,n.jsxs)(t.Ay,{cols:ie,gutter:"xxs","aria-live":"polite",id:`${P}_remaining_characters`,children:[Y?(0,n.jsxs)(G,{id:`${P}_block_label`,htmlFor:P,leftLabel:k,hideLabel:W,"aria-hidden":A,getOwnerProps:T,getOwnerPropsArguments:M,children:[Y,(Q||q)&&(0,n.jsx)(K,{required:Q,children:q?(0,n.jsx)(g,{children:"Optional"}):null})]}):null,v!==void 0&&E!==void 0?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(N,{hasError:E>v,getOwnerProps:T,getOwnerPropsArguments:M,children:`${E}/${v}`}),(0,n.jsx)(g,{children:E<v?`${v-E} characters remaining`:""})]}):null]}),A&&(0,n.jsx)(g,{as:"legend",children:`${Y}. ${S&&J||!S&&X||""}`}),te,X&&!S?(0,n.jsx)(U,{"aria-live":"polite",leftLabel:k,hideLabel:W,"aria-hidden":A,id:`${P}_feedback_message`,getOwnerProps:T,getOwnerPropsArguments:M,children:X}):(0,n.jsx)(g,{id:`${P}_feedback_message`}),J&&S?(0,n.jsxs)(V,{hasError:S,leftLabel:k,hideLabel:W,role:"alert",id:`${P}_error_message`,getOwnerProps:T,getOwnerPropsArguments:M,children:[(0,n.jsx)(a.A,{width:8,height:8,color:["danger","900"],style:{marginBottom:"2px"}}),"\xA0",`${J}`]}):(0,n.jsx)(g,{id:`${P}_error_message`})]})};z.displayName="DSFormLayoutBlockItem";const oe=(0,h.A)(z);oe.propTypes=y},"./node_modules/.pnpm/@elliemae+ds-icons@3.54.6_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-icons/dist/esm/AlertsSmallFill.js":(j,u,e)=>{e.d(u,{A:()=>c});var m=e("./node_modules/.pnpm/react@18.3.1/node_modules/react/index.js"),n=e("./node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js"),t=e("./node_modules/.pnpm/@elliemae+ds-icons@3.54.6_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-icons/dist/esm/utils/SvgIcon.js"),c=a=>(0,n.jsx)(t.Ah,{width:12,height:13,...a,viewBox:"0 0 12 13",children:(0,n.jsx)("path",{d:"M 7.2154 1.2771 L 11.8239 10.2545 C 12.1984 10.9839 11.956 11.904 11.2826 12.3096 C 11.0752 12.4345 10.8419 12.5 10.6046 12.5 L 1.3952 12.5 C 0.6246 12.5 0 11.8234 0 10.9889 C 0 10.7322 0.0603 10.4798 0.1753 10.2555 L 4.7762 1.278 C 5.1502 0.5483 5.9995 0.2851 6.6732 0.6902 C 6.901 0.8271 7.0888 1.0304 7.2154 1.2771 Z"})})},"./node_modules/.pnpm/@elliemae+ds-legacy-common@1.0.16_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-legacy-common/dist/esm/TextBox/DSTextBox.js":(j,u,e)=>{e.d(u,{UN:()=>a});var m=e("./node_modules/.pnpm/react@18.3.1/node_modules/react/index.js"),n=e("./node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js"),t=e("./node_modules/.pnpm/@elliemae+ds-legacy-props-helpers@1.0.16_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-legacy-props-helpers/dist/esm/propTypes/PropTypes.js"),h=e("./node_modules/.pnpm/@elliemae+ds-legacy-props-helpers@1.0.16_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-legacy-props-helpers/dist/esm/propTypes/describe.js"),c=e("./node_modules/.pnpm/@elliemae+ds-legacy-common@1.0.16_@elliemae+pui-theme@2.13.0/node_modules/@elliemae/ds-legacy-common/dist/esm/Input/DSInput.js");const a=({containerProps:s={},autoFocus:f=!1,disabled:r=!1,maxLength:l=255,minLength:p=0,fluidWidth:B=!1,placeholder:y,value:b="",hasError:L=!1,readOnly:R=!1,innerRef:$=null,type:G="text",min:O=void 0,max:U=void 0,clearable:V=!1,leftComponent:K=null,rightComponent:g=null,required:N=!1,variant:H,disableTooltip:w,id:I,...F})=>(0,n.jsx)(c._C,{...F,"aria-label":I?void 0:F["aria-label"]||"Text Box","aria-describedby":F["aria-describedby"]||`${I?`${I}_feedback_message`:""}`,autoFocus:f,clearable:V,containerProps:s,disabled:r,fluidWidth:B,hasError:L,innerRef:$,leftComponent:K,max:U,maxLength:l,min:O,minLength:p,placeholder:y,readOnly:R,required:N,rightComponent:g,role:"textbox",type:G,value:b,variant:H,disableTooltip:w,id:I}),_={containerProps:t.A.shape({}).description("inject props at textbox wrapper"),autoFocus:t.A.bool.description("Whether the text box uses auto focus or not"),disabled:t.A.bool.description("Whether the text box is disabled or not"),maxLength:t.A.number.description("Max length for the text box"),minLength:t.A.number.description("Min length for the text box"),fluidWidth:t.A.bool.description("Make the content of the text box fit the container or not"),placeholder:t.A.string.description("Placeholder for the text box"),value:t.A.string.description("Default value once the component is initialized"),hasError:t.A.bool.description("Whether the text box has error or not"),readOnly:t.A.bool.description("Whether the text box is read only or not"),min:t.A.number.description("html min prop for input"),max:t.A.number.description("html max prop for input"),clearable:t.A.bool.description("Whether the text box is clearable or not"),leftComponent:t.A.element.description("Component to be added at the left side of the text box"),rightComponent:t.A.element.description("Component to be added at the right side of the text box"),required:t.A.bool.description("Whether the text box is required or not"),variant:t.A.string.description("variant-default','variant-focus','variant-active','variant-disabled'"),type:t.A.string.description("html input type"),innerRef:t.A.oneOfType([t.A.func,t.A.object]).description("internal ref"),disableTooltip:t.A.bool.description("Whether to show a tooltip or not when text does not fit").defaultValue(!0)};a.propTypes=_,a.displayName="DSTextBox";const x=(0,h.A)(a);x.propTypes=_;var d=null}}]);
