@elliemae/ds-form 1.57.0-rc.2 → 1.57.0-rc.6

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.
Files changed (281) hide show
  1. package/cjs/Checkbox/DSCheckbox.js +2 -2
  2. package/cjs/Checkbox/DSCheckbox.js.map +1 -1
  3. package/cjs/Checkbox/index.js +1 -1
  4. package/cjs/CheckboxGroup/DSCheckboxGroup.js +2 -3
  5. package/cjs/CheckboxGroup/DSCheckboxGroup.js.map +1 -1
  6. package/cjs/CheckboxGroup/index.js +2 -3
  7. package/cjs/CheckboxGroup/index.js.map +1 -1
  8. package/cjs/CheckboxGroup/props.js +1 -1
  9. package/cjs/ComboBox/DSComboBox.js +2 -6
  10. package/cjs/ComboBox/DSComboBox.js.map +1 -1
  11. package/cjs/ComboBox/index.js +2 -6
  12. package/cjs/ComboBox/index.js.map +1 -1
  13. package/cjs/ComboBox/v1/DSComboBox.js +3 -4
  14. package/cjs/ComboBox/v1/DSComboBox.js.map +1 -1
  15. package/cjs/ComboBox/v1/components/AllOption.js +1 -1
  16. package/cjs/ComboBox/v1/components/ClearIndicator.js +2 -3
  17. package/cjs/ComboBox/v1/components/ClearIndicator.js.map +1 -1
  18. package/cjs/ComboBox/v1/components/CustomOptionMulti.js +1 -1
  19. package/cjs/ComboBox/v1/components/DropdownIndicator.js +2 -3
  20. package/cjs/ComboBox/v1/components/DropdownIndicator.js.map +1 -1
  21. package/cjs/ComboBox/v1/components/MenuList.js +1 -1
  22. package/cjs/ComboBox/v1/components/SelectMenu.js +3 -3
  23. package/cjs/ComboBox/v1/components/SelectMenu.js.map +1 -1
  24. package/cjs/ComboBox/v1/index.js +2 -3
  25. package/cjs/ComboBox/v1/index.js.map +1 -1
  26. package/cjs/ComboBox/v2/Combobox.js +5 -10
  27. package/cjs/ComboBox/v2/Combobox.js.map +1 -1
  28. package/cjs/ComboBox/v2/components/AllOption.js +1 -1
  29. package/cjs/ComboBox/v2/components/ClearIndicator.js +2 -3
  30. package/cjs/ComboBox/v2/components/ClearIndicator.js.map +1 -1
  31. package/cjs/ComboBox/v2/components/CustomOptionMulti.js +1 -1
  32. package/cjs/ComboBox/v2/components/DropdownIndicator.js +2 -3
  33. package/cjs/ComboBox/v2/components/DropdownIndicator.js.map +1 -1
  34. package/cjs/ComboBox/v2/components/MenuList.js +1 -1
  35. package/cjs/ComboBox/v2/components/ValueContainer.js +2 -2
  36. package/cjs/ComboBox/v2/components/ValueContainer.js.map +1 -1
  37. package/cjs/ComboBox/v2/index.js +2 -5
  38. package/cjs/ComboBox/v2/index.js.map +1 -1
  39. package/cjs/ComboBoxFreeSolo/ComboBoxFreeSolo.js +2 -6
  40. package/cjs/ComboBoxFreeSolo/ComboBoxFreeSolo.js.map +1 -1
  41. package/cjs/ComboBoxFreeSolo/components/MultiValueRemove.js +2 -3
  42. package/cjs/ComboBoxFreeSolo/components/MultiValueRemove.js.map +1 -1
  43. package/cjs/ComboBoxFreeSolo/components/SingleValue.js +1 -1
  44. package/cjs/ComboBoxFreeSolo/components/SingleValueRemove.js +2 -3
  45. package/cjs/ComboBoxFreeSolo/components/SingleValueRemove.js.map +1 -1
  46. package/cjs/ComboBoxFreeSolo/index.js +2 -6
  47. package/cjs/ComboBoxFreeSolo/index.js.map +1 -1
  48. package/cjs/DateInput/DSDateInput.js +4 -6
  49. package/cjs/DateInput/DSDateInput.js.map +1 -1
  50. package/cjs/DateInput/components/DateInputImpl.js +2 -4
  51. package/cjs/DateInput/components/DateInputImpl.js.map +1 -1
  52. package/cjs/DateInput/components/DateInputs.js +8 -13
  53. package/cjs/DateInput/components/DateInputs.js.map +1 -1
  54. package/cjs/DateInput/components/utils.js +7 -8
  55. package/cjs/DateInput/components/utils.js.map +1 -1
  56. package/cjs/DateInput/index.js +2 -4
  57. package/cjs/DateInput/index.js.map +1 -1
  58. package/cjs/DateInputV2/components/DSDateInput.js +2 -3
  59. package/cjs/DateInputV2/components/DSDateInput.js.map +1 -1
  60. package/cjs/DateInputV2/components/DateInputs.js +1 -2
  61. package/cjs/DateInputV2/components/DateInputs.js.map +1 -1
  62. package/cjs/DateInputV2/components/helpers.js +1 -2
  63. package/cjs/DateInputV2/components/helpers.js.map +1 -1
  64. package/cjs/DateInputV2/components/utils.js +12 -13
  65. package/cjs/DateInputV2/components/utils.js.map +1 -1
  66. package/cjs/DateInputV2/index.js +2 -3
  67. package/cjs/DateInputV2/index.js.map +1 -1
  68. package/cjs/ExpandableInput/DSExpandableInput.js +1 -1
  69. package/cjs/ExpandableInput/ExpandableInputImpl.js +1 -1
  70. package/cjs/ExpandableInput/index.js +1 -1
  71. package/cjs/FloatingLabelInput/DSFloatingLabelInput.js +2 -2
  72. package/cjs/FloatingLabelInput/FloatingLabelInputImpl.js +2 -3
  73. package/cjs/FloatingLabelInput/FloatingLabelInputImpl.js.map +1 -1
  74. package/cjs/FloatingLabelInput/index.js +2 -2
  75. package/cjs/FormItem/DSFormItemLayout.js +3 -4
  76. package/cjs/FormItem/DSFormItemLayout.js.map +1 -1
  77. package/cjs/FormItem/defaultProps.js +1 -1
  78. package/cjs/FormItem/index.js +2 -2
  79. package/cjs/Input/DSInput.js +1 -1
  80. package/cjs/Input/InputImpl.js +2 -3
  81. package/cjs/Input/InputImpl.js.map +1 -1
  82. package/cjs/Input/index.js +1 -1
  83. package/cjs/InputMask/DSInputMask.js +1 -1
  84. package/cjs/InputMask/DSInputMaskDeprecated.js +1 -1
  85. package/cjs/InputMask/index.js +1 -1
  86. package/cjs/InputMask/mask_types/DateInputMask.js +1 -1
  87. package/cjs/InputMask/mask_types/DateTimeInputMask.js +1 -1
  88. package/cjs/InputMask/mask_types/DictionaryInputMask.js +1 -1
  89. package/cjs/InputMask/mask_types/NumberInputMask.js +1 -1
  90. package/cjs/InputMask/mask_types/PhoneInputMask.js +1 -1
  91. package/cjs/InputMask/mask_types/PhoneInternationalInputMask.js +1 -1
  92. package/cjs/InputMask/mask_types/SsnInputMask.js +1 -1
  93. package/cjs/InputMask/mask_types/UsZipCodeInputMask.js +1 -1
  94. package/cjs/InputMask/mask_types/ZipCodeSearchInputMask.js +1 -1
  95. package/cjs/InputMask/mask_types/index.js +1 -1
  96. package/cjs/InputProtected/DSInputProtected.js +9 -18
  97. package/cjs/InputProtected/DSInputProtected.js.map +1 -1
  98. package/cjs/InputProtected/index.js +4 -7
  99. package/cjs/InputProtected/index.js.map +1 -1
  100. package/cjs/InputProtected/options.js.map +1 -1
  101. package/cjs/RadioGroup/DSRadioGroup.js +2 -2
  102. package/cjs/RadioGroup/index.js +2 -2
  103. package/cjs/SearchBox/DSSearchBox.js +4 -8
  104. package/cjs/SearchBox/DSSearchBox.js.map +1 -1
  105. package/cjs/SearchBox/NavSearchBox.js +5 -13
  106. package/cjs/SearchBox/NavSearchBox.js.map +1 -1
  107. package/cjs/SearchBox/SearchBoxToggle.js +3 -6
  108. package/cjs/SearchBox/SearchBoxToggle.js.map +1 -1
  109. package/cjs/SearchBox/index.js +2 -6
  110. package/cjs/SearchBox/index.js.map +1 -1
  111. package/cjs/SearchBox/styled.js +1 -1
  112. package/cjs/SearchBox/useSearch.js +2 -2
  113. package/cjs/SearchBox/useSearch.js.map +1 -1
  114. package/cjs/SearchBox/withSearchable.js +2 -2
  115. package/cjs/SearchBox/withSearchable.js.map +1 -1
  116. package/cjs/TextBox/DSTextBox.js +1 -1
  117. package/cjs/TextBox/index.js +1 -1
  118. package/cjs/TimeInput/DSTimeInput.js +3 -4
  119. package/cjs/TimeInput/DSTimeInput.js.map +1 -1
  120. package/cjs/TimeInput/TimeInputImpl.js +3 -4
  121. package/cjs/TimeInput/TimeInputImpl.js.map +1 -1
  122. package/cjs/TimeInput/TimeInputs.js +2 -3
  123. package/cjs/TimeInput/TimeInputs.js.map +1 -1
  124. package/cjs/TimeInput/index.js +3 -4
  125. package/cjs/TimeInput/index.js.map +1 -1
  126. package/cjs/TimeInput/utils.js +2 -3
  127. package/cjs/TimeInput/utils.js.map +1 -1
  128. package/cjs/Toggle/DSToggle.js +1 -1
  129. package/cjs/Toggle/DSToggleImpl.js +1 -1
  130. package/cjs/Toggle/DSToggleRender.js +2 -3
  131. package/cjs/Toggle/DSToggleRender.js.map +1 -1
  132. package/cjs/Toggle/index.js +1 -1
  133. package/cjs/index.js +86 -72
  134. package/cjs/index.js.map +1 -1
  135. package/cjs/{utils-328f60e2.js → utils-f82fe290.js} +6 -7
  136. package/cjs/utils-f82fe290.js.map +1 -0
  137. package/esm/Checkbox/DSCheckbox.js +2 -2
  138. package/esm/Checkbox/DSCheckbox.js.map +1 -1
  139. package/esm/Checkbox/defaultProps.js +1 -1
  140. package/esm/Checkbox/index.js +2 -2
  141. package/esm/Checkbox/props.js +1 -1
  142. package/esm/CheckboxGroup/DSCheckboxGroup.js +3 -4
  143. package/esm/CheckboxGroup/DSCheckboxGroup.js.map +1 -1
  144. package/esm/CheckboxGroup/index.js +3 -4
  145. package/esm/CheckboxGroup/index.js.map +1 -1
  146. package/esm/CheckboxGroup/props.js +2 -2
  147. package/esm/ComboBox/DSComboBox.js +3 -7
  148. package/esm/ComboBox/DSComboBox.js.map +1 -1
  149. package/esm/ComboBox/index.js +3 -7
  150. package/esm/ComboBox/index.js.map +1 -1
  151. package/esm/ComboBox/v1/DSComboBox.js +4 -5
  152. package/esm/ComboBox/v1/DSComboBox.js.map +1 -1
  153. package/esm/ComboBox/v1/components/AllOption.js +2 -2
  154. package/esm/ComboBox/v1/components/ClearIndicator.js +1 -1
  155. package/esm/ComboBox/v1/components/ClearIndicator.js.map +1 -1
  156. package/esm/ComboBox/v1/components/CustomOptionMulti.js +2 -2
  157. package/esm/ComboBox/v1/components/DropdownIndicator.js +1 -1
  158. package/esm/ComboBox/v1/components/DropdownIndicator.js.map +1 -1
  159. package/esm/ComboBox/v1/components/MenuList.js +2 -2
  160. package/esm/ComboBox/v1/components/SelectMenu.js +1 -1
  161. package/esm/ComboBox/v1/components/SelectMenu.js.map +1 -1
  162. package/esm/ComboBox/v1/index.js +3 -4
  163. package/esm/ComboBox/v1/index.js.map +1 -1
  164. package/esm/ComboBox/v2/Combobox.js +3 -6
  165. package/esm/ComboBox/v2/Combobox.js.map +1 -1
  166. package/esm/ComboBox/v2/components/AllOption.js +2 -2
  167. package/esm/ComboBox/v2/components/ClearIndicator.js +1 -1
  168. package/esm/ComboBox/v2/components/ClearIndicator.js.map +1 -1
  169. package/esm/ComboBox/v2/components/CustomOptionMulti.js +2 -2
  170. package/esm/ComboBox/v2/components/DropdownIndicator.js +1 -1
  171. package/esm/ComboBox/v2/components/DropdownIndicator.js.map +1 -1
  172. package/esm/ComboBox/v2/components/MenuList.js +2 -2
  173. package/esm/ComboBox/v2/components/ValueContainer.js +1 -1
  174. package/esm/ComboBox/v2/components/ValueContainer.js.map +1 -1
  175. package/esm/ComboBox/v2/index.js +3 -6
  176. package/esm/ComboBox/v2/index.js.map +1 -1
  177. package/esm/ComboBoxFreeSolo/ComboBoxFreeSolo.js +3 -7
  178. package/esm/ComboBoxFreeSolo/ComboBoxFreeSolo.js.map +1 -1
  179. package/esm/ComboBoxFreeSolo/components/MultiValueRemove.js +1 -1
  180. package/esm/ComboBoxFreeSolo/components/MultiValueRemove.js.map +1 -1
  181. package/esm/ComboBoxFreeSolo/components/SingleValue.js +1 -1
  182. package/esm/ComboBoxFreeSolo/components/SingleValueRemove.js +1 -1
  183. package/esm/ComboBoxFreeSolo/components/SingleValueRemove.js.map +1 -1
  184. package/esm/ComboBoxFreeSolo/index.js +3 -7
  185. package/esm/ComboBoxFreeSolo/index.js.map +1 -1
  186. package/esm/DateInput/DSDateInput.js +3 -5
  187. package/esm/DateInput/DSDateInput.js.map +1 -1
  188. package/esm/DateInput/components/DateInputImpl.js +2 -4
  189. package/esm/DateInput/components/DateInputImpl.js.map +1 -1
  190. package/esm/DateInput/components/DateInputs.js +7 -11
  191. package/esm/DateInput/components/DateInputs.js.map +1 -1
  192. package/esm/DateInput/components/utils.js +1 -2
  193. package/esm/DateInput/components/utils.js.map +1 -1
  194. package/esm/DateInput/index.js +2 -4
  195. package/esm/DateInput/index.js.map +1 -1
  196. package/esm/DateInputV2/components/DSDateInput.js +2 -3
  197. package/esm/DateInputV2/components/DSDateInput.js.map +1 -1
  198. package/esm/DateInputV2/components/DateInputs.js +1 -2
  199. package/esm/DateInputV2/components/DateInputs.js.map +1 -1
  200. package/esm/DateInputV2/components/helpers.js +1 -2
  201. package/esm/DateInputV2/components/helpers.js.map +1 -1
  202. package/esm/DateInputV2/components/utils.js +1 -2
  203. package/esm/DateInputV2/components/utils.js.map +1 -1
  204. package/esm/DateInputV2/index.js +2 -3
  205. package/esm/DateInputV2/index.js.map +1 -1
  206. package/esm/ExpandableInput/DSExpandableInput.js +1 -1
  207. package/esm/ExpandableInput/ExpandableInputImpl.js +1 -1
  208. package/esm/ExpandableInput/index.js +1 -1
  209. package/esm/FloatingLabelInput/DSFloatingLabelInput.js +2 -2
  210. package/esm/FloatingLabelInput/FloatingLabelInputImpl.js +1 -1
  211. package/esm/FloatingLabelInput/FloatingLabelInputImpl.js.map +1 -1
  212. package/esm/FloatingLabelInput/index.js +2 -2
  213. package/esm/FormItem/DSFormItemLayout.js +2 -2
  214. package/esm/FormItem/DSFormItemLayout.js.map +1 -1
  215. package/esm/FormItem/defaultProps.js +1 -1
  216. package/esm/FormItem/index.js +2 -2
  217. package/esm/Input/DSInput.js +1 -1
  218. package/esm/Input/InputImpl.js +1 -1
  219. package/esm/Input/InputImpl.js.map +1 -1
  220. package/esm/Input/index.js +1 -1
  221. package/esm/InputMask/DSInputMask.js +1 -1
  222. package/esm/InputMask/DSInputMaskDeprecated.js +1 -1
  223. package/esm/InputMask/index.js +1 -1
  224. package/esm/InputMask/mask_types/DateInputMask.js +1 -1
  225. package/esm/InputMask/mask_types/DateTimeInputMask.js +1 -1
  226. package/esm/InputMask/mask_types/DictionaryInputMask.js +1 -1
  227. package/esm/InputMask/mask_types/NumberInputMask.js +1 -1
  228. package/esm/InputMask/mask_types/PhoneInputMask.js +1 -1
  229. package/esm/InputMask/mask_types/PhoneInternationalInputMask.js +1 -1
  230. package/esm/InputMask/mask_types/SsnInputMask.js +1 -1
  231. package/esm/InputMask/mask_types/UsZipCodeInputMask.js +1 -1
  232. package/esm/InputMask/mask_types/ZipCodeSearchInputMask.js +1 -1
  233. package/esm/InputMask/mask_types/index.js +1 -1
  234. package/esm/InputProtected/DSInputProtected.js +4 -9
  235. package/esm/InputProtected/DSInputProtected.js.map +1 -1
  236. package/esm/InputProtected/index.js +2 -6
  237. package/esm/InputProtected/index.js.map +1 -1
  238. package/esm/InputProtected/options.js.map +1 -1
  239. package/esm/RadioGroup/DSRadioGroup.js +3 -3
  240. package/esm/RadioGroup/index.js +3 -3
  241. package/esm/RadioGroup/props.js +1 -1
  242. package/esm/SearchBox/DSSearchBox.js +3 -5
  243. package/esm/SearchBox/DSSearchBox.js.map +1 -1
  244. package/esm/SearchBox/NavSearchBox.js +2 -6
  245. package/esm/SearchBox/NavSearchBox.js.map +1 -1
  246. package/esm/SearchBox/SearchBoxToggle.js +3 -5
  247. package/esm/SearchBox/SearchBoxToggle.js.map +1 -1
  248. package/esm/SearchBox/index.js +2 -6
  249. package/esm/SearchBox/index.js.map +1 -1
  250. package/esm/SearchBox/styled.js +1 -1
  251. package/esm/SearchBox/useSearch.js +1 -1
  252. package/esm/SearchBox/useSearch.js.map +1 -1
  253. package/esm/SearchBox/withSearchable.js +1 -1
  254. package/esm/SearchBox/withSearchable.js.map +1 -1
  255. package/esm/TextBox/DSTextBox.js +1 -1
  256. package/esm/TextBox/index.js +1 -1
  257. package/esm/TimeInput/DSTimeInput.js +3 -4
  258. package/esm/TimeInput/DSTimeInput.js.map +1 -1
  259. package/esm/TimeInput/TimeInputImpl.js +2 -3
  260. package/esm/TimeInput/TimeInputImpl.js.map +1 -1
  261. package/esm/TimeInput/TimeInputs.js +2 -3
  262. package/esm/TimeInput/TimeInputs.js.map +1 -1
  263. package/esm/TimeInput/index.js +3 -4
  264. package/esm/TimeInput/index.js.map +1 -1
  265. package/esm/TimeInput/utils.js +2 -3
  266. package/esm/TimeInput/utils.js.map +1 -1
  267. package/esm/Toggle/DSToggle.js +2 -2
  268. package/esm/Toggle/DSToggleImpl.js +2 -2
  269. package/esm/Toggle/DSToggleRender.js +1 -1
  270. package/esm/Toggle/DSToggleRender.js.map +1 -1
  271. package/esm/Toggle/index.js +2 -2
  272. package/esm/Toggle/props.js +1 -1
  273. package/esm/index.js +64 -70
  274. package/esm/index.js.map +1 -1
  275. package/esm/{prop-types-cc01d273.js → prop-types-45aa1e9c.js} +2 -2
  276. package/esm/{prop-types-cc01d273.js.map → prop-types-45aa1e9c.js.map} +1 -1
  277. package/esm/{utils-0a7eb302.js → utils-ced363ec.js} +2 -3
  278. package/esm/utils-ced363ec.js.map +1 -0
  279. package/package.json +17 -17
  280. package/cjs/utils-328f60e2.js.map +0 -1
  281. package/esm/utils-0a7eb302.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"DSFormItemLayout.js","sources":["../../../src/FormItem/DSFormItemLayout.tsx"],"sourcesContent":["/* eslint-disable complexity */\n/* eslint-disable max-lines */\nimport React from 'react';\nimport { describe } from 'react-desc';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport getComponentFromProps from '@elliemae/ds-utilities/getComponentFromProps';\nimport Group from '@elliemae/ds-shared/GroupContext/Group';\nimport DSInputGroup from '../InputGroup';\nimport DSFloatingLabelInput from '../FloatingLabelInput';\nimport DSError from './Error/DSError';\nimport { props } from './props';\nimport { defaultProps } from './defaultProps';\nimport { FORMITEM_LAYOUT_VARIANTS } from './variants';\nimport { Suffix, SuffixInputWrapper, SuffixWrapper } from './Suffix/Suffix';\n// import { maskTypes } from '../InputMask/MaskTypes';\n\nexport { DSError, FORMITEM_LAYOUT_VARIANTS };\n\nconst blockName = 'form-item';\n\nconst Wrapper = aggregatedClasses('div')(blockName, null, ({ leftLabel, variant, fitContent, withHighlight }) => ({\n 'with-left-label': leftLabel,\n 'fit-content': fitContent,\n [variant]: variant,\n 'with-highlight': withHighlight,\n}));\n\nconst WrapperContent = aggregatedClasses('div')(`${blockName}-content`);\nconst WrapperContentGroup = aggregatedClasses('fieldset')(`${blockName}-content`);\n\nconst DSFormItemLayout = ({\n leftLabel,\n floatingLabel,\n name,\n id,\n value,\n inputComponent: InputComponent,\n labelComponent: LabelComponent,\n feedbackComponent: FeedbackComponent,\n labelText,\n truncateText,\n hasError,\n // orientation = 'vertical', // one of [ vertical, horizontal ]\n validationState, // one of [ success, error, warning ]\n validationMessage,\n feedbackMessage,\n readOnly,\n focused,\n type,\n autoFocus,\n disabled,\n onChange,\n onBlur,\n onFocus,\n onPaste,\n onKeyUp,\n extraInputProps,\n extraContent,\n leftAddon,\n rightAddon,\n required,\n optional,\n mask,\n useSubfix,\n suffix,\n variant,\n fitContent,\n withHighlight,\n containerProps,\n ...rest\n}) => {\n const isGroup = InputComponent.type === (<Group />).type;\n const floatingLabelOverride = floatingLabel === 'UNSAFE';\n const WrapperContentComp = !isGroup ? WrapperContent : WrapperContentGroup;\n\n // group the input props to not duplicate it inside the specific inputComponent (floating or not)\n const inputProps = {\n ...extraInputProps,\n disabled,\n hasError: hasError || validationState === 'error',\n id,\n name,\n type,\n autoFocus,\n onBlur,\n onChange,\n onFocus,\n onPaste,\n onKeyUp,\n readOnly,\n value,\n mask,\n useSubfix,\n variant,\n required,\n ...rest,\n };\n\n const renderInput = (Input) =>\n leftAddon || rightAddon ? (\n <DSInputGroup leftAddon={leftAddon} rightAddon={rightAddon} variant={variant}>\n {Input}\n </DSInputGroup>\n ) : (\n Input\n );\n\n const renderFloating = (\n <DSFloatingLabelInput\n {...inputProps}\n extraInputProps={extraInputProps}\n focused={focused}\n inputComponent={InputComponent}\n labelComponent={LabelComponent}\n labelText={labelText}\n optional={optional}\n required={required}\n variant={variant}\n />\n );\n\n const InputWithLabel = floatingLabelOverride ? (\n renderInput(renderFloating)\n ) : (\n <>\n <LabelComponent\n htmlFor={id || name}\n label={labelText}\n optional={optional}\n required={required}\n isGroup={isGroup}\n truncateText={truncateText}\n />\n {renderInput(getComponentFromProps(InputComponent, inputProps))}\n </>\n );\n\n if (suffix) {\n return (\n <Wrapper\n classProps={{\n disabled,\n readOnly,\n hasError,\n leftLabel,\n variant,\n fitContent,\n withHighlight,\n }}\n {...containerProps}\n >\n <SuffixWrapper className=\"suffix-wrapper\">\n <SuffixInputWrapper className=\"suffix-input-wrapper\">\n <WrapperContentComp>\n {InputWithLabel}\n {extraContent}\n </WrapperContentComp>\n <FeedbackComponent\n hasError={hasError}\n text={validationState || hasError ? validationMessage : feedbackMessage}\n />\n </SuffixInputWrapper>\n <Suffix\n className=\"suffix-label\"\n label={!!labelText}\n withFeedback={Boolean(validationMessage || feedbackMessage)}\n >\n {suffix}\n </Suffix>\n </SuffixWrapper>\n </Wrapper>\n );\n }\n\n return (\n <Wrapper\n classProps={{\n disabled,\n readOnly,\n hasError,\n leftLabel,\n variant,\n fitContent,\n withHighlight,\n }}\n {...containerProps}\n >\n <WrapperContentComp>\n {InputWithLabel}\n {extraContent}\n </WrapperContentComp>\n <FeedbackComponent hasError={hasError} text={validationState || hasError ? validationMessage : feedbackMessage} />\n </Wrapper>\n );\n};\n\nDSFormItemLayout.propTypes = props;\nDSFormItemLayout.defaultProps = defaultProps;\nconst DSFormItemLayoutWithSchema = describe(DSFormItemLayout);\nDSFormItemLayoutWithSchema.propTypes = props;\n\nexport default DSFormItemLayout;\nexport { DSFormItemLayoutWithSchema };\n"],"names":["blockName","Wrapper","aggregatedClasses","leftLabel","variant","fitContent","withHighlight","WrapperContent","WrapperContentGroup","DSFormItemLayout","floatingLabel","name","id","value","InputComponent","inputComponent","LabelComponent","labelComponent","FeedbackComponent","feedbackComponent","labelText","truncateText","hasError","validationState","validationMessage","feedbackMessage","readOnly","focused","type","autoFocus","disabled","onChange","onBlur","onFocus","onPaste","onKeyUp","extraInputProps","extraContent","leftAddon","rightAddon","required","optional","mask","useSubfix","suffix","containerProps","rest","isGroup","React","Group","floatingLabelOverride","WrapperContentComp","inputProps","renderInput","Input","DSInputGroup","renderFloating","DSFloatingLabelInput","InputWithLabel","getComponentFromProps","SuffixWrapper","SuffixInputWrapper","Suffix","Boolean","propTypes","props","defaultProps","DSFormItemLayoutWithSchema","describe"],"mappings":"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"}
