@djb25/digit-ui-module-ws 1.0.52 → 1.0.54

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/dist/index.js CHANGED
@@ -1872,11 +1872,12 @@ const WSCalculationPayload = (data, tenantId) => {
1872
1872
  farArea: useDetails !== null && useDetails !== void 0 && useDetails.farArea ? Number(useDetails.farArea) : 0,
1873
1873
  numberOfFloors: useDetails !== null && useDetails !== void 0 && (_useDetails$noOfFloor = useDetails.noOfFloors) !== null && _useDetails$noOfFloor !== void 0 && _useDetails$noOfFloor.code ? Number(useDetails.noOfFloors.code) : 0,
1874
1874
  numberOfStudents: useDetails !== null && useDetails !== void 0 && useDetails.numberOfStudents ? Number(useDetails.numberOfStudents) : 0,
1875
- numberOfBeds: useDetails !== null && useDetails !== void 0 && useDetails.numberOfBeds ? Number(useDetails.numberOfBeds) : 0
1875
+ numberOfBeds: useDetails !== null && useDetails !== void 0 && useDetails.numberOfBeds ? Number(useDetails.numberOfBeds) : 0,
1876
+ servantQuarterArea: useDetails !== null && useDetails !== void 0 && useDetails.servantQuarterArea ? Number(useDetails.servantQuarterArea) : 0
1876
1877
  };
1877
1878
  if (useDetails !== null && useDetails !== void 0 && useDetails.NumberofRooms) payload.numberOfRooms = Number(useDetails.NumberofRooms);
1878
1879
  if (useDetails !== null && useDetails !== void 0 && useDetails.NumberofDwellingUnits) payload.numberOfDwellingUnits = Number(useDetails.NumberofDwellingUnits);
1879
- if (useDetails !== null && useDetails !== void 0 && useDetails.ServantQuartersRoom) payload.servantQuartersRoom = Number(useDetails.ServantQuartersRoom);
1880
+ if (useDetails !== null && useDetails !== void 0 && useDetails.servantQuarterArea) payload.servantQuarterArea = Number(useDetails.servantQuarterArea);
1880
1881
  return payload;
1881
1882
  };
1882
1883
 
@@ -9667,7 +9668,7 @@ const WSCalculation = _ref => {
9667
9668
  NumberofRooms: "",
9668
9669
  numberOfBeds: "",
9669
9670
  numberOfStudents: "",
9670
- ServantQuartersRoom: "",
9671
+ servantQuarterArea: "",
9671
9672
  colonyName: ""
9672
9673
  }
9673
9674
  }
