@bigbinary/neeto-molecules 1.15.68 → 1.16.0

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/README.md CHANGED
@@ -25,6 +25,7 @@ https://neeto-molecules.neeto.com/
25
25
  - [CustomDomainDashboard](./docs/components/CustomDomainDashboard.md)
26
26
  - [DateFormat/TimeFormat](./docs/components/DateFormatTimeFormat.md)
27
27
  - [DateRangeFilter](./docs/components/DateRangeFilter.md)
28
+ - [DeleteArchiveModal](./docs/components/DeleteArchiveModal.md)
28
29
  - [DocumentEditor](./docs/components/DocumentEditor.md)
29
30
  - [DownloadMobileAppCallout](./docs/components/DownloadMobileAppCallout.md)
30
31
  - [DynamicVariables](./docs/components/DynamicVariables.md)
@@ -0,0 +1,86 @@
1
+ import { _ as _slicedToArray } from './slicedToArray-b4278ecd.js';
2
+ import React__default, { useState, useEffect } from 'react';
3
+ import { noop } from '@bigbinary/neeto-cist';
4
+ import { Modal, Typography, Checkbox, Button } from '@bigbinary/neetoui';
5
+ import { not } from 'ramda';
6
+ import { useTranslation } from 'react-i18next';
7
+
8
+ var DeleteArchiveModal = function DeleteArchiveModal(_ref) {
9
+ var _ref$checkboxLabel = _ref.checkboxLabel,
10
+ checkboxLabel = _ref$checkboxLabel === void 0 ? "" : _ref$checkboxLabel,
11
+ _ref$className = _ref.className,
12
+ className = _ref$className === void 0 ? "" : _ref$className,
13
+ _ref$description = _ref.description,
14
+ description = _ref$description === void 0 ? "" : _ref$description,
15
+ _ref$isArchiving = _ref.isArchiving,
16
+ isArchiving = _ref$isArchiving === void 0 ? false : _ref$isArchiving,
17
+ _ref$isDeleting = _ref.isDeleting,
18
+ isDeleting = _ref$isDeleting === void 0 ? false : _ref$isDeleting,
19
+ _ref$isOpen = _ref.isOpen,
20
+ isOpen = _ref$isOpen === void 0 ? false : _ref$isOpen,
21
+ _ref$onArchive = _ref.onArchive,
22
+ onArchive = _ref$onArchive === void 0 ? noop : _ref$onArchive,
23
+ _ref$onClose = _ref.onClose,
24
+ onClose = _ref$onClose === void 0 ? noop : _ref$onClose,
25
+ _ref$onDelete = _ref.onDelete,
26
+ onDelete = _ref$onDelete === void 0 ? noop : _ref$onDelete,
27
+ _ref$title = _ref.title,
28
+ title = _ref$title === void 0 ? "" : _ref$title;
29
+ var _useTranslation = useTranslation(),
30
+ t = _useTranslation.t;
31
+ var _useState = useState(false),
32
+ _useState2 = _slicedToArray(_useState, 2),
33
+ isChecked = _useState2[0],
34
+ setIsChecked = _useState2[1];
35
+ var handleClose = function handleClose() {
36
+ setIsChecked(false);
37
+ onClose();
38
+ };
39
+ useEffect(function () {
40
+ if (not(isOpen)) setIsChecked(false);
41
+ }, [isOpen]);
42
+ return /*#__PURE__*/React__default.createElement(Modal, {
43
+ className: className,
44
+ isOpen: isOpen,
45
+ "data-cy": "alert-box",
46
+ "data-testid": "delete-archive-modal",
47
+ onClose: handleClose
48
+ }, /*#__PURE__*/React__default.createElement(Modal.Header, null, /*#__PURE__*/React__default.createElement(Typography, {
49
+ "data-cy": "delete-archive-alert-title",
50
+ style: "h2"
51
+ }, title)), /*#__PURE__*/React__default.createElement(Modal.Body, null, /*#__PURE__*/React__default.createElement(Typography, {
52
+ "data-cy": "delete-archive-alert-message",
53
+ lineHeight: "normal",
54
+ style: "body2"
55
+ }, description), /*#__PURE__*/React__default.createElement(Checkbox, {
56
+ checked: isChecked,
57
+ className: "mt-4",
58
+ "data-cy": "delete-archive-alert-archive-checkbox",
59
+ "data-testid": "delete-archive-alert-archive-checkbox",
60
+ label: checkboxLabel,
61
+ onChange: function onChange() {
62
+ return setIsChecked(function (isChecked) {
63
+ return !isChecked;
64
+ });
65
+ }
66
+ })), /*#__PURE__*/React__default.createElement(Modal.Footer, {
67
+ className: "neeto-ui-gap-2 neeto-ui-flex neeto-ui-items-center"
68
+ }, /*#__PURE__*/React__default.createElement(Button, {
69
+ "data-cy": "delete-archive-alert-archive-button",
70
+ disabled: not(isOpen),
71
+ label: t("neetoMolecules.common.actions.archive"),
72
+ loading: isArchiving,
73
+ style: "secondary",
74
+ onClick: onArchive
75
+ }), /*#__PURE__*/React__default.createElement(Button, {
76
+ "data-cy": "delete-archive-alert-delete-button",
77
+ disabled: not(isChecked),
78
+ label: t("neetoMolecules.common.actions.delete"),
79
+ loading: isDeleting,
80
+ style: "danger",
81
+ onClick: onDelete
82
+ })));
83
+ };
84
+
85
+ export { DeleteArchiveModal as default };
86
+ //# sourceMappingURL=DeleteArchiveModal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeleteArchiveModal.js","sources":["../src/components/DeleteArchiveModal/index.jsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { Button, Checkbox, Modal, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nconst DeleteArchiveModal = ({\n checkboxLabel = \"\",\n className = \"\",\n description = \"\",\n isArchiving = false,\n isDeleting = false,\n isOpen = false,\n onArchive = noop,\n onClose = noop,\n onDelete = noop,\n title = \"\",\n}) => {\n const { t } = useTranslation();\n\n const [isChecked, setIsChecked] = useState(false);\n\n const handleClose = () => {\n setIsChecked(false);\n onClose();\n };\n\n useEffect(() => {\n if (not(isOpen)) setIsChecked(false);\n }, [isOpen]);\n\n return (\n <Modal\n {...{ className, isOpen }}\n data-cy=\"alert-box\"\n data-testid=\"delete-archive-modal\"\n onClose={handleClose}\n >\n <Modal.Header>\n <Typography data-cy=\"delete-archive-alert-title\" style=\"h2\">\n {title}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <Typography\n data-cy=\"delete-archive-alert-message\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {description}\n </Typography>\n <Checkbox\n checked={isChecked}\n className=\"mt-4\"\n data-cy=\"delete-archive-alert-archive-checkbox\"\n data-testid=\"delete-archive-alert-archive-checkbox\"\n label={checkboxLabel}\n onChange={() => setIsChecked(isChecked => !isChecked)}\n />\n </Modal.Body>\n <Modal.Footer className=\"neeto-ui-gap-2 neeto-ui-flex neeto-ui-items-center\">\n <Button\n data-cy=\"delete-archive-alert-archive-button\"\n disabled={not(isOpen)}\n label={t(\"neetoMolecules.common.actions.archive\")}\n loading={isArchiving}\n style=\"secondary\"\n onClick={onArchive}\n />\n <Button\n data-cy=\"delete-archive-alert-delete-button\"\n disabled={not(isChecked)}\n label={t(\"neetoMolecules.common.actions.delete\")}\n loading={isDeleting}\n style=\"danger\"\n onClick={onDelete}\n />\n </Modal.Footer>\n </Modal>\n );\n};\n\nDeleteArchiveModal.propTypes = {\n /**\n * To specify whether the modal should be opened or closed.\n */\n isOpen: PropTypes.bool,\n /**\n * To be passed to loading prop of the archive button\n */\n isArchiving: PropTypes.bool,\n /**\n * To be passed to loading prop of the delete button\n */\n isDeleting: PropTypes.bool,\n /**\n * Additional classes to be added to the modal\n */\n className: PropTypes.string,\n /**\n * Function to be called when the modal is closed\n */\n onClose: PropTypes.func,\n /**\n * Function to be called when the archive button is clicked\n */\n onArchive: PropTypes.func,\n /**\n * Function to be called when the delete button is clicked\n * */\n onDelete: PropTypes.func,\n /**\n * Title of the modal\n */\n title: PropTypes.string,\n /**\n * Description of the modal\n */\n description: PropTypes.string,\n /**\n * Label for the checkbox\n */\n checkboxLabel: PropTypes.string,\n};\n\nexport default DeleteArchiveModal;\n"],"names":["DeleteArchiveModal","_ref","_ref$checkboxLabel","checkboxLabel","_ref$className","className","_ref$description","description","_ref$isArchiving","isArchiving","_ref$isDeleting","isDeleting","_ref$isOpen","isOpen","_ref$onArchive","onArchive","noop","_ref$onClose","onClose","_ref$onDelete","onDelete","_ref$title","title","_useTranslation","useTranslation","t","_useState","useState","_useState2","_slicedToArray","isChecked","setIsChecked","handleClose","useEffect","not","React","createElement","Modal","Header","Typography","style","Body","lineHeight","Checkbox","checked","label","onChange","Footer","Button","disabled","loading","onClick"],"mappings":"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"}
@@ -0,0 +1,92 @@
1
+ 'use strict';
2
+
3
+ var slicedToArray = require('./slicedToArray-f320d9e7.js');
4
+ var React = require('react');
5
+ var neetoCist = require('@bigbinary/neeto-cist');
6
+ var neetoui = require('@bigbinary/neetoui');
7
+ var ramda = require('ramda');
8
+ var reactI18next = require('react-i18next');
9
+
10
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
11
+
12
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
13
+
14
+ var DeleteArchiveModal = function DeleteArchiveModal(_ref) {
15
+ var _ref$checkboxLabel = _ref.checkboxLabel,
16
+ checkboxLabel = _ref$checkboxLabel === void 0 ? "" : _ref$checkboxLabel,
17
+ _ref$className = _ref.className,
18
+ className = _ref$className === void 0 ? "" : _ref$className,
19
+ _ref$description = _ref.description,
20
+ description = _ref$description === void 0 ? "" : _ref$description,
21
+ _ref$isArchiving = _ref.isArchiving,
22
+ isArchiving = _ref$isArchiving === void 0 ? false : _ref$isArchiving,
23
+ _ref$isDeleting = _ref.isDeleting,
24
+ isDeleting = _ref$isDeleting === void 0 ? false : _ref$isDeleting,
25
+ _ref$isOpen = _ref.isOpen,
26
+ isOpen = _ref$isOpen === void 0 ? false : _ref$isOpen,
27
+ _ref$onArchive = _ref.onArchive,
28
+ onArchive = _ref$onArchive === void 0 ? neetoCist.noop : _ref$onArchive,
29
+ _ref$onClose = _ref.onClose,
30
+ onClose = _ref$onClose === void 0 ? neetoCist.noop : _ref$onClose,
31
+ _ref$onDelete = _ref.onDelete,
32
+ onDelete = _ref$onDelete === void 0 ? neetoCist.noop : _ref$onDelete,
33
+ _ref$title = _ref.title,
34
+ title = _ref$title === void 0 ? "" : _ref$title;
35
+ var _useTranslation = reactI18next.useTranslation(),
36
+ t = _useTranslation.t;
37
+ var _useState = React.useState(false),
38
+ _useState2 = slicedToArray._slicedToArray(_useState, 2),
39
+ isChecked = _useState2[0],
40
+ setIsChecked = _useState2[1];
41
+ var handleClose = function handleClose() {
42
+ setIsChecked(false);
43
+ onClose();
44
+ };
45
+ React.useEffect(function () {
46
+ if (ramda.not(isOpen)) setIsChecked(false);
47
+ }, [isOpen]);
48
+ return /*#__PURE__*/React__default["default"].createElement(neetoui.Modal, {
49
+ className: className,
50
+ isOpen: isOpen,
51
+ "data-cy": "alert-box",
52
+ "data-testid": "delete-archive-modal",
53
+ onClose: handleClose
54
+ }, /*#__PURE__*/React__default["default"].createElement(neetoui.Modal.Header, null, /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
55
+ "data-cy": "delete-archive-alert-title",
56
+ style: "h2"
57
+ }, title)), /*#__PURE__*/React__default["default"].createElement(neetoui.Modal.Body, null, /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
58
+ "data-cy": "delete-archive-alert-message",
59
+ lineHeight: "normal",
60
+ style: "body2"
61
+ }, description), /*#__PURE__*/React__default["default"].createElement(neetoui.Checkbox, {
62
+ checked: isChecked,
63
+ className: "mt-4",
64
+ "data-cy": "delete-archive-alert-archive-checkbox",
65
+ "data-testid": "delete-archive-alert-archive-checkbox",
66
+ label: checkboxLabel,
67
+ onChange: function onChange() {
68
+ return setIsChecked(function (isChecked) {
69
+ return !isChecked;
70
+ });
71
+ }
72
+ })), /*#__PURE__*/React__default["default"].createElement(neetoui.Modal.Footer, {
73
+ className: "neeto-ui-gap-2 neeto-ui-flex neeto-ui-items-center"
74
+ }, /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
75
+ "data-cy": "delete-archive-alert-archive-button",
76
+ disabled: ramda.not(isOpen),
77
+ label: t("neetoMolecules.common.actions.archive"),
78
+ loading: isArchiving,
79
+ style: "secondary",
80
+ onClick: onArchive
81
+ }), /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
82
+ "data-cy": "delete-archive-alert-delete-button",
83
+ disabled: ramda.not(isChecked),
84
+ label: t("neetoMolecules.common.actions.delete"),
85
+ loading: isDeleting,
86
+ style: "danger",
87
+ onClick: onDelete
88
+ })));
89
+ };
90
+
91
+ module.exports = DeleteArchiveModal;
92
+ //# sourceMappingURL=DeleteArchiveModal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeleteArchiveModal.js","sources":["../../src/components/DeleteArchiveModal/index.jsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\n\nimport { noop } from \"neetocist\";\nimport { Button, Checkbox, Modal, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nconst DeleteArchiveModal = ({\n checkboxLabel = \"\",\n className = \"\",\n description = \"\",\n isArchiving = false,\n isDeleting = false,\n isOpen = false,\n onArchive = noop,\n onClose = noop,\n onDelete = noop,\n title = \"\",\n}) => {\n const { t } = useTranslation();\n\n const [isChecked, setIsChecked] = useState(false);\n\n const handleClose = () => {\n setIsChecked(false);\n onClose();\n };\n\n useEffect(() => {\n if (not(isOpen)) setIsChecked(false);\n }, [isOpen]);\n\n return (\n <Modal\n {...{ className, isOpen }}\n data-cy=\"alert-box\"\n data-testid=\"delete-archive-modal\"\n onClose={handleClose}\n >\n <Modal.Header>\n <Typography data-cy=\"delete-archive-alert-title\" style=\"h2\">\n {title}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <Typography\n data-cy=\"delete-archive-alert-message\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {description}\n </Typography>\n <Checkbox\n checked={isChecked}\n className=\"mt-4\"\n data-cy=\"delete-archive-alert-archive-checkbox\"\n data-testid=\"delete-archive-alert-archive-checkbox\"\n label={checkboxLabel}\n onChange={() => setIsChecked(isChecked => !isChecked)}\n />\n </Modal.Body>\n <Modal.Footer className=\"neeto-ui-gap-2 neeto-ui-flex neeto-ui-items-center\">\n <Button\n data-cy=\"delete-archive-alert-archive-button\"\n disabled={not(isOpen)}\n label={t(\"neetoMolecules.common.actions.archive\")}\n loading={isArchiving}\n style=\"secondary\"\n onClick={onArchive}\n />\n <Button\n data-cy=\"delete-archive-alert-delete-button\"\n disabled={not(isChecked)}\n label={t(\"neetoMolecules.common.actions.delete\")}\n loading={isDeleting}\n style=\"danger\"\n onClick={onDelete}\n />\n </Modal.Footer>\n </Modal>\n );\n};\n\nDeleteArchiveModal.propTypes = {\n /**\n * To specify whether the modal should be opened or closed.\n */\n isOpen: PropTypes.bool,\n /**\n * To be passed to loading prop of the archive button\n */\n isArchiving: PropTypes.bool,\n /**\n * To be passed to loading prop of the delete button\n */\n isDeleting: PropTypes.bool,\n /**\n * Additional classes to be added to the modal\n */\n className: PropTypes.string,\n /**\n * Function to be called when the modal is closed\n */\n onClose: PropTypes.func,\n /**\n * Function to be called when the archive button is clicked\n */\n onArchive: PropTypes.func,\n /**\n * Function to be called when the delete button is clicked\n * */\n onDelete: PropTypes.func,\n /**\n * Title of the modal\n */\n title: PropTypes.string,\n /**\n * Description of the modal\n */\n description: PropTypes.string,\n /**\n * Label for the checkbox\n */\n checkboxLabel: PropTypes.string,\n};\n\nexport default DeleteArchiveModal;\n"],"names":["DeleteArchiveModal","_ref","_ref$checkboxLabel","checkboxLabel","_ref$className","className","_ref$description","description","_ref$isArchiving","isArchiving","_ref$isDeleting","isDeleting","_ref$isOpen","isOpen","_ref$onArchive","onArchive","noop","_ref$onClose","onClose","_ref$onDelete","onDelete","_ref$title","title","_useTranslation","useTranslation","t","_useState","useState","_useState2","_slicedToArray","isChecked","setIsChecked","handleClose","useEffect","not","React","createElement","Modal","Header","Typography","style","Body","lineHeight","Checkbox","checked","label","onChange","Footer","Button","disabled","loading","onClick"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-molecules",
3
- "version": "1.15.68",
3
+ "version": "1.16.0",
4
4
  "description": "A package of reusable molecular components for neeto products.",