1
+ {"version":3,"file":"DSFormItemLayout.js","sources":["../../../src/FormItem/DSFormItemLayout.tsx"],"sourcesContent":["/* eslint-disable complexity */\n/* eslint-disable max-lines */\nimport React from 'react';\nimport { describe } from 'react-desc';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { getComponentFromProps } from '@elliemae/ds-utilities';\nimport Group from '@elliemae/ds-shared/GroupContext/Group';\nimport DSInputGroup from '../InputGroup';\nimport DSFloatingLabelInput from '../FloatingLabelInput';\nimport DSError from './Error/DSError';\nimport { props } from './props';\nimport { defaultProps } from './defaultProps';\nimport { FORMITEM_LAYOUT_VARIANTS } from './variants';\nimport { Suffix, SuffixInputWrapper, SuffixWrapper } from './Suffix/Suffix';\n// import { maskTypes } from '../InputMask/MaskTypes';\n\nexport { DSError, FORMITEM_LAYOUT_VARIANTS };\n\nconst blockName = 'form-item';\n\nconst Wrapper = aggregatedClasses('div')(blockName, null, ({ leftLabel, variant, fitContent, withHighlight }) => ({\n 'with-left-label': leftLabel,\n 'fit-content': fitContent,\n [variant]: variant,\n 'with-highlight': withHighlight,\n}));\n\nconst WrapperContent = aggregatedClasses('div')(`${blockName}-content`);\nconst WrapperContentGroup = aggregatedClasses('fieldset')(`${blockName}-content`);\n\nconst DSFormItemLayout = ({\n leftLabel,\n floatingLabel,\n name,\n id,\n value,\n inputComponent: InputComponent,\n labelComponent: LabelComponent,\n feedbackComponent: FeedbackComponent,\n labelText,\n truncateText,\n hasError,\n // orientation = 'vertical', // one of [ vertical, horizontal ]\n validationState, // one of [ success, error, warning ]\n validationMessage,\n feedbackMessage,\n readOnly,\n focused,\n type,\n autoFocus,\n disabled,\n onChange,\n onBlur,\n onFocus,\n onPaste,\n onKeyUp,\n extraInputProps,\n extraContent,\n leftAddon,\n rightAddon,\n required,\n optional,\n mask,\n useSubfix,\n suffix,\n variant,\n fitContent,\n withHighlight,\n containerProps,\n ...rest\n}) => {\n const isGroup = InputComponent.type === (<Group />).type;\n const floatingLabelOverride = floatingLabel === 'UNSAFE';\n const WrapperContentComp = !isGroup ? WrapperContent : WrapperContentGroup;\n\n // group the input props to not duplicate it inside the specific inputComponent (floating or not)\n const inputProps = {\n ...extraInputProps,\n disabled,\n hasError: hasError || validationState === 'error',\n id,\n name,\n type,\n autoFocus,\n onBlur,\n onChange,\n onFocus,\n onPaste,\n onKeyUp,\n readOnly,\n value,\n mask,\n useSubfix,\n variant,\n required,\n ...rest,\n };\n\n const renderInput = (Input) =>\n leftAddon || rightAddon ? (\n <DSInputGroup leftAddon={leftAddon} rightAddon={rightAddon} variant={variant}>\n {Input}\n </DSInputGroup>\n ) : (\n Input\n );\n\n const renderFloating = (\n <DSFloatingLabelInput\n {...inputProps}\n extraInputProps={extraInputProps}\n focused={focused}\n inputComponent={InputComponent}\n labelComponent={LabelComponent}\n labelText={labelText}\n optional={optional}\n required={required}\n variant={variant}\n />\n );\n\n const InputWithLabel = floatingLabelOverride ? (\n renderInput(renderFloating)\n ) : (\n <>\n <LabelComponent\n htmlFor={id || name}\n label={labelText}\n optional={optional}\n required={required}\n isGroup={isGroup}\n truncateText={truncateText}\n />\n {renderInput(getComponentFromProps(InputComponent, inputProps))}\n </>\n );\n\n if (suffix) {\n return (\n <Wrapper\n classProps={{\n disabled,\n readOnly,\n hasError,\n leftLabel,\n variant,\n fitContent,\n withHighlight,\n }}\n {...containerProps}\n >\n <SuffixWrapper className=\"suffix-wrapper\">\n <SuffixInputWrapper className=\"suffix-input-wrapper\">\n <WrapperContentComp>\n {InputWithLabel}\n {extraContent}\n </WrapperContentComp>\n <FeedbackComponent\n hasError={hasError}\n text={validationState || hasError ? validationMessage : feedbackMessage}\n />\n </SuffixInputWrapper>\n <Suffix\n className=\"suffix-label\"\n label={!!labelText}\n withFeedback={Boolean(validationMessage || feedbackMessage)}\n >\n {suffix}\n </Suffix>\n </SuffixWrapper>\n </Wrapper>\n );\n }\n\n return (\n <Wrapper\n classProps={{\n disabled,\n readOnly,\n hasError,\n leftLabel,\n variant,\n fitContent,\n withHighlight,\n }}\n {...containerProps}\n >\n <WrapperContentComp>\n {InputWithLabel}\n {extraContent}\n </WrapperContentComp>\n <FeedbackComponent hasError={hasError} text={validationState || hasError ? validationMessage : feedbackMessage} />\n </Wrapper>\n );\n};\n\nDSFormItemLayout.propTypes = props;\nDSFormItemLayout.defaultProps = defaultProps;\nconst DSFormItemLayoutWithSchema = describe(DSFormItemLayout);\nDSFormItemLayoutWithSchema.propTypes = props;\n\nexport default DSFormItemLayout;\nexport { DSFormItemLayoutWithSchema };\n"],"names":["blockName","Wrapper","aggregatedClasses","leftLabel","variant","fitContent","withHighlight","WrapperContent","WrapperContentGroup","DSFormItemLayout","floatingLabel","name","id","value","InputComponent","inputComponent","LabelComponent","labelComponent","FeedbackComponent","feedbackComponent","labelText","truncateText","hasError","validationState","validationMessage","feedbackMessage","readOnly","focused","type","autoFocus","disabled","onChange","onBlur","onFocus","onPaste","onKeyUp","extraInputProps","extraContent","leftAddon","rightAddon","required","optional","mask","useSubfix","suffix","containerProps","rest","isGroup","React","Group","floatingLabelOverride","WrapperContentComp","inputProps","renderInput","Input","DSInputGroup","renderFloating","DSFloatingLabelInput","InputWithLabel","getComponentFromProps","SuffixWrapper","SuffixInputWrapper","Suffix","Boolean","propTypes","props","defaultProps","DSFormItemLayoutWithSchema","describe"],"mappings":"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"}
@@ -23,7 +23,7 @@ require('@babel/runtime/helpers/defineProperty');
23
23
  require('prop-types');
