kui-crm_actions 0.0.119 → 0.0.121

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/cjs/index.js CHANGED
@@ -14,9 +14,9 @@ var react = require('react');
14
14
  var reactHookForm = require('react-hook-form');
15
15
  var kuiBasic = require('kui-basic');
16
16
  var yup$1 = require('@hookform/resolvers/yup');
17
- var mobxReact = require('mobx-react');
18
17
  var styled = require('@emotion/styled');
19
18
  var kuiIcon = require('kui-icon');
19
+ var mobxReact = require('mobx-react');
20
20
  var mobx = require('mobx');
21
21
 
22
22
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
@@ -965,12 +965,51 @@ var getInventoryMeterFields = function (settings, inputsSettings) { return __spr
965
965
  __assign({ label: "Passport", name: "passportFile", variant: "custom", CustomInput: kuiComplex.InputFile }, inputsSettings === null || inputsSettings === void 0 ? void 0 : inputsSettings.passportFile),
966
966
  ], false); };
967
967
 
968
+ var AddedMeterItem = function (props) {
969
+ var meter = props.meter, getMeterLabel = props.getMeterLabel;
970
+ var resource = meter.resource, type = meter.type, number = meter.number;
971
+ var initialValue = meter.initialValue, initialValueT1 = meter.initialValueT1, initialValueT2 = meter.initialValueT2, initialValueT3 = meter.initialValueT3;
972
+ var meterValues = [
973
+ initialValue,
974
+ initialValueT1,
975
+ initialValueT2,
976
+ initialValueT3,
977
+ ]
978
+ .filter(function (value) { return typeof value !== "undefined"; })
979
+ .map(function (value) { return value; })
980
+ .join(" / ");
981
+ var getDefaultMeterLabel = function () {
982
+ return ___default["default"].capitalize("".concat(type ? "".concat(type, " ") : "").concat(resource, " meter"));
983
+ };
984
+ var label = getMeterLabel
985
+ ? getMeterLabel(resource, type)
986
+ : getDefaultMeterLabel();
987
+ return (jsxRuntime.jsxs(kuiBasic.Caption, __assign({ size: "s" }, { children: ["\u2022 ", label, " #", number, " -", " ", jsxRuntime.jsxs(StyledAccent, { children: [meterValues, " ", kuiCrm.meterUnitLabel[meter.resource]] })] })));
988
+ };
989
+ var StyledAccent = styled__default["default"].span(templateObject_1$a || (templateObject_1$a = __makeTemplateObject(["\n font-weight: 600;\n"], ["\n font-weight: 600;\n"])));
990
+ var templateObject_1$a;
991
+
992
+ var AddedMetersBlock = function (props) {
993
+ var _a, _b;
994
+ var resource = props.resource, formStore = props.formStore, label = props.label, getMeterLabel = props.getMeterLabel;
995
+ var addedMeters = (_b = (_a = formStore.fields) === null || _a === void 0 ? void 0 : _a.meters) === null || _b === void 0 ? void 0 : _b.filter(function (meter) { return meter.resource === resource; });
996
+ if (!(addedMeters === null || addedMeters === void 0 ? void 0 : addedMeters.length))
997
+ return null;
998
+ return (jsxRuntime.jsxs(StyledWrapper$5, { children: [jsxRuntime.jsxs(StyledHeader, __assign({ container: true, alignItems: "center" }, { children: [jsxRuntime.jsx(StyledIcon, {}), jsxRuntime.jsx(kuiBasic.Caption, __assign({ size: "s", color: "fiftyP" }, { children: label || "In the previous steps were added:" }))] })), addedMeters.map(function (meter) { return (jsxRuntime.jsx(AddedMeterItem, { getMeterLabel: getMeterLabel, meter: meter }, meter.number)); })] }));
999
+ };
1000
+ var StyledWrapper$5 = styled__default["default"].div(templateObject_1$9 || (templateObject_1$9 = __makeTemplateObject(["\n border-radius: 8px;\n border: 1px solid ", ";\n padding: 12px 16px;\n"], ["\n border-radius: 8px;\n border: 1px solid ", ";\n padding: 12px 16px;\n"])), kuiBasic.theme.palette.grey.fifteenB);
1001
+ var StyledIcon = styled__default["default"](kuiIcon.WarningIcon)(templateObject_2$6 || (templateObject_2$6 = __makeTemplateObject(["\n margin-right: 8px;\n width: 16px;\n height: 16px;\n path {\n fill: ", ";\n }\n"], ["\n margin-right: 8px;\n width: 16px;\n height: 16px;\n path {\n fill: ", ";\n }\n"])), kuiBasic.theme.palette.brand.main);
1002
+ var StyledHeader = styled__default["default"](kuiBasic.Grid)(templateObject_3$3 || (templateObject_3$3 = __makeTemplateObject(["\n margin-bottom: 8px;\n"], ["\n margin-bottom: 8px;\n"])));
1003
+ var templateObject_1$9, templateObject_2$6, templateObject_3$3;
1004
+
968
1005
  function InventoryMeterInfoFields(props) {
969
- var resource = props.resource, handleSubmit = props.handleSubmit, handlePrevClick = props.handlePrevClick, defaultValues = props.defaultValues;
1006
+ var _a, _b;
1007
+ var resource = props.resource, index = props.index, formStore = props.formStore;
1008
+ var defaultValues = (_b = (_a = formStore.fields) === null || _a === void 0 ? void 0 : _a.meters) === null || _b === void 0 ? void 0 : _b[index];
970
1009
  var withMeterType = resource === "water" || resource === "electricity";
971
1010
  var defaultType = resource === "water" ? "cold" : "T1";
972
1011
  var defaultMeterType = withMeterType ? defaultType : null;
973
- var _a = react.useState((defaultValues === null || defaultValues === void 0 ? void 0 : defaultValues.type) || defaultMeterType), meterType = _a[0], setMeterType = _a[1];
1012
+ var _c = react.useState((defaultValues === null || defaultValues === void 0 ? void 0 : defaultValues.type) || defaultMeterType), meterType = _c[0], setMeterType = _c[1];
974
1013
  var meterFields = getInventoryMeterFields({
975
1014
  resource: resource,
976
1015
  meterType: meterType,
@@ -986,7 +1025,11 @@ function InventoryMeterInfoFields(props) {
986
1025
  values: defaultValues,
987
1026
  });
988
1027
  }, [meterFeaturesFieldsSchema]);
