@bigbinary/neetoui 8.2.4 → 8.2.5

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 (106) hide show
  1. package/dist/ActionDropdown.js +2 -2
  2. package/dist/Alert.js +3 -3
  3. package/dist/Checkbox.js +2 -2
  4. package/dist/ColorPicker.js +2 -2
  5. package/dist/DatePicker.js +6 -6
  6. package/dist/Dropdown.js +2 -2
  7. package/dist/{HeaderCellMenu-fa00cbd9.js → HeaderCellMenu-c806e4d0.js} +2 -2
  8. package/dist/{HeaderCellMenu-fa00cbd9.js.map → HeaderCellMenu-c806e4d0.js.map} +1 -1
  9. package/dist/Input.js +2 -2
  10. package/dist/Modal.js +3 -3
  11. package/dist/MultiEmailInput.js +2 -2
  12. package/dist/Pagination.js +2 -2
  13. package/dist/Pane.js +3 -3
  14. package/dist/Radio.js +2 -2
  15. package/dist/Select.js +2 -2
  16. package/dist/Sidebar.js +2 -2
  17. package/dist/Slider.js +2 -2
  18. package/dist/Switch.js +2 -2
  19. package/dist/Table.js +3 -3
  20. package/dist/{Textarea-b14bae86.js → Textarea-d9a69b9b.js} +2 -2
  21. package/dist/{Textarea-b14bae86.js.map → Textarea-d9a69b9b.js.map} +1 -1
  22. package/dist/Textarea.js +3 -3
  23. package/dist/TimePicker.js +6 -6
  24. package/dist/Toastr.js +2 -2
  25. package/dist/TranslationProvider.js +1 -1
  26. package/dist/Tree.js +2 -2
  27. package/dist/TreeSelect.js +2 -2
  28. package/dist/cjs/ActionDropdown.js +2 -2
  29. package/dist/cjs/Alert.js +3 -3
  30. package/dist/cjs/Checkbox.js +2 -2
  31. package/dist/cjs/ColorPicker.js +2 -2
  32. package/dist/cjs/DatePicker.js +6 -6
  33. package/dist/cjs/Dropdown.js +2 -2
  34. package/dist/cjs/{HeaderCellMenu-27b494da.js → HeaderCellMenu-e9883f63.js} +2 -2
  35. package/dist/cjs/{HeaderCellMenu-27b494da.js.map → HeaderCellMenu-e9883f63.js.map} +1 -1
  36. package/dist/cjs/Input.js +2 -2
  37. package/dist/cjs/Modal.js +3 -3
  38. package/dist/cjs/MultiEmailInput.js +2 -2
  39. package/dist/cjs/Pagination.js +2 -2
  40. package/dist/cjs/Pane.js +3 -3
  41. package/dist/cjs/Radio.js +2 -2
  42. package/dist/cjs/Select.js +2 -2
  43. package/dist/cjs/Sidebar.js +2 -2
  44. package/dist/cjs/Slider.js +2 -2
  45. package/dist/cjs/Switch.js +2 -2
  46. package/dist/cjs/Table.js +3 -3
  47. package/dist/cjs/{Textarea-eaf8b986.js → Textarea-a5fa88e6.js} +2 -2
  48. package/dist/cjs/{Textarea-eaf8b986.js.map → Textarea-a5fa88e6.js.map} +1 -1
  49. package/dist/cjs/Textarea.js +3 -3
  50. package/dist/cjs/TimePicker.js +6 -6
  51. package/dist/cjs/Toastr.js +2 -2
  52. package/dist/cjs/TranslationProvider.js +1 -1
  53. package/dist/cjs/Tree.js +2 -2
  54. package/dist/cjs/TreeSelect.js +2 -2
  55. package/dist/cjs/{en-c1fe180c.js → en-80d0fbff.js} +3 -2
  56. package/dist/cjs/en-80d0fbff.js.map +1 -0
  57. package/dist/cjs/formik/ActionBlock.js +2 -2
  58. package/dist/cjs/formik/BlockNavigation.js +76 -25
  59. package/dist/cjs/formik/BlockNavigation.js.map +1 -1
  60. package/dist/cjs/formik/Checkbox.js +2 -2
  61. package/dist/cjs/formik/Input.js +2 -2
  62. package/dist/cjs/formik/MultiEmailInput.js +2 -2
  63. package/dist/cjs/formik/Radio.js +2 -2
  64. package/dist/cjs/formik/Select.js +2 -2
  65. package/dist/cjs/formik/Slider.js +2 -2
  66. package/dist/cjs/formik/Switch.js +2 -2
  67. package/dist/cjs/formik/Textarea.js +3 -3
  68. package/dist/cjs/formik/TreeSelect.js +2 -2
  69. package/dist/cjs/formik/index.js +6 -7
  70. package/dist/cjs/formik/index.js.map +1 -1
  71. package/dist/cjs/{index-7a8fe498.js → index-0f5141e0.js} +2 -2
  72. package/dist/cjs/{index-7a8fe498.js.map → index-0f5141e0.js.map} +1 -1
  73. package/dist/cjs/{index-f86bb638.js → index-5622361e.js} +4 -4
  74. package/dist/cjs/{index-f86bb638.js.map → index-5622361e.js.map} +1 -1
  75. package/dist/cjs/index.js +6 -6
  76. package/dist/cjs/layouts.js +2 -2
  77. package/dist/cjs/{useOverlayManager-763ee731.js → useOverlayManager-d4108cf8.js} +2 -2
  78. package/dist/cjs/{useOverlayManager-763ee731.js.map → useOverlayManager-d4108cf8.js.map} +1 -1
  79. package/dist/{en-ffa387d9.js → en-41f5c641.js} +3 -2
  80. package/dist/en-41f5c641.js.map +1 -0
  81. package/dist/formik/ActionBlock.js +2 -2
  82. package/dist/formik/BlockNavigation.js +76 -25
  83. package/dist/formik/BlockNavigation.js.map +1 -1
  84. package/dist/formik/Checkbox.js +2 -2
  85. package/dist/formik/Input.js +2 -2
  86. package/dist/formik/MultiEmailInput.js +2 -2
  87. package/dist/formik/Radio.js +2 -2
  88. package/dist/formik/Select.js +2 -2
  89. package/dist/formik/Slider.js +2 -2
  90. package/dist/formik/Switch.js +2 -2
  91. package/dist/formik/Textarea.js +3 -3
  92. package/dist/formik/TreeSelect.js +2 -2
  93. package/dist/formik/index.js +6 -7
  94. package/dist/formik/index.js.map +1 -1
  95. package/dist/{index-b467bee0.js → index-52566c57.js} +4 -4
  96. package/dist/{index-b467bee0.js.map → index-52566c57.js.map} +1 -1
  97. package/dist/{index-9040fef3.js → index-abadd6e9.js} +2 -2
  98. package/dist/{index-9040fef3.js.map → index-abadd6e9.js.map} +1 -1
  99. package/dist/index.js +6 -6
  100. package/dist/layouts.js +2 -2
  101. package/dist/{useOverlayManager-5be3be10.js → useOverlayManager-593daea1.js} +2 -2
  102. package/dist/{useOverlayManager-5be3be10.js.map → useOverlayManager-593daea1.js.map} +1 -1
  103. package/package.json +1 -1
  104. package/src/translations/en.json +2 -1
  105. package/dist/cjs/en-c1fe180c.js.map +0 -1
  106. package/dist/en-ffa387d9.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Textarea-eaf8b986.js","sources":["../../src/hooks/useSyncedRef.js","../../src/components/Textarea.jsx"],"sourcesContent":["import { useEffect, useRef } from \"react\";\n\nconst useSyncedRef = ref => {\n const innerRef = useRef();\n\n useEffect(() => {\n if (!ref) return;\n\n if (typeof ref === \"function\") {\n ref(innerRef.current);\n } else {\n ref.current = innerRef.current;\n }\n });\n\n return innerRef;\n};\n\nexport default useSyncedRef;\n","import React, { useState, useEffect, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport { useSyncedRef, useId } from \"hooks\";\nimport { hyphenize } from \"utils\";\n\nimport Label from \"./Label\";\n\nconst SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\n\nconst ROWS = { small: 1, medium: 3, large: 4 };\n\nconst RESIZE = { vertical: \"vertical\", none: \"none\" };\n\nconst Textarea = forwardRef(\n (\n {\n size = SIZES.medium,\n resize = RESIZE.vertical,\n suffix = null,\n prefix = null,\n disabled = false,\n required = false,\n nakedTextarea = false,\n helpText = \"\",\n error = \"\",\n label = \"\",\n className = \"\",\n maxLength,\n unlimitedChars = false,\n labelProps,\n onBlur,\n disableTrimOnBlur = false,\n ...otherProps\n },\n ref\n ) => {\n const [valueInternal, setValueInternal] = useState(\"\");\n\n const value = otherProps.value ?? valueInternal ?? \"\";\n\n const id = useId(otherProps.id);\n const errorId = `error_${id}`;\n const helpTextId = `helpText_${id}`;\n const textareaRef = useSyncedRef(ref);\n\n const valueLength = value?.toString().length || 0;\n const isCharacterLimitVisible = valueLength >= maxLength * 0.85;\n const maxLengthError = unlimitedChars && valueLength > maxLength;\n\n const onChangeInternal = e => setValueInternal(e.target.value);\n const onChange = otherProps.onChange ?? onChangeInternal;\n const isMaxLengthPresent = !!maxLength || maxLength === 0;\n\n useEffect(() => {\n textareaRef.current.style.minHeight = \"22px\";\n textareaRef.current.style.height = \"auto\";\n const scrollHeight = textareaRef.current.scrollHeight;\n textareaRef.current.style.height = `${scrollHeight + 1}px`;\n }, [value]);\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 onChange(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)}-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 data-cy={`${hyphenize(label)}-text-input`}\n className={classnames(\"neeto-ui-input\", \"neeto-ui-input--textarea\", {\n \"neeto-ui-input--error\": !!error,\n \"neeto-ui-input--disabled\": !!disabled,\n \"neeto-ui-input--naked\": !!nakedTextarea,\n \"neeto-ui-input--small\": size === SIZES.small,\n \"neeto-ui-input--medium\": size === SIZES.medium,\n \"neeto-ui-input--large\": size === SIZES.large,\n \"neeto-ui-input--resize--vertical\": resize === RESIZE.vertical,\n \"neeto-ui-input--resize--none\": resize === RESIZE.none,\n })}\n >\n {prefix && <div className=\"neeto-ui-input__prefix\">{prefix}</div>}\n <textarea\n ref={textareaRef}\n rows={ROWS[size]}\n {...{\n disabled,\n ...(isMaxLengthPresent && !unlimitedChars && { maxLength }),\n ...otherProps,\n onChange,\n value,\n }}\n onBlur={handleOnBlur}\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 className=\"neeto-ui-input__help-text\" id={helpTextId}>\n {helpText}\n </p>\n )}\n </div>\n );\n }\n);\n\nTextarea.displayName = \"Textarea\";\n\nTextarea.propTypes = {\n /**\n * To specify the row height of the Textarea.\n */\n rows: PropTypes.number,\n /**\n * To specify the size of Textarea.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify the label shown above the Textarea.\n */\n label: PropTypes.string,\n /**\n * To specify the label props to be passed to the Label component.\n */\n labelProps: PropTypes.object,\n /**\n * To provide the value of the Textarea.\n */\n value: PropTypes.string,\n /**\n * To provide the error message shown below the Textarea.\n */\n error: PropTypes.string,\n /**\n * To provide the placeholder text for the Textarea.\n */\n placeholder: PropTypes.string,\n /**\n * To specify whether the Textarea is required.\n */\n required: PropTypes.bool,\n /**\n * To specify whether the Textarea is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * To provide additional classnames to the Textarea container.\n */\n className: PropTypes.string,\n /**\n * The resize property sets whether the Textarea is resizable.\n */\n resize: PropTypes.oneOf(Object.values(RESIZE)),\n /**\n * To specify the text that appears below the Textarea.\n */\n helpText: PropTypes.string,\n /**\n * To create a Textarea without any borders.\n */\n nakedTextarea: PropTypes.bool,\n /**\n * To specify a maximum character limit to the Textarea. Charater limit is visible only if the Textarea 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 content to be added at the end of the Textarea.\n */\n suffix: PropTypes.node,\n /**\n * To specify the content to be added at the beginning of the Textarea.\n */\n prefix: PropTypes.node,\n /**\n * To disable leading and trailing white spaces onBlur.\n */\n disableTrimOnBlur: PropTypes.bool,\n};\n\nexport default Textarea;\n"],"names":["useSyncedRef","ref","innerRef","useRef","useEffect","current","SIZES","small","medium","large","ROWS","RESIZE","vertical","none","Textarea","forwardRef","_ref","_ref2","_otherProps$value","_otherProps$onChange","_ref$size","size","_ref$resize","resize","_ref$suffix","suffix","_ref$prefix","prefix","_ref$disabled","disabled","_ref$required","required","_ref$nakedTextarea","nakedTextarea","_ref$helpText","helpText","_ref$error","error","_ref$label","label","_ref$className","className","maxLength","_ref$unlimitedChars","unlimitedChars","labelProps","onBlur","_ref$disableTrimOnBlu","disableTrimOnBlur","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","valueInternal","setValueInternal","value","id","useId","errorId","concat","helpTextId","textareaRef","valueLength","toString","length","isCharacterLimitVisible","maxLengthError","onChangeInternal","e","target","onChange","isMaxLengthPresent","style","minHeight","height","scrollHeight","handleTrimmedChangeOnBlur","trimmedValue","trim","handleOnBlur","React","createElement","classnames","Label","_extends","hyphenize","htmlFor","rows","_objectSpread","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"Textarea-a5fa88e6.js","sources":["../../src/hooks/useSyncedRef.js","../../src/components/Textarea.jsx"],"sourcesContent":["import { useEffect, useRef } from \"react\";\n\nconst useSyncedRef = ref => {\n const innerRef = useRef();\n\n useEffect(() => {\n if (!ref) return;\n\n if (typeof ref === \"function\") {\n ref(innerRef.current);\n } else {\n ref.current = innerRef.current;\n }\n });\n\n return innerRef;\n};\n\nexport default useSyncedRef;\n","import React, { useState, useEffect, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport { useSyncedRef, useId } from \"hooks\";\nimport { hyphenize } from \"utils\";\n\nimport Label from \"./Label\";\n\nconst SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\n\nconst ROWS = { small: 1, medium: 3, large: 4 };\n\nconst RESIZE = { vertical: \"vertical\", none: \"none\" };\n\nconst Textarea = forwardRef(\n (\n {\n size = SIZES.medium,\n resize = RESIZE.vertical,\n suffix = null,\n prefix = null,\n disabled = false,\n required = false,\n nakedTextarea = false,\n helpText = \"\",\n error = \"\",\n label = \"\",\n className = \"\",\n maxLength,\n unlimitedChars = false,\n labelProps,\n onBlur,\n disableTrimOnBlur = false,\n ...otherProps\n },\n ref\n ) => {\n const [valueInternal, setValueInternal] = useState(\"\");\n\n const value = otherProps.value ?? valueInternal ?? \"\";\n\n const id = useId(otherProps.id);\n const errorId = `error_${id}`;\n const helpTextId = `helpText_${id}`;\n const textareaRef = useSyncedRef(ref);\n\n const valueLength = value?.toString().length || 0;\n const isCharacterLimitVisible = valueLength >= maxLength * 0.85;\n const maxLengthError = unlimitedChars && valueLength > maxLength;\n\n const onChangeInternal = e => setValueInternal(e.target.value);\n const onChange = otherProps.onChange ?? onChangeInternal;\n const isMaxLengthPresent = !!maxLength || maxLength === 0;\n\n useEffect(() => {\n textareaRef.current.style.minHeight = \"22px\";\n textareaRef.current.style.height = \"auto\";\n const scrollHeight = textareaRef.current.scrollHeight;\n textareaRef.current.style.height = `${scrollHeight + 1}px`;\n }, [value]);\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 onChange(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)}-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 data-cy={`${hyphenize(label)}-text-input`}\n className={classnames(\"neeto-ui-input\", \"neeto-ui-input--textarea\", {\n \"neeto-ui-input--error\": !!error,\n \"neeto-ui-input--disabled\": !!disabled,\n \"neeto-ui-input--naked\": !!nakedTextarea,\n \"neeto-ui-input--small\": size === SIZES.small,\n \"neeto-ui-input--medium\": size === SIZES.medium,\n \"neeto-ui-input--large\": size === SIZES.large,\n \"neeto-ui-input--resize--vertical\": resize === RESIZE.vertical,\n \"neeto-ui-input--resize--none\": resize === RESIZE.none,\n })}\n >\n {prefix && <div className=\"neeto-ui-input__prefix\">{prefix}</div>}\n <textarea\n ref={textareaRef}\n rows={ROWS[size]}\n {...{\n disabled,\n ...(isMaxLengthPresent && !unlimitedChars && { maxLength }),\n ...otherProps,\n onChange,\n value,\n }}\n onBlur={handleOnBlur}\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 className=\"neeto-ui-input__help-text\" id={helpTextId}>\n {helpText}\n </p>\n )}\n </div>\n );\n }\n);\n\nTextarea.displayName = \"Textarea\";\n\nTextarea.propTypes = {\n /**\n * To specify the row height of the Textarea.\n */\n rows: PropTypes.number,\n /**\n * To specify the size of Textarea.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify the label shown above the Textarea.\n */\n label: PropTypes.string,\n /**\n * To specify the label props to be passed to the Label component.\n */\n labelProps: PropTypes.object,\n /**\n * To provide the value of the Textarea.\n */\n value: PropTypes.string,\n /**\n * To provide the error message shown below the Textarea.\n */\n error: PropTypes.string,\n /**\n * To provide the placeholder text for the Textarea.\n */\n placeholder: PropTypes.string,\n /**\n * To specify whether the Textarea is required.\n */\n required: PropTypes.bool,\n /**\n * To specify whether the Textarea is disabled.\n */\n disabled: PropTypes.bool,\n /**\n * To provide additional classnames to the Textarea container.\n */\n className: PropTypes.string,\n /**\n * The resize property sets whether the Textarea is resizable.\n */\n resize: PropTypes.oneOf(Object.values(RESIZE)),\n /**\n * To specify the text that appears below the Textarea.\n */\n helpText: PropTypes.string,\n /**\n * To create a Textarea without any borders.\n */\n nakedTextarea: PropTypes.bool,\n /**\n * To specify a maximum character limit to the Textarea. Charater limit is visible only if the Textarea 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 content to be added at the end of the Textarea.\n */\n suffix: PropTypes.node,\n /**\n * To specify the content to be added at the beginning of the Textarea.\n */\n prefix: PropTypes.node,\n /**\n * To disable leading and trailing white spaces onBlur.\n */\n disableTrimOnBlur: PropTypes.bool,\n};\n\nexport default Textarea;\n"],"names":["useSyncedRef","ref","innerRef","useRef","useEffect","current","SIZES","small","medium","large","ROWS","RESIZE","vertical","none","Textarea","forwardRef","_ref","_ref2","_otherProps$value","_otherProps$onChange","_ref$size","size","_ref$resize","resize","_ref$suffix","suffix","_ref$prefix","prefix","_ref$disabled","disabled","_ref$required","required","_ref$nakedTextarea","nakedTextarea","_ref$helpText","helpText","_ref$error","error","_ref$label","label","_ref$className","className","maxLength","_ref$unlimitedChars","unlimitedChars","labelProps","onBlur","_ref$disableTrimOnBlu","disableTrimOnBlur","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","valueInternal","setValueInternal","value","id","useId","errorId","concat","helpTextId","textareaRef","valueLength","toString","length","isCharacterLimitVisible","maxLengthError","onChangeInternal","e","target","onChange","isMaxLengthPresent","style","minHeight","height","scrollHeight","handleTrimmedChangeOnBlur","trimmedValue","trim","handleOnBlur","React","createElement","classnames","Label","_extends","hyphenize","htmlFor","rows","_objectSpread","displayName"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,YAAY,GAAG,SAAfA,YAAYA,CAAGC,GAAG,EAAI;EAC1B,IAAMC,QAAQ,GAAGC,YAAM,EAAE,CAAA;AAEzBC,EAAAA,eAAS,CAAC,YAAM;IACd,IAAI,CAACH,GAAG,EAAE,OAAA;AAEV,IAAA,IAAI,OAAOA,GAAG,KAAK,UAAU,EAAE;AAC7BA,MAAAA,GAAG,CAACC,QAAQ,CAACG,OAAO,CAAC,CAAA;AACvB,KAAC,MAAM;AACLJ,MAAAA,GAAG,CAACI,OAAO,GAAGH,QAAQ,CAACG,OAAO,CAAA;AAChC,KAAA;AACF,GAAC,CAAC,CAAA;AAEF,EAAA,OAAOH,QAAQ,CAAA;AACjB;;;;;ACNA,IAAMI,KAAK,GAAG;AAAEC,EAAAA,KAAK,EAAE,OAAO;AAAEC,EAAAA,MAAM,EAAE,QAAQ;AAAEC,EAAAA,KAAK,EAAE,OAAA;AAAQ,CAAC,CAAA;AAElE,IAAMC,IAAI,GAAG;AAAEH,EAAAA,KAAK,EAAE,CAAC;AAAEC,EAAAA,MAAM,EAAE,CAAC;AAAEC,EAAAA,KAAK,EAAE,CAAA;AAAE,CAAC,CAAA;AAE9C,IAAME,MAAM,GAAG;AAAEC,EAAAA,QAAQ,EAAE,UAAU;AAAEC,EAAAA,IAAI,EAAE,MAAA;AAAO,CAAC,CAAA;AAE/CC,IAAAA,QAAQ,gBAAGC,gBAAU,CACzB,UAAAC,IAAA,EAoBEf,GAAG,EACA;AAAA,EAAA,IAAAgB,KAAA,EAAAC,iBAAA,EAAAC,oBAAA,CAAA;AAAA,EAAA,IAAAC,SAAA,GAAAJ,IAAA,CAnBDK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAA,KAAA,CAAA,GAAGd,KAAK,CAACE,MAAM,GAAAY,SAAA;IAAAE,WAAA,GAAAN,IAAA,CACnBO,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAA,KAAA,CAAA,GAAGX,MAAM,CAACC,QAAQ,GAAAU,WAAA;IAAAE,WAAA,GAAAR,IAAA,CACxBS,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,WAAA;IAAAE,WAAA,GAAAV,IAAA,CACbW,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,WAAA;IAAAE,aAAA,GAAAZ,IAAA,CACba,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,aAAA;IAAAE,aAAA,GAAAd,IAAA,CAChBe,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,aAAA;IAAAE,kBAAA,GAAAhB,IAAA,CAChBiB,aAAa;AAAbA,IAAAA,aAAa,GAAAD,kBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,kBAAA;IAAAE,aAAA,GAAAlB,IAAA,CACrBmB,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,aAAA;IAAAE,UAAA,GAAApB,IAAA,CACbqB,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,UAAA;IAAAE,UAAA,GAAAtB,IAAA,CACVuB,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,UAAA;IAAAE,cAAA,GAAAxB,IAAA,CACVyB,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,cAAA;IACdE,SAAS,GAAA1B,IAAA,CAAT0B,SAAS;IAAAC,mBAAA,GAAA3B,IAAA,CACT4B,cAAc;AAAdA,IAAAA,cAAc,GAAAD,mBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,mBAAA;IACtBE,UAAU,GAAA7B,IAAA,CAAV6B,UAAU;IACVC,MAAM,GAAA9B,IAAA,CAAN8B,MAAM;IAAAC,qBAAA,GAAA/B,IAAA,CACNgC,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA;AACtBE,IAAAA,UAAU,GAAAC,4CAAA,CAAAlC,IAAA,EAAAmC,SAAA,CAAA,CAAA;AAIf,EAAA,IAAAC,SAAA,GAA0CC,cAAQ,CAAC,EAAE,CAAC;IAAAC,UAAA,GAAAC,kCAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA/CI,IAAAA,aAAa,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,gBAAgB,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;EAEtC,IAAMI,KAAK,IAAAzC,KAAA,GAAA,CAAAC,iBAAA,GAAG+B,UAAU,CAACS,KAAK,MAAA,IAAA,IAAAxC,iBAAA,KAAAA,KAAAA,CAAAA,GAAAA,iBAAA,GAAIsC,aAAa,MAAA,IAAA,IAAAvC,KAAA,KAAAA,KAAAA,CAAAA,GAAAA,KAAA,GAAI,EAAE,CAAA;AAErD,EAAA,IAAM0C,EAAE,GAAGC,WAAK,CAACX,UAAU,CAACU,EAAE,CAAC,CAAA;AAC/B,EAAA,IAAME,OAAO,GAAA,QAAA,CAAAC,MAAA,CAAYH,EAAE,CAAE,CAAA;AAC7B,EAAA,IAAMI,UAAU,GAAA,WAAA,CAAAD,MAAA,CAAeH,EAAE,CAAE,CAAA;AACnC,EAAA,IAAMK,WAAW,GAAGhE,YAAY,CAACC,GAAG,CAAC,CAAA;AAErC,EAAA,IAAMgE,WAAW,GAAG,CAAAP,KAAK,aAALA,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAALA,KAAK,CAAEQ,QAAQ,EAAE,CAACC,MAAM,KAAI,CAAC,CAAA;AACjD,EAAA,IAAMC,uBAAuB,GAAGH,WAAW,IAAIvB,SAAS,GAAG,IAAI,CAAA;AAC/D,EAAA,IAAM2B,cAAc,GAAGzB,cAAc,IAAIqB,WAAW,GAAGvB,SAAS,CAAA;AAEhE,EAAA,IAAM4B,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGC,CAAC,EAAA;AAAA,IAAA,OAAId,gBAAgB,CAACc,CAAC,CAACC,MAAM,CAACd,KAAK,CAAC,CAAA;AAAA,GAAA,CAAA;AAC9D,EAAA,IAAMe,QAAQ,GAAA,CAAAtD,oBAAA,GAAG8B,UAAU,CAACwB,QAAQ,MAAA,IAAA,IAAAtD,oBAAA,KAAA,KAAA,CAAA,GAAAA,oBAAA,GAAImD,gBAAgB,CAAA;EACxD,IAAMI,kBAAkB,GAAG,CAAC,CAAChC,SAAS,IAAIA,SAAS,KAAK,CAAC,CAAA;AAEzDtC,EAAAA,eAAS,CAAC,YAAM;AACd4D,IAAAA,WAAW,CAAC3D,OAAO,CAACsE,KAAK,CAACC,SAAS,GAAG,MAAM,CAAA;AAC5CZ,IAAAA,WAAW,CAAC3D,OAAO,CAACsE,KAAK,CAACE,MAAM,GAAG,MAAM,CAAA;AACzC,IAAA,IAAMC,YAAY,GAAGd,WAAW,CAAC3D,OAAO,CAACyE,YAAY,CAAA;AACrDd,IAAAA,WAAW,CAAC3D,OAAO,CAACsE,KAAK,CAACE,MAAM,GAAAf,EAAAA,CAAAA,MAAA,CAAMgB,YAAY,GAAG,CAAC,EAAI,IAAA,CAAA,CAAA;AAC5D,GAAC,EAAE,CAACpB,KAAK,CAAC,CAAC,CAAA;AAEX,EAAA,IAAMqB,yBAAyB,GAAG,SAA5BA,yBAAyBA,CAAGR,CAAC,EAAI;AACrC,IAAA,IAAIvB,iBAAiB,IAAI,OAAOU,KAAK,KAAK,QAAQ,EAAE,OAAA;AAEpD,IAAA,IAAMsB,YAAY,GAAGtB,KAAK,CAACuB,IAAI,EAAE,CAAA;IACjC,IAAIvB,KAAK,KAAKsB,YAAY,EAAE,OAAA;AAE5BT,IAAAA,CAAC,CAACC,MAAM,CAACd,KAAK,GAAGsB,YAAY,CAAA;IAC7BP,QAAQ,CAACF,CAAC,CAAC,CAAA;GACZ,CAAA;AAED,EAAA,IAAMW,YAAY,GAAG,SAAfA,YAAYA,CAAGX,CAAC,EAAI;IACxBQ,yBAAyB,CAACR,CAAC,CAAC,CAAA;AAC5BzB,IAAAA,MAAM,aAANA,MAAM,KAAA,KAAA,CAAA,IAANA,MAAM,CAAGyB,CAAC,CAAC,CAAA;GACZ,CAAA;EAED,oBACEY,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAK3C,IAAAA,SAAS,EAAE4C,8BAAU,CAAC,CAAC,yBAAyB,EAAE5C,SAAS,CAAC,CAAA;GAC/D0C,eAAAA,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAK3C,IAAAA,SAAS,EAAC,+BAAA;GACZF,EAAAA,KAAK,iBACJ4C,yBAAA,CAAAC,aAAA,CAACE,KAAK,EAAAC,4BAAA,CAAA;AACExD,IAAAA,QAAQ,EAARA,QAAQ;AACd,IAAA,SAAA,EAAA,EAAA,CAAA+B,MAAA,CAAY0B,eAAS,CAACjD,KAAK,CAAC,EAAS,QAAA,CAAA;AACrCkD,IAAAA,OAAO,EAAE9B,EAAAA;GACLd,EAAAA,UAAU,GAEbN,KAAK,CAET,EACA6B,uBAAuB,iBACtBe,yBAAA,CAAAC,aAAA,CAAA,GAAA,EAAA;AACE3C,IAAAA,SAAS,EAAE4C,8BAAU,CAAC,4BAA4B,EAAE;AAClD,MAAA,mCAAmC,EAAEhB,cAAAA;KACtC,CAAA;GAEAJ,EAAAA,WAAW,EAAC,GAAC,EAACvB,SAAS,CAE3B,CACG,eACNyC,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAA,EAAA,EAAA,CAAAtB,MAAA,CAAY0B,eAAS,CAACjD,KAAK,CAAC,EAAc,aAAA,CAAA;AAC1CE,IAAAA,SAAS,EAAE4C,8BAAU,CAAC,gBAAgB,EAAE,0BAA0B,EAAE;MAClE,uBAAuB,EAAE,CAAC,CAAChD,KAAK;MAChC,0BAA0B,EAAE,CAAC,CAACR,QAAQ;MACtC,uBAAuB,EAAE,CAAC,CAACI,aAAa;AACxC,MAAA,uBAAuB,EAAEZ,IAAI,KAAKf,KAAK,CAACC,KAAK;AAC7C,MAAA,wBAAwB,EAAEc,IAAI,KAAKf,KAAK,CAACE,MAAM;AAC/C,MAAA,uBAAuB,EAAEa,IAAI,KAAKf,KAAK,CAACG,KAAK;AAC7C,MAAA,kCAAkC,EAAEc,MAAM,KAAKZ,MAAM,CAACC,QAAQ;AAC9D,MAAA,8BAA8B,EAAEW,MAAM,KAAKZ,MAAM,CAACE,IAAAA;KACnD,CAAA;AAAE,GAAA,EAEFc,MAAM,iBAAIwD,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAK3C,IAAAA,SAAS,EAAC,wBAAA;AAAwB,GAAA,EAAEd,MAAM,CAAO,eACjEwD,yBAAA,CAAAC,aAAA,aAAAG,4BAAA,CAAA;AACEtF,IAAAA,GAAG,EAAE+D,WAAY;IACjB0B,IAAI,EAAEhF,IAAI,CAACW,IAAI,CAAA;AAAE,GAAA,EAAAsE,aAAA,CAAAA,aAAA,CAAAA,aAAA,CAAA;AAEf9D,IAAAA,QAAQ,EAARA,QAAAA;AAAQ,GAAA,EACJ6C,kBAAkB,IAAI,CAAC9B,cAAc,IAAI;AAAEF,IAAAA,SAAS,EAATA,SAAAA;AAAU,GAAC,GACvDO,UAAU,CAAA,EAAA,EAAA,EAAA;AACbwB,IAAAA,QAAQ,EAARA,QAAQ;AACRf,IAAAA,KAAK,EAALA,KAAAA;AAAK,GAAA,CAAA,EAAA;AAEPZ,IAAAA,MAAM,EAAEoC,YAAAA;AAAa,GAAA,CAAA,CACrB,EACDzD,MAAM,iBAAI0D,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAK3C,IAAAA,SAAS,EAAC,wBAAA;GAA0BhB,EAAAA,MAAM,CAAO,CAC7D,EACL,CAAC,CAACY,KAAK,iBACN8C,yBAAA,CAAAC,aAAA,CAAA,GAAA,EAAA;AACE3C,IAAAA,SAAS,EAAC,uBAAuB;AACjC,IAAA,SAAA,EAAA,EAAA,CAAAqB,MAAA,CAAY0B,eAAS,CAACjD,KAAK,CAAC,EAAe,cAAA,CAAA;AAC3CoB,IAAAA,EAAE,EAAEE,OAAAA;AAAQ,GAAA,EAEXxB,KAAK,CAET,EACAF,QAAQ,iBACPgD,yBAAA,CAAAC,aAAA,CAAA,GAAA,EAAA;AAAG3C,IAAAA,SAAS,EAAC,2BAA2B;AAACkB,IAAAA,EAAE,EAAEI,UAAAA;GAC1C5B,EAAAA,QAAQ,CAEZ,CACG,CAAA;AAEV,CAAC,EACF;AAEDrB,QAAQ,CAAC8E,WAAW,GAAG,UAAU;;;;;"}
@@ -10,9 +10,9 @@ require('./useId-4e3deb5c.js');
10
10
  require('react-router-dom');
11
11
  require('@bigbinary/neeto-hotkeys');
12
12
  require('./overlayManager.js');
13
- require('./index-7a8fe498.js');
13
+ require('./index-0f5141e0.js');
14
14
  require('qs');
15
- var Textarea = require('./Textarea-eaf8b986.js');
15
+ var Textarea = require('./Textarea-a5fa88e6.js');
16
16
  require('./Label.js');
17
17
  require('@babel/runtime/helpers/classCallCheck');
18
18
  require('@babel/runtime/helpers/createClass');
@@ -23,7 +23,7 @@ require('dayjs/plugin/weekday');
23
23
  require('dayjs/plugin/weekOfYear');
24
24
  require('@bigbinary/neeto-cist');
25
25
  require('ramda');
26
- require('./en-c1fe180c.js');
26
+ require('./en-80d0fbff.js');
27
27
  require('@bigbinary/neeto-icons');
28
28
  require('./Button.js');
29
29
  require('./Spinner.js');
@@ -24,8 +24,8 @@ require('@babel/runtime/regenerator');
24
24
  require('react-colorful');
25
25
  require('./tinycolor-b1e9a7b2.js');
26
26
  require('./Dropdown.js');
27
- require('./index-7a8fe498.js');
28
- var DatePicker = require('./index-f86bb638.js');
27
+ require('./index-0f5141e0.js');
28
+ var DatePicker = require('./index-5622361e.js');
29
29
  require('./Input.js');
30
30
  require('./Label.js');
31
31
  require('./MultiEmailInput.js');
@@ -34,7 +34,7 @@ require('./useId-4e3deb5c.js');
34
34
  require('@bigbinary/neeto-hotkeys');
35
35
  require('./overlayManager.js');
36
36
  require('qs');
37
- require('./Textarea-eaf8b986.js');
37
+ require('./Textarea-a5fa88e6.js');
38
38
  require('@babel/runtime/helpers/toConsumableArray');
39
39
  require('./Pane.js');
40
40
  require('./Popover.js');
@@ -62,7 +62,7 @@ require('./Switch.js');
62
62
  require('./Tab.js');
63
63
  require('antd/lib/table');
64
64
  require('react-drag-listview');
65
- require('./HeaderCellMenu-27b494da.js');
65
+ require('./HeaderCellMenu-e9883f63.js');
66
66
  require('react-resizable');
67
67
  require('./Tag.js');
68
68
  require('./Toastr.js');
@@ -74,10 +74,10 @@ require('dayjs/plugin/localeData');
74
74
  require('dayjs/plugin/utc');
75
75
  require('dayjs/plugin/weekday');
76
76
  require('dayjs/plugin/weekOfYear');
77
- require('./en-c1fe180c.js');
77
+ require('./en-80d0fbff.js');
78
78
  require('./Spinner.js');
79
79
  require('./Tooltip.js');
80
- require('./useOverlayManager-763ee731.js');
80
+ require('./useOverlayManager-d4108cf8.js');
81
81
  require('@babel/runtime/helpers/esm/objectWithoutPropertiesLoose');
82
82
  require('@babel/runtime/helpers/esm/inheritsLoose');
83
83
  require('@babel/runtime/helpers/esm/assertThisInitialized');
@@ -9,7 +9,7 @@ var React = require('react');
9
9
  var i18n = require('i18next');
10
10
  var neetoIcons = require('@bigbinary/neeto-icons');
11
11
  var reactToastify = require('react-toastify');
12
- var index = require('./index-7a8fe498.js');
12
+ var index = require('./index-0f5141e0.js');
13
13
  var Linkify = require('linkify-react');
14
14
  require('@babel/runtime/helpers/classCallCheck');
15
15
  require('@babel/runtime/helpers/createClass');
@@ -21,7 +21,7 @@ require('dayjs/plugin/weekOfYear');
21
21
  require('@bigbinary/neeto-cist');
22
22
  require('qs');
23
23
  require('ramda');
24
- require('./en-c1fe180c.js');
24
+ require('./en-80d0fbff.js');
25
25
 
26
26
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
27
27
 
@@ -3,7 +3,7 @@
3
3
  var React = require('react');
4
4
  var reactI18next = require('react-i18next');
5
5
  var i18n = require('i18next');
6
- var en = require('./en-c1fe180c.js');
6
+ var en = require('./en-80d0fbff.js');
7
7
 
8
8
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
9
9
 
package/dist/cjs/Tree.js CHANGED
@@ -8,7 +8,7 @@ var React = require('react');
8
8
  var classnames = require('classnames');
9
9
  var reactI18next = require('react-i18next');
10
10
  var constants = require('./constants.js');
11
- var index = require('./index-7a8fe498.js');
11
+ var index = require('./index-0f5141e0.js');
12
12
  var neetoIcons = require('@bigbinary/neeto-icons');
13
13
  require('antd/locale/de_DE');
14
14
  require('antd/locale/en_US');
@@ -28,7 +28,7 @@ require('dayjs/plugin/weekOfYear');
28
28
  require('@bigbinary/neeto-cist');
29
29
  require('qs');
30
30
  require('ramda');
31
- require('./en-c1fe180c.js');
31
+ require('./en-80d0fbff.js');
32
32
 
33
33
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
34
34
 
@@ -9,7 +9,7 @@ var React = require('react');
9
9
  var classnames = require('classnames');
10
10
  var neetoIcons = require('@bigbinary/neeto-icons');
11
11
  var reactI18next = require('react-i18next');
12
- var index = require('./index-7a8fe498.js');
12
+ var index = require('./index-0f5141e0.js');
13
13
  var constants = require('./constants.js');
14
14
  var Label = require('./Label.js');
15
15
  require('@babel/runtime/helpers/slicedToArray');
@@ -23,7 +23,7 @@ require('dayjs/plugin/weekOfYear');
23
23
  require('@bigbinary/neeto-cist');
24
24
  require('qs');
25
25
  require('ramda');
26
- require('./en-c1fe180c.js');
26
+ require('./en-80d0fbff.js');
27
27
  require('antd/locale/de_DE');
28
28
  require('antd/locale/en_US');
29
29
  require('antd/locale/es_ES');
@@ -3,7 +3,8 @@
3
3
  var neetoui = {
4
4
  blockNavigation: {
5
5
  alertMessage: "All of your unsaved changes will be lost. This can't be undone.",
6
- submitButtonLabel: "Discard changes",
6
+ submitButtonLabel: "Save and continue",
7
+ cancelButtonLabel: "Discard changes",
7
8
  alertTitle: "You have unsaved changes"
8
9
  },
9
10
  actionBlock: {
@@ -36,4 +37,4 @@ var enTranslations = {
36
37
  };
37
38
 
38
39
  exports.enTranslations = enTranslations;
39
- //# sourceMappingURL=en-c1fe180c.js.map
40
+ //# sourceMappingURL=en-80d0fbff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"en-80d0fbff.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -6,7 +6,7 @@ var classnames = require('classnames');
6
6
  var formik = require('formik');
7
7
  var reactI18next = require('react-i18next');
8
8
  var Button = require('../Button.js');
9
- var index = require('../index-7a8fe498.js');
9
+ var index = require('../index-0f5141e0.js');
10
10
  var formik_Button = require('./Button.js');
11
11
  require('@babel/runtime/helpers/defineProperty');
12
12
  require('@babel/runtime/helpers/objectWithoutProperties');
@@ -26,7 +26,7 @@ require('dayjs/plugin/weekOfYear');
26
26
  require('@bigbinary/neeto-cist');
27
27
  require('qs');
28
28
  require('ramda');
29
- require('../en-c1fe180c.js');
29
+ require('../en-80d0fbff.js');
30
30
 
31
31
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
32
32
 
@@ -4,40 +4,39 @@ var _extends = require('@babel/runtime/helpers/extends');
4
4
  var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
5
5
  var React = require('react');
6
6
  var formik = require('formik');
7
- var reactI18next = require('react-i18next');
8
- var Alert = require('../Alert.js');
9
7
  var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
10
8
  var reactRouterDom = require('react-router-dom');
11
9
  require('@bigbinary/neeto-hotkeys');
12
10
  require('../overlayManager.js');
13
- var index = require('../index-7a8fe498.js');
11
+ var index = require('../index-0f5141e0.js');
14
12
  require('@babel/runtime/helpers/defineProperty');
15
13
  require('qs');
16
- require('../Button.js');
14
+ var reactI18next = require('react-i18next');
15
+ var Button = require('../Button.js');
16
+ var Modal = require('../Modal.js');
17
+ var Typography = require('../Typography.js');
18
+ require('@babel/runtime/helpers/classCallCheck');
19
+ require('@babel/runtime/helpers/createClass');
20
+ require('dayjs');
21
+ require('dayjs/plugin/localeData');
22
+ require('dayjs/plugin/utc');
23
+ require('dayjs/plugin/weekday');
24
+ require('dayjs/plugin/weekOfYear');
25
+ require('@bigbinary/neeto-cist');
26
+ require('ramda');
27
+ require('../en-80d0fbff.js');
17
28
  require('classnames');
18
29
  require('../Spinner.js');
19
30
  require('../Tooltip.js');
20
31
  require('@tippyjs/react');
21
32
  require('tippy.js');
22
- require('../Modal.js');
23
33
  require('@bigbinary/neeto-icons');
24
- require('../useOverlayManager-763ee731.js');
34
+ require('../useOverlayManager-d4108cf8.js');
25
35
  require('@babel/runtime/helpers/esm/extends');
26
36
  require('@babel/runtime/helpers/esm/objectWithoutPropertiesLoose');
27
37
  require('@babel/runtime/helpers/esm/inheritsLoose');
28
38
  require('react-dom');
29
39
  require('@babel/runtime/helpers/esm/assertThisInitialized');
30
- require('ramda');
31
- require('../Typography.js');
32
- require('@babel/runtime/helpers/classCallCheck');
33
- require('@babel/runtime/helpers/createClass');
34
- require('dayjs');
35
- require('dayjs/plugin/localeData');
36
- require('dayjs/plugin/utc');
37
- require('dayjs/plugin/weekday');
38
- require('dayjs/plugin/weekOfYear');
39
- require('@bigbinary/neeto-cist');
40
- require('../en-c1fe180c.js');
41
40
 
42
41
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
43
42
 
@@ -110,14 +109,60 @@ var useNavPrompt = function useNavPrompt(_ref) {
110
109
  };
111
110
  };
112
111
 
112
+ /* eslint-disable @bigbinary/neeto/file-name-and-export-name-standards */
113
+ var Alert = function Alert(_ref) {
114
+ var _ref$isOpen = _ref.isOpen,
115
+ isOpen = _ref$isOpen === void 0 ? false : _ref$isOpen,
116
+ _ref$isSubmitting = _ref.isSubmitting,
117
+ isSubmitting = _ref$isSubmitting === void 0 ? false : _ref$isSubmitting,
118
+ onClose = _ref.onClose,
119
+ onSaveChanges = _ref.onSaveChanges,
120
+ onDiscardChanges = _ref.onDiscardChanges;
121
+ var _useTranslation = reactI18next.useTranslation(),
122
+ t = _useTranslation.t,
123
+ i18n = _useTranslation.i18n;
124
+ var saveChangesButtonRef = React.useRef(null);
125
+ var cancelButtonLabel = index.getLocale(i18n, t, "neetoui.blockNavigation.cancelButtonLabel");
126
+ var submitButtonLabel = index.getLocale(i18n, t, "neetoui.blockNavigation.submitButtonLabel");
127
+ return /*#__PURE__*/React__default["default"].createElement(Modal, {
128
+ isOpen: isOpen,
129
+ onClose: onClose,
130
+ closeButton: true,
131
+ closeOnEsc: true,
132
+ closeOnOutsideClick: true,
133
+ "data-cy": "alert-box",
134
+ initialFocusRef: saveChangesButtonRef,
135
+ size: "medium"
136
+ }, /*#__PURE__*/React__default["default"].createElement(Modal.Header, null, /*#__PURE__*/React__default["default"].createElement(Typography, {
137
+ "data-cy": "alert-title",
138
+ style: "h2"
139
+ }, index.getLocale(i18n, t, "neetoui.blockNavigation.alertTitle"))), /*#__PURE__*/React__default["default"].createElement(Modal.Body, null, /*#__PURE__*/React__default["default"].createElement(Typography, {
140
+ "data-cy": "alert-message",
141
+ lineHeight: "normal",
142
+ style: "body2"
143
+ }, index.getLocale(i18n, t, "neetoui.blockNavigation.alertMessage"))), /*#__PURE__*/React__default["default"].createElement(Modal.Footer, {
144
+ className: "neeto-ui-gap-2 neeto-ui-flex neeto-ui-justify-end neeto-ui-items-center"
145
+ }, /*#__PURE__*/React__default["default"].createElement(Button, {
146
+ "data-cy": "alert-cancel-button",
147
+ label: cancelButtonLabel,
148
+ style: "danger",
149
+ onClick: onDiscardChanges
150
+ }), /*#__PURE__*/React__default["default"].createElement(Button, {
151
+ "data-cy": "alert-submit-button",
152
+ disabled: !isOpen,
153
+ label: submitButtonLabel,
154
+ loading: isSubmitting,
155
+ ref: saveChangesButtonRef,
156
+ style: "primary",
157
+ onClick: onSaveChanges
158
+ })));
159
+ };
160
+
113
161
  var _excluded = ["isDirty"];
114
162
  var BlockNavigation = function BlockNavigation(_ref) {
115
163
  var _ref$isDirty = _ref.isDirty,
116
164
  isDirty = _ref$isDirty === void 0 ? false : _ref$isDirty,
117
165
  otherProps = _objectWithoutProperties__default["default"](_ref, _excluded);
118
- var _useTranslation = reactI18next.useTranslation(),
119
- t = _useTranslation.t,
120
- i18n = _useTranslation.i18n;
121
166
  var formikContext = formik.useFormikContext();
122
167
  var shouldBlock = isDirty || Boolean(formikContext) && Boolean(formikContext.dirty);
123
168
  var _useNavPrompt = useNavPrompt({
@@ -126,17 +171,23 @@ var BlockNavigation = function BlockNavigation(_ref) {
126
171
  isBlocked = _useNavPrompt.isBlocked,
127
172
  continueNavigation = _useNavPrompt.continueNavigation,
128
173
  hidePrompt = _useNavPrompt.hidePrompt;
129
- var continueAction = function continueAction() {
174
+ var handleDiscardChanges = function handleDiscardChanges() {
130
175
  if (formikContext) formikContext.resetForm();
176
+ hidePrompt();
131
177
  continueNavigation();
132
178
  };
179
+ var handleSaveChanges = function handleSaveChanges() {
180
+ if (formikContext.isValid) {
181
+ formikContext.submitForm();
182
+ continueNavigation();
183
+ } else formikContext.setTouched(formikContext.errors);
184
+ hidePrompt();
185
+ };
133
186
  return /*#__PURE__*/React__default["default"].createElement(Alert, _extends__default["default"]({
134
187
  isOpen: isBlocked,
135
- message: index.getLocale(i18n, t, "neetoui.blockNavigation.alertMessage"),
136
- title: index.getLocale(i18n, t, "neetoui.blockNavigation.alertTitle"),
137
- submitButtonLabel: index.getLocale(i18n, t, "neetoui.blockNavigation.submitButtonLabel"),
138
188
  onClose: hidePrompt,
139
- onSubmit: continueAction
189
+ onDiscardChanges: handleDiscardChanges,
190
+ onSaveChanges: handleSaveChanges
140
191
  }, otherProps));
141
192
  };
142
193
 
@@ -1 +1 @@
1
- {"version":3,"file":"BlockNavigation.js","sources":["../../../src/hooks/useNavPrompt.js","../../../src/formik/BlockNavigation.jsx"],"sourcesContent":["import { useEffect, useRef, useState } from \"react\";\n\nimport { useHistory } from \"react-router-dom\";\n\nconst useNavPrompt = ({ shouldBlock = true }) => {\n const [isBlocked, setIsBlocked] = useState(false);\n\n const history = useHistory();\n const unblockRef = useRef();\n const navRef = useRef();\n\n const continueNavigation = () => {\n if (isBlocked && unblockRef.current) {\n unblockRef.current?.();\n setIsBlocked(false);\n if (navRef.current) {\n const { action, transition } = navRef.current;\n handleNavigation(action, transition);\n }\n }\n };\n\n const hidePrompt = () => setIsBlocked(false);\n\n const handleNavigation = (action, transition) => {\n switch (action) {\n case \"PUSH\":\n history.push(transition);\n break;\n case \"REPLACE\":\n history.replace(transition);\n break;\n case \"POP\":\n history.goBack();\n break;\n }\n };\n\n useEffect(() => {\n if (shouldBlock) {\n unblockRef.current = history.block((transition, action) => {\n setIsBlocked(true);\n navRef.current = { transition, action };\n\n return false;\n });\n\n return () => {\n if (unblockRef.current) {\n unblockRef.current();\n }\n };\n }\n\n return undefined;\n }, [shouldBlock]);\n\n return { isBlocked, continueNavigation, hidePrompt };\n};\n\nexport default useNavPrompt;\n","/* eslint-disable @bigbinary/neeto/file-name-and-export-name-standards */\nimport React from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Alert from \"components/Alert\";\nimport { useNavPrompt } from \"hooks\";\nimport { getLocale } from \"utils\";\n\nconst BlockNavigation = ({ isDirty = false, ...otherProps }) => {\n const { t, i18n } = useTranslation();\n const formikContext = useFormikContext();\n const shouldBlock =\n isDirty || (Boolean(formikContext) && Boolean(formikContext.dirty));\n\n const { isBlocked, continueNavigation, hidePrompt } = useNavPrompt({\n shouldBlock,\n });\n\n const continueAction = () => {\n if (formikContext) formikContext.resetForm();\n continueNavigation();\n };\n\n return (\n <Alert\n isOpen={isBlocked}\n message={getLocale(i18n, t, \"neetoui.blockNavigation.alertMessage\")}\n title={getLocale(i18n, t, \"neetoui.blockNavigation.alertTitle\")}\n submitButtonLabel={getLocale(\n i18n,\n t,\n \"neetoui.blockNavigation.submitButtonLabel\"\n )}\n onClose={hidePrompt}\n onSubmit={continueAction}\n {...otherProps}\n />\n );\n};\n\nBlockNavigation.propTypes = {\n isDirty: PropTypes.bool,\n message: PropTypes.string,\n title: PropTypes.string,\n submitButtonLabel: PropTypes.string,\n};\n\nexport default BlockNavigation;\n"],"names":["useNavPrompt","_ref","_ref$shouldBlock","shouldBlock","_useState","useState","_useState2","_slicedToArray","isBlocked","setIsBlocked","history","useHistory","unblockRef","useRef","navRef","continueNavigation","current","_unblockRef$current","call","_navRef$current","action","transition","handleNavigation","hidePrompt","push","replace","goBack","useEffect","block","undefined","BlockNavigation","_ref$isDirty","isDirty","otherProps","_objectWithoutProperties","_excluded","_useTranslation","useTranslation","t","i18n","formikContext","useFormikContext","Boolean","dirty","_useNavPrompt","continueAction","resetForm","React","createElement","Alert","_extends","isOpen","message","getLocale","title","submitButtonLabel","onClose","onSubmit"],"mappings":"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"}
1
+ {"version":3,"file":"BlockNavigation.js","sources":["../../../src/hooks/useNavPrompt.js","../../../src/formik/BlockNavigation/Alert.jsx","../../../src/formik/BlockNavigation/index.jsx"],"sourcesContent":["import { useEffect, useRef, useState } from \"react\";\n\nimport { useHistory } from \"react-router-dom\";\n\nconst useNavPrompt = ({ shouldBlock = true }) => {\n const [isBlocked, setIsBlocked] = useState(false);\n\n const history = useHistory();\n const unblockRef = useRef();\n const navRef = useRef();\n\n const continueNavigation = () => {\n if (isBlocked && unblockRef.current) {\n unblockRef.current?.();\n setIsBlocked(false);\n if (navRef.current) {\n const { action, transition } = navRef.current;\n handleNavigation(action, transition);\n }\n }\n };\n\n const hidePrompt = () => setIsBlocked(false);\n\n const handleNavigation = (action, transition) => {\n switch (action) {\n case \"PUSH\":\n history.push(transition);\n break;\n case \"REPLACE\":\n history.replace(transition);\n break;\n case \"POP\":\n history.goBack();\n break;\n }\n };\n\n useEffect(() => {\n if (shouldBlock) {\n unblockRef.current = history.block((transition, action) => {\n setIsBlocked(true);\n navRef.current = { transition, action };\n\n return false;\n });\n\n return () => {\n if (unblockRef.current) {\n unblockRef.current();\n }\n };\n }\n\n return undefined;\n }, [shouldBlock]);\n\n return { isBlocked, continueNavigation, hidePrompt };\n};\n\nexport default useNavPrompt;\n","/* eslint-disable @bigbinary/neeto/file-name-and-export-name-standards */\nimport React, { useRef } from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport Button from \"components/Button\";\nimport Modal from \"components/Modal\";\nimport Typography from \"components/Typography\";\nimport { getLocale } from \"utils\";\n\nconst Alert = ({\n isOpen = false,\n isSubmitting = false,\n onClose,\n onSaveChanges,\n onDiscardChanges,\n}) => {\n const { t, i18n } = useTranslation();\n\n const saveChangesButtonRef = useRef(null);\n\n const cancelButtonLabel = getLocale(\n i18n,\n t,\n \"neetoui.blockNavigation.cancelButtonLabel\"\n );\n\n const submitButtonLabel = getLocale(\n i18n,\n t,\n \"neetoui.blockNavigation.submitButtonLabel\"\n );\n\n return (\n <Modal\n {...{ isOpen, onClose }}\n closeButton\n closeOnEsc\n closeOnOutsideClick\n data-cy=\"alert-box\"\n initialFocusRef={saveChangesButtonRef}\n size=\"medium\"\n >\n <Modal.Header>\n <Typography data-cy=\"alert-title\" style=\"h2\">\n {getLocale(i18n, t, \"neetoui.blockNavigation.alertTitle\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <Typography data-cy=\"alert-message\" lineHeight=\"normal\" style=\"body2\">\n {getLocale(i18n, t, \"neetoui.blockNavigation.alertMessage\")}\n </Typography>\n </Modal.Body>\n <Modal.Footer className=\"neeto-ui-gap-2 neeto-ui-flex neeto-ui-justify-end neeto-ui-items-center\">\n <Button\n data-cy=\"alert-cancel-button\"\n label={cancelButtonLabel}\n style=\"danger\"\n onClick={onDiscardChanges}\n />\n <Button\n data-cy=\"alert-submit-button\"\n disabled={!isOpen}\n label={submitButtonLabel}\n loading={isSubmitting}\n ref={saveChangesButtonRef}\n style=\"primary\"\n onClick={onSaveChanges}\n />\n </Modal.Footer>\n </Modal>\n );\n};\n\nexport default Alert;\n","/* eslint-disable @bigbinary/neeto/file-name-and-export-name-standards */\nimport React from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport PropTypes from \"prop-types\";\n\nimport { useNavPrompt } from \"hooks\";\n\nimport Alert from \"./Alert\";\n\nconst BlockNavigation = ({ isDirty = false, ...otherProps }) => {\n const formikContext = useFormikContext();\n const shouldBlock =\n isDirty || (Boolean(formikContext) && Boolean(formikContext.dirty));\n\n const { isBlocked, continueNavigation, hidePrompt } = useNavPrompt({\n shouldBlock,\n });\n\n const handleDiscardChanges = () => {\n if (formikContext) formikContext.resetForm();\n hidePrompt();\n continueNavigation();\n };\n\n const handleSaveChanges = () => {\n if (formikContext.isValid) {\n formikContext.submitForm();\n continueNavigation();\n } else formikContext.setTouched(formikContext.errors);\n\n hidePrompt();\n };\n\n return (\n <Alert\n isOpen={isBlocked}\n onClose={hidePrompt}\n onDiscardChanges={handleDiscardChanges}\n onSaveChanges={handleSaveChanges}\n {...otherProps}\n />\n );\n};\n\nBlockNavigation.propTypes = {\n isDirty: PropTypes.bool,\n message: PropTypes.string,\n title: PropTypes.string,\n submitButtonLabel: PropTypes.string,\n};\n\nexport default BlockNavigation;\n"],"names":["useNavPrompt","_ref","_ref$shouldBlock","shouldBlock","_useState","useState","_useState2","_slicedToArray","isBlocked","setIsBlocked","history","useHistory","unblockRef","useRef","navRef","continueNavigation","current","_unblockRef$current","call","_navRef$current","action","transition","handleNavigation","hidePrompt","push","replace","goBack","useEffect","block","undefined","Alert","_ref$isOpen","isOpen","_ref$isSubmitting","isSubmitting","onClose","onSaveChanges","onDiscardChanges","_useTranslation","useTranslation","t","i18n","saveChangesButtonRef","cancelButtonLabel","getLocale","submitButtonLabel","React","createElement","Modal","closeButton","closeOnEsc","closeOnOutsideClick","initialFocusRef","size","Header","Typography","style","Body","lineHeight","Footer","className","Button","label","onClick","disabled","loading","ref","BlockNavigation","_ref$isDirty","isDirty","otherProps","_objectWithoutProperties","_excluded","formikContext","useFormikContext","Boolean","dirty","_useNavPrompt","handleDiscardChanges","resetForm","handleSaveChanges","isValid","submitForm","setTouched","errors","_extends"],"mappings":"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"}
@@ -15,7 +15,7 @@ require('@bigbinary/neeto-hotkeys');
15
15
  require('../overlayManager.js');
16
16
  require('@babel/runtime/helpers/classCallCheck');
17
17
  require('@babel/runtime/helpers/createClass');
18
- require('../index-7a8fe498.js');
18
+ require('../index-0f5141e0.js');
19
19
  require('dayjs');
20
20
  require('dayjs/plugin/localeData');
21
21
  require('dayjs/plugin/utc');
@@ -23,7 +23,7 @@ require('dayjs/plugin/weekday');
23
23
  require('dayjs/plugin/weekOfYear');
24
24
  require('@bigbinary/neeto-cist');
25
25
  require('qs');
26
- require('../en-c1fe180c.js');
26
+ require('../en-80d0fbff.js');
27
27
  require('../Label.js');
28
28
  require('@bigbinary/neeto-icons');
29
29
  require('../Button.js');
@@ -15,7 +15,7 @@ require('@bigbinary/neeto-hotkeys');
15
15
  require('../overlayManager.js');
16
16
  require('@babel/runtime/helpers/classCallCheck');
17
17
  require('@babel/runtime/helpers/createClass');
18
- require('../index-7a8fe498.js');
18
+ require('../index-0f5141e0.js');
19
19
  require('dayjs');
20
20
  require('dayjs/plugin/localeData');
21
21
  require('dayjs/plugin/utc');
@@ -23,7 +23,7 @@ require('dayjs/plugin/weekday');
23
23
  require('dayjs/plugin/weekOfYear');
24
24
  require('@bigbinary/neeto-cist');
25
25
  require('qs');
26
- require('../en-c1fe180c.js');
26
+ require('../en-80d0fbff.js');
27
27
  require('../Label.js');
28
28
  require('@bigbinary/neeto-icons');
29
29
  require('../Button.js');
@@ -31,7 +31,7 @@ require('@babel/runtime/helpers/inherits');
31
31
  require('@babel/runtime/helpers/createSuper');
32
32
  require('@babel/runtime/helpers/taggedTemplateLiteral');
33
33
  require('@babel/runtime/helpers/typeof');
34
- require('../index-7a8fe498.js');
34
+ require('../index-0f5141e0.js');
35
35
  require('dayjs');
36
36
  require('dayjs/plugin/localeData');
37
37
  require('dayjs/plugin/utc');
@@ -39,7 +39,7 @@ require('dayjs/plugin/weekday');
39
39
  require('dayjs/plugin/weekOfYear');
40
40
  require('@bigbinary/neeto-cist');
41
41
  require('qs');
42
- require('../en-c1fe180c.js');
42
+ require('../en-80d0fbff.js');
43
43
  require('@babel/runtime/helpers/toArray');
44
44
  require('@bigbinary/neeto-icons');
45
45
  require('../Tag.js');
@@ -24,7 +24,7 @@ require('@bigbinary/neeto-hotkeys');
24
24
  require('../overlayManager.js');
25
25
  require('@babel/runtime/helpers/classCallCheck');
26
26
  require('@babel/runtime/helpers/createClass');
27
- require('../index-7a8fe498.js');
27
+ require('../index-0f5141e0.js');
28
28
  require('dayjs');
29
29
  require('dayjs/plugin/localeData');
30
30
  require('dayjs/plugin/utc');
@@ -32,7 +32,7 @@ require('dayjs/plugin/weekday');
32
32
  require('dayjs/plugin/weekOfYear');
33
33
  require('@bigbinary/neeto-cist');
34
34
  require('qs');
35
- require('../en-c1fe180c.js');
35
+ require('../en-80d0fbff.js');
36
36
 
37
37
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
38
38
 
@@ -37,14 +37,14 @@ require('../useId-4e3deb5c.js');
37
37
  require('react-router-dom');
38
38
  require('@bigbinary/neeto-hotkeys');
39
39
  require('../overlayManager.js');
40
- require('../index-7a8fe498.js');
40
+ require('../index-0f5141e0.js');
41
41
  require('dayjs');
42
42
  require('dayjs/plugin/localeData');
43
43
  require('dayjs/plugin/utc');
44
44
  require('dayjs/plugin/weekday');
45
45
  require('dayjs/plugin/weekOfYear');
46
46
  require('qs');
47
- require('../en-c1fe180c.js');
47
+ require('../en-80d0fbff.js');
48
48
  require('../Label.js');
49
49
  require('../Button.js');
50
50
  require('../Spinner.js');
@@ -35,7 +35,7 @@ require('@bigbinary/neeto-hotkeys');
35
35
  require('../overlayManager.js');
36
36
  require('@babel/runtime/helpers/classCallCheck');
37
37
  require('@babel/runtime/helpers/createClass');
38
- require('../index-7a8fe498.js');
38
+ require('../index-0f5141e0.js');
39
39
  require('dayjs');
40
40
  require('dayjs/plugin/localeData');
41
41
  require('dayjs/plugin/utc');
@@ -43,7 +43,7 @@ require('dayjs/plugin/weekday');
43
43
  require('dayjs/plugin/weekOfYear');
44
44
  require('@bigbinary/neeto-cist');
45
45
  require('qs');
46
- require('../en-c1fe180c.js');
46
+ require('../en-80d0fbff.js');
47
47
 
48
48
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
49
49
 
@@ -16,7 +16,7 @@ require('@bigbinary/neeto-hotkeys');
16
16
  require('../overlayManager.js');
17
17
  require('@babel/runtime/helpers/classCallCheck');
18
18
  require('@babel/runtime/helpers/createClass');
19
- require('../index-7a8fe498.js');
19
+ require('../index-0f5141e0.js');
20
20
  require('dayjs');
21
21
  require('dayjs/plugin/localeData');
22
22
  require('dayjs/plugin/utc');
@@ -24,7 +24,7 @@ require('dayjs/plugin/weekday');
24
24
  require('dayjs/plugin/weekOfYear');
25
25
  require('@bigbinary/neeto-cist');
26
26
  require('qs');
27
- require('../en-c1fe180c.js');
27
+ require('../en-80d0fbff.js');
28
28
  require('../Label.js');
29
29
  require('../Button.js');
30
30
  require('../Spinner.js');
@@ -6,7 +6,7 @@ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProp
6
6
  var React = require('react');
7
7
  var formik = require('formik');
8
8
  var ramda = require('ramda');
9
- var Textarea = require('../Textarea-eaf8b986.js');
9
+ var Textarea = require('../Textarea-a5fa88e6.js');
10
10
  require('@babel/runtime/helpers/slicedToArray');
11
11
  require('classnames');
12
12
  require('../useId-4e3deb5c.js');
@@ -15,7 +15,7 @@ require('@bigbinary/neeto-hotkeys');
15
15
  require('../overlayManager.js');
16
16
  require('@babel/runtime/helpers/classCallCheck');
17
17
  require('@babel/runtime/helpers/createClass');
18
- require('../index-7a8fe498.js');
18
+ require('../index-0f5141e0.js');
19
19
  require('dayjs');
20
20
  require('dayjs/plugin/localeData');
21
21
  require('dayjs/plugin/utc');
@@ -23,7 +23,7 @@ require('dayjs/plugin/weekday');
23
23
  require('dayjs/plugin/weekOfYear');
24
24
  require('@bigbinary/neeto-cist');
25
25
  require('qs');
26
- require('../en-c1fe180c.js');
26
+ require('../en-80d0fbff.js');
27
27
  require('../Label.js');
28
28
  require('@bigbinary/neeto-icons');
29
29
  require('../Button.js');
@@ -13,7 +13,7 @@ require('@babel/runtime/helpers/defineProperty');
13
13
  require('classnames');
14
14
  require('@bigbinary/neeto-icons');
15
15
  require('react-i18next');
16
- require('../index-7a8fe498.js');
16
+ require('../index-0f5141e0.js');
17
17
  require('@babel/runtime/helpers/classCallCheck');
18
18
  require('@babel/runtime/helpers/createClass');
19
19
  require('dayjs');
@@ -23,7 +23,7 @@ require('dayjs/plugin/weekday');
23
23
  require('dayjs/plugin/weekOfYear');
24
24
  require('@bigbinary/neeto-cist');
25
25
  require('qs');
26
- require('../en-c1fe180c.js');
26
+ require('../en-80d0fbff.js');
27
27
  require('../constants.js');
28
28
  require('antd/locale/de_DE');
29
29
  require('antd/locale/en_US');