24
24
  require('lodash');
25
25
  require('@elliemae/ds-classnames');
26
- require('@elliemae/ds-icons/CloseCircle');
26
+ require('@elliemae/ds-icons');
27
27
  require('@elliemae/ds-button');
28
28
  require('@elliemae/ds-tooltip');
29
29
  require('../Input/InputAddonWrapper.js');
@@ -11,7 +11,7 @@ require('@babel/runtime/helpers/defineProperty');
11
11
  require('react');
12
12
  require('react-desc');
13
13
  require('@elliemae/ds-classnames');
14
- require('@elliemae/ds-utilities/getComponentFromProps');
14
+ require('@elliemae/ds-utilities');
15
15
  require('@elliemae/ds-shared/GroupContext/Group');
16
16
  require('../InputGroup/DSInputGroup.js');
17
17
  require('../InputGroup/AddonWrapper.js');
@@ -37,7 +37,7 @@ require('../Input/DSInput.js');
37
37
  require('../Input/InputImpl.js');
38
38
  require('@babel/runtime/helpers/typeof');
39
39
  require('lodash');
40
- require('@elliemae/ds-icons/CloseCircle');
40
+ require('@elliemae/ds-icons');
41
41
  require('@elliemae/ds-button');
42
42
  require('@elliemae/ds-tooltip');