989
- return (jsxRuntime.jsx(kuiCrm.FormWrapper, __assign({ form: form, onSubmit: handleSubmit, label: "Next", variant: "next", withPrevStep: true, handlePrevClick: handlePrevClick }, { children: jsxRuntime.jsxs(kuiBasic.Grid, __assign({ container: true, spacing: 2 }, { children: [withMeterType && (jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true, xs: 12 }, { children: jsxRuntime.jsx(kuiCrm.MeterTypeRadioGroup, { form: form, resource: resource, handleChange: setMeterType }) }))), meterFields.map(function (_a) {
1028
+ var handleSubmit = function (data) {
1029
+ formStore.replaceFieldInArray("meters", __assign(__assign({}, data), { resource: resource }), index);
1030
+ formStore.nextStep();
1031
+ };
1032
+ return (jsxRuntime.jsx(kuiCrm.FormWrapper, __assign({ form: form, onSubmit: handleSubmit, label: "Next", variant: "next", withPrevStep: true, handlePrevClick: formStore.prevStep }, { children: jsxRuntime.jsxs(kuiBasic.Grid, __assign({ container: true, spacing: 2 }, { children: [jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true, xs: 12 }, { children: jsxRuntime.jsx(AddedMetersBlock, { formStore: formStore, resource: resource }) })), withMeterType && (jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true, xs: 12 }, { children: jsxRuntime.jsx(kuiCrm.MeterTypeRadioGroup, { form: form, resource: resource, handleChange: setMeterType }) }))), meterFields.map(function (_a) {
990
1033
  var size = _a.size, field = __rest(_a, ["size"]);
991
1034
  return (jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true, xs: size || 6 }, { children: jsxRuntime.jsx(kuiCrm.InputByType, __assign({ form: form }, field)) }), field.name));
992
1035
  })] })) })));
@@ -1191,6 +1234,7 @@ var ObjectForMapOverlay = function (props) {
1191
1234
  var StyledWrapper = styled__default["default"].div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: relative;\n"], ["\n position: relative;\n"])));
1192
1235
  var templateObject_1;
1193
1236
 
1237
+ exports.AddedMetersBlock = AddedMetersBlock;
1194
1238
  exports.AdditionalInfoFieldsSchema = AdditionalInfoFieldsSchema;
1195
1239
  exports.AdditionalInfoStepSchema = AdditionalInfoStepSchema;
1196
1240
  exports.BasicApartmentInfoFieldsSchema = BasicApartmentInfoFieldsSchema;