kui-crm_actions 0.0.108 → 0.0.110
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 +44 -1
- package/cjs/index.js.map +1 -1
- package/index.d.ts +11 -2
- package/index.js +47 -5
- package/index.js.map +1 -1
- package/package.json +1 -1
package/cjs/index.js
CHANGED
@@ -10,11 +10,13 @@ var to = require('await-to-js');
|
|
10
10
|
var luxon = require('luxon');
|
11
11
|
var kuiComplex = require('kui-complex');
|
12
12
|
var jsxRuntime = require('react/jsx-runtime');
|
13
|
+
var react = require('react');
|
14
|
+
var reactHookForm = require('react-hook-form');
|
13
15
|
var kuiBasic = require('kui-basic');
|
16
|
+
var yup$1 = require('@hookform/resolvers/yup');
|
14
17
|
var mobxReact = require('mobx-react');
|
15
18
|
var styled = require('@emotion/styled');
|
16
19
|
var kuiIcon = require('kui-icon');
|
17
|
-
var react = require('react');
|
18
20
|
var mobx = require('mobx');
|
19
21
|
|
20
22
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
@@ -942,6 +944,46 @@ var FillingInfoFieldsSchema = yup__namespace.object().shape({
|
|
942
944
|
}),
|
943
945
|
});
|
944
946
|
|
947
|
+
var meterFeaturesFieldsSchema = {
|
948
|
+
number: yup__namespace.string().required("This field is required"),
|
949
|
+
};
|
950
|
+
var getMeterFeaturesFieldsSchema = function (valuesFields) {
|
951
|
+
var valuesSchema = kuiCrm.getMeterValuesFieldsSchema(valuesFields);
|
952
|
+
return yup__namespace.object().shape(__assign(__assign({}, meterFeaturesFieldsSchema), Object.assign.apply(Object, __spreadArray([{}], valuesSchema, false))));
|
953
|
+
};
|
954
|
+
|
955
|
+
var getMeterFields = function (settings, inputsSettings) { return __spreadArray(__spreadArray([], kuiCrm.basicFieldsOfNewResourceMeter(settings, inputsSettings), true), [
|
956
|
+
__assign({ label: "Activation date", name: "startDate", variant: "date", max: luxon.DateTime.now() }, inputsSettings === null || inputsSettings === void 0 ? void 0 : inputsSettings.startDate),
|
957
|
+
__assign({ label: "Passport", name: "passportFile", variant: "custom", CustomInput: kuiComplex.InputFile }, inputsSettings === null || inputsSettings === void 0 ? void 0 : inputsSettings.passportFile),
|
958
|
+
], false); };
|
959
|
+
|
960
|
+
function InventoryMeterInfoFields(props) {
|
961
|
+
var resource = props.resource, handleSubmit = props.handleSubmit, handlePrevClick = props.handlePrevClick, defaultValues = props.defaultValues;
|
962
|
+
var withMeterType = resource === "water" || resource === "electricity";
|
963
|
+
var defaultType = resource === "water" ? "cold" : "T1";
|
964
|
+
var defaultMeterType = withMeterType ? defaultType : null;
|
965
|
+
var _a = react.useState((defaultValues === null || defaultValues === void 0 ? void 0 : defaultValues.type) || defaultMeterType), meterType = _a[0], setMeterType = _a[1];
|
966
|
+
var meterFields = getMeterFields({
|
967
|
+
resource: resource,
|
968
|
+
meterType: meterType,
|
969
|
+
});
|
970
|
+
var valueFieldsName = meterFields
|
971
|
+
.filter(function (field) { return field.type === "number"; })
|
972
|
+
.map(function (field) { return field.name; });
|
973
|
+
var meterFeaturesFieldsSchema = getMeterFeaturesFieldsSchema(valueFieldsName);
|
974
|
+
var form = react.useMemo(function () {
|
975
|
+
return reactHookForm.useForm({
|
976
|
+
resolver: yup$1.yupResolver(meterFeaturesFieldsSchema),
|
977
|
+
defaultValues: __assign({}, defaultValues),
|
978
|
+
values: defaultValues,
|
979
|
+
});
|
980
|
+
}, [meterFeaturesFieldsSchema]);
|
981
|
+
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(kuiCrm.MeterTypeRadioGroup, { form: form, resource: resource, handleChange: setMeterType })), meterFields.map(function (_a) {
|
982
|
+
var size = _a.size, field = __rest(_a, ["size"]);
|
983
|
+
return (jsxRuntime.jsx(kuiBasic.Grid, __assign({ item: true, xs: size || 6 }, { children: jsxRuntime.jsx(kuiCrm.InputByType, __assign({ form: form }, field)) }), field.name));
|
984
|
+
})] })) })));
|
985
|
+
}
|
986
|
+
|
945
987
|
var renderMetersSteps = function (MeterStep, MeterPhotoStep, maxMeters) {
|
946
988
|
var meters = __spreadArray(__spreadArray(__spreadArray(__spreadArray([], new Array(Number((maxMeters === null || maxMeters === void 0 ? void 0 : maxMeters.water) || 0)).fill("water"), true), new Array(Number((maxMeters === null || maxMeters === void 0 ? void 0 : maxMeters.electricity) || 0)).fill("electricity"), true), new Array(Number((maxMeters === null || maxMeters === void 0 ? void 0 : maxMeters.gas) || 0)).fill("gas"), true), new Array(Number((maxMeters === null || maxMeters === void 0 ? void 0 : maxMeters.heating) || 0)).fill("heating"), true);
|
947
989
|
return meters.map(function (resource, index) { return [
|
@@ -1155,6 +1197,7 @@ exports.HouseServicesInfoFieldsSchema = HouseServicesInfoFieldsSchema;
|
|
1155
1197
|
exports.HouseServicesInfoStepSchema = HouseServicesInfoStepSchema;
|
1156
1198
|
exports.InspectionFeedback = index;
|
1157
1199
|
exports.InspectionFillingCard = InspectionFillingCard;
|
1200
|
+
exports.InventoryMeterInfoFields = InventoryMeterInfoFields;
|
1158
1201
|
exports.MetersInfoFieldsSchema = MetersInfoFieldsSchema;
|
1159
1202
|
exports.MetersInfoStepSchema = MetersInfoStepSchema;
|
1160
1203
|
exports.ObjectForMapCard = ObjectForMapCard;
|