43
43
  require('../Input/InputAddonWrapper.js');
@@ -18,7 +18,7 @@ require('@babel/runtime/helpers/defineProperty');
18
18
  require('prop-types');
19
19
  require('lodash');
20
20
  require('@elliemae/ds-classnames');
21
- require('@elliemae/ds-icons/CloseCircle');
21
+ require('@elliemae/ds-icons');
22
22
  require('@elliemae/ds-button');
23
23
  require('@elliemae/ds-tooltip');
24
24
  require('@babel/runtime/helpers/toConsumableArray');
@@ -14,7 +14,7 @@ var React = require('react');
14
14
  var PropTypes = require('prop-types');
15
15
  var lodash = require('lodash');
16
16
  var dsClassnames = require('@elliemae/ds-classnames');
17
- var CloseCircle = require('@elliemae/ds-icons/CloseCircle');
17
+ var dsIcons = require('@elliemae/ds-icons');
18
18
  var DSButton = require('@elliemae/ds-button');
19
19
  var DSTooltip = require('@elliemae/ds-tooltip');
20
20
  var Input_InputAddonWrapper = require('./InputAddonWrapper.js');
@@ -34,7 +34,6 @@ var _getPrototypeOf__default = /*#__PURE__*/_interopDefaultLegacy(_getPrototypeO
34
34
  var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
35
35
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
36
36
  var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
37
- var CloseCircle__default = /*#__PURE__*/_interopDefaultLegacy(CloseCircle);
38
37
  var DSButton__default = /*#__PURE__*/_interopDefaultLegacy(DSButton);
39
38
  var DSTooltip__default = /*#__PURE__*/_interopDefaultLegacy(DSTooltip);
40
39
 
@@ -219,7 +218,7 @@ var InputImpl = /*#__PURE__*/function (_Component) {
219
218
  buttonType: "text",
220
219
  "data-testid": "ds-input_clearable-btn",
221
220
  disabled: disabled,
222
- icon: /*#__PURE__*/React__default['default'].createElement(CloseCircle__default['default'], null),
221
+ icon: /*#__PURE__*/React__default['default'].createElement(dsIcons.CloseCircle, null),
223
222
  onClick: this.handleClear
224
223
  }) : null;
225
224
  }
