@bigbinary/neetoui 6.7.5 → 6.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Accordion.js +5 -6
- package/dist/Accordion.js.map +1 -1
- package/dist/ActionDropdown.js +16 -11
- package/dist/ActionDropdown.js.map +1 -1
- package/dist/Alert.js +23 -13
- package/dist/Alert.js.map +1 -1
- package/dist/Avatar.js +6 -6
- package/dist/Button.js +7 -8
- package/dist/Button.js.map +1 -1
- package/dist/Callout.js +4 -5
- package/dist/Callout.js.map +1 -1
- package/dist/Checkbox.js +18 -13
- package/dist/Checkbox.js.map +1 -1
- package/dist/ColorPicker.js +20 -14
- package/dist/ColorPicker.js.map +1 -1
- package/dist/DatePicker.js +17 -12
- package/dist/DatePicker.js.map +1 -1
- package/dist/DateTimePicker.js +23 -17
- package/dist/DateTimePicker.js.map +1 -1
- package/dist/Dropdown.js +18 -13
- package/dist/Dropdown.js.map +1 -1
- package/dist/Input.js +17 -12
- package/dist/Input.js.map +1 -1
- package/dist/Kbd.js +6 -6
- package/dist/Label.js +7 -8
- package/dist/Label.js.map +1 -1
- package/dist/Modal.js +23 -13
- package/dist/Modal.js.map +1 -1
- package/dist/MultiEmailInput.js +85 -29
- package/dist/MultiEmailInput.js.map +1 -1
- package/dist/NoData.js +7 -8
- package/dist/NoData.js.map +1 -1
- package/dist/Pagination.js +15 -10
- package/dist/Pagination.js.map +1 -1
- package/dist/Pane.js +23 -13
- package/dist/Pane.js.map +1 -1
- package/dist/Popover.js +7 -8
- package/dist/Popover.js.map +1 -1
- package/dist/ProgressBar.js +1 -1
- package/dist/Radio.js +18 -13
- package/dist/Radio.js.map +1 -1
- package/dist/Select.js +38 -14
- package/dist/Select.js.map +1 -1
- package/dist/Sidebar.js +16 -11
- package/dist/Sidebar.js.map +1 -1
- package/dist/Slider.js +18 -13
- package/dist/Slider.js.map +1 -1
- package/dist/Spinner.js +1 -1
- package/dist/Stepper.js +1 -1
- package/dist/Switch.js +18 -13
- package/dist/Switch.js.map +1 -1
- package/dist/Tab.js +4 -5
- package/dist/Tab.js.map +1 -1
- package/dist/Table.js +19 -14
- package/dist/Table.js.map +1 -1
- package/dist/Tag.js +3 -3
- package/dist/Textarea.js +18 -13
- package/dist/Textarea.js.map +1 -1
- package/dist/TimePicker.js +18 -13
- package/dist/TimePicker.js.map +1 -1
- package/dist/TimePickerInput.js +254 -21
- package/dist/TimePickerInput.js.map +1 -1
- package/dist/Toastr.js +15 -126
- package/dist/Toastr.js.map +1 -1
- package/dist/Tooltip.js +73 -7
- package/dist/Tooltip.js.map +1 -1
- package/dist/Tree.js +13 -8
- package/dist/Tree.js.map +1 -1
- package/dist/TreeSelect.js +16 -11
- package/dist/TreeSelect.js.map +1 -1
- package/dist/Typography.js +4 -5
- package/dist/Typography.js.map +1 -1
- package/dist/cjs/Accordion.js +25 -21
- package/dist/cjs/Accordion.js.map +1 -1
- package/dist/cjs/ActionDropdown.js +24 -16
- package/dist/cjs/ActionDropdown.js.map +1 -1
- package/dist/cjs/Alert.js +25 -14
- package/dist/cjs/Alert.js.map +1 -1
- package/dist/cjs/Avatar.js +17 -13
- package/dist/cjs/Avatar.js.map +1 -1
- package/dist/cjs/Button.js +17 -14
- package/dist/cjs/Button.js.map +1 -1
- package/dist/cjs/Callout.js +11 -8
- package/dist/cjs/Callout.js.map +1 -1
- package/dist/cjs/Checkbox.js +28 -20
- package/dist/cjs/Checkbox.js.map +1 -1
- package/dist/cjs/ColorPicker.js +33 -22
- package/dist/cjs/ColorPicker.js.map +1 -1
- package/dist/cjs/DatePicker.js +31 -21
- package/dist/cjs/DatePicker.js.map +1 -1
- package/dist/cjs/DateTimePicker.js +41 -29
- package/dist/cjs/DateTimePicker.js.map +1 -1
- package/dist/cjs/Dropdown.js +50 -39
- package/dist/cjs/Dropdown.js.map +1 -1
- package/dist/cjs/Input.js +35 -25
- package/dist/cjs/Input.js.map +1 -1
- package/dist/cjs/Kbd.js +13 -10
- package/dist/cjs/Kbd.js.map +1 -1
- package/dist/cjs/Label.js +20 -17
- package/dist/cjs/Label.js.map +1 -1
- package/dist/cjs/Modal.js +36 -21
- package/dist/cjs/Modal.js.map +1 -1
- package/dist/cjs/MultiEmailInput.js +114 -51
- package/dist/cjs/MultiEmailInput.js.map +1 -1
- package/dist/cjs/NoData.js +15 -13
- package/dist/cjs/NoData.js.map +1 -1
- package/dist/cjs/Pagination.js +24 -17
- package/dist/cjs/Pagination.js.map +1 -1
- package/dist/cjs/Pane.js +36 -21
- package/dist/cjs/Pane.js.map +1 -1
- package/dist/cjs/Popover.js +14 -12
- package/dist/cjs/Popover.js.map +1 -1
- package/dist/cjs/ProgressBar.js +3 -2
- package/dist/cjs/ProgressBar.js.map +1 -1
- package/dist/cjs/Radio.js +35 -25
- package/dist/cjs/Radio.js.map +1 -1
- package/dist/cjs/Select.js +87 -54
- package/dist/cjs/Select.js.map +1 -1
- package/dist/cjs/Sidebar.js +38 -28
- package/dist/cjs/Sidebar.js.map +1 -1
- package/dist/cjs/Slider.js +25 -17
- package/dist/cjs/Slider.js.map +1 -1
- package/dist/cjs/Spinner.js +3 -2
- package/dist/cjs/Spinner.js.map +1 -1
- package/dist/cjs/Stepper.js +7 -6
- package/dist/cjs/Stepper.js.map +1 -1
- package/dist/cjs/Switch.js +31 -23
- package/dist/cjs/Switch.js.map +1 -1
- package/dist/cjs/Tab.js +15 -12
- package/dist/cjs/Tab.js.map +1 -1
- package/dist/cjs/Table.js +55 -44
- package/dist/cjs/Table.js.map +1 -1
- package/dist/cjs/Tag.js +10 -7
- package/dist/cjs/Tag.js.map +1 -1
- package/dist/cjs/Textarea.js +34 -24
- package/dist/cjs/Textarea.js.map +1 -1
- package/dist/cjs/TimePicker.js +27 -18
- package/dist/cjs/TimePicker.js.map +1 -1
- package/dist/cjs/TimePickerInput.js +264 -22
- package/dist/cjs/TimePickerInput.js.map +1 -1
- package/dist/cjs/Toastr.js +32 -155
- package/dist/cjs/Toastr.js.map +1 -1
- package/dist/cjs/Tooltip.js +78 -8
- package/dist/cjs/Tooltip.js.map +1 -1
- package/dist/cjs/Tree.js +20 -12
- package/dist/cjs/Tree.js.map +1 -1
- package/dist/cjs/TreeSelect.js +25 -16
- package/dist/cjs/TreeSelect.js.map +1 -1
- package/dist/cjs/Typography.js +11 -8
- package/dist/cjs/Typography.js.map +1 -1
- package/dist/cjs/formik/ActionBlock.js +12 -11
- package/dist/cjs/formik/ActionBlock.js.map +1 -1
- package/dist/cjs/formik/BlockNavigation.js +29 -16
- package/dist/cjs/formik/BlockNavigation.js.map +1 -1
- package/dist/cjs/formik/Button.js +11 -10
- package/dist/cjs/formik/Button.js.map +1 -1
- package/dist/cjs/formik/Checkbox.js +24 -16
- package/dist/cjs/formik/Checkbox.js.map +1 -1
- package/dist/cjs/formik/Form.js +24 -17
- package/dist/cjs/formik/Form.js.map +1 -1
- package/dist/cjs/formik/Input.js +23 -15
- package/dist/cjs/formik/Input.js.map +1 -1
- package/dist/cjs/formik/MultiEmailInput.js +42 -15
- package/dist/cjs/formik/MultiEmailInput.js.map +1 -1
- package/dist/cjs/formik/Radio.js +26 -17
- package/dist/cjs/formik/Radio.js.map +1 -1
- package/dist/cjs/formik/Select.js +44 -16
- package/dist/cjs/formik/Select.js.map +1 -1
- package/dist/cjs/formik/Slider.js +26 -17
- package/dist/cjs/formik/Slider.js.map +1 -1
- package/dist/cjs/formik/Switch.js +24 -16
- package/dist/cjs/formik/Switch.js.map +1 -1
- package/dist/cjs/formik/Textarea.js +24 -16
- package/dist/cjs/formik/Textarea.js.map +1 -1
- package/dist/cjs/formik/TreeSelect.js +22 -14
- package/dist/cjs/formik/TreeSelect.js.map +1 -1
- package/dist/cjs/formik/index.js +44 -16
- package/dist/cjs/formik/index.js.map +1 -1
- package/dist/cjs/index-f2e36d91.js +167 -0
- package/dist/cjs/index-f2e36d91.js.map +1 -0
- package/dist/cjs/index.css +1 -1
- package/dist/cjs/index.js +49 -20
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/layouts.js +16 -11
- package/dist/cjs/layouts.js.map +1 -1
- package/dist/cjs/managers.js +2 -2
- package/dist/cjs/overlayManager.js +9 -4
- package/dist/cjs/overlayManager.js.map +1 -1
- package/dist/cjs/{react-select-creatable.esm-b39742a3.js → react-select-creatable.esm-23eddf9f.js} +130 -367
- package/dist/cjs/react-select-creatable.esm-23eddf9f.js.map +1 -0
- package/dist/cjs/{useOverlayManager-359ed795.js → useOverlayManager-1de0435e.js} +37 -75
- package/dist/cjs/useOverlayManager-1de0435e.js.map +1 -0
- package/dist/cjs/{useQueryParams-14f054b3.js → useQueryParams-a8ee2f76.js} +9 -5
- package/dist/cjs/useQueryParams-a8ee2f76.js.map +1 -0
- package/dist/formik/ActionBlock.js +7 -8
- package/dist/formik/ActionBlock.js.map +1 -1
- package/dist/formik/BlockNavigation.js +23 -13
- package/dist/formik/BlockNavigation.js.map +1 -1
- package/dist/formik/Button.js +7 -8
- package/dist/formik/Button.js.map +1 -1
- package/dist/formik/Checkbox.js +18 -13
- package/dist/formik/Checkbox.js.map +1 -1
- package/dist/formik/Form.js +8 -7
- package/dist/formik/Form.js.map +1 -1
- package/dist/formik/Input.js +17 -12
- package/dist/formik/Input.js.map +1 -1
- package/dist/formik/MultiEmailInput.js +36 -12
- package/dist/formik/MultiEmailInput.js.map +1 -1
- package/dist/formik/Radio.js +18 -13
- package/dist/formik/Radio.js.map +1 -1
- package/dist/formik/Select.js +36 -12
- package/dist/formik/Select.js.map +1 -1
- package/dist/formik/Slider.js +18 -13
- package/dist/formik/Slider.js.map +1 -1
- package/dist/formik/Switch.js +18 -13
- package/dist/formik/Switch.js.map +1 -1
- package/dist/formik/Textarea.js +18 -13
- package/dist/formik/Textarea.js.map +1 -1
- package/dist/formik/TreeSelect.js +16 -11
- package/dist/formik/TreeSelect.js.map +1 -1
- package/dist/formik/index.js +44 -16
- package/dist/formik/index.js.map +1 -1
- package/dist/index-9d5142b4.js +145 -0
- package/dist/index-9d5142b4.js.map +1 -0
- package/dist/index.css +1 -1
- package/dist/index.js +47 -18
- package/dist/index.js.map +1 -1
- package/dist/layouts.js +16 -11
- package/dist/layouts.js.map +1 -1
- package/dist/managers.js +2 -2
- package/dist/overlayManager.js +2 -2
- package/dist/{react-select-creatable.esm-93affeca.js → react-select-creatable.esm-ad71b0c0.js} +43 -289
- package/dist/react-select-creatable.esm-ad71b0c0.js.map +1 -0
- package/dist/{useOverlayManager-95a474d5.js → useOverlayManager-9d385819.js} +9 -54
- package/dist/useOverlayManager-9d385819.js.map +1 -0
- package/dist/{useQueryParams-4e7ddcf8.js → useQueryParams-dcb34865.js} +4 -4
- package/dist/{useQueryParams-4e7ddcf8.js.map → useQueryParams-dcb34865.js.map} +1 -1
- package/package.json +13 -6
- package/types/MultiEmailInput.d.ts +1 -0
- package/dist/cjs/createClass-80e17c6a.js +0 -31
- package/dist/cjs/createClass-80e17c6a.js.map +0 -1
- package/dist/cjs/defineProperty-ee86604b.js +0 -21
- package/dist/cjs/defineProperty-ee86604b.js.map +0 -1
- package/dist/cjs/extends-1b35a664.js +0 -19
- package/dist/cjs/extends-1b35a664.js.map +0 -1
- package/dist/cjs/index-302c3d37.js +0 -58
- package/dist/cjs/index-302c3d37.js.map +0 -1
- package/dist/cjs/index-5d74cfeb.js +0 -375
- package/dist/cjs/index-5d74cfeb.js.map +0 -1
- package/dist/cjs/index-6e09c7bc.js +0 -2211
- package/dist/cjs/index-6e09c7bc.js.map +0 -1
- package/dist/cjs/index-773961dd.js +0 -453
- package/dist/cjs/index-773961dd.js.map +0 -1
- package/dist/cjs/index-a8cc581e.js +0 -2383
- package/dist/cjs/index-a8cc581e.js.map +0 -1
- package/dist/cjs/index-dd592d31.js +0 -262
- package/dist/cjs/index-dd592d31.js.map +0 -1
- package/dist/cjs/objectWithoutProperties-2fed2d7d.js +0 -33
- package/dist/cjs/objectWithoutProperties-2fed2d7d.js.map +0 -1
- package/dist/cjs/react-select-creatable.esm-b39742a3.js.map +0 -1
- package/dist/cjs/slicedToArray-732a2048.js +0 -63
- package/dist/cjs/slicedToArray-732a2048.js.map +0 -1
- package/dist/cjs/toConsumableArray-418424fc.js +0 -23
- package/dist/cjs/toConsumableArray-418424fc.js.map +0 -1
- package/dist/cjs/toPropertyKey-bfa2e465.js +0 -31
- package/dist/cjs/toPropertyKey-bfa2e465.js.map +0 -1
- package/dist/cjs/useOverlayManager-359ed795.js.map +0 -1
- package/dist/cjs/useQueryParams-14f054b3.js.map +0 -1
- package/dist/createClass-601a36b2.js +0 -28
- package/dist/createClass-601a36b2.js.map +0 -1
- package/dist/defineProperty-e5245270.js +0 -19
- package/dist/defineProperty-e5245270.js.map +0 -1
- package/dist/extends-093996c9.js +0 -17
- package/dist/extends-093996c9.js.map +0 -1
- package/dist/index-25fb0168.js +0 -253
- package/dist/index-25fb0168.js.map +0 -1
- package/dist/index-34956d66.js +0 -372
- package/dist/index-34956d66.js.map +0 -1
- package/dist/index-3659771d.js +0 -56
- package/dist/index-3659771d.js.map +0 -1
- package/dist/index-7fae3611.js +0 -2381
- package/dist/index-7fae3611.js.map +0 -1
- package/dist/index-c442518b.js +0 -445
- package/dist/index-c442518b.js.map +0 -1
- package/dist/index-c8d9113c.js +0 -2193
- package/dist/index-c8d9113c.js.map +0 -1
- package/dist/objectWithoutProperties-a0edb288.js +0 -31
- package/dist/objectWithoutProperties-a0edb288.js.map +0 -1
- package/dist/react-select-creatable.esm-93affeca.js.map +0 -1
- package/dist/slicedToArray-45fa766e.js +0 -57
- package/dist/slicedToArray-45fa766e.js.map +0 -1
- package/dist/toConsumableArray-1186e144.js +0 -20
- package/dist/toConsumableArray-1186e144.js.map +0 -1
- package/dist/toPropertyKey-bdc24cb9.js +0 -28
- package/dist/toPropertyKey-bdc24cb9.js.map +0 -1
- package/dist/useOverlayManager-95a474d5.js.map +0 -1
package/dist/Input.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.js","sources":["../src/components/Input.jsx"],"sourcesContent":["import React, { useState, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { replace } from \"ramda\";\n\nimport { useId } from \"hooks\";\nimport { hyphenize } from \"utils\";\n\nimport Label from \"./Label\";\n\nconst SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\n\nconst Input = forwardRef(\n (\n {\n size = SIZES.medium,\n type = \"text\",\n label = \"\",\n error = \"\",\n suffix = null,\n prefix = null,\n disabled = false,\n helpText = \"\",\n className = \"\",\n nakedInput = false,\n contentSize = null,\n required = false,\n maxLength,\n unlimitedChars = false,\n labelProps,\n rejectCharsRegex,\n onBlur,\n disableTrimOnBlur = false,\n ...otherProps\n },\n ref\n ) => {\n const [valueInternal, setValueInternal] = useState(otherProps.value);\n const id = useId(otherProps.id);\n\n const errorId = `error_${id}`;\n const helpTextId = `helpText_${id}`;\n\n const value = otherProps.value ?? valueInternal ?? \"\";\n\n const valueLength = value?.toString().length || 0;\n const isCharacterLimitVisible = valueLength >= maxLength * 0.85;\n const maxLengthError = unlimitedChars && valueLength > maxLength;\n\n const onChange = e => {\n if (!otherProps.onChange || !otherProps.value) {\n setValueInternal(e.target.value);\n }\n otherProps.onChange?.(e);\n };\n\n const isMaxLengthPresent = !!maxLength || maxLength === 0;\n\n const handleRegexChange = e => {\n const globalRegex = new RegExp(rejectCharsRegex, \"g\");\n e.target.value = replace(globalRegex, \"\", e.target.value);\n onChange(e);\n };\n\n const handleChange = rejectCharsRegex ? handleRegexChange : onChange;\n\n const handleTrimmedChangeOnBlur = e => {\n if (disableTrimOnBlur || typeof value !== \"string\") return;\n\n const trimmedValue = value.trim();\n if (value === trimmedValue) return;\n\n e.target.value = trimmedValue;\n handleChange(e);\n };\n\n const handleOnBlur = e => {\n handleTrimmedChangeOnBlur(e);\n onBlur?.(e);\n };\n\n return (\n <div className={classnames([\"neeto-ui-input__wrapper\", className])}>\n <div className=\"neeto-ui-input__label-wrapper\">\n {label && (\n <Label\n {...{ required }}\n data-cy={`${hyphenize(label)}-input-label`}\n htmlFor={id}\n {...labelProps}\n >\n {label}\n </Label>\n )}\n {isCharacterLimitVisible && (\n <p\n className={classnames(\"neeto-ui-input__max-length\", {\n \"neeto-ui-input__max-length--error\": maxLengthError,\n })}\n >\n {valueLength}/{maxLength}\n </p>\n )}\n </div>\n <div\n className={classnames(\"neeto-ui-input\", {\n \"neeto-ui-input--naked\": !!nakedInput,\n \"neeto-ui-input--error\": !!error,\n \"neeto-ui-input--disabled\": !!disabled,\n \"neeto-ui-input--small\": size === \"small\",\n \"neeto-ui-input--medium\": size === \"medium\",\n \"neeto-ui-input--large\": size === \"large\",\n })}\n >\n {prefix && <div className=\"neeto-ui-input__prefix\">{prefix}</div>}\n <input\n aria-invalid={!!error}\n data-cy={`${hyphenize(label)}-input-field`}\n size={contentSize}\n aria-describedby={classnames({\n [errorId]: !!error,\n [helpTextId]: helpText,\n })}\n {...{\n disabled,\n id,\n ref,\n required,\n type,\n ...(isMaxLengthPresent && !unlimitedChars && { maxLength }),\n ...otherProps,\n value,\n }}\n onBlur={handleOnBlur}\n onChange={handleChange}\n />\n {suffix && <div className=\"neeto-ui-input__suffix\">{suffix}</div>}\n </div>\n {!!error && (\n <p\n className=\"neeto-ui-input__error\"\n data-cy={`${hyphenize(label)}-input-error`}\n id={errorId}\n >\n {error}\n </p>\n )}\n {helpText && (\n <p\n className=\"neeto-ui-input__help-text\"\n data-cy={`${hyphenize(label)}-input-help`}\n id={helpTextId}\n >\n {helpText}\n </p>\n )}\n </div>\n );\n }\n);\n\nInput.displayName = \"Input\";\n\nInput.propTypes = {\n /**\n * To specify a unique ID to the Input component.\n */\n id: PropTypes.string,\n /**\n * To specify the size of Input.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify the type of Input field.\n */\n type: PropTypes.string,\n /**\n * To specify the label props to be passed to the Label component.\n */\n labelProps: PropTypes.object,\n /**\n * To specify a maximum character limit to the Input. Charater limit is visible only if the Input value is greater than or equal to 85% of the maximum character limit.\n */\n maxLength: PropTypes.number,\n /**\n * To be used along with maxLength prop. When set to true the character limit will not be enforced and character count will be shown in error state if the character limit is exceeded.\n */\n unlimitedChars: PropTypes.bool,\n /**\n * To specify the text to be displayed above the Input.\n */\n label: PropTypes.string,\n /**\n * To specify the error message to be shown in the Input field.\n */\n error: PropTypes.string,\n /**\n * To specify the content to be added at the end of the Input field.\n */\n suffix: PropTypes.node,\n /**\n * To specify the content to be added at the beginning of the Input field.\n */\n prefix: PropTypes.node,\n /**\n * To specify whether the Input field is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * To specify the text that appears below the Input field.\n */\n helpText: PropTypes.string,\n /**\n * To specify external classNames that can be provided as overrides to the main wrapper.\n */\n className: PropTypes.string,\n /**\n * To create an Input field without any borders.\n */\n nakedInput: PropTypes.bool,\n /**\n * To specify the value to be passed as size attribute to the Input field.\n */\n contentSize: PropTypes.number,\n /**\n * To specify whether the Input field is required or not.\n */\n required: PropTypes.bool,\n /**\n * To specify a regex to be matched against the user input. Any character that matches it\n * cannot be input by the user. It will also prevent such characters from being pasted into the input.\n */\n rejectCharsRegex: PropTypes.instanceOf(RegExp),\n /**\n * To disable leading and trailing white spaces onBlur.\n */\n disableTrimOnBlur: PropTypes.bool,\n};\n\nexport default Input;\n"],"names":["SIZES","small","medium","large","Input","forwardRef","_ref","ref","_ref2","_otherProps$value","_ref$size","size","_ref$type","type","_ref$label","label","_ref$error","error","_ref$suffix","suffix","_ref$prefix","prefix","_ref$disabled","disabled","_ref$helpText","helpText","_ref$className","className","_ref$nakedInput","nakedInput","_ref$contentSize","contentSize","_ref$required","required","maxLength","_ref$unlimitedChars","unlimitedChars","labelProps","rejectCharsRegex","onBlur","_ref$disableTrimOnBlu","disableTrimOnBlur","otherProps","_objectWithoutProperties","_excluded","_useState","useState","value","_useState2","_slicedToArray","valueInternal","setValueInternal","id","useId","errorId","concat","helpTextId","valueLength","toString","length","isCharacterLimitVisible","maxLengthError","onChange","e","_otherProps$onChange","target","call","isMaxLengthPresent","handleRegexChange","globalRegex","RegExp","replace","handleChange","handleTrimmedChangeOnBlur","trimmedValue","trim","handleOnBlur","React","createElement","classnames","Label","_extends","hyphenize","htmlFor","_defineProperty","_objectSpread","displayName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Input.js","sources":["../src/components/Input.jsx"],"sourcesContent":["import React, { useState, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { replace } from \"ramda\";\n\nimport { useId } from \"hooks\";\nimport { hyphenize } from \"utils\";\n\nimport Label from \"./Label\";\n\nconst SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\n\nconst Input = forwardRef(\n (\n {\n size = SIZES.medium,\n type = \"text\",\n label = \"\",\n error = \"\",\n suffix = null,\n prefix = null,\n disabled = false,\n helpText = \"\",\n className = \"\",\n nakedInput = false,\n contentSize = null,\n required = false,\n maxLength,\n unlimitedChars = false,\n labelProps,\n rejectCharsRegex,\n onBlur,\n disableTrimOnBlur = false,\n ...otherProps\n },\n ref\n ) => {\n const [valueInternal, setValueInternal] = useState(otherProps.value);\n const id = useId(otherProps.id);\n\n const errorId = `error_${id}`;\n const helpTextId = `helpText_${id}`;\n\n const value = otherProps.value ?? valueInternal ?? \"\";\n\n const valueLength = value?.toString().length || 0;\n const isCharacterLimitVisible = valueLength >= maxLength * 0.85;\n const maxLengthError = unlimitedChars && valueLength > maxLength;\n\n const onChange = e => {\n if (!otherProps.onChange || !otherProps.value) {\n setValueInternal(e.target.value);\n }\n otherProps.onChange?.(e);\n };\n\n const isMaxLengthPresent = !!maxLength || maxLength === 0;\n\n const handleRegexChange = e => {\n const globalRegex = new RegExp(rejectCharsRegex, \"g\");\n e.target.value = replace(globalRegex, \"\", e.target.value);\n onChange(e);\n };\n\n const handleChange = rejectCharsRegex ? handleRegexChange : onChange;\n\n const handleTrimmedChangeOnBlur = e => {\n if (disableTrimOnBlur || typeof value !== \"string\") return;\n\n const trimmedValue = value.trim();\n if (value === trimmedValue) return;\n\n e.target.value = trimmedValue;\n handleChange(e);\n };\n\n const handleOnBlur = e => {\n handleTrimmedChangeOnBlur(e);\n onBlur?.(e);\n };\n\n return (\n <div className={classnames([\"neeto-ui-input__wrapper\", className])}>\n <div className=\"neeto-ui-input__label-wrapper\">\n {label && (\n <Label\n {...{ required }}\n data-cy={`${hyphenize(label)}-input-label`}\n htmlFor={id}\n {...labelProps}\n >\n {label}\n </Label>\n )}\n {isCharacterLimitVisible && (\n <p\n className={classnames(\"neeto-ui-input__max-length\", {\n \"neeto-ui-input__max-length--error\": maxLengthError,\n })}\n >\n {valueLength}/{maxLength}\n </p>\n )}\n </div>\n <div\n className={classnames(\"neeto-ui-input\", {\n \"neeto-ui-input--naked\": !!nakedInput,\n \"neeto-ui-input--error\": !!error,\n \"neeto-ui-input--disabled\": !!disabled,\n \"neeto-ui-input--small\": size === \"small\",\n \"neeto-ui-input--medium\": size === \"medium\",\n \"neeto-ui-input--large\": size === \"large\",\n })}\n >\n {prefix && <div className=\"neeto-ui-input__prefix\">{prefix}</div>}\n <input\n aria-invalid={!!error}\n data-cy={`${hyphenize(label)}-input-field`}\n size={contentSize}\n aria-describedby={classnames({\n [errorId]: !!error,\n [helpTextId]: helpText,\n })}\n {...{\n disabled,\n id,\n ref,\n required,\n type,\n ...(isMaxLengthPresent && !unlimitedChars && { maxLength }),\n ...otherProps,\n value,\n }}\n onBlur={handleOnBlur}\n onChange={handleChange}\n />\n {suffix && <div className=\"neeto-ui-input__suffix\">{suffix}</div>}\n </div>\n {!!error && (\n <p\n className=\"neeto-ui-input__error\"\n data-cy={`${hyphenize(label)}-input-error`}\n id={errorId}\n >\n {error}\n </p>\n )}\n {helpText && (\n <p\n className=\"neeto-ui-input__help-text\"\n data-cy={`${hyphenize(label)}-input-help`}\n id={helpTextId}\n >\n {helpText}\n </p>\n )}\n </div>\n );\n }\n);\n\nInput.displayName = \"Input\";\n\nInput.propTypes = {\n /**\n * To specify a unique ID to the Input component.\n */\n id: PropTypes.string,\n /**\n * To specify the size of Input.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify the type of Input field.\n */\n type: PropTypes.string,\n /**\n * To specify the label props to be passed to the Label component.\n */\n labelProps: PropTypes.object,\n /**\n * To specify a maximum character limit to the Input. Charater limit is visible only if the Input value is greater than or equal to 85% of the maximum character limit.\n */\n maxLength: PropTypes.number,\n /**\n * To be used along with maxLength prop. When set to true the character limit will not be enforced and character count will be shown in error state if the character limit is exceeded.\n */\n unlimitedChars: PropTypes.bool,\n /**\n * To specify the text to be displayed above the Input.\n */\n label: PropTypes.string,\n /**\n * To specify the error message to be shown in the Input field.\n */\n error: PropTypes.string,\n /**\n * To specify the content to be added at the end of the Input field.\n */\n suffix: PropTypes.node,\n /**\n * To specify the content to be added at the beginning of the Input field.\n */\n prefix: PropTypes.node,\n /**\n * To specify whether the Input field is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * To specify the text that appears below the Input field.\n */\n helpText: PropTypes.string,\n /**\n * To specify external classNames that can be provided as overrides to the main wrapper.\n */\n className: PropTypes.string,\n /**\n * To create an Input field without any borders.\n */\n nakedInput: PropTypes.bool,\n /**\n * To specify the value to be passed as size attribute to the Input field.\n */\n contentSize: PropTypes.number,\n /**\n * To specify whether the Input field is required or not.\n */\n required: PropTypes.bool,\n /**\n * To specify a regex to be matched against the user input. Any character that matches it\n * cannot be input by the user. It will also prevent such characters from being pasted into the input.\n */\n rejectCharsRegex: PropTypes.instanceOf(RegExp),\n /**\n * To disable leading and trailing white spaces onBlur.\n */\n disableTrimOnBlur: PropTypes.bool,\n};\n\nexport default Input;\n"],"names":["SIZES","small","medium","large","Input","forwardRef","_ref","ref","_ref2","_otherProps$value","_ref$size","size","_ref$type","type","_ref$label","label","_ref$error","error","_ref$suffix","suffix","_ref$prefix","prefix","_ref$disabled","disabled","_ref$helpText","helpText","_ref$className","className","_ref$nakedInput","nakedInput","_ref$contentSize","contentSize","_ref$required","required","maxLength","_ref$unlimitedChars","unlimitedChars","labelProps","rejectCharsRegex","onBlur","_ref$disableTrimOnBlu","disableTrimOnBlur","otherProps","_objectWithoutProperties","_excluded","_useState","useState","value","_useState2","_slicedToArray","valueInternal","setValueInternal","id","useId","errorId","concat","helpTextId","valueLength","toString","length","isCharacterLimitVisible","maxLengthError","onChange","e","_otherProps$onChange","target","call","isMaxLengthPresent","handleRegexChange","globalRegex","RegExp","replace","handleChange","handleTrimmedChangeOnBlur","trimmedValue","trim","handleOnBlur","React","createElement","classnames","Label","_extends","hyphenize","htmlFor","_defineProperty","_objectSpread","displayName"],"mappings":"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"}
|
package/dist/Kbd.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import _extends from '@babel/runtime/helpers/extends';
|
|
2
|
+
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
3
3
|
import React__default from 'react';
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import '
|
|
4
|
+
import classnames from 'classnames';
|
|
5
|
+
import Tooltip from './Tooltip.js';
|
|
6
|
+
import '@babel/runtime/helpers/slicedToArray';
|
|
7
|
+
import '@tippyjs/react';
|
|
7
8
|
import 'tippy.js';
|
|
8
|
-
import 'react-dom';
|
|
9
9
|
|
|
10
10
|
var _excluded = ["keyName", "className", "tooltipProps"];
|
|
11
11
|
var Kbd = function Kbd(_ref) {
|
package/dist/Label.js
CHANGED
|
@@ -1,19 +1,18 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
1
|
+
import _extends from '@babel/runtime/helpers/extends';
|
|
2
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
3
|
+
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
4
4
|
import React__default, { useRef } from 'react';
|
|
5
|
-
import
|
|
5
|
+
import classnames from 'classnames';
|
|
6
6
|
import { Help } from '@bigbinary/neeto-icons';
|
|
7
7
|
import Button from './Button.js';
|
|
8
8
|
import Popover from './Popover.js';
|
|
9
|
-
import
|
|
9
|
+
import Tooltip from './Tooltip.js';
|
|
10
10
|
import Typography from './Typography.js';
|
|
11
|
-
import './toPropertyKey-bdc24cb9.js';
|
|
12
11
|
import 'react-router-dom';
|
|
13
12
|
import './motion-087daf52.js';
|
|
14
|
-
import '
|
|
13
|
+
import '@babel/runtime/helpers/slicedToArray';
|
|
14
|
+
import '@tippyjs/react';
|
|
15
15
|
import 'tippy.js';
|
|
16
|
-
import 'react-dom';
|
|
17
16
|
|
|
18
17
|
var _excluded = ["children", "className", "required", "helpIconProps"],
|
|
19
18
|
_excluded2 = ["onClick", "icon", "tooltipProps", "popoverProps", "className"],
|
package/dist/Label.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Label.js","sources":["../src/components/Label.jsx"],"sourcesContent":["import React, { useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Help } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\n\nimport Button from \"./Button\";\nimport Popover from \"./Popover\";\nimport Tooltip from \"./Tooltip\";\nimport Typography from \"./Typography\";\n\nconst { Title } = Popover;\n\nconst Label = ({\n children,\n className = \"\",\n required = false,\n helpIconProps = null,\n ...otherProps\n}) => {\n const {\n onClick,\n icon,\n tooltipProps,\n popoverProps,\n className: helpIconClassName,\n ...otherHelpIconProps\n } = helpIconProps || {};\n\n const { title, description, helpLinkProps, ...otherPopoverProps } =\n popoverProps || {};\n\n const HelpIcon = icon || Help;\n const popoverReferenceElement = useRef();\n\n const renderHelpIcon = () => (\n <span\n {...{ onClick }}\n ref={popoverProps ? popoverReferenceElement : undefined}\n className={classnames(\"neeto-ui-label__help-icon-wrap\", {\n [helpIconClassName]: helpIconClassName,\n })}\n >\n <HelpIcon size={16} {...otherHelpIconProps} />\n </span>\n );\n\n return (\n <label\n className={classnames(\n \"neeto-ui-label neeto-ui-flex neeto-ui-items-center\",\n className\n )}\n {...otherProps}\n >\n {children}\n {required && <span aria-hidden>*</span>}\n {helpIconProps && (\n <>\n {tooltipProps ? (\n <Tooltip {...tooltipProps}>{renderHelpIcon()}</Tooltip>\n ) : popoverProps ? (\n <>\n {renderHelpIcon()}\n <Popover\n reference={popoverReferenceElement}\n {...otherPopoverProps}\n >\n <div className=\"flex flex-col\">\n {title && (\n <Title\n data-cy=\"help-popover-title\"\n data-testid=\"help-popover-title\"\n >\n {title}\n </Title>\n )}\n {typeof description === \"string\" ? (\n <Typography\n data-cy=\"help-popover-description\"\n data-testid=\"help-popover-description\"\n lineHeight=\"normal\"\n style=\"body2\"\n weight=\"normal\"\n >\n {description}\n </Typography>\n ) : (\n description\n )}\n {helpLinkProps && (\n <Button\n className=\"neeto-ui-mt-3\"\n data-cy=\"help-popover-link-button\"\n size=\"small\"\n {...helpLinkProps}\n data-testid=\"help-popover-link-button\"\n style=\"link\"\n target=\"_blank\"\n />\n )}\n </div>\n </Popover>\n </>\n ) : (\n renderHelpIcon()\n )}\n </>\n )}\n </label>\n );\n};\n\nLabel.propTypes = {\n /**\n * To specify the content to be rendered inside the Label.\n */\n children: PropTypes.node,\n /**\n * Provide external classnames to Label component.\n */\n className: PropTypes.string,\n /**\n * To specify whether to show the required asterisk.\n */\n required: PropTypes.bool,\n /**\n * Props for the help icon\n */\n helpIconProps: PropTypes.shape({\n onClick: PropTypes.func,\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n tooltipProps: PropTypes.shape({ ...Tooltip.propTypes }),\n popoverProps: PropTypes.shape({\n title: PropTypes.node,\n description: PropTypes.node,\n helpLinkProps: PropTypes.shape({ ...Button.propTypes }),\n }),\n className: PropTypes.string,\n }),\n};\n\nexport default Label;\n"],"names":["Title","Popover","Label","_ref","children","_ref$className","className","_ref$required","required","_ref$helpIconProps","helpIconProps","otherProps","_objectWithoutProperties","_excluded","_ref2","onClick","icon","tooltipProps","popoverProps","helpIconClassName","otherHelpIconProps","_excluded2","_ref3","title","description","helpLinkProps","otherPopoverProps","_excluded3","HelpIcon","Help","popoverReferenceElement","useRef","renderHelpIcon","React","createElement","ref","undefined","classnames","_defineProperty","_extends","size","Fragment","Tooltip","reference","Typography","lineHeight","style","weight","Button","target"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Label.js","sources":["../src/components/Label.jsx"],"sourcesContent":["import React, { useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Help } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\n\nimport Button from \"./Button\";\nimport Popover from \"./Popover\";\nimport Tooltip from \"./Tooltip\";\nimport Typography from \"./Typography\";\n\nconst { Title } = Popover;\n\nconst Label = ({\n children,\n className = \"\",\n required = false,\n helpIconProps = null,\n ...otherProps\n}) => {\n const {\n onClick,\n icon,\n tooltipProps,\n popoverProps,\n className: helpIconClassName,\n ...otherHelpIconProps\n } = helpIconProps || {};\n\n const { title, description, helpLinkProps, ...otherPopoverProps } =\n popoverProps || {};\n\n const HelpIcon = icon || Help;\n const popoverReferenceElement = useRef();\n\n const renderHelpIcon = () => (\n <span\n {...{ onClick }}\n ref={popoverProps ? popoverReferenceElement : undefined}\n className={classnames(\"neeto-ui-label__help-icon-wrap\", {\n [helpIconClassName]: helpIconClassName,\n })}\n >\n <HelpIcon size={16} {...otherHelpIconProps} />\n </span>\n );\n\n return (\n <label\n className={classnames(\n \"neeto-ui-label neeto-ui-flex neeto-ui-items-center\",\n className\n )}\n {...otherProps}\n >\n {children}\n {required && <span aria-hidden>*</span>}\n {helpIconProps && (\n <>\n {tooltipProps ? (\n <Tooltip {...tooltipProps}>{renderHelpIcon()}</Tooltip>\n ) : popoverProps ? (\n <>\n {renderHelpIcon()}\n <Popover\n reference={popoverReferenceElement}\n {...otherPopoverProps}\n >\n <div className=\"flex flex-col\">\n {title && (\n <Title\n data-cy=\"help-popover-title\"\n data-testid=\"help-popover-title\"\n >\n {title}\n </Title>\n )}\n {typeof description === \"string\" ? (\n <Typography\n data-cy=\"help-popover-description\"\n data-testid=\"help-popover-description\"\n lineHeight=\"normal\"\n style=\"body2\"\n weight=\"normal\"\n >\n {description}\n </Typography>\n ) : (\n description\n )}\n {helpLinkProps && (\n <Button\n className=\"neeto-ui-mt-3\"\n data-cy=\"help-popover-link-button\"\n size=\"small\"\n {...helpLinkProps}\n data-testid=\"help-popover-link-button\"\n style=\"link\"\n target=\"_blank\"\n />\n )}\n </div>\n </Popover>\n </>\n ) : (\n renderHelpIcon()\n )}\n </>\n )}\n </label>\n );\n};\n\nLabel.propTypes = {\n /**\n * To specify the content to be rendered inside the Label.\n */\n children: PropTypes.node,\n /**\n * Provide external classnames to Label component.\n */\n className: PropTypes.string,\n /**\n * To specify whether to show the required asterisk.\n */\n required: PropTypes.bool,\n /**\n * Props for the help icon\n */\n helpIconProps: PropTypes.shape({\n onClick: PropTypes.func,\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n tooltipProps: PropTypes.shape({ ...Tooltip.propTypes }),\n popoverProps: PropTypes.shape({\n title: PropTypes.node,\n description: PropTypes.node,\n helpLinkProps: PropTypes.shape({ ...Button.propTypes }),\n }),\n className: PropTypes.string,\n }),\n};\n\nexport default Label;\n"],"names":["Title","Popover","Label","_ref","children","_ref$className","className","_ref$required","required","_ref$helpIconProps","helpIconProps","otherProps","_objectWithoutProperties","_excluded","_ref2","onClick","icon","tooltipProps","popoverProps","helpIconClassName","otherHelpIconProps","_excluded2","_ref3","title","description","helpLinkProps","otherPopoverProps","_excluded3","HelpIcon","Help","popoverReferenceElement","useRef","renderHelpIcon","React","createElement","ref","undefined","classnames","_defineProperty","_extends","size","Fragment","Tooltip","reference","Typography","lineHeight","style","weight","Button","target"],"mappings":"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"}
|
package/dist/Modal.js
CHANGED
|
@@ -1,27 +1,37 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
1
|
+
import _extends from '@babel/runtime/helpers/extends';
|
|
2
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
3
|
+
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
4
|
+
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
5
5
|
import React__default, { useState, useRef } from 'react';
|
|
6
|
-
import
|
|
6
|
+
import classnames from 'classnames';
|
|
7
7
|
import { Close } from '@bigbinary/neeto-icons';
|
|
8
|
-
import { u as useOverlayManager, a as useOverlay, P as Portal, C as CSSTransition, B as Backdrop } from './useOverlayManager-
|
|
8
|
+
import { u as useOverlayManager, a as useOverlay, P as Portal, C as CSSTransition, B as Backdrop } from './useOverlayManager-9d385819.js';
|
|
9
9
|
import Button from './Button.js';
|
|
10
10
|
import 'react-router-dom';
|
|
11
|
-
import '
|
|
11
|
+
import 'qs';
|
|
12
12
|
import Typography from './Typography.js';
|
|
13
|
-
import '
|
|
13
|
+
import '@babel/runtime/helpers/esm/extends';
|
|
14
|
+
import '@babel/runtime/helpers/esm/objectWithoutPropertiesLoose';
|
|
15
|
+
import '@babel/runtime/helpers/esm/inheritsLoose';
|
|
14
16
|
import './index-283bc6a6.js';
|
|
15
17
|
import 'react-dom';
|
|
18
|
+
import '@babel/runtime/helpers/esm/assertThisInitialized';
|
|
16
19
|
import 'ramda';
|
|
17
|
-
import '
|
|
20
|
+
import '@bigbinary/neeto-hotkeys';
|
|
18
21
|
import './overlayManager.js';
|
|
19
|
-
import '
|
|
22
|
+
import '@babel/runtime/helpers/classCallCheck';
|
|
23
|
+
import '@babel/runtime/helpers/createClass';
|
|
24
|
+
import './index-9d5142b4.js';
|
|
25
|
+
import 'dayjs';
|
|
26
|
+
import 'dayjs/plugin/localeData';
|
|
27
|
+
import 'dayjs/plugin/utc';
|
|
28
|
+
import 'dayjs/plugin/weekday';
|
|
29
|
+
import 'dayjs/plugin/weekOfYear';
|
|
30
|
+
import '@bigbinary/neeto-cist';
|
|
20
31
|
import './motion-087daf52.js';
|
|
21
|
-
import './
|
|
32
|
+
import './Tooltip.js';
|
|
33
|
+
import '@tippyjs/react';
|
|
22
34
|
import 'tippy.js';
|
|
23
|
-
import '@bigbinary/neeto-cist';
|
|
24
|
-
import 'util';
|
|
25
35
|
|
|
26
36
|
var Body = function Body(_ref) {
|
|
27
37
|
var children = _ref.children,
|
package/dist/Modal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.js","sources":["../src/components/Modal/Body.jsx","../src/components/Modal/Footer.jsx","../src/components/Modal/Header.jsx","../src/components/Modal/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Body = ({ children, className, dataCy }) => (\n <div\n className={classnames(\"neeto-ui-modal__body\", className)}\n data-cy={dataCy ?? \"modal-body\"}\n >\n {children}\n </div>\n);\n\nBody.propTypes = {\n /**\n * To specify className to be applied to the Modal Body.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Body.\n */\n children: PropTypes.node,\n};\n\nexport default Body;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Footer = ({ children, className, dataCy }) => (\n <div\n className={classnames(\"neeto-ui-modal__footer\", className)}\n data-cy={dataCy ?? \"modal-footer\"}\n >\n {children}\n </div>\n);\n\nFooter.propTypes = {\n /**\n * To specify className to be applied to the Modal Footer.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Footer.\n */\n children: PropTypes.node,\n};\n\nexport default Footer;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport Typography from \"../Typography\";\n\nconst Header = ({ description = \"\", children, className, dataCy }) => (\n <div\n className={classnames(\"neeto-ui-modal__header\", className)}\n data-cy={dataCy ?? \"modal-header\"}\n >\n {children}\n {description && (\n <div className=\"neeto-ui-modal__header-desc\" data-cy=\"modal-header-desc\">\n <Typography lineHeight=\"normal\" style=\"body2\">\n {description}\n </Typography>\n </div>\n )}\n </div>\n);\n\nHeader.propTypes = {\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify the short description of the Modal.\n */\n description: PropTypes.string,\n /**\n * To specify className to be applied to the Modal Header container.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Header.\n */\n children: PropTypes.node,\n};\n\nexport default Header;\n","import React, { useRef, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Close } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport { CSSTransition } from \"react-transition-group\";\n\nimport Backdrop from \"atoms/Backdrop\";\nimport Portal from \"atoms/Portal\";\nimport Button from \"components/Button\";\nimport { useOverlayManager, useOverlay } from \"hooks\";\n\nimport Body from \"./Body\";\nimport Footer from \"./Footer\";\nimport Header from \"./Header\";\n\nconst SIZES = {\n small: \"small\",\n medium: \"medium\",\n large: \"large\",\n fullScreen: \"fullScreen\",\n};\n\nconst Modal = ({\n size = SIZES.medium,\n isOpen = false,\n onClose = () => {},\n children,\n finalFocusRef,\n initialFocusRef,\n className = \"\",\n closeOnEsc = true,\n closeButton = true,\n backdropClassName = \"\",\n blockScrollOnMount = true,\n closeOnOutsideClick = true,\n ...otherProps\n}) => {\n const [hasTransitionCompleted, setHasTransitionCompleted] = useState(false);\n\n const modalWrapper = useRef(null);\n const backdropRef = useRef(null);\n\n useOverlayManager(modalWrapper, isOpen);\n\n const { handleOverlayClose, setFocusField } = useOverlay({\n isOpen,\n initialFocusRef,\n finalFocusRef,\n overlayWrapper: modalWrapper,\n onClose,\n backdropRef,\n closeOnOutsideClick,\n closeOnEsc,\n blockScrollOnMount,\n hasTransitionCompleted,\n });\n\n const isFullScreenModal = size === SIZES.fullScreen;\n\n return (\n <Portal rootId=\"neeto-ui-portal\">\n <CSSTransition\n unmountOnExit\n appear={isOpen}\n classNames=\"neeto-ui-modal\"\n in={isOpen}\n timeout={300}\n onEntered={() => setHasTransitionCompleted(true)}\n onExited={() => setHasTransitionCompleted(false)}\n >\n <Backdrop\n data-testid=\"backdrop\"\n key=\"modal-backdrop\"\n ref={backdropRef}\n className={classnames(\n \"neeto-ui-modal__backdrop\",\n {\n \"neeto-ui-modal__backdrop--fullscreen\": isFullScreenModal,\n },\n backdropClassName\n )}\n >\n <div\n aria-modal\n key=\"modal-wrapper\"\n ref={modalWrapper}\n role=\"dialog\"\n className={classnames(\"neeto-ui-modal__wrapper\", {\n \"neeto-ui-modal__wrapper--small\": size === SIZES.small,\n \"neeto-ui-modal__wrapper--medium\": size === SIZES.medium,\n \"neeto-ui-modal__wrapper--large\": size === SIZES.large,\n \"neeto-ui-modal__wrapper--fullscreen\": isFullScreenModal,\n [className]: className,\n })}\n {...otherProps}\n >\n {closeButton && (\n <Button\n aria-label=\"Close\"\n className=\"neeto-ui-modal__close\"\n data-cy=\"modal-close-button\"\n data-testid=\"close-button\"\n icon={Close}\n size={isFullScreenModal ? \"large\" : \"small\"}\n style={isFullScreenModal ? \"secondary\" : \"text\"}\n onClick={handleOverlayClose}\n />\n )}\n {typeof children === \"function\"\n ? children({ setFocusField })\n : children}\n </div>\n </Backdrop>\n </CSSTransition>\n </Portal>\n );\n};\n\nModal.propTypes = {\n /**\n * To specify the size of the Modal.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify whether the Modal is open or not.\n */\n isOpen: PropTypes.bool,\n /**\n * To specify the callback which will be invoked when the Modal is closed.\n */\n onClose: PropTypes.func,\n /**\n * To specify the content to be rendered inside the Modal component.\n */\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n /**\n * To provide external classNames to the Modal.\n */\n className: PropTypes.string,\n /**\n * To close the Modal on pressing the Esc key.\n */\n closeOnEsc: PropTypes.bool,\n /**\n * To specify whether the close button of the Modal should be displayed or not.\n */\n closeButton: PropTypes.bool,\n /**\n * To add custom classes to backdrop component.\n */\n backdropClassName: PropTypes.string,\n /**\n * To close on clicking outside the Modal content.\n */\n closeOnOutsideClick: PropTypes.bool,\n /*\n * To specify the ref of the element which will receive focus when the Modal is closed.\n * If not specified, the focus will be set to the element which was focused when the Modal was opened.\n * If the Modal was opened by clicking on a button, then the focus will be set to the button.\n * */\n finalFocusRef: PropTypes.object,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify the ref of the element which will receive focus when the Modal is opened.\n * If not specified, the focus will be set to the first focusable element inside the Modal.\n * */\n initialFocusRef: PropTypes.object,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify whether the scroll should be blocked when the Modal is opened.\n * */\n blockScrollOnMount: PropTypes.bool,\n};\n\nModal.Header = Header;\nModal.Body = Body;\nModal.Footer = Footer;\n\nexport default Modal;\n"],"names":["Body","_ref","children","className","dataCy","React","createElement","classnames","Footer","Header","_ref$description","description","Typography","lineHeight","style","SIZES","small","medium","large","fullScreen","Modal","_ref$size","size","_ref$isOpen","isOpen","_ref$onClose","onClose","finalFocusRef","initialFocusRef","_ref$className","_ref$closeOnEsc","closeOnEsc","_ref$closeButton","closeButton","_ref$backdropClassNam","backdropClassName","_ref$blockScrollOnMou","blockScrollOnMount","_ref$closeOnOutsideCl","closeOnOutsideClick","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","hasTransitionCompleted","setHasTransitionCompleted","modalWrapper","useRef","backdropRef","useOverlayManager","_useOverlay","useOverlay","overlayWrapper","handleOverlayClose","setFocusField","isFullScreenModal","Portal","rootId","CSSTransition","unmountOnExit","appear","classNames","timeout","onEntered","onExited","Backdrop","key","ref","_extends","role","_defineProperty","Button","icon","Close","onClick"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAMA,IAAI,GAAG,SAAPA,IAAIA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAEC,SAAS,GAAAF,IAAA,CAATE,SAAS;IAAEC,MAAM,GAAAH,IAAA,CAANG,MAAM,CAAA;EAAA,oBACzCC,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEH,IAAAA,SAAS,EAAEI,UAAU,CAAC,sBAAsB,EAAEJ,SAAS,CAAE;AACzD,IAAA,SAAA,EAASC,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,KAAA,CAAA,GAANA,MAAM,GAAI,YAAA;AAAa,GAAA,EAE/BF,QAAQ,CACL,CAAA;AAAA,CACP;;ACPD,IAAMM,MAAM,GAAG,SAATA,MAAMA,CAAAP,IAAA,EAAA;AAAA,EAAA,IAAMC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAEC,SAAS,GAAAF,IAAA,CAATE,SAAS;IAAEC,MAAM,GAAAH,IAAA,CAANG,MAAM,CAAA;EAAA,oBAC3CC,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEH,IAAAA,SAAS,EAAEI,UAAU,CAAC,wBAAwB,EAAEJ,SAAS,CAAE;AAC3D,IAAA,SAAA,EAASC,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,KAAA,CAAA,GAANA,MAAM,GAAI,cAAA;AAAe,GAAA,EAEjCF,QAAQ,CACL,CAAA;AAAA,CACP;;ACLD,IAAMO,MAAM,GAAG,SAATA,MAAMA,CAAAR,IAAA,EAAA;AAAA,EAAA,IAAAS,gBAAA,GAAAT,IAAA,CAAMU,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,gBAAA;IAAER,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IAAEC,SAAS,GAAAF,IAAA,CAATE,SAAS;IAAEC,MAAM,GAAAH,IAAA,CAANG,MAAM,CAAA;EAAA,oBAC7DC,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEH,IAAAA,SAAS,EAAEI,UAAU,CAAC,wBAAwB,EAAEJ,SAAS,CAAE;AAC3D,IAAA,SAAA,EAASC,MAAM,KAAA,IAAA,IAANA,MAAM,KAAA,KAAA,CAAA,GAANA,MAAM,GAAI,cAAA;AAAe,GAAA,EAEjCF,QAAQ,EACRS,WAAW,iBACVN,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKH,IAAAA,SAAS,EAAC,6BAA6B;IAAC,SAAQ,EAAA,mBAAA;AAAmB,GAAA,eACtEE,cAAA,CAAAC,aAAA,CAACM,UAAU,EAAA;AAACC,IAAAA,UAAU,EAAC,QAAQ;AAACC,IAAAA,KAAK,EAAC,OAAA;GACnCH,EAAAA,WAAW,CACD,CAEhB,CACG,CAAA;AAAA,CACP;;;ACLD,IAAMI,KAAK,GAAG;AACZC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,KAAK,EAAE,OAAO;AACdC,EAAAA,UAAU,EAAE,YAAA;AACd,CAAC,CAAA;AAED,IAAMC,KAAK,GAAG,SAARA,KAAKA,CAAAnB,IAAA,EAcL;AAAA,EAAA,IAAAoB,SAAA,GAAApB,IAAA,CAbJqB,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAA,KAAA,CAAA,GAAGN,KAAK,CAACE,MAAM,GAAAI,SAAA;IAAAE,WAAA,GAAAtB,IAAA,CACnBuB,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,WAAA;IAAAE,YAAA,GAAAxB,IAAA,CACdyB,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAA,KAAA,CAAA,GAAG,YAAM,EAAE,GAAAA,YAAA;IAClBvB,QAAQ,GAAAD,IAAA,CAARC,QAAQ;IACRyB,aAAa,GAAA1B,IAAA,CAAb0B,aAAa;IACbC,eAAe,GAAA3B,IAAA,CAAf2B,eAAe;IAAAC,cAAA,GAAA5B,IAAA,CACfE,SAAS;AAATA,IAAAA,SAAS,GAAA0B,cAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,cAAA;IAAAC,eAAA,GAAA7B,IAAA,CACd8B,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,eAAA;IAAAE,gBAAA,GAAA/B,IAAA,CACjBgC,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,gBAAA;IAAAE,qBAAA,GAAAjC,IAAA,CAClBkC,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,qBAAA;IAAAE,qBAAA,GAAAnC,IAAA,CACtBoC,kBAAkB;AAAlBA,IAAAA,kBAAkB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,qBAAA;IAAAE,qBAAA,GAAArC,IAAA,CACzBsC,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,qBAAA;AACvBE,IAAAA,UAAU,GAAAC,wBAAA,CAAAxC,IAAA,EAAAyC,SAAA,CAAA,CAAA;AAEb,EAAA,IAAAC,SAAA,GAA4DC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAApEI,IAAAA,sBAAsB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,yBAAyB,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AAExD,EAAA,IAAMI,YAAY,GAAGC,MAAM,CAAC,IAAI,CAAC,CAAA;AACjC,EAAA,IAAMC,WAAW,GAAGD,MAAM,CAAC,IAAI,CAAC,CAAA;AAEhCE,EAAAA,iBAAiB,CAACH,YAAY,EAAEzB,MAAM,CAAC,CAAA;EAEvC,IAAA6B,WAAA,GAA8CC,UAAU,CAAC;AACvD9B,MAAAA,MAAM,EAANA,MAAM;AACNI,MAAAA,eAAe,EAAfA,eAAe;AACfD,MAAAA,aAAa,EAAbA,aAAa;AACb4B,MAAAA,cAAc,EAAEN,YAAY;AAC5BvB,MAAAA,OAAO,EAAPA,OAAO;AACPyB,MAAAA,WAAW,EAAXA,WAAW;AACXZ,MAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBR,MAAAA,UAAU,EAAVA,UAAU;AACVM,MAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBU,MAAAA,sBAAsB,EAAtBA,sBAAAA;AACF,KAAC,CAAC;IAXMS,kBAAkB,GAAAH,WAAA,CAAlBG,kBAAkB;IAAEC,aAAa,GAAAJ,WAAA,CAAbI,aAAa,CAAA;AAazC,EAAA,IAAMC,iBAAiB,GAAGpC,IAAI,KAAKP,KAAK,CAACI,UAAU,CAAA;AAEnD,EAAA,oBACEd,cAAA,CAAAC,aAAA,CAACqD,MAAM,EAAA;AAACC,IAAAA,MAAM,EAAC,iBAAA;AAAiB,GAAA,eAC9BvD,cAAA,CAAAC,aAAA,CAACuD,aAAa,EAAA;IACZC,aAAa,EAAA,IAAA;AACbC,IAAAA,MAAM,EAAEvC,MAAO;AACfwC,IAAAA,UAAU,EAAC,gBAAgB;AAC3B,IAAA,IAAA,EAAIxC,MAAO;AACXyC,IAAAA,OAAO,EAAE,GAAI;IACbC,SAAS,EAAE,SAAAA,SAAA,GAAA;MAAA,OAAMlB,yBAAyB,CAAC,IAAI,CAAC,CAAA;KAAC;IACjDmB,QAAQ,EAAE,SAAAA,QAAA,GAAA;MAAA,OAAMnB,yBAAyB,CAAC,KAAK,CAAC,CAAA;AAAA,KAAA;AAAC,GAAA,eAEjD3C,cAAA,CAAAC,aAAA,CAAC8D,QAAQ,EAAA;AACP,IAAA,aAAA,EAAY,UAAU;AACtBC,IAAAA,GAAG,EAAC,gBAAgB;AACpBC,IAAAA,GAAG,EAAEnB,WAAY;AACjBhD,IAAAA,SAAS,EAAEI,UAAU,CACnB,0BAA0B,EAC1B;AACE,MAAA,sCAAsC,EAAEmD,iBAAAA;AAC1C,KAAC,EACDvB,iBAAiB,CAAA;AACjB,GAAA,eAEF9B,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAAiE,QAAA,CAAA;IACE,YAAU,EAAA,IAAA;AACVF,IAAAA,GAAG,EAAC,eAAe;AACnBC,IAAAA,GAAG,EAAErB,YAAa;AAClBuB,IAAAA,IAAI,EAAC,QAAQ;AACbrE,IAAAA,SAAS,EAAEI,UAAU,CAAC,yBAAyB,EAAAkE,eAAA,CAAA;AAC7C,MAAA,gCAAgC,EAAEnD,IAAI,KAAKP,KAAK,CAACC,KAAK;AACtD,MAAA,iCAAiC,EAAEM,IAAI,KAAKP,KAAK,CAACE,MAAM;AACxD,MAAA,gCAAgC,EAAEK,IAAI,KAAKP,KAAK,CAACG,KAAK;AACtD,MAAA,qCAAqC,EAAEwC,iBAAAA;KACtCvD,EAAAA,SAAS,EAAGA,SAAS,CAAA,CAAA;GAEpBqC,EAAAA,UAAU,GAEbP,WAAW,iBACV5B,cAAA,CAAAC,aAAA,CAACoE,MAAM,EAAA;AACL,IAAA,YAAA,EAAW,OAAO;AAClBvE,IAAAA,SAAS,EAAC,uBAAuB;AACjC,IAAA,SAAA,EAAQ,oBAAoB;AAC5B,IAAA,aAAA,EAAY,cAAc;AAC1BwE,IAAAA,IAAI,EAAEC,KAAM;AACZtD,IAAAA,IAAI,EAAEoC,iBAAiB,GAAG,OAAO,GAAG,OAAQ;AAC5C5C,IAAAA,KAAK,EAAE4C,iBAAiB,GAAG,WAAW,GAAG,MAAO;AAChDmB,IAAAA,OAAO,EAAErB,kBAAAA;AAAmB,GAAA,CAE/B,EACA,OAAOtD,QAAQ,KAAK,UAAU,GAC3BA,QAAQ,CAAC;AAAEuD,IAAAA,aAAa,EAAbA,aAAAA;AAAc,GAAC,CAAC,GAC3BvD,QAAQ,CACR,CACG,CACG,CACT,CAAA;AAEb,EAAC;AA8DDkB,KAAK,CAACX,MAAM,GAAGA,MAAM,CAAA;AACrBW,KAAK,CAACpB,IAAI,GAAGA,IAAI,CAAA;AACjBoB,KAAK,CAACZ,MAAM,GAAGA,MAAM;;;;"}
|
|
1
|
+
{"version":3,"file":"Modal.js","sources":["../src/components/Modal/Body.jsx","../src/components/Modal/Footer.jsx","../src/components/Modal/Header.jsx","../src/components/Modal/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Body = ({ children, className, dataCy }) => (\n <div\n className={classnames(\"neeto-ui-modal__body\", className)}\n data-cy={dataCy ?? \"modal-body\"}\n >\n {children}\n </div>\n);\n\nBody.propTypes = {\n /**\n * To specify className to be applied to the Modal Body.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Body.\n */\n children: PropTypes.node,\n};\n\nexport default Body;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Footer = ({ children, className, dataCy }) => (\n <div\n className={classnames(\"neeto-ui-modal__footer\", className)}\n data-cy={dataCy ?? \"modal-footer\"}\n >\n {children}\n </div>\n);\n\nFooter.propTypes = {\n /**\n * To specify className to be applied to the Modal Footer.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Footer.\n */\n children: PropTypes.node,\n};\n\nexport default Footer;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport Typography from \"../Typography\";\n\nconst Header = ({ description = \"\", children, className, dataCy }) => (\n <div\n className={classnames(\"neeto-ui-modal__header\", className)}\n data-cy={dataCy ?? \"modal-header\"}\n >\n {children}\n {description && (\n <div className=\"neeto-ui-modal__header-desc\" data-cy=\"modal-header-desc\">\n <Typography lineHeight=\"normal\" style=\"body2\">\n {description}\n </Typography>\n </div>\n )}\n </div>\n);\n\nHeader.propTypes = {\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify the short description of the Modal.\n */\n description: PropTypes.string,\n /**\n * To specify className to be applied to the Modal Header container.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Header.\n */\n children: PropTypes.node,\n};\n\nexport default Header;\n","import React, { useRef, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Close } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport { CSSTransition } from \"react-transition-group\";\n\nimport Backdrop from \"atoms/Backdrop\";\nimport Portal from \"atoms/Portal\";\nimport Button from \"components/Button\";\nimport { useOverlayManager, useOverlay } from \"hooks\";\n\nimport Body from \"./Body\";\nimport Footer from \"./Footer\";\nimport Header from \"./Header\";\n\nconst SIZES = {\n small: \"small\",\n medium: \"medium\",\n large: \"large\",\n fullScreen: \"fullScreen\",\n};\n\nconst Modal = ({\n size = SIZES.medium,\n isOpen = false,\n onClose = () => {},\n children,\n finalFocusRef,\n initialFocusRef,\n className = \"\",\n closeOnEsc = true,\n closeButton = true,\n backdropClassName = \"\",\n blockScrollOnMount = true,\n closeOnOutsideClick = true,\n ...otherProps\n}) => {\n const [hasTransitionCompleted, setHasTransitionCompleted] = useState(false);\n\n const modalWrapper = useRef(null);\n const backdropRef = useRef(null);\n\n useOverlayManager(modalWrapper, isOpen);\n\n const { handleOverlayClose, setFocusField } = useOverlay({\n isOpen,\n initialFocusRef,\n finalFocusRef,\n overlayWrapper: modalWrapper,\n onClose,\n backdropRef,\n closeOnOutsideClick,\n closeOnEsc,\n blockScrollOnMount,\n hasTransitionCompleted,\n });\n\n const isFullScreenModal = size === SIZES.fullScreen;\n\n return (\n <Portal rootId=\"neeto-ui-portal\">\n <CSSTransition\n unmountOnExit\n appear={isOpen}\n classNames=\"neeto-ui-modal\"\n in={isOpen}\n timeout={300}\n onEntered={() => setHasTransitionCompleted(true)}\n onExited={() => setHasTransitionCompleted(false)}\n >\n <Backdrop\n data-testid=\"backdrop\"\n key=\"modal-backdrop\"\n ref={backdropRef}\n className={classnames(\n \"neeto-ui-modal__backdrop\",\n {\n \"neeto-ui-modal__backdrop--fullscreen\": isFullScreenModal,\n },\n backdropClassName\n )}\n >\n <div\n aria-modal\n key=\"modal-wrapper\"\n ref={modalWrapper}\n role=\"dialog\"\n className={classnames(\"neeto-ui-modal__wrapper\", {\n \"neeto-ui-modal__wrapper--small\": size === SIZES.small,\n \"neeto-ui-modal__wrapper--medium\": size === SIZES.medium,\n \"neeto-ui-modal__wrapper--large\": size === SIZES.large,\n \"neeto-ui-modal__wrapper--fullscreen\": isFullScreenModal,\n [className]: className,\n })}\n {...otherProps}\n >\n {closeButton && (\n <Button\n aria-label=\"Close\"\n className=\"neeto-ui-modal__close\"\n data-cy=\"modal-close-button\"\n data-testid=\"close-button\"\n icon={Close}\n size={isFullScreenModal ? \"large\" : \"small\"}\n style={isFullScreenModal ? \"secondary\" : \"text\"}\n onClick={handleOverlayClose}\n />\n )}\n {typeof children === \"function\"\n ? children({ setFocusField })\n : children}\n </div>\n </Backdrop>\n </CSSTransition>\n </Portal>\n );\n};\n\nModal.propTypes = {\n /**\n * To specify the size of the Modal.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify whether the Modal is open or not.\n */\n isOpen: PropTypes.bool,\n /**\n * To specify the callback which will be invoked when the Modal is closed.\n */\n onClose: PropTypes.func,\n /**\n * To specify the content to be rendered inside the Modal component.\n */\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n /**\n * To provide external classNames to the Modal.\n */\n className: PropTypes.string,\n /**\n * To close the Modal on pressing the Esc key.\n */\n closeOnEsc: PropTypes.bool,\n /**\n * To specify whether the close button of the Modal should be displayed or not.\n */\n closeButton: PropTypes.bool,\n /**\n * To add custom classes to backdrop component.\n */\n backdropClassName: PropTypes.string,\n /**\n * To close on clicking outside the Modal content.\n */\n closeOnOutsideClick: PropTypes.bool,\n /*\n * To specify the ref of the element which will receive focus when the Modal is closed.\n * If not specified, the focus will be set to the element which was focused when the Modal was opened.\n * If the Modal was opened by clicking on a button, then the focus will be set to the button.\n * */\n finalFocusRef: PropTypes.object,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify the ref of the element which will receive focus when the Modal is opened.\n * If not specified, the focus will be set to the first focusable element inside the Modal.\n * */\n initialFocusRef: PropTypes.object,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify whether the scroll should be blocked when the Modal is opened.\n * */\n blockScrollOnMount: PropTypes.bool,\n};\n\nModal.Header = Header;\nModal.Body = Body;\nModal.Footer = Footer;\n\nexport default Modal;\n"],"names":["Body","_ref","children","className","dataCy","React","createElement","classnames","Footer","Header","_ref$description","description","Typography","lineHeight","style","SIZES","small","medium","large","fullScreen","Modal","_ref$size","size","_ref$isOpen","isOpen","_ref$onClose","onClose","finalFocusRef","initialFocusRef","_ref$className","_ref$closeOnEsc","closeOnEsc","_ref$closeButton","closeButton","_ref$backdropClassNam","backdropClassName","_ref$blockScrollOnMou","blockScrollOnMount","_ref$closeOnOutsideCl","closeOnOutsideClick","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","hasTransitionCompleted","setHasTransitionCompleted","modalWrapper","useRef","backdropRef","useOverlayManager","_useOverlay","useOverlay","overlayWrapper","handleOverlayClose","setFocusField","isFullScreenModal","Portal","rootId","CSSTransition","unmountOnExit","appear","classNames","timeout","onEntered","onExited","Backdrop","key","ref","_extends","role","_defineProperty","Button","icon","Close","onClick"],"mappings":"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"}
|
package/dist/MultiEmailInput.js
CHANGED
|
@@ -1,33 +1,53 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import React__default, { forwardRef, useState } from 'react';
|
|
7
|
-
import
|
|
1
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
|
+
import _extends from '@babel/runtime/helpers/extends';
|
|
3
|
+
import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
|
|
4
|
+
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
5
|
+
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
6
|
+
import React__default, { useRef, useEffect, forwardRef, useState } from 'react';
|
|
7
|
+
import classnames from 'classnames';
|
|
8
8
|
import { assoc, pluck, mergeLeft, isEmpty } from 'ramda';
|
|
9
|
-
import { c as components, C as CreatableSelect } from './react-select-creatable.esm-
|
|
10
|
-
import { h as hyphenize, n as noop } from './index-
|
|
9
|
+
import { c as components, C as CreatableSelect } from './react-select-creatable.esm-ad71b0c0.js';
|
|
10
|
+
import { h as hyphenize, n as noop } from './index-9d5142b4.js';
|
|
11
|
+
import _toArray from '@babel/runtime/helpers/toArray';
|
|
11
12
|
import { Close } from '@bigbinary/neeto-icons';
|
|
13
|
+
import '@babel/runtime/helpers/esm/objectSpread2';
|
|
14
|
+
import '@babel/runtime/helpers/esm/slicedToArray';
|
|
15
|
+
import '@babel/runtime/helpers/esm/objectWithoutProperties';
|
|
16
|
+
import '@babel/runtime/helpers/esm/extends';
|
|
17
|
+
import '@babel/runtime/helpers/objectSpread2';
|
|
18
|
+
import '@babel/runtime/helpers/classCallCheck';
|
|
19
|
+
import '@babel/runtime/helpers/createClass';
|
|
20
|
+
import '@babel/runtime/helpers/inherits';
|
|
21
|
+
import '@babel/runtime/helpers/createSuper';
|
|
22
|
+
import '@babel/runtime/helpers/taggedTemplateLiteral';
|
|
23
|
+
import '@babel/runtime/helpers/typeof';
|
|
12
24
|
import 'react-dom';
|
|
13
25
|
import Tag from './Tag.js';
|
|
14
26
|
import Label from './Label.js';
|
|
15
|
-
import '
|
|
16
|
-
import '
|
|
27
|
+
import '@babel/runtime/helpers/esm/classCallCheck';
|
|
28
|
+
import '@babel/runtime/helpers/esm/createClass';
|
|
29
|
+
import '@babel/runtime/helpers/esm/inherits';
|
|
30
|
+
import '@babel/runtime/helpers/esm/createSuper';
|
|
31
|
+
import '@babel/runtime/helpers/esm/toConsumableArray';
|
|
32
|
+
import '@babel/runtime/helpers/esm/taggedTemplateLiteral';
|
|
33
|
+
import '@babel/runtime/helpers/esm/typeof';
|
|
34
|
+
import '@babel/runtime/helpers/esm/defineProperty';
|
|
35
|
+
import 'dayjs';
|
|
36
|
+
import 'dayjs/plugin/localeData';
|
|
37
|
+
import 'dayjs/plugin/utc';
|
|
38
|
+
import 'dayjs/plugin/weekday';
|
|
39
|
+
import 'dayjs/plugin/weekOfYear';
|
|
17
40
|
import '@bigbinary/neeto-cist';
|
|
18
|
-
import '
|
|
41
|
+
import 'qs';
|
|
19
42
|
import './Button.js';
|
|
20
43
|
import 'react-router-dom';
|
|
21
44
|
import './motion-087daf52.js';
|
|
22
|
-
import './
|
|
45
|
+
import './Tooltip.js';
|
|
46
|
+
import '@tippyjs/react';
|
|
23
47
|
import 'tippy.js';
|
|
24
48
|
import './Popover.js';
|
|
25
49
|
import './Typography.js';
|
|
26
50
|
|
|
27
|
-
function _toArray(arr) {
|
|
28
|
-
return _arrayWithHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableRest();
|
|
29
|
-
}
|
|
30
|
-
|
|
31
51
|
var _excluded$1 = ["children"],
|
|
32
52
|
_excluded2 = ["children"];
|
|
33
53
|
function ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
@@ -45,8 +65,33 @@ var STYLES = {
|
|
|
45
65
|
var CustomControl = function CustomControl(_ref) {
|
|
46
66
|
var children = _ref.children,
|
|
47
67
|
props = _objectWithoutProperties(_ref, _excluded$1);
|
|
48
|
-
var
|
|
49
|
-
|
|
68
|
+
var getValue = props.getValue;
|
|
69
|
+
var _props$selectProps = props.selectProps,
|
|
70
|
+
isFocused = _props$selectProps.isFocused,
|
|
71
|
+
prefix = _props$selectProps.prefix;
|
|
72
|
+
var prevValue = useRef([]);
|
|
73
|
+
var controlRef = useRef(null);
|
|
74
|
+
var value = getValue();
|
|
75
|
+
var scrollToBottom = function scrollToBottom() {
|
|
76
|
+
var scrollContainer = controlRef.current;
|
|
77
|
+
if (!scrollContainer) return;
|
|
78
|
+
var scrollHeight = scrollContainer.scrollHeight,
|
|
79
|
+
clientHeight = scrollContainer.clientHeight;
|
|
80
|
+
scrollContainer.scrollTo({
|
|
81
|
+
top: scrollHeight - clientHeight
|
|
82
|
+
});
|
|
83
|
+
};
|
|
84
|
+
useEffect(function () {
|
|
85
|
+
var isItemAdded = value.length > prevValue.current.length;
|
|
86
|
+
var isItemDeleted = value.length < prevValue.current.length;
|
|
87
|
+
if (isFocused && !isItemDeleted || isItemAdded) scrollToBottom();
|
|
88
|
+
prevValue.current = value;
|
|
89
|
+
}, [isFocused, value]);
|
|
90
|
+
return /*#__PURE__*/React__default.createElement(components.Control, _extends({}, props, {
|
|
91
|
+
innerProps: _objectSpread$1(_objectSpread$1({}, props.innerProps), {}, {
|
|
92
|
+
ref: controlRef
|
|
93
|
+
})
|
|
94
|
+
}), prefix && /*#__PURE__*/React__default.createElement("div", {
|
|
50
95
|
className: "neeto-ui-email-input__prefix"
|
|
51
96
|
}, prefix), children);
|
|
52
97
|
};
|
|
@@ -67,14 +112,15 @@ var CustomValueContainer = function CustomValueContainer(_ref2) {
|
|
|
67
112
|
var children = _ref2.children,
|
|
68
113
|
props = _objectWithoutProperties(_ref2, _excluded2);
|
|
69
114
|
var getValue = props.getValue,
|
|
70
|
-
_props$
|
|
71
|
-
isFocused = _props$
|
|
72
|
-
visibleEmailsCount = _props$
|
|
115
|
+
_props$selectProps2 = props.selectProps,
|
|
116
|
+
isFocused = _props$selectProps2.isFocused,
|
|
117
|
+
visibleEmailsCount = _props$selectProps2.visibleEmailsCount,
|
|
118
|
+
isAlwaysExpanded = _props$selectProps2.isAlwaysExpanded;
|
|
73
119
|
var value = getValue();
|
|
74
120
|
var _children = _toArray(children),
|
|
75
121
|
firstChild = _children[0],
|
|
76
122
|
rest = _children.slice(1);
|
|
77
|
-
var shouldCollapse = !isFocused && value.length > visibleEmailsCount;
|
|
123
|
+
var shouldCollapse = !isAlwaysExpanded && !isFocused && value.length > visibleEmailsCount;
|
|
78
124
|
return /*#__PURE__*/React__default.createElement(components.ValueContainer, _extends({}, props, {
|
|
79
125
|
innerProps: _objectSpread$1(_objectSpread$1({}, props.innerProps), {}, _defineProperty({}, "data-cy", "multi-email-input-container"))
|
|
80
126
|
}), shouldCollapse ? firstChild.slice(0, visibleEmailsCount) : firstChild, shouldCollapse && /*#__PURE__*/React__default.createElement(Tag, {
|
|
@@ -97,7 +143,13 @@ var SelectContainer = function SelectContainer(props) {
|
|
|
97
143
|
};
|
|
98
144
|
var Input = function Input(props) {
|
|
99
145
|
return /*#__PURE__*/React__default.createElement(components.Input, _extends({}, props, {
|
|
100
|
-
"data-cy": "email-select-input-field"
|
|
146
|
+
"data-cy": "email-select-input-field",
|
|
147
|
+
onPaste: function onPaste(e) {
|
|
148
|
+
var clipboardData = e.clipboardData.getData("Text");
|
|
149
|
+
setTimeout(function () {
|
|
150
|
+
return props.selectProps.handleEmailChange(clipboardData);
|
|
151
|
+
});
|
|
152
|
+
}
|
|
101
153
|
}));
|
|
102
154
|
};
|
|
103
155
|
var EMAIL_REGEX = new RegExp("^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,}$", "i");
|
|
@@ -149,7 +201,7 @@ var renderDefaultText = function renderDefaultText(count) {
|
|
|
149
201
|
return count === 1 ? "email" : "emails";
|
|
150
202
|
};
|
|
151
203
|
|
|
152
|
-
var _excluded = ["label", "placeholder", "helpText", "value", "onChange", "error", "onBlur", "filterInvalidEmails", "counter", "disabled", "maxHeight", "required", "labelProps", "visibleEmailsCount", "isCreateable"];
|
|
204
|
+
var _excluded = ["label", "placeholder", "helpText", "value", "onChange", "error", "onBlur", "filterInvalidEmails", "counter", "disabled", "maxHeight", "required", "labelProps", "visibleEmailsCount", "isCreateable", "isAlwaysExpanded"];
|
|
153
205
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
154
206
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
155
207
|
var MultiEmailInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
@@ -180,6 +232,8 @@ var MultiEmailInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
180
232
|
visibleEmailsCount = _ref$visibleEmailsCou === void 0 ? 3 : _ref$visibleEmailsCou,
|
|
181
233
|
_ref$isCreateable = _ref.isCreateable,
|
|
182
234
|
isCreateable = _ref$isCreateable === void 0 ? true : _ref$isCreateable,
|
|
235
|
+
_ref$isAlwaysExpanded = _ref.isAlwaysExpanded,
|
|
236
|
+
isAlwaysExpanded = _ref$isAlwaysExpanded === void 0 ? false : _ref$isAlwaysExpanded,
|
|
183
237
|
otherProps = _objectWithoutProperties(_ref, _excluded);
|
|
184
238
|
var _useState = useState(""),
|
|
185
239
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -194,7 +248,7 @@ var MultiEmailInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
194
248
|
var handleFilterEmails = function handleFilterEmails() {
|
|
195
249
|
return onChange(renderValidEmails(value));
|
|
196
250
|
};
|
|
197
|
-
var handleEmailChange = function handleEmailChange() {
|
|
251
|
+
var handleEmailChange = function handleEmailChange(inputValue) {
|
|
198
252
|
var inputValues = inputValue.match(EMAIL_SEPARATION_REGEX);
|
|
199
253
|
var emailMatches = inputValue.match(UNSTRICT_EMAIL_REGEX) || inputValues || [];
|
|
200
254
|
var emails = emailMatches.map(function (email) {
|
|
@@ -208,7 +262,7 @@ var MultiEmailInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
208
262
|
switch (event.key) {
|
|
209
263
|
case "Enter":
|
|
210
264
|
{
|
|
211
|
-
handleEmailChange();
|
|
265
|
+
handleEmailChange(inputValue);
|
|
212
266
|
!isOptionsPresent && event.preventDefault();
|
|
213
267
|
event.stopPropagation();
|
|
214
268
|
return;
|
|
@@ -217,7 +271,7 @@ var MultiEmailInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
217
271
|
case ",":
|
|
218
272
|
case " ":
|
|
219
273
|
{
|
|
220
|
-
handleEmailChange();
|
|
274
|
+
handleEmailChange(inputValue);
|
|
221
275
|
event.preventDefault();
|
|
222
276
|
event.stopPropagation();
|
|
223
277
|
}
|
|
@@ -230,7 +284,7 @@ var MultiEmailInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
230
284
|
otherProps === null || otherProps === void 0 || (_otherProps$onCreateO = otherProps.onCreateOption) === null || _otherProps$onCreateO === void 0 || _otherProps$onCreateO.call(otherProps, input);
|
|
231
285
|
};
|
|
232
286
|
var handleBlur = function handleBlur(event) {
|
|
233
|
-
inputValue ? handleEmailChange() : onBlur(event);
|
|
287
|
+
inputValue ? handleEmailChange(inputValue) : onBlur(event);
|
|
234
288
|
setIsFocused(false);
|
|
235
289
|
};
|
|
236
290
|
var overrideProps = {};
|
|
@@ -285,7 +339,9 @@ var MultiEmailInput = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
285
339
|
},
|
|
286
340
|
onKeyDown: handleKeyDown
|
|
287
341
|
}, _objectSpread(_objectSpread(_objectSpread({
|
|
342
|
+
handleEmailChange: handleEmailChange,
|
|
288
343
|
inputValue: inputValue,
|
|
344
|
+
isAlwaysExpanded: isAlwaysExpanded,
|
|
289
345
|
isFocused: isFocused,
|
|
290
346
|
onChange: onChange,
|
|
291
347
|
placeholder: placeholder,
|