5
5
  "repository": "git@github.com:bigbinary/neeto-molecules.git",
6
6
  "author": "Amaljith K <amaljith.k@bigbinary.com>",
@@ -0,0 +1,60 @@
1
+ import React from "react";
2
+ /**
3
+ *
4
+ * The DeleteArchiveModal component is designed to facilitate the deletion of an entity, emphasizing the irreversible nature of this action through a confirmation checkbox. Additionally, it provides an option to archive the entity instead of deleting it.
5
+ *
6
+ * @example
7
+ *
8
+ * import React from "react";
9
+ * import DeleteArchiveModal from "@bigbinary/neeto-molecules/DeleteArchiveModal";
10
+ *
11
+ * import { deleteProject, archiveProject } from "apis/projectApi.js";
12
+ *
13
+ * const App = ({ project }) => {
14
+ * const [isDeleting, setIsDeleting] = useState(false);
15
+ * const [isArchiving, setIsArchiving] = useState(false);
16
+ * const [showModal, setShowModal] = useState(false);
17
+ *
18
+ * return (
19
+ * <DeleteArchiveModal
20
+ * checkboxLabel="Yes, delete <Form_Name>"
21
+ * description={
22
+ * `The selected form <Form_Name> and all associated responses will be permanently deleted.
23
+ *
24
+ * Since, we won't be able to recover the deleted form we suggest you to archive the form.`
25
+ * }
26
+ * isArchiving={isArchiving}
27
+ * isDeleting={isDeleting}
28
+ * isOpen={showModal}
29
+ * title="Delete form?"
30
+ * onClose={() => setShowModal(false)}
31
+ * onDelete={async () => {
32
+ * setIsDeleting(true);
33
+ * await deleteProject(project.name);
34
+ * setShowModal(false);
35
+ * setIsDeleting(false);
36
+ * }}
37
+ * onArchive={async () => {
38
+ * setIsArchiving(true);
39
+ * await archiveProject(project.name);
40
+ * setShowModal(false);
41
+ * setIsArchiving(false);
42
+ * }}
43
+ * />
44
+ * );
45
+ * };
46
+ * @endexample
47
+ */
48
+ const DeleteArchiveModal: React.FC<{
49
+ checkboxLabel: string;
50
+ className: string;
51
+ description: string;
52
+ isArchiving: boolean;
53
+ isDeleting: boolean;
54
+ isOpen: boolean;
55
+ onArchive: Function;
56
+ onClose: Function;
57
+ onDelete: Function;
58
+ title: string;
59
+ }>;
60
+ export default DeleteArchiveModal;