@@ -1 +1 @@
1
- {"version":3,"file":"InputImpl.js","sources":["../../../src/Input/InputImpl.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n/* eslint-disable complexity */\n/* eslint-disable max-lines */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { omit } from 'lodash';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport CloseCircle from '@elliemae/ds-icons/CloseCircle';\nimport DSButton from '@elliemae/ds-button';\nimport DSTooltip from '@elliemae/ds-tooltip';\nimport InputAddonWrapper from './InputAddonWrapper';\n\nconst blockName = 'input';\nconst Input = aggregatedClasses('input')(blockName, null, ({ clearable, value }) => ({\n clearable,\n value,\n}));\nconst WrapperForTooltipInput = aggregatedClasses('div')(blockName, 'tooltip-ref');\nconst InputCustomWrapper = aggregatedClasses('div')(blockName, null, ({ clearable, value }) => ({\n clearable,\n value,\n}));\nconst ClearableButton = aggregatedClasses(DSButton)(blockName, 'clearable');\n\nconst getValidComponents = (component) => component;\n\nconst noop = () => null;\ninterface InputImplStateT {\n width: number;\n active: boolean;\n showTooltip: boolean;\n isEllipsisOn: boolean;\n}\nclass InputImpl extends Component<InputImplPropsT, InputImplStateT> {\n ref: React.RefObject<HTMLElement>;\n\n refTooltip: React.RefObject<HTMLElement>;\n\n constructor(props) {\n super(props);\n this.state = {\n width: -1,\n isEllipsisOn: false,\n active: false,\n showTooltip: false,\n };\n this.ref = React.createRef();\n this.refTooltip = React.createRef();\n }\n\n componentDidMount() {\n this.setWidth();\n window.addEventListener('resize', this.setWidth);\n this.setState({\n isEllipsisOn: this.ref.current ? this.ref.current.offsetWidth < this.ref.current.scrollWidth : false,\n });\n }\n\n componentWillUnmount() {\n window.removeEventListener('resize', this.setWidth);\n }\n\n handleOnChange = (e) => {\n const { onChange, max } = this.props;\n const { value } = e.target;\n if (max && value > max) return;\n if (onChange) onChange(e);\n if (this.ref.current) {\n this.setState({\n isEllipsisOn: this.ref.current.offsetWidth < this.ref.current.scrollWidth,\n });\n }\n };\n\n handleBlur = (e) => {\n const { onBlur, onChange, min } = this.props;\n const { value } = e.target;\n if (min && value < min && value !== '') {\n onChange({\n target: {\n value: min.toString(),\n },\n });\n }\n onBlur(e);\n this.setState({\n active: false,\n });\n };\n\n handleFocus = (e) => {\n const { onFocus } = this.props;\n onFocus(e);\n this.setState({\n active: true,\n });\n };\n\n handleMouseEnter = () => {\n if (!this.state.showTooltip) {\n this.setState({\n showTooltip: true,\n });\n }\n };\n\n handleMouseLeave = () => {\n if (this.state.showTooltip) {\n this.setState({\n showTooltip: false,\n });\n }\n };\n\n setWidth = () => {\n const client = this.refTooltip.current.getBoundingClientRect();\n this.setState({\n width: client.width,\n });\n };\n\n handleClear() {\n const { onClear, onChange, clearable } = this.props;\n if (clearable && onClear) {\n onClear();\n } else {\n onChange({ target: { value: '' } });\n }\n\n if ((this.ref || {}).current) this.ref.current.focus();\n }\n\n renderClearableComponent() {\n const { clearable, value, disabled } = this.props;\n if (disabled) return null;\n return clearable && value ? (\n <ClearableButton\n buttonType=\"text\"\n data-testid=\"ds-input_clearable-btn\"\n disabled={disabled}\n icon={<CloseCircle />}\n onClick={this.handleClear}\n />\n ) : null;\n }\n\n render() {\n const {\n role,\n id,\n isShowElipsisActive,\n autoFocus,\n className,\n name,\n innerRef,\n maxLength,\n minLength,\n placeholder,\n leftComponent,\n rightComponent,\n disableTooltip,\n readOnly,\n disabled,\n value,\n onClick,\n onChange,\n onKeyDown,\n onKeyUp,\n onFocus,\n onBlur,\n onPaste,\n required,\n type,\n customInputType,\n min,\n max,\n clearable,\n onMouseLeave,\n onMouseOut,\n style,\n containerProps,\n tabIndex,\n hasError,\n ...rest\n } = this.props;\n const { width, active, showTooltip, isEllipsisOn } = this.state;\n const rightComponents = [this.renderClearableComponent(), rightComponent].filter(getValidComponents);\n const leftComponents = [leftComponent].filter(getValidComponents);\n\n const inputProps = {\n 'aria-label': rest['aria-label'],\n 'aria-invalid': rest['aria-invalid'],\n 'aria-placeholder': placeholder,\n 'aria-required': required,\n 'aria-multiline': false,\n 'aria-autocomplete': 'none',\n 'data-testid': rest['data-testid'],\n 'aria-describedby': rest['aria-describedby'],\n role,\n id,\n innerRef: (_ref) => {\n this.ref = { current: _ref };\n if (innerRef) {\n if (typeof innerRef === 'function') innerRef(_ref);\n else innerRef.current = _ref;\n }\n },\n className,\n autoFocus,\n disabled: disabled || readOnly,\n maxLength,\n minLength,\n name,\n onBlur,\n onChange,\n onClick,\n onFocus,\n onKeyDown,\n onKeyUp,\n onPaste,\n onMouseLeave,\n disableTooltip,\n onMouseOut,\n placeholder,\n required,\n type,\n value,\n min,\n max,\n style,\n tabIndex,\n ...containerProps,\n };\n\n let InputComponent = (\n <WrapperForTooltipInput ref={this.refTooltip} style={{ width: '100%' }}>\n {!customInputType ? (\n <Input\n {...omit(inputProps, ['disableTooltip'])}\n autoComplete=\"off\"\n clearable={`${clearable}`}\n onChange={this.handleOnChange}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n // using mouseOver instead of mouseEnter (doesn't trigger on disabled inputs)\n // https://github.com/facebook/react/issues/4251\n onMouseOver={this.handleMouseEnter}\n // using mouseOut instead of mouseLeave (doesn't trigger on disabled inputs)\n // https://github.com/facebook/react/issues/4251\n onMouseOut={this.handleMouseLeave}\n value={value}\n />\n ) : (\n <InputCustomWrapper className={className} {...containerProps} clearable={clearable} value={value}>\n {customInputType({\n ...inputProps,\n })}\n </InputCustomWrapper>\n )}\n </WrapperForTooltipInput>\n );\n if (isShowElipsisActive) {\n InputComponent = (\n <DSTooltip\n isOpen={!disableTooltip && isEllipsisOn && !active && showTooltip && width}\n title={String(value)}\n zIndex={11}\n triggerComponent={<WrapperForTooltipInput style={{ width: '100%' }}>{InputComponent}</WrapperForTooltipInput>}\n />\n );\n }\n\n const renderInput =\n rightComponents.length || leftComponents.length || clearable ? (\n <InputAddonWrapper\n className={className}\n leftComponents={leftComponents}\n rightComponents={rightComponents}\n hasError={hasError}\n {...containerProps}\n >\n {InputComponent}\n </InputAddonWrapper>\n ) : (\n InputComponent\n );\n\n return renderInput;\n }\n}\n\nInputImpl.defaultProps = {\n onBlur: noop,\n onFocus: noop,\n};\nconst propTypes = {\n className: PropTypes.string,\n customInputType: PropTypes.func,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n isShowElipsisActive: PropTypes.bool,\n max: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n min: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n name: PropTypes.string,\n onBlur: PropTypes.func,\n onChange: PropTypes.func,\n onClick: PropTypes.func,\n onFocus: PropTypes.func,\n onKeyDown: PropTypes.func,\n onKeyUp: PropTypes.func,\n onMouseLeave: PropTypes.func,\n onMouseOut: PropTypes.func,\n onPaste: PropTypes.func,\n onClear: PropTypes.func,\n placeholder: PropTypes.string,\n required: PropTypes.bool,\n role: PropTypes.string,\n innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.any })]),\n maxLength: PropTypes.number,\n minLength: PropTypes.number,\n leftComponent: PropTypes.element,\n rightComponent: PropTypes.element,\n hasError: PropTypes.bool,\n disableTooltip: PropTypes.bool,\n readOnly: PropTypes.bool,\n disabled: PropTypes.bool,\n autoFocus: PropTypes.bool,\n type: PropTypes.string,\n clearable: PropTypes.bool,\n containerProps: PropTypes.object,\n // eslint-disable-next-line react/forbid-prop-types\n style: PropTypes.object,\n tabIndex: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n // eslint-disable-next-line jsdoc/require-returns\n /**\n * Should be of type string if using ellipsis tooltip [isShowElipsisActive] prop\n *\n * @param props\n * @param propName\n * @param componentName\n */\n // eslint-disable-next-line consistent-return\n value(props, propName, componentName) {\n // eslint-disable-line consistent-return\n if (!!props.isShowElipsisActive && typeof props[propName] !== 'string') {\n return new Error(\n `Invalid prop \\`${propName}\\` of type \\`${typeof props[propName]}\\` supplied to` +\n ` \\`${componentName}\\`. Prop \\`value\\` should be of type \\`string\\` if prop \\`isShowElipsisActive\\` is set to \\`true\\`.` +\n ' Either set `isShowElipsisActive` to `false`, or properly format your `value` prop to `string`.',\n );\n }\n },\n};\n\ntype InputImplPropsT = PropTypes.InferProps<typeof propTypes>;\nInputImpl.propTypes = propTypes;\n\nexport default InputImpl;\n"],"names":["blockName","Input","aggregatedClasses","clearable","value","WrapperForTooltipInput","InputCustomWrapper","ClearableButton","DSButton","getValidComponents","component","noop","InputImpl","props","e","onChange","max","target","ref","current","setState","isEllipsisOn","offsetWidth","scrollWidth","onBlur","min","toString","active","onFocus","state","showTooltip","client","refTooltip","getBoundingClientRect","width","React","createRef","setWidth","window","addEventListener","removeEventListener","onClear","focus","disabled","CloseCircle","handleClear","role","id","isShowElipsisActive","autoFocus","className","name","innerRef","maxLength","minLength","placeholder","leftComponent","rightComponent","disableTooltip","readOnly","onClick","onKeyDown","onKeyUp","onPaste","required","type","customInputType","onMouseLeave","onMouseOut","style","containerProps","tabIndex","hasError","rest","rightComponents","renderClearableComponent","filter","leftComponents","inputProps","_ref","InputComponent","omit","handleOnChange","handleBlur","handleFocus","handleMouseEnter","handleMouseLeave","DSTooltip","String","renderInput","length","InputAddonWrapper","Component","defaultProps","propTypes","PropTypes","string","func","oneOfType","number","bool","shape","any","element","object","propName","componentName","Error"],"mappings":"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"}
1
+ {"version":3,"file":"InputImpl.js","sources":["../../../src/Input/InputImpl.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\n/* eslint-disable complexity */\n/* eslint-disable max-lines */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { omit } from 'lodash';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { CloseCircle } from '@elliemae/ds-icons';\nimport DSButton from '@elliemae/ds-button';\nimport DSTooltip from '@elliemae/ds-tooltip';\nimport InputAddonWrapper from './InputAddonWrapper';\n\nconst blockName = 'input';\nconst Input = aggregatedClasses('input')(blockName, null, ({ clearable, value }) => ({\n clearable,\n value,\n}));\nconst WrapperForTooltipInput = aggregatedClasses('div')(blockName, 'tooltip-ref');\nconst InputCustomWrapper = aggregatedClasses('div')(blockName, null, ({ clearable, value }) => ({\n clearable,\n value,\n}));\nconst ClearableButton = aggregatedClasses(DSButton)(blockName, 'clearable');\n\nconst getValidComponents = (component) => component;\n\nconst noop = () => null;\ninterface InputImplStateT {\n width: number;\n active: boolean;\n showTooltip: boolean;\n isEllipsisOn: boolean;\n}\nclass InputImpl extends Component<InputImplPropsT, InputImplStateT> {\n ref: React.RefObject<HTMLElement>;\n\n refTooltip: React.RefObject<HTMLElement>;\n\n constructor(props) {\n super(props);\n this.state = {\n width: -1,\n isEllipsisOn: false,\n active: false,\n showTooltip: false,\n };\n this.ref = React.createRef();\n this.refTooltip = React.createRef();\n }\n\n componentDidMount() {\n this.setWidth();\n window.addEventListener('resize', this.setWidth);\n this.setState({\n isEllipsisOn: this.ref.current ? this.ref.current.offsetWidth < this.ref.current.scrollWidth : false,\n });\n }\n\n componentWillUnmount() {\n window.removeEventListener('resize', this.setWidth);\n }\n\n handleOnChange = (e) => {\n const { onChange, max } = this.props;\n const { value } = e.target;\n if (max && value > max) return;\n if (onChange) onChange(e);\n if (this.ref.current) {\n this.setState({\n isEllipsisOn: this.ref.current.offsetWidth < this.ref.current.scrollWidth,\n });\n }\n };\n\n handleBlur = (e) => {\n const { onBlur, onChange, min } = this.props;\n const { value } = e.target;\n if (min && value < min && value !== '') {\n onChange({\n target: {\n value: min.toString(),\n },\n });\n }\n onBlur(e);\n this.setState({\n active: false,\n });\n };\n\n handleFocus = (e) => {\n const { onFocus } = this.props;\n onFocus(e);\n this.setState({\n active: true,\n });\n };\n\n handleMouseEnter = () => {\n if (!this.state.showTooltip) {\n this.setState({\n showTooltip: true,\n });\n }\n };\n\n handleMouseLeave = () => {\n if (this.state.showTooltip) {\n this.setState({\n showTooltip: false,\n });\n }\n };\n\n setWidth = () => {\n const client = this.refTooltip.current.getBoundingClientRect();\n this.setState({\n width: client.width,\n });\n };\n\n handleClear() {\n const { onClear, onChange, clearable } = this.props;\n if (clearable && onClear) {\n onClear();\n } else {\n onChange({ target: { value: '' } });\n }\n\n if ((this.ref || {}).current) this.ref.current.focus();\n }\n\n renderClearableComponent() {\n const { clearable, value, disabled } = this.props;\n if (disabled) return null;\n return clearable && value ? (\n <ClearableButton\n buttonType=\"text\"\n data-testid=\"ds-input_clearable-btn\"\n disabled={disabled}\n icon={<CloseCircle />}\n onClick={this.handleClear}\n />\n ) : null;\n }\n\n render() {\n const {\n role,\n id,\n isShowElipsisActive,\n autoFocus,\n className,\n name,\n innerRef,\n maxLength,\n minLength,\n placeholder,\n leftComponent,\n rightComponent,\n disableTooltip,\n readOnly,\n disabled,\n value,\n onClick,\n onChange,\n onKeyDown,\n onKeyUp,\n onFocus,\n onBlur,\n onPaste,\n required,\n type,\n customInputType,\n min,\n max,\n clearable,\n onMouseLeave,\n onMouseOut,\n style,\n containerProps,\n tabIndex,\n hasError,\n ...rest\n } = this.props;\n const { width, active, showTooltip, isEllipsisOn } = this.state;\n const rightComponents = [this.renderClearableComponent(), rightComponent].filter(getValidComponents);\n const leftComponents = [leftComponent].filter(getValidComponents);\n\n const inputProps = {\n 'aria-label': rest['aria-label'],\n 'aria-invalid': rest['aria-invalid'],\n 'aria-placeholder': placeholder,\n 'aria-required': required,\n 'aria-multiline': false,\n 'aria-autocomplete': 'none',\n 'data-testid': rest['data-testid'],\n 'aria-describedby': rest['aria-describedby'],\n role,\n id,\n innerRef: (_ref) => {\n this.ref = { current: _ref };\n if (innerRef) {\n if (typeof innerRef === 'function') innerRef(_ref);\n else innerRef.current = _ref;\n }\n },\n className,\n autoFocus,\n disabled: disabled || readOnly,\n maxLength,\n minLength,\n name,\n onBlur,\n onChange,\n onClick,\n onFocus,\n onKeyDown,\n onKeyUp,\n onPaste,\n onMouseLeave,\n disableTooltip,\n onMouseOut,\n placeholder,\n required,\n type,\n value,\n min,\n max,\n style,\n tabIndex,\n ...containerProps,\n };\n\n let InputComponent = (\n <WrapperForTooltipInput ref={this.refTooltip} style={{ width: '100%' }}>\n {!customInputType ? (\n <Input\n {...omit(inputProps, ['disableTooltip'])}\n autoComplete=\"off\"\n clearable={`${clearable}`}\n onChange={this.handleOnChange}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n // using mouseOver instead of mouseEnter (doesn't trigger on disabled inputs)\n // https://github.com/facebook/react/issues/4251\n onMouseOver={this.handleMouseEnter}\n // using mouseOut instead of mouseLeave (doesn't trigger on disabled inputs)\n // https://github.com/facebook/react/issues/4251\n onMouseOut={this.handleMouseLeave}\n value={value}\n />\n ) : (\n <InputCustomWrapper className={className} {...containerProps} clearable={clearable} value={value}>\n {customInputType({\n ...inputProps,\n })}\n </InputCustomWrapper>\n )}\n </WrapperForTooltipInput>\n );\n if (isShowElipsisActive) {\n InputComponent = (\n <DSTooltip\n isOpen={!disableTooltip && isEllipsisOn && !active && showTooltip && width}\n title={String(value)}\n zIndex={11}\n triggerComponent={<WrapperForTooltipInput style={{ width: '100%' }}>{InputComponent}</WrapperForTooltipInput>}\n />\n );\n }\n\n const renderInput =\n rightComponents.length || leftComponents.length || clearable ? (\n <InputAddonWrapper\n className={className}\n leftComponents={leftComponents}\n rightComponents={rightComponents}\n hasError={hasError}\n {...containerProps}\n >\n {InputComponent}\n </InputAddonWrapper>\n ) : (\n InputComponent\n );\n\n return renderInput;\n }\n}\n\nInputImpl.defaultProps = {\n onBlur: noop,\n onFocus: noop,\n};\nconst propTypes = {\n className: PropTypes.string,\n customInputType: PropTypes.func,\n id: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n isShowElipsisActive: PropTypes.bool,\n max: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n min: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n name: PropTypes.string,\n onBlur: PropTypes.func,\n onChange: PropTypes.func,\n onClick: PropTypes.func,\n onFocus: PropTypes.func,\n onKeyDown: PropTypes.func,\n onKeyUp: PropTypes.func,\n onMouseLeave: PropTypes.func,\n onMouseOut: PropTypes.func,\n onPaste: PropTypes.func,\n onClear: PropTypes.func,\n placeholder: PropTypes.string,\n required: PropTypes.bool,\n role: PropTypes.string,\n innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.any })]),\n maxLength: PropTypes.number,\n minLength: PropTypes.number,\n leftComponent: PropTypes.element,\n rightComponent: PropTypes.element,\n hasError: PropTypes.bool,\n disableTooltip: PropTypes.bool,\n readOnly: PropTypes.bool,\n disabled: PropTypes.bool,\n autoFocus: PropTypes.bool,\n type: PropTypes.string,\n clearable: PropTypes.bool,\n containerProps: PropTypes.object,\n // eslint-disable-next-line react/forbid-prop-types\n style: PropTypes.object,\n tabIndex: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n // eslint-disable-next-line jsdoc/require-returns\n /**\n * Should be of type string if using ellipsis tooltip [isShowElipsisActive] prop\n *\n * @param props\n * @param propName\n * @param componentName\n */\n // eslint-disable-next-line consistent-return\n value(props, propName, componentName) {\n // eslint-disable-line consistent-return\n if (!!props.isShowElipsisActive && typeof props[propName] !== 'string') {\n return new Error(\n `Invalid prop \\`${propName}\\` of type \\`${typeof props[propName]}\\` supplied to` +\n ` \\`${componentName}\\`. Prop \\`value\\` should be of type \\`string\\` if prop \\`isShowElipsisActive\\` is set to \\`true\\`.` +\n ' Either set `isShowElipsisActive` to `false`, or properly format your `value` prop to `string`.',\n );\n }\n },\n};\n\ntype InputImplPropsT = PropTypes.InferProps<typeof propTypes>;\nInputImpl.propTypes = propTypes;\n\nexport default InputImpl;\n"],"names":["blockName","Input","aggregatedClasses","clearable","value","WrapperForTooltipInput","InputCustomWrapper","ClearableButton","DSButton","getValidComponents","component","noop","InputImpl","props","e","onChange","max","target","ref","current","setState","isEllipsisOn","offsetWidth","scrollWidth","onBlur","min","toString","active","onFocus","state","showTooltip","client","refTooltip","getBoundingClientRect","width","React","createRef","setWidth","window","addEventListener","removeEventListener","onClear","focus","disabled","CloseCircle","handleClear","role","id","isShowElipsisActive","autoFocus","className","name","innerRef","maxLength","minLength","placeholder","leftComponent","rightComponent","disableTooltip","readOnly","onClick","onKeyDown","onKeyUp","onPaste","required","type","customInputType","onMouseLeave","onMouseOut","style","containerProps","tabIndex","hasError","rest","rightComponents","renderClearableComponent","filter","leftComponents","inputProps","_ref","InputComponent","omit","handleOnChange","handleBlur","handleFocus","handleMouseEnter","handleMouseLeave","DSTooltip","String","renderInput","length","InputAddonWrapper","Component","defaultProps","propTypes","PropTypes","string","func","oneOfType","number","bool","shape","any","element","object","propName","componentName","Error"],"mappings":"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"}
@@ -19,7 +19,7 @@ require('@babel/runtime/helpers/defineProperty');
19
19
  require('prop-types');