@@ -9684,8 +9685,9 @@ const WSCalculation = _ref => {
9684
9685
  const _Digit$Hooks$ws$useWS = Digit.Hooks.ws.useWSCalculater({
9685
9686
  tenantId
9686
9687
  }),
9687
- calculateCharges = _Digit$Hooks$ws$useWS.mutate;
9688
- const _Digit$Hooks$pt$usePr = Digit.Hooks.pt.usePropertyMDMS(tenantId, "PropertyTax", ["PropertyCategory", "PropertyType", "PropertyNewUsageType"]),
9688
+ calculateCharges = _Digit$Hooks$ws$useWS.mutate,
9689
+ isLoading = _Digit$Hooks$ws$useWS.isLoading;
9690
+ const _Digit$Hooks$pt$usePr = Digit.Hooks.pt.usePropertyMDMS(tenantId, "PropertyTax", ["PropertyCategory", "PropertyType", "PropertyNewUsageType", "PropertyToUsageMapping"]),
9689
9691
  ptServicesMastersData = _Digit$Hooks$pt$usePr.data;
9690
9692
  const _Digit$Hooks$ws$useMD = Digit.Hooks.ws.useMDMS(tenantId, "ws-services-masters", ["WsCategoryType"]),
9691
9693
  wsServicesMastersData = _Digit$Hooks$ws$useMD.data;
@@ -9713,17 +9715,18 @@ const WSCalculation = _ref => {
9713
9715
  const watchPropertyType = watch("useDetails.propertyType");
9714
9716
  const watchPropertyCategory = watch("useDetails.propertyCategory");
9715
9717
  const watchWaterConnectionUsageType = watch("useDetails.WaterConnectionUsageType");
9716
- const isHospitalProperty = (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "HOSPITAL_NURSING_HOME" || (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "HospitalNursingHome";
9718
+ const watchColonyName = watch("useDetails.colonyName");
9719
+ const isCalculateButtonEnabled = watchCategoryType && watchPropertyCategory && watchPropertyType && watchWaterConnectionUsageType && watchColonyName && !calculationData;
9720
+ const isHospitalProperty = (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "HOSPITAL_NURSING_HOME" || (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "DharamshalasOrHostels" || (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "HospitalNursingHome";
9717
9721
  const isHotelRestaurantProperty = (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "HOTEL_OR_RESTAURANT" || (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "HotelOrRestaurant";
9718
9722
  const isSchoolCollegeProperty = (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "School" || (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "College";
9719
9723
  const isDwellingUnit = (watchPropertyCategory === null || watchPropertyCategory === void 0 ? void 0 : watchPropertyCategory.code) === "RESIDENTIAL" || (watchPropertyCategory === null || watchPropertyCategory === void 0 ? void 0 : watchPropertyCategory.code) === "RESIDENTIAL";
9720
9724
  const isServentHouse = (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "Apartment" || (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "FlatOrApartment" || (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "IndividualHouse";
9721
9725
  const categoryOptions = React.useMemo(() => {
9722
9726
  var _ptServicesMastersDat, _ptServicesMastersDat2;
9727
+ if (!(watchCategoryType !== null && watchCategoryType !== void 0 && watchCategoryType.code)) return [];
9723
9728
  let options = (ptServicesMastersData === null || ptServicesMastersData === void 0 ? void 0 : (_ptServicesMastersDat = ptServicesMastersData.PropertyTax) === null || _ptServicesMastersDat === void 0 ? void 0 : (_ptServicesMastersDat2 = _ptServicesMastersDat.PropertyCategory) === null || _ptServicesMastersDat2 === void 0 ? void 0 : _ptServicesMastersDat2.filter(item => item.active)) || [];
9724
- if (watchCategoryType !== null && watchCategoryType !== void 0 && watchCategoryType.code) {
9725
- options = options.filter(item => item.type === watchCategoryType.code);
9726
- }
9729
+ options = options.filter(item => item.type === watchCategoryType.code);
9727
9730
  return options.map(item => ({
9728
9731
  code: item.code,
9729
9732
  name: item.name
@@ -9738,16 +9741,18 @@ const WSCalculation = _ref => {
9738
9741
  }
9739
9742
  }, [watchCategoryType, categoryOptions, setValue, watchPropertyCategory]);
9740
9743
  const propertyTypeOptions = React.useMemo(() => {
9741
- var _ptServicesMastersDat3, _ptServicesMastersDat4;
9744
+ var _ptServicesMastersDat3, _ptServicesMastersDat4, _ptServicesMastersDat5, _watchPropertyCategor;
9745
+ if (!(watchPropertyCategory !== null && watchPropertyCategory !== void 0 && watchPropertyCategory.code)) return [];
9742
9746
  let options = (ptServicesMastersData === null || ptServicesMastersData === void 0 ? void 0 : (_ptServicesMastersDat3 = ptServicesMastersData.PropertyTax) === null || _ptServicesMastersDat3 === void 0 ? void 0 : (_ptServicesMastersDat4 = _ptServicesMastersDat3.PropertyType) === null || _ptServicesMastersDat4 === void 0 ? void 0 : _ptServicesMastersDat4.filter(item => item.active)) || [];
9743
- if (watchPropertyCategory !== null && watchPropertyCategory !== void 0 && watchPropertyCategory.code) {
9744
- var _watchPropertyCategor;
9745
- if ((watchPropertyCategory === null || watchPropertyCategory === void 0 ? void 0 : (_watchPropertyCategor = watchPropertyCategory.code) === null || _watchPropertyCategor === void 0 ? void 0 : _watchPropertyCategor.toUpperCase()) !== "MIXED") {
9746
- options = options.filter(item => {
9747
- var _item$type, _watchPropertyCategor2;
9748
- return ((_item$type = item.type) === null || _item$type === void 0 ? void 0 : _item$type.toUpperCase()) === ((_watchPropertyCategor2 = watchPropertyCategory.code) === null || _watchPropertyCategor2 === void 0 ? void 0 : _watchPropertyCategor2.toUpperCase());
9749
- });
9750
- }
9747
+ let mapping = (ptServicesMastersData === null || ptServicesMastersData === void 0 ? void 0 : (_ptServicesMastersDat5 = ptServicesMastersData.PropertyTax) === null || _ptServicesMastersDat5 === void 0 ? void 0 : _ptServicesMastersDat5.PropertyToUsageMapping) || [];
9748
+ if (mapping.length > 0) {
9749
+ options = options.filter(item => mapping.some(m => m.propertyTypeCode === item.code));
9750
+ }
9751
+ if ((watchPropertyCategory === null || watchPropertyCategory === void 0 ? void 0 : (_watchPropertyCategor = watchPropertyCategory.code) === null || _watchPropertyCategor === void 0 ? void 0 : _watchPropertyCategor.toUpperCase()) !== "MIXED") {
9752
+ options = options.filter(item => {
9753
+ var _item$type, _watchPropertyCategor2;
9754
+ return ((_item$type = item.type) === null || _item$type === void 0 ? void 0 : _item$type.toUpperCase()) === ((_watchPropertyCategor2 = watchPropertyCategory.code) === null || _watchPropertyCategor2 === void 0 ? void 0 : _watchPropertyCategor2.toUpperCase());
9755
+ });
9751
9756
  }
9752
9757
  return options.map(item => ({
9753
9758
  code: item.code,
@@ -9763,22 +9768,21 @@ const WSCalculation = _ref => {
9763
9768
  }
9764
9769
  }, [watchPropertyCategory, propertyTypeOptions, setValue, watchPropertyType]);
9765
9770
  const usageTypeOptions = React.useMemo(() => {
9766
- var _ptServicesMastersDat5, _ptServicesMastersDat6;
9767
- let options = (ptServicesMastersData === null || ptServicesMastersData === void 0 ? void 0 : (_ptServicesMastersDat5 = ptServicesMastersData.PropertyTax) === null || _ptServicesMastersDat5 === void 0 ? void 0 : (_ptServicesMastersDat6 = _ptServicesMastersDat5.PropertyNewUsageType) === null || _ptServicesMastersDat6 === void 0 ? void 0 : _ptServicesMastersDat6.filter(item => item.active)) || [];
9768
- if (watchPropertyCategory !== null && watchPropertyCategory !== void 0 && watchPropertyCategory.code) {
9769
- var _watchPropertyCategor3;
9770
- if ((watchPropertyCategory === null || watchPropertyCategory === void 0 ? void 0 : (_watchPropertyCategor3 = watchPropertyCategory.code) === null || _watchPropertyCategor3 === void 0 ? void 0 : _watchPropertyCategor3.toUpperCase()) !== "MIXED") {
9771
- options = options.filter(item => {
9772
- var _item$type2, _watchPropertyCategor4;
9773
- return ((_item$type2 = item.type) === null || _item$type2 === void 0 ? void 0 : _item$type2.toUpperCase()) === ((_watchPropertyCategor4 = watchPropertyCategory.code) === null || _watchPropertyCategor4 === void 0 ? void 0 : _watchPropertyCategor4.toUpperCase());
9774
- });
9775
- }
9771
+ var _ptServicesMastersDat6, _ptServicesMastersDat7, _ptServicesMastersDat8;
9772
+ if (!(watchPropertyType !== null && watchPropertyType !== void 0 && watchPropertyType.code)) return [];
9773
+ let options = (ptServicesMastersData === null || ptServicesMastersData === void 0 ? void 0 : (_ptServicesMastersDat6 = ptServicesMastersData.PropertyTax) === null || _ptServicesMastersDat6 === void 0 ? void 0 : (_ptServicesMastersDat7 = _ptServicesMastersDat6.PropertyNewUsageType) === null || _ptServicesMastersDat7 === void 0 ? void 0 : _ptServicesMastersDat7.filter(item => item.active)) || [];
9774
+ let mapping = (ptServicesMastersData === null || ptServicesMastersData === void 0 ? void 0 : (_ptServicesMastersDat8 = ptServicesMastersData.PropertyTax) === null || _ptServicesMastersDat8 === void 0 ? void 0 : _ptServicesMastersDat8.PropertyToUsageMapping) || [];
9775
+ const selectedMapping = mapping.find(m => m.propertyTypeCode === watchPropertyType.code);
9776
+ if (selectedMapping && selectedMapping.allowedUsages) {
9777
+ options = options.filter(item => selectedMapping.allowedUsages.includes(item.code));
9778
+ } else {
9779
+ options = [];
9776
9780
  }
9777
9781
  return options.map(item => ({
9778
9782
  code: item.code,
9779
9783
  name: item.name
9780
9784
  }));
9781
- }, [ptServicesMastersData, watchPropertyCategory]);
9785
+ }, [ptServicesMastersData, watchPropertyCategory, watchPropertyType]);
9782
9786
  React.useEffect(() => {
9783
9787
  if (watchPropertyType && watchWaterConnectionUsageType) {
9784
9788
  const isUsageTypeValid = usageTypeOptions.some(opt => opt.code === watchWaterConnectionUsageType.code);
@@ -9822,7 +9826,7 @@ const WSCalculation = _ref => {
9822
9826
  setValue("useDetails.NumberofRooms", "");
9823
9827
  setValue("useDetails.numberOfBeds", "");
9824
9828
  setValue("useDetails.numberOfStudents", "");
9825
- setValue("useDetails.ServantQuartersRoom", "");
9829
+ setValue("useDetails.servantQuarterArea", "");
9826
9830
  setValue("useDetails.colonyName", "");
9827
9831
  }
9828
9832
  }, [formData === null || formData === void 0 ? void 0 : (_formData$cpt2 = formData.cpt) === null || _formData$cpt2 === void 0 ? void 0 : _formData$cpt2.details, formData === null || formData === void 0 ? void 0 : formData.cpt, categoryOptions, propertyTypeOptions, usageTypeOptions, categoryTypeList, setValue]);
@@ -10353,10 +10357,10 @@ const WSCalculation = _ref => {
10353
10357
  message: t("ERR_INVALID_NUMBER")
10354
10358
  }
10355
10359
  }),
10356
- name: "useDetails.ServantQuartersRoom"
10357
- }))) : null, isServentHouse && (errors === null || errors === void 0 ? void 0 : (_errors$useDetails11 = errors.useDetails) === null || _errors$useDetails11 === void 0 ? void 0 : _errors$useDetails11.ServantQuartersRoom) && /*#__PURE__*/React__default.createElement(digitUiReactComponents.CardLabelError, {
10360
+ name: "useDetails.servantQuarterArea"
10361
+ }))) : null, isServentHouse && (errors === null || errors === void 0 ? void 0 : (_errors$useDetails11 = errors.useDetails) === null || _errors$useDetails11 === void 0 ? void 0 : _errors$useDetails11.servantQuarterArea) && /*#__PURE__*/React__default.createElement(digitUiReactComponents.CardLabelError, {
10358
10362
  style: errorStyle
10359
- }, errors.useDetails.ServantQuartersRoom.message))), /*#__PURE__*/React__default.createElement("div", {
10363
+ }, errors.useDetails.servantQuarterArea.message))), /*#__PURE__*/React__default.createElement("div", {
10360
10364
  style: {
10361
10365
  display: "flex",
10362
10366
  marginTop: "24px",
@@ -10374,9 +10378,10 @@ const WSCalculation = _ref => {
10374
10378
  reset();
10375
10379
  setCalculationData(null);
10376
10380
  }
10377
- }, t("CS_COMMON_CLEAR_SEARCH")), /*#__PURE__*/React__default.createElement(digitUiReactComponents.SubmitBar, {
10381
+ }, t("CS_COMMON_CLEAR_SEARCH")), isLoading ? /*#__PURE__*/React__default.createElement(digitUiReactComponents.Loader, null) : /*#__PURE__*/React__default.createElement(digitUiReactComponents.SubmitBar, {
10378
10382
  label: t("ES_COMMON_CALCULATE"),
10379
- onSubmit: handleSubmit
10383
+ onSubmit: handleSubmit,
10384
+ disabled: !isCalculateButtonEnabled
10380
10385
  })), calculationData && /*#__PURE__*/React__default.createElement(RenderCalculationDetails, {
10381
10386
  data: calculationData
10382
10387
  })));
@@ -21453,7 +21458,7 @@ const PropertyWaterConnection = _ref => {
21453
21458
  NumberofRooms: "",
21454
21459
  numberOfBeds: "",
21455
21460
  numberOfStudents: "",
21456
- ServantQuartersRoom: ""
21461
+ servantQuarterArea: ""
21457
21462
  }
21458
21463
  }
21459
21464
  }),
@@ -21463,7 +21468,7 @@ const PropertyWaterConnection = _ref => {
21463
21468
  watch = _useForm.watch,
21464
21469
  setValue = _useForm.setValue;
21465
21470
  const tenantId = Digit.ULBService.getCurrentTenantId();
21466
- const _Digit$Hooks$pt$usePr = Digit.Hooks.pt.usePropertyMDMS(tenantId, "PropertyTax", ["PropertyCategory", "PropertyType", "NoOfFloors", "PropertyNewUsageType"]),
21471
+ const _Digit$Hooks$pt$usePr = Digit.Hooks.pt.usePropertyMDMS(tenantId, "PropertyTax", ["PropertyCategory", "PropertyType", "NoOfFloors", "PropertyNewUsageType", "PropertyToUsageMapping"]),
21467
21472
  ptServicesMastersData = _Digit$Hooks$pt$usePr.data;
21468
21473
  const _Digit$Hooks$ws$useMD = Digit.Hooks.ws.useMDMS(tenantId, "ws-services-masters", ["WsCategoryType"]),
21469
21474
  wsServicesMastersData = _Digit$Hooks$ws$useMD.data;
@@ -21489,7 +21494,7 @@ const PropertyWaterConnection = _ref => {
21489
21494
  const watchPropertyType = watch("useDetails.propertyType");
21490
21495
  const watchPropertyCategory = watch("useDetails.propertyCategory");
21491
21496
  const watchWaterConnectionUsageType = watch("useDetails.WaterConnectionUsageType");
21492
- const isHospitalProperty = (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "HOSPITAL_NURSING_HOME" || (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "HospitalNursingHome";
21497
+ const isHospitalProperty = (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "HOSPITAL_NURSING_HOME" || (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "DharamshalasOrHostels" || (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "HospitalNursingHome";
21493
21498
  const isHotelRestaurantProperty = (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "HOTEL_OR_RESTAURANT" || (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "HotelOrRestaurant";
21494
21499
  const isSchoolCollegeProperty = (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "School" || (watchPropertyType === null || watchPropertyType === void 0 ? void 0 : watchPropertyType.code) === "College";
21495
21500
  const isDwellingUnit = (watchPropertyCategory === null || watchPropertyCategory === void 0 ? void 0 : watchPropertyCategory.code) === "RESIDENTIAL" || (watchPropertyCategory === null || watchPropertyCategory === void 0 ? void 0 : watchPropertyCategory.code) === "RESIDENTIAL";
@@ -21507,10 +21512,9 @@ const PropertyWaterConnection = _ref => {
21507
21512
  }, []);
21508
21513
  const categoryOptions = React.useMemo(() => {
21509
21514
  var _ptServicesMastersDat, _ptServicesMastersDat2;
21515
+ if (!(watchCategoryType !== null && watchCategoryType !== void 0 && watchCategoryType.code)) return [];
21510
21516
  let options = (ptServicesMastersData === null || ptServicesMastersData === void 0 ? void 0 : (_ptServicesMastersDat = ptServicesMastersData.PropertyTax) === null || _ptServicesMastersDat === void 0 ? void 0 : (_ptServicesMastersDat2 = _ptServicesMastersDat.PropertyCategory) === null || _ptServicesMastersDat2 === void 0 ? void 0 : _ptServicesMastersDat2.filter(item => item.active)) || [];
21511
- if (watchCategoryType !== null && watchCategoryType !== void 0 && watchCategoryType.code) {
21512
- options = options.filter(item => item.type === watchCategoryType.code);
21513
- }
21517
+ options = options.filter(item => item.type === watchCategoryType.code);
21514
21518
  return options.map(item => ({
21515
21519
  code: item.code,
21516
21520
  name: item.name
@@ -21525,16 +21529,18 @@ const PropertyWaterConnection = _ref => {
21525
21529
  }
21526
21530
  }, [watchCategoryType, categoryOptions, setValue, watchPropertyCategory]);
21527
21531
  const propertyTypeOptions = React.useMemo(() => {
21528
- var _ptServicesMastersDat3, _ptServicesMastersDat4;
21532
+ var _ptServicesMastersDat3, _ptServicesMastersDat4, _ptServicesMastersDat5, _watchPropertyCategor;
21533
+ if (!(watchPropertyCategory !== null && watchPropertyCategory !== void 0 && watchPropertyCategory.code)) return [];
21529
21534
  let options = (ptServicesMastersData === null || ptServicesMastersData === void 0 ? void 0 : (_ptServicesMastersDat3 = ptServicesMastersData.PropertyTax) === null || _ptServicesMastersDat3 === void 0 ? void 0 : (_ptServicesMastersDat4 = _ptServicesMastersDat3.PropertyType) === null || _ptServicesMastersDat4 === void 0 ? void 0 : _ptServicesMastersDat4.filter(item => item.active)) || [];
21530
- if (watchPropertyCategory !== null && watchPropertyCategory !== void 0 && watchPropertyCategory.code) {
21531
- var _watchPropertyCategor;
21532
- if ((watchPropertyCategory === null || watchPropertyCategory === void 0 ? void 0 : (_watchPropertyCategor = watchPropertyCategory.code) === null || _watchPropertyCategor === void 0 ? void 0 : _watchPropertyCategor.toUpperCase()) !== "MIXED") {
21533
- options = options.filter(item => {
21534
- var _item$type, _watchPropertyCategor2;
21535
- return ((_item$type = item.type) === null || _item$type === void 0 ? void 0 : _item$type.toUpperCase()) === ((_watchPropertyCategor2 = watchPropertyCategory.code) === null || _watchPropertyCategor2 === void 0 ? void 0 : _watchPropertyCategor2.toUpperCase());
21536
- });
21537
- }
21535
+ let mapping = (ptServicesMastersData === null || ptServicesMastersData === void 0 ? void 0 : (_ptServicesMastersDat5 = ptServicesMastersData.PropertyTax) === null || _ptServicesMastersDat5 === void 0 ? void 0 : _ptServicesMastersDat5.PropertyToUsageMapping) || [];
21536
+ if (mapping.length > 0) {
21537
+ options = options.filter(item => mapping.some(m => m.propertyTypeCode === item.code));
21538
+ }
21539
+ if ((watchPropertyCategory === null || watchPropertyCategory === void 0 ? void 0 : (_watchPropertyCategor = watchPropertyCategory.code) === null || _watchPropertyCategor === void 0 ? void 0 : _watchPropertyCategor.toUpperCase()) !== "MIXED") {
21540
+ options = options.filter(item => {
21541
+ var _item$type, _watchPropertyCategor2;
21542
+ return ((_item$type = item.type) === null || _item$type === void 0 ? void 0 : _item$type.toUpperCase()) === ((_watchPropertyCategor2 = watchPropertyCategory.code) === null || _watchPropertyCategor2 === void 0 ? void 0 : _watchPropertyCategor2.toUpperCase());
21543
+ });
21538
21544
  }
21539
21545
  return options.map(item => ({
21540
21546
  code: item.code,
@@ -21550,22 +21556,21 @@ const PropertyWaterConnection = _ref => {
21550
21556
  }
21551
21557
  }, [watchPropertyCategory, propertyTypeOptions, setValue, watchPropertyType]);
21552
21558
  const usageTypeOptions = React.useMemo(() => {
21553
- var _ptServicesMastersDat5, _ptServicesMastersDat6;
21554
- let options = (ptServicesMastersData === null || ptServicesMastersData === void 0 ? void 0 : (_ptServicesMastersDat5 = ptServicesMastersData.PropertyTax) === null || _ptServicesMastersDat5 === void 0 ? void 0 : (_ptServicesMastersDat6 = _ptServicesMastersDat5.PropertyNewUsageType) === null || _ptServicesMastersDat6 === void 0 ? void 0 : _ptServicesMastersDat6.filter(item => item.active)) || [];
21555
- if (watchPropertyCategory !== null && watchPropertyCategory !== void 0 && watchPropertyCategory.code) {
21556
- var _watchPropertyCategor3;
21557
- if ((watchPropertyCategory === null || watchPropertyCategory === void 0 ? void 0 : (_watchPropertyCategor3 = watchPropertyCategory.code) === null || _watchPropertyCategor3 === void 0 ? void 0 : _watchPropertyCategor3.toUpperCase()) !== "MIXED") {
21558
- options = options.filter(item => {
21559
- var _item$type2, _watchPropertyCategor4;
21560
- return ((_item$type2 = item.type) === null || _item$type2 === void 0 ? void 0 : _item$type2.toUpperCase()) === ((_watchPropertyCategor4 = watchPropertyCategory.code) === null || _watchPropertyCategor4 === void 0 ? void 0 : _watchPropertyCategor4.toUpperCase());
21561
- });
21562
- }
21559
+ var _ptServicesMastersDat6, _ptServicesMastersDat7, _ptServicesMastersDat8;
21560
+ if (!(watchPropertyType !== null && watchPropertyType !== void 0 && watchPropertyType.code)) return [];
21561
+ let options = (ptServicesMastersData === null || ptServicesMastersData === void 0 ? void 0 : (_ptServicesMastersDat6 = ptServicesMastersData.PropertyTax) === null || _ptServicesMastersDat6 === void 0 ? void 0 : (_ptServicesMastersDat7 = _ptServicesMastersDat6.PropertyNewUsageType) === null || _ptServicesMastersDat7 === void 0 ? void 0 : _ptServicesMastersDat7.filter(item => item.active)) || [];
21562
+ let mapping = (ptServicesMastersData === null || ptServicesMastersData === void 0 ? void 0 : (_ptServicesMastersDat8 = ptServicesMastersData.PropertyTax) === null || _ptServicesMastersDat8 === void 0 ? void 0 : _ptServicesMastersDat8.PropertyToUsageMapping) || [];
21563
+ const selectedMapping = mapping.find(m => m.propertyTypeCode === watchPropertyType.code);
21564
+ if (selectedMapping && selectedMapping.allowedUsages) {
21565
+ options = options.filter(item => selectedMapping.allowedUsages.includes(item.code));
21566
+ } else {
21567
+ options = [];
21563
21568
  }
21564
21569
  return options.map(item => ({
21565
21570
  code: item.code,
21566
21571
  name: item.name
21567
21572
  }));
21568
- }, [ptServicesMastersData, watchPropertyCategory]);
21573
+ }, [ptServicesMastersData, watchPropertyCategory, watchPropertyType]);
21569
21574
  React.useEffect(() => {
21570
21575
  if (watchPropertyType && watchWaterConnectionUsageType) {
21571
21576
  const isUsageTypeValid = usageTypeOptions.some(opt => opt.code === watchWaterConnectionUsageType.code);
@@ -21575,8 +21580,8 @@ const PropertyWaterConnection = _ref => {
21575
21580
  }
21576
21581
  }, [watchPropertyType, usageTypeOptions, setValue, watchWaterConnectionUsageType]);
21577
21582
  const floorOptions = React.useMemo(() => {
21578
- var _ptServicesMastersDat7, _ptServicesMastersDat8;
21579
- return ptServicesMastersData === null || ptServicesMastersData === void 0 ? void 0 : (_ptServicesMastersDat7 = ptServicesMastersData.PropertyTax) === null || _ptServicesMastersDat7 === void 0 ? void 0 : (_ptServicesMastersDat8 = _ptServicesMastersDat7.NoOfFloors) === null || _ptServicesMastersDat8 === void 0 ? void 0 : _ptServicesMastersDat8.filter(item => item.active).map(item => ({
21583
+ var _ptServicesMastersDat9, _ptServicesMastersDat0;
21584
+ return ptServicesMastersData === null || ptServicesMastersData === void 0 ? void 0 : (_ptServicesMastersDat9 = ptServicesMastersData.PropertyTax) === null || _ptServicesMastersDat9 === void 0 ? void 0 : (_ptServicesMastersDat0 = _ptServicesMastersDat9.NoOfFloors) === null || _ptServicesMastersDat0 === void 0 ? void 0 : _ptServicesMastersDat0.filter(item => item.active).map(item => ({
21580
21585
  code: item.code,
21581
21586
  name: item.name
21582
21587
  }));
@@ -21625,7 +21630,7 @@ const PropertyWaterConnection = _ref => {
21625
21630
  setValue("useDetails.NumberofRooms", "");
21626
21631
  setValue("useDetails.numberOfBeds", "");
21627
21632
  setValue("useDetails.numberOfStudents", "");
21628
- setValue("useDetails.ServantQuartersRoom", "");
21633
+ setValue("useDetails.servantQuarterArea", "");
21629
21634
  }
21630
21635
  }, [formData === null || formData === void 0 ? void 0 : (_formData$cpt2 = formData.cpt) === null || _formData$cpt2 === void 0 ? void 0 : _formData$cpt2.details, formData === null || formData === void 0 ? void 0 : formData.cpt, categoryOptions, propertyTypeOptions, usageTypeOptions, floorOptions, yearOptions, categoryTypeList, setValue]);
21631
21636
  const lastErrorState = React__default.useRef(null);
@@ -21876,11 +21881,11 @@ const PropertyWaterConnection = _ref => {
21876
21881
  message: t("ERR_INVALID_NUMBER")
21877
21882
  }
21878
21883
  }),
21879
- name: "useDetails.ServantQuartersRoom",
21884
+ name: "useDetails.servantQuarterArea",
21880
21885
  disabled: isPropertyFound
21881
- }))) : null, isServentHouse && (errors === null || errors === void 0 ? void 0 : (_errors$useDetails12 = errors.useDetails) === null || _errors$useDetails12 === void 0 ? void 0 : _errors$useDetails12.ServantQuartersRoom) && /*#__PURE__*/React__default.createElement(digitUiReactComponents.CardLabelError, {
21886
+ }))) : null, isServentHouse && (errors === null || errors === void 0 ? void 0 : (_errors$useDetails12 = errors.useDetails) === null || _errors$useDetails12 === void 0 ? void 0 : _errors$useDetails12.servantQuarterArea) && /*#__PURE__*/React__default.createElement(digitUiReactComponents.CardLabelError, {
21882
21887
  style: errorStyle
21883
- }, errors.useDetails.ServantQuartersRoom.message)));
21888
+ }, errors.useDetails.servantQuarterArea.message)));
21884
21889
  };
21885
21890
 
21886
21891
  const WSPropertyWaterConnection = props => {