@bigbinary/neeto-fields-frontend 1.3.24 → 1.3.25
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 +210 -299
- package/dist/index.cjs.js +54 -34
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.js +54 -35
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/types.d.ts +1 -0
package/dist/index.js
CHANGED
|
@@ -8,7 +8,7 @@ import { t } from 'i18next';
|
|
|
8
8
|
import * as yup from 'yup';
|
|
9
9
|
import { Select, Button, ActionBlock as ActionBlock$1, Input as Input$1, Switch, Form } from '@bigbinary/neetoui/formik';
|
|
10
10
|
import { joinHyphenCase, buildUrl, getQueryParams, dateFormat } from '@bigbinary/neeto-commons-frontend/utils';
|
|
11
|
-
import { Check, Delete,
|
|
11
|
+
import { Check, Delete, Reorder } from '@bigbinary/neeto-icons';
|
|
12
12
|
import { useTranslation, Trans } from 'react-i18next';
|
|
13
13
|
import { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE, PLURAL } from '@bigbinary/neeto-commons-frontend/constants';
|
|
14
14
|
import Container from '@bigbinary/neeto-molecules/Container';
|
|
@@ -22,6 +22,7 @@ import MenuBar from '@bigbinary/neeto-molecules/MenuBar';
|
|
|
22
22
|
import MoreDropdown from '@bigbinary/neeto-molecules/MoreDropdown';
|
|
23
23
|
import TableWrapper from '@bigbinary/neeto-molecules/TableWrapper';
|
|
24
24
|
import NeetoUIHeader from '@bigbinary/neeto-molecules/Header';
|
|
25
|
+
import HelpPopover from '@bigbinary/neeto-molecules/HelpPopover';
|
|
25
26
|
import { unstable_batchedUpdates, createPortal } from 'react-dom';
|
|
26
27
|
import NeetoUISubHeader from '@bigbinary/neeto-molecules/SubHeader';
|
|
27
28
|
import classnames from 'classnames';
|
|
@@ -788,9 +789,9 @@ var getValueFromBool = function getValueFromBool(value) {
|
|
|
788
789
|
return value === true ? t("neetoFields.common.yes") : t("neetoFields.common.no");
|
|
789
790
|
};
|
|
790
791
|
|
|
791
|
-
var _excluded$
|
|
792
|
-
function ownKeys$
|
|
793
|
-
function _objectSpread$
|
|
792
|
+
var _excluded$7 = ["name", "id", "kind", "data", "individualSubmit", "formRef", "formRefs", "disabled", "isRequiredColumnName", "isInline", "onBlur"];
|
|
793
|
+
function ownKeys$h(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
794
|
+
function _objectSpread$h(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$h(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$h(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
794
795
|
var useFormikFields = function useFormikFields(_ref) {
|
|
795
796
|
var name = _ref.name,
|
|
796
797
|
fieldId = _ref.id,
|
|
@@ -806,7 +807,7 @@ var useFormikFields = function useFormikFields(_ref) {
|
|
|
806
807
|
isInline = _ref$isInline === void 0 ? false : _ref$isInline,
|
|
807
808
|
_ref$onBlur = _ref.onBlur,
|
|
808
809
|
handleBlur = _ref$onBlur === void 0 ? noop$1 : _ref$onBlur,
|
|
809
|
-
props = _objectWithoutProperties(_ref, _excluded$
|
|
810
|
+
props = _objectWithoutProperties(_ref, _excluded$7);
|
|
810
811
|
var formikContext = useFormikContext();
|
|
811
812
|
var submitForm = formikContext.submitForm,
|
|
812
813
|
dirty = formikContext.dirty,
|
|
@@ -898,7 +899,7 @@ var useFormikFields = function useFormikFields(_ref) {
|
|
|
898
899
|
return {
|
|
899
900
|
dirty: dirty,
|
|
900
901
|
handleSubmit: handleSubmit,
|
|
901
|
-
fieldProps: _objectSpread$
|
|
902
|
+
fieldProps: _objectSpread$h(_objectSpread$h({}, formikFieldProps), {}, {
|
|
902
903
|
error: individualSubmit ? meta.error : meta.touched && meta.error,
|
|
903
904
|
value: getValueForField(formikFieldProps.value),
|
|
904
905
|
label: !isInline && capitalize(name),
|
|
@@ -928,28 +929,43 @@ var Checkbox = function Checkbox(props) {
|
|
|
928
929
|
}));
|
|
929
930
|
};
|
|
930
931
|
|
|
932
|
+
var _excluded$6 = ["onBlur"];
|
|
933
|
+
function ownKeys$g(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
934
|
+
function _objectSpread$g(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$g(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$g(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
931
935
|
var DateOrTime = function DateOrTime(props) {
|
|
932
936
|
var _useFormikFields = useFormikFields(props),
|
|
933
937
|
handleSubmit = _useFormikFields.handleSubmit,
|
|
934
|
-
|
|
938
|
+
_useFormikFields$fiel = _useFormikFields.fieldProps,
|
|
939
|
+
onBlur = _useFormikFields$fiel.onBlur,
|
|
940
|
+
fieldProps = _objectWithoutProperties(_useFormikFields$fiel, _excluded$6);
|
|
935
941
|
var handleChange = function handleChange(dateTime) {
|
|
936
942
|
return handleSubmit(dateTimeToString(dateTime));
|
|
937
943
|
};
|
|
944
|
+
var onOpenChange = function onOpenChange(open) {
|
|
945
|
+
if (open) return;
|
|
946
|
+
onBlur === null || onBlur === void 0 || onBlur();
|
|
947
|
+
};
|
|
938
948
|
if (props.kind === KINDS.time) {
|
|
939
|
-
return /*#__PURE__*/React.createElement(TimePicker, _extends({}, fieldProps, {
|
|
949
|
+
return /*#__PURE__*/React.createElement(TimePicker, _extends({}, _objectSpread$g(_objectSpread$g({}, fieldProps), {}, {
|
|
950
|
+
onOpenChange: onOpenChange
|
|
951
|
+
}), {
|
|
940
952
|
use12Hours: true,
|
|
941
953
|
format: "h:mm A",
|
|
942
954
|
onChange: handleChange
|
|
943
955
|
}));
|
|
944
956
|
} else if (props.kind === KINDS.date) {
|
|
945
|
-
return /*#__PURE__*/React.createElement(DatePicker, _extends({}, fieldProps, {
|
|
957
|
+
return /*#__PURE__*/React.createElement(DatePicker, _extends({}, _objectSpread$g(_objectSpread$g({}, fieldProps), {}, {
|
|
958
|
+
onOpenChange: onOpenChange
|
|
959
|
+
}), {
|
|
946
960
|
onChange: handleChange
|
|
947
961
|
}));
|
|
948
962
|
}
|
|
949
963
|
return /*#__PURE__*/React.createElement(DatePicker, _extends({
|
|
950
964
|
showTime: true,
|
|
951
965
|
timeFormat: "h:mm A"
|
|
952
|
-
}, fieldProps, {
|
|
966
|
+
}, _objectSpread$g(_objectSpread$g({}, fieldProps), {}, {
|
|
967
|
+
onOpenChange: onOpenChange
|
|
968
|
+
}), {
|
|
953
969
|
onChange: handleChange
|
|
954
970
|
}));
|
|
955
971
|
};
|
|
@@ -976,8 +992,13 @@ var Number$1 = function Number(props) {
|
|
|
976
992
|
dirty = _useFormikFields.dirty;
|
|
977
993
|
var individualSubmit = props.individualSubmit,
|
|
978
994
|
isInline = props.isInline;
|
|
979
|
-
var
|
|
980
|
-
|
|
995
|
+
var isNotInline = !isInline;
|
|
996
|
+
var showSubmitButton = isNotInline && individualSubmit && dirty;
|
|
997
|
+
return /*#__PURE__*/React.createElement(Input, _extends({}, fieldProps, isNotInline && {
|
|
998
|
+
onBlur: function onBlur() {
|
|
999
|
+
return dirty && handleSubmit();
|
|
1000
|
+
}
|
|
1001
|
+
}, {
|
|
981
1002
|
type: "number",
|
|
982
1003
|
suffix: showSubmitButton && /*#__PURE__*/React.createElement(Button, {
|
|
983
1004
|
"data-cy": joinHyphenCase(fieldProps.label, "check-button"),
|
|
@@ -1063,8 +1084,13 @@ var Text = function Text(props) {
|
|
|
1063
1084
|
dirty = _useFormikFields.dirty;
|
|
1064
1085
|
var individualSubmit = props.individualSubmit,
|
|
1065
1086
|
isInline = props.isInline;
|
|
1066
|
-
var
|
|
1067
|
-
|
|
1087
|
+
var isNotInline = !isInline;
|
|
1088
|
+
var showSubmitButton = isNotInline && individualSubmit && dirty;
|
|
1089
|
+
return /*#__PURE__*/React.createElement(Input, _extends({}, fieldProps, isNotInline && {
|
|
1090
|
+
onBlur: function onBlur() {
|
|
1091
|
+
return dirty && handleSubmit();
|
|
1092
|
+
}
|
|
1093
|
+
}, {
|
|
1068
1094
|
suffix: showSubmitButton && /*#__PURE__*/React.createElement(Button, {
|
|
1069
1095
|
"data-cy": joinHyphenCase(fieldProps.label, "check-button"),
|
|
1070
1096
|
icon: Check,
|
|
@@ -1250,7 +1276,6 @@ var FIELD_URL = "".concat(NEETO_FIELDS_URL, "/fields/:fieldId");
|
|
|
1250
1276
|
var DEPENDENCIES_URL = "".concat(NEETO_FIELDS_URL, "/fields/:fieldId/dependencies");
|
|
1251
1277
|
var FIELDS_REORDER_URL = "".concat(FIELDS_URL, "/reorder");
|
|
1252
1278
|
var CONFIGS_URL = "".concat(NEETO_FIELDS_URL, "/configs");
|
|
1253
|
-
var INFO_ICON_SIZE = 16;
|
|
1254
1279
|
|
|
1255
1280
|
function ownKeys$d(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
1256
1281
|
function _objectSpread$d(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$d(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$d(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
@@ -2971,20 +2996,6 @@ var FieldsTable = function FieldsTable(_ref) {
|
|
|
2971
2996
|
}));
|
|
2972
2997
|
};
|
|
2973
2998
|
|
|
2974
|
-
var TitleWithHelpLink = function TitleWithHelpLink(_ref) {
|
|
2975
|
-
var title = _ref.title,
|
|
2976
|
-
helpUrl = _ref.helpUrl;
|
|
2977
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
2978
|
-
className: "flex items-center gap-x-1"
|
|
2979
|
-
}, title, helpUrl && /*#__PURE__*/React.createElement("a", {
|
|
2980
|
-
href: helpUrl,
|
|
2981
|
-
rel: "noreferrer",
|
|
2982
|
-
target: "_blank"
|
|
2983
|
-
}, /*#__PURE__*/React.createElement(Info, {
|
|
2984
|
-
size: INFO_ICON_SIZE
|
|
2985
|
-
})));
|
|
2986
|
-
};
|
|
2987
|
-
|
|
2988
2999
|
// eslint-disable-next-line @bigbinary/neeto/no-dumb-components-with-use-translation
|
|
2989
3000
|
var ActionBlock = function ActionBlock(_ref) {
|
|
2990
3001
|
var reorderable = _ref.reorderable,
|
|
@@ -3011,24 +3022,29 @@ var ActionBlock = function ActionBlock(_ref) {
|
|
|
3011
3022
|
}));
|
|
3012
3023
|
};
|
|
3013
3024
|
|
|
3014
|
-
var _excluded = ["searchInputProps", "breadcrumbs", "title", "helpDocUrl"];
|
|
3015
|
-
var Header = function
|
|
3025
|
+
var _excluded = ["searchInputProps", "breadcrumbs", "title", "helpDocUrl", "helpDescription"];
|
|
3026
|
+
var Header = withT(function (_ref) {
|
|
3016
3027
|
var searchInputProps = _ref.searchInputProps,
|
|
3017
3028
|
breadcrumbs = _ref.breadcrumbs,
|
|
3018
3029
|
title = _ref.title,
|
|
3019
3030
|
helpDocUrl = _ref.helpDocUrl,
|
|
3031
|
+
helpDescription = _ref.helpDescription,
|
|
3020
3032
|
actionBlockProps = _objectWithoutProperties(_ref, _excluded);
|
|
3021
3033
|
return /*#__PURE__*/React.createElement(NeetoUIHeader, {
|
|
3022
3034
|
breadcrumbs: breadcrumbs,
|
|
3023
3035
|
actionBlock: /*#__PURE__*/React.createElement(ActionBlock, actionBlockProps),
|
|
3024
3036
|
searchProps: searchInputProps,
|
|
3025
3037
|
size: "small",
|
|
3026
|
-
title: /*#__PURE__*/React.createElement(
|
|
3038
|
+
title: /*#__PURE__*/React.createElement("span", null, title, /*#__PURE__*/React.createElement(HelpPopover, {
|
|
3027
3039
|
title: title,
|
|
3028
|
-
|
|
3029
|
-
|
|
3040
|
+
className: "ml-2 self-center",
|
|
3041
|
+
description: helpDescription,
|
|
3042
|
+
helpLinkProps: {
|
|
3043
|
+
href: helpDocUrl
|
|
3044
|
+
}
|
|
3045
|
+
}))
|
|
3030
3046
|
});
|
|
3031
|
-
};
|
|
3047
|
+
});
|
|
3032
3048
|
|
|
3033
3049
|
var Menubar = function Menubar(_ref) {
|
|
3034
3050
|
var menuBarItems = _ref.menuBarItems,
|
|
@@ -7457,6 +7473,7 @@ var FieldsDashboard = function FieldsDashboard(_ref) {
|
|
|
7457
7473
|
_ref$fieldStatesTaxon = _ref.fieldStatesTaxonomy,
|
|
7458
7474
|
fieldStatesTaxonomy = _ref$fieldStatesTaxon === void 0 ? DEFAULT_FIELD_STATE_TAXONOMY : _ref$fieldStatesTaxon,
|
|
7459
7475
|
helpDocUrl = _ref.helpDocUrl,
|
|
7476
|
+
helpDescription = _ref.helpDescription,
|
|
7460
7477
|
_ref$nameAliases = _ref.nameAliases,
|
|
7461
7478
|
nameAliases = _ref$nameAliases === void 0 ? {} : _ref$nameAliases,
|
|
7462
7479
|
headerTitle = _ref.headerTitle,
|
|
@@ -7506,6 +7523,7 @@ var FieldsDashboard = function FieldsDashboard(_ref) {
|
|
|
7506
7523
|
reorderable: reorderable,
|
|
7507
7524
|
breadcrumbs: breadcrumbs,
|
|
7508
7525
|
helpDocUrl: helpDocUrl,
|
|
7526
|
+
helpDescription: helpDescription,
|
|
7509
7527
|
searchInputProps: searchInputProps,
|
|
7510
7528
|
setIsPaneOpen: setIsPaneOpen,
|
|
7511
7529
|
setIsReorderPaneOpen: setIsReorderPaneOpen,
|
|
@@ -7522,6 +7540,7 @@ var FieldsDashboard = function FieldsDashboard(_ref) {
|
|
|
7522
7540
|
className: "flex h-screen w-full flex-grow items-center justify-center"
|
|
7523
7541
|
}, /*#__PURE__*/React.createElement(PageLoader, null)) : /*#__PURE__*/React.createElement(FieldsTable, {
|
|
7524
7542
|
columnData: columnData,
|
|
7543
|
+
helpDescription: helpDescription,
|
|
7525
7544
|
helpDocUrl: helpDocUrl,
|
|
7526
7545
|
pageProps: pageProps,
|
|
7527
7546
|
setIsPaneOpen: setIsPaneOpen,
|