20
20
  require('lodash');
21
21
  require('@elliemae/ds-classnames');
22
- require('@elliemae/ds-icons/CloseCircle');
22
+ require('@elliemae/ds-icons');
23
23
  require('@elliemae/ds-button');
24
24
  require('@elliemae/ds-tooltip');
25
25
  require('@babel/runtime/helpers/toConsumableArray');
@@ -30,7 +30,7 @@ require('../TextBox/DSTextBox.js');
30
30
  require('../Input/DSInput.js');
31
31
  require('../Input/InputImpl.js');
32
32
  require('@elliemae/ds-classnames');
33
- require('@elliemae/ds-icons/CloseCircle');
33
+ require('@elliemae/ds-icons');
34
34
  require('@elliemae/ds-button');
35
35
  require('@elliemae/ds-tooltip');
36
36
  require('../Input/InputAddonWrapper.js');
@@ -20,7 +20,7 @@ require('../Input/DSInput.js');
20
20
  require('../Input/InputImpl.js');
21
21
  require('@babel/runtime/helpers/typeof');
22
22
  require('@elliemae/ds-classnames');
23
- require('@elliemae/ds-icons/CloseCircle');
23
+ require('@elliemae/ds-icons');
24
24
  require('@elliemae/ds-button');
25
25
  require('@elliemae/ds-tooltip');
26
26
  require('../Input/InputAddonWrapper.js');
@@ -27,7 +27,7 @@ require('../TextBox/DSTextBox.js');
27
27
  require('../Input/DSInput.js');
28
28
  require('../Input/InputImpl.js');
29
29
  require('@elliemae/ds-classnames');
30
- require('@elliemae/ds-icons/CloseCircle');
30
+ require('@elliemae/ds-icons');
31
31
  require('@elliemae/ds-button');
32
32
  require('@elliemae/ds-tooltip');
33
33
  require('../Input/InputAddonWrapper.js');
@@ -20,7 +20,7 @@ require('@babel/runtime/helpers/defineProperty');
20
20
  require('prop-types');
21
21
  require('lodash');
22
22
  require('@elliemae/ds-classnames');
23
- require('@elliemae/ds-icons/CloseCircle');
23
+ require('@elliemae/ds-icons');
24
24
  require('@elliemae/ds-button');
25
25
  require('@elliemae/ds-tooltip');
26
26
  require('../../Input/InputAddonWrapper.js');
@@ -20,7 +20,7 @@ require('@babel/runtime/helpers/defineProperty');
20
20
  require('prop-types');
21
21
  require('lodash');
22
22
  require('@elliemae/ds-classnames');
23
- require('@elliemae/ds-icons/CloseCircle');
23
+ require('@elliemae/ds-icons');
24
24
  require('@elliemae/ds-button');
25
25
  require('@elliemae/ds-tooltip');
26
26
  require('../../Input/InputAddonWrapper.js');
@@ -20,7 +20,7 @@ require('@babel/runtime/helpers/defineProperty');
20
20
  require('prop-types');
21
21
  require('lodash');
22
22
  require('@elliemae/ds-classnames');
23
- require('@elliemae/ds-icons/CloseCircle');
23
+ require('@elliemae/ds-icons');
24
24
  require('@elliemae/ds-button');
25
25
  require('@elliemae/ds-tooltip');
26
26
  require('../../Input/InputAddonWrapper.js');
@@ -20,7 +20,7 @@ require('@babel/runtime/helpers/defineProperty');
20
20
  require('prop-types');
21
21
  require('lodash');
22
22
  require('@elliemae/ds-classnames');
23
- require('@elliemae/ds-icons/CloseCircle');
23
+ require('@elliemae/ds-icons');
24
24
  require('@elliemae/ds-button');
25
25
  require('@elliemae/ds-tooltip');
26
26
  require('../../Input/InputAddonWrapper.js');
@@ -21,7 +21,7 @@ require('@babel/runtime/helpers/defineProperty');
21
21
  require('prop-types');
22
22
  require('lodash');
23
23
  require('@elliemae/ds-classnames');
24
- require('@elliemae/ds-icons/CloseCircle');
24
+ require('@elliemae/ds-icons');
25
25
  require('@elliemae/ds-button');
26
26
  require('@elliemae/ds-tooltip');
27
27
  require('../../Input/InputAddonWrapper.js');
@@ -21,7 +21,7 @@ require('@babel/runtime/helpers/defineProperty');
21
21
  require('prop-types');
22
22
  require('lodash');
23
23
  require('@elliemae/ds-classnames');
24
- require('@elliemae/ds-icons/CloseCircle');
24
+ require('@elliemae/ds-icons');
25
25
  require('@elliemae/ds-button');
26
26
  require('@elliemae/ds-tooltip');
27
27
  require('../../Input/InputAddonWrapper.js');
@@ -21,7 +21,7 @@ require('@babel/runtime/helpers/defineProperty');
21
21
  require('prop-types');
