@bigbinary/neeto-approvals-frontend 1.2.16 → 1.2.19
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 +0 -2
- package/dist/.ready +1 -0
- package/dist/Approvals.js +44 -107
- package/dist/Approvals.js.map +1 -1
- package/dist/Form.js +9 -32
- package/dist/Form.js.map +1 -1
- package/dist/Public.js +7 -50
- package/dist/Public.js.map +1 -1
- package/dist/RequestDetailsPane.js +4 -2
- package/dist/RequestDetailsPane.js.map +1 -1
- package/dist/cjs/Approvals.js +83 -146
- package/dist/cjs/Approvals.js.map +1 -1
- package/dist/cjs/Form.js +15 -38
- package/dist/cjs/Form.js.map +1 -1
- package/dist/cjs/Public.js +10 -53
- package/dist/cjs/Public.js.map +1 -1
- package/dist/cjs/RequestDetailsPane.js +4 -2
- package/dist/cjs/RequestDetailsPane.js.map +1 -1
- package/dist/cjs/index.js +12 -7
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/v2/Approvals.js +1003 -0
- package/dist/cjs/v2/Approvals.js.map +1 -0
- package/dist/cjs/v2/Form.js +199 -0
- package/dist/cjs/v2/Form.js.map +1 -0
- package/dist/cjs/v2/Public.js +130 -0
- package/dist/cjs/v2/Public.js.map +1 -0
- package/dist/cjs/v2/RequestDetailsPane.js +31 -0
- package/dist/cjs/v2/RequestDetailsPane.js.map +1 -0
- package/dist/cjs/v2/index.js +59 -0
- package/dist/cjs/v2/index.js.map +1 -0
- package/dist/{constants-BX-hlAjh.js → constants-BwvPJzqf.js} +1 -16
- package/dist/constants-BwvPJzqf.js.map +1 -0
- package/dist/constants-DaDwtZe3.js +83 -0
- package/dist/constants-DaDwtZe3.js.map +1 -0
- package/dist/constants-DzID-rqV.js +53 -0
- package/dist/constants-DzID-rqV.js.map +1 -0
- package/dist/{constants-B5EiwxHH.js → constants-qLYJlKc6.js} +2 -14
- package/dist/constants-qLYJlKc6.js.map +1 -0
- package/dist/index-C9Ur59-i.js +228 -0
- package/dist/index-C9Ur59-i.js.map +1 -0
- package/dist/{index-pLvVQgrV.js → index-CFiP9Hcn.js} +4 -49
- package/dist/index-CFiP9Hcn.js.map +1 -0
- package/dist/index-DumSd5fj.js +224 -0
- package/dist/index-DumSd5fj.js.map +1 -0
- package/dist/{index-BBsNL9uK.js → index-t8u9Sjvr.js} +4 -48
- package/dist/index-t8u9Sjvr.js.map +1 -0
- package/dist/index.js +12 -7
- package/dist/index.js.map +1 -1
- package/dist/queryConstants-DjYiOKxE.js +18 -0
- package/dist/queryConstants-DjYiOKxE.js.map +1 -0
- package/dist/queryConstants-Vrcjv9lF.js +14 -0
- package/dist/queryConstants-Vrcjv9lF.js.map +1 -0
- package/dist/useApprovalRequest-D_WJmB5t.js +53 -0
- package/dist/useApprovalRequest-D_WJmB5t.js.map +1 -0
- package/dist/useApprovalRequest-XjfcKfLQ.js +57 -0
- package/dist/useApprovalRequest-XjfcKfLQ.js.map +1 -0
- package/dist/useApproversApi-B7ChYonT.js +32 -0
- package/dist/useApproversApi-B7ChYonT.js.map +1 -0
- package/dist/useApproversApi-BO6XC1KJ.js +34 -0
- package/dist/useApproversApi-BO6XC1KJ.js.map +1 -0
- package/dist/useRequestsApi-DEGfFuv5.js +50 -0
- package/dist/useRequestsApi-DEGfFuv5.js.map +1 -0
- package/dist/useRequestsApi-DO-oEAzQ.js +53 -0
- package/dist/useRequestsApi-DO-oEAzQ.js.map +1 -0
- package/dist/{useTemplatesApi-CwlWKJYa.js → useTemplatesApi-BII_qvcl.js} +4 -3
- package/dist/useTemplatesApi-BII_qvcl.js.map +1 -0
- package/dist/{useTemplatesApi-BhdNkkYy.js → useTemplatesApi-ByO6idQD.js} +15 -14
- package/dist/useTemplatesApi-ByO6idQD.js.map +1 -0
- package/dist/useViewsApi-B1OpZkLp.js +76 -0
- package/dist/useViewsApi-B1OpZkLp.js.map +1 -0
- package/dist/useViewsApi-k6u7op_J.js +71 -0
- package/dist/useViewsApi-k6u7op_J.js.map +1 -0
- package/dist/v2/Approvals.js +982 -0
- package/dist/v2/Approvals.js.map +1 -0
- package/dist/v2/Form.js +197 -0
- package/dist/v2/Form.js.map +1 -0
- package/dist/v2/Public.js +128 -0
- package/dist/v2/Public.js.map +1 -0
- package/dist/v2/RequestDetailsPane.js +25 -0
- package/dist/v2/RequestDetailsPane.js.map +1 -0
- package/dist/v2/index.js +50 -0
- package/dist/v2/index.js.map +1 -0
- package/package.json +50 -36
- package/dist/constants-B5EiwxHH.js.map +0 -1
- package/dist/constants-BX-hlAjh.js.map +0 -1
- package/dist/index-BBsNL9uK.js.map +0 -1
- package/dist/index-pLvVQgrV.js.map +0 -1
- package/dist/useTemplatesApi-BhdNkkYy.js.map +0 -1
- package/dist/useTemplatesApi-CwlWKJYa.js.map +0 -1
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var v2_Approvals = require('./Approvals.js');
|
|
4
|
+
var v2_Form = require('./Form.js');
|
|
5
|
+
var v2_Public = require('./Public.js');
|
|
6
|
+
var v2_RequestDetailsPane = require('../../index-C9Ur59-i.js');
|
|
7
|
+
require('@babel/runtime/helpers/defineProperty');
|
|
8
|
+
require('@babel/runtime/helpers/slicedToArray');
|
|
9
|
+
require('react');
|
|
10
|
+
require('@bigbinary/neeto-commons-frontend/v2/react-utils');
|
|
11
|
+
require('@bigbinary/neeto-molecules/v2/Container');
|
|
12
|
+
require('react-router-dom');
|
|
13
|
+
require('../../useViewsApi-B1OpZkLp.js');
|
|
14
|
+
require('ramda');
|
|
15
|
+
require('@bigbinary/neeto-commons-frontend/constants');
|
|
16
|
+
require('@tanstack/react-query');
|
|
17
|
+
require('axios');
|
|
18
|
+
require('../../queryConstants-DjYiOKxE.js');
|
|
19
|
+
require('@bigbinary/neeto-atoms');
|
|
20
|
+
require('i18next');
|
|
21
|
+
require('@bigbinary/neeto-commons-frontend/v2/constants');
|
|
22
|
+
require('lucide-react');
|
|
23
|
+
require('@bigbinary/neeto-cist');
|
|
24
|
+
require('react-i18next');
|
|
25
|
+
require('../../useRequestsApi-DO-oEAzQ.js');
|
|
26
|
+
require('@bigbinary/neeto-commons-frontend/react-utils');
|
|
27
|
+
require('@bigbinary/neeto-molecules/v2/DateFormat');
|
|
28
|
+
require('../../constants-DaDwtZe3.js');
|
|
29
|
+
require('@bigbinary/neeto-editor/v2/utils');
|
|
30
|
+
require('yup');
|
|
31
|
+
require('react/jsx-runtime');
|
|
32
|
+
require('@babel/runtime/helpers/objectWithoutProperties');
|
|
33
|
+
require('@bigbinary/neeto-molecules/v2/PageLoader');
|
|
34
|
+
require('../../useTemplatesApi-ByO6idQD.js');
|
|
35
|
+
require('@bigbinary/neeto-commons-frontend/utils');
|
|
36
|
+
require('../../constants-BwvPJzqf.js');
|
|
37
|
+
require('@bigbinary/neeto-editor/utils');
|
|
38
|
+
require('@bigbinary/neeto-atoms/formik');
|
|
39
|
+
require('formik');
|
|
40
|
+
require('@bigbinary/neeto-molecules/v2/ToggleFeatureCard');
|
|
41
|
+
require('@bigbinary/neeto-editor/v2/FormikEditor');
|
|
42
|
+
require('@bigbinary/neeto-editor/v2/EditorContent');
|
|
43
|
+
require('@bigbinary/neeto-molecules/v2/MoreDropdown');
|
|
44
|
+
require('@bigbinary/neeto-molecules/v2/Header');
|
|
45
|
+
require('@bigbinary/neeto-commons-frontend/v2/initializers');
|
|
46
|
+
require('../../useApproversApi-BO6XC1KJ.js');
|
|
47
|
+
require('@bigbinary/neeto-commons-frontend/v2/utils');
|
|
48
|
+
require('@bigbinary/neeto-molecules/v2/CardLayout');
|
|
49
|
+
require('../../useApprovalRequest-XjfcKfLQ.js');
|
|
50
|
+
require('@bigbinary/neeto-commons-frontend/utils/timezonePlugin');
|
|
51
|
+
require('dayjs/plugin/utc');
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
exports.Approvals = v2_Approvals;
|
|
56
|
+
exports.Form = v2_Form;
|
|
57
|
+
exports.Public = v2_Public;
|
|
58
|
+
exports.RequestDetailsPane = v2_RequestDetailsPane.RequestDetailsPane;
|
|
59
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -23,18 +23,6 @@ function _interopNamespaceDefault(e) {
|
|
|
23
23
|
|
|
24
24
|
var yup__namespace = /*#__PURE__*/_interopNamespaceDefault(yup);
|
|
25
25
|
|
|
26
|
-
var BASE_URL = "neeto_approvals";
|
|
27
|
-
var TEMPLATE_URL = "".concat(BASE_URL, "/templates");
|
|
28
|
-
|
|
29
|
-
var QUERY_KEYS = {
|
|
30
|
-
APPROVERS: "neeto-approvals-approvers",
|
|
31
|
-
TEMPLATES: "neeto-approvals-templates",
|
|
32
|
-
REQUESTS: "neeto-approvals-requests",
|
|
33
|
-
SHOW_TEMPLATE: "neeto-approvals-show-template",
|
|
34
|
-
SHOW_PUBLIC_REQUEST: "neeto-approvals-show-public-request",
|
|
35
|
-
VIEWS: "neeto-approvals-views"
|
|
36
|
-
};
|
|
37
|
-
|
|
38
26
|
var DEFAULT_FILTER_VALUES = {
|
|
39
27
|
searchTerm: "",
|
|
40
28
|
sortBy: "",
|
|
@@ -80,16 +68,13 @@ var EVENTS = {
|
|
|
80
68
|
};
|
|
81
69
|
|
|
82
70
|
exports.APPROVAL_REQUEST_FORM_INITIAL_VALUES = APPROVAL_REQUEST_FORM_INITIAL_VALUES;
|
|
83
|
-
exports.BASE_URL = BASE_URL;
|
|
84
71
|
exports.DATA_TESTID_KEY = DATA_TESTID_KEY;
|
|
85
72
|
exports.DEFAULT_FILTER_VALUES = DEFAULT_FILTER_VALUES;
|
|
86
73
|
exports.EVENTS = EVENTS;
|
|
87
|
-
exports.QUERY_KEYS = QUERY_KEYS;
|
|
88
74
|
exports.REQUEST_FORM_VALIDATION_SCHEMA = REQUEST_FORM_VALIDATION_SCHEMA;
|
|
89
75
|
exports.SEARCH_DELAY = SEARCH_DELAY;
|
|
90
76
|
exports.SORT_ORDER = SORT_ORDER;
|
|
91
77
|
exports.STATUSES = STATUSES;
|
|
92
78
|
exports.STATUS_TAG_STYLE = STATUS_TAG_STYLE;
|
|
93
79
|
exports.STATUS_UPDATED_BY = STATUS_UPDATED_BY;
|
|
94
|
-
|
|
95
|
-
//# sourceMappingURL=constants-BX-hlAjh.js.map
|
|
80
|
+
//# sourceMappingURL=constants-BwvPJzqf.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants-BwvPJzqf.js","sources":["../app/javascript/src/components/Approvals/constants.js"],"sourcesContent":["import { t } from \"i18next\";\nimport { isEditorEmpty } from \"neetoeditor\";\nimport * as yup from \"yup\";\n\nexport const DEFAULT_RADIX = 10;\n\nexport const DEFAULT_FILTER_VALUES = {\n searchTerm: \"\",\n sortBy: \"\",\n orderBy: \"\",\n};\n\nexport const SEARCH_DELAY = 750;\n\nexport const STATUSES = {\n approved: \"approved\",\n rejected: \"rejected\",\n pending: \"pending\",\n cancelled: \"cancelled\",\n};\n\nexport const STATUS_TAG_STYLE = {\n pending: \"primary\",\n approved: \"success\",\n rejected: \"danger\",\n cancelled: \"warning\",\n};\n\nexport const APPROVAL_REQUEST_FORM_INITIAL_VALUES = {\n message: \"\",\n approver: {},\n};\n\nexport const STATUS_UPDATED_BY = {\n rejected: t(\"neetoApprovals.common.rejectedBy\"),\n approved: t(\"neetoApprovals.common.approvedBy\"),\n cancelled: t(\"neetoApprovals.common.cancelledBy\"),\n};\n\nexport const DATA_TESTID_KEY = \"data-testid\";\n\nexport const SORT_ORDER = { ascend: \"asc\", descend: \"desc\" };\n\nexport const REQUEST_FORM_VALIDATION_SCHEMA = yup.object().shape({\n message: yup.string().test(\n \"message\",\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.inputs.labels.message\"),\n }),\n content => !isEditorEmpty(content)\n ),\n approver: yup.object().required(t(\"neetoApprovals.validations.approver\")),\n});\n\nexport const EVENTS = {\n APPROVAL_TEMPLATE_CREATED: \"approval_template_created\",\n};\n"],"names":["DEFAULT_FILTER_VALUES","searchTerm","sortBy","orderBy","SEARCH_DELAY","STATUSES","approved","rejected","pending","cancelled","STATUS_TAG_STYLE","APPROVAL_REQUEST_FORM_INITIAL_VALUES","message","approver","STATUS_UPDATED_BY","t","DATA_TESTID_KEY","SORT_ORDER","ascend","descend","REQUEST_FORM_VALIDATION_SCHEMA","yup","object","shape","string","test","what","content","isEditorEmpty","required","EVENTS","APPROVAL_TEMPLATE_CREATED"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAMO,IAAMA,qBAAqB,GAAG;AACnCC,EAAAA,UAAU,EAAE,EAAE;AACdC,EAAAA,MAAM,EAAE,EAAE;AACVC,EAAAA,OAAO,EAAE;AACX;AAEO,IAAMC,YAAY,GAAG;AAErB,IAAMC,QAAQ,GAAG;AACtBC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,SAAS,EAAE;AACb;AAEO,IAAMC,gBAAgB,GAAG;AAC9BF,EAAAA,OAAO,EAAE,SAAS;AAClBF,EAAAA,QAAQ,EAAE,SAAS;AACnBC,EAAAA,QAAQ,EAAE,QAAQ;AAClBE,EAAAA,SAAS,EAAE;AACb;AAEO,IAAME,oCAAoC,GAAG;AAClDC,EAAAA,OAAO,EAAE,EAAE;AACXC,EAAAA,QAAQ,EAAE;AACZ;AAEO,IAAMC,iBAAiB,GAAG;AAC/BP,EAAAA,QAAQ,EAAEQ,SAAC,CAAC,kCAAkC,CAAC;AAC/CT,EAAAA,QAAQ,EAAES,SAAC,CAAC,kCAAkC,CAAC;EAC/CN,SAAS,EAAEM,SAAC,CAAC,mCAAmC;AAClD;AAEO,IAAMC,eAAe,GAAG;AAExB,IAAMC,UAAU,GAAG;AAAEC,EAAAA,MAAM,EAAE,KAAK;AAAEC,EAAAA,OAAO,EAAE;AAAO;AAEpD,IAAMC,8BAA8B,GAAGC,cAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;AAC/DX,EAAAA,OAAO,EAAES,cAAG,CAACG,MAAM,EAAE,CAACC,IAAI,CACxB,SAAS,EACTV,SAAC,CAAC,qCAAqC,EAAE;IACvCW,IAAI,EAAEX,SAAC,CAAC,sCAAsC;GAC/C,CAAC,EACF,UAAAY,OAAO,EAAA;AAAA,IAAA,OAAI,CAACC,mBAAa,CAACD,OAAO,CAAC;AAAA,EAAA,CACpC,CAAC;AACDd,EAAAA,QAAQ,EAAEQ,cAAG,CAACC,MAAM,EAAE,CAACO,QAAQ,CAACd,SAAC,CAAC,qCAAqC,CAAC;AAC1E,CAAC;AAEM,IAAMe,MAAM,GAAG;AACpBC,EAAAA,yBAAyB,EAAE;AAC7B;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var i18next = require('i18next');
|
|
4
|
+
var utils = require('@bigbinary/neeto-editor/v2/utils');
|
|
5
|
+
var yup = require('yup');
|
|
6
|
+
|
|
7
|
+
function _interopNamespaceDefault(e) {
|
|
8
|
+
var n = Object.create(null);
|
|
9
|
+
if (e) {
|
|
10
|
+
Object.keys(e).forEach(function (k) {
|
|
11
|
+
if (k !== 'default') {
|
|
12
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
13
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
14
|
+
enumerable: true,
|
|
15
|
+
get: function () { return e[k]; }
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
n.default = e;
|
|
21
|
+
return Object.freeze(n);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
var yup__namespace = /*#__PURE__*/_interopNamespaceDefault(yup);
|
|
25
|
+
|
|
26
|
+
var DEFAULT_FILTER_VALUES = {
|
|
27
|
+
searchTerm: "",
|
|
28
|
+
sortBy: "",
|
|
29
|
+
orderBy: ""
|
|
30
|
+
};
|
|
31
|
+
var SEARCH_DELAY = 750;
|
|
32
|
+
var STATUSES = {
|
|
33
|
+
approved: "approved",
|
|
34
|
+
rejected: "rejected",
|
|
35
|
+
pending: "pending",
|
|
36
|
+
cancelled: "cancelled"
|
|
37
|
+
};
|
|
38
|
+
var STATUS_TAG_STYLE = {
|
|
39
|
+
pending: "primary",
|
|
40
|
+
approved: "success",
|
|
41
|
+
rejected: "danger",
|
|
42
|
+
cancelled: "warning"
|
|
43
|
+
};
|
|
44
|
+
var STATUS_BADGE_VARIANT = {
|
|
45
|
+
primary: "default",
|
|
46
|
+
success: "green-subtle",
|
|
47
|
+
danger: "red-subtle",
|
|
48
|
+
warning: "amber-subtle"
|
|
49
|
+
};
|
|
50
|
+
var APPROVAL_REQUEST_FORM_INITIAL_VALUES = {
|
|
51
|
+
message: "",
|
|
52
|
+
approver: ""
|
|
53
|
+
};
|
|
54
|
+
var STATUS_UPDATED_BY = {
|
|
55
|
+
rejected: i18next.t("neetoApprovals.common.rejectedBy"),
|
|
56
|
+
approved: i18next.t("neetoApprovals.common.approvedBy"),
|
|
57
|
+
cancelled: i18next.t("neetoApprovals.common.cancelledBy")
|
|
58
|
+
};
|
|
59
|
+
var DATA_TESTID_KEY = "data-testid";
|
|
60
|
+
var SORT_ORDER = {
|
|
61
|
+
ascend: "asc",
|
|
62
|
+
descend: "desc"
|
|
63
|
+
};
|
|
64
|
+
var REQUEST_FORM_VALIDATION_SCHEMA = yup__namespace.object().shape({
|
|
65
|
+
message: yup__namespace.string().test("message", i18next.t("neetoApprovals.validations.required", {
|
|
66
|
+
what: i18next.t("neetoApprovals.inputs.labels.message")
|
|
67
|
+
}), function (content) {
|
|
68
|
+
return !utils.isEditorEmpty(content);
|
|
69
|
+
}),
|
|
70
|
+
approver: yup__namespace.string().required(i18next.t("neetoApprovals.validations.approver"))
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
exports.APPROVAL_REQUEST_FORM_INITIAL_VALUES = APPROVAL_REQUEST_FORM_INITIAL_VALUES;
|
|
74
|
+
exports.DATA_TESTID_KEY = DATA_TESTID_KEY;
|
|
75
|
+
exports.DEFAULT_FILTER_VALUES = DEFAULT_FILTER_VALUES;
|
|
76
|
+
exports.REQUEST_FORM_VALIDATION_SCHEMA = REQUEST_FORM_VALIDATION_SCHEMA;
|
|
77
|
+
exports.SEARCH_DELAY = SEARCH_DELAY;
|
|
78
|
+
exports.SORT_ORDER = SORT_ORDER;
|
|
79
|
+
exports.STATUSES = STATUSES;
|
|
80
|
+
exports.STATUS_BADGE_VARIANT = STATUS_BADGE_VARIANT;
|
|
81
|
+
exports.STATUS_TAG_STYLE = STATUS_TAG_STYLE;
|
|
82
|
+
exports.STATUS_UPDATED_BY = STATUS_UPDATED_BY;
|
|
83
|
+
//# sourceMappingURL=constants-DaDwtZe3.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants-DaDwtZe3.js","sources":["../app/javascript/src/v2/components/Approvals/constants.js"],"sourcesContent":["import { t } from \"i18next\";\nimport { isEditorEmpty } from \"neetoeditor/v2/utils\";\nimport * as yup from \"yup\";\n\nexport const DEFAULT_RADIX = 10;\n\nexport const DEFAULT_FILTER_VALUES = {\n searchTerm: \"\",\n sortBy: \"\",\n orderBy: \"\",\n};\n\nexport const SEARCH_DELAY = 750;\n\nexport const STATUSES = {\n approved: \"approved\",\n rejected: \"rejected\",\n pending: \"pending\",\n cancelled: \"cancelled\",\n};\n\nexport const STATUS_TAG_STYLE = {\n pending: \"primary\",\n approved: \"success\",\n rejected: \"danger\",\n cancelled: \"warning\",\n};\n\nexport const STATUS_BADGE_VARIANT = {\n primary: \"default\",\n success: \"green-subtle\",\n danger: \"red-subtle\",\n warning: \"amber-subtle\",\n};\n\nexport const APPROVAL_REQUEST_FORM_INITIAL_VALUES = {\n message: \"\",\n approver: \"\",\n};\n\nexport const STATUS_UPDATED_BY = {\n rejected: t(\"neetoApprovals.common.rejectedBy\"),\n approved: t(\"neetoApprovals.common.approvedBy\"),\n cancelled: t(\"neetoApprovals.common.cancelledBy\"),\n};\n\nexport const DATA_TESTID_KEY = \"data-testid\";\n\nexport const SORT_ORDER = { ascend: \"asc\", descend: \"desc\" };\n\nexport const REQUEST_FORM_VALIDATION_SCHEMA = yup.object().shape({\n message: yup.string().test(\n \"message\",\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.inputs.labels.message\"),\n }),\n content => !isEditorEmpty(content)\n ),\n approver: yup.string().required(t(\"neetoApprovals.validations.approver\")),\n});\n\nexport const EVENTS = {\n APPROVAL_TEMPLATE_CREATED: \"approval_template_created\",\n};\n"],"names":["DEFAULT_FILTER_VALUES","searchTerm","sortBy","orderBy","SEARCH_DELAY","STATUSES","approved","rejected","pending","cancelled","STATUS_TAG_STYLE","STATUS_BADGE_VARIANT","primary","success","danger","warning","APPROVAL_REQUEST_FORM_INITIAL_VALUES","message","approver","STATUS_UPDATED_BY","t","DATA_TESTID_KEY","SORT_ORDER","ascend","descend","REQUEST_FORM_VALIDATION_SCHEMA","yup","object","shape","string","test","what","content","isEditorEmpty","required"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAMO,IAAMA,qBAAqB,GAAG;AACnCC,EAAAA,UAAU,EAAE,EAAE;AACdC,EAAAA,MAAM,EAAE,EAAE;AACVC,EAAAA,OAAO,EAAE;AACX;AAEO,IAAMC,YAAY,GAAG;AAErB,IAAMC,QAAQ,GAAG;AACtBC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,SAAS,EAAE;AACb;AAEO,IAAMC,gBAAgB,GAAG;AAC9BF,EAAAA,OAAO,EAAE,SAAS;AAClBF,EAAAA,QAAQ,EAAE,SAAS;AACnBC,EAAAA,QAAQ,EAAE,QAAQ;AAClBE,EAAAA,SAAS,EAAE;AACb;AAEO,IAAME,oBAAoB,GAAG;AAClCC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,OAAO,EAAE,cAAc;AACvBC,EAAAA,MAAM,EAAE,YAAY;AACpBC,EAAAA,OAAO,EAAE;AACX;AAEO,IAAMC,oCAAoC,GAAG;AAClDC,EAAAA,OAAO,EAAE,EAAE;AACXC,EAAAA,QAAQ,EAAE;AACZ;AAEO,IAAMC,iBAAiB,GAAG;AAC/BZ,EAAAA,QAAQ,EAAEa,SAAC,CAAC,kCAAkC,CAAC;AAC/Cd,EAAAA,QAAQ,EAAEc,SAAC,CAAC,kCAAkC,CAAC;EAC/CX,SAAS,EAAEW,SAAC,CAAC,mCAAmC;AAClD;AAEO,IAAMC,eAAe,GAAG;AAExB,IAAMC,UAAU,GAAG;AAAEC,EAAAA,MAAM,EAAE,KAAK;AAAEC,EAAAA,OAAO,EAAE;AAAO;AAEpD,IAAMC,8BAA8B,GAAGC,cAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;AAC/DX,EAAAA,OAAO,EAAES,cAAG,CAACG,MAAM,EAAE,CAACC,IAAI,CACxB,SAAS,EACTV,SAAC,CAAC,qCAAqC,EAAE;IACvCW,IAAI,EAAEX,SAAC,CAAC,sCAAsC;GAC/C,CAAC,EACF,UAAAY,OAAO,EAAA;AAAA,IAAA,OAAI,CAACC,mBAAa,CAACD,OAAO,CAAC;AAAA,EAAA,CACpC,CAAC;AACDd,EAAAA,QAAQ,EAAEQ,cAAG,CAACG,MAAM,EAAE,CAACK,QAAQ,CAACd,SAAC,CAAC,qCAAqC,CAAC;AAC1E,CAAC;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { t } from 'i18next';
|
|
2
|
+
import { isEditorEmpty } from '@bigbinary/neeto-editor/v2/utils';
|
|
3
|
+
import * as yup from 'yup';
|
|
4
|
+
|
|
5
|
+
var DEFAULT_FILTER_VALUES = {
|
|
6
|
+
searchTerm: "",
|
|
7
|
+
sortBy: "",
|
|
8
|
+
orderBy: ""
|
|
9
|
+
};
|
|
10
|
+
var SEARCH_DELAY = 750;
|
|
11
|
+
var STATUSES = {
|
|
12
|
+
approved: "approved",
|
|
13
|
+
rejected: "rejected",
|
|
14
|
+
pending: "pending",
|
|
15
|
+
cancelled: "cancelled"
|
|
16
|
+
};
|
|
17
|
+
var STATUS_TAG_STYLE = {
|
|
18
|
+
pending: "primary",
|
|
19
|
+
approved: "success",
|
|
20
|
+
rejected: "danger",
|
|
21
|
+
cancelled: "warning"
|
|
22
|
+
};
|
|
23
|
+
var STATUS_BADGE_VARIANT = {
|
|
24
|
+
primary: "default",
|
|
25
|
+
success: "green-subtle",
|
|
26
|
+
danger: "red-subtle",
|
|
27
|
+
warning: "amber-subtle"
|
|
28
|
+
};
|
|
29
|
+
var APPROVAL_REQUEST_FORM_INITIAL_VALUES = {
|
|
30
|
+
message: "",
|
|
31
|
+
approver: ""
|
|
32
|
+
};
|
|
33
|
+
var STATUS_UPDATED_BY = {
|
|
34
|
+
rejected: t("neetoApprovals.common.rejectedBy"),
|
|
35
|
+
approved: t("neetoApprovals.common.approvedBy"),
|
|
36
|
+
cancelled: t("neetoApprovals.common.cancelledBy")
|
|
37
|
+
};
|
|
38
|
+
var DATA_TESTID_KEY = "data-testid";
|
|
39
|
+
var SORT_ORDER = {
|
|
40
|
+
ascend: "asc",
|
|
41
|
+
descend: "desc"
|
|
42
|
+
};
|
|
43
|
+
var REQUEST_FORM_VALIDATION_SCHEMA = yup.object().shape({
|
|
44
|
+
message: yup.string().test("message", t("neetoApprovals.validations.required", {
|
|
45
|
+
what: t("neetoApprovals.inputs.labels.message")
|
|
46
|
+
}), function (content) {
|
|
47
|
+
return !isEditorEmpty(content);
|
|
48
|
+
}),
|
|
49
|
+
approver: yup.string().required(t("neetoApprovals.validations.approver"))
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
export { APPROVAL_REQUEST_FORM_INITIAL_VALUES as A, DEFAULT_FILTER_VALUES as D, REQUEST_FORM_VALIDATION_SCHEMA as R, STATUSES as S, STATUS_BADGE_VARIANT as a, STATUS_TAG_STYLE as b, STATUS_UPDATED_BY as c, SEARCH_DELAY as d, SORT_ORDER as e, DATA_TESTID_KEY as f };
|
|
53
|
+
//# sourceMappingURL=constants-DzID-rqV.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants-DzID-rqV.js","sources":["../app/javascript/src/v2/components/Approvals/constants.js"],"sourcesContent":["import { t } from \"i18next\";\nimport { isEditorEmpty } from \"neetoeditor/v2/utils\";\nimport * as yup from \"yup\";\n\nexport const DEFAULT_RADIX = 10;\n\nexport const DEFAULT_FILTER_VALUES = {\n searchTerm: \"\",\n sortBy: \"\",\n orderBy: \"\",\n};\n\nexport const SEARCH_DELAY = 750;\n\nexport const STATUSES = {\n approved: \"approved\",\n rejected: \"rejected\",\n pending: \"pending\",\n cancelled: \"cancelled\",\n};\n\nexport const STATUS_TAG_STYLE = {\n pending: \"primary\",\n approved: \"success\",\n rejected: \"danger\",\n cancelled: \"warning\",\n};\n\nexport const STATUS_BADGE_VARIANT = {\n primary: \"default\",\n success: \"green-subtle\",\n danger: \"red-subtle\",\n warning: \"amber-subtle\",\n};\n\nexport const APPROVAL_REQUEST_FORM_INITIAL_VALUES = {\n message: \"\",\n approver: \"\",\n};\n\nexport const STATUS_UPDATED_BY = {\n rejected: t(\"neetoApprovals.common.rejectedBy\"),\n approved: t(\"neetoApprovals.common.approvedBy\"),\n cancelled: t(\"neetoApprovals.common.cancelledBy\"),\n};\n\nexport const DATA_TESTID_KEY = \"data-testid\";\n\nexport const SORT_ORDER = { ascend: \"asc\", descend: \"desc\" };\n\nexport const REQUEST_FORM_VALIDATION_SCHEMA = yup.object().shape({\n message: yup.string().test(\n \"message\",\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.inputs.labels.message\"),\n }),\n content => !isEditorEmpty(content)\n ),\n approver: yup.string().required(t(\"neetoApprovals.validations.approver\")),\n});\n\nexport const EVENTS = {\n APPROVAL_TEMPLATE_CREATED: \"approval_template_created\",\n};\n"],"names":["DEFAULT_FILTER_VALUES","searchTerm","sortBy","orderBy","SEARCH_DELAY","STATUSES","approved","rejected","pending","cancelled","STATUS_TAG_STYLE","STATUS_BADGE_VARIANT","primary","success","danger","warning","APPROVAL_REQUEST_FORM_INITIAL_VALUES","message","approver","STATUS_UPDATED_BY","t","DATA_TESTID_KEY","SORT_ORDER","ascend","descend","REQUEST_FORM_VALIDATION_SCHEMA","yup","object","shape","string","test","what","content","isEditorEmpty","required"],"mappings":";;;;AAMO,IAAMA,qBAAqB,GAAG;AACnCC,EAAAA,UAAU,EAAE,EAAE;AACdC,EAAAA,MAAM,EAAE,EAAE;AACVC,EAAAA,OAAO,EAAE;AACX;AAEO,IAAMC,YAAY,GAAG;AAErB,IAAMC,QAAQ,GAAG;AACtBC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,SAAS,EAAE;AACb;AAEO,IAAMC,gBAAgB,GAAG;AAC9BF,EAAAA,OAAO,EAAE,SAAS;AAClBF,EAAAA,QAAQ,EAAE,SAAS;AACnBC,EAAAA,QAAQ,EAAE,QAAQ;AAClBE,EAAAA,SAAS,EAAE;AACb;AAEO,IAAME,oBAAoB,GAAG;AAClCC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,OAAO,EAAE,cAAc;AACvBC,EAAAA,MAAM,EAAE,YAAY;AACpBC,EAAAA,OAAO,EAAE;AACX;AAEO,IAAMC,oCAAoC,GAAG;AAClDC,EAAAA,OAAO,EAAE,EAAE;AACXC,EAAAA,QAAQ,EAAE;AACZ;AAEO,IAAMC,iBAAiB,GAAG;AAC/BZ,EAAAA,QAAQ,EAAEa,CAAC,CAAC,kCAAkC,CAAC;AAC/Cd,EAAAA,QAAQ,EAAEc,CAAC,CAAC,kCAAkC,CAAC;EAC/CX,SAAS,EAAEW,CAAC,CAAC,mCAAmC;AAClD;AAEO,IAAMC,eAAe,GAAG;AAExB,IAAMC,UAAU,GAAG;AAAEC,EAAAA,MAAM,EAAE,KAAK;AAAEC,EAAAA,OAAO,EAAE;AAAO;AAEpD,IAAMC,8BAA8B,GAAGC,GAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;AAC/DX,EAAAA,OAAO,EAAES,GAAG,CAACG,MAAM,EAAE,CAACC,IAAI,CACxB,SAAS,EACTV,CAAC,CAAC,qCAAqC,EAAE;IACvCW,IAAI,EAAEX,CAAC,CAAC,sCAAsC;GAC/C,CAAC,EACF,UAAAY,OAAO,EAAA;AAAA,IAAA,OAAI,CAACC,aAAa,CAACD,OAAO,CAAC;AAAA,EAAA,CACpC,CAAC;AACDd,EAAAA,QAAQ,EAAEQ,GAAG,CAACG,MAAM,EAAE,CAACK,QAAQ,CAACd,CAAC,CAAC,qCAAqC,CAAC;AAC1E,CAAC;;;;"}
|
|
@@ -2,18 +2,6 @@ import { t } from 'i18next';
|
|
|
2
2
|
import { isEditorEmpty } from '@bigbinary/neeto-editor/utils';
|
|
3
3
|
import * as yup from 'yup';
|
|
4
4
|
|
|
5
|
-
var BASE_URL = "neeto_approvals";
|
|
6
|
-
var TEMPLATE_URL = "".concat(BASE_URL, "/templates");
|
|
7
|
-
|
|
8
|
-
var QUERY_KEYS = {
|
|
9
|
-
APPROVERS: "neeto-approvals-approvers",
|
|
10
|
-
TEMPLATES: "neeto-approvals-templates",
|
|
11
|
-
REQUESTS: "neeto-approvals-requests",
|
|
12
|
-
SHOW_TEMPLATE: "neeto-approvals-show-template",
|
|
13
|
-
SHOW_PUBLIC_REQUEST: "neeto-approvals-show-public-request",
|
|
14
|
-
VIEWS: "neeto-approvals-views"
|
|
15
|
-
};
|
|
16
|
-
|
|
17
5
|
var DEFAULT_FILTER_VALUES = {
|
|
18
6
|
searchTerm: "",
|
|
19
7
|
sortBy: "",
|
|
@@ -58,5 +46,5 @@ var EVENTS = {
|
|
|
58
46
|
APPROVAL_TEMPLATE_CREATED: "approval_template_created"
|
|
59
47
|
};
|
|
60
48
|
|
|
61
|
-
export { APPROVAL_REQUEST_FORM_INITIAL_VALUES as A,
|
|
62
|
-
//# sourceMappingURL=constants-
|
|
49
|
+
export { APPROVAL_REQUEST_FORM_INITIAL_VALUES as A, DEFAULT_FILTER_VALUES as D, EVENTS as E, REQUEST_FORM_VALIDATION_SCHEMA as R, STATUSES as S, STATUS_TAG_STYLE as a, STATUS_UPDATED_BY as b, SEARCH_DELAY as c, SORT_ORDER as d, DATA_TESTID_KEY as e };
|
|
50
|
+
//# sourceMappingURL=constants-qLYJlKc6.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants-qLYJlKc6.js","sources":["../app/javascript/src/components/Approvals/constants.js"],"sourcesContent":["import { t } from \"i18next\";\nimport { isEditorEmpty } from \"neetoeditor\";\nimport * as yup from \"yup\";\n\nexport const DEFAULT_RADIX = 10;\n\nexport const DEFAULT_FILTER_VALUES = {\n searchTerm: \"\",\n sortBy: \"\",\n orderBy: \"\",\n};\n\nexport const SEARCH_DELAY = 750;\n\nexport const STATUSES = {\n approved: \"approved\",\n rejected: \"rejected\",\n pending: \"pending\",\n cancelled: \"cancelled\",\n};\n\nexport const STATUS_TAG_STYLE = {\n pending: \"primary\",\n approved: \"success\",\n rejected: \"danger\",\n cancelled: \"warning\",\n};\n\nexport const APPROVAL_REQUEST_FORM_INITIAL_VALUES = {\n message: \"\",\n approver: {},\n};\n\nexport const STATUS_UPDATED_BY = {\n rejected: t(\"neetoApprovals.common.rejectedBy\"),\n approved: t(\"neetoApprovals.common.approvedBy\"),\n cancelled: t(\"neetoApprovals.common.cancelledBy\"),\n};\n\nexport const DATA_TESTID_KEY = \"data-testid\";\n\nexport const SORT_ORDER = { ascend: \"asc\", descend: \"desc\" };\n\nexport const REQUEST_FORM_VALIDATION_SCHEMA = yup.object().shape({\n message: yup.string().test(\n \"message\",\n t(\"neetoApprovals.validations.required\", {\n what: t(\"neetoApprovals.inputs.labels.message\"),\n }),\n content => !isEditorEmpty(content)\n ),\n approver: yup.object().required(t(\"neetoApprovals.validations.approver\")),\n});\n\nexport const EVENTS = {\n APPROVAL_TEMPLATE_CREATED: \"approval_template_created\",\n};\n"],"names":["DEFAULT_FILTER_VALUES","searchTerm","sortBy","orderBy","SEARCH_DELAY","STATUSES","approved","rejected","pending","cancelled","STATUS_TAG_STYLE","APPROVAL_REQUEST_FORM_INITIAL_VALUES","message","approver","STATUS_UPDATED_BY","t","DATA_TESTID_KEY","SORT_ORDER","ascend","descend","REQUEST_FORM_VALIDATION_SCHEMA","yup","object","shape","string","test","what","content","isEditorEmpty","required","EVENTS","APPROVAL_TEMPLATE_CREATED"],"mappings":";;;;AAMO,IAAMA,qBAAqB,GAAG;AACnCC,EAAAA,UAAU,EAAE,EAAE;AACdC,EAAAA,MAAM,EAAE,EAAE;AACVC,EAAAA,OAAO,EAAE;AACX;AAEO,IAAMC,YAAY,GAAG;AAErB,IAAMC,QAAQ,GAAG;AACtBC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,QAAQ,EAAE,UAAU;AACpBC,EAAAA,OAAO,EAAE,SAAS;AAClBC,EAAAA,SAAS,EAAE;AACb;AAEO,IAAMC,gBAAgB,GAAG;AAC9BF,EAAAA,OAAO,EAAE,SAAS;AAClBF,EAAAA,QAAQ,EAAE,SAAS;AACnBC,EAAAA,QAAQ,EAAE,QAAQ;AAClBE,EAAAA,SAAS,EAAE;AACb;AAEO,IAAME,oCAAoC,GAAG;AAClDC,EAAAA,OAAO,EAAE,EAAE;AACXC,EAAAA,QAAQ,EAAE;AACZ;AAEO,IAAMC,iBAAiB,GAAG;AAC/BP,EAAAA,QAAQ,EAAEQ,CAAC,CAAC,kCAAkC,CAAC;AAC/CT,EAAAA,QAAQ,EAAES,CAAC,CAAC,kCAAkC,CAAC;EAC/CN,SAAS,EAAEM,CAAC,CAAC,mCAAmC;AAClD;AAEO,IAAMC,eAAe,GAAG;AAExB,IAAMC,UAAU,GAAG;AAAEC,EAAAA,MAAM,EAAE,KAAK;AAAEC,EAAAA,OAAO,EAAE;AAAO;AAEpD,IAAMC,8BAA8B,GAAGC,GAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;AAC/DX,EAAAA,OAAO,EAAES,GAAG,CAACG,MAAM,EAAE,CAACC,IAAI,CACxB,SAAS,EACTV,CAAC,CAAC,qCAAqC,EAAE;IACvCW,IAAI,EAAEX,CAAC,CAAC,sCAAsC;GAC/C,CAAC,EACF,UAAAY,OAAO,EAAA;AAAA,IAAA,OAAI,CAACC,aAAa,CAACD,OAAO,CAAC;AAAA,EAAA,CACpC,CAAC;AACDd,EAAAA,QAAQ,EAAEQ,GAAG,CAACC,MAAM,EAAE,CAACO,QAAQ,CAACd,CAAC,CAAC,qCAAqC,CAAC;AAC1E,CAAC;AAEM,IAAMe,MAAM,GAAG;AACpBC,EAAAA,yBAAyB,EAAE;AAC7B;;;;"}
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
4
|
+
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
5
|
+
var react = require('react');
|
|
6
|
+
var neetoAtoms = require('@bigbinary/neeto-atoms');
|
|
7
|
+
var neetoCist = require('@bigbinary/neeto-cist');
|
|
8
|
+
var utils$1 = require('@bigbinary/neeto-commons-frontend/v2/utils');
|
|
9
|
+
var EditorContent = require('@bigbinary/neeto-editor/v2/EditorContent');
|
|
10
|
+
var reactI18next = require('react-i18next');
|
|
11
|
+
var useRequestsApi = require('./useRequestsApi-DO-oEAzQ.js');
|
|
12
|
+
var constants = require('./constants-DaDwtZe3.js');
|
|
13
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
14
|
+
var timezone = require('@bigbinary/neeto-commons-frontend/utils/timezonePlugin');
|
|
15
|
+
var utc = require('dayjs/plugin/utc');
|
|
16
|
+
var i18next = require('i18next');
|
|
17
|
+
var utils = require('@bigbinary/neeto-commons-frontend/utils');
|
|
18
|
+
var constants$1 = require('@bigbinary/neeto-commons-frontend/v2/constants');
|
|
19
|
+
var initializers = require('@bigbinary/neeto-commons-frontend/v2/initializers');
|
|
20
|
+
|
|
21
|
+
var Footer = function Footer(_ref) {
|
|
22
|
+
var isLoading = _ref.isLoading,
|
|
23
|
+
handleSubmit = _ref.handleSubmit,
|
|
24
|
+
isCurrentUserApprover = _ref.isCurrentUserApprover,
|
|
25
|
+
isCurrentUserRequester = _ref.isCurrentUserRequester;
|
|
26
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
27
|
+
t = _useTranslation.t;
|
|
28
|
+
if (!isCurrentUserApprover && !isCurrentUserRequester) return null;
|
|
29
|
+
if (isCurrentUserApprover) {
|
|
30
|
+
return /*#__PURE__*/jsxRuntime.jsxs(neetoAtoms.Sheet.Footer, {
|
|
31
|
+
className: "flex flex-shrink-0 gap-x-2",
|
|
32
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
|
|
33
|
+
label: t("neetoApprovals.buttons.approve"),
|
|
34
|
+
loading: isLoading,
|
|
35
|
+
type: "submit",
|
|
36
|
+
onClick: function onClick() {
|
|
37
|
+
return handleSubmit(constants.STATUSES.approved);
|
|
38
|
+
}
|
|
39
|
+
}), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
|
|
40
|
+
label: t("neetoApprovals.buttons.decline"),
|
|
41
|
+
loading: isLoading,
|
|
42
|
+
variant: "ghost",
|
|
43
|
+
onClick: function onClick() {
|
|
44
|
+
return handleSubmit(constants.STATUSES.rejected);
|
|
45
|
+
}
|
|
46
|
+
})]
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet.Footer, {
|
|
50
|
+
className: "flex flex-shrink-0 gap-x-2",
|
|
51
|
+
children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
|
|
52
|
+
label: t("neetoApprovals.buttons.cancelRequest"),
|
|
53
|
+
loading: isLoading,
|
|
54
|
+
type: "submit",
|
|
55
|
+
onClick: function onClick() {
|
|
56
|
+
return handleSubmit(constants.STATUSES.cancelled);
|
|
57
|
+
}
|
|
58
|
+
})
|
|
59
|
+
});
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
utils.dayjs.extend(utc);
|
|
63
|
+
utils.dayjs.extend(timezone);
|
|
64
|
+
var updateApprovalDetails = function updateApprovalDetails(_ref) {
|
|
65
|
+
var requestsData = _ref.requestsData,
|
|
66
|
+
approvalDetails = _ref.approvalDetails;
|
|
67
|
+
if (neetoCist.isPresent(requestsData === null || requestsData === void 0 ? void 0 : requestsData.requests) && neetoCist.isPresent(approvalDetails)) {
|
|
68
|
+
return neetoCist.findBy({
|
|
69
|
+
id: approvalDetails.id
|
|
70
|
+
}, requestsData.requests) || {};
|
|
71
|
+
}
|
|
72
|
+
return {};
|
|
73
|
+
};
|
|
74
|
+
var timeInZone = function timeInZone(time) {
|
|
75
|
+
var _globalProps$user, _globalProps$user2;
|
|
76
|
+
((_globalProps$user = initializers.globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.timeZone) && utils.dayjs.tz.setDefault((_globalProps$user2 = initializers.globalProps.user) === null || _globalProps$user2 === void 0 ? void 0 : _globalProps$user2.timeZone);
|
|
77
|
+
return utils.dayjs(time).tz();
|
|
78
|
+
};
|
|
79
|
+
var getApprovalFilter = function getApprovalFilter() {
|
|
80
|
+
return {
|
|
81
|
+
PENDING: {
|
|
82
|
+
label: i18next.t("neetoApprovals.common.pending"),
|
|
83
|
+
value: "PENDING"
|
|
84
|
+
},
|
|
85
|
+
TEMPLATES: {
|
|
86
|
+
label: i18next.t("neetoApprovals.common.template", constants$1.PLURAL),
|
|
87
|
+
value: "TEMPLATES"
|
|
88
|
+
},
|
|
89
|
+
HISTORY: {
|
|
90
|
+
label: i18next.t("neetoApprovals.common.history"),
|
|
91
|
+
value: "HISTORY"
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
var MemoizedEditorContent = /*#__PURE__*/react.memo(EditorContent);
|
|
97
|
+
var RequestDetailsPane = function RequestDetailsPane(_ref) {
|
|
98
|
+
var _window$globalProps, _window$globalProps2;
|
|
99
|
+
var isOpen = _ref.isOpen,
|
|
100
|
+
onClose = _ref.onClose,
|
|
101
|
+
approvalDetails = _ref.approvalDetails,
|
|
102
|
+
_ref$isPending = _ref.isPending,
|
|
103
|
+
isPending = _ref$isPending === void 0 ? false : _ref$isPending;
|
|
104
|
+
var _useTranslation = reactI18next.useTranslation(),
|
|
105
|
+
t = _useTranslation.t;
|
|
106
|
+
var title = approvalDetails.title,
|
|
107
|
+
_approvalDetails$stat = approvalDetails.status,
|
|
108
|
+
status = _approvalDetails$stat === void 0 ? "" : _approvalDetails$stat,
|
|
109
|
+
message = approvalDetails.message,
|
|
110
|
+
createdAt = approvalDetails.createdAt,
|
|
111
|
+
approverName = approvalDetails.approverName,
|
|
112
|
+
approverEmail = approvalDetails.approverEmail,
|
|
113
|
+
_approvalDetails$note = approvalDetails.note,
|
|
114
|
+
initialNote = _approvalDetails$note === void 0 ? "" : _approvalDetails$note,
|
|
115
|
+
requesterName = approvalDetails.requesterName,
|
|
116
|
+
requesterEmail = approvalDetails.requesterEmail;
|
|
117
|
+
var _useState = react.useState(initialNote),
|
|
118
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
119
|
+
note = _useState2[0],
|
|
120
|
+
setNote = _useState2[1];
|
|
121
|
+
var _useUpdateRequest = useRequestsApi.useUpdateRequest(),
|
|
122
|
+
updatePendingRequest = _useUpdateRequest.mutate,
|
|
123
|
+
isUpdateRequestPending = _useUpdateRequest.isPending;
|
|
124
|
+
react.useEffect(function () {
|
|
125
|
+
setNote(initialNote);
|
|
126
|
+
}, [initialNote]);
|
|
127
|
+
var requesterOrApproverDetails = status === constants.STATUSES.cancelled ? "".concat(requesterName, " (").concat(requesterEmail, ")") : "".concat(approverName, " (").concat(approverEmail, ")");
|
|
128
|
+
var isCurrentUserApprover = ((_window$globalProps = window.globalProps) === null || _window$globalProps === void 0 || (_window$globalProps = _window$globalProps.user) === null || _window$globalProps === void 0 ? void 0 : _window$globalProps.email) === approverEmail;
|
|
129
|
+
var isCurrentUserRequester = ((_window$globalProps2 = window.globalProps) === null || _window$globalProps2 === void 0 || (_window$globalProps2 = _window$globalProps2.user) === null || _window$globalProps2 === void 0 ? void 0 : _window$globalProps2.email) === requesterEmail;
|
|
130
|
+
var getStatusLabel = function getStatusLabel() {
|
|
131
|
+
if (isPending) {
|
|
132
|
+
return t("neetoApprovals.common.waitingFor");
|
|
133
|
+
}
|
|
134
|
+
return constants.STATUS_UPDATED_BY[status];
|
|
135
|
+
};
|
|
136
|
+
var handleOnClose = function handleOnClose() {
|
|
137
|
+
setNote("");
|
|
138
|
+
onClose();
|
|
139
|
+
};
|
|
140
|
+
var handleSubmit = function handleSubmit(status) {
|
|
141
|
+
return updatePendingRequest({
|
|
142
|
+
id: approvalDetails.id,
|
|
143
|
+
payload: _defineProperty({
|
|
144
|
+
status: status,
|
|
145
|
+
note: note
|
|
146
|
+
}, "".concat(status, "At"), new Date())
|
|
147
|
+
}, {
|
|
148
|
+
onSuccess: handleOnClose
|
|
149
|
+
});
|
|
150
|
+
};
|
|
151
|
+
return /*#__PURE__*/jsxRuntime.jsxs(neetoAtoms.Sheet, {
|
|
152
|
+
isOpen: isOpen,
|
|
153
|
+
className: "flex flex-col",
|
|
154
|
+
size: "large",
|
|
155
|
+
onClose: handleOnClose,
|
|
156
|
+
children: [/*#__PURE__*/jsxRuntime.jsxs(neetoAtoms.Sheet.Header, {
|
|
157
|
+
className: "space-y-2",
|
|
158
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet.Title, {
|
|
159
|
+
children: title
|
|
160
|
+
}), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Badge, {
|
|
161
|
+
variant: constants.STATUS_BADGE_VARIANT[constants.STATUS_TAG_STYLE[status]],
|
|
162
|
+
children: neetoCist.capitalize(status)
|
|
163
|
+
})]
|
|
164
|
+
}), /*#__PURE__*/jsxRuntime.jsxs(neetoAtoms.Sheet.Body, {
|
|
165
|
+
className: "h-auto flex-grow space-y-6 pb-6",
|
|
166
|
+
hasFooter: isPending,
|
|
167
|
+
children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
168
|
+
className: "w-full divide-y rounded border p-2",
|
|
169
|
+
children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
170
|
+
className: "flex flex-col gap-2 p-2 lg:flex-row lg:gap-3",
|
|
171
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Label, {
|
|
172
|
+
className: "font-normal",
|
|
173
|
+
children: getStatusLabel()
|
|
174
|
+
}), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Typography, {
|
|
175
|
+
variant: "body2",
|
|
176
|
+
weight: "medium",
|
|
177
|
+
children: requesterOrApproverDetails
|
|
178
|
+
})]
|
|
179
|
+
}), /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
180
|
+
className: "flex flex-col gap-2 p-2 lg:flex-row lg:gap-3",
|
|
181
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Label, {
|
|
182
|
+
className: "font-normal",
|
|
183
|
+
children: t("neetoApprovals.common.created")
|
|
184
|
+
}), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Typography, {
|
|
185
|
+
variant: "body2",
|
|
186
|
+
weight: "medium",
|
|
187
|
+
children: utils$1.dateFormat.defaultWithTime(timeInZone(createdAt))
|
|
188
|
+
})]
|
|
189
|
+
})]
|
|
190
|
+
}), /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
191
|
+
className: "w-full space-y-2",
|
|
192
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Label, {
|
|
193
|
+
children: t("neetoApprovals.inputs.labels.message")
|
|
194
|
+
}), /*#__PURE__*/jsxRuntime.jsx(MemoizedEditorContent, {
|
|
195
|
+
className: "rounded bg-muted p-4",
|
|
196
|
+
content: message
|
|
197
|
+
})]
|
|
198
|
+
}), isPending && isCurrentUserApprover && /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Textarea, {
|
|
199
|
+
className: "w-full",
|
|
200
|
+
disabled: !isPending,
|
|
201
|
+
label: t("neetoApprovals.common.note"),
|
|
202
|
+
value: note,
|
|
203
|
+
placeholder: t("neetoApprovals.inputs.placeholders.add_", {
|
|
204
|
+
what: t("neetoApprovals.common.note")
|
|
205
|
+
}),
|
|
206
|
+
onChange: utils$1.withEventTargetValue(setNote)
|
|
207
|
+
}), !isPending && note && /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
208
|
+
className: "w-full space-y-2",
|
|
209
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Label, {
|
|
210
|
+
children: t("neetoApprovals.common.note")
|
|
211
|
+
}), /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
212
|
+
className: "bg-muted p-4",
|
|
213
|
+
children: note
|
|
214
|
+
})]
|
|
215
|
+
})]
|
|
216
|
+
}), isPending && /*#__PURE__*/jsxRuntime.jsx(Footer, {
|
|
217
|
+
handleSubmit: handleSubmit,
|
|
218
|
+
isCurrentUserApprover: isCurrentUserApprover,
|
|
219
|
+
isCurrentUserRequester: isCurrentUserRequester,
|
|
220
|
+
isLoading: isUpdateRequestPending
|
|
221
|
+
})]
|
|
222
|
+
});
|
|
223
|
+
};
|
|
224
|
+
|
|
225
|
+
exports.RequestDetailsPane = RequestDetailsPane;
|
|
226
|
+
exports.getApprovalFilter = getApprovalFilter;
|
|
227
|
+
exports.updateApprovalDetails = updateApprovalDetails;
|
|
228
|
+
//# sourceMappingURL=index-C9Ur59-i.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-C9Ur59-i.js","sources":["../app/javascript/src/v2/components/Approvals/RequestDetailsPane/Footer.jsx","../app/javascript/src/v2/components/Approvals/utils.js","../app/javascript/src/v2/components/Approvals/RequestDetailsPane/index.jsx"],"sourcesContent":["import { Button, Sheet } from \"@bigbinary/neeto-atoms\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { STATUSES } from \"../constants\";\n\nconst Footer = ({\n isLoading,\n handleSubmit,\n isCurrentUserApprover,\n isCurrentUserRequester,\n}) => {\n const { t } = useTranslation();\n\n if (!isCurrentUserApprover && !isCurrentUserRequester) return null;\n\n if (isCurrentUserApprover) {\n return (\n <Sheet.Footer className=\"flex flex-shrink-0 gap-x-2\">\n <Button\n label={t(\"neetoApprovals.buttons.approve\")}\n loading={isLoading}\n type=\"submit\"\n onClick={() => handleSubmit(STATUSES.approved)}\n />\n <Button\n label={t(\"neetoApprovals.buttons.decline\")}\n loading={isLoading}\n variant=\"ghost\"\n onClick={() => handleSubmit(STATUSES.rejected)}\n />\n </Sheet.Footer>\n );\n }\n\n return (\n <Sheet.Footer className=\"flex flex-shrink-0 gap-x-2\">\n <Button\n label={t(\"neetoApprovals.buttons.cancelRequest\")}\n loading={isLoading}\n type=\"submit\"\n onClick={() => handleSubmit(STATUSES.cancelled)}\n />\n </Sheet.Footer>\n );\n};\n\nexport default Footer;\n","import timezone from \"dayjs/plugin/timezone\";\nimport utc from \"dayjs/plugin/utc\";\nimport { t } from \"i18next\";\nimport { findBy, isPresent } from \"neetocist\";\nimport { dayjs } from \"neetocommons/utils\";\nimport { PLURAL } from \"neetocommons/v2/constants\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\n\ndayjs.extend(utc);\ndayjs.extend(timezone);\n\nexport const updateApprovalDetails = ({ requestsData, approvalDetails }) => {\n if (isPresent(requestsData?.requests) && isPresent(approvalDetails)) {\n return findBy({ id: approvalDetails.id }, requestsData.requests) || {};\n }\n\n return {};\n};\n\nexport const timeInZone = time => {\n globalProps.user?.timeZone && dayjs.tz.setDefault(globalProps.user?.timeZone);\n\n return dayjs(time).tz();\n};\n\nexport const getApprovalFilter = () => ({\n PENDING: { label: t(\"neetoApprovals.common.pending\"), value: \"PENDING\" },\n TEMPLATES: {\n label: t(\"neetoApprovals.common.template\", PLURAL),\n value: \"TEMPLATES\",\n },\n HISTORY: { label: t(\"neetoApprovals.common.history\"), value: \"HISTORY\" },\n});\n","import { memo, useEffect, useState } from \"react\";\n\nimport {\n Badge,\n Label,\n Sheet,\n Textarea,\n Typography,\n} from \"@bigbinary/neeto-atoms\";\nimport { capitalize } from \"neetocist\";\nimport { dateFormat, withEventTargetValue } from \"neetocommons/v2/utils\";\nimport EditorContent from \"neetoeditor/v2/EditorContent\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useUpdateRequest } from \"hooks/reactQuery/requests/useRequestsApi\";\n\nimport Footer from \"./Footer\";\n\nimport {\n STATUSES,\n STATUS_BADGE_VARIANT,\n STATUS_TAG_STYLE,\n STATUS_UPDATED_BY,\n} from \"../constants\";\nimport { timeInZone } from \"../utils\";\n\nconst MemoizedEditorContent = memo(EditorContent);\n\nconst RequestDetailsPane = ({\n isOpen,\n onClose,\n approvalDetails,\n isPending = false,\n}) => {\n const { t } = useTranslation();\n\n const {\n title,\n status = \"\",\n message,\n createdAt,\n approverName,\n approverEmail,\n note: initialNote = \"\",\n requesterName,\n requesterEmail,\n } = approvalDetails;\n\n const [note, setNote] = useState(initialNote);\n\n const { mutate: updatePendingRequest, isPending: isUpdateRequestPending } =\n useUpdateRequest();\n\n useEffect(() => {\n setNote(initialNote);\n }, [initialNote]);\n\n const requesterOrApproverDetails =\n status === STATUSES.cancelled\n ? `${requesterName} (${requesterEmail})`\n : `${approverName} (${approverEmail})`;\n\n const isCurrentUserApprover =\n window.globalProps?.user?.email === approverEmail;\n\n const isCurrentUserRequester =\n window.globalProps?.user?.email === requesterEmail;\n\n const getStatusLabel = () => {\n if (isPending) {\n return t(\"neetoApprovals.common.waitingFor\");\n }\n\n return STATUS_UPDATED_BY[status];\n };\n\n const handleOnClose = () => {\n setNote(\"\");\n onClose();\n };\n\n const handleSubmit = status =>\n updatePendingRequest(\n {\n id: approvalDetails.id,\n payload: { status, note, [`${status}At`]: new Date() },\n },\n { onSuccess: handleOnClose }\n );\n\n return (\n <Sheet\n {...{ isOpen }}\n className=\"flex flex-col\"\n size=\"large\"\n onClose={handleOnClose}\n >\n <Sheet.Header className=\"space-y-2\">\n <Sheet.Title>{title}</Sheet.Title>\n <Badge variant={STATUS_BADGE_VARIANT[STATUS_TAG_STYLE[status]]}>\n {capitalize(status)}\n </Badge>\n </Sheet.Header>\n <Sheet.Body\n className=\"h-auto flex-grow space-y-6 pb-6\"\n hasFooter={isPending}\n >\n <div className=\"w-full divide-y rounded border p-2\">\n <div className=\"flex flex-col gap-2 p-2 lg:flex-row lg:gap-3\">\n <Label className=\"font-normal\">{getStatusLabel()}</Label>\n <Typography variant=\"body2\" weight=\"medium\">\n {requesterOrApproverDetails}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-2 p-2 lg:flex-row lg:gap-3\">\n <Label className=\"font-normal\">\n {t(\"neetoApprovals.common.created\")}\n </Label>\n <Typography variant=\"body2\" weight=\"medium\">\n {dateFormat.defaultWithTime(timeInZone(createdAt))}\n </Typography>\n </div>\n </div>\n <div className=\"w-full space-y-2\">\n <Label>{t(\"neetoApprovals.inputs.labels.message\")}</Label>\n <MemoizedEditorContent\n className=\"rounded bg-muted p-4\"\n content={message}\n />\n </div>\n {isPending && isCurrentUserApprover && (\n <Textarea\n className=\"w-full\"\n disabled={!isPending}\n label={t(\"neetoApprovals.common.note\")}\n value={note}\n placeholder={t(\"neetoApprovals.inputs.placeholders.add_\", {\n what: t(\"neetoApprovals.common.note\"),\n })}\n onChange={withEventTargetValue(setNote)}\n />\n )}\n {!isPending && note && (\n <div className=\"w-full space-y-2\">\n <Label>{t(\"neetoApprovals.common.note\")}</Label>\n <div className=\"bg-muted p-4\">{note}</div>\n </div>\n )}\n </Sheet.Body>\n {isPending && (\n <Footer\n {...{\n handleSubmit,\n isCurrentUserApprover,\n isCurrentUserRequester,\n }}\n isLoading={isUpdateRequestPending}\n />\n )}\n </Sheet>\n );\n};\n\nexport default RequestDetailsPane;\n"],"names":["Footer","_ref","isLoading","handleSubmit","isCurrentUserApprover","isCurrentUserRequester","_useTranslation","useTranslation","t","_jsxs","Sheet","className","children","_jsx","Button","label","loading","type","onClick","STATUSES","approved","variant","rejected","cancelled","dayjs","extend","utc","timezone","updateApprovalDetails","requestsData","approvalDetails","isPresent","requests","findBy","id","timeInZone","time","_globalProps$user","_globalProps$user2","globalProps","user","timeZone","tz","setDefault","getApprovalFilter","PENDING","value","TEMPLATES","PLURAL","HISTORY","MemoizedEditorContent","memo","EditorContent","RequestDetailsPane","_window$globalProps","_window$globalProps2","isOpen","onClose","_ref$isPending","isPending","title","_approvalDetails$stat","status","message","createdAt","approverName","approverEmail","_approvalDetails$note","note","initialNote","requesterName","requesterEmail","_useState","useState","_useState2","_slicedToArray","setNote","_useUpdateRequest","useUpdateRequest","updatePendingRequest","mutate","isUpdateRequestPending","useEffect","requesterOrApproverDetails","concat","window","email","getStatusLabel","STATUS_UPDATED_BY","handleOnClose","payload","_defineProperty","Date","onSuccess","size","Header","Title","Badge","STATUS_BADGE_VARIANT","STATUS_TAG_STYLE","capitalize","Body","hasFooter","Label","Typography","weight","dateFormat","defaultWithTime","content","Textarea","disabled","placeholder","what","onChange","withEventTargetValue"],"mappings":"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"}
|