22
22
  require('lodash');
23
23
  require('@elliemae/ds-classnames');
24
- require('@elliemae/ds-icons/CloseCircle');
24
+ require('@elliemae/ds-icons');
25
25
  require('@elliemae/ds-button');
26
26
  require('@elliemae/ds-tooltip');
27
27
  require('../../Input/InputAddonWrapper.js');
@@ -20,7 +20,7 @@ require('@babel/runtime/helpers/defineProperty');
20
20
  require('prop-types');
21
21
  require('lodash');
22
22
  require('@elliemae/ds-classnames');
23
- require('@elliemae/ds-icons/CloseCircle');
23
+ require('@elliemae/ds-icons');
24
24
  require('@elliemae/ds-button');
25
25
  require('@elliemae/ds-tooltip');
26
26
  require('../../Input/InputAddonWrapper.js');
@@ -20,7 +20,7 @@ require('@babel/runtime/helpers/defineProperty');
20
20
  require('prop-types');
21
21
  require('lodash');
22
22
  require('@elliemae/ds-classnames');
23
- require('@elliemae/ds-icons/CloseCircle');
23
+ require('@elliemae/ds-icons');
24
24
  require('@elliemae/ds-button');
25
25
  require('@elliemae/ds-tooltip');
26
26
  require('../../Input/InputAddonWrapper.js');
@@ -30,7 +30,7 @@ require('@babel/runtime/helpers/defineProperty');
30
30
  require('prop-types');
31
31
  require('lodash');
32
32
  require('@elliemae/ds-classnames');
33
- require('@elliemae/ds-icons/CloseCircle');
33
+ require('@elliemae/ds-icons');
34
34
  require('@elliemae/ds-button');
35
35
  require('@elliemae/ds-tooltip');
36
36
  require('../../Input/InputAddonWrapper.js');
@@ -7,10 +7,7 @@ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
7
7
  var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
8
8
  var React = require('react');
9
9
  var reactDesc = require('react-desc');
10
- var LockUnlocked = require('@elliemae/ds-icons/LockUnlocked');
11
- var LockLocked = require('@elliemae/ds-icons/LockLocked');
12
- var VisibleView = require('@elliemae/ds-icons/VisibleView');
13
- var InvisibleHide = require('@elliemae/ds-icons/InvisibleHide');
10
+ var dsIcons = require('@elliemae/ds-icons');
14
11
  var DSButton = require('@elliemae/ds-button');
15
12
  var InputGroup_DSInputGroup = require('../InputGroup/DSInputGroup.js');
16
13
  var InputMask_DSInputMask = require('../InputMask/DSInputMask.js');
@@ -40,7 +37,6 @@ require('../InputMask/utils/setCaretPosition.js');
40
37
  require('../TextBox/DSTextBox.js');
41
38
  require('../Input/DSInput.js');
42
39
  require('../Input/InputImpl.js');
43
- require('@elliemae/ds-icons/CloseCircle');
44
40
  require('@elliemae/ds-tooltip');
45
41
  require('../Input/InputAddonWrapper.js');
46
42
  require('@babel/runtime/helpers/toConsumableArray');
@@ -63,18 +59,14 @@ var _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
63
59
  var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
64
60
  var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
65
61
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
66
- var LockUnlocked__default = /*#__PURE__*/_interopDefaultLegacy(LockUnlocked);
67
- var LockLocked__default = /*#__PURE__*/_interopDefaultLegacy(LockLocked);
68
- var VisibleView__default = /*#__PURE__*/_interopDefaultLegacy(VisibleView);
69
- var InvisibleHide__default = /*#__PURE__*/_interopDefaultLegacy(InvisibleHide);
70
62
  var DSButton__default = /*#__PURE__*/_interopDefaultLegacy(DSButton);
71
63
 
72
64
  var _excluded = ["leftAddon", "rightAddon", "onChange", "value", "readOnly", "mask", "type", "placeholderChar"];
73
65
  var ADDON_ICON_OPTIONS = {
74
- LockUnlocked: /*#__PURE__*/React__default['default'].createElement(LockUnlocked__default['default'], null),
75
- LockLocked: /*#__PURE__*/React__default['default'].createElement(LockLocked__default['default'], null),
76
- VisibleView: /*#__PURE__*/React__default['default'].createElement(VisibleView__default['default'], null),
77
- InvisibleHide: /*#__PURE__*/React__default['default'].createElement(InvisibleHide__default['default'], null)
66
+ LockUnlocked: /*#__PURE__*/React__default['default'].createElement(dsIcons.LockUnlocked, null),
67
+ LockLocked: /*#__PURE__*/React__default['default'].createElement(dsIcons.LockLocked, null),
68
+ VisibleView: /*#__PURE__*/React__default['default'].createElement(dsIcons.VisibleView, null),
69
+ InvisibleHide: /*#__PURE__*/React__default['default'].createElement(dsIcons.InvisibleHide, null)
78
70
  };
79
71
 
80
72
  var DSInputProtected = function DSInputProtected(_ref) {
@@ -141,11 +133,10 @@ var DSInputProtected = function DSInputProtected(_ref) {
141
133
 
142
134
  DSInputProtected.propTypes = InputProtected_props.inputProtectedProps;
143
135
  DSInputProtected.defaultProps = InputProtected_defaultProps.defaultProps;
144
- var InputProtectedWithSchema = reactDesc.describe(DSInputProtected);
145
- InputProtectedWithSchema.propTypes = InputProtected_props.inputProtectedProps;
136
+ var DSInputProtectedWithSchema = reactDesc.describe(DSInputProtected);
137
+ DSInputProtectedWithSchema.propTypes = InputProtected_props.inputProtectedProps;
146
138
 
147
- exports.LEFT_ADDON_OPTIONS = InputProtected_options.LEFT_ADDON_OPTIONS;
148
- exports.RIGHT_ADDON_OPTIONS = InputProtected_options.RIGHT_ADDON_OPTIONS;
149
- exports.InputProtectedWithSchema = InputProtectedWithSchema;
139
+ exports.DSInputProtected = DSInputProtected;
140
+ exports.DSInputProtectedWithSchema = DSInputProtectedWithSchema;
150
141
  exports['default'] = DSInputProtected;
151
142
  //# sourceMappingURL=DSInputProtected.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DSInputProtected.js","sources":["../../../src/InputProtected/DSInputProtected.tsx"],"sourcesContent":["/* eslint-disable import/no-unresolved */\n/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useState, useCallback, useEffect } from 'react';\nimport { describe } from 'react-desc';\nimport LockUnlocked from '@elliemae/ds-icons/LockUnlocked';\nimport LockLocked from '@elliemae/ds-icons/LockLocked';\nimport VisibleView from '@elliemae/ds-icons/VisibleView';\nimport InvisibleHide from '@elliemae/ds-icons/InvisibleHide';\nimport DSButton from '@elliemae/ds-button';\nimport InputGroup from '../InputGroup';\nimport DSInputMask from '../InputMask';\nimport { inputProtectedProps } from './props';\nimport { defaultProps } from './defaultProps';\nimport { LEFT_ADDON_OPTIONS, RIGHT_ADDON_OPTIONS } from './options';\n\nexport { LEFT_ADDON_OPTIONS, RIGHT_ADDON_OPTIONS };\n\nconst ADDON_ICON_OPTIONS = {\n LockUnlocked: <LockUnlocked />,\n LockLocked: <LockLocked />,\n VisibleView: <VisibleView />,\n InvisibleHide: <InvisibleHide />,\n};\n\nconst DSInputProtected = ({\n leftAddon,\n rightAddon,\n onChange,\n value,\n readOnly,\n mask,\n type,\n placeholderChar = undefined,\n ...rest\n}) => {\n const left = leftAddon && ADDON_ICON_OPTIONS[leftAddon];\n const right = rightAddon && ADDON_ICON_OPTIONS[rightAddon];\n const [inputLocked, setLocked] = useState(\n leftAddon === LEFT_ADDON_OPTIONS.LockLocked,\n );\n const [inputHidden, setHidden] = useState(\n rightAddon === RIGHT_ADDON_OPTIONS.InvisibleHide,\n );\n\n useEffect(() => {\n setLocked(leftAddon === LEFT_ADDON_OPTIONS.LockLocked);\n setHidden(rightAddon === RIGHT_ADDON_OPTIONS.InvisibleHide);\n }, [leftAddon, rightAddon]);\n\n const handleLeft = useCallback(() => {\n setLocked(!inputLocked);\n }, [leftAddon, inputLocked]);\n const handleRight = useCallback(() => {\n setHidden(!inputHidden);\n }, [rightAddon, inputHidden]);\n\n return (\n <div>\n <InputGroup\n leftAddon={\n left ? (\n <DSButton\n aria-label={`${inputLocked ? 'Allow' : 'Disallow'} Edition`}\n buttonType=\"secondary\"\n icon={\n ADDON_ICON_OPTIONS[\n inputLocked\n ? LEFT_ADDON_OPTIONS.LockUnlocked\n : LEFT_ADDON_OPTIONS.LockLocked\n ]\n }\n onClick={handleLeft}\n />\n ) : undefined\n }\n readOnly={left ? inputLocked : readOnly}\n rightAddon={\n right ? (\n <DSButton\n aria-label={`${inputHidden ? 'Show' : 'Hide'} Characters`}\n buttonType=\"secondary\"\n icon={\n ADDON_ICON_OPTIONS[\n inputHidden\n ? RIGHT_ADDON_OPTIONS.VisibleView\n : RIGHT_ADDON_OPTIONS.InvisibleHide\n ]\n }\n onClick={handleRight}\n containerProps={{\n 'data-testid': 'inputprotected-show-hide-button',\n }}\n />\n ) : undefined\n }\n >\n <DSInputMask\n {...rest}\n mask={mask}\n placeholderChar={placeholderChar}\n onChange={onChange}\n readOnly={left ? inputLocked : readOnly}\n type={right && inputHidden ? 'password' : type}\n value={value}\n />\n </InputGroup>\n </div>\n );\n};\n\nDSInputProtected.propTypes = inputProtectedProps;\nDSInputProtected.defaultProps = defaultProps;\n\nconst InputProtectedWithSchema = describe(DSInputProtected);\nInputProtectedWithSchema.propTypes = inputProtectedProps;\n\nexport { InputProtectedWithSchema };\nexport default DSInputProtected;\n"],"names":["ADDON_ICON_OPTIONS","LockUnlocked","React","LockLocked","VisibleView","InvisibleHide","DSInputProtected","leftAddon","rightAddon","onChange","value","readOnly","mask","type","placeholderChar","undefined","rest","left","right","useState","LEFT_ADDON_OPTIONS","inputLocked","setLocked","RIGHT_ADDON_OPTIONS","inputHidden","setHidden","useEffect","handleLeft","useCallback","handleRight","InputGroup","DSButton","DSInputMask","propTypes","inputProtectedProps","defaultProps","InputProtectedWithSchema","describe"],"mappings":"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"}
1
+ {"version":3,"file":"DSInputProtected.js","sources":["../../../src/InputProtected/DSInputProtected.tsx"],"sourcesContent":["/* eslint-disable import/no-unresolved */\n/* eslint-disable max-lines */\n/* eslint-disable complexity */\nimport React, { useState, useCallback, useEffect } from 'react';\nimport { describe } from 'react-desc';\nimport { LockUnlocked, LockLocked, VisibleView, InvisibleHide } from '@elliemae/ds-icons';\nimport DSButton from '@elliemae/ds-button';\nimport InputGroup from '../InputGroup';\nimport DSInputMask from '../InputMask';\nimport { inputProtectedProps } from './props';\nimport { defaultProps } from './defaultProps';\nimport { LEFT_ADDON_OPTIONS, RIGHT_ADDON_OPTIONS } from './options';\n\nconst ADDON_ICON_OPTIONS = {\n LockUnlocked: <LockUnlocked />,\n LockLocked: <LockLocked />,\n VisibleView: <VisibleView />,\n InvisibleHide: <InvisibleHide />,\n};\n\nconst DSInputProtected = ({\n leftAddon,\n rightAddon,\n onChange,\n value,\n readOnly,\n mask,\n type,\n placeholderChar = undefined,\n ...rest\n}) => {\n const left = leftAddon && ADDON_ICON_OPTIONS[leftAddon];\n const right = rightAddon && ADDON_ICON_OPTIONS[rightAddon];\n const [inputLocked, setLocked] = useState(leftAddon === LEFT_ADDON_OPTIONS.LockLocked);\n const [inputHidden, setHidden] = useState(rightAddon === RIGHT_ADDON_OPTIONS.InvisibleHide);\n\n useEffect(() => {\n setLocked(leftAddon === LEFT_ADDON_OPTIONS.LockLocked);\n setHidden(rightAddon === RIGHT_ADDON_OPTIONS.InvisibleHide);\n }, [leftAddon, rightAddon]);\n\n const handleLeft = useCallback(() => {\n setLocked(!inputLocked);\n }, [leftAddon, inputLocked]);\n const handleRight = useCallback(() => {\n setHidden(!inputHidden);\n }, [rightAddon, inputHidden]);\n\n return (\n <div>\n <InputGroup\n leftAddon={\n left ? (\n <DSButton\n aria-label={`${inputLocked ? 'Allow' : 'Disallow'} Edition`}\n buttonType=\"secondary\"\n icon={ADDON_ICON_OPTIONS[inputLocked ? LEFT_ADDON_OPTIONS.LockUnlocked : LEFT_ADDON_OPTIONS.LockLocked]}\n onClick={handleLeft}\n />\n ) : undefined\n }\n readOnly={left ? inputLocked : readOnly}\n rightAddon={\n right ? (\n <DSButton\n aria-label={`${inputHidden ? 'Show' : 'Hide'} Characters`}\n buttonType=\"secondary\"\n icon={\n ADDON_ICON_OPTIONS[inputHidden ? RIGHT_ADDON_OPTIONS.VisibleView : RIGHT_ADDON_OPTIONS.InvisibleHide]\n }\n onClick={handleRight}\n containerProps={{\n 'data-testid': 'inputprotected-show-hide-button',\n }}\n />\n ) : undefined\n }\n >\n <DSInputMask\n {...rest}\n mask={mask}\n placeholderChar={placeholderChar}\n onChange={onChange}\n readOnly={left ? inputLocked : readOnly}\n type={right && inputHidden ? 'password' : type}\n value={value}\n />\n </InputGroup>\n </div>\n );\n};\n\nDSInputProtected.propTypes = inputProtectedProps;\nDSInputProtected.defaultProps = defaultProps;\n\nconst DSInputProtectedWithSchema = describe(DSInputProtected);\nDSInputProtectedWithSchema.propTypes = inputProtectedProps;\n\nexport { DSInputProtectedWithSchema, DSInputProtected };\nexport default DSInputProtected;\n"],"names":["ADDON_ICON_OPTIONS","LockUnlocked","React","LockLocked","VisibleView","InvisibleHide","DSInputProtected","leftAddon","rightAddon","onChange","value","readOnly","mask","type","placeholderChar","undefined","rest","left","right","useState","LEFT_ADDON_OPTIONS","inputLocked","setLocked","RIGHT_ADDON_OPTIONS","inputHidden","setHidden","useEffect","handleLeft","useCallback","handleRight","InputGroup","DSButton","DSInputMask","propTypes","inputProtectedProps","defaultProps","DSInputProtectedWithSchema","describe"],"mappings":"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"}
@@ -9,10 +9,7 @@ require('@babel/runtime/helpers/slicedToArray');
9
9
  require('@babel/runtime/helpers/objectWithoutProperties');
10
10
  require('react');
11
11
  require('react-desc');
12
- require('@elliemae/ds-icons/LockUnlocked');
13
- require('@elliemae/ds-icons/LockLocked');
14
- require('@elliemae/ds-icons/VisibleView');
15
- require('@elliemae/ds-icons/InvisibleHide');
12
+ require('@elliemae/ds-icons');
16
13
  require('@elliemae/ds-button');
17
14
  require('../InputGroup/DSInputGroup.js');
18
15
  require('../InputGroup/AddonWrapper.js');
@@ -39,7 +36,6 @@ require('../InputMask/utils/setCaretPosition.js');
39
36
  require('../TextBox/DSTextBox.js');
40
37
  require('../Input/DSInput.js');
41
38
  require('../Input/InputImpl.js');
42
- require('@elliemae/ds-icons/CloseCircle');
43
39
  require('@elliemae/ds-tooltip');
44
40
  require('../Input/InputAddonWrapper.js');
45
41
  require('@babel/runtime/helpers/toConsumableArray');
@@ -60,8 +56,9 @@ require('./defaultProps.js');
60
56
 
61
57
 
62
58
 
63
- exports.InputProtectedWithSchema = InputProtected_DSInputProtected.InputProtectedWithSchema;
64
- exports.default = InputProtected_DSInputProtected['default'];
59
+ exports.DSInputProtected = InputProtected_DSInputProtected.DSInputProtected;
60
+ exports.DSInputProtectedWithSchema = InputProtected_DSInputProtected.DSInputProtectedWithSchema;
61
+ exports.default = InputProtected_DSInputProtected.DSInputProtected;
65
62
  exports.LEFT_ADDON_OPTIONS = InputProtected_options.LEFT_ADDON_OPTIONS;
66
63
  exports.RIGHT_ADDON_OPTIONS = InputProtected_options.RIGHT_ADDON_OPTIONS;
67
64
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"options.js","sources":["../../../src/InputProtected/options.tsx"],"sourcesContent":["export const LEFT_ADDON_OPTIONS = {\n LockUnlocked: 'LockUnlocked',\n LockLocked: 'LockLocked',\n};\nexport const RIGHT_ADDON_OPTIONS = {\n VisibleView: 'VisibleView',\n InvisibleHide: 'InvisibleHide',\n};\n"],"names":["LEFT_ADDON_OPTIONS","LockUnlocked","LockLocked","RIGHT_ADDON_OPTIONS","VisibleView","InvisibleHide"],"mappings":";;;;IAAaA,kBAAkB,GAAG;AAChCC,EAAAA,YAAY,EAAE,cADkB;AAEhCC,EAAAA,UAAU,EAAE;AAFoB;IAIrBC,mBAAmB,GAAG;AACjCC,EAAAA,WAAW,EAAE,aADoB;AAEjCC,EAAAA,aAAa,EAAE;AAFkB;;;;;"}
1
+ {"version":3,"file":"options.js","sources":["../../../src/InputProtected/options.tsx"],"sourcesContent":["export const LEFT_ADDON_OPTIONS = {\n LockUnlocked: 'LockUnlocked',\n LockLocked: 'LockLocked',\n};\n\nexport const RIGHT_ADDON_OPTIONS = {\n VisibleView: 'VisibleView',\n InvisibleHide: 'InvisibleHide',\n};\n"],"names":["LEFT_ADDON_OPTIONS","LockUnlocked","LockLocked","RIGHT_ADDON_OPTIONS","VisibleView","InvisibleHide"],"mappings":";;;;IAAaA,kBAAkB,GAAG;AAChCC,EAAAA,YAAY,EAAE,cADkB;AAEhCC,EAAAA,UAAU,EAAE;AAFoB;IAKrBC,mBAAmB,GAAG;AACjCC,EAAAA,WAAW,EAAE,aADoB;AAEjCC,EAAAA,aAAa,EAAE;AAFkB;;;;;"}
@@ -15,7 +15,7 @@ var RadioGroup_defaultProps = require('./defaultProps.js');
15
15
  require('@babel/runtime/helpers/objectWithoutProperties');
16
16
  require('@babel/runtime/helpers/defineProperty');
17
17
  require('@elliemae/ds-classnames');
18
- require('@elliemae/ds-utilities/getComponentFromProps');
18
+ require('@elliemae/ds-utilities');
19
19
  require('../InputGroup/DSInputGroup.js');
20
20
  require('../InputGroup/AddonWrapper.js');
21
21
  require('@babel/runtime/helpers/classCallCheck');
@@ -40,7 +40,7 @@ require('../Input/DSInput.js');
40
40
  require('../Input/InputImpl.js');
41
41
  require('@babel/runtime/helpers/typeof');
42
42
  require('lodash');
43
- require('@elliemae/ds-icons/CloseCircle');
43
+ require('@elliemae/ds-icons');
44
44
  require('@elliemae/ds-button');
45
45
  require('@elliemae/ds-tooltip');
46
46
  require('../Input/InputAddonWrapper.js');
@@ -10,7 +10,7 @@ require('../FormItem/DSFormItemLayout.js');
10
10
  require('@babel/runtime/helpers/objectWithoutProperties');
11
11
  require('@babel/runtime/helpers/defineProperty');
12
12
  require('@elliemae/ds-classnames');
13
- require('@elliemae/ds-utilities/getComponentFromProps');
13
+ require('@elliemae/ds-utilities');
14
14
  require('../InputGroup/DSInputGroup.js');
15
15
  require('../InputGroup/AddonWrapper.js');
16
16
  require('@babel/runtime/helpers/classCallCheck');
@@ -35,7 +35,7 @@ require('../Input/DSInput.js');
35
35
  require('../Input/InputImpl.js');
36
36
  require('@babel/runtime/helpers/typeof');
37
37
  require('lodash');
38
- require('@elliemae/ds-icons/CloseCircle');
38
+ require('@elliemae/ds-icons');
39
39
  require('@elliemae/ds-button');
40
40
  require('@elliemae/ds-tooltip');
41
41
  require('../Input/InputAddonWrapper.js');